數(shù)字視頻接口——DVI 1.0
2.2 T.M.D.S.協(xié)議詳解
DVI接口的先進(jìn)性體現(xiàn)在它可以將海量的顯示信息高速地傳送到顯示器中去,T.M.D.S.先進(jìn)的編碼算法是其強(qiáng)大能力得以實(shí)現(xiàn)的根本。下面將詳細(xì)解釋?zhuān)裕停模樱畢f(xié)議中與實(shí)際應(yīng)用緊密相關(guān)的幾個(gè)問(wèn)題。為了便于理解作以下規(guī)定:輸入到編碼器或由解碼器輸出的象素?cái)?shù)據(jù)稱(chēng)為象素?cái)?shù)據(jù)Pixel Data;由發(fā)送器送出的或輸入到接收器的編碼數(shù)據(jù)稱(chēng)為碼元Character。
請(qǐng)注意:在DVI接口協(xié)議中并沒(méi)有規(guī)定輸入或輸出的象素?cái)?shù)據(jù)是串行的還是并行的,輸入輸出的數(shù)據(jù)格式留給芯片制造廠商靈活掌握,用戶應(yīng)根據(jù)自己的實(shí)際情況選用芯片型號(hào)。
2.2.1 鏈路結(jié)構(gòu)
T.M.D.S.鏈路結(jié)構(gòu)見(jiàn)圖2。圖3是單鏈路T.M.D.S.結(jié)構(gòu)圖。雙鏈路結(jié)構(gòu)與單鏈路很相似。每個(gè)鏈路的發(fā)送器(Transmitter)中包含三個(gè)完全相同編碼器(Encoder),每個(gè)編碼器驅(qū)動(dòng)一條串行T.M.D.S.通道(Channel)。輸入到每個(gè)編碼器的數(shù)據(jù)包括8bit象素?cái)?shù)據(jù)和2bit控制信號(hào)(見(jiàn)圖3)。
在DE(Data Enable)信號(hào)的控制下,編碼器在任何合法時(shí)鐘驅(qū)動(dòng)下,分別將象素?cái)?shù)據(jù)和控制數(shù)據(jù)編碼并由發(fā)送器將編碼后的碼元串行發(fā)送到T.M.D.S.鏈路上。在DE有效期間(DE=1)對(duì)象素?cái)?shù)據(jù)進(jìn)行編碼發(fā)送,在DE無(wú)效期間(DE=0)對(duì)控制數(shù)據(jù)進(jìn)行編碼發(fā)送。無(wú)論是對(duì)二者中的哪一項(xiàng)進(jìn)行編碼,由編碼器輸出的都是串行的10bit碼元,并且最低有效位先送出。
2.2.2 時(shí)鐘與同步問(wèn)題
時(shí)鐘與同步是DVI信號(hào)處理過(guò)程中至關(guān)重要的一環(huán)。以顯卡中圖形處理器提供的象素時(shí)鐘(Pixel Clock)為參考時(shí)鐘,在整個(gè)信號(hào)收發(fā)過(guò)程中,會(huì)存在三組不同頻率的時(shí)鐘信號(hào),這三組時(shí)鐘信號(hào)通過(guò)鎖相環(huán)電路(PLL)進(jìn)行同步控制。
從圖3可知,以象素時(shí)鐘的速度輸入到編碼器的8bit象素?cái)?shù)據(jù)被變換成10bit的T.M.D.S.碼元,在T.M.D.S.通道內(nèi)串行傳輸。所以T.M.D.S. 碼元要以10倍象素的時(shí)鐘頻率進(jìn)行碼元傳輸。在接收端,若要正確判斷所接收的碼元就需要用高于碼時(shí)鐘Character Clock的頻率對(duì)輸入信號(hào)進(jìn)行采樣,所以又存在一個(gè)采樣時(shí)鐘Sampling Clock。例如:TI公司提供的DVI接收芯片6采用4倍過(guò)采樣技術(shù)對(duì)輸入信號(hào)采樣,在XGA分辨率(1024×768)、60Hz刷新率的情況下,象素時(shí)鐘為65MHz,則T.M.D.S.碼元時(shí)鐘將為650MHz,采樣時(shí)鐘將達(dá)到2.6GHz。
T.M.D.S.的先進(jìn)編碼算法使得串行輸出的碼元流中包含了碼元同步信息,利用PLL技術(shù)使接收器和解碼器可以在串行的碼元流中正確測(cè)定碼元邊界、解碼象素?cái)?shù)據(jù)。在T.M.D.S.輸出的編碼中,代表象素?cái)?shù)據(jù)的編碼包含了5次或5次以下的變化信息,而代表控制信號(hào)的編碼包含了7次以上的變換信息。這些含有高變化信息的編碼在顯示的消隱時(shí)期內(nèi)被送出。解碼器可以唯一確定地識(shí)別這些高變換碼,PLL可以利用這些確定的信號(hào)作為相位校正的參考信號(hào)。
2.2.3 T.M.D.S.編碼與解碼算法
深入理解、靈活運(yùn)用并實(shí)現(xiàn)這些先進(jìn)的算法是芯片制造廠商最關(guān)心的問(wèn)題。本文從使用者的角度出發(fā),以實(shí)用為原則對(duì)編碼及解碼算法進(jìn)行分析。
從圖3中可以看出,實(shí)際應(yīng)用時(shí)最關(guān)心的行同步、場(chǎng)同步信號(hào)作為控制信息在藍(lán)基色Blue70被編碼器編碼發(fā)送;其他通道的控制信號(hào)CTL03或CTL09都應(yīng)接邏輯0,其中CTL0可以提供用戶使用,但有嚴(yán)格使用條件,非不得不用的情況下推薦接邏輯0。
T.M.D.S.的每一條通道都由連續(xù)輸出的10bit串行編碼驅(qū)動(dòng)。在顯示的消隱5DE=0時(shí)間段內(nèi)編碼器輸出四個(gè)特定編碼,詳見(jiàn)圖4,也就是前面所說(shuō)的可被解碼器唯一確定識(shí)別的四個(gè)編碼。在DE=1時(shí)編碼過(guò)程分為兩個(gè)階段,第一階段對(duì)8bit的象素?cái)?shù)據(jù)進(jìn)行最小變換生成9bit的最小變化碼,其中最低有效位與象素?cái)?shù)據(jù)的最低有效位相同,第9位為變換方式標(biāo)志位:0表示對(duì)象素?cái)?shù)據(jù)進(jìn)行異或非XNOR變換,1表示進(jìn)行異或XOR變換;第二階段生成10bit的直流平衡碼:如果上一次編碼傳輸了過(guò)多的1且將要傳輸編碼中1比0多,則將此次編碼的低8位取反并在第10位置1,否則,將不作處理,直接傳輸。
每一條T.M.D.S.鏈路中含有與3個(gè)編碼器對(duì)應(yīng)的3個(gè)解碼器。T.M.D.S.的解碼算法相對(duì)簡(jiǎn)單一些。由于在消隱時(shí)間內(nèi)傳輸了特定的四個(gè)編碼,解碼器可以判斷DE的邏輯狀態(tài),若DE=0,則直接將對(duì)應(yīng)的控制信號(hào)組合狀態(tài)送出。若DE=1,則根據(jù)第10位的情況決定低8位是否進(jìn)行取反,根據(jù)第9位的信息決定對(duì)編碼進(jìn)行的變化方式:為1,進(jìn)行XOR(異或)變換為0,進(jìn)行XNOR(異或非)變換。在象素?cái)?shù)據(jù)有效期間,行、場(chǎng)同步以及控制信息CTLX均保持恒定。通過(guò)上述解碼過(guò)程,行同步和場(chǎng)同步信號(hào)由藍(lán)基色通道解調(diào)出來(lái),結(jié)合另外兩個(gè)通道解調(diào)出來(lái)的綠基色和紅基色,就可以進(jìn)行視頻信息的數(shù)字方式顯示了。
評(píng)論