天天看點

HDMI協定介紹

HDMI全稱(High Definition Multimedia Interface)高清多媒體接口,支援在單線纜上傳輸全數字高清視訊和多聲道音頻。

HDMI協定介紹

HDMI基于TMDS協定傳輸,主要用于DVD, 機頂盒等音視訊source到TV,顯示器等sink裝置的傳輸。HDMI向下相容 DVI,但是 DVI(數字視訊接口)隻能用來傳輸視訊,而不能同時傳輸音頻,這是兩者最主要的差别。

術語

HDMI:High Definition Multimedia Interface高清多媒體接口,傳輸音視訊。

HDCP:High-bandwidth Digital Content Protection 版權保護相關的,通過IIC擷取。

EDID:Extended Display Identification Data 擴充顯示辨別資料,包含有關顯示器及其性能的參數,包括供應商資訊、最大圖像大小、顔色設定、廠商預設定、頻率範圍的限制以及顯示器名和序列号的字元串等。

DDC:Display Data Channel 顯示資料通道,其實就是IIC通道,用來擷取EDID、HDCP密鑰等内容。

HDP:Hot Plug Detect熱插拔檢測。

CEC:Consumer Electronics Control 使用者電氣控制,CEC可以控制從裝置的一些狀态,即遙控器功能。

TMDS:Transition Minimized Differential Signaling最小化傳輸差分信号,一種差分傳輸技術

HEAC:HDMI Ethernet and Audio Return Channel 以太網和音頻傳回,HEAC需要額外的phy才能支援。

Source:A device with an HDMI output

Sink:A device with an HDMI input

CTS:Compliance Test Specification

實體結構

HDMI有A、B、C、D、E五種引腳類型,目前常用的是Type A:

HDMI協定介紹

 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引腳,用于熱插拔檢測

HDMI框圖

HDMI 系統架構由Source端和Sink端組成:Source是指發送HDMI信号的一側,Sink是指接收HDMI信号的一側。

HDMI協定介紹

 HDMI信号四路差分信号組成,包括三路TMDS Data信号和一路TMDS Clock信号。TMDS信号不僅僅用于傳輸video信号,還傳輸audio和輔助資訊。

HDMI 提供一個 DDC 通道用于在source端和sink端交換狀态。

HDP用于熱插拔檢測,CEC是使用者電氣控制,一般用作遙控,HEAC以太網和音頻傳回。CEC和HEAC是HDMI可選協定。

HDMI傳輸

TMDS信号

TMDS 傳輸系統分為兩個部分:發送端和接收端。TMDS 鍊路包括 3 個傳輸資料的通道和1個傳輸時鐘信号的通道。

發送端對這些資料進行編碼和并/串轉換,再将資料分别配置設定到獨立的傳輸通道發送出去。

接收端接收來自發送端的串行信号,對其進行解碼和串/并轉換,然後發送到顯示器的控制端。

TMDS不僅僅是對video進行編碼,還包括audio和控制信号:

  • 對于video周期采用的是video data encoding,将8bits資料轉換成10bits資料
  • 對于control周期采用的是CTL encoding,将2bits資料轉換成10bits資料
  • 對于DataIsland周期采用的是TERC4 encoding,将4bits資料轉換成10bits資料
HDMI協定介紹
HDMI協定介紹

HDMI連接配接架構

HDMI傳輸由三組TMDS通道和一組TMDS clock通道組成,TMDS clock的運作頻率是video信号的pixel頻率,在每個TMDS 時鐘通道周期,每個TMDS data通道都發送10bit資料。

channel0傳輸B資料和HSync、VSync

channel1傳輸G資料和CTL0、CTL1

channel2傳輸R資料和CTL2、CTL3

HDMI協定介紹

HDMI傳輸模式

HDMI的TMDS資料傳輸可以分為三個傳輸周期:

Control Period控制周期:主要用于控制接下來傳輸的是data island還是video data

Data Island Period資料島周期:各種類型的包資訊,包括音頻資料包、輔助資料包、圖像資訊包等

Video Data Period視訊資料周期:視訊像素資料,HDMI可以傳輸RGB和YUV兩種格式的像素資料

HDMI協定介紹
HDMI協定介紹

1、左邊是Control period:傳輸有Hsync、Vsync與Preamble。占用1、2兩個通道共4bit輸入;channel 0傳輸HSYNC, VSYNC, channel1[1:0]和channel2[1:0] 傳輸Preamble,用來判斷接下來輸入的是Video Data還是Data Island。

2、中間是Data Island period:傳輸有Hsync、Vsync,以及兩個Packet Header與Packet,占用三通道共12bit輸入,Channel0[3:2]用于傳輸Data Island Header(標頭),Channel1[3:0]與Channel2[3:0]用于傳輸Data Island Content(包内資料)

3、右邊是Video Data period :視訊信号經過編碼生成三路TMDS資料通道,共24位視訊流資料,輸入到HDMI Tx中。24位像素的視訊信号通過TMDS通道傳輸,将每通道8位信号轉換為10位,在每個10位像素周期傳送一個最小化的信号序列,視訊信号将被調制為TMDS信号傳送出去。

Control Period(preamble)

在資料島或者視訊資料傳輸周期之前,每一個TMDS通道包含2bit的控制資料,一共6位控制資料。

TMDS Channel D0 D1
HSYNC VSYNC
1 CTL0 CTL1
2 CTL2 CTL3

每個TMDS通道使用了D1:D0共2bit,采用2bit到10bit的編碼方式。在每個控制周期的最後階段,CTL0、CTL1、CTL2、CTL3組成的檔案頭說明下一個周期是視訊資料還是資料島。

CTL0 CTL1 CTL2 CTL3 資料周期類型
1 video data
1 1 data island

Video Data Period

視訊資料周期用來傳輸視訊線的像素,每個視訊資料周期以封包頭為前導,在封包頭之後,視訊資料周期以兩個字元開始,做為視訊前導保護邊界。對于資料周期,沒有末尾保護邊界。

Data Island Period

資料島用來攜帶音頻和輔助資料的封包。輔助資料包括Info frame和其他用于音視訊資訊描述的資料。

每個資料島以2個字元長度的前導保護邊界開始,并以2個字元寬度的末尾保護邊界結束。

TMDS Channel BitN 傳輸内容
Channel0 Bit0 HSync
Bit1 VSync
Bit2 packet header
Channel1 Bit3:0 packet
Channel2 Bit3:0 packet

資料島包的結構

包括一個封包頭、封包體(包含 4個子包)和相關的差錯糾正位。

每個子包含有56bit的資料和8bit的ECC校驗位組成。子包 0 加上它的奇偶校驗位構成 BCH 塊 0,這個塊映射到通道 1 和通道 2 的bit0。

同樣地,BCH 塊 1(子包 1 加上它的奇偶校驗位)映射到通道 1 和通道 2 的bit1上。

對于標頭即BCH block4映射到通道0的bit2,包括3個byte共24bit,以及8bit ECC。

HDMI協定介紹

封包頭

封包頭包含 24 個資料位,附加 8 位 BCH(32,24) ECC 校驗,其中24bit的資料分為8bit的封包類型和16bit的封包。

HDMI協定介紹

封包類型表格如下:

HDMI協定介紹

空包

source端可以在任何時候使用空包。空包的位元組是未定義的,其包内都是 0 值。HDMI sink端應該忽略空包的標頭 HB1 和 HB2,以及空包體中的全部位元組。

HDMI協定介紹

Audio 時鐘重生成包ACR

標頭中隻有包類型,沒有封包資料,Sink裝置應該忽略HB1和HB2。

包體中包含N和CTS(cycle time stamp),在生成音頻時鐘的時候會用到這兩個值。

HDMI協定介紹

 audio采樣包

音頻采樣包攜帶 LPCM 和 IEC61937 壓縮音頻格式的資料。音頻包包括 1 到 4 個音頻采樣。這些音頻采樣可能是不同的音頻,也可能是同一音頻的不同部分(比如 6 聲道的 2 個聲道資料)。

HDMI協定介紹
HDMI協定介紹

幀資訊

CEA-861D 定義的所有的資訊幀都可以在 HDMI 的資訊幀中傳輸。

HDMI協定介紹

通用控制包

 標頭隻有包的類型,沒有封包資料,Sink端應該忽略HB1、HB2。

包體中包括AVMUTE、CD、PP等資訊。

HDMI協定介紹
HDMI協定介紹

AVMUTE 被用以source端減少TMDS時鐘變化或者中斷帶來的負面影響,比如pop音和噪音。

CD(color depth)用于訓示色深:

如果sink端不支援Deep Color模式,CD域應該都設定為零。

HDMI協定介紹

video

像素編碼

HDMI1.4 支援三種pixel encoding:RGB4:4:4, YCbCr4:4:4, YCbCr4:2:2

HDMI2.0補充支援了YCbCr4:2:0

HDMI協定介紹

視訊格式

HDMI1.4支援CEA-861-D,HDMI2.0支援到CEA-861-F

color depth

color depth支援像素24bit、30bit、36bit、48bit,其中24bit是必須支援的。

大于24bit的屬于“Deep Color”,如果sink裝置支援Deep color,36bit是必須要支援的;如果sink不支援deep color,source裝置不應該發送deep color mode。

video控制信号

在Video Data周期HDMI不發送HSync和VSync信号,Data Island周期Channel0會發送編碼後的HSync和VSync,Control階段的Channel0也會發送HSync和VSync。

Pixel-repetition

原始像素速率低于25HMz時需要使用pixel repetition才能通過TMDS鍊路傳輸。通過字段PR0~PR3:Pixel Repetition Factor訓示像素重複的使用。

HDMI協定介紹

繼續閱讀