基于高速雙DSP的柔性機(jī)載實(shí)時(shí)圖像跟蹤系統(tǒng)研究
摘要:給出了以兩片高性能TMS320C6414作為核心處理器,并輔以FPGA來(lái)實(shí)現(xiàn)系統(tǒng)邏輯時(shí)序控制,從而組成雙DSP柔性機(jī)載實(shí)時(shí)圖像處理系統(tǒng)的設(shè)計(jì)方案。同時(shí)對(duì)系統(tǒng)的硬件資源選擇及工作流程進(jìn)行了討論。
關(guān)鍵詞:DSP;并行處理;FPGA;柔性;超高速
1 引言
利用可見(jiàn)光成像與紅外成像傳感器實(shí)現(xiàn)實(shí)時(shí)目標(biāo)成像跟蹤是精確制導(dǎo)武器及機(jī)載成像光電系統(tǒng)研究的核心技術(shù)。伴隨著實(shí)戰(zhàn)環(huán)境日益復(fù)雜以及偽裝、隱身等目標(biāo)特性控制技術(shù)的飛速發(fā)展,機(jī)載實(shí)時(shí)圖像跟蹤系統(tǒng)的應(yīng)用也日益廣泛與深入。當(dāng)跟蹤目標(biāo)并非一般地面慢速目標(biāo),而是其它快速運(yùn)動(dòng)目標(biāo)?如:低空導(dǎo)彈、無(wú)人駕駛飛機(jī)等?時(shí),系統(tǒng)將要求現(xiàn)有機(jī)載實(shí)時(shí)圖像跟蹤系統(tǒng)具有更高的技術(shù)性能。基于此,為了進(jìn)一步提高現(xiàn)有機(jī)載光電跟蹤系統(tǒng)在實(shí)戰(zhàn)環(huán)境中,針對(duì)復(fù)雜場(chǎng)景下快速運(yùn)動(dòng)目標(biāo)實(shí)施實(shí)時(shí)跟蹤的魯棒性與穩(wěn)定性,筆者提出以雙DSP和FP-GA為核心來(lái)構(gòu)建主從式超高速并行處理體系的設(shè)計(jì)思想,并研究開(kāi)發(fā)了基于雙DSP的新型柔性機(jī)載實(shí)時(shí)圖像跟蹤系統(tǒng)。一方面,采用雙DSP體系結(jié)構(gòu)實(shí)現(xiàn)系統(tǒng)任務(wù)的并行劃分使本系統(tǒng)具備極高的運(yùn)算處理速度;另一方面,現(xiàn)場(chǎng)可編程邏輯器件FPGA的引入使系統(tǒng)的靈活性也得到極大的提高。而將兩者結(jié)合可使本系統(tǒng)充分體現(xiàn)新一代機(jī)載實(shí)時(shí)圖像跟蹤系統(tǒng)更快速、更精確、更靈活的特點(diǎn)。
圖1
2 TMS320C6414的結(jié)構(gòu)特點(diǎn)
美國(guó)德州儀器公司(TI)推出的新一代數(shù)字信號(hào)處理器TMS320C6414(以下簡(jiǎn)稱C6414)的主頻為400MHz~700MHz,其數(shù)據(jù)處理能力為3200MIPS~5760MIPS。該器件的結(jié)構(gòu)框圖如圖1所示。其主要特點(diǎn)如下:
(1)DSP內(nèi)核采用超長(zhǎng)指令字(VLIW)體系結(jié)構(gòu),有8?jìng)€(gè)功能單元、64個(gè)32bit通用寄存器,一個(gè)時(shí)鐘周期可同時(shí)執(zhí)行8條指令,運(yùn)算能力可以達(dá)到5760MIPS;
(2)為了使數(shù)據(jù)能滿足超高速DSP內(nèi)核的需求,C6414采用了兩級(jí)超高速緩沖存儲(chǔ)器,即16k Byte的一級(jí)數(shù)據(jù)Cache、16k Byte的一級(jí)程序Cache和1024k Byte的數(shù)據(jù)和程序統(tǒng)一內(nèi)存。
(3)增加了直接處理打包數(shù)據(jù)指令,可建立無(wú)縫的數(shù)據(jù)流,以提高指令集的效率;
(4)每個(gè)功能單元在硬件上都增加了附加功能,從而增強(qiáng)了指令集的正交性。
3 系統(tǒng)硬件設(shè)計(jì)
本光電成像跟蹤系統(tǒng)硬件平臺(tái)由六部分組成:圖像采集與預(yù)處理模塊、同步分離模塊、FPGA邏輯控制模塊、雙DSP+雙口RAM 圖像處理模塊、異步通信模塊和圖形顯示模塊。其系統(tǒng)原理框圖如2所示。從圖2可以知道:紅外探測(cè)器及可見(jiàn)光攝像儀輸出的模擬視頻信號(hào)經(jīng)多路信號(hào)選擇芯片導(dǎo)入之后,經(jīng)箝位、放大、濾波以及去同步頭等預(yù)處理后,一路經(jīng)A/D轉(zhuǎn)換器將模擬視頻轉(zhuǎn)換為8bit數(shù)字信號(hào)并導(dǎo)入片外視頻緩存1、2,而后等待FPGA?xí)r序控制DSP外部中斷,以便將全部緩存數(shù)據(jù)搬移到DSP片內(nèi)的2級(jí)緩存,再通過(guò)系統(tǒng)任務(wù)劃分實(shí)現(xiàn)數(shù)據(jù)重組,然后分別在主從DSP進(jìn)行同步并行數(shù)據(jù)處理,并將中間結(jié)果由主DSP綜合,最后在完成后續(xù)運(yùn)算后給出最終匹配結(jié)果。與此同時(shí),主DSP則通過(guò)寫圖形顯示緩存將目標(biāo)匹配位置信息傳遞到外界;另一路模擬信號(hào)先導(dǎo)入同步分離器,然后提取行場(chǎng)同步信號(hào)送交FPGA作為時(shí)基,以產(chǎn)生系統(tǒng)各級(jí)時(shí)序控制信號(hào);第三路模擬信號(hào)送給圖形疊加電路作為輸入疊加信號(hào)之一,當(dāng)場(chǎng)正程來(lái)到時(shí),FPGA中斷控制并讀出圖形存儲(chǔ)器數(shù)據(jù),同時(shí)在FPGA片內(nèi)實(shí)現(xiàn)讀入數(shù)據(jù)的并/串轉(zhuǎn)換后移位輸出至圖形疊加電路,此時(shí)兩路信號(hào)將會(huì)合送入視頻監(jiān)視器,從而完成視頻圖像上圖形的顯示。整個(gè)系統(tǒng)工作期間,每隔80ms主DSP還通過(guò)異步收發(fā)器與外部上位機(jī)進(jìn)行串行通信,以便系統(tǒng)能夠?qū)崟r(shí)接收外部命令與目標(biāo)參數(shù)?進(jìn)而調(diào)整跟蹤系統(tǒng)的工作狀態(tài)。
3.1 圖像采集與預(yù)處理模塊
本系統(tǒng)中的多路選擇器件選用CD4052芯片。它能根據(jù)不同的工作場(chǎng)合來(lái)切換紅外/可見(jiàn)光視頻輸入;視頻預(yù)處理電路采用AD817進(jìn)行視頻信號(hào)的放大,以得到更清晰的信號(hào)來(lái)進(jìn)行視頻處理;A/D芯片選用AD公司的AD9225,輸出的8bit數(shù)字視頻信號(hào)送入74LS245進(jìn)行數(shù)據(jù)鎖存。
3.2 同步分離模塊
系統(tǒng)采用一款專門的視頻同步分離器LM1881來(lái)從標(biāo)準(zhǔn)的負(fù)同步NTSC(PAL或SECAM)視頻信號(hào)中分離出有效的行/場(chǎng)同步信號(hào),并將其送入FPGA以產(chǎn)生系統(tǒng)的各級(jí)邏輯控制輸出。
3.3 FPGA邏輯控制模塊
由于系統(tǒng)中各個(gè)芯片的功能相對(duì)獨(dú)立,要協(xié)調(diào)這些芯片的運(yùn)作?就需要一片起控制邏輯作用的可編程芯片,為此,筆者選用了ALTERAL公司的EPF10K30A,該芯片有246個(gè)用戶I/O口、30000個(gè)典型門、216個(gè)邏輯陣列塊、1728?jìng)€(gè)邏輯單元?不僅能滿足系統(tǒng)的控制要求,而且也可以為將來(lái)系統(tǒng)的功能擴(kuò)展提供控制邏輯。在這個(gè)光電跟蹤系統(tǒng)中,FPGA主要用來(lái)完成如下幾方面的工作:
(1)生成A/D采樣控制時(shí)鐘,實(shí)現(xiàn)模擬視頻的正確采樣;
(2)提供字符圖形存儲(chǔ)器地址及片選/讀控制信號(hào),并在場(chǎng)正程到來(lái)時(shí),控制圖形數(shù)據(jù)的讀出;
(3)提供視頻數(shù)據(jù)緩存器地址及片選/寫控制信號(hào),控制視頻數(shù)據(jù)的連續(xù)寫入;
(4)產(chǎn)生外部中斷4至雙DSP,當(dāng)數(shù)據(jù)寫滿視頻圖像高速緩存預(yù)定空間時(shí),控制主從DSP以將數(shù)據(jù)塊快速搬移至片內(nèi)2級(jí)緩存;
(5)產(chǎn)生外部中斷7至主DSP,并在每個(gè)場(chǎng)逆程時(shí)刻來(lái)到時(shí),控制主DSP擦、寫字符圖形存儲(chǔ)器數(shù)據(jù);
(6)產(chǎn)生一并/串轉(zhuǎn)換電路,以將并行讀入的字符圖形數(shù)據(jù)串行移位輸出至圖形疊加電路,從而實(shí)現(xiàn)“+”、“□”圖形在視頻圖像上的疊加。
3.4 雙DSP+雙口RAM 圖像處理模塊
高速并行數(shù)字信號(hào)處理電路以雙DSP為并行運(yùn)算處理核心單元,并輔以雙口RAM來(lái)實(shí)現(xiàn)視頻圖像的高速緩存,從而完成大運(yùn)算量的高速實(shí)時(shí)目標(biāo)跟蹤處理任務(wù)。該并行處理系統(tǒng)的組成與功能分述如下:
a. 視頻圖像高速緩存子模塊
為了實(shí)現(xiàn)圖像的實(shí)時(shí)采集與高速處理,本系統(tǒng)用兩片雙口RAM組成相互獨(dú)立的視頻緩存,分別對(duì)應(yīng)主/從DSP處理器。設(shè)計(jì)時(shí)選用IDT公司的3.3V 異步雙口PRAM IDT70V657,同時(shí)與DSP接口采用ASRAM方式。由于EMIF的ASRAM接口支持32Bit的數(shù)據(jù)接口,因此,利用IDT70V657構(gòu)成不完全地址結(jié)構(gòu)來(lái)存取數(shù)據(jù)能夠更好地實(shí)現(xiàn)8Bit鎖存數(shù)據(jù)與C6414的接口,而無(wú)須對(duì)DPRAM進(jìn)行寬度擴(kuò)展。同時(shí)亦可減少DSP讀取外部數(shù)據(jù)的時(shí)間開(kāi)銷。
IDT70V657的大小是32K36Bit?系統(tǒng)采用將兩個(gè)DPRAM各劃分為前后兩個(gè)半場(chǎng)的方式來(lái)實(shí)現(xiàn)存取數(shù)據(jù)時(shí)的乒乓切換。即在系統(tǒng)工作的任一時(shí)刻,當(dāng)對(duì)DPRAM前半場(chǎng)寫入數(shù)據(jù)時(shí),使DPRAM后半場(chǎng)向DSP讀出數(shù)據(jù)。當(dāng)前半場(chǎng)寫滿視頻數(shù)據(jù)時(shí),由FPGA給DSP發(fā)出中斷信號(hào),以通知DSP讀出DPRAM前半場(chǎng)所寫入數(shù)據(jù),同時(shí),將A/D轉(zhuǎn)換器的數(shù)據(jù)寫入DPRAM后半場(chǎng)緩沖空間,如此反復(fù)進(jìn)行來(lái)實(shí)現(xiàn)數(shù)據(jù)的讀出與寫入同步操作。
b. 雙DSP高速信號(hào)處理系統(tǒng)
TMS320C6414-600型DSP的主頻高達(dá)600MHz,在超高速實(shí)時(shí)圖像處理領(lǐng)域有著非常出色的性能。本系統(tǒng)的雙DSP高速實(shí)時(shí)信號(hào)處理系統(tǒng)就以2片C6414-600 DSP芯片為核心組成鄰域圖像并行處理機(jī),并通過(guò)系統(tǒng)任務(wù)的劃分與分解實(shí)現(xiàn)同步并行運(yùn)算處理。其系統(tǒng)框圖如圖4所示。
在本系統(tǒng)中,主DSP完成的主要功能如下:
(1) 實(shí)現(xiàn)外部緩存數(shù)據(jù)到片內(nèi)的搬移,為DSP高速批處理開(kāi)辟片內(nèi)二級(jí)緩存;
(2) 實(shí)現(xiàn)與外部上位機(jī)的即時(shí)通訊,接收外部命令與目標(biāo)參數(shù);
(3) 實(shí)現(xiàn)與從DSP的即時(shí)通信,下傳命令字與目標(biāo)參數(shù)以及獲取中間結(jié)果;
(4) 運(yùn)行系統(tǒng)跟蹤算法,承擔(dān)系統(tǒng)核心運(yùn)算任務(wù)的一半;
(5) 與FPGA建立即時(shí)通信,實(shí)現(xiàn)系統(tǒng)程序模塊的調(diào)度與協(xié)調(diào);
從DSP完成的主要功能是:
(1) 實(shí)現(xiàn)外部緩存數(shù)據(jù)到片內(nèi)的搬移,為DSP高速批處理開(kāi)辟片內(nèi)二級(jí)緩存;
(2)運(yùn)行系統(tǒng)跟蹤算法,承擔(dān)系統(tǒng)核心運(yùn)算任務(wù)的一半;
(3)實(shí)現(xiàn)與主DSP的即時(shí)通信,上傳匹配運(yùn)算中間結(jié)果;
(4)與FPGA建立即時(shí)通信,實(shí)現(xiàn)系統(tǒng)程序模塊的調(diào)度與協(xié)調(diào)。
雙DSP處理系統(tǒng)的柔性特色體現(xiàn)在:可依據(jù)實(shí)時(shí)環(huán)境需要加載不同的跟蹤算法來(lái)實(shí)現(xiàn)目標(biāo)跟蹤。算法運(yùn)行之初,兩片C6414-600都在FPGA的控制下,通過(guò)EMIFA口以EDMA方式,分若干次,依系統(tǒng)跟蹤算法而定?將外部視頻緩存中的數(shù)據(jù)(一場(chǎng)圖像)依次讀入DSP的L2片內(nèi)緩存中;算法運(yùn)行之后,主從DSP則通過(guò)McBSP直接互接來(lái)實(shí)現(xiàn)雙DSP間的高速同步通信?以便交換數(shù)據(jù)處理結(jié)果。
系統(tǒng)設(shè)計(jì)中,Flash ROM選用AMD公司的AM29LV800(1M8Bit)來(lái)把FLASH映射到DSP統(tǒng)一編址地址空間EMIFB口的CE1空間。當(dāng)系統(tǒng)上電復(fù)位后,該地址空間為首先引導(dǎo)區(qū)域,這樣即可將應(yīng)用程序代碼加載到片內(nèi)高速執(zhí)行,從而實(shí)現(xiàn)系統(tǒng)的脫機(jī)運(yùn)行。
3.5 異步通信模塊
本系統(tǒng)與外部上位機(jī)的異步通信主要通過(guò)主DSP的McBSP。C6000的McBSP是一個(gè)功能非常強(qiáng)大的標(biāo)準(zhǔn)串口,支持全雙工串行通信,它的雙緩沖數(shù)據(jù)寄存器允許連續(xù)的數(shù)據(jù)流,可與多達(dá)128?jìng)€(gè)通道進(jìn)行收發(fā)通信。通過(guò)對(duì)McBSP的SPCR、RCR、XCR、SRGR、PCR寄存器的配置可實(shí)現(xiàn)系統(tǒng)通信時(shí)收發(fā)數(shù)據(jù)的幀同步和時(shí)鐘同步。
由于外部上位機(jī)的通訊機(jī)制是RS422標(biāo)準(zhǔn),而DSP與外部通信只提供RS232接口,故應(yīng)采用一片MAX3074芯片來(lái)實(shí)現(xiàn)RS422到RS232的轉(zhuǎn)換。MAX3074是MAXIM公司生產(chǎn)的一款專門用于RS422/485至RS232的轉(zhuǎn)接芯片,采用3.3V供電,這與C6000 DSP 外圍供電電壓一致,連接非常方便,不再需要多余的電壓適配器。另一方面,由于McBSP為同步串口,為了實(shí)現(xiàn)McBSP與RS232的無(wú)縫連接,可通過(guò)軟件加入發(fā)送擴(kuò)展算法與接收壓縮算法,從而實(shí)現(xiàn)DSP與上位機(jī)異步串口通信協(xié)議的握手。
3.6 圖形顯示模塊
該模塊由圖形存儲(chǔ)器、圖形疊加電路和視頻監(jiān)視器組成。圖形存儲(chǔ)器選擇IDT公司的70V08(64K8Bits)DPRAM來(lái)存儲(chǔ)標(biāo)識(shí)目標(biāo)匹配位置的圖形數(shù)據(jù)。圖形疊加電路用于實(shí)現(xiàn)視頻與圖形的疊加,并最終由視頻監(jiān)視器顯示疊加結(jié)果。
4 系統(tǒng)工作流程
本系統(tǒng)的軟件工作模式包括復(fù)位和初始化模式、運(yùn)行模式、系統(tǒng)維護(hù)模式,可由系統(tǒng)程序來(lái)控制三種模式的切換。
在復(fù)位和初始化模式下,系統(tǒng)啟動(dòng)后將由主從DSP同步實(shí)現(xiàn)程序搬移,把程序代碼搬移到片內(nèi)并運(yùn)行系統(tǒng)程序,從而初始化主從DSP的運(yùn)行環(huán)境并設(shè)置相關(guān)參數(shù)。
運(yùn)行模式下,雙DSP一方面獨(dú)立響應(yīng)并處理FPGA中斷、運(yùn)行核心跟蹤算法并實(shí)現(xiàn)子系統(tǒng)內(nèi)的進(jìn)程調(diào)度;另一方面通過(guò)主從DSP串口間的互連響應(yīng)中斷以及主DSP串口與遠(yuǎn)程主機(jī)的通訊等功能來(lái)實(shí)現(xiàn)雙DSP子系統(tǒng)間和雙DSP系統(tǒng)與外部主機(jī)的進(jìn)程調(diào)度。
系統(tǒng)維護(hù)模式下,主從DSP在進(jìn)行系統(tǒng)自檢后,可由遠(yuǎn)程主機(jī)通過(guò)RS422接口與主DSP進(jìn)行通訊,以實(shí)現(xiàn)程序的更新下載和參數(shù)修改等功能。圖5為系統(tǒng)軟件工作流程框圖。
5 結(jié)束語(yǔ)
筆者對(duì)該系統(tǒng)的實(shí)時(shí)性進(jìn)行了仿真測(cè)試,結(jié)果分析表明:
(1)單DSP只能實(shí)現(xiàn)開(kāi)窗搜索,高速場(chǎng)合下一旦目標(biāo)逃逸搜索區(qū),將導(dǎo)致目標(biāo)丟失;而本系統(tǒng)能夠?qū)崿F(xiàn)基于整場(chǎng)搜索的大運(yùn)算量高速處理,從而加大了被跟蹤目標(biāo)搜索區(qū)的動(dòng)態(tài)范圍,避免了目標(biāo)丟失情況的發(fā)生,進(jìn)一步提高了實(shí)時(shí)跟蹤的可靠性。
(2)傳統(tǒng)單DSP系統(tǒng)一般只能實(shí)現(xiàn)基于一幀的匹配性能,而本系統(tǒng)可實(shí)現(xiàn)基于逐場(chǎng)的跟蹤匹配,進(jìn)一步提高了跟蹤系統(tǒng)的實(shí)時(shí)性。
(3)根據(jù)實(shí)際場(chǎng)合的需要,本系統(tǒng)可通過(guò)軟件選擇加載跟蹤算法,從而極大的增強(qiáng)了系統(tǒng)的通用性和易維護(hù)性,體現(xiàn)出柔性處理系統(tǒng)的特色。
由此可見(jiàn),雙DSP柔性處理系統(tǒng)為復(fù)雜場(chǎng)景下快速移動(dòng)目標(biāo)的高速識(shí)別與跟蹤提供了一個(gè)有效的實(shí)現(xiàn)方案,同時(shí)也為機(jī)載實(shí)時(shí)圖像跟蹤系統(tǒng)提供了新的高速處理平臺(tái)。
評(píng)論