JESD 204b

jesd 204b分为物理层、数据链路层和传输层,在传输层和数据链路层之前存在着一个可选的扰码器。物理层负责并行数据的串行化,在实际的物理通道中发送数据;数据链路层主要实现8b/10b编码、CGS和 ILAS;传输层实现数据在不同lane上的映射,但在很多场景下,M会等于L,且S=F',此时传输层基本上可以等同于bypass。我们看一下ADI的datashhet中的ADC test partern的数据流向图,其实也是一个完整的JESD 204B TX的数据流向图。

下图是204b协议原文中的数据流向图:

首先来看一下数据链路层,数据链路层的功能如下:

1、8b/10b编码

2、链路操作:

(1) cgs:

这个比较简单,网上内容也比较多,不作介绍;

(2) 大小端模式:JESD 204B使用大端模式,MSB first;

(3)初始帧对齐:

TX:在CGS期间,TX始终发送/K28.5/符号的完整帧,CGS结束后,TX发送有效数据,如果TX发出了ILAs序列,第一个非/K28.5/符号是为/K28.0/。我其实没有弄清楚协议中为什么这么说,因为ILAs应该不是一个可选的过程,我的理解协议作者可能是认为可能存在链路层的测试模式,协议中明确的说了,RX设备应存在抑制 ILAS缺失报错的能力,以使得测试模式能够得以进行来测试误码率。

RX:RX以第一个非/K28.5/符号标记帧的开始, 且以F个八位字节开始一个新的帧。也就是说,RX应存在序列检测器(8b/10b decoder前),检测从物理层中获得的数据中的控制字符。

(4)帧对齐和校正

TX:

RX:

虽然jesd 204b协议将8b/10b编码划分到了数据链路层,但是在大部分的应用下,8b/10b编码被认为是PCS层,所以FPGA IP中如果不包含phy,那么IP链路层输出需要charisk信号用以指示控制字符,因为8b/10b编码对控制字符和普通数据的编码是不一样的。

(5)ILAs

(6)lane对齐和校正

相关推荐
王琦03188 小时前
Linux的管理程序
linux·运维·服务器
名字还没想好☜9 小时前
Kubernetes NetworkPolicy 实战:默认全通的坑与用标签做零信任隔离
运维·云原生·容器·kubernetes·networkpolicy
QWEDDRFTG9 小时前
家用服务器供电
服务器
Eloudy9 小时前
给 Linux 加新硬盘的挂载命令
linux·运维·服务器
三言老师9 小时前
ss高效查看网络连接端口实操
linux·运维·服务器·网络
三言老师9 小时前
traceroute路由追踪实操
linux·运维·服务器·网络
Nayxxu9 小时前
Gemini Computer Use 安全清单:浏览器、桌面、移动端自动化怎么控权限
运维·安全·自动化
愚公搬代码10 小时前
【愚公系列】《WorkBuddy从上手到变现》017-用AI Agent实现公众号自动化运营(从1个号到矩阵:规模化的可能和边界)
运维·人工智能·自动化·小龙虾·workbuddy
荒--10 小时前
kali 操作基础(二)
linux·网络
XH华10 小时前
Linux系统第四章:工具的学习
linux·运维·学习