1. 引言
在圖象處理方面,有多種方式的處理系統(tǒng),根據(jù)不同的使用場所、使用目的以及對性價比的不同要求,可靈活選擇系統(tǒng)的設(shè)計方案。交通圖象的檢測與處理方法的研究對于交通安全管理有著非常重要的理論意義和應(yīng)用" title="實際應(yīng)用">實際應(yīng)用價值。通過交通圖象的檢測識別可對路況進(jìn)行實時監(jiān)控,一旦發(fā)生交通擁擠,可以及時采取疏導(dǎo)措施,防止不必要的交通事故的發(fā)生;此外還可以根據(jù)實時監(jiān)控,實時監(jiān)測交通違章現(xiàn)象。
目前 DSP 廣泛應(yīng)用于數(shù)字信號處理系統(tǒng)中[1],成為數(shù)字化變革的主要角色,隨著DSP產(chǎn)品的不斷推陳出新,C2000 系列、C5000 系列、C6000 系列以及一些非主流的系列,其性能不斷完善。圖象處理屬于一種信號處理,采用DSP 設(shè)計出來的數(shù)字信號處理系統(tǒng)可以很好地滿足圖象處理的要求。而引入FPGA 參與系統(tǒng)設(shè)計,又使得系統(tǒng)的開發(fā)周期大大縮短,成本大大減少。本文介紹一種基于FPGA+DSP 的交通圖象處理系統(tǒng)設(shè)計方案。由于交通圖象處理系統(tǒng)對實時性的要求較高,且應(yīng)用的場所特殊,對于該系統(tǒng)方案還要考慮到性價比,故采用了DSP5000 系列的芯片。為了滿足高速采樣數(shù)據(jù)流、快速存取、快速運算的實時性要求,采用FPGA+DSP 的設(shè)計思想。
2. 系統(tǒng)結(jié)構(gòu)
本文介紹的系統(tǒng)是基于FPGA+DSP 結(jié)構(gòu)的圖象處理系統(tǒng)[2],整個處理系統(tǒng)的結(jié)構(gòu)框圖如圖(1)所示。系統(tǒng)數(shù)據(jù)處理的流程圖見圖(2)所示。
在該系統(tǒng)中主要就是FPGA 模塊和DSP 模塊及它們的外圍電路,在此首先就介紹一下這兩種模塊?,F(xiàn)場可編程門陣列FPGA 屬于可編程ASIC 類,由邏輯功能塊組成,并由用戶現(xiàn)場編程,因而既有門陣列的高邏輯密度和通用性,又有可編程邏輯器件的用戶可編程特性,因此在實現(xiàn)小型化、集成化和高可靠性的同時,減小了設(shè)計風(fēng)險,降低了設(shè)計成本,縮短了研發(fā)周期。本系統(tǒng)中FPGA 作為協(xié)處理器主要是完成對數(shù)字信息的采集及預(yù)處理,生成DSP的處理對象,現(xiàn)選用EPF10K20RC240-4。
該系統(tǒng)DSP 選用TMS320VC5402。TMS320VC5402 是TI 公司推出的一款性價比極高的低功耗的定點DSP 芯片,操作頻率可達(dá)100MIPS, 多總線結(jié)構(gòu),允許使用C 語言編譯器,在數(shù)字信號處理中廣泛應(yīng)用。TMS320VC5402 的數(shù)據(jù)/程序?qū)ぶ房臻g為1M×16bit,內(nèi)置4K×16bitROM 和16k×16bitRAM;內(nèi)置可編程等待狀態(tài)發(fā)生器、鎖相環(huán)(PLL)時鐘產(chǎn)生器、兩個多通道緩沖串口、一個與外部處理器通信的8 位并行HPI 口、兩個16 位定時器以及6通道DMA 控制器且低功耗。與C54X 系列的其它芯片相比,C5402 具有高性能、低功耗和低價格等特點。它采用6 級流水線,且當(dāng)RPT(重復(fù)指令)時,一些多周期的指令就變成了單周期的指令;芯片內(nèi)部RAM 和ROM 可根據(jù)PMST 寄存器中的OVLY 和DROM 位靈活設(shè)置。這些都有利于算法的優(yōu)化。該芯片提供2 個MCBSP,既可以工作在SPI 工作模式,又可以工作在通用串口模式,在系統(tǒng)設(shè)計中可靈活的應(yīng)用。
3. 系統(tǒng)的硬件設(shè)計
該處理系統(tǒng)以PC 機作為信息處理人機對話平臺[3],顯示當(dāng)前系統(tǒng)的運行狀態(tài);以DSP為核心處理器,完成數(shù)據(jù)處理、控制算法、以及保護(hù)中斷的處理;以FPGA 為協(xié)處理器,完成對數(shù)據(jù)信號的采集、預(yù)處理、管理DSP 和各種外部設(shè)備的接口配置。FPGA 的這種預(yù)處理操作能夠使得DSP 專注于復(fù)雜運算的實現(xiàn),系統(tǒng)運行在準(zhǔn)并行狀態(tài),從而加快了處理速度。
TMS320VC5402 采用3.3V 和1.8V 電源供電,其中I/O 采用3.3V 電源供電,芯片的核采用1.8V 電源供電。TMS320VC5402 有符合IEEE1149.1 標(biāo)準(zhǔn)的JTAG 標(biāo)準(zhǔn)測試接口及相應(yīng)的控制器,從而通過仿真器與PC 機相連,通過測試引腳裝載程序,進(jìn)行在線調(diào)試。系統(tǒng)的啟動、結(jié)束、參數(shù)的設(shè)置以及圖象算法的選擇是由PC 機通過RS232 串口進(jìn)行控制的。TMS320VC5402 內(nèi)部沒有FLASH 存儲器,程序需通過并口由仿真器下載,不能脫機工作。為了形成獨立的系統(tǒng),采用外部擴展閃速存儲器AM29LV200B 存儲程序。系統(tǒng)復(fù)位時從FLASH 中加載程序。AM29LV200B 是AMD 公司生產(chǎn)的128KB16 位閃速存儲器,采用3V單電源供電,可以使其內(nèi)部產(chǎn)生高電壓進(jìn)行編程和擦除操作。具體編程、擦除操作由內(nèi)部嵌入的算法實現(xiàn),用戶只需向其命令寄存器寫入標(biāo)準(zhǔn)的微處理器指令即可。用戶還可以通過查詢特定的引腳或數(shù)據(jù)線監(jiān)控操作是否完成,可以對任一扇區(qū)進(jìn)行讀、寫或擦除操作,而不影響其它部分的數(shù)據(jù)。由于TMS320VC5402 的采樣速度及存儲空間受到自身的約束限制,數(shù)據(jù)的采集、流向控制和預(yù)處理由FPGA 及外擴的SDRAM 完成。SDRAM 和其他的存儲器相比,其速度快,容量大,該系統(tǒng)SDRAM 選用MT48LC32M16A2。DSP 的結(jié)構(gòu)框圖見圖(3)所示。
4. 系統(tǒng)的軟件設(shè)計
系統(tǒng)的軟件設(shè)計是在設(shè)計好的硬件基礎(chǔ)上編寫程序來使得硬件實現(xiàn)具體操作應(yīng)用。軟件程序包含控制程序和上位機程序[4]。DSP 的控制軟件采用匯編語言與C 語言相結(jié)合編程。采用C 語言編程大大縮短了開發(fā)周期,而且便于系統(tǒng)的修改、升級,且可讀性強、可移植性好,大大提高了算法的通用性。但在某些情況下,C 代碼的效率還是不如匯編語言代碼的效率高。所以結(jié)合兩者的優(yōu)點采用匯編語言與C 語言相結(jié)合的方式編程。用匯編程序來實現(xiàn)系統(tǒng)的初始化、圖形操作、串口操作;用C 語言程序來實現(xiàn)系統(tǒng)的流程控制及圖象處理。系統(tǒng)軟件流程圖見圖(4)所示。
5. 結(jié)束語
基于 FPGA、DSP 的設(shè)計是當(dāng)今數(shù)字電路研發(fā)的一種可行的實現(xiàn)方式。該系統(tǒng)中DSP的應(yīng)用使得圖象處理速度快,很好地滿足了實時性要求;采用FPGA 技術(shù)來進(jìn)行硬件設(shè)計,因其內(nèi)部功能是可以通過軟件來更改的,有很大的靈活性和可重用性,從而大大縮短了系統(tǒng)的開發(fā)周期,降低了成本和硬件開發(fā)風(fēng)險,因此具有很好的應(yīng)用前景。此系統(tǒng)用于交通圖象的處理既能滿足其實時性要求,又節(jié)約了成本,具有極高的性價比。