一文解析HDMI spec傳輸協議

2021-01-07 電子發燒友
一文解析HDMI spec傳輸協議

flaoter 發表於 2021-01-03 09:24:00

本文從軟體工程師角度對HDMI spec進行解析,基於的spec版本為1.4,也是設備支持最多最成熟的版本,目前最新版本為2.0。

1 概述

HDMI(High-Definition Multiface Interface)是Hitachi, Panasonic, Philips, SiliconImage, Sony, Thomson, Toshiba幾家公司共同發布的一款音視頻傳輸協議,主要用於DVD, 機頂盒等音視頻source到TV,顯示器等sink設備的傳輸。傳輸基於的是TMDS(Transition Minimized Differential Signaling)協議。此外,使用TMDS也是DVI標準的主要特點 。

2 物理結構

上圖是HDMI block結構圖,可以看出HDMI用於audiovisual source和sink之間的連接,HDMI cable由3組差分信號傳輸TMDS數據,1組差分信號傳輸clock。此外,HDMI還有一個DDC的通道連接到sink的EDID。CEC和HEAC都是HDMI的可選協議。

HDMI定義了五種類型的connector,上圖是最常見的type A。
1-9是TMDS data傳輸用到的引腳,共有三組;
10-12是TMDS clock傳輸用到的引腳,共有一組,TMDS clock就是pixel clock;
13是CEC引腳,一種消費電子兼容的傳輸協議;
14是保留引腳;
15,16是DDC的引腳,DDC是基於I2C協議傳輸,故引腳為SCL和SDA;
17是接地;
18是+5V power;
19是HPD引腳,用於建立連接。

3 傳輸

概述

HDMI傳輸由三組TMDS通道和一組TMDS clock通道組成,TMDS clock的運行頻率是video信號的pixel頻率,在每個cycle,每個TMDS data通道發送10bit數據。

上圖是HDMI傳輸的示意圖,從圖中可知,HDMI傳輸如下四種類型數據:
(1)Preamble控制信息,圖中的CTLx,可用來表示後面傳輸的是data island還是video data。通過channel1和2的D[1:0]傳輸,佔用4bit。
(2)Data Island,即數據包,如Audio數據包。通過3個channel的D[3:0]傳輸,佔用12bit。
(3)Video Data,視頻數據。示意圖中傳輸的是RGB格式圖像,R,G,B分別通過channel2,1,0傳輸,每個顏色8bit,共24bit。
(4)HSYNC, VSYNC。使用channel0的D[1:0]傳輸,佔用2bit。
8bit的數據在source經過TMDS encoder後得到10bit數據,經過serializer後串行輸出;在sink端先進行復原成10bit的數據,再通過TMDS decoder得到8bit的源數據。
此外,HDMI視頻是stream式的傳輸,不涉及packet式的傳輸。

上圖是傳輸720x480p video的hdmi timing圖。
在video data period,有效的video數據進行傳輸;
在data island period,audio和auxiliary數據以包的形式進行傳輸;
在control period,CTLx和HSYNC, SYNC進行傳輸。
data island period和control period都是在消隱區進行。圖中行消隱佔用138像素,場消隱佔45行。

上圖中是對時序圖中描述的三種period分別傳輸的數據和編碼類型進行說明。video數據從8bit/channel encode後變為10bit/channel, data island的packet數據從4bit/channel encode後為10bit/channel, control數據從2bit/channel encode為10bit/channel。

Control Period

只有兩種類型的preamble信息組合,CTL0:3=1000代表接下來的是video data period,CTL0:3=1010代表接下來的是data island period。HSYNC, VSYNC此時也有可能發生變化。

Video Data Period

video data period以2個字符(pixel)長度的leading gurad band開始,guard band如下:
ch0: q_out[9:0] = 0b1011001100
ch1: q_out[9:0] = 0b0100110011
ch2: q_out[9:0] = 0b1011001100

Data Island Period

data island period傳輸audio數據和輔助數據,輔助數據包括Infoframe和其他用於音視頻信息描述的數據。data island period以2個字符長度的leading guard band開始,並以2個字符寬度的trailing guard band 結束。guard band如下:
ch0: q_out[9:0] = n.a
ch1: q_out[9:0] = 0b0100110011
ch2: q_out[9:0] = 0b0100110011
data island傳輸的packet類型和格式詳見spec說明。

三個傳輸階段的過渡過程如下圖所示:

(1) 左一是control period, 分別佔用三個channel的D[1:0],channel 0傳輸HSYNC, VSYNC, channel1,2 傳輸Preamble
(2) 左二是data island period,分別佔用了三個channel的D[3:0],channel 0的D[1:0]傳輸HSYNC, VSYNC, channel0的D[3:2]傳輸packet header, channel 1,2的D[3:0]傳輸packet。並且兩端以guard band隔離
(3)右二接下來又是control period
(4)右一是 video data island, 佔用了全部三個通道,並且開始以guard band 隔離

4 Video

支持三種pixel encoding:RGB4:4:4, YCbCr4:4:4, YCbCr4:2:2
video format除了CEA-861-D中格式外,還會支持一些較特殊的格式
color depth可支持一個像素24, 30, 36和48bits
下面分別是24bit/pixel的RGB444, YCbCr422, YCbCr444的pixel encoding示意圖。RGB444每個顏色佔8bit, YCbCr422中Y佔12bit,C佔12bit,YCbCr444中Y,Cb,Cr都佔用8bit。

 

 

Deep Color模式
Pixel Packing
24 bit mode: 1 pixel/group, 1 fragment/group
30 bit mode: 4 pixel/group, 5 fragment/group
36 bit mode: 2 pixel/group, 3 fragment/group
48 bit mode: 1 pixel/group, 2 fragment/group
1fragment/TMDS clock, 如30bit下的4pixel,需要5次傳輸完成,每次1個fragment。

5 Audio
Audio數據以Audio Sample Packet或High Bitrate Audio Stream Packet的形式傳輸,但是HDMI沒有傳輸audio clock,因此sink設備需要進行audio clock regeneration。原理如下:

128∗fs=N×fTMDS/CTS
N和CTS會在Audio Clock Regeneration Packet中進行傳輸,TMDS clock可通過硬體獲取,因此sink端可算出source傳輸的audio clock。

6 Control

InfoFrame

Infoframe以Infoframe packet的形式傳輸,它的大小不超過30位元組加上一個checksum字節。具體infoframe的格式及內容需要查看spec。
AVI(Auxiliary Video Information) Infoframe
Audio Infoframe
HDMI Vendor Specific Infoframe, 傳輸4kx2k或3D格式時需要發送此packet

EDID & DDC

sink設備在ROM中存放EDID信息,source在收到HPD後會通過DDC通道讀取EDID得到顯示設備的屬性。EDID包含兩部分,前128位元組符合EDID1.3數據結構,128位元組的擴展EDID,符合CEA extension verison3。CEA extension verison3如下圖所示。

HDMI VSDB

HDMI sink設備在第一個擴展EDID中包含HDMI VSDB,source在讀取EDID後會根據是否有此block來判斷設備是HDMI還是DVI。

Hotplug

source會監測HPD pin的狀態,當source和sink連接後,如果HPD為高電平,說明sink設備正常可以工作,source可通過DDC讀取EDID,如果為低電平,說明sink已斷開。
sink可通過拉低HPD超過100ms來向source表明EDID發生了變化,此時source會重新讀取EDID。

HDCP

涉及內容較多,會在單獨章節中講解。

編輯:hfy

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 高清HDMI延長器的強大性能與解決方法合集
    延長器常出現問題 一 .圖象字體有拖尾 常見故障原因大致幾種:1.水晶頭沒有壓好,接觸電阻大2.hdmi高清線是否有質量問題。3.網線質量太差或網線距離超過使用距離及距離較遠而網線質量。 解決方法:1.使用質量好的水晶頭,確保接觸良好;2.重新壓制水晶頭;3.傳輸hdmi線路使用銅芯好質量線纜,以減少衰減;4.使用好的品牌網線(超5類線為佳),傳輸距離較遠的網線。 三.屏幕嚴重偏色,全紅,綠,藍,距離短拖尾長。
  • hdmi電纜可以應用在範圍
    提到hdmi電纜高清線的運用,大量的人依然會想起家庭影院套裝等情景。實際上,hdmi電纜的運用範疇並不限於此。下邊工作人員舉例說明說說什麼機器設備能夠運用hdmi電纜。 hdmi電纜的運用範疇: 1、電視機和4k高清藍光播放器或智能電視盒的運用十分廣泛。連接電視機只必須一條hdmi電纜就可以傳輸超清視頻和響聲數據信號。 2、電視機和電腦上中間的連接。
  • 網盾極風雲:什麼是安全超文本傳輸協議
    大家可以把HTTPS直接理解為HTTP+SSL/TLS,簡單來說它是在HTTP的基礎上增加了一道保密協議,以此來對文本傳輸的過程加密,保障安全性的一種數據傳輸協議類型。HTTP協議是網際網路上應用最為廣泛的一種網絡協議,是一個客戶端和伺服器端請求和應答的標準(TCP),用於從WWW伺服器傳輸超文本到本地瀏覽器的傳輸協議。但是這種協議很明顯潛伏著非常大的危險:採用明文傳輸信息的過程中,假如有不法分子想嗅探機密,只需要劫持HTTP協議中的某段對話,對信息進行竊聽或篡改。
  • HDMI線不夠長怎麼辦?用這兩個設備迅速延長!
    日常生活工作時,經常會遇到hdmi線不夠長、接口不方便插線的、或者遠距離高清視頻傳輸的情況,比如居家壁掛電視機的hdmi母口等,那有什麼辦法可以解決呢?今天小澤特別針對這三個問題,幫大家挑選到三個神器,完美解決問題,一起來看!
  • 一文解析自組網透傳、LoRaNET和LoRaWAN三種協議
    打開APP 一文解析自組網透傳、LoRaNET和LoRaWAN三種協議 致遠電子 發表於 2021-01-16 10:44:23
  • hdmi矩陣切換器手機控制切換方式
    HDMI矩陣切換器是一種專用音視頻傳輸切換設備,用於在多路HDMI音視頻信號輸入和多路HDMI音視頻輸出之間進行連接切換設備。hdmi矩陣切換器運用在不同場合的需求,需要有多種的控制方式,那hdmi矩陣切換器有哪些控制方式呢!
  • 網盾極風雲BGP:HTTP網絡傳輸協議
    網絡模型網絡由各種各樣的協議組成,這些協議以分層的方式組織協議,每個協議屬於一層模型,每一層中的協議稱為協議棧(protocol stack)。網際網路的協議棧由五個部分組成:應用層、網絡層、鏈路層、物理層和傳輸層。
  • FTP文件傳輸協議詳解
    FTP文件傳輸協議是應用層實現的一種通過網絡傳輸文件的協議,這種協議採用C/S架構(即客戶端/伺服器模式)。文件傳輸中的處理過程模式選擇對於FTP文件傳輸過程中的模式選擇,下面只介紹常用的一些模式選擇傳輸方式--流方式(默認選擇)文件以字節流的形式傳輸。對於文件結構,發方尾提示關閉數據連接。
  • 5G時代從拋棄HDMI接口開始,HDMI和DP都將面臨巨大的風險
    DP 2.0可以支持DPP接口或者USB-C接口,在使用USB-C接口輸出時,DP 2.0將會利用雷電 3(Thunderbolt 3)接口實現視頻傳輸,並且可以在不影響顯示性能的情況下實現更高速的USB數據傳輸,如上文所言,不管是哪個協議,在帶寬更高的傳輸繞不過Intel的協議,都必須嫁接在其建立的框架下才可以實際更高帶寬,故USB-C
  • 流控制傳輸協議是什麼 流控制傳輸協議應用介紹【圖文】
    因而,SSCOPMCE實際上只能在有一定傳輸質量保證的內部或專用IP網上使用 其他一些研究機構則提出了新的IP網絡上用於傳輸信令的協議,如可靠信令傳輸協議RSTP。  一、流控制傳輸協議(SCTP)概述  目前IP網中的信令消息交換通常是使用UDP或TCP來完成。但這兩者都不能完全滿足電信網中信令承載的要求。  UDP是基於消息的,提供快速的無連接業務。這使其適合於傳輸時延敏感的信令消息。但是,UDP本身僅提供不可靠的數據報業務。而差錯控制,包括消息順序、消息重複檢測和丟失消息重傳等,只能由上層應用來完成。
  • 官方版塊——Filecoin完成大規模Spec升級
    在內容方面,我們花費了大量的精力來更新協議說明。Filecoin是一項龐大的工程。如果協議的規範被列印出來,那將是一本400頁的教科書!On the content front, we have put a huge amount of effort in updating the description of the protocol.
  • 筆記本電腦接口HDMI介紹
    不佔空間插拔更加方便同時因為是能夠傳輸數位訊號,所以說支持視頻和音頻的輸出。但是同樣是HDMI接口,版本類型卻有很多差別。首先是上圖所介紹的全尺寸的HDMI,然後是相機上用的稍微小一點的mini hdmi和micro hdmi。體積大小不一樣,越小的穩固性越不好。除了體積之外,HDMI的版本才是最大的區別。
  • hdmi視頻矩陣切換器8進8出機箱高度機櫃介紹景陽華泰科技
    hdmi視頻矩陣切換器8進8出是深圳景陽華泰矩陣眾多矩陣類型產品中的一款,支持8路HDMI信號輸入,8路HDMI信號輸出,支持視頻圖像信號遠距離傳輸;這款HDMI視頻矩陣切換器8進8出採用的是插卡式模塊化設計,用的是1.5U的機型機箱,1.5U的插卡式機箱可以做8進8出,3U插卡式機箱可以做
  • 一文詳解HDMI製造過程
    打開APP 一文詳解HDMI製造過程 線纜行業朋友圈 發表於 2021-01-09 11:17:48 隨著HDMI2.1認證的開啟
  • 通過HDMI電纜將電腦連接到電視上的方法-源富聯穎
    如果要將DVI轉換為HDMI,那就還要單獨準備一條音頻線,因為DVI並不傳輸音頻信號。也可以選購USB轉HDMI適配器,它適用於沒有視頻埠的電腦。 2、將HDMI電纜的一端連接到電腦上。通常情況下,HDMI電纜頭較寬的一面朝上。 3、將HDMI電纜的另一端插入電視。
  • hdmi矩陣切換器EDID數據功能介紹
    今天簡單的和大家介紹一下hdmi矩陣EDID數據功能,相信大家接觸過不少的顯示設備,像顯示設備的一些信息大家也是比較了解的的,而EDID就是裡面的信息,其中包含有關顯示器及其性能的參數,包括供應商信息、最大圖像大小、顏色設置、廠商預設置、頻率範圍的限制以及顯示器名和序列號的字符串等等
  • 文件傳輸協議:FTP、TFTP、SFTP有什麼區別?
    數據傳輸結束後數據連接將終止ASPF機制(主動模式下被防火牆限制)和長會話機制(文件傳輸到99%時中斷)FTP傳輸模式:ASCII模式和二進位模式ASCII模式用於傳輸文本。發送端的字符在發送前被轉換成ASCII碼格式之後進行傳輸,接收端收到之後再將其轉換成字符。
  • 一文詳解LIN總線協議規範
    一文詳解LIN總線協議規範 汽車技術Wind 發表於 2020-12-03 10:45:59 數據幀的結構 LIN的數據幀包括報頭,響應兩大部分。
  • 銅芯進化光纖 菲伯爾HDMI傳輸霸主評測
    當前是信息密集傳遞的圖形交互時代,數位訊號因其傳輸上的明顯優勢替代模擬信號上位,在影音高速發展的今天,數位訊號的全面普及是有其必然性存在的,在各種數字傳輸標準中,HDMI作為發展最為成熟,適用範圍最廣,普及程度最高的高端傳輸標準被廣大用戶所熟知。
  • hdmi電纜120Hz怎麼調整為144Hz?
    眾所周知,當我們的計算機在使用hdmi電纜的時候,想要選擇1080P的前提是必須滿足144Hz,那麼怎麼將120Hz調整為144Hz呢?下面源富的工作人員給大家整理了相關內容。