|
嵌入式培訓公司要不要_基于雙嵌入式處理器的高清數字電視設計,
作為一種高品質的數字多媒體播放器和高性能的網絡信息終端,基于嵌入式系統實現的高清數字電視技術將是下一代消費電子市場的熱點。文章給出了一種內置機頂盒模塊的雙嵌入式處理器高清數字電視系統,提出實現該系統單一系統映像的方法。
1 引言隨著數字傳輸技術和圖像處理技術的提高,電視技術正逐步從SDTV(Standard Definition TV,標準清晰度電視)過渡到HDTV(High Definition TV,高清晰度電視)。高清數字電視符合人們對高品質的數字多媒體播放和高性能的網絡信息終端的需要,具備廣闊的市場前景,其基于嵌入式系統技術的實現也成為嵌入式領域的新熱點[1-2]。 高清電視是指播放畫質超過720p或者1080i的高清晰度電視系統(i表示隔行掃描,p表示逐行掃描)。目前標清的播放畫質為480i,而DVD最高畫質可以達到480p,即720x480逐行顯示的標準,可見高清電視要比最清晰的DVD還要清晰許多。美國的高清標準主要有兩種格式,1280×720p/60Hz和1920×1080i/60Hz,歐洲支持1920× 1080i/50Hz。 數字電視的標準主要有美國的ATSC和歐洲的DVB兩種。二者的信源編碼都采用MPEG2,信道編碼和調制方式不同。ATSC針對地面廣播;DVB分為衛(wèi)星(DVB-S)、有線(DVB-C)和地面(DVB-T)等方式。 當前市場上的高清電視系統本身并沒有接收數字電視信號的功能,主要還是接收的普通模擬電視信號,如果要接收數字電視、瀏覽網絡信息,還需要外置機頂盒。由于外置機頂盒和電視機是兩套系統,有各自獨立的用戶界面,包括兩套遙控器和OSD界面(On-Screen-Display),使用過程中會給用戶帶來不便,而目前將二者功能合一的單機系統方案還不成熟,成本也高。如果利用比較成熟的機頂盒芯片方案內置在高清電視系統中,將獲得低成本、高性能的高清數字電視解決方案[3]。 DVB-T接收方便,應用廣泛,本文將給出一種基于多嵌入式處理器的高清DVB-T數字電視的設計,在模擬高清電視中內置DVB-T數字信號接收模塊,通過實現HDTV模塊與DVB-T模塊處理器之間的雙機通信來同步處理任務,最終組合成一個完整的數字高清電視系統。為了將兩個獨立的模塊進行組合,文章提出了實現該系統單一系統映像的方法,通過單一系統映像為用戶提供單一的用戶操作界面,單一的顯示界面,單一的數據維護,使用戶感覺是一套系統在運行。 2 系統硬件結構 2.1 DVB-T模塊 DVB-T接收模塊基于ST公司的高清機頂盒解碼芯片Sti7710[4],由32位RISC CPU ST20和MPEG2 A/V解碼器組成,A/V解碼器是MP@HL規(guī)格的,支持1280×720p或1920× 1080i高清分辨率輸出,其系統硬件框圖和信號流程如圖1所示。DVB-T模塊分三個部分:前端接收解調、A/V解碼、A/V輸出。 前端接收解調由Tuner和解調器組成,地面?zhèn)鬏數腄VB-T數字電視信號通過Tuner接收,Tuner將中頻信號傳送給QAM解調器。解調器采用ST的芯片STV0370,可以解調COFDM調制的信號,解出MPEG TS流。TS流通過并行或串行方式輸入Sti7710,進入MPEG2 A/V解碼部分。 MPEG2 A/V解碼器首先主要對TS流進行處理,在解復用后提取MPEG2壓縮的音視頻數據,解碼得到圖像,再加上OSD顯示,以模擬和數字音視頻的方式輸出。A/V輸出有模擬和數字多種方式,模擬視頻有RGB、YPbPr等方式輸出,數字視頻可以通過HDMI編碼和DVI接口輸出[5-7]。 2.2 HDTV模塊 HDTV模塊基于Trident公司的模擬高清方案,實現一個接收模擬電視信號的高清電視機的功能。其系統框圖如圖1所示。 模塊支持RGB、YPbPr、CVBS等模擬視頻輸入和HDMI數字視頻輸入,并會對圖像進行相應處理,并疊加自己的OSD系統。處理器由兩個部分組成,一個是16位的M16C/62系列MCU,負責執(zhí)行電視主控程序,控制電視系統的運行;另一個是圖像處理器SVP-EX52,在MCU的控制下處理輸入的圖像數據并輸出給屏幕顯示。圖像處理器的主要功能有以下幾點,一是將輸入的隔行掃描的圖像轉換成逐行掃描的圖像,二是將輸入的24Hz,30Hz等低于60Hz場頻的圖像轉換成60Hz,三是對畫面解析度和形狀大小進行調整,重新填寫像素矩陣,使得圖像可以按需求縮放和處理。 高清信號的數據量很大,以1280×720p為例,每秒需要輸出給顯示屏幕的圖像數據量為1280×720×24×60bit,約等于1.327Gbit,所以傳輸率要求非常高。LVDS即低電壓差分信號技術達到幾個Gbit的傳輸率,可以滿足需要,所以圖像處理器輸出的高清視頻信號需要調制成LVDS信號傳給大尺寸的LCD液晶屏幕或者PDP等離子屏幕。
圖1 系統硬件結構 2.3 模塊接口 兩個模塊的音視頻通過HDMI接口連接,HDMI(High-Definition Multimedia Interface)是用在高清多媒體領域的新的音視頻接口技術,有很多優(yōu)點,體現在以下幾個方面: ①HDMI可以無壓縮傳送全數字音視頻數據,不需經過D/A和A/D兩次轉換,所以傳輸沒有損失,質量最好。②HDMI傳輸帶寬高達5Gbps,目前只使用2.5Gbps,可以滿足720p,1080i等各種分辨率視頻信號的傳輸要求。 ③相對模擬視頻傳輸有更高的抗干擾能力。 ④連接簡單,使用方便。只用一根電纜即可實現音視頻連接和簡單數據傳輸功能。 ⑤提供HDCP(High-bandwidth Digital Content Protection)技術,可以保護通過該接口傳輸的媒體的版權。 UART接口是嵌入式系統中常用的通信接口,兩個嵌入式CPU,Sti7710和M16C/62都支持UART接口,所以通過它交換命令和數據,實現兩個CPU的任務同步和數據交換,為實現單一系統映像提供底層支持。 3 單一系統映像 3.1 系統分析 對于雙處理器的數字電視系統,單一系統映像指單一的UI系統和單一的數據訪問控制。數字電視UI主要包括遙控器操作和OSD顯示、系統菜單等。電視與外置機頂盒是用兩個遙控器分別控制的,各自有一套獨立的OSD和系統菜單,所以需要實現遙控器和OSD、系統菜單的統一。數字電視作為信息終端接收數據廣播,維護一個簡單的嵌入式數據庫,數據庫在DVB模塊中維護,是實時更新的。在此數據庫基礎上提供EPG(電子節(jié)目導航)、Teletext(圖文電視)、Subtitle(字幕)、MHEG(超媒體)等信息服務。用戶可以通過這個數據庫,方便的管理節(jié)目列表、瀏覽網絡信息[8-9]。兩個系統的OSD顯示、系統菜單應該作為一套系統整合在其中一個模塊上。HDTV是顯示設備,DVB的OSD和視頻疊加在一起作為圖像傳給HDTV,HDTV在上面再疊加自己的OSD,傳給屏幕顯示。所以整個系統的OSD應該整合在HDTV模塊上。DVB模塊不再生成OSD,也不響應遙控,只響應HDTV通過串行通信接口發(fā)送過來的菜單命令,并將需要顯示的結果通過串行通信接口傳給HDTV的OSD顯示。EPG、Teletext、Subtitle、MHEG等數據服務的訪問接口同樣在HDTV的菜單界面上給出,但是由于它們的數據量比較大,HDTV模塊的非易失性存儲器比較小,所以不能全部移到HDTV系統存放,仍保存在存儲器空間比較大的DVB模塊上。當系統需要顯示這些數據時,由HDTV模塊向DVB模塊發(fā)出數據請求,DVB模塊將數據傳送給HDTV的OSD顯示,HDTV模塊并不需要保存這些數據。3.2 雙處理器通信協議TV模塊處理器與DVB模塊處理器是并行工作的,二者為了協同工作,需要傳遞命令、同步狀態(tài)與交換數據。兩個處理器之間的通信和操作通過UART接口實現。根據應用需要,協議從下往上由物理連接層、鏈路驅動層、傳輸層和應用層組成。傳輸層以數據包為單位,包括包發(fā)送和包解析兩部分功能。數據包基于ASCII碼字符傳輸,格式如圖2所示,各字段定義如下。安卓與嵌入式開發(fā), 嵌入式風機盤管樣本, c語言寫嵌入式, 嵌入式系統的目標, 嵌入式流程圖題目, 電視機嵌入式多厚, 嵌入式軟件運行平臺, 嵌入式開發(fā)步驟, 嵌入式linux孫, 濟寧嵌入式公司, 嵌入式系統應用技術, 嵌入式裝修是拆墻嗎, 嵌入式知識思維導圖, 天津嵌入式工作室, 嵌入式無源低音炮, 嵌入式數據庫】, 嵌入式溫度報警器, 嵌入式指令lsl, 嵌入式偏移量計算, 嵌入式現在發(fā)展, qt搭建嵌入式,
圖2 雙處理器通信協議數據包格式Start byte:起始字符,定義為字符“#“;Packet type:包傳輸的數據類型,“C“表示包傳輸的為命令,“D“表示數據, “S“表示狀態(tài);Packet length:包數據的長度,定義每個包最多可以傳送255個字節(jié);Direction:包傳輸的方向,字符“0“表示由TV向DVB發(fā)送命令或數據,字符“1“表示由DVB向TV發(fā)送狀態(tài)或數據;CRC:簡單的CRC-8糾錯碼,用來保證數據傳輸的可靠性;End byte:終止字符,定義為ASCII碼0x0AH(回車符)。Data block字段為包的數據塊,根據Packet type決定的傳輸的數據類型的不同,內容根據需要將安裝命令、狀態(tài)和數據這三種情況作不同的約定。3.3 軟件結構HDTV模塊分為ATV和DTV兩個狀態(tài),當HDTV模塊處于ATV狀態(tài)時,將DVB模塊關閉,只留HDTV模塊工作,整機只實現普通電視的功能。當HDTV模塊處于DTV狀態(tài)時,將DVB模塊打開,系統處于雙處理器協同工作狀態(tài)。DVB模塊輸出音視頻信號通過HDMI接口傳給HDTV模塊播放。
圖3雙處理器協同工作的軟件系統結構系統只使用一個遙控器,遙控鍵碼在ATV和DTV不同狀態(tài)下由兩個模塊復用。遙控器命令由HDTV處理器響應,HDTV對遙控器命令作分析,如果是對電視機本身的遙控操作則由電視機作相應操作,如果是對DVB的遙控操作則映射成控制DVB模塊的命令,通過通信協議的包發(fā)送程序將命令打包傳送給DVB模塊,DVB處理器的包解析進程從包中提取出命令內容,然后處理器做指定的動作,同時返回相應狀態(tài)。系統只在HDTV處理器上維護一個OSD系統,當HDTV在DTV狀態(tài)下,需要顯示DVB的數據時,通過通信協議向DVB模塊請求顯示數據,DVB模塊將需要OSD顯示的數據也通過通信協議的傳給HDTV模塊,HDTV模塊的包解析程序將數據內容提取出來交給OSD顯示。因此,通過這種方法,在HDTV模塊上實現了單一用戶界面,在DVB模塊上實現了單一數據訪問控制。整個系統的軟件結構可見圖3所示。4 結論基于雙處理器的高清數字電視設計在硬件和軟件上都有一些新的技術難點,不僅意味著功能的整合,同時要求雙處理器能協同工作,實現單一系統映像。本文給出了系統的硬件結構,在此基礎上提出了通過串行通信在雙處理器之間同步命令與狀態(tài)、交換數據來實現單一系統映像的方法。這一設計思想為高清數字電視開發(fā)提供了一種思路,也對其他基于多CPU的嵌入式系統設計有一定的參考價值。參考文獻[1] Nam Ling,Nien-Tsu Wang. Real-time video decoding scheme for HDTV set-top boxes[J]. IEEE Transactions on Broadcasting,2002,48(4) :353 |
|