袁三男
(上海電力學(xué)院 電子與信息工程學(xué)院, 上海 200090)
基于CIMAX和CAM卡的雙TS流解擾系統(tǒng)在數(shù)字電視監(jiān)測中的應(yīng)用
袁三男
(上海電力學(xué)院 電子與信息工程學(xué)院, 上海 200090)
針對數(shù)字電視監(jiān)測系統(tǒng)中傳輸流TS的解擾問題,分析了TS流的加擾和解擾原理,提出了基于CIMAX接口芯片和大小CAM卡、同時實現(xiàn)兩路獨立TS流的解擾方案,解擾系統(tǒng)采用硬件和軟件相結(jié)合的方式,并在數(shù)字電視監(jiān)測系統(tǒng)中得到了成功應(yīng)用.
數(shù)字電視監(jiān)測; 傳輸流TS; 解擾; 接口芯片CIMAX; 大小CAM卡
數(shù)字電視采用數(shù)字處理技術(shù)將模擬的電視信號進(jìn)行數(shù)字化,在系統(tǒng)傳輸運(yùn)行過程中,數(shù)字信號的完整性和接收效果比模擬電視信號好,因此目前已經(jīng)大規(guī)模發(fā)展起來了.傳統(tǒng)的模擬電視監(jiān)測方式主要是針對模擬電視信號,對數(shù)字電視播出過程中數(shù)字信號的故障和隱患不能做出判斷,因此數(shù)字電視監(jiān)測管理系統(tǒng)的建立是保障數(shù)字電視系統(tǒng)安全運(yùn)行的必要條件[1].然而在發(fā)展過程中也出現(xiàn)了一些問題,利用數(shù)字電視傳播不合法的增值業(yè)務(wù)甚至傳播不良內(nèi)容這些現(xiàn)象也在日益增加,因此數(shù)字電視的監(jiān)測除了碼流層和信道傳輸層引起的出錯監(jiān)測外,還需要進(jìn)行大量的視音頻內(nèi)容的監(jiān)測,以便為大家提供一個良好的環(huán)境.
為了實現(xiàn)視音頻內(nèi)容的監(jiān)測,在監(jiān)測系統(tǒng)中還需要對數(shù)字電視TS流進(jìn)行解碼、視音頻內(nèi)容監(jiān)測(包括視頻同步頭、黑場、藍(lán)屏、彩條;音頻音量及靜音檢測;特殊圖像識別、語音識別等),然后按照設(shè)定的碼率、幀率等要求重新對解碼后的視音頻進(jìn)行編碼,以便進(jìn)行網(wǎng)絡(luò)傳輸、存儲等,這就是視音頻的轉(zhuǎn)碼處理.當(dāng)前數(shù)字電視TS流通常都進(jìn)行加擾,所以若要對TS流解碼,先需要對TS流實施解擾以獲取干凈的TS流,之后由專用解碼器實現(xiàn)解碼,輸出視音頻數(shù)據(jù).
數(shù)字電視為了保證傳輸?shù)哪承┨囟ㄐ畔⒌陌踩?只允許具備條件的用戶接收,因而采用加擾措施.數(shù)字電視的條件接收(Conditional Access,CA)就是只允許符合條件的用戶接收特定的電視節(jié)目.加擾就是對數(shù)字電視信號進(jìn)行規(guī)律的變換或增加信號的復(fù)雜性,其基本過程是在發(fā)送端電視信號進(jìn)行載波調(diào)制前,將欲加擾的數(shù)字電視信號和一個偽隨機(jī)數(shù)字序列(Pseudo random number sequence,PRBS)做“異或”運(yùn)算,輸出就是加擾的數(shù)字電視信號.在接收端使用同一個偽隨機(jī)序列對加擾的電視信號作“異或”運(yùn)算,從而重現(xiàn)原始視信號.因此,收發(fā)端偽隨機(jī)序列在時間上必須一致,跟原先設(shè)定的初始值一樣,又稱為控制字(Control Word,CW),正確的CW是解擾的關(guān)鍵.為了安全起見,需要增加獲取CW的復(fù)雜程度,因此對其進(jìn)行加密,形成授權(quán)控制信息(Entitlement Control Message,ECM),該過程中的加密密鑰稱為授權(quán)密鑰(Authorization Key,AK)或業(yè)務(wù)密鑰(Service Key,SK)[2].發(fā)送端與接收端傳送的信息包括加擾的數(shù)字電視信號,ECM,SK[3],缺一不可.CW的具體加擾實現(xiàn)方式如圖1所示.
圖1 加擾實現(xiàn)方式
用戶獲得SK需要具備一定的條件,如交費(fèi).這些條件形成分配密鑰(Distribution Key,DK),DK對SK加密形成授權(quán)管理信息(Entitlement Management Message,EMM),一起傳送給用戶.用戶授權(quán)管理系統(tǒng)和用戶之間DK的交互,一般會通過相當(dāng)安全的渠道,如DK固化并以加密形式存儲的智能卡方式[4].用戶作為接收端,對接收的數(shù)字電視載波信號進(jìn)行一層一層、一環(huán)一環(huán)的處理,ECM和EMM信息的取出必須在解調(diào)、解復(fù)用后[4].在智能卡中用DK解密EMM獲取SK,再用SK解密ECM得到CW和電視節(jié)目的其他相關(guān)控制參數(shù),最后利用解出來的CW對偽隨機(jī)序列發(fā)生器進(jìn)行控制,解出與發(fā)送端相一致的偽隨機(jī)序列并送至解擾器[4],與加擾的電視信號進(jìn)行異或,恢復(fù)出原始的數(shù)字電視信號,從而實現(xiàn)數(shù)字電視信號的解碼或轉(zhuǎn)碼,這樣便于監(jiān)測系統(tǒng)的分析處理,有助于及時發(fā)現(xiàn)故障并實施相應(yīng)的保護(hù)措施,保證系統(tǒng)的安全運(yùn)行.
CIMAX是NUERATECH公司生產(chǎn)的DVB-CI/Cable CARD多功能接口芯片,支持DVB-CI/CI Plus以及S-CARD/M-CARD標(biāo)準(zhǔn),支持多高頻頭或多個插槽接收端設(shè)計,支持多種串行接口(如SPI,USB,TS并USB接口)橋接功能,其核心架構(gòu)是帶內(nèi)置緩沖和中斷處理的MIPS指令處理器,可過濾高達(dá)16個PID的TS包碼流處理器,并可實現(xiàn)對混合碼流或調(diào)整后碼流的同步收看與錄像功能,同時可應(yīng)用于帶多高頻頭接收機(jī)/PVR設(shè)計、USB-DVB-CI橋接系統(tǒng)或多碼流源帶CI+/CI PVR/一體機(jī)設(shè)計系統(tǒng).
CIMAX的主機(jī)接口包括SPI接口或USB接口,通信按照主機(jī)發(fā)命令、CIMAX響應(yīng)的方式,處理的信息主要有兩種,即CAM信息(主機(jī)和CA間)、REG信息(主機(jī)和CIMAX間).數(shù)據(jù)傳輸可選擇TS接口或USB接口中任意一種完成.
數(shù)字電視監(jiān)測總系統(tǒng)如圖2所示.圖2中獨立輸入兩路有線電視信號進(jìn)入高頻頭,總控CPU通過I2C接口控制選擇高頻頭頻率后,分別進(jìn)行解調(diào),輸出兩路獨立的TS流.此TS流一般包含多套節(jié)目,以及節(jié)目的管理信息(包括加解擾信息)[5].該TS流由原始信息進(jìn)行加擾后形成,為了能夠解碼,必須首先解擾.解擾采用CIMAX接口芯片配合大小CAM卡實現(xiàn),通過總控CPU配置CIMAX后,大小CAM卡協(xié)同完成TS流的解擾工作.
圖2 解擾系統(tǒng)及其在數(shù)字電視監(jiān)測中的應(yīng)用系統(tǒng)
我國數(shù)字電視采用DVB標(biāo)準(zhǔn),為了實現(xiàn)DVB解碼器和CA的獨立運(yùn)行,DVB在解碼器和CA系統(tǒng)之間定義了一個公共接口,選用個人計算存儲卡國際協(xié)會PCMCIA連接方式,同時規(guī)定了CA模塊的形式、參數(shù)和性能.因此,本文的數(shù)字電視監(jiān)測系統(tǒng)采用PCMCIA的連接方式,通過DVB_CI模塊與主機(jī)進(jìn)行連接,具體如圖3所示.
公共接口包括兩個分層結(jié)構(gòu)的邏輯接口,即TSI數(shù)據(jù)流接口和CMD命令接口.TSI接口是主機(jī)將解調(diào)出的TS數(shù)據(jù)送入外部CA模塊,加密和未加密的TS數(shù)據(jù)流處理方式不一樣,如果數(shù)據(jù)未加密,模塊將對信息不作處理,直接將該包原樣返回;如果數(shù)據(jù)包是加密或?qū)儆谠谶x定的服務(wù)列表中,則模塊需要將加密包進(jìn)行解擾并返回結(jié)果.CMD命令接口主要負(fù)責(zé)傳送CA模塊和主機(jī)之間通信的命令、密鑰、地址等,接口從上到下可分為5層,分別為應(yīng)用層、會話層、傳輸層、鏈路層、物理層.命令接口層如圖4所示.應(yīng)用層基于資源實現(xiàn)一整套協(xié)議,包括資源管理器RM、應(yīng)用信息AI和條件接收支持CA 3個基本資源,以及主機(jī)控制、日期/時間、人機(jī)接口、低速通信等輔助資源,將其定義為應(yīng)用可以使用的功能單元.會話層的功能主要給應(yīng)用提供資源的利用機(jī)制,即先與主機(jī)或其他模塊建立會話連接,再使用提供的資源[6].傳輸層采用命令響應(yīng)的形式,主機(jī)將C_TPDU命令發(fā)送給模塊,模塊接收到命令后向主機(jī)發(fā)送R_TPDU表示響應(yīng),但是對中斷方式的命令不支持[7].鏈路層位于物理層和傳輸層中間,主要對下面物理層傳來的LPDU(鏈路協(xié)議數(shù)據(jù)單元)和上面?zhèn)鬏攲觽鱽淼腡PDU(傳送協(xié)議數(shù)據(jù)單元)進(jìn)行處理,對TPDU進(jìn)行拆分和重組,使其大小控制在初始化時主機(jī)預(yù)先設(shè)定的緩沖區(qū)范圍內(nèi),同時把多個傳輸連接整合成一個鏈路連接,便于傳輸.物理層主要是接收處理鏈路層發(fā)來的LPDU,同時是與大卡直接相連的層,也會負(fù)責(zé)與其相關(guān)的一些操作.
圖3 DVB_CI模塊和主機(jī)連接結(jié)構(gòu)
命令接口(Command Interface,CI)作為公共接口,其功能的實現(xiàn)主要依賴于底層驅(qū)動模塊、CI協(xié)議棧和上層應(yīng)用的協(xié)調(diào)并共同完成.底層驅(qū)動模塊主要是針對大卡設(shè)計的,當(dāng)有大卡插入或拔出時,底層驅(qū)動模塊要提供相應(yīng)的服務(wù);當(dāng)大卡進(jìn)行讀寫操作時,亦是如此[8].CI協(xié)議棧部分完成命令接口中的物理層、鏈路層、傳輸層、會話層、應(yīng)用層之間的通信,一般有6個任務(wù),即:Physical,Link,Transport,Session,RM,Timer,分別實現(xiàn)對應(yīng)層和定時器的功能[3],其中,各層之間的通信選用消息隊列的方式來實現(xiàn).上層應(yīng)用要完成的任務(wù)有兩項:一是在按要求切換節(jié)目時,分析所選節(jié)目的PMT表,提取CA_PMT并將其發(fā)送給相應(yīng)的CA模塊,并判定是否為符合條件的節(jié)目,若是,則將進(jìn)行解擾,否則直接返回;二是將CA模塊通過人機(jī)接口進(jìn)行傳輸顯示.
圖4 命令接口層
常用的CA接入方式有3種:一是采用機(jī)卡分離的小卡方式;二是CA系統(tǒng)集成到解碼芯片中;三是CA和機(jī)頂盒解調(diào)、解碼完全分離的大卡方式.目前市場上條件接收系統(tǒng)的主流是第3種方式,它將所有CA信息和功能都集成到一個可插拔分離的條件接收組件(CA模塊大卡)中[9],解調(diào)解碼過程是透明的,因此可以批量生產(chǎn),節(jié)約成本.系統(tǒng)工作時,通過CA大卡和智能小卡協(xié)同進(jìn)行,采用DVB_CI公共接口,硬件接口和軟件接口都符合行業(yè)規(guī)范,便于與其他設(shè)備連接.DVB_CI接口功能強(qiáng)大,可同時支持兩個獨立的CA模塊,當(dāng)然也可只支持一個CA模塊,本系統(tǒng)采用的CIMAX就是支持兩個獨立CA模塊的DVB_CI/Cable CARD的多功能接口芯片,以提高系統(tǒng)的接口能力.
由于數(shù)字電視信號傳播形式、傳播媒介的不同,增大了接收模塊設(shè)計的復(fù)雜程度,從節(jié)約資源和大范圍符合多種形式信號接收要求方面考慮,本系統(tǒng)的CA接入方式采用機(jī)卡分離方案,將數(shù)字電視終端中的通用部分(硬件)獨立出來,做成“機(jī)”的形式[10],而把各地廣電運(yùn)行商的條件接收系統(tǒng)CA,以及中間件、數(shù)據(jù)廣播、電子節(jié)目指南EPG等諸多增值服務(wù)部分做成“卡”.如今對于用戶來說,“機(jī)”好比一把智能“鎖”,“卡”就相當(dāng)于“鑰匙”,將CA和機(jī)頂盒分離,有利于更好地保護(hù)節(jié)目制造商的產(chǎn)權(quán).
PCMCIA接口方案采用DVB-CI大卡,將其解擾、解密等需要保密的專有功能集中在一個可拆卸的CA模塊(PC卡)中,而機(jī)頂盒只包含調(diào)諧器、解調(diào)器、解復(fù)用器和MPEG2解碼器等必須的設(shè)備,其功能趨于通用化[11],可插入不同廠家、不同類型的PC卡,機(jī)頂盒與CA模塊之間通過一個公共接口CI來連接和通信,完成節(jié)目解密.公共接口在邏輯上分為傳輸流接口(TSI)和命令接口,它們協(xié)議的具體實現(xiàn)都是分層的.傳輸流接口主要承擔(dān)TS流的傳輸,比較專一;命令接口需要承擔(dān)建立和維護(hù)機(jī)卡之間的所有通信連接,所以其結(jié)構(gòu)相對復(fù)雜一些.
系統(tǒng)的建立由硬件和軟件部分共同協(xié)調(diào)完成,實現(xiàn)CIMAX解擾TS流的軟件模塊主要有CI初始化、主機(jī)與應(yīng)用建立連接、主機(jī)與CA進(jìn)行交換等.模塊流程如圖5所示.
由圖5可知,CI初始化主要是將解擾過程中所用到的參數(shù)進(jìn)行初步設(shè)置,比如對CAM插入的檢測,主機(jī)與CA模塊所設(shè)定的緩沖區(qū)大小等信息的設(shè)定;主機(jī)與應(yīng)用之間根據(jù)資源及所提供的管理機(jī)制建立正常通信,在建立過程之中,主機(jī)查詢所有傳輸連接上的輪廓并得到響應(yīng),列出所有可用資源列表并繼續(xù)進(jìn)行應(yīng)用信息以及CA信息的查詢;主機(jī)與CA模塊的交換主要是發(fā)送命令,并得到回應(yīng),比如發(fā)送CAPMT,獲取選定節(jié)目的相關(guān)信息.
命令接口傳輸層協(xié)議中主機(jī)及模塊狀態(tài)轉(zhuǎn)移如圖6所示.主機(jī)及模塊狀態(tài)轉(zhuǎn)移,一般是處在空閑狀態(tài)下,當(dāng)收到主機(jī)命令時,需要建立請求進(jìn)入工作狀態(tài),即切換到有效狀態(tài),有效請求建立完成以后發(fā)送請求內(nèi)容,相反,若超時,則直接到空閑狀態(tài).發(fā)送完畢后會進(jìn)行刪除請求回到空閑狀態(tài),刪除過程若是超時也會自動切換到空閑狀態(tài),以節(jié)省空間,提高CPU運(yùn)行效率.模塊一般是在收到主機(jī)命令Create_T_C時,發(fā)送C_T_C_Reply請求,并建立有效請求,當(dāng)有效請求完成任務(wù)時,會發(fā)送D_T_C_Reply,收到Delete_T_C后,直接切換到空閑狀態(tài),或者處于“正在刪除”過程中,若此過程超時,自動轉(zhuǎn)入空閑狀態(tài).
圖5 軟件模塊流程
圖6 主機(jī)及模塊狀態(tài)轉(zhuǎn)移流程
數(shù)字電視監(jiān)測系統(tǒng)中,TS流的解擾是關(guān)鍵環(huán)節(jié).本文分析了TS流的加擾和解擾的原理,采用CIMAX接口芯片和大小CAM卡,實現(xiàn)兩路獨立TS流的解擾功能,對于解擾后的TS流可以直接送給通用解碼器進(jìn)行解碼以實現(xiàn)視音頻識別處理等功能,也可以傳送至網(wǎng)絡(luò),從而分配給不同的解碼器實現(xiàn)解碼或直接進(jìn)行網(wǎng)絡(luò)存儲,以及監(jiān)測系統(tǒng)的智能化,方便值班人員對信息及故障的查詢.該方案功能強(qiáng)大,系統(tǒng)性價比高,具有很高的實用價值.
[1] 袁三男.數(shù)字電視監(jiān)測系統(tǒng)的碼流分析和3級報警的研究和實現(xiàn)[J].上海電力學(xué)院學(xué)報,2013(5):472-476.
[2] 黃珊.數(shù)字機(jī)頂盒機(jī)卡分離方案研究與設(shè)計[D].福州:福州大學(xué),2010.
[3] 胡戈,任勝兵,王國軍,等.條件接收系統(tǒng)中的密鑰分配及尋址優(yōu)化研究[J].計算機(jī)技術(shù)與發(fā)展,2009,19(11):143-146.
[4] 張德樹.數(shù)字電視智能卡條件接收系統(tǒng)加解擾與加解密[J].滁州職業(yè)技術(shù)學(xué)院學(xué)報,2009(2):55-57.
[5] 袁三男,王紹徐.數(shù)字電視碼流的分析轉(zhuǎn)換[J].電視技術(shù),2010(12):11-14.
[6] 廖敏捷.數(shù)字電視條件接收系統(tǒng)多密技術(shù)的研究與實現(xiàn)[D].成都:電子科技大學(xué),2007.
[7] 龍躍.數(shù)字電視機(jī)卡分離標(biāo)準(zhǔn)符合性測試系統(tǒng)的研究[D].哈爾濱:哈爾濱理工大學(xué),2006.
[8] 廖敏捷,于鴻洋.支持多模塊的DVB通用接口的實現(xiàn)[J].中國有線電視,2006(22):2 172-2 174.
[9] 袁吉.DVB-C 機(jī)頂盒信源解碼器主控部分的硬件設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2007.
[10] 昂志敏,段勇.基于 SCAI 的通用 CA 軟件架構(gòu)的研究與實現(xiàn)[J].中國有線電視,2007(22):2 088-2 091.
[11] 楊婕婕,葉宇煌,蘇凱雄.數(shù)字機(jī)頂盒公共接口的設(shè)計與實現(xiàn)[J].有線電視技術(shù),2011(8):104-106.
ApplicationofDoubleTSStreamsDescramblerBasedonCIMAXandCAMCardsinDigitalTVMonitoringSystem
YUAN Sannan
(SchoolofElectronicsandInformationEngineering,ShanghaiUniversityofElectricPower,Shanghai200090)
Digital TV system monitoring and descrambling of Transport Stream(TS) is introduced,and the principle of scrambled and descrambled TS stream is analyzed.Interface chip cards based on CIMAX and big/small CAM cards are proposed to achieve two independent TS stream.This descrambling system combines hardware and software to realize the completion of descrambling,and has been successfully used in digital television monitoring system.
digital TV monitoring; transport stream(TS); descrambler; interface chip CIMAX; Big/small CAM cards
10.3969/j.issn.1006-4729.2017.05.019
2016-03-18
袁三男(1967-),男,博士,副教授,江蘇蘇州人.主要研究方向為通信與信息系統(tǒng),流媒體網(wǎng)絡(luò),數(shù)字電視,嵌入式系統(tǒng).E-mail:samuel.yuan@shiep.edu.cn.
TN949.197
A
1006-4729(2017)05-0505-06
(編輯 桂金星)