一种基于fpga的芯片间互联装置制造方法
【专利摘要】本发明涉及芯片互联【技术领域】,特别涉及一种基于FPGA的芯片间互联装置。本发明的一种基于FPGA的芯片间互联装置,是在现场可编程门阵列芯片中设置时钟动态调整模块,低压差分信号发送模块,低压差分信号接收模块,其能够实现FPGA芯片间的信息传递,该装置具有速率可调,灵活性高的特点。
【专利说明】—种基于FPGA的芯片间互联装置
【技术领域】
[0001]本发明涉及芯片互联【技术领域】,特别涉及一种基于FPGA的芯片间互联装置。
【背景技术】
[0002]FPGA (现场可编程门阵列)芯片是一种可编程的逻辑器件,具有开发周期短,可靠性高的特点。
[0003]其芯片间的互联有很多可用技术,LVDS(Low-Voltage Differential Signaling低压差分信号)接口,具有低噪声、低功耗,高速率、低成本等特点,在速率要求不是太高的情况下(通常这些芯片没有集成serdes——串行器),常常作为芯片间的互联接口,在现有的技术中一般都没有涉及到一种传输数据可靠和传输速率可调的LVDS接口。
【发明内容】
[0004]为了解决现有技术的问题,本发明提供了一种基于FPGA的芯片间互联装置,其具有速率可调,灵活性高的特点。
[0005]本发明所采用的技术方案如下:
一种基于FPGA的芯片间互联装置,是在现场可编程门阵列芯片中设置时钟动态调整模块,低压差分信号发送模块,低压差分信号接收模块,其中,
所述的时钟动态调整模块将要配置的时钟参数计算好,通过串行外设接口写入到现场可编程门阵列芯片的动态重置端口模块中,以此来调节现场可编程门阵列芯片的时钟管理模块,输出所需要的时钟;
所述的低压差分信号发送模块包含发送先入先出队列模块,组帧模块和并串转换模块,所述的低压差分信号发送模块接收对端的反馈信号来进行流控处理;
所述的低压差分信号接收模块包含串并转换模块,解帧模块和收先入先出队列模块,所述的低压差分信号接收模块给发送端发送接收准备信号来进行流控处理。
[0006]低压差分信号发送模块接收对端的反馈信号来进行流控处理的具体步骤是:
A、对端芯片发送一个数据准备好的信号,当对端模块准备接收数据时,发送先入先出队列模块会每隔数据位宽的周期来读一次发送先入先出队列模块中的数据;
B、读出的数据会经过组帧模块,按照报头、数据长度、有效数据以及数据校验和包尾的协议格式组帧;
C、从组帧模块出来的数据经过并串转换模块后,转换成串行数据发送到对端芯片;
D、在发送数据的同时,低压差分信号发送模块会产生数据同步信号给对端芯片使对端接收数据时便于数据同步。
[0007]低压差分信号接收模块给发送端发送接收准备信号来进行流控处理的具体步骤是:
A、低压差分信号接收模块根据对端发送的同步信号对数据进行同步;
B、同步后的数据经过串并转换模块转换成并行数据; C、经过解帧模块提取出有效数据,有效数据发送到接收先入先出队列模块中,在接收先入先出队列模块中设置数据的存储阈值,当达到阈值后表示接收端还没有准备好接收数据,低压差分信号接收模块会将这一信号反馈回发送端,使发送端停止发送有效数据,直到接收先入先出队列模块里的存储数据小于阈值。
[0008]本发明的一种基于FPGA的芯片间互联装置,是在FPGA芯片中设置时钟动态调整模块,LVDS发送模块,LVDS接收模块。
[0009]CPU 通过与 FPGA 的 spi (Serial Peripheral Interface—串行外设)接口动态配置LVDS的接口时钟速率,待时钟配置完成后,数据从发送fifo (先入先出队列)写入数据,当对端芯片发出数据接收指令后,按照一定的周期从fifo中读取所需要发送的数据,将数据按照报头、数据长度、有效数据以及数据校验和包尾的协议格式组帧,将组好的数据帧经过并串转换模块转换成串行数据发送到对端芯片中;对端芯片接收到数据后,按照发送端发送过来的同步信号进行数据同步,同步完成后对串行数据进行串并转换,串并转换后的数据经过数据解帧模块根据事先定义好的帧格式进行解帧,解帧出来的数据写入接收fifo中,在fifo中设置一定的存储阈值,当fifo存储的数据达到阈值时,会往对端发送一差分信号告诉对端数据没有准备好,这时对端LVDS发送模块停止发送有效数据直到接收端重新准备好接收数据。
[0010]动态配置LVDS接口的速率,就是要动态配置LVDS的时钟,将要配置的时钟参数计算好,通过spi接口写入到FPGA的drp (动态重置端口)模块中,以此来调节FPGA的时钟管理模块,输出所需要的时钟。
[0011]本发明实施例提供的技术方案带来的有益效果是:
通过本发明的一种基于FPGA的芯片间互联装置,能够实现FPGA芯片间的信息传递,该装置具有速率可调,灵活性高的特点。
【专利附图】
【附图说明】
[0012]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0013]图1为本发明的一种基于FPGA的芯片间互联装置的结构架构框图。
【具体实施方式】
[0014]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0015]实施例一
如附图1所示,一种基于FPGA的芯片间互联装置,在FPGA芯片中设置时钟动态调整模块,LVDS发送模块,LVDS接收模块。
[0016]时钟动态调整模块:
为实现速率的动态可重配,采用动态可重配时钟的方案,在外部通过CPU与FPGA相连的spi或者iic接口将重配的时钟参数实时的发送到FPGA中的时钟动态调整模块,时钟动态调整模块输出的时钟即为整个装置的时钟。
[0017]LVDS发送模块:
对端芯片会发送一个数据准备好的信号,当对端模块准备接收数据时,fifo会每隔数据位宽的周期来读一次fifo中的数据,读出的数据会经过组帧模块,按照包头,数据长度,有效数据以及数据校验和包尾的协议格式组帧,从组帧模块出来的数据经过并串转换模块后,转换成串行数据发送到对端芯片,在发送数据的同时,LVDS发送模块会产生数据同步信号给对端芯片使对端接收数据时便于数据同步。
[0018]LVDS接收模块:
接收模块根据对端发送的同步信号对数据进行同步,同步后的数据经过串并转换模块转换成并行数据,经过解帧模块提取出有效数据,有效数据发送到接收fifo中,在接收fifo中设置数据的存储阈值,当达到阈值后表示接收端还没有准备好接收数据,LVDS接收模块会将这一信号反馈回发送端,使发送端停止发送有效数据直到fifo里的存储数据小于阈值。
[0019]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种基于FPGA的芯片间互联装置,是在现场可编程门阵列芯片中设置时钟动态调整模块,低压差分信号发送模块,低压差分信号接收模块,其中, 所述的时钟动态调整模块将要配置的时钟参数计算好,通过串行外设接口写入到现场可编程门阵列芯片的动态重置端口模块中,以此来调节现场可编程门阵列芯片的时钟管理模块,输出所需要的时钟; 所述的低压差分信号发送模块包含发送先入先出队列模块,组帧模块和并串转换模块,所述的低压差分信号发送模块接收对端的反馈信号来进行流控处理; 所述的低压差分信号接收模块包含串并转换模块,解帧模块和收先入先出队列模块,所述的低压差分信号接收模块给发送端发送接收准备信号来进行流控处理。
2.根据权利要求1所述的一种基于FPGA的芯片间互联装置,其特征在于,所述的低压差分信号发送模块接收对端的反馈信号来进行流控处理的具体步骤是: A、对端芯片发送一个数据准备好的信号,当对端模块准备接收数据时,发送先入先出队列模块会每隔数据位宽的周期来读一次发送先入先出队列模块中的数据; B、读出的数据会经过组帧模块,按照报头、数据长度、有效数据以及数据校验和包尾的协议格式组帧; C、从组帧模块出来的数据经过并串转换模块后,转换成串行数据发送到对端芯片; D、在发送数据的同时,低压差分信号发送模块会产生数据同步信号给对端芯片使对端接收数据时便于数据同步。
3.根据权利要求1所述的一种基于FPGA的芯片间互联装置,其特征在于,所述的低压差分信号接收模块给发送端发送接收准备信号来进行流控处理的具体步骤是: A、低压差分信号接收模块根据对端发送的同步信号对数据进行同步; B、同步后的数据经过串并转换模块转换成并行数据; C、经过解帧模块提取出有效数据,有效数据发送到接收先入先出队列模块中,在接收先入先出队列模块中设置数据的存储阈值,当达到阈值后表示接收端还没有准备好接收数据,低压差分信号接收模块会将这一信号反馈回发送端,使发送端停止发送有效数据,直到接收先入先出队列模块里的存储数据小于阈值。
【文档编号】G06F13/38GK104035904SQ201410315571
【公开日】2014年9月10日 申请日期:2014年7月4日 优先权日:2014年7月4日
【发明者】秦刚, 刘强, 孙大军, 李长志 申请人:山东超越数控电子有限公司