便攜式 BD 播放機(jī)系統(tǒng)的設(shè)計
目前,DVD播放機(jī)逐漸被BD播放機(jī)取代已經(jīng)成為一種趨勢。這種趨勢也會延伸到便攜式光盤播放機(jī)領(lǐng)域。在2011年的美國CES展上,Sony、Philips、Sumsung等都繼松下之后推出了自己的便攜式BD播放機(jī),可以說明這種趨勢已經(jīng)形成。本文從系統(tǒng)方案的角度出發(fā),詳細(xì)闡述便攜式BD播放機(jī)的設(shè)計開發(fā)內(nèi)容,旨在為國內(nèi)的同行們今后在設(shè)計產(chǎn)品時提供一個方案、一些思路,避免出現(xiàn)類似課題,提高開發(fā)效率,提高產(chǎn)品的質(zhì)量和競爭力。
系統(tǒng)硬件構(gòu)成
整個系統(tǒng)硬件的構(gòu)成如圖1所示,包括OPU、解碼器、MCU、電源電池管理、按鍵及遙控接收、LCD驅(qū)動、HDMI輸出、USB、網(wǎng)絡(luò)接口、各Switch檢測等。下面詳細(xì)闡述各構(gòu)成的功能。
圖1 系統(tǒng)硬件構(gòu)成
OPU:因為BD播放機(jī)需要兼容DVD和CD,因此這個模塊需要配置能夠讀取CD/DVD/BD三種光盤數(shù)據(jù)的激光頭,目前市場上三洋,索尼等的產(chǎn)品均能滿足這個要求。
Decoder:BD播放機(jī)的解碼器要求能夠解碼1920×1080P的全高清的視頻信號,包括H.264/VC-1/MPEG等,MTK、博通的芯片均能滿足要求。本文列舉的解碼芯片內(nèi)置了以太網(wǎng),HDMI,ADAC等芯片,集成度較高。實際選型時根據(jù)產(chǎn)品開發(fā)的需求,具體選擇。
MCU:MCU的角色很重要。因為便攜式播放機(jī)的功能很多,目前在市場上能夠全部完成所有便攜式功能的單一的解碼芯片還沒有,因此需要增加一個單獨(dú)的MCU來協(xié)助解碼器構(gòu)成整個系統(tǒng),實現(xiàn)系統(tǒng)的所有功能。MCU負(fù)責(zé)處理按鍵及遙控器,控制LCD的驅(qū)動芯片,電源管理,電池充放電處理,音頻功放等,同時和解碼器通過雙方之間的通信進(jìn)行命令的交互和信息的傳遞。
電池電源管理:負(fù)責(zé)整個系統(tǒng)的電源管理,包括開關(guān)機(jī),適配器/電池使用的切換,電池的充放電處理等。
按鍵和遙控器:處理本體按鍵和遙控器按鍵的輸入。
Switch:負(fù)責(zé)外部開關(guān),耳機(jī)插入的檢測。
RTC:實時時鐘模塊,可以作為實際的計時使用。
FAN:風(fēng)扇,用于給系統(tǒng)散熱用;BD播放機(jī)工作時,芯片工作頻率較高,功耗較大,需要外加裝置給主要芯片散熱。
Over Current Protection:這個芯片用來對USB接口進(jìn)行過電流的檢測和保護(hù)。
USB:用于外接USB設(shè)備,擴(kuò)展光盤播放機(jī)的功能,對應(yīng)網(wǎng)絡(luò)下載的高清素材播放等。
網(wǎng)絡(luò)接口:有三個作用,(1)滿足BDA要求的BD live播放;(2)對應(yīng)軟件網(wǎng)絡(luò)升級,BD播放機(jī)的軟件復(fù)雜,且BD規(guī)格不斷更新,配置這個功能可以在產(chǎn)品上市以后通過網(wǎng)絡(luò)的自動升級功能對應(yīng)市場問題,滿足市場不斷變化的需求,降低消費(fèi)者的投入,提高產(chǎn)品的競爭力;(3)對應(yīng)各種網(wǎng)絡(luò)應(yīng)用功能。
系統(tǒng)軟件設(shè)計
系統(tǒng)主要由解碼器和MCU構(gòu)成,解碼器和MCU之間通過通信來進(jìn)行配合協(xié)調(diào),完成整個系統(tǒng)的功能。因此系統(tǒng)的軟件設(shè)計包含3個部分即解碼器部分的軟件設(shè)計、MCU部分的軟件設(shè)計、通信設(shè)計。
1解碼器的軟件設(shè)計
解碼器軟件在Linux操作系統(tǒng)上架構(gòu)而成,包括設(shè)備驅(qū)動、中間件和應(yīng)用層。采用模塊化的設(shè)計理念,根據(jù)系統(tǒng)功能將系統(tǒng)進(jìn)行劃分成不同層次和不同模塊來進(jìn)行實現(xiàn)。不同任務(wù)的運(yùn)行通過啟動不同的進(jìn)程來控制。
便攜式藍(lán)光播放機(jī)同以往類似產(chǎn)品的最大區(qū)別在于可以播放藍(lán)光碟片和具有豐富的網(wǎng)絡(luò)功能。解碼器軟件的系統(tǒng)構(gòu)成如圖2所示。
圖2 解碼器軟件系統(tǒng)構(gòu)成
2 MCU的軟件設(shè)計
MCU的軟件設(shè)計采用了小型操作系統(tǒng)來管理兩個任務(wù)。SubTask用于和解碼器進(jìn)行通信,MainTask負(fù)責(zé)通信之外的所有處理,整個系統(tǒng)分為驅(qū)動層,中間層和應(yīng)用層。驅(qū)動層包含了硬件設(shè)備和OS,有端子配置、按鍵輸入、開關(guān)檢測、AMP、FAN、RTC等;中間層則包含了需要向應(yīng)用層提供的實現(xiàn)具體功能和動作的各個模塊接口;應(yīng)用層根據(jù)系統(tǒng)的功能,分為UI、OSD等模塊,完成系統(tǒng)所需要實現(xiàn)的各種功能。MCU軟件的系統(tǒng)構(gòu)成如圖3所示。
圖3 MCU軟件系統(tǒng)構(gòu)成
3 通信設(shè)計
MCU和解碼器之間的通信,物理層可以采用多種接口形式,這里選用的是UART。關(guān)于協(xié)議層的設(shè)計需要重點(diǎn)考慮兩個方面的問題。一是系統(tǒng)所需要的所有功能是否可以實現(xiàn),不要產(chǎn)生因為協(xié)議設(shè)計的不全面導(dǎo)致系統(tǒng)功能實現(xiàn)受影響的失誤;二是通信的異常處理機(jī)制是否考慮周全,這個影響到系統(tǒng)的可靠性,包括出錯時重復(fù)發(fā)送次數(shù)的設(shè)定,通信忙時等待延時時間的設(shè)定等。
功耗設(shè)計
功耗設(shè)計對于便攜式產(chǎn)品甚為重要,不僅要考慮到正常工作時消耗的功率,還要考慮到待機(jī)時的功耗。功耗設(shè)計涉及到系統(tǒng)多方面的內(nèi)容,包括芯片的選擇,電路的設(shè)計等。具體到本系統(tǒng)需要從OPU部分的功耗、LCD的背光、解碼器的工作功率、周邊電路、待機(jī)時的電源管理等進(jìn)行研討和驗證。