使用 IP example design

作者: East FPGA那点事儿

很多时候工程师使用xilinx IP却不知道如何调用,如何配置,如何测试和如何仿真,这里请充分使用xilinx vivado 工具提供的example design,以IP 7系列的SERDES调用为例,我们可以在产生IP后打开工具自带的IP 参考设计:

图1.open IPexample design

图1.open IPexample design

这里不是所有的IP都具备参考设计的,比如一些特别复杂的接口如Displayport 1.2,xilinx 特殊为它们做了XAPP,这样有完整的应用类参考设计,更为详细,另外特别简单的IP也没有参考,如简单的乘法器。

图2.直接得到可综合的工程可以产生bit文件烧写

图2.直接得到可综合的工程可以产生bit文件烧写

如果以开发板作为目标硬件,产生的约束会直接定位到开发板的硬件管脚信息,降低工程师的工作量;

如果以客户硬件测试,则需要根据硬件的管脚修改约束文件,这里需要注意vivado需要顶层IO都定义管脚LOC和IO standard,否则bit产生会报错。

图3.使用IP仿真文件直接行为仿真

图3.使用IP仿真文件直接行为仿真

通常,一些工程师喜欢仿真来验证IP的行为。这里vivado不需要编译库文件,不需要编写TB文件,直接就可以仿真了。提高设计效率。

图4.理解IP的配置

图4.理解IP的配置

由于参考设计已经调用了IP,对特殊的IP管脚都已经定义或使用VIO进行了配置。

图5.参考设计的数据读写

图5.参考设计的数据读写

工程师还可以参考例子的数据读写代码编写方式,提高自身代码的可读性。

总之,充分使用工具提供的例子能够短时间的理解IP行为模型,提高设计和仿真效率。