当前位置: 首页 > news >正文

jesd204b学习记录

该篇文章记录自己学习204b的心得

1. 204b是什么?

JESD204B是一种由JEDEC(联合电子设备工程委员会)制定的高速串行接口标准,专门用于连接高速数据转换器(ADC/DAC)与逻辑器件(如FPGA/ASIC)。 JESD204B的核心思想是用少量高速串行差分对取代传统的大量并行数据线,从而在高速数据传输应用中提供更高的带宽密度、更低的功耗和更简单的PCB布线。

2. 204b中的一些关键参数

LMFC,是204b中的一个关键概念Local Multi-Frame Clock 的缩写,即本地多帧时钟。它是 JESD204B 中实现确定性延迟的核心时序基准信号。简单理解:LMFC 就像一个高精度的节拍器,在发送端(如 ADC)和接收端(如 FPGA)内部各自独立运行,但通过 SYSREF 信号被严格同步。发送端在 LMFC 的某个边沿开始发送数据帧,接收端也在 LMFC 的同一个边沿期望接收到数据,从而消除链路中不确定的延迟。

SYSREF,SYSREF 是一个低频率、高精度的参考信号,用于初始化所有器件的 LMFC 计数器。每个器件在检测到 SYSREF 的有效边沿时,会将其内部的 LMFC 计数器复位到零。这样,即使 SYSREF 到达不同器件的时间有微小差异,设计中也会通过“SYSREF 建立/保持时间”和“LMFC 相位调整”来补偿,保证逻辑上的对齐。

L,Line的数量,有多少个串行通道数。

M,转换器的数量,一颗四通道 ADC 芯片,如果四个通道都启用,则 M = 4;如果只使用其中两个通道,M = 2。注意:M 是转换器的数量,不是串行通道(Lane)的数量。转换器和 Lane 之间的映射关系由另一个参数 L(Lane 数)决定。

N,转换器的分辨率,每个转换器单次采样产生的实际有效数据位数,通常对应 ADC 的位数或 DAC 的精度。

N’,必须是4的倍数,实际单次采样结果对应的bit,比如AD是14bit的,则N‘为16bit。

F,每帧包含的字节数。

K,一个多帧包含的帧数。

S,每帧每通道的样本数,在每条line上,一个帧内所包含的转换器样本个数。最常见的就是1,如果 M=4,L=2,S=1,则每个 Lane 需要传输 2 个转换器的样本(M/L=2)。如果 S=2,则每个 Lane 每帧传输 4 个样本(每个转换器 2 个),相当于提高了帧利用率。

3. 204b中一些核心公式

每帧中的总字节

含义:每个帧中,每个 Lane 贡献 N′×SN′×S 比特(因为每个样本 N' 位,每个帧有 S 个样本),L 个 Lane 的总比特数为 L×N′×SL×N′×S,除以 8 得到字节数 F。

最终要的线速率计算如下

其中:

  • M:转换器数量

  • N′:每个样本在帧中占用的总位数(含控制位或填充位)

  • fs:转换器的采样率(样本/秒)

  • L:使用的串行通道(Lane)数量

  • 10/8:8b/10b 编码开销因子(每 8 位有效数据实际传输 10 位)

4. 204b的建链流程

第一阶段:代码组同步 (CGS)

这个阶段的目标是让接收端(如FPGA)从“听得见”的原始电信号中,准确识别出“字符”边界,锁定CDR,建立最基本的字符同步。

  1. 发起请求:接收端在初始化或链路丢失后,会主动通过硬件信号SYNC~将其拉低,向发送端发出“准备同步”的请求。

  2. 发送同步码:发送端(如ADC/DAC)检测到SYNC~为低电平后,会在所有通道上持续发送K28.5字符(也称/K/或Comma字符)。这种特殊的10-bit码具有独特的比特模式,帮助接收端在数据流中找到字符边界。

  3. 确认字符锁定:接收端的每个通道会检测/K/字符。一旦所有通道都连续检测到至少4个正确的/K/字符,接收端就认为字符边界已锁定,CDR已稳定。

  4. 完成同步握手:接收端将所有通道的SYNC~信号拉高,向发送端宣告字符同步成功,并准备好接收下一阶段的数据。

第二阶段:初始通道对齐序列 (ILAS)

CGS同步后,系统进入ILAS阶段。这个阶段的目的是将所有通道在逻辑上对齐,并精确地交换配置参数。

  • 校准对齐与参数交换:发送端检测到SYNC~变为高电平后,在下一个“本地多帧时钟”(LMFC)边沿启动ILAS。ILAS由4个(或更多个)多帧组成,每个多帧都以特定的对齐字符结尾。其中,第二个多帧会携带“链路配置参数”(如通道数、帧结构等),通过K28.4 (/Q/)字符标识,向接收端宣告即将传输的数据格式。

  • 完成链路对齐:接收端利用每个多帧结尾的/A/字符,消除通道间的微小偏差,确保在本地LMFC边界上对齐所有通道的数据。当接收端成功接收并校验完最后一个多帧后,ILAS阶段就完成了。

第三阶段:用户数据传输 (DATA)

ILAS成功完成后,链路进入稳定的DATA阶段,开始正式的、用户定义的业务数据高速传输。发送端可以开启可选的加扰功能来优化信号的频谱特性,同时,接收端会持续监控链路是否存在错误。

http://www.jsqmd.com/news/1135435/

相关文章:

  • 信息安全章节核心知识梳理
  • MCP基础版本
  • 基于Metasploit的内网渗透实战:从外网突破到域控攻陷
  • Claude 聊天记录导出|AI 导出鸭高效实现各类格式转换
  • 第一篇:Java 语言核心特性与运行机制
  • iCloud Photos Downloader:终极免费命令行工具,完整备份苹果照片库
  • 终极指南:如何用PKHeX自动合法性插件快速管理宝可梦数据
  • ASM330LHH与STM32F303VE的6DoF运动跟踪系统设计
  • 超自动化运维如何优化IT成本结构?
  • 01 模型剪枝是什么?为什么深度模型需要剪枝?
  • MC6470与PIC18LF4682在工业自动化中的高精度控制方案
  • Google Sheets API接入指南:服务账号认证与自动化实战
  • 好用还专业!2026年必备AI论文工具榜单,AI工具一键写高质论文
  • LeetCode //C - 1137. N-th Tribonacci Number
  • ClickHouse 填平 Elasticsearch 护城河?日志分析新选择!
  • YOLOv8热成像人员识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)
  • 《超简单:用 Python 让 Excel 飞起来》读书笔记:第7章 案例04 举一反三 添加图例
  • Kimi LeetCode 3495. 使数组元素都变为零的最少操作次数 Java实现
  • WebSocket 安全实战(二):多层防御穿透攻击模型与长连接底层架构缺陷深度解析
  • KingbaseES读写分离高可用集群扩容、备库重建与故障切换实战
  • STM32L081CB与Si4731收音机模块开发指南
  • ClaudeCode五分钟安装教程!有手就能用上顶级AI编程助手
  • Gazebo仿真PX4+3D激光雷达的搭建
  • 分布式记忆协调_agent-memory-coordinator
  • AI中的表格怎么导出——“AI导出鸭”,深度测评来了!
  • 低成本快速搭建一个博客网站(分享记录)
  • 【单智能体】人寿保险保障顾问案例讲解(附完整源码)
  • YOLOv8可回收塑料识别分类检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)
  • 如何在Windows上优雅处理iPhone拍摄的HEIF照片?HEIF Utility一站式解决方案
  • AI 很强,但为什么还会“忘”?看懂上下文,你就知道怎么和它合作