altera家的hdmi 2.1那些事(1)
hdmi 2.1和之前的却别就是增加了frl模式,在frl模式下,增加了training流程。
话不多说,直接那开发板进行测试了。
拿到了开发板是Arria 10 FPGA开发套件。
使用quartus 19.4/20.2的平台
直接新建一个工程,然后打开ipcore
路劲:Interface Protocols-->Audio & Video --> HDMI Intel FPGA IP
选择frl和Transmitter模式。
pixels per clock这个参数,当你勾选frl就是8,反之是2.
Transceiver width这个参数,当你勾选frl就是40,反之是20.
选择Design Example ,
1、勾选Synthesis。
2、generate file format中选择verilog.
3、select board 中选择Arria 10 GX FPGA Development Kit.
选中完成后,点击右上角的Generate Example Design按钮。
然后选中文件夹,就可以生成官方的hdmi ipcore的例程了。
生成例程之后,进行编译,是能通过编译,但是例程并不能满足我的验证要求。我的验证要求是:直接用hdmi_tx出视频,即要做一下处理。
1、需要删除掉hdmi接收端的代码,即是删除掉a10_hdmi21_frl_demo中的hdmi_rx_top模块,并删除有关hdmi_rx的引脚。
2、删除rxtx_link模块中与rx相关的引脚。
3、删除掉与tx相关的audio,aux等辅助数据。
4、并自己产生视频时序和时钟.视频时序是在rxtx_link模块中产生,就用了官方自带的模块。同时视频时钟用一个pll产生。
5、在顶层模块中更改引脚命名。
6、在qsf文件或者pin planner中修改引脚定义。
更改之后,
出现了这样的报错一些IOPLL之类的错误。
打开qsf文件,屏蔽相关的约束就可以了,然后就编译成功了。