位置:51电子网 » 技术资料 » 通信网络

用双端口RAM实现与PCI总线接口的数据通讯

发布时间:2008/8/29 0:00:00 访问次数:471

  采用双端口ram实现dsp与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总线接口的本地端存储器,一端作为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公司的pci 9030总线接口芯片,以cpld完成逻辑控制及与外设的连接,整个系统的硬件框图如图 2。其中双端口ram采用idt71v321,cpld选用xilinx公司的xc9536cpld芯片,eeprom选用ns公司的93cs56,控制单元dsp选用tms 320lf2407a。

  2.1 pci 9030内部结构及其数据传输

  pci 9030是plx公司开发的pci总线目标接口芯片。其特点:低功耗,pqfp176针封装,符合pci v2.2规范;在pci总线上是从设备,但在局部总线上是主设备;pci 9030支持突发传输,有5个pci总线到局部总线地址空间,9个可编程的通用i/o,4个可编程的片选,支持热插拔。pci 9030主要由pci总线接口逻辑、局部总线接口逻辑、串行e2prom接口逻辑和内部逻辑组成,结构框图见图3。

  pci 9030支持pci主设备直接访问局部总线上的设备,数据传输方式分为内存映射的突发传输和i/o映射的单次传输,并且由pci基址寄存器设置在pci内存和i/o空间中的合适位置,另外局部映射寄存器允许pci地址空间转换到局部地址空间。

  2.2 配置实例

  系统访问的双口ram存储空间为2kb,要求将这个存储器空间映射到局部地址空间0,采用内存方式映射,存储器的数据宽度为 8位,并且不采用突发传输,读写时不可预取。下面介绍这个地址空间各个寄存器的具体配置过程。

  (1)配置地址范围寄存器

  根据pci配置寄存器与las0rr的对应关系以及双口ram的地址空间800h,取7ffh的补码得到fffff800h。又因为按照设计要求,要映射到内存空间的任何位置并且设置为不可预取的,这样lasorr寄存器后3位应该为000h。所以las0rr的值应该最终确定为fffff800h。

  (2)配置基址寄存器

  该寄存器的基址必须是地址空间范围的整数倍,在本例中必须是2k的整数倍,可将基地址定为 00004000h,又由于基址寄存器位0为空间使能位,所以应将这一位设置1;至于位 2、位3,由于是映射到内存空间,设为00h即可。所以las0ba的值最终被确定为00004001h。

  (3)配置片选信号控制寄存器

  该寄存器的地址范围和基地址必须与las0rr或las0ba所定义 的范围和空间相对应。可根据pci 9030提供的配置寄存器的方法确定cs0base的数值:板卡的2kb空间可以用十六进制表示为800h,将800h右移一位得到400h,然后将基地址加到400h左边的任何一位中。因为所采用的基地址

  采用双端口ram实现dsp与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总线接口的本地端存储器,一端作为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公司的pci 9030总线接口芯片,以cpld完成逻辑控制及与外设的连接,整个系统的硬件框图如图 2。其中双端口ram采用idt71v321,cpld选用xilinx公司的xc9536cpld芯片,eeprom选用ns公司的93cs56,控制单元dsp选用tms 320lf2407a。

  2.1 pci 9030内部结构及其数据传输

  pci 9030是plx公司开发的pci总线目标接口芯片。其特点:低功耗,pqfp176针封装,符合pci v2.2规范;在pci总线上是从设备,但在局部总线上是主设备;pci 9030支持突发传输,有5个pci总线到局部总线地址空间,9个可编程的通用i/o,4个可编程的片选,支持热插拔。pci 9030主要由pci总线接口逻辑、局部总线接口逻辑、串行e2prom接口逻辑和内部逻辑组成,结构框图见图3。

  pci 9030支持pci主设备直接访问局部总线上的设备,数据传输方式分为内存映射的突发传输和i/o映射的单次传输,并且由pci基址寄存器设置在pci内存和i/o空间中的合适位置,另外局部映射寄存器允许pci地址空间转换到局部地址空间。

  2.2 配置实例

  系统访问的双口ram存储空间为2kb,要求将这个存储器空间映射到局部地址空间0,采用内存方式映射,存储器的数据宽度为 8位,并且不采用突发传输,读写时不可预取。下面介绍这个地址空间各个寄存器的具体配置过程。

  (1)配置地址范围寄存器

  根据pci配置寄存器与las0rr的对应关系以及双口ram的地址空间800h,取7ffh的补码得到fffff800h。又因为按照设计要求,要映射到内存空间的任何位置并且设置为不可预取的,这样lasorr寄存器后3位应该为000h。所以las0rr的值应该最终确定为fffff800h。

  (2)配置基址寄存器

  该寄存器的基址必须是地址空间范围的整数倍,在本例中必须是2k的整数倍,可将基地址定为 00004000h,又由于基址寄存器位0为空间使能位,所以应将这一位设置1;至于位 2、位3,由于是映射到内存空间,设为00h即可。所以las0ba的值最终被确定为00004001h。

  (3)配置片选信号控制寄存器

  该寄存器的地址范围和基地址必须与las0rr或las0ba所定义 的范围和空间相对应。可根据pci 9030提供的配置寄存器的方法确定cs0base的数值:板卡的2kb空间可以用十六进制表示为800h,将800h右移一位得到400h,然后将基地址加到400h左边的任何一位中。因为所采用的基地址

相关IC型号

热门点击

 

推荐技术资料

耳机的焊接
    整机电路简单,用洞洞板搭线比较方便。EM8621实际采... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!