基于DSP和PCI总线的通信数据采集系统设计
法进行突发传输,从而限制了数据传输速度。
第二种映射方式是将HPIDC寄存器映射成PCI空间的一个长度为2000H的8位存储器块。上层系统对该地址空间内任一单元的读写操作都会被映射成对HPIDC的读写访问。写入的情况也类似。可以看出,实际上这种模式形成了一个PCI存储器空间和DSP内部存储空间之间一一对应的直接映射。
本系统利用I/O映射来访问控制、地址寄存器和单个数据口,并用存储器映射来访问连续数据口。
在这种配置方法下,PCI9052和HPI口之间的硬件连接,主要利用PCI9052的读写控制信号ADS#、LBE[30]#、LW/R#、LRDY#和部分地址信号LA[32]进行简单的时序和逻辑转换后来生成HPI口的读写控制信号HBIL、HDS1#、HCNTL0/1、HR/W#.由于HPI口的访问时钟是C5410的外部频率CLKOUT的5分频,所以PCI9052的本地时钟采用CLKOUT/5.
所有控制信号的接口逻辑和时序转换都是由CPLD来完成,具体的连接方式如图2所示。
4 系统的软件设计
数据的采集与预处理需要在C5410数据存储器中开辟三种存储块:一种是DATA BUFFER,它与PMC4351中各个时隙的FIFO一一对应,用于缓存每个时隙上采集到的消息数据;第二是DATA POOL(大小为1000H字),这是一个消息数据地,消息数据在DATA BUFFER中存满一整条消息后,加上一些TS包头后,形成一个新的消息包,存入到DATA POOL中;另外还要再开辟一个大小为1000H字节的存储块HPI RAM,这样就将DSP的数据采集部分与上层系统通信部分相互隔离开来,互不干扰。在DATA POOL中存满数据后,形成一个大的数据包,交给HPI RAM,通过PCI总线交给上层系统,进行进一步处理。整体的数据流图如图3所示。
由于DSP芯片的中断引脚数目有限,而且中断工作方式容易造成各个时隙数据采集不均匀的情况,本系统采用了轮询的工作方式。软件的具体流程如图4所示。
图4 软件流程图
本文提出的双映射配置方法和DSP软件工作策略,将C5410 DSP和PCI总线相互连接,接口具有逻辑简单、操作方便、效率高等优点。在C5410的CLOCKOUT配置成64MHz的前提下,两者之间数据传输速率理论峰值可达12.8Mbps,实际系统实现的平均速率达到了10Mbps。采用高性能的采集芯片,可充分发挥HPI口与PCI9052之间的高速数据连接,同时系统也可以升级到同时采集10条E1链路。
本文实现的数据采集系统工作良好,并已经在电信部门得到采用。该系统目前已经不仅仅用于采集移动通信数据,也开始应用于采集V5、七号信号等协议的数据,满足了系统功能设计的要求。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)