请问做ppt换模板在哪里/(ppt做好了如何换模板)
872
2022-05-29
文章目录
in_system_ibert IP定制要点
串行收发器的位置
如何例化in_system_ibert?
结尾
in_system_ibert IP定制要点
串行收发器的位置
在ISI定制中,需要选择所使用的串行收发器的位置,如下:
对应的IP端口处也会出现相应的端口,例如上图选择了2个Quad,也就是8个通道的串行收发器,那么对应的drp接口就有8个。
但这个对应关系让人很迷惑,具体的通道和drp端口信号是如何对应的呢?
如果有着严格的对应关系,那么数据手册或者其他形式有必要给出必要的说明,而不是让用户去猜测!
人们常常犯着经验主义的错误,认为既然让你选择了Quad和通道,那么就应该对应连接?
我在拿不准的时候也听过如此的论调,并信以为然,这花费了我很多的时间去寻找对应关系,并最终一无所获,当你使用了大量的通道,例如几十个,那么这种对应关系的寻找会更加消耗你的时间,特别是当项目中需要被测眼图的transceiver一方,有着混乱的通道使用!
不管是什么原因,为了原理图布线方面也好,或者是任性使用,例如:
如下定义的rx:
input [31:0] rx;
1
每4位使用一个Quad,也就是4个通道,对应关系如下:
rx[0] 对应通道x1y39
rx[1] 对应通道x1y38
rx[2] 对应通道x1y37
rx[3] 对应通道x1y36
rx[4] 对应通道x1y35
rx[5] 对应通道x1y34
rx[6] 对应通道x1y33
rx[7] 对应通道x1y32
看起来已经有点意思了,这种还是倒过来约束的,还行,能接受。
如果是下面这种对应关系:
rx[0] 对应通道x1y36
rx[1] 对应通道x1y37
rx[2] 对应通道x1y38
rx[3] 对应通道x1y39
rx[4] 对应通道x1y32
rx[5] 对应通道x1y33
rx[6] 对应通道x1y34
rx[7] 对应通道x1y35
这就必须谴责了。
如果有几十个通道,你说怎么玩吧,如果in_system_ibert又需要严格的通道对应关系,那么信号的连接将变得十分不直观,让接盘开发者面临青筋暴裂的危险。
还是去看数据手册吧,那么一个不起眼的IP核,拿不准的时候也需要阅读数据手册!如果有现场支持工程师,这种问题也不要问了,因为他很可能自家的数据手册都没有阅读,就按照惯性思维告诉你,如果不需要严格通道对应,人家IP核让你选择干嘛,然后你深信不疑,胡乱猜测,呃呃呃,gt1对应x1y39,或者gt1对应x1y0,白白浪费时间,项目做到最后,还对自己隐隐怀疑。或者最后结果没有问题,还以为,自己的运气是好的,选择是对的,并输出文档,告诉队友,就得这样干,我试过!!!
来看数据手册:
The ISI core has no transceiver location constraints, nor are any attributes updated for selected transceivers. The selected transceiver information is only used to create an ISI template and group/display the selected transceiver in the Serial IO analyzer after downloading the bit file.
翻译一下:
ISI内核没有收发器位置约束,也没有为所选收发器更新任何属性。所选的收发器信息仅用于创建ISI模板,并在下载bit文件后在串行IO分析器中分组/显示所选的收发器。
很明显了,没有位置约束,所选择的收发器信息仅仅用于创建例化模板。
告诉你有多少个gt,你接进去就完事了。
总结:最接近真理的地方在数据手册上,我们(除了制定者,设计者)外都是阅读者,各色各样的阅读者容易忽略部分信息,或者根据惯性思维来判断,因此,带着问题去数据手册寻找答案。
如何例化in_system_ibert?
由于这个IP没有提供例子程序,所以要正确无误地使用这个IP,还有一定的疑惑点?
这个时候谁也别问,因为你可能问的人也只是听说过,或者见过,真正手把手体验过,实践过的人,也许很难精确遇到。
如果你问了,他们会告诉你,把drp接口连接上去就好了,然后你看看你自己的应用场景,已经定制好的aurora,或者jesd,srio等等,我了个去,怎么没有drp端口,如何和in-system-ibert的drp接口连接?
当你找不到drp接口的时候,他们也许又会告诉你,在ip核内部有,引出来?你若怀疑,甚至还怪你资历不够的意思?
我来告诉你,IP核是不要轻易改动的,或者说不要改动,如果你找不到drp接口,可以尝试看看数据手册,或者试试去掉某些选项,或者添加某些选项,但我建议还是看看收据手册,数据手册会有那个接口的描述,你会得到答案。
这里就已经可能解决很多疑惑了,但是还不够,没有个示例来参考,又没有例子工程,我会不放心我连接的对不对,或者说对这个IP核使用的对不对,因为我一旦例化进去,并生成bit流,工程大了会消耗大量的时间,怎么办呢?
为了提高成功率还是要找到一个这个ip核使用的例子程序来研究研究,这里建议可以使用transceiver IP,内部有例化in-system-ibert的选项,你勾选之后随便生成一个例子程序,就可以看到这个ip核到底怎么使用的,照葫芦画瓢,是最直接的方式。
例如:
生成例子程序:
对着程序看看如何无误地使用in-system-ibert,并且如何配合VIO IP核来使用,都可以清晰地看到解决办法!
这些都是需要自己去发现的,而不是去问xxx。
结尾
这里只是告诉自己,也告诉迷茫的你方法,而没有提供一个具体的实例,自己去探索吧,数据手册,求知欲,才是王道。
FPGA
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。