大顯DC-618C數(shù)字電視機頂盒的軟件設(shè)計與應(yīng)用
OS20系統(tǒng)的內(nèi)存開銷也很小,核的開銷大約為:內(nèi)部只占600字節(jié),每個任務(wù)占用的內(nèi)存:內(nèi)部24字節(jié),外部36字節(jié)。
此外,OS20操作系統(tǒng)還具有任務(wù)切換時間短等特點
2.3 DC-618C機頂盒的軟件架構(gòu)設(shè)計
依據(jù)軟件工程的原理,DC-618C機頂盒軟件采用從上到下的層次化設(shè)計,依次由易到難,由具體到抽象和由軟件到硬件,主要包括如下幾層:
1)應(yīng)用層:應(yīng)用層是控制整個機頂盒操作的高層代碼,也是需要程序員自己完全實現(xiàn)的代碼。在這一層中實現(xiàn)各種各樣的功能,包括初始化各種外設(shè)、創(chuàng)建任務(wù)、設(shè)置節(jié)目頻點、實現(xiàn)用戶輸入輸出操作等。對于與第三方的軟件合作,包括網(wǎng)絡(luò)瀏覽器,也嵌入在應(yīng)用層中,應(yīng)用程序可以直接調(diào)用驅(qū)動層的應(yīng)用程序接口(API)。第三方的中間件可以通過驅(qū)動使用層來調(diào)用應(yīng)用程序接口。所有的應(yīng)用層組件在功能上能通過操作系統(tǒng)移植層來訪問實時操作系統(tǒng)。
2)驅(qū)動層:驅(qū)動層通過調(diào)用硬件抽象層,來管理各種外設(shè)和內(nèi)部子系統(tǒng)模塊,將這些模塊的功能抽象化和屏蔽化,向上一層提供應(yīng)用層程序接口,使得應(yīng)用層的操作直觀和簡潔。應(yīng)用層組件通過調(diào)用驅(qū)動層API來控制系統(tǒng)硬件功能和服務(wù)。這些驅(qū)動完成普通的低層任務(wù),如控制傳輸解復(fù)用和音視頻解碼等。
3) 硬件抽象層:對DC-618C的所有硬件的操作必須通過修改寄存器來實現(xiàn),DC-618C將所有寄存器與接口統(tǒng)一編址,使得通過軟件對寄存器的操作非常簡單,硬件抽象層正是完成這一功能.可以說,H.A.L.是驅(qū)動層的子集,負(fù)責(zé)直接編輯硬件。驅(qū)動層提供通用的低層功能,同時H.A.L.在硬件上實現(xiàn)這些功能。為了響應(yīng)驅(qū)動層的調(diào)用, H.A.L.執(zhí)行特定的芯片函數(shù),編輯芯片寄存器來完成一個特定的功能,它只與一種特定的芯片相對應(yīng),所以當(dāng)改變硬件平臺時,只需要改變相應(yīng)的硬件抽象層。
2.4 DC-618C機頂盒的應(yīng)用層設(shè)計[/NextPage]
機頂盒除了實現(xiàn)接收來自有線網(wǎng)絡(luò)的數(shù)字電視信號外,還應(yīng)具有EPG(電子節(jié)目指南)、軟件在線升級等功能,我們在這里主要談?wù)勥@幾種功能的實現(xiàn)。
2.4.1 EPG(電子節(jié)目指南)的實現(xiàn):
2.4.1.1 EPG簡介
電子節(jié)目指南,是指在符合MPEG-2的TS傳輸流中插入DVB標(biāo)準(zhǔn)定義的SI信息,使機頂盒的綜合接收解碼器可以從TS流中提取出節(jié)目提供商播出節(jié)目的列表和播出參數(shù),以直觀的形式顯示給數(shù)字電視用戶。EPG信息由兩部分信息組成:基本EPG信息和擴展EPG信息?;綞PG信息是指完全可以用《數(shù)字廣播業(yè)務(wù)信息規(guī)范》中的網(wǎng)絡(luò)信息表NIT、業(yè)務(wù)群關(guān)聯(lián)表BAT、業(yè)務(wù)描述表SDT和事件信息表EIT進行描述的EPG信息。擴展EPG信息是指在基本EPG 信息之外,通過數(shù)據(jù)輪播傳遞的EPG信息,這些信息的入口采用EPG映射表(EMT)進行描述,信息的內(nèi)容被封裝成具有多級目錄結(jié)構(gòu)的文件系統(tǒng),稱為擴展 EPG內(nèi)容信息(XECI)。基本EPG信息和擴展EPG信息中的EPG映射信息均采用表傳輸方式;擴展EPG信息中的擴展EPG內(nèi)容信息采用數(shù)據(jù)輪播方式傳輸。
在數(shù)字電視節(jié)目的播出過程中,可以加入輔助的SI信息,供機頂盒解碼器的開發(fā)者來實現(xiàn)五花八門的電子節(jié)目指南的導(dǎo)航功能。EPG提供的信息主要包括:傳送信息的天數(shù)(例如一周)、傳送頻道的數(shù)目和名稱、傳送的節(jié)目數(shù)、節(jié)目提供商的標(biāo)識和名稱、傳送網(wǎng)絡(luò)的信息(網(wǎng)絡(luò)標(biāo)識和網(wǎng)絡(luò)名稱),其細節(jié)信息還包括:節(jié)目名稱、節(jié)目的簡單介紹、節(jié)目的開始和結(jié)束時間、節(jié)目的主題、節(jié)目的類屬、節(jié)目的觀看分級限制(例如對某個年齡段進行限制)。利用機頂盒收看數(shù)字電視節(jié)目,用戶通過EPG不僅能夠接收普通的電視節(jié)目、廣播節(jié)目或圖文電視節(jié)目,而且,還可以查看感興趣的信息:按節(jié)目分類(如音樂節(jié)目、體育節(jié)目、電影等)檢索節(jié)目;按節(jié)目提供者檢索節(jié)目;未來一段時間內(nèi)節(jié)目播出表;視頻網(wǎng)絡(luò)中節(jié)目播出情況等信息。
2.4.1.2 PSI/SI信息及其功能
MPEG-2中的傳送碼流是根據(jù)ITU-TRecH220、ISO/IECDIS13818-2和ISO
/IEC13818-3協(xié)議定義的一種數(shù)據(jù)流,其目的是為了在有可能發(fā)生嚴(yán)重錯誤的環(huán)境下進行一道或多道程序的編碼數(shù)據(jù)的傳送和存儲。這種錯誤表現(xiàn)為比特值錯誤或分組丟失。傳送流的速率可以是變化的或固定不變的。在任何情況下組成的原始流可以是變化的或固定不變,在這些情況下的語法和語義限制是相問的。傳送流速率由節(jié)目參考時鐘 (PCR)字段的位置和數(shù)值決定,通常對于每個程序都有自己的PCR字段。傳送流中有關(guān)PID的信息及各PID之間的關(guān)系包含在PSI (Program Specific Information:節(jié)目特定信息)中,MPEG-2解碼器將使用PSI信息來自動設(shè)置解碼所需的各種參數(shù)。PSI信息使用4個表來定義碼流的結(jié)構(gòu): PAT(Program Association Table:節(jié)目關(guān)聯(lián)表)、PMT(Program Map Table:節(jié)目映射表)、NIT(Network Information Table:網(wǎng)絡(luò)信息表)、CAT(Conditional Access Table:條件訪問表)。
評論