法律状态公告日
法律状态信息
法律状态
2022-12-02
未缴年费专利权终止 IPC(主分类):H04L12/933 专利号:ZL2016111533865 申请日:20161214 授权公告日:20190625
专利权的终止
2019-06-25
授权
授权
2017-05-24
实质审查的生效 IPC(主分类):H04L12/933 申请日:20161214
实质审查的生效
2017-04-26
公开
公开
技术领域
本发明属于数字集成电路领域,具体涉及一种片上网络的跨时钟域高速数据通信接口电路。
背景技术
随着国内微电子技术的快速发展以及FPGA系统设计的复杂化,在单一芯片上集成数百个IP核已成为可能。片上网络(Network on chip,NOC)的出现满足了众多IP核通信的需求。然而,传统的同步设计技术采用单一的电压时钟域,限制了NOC性能的提高和功耗的降低,已逐渐成为片上网络的设计瓶颈。在实际的工程中,尤其是高速视频采集和处理系统中,系统内部的各个功能模块往往需要工作在不同频率的时钟域中,跨时钟域处理不可避免。
为了解决这一问题,跨时钟域同步电路机制及其设计方法近年来成为了片上网络的研究热点。常用的跨时钟域同步电路有:两级或多级寄存器同步、电平同步、握手同步、异步FIFO等。这些设计方法虽然在一定程度上,很好的减小了跨时钟域传输所带来的亚稳态的影响,但仍无法满足片上网络对大容量、多比特和高速度视频数据码流进行实时传输的需求。
目前片上网络跨时钟域数据通信接口的设计核心难题,一是如何解决跨时钟域的数据传输所导致的亚稳态问题;二是如何实现片上网络跨时钟域高速数据的传输,避免数据丢失和传输数据的不连续。片上网络相邻节点之间进行跨时钟域的数据传输容易引起亚稳态,导致数据丢失,影响片上网络高速视频数据处理系统的性能。MTBF(Mean time of failure,平均无故障时间)是衡量亚稳态的有效指标,MTBF的值越大,则出现亚稳态问题的概率就越小。MTBF的计算公式为:
MTBF=eTmet/C2/C1·fclk·fdata
发明内容
针对现有技术的不足,本发明提出一种片上网络的跨时钟域高速数据通信接口电路。将亚稳态问题发生的概率降到最低,同时,满足了片上网络大容量、多比特和高速度视频数据码流的实时传输的要求。
本发明的具体技术方案如下:
本发明提出的一种片上网络的跨时钟域数据通信接口电路,是由输入多路选择器模块、数据缓冲存储模块和输出多路选择器模块三大部分组成。输入多路选择器模块的输出端连接到数据缓冲存储模块的输入端,数据缓冲存储模块的输出端连接到输出多路选择器模块的输入端。
数据缓冲存储模块,包括多个基于令牌环的环形异步FIFO,多个基于令牌环的环形异步FIFO的输入端并联连接到输入多路选择器模块的输出端,多个基于令牌环的环形异步FIFO的输出端并联连接到输出多路选择器模块的输入端。
基于令牌环的环形异步FIFO,包括令牌环结构,令牌环结构包括八个锁存器,八个锁存器的连接方式为上一级的锁存器的输出端连接到下一级的锁存器的输入端,最后一级的锁存器的输出端连接到第一级锁存器的输入端。
片上网络的视频采集IP核所产生的输入数据输入到输入多路选择器模块,所述的输入多路选择器模块在使能信号有效的情况下把输入数据依次输出到数据缓冲存储模块,所述的输出多路选择器模块在使能信号有效的情况下将数据缓冲存储模块中的数据依次读出,并将输出数据送入片上网络的视频处理IP核。
基于令牌环的环形异步FIFO中的令牌环结构,锁存器的状态为1时定义为令牌,当使能信号有效时,上一级锁存器中的数值将被转移到下一级锁存器中,最后一级锁存器中的数值将被转移到第一级锁存器中,通过令牌的移动和调整来产生基于令牌环的环形异步FIFO的读/写指针,控制基于令牌环的环形异步FIFO的读/写操作。
本发明的有益效果如下:
本发明提出了一种片上网络的跨时钟域高速数据通信接口电路。在电路结构中,采用基于令牌环的环形异步FIFO的设计思想,通过输入多路选择器模块和输出多路选择器模块的设计,使基于令牌环的环形异步FIFO可以按节拍、相互配合的切换,将经过数据缓冲存储模块的高速数据码流连续地进行运算与处理,实现数据码流的无缝缓冲与传输。
本发明所提出的一种片上网络的跨时钟域高速数据通信接口电路,设计巧妙、结构简单、可靠且能够大幅度减少亚稳态的影响。实验结果表明,该片上网络的跨时钟域高速数据通信接口电路可以在片上网络上实现大容量、多比特和高速度视频数据码流的实时传输,保证了片上网络高速视频数据处理系统的稳定性。
附图说明
图1为本发明具体实施方式中的片上网络的跨时钟域高速数据通信接口电路设计框图;
图2为本发明具体实施方式中的令牌环结构图;其中,图(a)为本发明具体实施方式中的写指针的令牌环结构图,图(b)为本发明具体实施方式中的读指针的令牌环结构图;
图3为本发明具体实施方式中的输入多路选择器模块RTL结构图;
图4为本发明具体实施方式中的输出多路选择器模块RTL结构图;
图5为本发明具体实施方式中的跨时钟域高速数据通信接口电路在片上网络中的应用图;
图6为本发明具体实施方式中的片上网络的跨时钟域高速数据通信接口电路顶层RTL结构图。
具体实施方式
下面结合附图,以采用四个并行的令牌环环形FIFO结构构成的片上网络的跨时钟域数据通信接口电路为例,对本发明的一种实施例,做进一步说明。
本发明提出的一种片上网络的跨时钟域高速数据通信接口电路,是由输入多路选择器模块、数据缓冲存储模块和输出多路选择器模块三大部分组成。输入多路选择器模块的输出端连接到数据缓冲存储模块的输入端,数据缓冲存储模块的输出端连接到输出多路选择器模块的输入端。片上网络的跨时钟域高速数据通信接口电路设计框图如图1所示。
数据缓冲存储模块,包括多个基于令牌环的环形异步FIFO,多个基于令牌环的环形异步FIFO的输入端并联连接到输入多路选择器模块的输出端,多个基于令牌环的环形异步FIFO的输出端并联连接到输出多路选择器模块的输入端。
常规的异步FIFO,包含一个双端口RAM,一个端口用来数据的写入,即将数据存入到异步FIFO,另一个端口用作数据的读出,即将数据从异步FIFO中读出。异步FIFO利用读/写指针来判断异步FIFO的空满,当读指针追上写指针时,异步FIFO为空;当写指针追上读指针时,异步FIFO为满。
由于一个二进制计数值从一个时钟域转换到另外一个时钟域时比较容易出现问题,并且采用二进制计数器进行计数时,所有位都可能同时变化,在同一个时钟沿同步多个信号比较容易产生亚稳态问题。因此本发明采用令牌环结构,将令牌作为异步FIFO的读/写指针,通过令牌的移动变换来产生读/写指针的变化,将读/写指针同步到异步时钟域进行比较,并将之作为空/满状态的检测。
基于令牌环的环形异步FIFO,包括令牌环结构,令牌环结构包括八个锁存器,八个锁存器的连接方式为上一级的锁存器的输出端连接到下一级的锁存器的输入端,最后一级的锁存器的输出端连接到第一级锁存器的输入端,并规定令牌环高电平信号有效,其中wr为写指针,rr为读指针,令牌环结构图如图2所示,其中图2(a)为写指针的令牌环结构图,图(b)读指针的令牌环结构图。将最后一级的输出与第一级的输入相连构成一个环形,其中锁存器的状态为1时定义为令牌,当使能信号有效时,上一级锁存器中的数值将被转移到下一级锁存器中,最后一级锁存器中的数值将被转移到第一级锁存器中,通过令牌的移动和调整来产生基于令牌环的环形异步FIFO的读/写指针,控制基于令牌环的环形异步FIFO的读/写操作。基于令牌环的环形异步FIFO有且只有一个读指针rr和一个写指针wr,它们均以令牌的形式在令牌环中顺时针传递,当基于令牌环的环形异步FIFO进行写操作时,写指针指向基于令牌环的环形异步FIFO数据存储单元进行数据存储,存储完数据后,写指针指向下一级数据存储单元。同理,当基于令牌环的环形异步FIFO进行读操作时,读指针指向基于令牌环的环形异步FIFO数据存储单元进行数据读出,完成读数据后,读指针指向下一级数据存储单元,读写操作以此循环进行。
通过令牌的移动和调整来产生基于令牌环的环形异步FIFO的读/写指针,简化了常规的异步FIFO,避免了使用大量的同步器,减少了面积空间,使基于令牌的环形FIFO的性能有了显著地提高,可以满足大数据量视频数据实时传输的要求。
输入多路选择器模块的输入端口包括时钟信号端口clk1,全局复位信号端口wrst_n和一个数据输入信号端口data_in,输出端口包括四个fifoi_wen(i=1,2,3,4)写入使能信号端口和四个数据输出wi_data(i=1,2,3,4)信号端口,输入多路选择器模块RTL结构图如图3所示。输入多路选择器模块的具体工作步骤如下:
时钟信号clk1和全局复位信号wrst_n有效时,有效数据通过data_in端口将数据写入输入多路选择器模块。
当fifo1_wen有效时表征输入多路选择器模块中的数据从w1_data输出;
当fifo2_wen有效时表征输入多路选择器模块中的数据从w2_data输出;
当fifo3_wen有效时表征输入多路选择器模块中的数据从w3_data输出;
当fifo4_wen有效时表征输入多路选择器模块中的数据从w4_data输出。
输出多路选择器模块的输入端口包括时钟信号端口clk2,全局复位信号端口rrst_n和四个数据输入信号端口data_in2i(i=1,2,3,4),输出端口包括四个fifoi_ren(i=1,2,3,4)读出使能信号端口和一个数据输出r_data信号端口,输出多路选择器模块RTL结构图如图4所示,具体工作步骤如下。
当fifo1_ren有效时输出多路选择器模块将输入端口data_in21中的数据输出到输出端口r_data;
当fifo2_ren有效时输出多路选择器模块将输入端口data_in22中的数据输出到输出端口r_data;
当fifo3_ren有效时输出多路选择器模块将输入端口data_in23中的数据输出到输出端口r_data;
当fifo3_ren有效时输出多路选择器模块将输入端口data_in24中的数据输出到输出端口r_data。
将设计好的片上网络的跨时钟域高速数据通信接口电路挂载到片上网络上,如图5所示。其中(0,0)路由节点在整个片上网络的左下角,(3,3)路由节点在整个片上网络的右上角,X坐标自左向右依次增大,Y坐标自下而上依次增大。片上网络的路由节点可以挂载相应的视频采集IP核和视频处理IP核。将视频采集IP核挂载到(1,3)路由节点,将视频处理IP核挂载到(2,1)路由节点。(1,3)路由节点的时钟为CLK1,(2,1)路由节点的时钟为CLK2。片上网络的视频采集IP核所产生的输入数据输入到输入多路选择器模块,输入多路选择器模块在使能信号有效的情况下把输入数据依次输出到数据缓冲存储模块,输出多路选择器模块在使能信号有效的情况下将数据缓冲存储模块中的数据依次读出,并将输出数据送入片上网络的视频处理IP核。
片上网络完成视频采集、传输、处理的具体工作步骤如下:
首先,视频采集IP核将采集到的有效数据传输给输入多路选择器的输入端口,通过wflag标志位判断将数据缓存到哪一个基于令牌环的环形异步FIFO。
第一个有效写入时钟周期到来时,视频采集IP核将有效数据通过输入多路选择器模块首先写入基于令牌环的环形异步FIFO1;
第二个有效写入时钟周期到来时,视频采集IP核将有效数据通过输入多路选择器模块写入基于令牌环的环形异步FIFO2;
第三个有效写入时钟周期到来时,视频采集IP核将有效数据通过输入多路选择器模块写入基于令牌环的环形异步FIFO3;
第四个有效写入时钟周期到来时,视频采集IP核将有效数据通过输入多路选择器模块写入基于令牌环的环形异步FIFO4。
其次,通过rflag标志位判断,输出多路选择器模块输出的基于令牌环的环形异步FIFO中的有效数据是从哪一个基于令牌环的环形异步FIFO中读出的。
第一个有效读出时钟周期到来时,将基于令牌环的环形异步FIFO4的有效数据输出到输出多路选择器模块的输出端口;
第二个有效读出时钟周期到来时,将基于令牌环的环形异步FIFO1的有效数据输出到输出多路选择器模块的输出端口;
第三个有效读出时钟周期到来时,将基于令牌环的环形异步FIFO2的有效数据输出到输出多路选择器模块的输出端口;
第四个有效读出时钟周期到来时,将基于令牌环的环形异步FIFO3的有效数据输出到输出多路选择器模块的输出端口。
最后,通过输出多路选择器模块的输出端口与片上网络(1,3)路由节点的本地端口的连接,输出多路选择器模块将有效数据传输到片上网络,(1,3)路由节点中的有效数据,通过片上网络的路由算法,传送到(2,1)路由节点,再通过本地端口传送到视频处理IP核。
通过以上分析可知,采用输入多路选择器模块、输出多路选择器模块和数据缓冲存储模块,并将其配合使用,最大程度上减少了亚稳态发生的可能性,简化了片上网络的跨时钟域高速数据通信接口电路的结构。且采用了片上网络的跨时钟域高速数据通信接口电路,片上网络可以支持多时钟域IP核的通信,能够进一步降低基于片上网络的跨时钟域高速数据处理系统的功耗。另外,该结构中通过输入多路选择器模块和输出多路选择器模块使基于令牌环的环形异步FIFO可以按节拍、相互配合的切换,将经过缓冲的视频数据码流连续地送到挂载在片上网络的视频处理IP核,实现数据码流的无缝缓冲与传输。如果从片上网络的跨时钟域高速数据通信接口电路的顶层模块的两端看数据传输过程,输入数据和输出数据都是连续不断的写入和连续不断的读出,没有任何停顿,如图6所示。因此,该结构非常适合于高速数据流的流水线式处理,满足了高速视频数据码流在片上网络上进行无缝缓冲和实时传输。
机译: 同步高速时钟域和低速时钟域之间的数据传输的集成电路,方法和接口电路
机译: 集成电路,方法和接口电路,用于同步高速时钟域和低速时钟域之间的数据传输
机译: 高速测试期间跨异步时钟域关闭数据捕获的设计结构