CPCI总线是当前流行的高速嵌入式计算机总线,目前大多数嵌入式计算机系统的接口最终都要经过CPCI总线与计算机内存进行交互。CPCI的总线规范保证了其具有良好的兼容性和可靠性。

本文设计的系统采用PLX公司生产的CPCI协议转换芯片PCI9054,通过Verilog HDL语言在FPGA中产生相应的控制信号,完成对数据的快速读写,从而实现了与CPCI总线的高速数据通信。

1 系统设计

系统主要由PCI9054和FPGA构成,系统结构图以及信号连接如图1所示。通过利用FPGA的可编程性,可实现更多的扩展功能,如与DSP,A/D等不同速率间接高速通信等。协议转换芯片PCI9054的作用就是保证本地数据采集板卡和主CPU板卡之间的数据可以高速准确地传输。

2 PCI9054性能分析

PCI9054是由PLX公司生产的一种基于PCI V2.2总线规范的通用接口芯片。它支持单字节方式和突发方式两种传输方式。其总线端支持32位/33 MHz传输,本地端可以通过突发方式达到最大132 Mbit·s-1的传输速率,并且可以控制改变本地端的总线宽度。

PCI9054可以看做一座建立在CPCI总线和本地用户局部总线之间的桥梁。因为PCI9054具有6个可编程FIFO存储器进行数据缓存,从而保证两者之间数据传输的正确性和实时性。并且PCI9054允许其中任意一端作为主控设备去控制总线,同时另外一端作为目标设备去响应总线。

PCI9054内部具有多个寄存器组,用以对其两端的工作状态和工作方式进行控制。PCI9054对其内部的所有寄存器组和FIFO都行了统一的地址映射,用户可以从两端通过编程访问所有FIFO及寄存器组的每个字节,从而查看两端的工作状态和改变两端的工作方式。

3 PCI9054局部总线的接口设计

整个CPCI接口的设计思路为:FPGA通过桥接芯片PCI9054与CPCI总线连接,其内部使用异步双口RAM来进行高速数据的缓冲,通过使用VerilogHDL语言编程来控制FPGA中的异步双口RAM,以实现系统数据在嵌入式CUP板卡内存与CPCI板卡之间的高速传输。

PCI9054提供了3种物理总线接口:CPCI总线接口、LOCAL总线接口和串行EPROM接口。其中CPCI总线接口协议在嵌入式操作系统中的驱动包已经带有,而串行EEPROM的初始化是由PLX公司的PLXMON软件在嵌入式操作系统中进行在线烧写的,所以本系统设计的重点就是关于LOCAL总线接口的控制和传输,其接口电路示意图如图2所示。

PCI9054与本地总线之间的接口称之为LOCAL BUS,是CPCI总线系统设计中十分重要的一环。PCI9054 LOCAL BUS在系统设计中,其总线直接与Alter公司的EP2S90F78014芯片的数据总线相连,同时通过运用Verilog HDL语言编程来实现对双口RAM控制器的功能。

PCI9054 LOCAL BUS有3种工作模式,分别为M、J和C模式。M模式是专为Motorola公司开发和设计的,而另外两种工作模式就应用的比较广泛。其中J模式因为没有LocaL Master,所以它的地址总线和数据线没有分开,从而增加了开发难度。而在C模式下,PCI9054芯片通过片内的逻辑控制可以将CPCI的局部地址和数据总线分开,从而有效地降低了开发难度,并且能灵活地为本地工作时序提供各种工作方式,所以本系统设计方案选择了LOCAL总线的C工作模式,工作频率为40 MHz。

4 局部总线的实现

PCI9054支持主模式、从模式和DMA传输方式,根据本系统设计的需求,采用从模式传输方式,即允许CPCI总线上的主设备访问局部总线上的配置寄存器或内存,支持多种模式传输。如图3所示。

FPGA内部逻辑要设计本地端总线控制模块,实现局部总线的状态控制,同时产生片内的读写时序及地址信号以支持突发传输和单周期传输,因此使用Verilog HDL语言中的状态机来完成上述功能。其状态转换,如图4所示。

5 测试结果

利用SingnalTap采集到的单周期时序传输图,如图5所示。

6 结束语

以PCI9054为核心介绍了CPCI板卡与嵌入式CPU板卡之间高速数据通信系统接口的软硬件设计。PCI9054因其灵活和方便的接口功能,使操作者只需关心LOCAL BUS接口电路的时序设计,并且利用其传输速率高的特性,可以帮助一些对实时性要求较高的系统解决其传输数据的问题。

打开APP精彩内容

点击阅读全文

标准cpci接口定义_CPCI数据总线接口的设计与实现相关推荐

  1. java 用面向接口编程的方式开发打印机_Java“打印机”模型理解面向接口编程。实现接口定义类,接口实现类,核心“业务”类分离...

    接口定义类 IinkBox.java package printerDemo.iface; public interface IInkBox { public String getColor(); } ...

  2. 计算机ps2定义,软件硬件界面接口定义 bt656 硬件接口定义

    软件工程里面的"接口"到底是什么意思? 1. 接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与 ...

  3. MII,RMII,SMII,GMII,RGMII,SGMII接口定义 和 MDIO接口定义

    一.MII,RMII,SMII,GMII,RGMII,SGMII接口定义一览表 1.1 MII接口连接示意图 1.2 RMII接口连接示意图 1.3 SMII接口连接示意图 1.4 GMII接口连接示 ...

  4. 标准cpci接口定义_cpci定义

    CPCI 背板 Compact PCI ( Compact Peripheral Component Interconnect )简称 CPCI ,中文又称紧凑 型 PCI , 是国际 工业计算机 制 ...

  5. 标准cpci接口定义_CPCI接口定义标准.doc

    附表1: 6U CPCI主板 J1-J5 I/O定义 1. PCI总线接口(J1) NO. A B C D E F J1-1 +5V -12V JTAG_RST# +12V +5V GND J1-2 ...

  6. USB接口定义;miniUSB接口定义

    USB 是 Universal Serial Bus 的缩写,由 Compaq, Digital, IBM, Intel, Microsoft, NEC, Northern Telecom 联合推出. ...

  7. 多方法接口回调_浅析接口定义和接口回调

    目录 一.接口定义 二.接口的特点 三.使用接口的好处 四.接口回调 五.Android中的接口回调机制 一.接口定义 接口通常以interface来修饰. public interface Anim ...

  8. 如何发布接口_Devops下的接口全生命周期管理与测试

    什么是devops?随着时间的推移,devops的定义也在不断的演进.对于其定义可能出现千人千面,但从核心观点,整体业界还是保持着一致的认识.DevOps不是单一的技术或者工具,甚至不只是一个流程,而 ...

  9. java 类 抽象类 接口_Java抽象类和接口

    抽象类和接口 一.抽象类和抽象方法 对于抽象类,首先需要介绍抽象方法,而抽象类因抽象方法的存在而存在 1.抽象方法 (1)必要性: 有些父类方法不确定如何写方法体,但是对于继承它的子类又必须用到这个方 ...

最新文章

  1. 若显示器接口电路中的刷新存储器容量为1MB,当采用800*600的分辨率模式时,每个像素最多可以有多少()种颜色
  2. iptables规则的查看、添加、插入、删除和修改
  3. linux服务器oracle数据库导出dmp文件功能演示,备份数据库命令。exp命令显示command not found解决方法,EXP-00028: 无法打开dmp进行写入问题解决
  4. 【uni-app】小程序实现微信在线聊天(私聊/群聊)
  5. javascript-操作符
  6. 说说mysql_说说MySQL权限 - andyqian的个人空间 - OSCHINA - 中文开源技术交流社区
  7. 基于JAVA+Swing+MYSQL的在线订餐管理系统
  8. BubbleSort
  9. 74HC595芯片的应用实例
  10. 公式推导 圆面积公式 圆周长公式
  11. 邮件服务器lp在哪找,lp地址查询_ip地址查询定位
  12. Qt自带示例演示程序
  13. c语言,从键盘上输入一个字符,如果是大写字母,转换为小写字母,否则输出
  14. Hadoop常见问题 | 用浏览器访问namenode的50070端口不正常,如何解决?
  15. java打好基础的100道题库(勇敢牛牛不怕困难)
  16. B/S结构和C/S结构详细介绍
  17. 英语中什么是开音节,什么是闭音节
  18. 计算机桌面闪烁,电脑屏幕总是闪烁怎么办?这样就能解决
  19. 关于Allan方差分析陀螺仪误差的几个摘要
  20. 取名算法之用JAVA实现姓名测试

热门文章

  1. win环境golang安装
  2. DHCP 协议及其交互过程
  3. Windows搭载TS环境
  4. Silverlight实用窍门系列:58.Silverlight中的Binding使用(三)-数据集合绑定
  5. java 开源 cms FreeCMS1.7发布
  6. 江西建材杂志江西建材杂志社江西建材编辑部2022年第11期目录
  7. 信息系统项目管理重点:信息技术发展趋势
  8. 【Linux kernel】自旋锁和互斥锁
  9. Win10微软输入法自定义短语导入
  10. 电脑为什么会自动关机