news 2026/8/10 1:06:17

Altera系列FPGA实现HDMI2.0,基于Transceiver Native PHY高速收发器,支持4K60帧分辨率,提供2套工程源码和技术支持

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Altera系列FPGA实现HDMI2.0,基于Transceiver Native PHY高速收发器,支持4K60帧分辨率,提供2套工程源码和技术支持

目录

  • 1、前言
    • 创作背景
    • 工程概述
    • 免责声明
  • 2、相关方案推荐
    • 我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目
    • 我已有的4K/8K视频处理解决方案
    • 我这里已有的 GT 高速接口解决方案
    • 本方案在Xilinx系列FPGA上的应用
  • 3、详细设计方案
    • 设计框图
    • FPGA内部彩条
    • Transceiver Native PHY高速收发器
    • NB7NQ621M驱动器
    • HDMI2.0输出
    • 工程源码架构
  • 4、工程源码1详解-->Arria-10,单路HDMI2.0输出版本
  • 5、工程源码2详解-->Stratix-V,双路HDMI2.0输出版本
  • 6、上板调试验证并演示
    • 准备工作
    • HDMI2.0视频发送演示
  • 7、工程源码获取

Altera系列FPGA实现HDMI2.0,基于Transceiver Native PHY高速收发器,支持4K60帧分辨率,提供2套工程源码和技术支持

QSFP-HDMI2.0

1、前言

创作背景

FPGA实现4K视频收发现状:

目前Xilinx系列FPGA提供了多种4K视频收发方案;
对于纯FPGA而言,需要用到GT高速接口资源实现编解码,但要求K7及其以上系列FPGA,以HDMI2.0为例,Xilinx官方提供了基于Video PHY Controller为核心的一整套HDMI2.0收发方案,此外,还可以直接使用GT高速接口IP核配置为GT-HDMI编解码模式,或者配置为DP编解码模式;对于Zynq系列FPGA而言,既可以使用PL端的GT高速接资源做4K视频收发,也可以使用PS端的DP外设做4K视频收发,这种方案功能完善,包含了HDMI2.0接收和发送的完整开发案例,但设计难度较大,需要软件区配置一大堆IP,且官方给的DEMO流程及其繁琐,移植修改难度都不小;第二种方案是直接使用GTY之类的高速接口走HDMI协议,这种方案功能不太完善,目前只有HDMI发送有成熟案例,但有点是并不需要软件配置,只需要用户逻辑即可完成后设计,多余不擅长软件和异构FPGA的开发者来说较为友好;本博主擅长Xilinx系列FPGA实现HDMI2.0视频收发方案设计。

目前Altera系列FPGA实现提供了多种4K视频收发方案;
目前Altera系列FPGA实现4K视频收发方案较为单一,主要还是依靠Transceiver Native PHY高速收发器,且只在Altera高端系列FPGA可用。

本设计基于Altera高端系列FPGA的Transceiver Native PHY高速收发器方案,最高支持3840x2160@60Hz;

工程概述

本设计基于Altera高端系列FPGA的Transceiver Native PHY高速收发器方案,最高支持3840x2160@60Hz;
视频输入源为纯verilog代码实现的彩条视频,该彩条视频支持1920x1080、2560x1440、3840x2160三种分辨率,可分别做1080P、2K、4K的HDMI2.0测试,通过顶层的parameter参数配置选择;彩条视频经过通道分配、加扰等处理后送入Altera官方提供的Transceiver Native PHY高速收发器IP核,配置为单工发送模式,主要完成HDMI2.0视频发送的物理层功能,即PCS+PMA,并以高速低压差分信号输出;然后HDMI2.0差分信号进去NB7NQ621M驱动芯片实现均衡处理和驱动增强;然后HDMI2.0差分信号直连HDMI2.0座子,或者通过板子的QSFP转HDMIHDMI2.0转换器输出;最后连上支持HDMI2.0的显示器显示即可;针对目前市面上主流的项目需求,本博客共设计了2套工程源码,详情如下:

现对上述2套工程源码做如下解释,方便读者理解:

工程源码1

开发板FPGA型号为Altera–>Arria 10–10AXF40AA;
视频输入源为纯verilog代码实现的彩条视频,该彩条视频支持1920x1080、2560x1440、3840x2160三种分辨率,可分别做1080P、2K、4K的HDMI2.0测试,通过顶层的parameter参数配置选择,默认选择3840x2160@60Hz的分辨率;彩条视频经过通道分配、加扰等处理后送入Altera官方提供的Transceiver Native PHY高速收发器IP核,配置为单工发送模式,主要完成HDMI2.0视频发送的物理层功能,即PCS+PMA,并以高速低压差分信号输出;然后HDMI2.0差分信号进去NB7NQ621M驱动芯片实现均衡处理和驱动增强;NB7NQ621M输出差分信号与板载的QSFP接口相连,所以板子无需HDMI2.0接口;然后使用本博主特有的QSFP转HDMIHDMI2.0转换器输出,输出分辨率默认为3840x2160@60Hz;最后连上支持HDMI2.0的显示器显示即可;本设计共使用1个QSFP光口,也就是只设计了1个HDMI2.0出书接口;当然,你也可以在板子上直接把NB7NQ621M芯片与HDMI2.0座子连接,这样就不需要QSFP光口转接了;
本设计使用Transceiver Native PHY高速收发器,适用于Altera高端系列FPGA实现HDMI2.0视频发送应用;

工程源码2

开发板FPGA型号为Altera–>Stratix V-- 5SGSMD5K2F40I3L;
视频输入源为纯verilog代码实现的彩条视频,该彩条视频支持1920x1080、2560x1440、3840x2160三种分辨率,可分别做1080P、2K、4K的HDMI2.0测试,通过顶层的parameter参数配置选择,默认选择3840x2160@60Hz的分辨率;彩条视频经过通道分配、加扰等处理后送入Altera官方提供的Transceiver Native PHY高速收发器IP核,配置为单工发送模式,主要完成HDMI2.0视频发送的物理层功能,即PCS+PMA,并以高速低压差分信号输出;然后HDMI2.0差分信号进去NB7NQ621M驱动芯片实现均衡处理和驱动增强;NB7NQ621M输出差分信号与板载的QSFP接口相连,所以板子无需HDMI2.0接口;然后使用本博主特有的QSFP转HDMIHDMI2.0转换器输出,输出分辨率默认为3840x2160@60Hz;最后连上支持HDMI2.0的显示器显示即可;本设计共使用1个QSFP光口,也就是只设计了1个HDMI2.0出书接口;当然,你也可以在板子上直接把NB7NQ621M芯片与HDMI2.0座子连接,这样就不需要QSFP光口转接了;
本设计使用Transceiver Native PHY高速收发器,适用于Altera高端系列FPGA实现HDMI2.0视频发送应用;

本博客详细描述了Altera系列FPGA基于Transceiver Native PHY高速收发器实现HDMI2.0视频收发的设计方案,工程代码可综合编译上板调试,可直接项目移植,适用于在校学生、研究生项目开发,也适用于在职工程师做学习提升,可应用于医疗、军工等行业的高速接口或图像处理领域;
提供完整的、跑通的工程源码和技术支持;
工程源码和技术支持的获取方式放在了文章末尾,请耐心看到最后;

免责声明

本工程及其源码即有自己写的一部分,也有网络公开渠道获取的一部分(包括CSDN、Xilinx官网、Altera官网以及其他开源免费获取渠道等等),若大佬们觉得有所冒犯,请私信批评教育;部分模块源码转载自上述网络,版权归原作者所有,如有侵权请联系我们删除;基于此,本工程及其源码仅限于读者或粉丝个人学习和研究,禁止用于商业用途,若由于读者或粉丝自身原因用于商业用途所导致的法律问题,与本博客及博主无关,请谨慎使用。。。

2、相关方案推荐

我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目

其实一直有朋友反馈,说我的博客文章太多了,乱花渐欲迷人,自己看得一头雾水,不方便快速定位找到自己想要的项目,所以本博文置顶,列出我目前已有的所有项目,并给出总目录,每个项目的文章链接,当然,本博文实时更新。。。以下是博客地址:
点击直接前往

我已有的4K/8K视频处理解决方案

我的主页有FPGA 4K/8K视频处专栏,该专栏有4K/8K视频处理,包括简单的4K/8K视频收发、4K/8K视频缩放、4K/8K视频拼接等等;以下是专栏地址:
点击直接前往

我这里已有的 GT 高速接口解决方案

我的主页有FPGA GT 高速接口专栏,该专栏有 GTP 、 GTX 、 GTH 、 GTY 等GT 资源的视频传输例程和PCIE传输例程,其中 GTP基于A7系列FPGA开发板搭建,GTX基于K7或者ZYNQ系列FPGA开发板搭建,GTH基于KU或者V7系列FPGA开发板搭建,GTY基于KU+系列FPGA开发板搭建;以下是专栏地址:
点击直接前往

本方案在Xilinx系列FPGA上的应用

本方案在Xilinx系列FPGA上的也有应用,之前专门写过一篇博客,博客地址链接如下:
点击直接前往

3、详细设计方案

设计框图

本设计使用的是Altera官方推荐的方案,方案大致如下:

FPGA内部彩条

视频输入源为纯verilog代码实现的彩条视频,该彩条视频支持1920x1080、2560x1440、3840x2160三种分辨率,可分别做1080P、2K、4K的HDMI2.0测试,通过顶层的parameter参数配置选择,默认选择3840x2160@60Hz的分辨率;FPGA内部彩条顶层接口如下:

FPGA内部彩条代码架构如下:

Transceiver Native PHY高速收发器

彩条视频经过通道分配、加扰等处理后送入Altera官方的Transceiver Native PHY高速收发器IP核,配置为单工发送模式,主要完成HDMI2.0视频发送的物理层功能,即PCS+PMA,并以高速低压差分信号输出;Transceiver Native PHY配置如下:

NB7NQ621M驱动器

然后HDMI2.0差分信号进去NB7NQ621M Retimer芯片实现均衡处理和驱动增强;当然,硬件设计师也可以选择其他型号的驱动器;NB7NQ621M原理图如下:

NB7NQ621M Retimer需要配置才能使用,工程里用纯verilog代码实现的i2c模块实现配置,配置代码如下:

HDMI2.0输出

NB7NQ621M驱动后的HDMI2.0差分信号直连HDMI2.0座子,或者通过板子的QSFP转HDMIHDMI2.0转换器输出;最后连上支持HDMI2.0的显示器显示即可;也就是说,本设计有两种HDMI2.0输出方式,如果你的FPGA开发板没有HDMI2.0输出接口,则可以将GTY的差分数据对约束到板载的QSFP引脚,然后使用本博主提供的QSFP转HDMI2.0硬件模块实现HDMI2.0输出;如果你准备在你的FPGA开发板上设计HDMI2.0座子,则需要根据NB7NQ621M原理图,将NB7NQ621M输出端连接到HDMI2.0座子;

工程源码架构

本博客提供2套工程源码,以工程源码1为例,该工程只有1路HDMI2.0输出,工程源码架构如下:

4、工程源码1详解–>Arria-10,单路HDMI2.0输出版本

开发板FPGA型号:Altera–>Arria 10–10AXF40AA;
FPGA开发环境:Quartus 18.1;
输入:FPGA内部彩条视频,分辨率3840x2160@60Hz;
输出:HDMI2.0,分辨率3840x2160@60Hz;
HDMI2.0物理层方案:Altera–Transceiver Native PHY高速收发器;
HDMI2.0 Retimer方案:NB7NQ621M驱动器;
HDMI2.0输出数量:设计1路HDMI2.0输出;
工程源码架构请参考前面第3章节中的《工程源码架构》小节;
工程作用:是让读者掌握Altera系列FPGA纯逻辑实现HDMI2.0的设计能力,以便能够移植和设计自己的项目;
工程的资源消耗和功耗如下:

5、工程源码2详解–>Stratix-V,双路HDMI2.0输出版本

开发板FPGA型号:Altera–>Stratix V-- 5SGSMD5K2F40I3L;
FPGA开发环境:Quartus 18.1;
输入:FPGA内部彩条视频,分辨率3840x2160@60Hz;
输出:HDMI2.0,分辨率3840x2160@60Hz;
HDMI2.0物理层方案:Altera–Transceiver Native PHY高速收发器;
HDMI2.0 Retimer方案:NB7NQ621M驱动器;
HDMI2.0输出数量:设计2路HDMI2.0输出;
工程源码架构请参考前面第3章节中的《工程源码架构》小节;
工程作用:是让读者掌握Altera系列FPGA纯逻辑实现HDMI2.0的设计能力,以便能够移植和设计自己的项目;
工程的资源消耗和功耗如下:

6、上板调试验证并演示

准备工作

FPGA开发板,推荐使用本博的开发板;
QSFP转HDMI2.0模块;
4K HDMI显示器或者电视;
HDMI线;
以工程源码1为例,开发板连接如下:

HDMI2.0视频发送演示

HDMI2.0视频发送演示如下:

QSFP-HDMI2.0

7、工程源码获取

代码太大,无法邮箱发送,以某度网盘链接方式发送,
资料获取方式:私,或者文章末尾的V名片。
网盘资料如下:

此外,有很多朋友给本博主提了很多意见和建议,希望能丰富服务内容和选项,因为不同朋友的需求不一样,所以本博主还提供以下服务:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/5 2:39:10

虚拟串口驱动中IRP请求处理的系统学习

深入Windows内核:虚拟串口驱动中IRP请求的实战解析你有没有遇到过这样的场景?一个老旧的工业控制软件,死死依赖于COM1、COM2这种“古董级”串口通信,而现代PC早已砍掉了物理RS-232接口。怎么办?总不能为了运行它再去买…

作者头像 李华
网站建设 2026/8/6 22:14:58

WinDbg入门必读:深度剖析栈回溯基本操作

WinDbg栈回溯实战:从崩溃现场还原程序执行路径你有没有遇到过这样的场景?服务器上的某个服务突然崩溃,日志里只留下一句“访问违规”,开发环境却怎么也复现不了。这时候,一个小小的.dmp文件就成了唯一的破案线索。在Wi…

作者头像 李华
网站建设 2026/7/31 8:41:01

Dify可视化界面实测:非程序员也能玩转Agent开发

Dify可视化界面实测:非程序员也能玩转Agent开发 在企业智能化转型的浪潮中,一个现实问题反复浮现:大模型能力越来越强,但业务部门想用起来却依然“够不着”。产品经理有清晰的场景构想,比如做个自动回复客户咨询的客服…

作者头像 李华
网站建设 2026/8/9 16:21:17

嵌入式Linux下ioctl函数调用全面讲解

深入理解嵌入式Linux中的ioctl:从原理到实战在嵌入式开发的世界里,我们常常需要与硬件“对话”——读取传感器数据、控制GPIO电平、配置串口通信参数。这些操作看似简单,但背后却隐藏着一个关键问题:如何让用户空间的应用程序安全…

作者头像 李华
网站建设 2026/8/5 17:52:37

从零实现:基于css vh的全视口Grid布局

用vh和 Grid 搭出真正“全屏自适应”的页面,一招解决多端布局难题你有没有遇到过这样的问题:在设计一个登录页或后台系统时,明明写了height: 100%,结果页面就是撑不满屏幕?或者在手机上测试时,发现底部被软…

作者头像 李华