0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

求一种Ti60F100高速IO实现HDMI环出方案

XL FPGA技术交流 来源:XL科技 作者:XL科技 2023-03-09 14:20 次阅读

xilinx和altera都有通过IO驱动HDMI的方案,支持的分辨率各有不同,这跟不同系列的FPGA性能是相关的。

易灵思的钛金系列FPGA是采用16nm工艺的,属于高性能FPGA,它支持1.5G LVDS及高速的IO,这成为了实现HDMI自环的基础。并通过本实验验验证了Ti60F100来实现了1080p60的接收与发送的可行性。

我们先来了解下TMDS的电气特性。

TMDS电气特性

TMDS利用电流驱动技术在直流耦合传输线接收端产生低压差分信号。链路参考电压AVcc设置差分信号的高电压电平,而低电压电平由HDMI源端的电流源和接收终端电阻(RT)决定。终端电阻(RT)和电缆的特性阻抗(Z0)必须匹配。

0855ccc2-be42-11ed-bfe3-dac502259ad0.png

086ef97c-be42-11ed-bfe3-dac502259ad0.png

对于差分信号的一端,标称高电平电压为AVcc,标称低电平电压为(AVcc - Vswing)。

087ee292-be42-11ed-bfe3-dac502259ad0.png

差分对上的摆幅是一端摆幅的两倍,2*Vswing ,约为1000mV(VP-VN,分别指TMDS差分对的P端或者N端)。

089b91e4-be42-11ed-bfe3-dac502259ad0.png

从框图上看TMDS电平更符合或者说接近CML的电平标准。在源端都有一个恒流源。而且差分对高电低电平的实现也都是通过源端一端导通一端截止来实现,只是HDMI的上拉通过接收端来实现。在接收端都对输入信号上拉到了50欧,其余部分也可以认为相同。

08b6e67e-be42-11ed-bfe3-dac502259ad0.png

所以LVDS与CML的电平转换成为了硬件设计的理论基础。

08d5d21e-be42-11ed-bfe3-dac502259ad0.png

08df0ef6-be42-11ed-bfe3-dac502259ad0.png

本次验证通过Ti60F100来实现。硬件采用炫览科技开发的demo板。

测试环境为输入采用1.5M HDMI线,输出采用3M HMDI。测试分辨为1080p60fps和720p60fps.

HDMI接收过程

HDMI接收端通过50R电阻上拉,再通过电容耦合连接到FPGA。

092498a4-be42-11ed-bfe3-dac502259ad0.png

时钟方案如下:

HDMI接收时钟经过PLL产生串行时钟742.5M用于1080p串行数据采集。通过LVDS实现串并换转换成10位并行数据同步到148.5M的时钟上。

0939a816-be42-11ed-bfe3-dac502259ad0.png

实现过程如下:

09467faa-be42-11ed-bfe3-dac502259ad0.png

HDMI发送处理

与LVDS转CML的电平转换相似,只不过这里都使用了交流耦合。有时间再尝试DC耦合方式。

09541886-be42-11ed-bfe3-dac502259ad0.png

另外从IO的和锁相环性能的角度出发,我们试验了以下两种方案:

方案一 :通过单端实现伪TMDS差分

理论基础是:

TMDS差分传动技术是一种利用2个引脚间电压差来传送信号的技术。传输数据的数值("0"或者"1")由两脚间电压正负极性和大小决定。即,采用2根线来传输信号,一根线上传输原来的信号,另一根线上传输与原来信号相反的信号。这样接收端就可以通过让一根线上的信号减去另一根线上的信号的方式来屏蔽电磁干扰,从而得到正确的信号。

按照上面的原理我们把HDMI的4对差分对通过单端来实现。我们分别对HDMI的三对数据和一对时钟用LVCMOS 1.8V电平实现。并勾选DDIO选项。

096d9e00-be42-11ed-bfe3-dac502259ad0.png

时钟的设置如下。由于锁相环的限制,内部处理时钟为144,数据位宽为10位,接口上通过时钟双沿采样,时钟为720。测试分辨率为1080p@58Hz,画面输出正常。如果通过时钟用25M的话,快速时钟为750M应该也是可以的。

0990d352-be42-11ed-bfe3-dac502259ad0.png

方案二:通过LVDS实现替代TMDS差分对

在interface中例化4对LVDS输出。并通过PLL产生对应的并行与串行时钟。

099ecbd8-be42-11ed-bfe3-dac502259ad0.png

09c9af10-be42-11ed-bfe3-dac502259ad0.png

另外关于5V接收与发送,HPD和DDC的处理都相对比较简单,在这里就不详细展开了。





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1610

    文章

    21393

    浏览量

    595440
  • HDMI
    +关注

    关注

    32

    文章

    1524

    浏览量

    150445
  • TMDS
    +关注

    关注

    1

    文章

    19

    浏览量

    15423
  • LVDS屏
    +关注

    关注

    0

    文章

    6

    浏览量

    1366

原文标题:Ti60F100高速IO实现HDMI环出方案

文章出处:【微信号:gh_ea2445df5d2a,微信公众号:FPGA及视频处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Ti60F100 内外flash操作方案

    有客户认为Ti60F100内部flash容量比较小,只有16Mb,需要外挂flash.这里我们提供了内部flash和外部flash分别操作的方案。 该程序是通过SOC操作4线的外部flash和内部
    的头像 发表于 05-20 16:42 711次阅读
    <b class='flag-5'>Ti60F100</b> 内外flash操作<b class='flag-5'>方案</b>

    一种基于高速转换芯片ADC08D1000的采集系统的设计和实现

    本文详细介绍了一种基于高速转换芯片ADC08D1000的采集系统的设计和实现,对设计中的些关键性问题给予了解决方案和详细的分析。
    发表于 04-23 06:50

    大神分享一种高速突发模式误码测试仪的FPGA实现方案

    大神分享一种高速突发模式误码测试仪的FPGA实现方案
    发表于 04-29 06:58

    一种锁相位同步提取电路的设计方案

    一种基于FPGA的锁相位同步提取电路的设计方案
    发表于 04-29 06:52

    一种低成本高速USB接口的设计方案

    一种基于DSP平台的低成本高速USB接口方案
    发表于 05-10 07:13

    一种CO2144 10-100BaseT参考设计方案

    一种CO2144 10-100BaseT参考设计方案
    发表于 05-25 07:01

    一种HDMI转VGA音视频数据转换芯片方案

    CS5213的功能特性是什么?一种HDMI转VGA音视频数据转换芯片方案
    发表于 05-28 06:42

    如何去实现一种高速通信接口的设计?

    一种FPGA与DSP的高速通信接口设计与实现方案
    发表于 06-02 06:07

    一种DisplayPort到DVI / HDMI信号转换适配器方案

    DisplayPort到DVI / HDMI信号转换原理是什么?一种DisplayPort到DVI / HDMI信号转换适配器方案
    发表于 06-03 06:23

    如何去实现一种STM32境监控系统的设计呢

    如何去实现一种STM32境监控系统的设计呢?大神解答
    发表于 11-26 06:09

    一种基于STM32的Modbus主机实现方案

    一种基于STM32的Modbus主机实现方案
    发表于 12-10 07:25

    一种基于STM32F103C8T6的无线飞鼠设计方案

    一种基于STM32F103C8T6的无线飞鼠设计方案
    发表于 12-20 06:15

    一种高速串行视频接口TIDA-00137参考设计

    描述TIDA-00137 参考设计是一种高速串行视频接口,通过此接口,可将采用 DVP (LVCMOS) 接口的远程汽车 WVGA TFT LCD 显示屏连接到视频处理系统。此设计使用 TI
    发表于 09-19 07:05

    Ti60F100用片内flash启动RISCV程序不能成功的解决办法

    Ti60F100内部是一个16Mbit的flash,每个地址对应的是一个8位的数据,所以,地址范围是0x000000~0x200000。
    的头像 发表于 02-15 17:13 1266次阅读
    <b class='flag-5'>Ti60F100</b>用片内flash启动RISCV程序不能成功的解决办法

    易灵思Ti60F100驱动LCD屏案例

    其中Ti60F100的核心板与MIPI 子卡之间通过QSE座连接,这也是易灵思所有demo板都使用的接口方案。MIPI子卡通过FPC 30pin座子连接LCD屏。
    发表于 07-10 11:51 760次阅读
    易灵思<b class='flag-5'>Ti60F100</b>驱动LCD屏案例