一种高效的DSP与FPGA的数据交换结构设计
DesignofanEffectiveStructureofDSPandFPGADataExchange
(ChengduAirplaneDesignResearchInstitute,Chengdu610064,China)
摘要:常规DSP与FPGA构架系统中,在进行数据交换时,由于DSP资源过多的被占用来进行数据处理和准备,增加软件执行时间,从而导
致系统整体的执行效率下降。为了提高DSP结合FPGA构架系统的执行效率,本文设计了一种高效的DSP与FPGA数据交换结构,该结构结合
FPGA并行处理的特点,FPGA内部完成对外部数据进行分类、解码、转换处理,从而提高了DSP的执行效率。
Abstract:IntheconventionalDSPandFPGAarchitecturesystems,whenmakingdataexchange,becausetheDSPresourcesareoccupiedtoomuchfordataprocessingandpreparation,thesoftwareexecutiontimeisincreasing,resultinginthedeclineofexecutionefficiencyofthewholesystem.ToimprovetheexecutionefficiencyoftheDSPandFPGAarchitecturesystem,wedesignaefficientdataexchangearchitectureofDSPandFPGA,whichcombinesthecharacteristicsofparallelprocesscombiningwithFPGA,FPGAmakeclassifyingdecoding,conversionprocessforexternaldata,therebyimprovingexecutionefficiencyoftheDSP.
关键词:FPGA;DSP;数据交换
KeywordsFPGA;DSP;dataexchange
0引言在通信、测控、信息采集处理领域,常常采用DSP和FPGA结合的硬件结构进行数据存取与交换。在该结构中,通常采用的方法是用DSP的外部扩展地址总线,数据总线和控制总线直接与FPGA连接,从而进行数据交换,这种方法具有结构简单,直接的优点,但随着整个处理系统任务量的增加,处理信息的种类和数量也随之大量增加,采用这样的构架系统使用的简单直连方式,将不在适用,因为会导致DSP花费更多的资源进行数据分类和预处理,从而降低DSP在其他算法方面的处理时间,导致整个DSP的执行效率下降。
随着FPGA技术的飞速发展,FPGA器件在很多领域都有广泛的应用,尤其在数据并行处理中,发挥着越来越多的性能和作用。本文提出了一种高效率的DSP与FPGA数据处理交换结构,针对DSP和FPGA常规结构中进行数据交换时大量占用DSP资源的特点进行改进设计,在该数据交换结构中,将数据的分类,处理等工作在FPGA内部实现,使DSP可以按照地址分段的方式将整理好的数据进行直接读写,省去DSP进行数据处理和分类的工作。
1数据交换结构的总体设计
图1是常规的数据交换结构中,采用具有单一数据源的数据交换方式,DSP通过地址总线和数据总线直接与FPGA进行读写操作,数据在DSP内部进行处理,之后再进行算法计算和控制计算。由于数据单一,DSP在进行数据读写和预处理时占用的资源较少,对系统整体的执行效率影响小。
DSP算法控制
数据分类数据处理
地址总线数据总线控制总线
FPGA
单一数据源
DSP算法控制
地址总线数据总线控制总线
FPGA数据分类
通信1通信2控制信号
数据处理
AD采集
图2多数据源数据交换原理图
是控制信号,处理模块就将其转换为DSP可识别的控制指令存入到RAM块中,如果输入是A/D采集信号,处理模块将控制A/D采集芯片,读取A/D采集的数据存入RAM中。
地址总线数据总线控制总线
地
址数据译码
FPGA
通信1解码与RAM通信2解码与RAM控制信号转换与RAMAD采集与RAM
通信1通信2控制信号AD采集
图3数据交换结构的FPGA实现原理框图
本设计采用XILINXSPARTAN2芯片进行设计验证,地址分配译码电路仿真如图4所示。图中X_CE是DSP的片选使能信号,X_EA为DSP地址总线,从仿真可以看出,不同的地址段对应不同RAM块,由FPGA整理好的数据,DSP直接访问不同的地址段可以直接获得,说明改进的设计方案可以提高该构架的数据交换执行效率。
图1单一数据源数据交换原理图
在多类型数据源数据同时处理的情况下,如果交换方式还是采
用上述方法,则占用DSP资源较多,会对整个效率产生影响。针对DSP资源占用过多的情况,图2采用了改进设计,在该设计中,由FPGA将数据转换为DSP可直接引入计算的标准32位数据,将不同类型的数据按照地址段进行存储。
2数据交换结构的FPGA实现
图3是数据交换结构的FPGA实现原理框图,在FPGA内部,对应DSP的每一个地址段都对应有相应的RAM存储块,在RAM块的后端是数据处理模块。如果接收的是通信信号,处理模块将根据通信协议进行信号解码,之后将数据存入RAM块中,如果接收的
图4地址分配译码电路仿真图
3结束语
本文针对常规DSP与FPGA构架中数据交换时存在的缺点,提出了一种改进的数据交换结构,可以提高DSP和FPGA系统的整体执行效率,通过实验仿真验证,证明了该结构的有效性,为该构架提供了一个较为有效的解决方案。
参考文献:
———————————————————————
[1]黄涛,程鑫.FPGA在高速高精运动控制系统中的应用.武汉理工大学
学报,2007,29(2).
[2]刘岩俊,闫海霞等.基于DSP与FPGA的HDLC协议通讯电路设计,2009,32(6).
李小文.SPI接口及其在数据交换中的应用,2007,40(11).[3]杨美刚,
[4]梁永生,寇建辉等.基于DSP与FPGA的通信控制系统的设计.科技论坛.
因篇幅问题不能全部显示,请点此查看更多更全内容