楊 霏,程 磊
(1.中國傳媒大學(xué) 信息工程學(xué)院,北京 100024;2.中國移動北京公司 網(wǎng)絡(luò)運(yùn)行支撐中心,北京 100053)
地面數(shù)字電視廣播傳輸系統(tǒng)支持多頻網(wǎng)(MFN)和單頻網(wǎng)(SFN)兩種組網(wǎng)模式。MFN模式是指相鄰發(fā)射臺使用不同的頻道發(fā)送同一個節(jié)目的無線傳輸網(wǎng)絡(luò);而SFN模式是指由多個位于不同地點、處于同步狀態(tài)的發(fā)射機(jī)組成的數(shù)字電視覆蓋網(wǎng)絡(luò),網(wǎng)絡(luò)中的各個發(fā)射機(jī)以相同的頻率、在相同的時刻發(fā)射相同的節(jié)目信號,以實現(xiàn)對特定服務(wù)區(qū)的可靠覆蓋。相對MFN模式而言,SFN模式具有頻譜利用率高、網(wǎng)絡(luò)覆蓋質(zhì)量好、便于頻率規(guī)劃、降低發(fā)射機(jī)功率、減少電磁污染等優(yōu)勢。但同時,地面數(shù)字電視廣播單頻網(wǎng)的網(wǎng)絡(luò)結(jié)構(gòu)也更復(fù)雜,網(wǎng)絡(luò)建設(shè)和維護(hù)成本更高[1]。這里,筆者參考地面數(shù)字電視的單頻網(wǎng)國家標(biāo)準(zhǔn)[2],設(shè)計并研發(fā)了一款符合國標(biāo)的單頻網(wǎng)適配器。
圖1是國標(biāo)中規(guī)定的地面數(shù)字電視單頻網(wǎng)組網(wǎng)系統(tǒng)的結(jié)構(gòu)框圖。主要由單頻網(wǎng)適配器、TX網(wǎng)絡(luò)適配器、RX網(wǎng)絡(luò)適配器、同步系統(tǒng)、地面數(shù)字電視激勵器以及全球定位系統(tǒng)(GPS)接收機(jī)等部分組成[2-4]。
其中,根據(jù)單頻網(wǎng)適配器在單頻網(wǎng)中的位置,該設(shè)備需要實現(xiàn)的主要功能有:1)根據(jù)用戶的要求生成秒幀初始化包(SIP),并按標(biāo)準(zhǔn)要求插入TS流中。SIP中包含國標(biāo)要求的工作模式、最大延時、對單個發(fā)射機(jī)尋址特殊控制等信息。2)按標(biāo)準(zhǔn)規(guī)定使不同的發(fā)射機(jī)工作模式自適應(yīng)不同的傳輸碼率。用FPGA編程實現(xiàn)碼率適配,以GPS時鐘為基準(zhǔn),通過插空包來調(diào)整碼率。3)由于插入SIP,原TS流的某些信息失效,需要對其進(jìn)行調(diào)整和更新,如節(jié)目參考時鐘(PCR)更新。
圖2所示為單頻網(wǎng)適配器的硬件設(shè)計框圖。
適配器硬件系統(tǒng)中:人機(jī)控制由液晶屏、按鍵、以太網(wǎng)接口及ARM平臺組成,完成參數(shù)的設(shè)置和狀態(tài)顯示;接口芯片CY7B923和CY7B933完成TS流的輸入輸出適配;GPS接收模塊接收GPS信號,馴服恒溫晶振,為系統(tǒng)提供穩(wěn)定的頻率參考和時間參考信號;時鐘及鎖相環(huán)電路,產(chǎn)生鎖定在GPS頻率參考上的27MHz和14.592MHz時鐘信號,供FPGA程序處理使用,其中14.592 MHz可以產(chǎn)生國標(biāo)地面數(shù)字電視標(biāo)準(zhǔn)中33種不同模式的碼流適配速率。
該單頻網(wǎng)適配器的核心功能均是由FPGA軟件編程來實現(xiàn)的,其系統(tǒng)框圖如圖3所示。
由于單頻網(wǎng)適配器的輸入是DVB-ASI信號,通過FPGA控制高速串行數(shù)據(jù)通信接收芯片CY7B933,將原DVB-ASI信號轉(zhuǎn)換為并行數(shù)據(jù)送入FPGA以便進(jìn)行后續(xù)的信號處理。
本模塊首先接收TS碼流,利用一個異步FIFO提取有效數(shù)據(jù),并進(jìn)行碼流同步,明確每個字節(jié)在包中的位置。
并行碼流送入FPGA后,要實現(xiàn)對有效碼流和有用信息的提取存儲,即碼流解析。之后,將有效碼流數(shù)據(jù)包、系統(tǒng)根據(jù)用戶配置信息生成的SIP包按照標(biāo)準(zhǔn)進(jìn)行重組,并按標(biāo)準(zhǔn)進(jìn)行碼率適配,同時還需進(jìn)行PCR更新。
碼流解析及碼流重組模塊是整個軟件編程中的重點和難點,其基本框圖如圖4所示。
4.2.1 碼流解析
從圖4中可知,刪除空包和提取PCR信息是該模塊的兩個主要組成部分。由于TS流用PID來標(biāo)識該包的數(shù)據(jù)類型,可以通過提取并判斷該包的PID是否為空來確定該包是否為空包。如果是空包,則不將其送入下一個RAM模塊,直接丟棄。
提取PCR信息部分還分為提取PCR的PID以及信息字段兩個部分。首先要過濾解析PAT表、PMT表,提取PCR包的PID信息。然后,從TS流中過濾PCR數(shù)據(jù)包。由于從PCR包中提取PCR信息后需要重計算,此部分內(nèi)容將在PCR更新模塊(4.2.2節(jié))詳細(xì)敘述。
4.2.2 PCR的更新
PCR作為編碼器中時鐘定時的比較參考信號,由編碼器端的27 MHz時鐘信號抽樣產(chǎn)生。它是42 bit的碼字,由兩部分組成:一部分以系統(tǒng)參考時鐘的1/300(90 kHz)為單位,稱為PCR基礎(chǔ)部分,長33 bit;另一部分稱PCR擴(kuò)展部分,直接以系統(tǒng)參考時鐘(27MHz)為單位,長9 bit。PCR在MPEG-2系統(tǒng)中非常重要,其攜帶的信息相當(dāng)于編碼器端的時鐘信息,解碼器利用PCR信息,通過解碼端的鎖相環(huán)電路修正解碼器的系統(tǒng)時鐘,使其達(dá)到與編碼器端時鐘趨于一致的27 MHz時鐘。其視頻和音頻抽樣時鐘也需要鎖相于該系統(tǒng)時鐘,也就是說,視音頻解碼過程能否正常進(jìn)行,首先取決于解復(fù)用器能否準(zhǔn)確恢復(fù)PCR。PCR信息在DVB標(biāo)準(zhǔn)中要求至少每隔40 ms被傳輸一次,通常情況下,PCR不直接改變解碼器的本地時鐘,而僅作為參考基準(zhǔn)來調(diào)整本地時鐘,使解碼器的本地時鐘與PCR趨于一致,從而與編碼端的時鐘趨于一致[5]。
PCR信息是節(jié)目時鐘參考的依據(jù),但當(dāng)該TS流送入單頻網(wǎng)適配器后,要對其刪空包、插SIP包、碼流適配,這一系列操作使得原來的PCR數(shù)據(jù)變的無效,所以,單頻網(wǎng)適配器內(nèi)部也需要一個27 MHz的計數(shù)器,將原TS流中的PCR信息提取、重計算后再插入輸出的TS流中。
綜上所述,PCR信息更新的基本原理是將原PCR包的PCR信息記錄下來,在該P(yáng)CR包要輸出時,將該包在本系統(tǒng)中逗留的時間 (該包離開本系統(tǒng)和進(jìn)入本系統(tǒng)時本地27 MHz計數(shù)器的計數(shù)值差)加在原PCR信息上,就得到更新后的PCR值,與TS流一并輸出。按照PCR的更新原理可以得到
式中:ΔPCR本地可以由 PCR本地出-PCR本地入來獲得,所以可得
從式(2)可得這樣的實現(xiàn)方法(見圖5):首先,當(dāng)TS流進(jìn)入系統(tǒng)后,首先通過已找到的PCR包的PID信息找到PCR數(shù)據(jù)包,將其包頭0x47改為其他值,方便在輸出部分被快速找出。同時將PCR信息與本地27 MHz計數(shù)器相減,相減后的值仍插入TS流中,一并送入TS流的RAM中。在輸出階段,在發(fā)現(xiàn)包頭位置為預(yù)先設(shè)定的其他值時,可以立刻確定該包為PCR包,將PCR信息提取出來與本地27 MHz計數(shù)器的當(dāng)前值相加,最后插入TS流中送出系統(tǒng),完成PCR信息的更新。
4.2.3 碼流重組
碼流重組模塊主要實現(xiàn)兩種功能:1)將原TS流、SIP包、空包按國標(biāo)要求調(diào)整輸出順序,控制SIP包的輸出時間;2)根據(jù)單頻網(wǎng)不同的工作模式進(jìn)行碼率適配。
根據(jù)GY/T229.1-2008[2]中的要求,每秒應(yīng)向TS碼流中插入1個SIP包,并且插入時刻要與GPS的秒脈沖對齊。軟件實現(xiàn)TS包的發(fā)送順序如圖6所示。每個TS包發(fā)送完畢后,都會進(jìn)入等待發(fā)送下一個TS包的時刻,這時,首先判斷程序是否一直能檢測到秒脈沖,若秒脈沖的狀態(tài)良好,則在其到來的同時,發(fā)送SIP包;如果當(dāng)前狀態(tài)不是秒脈沖到來時刻,或者不應(yīng)該發(fā)送SIP時,則檢測輸入TS流的RAM中是否有未發(fā)送的TS包,若有,發(fā)送TS流RAM中的數(shù)據(jù)包,若沒有,則發(fā)送空包。在秒脈沖到來的這一時刻,不能有其他TS包正在發(fā)送的現(xiàn)象,否則會因為發(fā)送的TS包突然中斷而造成個別TS包不完整。這個問題可以通過嚴(yán)格適配TS流的輸出碼率來避免。
GY/T229.1-2008[2]中還明確規(guī)定了在不同的調(diào)制方式、幀頭模式、編碼效率情況下,1個秒幀(即1 s)中包含TS包的數(shù)量。首先,根據(jù)工作模式的信息,確定發(fā)送TS流碼率。采用14.592 MHz的時鐘,可以滿足國標(biāo)中規(guī)定的所有模式下的TS包率,可以保證在1 s內(nèi)正好發(fā)完相應(yīng)的包數(shù)。而數(shù)據(jù)發(fā)送和輸出部分是以27 MHz為控制時鐘,在發(fā)送時要保證均勻發(fā)送每個TS字節(jié)。
數(shù)據(jù)發(fā)送和輸出控制模塊,將處理后的碼流送入高速串行數(shù)據(jù)通信發(fā)送芯片CY7B923,同時向CY7B923提供控制信號,通過此芯片將并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)后輸出。
用戶設(shè)定模式的參數(shù)獲取模塊,通過RS-232串口通信協(xié)議實現(xiàn)與外部ARM控制平臺的通信,獲取由用戶設(shè)定的單頻網(wǎng)工作模式的相關(guān)參數(shù)。
參照國標(biāo)中的要求,對經(jīng)單頻網(wǎng)適配器實現(xiàn)的功能、輸出TS流的指標(biāo)進(jìn)行了測試,其輸出的SIP包內(nèi)容正確,輸出的TS流碼率、PCR抖動以及TS流抖動各項指標(biāo)均符合國標(biāo)要求。配合碼流復(fù)用器、地面數(shù)字電視調(diào)制器、測試機(jī)頂盒構(gòu)建系統(tǒng),對單頻網(wǎng)適配器進(jìn)行測試,機(jī)頂盒接收正常,視頻圖像流暢。
[1]馮景峰,劉駿,李國松.國家地面數(shù)字電視標(biāo)準(zhǔn)單頻網(wǎng)技術(shù)研究[J].廣播與電視技術(shù),2008(6):23-26.
[2]GY/T229.1-2008,地面數(shù)字電視廣播單頻網(wǎng)適配器技術(shù)要求和測量方法[S].2008.
[3]宋靖濤,陳雪紅.單頻網(wǎng)適配器關(guān)鍵技術(shù)研究與實現(xiàn)[J].中國有線電視,2007(8):738-741.
[4]吳治慶,楊小雪,余少波.DTMB單頻網(wǎng)適配器設(shè)計[J].電視技術(shù),2008,32(11):7-10.
[5]秦娟,吳琪,宣玉棟,等.數(shù)字電視PCR分析及校正實現(xiàn)[J].現(xiàn)代電視技術(shù),2008(1):47-48.