CN103885919A - 一种多dsp和fpga并行处理系统及实现方法 - Google Patents
一种多dsp和fpga并行处理系统及实现方法 Download PDFInfo
- Publication number
- CN103885919A CN103885919A CN201410105353.8A CN201410105353A CN103885919A CN 103885919 A CN103885919 A CN 103885919A CN 201410105353 A CN201410105353 A CN 201410105353A CN 103885919 A CN103885919 A CN 103885919A
- Authority
- CN
- China
- Prior art keywords
- dsp
- fpga
- data
- srio
- pcie
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
一种多DSP和FPGA并行处理系统,它包括:FPGA、DSP、AD、DA、DDR3和电源芯片;一种多DSP和FPGA并行处理系统的实现方法有五大步骤:一:实现FPGA与FPGA之间的PCIe互连;二:实现FPGA与DSP之间的PCIe互连;三:实现FPGA与FPGA之间的SRIO互连;四:实现FPGA与DSP之间的SRIO互连;五:实现DSP与DSP之间的Hyperlink互连。本发明并行处理能力强,功能丰富、灵活性、可扩展性强,突破了处理器芯片间的数据传输瓶颈,可移植性强,它在数字信号处理领域里具有较好的实用价值。
Description
技术领域
本发明为一种多DSP和FPGA并行处理系统及实现方法,它是基于PCIe、SRIO、Hyperlink等高速串行协议,实现多DSP和FPGA并行处理系统中的高速串行互连,属于数字信号处理领域。
背景技术
高速串行接口一般是指采用差分技术和时钟嵌入技术的串行接口。不同于SPI等低速串行接口,高速串行接口的传输速率可达到几个Gbps。高速串行接口使用差分信号线代替单端信号线,从而增强了抗干扰、抗噪声能力。相对于并行接口,串行接口对引脚需求量较少,因此能够增加可集成的端口数量,并简化PCB走线、电缆和连接器设置。此外,高速串行接口采用时钟数据恢复技术,即信号内部带有时钟,简化了时序操作。
目前常用的高速串行接口有PCIe,SRIO,XAUI,InfiniBand,Fiber Channel等。还有一些公司内部的协议,比如Texas Instruments定义的Hyperlink协议。这些高速串行协议的应用范围有所不同。在多处理器系统中,我们更关注芯片级互连。因此本发明使用了SRIO,PCIExpress以及Hyperlink接口。SRIO非常适合要求高速低延迟IO的嵌入式系统。数据率可以为1.25、2.5、3.125、5、6Gbps。协议规定了通道宽度为x1、x2、x4、x8,这为设计者提供了更多的灵活性。PCIe是一种高性能的总线,已被广泛应用于多种计算和通信平台。PCIe利用了点对点、包交换的技术。数据率可以为2.5、5、8Gbps。通道宽度可为x1、x2、x4、x8、x12、x16、x32。Hyperlink是TI公司Keystone架构的一种内部传输接口,用于两个Keystone设备的数据传输,它可以实现低引脚数、低延时、高速的芯片间数据传输。它可以单通道或者4通道工作,并且每个通道最高可工作在12.5Gbps。Hyperlink的编码协议也针对物理层进行了优化,相对于传统的8b/10b编码协议效率更高,相当于8b/9b协议,支持DMA。
随着宽带信号的广泛使用,AD的采样率越来越高,实时数字信号处理系统需要处理和传输的数据量越来越大,单片FPGA或DSP已无法满足系统处理大量数据的要求。因此,高性能的实时数字信号处理系统通常使用多片FPGA和DSP。FPGA具有丰富的接口能力以及高度的并行处理能力,DSP适合复杂的数据处理,处理能力强。FPGA与DSP的合作在实时数字处理系统中发挥了重大作用。
多FPGA和DSP在实时系统中的应用也带来了新的问题,即处理器芯片之间的数据传输。系统的实时性要求处理器芯片能够计算处理大量的数据,并能将处理结果快速传输到其他处理器芯片。以往的处理器芯片之间的传输采用并行总线。FPGA之间采用多个IO线并行传输。FPGA与DSP之间,或DSP与DSP之间采用EMIF接口互连,即DSP将FPGA当作外部存储器,通过读写存储器进行数据交互。为了提高并行总线的数据传输速率,需要增加数据位宽和提高时钟频率。但并行接口存在信号线间干扰的问题,而且数据位宽越大、频率越高,这种干扰越严重。因此,处理器芯片之间的互连面临着瓶颈,而高速串行互联是解决该瓶颈的理想方案。
针对上面提到的情况以及现实中的需求,本发明人设计了一种多DSP和FPGA并行处理系统的高速串行互连方案,可以实现FPGA与FPGA,FPGA与DSP以及DSP与DSP之间的数据高速串行传输。该系统由两个电路板组成,分别是接口板和核心板。接口板负责数据采集、波形产生、与外部设备通信。核心板负责处理来自接口板的数据,并将处理结果返回接口板。接口板主要由两片FPGA、一片DSP、两片AD、一片DA以及四片DDR3组成。接口板与核心板之间由高速插件互连。核心板主要由三片FPGA,两片DSP,24片DDR3组成。系统中,FPGA、DSP之间需要大量数据的高速交互,本发明中应用到的高速串行方案保证了数据传输带宽,有很好的借鉴意义。
发明内容
本发明的目的在于提供一种多DSP和FPGA并行处理系统及实现方法。利用PCIe、SRIO和Hyperlink高速串行协议实现FPGA与FPGA、FPGA与DSP、DSP与DSP之间的高速串行数据传输。使用Xilinx公司的开发套件ISE12.4进行FPGA的软件设计,使用TI公司的开发套件CCS5.0进行DSP的软件设计。
(1)本发明一种多DSP和FPGA并行处理系统,包括:FPGA、DSP、AD、DA、DDR3、电源芯片。系统的结构图如图1所示。在接口板中,DSP1控制网口芯片和两片DDR3芯片,同时与FPGA1互连;FPGA1控制两路AD和两片DDR3,同时与DSP1、FPGA2以及核心板的FPGA4、FPGA5互连;FPGA2控制DA,同时与FPGA1互连。在核心板中,FPGA4、FPGA5与接口板的FPGA1互连;FPGA4、FPGA5、DSP2、DSP3四片处理器芯片组成环形拓扑结构;FPGA4、FPGA5各自控制8片DDR3;DSP2、DSP3各自控制4片DDR3;FPGA3控制电源芯片,提供DSP2、DSP3的上电时序。
该并行系统的信号走向如下:接口板根据PC通过网口传来的命令控制DA发送波形;接口板AD采集数据,在接口板FPGA1中可做数据预处理;接口板FPGA1通过SRIO将预处理后的数据传输给核心板的FPGA3和FPGA4,并在FPGA3和FPGA4中做大数据块的简单处理,FPGA3和FPGA4之间可以通过SRIO或PCIe进行数据交互;FPGA3和FPGA4分别将处理结果通过SRIO和PCIe传输给DSP2和DSP3,在DSP中做复杂处理,DSP2和DSP3之间可以通过Hyperlink进行数据交互;DSP2和DSP3将结果通过SRIO和PCIe传回FPGA3和FPGA4;FPGA3和FPGA4通过SRIO传回接口板的FPGA1;接口板FPGA1将结果传给DSP1,并由DSP1通过网口传给PC。
该系统选用了四种类型的FPGA。接口板FPGA1选用Xilinx公司的Virtex-6XC6VLX240T,负责控制AD和数据传输。接口板FPGA2选用Xilinx公司的Virtex-6XC6VLX75T,负责控制DA。核心板FPGA3选用Xilinx公司的Spartan-3XC3S700AN,负责控制电源芯片上电时序。核心板FPGA4、5选用Xilinx公司的Virtex-6XC6VSX315T,负责运算。
除了FPGA3采用Spartan-3系列外,剩下的FPGA均采用Virtex-6系列。Virtex-6系列为FPGA市场提供了最新、最高级的特性。Virtex-6FPGA是提供软硬件组件的目标测试平台可编程硅技术基础,可帮助设计人员在开发工作启动后集中精力于创新工作。Virtex-6系列采用第三代ASMBLTM(高级硅片组合模块)柱式架构,包括了多个不同的子系列。每个子系列都包含不同的特性组合,可高效满足多种高级逻辑设计需求。除了高性能逻辑结构之外,Virtex-6FPGA还包括许多内置的系统级模块。Virtex-6FPGA采用了尖端的40nm铜工艺技术,为定制ASIC技术提供了一种可编程的选择方案。Virtex-6FPGA还为满足高性能逻辑设计人员、高性能DSP设计人员和高性能嵌入式系统设计人员的需求而提供了最佳解决方案,其带来了前所未有的逻辑、DSP、连接和软微处理器功能。
Virtex-6系列有三种子系列,分别是LXT,SXT,HXT。其中LXT具有高级串行连接功能的高性能逻辑。SXT具有高级串行连接功能的最强信号处理功能。HXT具有串行连接功能的最高带宽。本系统中,FPGA4和FPGA5需要强大的计算能力,所以选用SXT,同时为了保证5Gbps速率下x4通道的SRIO互连,FPGA速度等级选用-2等级。FPGA1和FPGA2不需要复杂的运算,选用LXT即可满足要求。FPGA2只控制DA,需求相对FPGA1较低,所以选用XC6VLX75T。
XC6VLX75T主要特点:
1)11640个slice;
2)6个MMCM(Mixed-Mode Clock Managers)模块;
3)5616K bits RAM;
4)360个通用I/O管脚。
XC6VLX240T主要特点:
1)37680个slice;
2)12个MMCM(Mixed-Mode Clock Managers)模块;
3)14976K bits RAM;
4)720个通用I/O管脚;
5)24个GTX模块。
XC6VSX315T主要特点:
1)49200个slice;
2)12个MMCM(Mixed-Mode Clock Managers)模块;
3)25344K bits RAM;
4)720个通用I/O管脚;
5)24个GTX模块;
6)2个PCIe接口模块。
FPGA3只负责控制DSP2和DSP3的上电时序,功能相对简单,因此选用资源相对少的Spartan-3系列的XC3S700AN。XC3S700AN有内置FLASH,不需要外部烧写FLASH,可以节省板上空间资源。
XC3S700AN主要特点:
1)5888个slice;
2)8个DCM(Digital Clock Managers)模块;
3)360K bits RAM;
4)372个通用I/O管脚;
5)内置8M的Flash。
该系统选用了两种类型的DSP。接口板DSP1选用TI的TMS320C6455,负责控制网口芯片。核心板DSP2和DSP3选用TI的TMS320C6678,负责复杂运算。
TMS320C6455是一种高性能的定点DSP,其主要特点如下:
1)时钟频率最高可达1.2GHz,定点运算性能为9600MMAC;
2)32KB的L1程序缓存,32KB的L1数据缓存,2048KB可以配置为RAM或者CACHE的L2内存,32KB的L2ROM;
3)64bit的外部存储器接口EMIF(External Memory Interface);
4)1通道或4通道的SRIO
5)EDMA3控制器,64个独立通道。
TMS320C6678,它采用一种改进的哈佛总线结构:一套256位的程序总线,两套32位数据总线和一套32位DMA专用总线,其主要特点如下:
1)处理单元采用高性能、先进的VelociTITM(very long instruction word)结构,每时钟周期可并行执行8条32bit的指令;
2)TMS320C6678采用8个运算速度高达1.25GHz的DSP内核构建,在单个器件上整合了320GMAC与160GFLOP定点及浮点性能。
3)TMS320C6678整合了大容量的片上存储器,每个核除32KB的L1P和数据CACHE之外,还包括512KB可以配置为RAM或者CACHE的L2内存,另外还有4MB的多核共享内存,可以当作共享的L2SRAM或者共享L3SRAM使用。
4)TMS320C6678芯片提供了丰富的外围接口,本系统主要用到SRIO、PCIe、Hyperlink、DDR3等接口。这些接口主要在运算DSP中使用。其中SRIO和PCIe用于DSP与FPGA的数据通信,Hyperlink用于两个数据处理DSP的数据交互,DDR3用于DSP外部存储。
所述AD是Linear Technology公司的LTC2158,负责将输入的模拟信号转换为数字信号。其主要特性如下:
1)采用+1.8V模拟电源和+1.8V数字电源供电;
2)双通道、同时采样310Msps、14位AD,专为对高频、宽动态范围信号进行数字化处理而设计;
3)AC性能包括68.8dB SNR和88dB无寄生动态范围(SFDR);
4)DC规格包括整个温度范围内的±1.2LSB INL(典型值)、±0.35LSB DNL(典型值)和无漏失码。转换噪声为2.11LSBRMS;
5)数字输出为双倍数据速率(DDR)LVDS;
6)可以利用一个正弦波、PECL、LVDS、TTL或CMOS输入对ENC+和ENC-输入进行差分驱动。一个任选的时钟占空比稳定器在全速和多种时钟占空比条件下实现了高性能。
所述DA是Analog Device公司的AD9739,负责将输出的数字信号转换为模拟信号。其主要特点如下:
1)14位,采样率2.5GSPS;
2)输出电流范围为8.66mA到31.66mA;
3)双通道,源同步,LVDS接口,方便和FPGA/ASIC互连;
4)用SPI接口配置器件;
5)供电电压为数字+3.3V、+1.8V和模拟+3.3V、+1.8V。
所述DDR3是Micron公司的MT41J128M16,负责提供处理器芯片外部存储器。其主要特性如下:
1)存储容量达2Gbit;
2)差分数据选通;
3)8-n bit预存结构;
4)差分时钟输入。
所述电源芯片是Linear Technology公司的LTM4616和LTM4627。
LTM4616的主要特性如下:
1)输入电压范围2.7V到5.5V;
2)双路8A输出,或单路16A输出,输出电源范围0.6V到5V;
3)过流过热保护;
4)输出电压过压保护;
5)(15mm×15mm×2.82mm)LGA封装。
LTM4627的主要特性如下:
1)输入电压范围大,由4.5V可至20V;
2)输出电压范围0.6V到6V;
3)过流过热保护;
4)输出电压过压保护;
5)(15mm×15mm×4.32mm)LGA封装。
该电源芯片提供整个系统工作所需的电压。在接口板中,电源芯片将+5V电压转换成系统所需要的D+3.3V、D+2.5V、D+1.8V、MGT_AVCC、MGT_AVTT、D+1.5V、D+1.25V、D+1.0V,A+3.3V,A+1.8V,来分别提供给FPGA1(D+3.3V、D+2.5V、D+1.8V、D+1.0V、MGT_AVCC、MGT_AVTT)、FPGA2(D+2.5V、D+1.0V)、DSP1(D+3.3V、D+1.8V、D+1.5V、D+1.25V)、AD(D+1.8V、A+1.8V)、DA(D+3.3V、D+1.8V、A+3.3V、A+1.8V)、DDR3(D+1.8V)。其中MGT_AVCC和MGT_AVTT分别为+1.0V和+1.2V,这是FPGA1中的高速串行接口模块所需的电压,由单独的电源芯片提供。
在核心板中,电源芯片将+5V电压转换成系统所需要的D+3.3V、D+2.5V、D+1.8V、MGT_AVCC、MGT_AVTT、D+1.5V、D+1.2V、D+1.0V,CVDD,来分别提供给FPGA3(D+3.3V、D+1.8V、D+1.2V)、FPGA4和FPGA5(D+2.5V、D+1.8V、D+1.5V、D+1.0V、MGT_AVCC、MGT_AVTT)、DSP2和DSP3(D+1.8V、D+1.5V、D+1.0V、CVDD)、DDR3(D+1.5V)。其中MGT_AVCC和MGT_AVTT分别为+1.0V和+1.2V,这是FPGA4和FPGA5中的高速串行接口模块所需的电压,由单独的电源芯片提供。CVDD是由电源芯片UCD9222提供给DSP2和DSP3的动态1.0V电压。
(2)本发明一种多DSP和FPGA并行处理系统的实现方法,概述如下:
接口板与核心板之间、核心板内部各处理器芯片之间均会有大量数据高速传输,本发明采用了高速串行接口来实现该系统内的互连。接口板会将大量的原始数据传给核心板,因此FPGA2会与FPGA4、FPGA5有大量的数据交互,该系统中采用4x的SRIO来实现互连。核心板内部多处理器需要协同工作来完成实时数据的处理,因此,在核心板中采用了环形的拓扑结构,即两片FPGA和两片DSP通过高速串行接口组成环形。其中FPGA4与DSP2构成一组运算单元,FPGA5与DSP3构成另一组运算单元。运算单元内的两个处理器采用了4x的SRIO和2x的PCIe,该设计保证了运算单元内的最大传输带宽。运算单元间也会出现数据交互,其中FPGA4与FPGA5之间采用了4x的PCIe,DSP2与DSP3之间采用了4x的Hyperlink。
本发明为一种多DSP和FPGA并行处理系统的实现方法,该方法包括以下几个步骤:
步骤一:实现FPGA与FPGA之间的PCIe互连;
FPGA与FPGA通过GTX高速串行接口互连,GTX提供了多种高速串行协议的物理层,在该物理层的基础上可以实现不同的通信协议,比如PCIe和SRIO。FPGA之间的互连示意图如图2所示。4通道情况下的互连需要16根信号线。单个通道互连需要4根信号线,其中一对发送线,一对接收线。一个FPGA的发送端与另一个FPGA的接收端互连。互连采用差分线设计,两端的P对应P,N对应N。同时需要在信号线上串联AC耦合电容。
在本系统中,核心板的FPGA4和FPGA5之间选用x4通道的PCIe互连,单通道数据率选用5Gbps,考虑到8b/10b编码,有效带宽高达2GBps。FPGA4作为RC端(Root Complex),FPGA5作为EP端(Endpoint)。
使用Xilinx提供的LogiCORE将FPGA内部的PCI Express接口模块、GTX收发器、BlockRAM和时钟资源整合,其中PCI Express接口模块负责协议逻辑、GTX收发器负责串行收发、Block RAM负责缓存、时钟资源负责提供精准的时钟。在LogiCORE上可以配置多种参数,如:链路宽度、最大负载、接口速度、参考时钟频率、基地址寄存器等。LogiCORE所产生的IP核自带有用户参考逻辑,但该逻辑不适合DMA方式传输。编写DMA控制器来代替用户参考逻辑。DMA控制器将基地址的存储空间作为寄存器,RC端只需要读写EP端的基地址存储空间就可以实现对DMA控制器的配置。FPGA的PCIe模块结构图如图3所示。最左端虚线框内为FPGA4的内部逻辑,中间方框内为FPGA4的PCIe部分逻辑,左边虚线框内代表与FPGA4互连器件,如FPGA5或DSP2。PCIe部分逻辑由时钟、复位、发送缓存、接收缓存、DMA控制器、发送逻辑、接收逻辑、V6FPGA内置硬核组成。
上电后,RC端(FPGA4)会对EP端(FPGA5)进行配置,配置结束后才能正常传输数据。如果RC端(FPGA4)给EP端(FPGA5)传数,RC(FPGA4)直接发送大量的存储器写包给EP(FPGA5)。如果EP(FPGA5)给RC(FPGA4)传数,RC(FPGA4)首先发送5个存储器写包来配置EP(FPGA5)的DMA控制器,配置信息包括复位DMA控制器、传输包大小、传输包个数、传输起始地址、启动DMA控制器。EP(FPGA5)在DMA控制器的控制下,根据配置信息发送存储器写包给RC(FPGA4)。
步骤二:实现FPGA与DSP之间的PCIe互连;
FPGA3和DSP2以及FPGA4与DSP3之间采用了x2通道的PCIe,单通道数据率选用5Gbps,考虑到8b/10b编码,有效带宽高达1GBps。FPGA和DSP互连时,DSP作为RC,FPGA作为EP。DSP的PCIe模块结构图如图4所示。左边的虚线框为其他器件,这里指FPGA。中间框为DSP的PCIe接口模块。右边虚线框为DSP的内部逻辑。DSP的PCIe接口模块由时钟、复位、PCIe物理层、PCIe核、地址映射逻辑、中断逻辑、电源控制逻辑组成。
FPGA端仍使用IP核配合DMA控制器实现PCIe传输。DSP端的流程主要分为四步:初始化、链路训练、配置远端寄存器、进行PCIe数据传输。在初始化的过程中,程序需要配置Serdes时钟、开启PCIe的电源和时钟域、配置PCIe模式、配置地址映射表等。初始化结束后开始链路训练,程序通过判断LTSSM是否跳入L0状态来确定链路是否训练成功。只有当链路训练成功,FPGA和DSP才可以进行包交换。链路训练成功后,DSP可以通过发送配置读写包来配置远端寄存器,即配置FPGA的PCIe配置空间内的寄存器。配置结束后,DSP和FPGA可以通过发送存储器读写包以及带数据的完成包来进行数据交换。系统上电后会先进行前三个阶段,之后一直处于PCIe数据传输阶段。
当EP(FPGA)传数给RC(DSP)时,RC(DSP)首先配置EP(FPGA)的DMA控制器,然后EP(FPGA)启动DMA,发送大量的存储器写包给RC(DSP),RC(DSP)将数据存入DDR3中,再进行后续的计算。当RC(DSP)传数给EP(FPGA)时,RC(DSP)启动DSP内的EDMA控制器,发送存储器写包给EP(FPGA)。
步骤三:实现FPGA与FPGA之间的SRIO互连;
接口板的FPGA1和核心板FPGA4以及FPGA5之间都采用x4的SRIO互连,单通道速率为5Gbps,考虑到8b/10b编码,有效带宽高达2GBps。
本发明利用了Xilinx提供的串行Rapid IO IP核,并设计了本地逻辑和远端。其具体结构如图5所示,本地为FPGA,远端可以为FPGA或DSP。SRIO不同于PCIe,PCIe互连的两端分为RC和EP,而SRIO的互连的两端没有主从关系。所以当远端为FPGA时,两个FPGA内的SRIO接口设计相同。
FPGA中的SRIO接口设计如图5所示。包括本地逻辑、远端逻辑和串行RapidIO IP核。本地逻辑负责发送本地的请求包并接收来自远端的响应包。远端逻辑负责接收来自远端的请求包。串行RapidIO IP核的主要功能是控制打包和解包,提供缓存,控制链路训练,初始化以及协议实现。
当本地发送数据给远端时,首先把需要传输的数据写入发送缓存,并在写完后给发送控制器启动信号。发送控制器根据设置好的SRIO包信息,包括包类型、包大小、包数目、发送地址、对方ID等来控制产生请求模块从发送缓存中读数并产生包。这些包经过串行RapidIOIP核的处理变成高速串行比特流,通过发送差分对传输给远端。当远端发送数据给本地时,串行RapidIO IP核将接收到的串行比特流解出srio包并传递给远端请求处理模块。接收控制器控制远端请求处理模块将包内的数据写入接收缓存,并在写完后发送完成信号给需要数据的模块,需要数据的模块可以从接收缓存读出数据。
步骤四:实现FPGA与DSP之间的SRIO互连;
接口板FPGA1与DSP1之间,核心板内FPGA4和DSP2之间,以及FPGA5和DSP3之间都采用x4的SRIO互连,单通道速率为5Gbps,考虑到8b/10b编码,有效带宽高达2GBps。DSP的SRIO模块结构图如图6所示。左边的方框代表本地器件,这里指DSP,右边的方框代表远端器件,这里指FPGA。DSP中的SRIO模块主要由载入/载出模块和物理层组成。载入/载出模块在CPU/EDMA的控制下向L2存储器发送VBUSM请求、接受VBUSM响应。在载入/载出模块内,MMR命令寄存器控制发送缓存和接收缓存,并与物理层的FIFO相连。物理层与远端的物理层相连。
在DSP中,SRIO的实现可分为4步:地址映射;配置ID、SRIO端口、中断向量;配置LSU寄存器;等待link up。在link up之后,DSP能够接收和发送SRIO包。DSP和FPGA之间需要知道对方的目的ID和起始地址才能正确传输数据。DSP传数给FPGA时,DSP启动相当于DSP给映射的地址写数据。FPGA传数给DSP的过程与FPGA之间传输的过程相同。
步骤五:实现DSP与DSP之间的Hyperlink互连;
DSP与DSP之间采用x4的Hyperlink互连,单通道速率选用6.25Gbps,考虑到近似的8b/9b编码,有效带宽高达2.77GBps。DSP的Hyperlink模块结构图如图7所示。虚线左边代表逻辑层,虚线右边代表物理层。逻辑层的主要功能是根据寄存器的值进行地址译码,并控制VBUSM的输入与输出,同时通过输出命令FIFO、返回数据FIFO与物理层相连。物理层通过SERDES模块对输入数据进行串并转换,对输出数据进行并串转换。
DSP中的Hyperlink模块配置包括配置系统锁相环,使能Hyperlink域电源和时钟,选择通道数和时钟模式,配置Serdes寄存器,启动Hyperlink模块。当两个DSP都完成配置后,DSP会检测通道,直到link up。在link up之后,一个DSP可以读写另一个DSP的Hyperlink寄存器。在传输数据之前还需要进行地址映射。根据地址映射,DSP启动EDMA控制器向另一个DSP传输数据。
(3)本发明为一种多DSP和FPGA并行处理系统及实现方法,其优点是:
1)并行处理能力强。该系统由DSP和FPGA组成,FPGA接口能力强,DSP适合复杂运算,二者结合非常适合并行处理。系统采用了多片高性能的FPGA与DSP,极大地提高了系统的并行处理能力。
2)功能丰富。该系统能采集两路模拟信号,能发出波形,同时能与PC通信。
3)灵活性、可扩展性强。该系统由两块独立的电路板组成,分别完成接口功能与核心运算功能,两板之间由高速接插件互连。所以,可以在保持接口板不变的情况下更改处理板设计,实现不同性能的信号处理。同理,也可以在保持核心板不变的情况下更改接口板设计,来处理不同类型的输入信号。同时,该系统核心板由两组FPGA+DSP组成,在对运算能力要求不高的情况下可只使用一组FPGA+DSP,从而降低系统的功耗。
4)突破处理器芯片间的数据传输瓶颈。该系统中,处理器芯片之间的互连设计没有采用传统的并行接口,而采用了高速串行接口。该实现方法提高了传输带宽,保证系统的实时性;采用了模块化设计,缩短开发周期;减少了互连引脚,方便了电路板布线。
5)可移植性强。该系统中所有逻辑功能均由VHDL和C语言实现,易于修改、移植与升级。
附图说明
图1是系统结构图。
图2是FPGA之间高速串行互连结构图。
图3是FPGA的PCIe模块结构图。
图4是DSP的PCIe模块结构图。
图5是FPGA的SRIO模块结构图。
图6是DSP的SRIO模块结构图。
图7是DSP的Hyperlink模块结构图。
图8是系统流程图。
具体实施方式
见图1—图7,本发明多DSP和FPGA并行处理系统,包括:包括:FPGA、DSP、AD、DA、DDR3、电源芯片。
本发明中包括多片FPGA,每片FPGA的功能有所差别。接口板的FPGA1控制两路AD进行数据采集;可以将采集后的数据进行预处理;将预处理的结果通过SRIO传递给核心板的FPGA4和FPGA5;同时接收FPGA4和FPGA5的处理结果;将结果通过SRIO传递给接口板的DSP1;接收DSP1的命令并根据命令控制接口板的FPGA2。接口板的FPGA2根据FPGA1的命令,控制DA输出波形。核心板的FPGA3的功能是控制核心板DSP2和DSP3的上电时序。核心板的FPGA4和FPGA5的功能类似,配合DSP2和DSP3组成乒乓处理单元。FPGA4和FPGA5从接口板的FPGA1通过SRIO接收数据,并进行大块数据简单处理;将处理结果通过SRIO和PCIe传递给DSP2和DSP3;并通过SRIO和PCIe接收DSP2和DSP3的处理结果;将处理结果通过SRIO传递给FPGA1;FPGA4和FPGA5之间可以通过PCIe和LVDS进行数据交互。
本发明中同样包括多片DSP。接口板的DSP1主要负责接口控制,控制网口和PC之间的互连,接收PC的命令并发送给FPGA1;同时从FPGA1接收数据,并传递给PC。核心板的DSP2和DSP3主要负责复杂的运算处理。DSP2和DSP3通过SRIO和PCIe从FPGA4和FPGA5得到数据;并将运算结果通过SRIO和PCIe传回给FPGA4和FPGA5;DSP2和DSP3之间可以通过Hyperlink进行数据交互。
AD负责对外部信号进行采样,即把模拟信号转换为数字信号。采样得到的数字信号直接传送给FPGA1。本发明一共使用了2片AD,可对2路外部信号同时进行采样操作。
DA负责产生波形,即把数字信号转换为模拟信号。接口板的FPGA2控制DA产生波形。
DDR3芯片用来做处理器芯片的大容量外部存储器。FPGA1控制两片DDR3。DSP1控制两片DDR3。FPGA3和FPGA4分别控制8片DDR3。DSP2和DSP3分别控制4片DDR3。
电源芯片提供整个系统工作所需的电压。在接口板中,电源芯片将+5V电压转换成系统所需要的D+3.3V、D+2.5V、D+1.8V、MGT_AVCC、MGT_AVTT、D+1.5V、D+1.25V、D+1.0V,A+3.3V,A+1.8V,来分别提供给FPGA1(D+3.3V、D+2.5V、D+1.8V、D+1.0V、MGT_AVCC、MGT_AVTT)、FPGA2(D+2.5V、D+1.0V)、DSP1(D+3.3V、D+1.8V、D+1.5V、D+1.25V)、AD(D+1.8V、A+1.8V)、DA(D+3.3V、D+1.8V、A+3.3V、A+1.8V)、DDR3(D+1.8V)。其中MGT_AVCC和MGT_AVTT分别为+1.0V和+1.2V,这是FPGA1中的高速串行接口模块所需的电压,由单独的电源芯片提供。
在核心板中,电源芯片将+5V电压转换成系统所需要的D+3.3V、D+2.5V、D+1.8V、MGT_AVCC、MGT_AVTT、D+1.5V、D+1.2V、D+1.0V,CVDD,来分别提供给FPGA3(D+3.3V、D+1.8V、D+1.2V)、FPGA4和FPGA5(D+2.5V、D+1.8V、D+1.5V、D+1.0V、MGT_AVCC、MGT_AVTT)、DSP2和DSP3(D+1.8V、D+1.5V、D+1.0V、CVDD)、DDR3(D+1.5V)。其中MGT_AVCC和MGT_AVTT分别为+1.0V和+1.2V,这是FPGA4和FPGA5中的高速串行接口模块所需的电压,由单独的电源芯片提供。CVDD是由电源芯片UCD9222提供给DSP2和DSP3的动态1.0V电压。
本发明一种多DSP和FPGA并行处理系统的实现方法,其流程如图8所示。流程概述如下:接口板FPGA1控制两路AD采集数据;接口板FPGA1通过SRIO将数据传输给核心板的FPGA3和FPGA4,并在FPGA3和FPGA4中做预处理,FPGA3和FPGA4之间可以通过SRIO或PCIe进行数据交互;FPGA3和FPGA4分别将处理结果通过SRIO和PCIe传输给DSP2和DSP3,在DSP中做复杂处理,DSP2和DSP3之间可以通过Hyperlink进行数据交互;DSP2和DSP3将结果通过SRIO和PCIe传回FPGA3和FPGA4;FPGA3和FPGA4通过SRIO传回接口板的FPGA1;接口板FPGA1将结果传给DSP1,并由DSP1通过网口传给PC。
本发明一种多DSP和FPGA并行处理系统的高速串行互连方案主要包括以下几部分:
(1)核心板FPGA4与FPGA5之间的x4通道PCIe互连;
(2)核心板FPGA4与DSP2之间的x2通道PCIe互连以及FPGA5与DSP3之间的x2通道PCIe互连;
(3)接口板FPGA1与核心板FPGA4之间的x4通道SRIO互连,接口板FPGA1与核心板FPGA5之间的x4通道SRIO互连;
(4)接口板FPGA1与DSP1之间的x4通道SRIO互连,核心板FPGA4与DSP2之间的x4通道SRIO互连,核心板FPGA5与DSP3之间的x4通道SRIO互连;
(5)核心板DSP2与DSP3之间的x4通道Hyperlink互连。
硬件系统实现结果
FPGA编程使用VHDL,DSP编程使用C语言。将编写好的程序分别下载到FPGA和DSP中。实验过程中,需要测试FPGA与FPGA之间的PCIe和SRIO互连,FPGA与DSP之间的PCIe和SRIO互连,以及DSP之间的Hyperlink互连。先在一端例化一组递增数,然后通过高速串行总线传递给另一端。检查数据正确性,并记录传输时间,根据传输的数据量可计算出传输速率。再根据理论传输速率,可计算得到传输效率。在测试过程中通过ChipScope(XilinxISE软件自带的逻辑分析仪)进行观察。
在测试时,计算发送16KB数据所需要的时钟数,根据时钟频率可以计算出传输速率。当测试SRIO时,发送256B的nwrite包。当测试PCIe时,采用128B的存储器写包,因为DSP所支持的最大的数据负载为128B。Hyperlink的测试是在DSP2与DSP3的L2内存之间。理论吞吐量由通道数,单通道速率,以及编码效率决定。SRIO和PCIe都使用8b/10b编码,Hyperlink使用8b/9b编码。效率由实际吞吐量除以理论吞吐量得到。多DSP和FPGA并行处理系统的高速串行互连性能的结果如表1所示。
表1高速串行互连性能
由表1可以看到,高速串行接口的实际吞吐量远大于EMIF等并行接口,后者的速率在几十MBps。效率并未很高的原因是,由于包交换的机制,数据包内一定含有一定的包头包尾信息,这些信息用来保证数据传输的正确性,但并不属于有效数据,因此在传输过程中必定会存在速率损耗。为了提高效率,最好的办法就是尽量使用大数据包,即在一个包内使有效数据部分尽量多,包头包尾信息尽量少。但不同的器件支持的包内最大有效数据不同,比如Virtex-6系列的FPGA支持的PCIe包最大可为1024B,而TMS320C6678支持的PCIe包最大为128B。
本发明多DSP和FPGA并行处理系统,利用SRIO、PCIe、Hyperlink实现了多处理器之间的高速串行互连;并且在实际的实验过程中测试通过,实现了大量数据的快速传输,并且具有以下优点:
1)系统采用了多片高性能的FPGA与DSP,具有强大的并行处理能力;
2)可完整实现双路信号的采集和实时处理,可发送波形,可与PC通信;
3)灵活性、可扩展性强;
4)突破处理器芯片间的数据传输瓶颈;
5)可移植性强
可见,采用高速串行互连方案的多DSP和FPGA并行处理系统在实际应用中具有很大的通用性和灵活性,有很好的应用前景。
Claims (2)
1.一种多DSP和FPGA并行处理系统,其特征在于:它包括:FPGA、DSP、AD、DA、DDR3和电源芯片;在接口板中,DSP1控制网口芯片和两片DDR3芯片,同时与FPGA1互连;FPGA1控制两路AD和两片DDR3,同时与DSP1、FPGA2以及核心板的FPGA4、FPGA5互连;FPGA2控制DA,同时与FPGA1互连;在核心板中,FPGA4、FPGA5与接口板的FPGA1互连;FPGA4、FPGA5、DSP2、DSP3四片处理器芯片组成环形拓扑结构;FPGA4、FPGA5各自控制8片DDR3;DSP2、DSP3各自控制4片DDR3;FPGA3控制电源芯片,提供DSP2、DSP3的上电时序;该并行系统的信号走向如下:接口板根据PC通过网口传来的命令控制DA发送波形;接口板AD采集数据,在接口板FPGA1中做数据预处理;接口板FPGA1通过SRIO将预处理后的数据传输给核心板的FPGA3和FPGA4,并在FPGA3和FPGA4中做大数据块的简单处理,FPGA3和FPGA4之间通过SRIO或PCIe进行数据交互;FPGA3和FPGA4分别将处理结果通过SRIO和PCIe传输给DSP2和DSP3,在DSP中做复杂处理,DSP2和DSP3之间通过Hyperlink进行数据交互;DSP2和DSP3将结果通过SRIO和PCIe传回FPGA3和FPGA4;FPGA3和FPGA4通过SRIO传回接口板的FPGA1;接口板FPGA1将结果传给DSP1,并由DSP1通过网口传给PC;
该系统选用了四种类型的FPGA,接口板FPGA1选用Virtex-6XC6VLX240T,负责控制AD和数据传输,接口板FPGA2选用Virtex-6XC6VLX75T,负责控制DA;核心板FPGA3选用Spartan-3XC3S700AN,负责控制电源芯片上电时序;核心板FPGA4、5选用Virtex-6XC6VSX315T,负责运算;
该系统选用了两种类型的DSP,接口板DSP1选用TI的TMS320C6455,负责控制网口芯片;核心板DSP2和DSP3选用TI的TMS320C6678,负责复杂运算;
所述AD是LTC2158,负责将输入的模拟信号转换为数字信号;
所述DA是AD9739,负责将输出的数字信号转换为模拟信号;
所述DDR3是MT41J128M16,负责提供处理器芯片外部存储器;
所述电源芯片是LTM4616和LTM4627。
2.一种多DSP和FPGA并行处理系统的实现方法,其特征在于:该方法包括以下步骤:
步骤一:实现FPGA与FPGA之间的PCIe互连;
FPGA与FPGA通过GTX高速串行接口互连,GTX提供了多种高速串行协议的物理层,在该物理层的基础上实现不同的通信协议,比如PCIe和SRIO;4通道情况下的互连需要16根信号线,单个通道互连需要4根信号线,其中一对发送线,一对接收线,一个FPGA的发送端与另一个FPGA的接收端互连;互连采用差分线设计,两端的P对应P,N对应N,同时需要在信号线上串联AC耦合电容;
在本系统中,核心板的FPGA4和FPGA5之间选用x4通道的PCIe互连,单通道数据率选用5Gbps,考虑到8b/10b编码,有效带宽高达2GBps,FPGA4作为RC端即Root Complex,FPGA5作为EP端即Endpoint;
使用Xilinx提供的LogiCORE将FPGA内部的PCI Express接口模块、GTX收发器、BlockRAM和时钟资源整合,其中PCI Express接口模块负责协议逻辑、GTX收发器负责串行收发、Block RAM负责缓存、时钟资源负责提供精准的时钟;在LogiCORE上配置多种参数,如:链路宽度、最大负载、接口速度、参考时钟频率、基地址寄存器,LogiCORE所产生的IP核自带有用户参考逻辑,但该逻辑不适合DMA方式传输;编写DMA控制器来代替用户参考逻辑,DMA控制器将基地址的存储空间作为寄存器,RC端只需要读写EP端的基地址存储空间就实现对DMA控制器的配置;上电后,RC端会对EP端进行配置,配置结束后才能正常传输数据;如果RC端给EP端传数,RC端直接发送大量的存储器写包给EP端;如果EP端给RC端传数,RC端首先发送5个存储器写包来配置EP端的DMA控制器,配置信息包括复位DMA控制器、传输包大小、传输包个数、传输起始地址、启动DMA控制器;EP端在DMA控制器的控制下,根据配置信息发送存储器写包给RC端;
步骤二:实现FPGA与DSP之间的PCIe互连;
FPGA3和DSP2以及FPGA4与DSP3之间采用了x2通道的PCIe,单通道数据率选用5Gbps,考虑到8b/10b编码,有效带宽高达1GBps;FPGA和DSP互连时,DSP作为RC,FPGA作为EP;DSP的PCIe接口模块由时钟、复位、PCIe物理层、PCIe核、地址映射逻辑、中断逻辑、电源控制逻辑组成;
FPGA端仍使用IP核配合DMA控制器实现PCIe传输,DSP端的流程主要分为四步:初始化、链路训练、配置远端寄存器、进行PCIe数据传输;在初始化的过程中,程序需要配置Serdes时钟、开启PCIe的电源和时钟域、配置PCIe模式、配置地址映射表;初始化结束后开始链路训练,程序通过判断LTSSM是否跳入L0状态来确定链路是否训练成功;只有当链路训练成功,FPGA和DSP才可以进行包交换;链路训练成功后,DSP通过发送配置读写包来配置远端寄存器,即配置FPGA的PCIe配置空间内的寄存器;配置结束后,DSP和FPGA通过发送存储器读写包以及带数据的完成包来进行数据交换,系统上电后会先进行前三个阶段,之后一直处于PCIe数据传输阶段;
当EP即FPGA传数给RC即DSP时,RC首先配置EP的DMA控制器,然后EP启动DMA,发送大量的存储器写包给RC,RC将数据存入DDR3中,再进行后续的计算;当RC传数给EP时,RC启动DSP内的EDMA控制器,发送存储器写包给EP;
步骤三:实现FPGA与FPGA之间的SRIO互连;
接口板的FPGA1和核心板FPGA4以及FPGA5之间都采用x4的SRIO互连,单通道速率为5Gbps,考虑到8b/10b编码,有效带宽高达2GBps;
这里利用了Xilinx提供的串行Rapid IO IP核,并设计了本地逻辑和远端,本地为FPGA,远端为FPGA或DSP;SRIO不同于PCIe,PCIe互连的两端分为RC和EP,而SRIO的互连的两端没有主从关系;所以当远端为FPGA时,两个FPGA内的SRIO接口设计相同;
FPGA中的SRIO接口设计包括本地逻辑、远端逻辑和串行RapidIO IP核;本地逻辑负责发送本地的请求包并接收来自远端的响应包;远端逻辑负责接收来自远端的请求包;串行RapidIO IP核的主要功能是控制打包和解包,提供缓存,控制链路训练,初始化以及协议实现;当本地发送数据给远端时,首先把需要传输的数据写入发送缓存,并在写完后给发送控制器启动信号;发送控制器根据设置好的SRIO包信息,包括包类型、包大小、包数目、发送地址、对方ID来控制产生请求模块从发送缓存中读数并产生包;这些包经过串行RapidIOIP核的处理变成高速串行比特流,通过发送差分对传输给远端;当远端发送数据给本地时,串行RapidIO IP核将接收到的串行比特流解出srio包并传递给远端请求处理模块,接收控制器控制远端请求处理模块将包内的数据写入接收缓存,并在写完后发送完成信号给需要数据的模块,需要数据的模块从接收缓存读出数据;
步骤四:实现FPGA与DSP之间的SRIO互连;
接口板FPGA1与DSP1之间,核心板内FPGA4和DSP2之间,以及FPGA5和DSP3之间都采用x4的SRIO互连,单通道速率为5Gbps,考虑到8b/10b编码,有效带宽高达2GBps;DSP中的SRIO模块主要由载入/载出模块和物理层组成,载入/载出模块在CPU/EDMA的控制下向L2存储器发送VBUSM请求、接受VBUSM响应;在载入/载出模块内,MMR命令寄存器控制发送缓存和接收缓存,并与物理层的FIFO相连,物理层与远端的物理层相连;
在DSP中,SRIO的实现分为4步:地址映射;配置ID、SRIO端口、中断向量;配置LSU寄存器;等待link up;在link up之后,DSP能够接收和发送SRIO包,DSP和FPGA之间需要知道对方的目的ID和起始地址才能正确传输数据;DSP传数给FPGA时,DSP启动相当于DSP给映射的地址写数据,FPGA传数给DSP的过程与FPGA之间传输的过程相同;
步骤五:实现DSP与DSP之间的Hyperlink互连;
DSP与DSP之间采用x4的Hyperlink互连,单通道速率选用6.25Gbps,考虑到近似的8b/9b编码,有效带宽高达2.77GBps;逻辑层的功能是根据寄存器的值进行地址译码,并控制VBUSM的输入与输出,同时通过输出命令FIFO、返回数据FIFO与物理层相连;物理层通过SERDES模块对输入数据进行串并转换,对输出数据进行并串转换;
DSP中的Hyperlink模块配置包括配置系统锁相环,使能Hyperlink域电源和时钟,选择通道数和时钟模式,配置Serdes寄存器,启动Hyperlink模块;当两个DSP都完成配置后,DSP会检测通道,直到link up;在link up之后,一个DSP读写另一个DSP的Hyperlink寄存器;在传输数据之前还需要进行地址映射,根据地址映射,DSP启动EDMA控制器向另一个DSP传输数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410105353.8A CN103885919B (zh) | 2014-03-20 | 2014-03-20 | 一种多dsp和fpga并行处理系统及实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410105353.8A CN103885919B (zh) | 2014-03-20 | 2014-03-20 | 一种多dsp和fpga并行处理系统及实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103885919A true CN103885919A (zh) | 2014-06-25 |
CN103885919B CN103885919B (zh) | 2017-01-04 |
Family
ID=50954816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410105353.8A Active CN103885919B (zh) | 2014-03-20 | 2014-03-20 | 一种多dsp和fpga并行处理系统及实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103885919B (zh) |
Cited By (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678728A (zh) * | 2013-11-25 | 2014-03-26 | 北京航空航天大学 | 一种基于fpga+dsp构架的高速数据记录系统及其构建方法 |
CN105045763A (zh) * | 2015-07-14 | 2015-11-11 | 北京航空航天大学 | 一种基于fpga+多核dsp的pd雷达信号处理系统及其并行实现方法 |
CN105094013A (zh) * | 2015-07-28 | 2015-11-25 | 国核自仪系统工程有限公司 | 基于fpga的数据处理单元 |
CN105119370A (zh) * | 2015-07-27 | 2015-12-02 | 国网浙江省电力公司杭州供电公司 | 降低芯片系统功耗的方法、装置及智能变电站调试仪 |
CN105320633A (zh) * | 2015-11-20 | 2016-02-10 | 天津光电通信技术有限公司 | 一种双通道高速模拟数字信号采集处理板卡 |
CN105511502A (zh) * | 2015-12-24 | 2016-04-20 | 清华大学 | 一种基于vpx总线的工件台同步运动控制系统及方法 |
CN105892359A (zh) * | 2016-04-28 | 2016-08-24 | 中国科学院电子学研究所 | 一种多dsp并行处理系统及其处理方法 |
CN106528482A (zh) * | 2015-09-14 | 2017-03-22 | 中国科学院沈阳自动化研究所 | 一种基于微控制器和fpga的并行通信方法 |
CN106603200A (zh) * | 2016-12-12 | 2017-04-26 | 广州慧睿思通信息科技有限公司 | 基于pcie链路的dsp与fpga芯片高速数据传输装置及方法 |
CN106712779A (zh) * | 2016-12-16 | 2017-05-24 | 中国电子科技集团公司第四十研究所 | 一种用于32天线多模射频一致性测试的fpga+dsp硬件架构方法 |
CN106843080A (zh) * | 2017-03-29 | 2017-06-13 | 杰创智能科技股份有限公司 | 一种fpga并行阵列模块及其计算方法 |
CN106873447A (zh) * | 2017-01-10 | 2017-06-20 | 南开大学 | 一种基于fpga的机器人模型算法实现方法 |
CN107193529A (zh) * | 2017-03-31 | 2017-09-22 | 山东超越数控电子有限公司 | 一种基于fpga的ddr处理电路及实现方法 |
CN107248867A (zh) * | 2017-05-24 | 2017-10-13 | 中国航空无线电电子研究所 | 基于srio的dsp上mhal的实现方法 |
CN107357666A (zh) * | 2017-06-26 | 2017-11-17 | 西安微电子技术研究所 | 一种基于硬件保护的多核并行系统处理方法 |
CN107395396A (zh) * | 2017-06-22 | 2017-11-24 | 中国科学院西安光学精密机械研究所 | 基于fpga的冗余双网口可配置以太网ip核 |
CN107408060A (zh) * | 2015-03-17 | 2017-11-28 | 华为技术有限公司 | 用于大数据应用的多个多维计算机架构 |
CN108197576A (zh) * | 2018-01-08 | 2018-06-22 | 安徽炬视科技有限公司 | 基于dsp技术的安全帽配戴检测装置及其检测方法 |
CN108490803A (zh) * | 2018-02-07 | 2018-09-04 | 北京国电高科科技有限公司 | 一种测试仿真系统 |
WO2018161431A1 (zh) * | 2017-03-10 | 2018-09-13 | 深圳市大疆创新科技有限公司 | 基于存储器的电路板 |
CN108701102A (zh) * | 2017-10-31 | 2018-10-23 | 深圳市大疆创新科技有限公司 | 直接存储器访问控制器、数据读取方法和数据写入方法 |
CN109165178A (zh) * | 2018-08-01 | 2019-01-08 | 北京遥感设备研究所 | 一种基于RapidIO的弹上系统SoC芯片间高速通信方法 |
CN109298750A (zh) * | 2017-12-13 | 2019-02-01 | 中航华东光电(上海)有限公司 | 一种加固型智能显示器 |
CN109324994A (zh) * | 2017-08-01 | 2019-02-12 | 深圳市中兴微电子技术有限公司 | 一种芯片互连方法及系统 |
CN109344097A (zh) * | 2018-09-13 | 2019-02-15 | 北京腾凌科技有限公司 | 数据传输方法及装置 |
CN109542825A (zh) * | 2018-11-22 | 2019-03-29 | 北京遥感设备研究所 | 一种高速串行计算机扩展总线标准接口传输方法 |
CN109542481A (zh) * | 2018-11-19 | 2019-03-29 | 中电科仪器仪表有限公司 | 一种多模式多功能测试仪器自动配置装置和方法 |
CN109639446A (zh) * | 2017-10-09 | 2019-04-16 | 阿里巴巴集团控股有限公司 | Fpga设备、基于fpga设备的云系统 |
CN109698732A (zh) * | 2017-10-23 | 2019-04-30 | 华为技术有限公司 | 传输数据的方法和装置 |
CN109885508A (zh) * | 2019-01-14 | 2019-06-14 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 高速外设组件互连标准总线系统及其数据传输方法、装置 |
CN110069440A (zh) * | 2019-03-11 | 2019-07-30 | 胡友彬 | 基于异构多核的气象海洋资料处理算法硬件化系统及方法 |
CN110171016A (zh) * | 2019-05-22 | 2019-08-27 | 西安电子科技大学 | 一种基于高速串行通信的完全模块化柔性关节 |
CN110334041A (zh) * | 2019-07-29 | 2019-10-15 | 中国电子科技集团公司第二十七研究所 | 一种数字信号处理器dsp的非易失性大容量高速数据存储装置 |
CN110399320A (zh) * | 2019-07-16 | 2019-11-01 | 武汉鑫诚欣科技有限公司 | 一种满足相互高速传输的数字信号处理平台 |
CN111190853A (zh) * | 2019-12-26 | 2020-05-22 | 南京理工大学 | 基于emif和srio接口的片间高速通信系统 |
CN111416654A (zh) * | 2020-03-16 | 2020-07-14 | 北京邮电大学 | 一种基于硬件加速的卫星虚拟化信关站传输架构 |
CN111538259A (zh) * | 2020-03-31 | 2020-08-14 | 北京卫星制造厂有限公司 | 宇航燃料电池电源系统多处理器平台协同控制系统及方法 |
CN112347721A (zh) * | 2020-10-29 | 2021-02-09 | 北京长焜科技有限公司 | 基于fpga实现数据处理加速的系统及其加速方法 |
CN112463655A (zh) * | 2020-11-14 | 2021-03-09 | 武汉汇迪森信息技术有限公司 | 一种高速数据采集存储系统的数据存储及读取方法 |
CN112699077A (zh) * | 2020-12-30 | 2021-04-23 | 上海安路信息科技股份有限公司 | Fpga芯片及fpga子芯片的互联方法 |
CN112817899A (zh) * | 2021-04-19 | 2021-05-18 | 浙江华创视讯科技有限公司 | 基于pcie的数据传输方法、装置、存储介质和电子设备 |
CN112946580A (zh) * | 2021-01-14 | 2021-06-11 | 无锡国芯微电子系统有限公司 | 一种多处理器协同辐射源频率参数估计装置及方法 |
WO2021125262A1 (ja) * | 2019-12-17 | 2021-06-24 | ヤマハ発動機株式会社 | 自動制御基板 |
CN113297112A (zh) * | 2021-04-15 | 2021-08-24 | 上海安路信息科技股份有限公司 | PCIe总线的数据传输方法、系统及电子设备 |
CN113326227A (zh) * | 2021-08-03 | 2021-08-31 | 上海国微思尔芯技术股份有限公司 | 链路复用方法、系统及原型验证方法 |
CN114706803A (zh) * | 2022-03-29 | 2022-07-05 | 深圳市广和通无线股份有限公司 | 多速率适配方法及PCIe设备 |
CN115017081A (zh) * | 2022-06-30 | 2022-09-06 | 重庆秦嵩科技有限公司 | 基于国产fpga的多路srio接口时钟资源共享系统 |
CN115826910A (zh) * | 2023-02-07 | 2023-03-21 | 成都申威科技有限责任公司 | 一种向量定点的alu处理系统 |
CN116383107A (zh) * | 2023-06-06 | 2023-07-04 | 成都立思方信息技术有限公司 | 一种可灵活扩展的信号收发系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189716A (zh) * | 2018-08-08 | 2019-01-11 | 西安思丹德信息技术有限公司 | 一种基于fpga的数据传输系统及传输方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090225775A1 (en) * | 2008-03-06 | 2009-09-10 | Integrated Device Technology, Inc. | Serial Buffer To Support Reliable Connection Between Rapid I/O End-Point And FPGA Lite-Weight Protocols |
CN102928821A (zh) * | 2012-11-02 | 2013-02-13 | 北京理工大学 | 一种多功能雷达信号处理板 |
CN103530245A (zh) * | 2013-10-31 | 2014-01-22 | 武汉邮电科学研究院 | 一种基于fpga的srio互联交换装置 |
CN103631527A (zh) * | 2012-08-20 | 2014-03-12 | 中国人民解放军信息工程大学 | 基于两级交换架构的dsp处理器阵列实现方法 |
-
2014
- 2014-03-20 CN CN201410105353.8A patent/CN103885919B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090225775A1 (en) * | 2008-03-06 | 2009-09-10 | Integrated Device Technology, Inc. | Serial Buffer To Support Reliable Connection Between Rapid I/O End-Point And FPGA Lite-Weight Protocols |
CN103631527A (zh) * | 2012-08-20 | 2014-03-12 | 中国人民解放军信息工程大学 | 基于两级交换架构的dsp处理器阵列实现方法 |
CN102928821A (zh) * | 2012-11-02 | 2013-02-13 | 北京理工大学 | 一种多功能雷达信号处理板 |
CN103530245A (zh) * | 2013-10-31 | 2014-01-22 | 武汉邮电科学研究院 | 一种基于fpga的srio互联交换装置 |
Cited By (74)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678728A (zh) * | 2013-11-25 | 2014-03-26 | 北京航空航天大学 | 一种基于fpga+dsp构架的高速数据记录系统及其构建方法 |
CN103678728B (zh) * | 2013-11-25 | 2016-10-26 | 北京航空航天大学 | 一种基于fpga+dsp构架的高速数据记录系统的构建方法 |
CN107408060B (zh) * | 2015-03-17 | 2020-10-16 | 华为技术有限公司 | 一种数据处理的方法及装置 |
US10417005B2 (en) | 2015-03-17 | 2019-09-17 | Huawei Technologies Co., Ltd. | Multi-multidimensional computer architecture for big data applications |
CN107408060A (zh) * | 2015-03-17 | 2017-11-28 | 华为技术有限公司 | 用于大数据应用的多个多维计算机架构 |
CN105045763A (zh) * | 2015-07-14 | 2015-11-11 | 北京航空航天大学 | 一种基于fpga+多核dsp的pd雷达信号处理系统及其并行实现方法 |
CN105045763B (zh) * | 2015-07-14 | 2018-07-13 | 北京航空航天大学 | 一种基于fpga+多核dsp的pd雷达信号处理系统及其并行实现方法 |
CN105119370A (zh) * | 2015-07-27 | 2015-12-02 | 国网浙江省电力公司杭州供电公司 | 降低芯片系统功耗的方法、装置及智能变电站调试仪 |
CN105119370B (zh) * | 2015-07-27 | 2017-07-25 | 国网浙江省电力公司杭州供电公司 | 降低芯片系统功耗的方法、装置及智能变电站调试仪 |
CN105094013A (zh) * | 2015-07-28 | 2015-11-25 | 国核自仪系统工程有限公司 | 基于fpga的数据处理单元 |
CN105094013B (zh) * | 2015-07-28 | 2018-06-22 | 国核自仪系统工程有限公司 | 基于fpga的数据处理单元 |
CN106528482A (zh) * | 2015-09-14 | 2017-03-22 | 中国科学院沈阳自动化研究所 | 一种基于微控制器和fpga的并行通信方法 |
CN105320633A (zh) * | 2015-11-20 | 2016-02-10 | 天津光电通信技术有限公司 | 一种双通道高速模拟数字信号采集处理板卡 |
CN105511502A (zh) * | 2015-12-24 | 2016-04-20 | 清华大学 | 一种基于vpx总线的工件台同步运动控制系统及方法 |
CN105511502B (zh) * | 2015-12-24 | 2018-06-15 | 清华大学 | 一种基于vpx总线的工件台同步运动控制系统及方法 |
CN105892359A (zh) * | 2016-04-28 | 2016-08-24 | 中国科学院电子学研究所 | 一种多dsp并行处理系统及其处理方法 |
CN106603200A (zh) * | 2016-12-12 | 2017-04-26 | 广州慧睿思通信息科技有限公司 | 基于pcie链路的dsp与fpga芯片高速数据传输装置及方法 |
CN106712779A (zh) * | 2016-12-16 | 2017-05-24 | 中国电子科技集团公司第四十研究所 | 一种用于32天线多模射频一致性测试的fpga+dsp硬件架构方法 |
CN106712779B (zh) * | 2016-12-16 | 2019-06-04 | 中国电子科技集团公司第四十一研究所 | 一种用于32天线多模射频一致性测试的fpga+dsp硬件架构 |
CN106873447B (zh) * | 2017-01-10 | 2019-02-01 | 南开大学 | 一种基于fpga的机器人模型算法实现方法 |
CN106873447A (zh) * | 2017-01-10 | 2017-06-20 | 南开大学 | 一种基于fpga的机器人模型算法实现方法 |
CN109154923A (zh) * | 2017-03-10 | 2019-01-04 | 深圳市大疆创新科技有限公司 | 基于存储器的电路板 |
WO2018161431A1 (zh) * | 2017-03-10 | 2018-09-13 | 深圳市大疆创新科技有限公司 | 基于存储器的电路板 |
CN106843080B (zh) * | 2017-03-29 | 2019-05-14 | 杰创智能科技股份有限公司 | 一种fpga并行阵列模块及其计算方法 |
CN106843080A (zh) * | 2017-03-29 | 2017-06-13 | 杰创智能科技股份有限公司 | 一种fpga并行阵列模块及其计算方法 |
CN107193529A (zh) * | 2017-03-31 | 2017-09-22 | 山东超越数控电子有限公司 | 一种基于fpga的ddr处理电路及实现方法 |
CN107193529B (zh) * | 2017-03-31 | 2020-11-24 | 山东超越数控电子股份有限公司 | 一种基于fpga的ddr处理电路及实现方法 |
CN107248867A (zh) * | 2017-05-24 | 2017-10-13 | 中国航空无线电电子研究所 | 基于srio的dsp上mhal的实现方法 |
CN107395396A (zh) * | 2017-06-22 | 2017-11-24 | 中国科学院西安光学精密机械研究所 | 基于fpga的冗余双网口可配置以太网ip核 |
CN107357666A (zh) * | 2017-06-26 | 2017-11-17 | 西安微电子技术研究所 | 一种基于硬件保护的多核并行系统处理方法 |
CN109324994A (zh) * | 2017-08-01 | 2019-02-12 | 深圳市中兴微电子技术有限公司 | 一种芯片互连方法及系统 |
CN109324994B (zh) * | 2017-08-01 | 2020-10-02 | 深圳市中兴微电子技术有限公司 | 一种芯片互连方法及系统 |
CN109639446B (zh) * | 2017-10-09 | 2022-01-11 | 阿里巴巴集团控股有限公司 | Fpga设备、基于fpga设备的云系统 |
CN109639446A (zh) * | 2017-10-09 | 2019-04-16 | 阿里巴巴集团控股有限公司 | Fpga设备、基于fpga设备的云系统 |
CN109698732A (zh) * | 2017-10-23 | 2019-04-30 | 华为技术有限公司 | 传输数据的方法和装置 |
US11516322B2 (en) | 2017-10-23 | 2022-11-29 | Huawei Technologies Co., Ltd. | Data transmission method and apparatus |
CN108701102A (zh) * | 2017-10-31 | 2018-10-23 | 深圳市大疆创新科技有限公司 | 直接存储器访问控制器、数据读取方法和数据写入方法 |
CN109298750A (zh) * | 2017-12-13 | 2019-02-01 | 中航华东光电(上海)有限公司 | 一种加固型智能显示器 |
CN108197576B (zh) * | 2018-01-08 | 2020-04-17 | 安徽炬视科技有限公司 | 基于dsp技术的安全帽配戴检测装置及其检测方法 |
CN108197576A (zh) * | 2018-01-08 | 2018-06-22 | 安徽炬视科技有限公司 | 基于dsp技术的安全帽配戴检测装置及其检测方法 |
CN108490803A (zh) * | 2018-02-07 | 2018-09-04 | 北京国电高科科技有限公司 | 一种测试仿真系统 |
CN109165178A (zh) * | 2018-08-01 | 2019-01-08 | 北京遥感设备研究所 | 一种基于RapidIO的弹上系统SoC芯片间高速通信方法 |
CN109165178B (zh) * | 2018-08-01 | 2020-04-03 | 北京遥感设备研究所 | 一种基于RapidIO的弹上系统SoC芯片间高速通信方法 |
CN109344097A (zh) * | 2018-09-13 | 2019-02-15 | 北京腾凌科技有限公司 | 数据传输方法及装置 |
CN109542481A (zh) * | 2018-11-19 | 2019-03-29 | 中电科仪器仪表有限公司 | 一种多模式多功能测试仪器自动配置装置和方法 |
CN109542481B (zh) * | 2018-11-19 | 2022-06-24 | 中电科思仪科技股份有限公司 | 一种多模式多功能测试仪器自动配置装置和方法 |
CN109542825A (zh) * | 2018-11-22 | 2019-03-29 | 北京遥感设备研究所 | 一种高速串行计算机扩展总线标准接口传输方法 |
CN109885508A (zh) * | 2019-01-14 | 2019-06-14 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 高速外设组件互连标准总线系统及其数据传输方法、装置 |
CN110069440A (zh) * | 2019-03-11 | 2019-07-30 | 胡友彬 | 基于异构多核的气象海洋资料处理算法硬件化系统及方法 |
CN110171016A (zh) * | 2019-05-22 | 2019-08-27 | 西安电子科技大学 | 一种基于高速串行通信的完全模块化柔性关节 |
CN110399320A (zh) * | 2019-07-16 | 2019-11-01 | 武汉鑫诚欣科技有限公司 | 一种满足相互高速传输的数字信号处理平台 |
CN110334041A (zh) * | 2019-07-29 | 2019-10-15 | 中国电子科技集团公司第二十七研究所 | 一种数字信号处理器dsp的非易失性大容量高速数据存储装置 |
WO2021125262A1 (ja) * | 2019-12-17 | 2021-06-24 | ヤマハ発動機株式会社 | 自動制御基板 |
CN111190853A (zh) * | 2019-12-26 | 2020-05-22 | 南京理工大学 | 基于emif和srio接口的片间高速通信系统 |
CN111416654A (zh) * | 2020-03-16 | 2020-07-14 | 北京邮电大学 | 一种基于硬件加速的卫星虚拟化信关站传输架构 |
CN111538259A (zh) * | 2020-03-31 | 2020-08-14 | 北京卫星制造厂有限公司 | 宇航燃料电池电源系统多处理器平台协同控制系统及方法 |
CN112347721B (zh) * | 2020-10-29 | 2023-05-26 | 北京长焜科技有限公司 | 基于fpga实现数据处理加速的系统及其加速方法 |
CN112347721A (zh) * | 2020-10-29 | 2021-02-09 | 北京长焜科技有限公司 | 基于fpga实现数据处理加速的系统及其加速方法 |
CN112463655A (zh) * | 2020-11-14 | 2021-03-09 | 武汉汇迪森信息技术有限公司 | 一种高速数据采集存储系统的数据存储及读取方法 |
CN112463655B (zh) * | 2020-11-14 | 2022-06-14 | 武汉汇迪森信息技术有限公司 | 一种高速数据采集存储系统的数据存储及读取方法 |
CN112699077A (zh) * | 2020-12-30 | 2021-04-23 | 上海安路信息科技股份有限公司 | Fpga芯片及fpga子芯片的互联方法 |
CN112699077B (zh) * | 2020-12-30 | 2024-03-29 | 上海安路信息科技股份有限公司 | Fpga芯片及fpga子芯片的互联方法 |
CN112946580A (zh) * | 2021-01-14 | 2021-06-11 | 无锡国芯微电子系统有限公司 | 一种多处理器协同辐射源频率参数估计装置及方法 |
CN113297112A (zh) * | 2021-04-15 | 2021-08-24 | 上海安路信息科技股份有限公司 | PCIe总线的数据传输方法、系统及电子设备 |
CN112817899A (zh) * | 2021-04-19 | 2021-05-18 | 浙江华创视讯科技有限公司 | 基于pcie的数据传输方法、装置、存储介质和电子设备 |
CN113326227A (zh) * | 2021-08-03 | 2021-08-31 | 上海国微思尔芯技术股份有限公司 | 链路复用方法、系统及原型验证方法 |
CN114706803A (zh) * | 2022-03-29 | 2022-07-05 | 深圳市广和通无线股份有限公司 | 多速率适配方法及PCIe设备 |
CN114706803B (zh) * | 2022-03-29 | 2023-11-10 | 深圳市广和通科技有限公司 | 多速率适配方法及PCIe设备 |
CN115017081B (zh) * | 2022-06-30 | 2023-06-23 | 重庆秦嵩科技有限公司 | 基于国产fpga的多路srio接口时钟资源共享系统 |
CN115017081A (zh) * | 2022-06-30 | 2022-09-06 | 重庆秦嵩科技有限公司 | 基于国产fpga的多路srio接口时钟资源共享系统 |
CN115826910B (zh) * | 2023-02-07 | 2023-05-02 | 成都申威科技有限责任公司 | 一种向量定点的alu处理系统 |
CN115826910A (zh) * | 2023-02-07 | 2023-03-21 | 成都申威科技有限责任公司 | 一种向量定点的alu处理系统 |
CN116383107A (zh) * | 2023-06-06 | 2023-07-04 | 成都立思方信息技术有限公司 | 一种可灵活扩展的信号收发系统 |
CN116383107B (zh) * | 2023-06-06 | 2023-08-22 | 成都立思方信息技术有限公司 | 一种可灵活扩展的信号收发系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103885919B (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103885919A (zh) | 一种多dsp和fpga并行处理系统及实现方法 | |
CN106201946B (zh) | 一种基于fpga和dsp的星载电子系统数据接口系统 | |
CN104915303B (zh) | 基于PXIe总线的高速数字I/O系统 | |
Bjerregaard et al. | An OCP compliant network adapter for GALS-based SoC design using the MANGO network-on-chip | |
CN101599004B (zh) | 基于fpga的sata控制器 | |
CN110855996B (zh) | 一种基于fpga的图像编解码与网络传输的方法与装置 | |
CN206075271U (zh) | 一种支持多种串行协议的协议转换器 | |
CN103827841A (zh) | 可配置带宽的io连接器 | |
CN110837486A (zh) | 一种基于FPGA的FlexRay-CPCIe通信模块 | |
CN111736115B (zh) | 基于改进型sgdma+pcie的mimo毫米波雷达高速传输方法 | |
CN105681145A (zh) | 一种基于FPGA的FlexRay通信模块 | |
US20140119463A1 (en) | Scalable Multifunction Serial Link Interface | |
CN103870421A (zh) | 一种基于fpga的串行接口和pwm组合应用ip核 | |
CN103763549A (zh) | 一种基于FPGA的Camera Link接口实验与开发系统 | |
CN102752180A (zh) | Can总线网络节点的实现方法 | |
CN102637453A (zh) | 一种包括串行输入输出接口的相变存储器 | |
CN103605306A (zh) | 基于uart通讯接口扩展的通讯装置 | |
CN103226531B (zh) | 一种双端口外设配置接口电路 | |
CN108156099A (zh) | Srio交换系统 | |
CN203911941U (zh) | 一种基于以太网接口芯片的串口与以太网数据相互转换系统 | |
CN103902229A (zh) | 刀片存储装置 | |
CN109710549A (zh) | 可编程芯片内部基于通用i/o的mipi接口电路 | |
CN1707403A (zh) | 输入输出接口控制器 | |
CN205883718U (zh) | 一种mipi应用高速电路板 | |
CN104484302A (zh) | 基于usb接口的实现两台主机之间双向通信与控制的系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220922 Address after: Building 1, No. 768, Jianghong Road, Changhe Street, Binjiang District, Hangzhou City, Zhejiang Province, 310051 Patentee after: Hangzhou Leishi Technology Co.,Ltd. Address before: 100191 No. 37, Haidian District, Beijing, Xueyuan Road Patentee before: BEIHANG University |
|
TR01 | Transfer of patent right |