本文转载自ingdan FPGA公众号,作者杨智勇。
当时利用的Vivado版本为2018.3,因此通篇描述都是基于Vivado 2018.3的操作。

首先,ZCU106开拓板的TRD参考设计在Wiki上都因此tcl脚本形式供应的,须要我们实行脚本创建工程,我选用的参考设计源文件为rdf0428-zcu106-vcu-trd-2018-3\pl\scripts\vcu_audio_proj.tcl,选用这个设计的缘故原由是这个设计包含HDMI TX、HDMI RX、Audio,可以完全地考验客户的HDMI硬件设计是否精确。创建工程的步骤如下:

打开Vivado 2018.3 GUI或者打开Vivado 2018.3 tcl command prompt,在tcl命令行的部分输入命令打开vcu_audio_proj.tcl文件的存放目录文件夹;
ZCU106 TRD文件目录
source vcu_audio_proj.tcl,创建工程,此时vcu_audio_proj.tcl会调用vcu_audio_bd.tcl;
然后我们在打印信息中可以看到如下缺点,缘故原由是vcu_audio_proj.tcl中的路径定义问题;
TRD tcl脚本实行缺点信息
路径定义命令
办理办法为把vcu_audio_proj.tcl和vcu_audio_bd.tcl拷贝到向上一级目录,让vcu_audio_proj.tcl中的路径定义生效即可;拷贝后的路径如下:
拷贝脚本后目录
利用Vivado 2018.3 GUI或者Vivado 2018.3 tcl command prompt打开新的vcu_audio_proj.tcl路径位置,source vcu_audio_proj.tcl创建工程;
此时建议备份ZCU106的TRD工程,下一步有用;
接下来我们把设计移植到用户自己设计的硬件板卡,我的操作步骤如下:
在工程设置中把Project Device从ZCU106修正为客户的PN,我的设计中利用的是XCZU4EV-1FBVB900I;然后Vivado会提示须要Upgrade IP;
upgrade IP
点击Report IP Status,upgrade所有IP;
Upgrade IP之后会涌现连线报错,是由于Vivado upgrade IP的时候VCU block里面的时钟没有upgrade精确,请参考ZCU106 TRD工程把VCU里面的clk_wiz_0配置为差分输入、不要reset端口、两路输出时钟、clk_out2连接好,并且连接在block design中丢失的旗子暗记连接;
旗子暗记连接丢失
须要修正的block design旗子暗记连接
须要修正的clk_wiz输入时钟配置
须要修正的clk_wiz输出时钟配置
须要修正的reset端口
然后我们去实行Block Design的Validate,可以通过,但是在综合之前产生block design的输出文件时会碰着frame_buffer的缺点如下,这个缺点是由于工程路径超过了260个字符,须要把工程拷贝到某个盘符的根目录下;
frame buffer缺点信息
这时候全体设计可以综合完,我们须要根据用户的硬件事理图设计修正管脚位置约束、电平标准约束等信息;如果所有约束都修正完后编译碰着GTH的参考时钟无法布线成功,是由于block design中vid_phy_controller中参考时钟的位置和用户在硬件上的管脚、器件自身的位置关系等不一致;
[DRC RTSTAT-1] Unrouted nets: 3 net(s) are unrouted. The problembus(es) and/or net(s) are vcu_audio_i/gt_refclk_buf/ibufds_gt/U0/IBUF_OUT[0],vcu_audio_i/vid_phy_controller/inst/gt_usrclk_source_inst/gtrefclk0_in[0], and vcu_audio_i/vid_phy_controller/inst/gt_usrclk_source_inst/gtrefclk1_in[0].
block design中的旗子暗记连接关系
video_phy_controller中的配置信息
ZU+MPSOC EV GTH Location
用户事理图设计
MAP缺点信息
删除audio模块夹帐动连线
删除audio模块夹帐动连线
VCU配置信息
HDMI时钟构造图
- END -






