kaiyun官方注册
您所在的位置: 首页> 模拟设计> 设计应用> 用双端口RAM实现与PCI总线接口数据通讯
用双端口RAM实现与PCI总线接口数据通讯
摘要:提出了一种使用CPLD解决双端口RAM地址译码和PCI接口芯片局部总线仲裁的的硬件设计方案,并给出了PCI总线接口芯片寄存器配置实例,介绍了软件包WinDriver开发设备驱动程序的具体过程。随着计算机技术的不断发展,为满足外设间以及外设与主机间的高速数据传输,Intel公司于1991年提出了PCI总线概念。PCI总线是一种能为主CPU及外设提供高性能数据通讯的总线,其局部总线在33MHz总线时钟、32位数据通路时,数据传输速率最高可达133Mbps。实际应用中,可通过PCI总线实现主机与外部设备的高速数据传输,有效解决数据的实时传输和存储问题,为信号的实时处理打下良好基础。本文主要提供一种基于PCI总线的数据传输系统设计方案,其中双口RAM起桥梁作用,完成上位机与外围主控单元之间的数据握手。1双端口RAM实现PCI总线接口方案本系统主要用于解决上位机与外围控制单元的数据传输问题。上位机运行信息诊断程序,通过PCI总线与外围控制单元以一定速率传输数据,在主机中实时监控并保存数据。由于实现高速实时数据传输,数据量大,所以在PCI局部总线上插入一个高速双端口RAM。双端口RAM一端作为PCI总线接口的本地端存储器
Abstract:
Key words :

  提出了一种使用CPLD解决双端口RAM地址译码和PCI接口芯片局部总线仲裁的的硬件设计方案,并给出了PCI总线接口芯片寄存器配置实例,介绍了软件包WinDriver开发设备驱动程序的具体过程。

  随着计算机技术的不断发展,为满足外设间以及外设与主机间的高速数据传输,Intel公司于1991年提出了PCI总线概念。PCI总线是一种能为主CPU及外设提供高性能数据通讯的总线,其局部总线在33MHz总线时钟、32位数据通路时,数据传输速率最高可达133Mbps。实际应用中,可通过PCI总线实现主机与外部设备的高速数据传输,有效解决数据的实时传输和存储问题,为信号的实时处理打下良好基础。

  本文主要提供一种基于PCI总线的数据传输系统设计方案,其中双口RAM起桥梁作用,完成上位机与外围主控单元之间的数据握手。

1 双端口RAM实现PCI总线接口方案

  本系统主要用于解决上位机与外围控制单元的数据传输问题。上位机运行信息诊断程序,通过PCI总线与外围控制单元以一定速率传输数据,在主机中实时监控并保存数据。由于实现高速实时数据传输,数据量大,所以在PCI局部总线上插入一个高速双端口RAM。双端口RAM一端作为PCI总线接口的本地端存储器,一端作为DSP目标存储器。需要传输保存的数据经DSP处理后借助双端口RAM和PCI总线接口完成了上位机与DSP的数据握手。本文提出的双端口RAM实现PCI总线接口方案如图1。

  考虑到PCI总线接口对局部总线的控制时序比较复杂,需要译码和控制电路来实现局部总线的访问及控制。本系统使用CPLD解决双口RAM的地址访问竞争冲突问题。需解决的主要问题有:①PCI接口电路设计;②CPLD地址译码和总线仲裁;③PCI总线驱动程序开发。

  2 PCI接口电路设计

  PCI卡的设计一般采用两种方案。一种是根据PCI协议在FPGA或CPLD中实现PCI总线接口控制器,但是由于PCI协议的复杂性,使得开发难度大、周期长;另一种使用现成的PCI接口芯片,用户开发难度降低,只把重点放在PCI接口芯片局部总线的接口设计和PCI总线配置空间的初始化,而不用速度考虑PCI总线规范上众多的协议规范,加快了开发时间。

  本数据传输系统使用PLX公司的PCI9030总线接口芯片,以CPLD完成逻辑控制及与外设的连接,整个系统的硬件框图如图2。其中双端口RAM采用IDT71V321,CPLD选用XILINX公司的XC9536CPLD芯片,EEPROM选用NS公司的93CS56,控制单元DSP选用TMS320LF2407A。