LVDS系列28:Xilinx Ultrascale系 OSERDESE3原语(一)

发布于:2025-09-11 ⋅ 阅读:(17) ⋅ 点赞:(0)

OSERDESE3并转串原语,处于TX_BITSLICE组件中,如下所示:
在这里插入图片描述
OSERDESE3原语,用于为Xilinx Ultrascale系列的FPGA中未使用原生原语的设计做并行转串行的功能,OSERDESE3是一个4:1或8:1的并串转换器,若需要其他并串转换比例,需要自己在内部逻辑实现变速箱,或是搭配ODDRE1去实现;
对比OSERDESE2,OSERDESE3不支持级联位宽扩展功能,不支持OFB的反馈回路,不支持串联TBYTE和并联三态等功能;

 OSERDESE3框图:
在这里插入图片描述
 OSERDESE3模板:
OSERDESE3 #(
.DATA_WIDTH(8), // Parallel Data Width (4-8)
.INIT(1’b0), // Initialization value of the OSERDES flip-flops
.IS_CLKDIV_INVERTED(1’b0), // Optional inversion for CLKDIV
.IS_CLK_INVERTED(1’b0), // Optional inversion for CLK
.IS_RST_INVERTED(1’b0), // Optional inversion for RST
.SIM_DEVICE(“ULTRASCALE_PLUS”) // Set the device version (ULTRASCALE, ULTRASCALE_PLUS,
// ULTRASCALE_PLUS_ES1, ULTRASCALE_PLUS_ES2)
)
OSERDESE3_inst (
.OQ(OQ), // 1-bit output: Serial Output Data
.T_OUT(T_OUT), // 1-bit output: 3-state control output to IOB
.CLK(CLK), // 1-bit input: High-speed clock
.CLKDIV(CLKDIV), // 1-bit input: Divided Clock
.D(D), // 8-bit input: Parallel Data Input
.RST(RST), // 1-bit input: Asynchronous Reset
.T(T) // 1-bit input: Tristate input from fabric
);

 OSERDESE3端口:
在这里插入图片描述
OSERDESE3端口比OSERDESE2简洁许多,且功能也有减少,
其中高速时钟CLK,分频时钟CLKDIV,8bit并行输入D,串行输出OQ,异步复位RST与OSERDESE2的用法一致,
端口T是串行的三态控制输入,T_OUT是输出到IOB的三态控制信号,具体时序在仿真时查看;

 OSERDESE3参数:
在这里插入图片描述
DATA_WIDTH标明支持4和8的并行位宽;
INIT则是输出原语内部寄存器的初始化值;
IS_CLKDIV_INVERTED、IS_CLK_INVERTED、IS_RST_INVERTED这三个反转功能无特殊情况设置为0即可;
其中ODDR_MODE、OSERDES_D_BYPASS、OSERDES_T_BYPASS这三个信号,在vivado软件提供的例化模板中不存在,也就是被隐藏了,所以不需要使用,其默认值都为FALSE;

 OSERDESE3使用:
位宽搭配方法:
在这里插入图片描述
其中支持4:1和8:1,还出现了2:1,后续进行仿真验证是否全部支持;
在这里插入图片描述
上图为官方提供的SDR 4:1模式时序,此时8个输入D的bit位,分为4组相邻的bit对,一对bit连接相同值;

 OSERDESE3时延:
在这里插入图片描述
OSERDESE3时延取决于DATA_WIDTH的设置,可以看到上图中,位宽8的时延明显大于位宽4的,且如果CLK和CLKDIV相位的对齐关系,时延也会有稍许改变;
本文章由威三学社出品
对课程感兴趣可以私信联系


网站公告

今日签到

点亮在社区的每一天
去签到