本次实验主要是为之后实现AD以及高速AD实验做铺垫,主要是IP核的调用,COLOR模块用的黑金的。TMDS的原理部分不是实验的重点,之后也会采用IP核(RGB—>DVI)的形式。本次实验的顶层模块主要包含三个模块,色彩模块,时钟模块,RGB转DVI模块。
1、调用时钟的IP核实现所需时钟

2、调用RGB转DVI的IP核

3、调用COLOR模块
4、编辑顶层模块

module HDMI_OUT_DES(input sys_clk,output hdmi_oen,output TMDS_clk_n,output TMDS_clk_p,output [2:0]TMDS_data_n,output [2:0]TMDS_data_p
);
wire video_clk;
wire video_clk_5x;
wire video_hs;
wire video_vs;
wire video_de;
wire[7:0] video_r;
wire[7:0] video_g;
wire[7:0] video_b;COLOR hdmi_color_bar(.clk(video_clk),.rst(1'b0),.hs(video_hs),.vs(video_vs),.de(video_de),.rgb_r(video_r),.rgb_g(video_g),.rgb_b(video_b)
);vedio_clock video_clock_m0
(// Clock in ports.clk_in1(sys_clk),// Clock out ports.clk_out1(video_clk),.clk_out2(video_clk_5x),// Status and control signals.reset(1'b0),.locked());rgb2dvi_0 rgb2dvi_m0 (// DVI 1.0 TMDS video interface.TMDS_Clk_p(TMDS_clk_p),.TMDS_Clk_n(TMDS_clk_n),.TMDS_Data_p(TMDS_data_p),.TMDS_Data_n(TMDS_data_n),.oen(hdmi_oen),//Auxiliary signals .aRst_n(1'b1), //-asynchronous reset; must be reset when RefClk is not within spec// Video in.vid_pData({video_r,video_g,video_b}),.vid_pVDE(video_de),.vid_pHSync(video_hs),.vid_pVSync(video_vs),.PixelClk(video_clk),.SerialClk(video_clk_5x)// 5x PixelClk
); endmodule

5、编辑约束文件

set_property PACKAGE_PIN W17 [get_ports {sys_clk}]
set_property IOSTANDARD LVCMOS33 [get_ports {sys_clk}]
create_clock -period 20.000 -waveform {0.000 10.000} [get_ports sys_clk]
set_property IOSTANDARD TMDS_33 [get_ports TMDS_clk_n]
set_property PACKAGE_PIN Y18 [get_ports TMDS_clk_p]
set_property IOSTANDARD TMDS_33 [get_ports TMDS_clk_p]
set_property IOSTANDARD TMDS_33 [get_ports {TMDS_data_n[0]}]
set_property PACKAGE_PIN T22 [get_ports {TMDS_data_p[0]}]
set_property IOSTANDARD TMDS_33 [get_ports {TMDS_data_p[0]}]
set_property IOSTANDARD TMDS_33 [get_ports {TMDS_data_n[1]}]
set_property PACKAGE_PIN T21 [get_ports {TMDS_data_p[1]}]
set_property IOSTANDARD TMDS_33 [get_ports {TMDS_data_p[1]}]
set_property IOSTANDARD TMDS_33 [get_ports {TMDS_data_n[2]}]
set_property PACKAGE_PIN Y20 [get_ports {TMDS_data_p[2]}]
set_property IOSTANDARD TMDS_33 [get_ports {TMDS_data_p[2]}]
set_property PACKAGE_PIN W20 [get_ports hdmi_oen]
set_property IOSTANDARD LVCMOS33 [get_ports hdmi_oen]

注意时钟信号的引脚约束,放在MRCC的P引脚
6、实现,下载比特流文件

(。。。板子还是没到,后续补充实际效果吧)

FPGA第三节:IP调用实现HDMI输出相关推荐

  1. PYNQ-Z2 HDMI输出图形实验

    在本文中作者使用Xilinx的IP搭建一个HDMI输出图形的平台.在这个平台上设计目标是输出800*600像素的图像,本实验没有使用DDR缓存图像数据.本次实验使用到的工具: 开发板:PYNQ-Z2: ...

  2. FPGA中ROM IP与RAM IP核配置与调用

    目录 一.ROM IP核 1.简介 2.创建立初始化文件 3.配置 4.调用 4.1 整体设计 4.2 编写rtl代码: 4.3 仿真验证 二.RAM IP核 1.简介 2.配置 3.调用 3.1 整 ...

  3. ZYNQ HDMI输出实验——FPGA Vitis篇

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1. 前言 1.1 HDMI介绍 1.2 TMDS介绍 1.3 HDMI传输周期 2. Vivado工程的编写 3. Vit ...

  4. ZYNQ(1): PL端HDMI输出

    用的开发板是microzus,因为ZYNQ PL 侧的 IO 结构是支持 TMDS,可以用 FPGA 直接驱动 HDMI 信号.HDMI显示主要是用的IP核实现的,这个不是官方的,所以需要另外下载,在 ...

  5. 解锁HLS开发|Demo(1):ARM动态配置FPGA的自定义IP

    微信公众号:佛系入门ZYNQ图像处理 "狂浪是一种态度" "八卦HLS" 本次Demo目的及功能 本次Demo原理分析 HLS开发->源文件设计 HLS开 ...

  6. 【FPGA】SRIO IP核系统总览以及端口介绍(二)(I/O Port 含义介绍)

    上篇博文:[FPGA]SRIO IP核系统总览以及端口介绍(一)(User Interfaces 之 I/O Port)根据数据手册PG007,介绍到了逻辑层接口的IO口,今天想研究下,这些端口如何使 ...

  7. 【FPGA】SRIO IP核系统总览以及端口介绍(一)(User Interfaces 之 I/O Port)

    系统总览 RapidIO标准分为三层:逻辑,传输和物理. 逻辑层定义整体协议和数据包格式. 这是端点启动和完成事务(transaction)所必需的信息. 传输层提供数据包从端点移动到端点所需的路由信 ...

  8. Altera FPGA 储存单元IP核之RAM、FIFO

    一.储存单元简介 1.ROM 只读存储器,系统上电后数据就被写入ROM,运行过程中只能从ROM中读取数据,而不能改变ROM中的数值. 2.RAM 随机存取储存器,可以随时把数据写入任一指定地址的储存单 ...

  9. Android HDMI输出设置流程

    Android的Surface系统定义了一个DisplayType的枚举,其中有代表手机屏幕的DISPLAY_PRIMARY和代表HDMI等外接设备的DISPLAY_EXTERNAL,还有用于Wi-F ...

最新文章

  1. JQuery EasyUi控件值的获取与设置
  2. linux配置qt使用git,Linux操作系统下安装使用说明.txt
  3. 云计算的8个常见用途
  4. 推荐一款生成SQL插入语句的软件
  5. jsp文件上传_文件上传
  6. hihocoder 1183 割点和割边
  7. 每天至少保证4个小时的学习时间
  8. 洛谷P3676 小清新数据结构题(动态点分治)
  9. 想要玩转Mac?试试这几款神器吧!
  10. openstack pike版本安装笔记6(dashboard组件,控制台)
  11. AndroidStudio与eclipse打包的时候报错。Error:(4) Error: ssdk_instapager_login_html is not translated in......
  12. 实体映射最强工具类:MapStruct 真香!
  13. html设置文字在背景图上,css如何实现文字在背景图片之上 css实现文字在背景图片之上代码...
  14. HTTP 和 DNS 原理概念了解 ;
  15. n79登陆微信显示服务器繁忙,不支持n79就算“阉割”?5G手机全网通争议又来了...
  16. Enigma机密码加密解密的实现
  17. 【转载】基于Office Online Server 2016 的office在线编辑
  18. [知识点整理]中科院/国科大 自然语言处理nlp 期末考试知识点整理
  19. excel中整列填充数据方法
  20. 厂房规划物流仿真之sketchUP(SU)

热门文章

  1. 嵌入式 linux ramdisk 保存文件,制作嵌入式linux文件系统(ramdisk,cramfs,squashfs)...
  2. Python学习工具第五期 — 免费使用,无须激活下载安装Pycharm教程
  3. LeetCode 07: T48. 旋转图像 (中等); T54. 螺旋矩阵(中等); T240. 搜索二维矩阵 II (中等)
  4. 微软2017校招笔试题2 composition
  5. 2015 SCI期刊影响因子出炉
  6. ajax 传对象数组到后台
  7. 关于角色移动的几种方法
  8. format()函数的用法
  9. Spring Boot 1.0 升级到 2.0 的时候遇到一些问题
  10. 圣诞节快到了,教大家用Python画一个简单的圣诞树和烟花,送给那个她