基于TRIMEDIA平臺的數(shù)字監(jiān)控DVR的設(shè)計實現(xiàn)
電子設(shè)計應(yīng)用2004年第9期
本文引用地址:http://www.ex-cimer.com/article/3575.htm摘要:本文結(jié)合實際開發(fā)經(jīng)驗,系統(tǒng)闡述了基于PHILIPS公司TRIMEDIA平臺開發(fā)多通道數(shù)字監(jiān)控DVR的硬件系統(tǒng)設(shè)計及關(guān)鍵技術(shù),并對開發(fā)過程中難點問題的處理提出了一些建議。
關(guān)鍵詞:嵌入式系統(tǒng);DVR TRIMEDIA;MPEG-4;代碼優(yōu)化;運動估計;網(wǎng)絡(luò)協(xié)議棧
概述
隨著數(shù)字化時代的到來,在安防監(jiān)控領(lǐng)域,集成了多媒體技術(shù)、數(shù)字圖像處理及遠(yuǎn)程網(wǎng)絡(luò)傳輸?shù)茸钚录夹g(shù)的數(shù)字監(jiān)控系統(tǒng)正在逐步取代傳統(tǒng)的模擬監(jiān)控系統(tǒng)。采用最新的嵌入式系統(tǒng)設(shè)計技術(shù)和MPEG-4壓縮編碼技術(shù)的嵌入式DVR產(chǎn)品正在逐漸引起業(yè)內(nèi)的廣泛關(guān)注。
本文介紹的針對市場客戶需求,利用PHILIPS公司TRIMEDIA技術(shù)平臺成功開發(fā)的基于MPEG-4編解碼技術(shù)的長虹“銳眼王”系列嵌入式數(shù)字硬盤錄象機,在國內(nèi)居于行業(yè)領(lǐng)先水平,取得了較好的社會及經(jīng)濟效益。
圖1 硬件的系統(tǒng)結(jié)構(gòu)圖
硬件系統(tǒng)設(shè)計(以4路機為例)
如圖1所示,系統(tǒng)主要由以下幾個模塊組成:視音頻編碼器、主處理器、硬盤控制器、網(wǎng)絡(luò)控制器、PCI橋、PCI總線仲裁器、系統(tǒng)存儲器、外圍控制器和其他系統(tǒng)模塊。
視音頻編碼器
該模塊主要由視頻解碼器、音頻CODEC和DSP處理器組成。其中視頻解碼器將模擬視頻轉(zhuǎn)化為數(shù)字視頻,音頻CODEC將模擬音頻轉(zhuǎn)化為數(shù)字音頻,并通過專用接口傳輸給DSP處理器進(jìn)行編碼。DSP編碼后的數(shù)據(jù)通過PCI總線傳輸給主處理器,用于本地存儲和網(wǎng)絡(luò)傳輸。
主處理器
主處理器完成的工作包括:
從PCI總線上獲得編碼視頻、音頻數(shù)據(jù);
將編碼后的視頻、音頻數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)傳輸;
將編碼后的視頻、音頻數(shù)據(jù)進(jìn)行本地存儲;
實現(xiàn)視頻預(yù)覽及音頻監(jiān)聽;
接收外圍控制器的命令,并將相關(guān)操作通知相關(guān)設(shè)備;
從硬盤中讀出存儲的數(shù)據(jù),并進(jìn)行本地播放及與播放相關(guān)的各項操作;
在系統(tǒng)啟動時,給其他DSP處理器加載程序代碼;
運行嵌入式操作系統(tǒng),進(jìn)行系統(tǒng)管理和進(jìn)程調(diào)度。
硬盤控制器
該控制器負(fù)責(zé)從PCI總線上獲得數(shù)據(jù)流,并將數(shù)據(jù)流以特定的格式存儲到硬盤中。
網(wǎng)絡(luò)控制器
該控制器負(fù)責(zé)從PCI總線上獲得數(shù)據(jù)流,并將數(shù)據(jù)流以特定的格式實現(xiàn)網(wǎng)絡(luò)傳輸。
PCI橋
負(fù)責(zé)PCI橋編碼器之間的總線仲裁以及硬盤控制器和網(wǎng)絡(luò)控制器之間的總線仲裁。
PCI總線仲裁器
負(fù)責(zé)兩個PCI橋和主DSP之間的總線仲裁,使主DSP獲得相應(yīng)較高的優(yōu)先級,進(jìn)行有效的非PCI總線操作,以便和外圍控制器之間進(jìn)行有效數(shù)據(jù)傳輸。
系統(tǒng)存儲器
系統(tǒng)存儲器由系統(tǒng)啟動代碼存儲器、子系統(tǒng)啟動代碼存儲器、程序存儲器和雙端口RAM組成。其中系統(tǒng)啟動代碼存儲器存儲主處理器的BootLoader代碼,主處理器的程序代碼存儲在程序存儲器中。雙端口RAM負(fù)責(zé)外圍控制器和主處理器之間的數(shù)據(jù)交換。子系統(tǒng)啟動代碼存儲器存儲4路編碼處理器的啟動代碼。編碼處理器的主代碼由主處理器在運行時進(jìn)行加載,程序可以放于程序存儲器中,也可放于硬盤中。
外圍控制器
主要負(fù)責(zé)外圍的一些操作控制,例如按鍵輸入、遙控器輸入、報警器輸入和輸出等。
其他系統(tǒng)模塊
包括電源管理等其他系統(tǒng)設(shè)備。
項目開發(fā)過程中的難點及
關(guān)鍵技術(shù)
高速數(shù)字電路設(shè)計
TRIMEDIA方案中處理器主頻往往超過100MHz,對信號完整性及EMC性能構(gòu)成極大挑戰(zhàn)。電路板設(shè)計應(yīng)按4~6層板考慮。在元器件布局及布線過程中嚴(yán)格遵守高速電路設(shè)計原則,確保系統(tǒng)功能的實現(xiàn)以及整機性能指標(biāo)達(dá)到檢測標(biāo)準(zhǔn)。
CODEC設(shè)計實現(xiàn)
評價嵌入式DVR最重要的指標(biāo)是CODEC實現(xiàn)的質(zhì)量,直接體現(xiàn)在同等碼率條件下,音視頻編解碼算法及代碼執(zhí)行的效率。設(shè)計優(yōu)良的CODEC應(yīng)具有如下特征:
?高性能的運動估計
MPEG-4編碼的運算量主要集中在運動估計部分,運動估計的好壞直接影響編碼的質(zhì)量和效率。運動估計可采用多種算法:一是基于碼率失真模型的運動估計;二是碼率受限的模式選擇;三是基于時域和空域相關(guān)的自適應(yīng)預(yù)測;四是大搜索范圍預(yù)測;五是無限制的運動估計。算法在保證較高的計算效率基礎(chǔ)上,估計的精度應(yīng)接近全局運動估計。
?高精度的DCT/IDCT變換
在Trimedia定點處理器上,實現(xiàn)的DCT/IDCT變換算法在保證高的計算效率基礎(chǔ)上,也要保證運算精度符合IEEE 1180-1900標(biāo)準(zhǔn)。
?支持差錯掩蓋和自動恢復(fù)功能,即使在較差的傳輸信道上,也能有較好的圖像重建質(zhì)量。
?支持多種GOP結(jié)構(gòu),可設(shè)定M,N,以支持IBBP,IBP,IP,I等多種GOB結(jié)構(gòu)。
ブС值耐枷穹直媛飾猀CIF-D1,在垂直和水平方向上能以步長的倍數(shù)遞增。
?自適應(yīng)的幀場DCT變換,支持幀場運動估計。自適應(yīng)Inter/Intra選擇。
?精確和靈活的碼率控制,支持VBR,CBR和Hybrid 等多種碼率控制方法。
?碼流完全兼容ISO/IEC-14496-2,MPEG4 ASP@LEVEL3規(guī)范。
?解碼器根據(jù)編碼器引入的噪聲類型,自動選擇自適應(yīng)的濾波器,具有多重去噪的能力。
?具有良好的可移植性。
基于TRIMEDIA平臺的CODEC既可自行開發(fā),也可購買成熟的第三方軟件庫。
BSP設(shè)計與調(diào)試
首先是最小系統(tǒng)的調(diào)試。由于最小系統(tǒng)的調(diào)試手段有限,建議使用與DEMO板相同或相近的硬件結(jié)構(gòu),這樣只需對DEMO板BSP相關(guān)的文件進(jìn)行修改,以適應(yīng)于自己的目標(biāo)板。另外,這一階段可能有許多硬件問題尚未完全解決,會很難定位各種故障。除非有硬件調(diào)試器的支持,否則不建議在最小系統(tǒng)中使用過多未曾用過的硬件芯片。
接下來是外圍設(shè)備驅(qū)動程序的調(diào)試??梢苑譃閮刹絹磉M(jìn)行:首先通過一些簡單的配置及測試程序進(jìn)行硬件調(diào)試,這一階段盡可能排除各種硬件故障。接著就是調(diào)試驅(qū)動程序本身,由于通常各種外設(shè)驅(qū)動程序都會與操作系統(tǒng)交互信息,而且隨著信息量的增大,使得驅(qū)動程序的運行頻率會變得非常高。因此,設(shè)計驅(qū)動程序時,一定要注意程序的穩(wěn)定性及效率,它將直接影響到整個系統(tǒng)的性能及穩(wěn)定性。大部分通用設(shè)備的驅(qū)動程序都可以由兩部分來實現(xiàn),一部分是與CPU相關(guān)的代碼,這部分主要是一些配置參數(shù),以及一些代碼功能,這些程序很少。另一部分就是與CPU不相關(guān)的驅(qū)動程序代碼,它實現(xiàn)了與OS的絕大部分接口。
BSP的調(diào)試方法有如下幾種:硬件仿真器調(diào)試、純軟件方法調(diào)試、軟件調(diào)試器調(diào)試。
網(wǎng)絡(luò)協(xié)議棧的實現(xiàn)
網(wǎng)絡(luò)遠(yuǎn)程監(jiān)控的效果與網(wǎng)絡(luò)協(xié)議棧的性能直接相關(guān),目前使用得最多的就是TCP/IP協(xié)議棧。在TriMedia軟件架構(gòu)中,可以將網(wǎng)絡(luò)驅(qū)動設(shè)計成pSOS網(wǎng)絡(luò)部件pNA+訪問網(wǎng)絡(luò)接口。這樣設(shè)計的優(yōu)點是:上層軟件可以使用pSOS系統(tǒng)的pNA+軟件部件豐富的系統(tǒng)調(diào)用函數(shù),這些函數(shù)不但可以操作網(wǎng)絡(luò)接口,而且可以操作套節(jié)字(Socket)進(jìn)行高級TCP/IP網(wǎng)絡(luò)編程,而不需用軟件來實現(xiàn)TCP/IP協(xié)議棧。盡管如此,但往往實際效果最好的當(dāng)屬專用商用網(wǎng)絡(luò)協(xié)議棧,如FUSION公司提供的產(chǎn)品。
一般而言,網(wǎng)絡(luò)接口底層的通信協(xié)議由專用芯片硬件實現(xiàn),而上層的通信協(xié)議才需軟件編程實現(xiàn)。TRIMEDIA方案中網(wǎng)絡(luò)接口的實現(xiàn)可在PCI總線或同步串行口(SSI)掛上不同的專用網(wǎng)絡(luò)接口芯片,接入不同的通信網(wǎng)絡(luò)環(huán)境中。
當(dāng)然,如果設(shè)計成本許可,也可直接使用自帶網(wǎng)絡(luò)協(xié)議棧的網(wǎng)絡(luò)接口控制芯片(如RABBIT公司的產(chǎn)品),減小開發(fā)工作量。
文件系統(tǒng)的實現(xiàn)
在嵌入式DVR設(shè)計中,文件系統(tǒng)的實現(xiàn)非常復(fù)雜,技術(shù)含量相當(dāng)高。與通常PC機使用的文件系統(tǒng)不同的是,嵌入式DVR中通常采用音視頻交叉存儲文件格式,為有效解決大量文件索引占用CPU資源過多、斷電損傷、TIME-SHIFTING等問題,需要建立特別的AV文件系統(tǒng),在不增加冗余的同時仍能快速索引定位。該文件系統(tǒng)實現(xiàn)效率高低將直接影響到整機性能及可靠性。其中純音頻的保存、快速定位、音視頻同步問題值得重點關(guān)注。由于該問題足可構(gòu)成專題論述,本文不作深入討論。
網(wǎng)絡(luò)客戶端軟件的實現(xiàn)
目前幾乎所有的嵌入式DVR均提供網(wǎng)絡(luò)客戶端軟件以進(jìn)行遠(yuǎn)程網(wǎng)絡(luò)監(jiān)控。主要分為內(nèi)嵌于通用 WEB瀏覽器以及專用軟件兩種類型。開發(fā)難點集中在遠(yuǎn)端DVR設(shè)備的地址自動解析識別、針對不同網(wǎng)絡(luò)帶寬情況下的碼率/幀率自適應(yīng)調(diào)整、多通道監(jiān)控中心設(shè)備系統(tǒng)資源占用率等方面。
結(jié)語
我們在引進(jìn)和消化Trimedia多媒體處理技術(shù)的基礎(chǔ)上,成功開發(fā)了長虹“銳眼王”系列嵌入式數(shù)字硬盤錄象機。該機型結(jié)構(gòu)緊湊、功能完善、性能可靠,音視頻效果優(yōu)異,系統(tǒng)升級方便。其中方便易用的下拉式菜單界面及日志記錄功能屬國內(nèi)首創(chuàng)。目前業(yè)內(nèi)的主流還是基于CIF分辨率的記錄,今后高分辨率(D1)記錄以及采用H.264技術(shù)的DVR產(chǎn)品的市場需求將逐漸增加,給算法優(yōu)化及處理器能力的提升提出了新的課題,這將是我們下一步關(guān)注的重點?!?
參考文獻(xiàn)
1 Philips Corporation. PNX1300 chip databooks. 2002
tcp/ip相關(guān)文章:tcp/ip是什么
評論