多媒體處理器DM642及其在視頻監控中的應用
引 言
本文引用地址:http://dyxdggzs.com/article/83036.htm視頻監控系統的設計方案有很多種,但是市場(chǎng)產(chǎn)品的主流一般選擇兩種方案:一是基于CPU和專(zhuān)用的視頻編解碼ASIC芯片。該方案選擇以ARM為核心的CPU和專(zhuān)用媒體處理芯片搭建。優(yōu)點(diǎn)是開(kāi)發(fā)時(shí)間相對較短,但由于采用ASIC,靈活性較差,產(chǎn)品一旦定型,很難更改。二是采用面向媒體處理的專(zhuān)用DSP。其開(kāi)發(fā)時(shí)間不長(cháng),優(yōu)點(diǎn)是由于算法是軟件代碼,所以可以不斷對產(chǎn)品性能進(jìn)行升級,重復開(kāi)發(fā)成本較低。由全球最大的DSP制造商德州儀器(TI)推出的TMS320DM642(以下簡(jiǎn)稱(chēng)DM642)作為一款高性?xún)r(jià)比、專(zhuān)用于多媒體應用的DSP,已被國內外視頻應用從業(yè)者廣泛接受和采用。本文較詳細地介紹DM642的主要特性和系統應用開(kāi)發(fā)技術(shù),并給出基于DM642的視頻監控應用實(shí)例。
DM642是TI 公司專(zhuān)門(mén)為多媒體應用而開(kāi)發(fā)的DSP,采用TI 的第二代高級超長(cháng)指令字結構(VelociTI),使得在一個(gè)指令周期能夠并行處理多條指令。它可在600MHz時(shí)鐘頻率下工作,每個(gè)指令周期可并行8條32bit指令,因此,可達到4800MIPS的峰值計算速度。DM642采用兩級緩存結構:第一級包括相互獨立的LIP(16kB)和LID (16kB),只能作為高速緩存使用;第二級L2(256kB)是一個(gè)統一的程序/數據空間,可整體作為SRAM映射到存儲空間,也可整體作為第二級Cache,或是二者按比例的一種組合來(lái)使用。DM642具有64個(gè)獨立通道的EDMA(擴展的直接存儲器訪(fǎng)問(wèn))控制器,負責片內L2與其他外設之間的數據傳輸。容量較大的兩級緩存和EDMA 通道是DM642高性能的體現之一,若能合理使用和管理,將能大幅度提高程序的運行性能。其結構如圖1所示。
此外DM642具有豐富的外圍設備接口,包括3個(gè)可配置的雙通道視頻端口video port,其中每個(gè)videoport又分成A和B兩個(gè)通道,A/B通道可分別處理一路視頻采集,因此DM642最多可以處理6路視頻采集數據(不帶音頻)。如果將video port配置成用于視頻輸出,則只能在A(yíng)通道輸出,B通道不可以,因此DM642最多可支持3路視頻輸出(不帶音頻)。如果同時(shí)處理音頻,每一個(gè)video port可以處理兩路立體聲。另外還包括64bit的外部存儲器接口(EMIF)、10/100Mbit/s以太網(wǎng)MAC和多通道音頻串行端口(McASP)以及66MHz32bit的PCI接口。
DM642的基本系統由DM642和外擴的存儲器以及外設組成,而外擴的存儲器和外設均通過(guò)DM642的外部存儲器接口(EMIF)進(jìn)行擴展。DM642基本系統所必須的外擴資源包括:
?。?)SDRAM(4M64bit),用于存放程序和緩存數字視頻/ 音頻數據;
?。?)FLASH(4M8bit),用于存放固化程序,以便進(jìn)行ROM引導;
?。?)UART(288bit),擴展2個(gè)異步串口(RS232/RS422/RS485);
?。?)板上寄存器(n×8bit),由若干個(gè)8位狀態(tài)/控制寄存器組成;
?。?)硬盤(pán)接口(2816bit),用于本地大容量存儲接口。
由此可見(jiàn),DM642是一個(gè)功能強大的多媒體處理器,可用來(lái)實(shí)現高速完成大數據量的數字視頻/音頻編解碼處理,特別適合于開(kāi)發(fā)多媒體通信設備。是目前構造數字多媒體應用的理想平臺。
DM642的應用開(kāi)發(fā)技術(shù)
軟件開(kāi)發(fā)工具
由TI 公司發(fā)布的DSP集成開(kāi)發(fā)環(huán)境CCS(CodeComposer Studio),是一個(gè)基于Windows的DSP開(kāi)發(fā)平臺,是目前最優(yōu)秀、最流行的DSP開(kāi)發(fā)軟件之一。CCS集成可視化的編輯界面可直接編寫(xiě)C、匯編語(yǔ)言,除了擴展了基本的代碼產(chǎn)生工具,CCS還集成了C編譯器,C優(yōu)化器、匯編器、匯編優(yōu)化器和連接器等。并支持RTDX(Real Time Data Exchange)技術(shù),可在不中斷目標系統運行的情況下,實(shí)現DSP與其他應用程序(OLE)的數據交換。此外,CCS的斷點(diǎn)工具、探針工具和分析工具使得開(kāi)發(fā)者的一切開(kāi)發(fā)過(guò)程都是在CCS這個(gè)集成環(huán)境下進(jìn)行,包括項目的建立、源程序的編輯以及程序的編譯和調試。
CCS內部還包含了實(shí)時(shí)操作系統(RTOS)DSP/BIOS,主要是為多任務(wù)實(shí)時(shí)調度和同步以及主機/目標系統通信和實(shí)時(shí)監測的應用而設計的。DSP/BIOS具有實(shí)時(shí)操作系統的很多功能,如任務(wù)的調度管理、任務(wù)間的同步和通信、內存管理、實(shí)時(shí)時(shí)鐘管理、中斷服務(wù)管理、外設驅動(dòng)管理等。使用DSP/BIOS工具可以幫助開(kāi)發(fā)人員更加容易地控制DSP的硬件資源,更加靈活地協(xié)調各個(gè)軟件模塊的執行,加快軟件開(kāi)發(fā)和調試速度。
評論