內(nèi)容導(dǎo)航:
基于EM8620芯片的IPTV機(jī)頂盒設(shè)計(jì)方案(3)
2、軟件設(shè)計(jì)
軟件主要包括嵌入式的操作系統(tǒng)和各類驅(qū)動及應(yīng)用軟件。由于當(dāng)前Linux有著優(yōu)良的可移植性和廣泛的兼容性,虼嗽詒痙槳鋼脅僮饗低巢捎忙藽Linux實(shí)現(xiàn),而應(yīng)用軟件主要包括電子節(jié)目指南、數(shù)字版權(quán)保護(hù)和條件接收、瀏覽器、圖形用戶界面、軟件解碼模塊等。
2.1嵌入式操作系統(tǒng)
μCLinux是面向MMU(內(nèi)存管理單元)設(shè)計(jì)的嵌入式操作系統(tǒng)。內(nèi)核由Linux2.0Kernel發(fā)展而來,同標(biāo)準(zhǔn)Linux相比,它繼承了原有的工作穩(wěn)定性強(qiáng)、網(wǎng)絡(luò)功能強(qiáng)大等主要優(yōu)點(diǎn)。此外,它具有占用空間小、執(zhí)行效率高等特點(diǎn),由于IPTV機(jī)頂盒需要實(shí)現(xiàn)各種基于網(wǎng)絡(luò)的增殖業(yè)務(wù),因此對于網(wǎng)絡(luò)通信協(xié)議的需求比較廣泛,μCLinux包括TCP/IP等多種網(wǎng)絡(luò)協(xié)議,能夠支持當(dāng)前各種基于IP的業(yè)務(wù),同時它還具有良好的開放性,任何新協(xié)議都可以很方便地加入到內(nèi)核中,具備了持續(xù)升級的可擴(kuò)展能力。
在使用μCLinux進(jìn)行軟件設(shè)計(jì)時,一個需要著重考慮的問題是內(nèi)存管理,由于EM8620沒有MMU管理存儲器,因此μCLinux不能使用虛擬內(nèi)存管理技術(shù),內(nèi)存訪問應(yīng)采用直接尋址方式,所有程序訪問的地址都是實(shí)際的物理地址,操作系統(tǒng)內(nèi)存空間失去保護(hù)后,系統(tǒng)內(nèi)各個進(jìn)程實(shí)際上是共享同一個內(nèi)存空間,因此在設(shè)計(jì)多進(jìn)程任務(wù)時就需要特別注意進(jìn)行內(nèi)存保護(hù),防止程序操作越界溢出。具體而言,就是在每個進(jìn)程初始化時,μCLinux會根據(jù)用戶的申請分配一段連續(xù)的堆棧地址空間,而后該進(jìn)程中所有的數(shù)據(jù)操作都在此內(nèi)存空間內(nèi)完成,所以開發(fā)人員必須對每個任務(wù)進(jìn)程所需的最大內(nèi)存空間做出正確估計(jì)和分配,一旦生成的數(shù)據(jù)空間大于所分配的內(nèi)存空間,就會產(chǎn)生內(nèi)存溢出,侵犯其他程序的地址空間,從而導(dǎo)致程序的運(yùn)行異常,嚴(yán)重者將導(dǎo)致系統(tǒng)崩潰。傳統(tǒng)Linux最大的缺點(diǎn)之一是,系統(tǒng)非正常關(guān)閉后,經(jīng)常會產(chǎn)生硬盤碎片,使操作系統(tǒng)無法正常引導(dǎo)啟動,此處,將μCLinux編譯后燒寫到Flash上采用Flash內(nèi)核啟動方式,避免了上述缺點(diǎn)。
2.2應(yīng)用軟件
2.2.1電子節(jié)目指南
電子節(jié)目指南是用戶獲取電視節(jié)目播出信息的直接途徑,從現(xiàn)有數(shù)字電視用戶的調(diào)查中發(fā)現(xiàn),電子節(jié)目指南是當(dāng)前最受用戶歡迎的功能,電子節(jié)目指南一般包括電視節(jié)目單、節(jié)目簡介、當(dāng)前節(jié)目信息顯示、節(jié)目預(yù)定等多個環(huán)節(jié),通常它的設(shè)計(jì)采用基于中間件或定制編寫軟件模塊的方式實(shí)現(xiàn),過程復(fù)雜、靈活度差。此處采用基于瀏覽器的電子節(jié)目指南設(shè)計(jì),電視節(jié)目信息以HTML方式或XML方式傳送,機(jī)頂盒接收后利用瀏覽器顯示給用戶觀看,其風(fēng)格和瀏覽方式都具有很強(qiáng)的靈活性,由于其他類型的增殖業(yè)務(wù)如網(wǎng)絡(luò)瀏覽、電視購物等方式都需要瀏覽器,因此使用瀏覽器不會增加系統(tǒng)的額外開銷。
2.2.2數(shù)字版權(quán)保護(hù)
數(shù)字版權(quán)保護(hù)設(shè)計(jì)分為兩種,一種是針對已錄制節(jié)目的保護(hù),另一種是針對實(shí)時播出節(jié)目的保護(hù),由于機(jī)頂盒具有個人錄像機(jī)功能,用戶能夠方便地將實(shí)時播出的電視節(jié)目錄制到硬盤上,并通過USB接口拷貝出去進(jìn)行散發(fā)。為防止這種盜版拷貝的情況發(fā)生,設(shè)計(jì)了嚴(yán)格的數(shù)字版權(quán)保護(hù)模塊,當(dāng)用戶進(jìn)行錄像時,對存儲到硬盤的節(jié)目進(jìn)行加密處理,加密密鑰由每個機(jī)頂盒特有的硬件信息生成,這樣即使將節(jié)目拷貝到其他同類型機(jī)頂盒中也不能進(jìn)行播放,從而實(shí)現(xiàn)了嚴(yán)格的版權(quán)保護(hù)功能,對于實(shí)時播出的加密節(jié)目,沿用了基于智能卡的工作方式,首先提取IP網(wǎng)絡(luò)傳送過來的密鑰數(shù)據(jù)流,通過UART接口送到智能卡中進(jìn)行解密,解密后控制字存儲在內(nèi)存中使用后即刻銷毀,防止盜取和破解。
2.2.3圖形用戶界面
為方便地對IDE硬盤及其他接口進(jìn)行操作,此處為用戶提供了圖形用戶界面,它采用MiniGui引擎,界面啟動后,用戶可以通過遙控器或連接USB鼠標(biāo)/鍵盤非常方便地進(jìn)行操作。
除了上述應(yīng)用軟件外,還可支持各種Java、flash程序運(yùn)行,便于實(shí)現(xiàn)電視購物、在線游戲等功能,此外其包括WMV9、Real等一系列多媒體播放程序,用于各種類型的網(wǎng)絡(luò)音視頻節(jié)目及本地的DVD光盤播放。
更多相關(guān): AV集成
©版權(quán)所有。未經(jīng)許可,不得轉(zhuǎn)載。