MyFPGA Forum

标题: 【开源项目介绍】DE10-Nano的HDMI显示 [打印本页]

作者: Doreen    时间: 2022-9-14 15:49
标题: 【开源项目介绍】DE10-Nano的HDMI显示
本帖最后由 Doreen 于 2022-9-14 15:50 编辑


1. GitHub开源项目

https://github.com/nhasbun/de10nano_vgaHdmi_chip

2.  项目介绍  


这是来自智利圣地亚哥的学员分享在GitHub上的一个开源项目。该项目旨在帮助新手在DE10-Nano上轻松部署第一个可工作的HDMI显示设计。项目基于Quartus Prime 17,内容包括:



接下来将简略介绍DE10-Nano开发板HDMI硬件设计框架和开源工程设计框架,以便大家能更轻松的学习这个开源项目。

3. DE10-Nano HDMI硬件设计框架

大家知道 TMDS(Transition Minimized Differential Signaling) 是 HDMI 传输的基础。DE10-Nano开发板板载Analog Devices的ADV7513芯片,它能够直接将FPGA 内部的RGB 并行信号转换为TMDS信号输出给HDMI接口进行显示。



所以我们无需在FPGA 代码里面去实现TMDS算法,只需将FPGA内产生的 R G B 数据并行发送给ADV7513, ADV7513 会将这些并行数据编码为串行数据,再转成差分信号传出给HDMI接口即可。换句话说,ADV7513芯片能轻松让您的设计从普通VGA兼容到HDMI 1.4。

4. 开源工程设计框架  

该设计主要是在连接到DE10-Nano的HDMI 显示器上显示红绿蓝三色,通过DE10-Nano上的开关(SW)进行颜色切换。这里主要包括一个VGA数据输出模块vgaHdmi.v和一个配置ADV7513寄存器的模块I2C_HDMI_Config.v。vgaHdmi.v模块产生VGA数据经过ADV7513芯片自动转化为串行的带TMDS算法的差分数据输出给HDMI显示器进行显示。每次启动时,ADV7513需通过I2C_HDMI_Config.v模块进行配置才能正常工作。

其实,这里的I2C_HDMI_Config.v模块是学员直接移植了友晶科技随板参考案例 DE10-Nano_v.x.x.x_HWrevC_SystemCD\Demonstrations\FPGA\HDMI_TX 里面的I2C控制代码,关于该代码的解读可以参考笔记:
https://www.cnblogs.com/DoreenLiu/p/16480274.html[/url](ADV7513芯片控制解读)
https://www.cnblogs.com/DoreenLiu/p/16661299.html[/url](基于FPGA控制的ADV7513芯片的I2C代码解析)

5. 测试结果

先编译工程生成sof文件,然后连接HDMI显示器到DE10-Nano开发板并对开发板上电,最后下载sof文件。

1. 只将SW0往上拨,HDMI显示器显示红色;

2. 只将SW1往上拨,HDMI显示器显示绿色;

3. 只将SW2往上拨,HDMI显示器显示蓝色。



作者: Doreen    时间: 2022-9-14 15:51
推文:https://mp.weixin.qq.com/s?__biz ... 4&lang=zh_CN#rd




欢迎光临 MyFPGA Forum (http://www.myfpga.org/discuz/) Powered by Discuz! X3