归档教程用10位 DDR 并串转换说明 OSERDESE2 的例化和仿真。阅读这类波形时,我会先把一个并行字如何进入串行序列写清楚,再看时钟和复位;单独观察连续的0、1很难定位位序错误。本文尚未运行 RTL 仿真或板级测试。
先区分两个数据边界
CLKDIV 对应并行侧,CLK 对应串行侧。官方说明要求它们具有相应的分频关系;D1 对应先出现在 OQ 的数据。具体端口和合法属性组合见 AMD UG953:OSERDESE2。
图只表示数据流,不表示实际延迟或时钟布线。在连续传输、每个CLKDIV周期装载一个N位字的配置中,DDR的速率关系为 f_CLK = (N/2) × f_CLKDIV;这只是吞吐率关系,仍需核对具体模式、时钟相位和级联配置。
10位示例不能当成通用接线模板
超过单块支持范围的配置会涉及 MASTER/SLAVE 级联。检查示例时应把应用数据位、D端口和级联通道逐项对应,按官方模板核对连线。不要从变量名 data[0] 推断线上的首位:首位由实际端口映射决定。
归档文章把三态序列化能力描述为最高14:1,而官方条目将数据扩展位宽与三态路径分开,三态输入为 T1—T4,三态序列化最高4:1。本笔记据此将两条路径分开阅读,不沿用原文那一位宽结论。数据使能、三态控制和输出缓冲器也应分别核查。
延迟应由条件和测量共同说明
原文讨论了10位 DDR 仿真中观察到的4/5个串行周期差异。我不会把其中某个数写成固定接口保证;应记录输入采样沿、首位输出沿、CLK与CLKDIV相位以及使用的仿真模型,再对照 UG471:SelectIO Resources 的对应配置。
待做的最小验证
- 使用非对称固定字、行走1和递增字,明确每个字的首位与边界。
- 在确定的并行采样边界检查数据,避免激励与采样同沿产生仿真竞争。
- 按官方 RST 时序检查复位释放,并观察第一个有效字;多通道还需核对同步性。
- 改变允许范围内的相位条件,记录延迟;检查综合、布局和时序报告。
阅读完成后的产物应是端口映射表和可重复的仿真条件,而不只是与教程相似的一张波形。
阅读来源
- 原始阅读材料:孤独的单刀:《OSERDESE2的使用和仿真》。
- 整理日期为2026-10-03;原文发表日期待核实。配图为本笔记原创概念示意,未复制原文截图。
适用范围:本文讨论AMD/Xilinx 7系列器件;不直接套用于UltraScale或Versal。