zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)

参考:

1、【ZYNQ-7000开发之三】ZYNQ平台的HDMI驱动测试

2、   ADV7511 Xilinx Evaluation Boards Reference Design

  


PC平台:WINDOWS 10 64位

Xilinx设计开发套件:Xilinx_vivado_sdk_2016.3(之前用的是2014.2,后面的截图还是2014的,就没有一一改过来了)


一、下载HDL参考设计代码,包括库和项目文件

下载地址:https://github.com/analogdevicesinc/hdl

下载之前先确定好分支版本,查看release note,因为我是vivado 2016.3,所以选择最接近的版本hdl_2016_r2版本,如果是vivado 2015,可选择hdl_2015_r2,2014则选择hdl_2014_r2,

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第1张图片

解压目录如下

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第2张图片


二、要进行HDMI的输出测试,还需要PS端的测试程序,可以在ADV7511 Xilinx Evaluation Boards Reference Design页面找到no-OS版的下载链接,包括transmitter library和测试代码

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第3张图片

三、编译HDL库,需要先编译如下库

  • hdl-2016_r2/library/axi_clkgen
  • hdl-2016_r2/library/axi_hdmi_tx
  • hdl-2016_r2/library/axi_i2s_adi
  • hdl-2016_r2/library/axi_spdif_tx
  • hdl-2016_r2/library/util_i2c_mixer

编译方法:比如编译axi_clkgen,打开vivado tcl shell,进入 hdl-2016_r2/library/axi_clkgen目录,执行source axi_clkgen_ip.tcl

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第4张图片

编译成功后输出如下信息

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第5张图片

按照此方法依次编译上面列出的几个IP库

注意:如果出现要求的vivado版本不一致时,需要修改library/scripts/adi_ip.tcl文件

# check tool version

if {![info exists REQUIRED_VIVADO_VERSION]} {
  set REQUIRED_VIVADO_VERSION "2016.3"
}


四、构建ADV7511项目,打开vivado gui,在tcl命令行里进入到hdl-2016_r2/projects/adv7511/zed目录,执行tcl脚本进行构建:source system_project.tcl

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第6张图片

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第7张图片

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第8张图片

构建完成之后生成的block design图

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第9张图片

然后在file菜单下export出hardware,zed目录下可以看到生成的目录文件,

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第10张图片

五、在vivado菜单file中启动SDK,Launch SDK

      1、 新建一个application project

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第11张图片

然后输入project name点击下一步,选择Empty Application, Finish


zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第12张图片

2打开E:\Xilinx\zedboard\hdl-2016_r2\hdl-2016_r2\projects\adv7511\zed\adv7511_zed.sdk\hdmi\src目录,把下载好的测试程序文件即E:\Xilinx\zedboard\no-OS-master\no-OS-master\adv7511\zed目录下的所有文件拷贝过来;在SDK界面右键hdmi项目,执行刷新,会出现很多错误,因为缺少头文件和链接库

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第13张图片

3、设置头文件路径和库路径,右键hdmi项目设置项目属性,添加头文件路径,库文件路径和链接参数,设置完成后SDK自动进行编译,上一步出现的error就没有了

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第14张图片

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第15张图片

如果出现uses VFP register arguments, zed_hdmi_test.elf does not错误,需要修改工程配置,

右键单击工程->properties->C/C++build->Setting->ARM v7 gcc compiler(和ARM v7 gcc linker)->Miscellaneous  把-mfloat-abi的值改成softfp

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第16张图片

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第17张图片

另外BSP项目也需要修改,右键BSP->Board Support Package Setting

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第18张图片

六、把程序下载到zed板上进行测试,连接好显示器,串口,和JTAG,第一步先对FPGA进行program,

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第19张图片


执行run即可在显示器上看到测试图片

zynq-7000学习笔记(四)——Zedboard HDMI核的构建和输出显示测试(2017/6/9补充修改)_第20张图片




hdl-2014_r2和测试代码

你可能感兴趣的:(Zynq-7000)