CN105553883A - 基于fpga的多dsp数据交换装置 - Google Patents
基于fpga的多dsp数据交换装置 Download PDFInfo
- Publication number
- CN105553883A CN105553883A CN201410587426.1A CN201410587426A CN105553883A CN 105553883 A CN105553883 A CN 105553883A CN 201410587426 A CN201410587426 A CN 201410587426A CN 105553883 A CN105553883 A CN 105553883A
- Authority
- CN
- China
- Prior art keywords
- data
- fpga
- dsp
- serial port
- program flash
- 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.)
- Pending
Links
Landscapes
- Information Transfer Systems (AREA)
- Logic Circuits (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于数字信号处理领域,尤其涉及一种基于FPGA的多DSP数据交换方法。本发明的基于FPGA的多DSP数据交换装置,包括可编程器件FPGA、DSP存储器及外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口,可编程器件FPGA分别与DSP存储器、外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口连接,调试串口连接串口交换机。本发明的装置FPGA中实现了同步串行接口交换机,其实现多片DSP之间的较为有效的数据交互,并且具有占用FPGA资源少,数据传输稳定可靠、控制较简单等优点。
Description
技术领域
本发明属于数字信号处理领域,尤其涉及一种基于FPGA的多DSP数据交换方法。
背景技术
随着数字化时代的来临,DSP的应用几乎遍及整个电子领域,在很多需要实时数据处理的场合,即使采用目前最先进的DSP芯片,单片处理器也无法满足大量数据实时处理的需求,往往需要多只DSP并行工作才能完成任务。当DSP数量增加时,一方面会占用FPGA较多的RAM资源,提高了系统成本,另一方面由于并行高速数据传输,抗干扰能力较差,传输的可靠性降低。
发明内容
本发明的技术效果能够克服上述缺陷,提供一种基于基于FPGA的多DSP数据交换装置,其实现多片DSP之间的较为有效的数据交互,并且具有占用FPGA资源少,数据传输稳定可靠、控制较简单等优点。
为实现上述目的,本发明采用如下技术方案:其包括可编程器件FPGA、DSP存储器及外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口,可编程器件FPGA分别与DSP存储器、外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口连接,调试串口连接串口交换机。
所述的可编程器件FPGA选用Xilinx公司的XC2V3000型号。
所述的串口交换机内部包括:数据接收模块、数据检测及搬移模块、数据发送模块,数据接收模块完成串行端口数据的串并转换并将数据写入到双端口的缓存中;数据检测及搬移模块完成数据包帧头的解析以及数据在不同串行端口缓存之间的数据搬移;数据发送模块完成数据从双端口缓存的读取及数据的并串转换,并发送到相应的串行端口。
本方法在FPGA中实现了同步串行接口交换机,串口交换机采用VHDL语言编写,核心是一种状态机,是系统多只DSP数据交换的核心部件。外部各片DSP都通过自己的同步串行接口连接到一个接口转换模块上,接口转换模块再链接到串口交换机上。接口转换模块主要完成同步串行接口数据的串并转换或者并串转换,以便和串口交换机内部进行数据通信。
附图说明
图1是信号并行处理模块系统结构框图;
图2系统同步串行接口交换的连接框图。
具体实施方式
图1为多DSP并行处理系统,由大规模可编程器件FPGA、多只DSP及外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口等组成。同步串行接口(SPORT)作为标准外设出现在各种型号的DSP中,为DSP之间的通信提供了方便。每个同步串行接口均由发送器和接收器构成,一般有6根信号线组成,分别为发送数据(DT)、接收数据(DR)、发送时钟(TCLK)、接收时钟(RCLK)、发送帧同步(TFS)和接收帧同步(RFS)。使用时,在FPGA内部通过开关将不同DSP的同步串行接口的相应信号互联,配置相关寄存器以确保收发时钟、同步信号和数据帧长度的正确合理,便可以实现同步串行接口的数据通信。步串行接口的相应信号互联,配置相关寄存器以确保收发时钟、同步信号和数据帧长度的正确合理,便可以实现同步串行接口的数据通信。本方法FPGA选用Xilinx公司的XC2V3000,具有64*56个逻辑阵列,1728Kbit的块RAM、18*18的嵌入式乘法器、4个时钟管理器,最大达720个I/O口。图2所示为系统同步串行接口交换的连接框图,串口交换机采用VHDL语言编写,核心是一种状态机,是系统多只DSP数据交换的核心部件。外部各片DSP都通过自己的同步串行接口连接到一个接口转换模块上,接口转换模块再链接到串口交换机上。接口转换模块主要完成同步串行接口数据的串并转换或者并串转换,以便和串口交换机内部进行数据通信。
串口交换机内部主要包括三个功能模块:数据接收模块、数据检测和搬移模块(串口交换机核心),以及数据发送模块。数据接收模块完成串行端口数据的串并转换并将数据写入到双端口的缓存中;数据检测及搬移模块完成数据包帧头的解析以及数据在不同串行端口缓存之间的数据搬移;数据发送模块完成数据从双端口缓存的读取及数据的并串转换,并发送到相应的串行端口。
由于所有串口交换机共有两个高速串行端口,其中串行端口0的发送和接收端都经过双端口RAM挂接在交换机上,而串口1的发送帧标志管脚和发送数据管脚设置为通用的GPIO管脚,作为交换机的控制和状态信号。其中,串口1的发送帧标志管脚作为DSP数据交换时的请求信号;串口1的发送数据管脚作为当前该片DSP串口0状态指示信号。当DSP1要发送数据给DSP2时,DSP1先检测其DX1的状态,当DX1允许时,则通过FSX1向串口交换机发出数据交换请求,串口交换机接收到数据请求后,查询DSP2的DX1状态,当其DX1允许时,则开始把DSP1串行端口0的接收缓存(DPRAM1)的数据搬移到DSP2串行端口0的发送缓存(DPRAM4)中,通过串行端口发送到DSP2中,完成本次数据通信;以此类推,其他DSP之间进行数据交换时也采取类似的过程。
本发明的软件基于TI公司CCS开发环境,开发环境提供了DSP芯片支持库CSL,缩短了软件的开发周期。具体配置和收发程序如下。串口交换机的数据包格式为:
0x55555555D|DST|SRC|CNT|RESERVED|
RESERVED|RESERVED|RESERVED|DATA
其中,0x5555555D为发送数据帧头。DST是目的节点号,SRC是源节点号,CNT为发送数据长度,中间四个32位字为保留字,最后是数据区。
串口交换机初始化:
串口交换机使用串口0作为数据交换的通道,大部分参数配置都参考默认配置,需要注意的两个地方是:在对串口0的配置中将PCR(串口控制寄存器)寄存器的FSXM位设置为0(MCBSP_PCR_FSXM_EXTERNAL),即发送由外部提供帧信号;在对串口1的配置中,将PCR寄存器的RIOEN为设置为1(MCBSP_PCR_RIOEN_GPIO),即将FSR和CLKR管脚作为GPIO使用,用于触发串口0的数据发送。初始化代码见函数McbspHubInit。
串口交换机数据发送采用两级EDMA链方式。第一级EDMA链用来发送数据帧头,源节点号、目的节点号以及数据长度,紧接着第二级EDMA链发送真正的数据。具体的EDMA配置和数据发送的实现见函数McbspHubSend。
串口交换机数据接收采用双缓冲EDMA传输链结构。EDMA控制器提供了一种灵活的传输机制,称为“连接”(linking),可以将不同EDMA传输参数组连接起来,组成一个传输链,为同一个通道服务。在传输链中,一个传输的结束会导致自动从参数RAM中装载下一次传输需要的事件参数。在EDMA链接收完数据后,会相应的置上接收标志,当用户程序需要接受相应节点的数据时,只需判断相应节点的数据标志位,如果标志位准备好,则应用程序可以在相应的缓冲区读取数据,否则,等待数据接收好标志,直到标志已好,接收数据。接收函数代码见函数McbspHubRecv。
Claims (3)
1.一种基于FPGA的多DSP数据交换装置,其特征在于,包括可编程器件FPGA、DSP存储器及外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口,可编程器件FPGA分别与DSP存储器、外挂SDRAM存储器、FPGA程序FLASH、DSP程序FLASH、千以太网口、调试串口、数据输入及数据输出接口连接,调试串口连接串口交换机。
2.根据权利要求1所述的基于基于FPGA的多DSP数据交换装置,其特征在于,所述的可编程器件FPGA选用Xilinx公司的XC2V3000型号。
3.根据权利要求1所述的基于基于FPGA的多DSP数据交换装置,其特征在于,所述的串口交换机内部包括:数据接收模块、数据检测及搬移模块、数据发送模块,数据接收模块完成串行端口数据的串并转换并将数据写入到双端口的缓存中;数据检测及搬移模块完成数据包帧头的解析以及数据在不同串行端口缓存之间的数据搬移;数据发送模块完成数据从双端口缓存的读取及数据的并串转换,并发送到相应的串行端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410587426.1A CN105553883A (zh) | 2014-10-28 | 2014-10-28 | 基于fpga的多dsp数据交换装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410587426.1A CN105553883A (zh) | 2014-10-28 | 2014-10-28 | 基于fpga的多dsp数据交换装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105553883A true CN105553883A (zh) | 2016-05-04 |
Family
ID=55832820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410587426.1A Pending CN105553883A (zh) | 2014-10-28 | 2014-10-28 | 基于fpga的多dsp数据交换装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105553883A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201946A (zh) * | 2016-06-29 | 2016-12-07 | 北京航天自动控制研究所 | 一种基于fpga和dsp的星载电子系统数据接口系统 |
CN107666449A (zh) * | 2016-07-28 | 2018-02-06 | 全球能源互联网研究院 | 一种基于fpga的多dsp数据交换装置及交换方法 |
CN108228513A (zh) * | 2016-12-14 | 2018-06-29 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于fpga架构的智能串口通讯模块及控制方法 |
CN109597777A (zh) * | 2018-12-11 | 2019-04-09 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的mcbsp接口互联装置及方法 |
CN109960674A (zh) * | 2019-04-08 | 2019-07-02 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的usb接口互联方法及系统 |
CN110391941A (zh) * | 2019-07-29 | 2019-10-29 | 深圳震有科技股份有限公司 | 一种电路板收发数据的方法、电路板及存储介质 |
CN114884579A (zh) * | 2022-04-28 | 2022-08-09 | 中国人民解放军国防科技大学 | 一种可用于超高速光网络信号接收系统的通用控制模块 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863136A (zh) * | 2005-05-12 | 2006-11-15 | 中兴通讯股份有限公司 | 以太网数据包与多个dsp串口数据转发的方法和系统 |
-
2014
- 2014-10-28 CN CN201410587426.1A patent/CN105553883A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863136A (zh) * | 2005-05-12 | 2006-11-15 | 中兴通讯股份有限公司 | 以太网数据包与多个dsp串口数据转发的方法和系统 |
Non-Patent Citations (1)
Title |
---|
吕卫国: ""一种基于FPGA的多DSP数据交换方法"", 《指挥控制与仿真》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201946A (zh) * | 2016-06-29 | 2016-12-07 | 北京航天自动控制研究所 | 一种基于fpga和dsp的星载电子系统数据接口系统 |
CN106201946B (zh) * | 2016-06-29 | 2018-11-23 | 北京航天自动控制研究所 | 一种基于fpga和dsp的星载电子系统数据接口系统 |
CN107666449A (zh) * | 2016-07-28 | 2018-02-06 | 全球能源互联网研究院 | 一种基于fpga的多dsp数据交换装置及交换方法 |
CN108228513A (zh) * | 2016-12-14 | 2018-06-29 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于fpga架构的智能串口通讯模块及控制方法 |
CN108228513B (zh) * | 2016-12-14 | 2021-03-26 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于fpga架构的智能串口通讯装置 |
CN109597777A (zh) * | 2018-12-11 | 2019-04-09 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的mcbsp接口互联装置及方法 |
CN109960674A (zh) * | 2019-04-08 | 2019-07-02 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的usb接口互联方法及系统 |
CN110391941A (zh) * | 2019-07-29 | 2019-10-29 | 深圳震有科技股份有限公司 | 一种电路板收发数据的方法、电路板及存储介质 |
CN114884579A (zh) * | 2022-04-28 | 2022-08-09 | 中国人民解放军国防科技大学 | 一种可用于超高速光网络信号接收系统的通用控制模块 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105553883A (zh) | 基于fpga的多dsp数据交换装置 | |
JP6959310B2 (ja) | 改善された二次相互接続ネットワークを備えたマルチプロセッサシステム | |
CN101753388B (zh) | 适用于多核处理器片上和片间扩展的路由及接口装置 | |
CN108132897B (zh) | 一种基于zynq平台软核的srio控制器 | |
WO2018040016A1 (zh) | 一种协议转换器及协议转换方法 | |
US9483209B2 (en) | Interface system and method | |
CN103825696A (zh) | 一种基于fpga实现光纤高速实时通信的装置 | |
CN103918238A (zh) | 实时分布式网络模块、实时分布式网络及其方法 | |
JP2004521426A (ja) | バスサイクル毎に選択可能な数のデータワードの読み出し及び/又は書き込みを行うことができるファーストイン・ファーストアウトバッファ | |
US20200218215A1 (en) | Circuit for coupling a field bus and a local bus | |
CN110471880A (zh) | 一种基于FPGA支持Label号筛选的ARINC429总线模块及其数据传输方法 | |
US20090070502A1 (en) | Data Modification Module | |
CN101707599B (zh) | 故障录波系统中基于dsp的以太网通信方法 | |
CN101562544B (zh) | 一种数据包生成器和数据包生成方法 | |
CN108429707B (zh) | 一种适应不同传输速率的时间触发业务转发器及方法 | |
CN103944898A (zh) | 基于状态机的arinc429编解码逻辑的实现方法 | |
US11442878B2 (en) | Memory sequencer system and a method of memory sequencing using thereof | |
US20080195793A1 (en) | Microcontroller with memory trace module | |
US20080181242A1 (en) | Communications gateway between two entities | |
JP2003050788A (ja) | 高レベル・データ・リンク・コントローラから多数個のディジタル信号プロセッサ・コアに信号を分配するための装置と方法 | |
CN101415027A (zh) | 基于hdlc协议的通讯模块及数据实时转发存储控制方法 | |
US9160338B2 (en) | Adaptive interface for coupling FPGA modules | |
US8645557B2 (en) | System of interconnections for external functional blocks on a chip provided with a single configurable communication protocol | |
EP4322451A1 (en) | Communication device, communication system, and communication method | |
CN103347023A (zh) | 一种工业现场环境下hdlc通信控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160504 |
|
WD01 | Invention patent application deemed withdrawn after publication |