微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 数据链路层发送与接收的处理过程及涉及到的模块

数据链路层发送与接收的处理过程及涉及到的模块

时间:02-08 来源:网络整理 点击:

,2、相对于字节边界,它能产生一个统一的对齐。在不考虑错误的情况下,Comma 信息不能出现在其他 bit 位上,既不能出现在其他字符中,也不能出现在两个字符之间。符合这两个条件的0011111 和 0011111 被选作是 Comma 信号,包含有 Comma 信号的 K.28.1(001111 1001 或 110000 0110),K.28.5(001111 1010 或 110000 0101),K.28.7(001111 1000 或 110000 0111)被称为 Comma 字符。如果码流中出现两个或者 3 个交叠的 Comma 信号,只有第一个和第三个 Comma 信息会被检测出来。比如出现两个 K.28.7,码流00111110000011111000 中会出现三个 Comma 信号:0011111,1100000 和 0011111,这样只有第一个和第三个 Comma 会被认为是合法的,这符合码流中实际上只有两个 K.28.7 的情况。虽然 K.28.7 不容易出现错码(其他码要错两位才可能变为K.28.7),但是它的跳变密度比较低,不利于时钟数据恢复。所以在实际应用中,一般只使用 K.28.1、K.28.5 作为 Comma 字符,而不使用 K.28.7。

Comma 检测就是检测串行码流中的 Comma 信息,然后把字节边界调整到Comma 信号之前,实现字节边界的对准,为 8b/10b 解码器提供正确的并行输入信号,其功能如图31所示。

图31:comma检测器

1.7 数据链路层的SystemC仿真

发送器数据链路层的仿真包括数据进入数据链路层后先进行scrambler、然后通过同步字替换模块、再通过8b/10b编码输出,输出的并行数据进入到物理层的SerDes模块,最终输出1bit位宽的数据流。

接收器通过物理层的SerDes模块将输入的1bit数据流数据转为10bit并行的数据,CDR模块将对数据进行恢复,并通过comma码K28.5对输入的数据完成边界的对齐,数据经过8b/10b解码模块后,最终输出到数据通道同步检测模块和帧同步检测模块,通道同步检测模块完成不同数据通道间数据的同步与检测,而帧同步检测模块完成数据帧帧头的识别,同步后的数据将通过descramber模块完成数据的解扰工作,并最终将数据输出到数据传输层,以下是SystemC的仿真图:

上图中,模拟了AD9250的两个AD转换通道,一个通道采样的为数据三角波,一个通道采样的正弦波,而下面的是接收器接收到的数据,该数据的前半段的毛刺是由于系统同步而导致的。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top