大顯DC-618C數字電視機頂盒的軟件設計與應用
1 引 言
本文引用地址:http://dyxdggzs.com/article/166865.htm數字電視的崛起在我國被譽(yù)為廣電產(chǎn)業(yè)的第三次革命,它巨大的市場(chǎng)潛力正逐漸凸現出來(lái)。數字傳輸方式因其采用了先進(jìn)的技術(shù),具有傳統的模擬傳輸方式所無(wú)法比擬的優(yōu)勢,取代后者已是不可阻擋的趨勢。目前,數字電視正在世界范圍內迅速地推廣,作為接收數字電視的新興家電,機頂盒正悄悄進(jìn)入千家萬(wàn)戶(hù)。
機頂盒(STB,Set Top Box)是廣播媒介實(shí)現數字化后接收端的重要設備,一般置于電視機上, 從功能來(lái)看,機頂盒主要分為上網(wǎng)機頂盒、數字衛星綜合接收解碼器、數字地面機頂盒,以及有線(xiàn)電視數字機頂盒,這些設備由于具有很好的網(wǎng)絡(luò )功能,因此也成為信息家電的代表。
我們在這里討論的主要是指有線(xiàn)電視數字機頂盒,它的基本功能是接收數字電視廣播節目,同時(shí)具有所有廣播和交互式多媒體應用功能。
數字電視機頂盒的技術(shù)含量非常高,它集中反映了多媒體、計算機、數字壓縮編碼、加解擾算法、加解密算法、通信技術(shù)和網(wǎng)絡(luò )技術(shù)的發(fā)展水平,在設計技術(shù)上主要包括機頂盒硬件技術(shù)和軟件技術(shù)兩大部分, 其中,軟件技術(shù)占有更為重要的位置。除了音視頻的解碼由硬件實(shí)現外,包括電視內容的重現、操作界面的實(shí)現、數據廣播業(yè)務(wù)的實(shí)現,直至機頂盒和個(gè)人計算機的互聯(lián)以及和Intemet的互聯(lián)都需要由軟件來(lái)實(shí)現。
我們在這里介紹一款基于STi5518 芯片的DC-618C型數字電視接收機頂盒的軟件設計。
2.1實(shí)時(shí)操作系統基本原理
STi5518解碼芯片本身的性能比較強大,可以滿(mǎn)足應用對硬件的要求,關(guān)鍵在于軟件對硬件的管理上,隨著(zhù)應用的復雜化,一個(gè)嵌入式控制系統可能要同時(shí)控制和監視很多外設,要求有實(shí)時(shí)響應,有很多處理任務(wù),各個(gè)任務(wù)之間有多種信息傳遞。如果仍采用原來(lái)的程序設計方法存在兩個(gè)問(wèn)題,一是中斷可能得不到及時(shí)響應。處理時(shí)間過(guò)長(cháng),這對于一些控制場(chǎng)合是不允許的,對于網(wǎng)絡(luò )通信方面則會(huì )降低系統整體的信息流量。二是系統任務(wù)多,要考慮的各種可能也多,各種資源如調度不當就會(huì )發(fā)生死鎖,降低軟件可靠性,程序編寫(xiě)任務(wù)量都會(huì )有大幅度增加。
實(shí)時(shí)操作系統(RTOS)是一段在嵌入式系統啟動(dòng)后首先執行的背景程序,用戶(hù)的應用程序是運行于RTOS之上的各個(gè)任務(wù)。RTOS根據各個(gè)任務(wù)的要求,進(jìn)行資源(包括存儲器、外設等)管理、消息管理、任務(wù)調度、異常處理等工作。在RTOS支持的系統中,每個(gè)任務(wù)均有一個(gè)優(yōu)先級,RTOS根據各個(gè)任務(wù)的優(yōu)先級,動(dòng)態(tài)地切換各個(gè)任務(wù),保證對實(shí)時(shí)性的要求。在編寫(xiě)程序時(shí),可以分別編寫(xiě)各個(gè)任務(wù),大大減小了程序編寫(xiě)的工作量,而且減小了出錯的可能,保證最終程序具有高可靠性。
實(shí)時(shí)多任務(wù)操作系統,以分時(shí)方式運行多個(gè)任務(wù),宏觀(guān)表現為多個(gè)任務(wù)同時(shí)運行。任務(wù)之間的切換以?xún)?yōu)先級為根據,只有采用優(yōu)先服務(wù)方式的RTOS才是真正的實(shí)時(shí)操作系統,時(shí)間分片方式和協(xié)作方式的RTOS并不是真正的實(shí)時(shí),RTOS的主要功能模塊有調度和中斷處理(為了優(yōu)化用匯編編寫(xiě))、任務(wù)管理、事件管理、定時(shí)器管理、報文管理、循環(huán)隊列管理、資源管理、固定存儲塊管理、規范的UART管理和自動(dòng)掉電管理等,這些也是標準的RTOS所應具有的基本功能。RTOS也體現了一種新的系統設計思想和一個(gè)開(kāi)放的軟件框架,工程師可以在不大量變動(dòng)系統其它任務(wù)的情況下增加或去掉一個(gè)任務(wù),一個(gè)項目開(kāi)發(fā)的過(guò)程中,可以有多個(gè)工程師同時(shí)進(jìn)行系統的軟件開(kāi)發(fā),各個(gè)人之間只要制訂好規程和協(xié)議即可,既縮短了開(kāi)發(fā)時(shí)間,又降低了最終軟件產(chǎn)品對于具體某個(gè)開(kāi)發(fā)者的依賴(lài)性。為RTOS設計的成熟和通用的任務(wù)可以以庫函數的形式供其它人繼續利用,這一點(diǎn)和C語(yǔ)言的設計思想一致。
2.2 應用于DC-618C機頂盒的OS20操作系統
內嵌于Sti5518內部的CPU--ST20,使用的是ST所獨有的嵌入式實(shí)時(shí)操作系統OS20。
OS20操作系統是一個(gè)模塊化的高性能的實(shí)時(shí)操作系統, 它具有較強的實(shí)時(shí)性和多任務(wù)能力,這主要取決于它的任務(wù)調度機制,從調度策略上來(lái)講,OS20采用分優(yōu)先級調度策略(默認為16)和時(shí)間片輪轉調度策略 ――即同一優(yōu)先級下多任務(wù)處理采用時(shí)間片輪轉處理方式。
評論