本周一问 | IDELAYE3 的 tap 精度问题

Q1
为什么Ultrascale IDELAYE3的tap resolution是个范围(2.5ps~15ps),按照15ps计算512个tap可延迟7.68个ns;7系列FPGA里边tap resolution是个可计算的具体值:1/32x2xFref
A1
主要 IDELAYCTRL的REFCLK也是个范围值,而不是固定的离散值。
7系列和 UltraScale/UltraScale+ 系列的工艺,结构以及实现方式相差极大,所以他们各自的IDELAYE resolution不同也很正常。
Ultrascale+ IDELAYE3 在COUNT MODE下tap resolution的范围是2.1~12ps,随温度,电压变化而变化,这种模式下不需要idelayctrl的参考时钟。
Q2
1. 上面提到的tap resolution范围为什么和文档ds892中不一样(2.5~15);
2. tap resolution随温度、电压变化,和idelayctrl的参考时钟没有关系?
3. TIME模式下,最大可以delay 1250ps/1100ps,COUNT模式下最大可以delay多少呢?
4. TIME模式下,idelaye3是如何进行voltage and temperature compensation的?
个人理解是:无论是COUNT模式还是TIME模式,两者都是用delay line进行延迟的,delay line由512个tap组成,一个tap的大小是随电压、温度变化而变化的且不可控。既然不可控,通过使用idelayctrl就能保证TIME模式下delay line的延迟一直保持在设置的DELAY_VALUE上?
5. TIME模式下,DELAY_VALUE为什么最大只能设置1250/1100ns?
A2
1. Ultrascale tap resolution: 2.5~15; Ultrascale+ tap resolution: 2.1~12
2. 在Count 模式下,都没用idelayctrl,当然和idelayctrl的参考时钟没有关系
在Time 模式下,你指定是延迟时间,而不是tap数目,和idelayctrl的时钟从数学上没有关系.
3. 请试一下乘法就能知晓,但这个延迟随温度、电压变化,是不可控的。
4. 无论是COUNT模式还是TIME模式,两者都是用delay line进行延迟的,delay line由512个tap组成,一个tap的大小是随电压、温度变化而变化的且不可控。
以上的理解没问题。既然不可控,通过使用idelayctrl就能保证TIME模式下delay line的延迟一直保持在设置的DELAY_VALUE上?
idelayctrl 自己有外部参考时钟,对于延迟时间也就有了参考标准(不随温度电压变化), 可以依靠这个来对延迟线进行实时的校准.
5. 来源于Tap的最小精度 X512Tap
点击阅读原文可以查看更多问题详情
