随着DSP的性能不断提高,其应用领域也不断扩大。由于DSP的硬件结构对于数字信号处理特别适用,同时,PCI总线的高带宽,动态配置,大的地址空间等诸多特点,使得在PC上PCI总线完全取代ISA总线已经是大势所趋,目前新一代的主板上面已经几乎不提供ISA槽。为了科学研究以及实际应用的需要,我们开发了基于PCI总线的DSP数据运算系统,主机程序通过PCI总线与DSP交换数据,可以提供高速实时的数据运算能力。系统可以广泛的应用在语音处理,数字加密,图像处理,多路数据流复用等实际应用中。
基于PCI总线的DSP数据运算平台整个的运作流程是这样的:PC端运行服务器程序,与DSP上运行的客户机程序通过PCI总线进行数据交换,通信由程序中设计的信号灯或者硬件中断。PC端的服务器程序通过PCI总线有访问整个DSP内部的存储器内容的能力,将所需要运算的数据送给DSP运算,设置信号灯,当DSP运算完成后则取消信号灯或者中断主机,主机将运算完的数据取回。所需要解决的问题主要有:
* PCI接口芯片的选择;
* PCI与DSP的接口设计;
*DSP系统的自举装入(BootLoad);
* 主机与DSP通信驱动软件的编制。
目前PCI接口卡的设计一般有两种方法,第一种是基于将PCI接口完全集成到ASIC中,这样做的好处是集成度高,量产的生产成本低,直接用成熟的IP核,但是对于普通的开发者来说购买现成的PCI控制器的IP的价格昂贵,难以接受。当然也可以自己根据PCI协议在FPGA中实现PCI总线接口控制器,但是由于PCI总线协议自身的复杂性,要想在短期内做到操作稳定,难度很大。所以一般开发PCI接口卡的时候都使用现成的PCI接口芯片。目前市场上面的PCI接口芯片有不同公司的多种型号产品,不同的产品价位相差很大,而且功能与使用的复杂性也有很大不同。我们在设计前,要广泛的调研,根据项目需求选择合适的PCI接口芯片来设计系统,就会事半功倍。
目前市场上常见的有AMCC,PLX,CYPRESS等公司的桥芯片,各个型号的PCI接口芯片的比较如表1所示:
综合项目需求,成本以及开发难易等几个问题来考虑,选择了PLX的9030芯片作为本设计的PCI运算板的接口芯片。
TMS320VC5402是TI公司的5000平台中力推的一款芯片,主频可达100MHz,批量价格仅5美元,片上资源有40位ALU,17×17乘法器,4K×16位ROM,16K×16bitSARAM,8位扩展主机接口(HPI),6路DMA控制器,两个多通道带缓存串口(MCBSP),两个16位定时器。称得上价格低廉,性能优异,在嵌入式领域,无线设备,数字运算等领域得到了广泛的应用。
VC5402的引脚大多数有内部的斯密特触发器以及上拉电阻,对于设计者来说外部电路设计相对简单,不用作特别的处理,但是中断源输入必须从外部接上拉电阻。
DSP与主机的数据交互是PCI运算平台的设计关键。主机可以通过VC5402的主机接口中的三个HPI寄存器访问DSP芯片内16K的DRAM。三个HPI寄存器的具体定义如下: