用双端口RAM实现与PCI总线接口数据通讯
来源:EEWORLD 作者:姚利民 孙逢春 李军求 张承宁 时间:2010-04-30 10:39
2.3CPLD控制逻辑
对于双口RAM同一个地址单元,不能同时进行读或写操作,但两边连接的主控芯片,都可以对其进行读、写操作,因此必须解决地址竞争问题。本系统中,使用XILINX公司的XC9536CPLD芯片完成PCI局部总线的译码和控制电路。由于系统控制计算主要在DSP中完成,上位机只起监控和数据保存作用,因此规定对双口RAM的操作DSP优先于PCI9030;同时CPLD也参与了DSP片外程序存储器Flash和数据存储器RAM的地址译码,控制逻辑用公式表示为:
3设备驱动程序设计
设备驱动程序开发工具通常有DDK、VtoolsD、WinDrvr等。为加快开发速度,采用JUNDO公司的WinDrvr开发设备驱动程序。其使用简单,支持多种操作系统。
采用Windrvr开发PCI桥接设备的驱动程序有两种方法。一种Wizard开发向导是自动生成驱动程序框架代码,然后根据实际需要,加入定制功能。这种方法生成的代码较多,程序较复杂。另一种是在Vc++创建工程中直接利用Windrvr的API函数生成驱动程序,比在Wizard生成的框架代码上修改更为灵活。本文采用后一种方法。以下是用Windrvr开发PCI9030桥芯片的驱动代码,只要稍加改动就可以作为其他PCI芯片驱动程序的一部分,例如PCI9050、PCI9052等。程序中出现的变量名都由其名称反映含义,具体可以参见Windrvr设计文档说明。
至此获得了本地端映射到用户的内存地址,调用读写函数就可以对本地芯片进行操作。
参考文献
1 邓晓勇,韩燮,毛明.利用FPGA实现与PCI总线接口的数据通信[J].华北工学院学报,2002;23(6):436~439
2 陈利学,孙彪,赵玉连等.微机总线与接口设计[M].成都:电子科技大学出版社,1998
3 PLX公司.PCI9030Data Book.Version 1。4。May,2002
4 刘巍.一种快速开发PCI桥设备驱动程序的方法.现代雷达,2002;(2):39~40
5 黄殉,孙政顺.利用WinDriver开发PCI设备驱动程序.电子技术应用,2001;27(3):15~16
- •【会议议程】12月19-21日2022(十四届)传感器与MEMS产业化技术国际研讨会(暨成果展)佛山南海瞻云酒店召开2022-12-16
- •FORESEE XP1000 PCIe SSD开启Gen3后时代发展之路2021-08-02
- •FORESEE工规级SSD应用宽温技术,加速智能工业场景落地2021-07-21
- •基于J750EX测试系统的SRAM VDSR32M32测试技术研究2017-09-05
- •Vishay检查表: 采用安规电容防止过载的12点注意事项2017-07-28
- •汽车系统的USB供电2017-06-08
- •适用于 FPGA、GPU 和 ASIC 系统的电源管理2017-05-11
- •一文读懂SPI串行外设接口2017-04-27
- •TLV3501滞回比较器电路设计2017-04-14
- •ZigBee无线呼叫系统硬件电路2017-04-05