赛灵思
直播中

王璨

7年用户 300经验值
私信 关注
[问答]

如何在Kintex-7上正常工作?

大家好,
有没有人在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

回帖(6)

张家旺

2020-7-14 16:14:28
我想我发布后会发现错误 - 我将bit_os2 LSB连接到Q5,bit_os2 MSB连接到Q8,所以bit_os2(0)是最后一个样本,这就是转换过程中采样值为“0011”的原因!
问题仍然存在..
举报

陈苏文

2020-7-14 16:23:06
这个问题是否有可能与你如何通过chipcope观察事件有关?
chipcope记录您正在查看的信号有多精细?
- 如果提供的信息有用,请将答案标记为“接受为解决方案”。给予您认为有用且回复的帖子。
举报

张家旺

2020-7-14 16:33:10
嗨,
我在考虑自己,特别是当我试图调试OVERSAMPLE模式时,据报道,在QCL域中添加Q输出,而不是CLK,因为数据表显示最后一个寄存器链是由时钟驱动的!
我对chipcope核心的理解是它们仍然像其他任何东西一样是时钟资源吗?
核心将在与您想要查看的信号相同的时钟域中捕获数据。
在这种情况下,SERDES应该使用CLK和CLKB捕获数据并使用CLKDIV进行时钟输出,因此芯片内窥镜(我认为)也使用CLKDIV来锁存我想要看到的数据,频率为250MHz。
输出应该同时改变。
看看DS182 for 7系列中的SERDES开关特性,有一个CLKDIV在Q长度为470ps时输出,所以我将看看Q输出和chipcope锁存寄存器之间的时序问题/亚稳态的可能性。
设置/旧时间似乎在几十ps的数量级,所以除非Q和CS核心之间的数据路径延迟是.5ns我不能看到这是问题?
举报

李森

2020-7-14 16:43:33
>在这种情况下,SERDES应该使用CLK和CLKB捕获数据并使用时钟输出
> CLKDIV所以芯片望远镜(我认为)也在使用CLKDIV来锁存我想要看到的数据,频率为250MHz。
ChipScope ILA时钟和数据端口的连接是100%用户驱动的,因此当您插入ILA内核时,您是否将CLKDIV的相同时钟连接到ILA内核?
------您是否尝试在Google中输入问题?
如果没有,你应该在发布之前。太多结果?
尝试添加网站:www.xilinx.com
举报

更多回帖

发帖
×
20
完善资料,
赚取积分