我是靠谱客的博主 秀丽画笔,最近开发中收集的这篇文章主要介绍Xilinx IDDR及ODDR使用总结概述,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

概述

AD9361数据接口采用了DDR双沿采样模式,如下所示,AD9361与Xilinx FPGA通信需要用到其IDDR和ODDR原语,为加深记忆,将IDDR及ODDR使用总结如下。
在这里插入图片描述

IDDR

IDDR是将1 bit的双沿采样输入转换为2bit的单沿采样输出,IDDR框图如下图所示,其中D为双沿采样输入端,C为时钟输入,CE为时钟使能,S为置位信号,R为复位信号,Q1和Q2单沿采样输出端。
在这里插入图片描述

IDDR #(
.DDR_CLK_EDGE   ("SAME_EDGE_PIPELINED"  ),
.INIT_Q1        (1'b0                   ),
.INIT_Q2        (1'b0                   ),
.SRTYPE         ("ASYNC"                ))
i_rx_frame_iddr ( 
.CE             (1'b1                   ),
.R              (1'b0                   ),
.S              (1'b0                   ),
.C              (data_clk               ),
.D              (rx_frame_idelay        ),
.Q1             (rx_frame_p_s           ),
.Q2             (rx_frame_n_s           ));

从上面例化的模块说明IDDR的参数,其中INIT_Q1和INIT_Q1为输出初始值,SRTYPE表示同步或异步复位,而DDR_CLK_EDGE有以下三种模式:
1、OPPOSITE_EDGE模式
在这里插入图片描述
2、SAME_EDGE Mode
在这里插入图片描述
3、SAME_EDGE_PIPELINED模式
在这里插入图片描述

ODDR

ODDR是将2bit单沿采样输入转换为1bit的双沿采样输出,ODDR框图如下图所示,其中D1和D1为单沿采样输入端,C为时钟输入,CE为时钟使能,S为置位信号,R为复位信号,Q为双沿采样输出端。

在这里插入图片描述

ODDR #(
.DDR_CLK_EDGE   ("SAME_EDGE"            ),
.INIT           (1'b0                   ),
.SRTYPE         ("ASYNC"                ))
i_tx_frame_oddr (
.CE             (1'b1                   ),
.R              (1'b0                   ),
.S              (1'b0                   ),
.C              (data_clk               ),
.D1             (tx_frame               ),
.D2             (tx_frame               ),
.Q              (tx_frame_oddr_s        ));

从上面例化的模块说明ODDR的参数,其中INIT为输出初始值,SRTYPE表示同步或异步复位,而DDR_CLK_EDGE有以下两种模式:
1、OPPOSITE_EDGE模式
在这里插入图片描述
2、SAME_EDGE模式
在这里插入图片描述

最后

以上就是秀丽画笔为你收集整理的Xilinx IDDR及ODDR使用总结概述的全部内容,希望文章能够帮你解决Xilinx IDDR及ODDR使用总结概述所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部