HDMI 直通 ILA 调试实验

FPGA教程学习

第十四章 HDMI 直通 ILA 调试实验


文章目录


前言

HDMI 输入直通到 HDMI 输出的显示,完成一个简单的 HDMI 输入输出检测。


实验原理

开发板 HDMI 输出接口芯片使用 ADV7511,HDMI 输入芯片采用 ADV761,可以把输入的数据通过输出直接发送出去。

程序设计

教程上说的很简单,不看I2C的话还是很简单的,只使用了几个寄存器。

大概代码如下

c 复制代码
reg 		vin_hs_d0;
reg 		vin_vs_d0;
reg 		vin_de_d0;
reg[23:0] 	vin_data_d0;
reg 		vin_hs_d1;
reg 		vin_vs_d1;
reg 		vin_de_d1;
reg[23:0] 	vin_data_d1;
(* MARK_DEBUG="true" *)reg 		vin_hs_d2;
(* MARK_DEBUG="true" *)reg 		vin_vs_d2;
(* MARK_DEBUG="true" *)reg 		vin_de_d2;
(* MARK_DEBUG="true" *)reg[23:0] 	vin_data_d2;

assign vout_clk = vin_clk;
assign vout_hs = vin_hs_d2;
assign vout_vs = vin_vs_d2;
assign vout_de = vin_de_d2;
assign vout_data = vin_data_d2;
assign rst_n = locked;
assign vin_nreset = locked;

always@(posedge vin_clk)
begin
    vin_hs_d0 <= vin_hs;
    vin_vs_d0 <= vin_vs;
    vin_de_d0 <= vin_de;
    vin_data_d0 <= vin_data;
    vin_hs_d1 <= vin_hs_d0;
    vin_vs_d1 <= vin_vs_d0;
    vin_de_d1 <= vin_de_d0;
    vin_data_d1 <= vin_data_d0; 
    
    vin_hs_d2 <= vin_hs_d1;
    vin_vs_d2 <= vin_vs_d1;
    vin_de_d2 <= vin_de_d1;
    vin_data_d2 <= vin_data_d1;   
end

实验过程

刚好电脑显卡有多的HDMI输出,接开发板的HDMI输入,开发板的HDMI输出再接一个显示器。

加载程序后电脑会识别到一个显示设备,可以使用扩展桌面。在显示器生会显示电脑的图像,注意这个图像是经过fpga转了一道的。

图像显示效果很好,没有异常。

实验尝试

视频信息和数据不经过三级触发器会怎么样?

这里注释掉原来触发器部分的代码,更改为下列代码。

c 复制代码
assign vout_hs = vin_hs;
assign vout_vs = vin_vs;
assign vout_de = vin_de;
assign vout_data = vin_data;

最后输出的显示屏效果是这样的,有许多地方和实际不一样,显示视频的话会更明显。为什么,这就是亚稳态吗?


总结

本实验通过将HDMI解码数据送往编码数据芯片,实现了将输入图像直接输出的效果。

TODO

  1. 了解亚稳态。
  2. 解释图像异常的原因。
  3. 掌握使用代码调试的方法。
相关推荐
YYRAN_ZZU2 小时前
Lattice 自定义IP业务逻辑核
嵌入式硬件·fpga开发
FPGA小徐5 小时前
FPGA FIFO一篇完整解释
fpga开发
I'm a winner14 小时前
【IP核】 Xilinx FPGA LVDS 高速接口,含验证工程与板级测试用例
tcp/ip·fpga开发·测试用例
I'm a winner15 小时前
基于Xilinx FPGA的LVDS高速串行通信系统 - 完整源码解决方案(一)(文末附源码)
fpga开发
国科安芯17 小时前
航天器多路并联大功率电源系统设计与ASP4644均流特性分析
单片机·嵌入式硬件·fpga开发·安全性测试
techdashen2 天前
从网络栈继续往下:micro:bit、2.4GHz、调制方式,以及一个不太靠谱但很有趣的想法
网络·fpga开发
FPGA小徐2 天前
FIR 数字滤波器 --verilog设计实现
fpga开发
zlinear数据采集卡2 天前
从协议解析到波形实时显示:硬核拆解ZLinear采集卡上位机软件的开发架构
arm开发·单片机·嵌入式硬件·fpga开发·架构·开源
pcjiushizhu2 天前
ModelSim 仿真时 Simulate 无反应或只显示 Loading 的解决方法:网卡问题排查
fpga开发
FPGA小迷弟2 天前
vivado中的AXI Interconnect到底应该怎么用,他的底层原理是什么,一篇文档全部理清楚!!!
网络协议·tcp/ip·fpga开发·verilog·fpga