时序约束之Xilinx IDELAYE2应用及仿真笔记

引言:本文我们介绍下Xilinx SelectIO资源内部IDELAYE2资源应用。IDELAYE2原句配合IDELAYCTRL原句主要用于在信号通过引脚进入芯片内部之前,进行延时调节,一般高速端口信号由于走线延时等原因,需要通过IDELAYE2原语对数据做微调,实现时钟与数据的源同步时序要求。

1. IDELAYE2在SelectIO中的位置

7系列FPGA SelectIO中HR Bank和HP bank中都有IDELAYE2模块,其在SelectIO路径位置如下图所示。

图片

图1:7系列FPGA HP Bank I/O Tile

图片

图2:7系列FPGA HR Bank I/O tile

2. IDELAYE2延迟特性

Kintex-7器件DC and AC 开关特性手册中介绍了IDELAY延迟分辨率及最大工作时钟,如下图所示。

表1:IDELAY延迟分辨率及最大工作时钟

图片

根据上图延迟分辨率,例如当参考时钟为200MHz时,根据公式计算:

平均抽头延迟单位为Tidelayresoluion=1/(32×2×200MHz)≈78ps。

需要说明的一点是:

当抽头系数Tap=0时,输入和输出延迟时间并非为0ps,而是600ps;

当抽头系数Tap=1~31时,TapDelayTime=600ps+Tidelayresoluion*Tap。

3. IDELAYE2原句

在Vivado Language Templates中搜索IDELAY,在Verilog目录中根据工程器件家族Kintex-7选择IDELAYE2原句模板,如下图所示。

图片

图3:IDELAYE2语句模板

   (* IODELAY_GROUP = <iodelay_group_name> *) // Specifies group name for associated IDELAYs/ODELAYs and IDELAYCTRL
​
   IDELAYE2 #(
      .CINVCTRL_SEL("FALSE"),          // Enable dynamic clock inversion (FALSE, TRUE)
      .DELAY_SRC("IDATAIN"),           // Delay input (IDATAIN, DATAIN)
      .HIGH_PERFORMANCE_MODE("FALSE"), // Reduced jitter ("TRUE"), Reduced power ("FALSE")
      .IDELAY_TYPE("FIXED"),           // FIXED, VARIABLE, VAR_LOAD, VAR_LOAD_PIPE
      .IDELAY_VALUE(0),                // Input delay tap setting (0-31)
      .PIPE_SEL("FALSE"),              // Select pipelined mode, FALSE, TRUE
      .REFCLK_FREQUENCY(200.0),        // IDELAYCTRL clock input frequency in MHz (190.0-210.0, 290.0-310.0).
      .S
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FPGA技术实战

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值