《一种SERDES技术中的错位检测与纠错电路.pdf》由会员分享,可在线阅读,更多相关《一种SERDES技术中的错位检测与纠错电路.pdf(10页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104009823 A (43)申请公布日 2014.08.27 CN 104009823 A (21)申请号 201410237882.3 (22)申请日 2014.06.02 H04L 1/00(2006.01) H04L 1/24(2006.01) (71)申请人 复旦大学 地址 200433 上海市杨浦区邯郸路 220 号 (72)发明人 虞志益 林杰 周力君 周炜 朱世凯 俞剑明 (74)专利代理机构 上海正旦专利代理有限公司 31200 代理人 陆飞 盛志范 (54) 发明名称 一种 SerDes 技术中的错位检测与纠错电路 (57) 摘要 本发明属于 S。
2、erDes 串行通信技术领域, 具体 为一种SerDes技术中的错位检测与纠错电路。 本 发明由发送端数字电路和接收端数字电路两大部 分组成。 在发送端, 由发送端控制器启动校验码发 生电路依次产生 N 位全 “1” 的同步信号和仅最高 位为 “0” 的校验信号, 上述信号被二选一 MUX 选通 输出到模拟 Serializer 模块, 再经过差分传输通 道和 Deserializer 后送给接收端数字电路 ; 在接 收端, 错位检测电路在检测判别接收数据有没有 错位 ; 纠错电路模块根据接收的校验码中 “0” 实 际出现的位号将正确的数据位序恢复纠正并最终 输出。 本发明采用数字电路实现, 。
3、具有可编程性以 及逻辑简单、 灵活性好等优点, 与现行通用的基于 硬件描述语言的数字集成电路设计流程兼容。 (51)Int.Cl. 权利要求书 1 页 说明书 4 页 附图 4 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书4页 附图4页 (10)申请公布号 CN 104009823 A CN 104009823 A 1/1 页 2 1. 一种 SerDes 技术中的错位检测与纠错电路, 其特征在于由发送端数字电路和接收 端数字电路两大部分组成 ; 发送端数字电路包括 : 发送端控制器、 校验码发生电路、 二选一 数据选择器, 由发送端控制器启动校验码发。
4、生电路依次产生 N 位全 “1” 的同步信号和仅最 高位为 “0” 的校验信号, 上述信号被二选一数据选择器选通输出到模拟 Serializer 即串行 器, 再经过差分传输通道和 Deserializer 即解串器后送给接收端数字电路 ; 接收端数字电 路包括错位检测电路、 纠错电路, 错位检测电路在检测到全 “1” 同步信号后再去检测下一个 数据包, 若仍为全 “1” 信号, 则接收数据没有错位 ; 否则, 说明接收数据有错位 ; 纠错电路根 据接收的校验码中 “0” 实际出现的位号将正确的数据位序恢复纠正出来并最终输出。 2. 根据权利要求 1 所述的错位检测与纠错电路, 其特征在于 :。
5、 所述发送端控制器的核 心由状态机构成, 状态机默认工作在 “空闲状态” , 控制校验码发生电路产生 N 位 “1010 10” 信号, 同时将二选一数据选择器的 0 输入端选通输出 ; 当系统复位信号释放后, 状态机 跳转至 “同步信号发送状态” , 控制校验码发生电路产生持续两个时钟周期的 N 位 “1111 11” 同步信号 ; 接着, 状态机跳转至 “校验信号发送状态” , 控制校验码发生电路产生 1 个时 钟周期的 N 位 “0111.11” 校验信号 ; 此后, 状态机跳转至 “正常数据传输状态” , 将 MUX 的 1 输入端选通输出, 从而允许 N 位并行输入数据传送到 Ser。
6、Des 通道中。 3. 根据权利要求 2 所述的错位检测与纠错电路, 其特征在于 : 所述错位检测电路由一 个状态机和 “0” 位号计算电路构成 ; 错位检测电路接收解串器输出的 N 位数据, 当检测到接 收了 N 位全 “1” 信号, 表示此为同步包, 接着检测接收到的下一个 N 位数据, 若仍为全 “1” 信号, 表示此为第二个同步包, 没有错位发生 ; 否则表示此为接收错位的校验包, 已有错位 发生 ; 错位检测电路根据查表法将接收的校验包中 “0” 出现的位置转化为十进制数的位号 传递给纠错电路。 4. 根据权利要求 3 所述的错位检测与纠错电路, 其特征在于 : 所述纠错电路由 N 。
7、路触 发器、 二选一数据选择器和交叉开关、 控制器构成, 纠错电路根据接收的校验码中 “0” 实际 出现的位号将正确的数据位序恢复纠正出来并最终输出 ; 假设位号为 M, 串行器按照自高 向低位发送并行数据, 解串器输出为 DoutN-1:0, 如果 M=N-1, 表示没有错位, 不需要纠 错, 电路输出的 N 位并行接收数据即为 DoutN-1:0 ; 否则, 表示有错位, 纠错方法为 : 将解 串器输出的低 M+1 位数据通过 1 级触发器后, 作为纠正后数据的高 M+1 位 ; 同时将解串器 输出的高 N-M-1 位作为纠正后数据的低 N-M-1 位, 即纠错后最终输出的 N 位并行数据。
8、为 Dout M:0-DoutN-1:M+1。 权 利 要 求 书 CN 104009823 A 2 1/4 页 3 一种 SerDes 技术中的错位检测与纠错电路 技术领域 0001 本发明属于 SerDes 串行通信技术领域, 具体为一种 SerDes 技术中的错位检测与 纠错电路。 背景技术 0002 随着电子通信技术的发展, 业内对数据接口的传输速率和通道带宽提出了越来越 高的要求。传统的并行接口, 如 IEEE 1284、 PATA 等, 因为通道位宽资源耗费大而不能满足 系统日益小型化的要求。因此, 速度更快、 位宽更小的串行接口逐渐成为主流解决方案。 0003 SerDes 接口。
9、技术是英文 Serializer(串行器) /Deserializer(解串器)的简 称。它是一种广泛应用的时分多路复用 (Time Division Multiplex, TDM)以及点对点 (Point-to-Point, P2P) 的串行通信技术。SerDes 技术在发送端将多路并行信号转换成高 速串行差分信号, 通过传输介质 (光缆、 铜线或者低阻电介质等) , 最后在接收端将高速串行 信号合并成原来的低速并行信号从而完成数据的传输过程。 这种时分多路复用技术充分利 用了传输介质的信道容量, 缩减了传输信道和器件管脚数目从而降低了通道资源开销, 便 于系统的集成。另外, 采用差分信号的。
10、传输也具有抗干扰性强, 误码率低的优点。 0004 SerDes 的实现结构大致可以分为四类 : 并行时钟 SerDes、 8b/10b 编码 SerDes、 嵌 入式时钟 SerDes、 位交错 SerDes。其中, 并行时钟 SerDes 将并行宽总线串行化为多个差分 信号对, 传送与数据并联的时钟, 是一种源同步做法, 缺点是传输宽总线 I/O 时使用了多个 串行对, 因而需要更多的连线和低的串行对之间的偏斜。 8b/10b编码SerDes首先将并行数 据映射到10bit码, 然后将其串化为差分对。 编码的依据是 : 为接收器时钟恢复提供足够的 边沿跳变率, 并且保证直流平衡 (即平衡高。
11、低电平发送的数量) 。为了让接收端在串行数据 流中定位到字边界, 发送端会在发送数据之前添加一个区别于任何普通数据位序的特殊符 号 (逗号字符) 。该方案的缺点是增加了两个冗余位, 对接口吞吐率的提升带来不利的影响。 嵌入式时钟 SerDes 将数据总线和时钟串化为一个串行信号对。两个高、 低时钟位, 在每个 时钟循环中被嵌入串行数据流, 从而形成每个串行化字的开始和结束帧。该方案的优点是 由于数据负载夹在嵌入式时钟位之间, 因此数据字宽度并不限定于字节的倍数 ; 缺点是由 于没有采用 DC 均衡编码, 因而在光通信应用中 AC 耦合特性较差。位交错 SerDes 将多个输 入串行流中的位汇聚。
12、为更快的串行信号对, 广泛应用于同步光纤网中, 缺点是高速电路设 计带来的挑战和成本开销。 0005 在非源同步 SerDes 结构中, 为了进一步缩减传输信号数量, 提高数据通信带宽, 一方面, 采取不传送与数据并联的时钟, 而是在接收端采用时钟恢复电路产生采样时钟 ; 另 一方面, 如果SerDes传输线不长, 串扰较低, 可不对并行数据编码, 这样相对于8b/10b编码 节约 2bit 码流, 提高了吞吐率。数据在传输时, 由于通道延时的不确定性, SerDes 接收端 并不能准确识别串行信号中最高位出现的位置, 从而导致输出的并行数据出现错位, 该过 程示意图如图 1 所示。如果用传统。
13、的模拟电路去解决接收数据错位问题会带来设计复杂度 的大大提升以及调试验证的不方便等难题。 本发明采用数字电路实现了错位检测与纠错电 说 明 书 CN 104009823 A 3 2/4 页 4 路, 具有可编程性以及逻辑简单、 灵活性好等优点, 与现行通用的基于硬件描述语言 (HDL) 的数字集成电路设计流程是兼容的。 发明内容 0006 本发明的目的在于提供一种 SerDes 技术中错位检测与纠错电路, 采用数字电路 实现, 具有可编程性以及逻辑简单、 灵活性好等优点。 0007 基于以上发明目的, 本发明提出一种错位检测与纠错电路, 其整体结构如图 2 所 示, 它由发送端数字电路和接收端。
14、数字电路两大部分组成。 发送端数字电路包括 : 发送端控 制器、 校验码发生电路、 二选一数据选择器 (MUX) ; 由发送端控制器启动校验码发生电路依 次产生 N 位全 “1” 的同步信号和仅最高位为 “0” 的校验信号, 上述信号被二选一数据选择 器选通输出到模拟 Serializer(串行器) 模块, 再经过差分传输通道和 Deserializer(解 串器) 后送给接收端数字电路。接收端数字电路包括错位检测电路、 纠错电路 ; 错位检测电 路在检测到全 “1” 同步信号后再去检测下一个数据包, 若仍为全 “1” 信号, 则接收数据没有 错位 ; 否则, 说明接收数据有错位 ; 纠错电路。
15、根据接收的校验码中 “0” 实际出现的位号将正 确的数据位序恢复纠正出来并最终输出。 0008 本发明中, 所述发送端控制器, 其核心为状态机, 状态流程图如图 3 所示, 状态机 默认工作在 “空闲状态” , 控制校验码发生电路产生 N 位 “101010” 信号, 同时将 MUX 的 0 输入端选通输出。 当系统复位信号释放后, 状态机跳转至 “同步信号发送状态” , 控制校验码 发生电路产生持续两个时钟周期的 N 位 “111111” 同步信号 ; 接着, 状态机跳转至 “校验 信号发送状态” , 控制校验码发生电路产生 1 个时钟周期的 N 位 “0111.11” 校验信号 ; 此 后。
16、, 状态机跳转至 “正常数据传输状态” , 将 MUX 的 1 输入端选通输出, 从而允许 N 位并行输 入数据传送到 SerDes 通道中。 0009 本发明中, 所述错位检测电路, 其结构如图 4 所示, 由一个状态机和 “0” 位号计算 电路构成, 状态机通过检测解串器输出的 N 位数据, 捕捉到校验包, 继而启动 “0” 位号计算 电路算出十进制位号送给纠错电路。状态机的状态流程图如图 5 所示, 在 “初始状态” , 状态 机检测解串器输出的 N 位数据, 若接收为 N 位全 “1” 信号, 表示此为同步包, 接着检测接收 到的下一个 N 位数据, 若仍为全 “1” 信号, 表示此为。
17、第二个同步包, 没有错位发生 ; 否则表示 此为接收错位的校验包, 已有错位发生, 并启动 “0” 位号计算电路。 “0” 位号计算电路根据 图 6(以 N=8 为例) 查表获得十进制位号送给纠错电路。 0010 本发明中, 所述纠错电路, 其结构如图 7 所示, 由 N 路触发器 (Flip-Flop, FF) 、 二 选一数据选择器 (MUX) 和交叉开关、 控制器构成, 假设错位检测电路产生的位号为 M, 串行 器按照自高向低位发送并行数据, 解串器输出为 DoutN-1:0, 如果 M=N-1, 表示没有错位, 不需要纠错, 电路输出的 N 位并行接收数据即为 DoutN-1:0 ; 。
18、否则, 表示有错位, 控制器的 工作机制为 : 将解串器输出的低 M+1 位数据通过 1 级触发器后 (设为 Dout M:0) , 作为纠 正后数据的高M+1位 ; 同时将解串器输出的高N-M-1位作为纠正后数据的低N-M-1位, 即纠 错后最终输出的 N 位并行数据为 Dout M:0-DoutN-1:M+1。 0011 本发明的错位检测与纠错电路, 其工作过程如下 : (1) 在发送端, 由发送端控制器启动校验码发生电路依次产生 N 位全 “1” 的同步信号和 仅最高位为 “0” 的校验信号。 说 明 书 CN 104009823 A 4 3/4 页 5 0012 (2) 同步信号及校验。
19、信号被二选一 MUX(数据选择器) 选通输出到模拟 Serializer (串行器) 模块, 再经过差分传输通道和 Deserializer(解串器) 后送给接收端数字电路。 0013 (3) 在接收端, 错位检测电路在检测到全 “1” 同步信号后再去检测下一个数据包, 若仍为全 “1” 信号, 则接收数据没有错位 ; 否则, 说明接收数据有错位。 0014 (4) 纠错电路模块根据接收的校验码中 “0” 实际出现的位号将正确的数据位序恢 复纠正出来并最终输出。 0015 SerDes 技术实现时, 若采取不传送与数据并联的时钟, 而是在接收端采用时钟恢 复电路产生采样时钟, 由于数据在传输通。
20、道延时的不确定性, SerDes 接收端并不能准确识 别串行信号中最高位出现的位置, 从而导致输出的并行数据出现错位。如果用传统的模拟 电路去解决接收数据错位问题会带来设计复杂度的大大提升以及调试验证的不方便等难 题。 本发明采用数字电路实现了错位检测与纠错电路, 具有可编程性以及逻辑简单、 灵活性 好等优点, 与现行通用的基于硬件描述语言 (HDL) 的数字集成电路设计流程是兼容的。 附图说明 0016 图 1 接收数据发生错位过程图。 0017 图 2 错位检测与纠错电路整体结构图。 0018 图 3 发送端控制器状态流程图。 0019 图 4 错位检测电路结构图。 0020 图 5 错位。
21、检测电路状态机状态流程图。 0021 图 6 位号计算查表图。 0022 图 7 纠错电路结构图。 具体实施方式 0023 在发送端, 控制器的核心为状态机, 状态机默认工作在 “空闲状态” , 控制校验码发 生电路产生 N 位 “101010” 信号, 同时将 MUX 的 0 输入端选通输出。当系统复位信号释 放后, 状态机跳转至 “同步信号发送状态” , 控制校验码发生电路产生持续两个时钟周期的 N 位 “111111” 同步信号 ; 接着, 状态机跳转至 “校验信号发送状态” , 控制校验码发生电 路产生 1 个时钟周期的 N 位 “0111.11” 校验信号 ; 此后, 状态机跳转至 。
22、“正常数据传输状 态” , 将 MUX 的 1 输入端选通输出, 从而允许 N 位并行输入数据传送到 SerDes 通道中。 0024 错位检测电路接收解串器输出的 N 位数据, 当检测到接收了 N 位全 “1” 信号, 表示 此为同步包, 接着检测接收到的下一个 N 位数据, 若仍为全 “1” 信号, 表示此为第二个同步 包, 没有错位发生 ; 否则表示此为接收错位的校验包, 已有错位发生。错位检测电路根据查 表法将接收的校验包中 “0” 出现的位置转化为十进制数的位号传递给纠错电路。 0025 纠错电路根据接收的校验码中 “0”实际出现的位号将正确的数据位序恢复纠 正出来并最终输出。假设位。
23、号为 M, 串行器按照自高向低位发送并行数据, 解串器输出 为 DoutN-1:0, 如果 M=N-1, 表示没有错位, 不需要纠错, 电路输出的 N 位并行接收数 据即为 DoutN-1:0 ; 否则, 表示有错位, 纠错方法为 : 将解串器输出的低 M+1 位数据 通过 1 级触发器后 (设为 Dout M:0) , 作为纠正后数据的高 M+1 位 ; 同时将解串器输 出的高 N-M-1 位作为纠正后数据的低 N-M-1 位, 即纠错后最终输出的 N 位并行数据为 说 明 书 CN 104009823 A 5 4/4 页 6 Dout M:0-DoutN-1:M+1。 说 明 书 CN 104009823 A 6 1/4 页 7 图 1 图 2 说 明 书 附 图 CN 104009823 A 7 2/4 页 8 图 3 图 4 图 5 说 明 书 附 图 CN 104009823 A 8 3/4 页 9 图 6 说 明 书 附 图 CN 104009823 A 9 4/4 页 10 图 7 说 明 书 附 图 CN 104009823 A 10 。