FPGA

您所在的位置:网站首页 hdmi转vga显示器超频 FPGA

FPGA

2024-06-27 03:30:14| 来源: 网络整理| 查看: 265

写在前面

HDMI接口很早之前就想调试了,由于没有时间,就拖到了现在,而且毕业设计也是和视频处理系统有关,就趁这个机会把这个接口调试下。

开发环境

vivado 18.3 pynq - z2

HDMI简介

高清晰度多媒体接口(英文:High Definition Multimedia Interface,HDMI)是一种数字化视频/音频接口技术,是适合影像传输的专用型数字化接口,其可同时传送音频和影像信号,最高数据传输速度为2.25GB/s,同时无需在信号传送前进行数/模或者模/数转换。 在这里插入图片描述

HDMI接口设计说明

HDMI输出驱动接口在FPGA方面应用时,主要有两种方式: 一种是采用HDMI( DVI)编码芯片。这种操作只需要对对应芯片进行操作配置即可实现功能。 在这里插入图片描述

另外一种方式就是使用FPGA进行编写,由 IO 模拟方式实现。这里贴出我所使用的pynq-z2的对应模块的电路图并给出板子对应的信号引脚分配信息。 在这里插入图片描述

##HDMI Tx set_property -dict { PACKAGE_PIN L17 IOSTANDARD TMDS_33 } [get_ports { TMDS_Clk_n }]; #IO_L11N_T1_SRCC_35 Sch=hdmi_tx_clk_n set_property -dict { PACKAGE_PIN L16 IOSTANDARD TMDS_33 } [get_ports { TMDS_Clk_p }]; #IO_L11P_T1_SRCC_35 Sch=hdmi_tx_clk_p set_property -dict { PACKAGE_PIN K18 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_n[0] }]; #IO_L12N_T1_MRCC_35 Sch=hdmi_tx_d_n[0] set_property -dict { PACKAGE_PIN K17 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_p[0] }]; #IO_L12P_T1_MRCC_35 Sch=hdmi_tx_d_p[0] set_property -dict { PACKAGE_PIN J19 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_n[1] }]; #IO_L10N_T1_AD11N_35 Sch=hdmi_tx_d_n[1] set_property -dict { PACKAGE_PIN K19 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_p[1] }]; #IO_L10P_T1_AD11P_35 Sch=hdmi_tx_d_p[1] set_property -dict { PACKAGE_PIN H18 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_n[2] }]; #IO_L14N_T2_AD4N_SRCC_35 Sch=hdmi_tx_d_n[2] set_property -dict { PACKAGE_PIN J18 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_p[2] }]; #IO_L14P_T2_AD4P_SRCC_35 Sch=hdmi_tx_d_p[2] set_property -dict { PACKAGE_PIN R19 IOSTANDARD LVCMOS33 } [get_ports { HDMI_OEN[0] }]; #IO_0_34 Sch=hdmi_tx_hpdn

HDMI和DVI(Digital Visual Interface)数字视频接口这两种数字视频传输标准的要求几乎完全相同,并同时处理一组高频和低频信号。这两种标准均采用TMDS(最小跳变差分信号又称最小化传输差分信号)技术来传输数据的高频(视频)部分。 HDMI/DVI数字视频接口的设计思想采用了DVI用于至数字显示器的高速数字连接。DVI采用了TMDS技术来传输数据的高频(视频)信号(见图1红色块所示)。 在这里插入图片描述 要实现HDMI和DVI系统中的“即插即用”功能,源端(通常是一台电脑、DVD播放器或游戏机)和接收端(通常是监视器或接收机)必须连接起来。HDMI 和DVI借用VESA (视频电子标准协会)的开放标准,采用DDC(数字显示通道)、一个称为HPD的新信号(热插拔检测)

标准HDMI接口

在这里插入图片描述

TYPE A,包括19个PIN,主要是4对差分信号线

TMDS clock+TMDS clock-TMDS data0+TMDS data0-TMDS data1+TMDS data1-TMDS data2+TMDS data2- TMDS(最小跳变差分信号)

最小化传输差分信号(TMDS)作为电气电平的标准。被应用于发送数字视频接口(DVl)及高清晰度多媒体接口(HDMl)的数据。其设计考虑因素之包括:

对内偏斜(Intra-Pai rSkew)。在给定的一对差分信号上,真(true)信号及其互补信号之间的时间差应尽可能的小;

残余抖动(Residual Jitter)。测试点与信号源之间所测量到的抖动数量的差异。可接受的最大残余抖动等价于发射机与接收机之间最小的抖动预计量(budget);

静电放电(ESD)。外部连接器因曝露于外界,因而更易受到静电放电的影响。更高的静电放电率可提供更良好的保护。

TMDS 包括3个RGB数据和1个时钟,共计4个通道(称为1个TMDS连接或Single-link)的传输回路。TMDS是把8位的RGB视频数据变换成10 位转换最小化、DC平衡的数据,再完成数据的串行处理;接收端设备对串行数据解串行变成并行数据,再转换成8位视频信号。因此,传输数字RGB数据需要3 个转换最小化差分采样信号构成一个TMDS连接。

HDMI系统框图

在这里插入图片描述 HDMI传输由三组TMDS通道和一组TMDS clock通道组成,TMDS clock的运行频率是video信号的pixel频率,在每个cycle,每个TMDS data通道发送10bit数据。 在这里插入图片描述

项目设计

整体的项目结构(因为也只是验证别人写好的程序为后续的毕设做准备,就没有直接移植的别人写好的程序): 在这里插入图片描述

hdmi的驱动这里使用的是迪芝伦的github上面开源的ip,链接如下: hdmi ip链接 ip系统框图: 在这里插入图片描述 添加ip进入工程,后设置时钟ip的参数 在这里插入图片描述

彩条测试文件 module color_bar( input clk, //像素时钟输入,1280x720@60P的像素时钟为74.25 input rst, //复位,高有效 output hs, //行同步、高有效 output vs, //场同步、高有效 output de, //数据有效 output[7:0] rgb_r, //像素数据、红色分量 output[7:0] rgb_g, //像素数据、绿色分量 output[7:0] rgb_b //像素数据、蓝色分量 ); /*********视频时序参数定义******************************************/ parameter H_ACTIVE = 16'd1280; //行有效长度(像素时钟周期个数) parameter H_FP = 16'd110; //行同步前肩长度 parameter H_SYNC = 16'd40; //行同步长度 parameter H_BP = 16'd220; //行同步后肩长度 parameter V_ACTIVE = 16'd720; //场有效长度(行的个数) parameter V_FP = 16'd5; //场同步前肩长度 parameter V_SYNC = 16'd5; //场同步长度 parameter V_BP = 16'd20; //场同步后肩长度 //parameter H_FP = 16'd88; //parameter H_SYNC = 16'd44; //parameter H_BP = 16'd148; //parameter V_ACTIVE = 16'd1080; //parameter V_FP = 16'd4; //parameter V_SYNC = 16'd5; //parameter V_BP = 16'd36; parameter H_TOTAL = H_ACTIVE + H_FP + H_SYNC + H_BP;//行总长度 parameter V_TOTAL = V_ACTIVE + V_FP + V_SYNC + V_BP;//场总长度 /*********彩条RGB color bar颜色参数定义*****************************/ parameter WHITE_R = 8'hff; parameter WHITE_G = 8'hff; parameter WHITE_B = 8'hff; parameter YELLOW_R = 8'hff; parameter YELLOW_G = 8'hff; parameter YELLOW_B = 8'h00; parameter CYAN_R = 8'h00; parameter CYAN_G = 8'hff; parameter CYAN_B = 8'hff; parameter GREEN_R = 8'h00; parameter GREEN_G = 8'hff; parameter GREEN_B = 8'h00; parameter MAGENTA_R = 8'hff; parameter MAGENTA_G = 8'h00; parameter MAGENTA_B = 8'hff; parameter RED_R = 8'hff; parameter RED_G = 8'h00; parameter RED_B = 8'h00; parameter BLUE_R = 8'h00; parameter BLUE_G = 8'h00; parameter BLUE_B = 8'hff; parameter BLACK_R = 8'h00; parameter BLACK_G = 8'h00; parameter BLACK_B = 8'h00; reg hs_reg;//定义一个寄存器,用于行同步 reg vs_reg;//定义一个寄存器,用户场同步 reg hs_reg_d0;//hs_reg一个时钟的延迟 //所有以_d0、d1、d2等为后缀的均为某个寄存器的延迟 reg vs_reg_d0;//vs_reg一个时钟的延迟 reg[11:0] h_cnt;//用于行的计数器 reg[11:0] v_cnt;//用于场(帧)的计数器 reg[11:0] active_x;//有效图像的的坐标x reg[11:0] active_y;//有效图像的坐标y reg[7:0] rgb_r_reg;//像素数据r分量 reg[7:0] rgb_g_reg;//像素数据g分量 reg[7:0] rgb_b_reg;//像素数据b分量 reg h_active;//行图像有效 reg v_active;//场图像有效 wire video_active;//一帧内图像的有效区域h_active & v_active reg video_active_d0; assign hs = hs_reg_d0; assign vs = vs_reg_d0; assign video_active = h_active & v_active; assign de = video_active_d0; assign rgb_r = rgb_r_reg; assign rgb_g = rgb_g_reg; assign rgb_b = rgb_b_reg; always@(posedge clk or posedge rst) begin if(rst) begin hs_reg_d0


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭