DVB-C數字機頂盒解決方案
2、SC2005:LSIlogic公司的傳送流處理芯片。
3、CPU_SDRAM:提供SC2005內嵌CPU運行時所需要的存儲空間。
4、AV_SDRAM:提供SC2005內部MPEG解碼器對PES流進行處理時所需的存儲空間。
5、BOOT_FLASH:存放系統(tǒng)BOOT程序、引導系統(tǒng)正常啟動。
6、SYS_FLASH:存放系統(tǒng)工作軟件,實現系統(tǒng)功能。
7、串口:串口模塊電路對SC2005的串行I/O口進行電平轉換,提供標準的RS232串行接口,提供RS232調測接口。
8、SMARTCARD:實現授權、加密、收費等功能。
9、用戶接口:提供給用戶簡單得輸出、輸入接口,如系統(tǒng)工作狀態(tài)顯示接口、按鍵接口、遙控接口等。
10、USB:提供給用戶一個USB1.1兼容的接口,最高數據率12Mb/s;可以用于支持U盤,保存節(jié)目或者播放U盤上的節(jié)目。
11、IDE:提供給用戶一個標準的IDE接口。掛接硬盤后可以用來實現保存節(jié)目或者播放硬盤上的節(jié)目。
DVB-C機頂盒的軟件總體設計
DVB-C機頂盒軟件實現方案基于穩(wěn)定性、可靠性和可擴展性的原則進行設計,所有軟件系統(tǒng)應該達到功能完備,使用簡便和便于擴充幾個特性。跟據上述分析,機頂盒軟件體系結構如圖2所示。
圖2 機頂盒軟件模塊層次圖
整個機頂盒軟件的結構采取開放式的模塊化結構。其中硬件抽象層可以增加軟件的硬件無關性;操作系統(tǒng)抽象層用于實現操作系統(tǒng)層的可移植性,以支持多種RTOS;中間件移植層用于各種商業(yè)化的中間件軟件的移植。
從底下往上看,整個體系從硬件層到應用層分為以下幾個層次:
1、硬件抽象層:通過提煉一些硬件操作的特性,將一些與硬件相關緊密的操作抽象出來,從而將操作系統(tǒng)和硬件層分開,這使得BSP和Driver的設計更簡潔,有利于提高軟件的可重用性和易移植性。
2、BSP層:用于將引導操作系統(tǒng),對操作系統(tǒng)提供板級支持。同時提供一些近設備的驅動。
3、操作系統(tǒng)及硬件驅動層:提供操作系統(tǒng)內核和硬件驅動。操作系統(tǒng)主要提供內存管理、任務調度、時鐘管理、資源共享和互斥等功能。硬件驅動層在操作系統(tǒng)和硬件抽象層的基礎上實現對硬件的驅動。
4、中間件:是一種將應用程序和操作系統(tǒng)、硬件細節(jié)隔離開來的軟件環(huán)境,通常它都是由一些虛擬機器構成的,如HTML虛擬機、JavaScript虛擬機、MHEG-5虛擬機、Java虛擬機等。這使得應用不依賴于特定的硬件平臺。著名的中間件提供商有:OpenTV和Canal+。
5、DVB引擎:實現DVB/DAVIC協(xié)議的解析。包括MPEG2解碼器、SI引擎和DSM-CC數據接口。
6、應用層。建立在上述各個模塊的基礎上的應用程序片。包括:頻道管理、系統(tǒng)自檢、電子節(jié)目導航、軟件下載與升級管理和家長控制等模塊。
操作系統(tǒng)的選型
機頂盒作為一個典型的嵌入式系統(tǒng),對其操作系統(tǒng)有更高的穩(wěn)定性和實時性要求,一般選用實時嵌入式操作系統(tǒng),這里我們選用uCOS-Ⅱ操作系統(tǒng):一個源碼公開、可移植、可固化、可裁剪、占先式的實時多任務操作系統(tǒng)。由于uCOS-Ⅱ屬于開放源碼操作系統(tǒng),所以開發(fā)包投入可以免除,而且去了版稅。同時該操作系統(tǒng)在工業(yè)控制,消費電子和國防等領域已經得到了廣泛的應用,實踐證明該操作系統(tǒng)在穩(wěn)定性和可用性上是完全適合在本方案中是選用的。
uCOS-Ⅱ內核精簡,效率高,對存儲器和內存的需求低,對于降低系統(tǒng)成本有利。此外,uCOS-Ⅱ所有源代碼都公開,而且很多著名科研機構包括大學、研究所都對該操作系統(tǒng)進行了支持,提供了大量的已經經過工業(yè)驗證的軟件包,這對于開發(fā)人員來說很便利,有利于加快開發(fā)進度。
評論