一种基于FPGA的LVDS高速数据交换机制造技术

技术编号:36910781 阅读:15 留言:0更新日期:2023-03-18 09:29
本发明专利技术公开了一种基于FPGA的LVDS高速数据交换机,属于数据交换机领域,一种基于FPGA的LVDS高速数据交换机,按功能可以划分端口配置模块、路由配置模块、数据缓存模块、数据收发模块、时钟生成模块和管理接口模块,可以在板级电路上,为多个芯片间互连提供了灵活的高速数据传输通道,动态数据路由功能,使基于LVDS总线的数据传输,同时适应多主多从并行的设计,为多点高速LVDS高速数据传输提供了很好的解决方案,可以满足多设备间高速LVDS灵活互联通讯的要求,降低了板级多芯片间LVDS高速数据交换的软硬件设计复杂度,具有市场前景,适合推广应用。推广应用。推广应用。

【技术实现步骤摘要】
一种基于FPGA的LVDS高速数据交换机


[0001]本专利技术涉及数据交换机领域,更具体地说,涉及一种基于FPGA的LVDS高速数据交换机。

技术介绍

[0002]LVDS以其低功耗,低误码率,低串扰等特征,在板级高速信号传输上有着广泛应用,但是LVDS总线信号通常只能端对端定向传输,无法应用于网状,星形等拓扑结构。
[0003]BLVDS、MLVDS标准虽然可以作用于多点LVDS设备间通讯,但是分时共享总线,牺牲了传输速率,而且对于硬件设计要求较为苛刻,实际应用中价值有限。
[0004]本专利技术人针对于现有信号技术中无法实现数据交换机多主多从、动态配置路由、多设备间高速LVDS灵活互联通讯等功能的缺陷,而设计一种基于FPGA的LVDS高速数据交换机。

技术实现思路

[0005]1.要解决的技术问题
[0006]针对现有技术中存在的问题,本专利技术的目的在于提供一种基于FPGA的LVDS高速数据交换机,可以实现具有多主多从并行通讯功能,可动态加载的数据路由功能,灵活的端口组合配置,适应主从端设备不同的串行编码格式和数据速率,在板级高速LVDS通讯中,轻松实现多点通讯的目的。
[0007]2.技术方案
[0008]为解决上述问题,本专利技术采用如下的技术方案。
[0009]一种基于FPGA的LVDS高速数据交换机,包括端口配置模块、路由配置模块、数据缓存模块、数据收发模块、时钟生成模块和管理接口模块,端口配置模块用于实现LVDS数据收发灵活配置,端口配置模块包括至少一组IO/IOB,IO/IOB为外部LVDS差分IO PAD,每组IO/IOB包括一组三态控制信号T/R,每组IO/IOB还串联一个用于提供特定的输入输出延时功能的IO Delay,IO Delay可编程,其中O Delay的输入方向连接依次连接有OSER(输出并串转换器)和CGA模块,对应的I Delay的输出方向依次连接有CDA模块和IDES(解串器);同时根据输入和输出信号的编码差异,可动态选择8bit或者10bit的OSER和IDES;
[0010]一个设备接口由至少一个数据端口和至多一个随路时钟端口构成,端口的最大数量取决于所采用的FPGA的PLL、LVDS IOs、SERDES、BRAM等硬件资源数量;
[0011]路由配置模块用于实现内部交换网络各组源和目的数据总线连接,每个LVDS设备接口由一个或多个数据端口加一个可选的随路时钟端口构成,各个源到目的端口之间的路径由一张二维路由表SW_Table决定,路由表SW_Table中对应的每一个有效位,决定了是否用当前行的输入信号支驱动对应列的输出,为了使所有端口尽可能达到一致的延迟,在布局布线时需要将路由交换网络约束在FPGA中心区域;
[0012]数据缓存模块用于实现主从端出现数据差异时进行缓冲再转发,数据缓存模块的
缓存FIFO由FPGA中的BRAM通过IP封装实现,且LVDS接口的每个LANE端口都分配一个专用FIFO;
[0013]数据收发模块用于在源端口和目的端口间转发数据,数据收发模块由LVDS Rx接口接收主设备发送的数据和时钟,在时钟模块产生的同步时钟驱动下,缓存数据后(可选),通过路由交换网络将数据和随路时钟(可选)传输至LVDS Tx接口;
[0014]时钟生成模块的系统高速主时钟SYS_CLK为由外部输入的稳定考时钟经系统PLL倍频后输出;各个LVDS设备接口的参考时钟由其时钟配置参数决定;
[0015]管理接口模块将所有端口的IO属性(如方向,SERDES编码,输入输出延时)、路由表、主从接口的时钟树、FIFO状态等数据,以寄存器register的形式映射到一段地址空间中,通过外部的同步串行接口对寄存器的读写以实现参数配置和状态读取。
[0016]进一步的,IO Delay模块提供特定的输入输出延时,以同步多个LVDS LANE间的相位,降低误码率,其在直接转发模式下,上下行数据无需缓存,主从端接近于物理直连;其在缓存模式下,来自主机发送缓存FIFO和数据经由OSER转换后输出,同时根据配置的从机端的编码模式10b/8b Sel,选择OSER10或者OSER8;CGA模块被用来生成控制及指示作用的特别字符即K码,并以此实现诸如辅助从机端bit对齐等一些功能。
[0017]进一步的,相对应的,在缓存接收模式下,LVDS端口输入的串行数据需要先通过CDA模块循环检测输入的串行数据,以识别特定的控制和同步字符,然后将对齐的有效串行数据送入解串器IDES进行解串,经串并转换后的数据写入从机的接收缓存FIFO;当主机端编码为10bit时,其输出的数据再由10b/8b Decoder以查表的形式进行解码,从而获取目标数据。
[0018]进一步的,本LVDS交换机通过一个二维路由表,支持1:1及1:M(广播)两种T(主):R(从)映射关系,也可以通过动态更新路由的方式以分时方式实现N:1,N:M通讯,路由配置模块根据路由表,将内部交换网络各组源&目的数据总线进行连接。
[0019]进一步的,其中FIFO的状态包括Full、Almost_Full、Empty和Almost_Empty,上述状态由管理接口间接读取,同时也直接反馈至属于该接口的外部IO,其各个状态信号对应的FIFO数据长度阈值Full_Len、Almost_Full_Len、Empty_Len、Almost_Empt_Len通过管理接口进行配置。
[0020]进一步的,FIFO数据读写端口位宽均设定为8bit,深度最大为65536,同时引出缓存状态信号供主机端进行流控。
[0021]进一步的,Tx/Rx两端LVDS接口Lane宽度可以配置成1,2,4,8中任意两个组合,当Lane宽度存在差异时,通过控制Rx端FIFO不同读取时序的组合使Tx端Data Lane输出正确的数据;
[0022]进一步的,当Tx/Rx两端所接设备存在总数据带宽差异时,需要时钟生成与缓存模块配合,同时主设备端应监测FIFO状态指示IO,以防止数据溢出。
[0023]进一步的,LVDS设备接口中低频的随路参考时钟,由路由交换网络输出至其专有的PLL,以产生x4或者x5倍频的参考时钟,该参考时钟将作用于当前接口的端口组件如SERDES、Encoder、Decoder、CDA、CGA和端口数据FIFO等,若LVDS主从接口存在Lane宽度差异,则时钟需要根据相应比例,进行分频或者倍频,以匹配两端数据收发速率。
[0024]3.有益效果
[0025]相比于现有技术,本专利技术的优点在于:
[0026]本专利技术通过端口配置模块、路由配置模块、数据缓存模块、数据收发模块、时钟生成模块和管理接口模块的六组模块设置,相比于传统的LVDS、BLVDS、MLVDS等传统数据传输技术,可以在板级电路上,为多个芯片间互连提供了灵活的高速数据传输通道,动态数据路由功能,使基于LVDS总线的数据传输,不再局限于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的LVDS高速数据交换机,包括端口配置模块、路由配置模块、数据缓存模块、数据收发模块、时钟生成模块和管理接口模块,其特征在于:所述端口配置模块用于实现LVDS数据收发灵活配置,所述端口配置模块包括至少一组IO/IOB,所述IO/IOB为外部LVDS差分IO PAD,所述IO/IOB包括一组三态控制信号T/R,每组所述IO/IOB还串联一个用于提供特定的输入输出延时功能的IO Delay,所述IO Delay可编程,其中O Delay的输入方向连接依次连接有OSER(输出并串转换器)和CGA模块,对应的IDelay的输出方向依次连接有CDA模块和IDES(解串器);同时根据输入和输出信号的编码差异,可动态选择8bit或者10bit的OSER和IDES;一个设备接口由至少一个数据端口和至多一个随路时钟端口构成,端口的最大数量取决于所采用的FPGA的PLL、LVDS IOs、SERDES、BRAM等硬件资源数量;所述路由配置模块用于实现内部交换网络各组源和目的数据总线连接,每个LVDS设备接口由一个或多个数据端口加一个可选的随路时钟端口构成,各个源到目的端口之间的路径由一张二维路由表SW_Table决定,路由表SW_Table中对应的每一个有效位,决定了是否用当前行的输入信号支驱动对应列的输出,为了使所有端口尽可能达到一致的延迟,在布局布线时需要将路由交换网络约束在FPGA中心区域;所述数据缓存模块用于实现主从端出现数据差异时进行缓冲再转发,所述数据缓存模块的缓存FIFO由FPGA中的BRAM通过IP封装实现,且LVDS接口的每个LANE端口都分配一个专用FIFO;所述数据收发模块用于在源端口和目的端口间转发数据,所述数据收发模块由LVDS Rx接口接收主设备发送的数据和时钟,在时钟模块产生的同步时钟驱动下,缓存数据后(可选),通过路由交换网络将数据和随路时钟(可选)传输至LVDS Tx接口;所述时钟生成模块的系统高速主时钟SYS_CLK为由外部输入的稳定考时钟经系统PLL倍频后输出;各个LVDS设备接口的参考时钟由其时钟配置参数决定;所述管理接口模块将所有端口的IO属性(如方向,SERDES编码,输入输出延时)、路由表、主从接口的时钟树、FIFO状态等数据,以寄存器register的形式映射到一段地址空间中,通过外部的同步串行接口对寄存器的读写以实现参数配置和状态读取。2.根据权利要求1所述的一种基于FPGA的LVDS高速数据交换机,其特征在于:所述IO Delay模块提供特定的输入输出延时,以同步多个LVDS LANE间的相位,降低误码率,其在直接转发模式下,上下行数据无需缓存,主从端接近于物理直连;其在缓存模式下,来自主机发送缓存FIFO和数据经由OSER转换后输出,同时根据配置的从机端的编码模式10b/8b S...

【专利技术属性】
技术研发人员:张炼
申请(专利权)人:深圳市创达电子有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1