謝 鋒(廣西廣播電視技術中心)
?
基于FPGA的多通道音視頻解碼器設計與實現
謝 鋒
(廣西廣播電視技術中心)
[摘 要]廣播電視信源傳輸鏈路穩定可靠是保障安全播出的重要環節,結合目前我區村村通廣播電視無線覆蓋工程的實際情況,綜合考慮臺站實際應用需求,研究了多通道信源解析處理、FPGA解復用、TS流解碼的關鍵技術,并在實踐中檢驗。實踐證明,采用新技術研發的基于FPGA的多通道音視頻解碼器,在全區鄉鎮無線覆蓋建設中起到了積極的推動作用。
[關鍵詞]FPGA解TS流復用;DTMB/DVB-S射頻調諧與解調;TS流解碼
一直以來,廣西壯族自治區新聞出版廣電局積極推進廣播電視農村公共服務平臺建設,特別是2013年開始大力開展鄉鎮無線發射臺站建設。目前,鄉鎮調頻前端信源系統采用有線電視機頂盒解碼出音頻信號送至FM調制器,將信號調制到所需頻率后利用原農村有線電視網通過光纖傳輸至鄉鎮發射臺站進行發射覆蓋。此種方式存在以下問題:
(1)有線電視機頂盒為民用產品,功能及接口單一,工作穩定性不佳,長時間工作容易出現死機等現象,作為鏈路信源不可靠。
(2)有線電視機頂盒無遠程監控功能,遠程不可控,且無法得知其工作狀態。
(3)一個有線電視機頂盒目前只能解碼出一個音視頻節目,多套節目必須得多個機頂盒同時工作,數量多,維護不便,不能滿足臺站實際使用需求。
前端信號源系統的建設,關乎安全播出,必須足夠穩定可靠。因此自主研發多通道音視頻解碼器,采用多通道輸入、多路音視頻輸出的方式,解決前端信源問題尤為重要。
目前我區廣播電視無線覆蓋村村通工程中信號源采用共源方式的信號源系統,多通道音視頻解碼器輸出多路信號作為信源提供給調頻調制器。FM調制器對信號進行調制后通過光纖傳輸的方式送至鄉鎮調頻發射臺站發射機進行功率放大并上天線發射覆蓋。
其應用方案如圖1所示。

圖1 多通道音視頻解碼器在鄉鎮無線覆蓋信號源前端的應用
多通道音視頻解碼器具備四種信號輸入方式,分別是DTMB射頻信號輸入(RF_1)、衛星射頻信號輸入(RF_2)、MPEG-2格式TS流輸入,以及IP幀格式TS流輸入。四種輸入方式均可實現數據碼流的解復用、解析和解碼,最終還原音視頻信號,以多路的方式輸出,每一路音視頻信號對應一個用戶已選擇解碼的節目。信號輸入方式的多樣性,使得多通道音視頻解碼器適用范圍更廣,應用更加靈活,滿足多方面用戶需求。

圖2 多通道音視頻解碼器電源接口、信號輸入輸出接口
多通道音視頻解碼器的硬件設計,主要分為核心主板和OLED液晶顯示及按鍵板,單一+5V/2A開關電源供電,2U標準機箱,設備所有輸入輸出信號均由核心主板連接至機箱后面板相關接口。核心主板接口如圖2所示,核心主板原理框圖如圖3所示。

圖3 多通道音視頻解碼器主板原理框圖

圖4 信道調諧及解調
多通道音視頻解碼器主要由DTMB射頻信道調諧解調電路、衛星射頻信道調諧解調電路、以太網IP幀格式TS流轉SPI總線傳輸電路、MEPG-2格式TS流串行轉并行電路、FPGA解析解復用電路、ARM單片機控制電路、音視頻解碼電路、以太網通信電路、音視頻驅動及濾波電路構成。
設計原理:信道調諧解調電路具有兩種模式,DTMB射頻信號輸入方式,衛星信號輸入方式,均實現數字電視射頻信號轉換為標準8位并行MEPG-2格式TS流數據。以太網IP幀格式TS流收發電路通過DM9161AEP芯片實現接收以IP幀格式傳輸的TS流數據,并通過SPI總線的方式送至FPGA。MEPG-2 TS流串行轉并行電路實現TS流由異步串行傳輸方式轉換為8位并行傳輸方式。FPGA對此四種方式輸入的TS流進行解析解復用處理,每個節目流以其在TS包中的PID字段來區分。FPGA將接收到的每一個TS包(188字節與204字節自適應)先送入一個由FPGA內置RAM組成的緩沖區,然后進行解包,解析出每一個包的PID號、PAT表、PMT表等信息進行存儲并傳送給ARM單片機主控處理,FPGA再通過比較判別算法提取用戶想要輸出的TS包送至FPGA指定的端口輸出,未被選擇的TS包將被拋棄。多通道多路音視頻解碼器對每一路輸入的TS流數據進行解壓縮、解包,解出原始音視頻PES流及其它同步控制和數據信息,存儲到外部DDR3 SDRAM存儲器上。解碼芯片通過MEPG-2硬解碼再將各種數據信息還原成完整的視頻和伴音信號。視頻信號經過視頻編碼,濾波電路調整,輸出復合視頻信號(CVBS)。數字音頻信號經過解碼芯片內置高精度D/A模塊轉換和外置功放放大后輸出左右聲道音頻信號。多通道音視頻解碼器目前設計為九路音視頻信號的獨立解碼,四種輸入方式中任意一種均可實現獨立的九路解碼輸出,完全滿足臺站實際使用需求。
2.1DTMB射頻信道調諧及解調
數字電視射頻信號的調諧及解調電路主要由MXL5007調諧芯片和ATBM8869解調芯片組成,輸入主板RF接口的射頻信號經過MXL5007硅調諧器將射頻進行下變頻至零頻或中頻頻率信號,解調器ATBM8869芯片接收MXL5007硅調諧器輸出的已調諧信號進行解調并輸出標準TS流信號。如圖4所示。
ARM主控單片機通過IIC總線完成對調諧及解調的通信和控制。調諧器MXL5007調諧范圍為44 MHz至885MHz,內部集成頻點濾波器,具有片上94dB增益,3dB環回輸出,能適應幾乎所有具有可兼容IIC數字總線控制接口的解調芯片。ARM主控單片機主控程序首先對MXL5007進行軟件復位,初始化MXL5007,包括選擇需要調諧的電視標準模式、設置輸出中頻頻率、設置內置PLL參考時鐘頻率、設置輸入的射頻調諧頻率、設置8MHz的帶寬間隔、將射頻頻率轉換成16bits格式寫入MXL5007相應的寄存器,等待芯片調諧成功后才能輸出已調諧的信號送至ATBM8869進行解調。
ATBM8869是用于DTMB國標地面數字電視的一款數字解調芯片,具有穩定可靠的解調算法。ARM單片機主控程序首先初始化ATBM8869的IIC接口,設置輸入信號頻率,設置調諧器類型,設置TS流輸出格式,初始化寄存器內容,按照芯片數據手冊要求在相應寄存器寫入初始數值,然后設置解調芯片工作模式,自動循環檢測解調,查詢接收狀態寄存器的數值,如果該數值是0x78或者0x79,表示載波和時間已經鎖定,均衡器工作正常,其它值則說明芯片還沒處在穩定狀態,還需繼續均衡。如果寄存器0x000D的數值是0x78或者0x79,并且0x0005寄存器數值的最低位是1,說明信道解調成功,如果是0則不成功,需要循環檢測。射頻調諧及解調流程如圖5所示。
最后ATBM8869輸出并行8位TS流數據到下一個FPGA解析、解碼流復用模塊進行進一步處理。
2.2FPGA信號解析、解碼流復用
多通道音視頻解碼器采用高性能FPGA實現信號的解析、解復用。使用片上RAM創建一個FIFO接收模塊。此模塊為FIFO緩沖區,包括兩個4字節的緩沖區,用于取出信息包的PID號并將取得的PID號送入PID表控制模塊,以便FPGA將其與用戶選中的PID號相比較,根據情況以決定存儲或丟棄。
使用FPGA實現傳輸流解復用器。FPGA內部模塊有信道接口、信道FIFO、PID處理器、PID后處理器、內部音視頻接口和節目時鐘提取電路等組成。其中信道接口提供自動傳輸包同步字節檢測,及實現同步鎖定與未鎖定的具有可編程延遲時間的滯后機構。一旦建立同步,信道接口就通過信道FIFO將完整的傳輸包傳輸到PID處理器。信道接口還檢查傳輸包的完整性,指示傳輸錯誤等。最終輸出九路經過分離和篩選的TS流,送至下一個解碼模塊。

圖5 調諧及解調程序流程
2.3TS流解碼
多通道音視頻解碼器采用楊智DTMB芯片M3381T實現TS流的解碼,自適應MPEG-2、H.264、AVS編碼格式的TS流。M3381T集成嵌入式CPU,集成數據控制單元、編碼器、輸出接口、RGB處理器和DA轉換器等部分,TS流經過解碼器芯片后輸出CVBS格式復合視頻信號。對于音頻處理部分,M3381T集成了一個音頻DA轉換器,是一種具有可編程鎖相環(PLL)的立體聲數模轉換器,其作用是將由音視解碼器輸出的PCM音頻數據轉換成具有左、右聲道的模擬立體聲音頻信號,再經過放大后輸出。
多通道音視頻解碼器采用一片32位的ARM單片機STM32F103VET6作為整個設備的控制、數據采集和通信處理核心??刂瞥绦蚴褂眯⌒蚒COS嵌入式操作系統,可以實現程序并行運行、實時處理各個任務的請求,程序流程如圖6所示。
程序啟動經初始化后,并行執行流程圖6中各項任務。操作界面可以通過面板按鍵和OLED液晶顯示屏來操作。OLED液晶顯示眾多菜單和功能列表,其包含的主要功能為:整機參數設置、參數讀取、功能配置以及設備運行狀態的實時讀取。此外還可以通過以太網接口連接上位機客戶端來實現本地控制,通過以太網接口接到網絡以實現遠程通信和控制,設備所有的參數及狀態都可以通過以太網接口來和用戶進行交互。
多通道音視頻解碼器從項目立項到樣機生產并測試,所測音視頻指標均符合項目預期要求。在實際環境應用中運行狀況良好,多種通道輸入的設計方式應用更加廣泛靈活,實用效果明顯。
廣播電視無線覆蓋網建設的快速發展和推進,不僅給廣電發展帶來了巨大挑戰和機遇,還滿足了廣大農村邊遠地區人民群眾收聽收看廣播電視的迫切期望和需求。自主研發的多通道音視頻解碼器對全區廣大鄉鎮實現無線無縫覆蓋起到了安全播出保障作用,產生了積極的社會效益,具有良好的應用前景和推廣價值。

圖6 ARM單片機控制程序流程圖
參考文獻
[1]周潤景,圖雅,張麗敏.基于Quartus II的FPGA/ CPLD數字系統設計實例[M].北京:電子工業出版社,2007,39-348.
[2]郭里婷,蘇凱雄.DVB-S接收系統的結構及其性能分析[J].福州大學學報(自然科學版),1996,6.
[3]GB/T 26686-2011.地面數字電視接收機通用規范[S].2001.
[4]張楚等.H.264片上高速可變長解碼器設計[J].電子測量技術,2007年30卷10期:7-10,32.
[5]畢厚杰.視頻壓縮編碼標準——H.264/AVC[M].北京:人民郵電出版社,2005.