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