世界热文:普通PCI接口的高速数字信号处理板卡如何设计?设计原理是什么?
(相关资料图)
哈喽小伙伴们 ,今天给大家科普一个小知识。在日常生活中我们或多或少的都会接触到普通PCI接口的高速数字信号处理板卡设计方面的一些说法,有的小伙伴还不是很了解,今天就给大家详细的介绍一下关于普通PCI接口的高速数字信号处理板卡设计的相关内容。
2 PCI接口设计1991年下半年,Intel公司首先提出了PCI总线的概念,并联合IBM、Compaq、AST、HP、DEC等100多家公司,于1993年推出了PC局部总线标准――PCI总线。PCI是一套整体的系统解决方案,较其它只为加速图形或视频操作的局部总线优越。PCI局部总线采用32位或64位数据总线,以33MHz或66MHz的时钟频率操作,可支持多组外围部件及附加卡。在33MHz情况下,其数据传送率高达132MB/s;在66MHz情况下,其数据传送率翻倍。另外,它支持线性突发的数据传输模式,可确保总线不断满载数据。外围设备一般会由内存某个地址顺序接收数据,这意味着可以由一个地址起读写大量数据,然后每次只需将地址自动加1,便可接收数据流下一个字节的数据。线性突发传输能够更有效地利用总线的带宽传送数据,以减少无谓的地址操作。在雷达信号处理中,对信号的实时性要求很高,这就要求信号传输的带宽要足够高,PCI接口非常适合将高速信号处理模块和计算机桥接在一起。目前PCI接口的设计一般采用两种方法:其一是采用通用接口芯片完成。常用的芯片有:AMCC公司的S5933,PLX公司的PLX9054等。其二是采用EPLD或FPGA实现。这种方法可以针对自身的需要定制一定的功能,因而设计灵活性大,但必须严格遵循PCI总线的规范。采用通用接口芯片完成的好处是设计时可以不用关心PCI总线操作,只要处理好本地总线接口即可。设计简单省时。本文采用PLX9054的C模式完成PCI接口功能。PLX9054有着独立的本地总线(Local Bus),由它负责对双口RAM进行访问控制。
3 EPLD控制时序的实现EPLD选用Altera公司的EMP7128S,用它来完成ADC采样控制、FIFO的读写控制、采样结束中断的产生等功能。采用Altera提供的MAXPLUS II集成开发环境软件,它支持VHDL、Verilog HDL和AHDL语言,此外它还支持直接输入原理图的方式。本文采用AHDL语言编写。图2是仿真的时序图,其中CLK是输入的外时钟信号,WR是FIFO的写信号,ENCODE是ADC的采样时钟信号,TR是采样触发信号,INT是输出的中断信号。COUNT是数据采样长度计数器,虽然FIFO可以提供全满、半满的标志位,但仅以此作为中断的产生条件,就限制了采样长度的灵活性。为在应用中自定义采样长度,实现对任意大小的数据(最大不超过FIFO的存储深度)进行采样,设计中引入了采样长度计数器。只要恰当设置COUNT的计数初值(大小为采样长度的补码),使计数器溢出时给出INT中断信号,就可以实现此项功能。ADC采用的是AD9051,它采用5级流水线(Pipeline)结构输出数据,所刚启动采样时,由于流水线未被充满,前面输出的5个数据是无效的,自第6个数据起才开始将A/D变换的结果存入FIFO中。