一种面向SerDes技术中基于FIFO协议的数字接口电路的制作方法

文档序号:7545911阅读:343来源:国知局
一种面向SerDes技术中基于FIFO协议的数字接口电路的制作方法
【专利摘要】本发明属于SerDes串行通信【技术领域】,具体为一种面向SerDes技术中基于FIFO协议的数字接口电路。本发明由发送端数字电路和接收端数字电路两大部分组成。本发明在SerDes数模接口中引入数字系统设计中经典的同步、异步FIFO和串并、并串转换电路,将数模接口封装成简单的支持FIFO读写协议的接口,简单可行,便于调用。FIFO的巧妙使用,有效解决了芯片间跨时钟域数据传输、反馈控制信号通道传输延迟大等信号完整性问题,串并、并串转换电路则解决了总线和SerDes位宽不匹配问题,便于总线的位宽拓展,增强了电路设计方案的适应性。
【专利说明】—种面向SerDes技术中基于Fl FO协议的数字接口电路
【技术领域】
[0001]本发明属于SerDes串行通信【技术领域】,具体涉及一种面向SerDes技术中基于FIFO协议的数字接口电路。
【背景技术】
[0002]随着电子通信技术的发展,业内对数据接口的传输速率和通道带宽提出了越来越高的要求。速度更快、通道位宽资源开销更小的SerDes串行接口逐渐成为主流解决方案。
[0003]SerDes接口技术是英文Serializer和Deserializer联合的简称,表不电路由一对串行器和解串器组成。它是一种广泛应用的时分多路复用(Time Division Multiplex,TDM)以及点对点(Point-to-Point,P2P)的串行通信技术。SerDes技术在发送端将多路并行信号转换成高速串行差分信号,通过传输介质(光缆、铜线或者低阻电介质等),最后在接收端将高速串行信号合并成原来的低速并行信号从而完成数据的传输过程。这种时分多路复用技术充分利用了传输介质的信道容量,缩减了传输信道和器件管脚数目从而降低了通道资源开销,便于系统的集成。另外,采用差分信号的传输也具有抗干扰性强,误码率低的优点。
[0004]SerDes接口电路的串行器和解串器一般由模拟电路定制设计而成的,而片上数字系统通常是EDA工具自动化完成的,因而在VLSI (超大规模集成电路)设计中,SerDes电路与片上数字系统之间的接口容易出现时序、串扰、位宽不匹配等信号完整性问题,给设计流程带来较大的挑战。

【发明内容】

[0005]本发明的目的在于提供一种面向SerDes技术中基于FIFO协议的数字接口电路,以有效解决芯片间跨时钟域数据传输、反馈控制信号通道传输延迟大以及总线和SerDes位宽不匹配等信号完整性问题。
[0006]本发明提出的面向SerDes技术中基于FIFO协议的数字接口电路,其整体结构如图1所示,它由发送端数字电路和接收端数字电路两大部分组成。在发送端,数据通过FIFO协议写入一个同步的先入先出缓冲队列,后一级的并串转换电路从缓冲队列中读取总线数据并拆分成若干段串行数据送给SerDes串行器,数据经过比特串行化后通过差分传输通道送给解串器,写时钟、写使能、提前写满等低速控制信号则通过buffer (缓冲器)经过传输通道。在接收端,解串器输出的数据首先写入一个异步的先入先出缓冲队列,后一级的串并转换电路读取串行数据后合并成完整的并行总线数据后最后再写入同步的先入先出缓冲队列,供接收端用户读取。
[0007] 本发明中,所述发送端同步FIFO和接收端同步FIF0,其结构一致,同步表示写时钟和读时钟的频率和相位一致,采用FIFO读写协议进行数据通信,即:数据w_data在写使能¥_611为高电平有效期间被写时钟w_clk寄存进去,当数据写满时,w_full反馈信号拉高;读数据r_data在读使能;r_en高电平有效期间被读时钟r_clk取出来,当数据读完时,r_empty反馈信号拉高。同步表示写时钟和读时钟的频率和相位一致。同步FIFO有多种经典的实现方式。
[0008]本发明中,所述接收端异步FIFO,异步表示写时钟和读时钟的频率和相位没有相关性,写时钟w_clk来自于经过缓冲传输单通道输出的发送端时钟,读时钟r_clk来自于接收端的工作时钟。此外,写端的写满信号w_full_bef0re被设计为提前若干时钟周期产生,以抵消信号在缓冲传输单通道中的延迟。
[0009]SerDes接口电路一般由模拟电路定制设计的串行器、解串器构成,在其与片上数字系统之间的接口容易出现时序、串扰、位宽不匹配等信号完整性问题,给超大规模集成电路设计带来较大挑战。
[0010]本发明在SerDes数模接口中引入了数字系统设计中经典的同步、异步FIFO和串并、并串转换电路,将数模接口封装成简单的支持FIFO读写协议的接口,简单可行,便于调用。FIFO的巧妙使用,有效解决了芯片间跨时钟域数据传输、反馈控制信号通道传输延迟大等信号完整性问题,串并、并串转换电路则解决了总线和SerDes位宽不匹配问题,便于总线的位宽拓展,增强了电路设计方案的适应性。
【专利附图】

【附图说明】
[0011]图1 SerDes 数字接口电路整体结构图。
[0012]图2并串转换电路FSM状态流程图。
[0013]图3串并转换电路FSM状态流程图。
【具体实施方式】
[0014]在发送端,总线数据通过FIFO协议写入一个同步的先入先出缓冲队列,FIFO协议是指:数据w_data在写使能¥_611为高电平有效期间被写时钟w_clk寄存进去,当数据写满时,w_full反馈信号拉高;读数据r_data在读使能r_en高电平有效期间被读时钟r_clk取出来,当数据读完时,r_empty反馈信号拉高。
[0015]后一级的并串转换电路从缓冲队列中读取总线数据并拆分成若干段串行数据分时钟周期地送给SerDes串行器,数据经过比特串行化后通过差分传输通道送给解串器,写时钟、写使能、提前写满等低速控制信号则通过buffer (缓冲器)经过传输通道。
[0016]在接收端,解串器输出的数据首先写入一个异步的先入先出缓冲队列(FIF0),异步FIFO的写时钟w_clk来自于经过缓冲传输单通道输出的发送端时钟,读时钟r_clk来自于接收端的工作时钟。异步FIFO的写端的写满信号w_full_bef0re设计为提前若干时钟周期产生,反馈给发送端,以抵消信号在缓冲传输单通道中的延迟。接着,后一级的串并转换电路读取异步FIFO中的串行数据后合并成完整的并行总线数据,最后再写入同步的先入先出缓冲队列,供接收端用户读取。
[0017]本发明中,并串转换电路从缓冲队列中读取总线数据并拆分成若干段串行数据送给SerDes串行器,由于数据的读写操作有比较多的情况出现,所以核心用一个FSM(有限状态机)控制,状态流程图如图2所示。下面阐述硬件结构在每个状态下进行的操作。
[0018](I)IDLE状态是硬件复位时,状态机所进入的状态,主要实现状态的复位。在前一级的同步FIFO非空且后一级异步FIFO非满的情况下跳转到WR_FIRST状态,否则保持IDLE状态。
[0019](2) WR_FIRST状态下读取32位数据线上的前8位,并在后一级异步FIFO非满的情况下写入,否则进入HD_FIRST状态,如果写入成功,跳转WR_SEC0ND状态,在此状态下,完成数据的读取。
[0020](3) HD_FIRST状态下,不做任何操作,等待后一级的异步FIFO为非满,如果非满,进入WR_SEC0ND状态,否则,保持HD_FIRST状态。
[0021](4)WR_SEC0ND状态下读取32位数据线上的23?16位,并在后一级异步FIFO非满的情况下写入,否则进入HD_SEC0ND状态,如果写入成功,跳转WR_THIRD状态。
[0022](5)HD_SEC0ND状态下,不做任何操作,等待后一级的异步FIFO为非满,如果非满,进入WR_THIRD状态,否则,保持HD_SEC0ND状态。
[0023](6)WR_THIRD状态下读取32位数据线上的15?8位,并在后一级异步FIFO非满的情况下写入,否则进入HD_THIRD状态,如果写入成功,跳转WR_F0RTH状态。
[0024](7) HD_THIRD状态下,不做任何操作,等待后一级的异步FIFO为非满,如果非满,进入WR_F0RTH状态,否则,保持HD_THIRD状态。
[0025](8)WR_F0RTH状态下读取32位数据线上的最后8位,并在后一级异步FIFO非满且前一级的同步FIFO非空的情况下写入,否则进入HD_F0RTH状态,如果写入成功,跳转WR_FIRST状态。
[0026](9) HD_F0RTH状态下,不做任何操作,等待后一级异步FIFO非满且前一级的同步FIFO非空,如果满足,进入WR_FIRST状态,否则,保持HD_F0RTH状态。
[0027]本发明中,串并转换电路读取异步FIFO数据后合并成完整的并行总线数据后最后再写入同步的先入先出缓冲队列,由于数据的读写操作有比较多的情况出现,所以核心用一个FSM (有限状态机)控制,状态流程图如图3所示。下面阐述硬件结构在每个状态下进行的操作。
[0028](I)IDLE状态是硬件复位时,状态机所进入的状态,主要实现状态的复位。在前一级的异步FIFO非空且后一级同步FIFO非满的情况下跳转到RD_FIRST状态,否则保持IDLE状态。
[0029](2)RD_FIRST状态下输入数据线上的8位数据,并在前一级异步FIFO非空的情况下读取数据,否则进入HD_FIRST状态,如果读取成功,跳转RD_SEC0ND状态。
[0030](3) HD_FIRST状态下,不做任何操作,等待前一级异步FIFO为非空,如果非空,进入RD_SEC0ND状态,否则,保持HD_FIRST状态。
[0031](4) RD_SEC0ND状态下输入数据线上的8位数据,并在前一级异步FIFO非空的情况下读取数据,否则进入HD_SEC0ND状态,如果读取成功,跳转RD_THIRD状态。
[0032](5)HD_SEC0ND状态下,不做任何操作,等待前一级异步FIFO为非空,如果非空,进入RD_THIRD状态,否则,保持HD_SEC0ND状态。
[0033](6)RD_THIRD状态下输入数据线上的8位数据,并在前一级的异步FIFO非空且后一级同步FIFO非满的情况下读取数据,否则进入HD_THIRD状态,如果满足条件,跳转RD_FORTH状态。
[0034](7) HD_THIRD状态下,不做任何操作,等待前一级的异步FIFO非空且后一级同步FIFO非满,如果满足条件,进入RD_F0RTH状态,否则,保持HD_THIRD状态。[0035](8)RD_F0RTH状态下输入数据线上的8位数据,并在前一级异步FIFO非空的情况下读取数据,否则进入HD_F0RTH状态,如果读取成功,跳转RD_FIRST状态,在此状态下,完成数据的写入。
[0036](9) HD_F0RTH状态下,不做任何操作,等待前一级异步FIFO为非空,如果非空,进入RD_FIRST状态,否则,保持HD_F0RTH状态。
[0037]本发明的SerDes数字接口电路,其工作过程如下:
(I)在发送端,数据通过FIFO协议写入一个同步的先入先出缓冲队列。
[0038](2)后一级的并串转换电路从缓冲队列中读取总线数据并拆分成若干段串行数据送给SerDes串行器。
[0039](3)数据经过比特串行化后通过差分传输通道送给解串器,写时钟、写使能、提前写满等低速控制信号则通过buffer (缓冲器)经过传输通道。
[0040](4)在接收端,解串器输出的数据首先写入一个异步的先入先出缓冲队列。
[0041](5)后一级的串并转换电路从异步FIFO中读取串行数据后合并成完整的并行总线数据。
[0042](6)合并的总线数据最后写入接收端的同步先入先出缓冲队列,供接收端用户读取。
【权利要求】
1.一种面向SerDes技术中基于FIFO协议的数字接口电路,其特征在于由发送端数字电路和接收端数字电路两大部分组成;在发送端,数据通过FIFO协议写入一个同步的先入先出缓冲队列,后一级的并串转换电路从缓冲队列中读取总线数据并拆分成若干段串行数据送给SerDes串行器,数据经过比特串行化后通过差分传输通道送给解串器,写时钟、写使能、提前写满等低速控制信号则通过缓冲器经过传输通道;在接收端,解串器输出的数据首先写入一个异步的先入先出缓冲队列,后一级的串并转换电路读取串行数据后合并成完整的并行总线数据后最后再写入同步的先入先出缓冲队列,供接收端用户读取。
2.根据权利要求1所述的数字接口电路,其特征在于:所述的发送端同步FIFO和接收端同步FIFO结构一致,同步表示写时钟和读时钟的频率和相位一致,采用FIFO读写协议进行数据通信。
3.根据权利要求2所述的数字接口电路,其特征在于:所述的接收端异步FIFO,写时钟w_clk来自于经过缓冲传输单通道输出的发送端时钟,读时钟r_clk来自于接收端的工作时钟;写端的写满信号w_full_bef0re提前若干时钟周期产生,以抵消信号在缓冲传输单通道中的延迟。
4.根据权利要求3所述的数字接口电路,其特征在于:所述的并串转换电路从缓冲队列中读取总线数据并拆分成若干段串行数据送给SerDes串行器,其核心是一个有限状态机。
5.根据权利要求4所述的数字接口电路,其特征在于:所述的串并转换电路读取异步FIFO数据后合并成完整的并行总线数据后最后再写入同步的先入先出缓冲队列,其核心是一个有限状态机。
【文档编号】H03K19/0175GK104022775SQ201410237883
【公开日】2014年9月3日 申请日期:2014年6月2日 优先权日:2014年6月2日
【发明者】虞志益, 林杰, 周炜, 朱世凯, 周力君, 俞剑明 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1