CN111190853A - 基于emif和srio接口的片间高速通信系统 - Google Patents
基于emif和srio接口的片间高速通信系统 Download PDFInfo
- Publication number
- CN111190853A CN111190853A CN201911364092.0A CN201911364092A CN111190853A CN 111190853 A CN111190853 A CN 111190853A CN 201911364092 A CN201911364092 A CN 201911364092A CN 111190853 A CN111190853 A CN 111190853A
- Authority
- CN
- China
- Prior art keywords
- module
- fpga
- emif
- dsp
- srio
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 17
- 230000005540 biological transmission Effects 0.000 claims abstract description 14
- 239000013078 crystal Substances 0.000 claims description 4
- 239000002245 particle Substances 0.000 claims description 4
- 238000005538 encapsulation Methods 0.000 claims description 2
- 239000003381 stabilizer Substances 0.000 claims description 2
- 239000008187 granular material Substances 0.000 claims 2
- 230000002457 bidirectional effect Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 101100301524 Drosophila melanogaster Reg-5 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/1735—Network adapters, e.g. SCI, Myrinet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Abstract
本发明公开了一种基于EMIF和SRIO接口的片间高速通信系统,包括FPGA端EMIF接口模块,用于对EMIF总线传输的指令进行读写控制;FPGA端SRIO接口模块,用于对SRIO接口进行协议配置及数据读写控制;GTX模块,用于实现片间批量数据高速串行传输;DSP端EMIF接口模块,用于对EMIF总线传输的指令进行读写控制;DSP端SRIO接口模块,用于对SRIO接口进行协议配置及数据读写控制;DDR3存储模块,用于缓存片间传输的批量数据;DSP内部CPU模块,用于处理片间中断信号及收发命令、数据;以及电源模块、时钟模块。本发明的系统实现了FPGA与DSP间的双向高速实时通信,既可通过EMIF总线传输命令控制字,又可通过SRIO接口进行批量数据传输,适用于以FPGA和DSP为核心的协同数字信号处理系统,灵活且适配性强。
Description
技术领域
本发明属于高速通信领域,特别涉及一种基于EMIF和SRIO接口的片间高速通信系统。
背景技术
目前,数字信号处理技术快速发展,数字信号处理系统已经广泛应用于军用、民用领域,数字信号处理器(DSP)和现场可编辑门阵列(FPGA)在数字信号处理系统中应用最为广泛。为了将FPGA并行高速处理能力和DSP对复杂算法的处理能力相结合,需要以DSP+FPGA为核心搭建数字信号处理平台,而实现片间高速实时通信至关重要,EMIF总线为并行数据总线,SRIO为高速串行接口,均是成熟的片间接口技术。
中国专利CN109446126A公开了一种基于EMIF总线的DSP与FPGA高速通信系统及方法,支持对数据存储模块同时进行读写操作,也无须将通信数据一次全部写入数据存储模块,只需要较少数据存储资源,实现DSP与FPGA双向数据的高速和实时通信,可以满足大量数据并行处理的需求,适用于低成本低功耗数字信号处理系统。但当需要大批量数据传输速率达到Gb/s以上时,单纯的EMIF并行数据总线已经不能满足传输需求。
发明内容
本发明的目的在于提供一种适用于高速信号处理系统的片间通信,利于完成大批量快速数据的传输,且具有灵活性高、适配性强等特点的片间高速通信系统。
实现本发明目的的技术解决方案为:一种基于EMIF和SRIO接口的片间高速通信系统,包括FPGA端EMIF接口模块、FPGA端SRIO接口模块、GTX模块、DSP端EMIF接口模块、DSP端SRIO接口模块、DDR3外部存储模块、DSP内部CPU模块、电源模块以及时钟模块;
所述FPGA端EMIF接口模块,用于实现FPGA对EMIF总线传输的指令进行读写控制;
所述FPGA端SRIO接口模块,用于实现FPGA对SRIO接口进行协议配置及数据读写控制;
所述GTX模块,用于实现片间批量数据高速串行传输;
所述DSP端EMIF接口模块,用于实现DSP对EMIF总线传输的指令进行读写控制;
所述DSP端SRIO接口模块,用于实现DSP对SRIO接口进行协议配置及数据读写控制;
所述DDR3存储模块,用于缓存片间传输的批量数据;
所述DSP内部CPU模块,用于处理片间中断信号及收发命令、数据;
所述电源模块,用于给系统供电;
所述时钟模块,用于提供系统所需的各种时钟。
本发明与现有技术相比,其显著优点为:1)结合了EMIF并行接口和SRIO串行接口,EMIF接口可用于片间命令控制字传输,SRIO接口可用片间高速数据传输,两者也可独立运行,方便灵活,系统适配性强;2)适用于高速信号处理系统的片间通信,利于完成大批量快速数据的传输。
下面结合附图对本发明作进一步详细描述。
附图说明
图1为本发明基于EMIF和SRIO接口的片间高速通信系统的结构图。
图2为本发明中电源模块结构图。
图3为本发明中时钟模块结构图。
具体实施方式
结合图1,本发明提出了一种基于EMIF和SRIO接口的片间高速通信系统,包括FPGA端EMIF接口模块1、FPGA端SRIO接口模块2、GTX模块3、DSP端EMIF接口模块4、DSP端SRIO接口模块5、DDR3外部存储模块6、DSP内部CPU模块7、电源模块8以及时钟模块9;
FPGA端EMIF逻辑控制模块1,用于实现FPGA对EMIF总线传输的指令进行读写控制;
FPGA端SRIO接口模块2,用于实现FPGA对SRIO接口进行协议配置及数据读写控制;
GTX模块3,用于实现片间批量数据高速串行传输;
DSP端EMIF接口模块4,用于实现DSP对EMIF总线传输的指令进行读写控制;
DSP端SRIO接口模块5,用于实现DSP对SRIO接口进行协议配置及数据读写控制;
DDR3存储模块6,用于缓存片间传输的批量数据;
DSP内部CPU模块7,用于处理片间中断信号及收发命令、数据;
电源模块8,用于给系统供电;
时钟模块9,用于提供系统所需的各种时钟。
EMIF接口和SRIO接口相互独立,EMIF并行接口作为命令控制字的传输通道,SRIO高速串行接口作为批量数据传输通道。
进一步地,在其中一个实施例中,FPGA采用XC7K410T型号的FPGA芯片。
进一步地,在其中一个实施例中,DSP芯片采用TMS320C6678型号的DSP芯片。
进一步地,在其中一个实施例中,FPGA端EMIF接口模块配置方式为:FPGA端设置若干位宽16、深度1的读写FIFO存储空间,每个FIFO空间对应DSP的一个地址空间,同时设置中断控制信号供DSP判断从FPGA读取数据的时机。
进一步地,在其中一个实施例中,FPGA端SRIO接口模块配置方式为:FPGA采用Serial RapidIO IP核对SRIO接口模块进行配置,采用RapidIO包封装形式,模块对外接口分为用户接口和物理接口,模块外配有中断控制信号。
进一步地,在其中一个实施例中,GTX模块对应FPGA芯片内部的GTX收发器,是SRIOIP核物理层硬件基础。
进一步地,在其中一个实施例中,DSP端EMIF接口模块的可编程参数配置方式如下:
1)Setup建立时间,指在存储周期开始与读或写选通脉冲有效之间的时间,最小值是1。
3)Hold保持时间,指从禁用读或写选通脉冲到周期结束之间的时间,最小值为1。
4)Turnaround片选切换时间。
5)Data width异步设备的数据总线的宽度(8/16位)。
6)Setup、strobe、hold参数根据EMIF16的时钟周期计算。FPGA以100M频率读写,R_setup+r_srtobe+r_Hold=10ns=FPGA的读写周期,同样的,w_setup,w_strobe和w_hold也满足上式。选择总线宽度为16bit。
在.cmd文件中完成EMIF空间的地址映射,在主程序中定义一个数组,将其地址映射到上面的存储空间中,然后对该数组操作即可。
进一步地,在其中一个实施例中,DSP端SRIO接口模块的可编程参数配置方式如下:
FPGA给DSP SRIOCLK引脚的参考时钟是156.25MHz,配置链接速率为3.125Gbps,通过SRIO_SERDES_CFGPLL寄存器倍频实现。链接速率是参考时钟的20倍时应进行10倍频,采样时一个PLL时钟采两个数据,对应寄存器的8-1位为00101000b,0位显然要置1使PLL使能,最后SRIO_SERDES_CFGPLL寄存器的值为0x251,可以通过芯片支持库(CSL)进行配置,同样的方法可以配置SRIO_SERDES_CFGTX和SRIO_SERDES_CFGTX寄存器。选择4X工作模式,只需要一个端口,在程序中将port0使能,port1-3禁用。
实施例中是DSP主动去读取FPGA端的数据,所以数据包选择NREAD类型。其它参数还有接收的数据大小、原地址、目的地址、目的设备和源设备ID。SRIO作为一个端点器件,是根据目标ID来接收数据包的,实施例中采用本地接收方式,SRIO只接收那些ID与自己本地ID相同的数据包。当接收到FPGA发过来的数据准备完成的信号后,DSP即进入中断服务子程序中开始接收数据。配置完LSU_Reg5之后数据即开始发送,首先通过KeyStone_SRIO_LSU_transfer()将上面初始化好的LSU寄存器的值写入LSU寄存器中,然后通过KeyStone_SRIO_wait_LSU_completion()函数返回的completion code判断传输状态,若传输正确,则退出中断,返回主程序处;若传输错误,则根据相应的返回值做出不同的判断。
进一步地,在其中一个实施例中,DSP内部CPU模块用于处理片间中断信号,具体实现GPIO引脚8的上升沿触发中断,并将其映射到DSP的CPU中断号4的步骤如下:
1)首先在主函数中完成GPIO的初始化,设置引脚8为输入状态,上升沿中断,关闭全局中断,同时清除所有的下降沿中断。
2)编写中断向量表,一般用汇编语言编写。在中断向量表中需要完成中断服务函数声明、定义中断向量入口地址的工作。
3)完成中断初始化,C6678提供了三个中断控制器INTMUX1、INTMUX2、INTMUX3,每个控制4个中断,其中INTMUX1控制4-7中断,INTMUX2控制8-11中断,INTMUX3控制12-15中断。首先设置INTMUX1将GPINT8对应的第82号事件映射到中断4上,然后将中断清除寄存器EVTCLR每一位置1清除所有中断事件,再设置IER寄存器使能我们需要的中断4,在ISTR寄存器中自写入中断向量表的起始地址。
4)编写中断服务函数,进入中断后首先要清除设置的中断事件,C6678一共有4组事件标志寄存器MEVTFLAG,每组32个,整个系统的128个事件产生的标志都在这,通过读取MEVTFLAG可以获取中断标志,GPINT8对应事件号是82,应该在第三组中,即MEVTFLAG,获得中断标志后再使用事件清除寄存器EVTCLR,将对应的事件清除。
进一步地,在其中一个实施例中,DDR3外部存储模块包括4片内存颗粒,其中两片供FPGA使用,两片供DSP使用。
作为一种具体示例,内存颗粒具体采用MT41K256M16内存颗粒。
进一步地,在其中一个实施例中,结合图2,电源模块8包括:两片LTM4633三输出10A降压型微型模块稳压器,分别给DSP和FPGA供电;TPS51200电源调节芯片,产生0.75v电压,为DDR3外部存储模块6供电;TPS54620和TPS74401芯片(产生1.5v电压),分别用于给GTX模块3和DDR外部存储模块6供电。
进一步地,在其中一个实施例中,结合图3,时钟模块9包括一块25MHz晶振和CDCM6208时钟芯片,其中25MHz晶振用于产生FPGA所需的主时钟,CDCM6208时钟芯片用于产生其余所需时钟。
综上所述,本发明提出的基于EMIF和SRIO接口的片间高速通信系统实现了FPGA与DSP间的双向高速实时通信,既可以通过EMIF总线传输命令控制字,又可以通过SRIO高速串行接口进行批量数据传输,适用于以FPGA和DSP为核心的协同数字信号处理系统,灵活性和适配性强。
Claims (10)
1.一种基于EMIF和SRIO接口的片间高速通信系统,其特征在于,包括FPGA端EMIF接口模块(1)、FPGA端SRIO接口模块(2)、GTX模块(3)、DSP端EMIF接口模块(4)、DSP端SRIO接口模块(5)、DDR3外部存储模块(6)、DSP内部CPU模块(7)、电源模块(8)以及时钟模块(9);
所述FPGA端EMIF接口模块(1),用于实现FPGA对EMIF总线传输的指令进行读写控制;
所述FPGA端SRIO接口模块(2),用于实现FPGA对SRIO接口进行协议配置及数据读写控制;
所述GTX模块(3),用于实现片间批量数据高速串行传输;
所述DSP端EMIF接口模块(4),用于实现DSP对EMIF总线传输的指令进行读写控制;
所述DSP端SRIO接口模块(5),用于实现DSP对SRIO接口进行协议配置及数据读写控制;
所述DDR3存储模块(6),用于缓存片间传输的批量数据;
所述DSP内部CPU模块(7),用于处理片间中断信号及收发命令、数据;
所述电源模块(8),用于给系统供电;
所述时钟模块(9),用于提供系统所需的各种时钟。
2.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述FPGA采用XC7K410T型号的FPGA芯片。
3.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述DSP芯片采用TMS320C6678型号的DSP芯片。
4.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述GTX模块具体采用GTX收发器。
5.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述FPGA端EMIF接口模块配置方式为:FPGA端设置若干位宽16、深度1的读写FIFO存储空间,每个FIFO空间对应DSP的一个地址空间,同时设置中断控制信号供DSP判断从FPGA读取数据的时机。
6.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述FPGA端SRIO接口模块配置方式为:FPGA采用Serial RapidIO IP核对SRIO接口模块进行配置,采用RapidIO包封装形式,模块对外接口分为用户接口和物理接口,模块外配有中断控制信号。
7.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述DDR3外部存储模块包括4片内存颗粒,其中两片供FPGA使用,两片供DSP使用。
8.根据权利要求7所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述内存颗粒具体采用MT41K256M16内存颗粒。
9.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述电源模块(8)包括:两片LTM4633三输出10A降压型微型模块稳压器,分别给DSP和FPGA供电;TPS51200电源调节芯片,为DDR3外部存储模块(6)供电;TPS54620和TPS74401芯片,分别用于给GTX模块(3)和DDR外部存储模块(6)供电。
10.根据权利要求1所述的基于EMIF和SRIO接口的片间高速通信系统,其特征在于,所述时钟模块(9)包括一块25MHz晶振和CDCM6208时钟芯片,其中25MHz晶振用于产生FPGA所需的主时钟,CDCM6208时钟芯片用于产生其余所需时钟。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911364092.0A CN111190853A (zh) | 2019-12-26 | 2019-12-26 | 基于emif和srio接口的片间高速通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911364092.0A CN111190853A (zh) | 2019-12-26 | 2019-12-26 | 基于emif和srio接口的片间高速通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111190853A true CN111190853A (zh) | 2020-05-22 |
Family
ID=70708006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911364092.0A Pending CN111190853A (zh) | 2019-12-26 | 2019-12-26 | 基于emif和srio接口的片间高速通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111190853A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114398304A (zh) * | 2022-03-01 | 2022-04-26 | 山西银河电子设备厂 | 一种解决srio接口阻塞的方法 |
CN114442926A (zh) * | 2021-12-21 | 2022-05-06 | 天津光电通信技术有限公司 | 基于PCIe数据采集卡的光信号数据分析与处理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885919A (zh) * | 2014-03-20 | 2014-06-25 | 北京航空航天大学 | 一种多dsp和fpga并行处理系统及实现方法 |
CN105045763A (zh) * | 2015-07-14 | 2015-11-11 | 北京航空航天大学 | 一种基于fpga+多核dsp的pd雷达信号处理系统及其并行实现方法 |
CN206920978U (zh) * | 2017-04-20 | 2018-01-23 | 成都博宇利华科技有限公司 | 一种高速型信号处理板卡 |
-
2019
- 2019-12-26 CN CN201911364092.0A patent/CN111190853A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885919A (zh) * | 2014-03-20 | 2014-06-25 | 北京航空航天大学 | 一种多dsp和fpga并行处理系统及实现方法 |
CN105045763A (zh) * | 2015-07-14 | 2015-11-11 | 北京航空航天大学 | 一种基于fpga+多核dsp的pd雷达信号处理系统及其并行实现方法 |
CN206920978U (zh) * | 2017-04-20 | 2018-01-23 | 成都博宇利华科技有限公司 | 一种高速型信号处理板卡 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114442926A (zh) * | 2021-12-21 | 2022-05-06 | 天津光电通信技术有限公司 | 基于PCIe数据采集卡的光信号数据分析与处理方法 |
CN114398304A (zh) * | 2022-03-01 | 2022-04-26 | 山西银河电子设备厂 | 一种解决srio接口阻塞的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103116175B (zh) | 基于dsp和fpga的嵌入式导航信息处理器 | |
US9965018B1 (en) | Power management for PCI express | |
US20220276304A1 (en) | Interface system for interconnected die and mpu and communication method thereof | |
CN108132897B (zh) | 一种基于zynq平台软核的srio控制器 | |
CN108650136B (zh) | 一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法 | |
CN104915303B (zh) | 基于PXIe总线的高速数字I/O系统 | |
CN110837486B (zh) | 一种基于FPGA的FlexRay-CPCIe通信系统 | |
CN112540952B (zh) | 具有片内并行接口的片上系统 | |
US11768607B1 (en) | Flash controller for ASIC and control method therefor | |
CN111190853A (zh) | 基于emif和srio接口的片间高速通信系统 | |
CN101162448A (zh) | 一种usb高速数据隧道的硬件传输方法 | |
CN107967231A (zh) | 一种Spi模拟多路全双工串口的系统 | |
WO2012139389A1 (zh) | 一种基于软件无线电的基带射频接口及其应用方法 | |
CN110635985A (zh) | 一种FlexRay-CPCIe通信模块 | |
CN108683536A (zh) | 异步片上网络的可配置双模式融合通信机制及其接口 | |
CN111736115A (zh) | 基于改进型sgdma+pcie的mimo毫米波雷达高速传输方法 | |
CN114356419A (zh) | 一种通用接口寄存器系统及快速生成方法 | |
CN110727637B (zh) | Fpga芯片及电子设备 | |
CN111190855A (zh) | 一种fpga多重远程配置系统及方法 | |
CN110765066B (zh) | 一种片上系统 | |
CN116401186A (zh) | 基于axi总线的opi psram控制系统、方法 | |
CN115129657A (zh) | 一种可编程逻辑资源扩展装置和服务器 | |
CN104008076A (zh) | 一种支持dvfs的总线数据信号传输的方法及装置 | |
CN112948322A (zh) | 一种基于弹性缓存的虚通道及实现方法 | |
CN112711925A (zh) | 虚拟化emif总线dsp软件设计方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200522 |
|
RJ01 | Rejection of invention patent application after publication |