高帶寬數(shù)字內(nèi)容保護(hù)技術(shù)接收端的研究與設(shè)計
圖5描述了授權(quán)認(rèn)證的4個狀態(tài)之間的關(guān)系。狀態(tài)A0:未授權(quán)認(rèn)證狀態(tài);狀態(tài)A1:計算;狀態(tài)A2:授權(quán)認(rèn)證完成;狀態(tài)A3:更新Ri’的值。本文引用地址:http://butianyuan.cn/article/155265.htm
在Aksv更新信號獲得確認(rèn)后,HDCP控制器根據(jù)HDCP發(fā)送端的KSV值使用56位二進(jìn)制的加法來計算Km’值。
在一個時鐘內(nèi)進(jìn)行20次56位的加法操作可能會產(chǎn)生不能接受的延遲。為了解決這個問題在此提出兩種方法來實現(xiàn)該操作。方法一:采用流水線結(jié)構(gòu),在每個周期里完成一次56位的加法操作,然后在20個周期里完成Km’的最終計算;方法二:使用節(jié)約加法器來壓縮從2~20的算子,然后執(zhí)行最終的加法操作。方法二比方法一具有更高的可執(zhí)行性,但是需要占用更多的資源;方法一相對能節(jié)約更多的資源但是延時大。
根據(jù)HDCP協(xié)議的要求HDCP接收端必須在100 ms內(nèi)完成Km’、Kb’、M0’、R0’值的計算并把有效的R0’值傳給HDCP的發(fā)送端,該過程是在HDCP發(fā)送端的讀操作到HDCP發(fā)送端完成把Aksv寫到視頻接收端的操作之后進(jìn)行,這就意味著延遲在這不是問題,所以在此選擇方法一來進(jìn)行計算Km’值。
接收端授權(quán)狀態(tài)機是控制器模塊的核心部分。其他所有的狀態(tài)機操作指令都是由這個狀態(tài)機發(fā)出的。
授權(quán)狀態(tài)的轉(zhuǎn)換是以Aksv完成接收為標(biāo)志,當(dāng)HDCP發(fā)送端完成把Aksv寫到HDCP接收端寄存器0x14位置時,控制寄存器模塊將產(chǎn)生這個標(biāo)志信號。
2.3 控制器寄存器
當(dāng)HDCP接收端是第一連接器件時,控制寄存器根據(jù)HDCP協(xié)議中定義的,除了0x20~0x30,0x43地址位,這些是HDCP中繼器的控制寄存器;當(dāng)HDCP接收端是第二連接器件時,僅僅是控制寄存器的子集才允許進(jìn)入的。I2C接口子模塊會發(fā)出一個從HDMI接收端接口連接到第一還是第二的指示信號。
所有的寄存器只有一個能進(jìn)行寫操作的源信號。源信號可能來自3個地方:HDCP發(fā)送端,HDMI接口以及HDCP接收端。HDCP發(fā)送端能夠往寄存器中的0x10地址中寫入Aksv,0x15地址中寫入Ainfo,0x18地址中寫入An;HDCP接收端能夠往寄存器中的0x08地址中寫入Ri,在0x0A地址中寫入pj;HDMI能夠往寄存器中的0x00地址中寫入Bksv,0x40地址中寫入Bcpas,0x41地址中寫入Bstatus。寫操作的時鐘信號不是系統(tǒng)時鐘而是像素時鐘。當(dāng)最后一位Aksv寫入到寄存器的時候Aksv,Ainfo寄存器復(fù)位到零,用復(fù)寫寄存器機制來實現(xiàn)。
2.4 I2C從機接口
Philips開始開發(fā)總線用來在器件內(nèi)部和電視設(shè)備進(jìn)行通信。HDCP里面定義I2C作為控制通道接口。有3種操作模式:讀(read)、寫(write)和短讀(short read)。讀與短讀之間的區(qū)別是看讀取數(shù)據(jù)過程是在Start(S)還是Repeated Start(RS)條件下初始化的。在短讀模式中,在實際的讀操作前不需要寫入寄存器的偏移地址。
在此HDCP接收端里面必須有一個能夠支持I2C總線的邏輯器件。I2C與第一連接器件的8位的二進(jìn)制的地址是0111 010x;或者是16進(jìn)制的0x74作為I2C地址,讀寫位置零。與第二連接器件的地址是0x76。I2C從機接口邏輯在決定與控制寄存器的哪部分連接根據(jù)HDCP發(fā)送端指示的從機地址來確定。這個子模塊需注意以下幾點:
(1)僅有4個寄存器支持該寫操作即Aksv、Ainfo、An、dbg。
(2)必須有一個寫操作先于Aksv到來。
(3)第一連接器件、第二連接器件與HDCP連接的端口不一樣。
(4)地址自動增加必須由I2C接口實現(xiàn)。
(5)ksv FIFO讀操作行為地址的增加不同于其他地址增加方法。
(6)授權(quán)觸發(fā)條件:寄存器更新Aksv、Ainfo、An值,最后寫入到寄存器中的0x14地址中用以觸發(fā)HDCP接收端的授權(quán)認(rèn)證序列。
在現(xiàn)代設(shè)計中,設(shè)計人員一直在尋求一種速度更快,面積更小的電路,以在提高可執(zhí)行性的同時能減少成本。目前物理層的設(shè)計是解決這一問題的重要手段。用全定制設(shè)計方法來設(shè)計I2C從機接口可以達(dá)到減少芯片的面積和功耗。所有的邏輯門和時序元素,如鎖存器、D觸發(fā)器是使用靜態(tài)的方式來提高電路的可靠性。最常見的方式就是使用主從結(jié)構(gòu)的D觸發(fā)器設(shè)計I2C從機接口。
3 結(jié)束語
討論了HDCP接收端的結(jié)構(gòu),分析了具體的實現(xiàn)方法。其中包括I2C從機接口、控制寄存器、接收端控制器、加密機等子模塊的設(shè)計。此HDCP接收端根據(jù)HDCP協(xié)議設(shè)計,符合HDCP協(xié)議的要求。
評論