fpga-02 发表于 2022-10-17 11:28:56

RGB 转 HDMI实现2k30传输

本帖最后由 fpga-02 于 2022-10-17 13:13 编辑

软件版本:vitis2021.1(vivado2021.1)操作系统:WIN10 64bit硬件平台:适用XILINX A7/K7/Z7/ZU/KU系列FPGA登录“米联客”FPGA社区-www.uisrc.com视频课程、答疑解惑!1概述
本实验通过FPGA内部资源实现HDMI协议,使用HDMI直接驱动HDMI接口显示器,实现HDMI输出2k@30fps的视频图像。
2系统框图


3顶层调用接口源码
`timescale 1 ps / 1 ps

module display(
inputclk_i,
output HDMI_CLK_P,
output HDMI_CLK_N,
output HDMI_TX_P,
output HDMI_TX_N
);

wire vid_rst,vid_clk,vid_vs,vid_hs,vid_de;
wire pclkx1,pclkx5,locked;
wire       rgb_r ,rgb_g ,rgb_b;
assign vid_clk = pclkx1;
assign vid_rst = locked;

clk_wiz_0 clk_wiz0_inst(.clk_out1(pclkx1),.clk_out2(pclkx5),.locked(locked),.clk_in1(clk_i));

uihdmitx #
(
.FAMILY("7FAMILY")                        
)
uihdmitx_inst
(
.RSTn_i(locked),
.HS_i(vid_hs),
.VS_i(vid_vs),
.VDE_i(vid_de),
.RGB_i({rgb_r,rgb_g,rgb_b}),
.PCLKX1_i(pclkx1),
.PCLKX2_5_i(1'b0),
.PCLKX5_i(pclkx5),
.TMDS_TX_CLK_P(HDMI_CLK_P),
.TMDS_TX_CLK_N(HDMI_CLK_N),
.TMDS_TX_P(HDMI_TX_P),
.TMDS_TX_N(HDMI_TX_N)
);

uivtc#
(
.H_ActiveSize(2560),
.H_SyncStart(2560+30),
.H_SyncEnd(2560+30+50),
.H_FrameSize(2560+30+50+80),
.V_ActiveSize(1440),

.V_SyncStart(1440+3),
.V_SyncEnd (1440+3+5),
.V_FrameSize(1440+3+5+23)
)
uivtc_inst
(
.vtc_rstn_i(vid_rst),
.vtc_clk_i(vid_clk),
.vtc_vs_o(vid_vs),
.vtc_hs_o(vid_hs),
.vtc_de_o(vid_de)      
);

uitpg uitpg_inst      
(
.tpg_rstn_i(vid_rst),
.tpg_clk_i(vid_clk),
.tpg_vs_i(vid_vs),
.tpg_hs_i(vid_hs),
.tpg_de_i(vid_de),
.tpg_vs_o(),
.tpg_hs_o(),
.tpg_de_o(),      
.tpg_data_o({rgb_r,rgb_g,rgb_b})               
);

endmodulePLL 时钟设置对于 PLL 的设置需要产生 1:5 的时钟,对于演示 demo 中 2560x1440的设置如下:
4:VTC 参数设置具体内容阅读《3-1-01米联客2022版ZYNQ FPGA课程基础篇》 第22课相关内容,这里针对 120M 的 PCLK 参数如下:.H_ActiveSize(2560),
.H_SyncStart(2560+30),
.H_SyncEnd(2560+30+50),
.H_FrameSize(2560+30+50+80),
.V_ActiveSize(1440),
.V_SyncStart(1440+3),
.V_SyncEnd (1440+3+5),
.V_FrameSize(1440+3+5+23)


5:下载演示fpga 工程的创建过程参考基础篇,下载程序前,先确保 FPGA 工程已经编译。这里以MK7325FB 开发板 作为演示 demo。请确保下载器和开发板已经正确连接,并且开发板已经上电(注意 JTAG 端子不支持热插拔,而 USB 接口支持, 所以在不通电的情况下接通好 JTAG 后,再插入USB 到电脑,之后再上电,以免造成 JTAG IO 损坏)
显示器循环输出测试图形






bzyomvtj 发表于 2023-5-3 13:30:04

"Sometime ever, sometime never. 相聚有时,后会无期。,福彩3DBe cheerful and hopeful. 乐观向上,充满希望。
Make each day your masterpiece. 让每一天成为你的杰作。 体彩排列3,Only they who fulfill their duties in everyday matters will fulfill them on great occasions. 只有在日常生活中尽责的人才会在重大时刻尽责。
Genius is an infinite capacity for taking pains. 所谓的天才是不断地承受痛楚。 快乐8,Quitters never win and winners never quit. 退缩者永无胜利,胜利者永不退缩No fear of words, no fear of years. 不惧人言,不畏岁月。,彩票app"


云淡海阔 发表于 2023-7-26 13:39:28

4K30HZ 的 IO 带宽 差不多1.5G 已经超出 K系列的 IO带宽了吧

云淡海阔 发表于 2023-7-26 13:40:31

看错了 是2k
页: [1]
查看完整版本: RGB 转 HDMI实现2k30传输