大家好,
有没有人在Kintex-7上正常工作?
在'OVERSAMPLE'模式下发现
仿真模型不能正常工作(此线程中的Testbench),并且已经读过几次冲突的文档,我得出的结论是OVERSAMPLE模式实际上不受支持,更可能是剪切和粘贴
从过去支持它的事情中找到工作。
我一直试图让SERDES在NETWORKING模式下工作,使用信号I在
FPGA本身上切换,以确保我的问题不在于噪声信号传到
电路板上。
--------------------------------------
测试设计
我为Kintex KC705评估板Planahead 14.6提供了设计。
按钮C被去抖并切换了一下。
该位通过IDELAYE2原语输入,然后输入ISERDES2。
对于ISERDES2,CLK和CLKB是500MHz clk,它是反向的,而CLKDIV是250MHz。
我已经为DDR设置了属性,数据宽度为4等。其中有一个芯片内核用于触发/查看SERDES Q输出。
最后,按钮N和S被去抖动并分别增加/减少IDELAY值。
---------------------------------------
结果
ISERDES2 Q8-Q5分别是采样位1-4。
当我设置chipcope触发输出(设计中的寄存器bit_os和bit_os2)不是0x0时,然后按下按钮C切换数据位,我看到bit_os2是B“1111”。
由于500MHz DDR采样时钟,每个采样间隔1ns,我应该能够将延迟增加1ns以上,并且看到样本中的边缘出现为B“1110”(记住LSB是样本0)。
在我使用200MHz参考时钟的设计中,每个抽头延迟值约为78ps,因此1ns约为13个抽头。
我将延迟增加到16个抽头以获得良好的测量结果(LED输出也显示DELAY计数值)取消断言该位并再次触发chipcope。
我看到bit_os2现在是B“1100”。
模式已经在预期的方向上发生了变化,但据我所计算的是超过2ns。
同时将抽头增加到28会导致采样模式没有进一步变化?
那么我的设计使用了不正确的ref时钟,不知何故每个tap都不是78ps,或者ISERDES2连接的端口是错误的?
或者只是我对IDELAY链中的水龙头如何工作的理解?
任何帮助将非常感激!
serdesTest.zip 1268 KB