基于DSP和FPGA的電視觀瞄系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
本文介紹的電子消像旋系統(tǒng)采用Altera公司的StratixII系列FPGA芯片和ADI公司的ADSP2183為核心,可以滿足系統(tǒng)對(duì)功能、實(shí)時(shí)性及精度的要求。
系統(tǒng)原理與基本結(jié)構(gòu)
電視觀瞄系統(tǒng)組成框圖如圖1所示。系統(tǒng)由紅外熱像儀、主圖像處理板、DC/DC與差分轉(zhuǎn)換板、總線母板、控制接口板、顯示屏等部分組成。
圖1 電視觀瞄系統(tǒng)組成框圖
首先,紅外熱像儀生成觀瞄場(chǎng)景的數(shù)字視頻圖像數(shù)據(jù),以LVDS信號(hào)傳送到系統(tǒng)總線。這里采用LVDS視頻信號(hào),主要是考慮本電視觀瞄系統(tǒng)要求在非??量痰奈锢憝h(huán)境下工作,而LVDS方式具有良好的抗電磁干擾(EMI)能力,能夠很好地保證視頻信號(hào)在較長(zhǎng)距離條件下的傳輸質(zhì)量。該消旋處理模塊共包含四個(gè)功能單元:(1)DC/DC轉(zhuǎn)換、LVDS與LVTTL相互轉(zhuǎn)換單元;(2)系統(tǒng)控制接口單元;(3)圖像處理單元;(4)其他單元。功能單元(1)完成系統(tǒng)電源及LVDS數(shù)字差分視頻到LVTTL數(shù)字視頻的轉(zhuǎn)換;系統(tǒng)控制單元(2)包含兩路串行接口和數(shù)據(jù)交換郵箱,完成信息交換;功能單元(3)是系統(tǒng)的核心部分,它實(shí)現(xiàn)對(duì)圖像的處理及保證精度的要求;單元(4)主要是系統(tǒng)電磁兼容性方面的設(shè)計(jì)及數(shù)據(jù)存儲(chǔ)單元。
圖像處理模塊完成對(duì)數(shù)字視頻信號(hào)的流水處理,全部工作流程在DSP的控制下用FPGA器件實(shí)現(xiàn)視場(chǎng)中心的校正、旋轉(zhuǎn)、精度的計(jì)算、實(shí)時(shí)圖像插值等,最后,經(jīng)過(guò)消像旋處理的數(shù)字視頻流,再由DC/DC與差分轉(zhuǎn)換模塊中的LVDS Driver部分傳送給終端顯示。其中,紅外熱像儀控制電路設(shè)置兩路RS422串行通信口,通過(guò)串行口與熱像儀和圖像處理板交換數(shù)據(jù)信息。數(shù)據(jù)交換由熱像儀控制電路發(fā)起,每100ms通過(guò)RS422串行通信口1向熱像儀發(fā)送一次控制指令,直到收到熱像儀的接收響應(yīng)回碼。紅外熱像儀控制電路板收到熱像儀的接收回碼后將該回碼通過(guò)RS422串行通信口2轉(zhuǎn)發(fā)給圖像處理板。按照這些控制命令的內(nèi)容,圖像處理板便根據(jù)這些命令完成字符疊加,供觀瞄顯示屏上顯示。
系統(tǒng)設(shè)計(jì)
在數(shù)字信號(hào)處理技術(shù)中,DSP+FPGA是目前比較通用的方式。通用DSP對(duì)系統(tǒng)進(jìn)行管理,并協(xié)同功能強(qiáng)大的FPGA完成圖像算法,實(shí)現(xiàn)設(shè)計(jì)功能要求。
消像旋是一種常用的的數(shù)字圖像處理技術(shù),傳統(tǒng)的消像旋都是在二維平面中進(jìn)行的,由于旋轉(zhuǎn)后圖像像素點(diǎn)坐標(biāo)不再是整數(shù),故旋轉(zhuǎn)后必須對(duì)像素點(diǎn)灰度進(jìn)行二維插值運(yùn)算,由于其運(yùn)算過(guò)程復(fù)雜,運(yùn)算量也大,尤其是當(dāng)對(duì)旋轉(zhuǎn)后的圖像質(zhì)量要求較高時(shí),需要采用高階數(shù)的插值運(yùn)算,如3階、4階等,則運(yùn)算量更大。因此單純采用軟件實(shí)現(xiàn),其運(yùn)算時(shí)間過(guò)長(zhǎng),實(shí)時(shí)性差,無(wú)法滿足高速圖像旋轉(zhuǎn)的要求,更不用說(shuō)在視頻條件下使用。
● 觀瞄顯示界面設(shè)計(jì)
觀瞄顯示界面如圖2所示。通過(guò)圖文混合技術(shù),可以在顯示界面上很方便地產(chǎn)生電子分劃,形式靈活可變且精度高,可以容易實(shí)現(xiàn)不改動(dòng)光學(xué)系統(tǒng)而完成零位校準(zhǔn)、對(duì)比度亮度調(diào)整、動(dòng)態(tài)變形消隱等任務(wù)。觀瞄區(qū)域是一個(gè)圓形,圓形以外至屏幕邊緣則是固定灰度的背景,用于疊加圖文信息。屏幕左上是命令菜單,顯示當(dāng)前執(zhí)行的命令,右上是控制參數(shù),具體顯示控制字符。在屏幕左下,是系統(tǒng)的狀態(tài)信息,右下則是調(diào)試命令,平時(shí)不顯示,只在系統(tǒng)進(jìn)入自身調(diào)試狀態(tài)時(shí)才顯示。
圖2 觀瞄顯示界面
● FPGA設(shè)計(jì)
系統(tǒng)中,F(xiàn)PGA主要完成對(duì)視頻圖像的旋轉(zhuǎn)算法實(shí)現(xiàn)、圖文混合、邏輯控制和部分I/O操作等工作。正是基于這樣的考慮,選用了Altera公司的StratixII系列中的EP2S30F484I4芯片。StratixII FPGA放棄了傳統(tǒng)的查找表(LUT)結(jié)構(gòu),使用一種創(chuàng)新的自適應(yīng)邏輯模塊(ALM)作為FPGA的基本結(jié)構(gòu)單元。與第一代Stratix相比,StratixII FPGA的邏輯密度是前者的2倍,速度也快了50%。EP2S30F484I4有13552個(gè)自適應(yīng)邏輯模塊(ALM),33 880等效邏輯單元(LE),片上RAM為1369728bit,還有12個(gè)鎖相環(huán)(PLL)。
FPGA控制單元是在QuartusII 5.0環(huán)境下開發(fā)的,消像旋處理是軟件設(shè)計(jì)的關(guān)鍵。數(shù)字視頻由紅外熱像儀輸出,格式為差分輸出。包括如下信號(hào):V_CLK(14.5MHz),V_LE(行有效)、V_FE(場(chǎng)有效)、V_EOF(奇偶場(chǎng)標(biāo)志)、V_SYN(復(fù)合同步)、V_D[7..0](8bit數(shù)據(jù))。該數(shù)字視頻經(jīng)過(guò)消像旋處理后仍按原格式輸出。圖像分辨率為(768×576)像素/幀。
由于旋轉(zhuǎn)后圖像像素點(diǎn)坐標(biāo)不再是整數(shù),故旋轉(zhuǎn)后必須對(duì)像素點(diǎn)灰度進(jìn)行插值運(yùn)算。但是如果采用高階數(shù)的插值運(yùn)算,其運(yùn)算過(guò)程復(fù)雜,運(yùn)算量也大。通過(guò)對(duì)系統(tǒng)顯示要求和方位解算器精度的綜合估算,本系統(tǒng)進(jìn)行了8倍硬件插值,在像素的水平方向進(jìn)行2倍插值,垂直方向上進(jìn)行4倍插值。為了保證插值和圖像顯示的連續(xù),本系統(tǒng)利用8片IS61LV12048(1024K×8bit的高速SRAM)芯片作場(chǎng)存儲(chǔ)器(奇場(chǎng)和偶場(chǎng))來(lái)交替地存儲(chǔ)經(jīng)過(guò)旋轉(zhuǎn)處理后的數(shù)字圖像數(shù)據(jù)。用于奇(偶)場(chǎng)操作的四片SRAM的20位地址線和寫(WE)、讀(OE)是一樣的,只有各自的8位數(shù)據(jù)線和片選則是獨(dú)立的。在一行像素全部傳送到以后,和上一行像素的插值工作,還有行內(nèi)插值就實(shí)時(shí)的完成了。
FPGA的基準(zhǔn)時(shí)鐘為來(lái)自DSP輸出的32MHz時(shí)鐘,經(jīng)過(guò)片內(nèi)數(shù)字時(shí)鐘網(wǎng)絡(luò)(PLL),可以得到系統(tǒng)所需要的多種時(shí)鐘。
圖文混合主要是控制觀瞄系統(tǒng)顯示屏的顯示內(nèi)容與相應(yīng)的位置。利用EP2S30F484的內(nèi)部RAM配置了許多獨(dú)立的小RAM塊,DSP根據(jù)不同的控制命令向這些RAM塊寫入不同的顯示內(nèi)容。FPGA再根據(jù)顯示位置的分布,以記數(shù)的方式在屏幕上控制顯示內(nèi)容輸出,達(dá)到圖文混合。
由于StratixII FPGA使用SRAM來(lái)存儲(chǔ)配置數(shù)據(jù),而SRAM存儲(chǔ)器在掉電后數(shù)據(jù)會(huì)丟失,因此每次StratixII FPAG上電時(shí),必須下載一次配置數(shù)據(jù)。選擇正確、合適的配置方案是利用FPGA進(jìn)行設(shè)計(jì)的一個(gè)重要環(huán)節(jié)。Altera公司的FPGA共有多種配置方案,其中FPP、AS、PS、PPA和JTAG 配置方案適用于Stratix II系列FPGA。本設(shè)計(jì)采用了一種Advanced configuration Combine的配置方案。因?yàn)樵谙到y(tǒng)研發(fā)階段,考慮到要頻繁地向FPGA寫入設(shè)計(jì)文件,和EP2S30F484直接相連的標(biāo)準(zhǔn)JTAG必不可少,ByteMasterMV下載線一端接PC的并口,另一端與板上引出的JTAG底座連接。存儲(chǔ)配置數(shù)據(jù)并完成自動(dòng)配置的是EPCS16,它是Altera專為StratixII設(shè)計(jì)的增強(qiáng)型配置器件。當(dāng)設(shè)計(jì)完成后,利用ByteMasterMV下載線直接將QuartusII輸出的配置信息直接寫入增強(qiáng)型配置器件中,以后在獨(dú)立工作狀態(tài)下,系統(tǒng)一上電啟動(dòng),就開始了AS(FAST)方式的自動(dòng)配置。
使用JTAG配置電路時(shí),主要用到4個(gè)必需的管腳:TDI、TDO、TMS和TCK及一個(gè)可選的管腳TRST。在電路板上,要根據(jù)JTAG 標(biāo)準(zhǔn)的要求,引出2×5的JTAG底座。要注意的是,TMS和TDI管腳必須接1kΩ的上拉電阻。
QuartusII 5.0中一個(gè)非常實(shí)用的工具是軟邏輯分析儀,它通過(guò)標(biāo)準(zhǔn)JTAG的方式就提供給用戶可視化的在線分析能力。只要把ByteMasterMV電纜連接在EP2S30F484的JTAG頭上,添加邏輯分析文件,在里面定義好要觀察的信號(hào),觸發(fā)信號(hào)、方式,時(shí)鐘,采樣深度等參數(shù),編譯完成后從JTAG下載到FPGA內(nèi)部,就可以運(yùn)行,并實(shí)時(shí)的獲得圖形化的分析結(jié)果。[!--empirenews.page--]● DSP設(shè)計(jì)
ADSP2183是的高速增強(qiáng)定點(diǎn)16位數(shù)字信號(hào)處理芯片。作為主控芯片,ADSP2183的接口主要可分為圖像串行傳輸接口、串行通信接口、TL16C552A控制接口、字節(jié)存儲(chǔ)區(qū)間接口、I/O空間接口、重疊數(shù)據(jù)存儲(chǔ)區(qū)間接口、EZ-ICE控制接口及其他一些IO接口。對(duì)DSP主要就是設(shè)計(jì)存儲(chǔ)器地址空間,ADSP2183有4個(gè)獨(dú)立的存儲(chǔ)空間:數(shù)據(jù)存儲(chǔ)器、程序存儲(chǔ)器、字節(jié)存儲(chǔ)器、I/O存儲(chǔ)器。它們都有相應(yīng)的片選,支持外部訪問(wèn)。其中,字節(jié)存儲(chǔ)器空間達(dá)到4MB,支持從廉價(jià)的8位存儲(chǔ)器引導(dǎo)和實(shí)時(shí)存取。如圖3所示,ADSP2183的所有數(shù)據(jù)線、地址線、存儲(chǔ)器片選、中斷控制和部分I/O都連到了EP2S30F484上。DSP可以像訪問(wèn)內(nèi)部存儲(chǔ)器一樣,訪問(wèn)在FPGA內(nèi)部配置出的RAM塊,與FPGA高速的傳送數(shù)據(jù)。DSP的三個(gè)外部中斷源是有優(yōu)先級(jí)安排的。因?yàn)槿绻谝粓?chǎng)的20ms時(shí)間里面不能協(xié)助完成圖像旋轉(zhuǎn)所需要的計(jì)算,則會(huì)發(fā)生圖像停滯或者跳變,嚴(yán)重影響觀瞄效果。所以場(chǎng)中斷是外部中斷源中優(yōu)先級(jí)最高的,接下來(lái)是UART產(chǎn)生的中斷,因?yàn)樗苯佑绊憣?shí)時(shí)的圖文混合與顯示結(jié)果,最后才是控制臺(tái)產(chǎn)生的中斷,人手操作的時(shí)間和人眼感受變化的時(shí)間畢竟和以上兩種相比有比較大的差異。
圖3 系統(tǒng)硬件結(jié)構(gòu)
工作頻率是26.32MHz,所以這里接一個(gè)16MHz系統(tǒng)時(shí)鐘,其內(nèi)部自動(dòng)輸出一個(gè)精確的32MHz時(shí)鐘到CLKOUT,同時(shí)給FPGA作為全局時(shí)鐘使用。ADSP2183使用一個(gè)2×7的Emulator接口進(jìn)行調(diào)試和仿真。
觀瞄系統(tǒng)旋轉(zhuǎn)的精確角度值由系統(tǒng)中的方位解算器產(chǎn)生,以粗通道、精通道各高8位的方式表示,其中解算器是36速比的。FPGA通過(guò)組合CS0、CS1、INH這三個(gè)片選信號(hào)發(fā)送給方位解算器,然后一次連續(xù)從總線上讀回粗通道高、粗通道低、精通道高、精通道低總共四個(gè)8位二進(jìn)制值的角度值,DSP按順序把四個(gè)值組合成一個(gè)19位的完整角度值。這樣的角度值最高精度達(dá)到 0.02個(gè)密位(6000個(gè)密位表示360°),滿足系統(tǒng)設(shè)計(jì)提出的精度要求。由DSP完成消像旋的協(xié)同計(jì)算,將計(jì)算結(jié)果通過(guò)DSP的數(shù)據(jù)總線返回至FPGA。
ADSP2183內(nèi)部沒(méi)有非易失性存儲(chǔ)器,程序和數(shù)據(jù)必須依靠外部擴(kuò)展存儲(chǔ)器。在系統(tǒng)加電或復(fù)位時(shí),如果ADSP2183的BMODE和MMAP都為低,就會(huì)以BDMA(字節(jié)DMA)的方式通過(guò)DSP的引導(dǎo)加載(Boot loader)機(jī)制將程序和數(shù)據(jù)轉(zhuǎn)移到片上存儲(chǔ)器中執(zhí)行。過(guò)程是:ADSP2183從字節(jié)存儲(chǔ)器空間裝載最前的32個(gè)程序存儲(chǔ)器字,然后開始執(zhí)行。裝載程序就在這32個(gè)字中。裝載程序連續(xù)的從字節(jié)口裝載,直到整個(gè)程序裝載完成為止。這里使用的是SST公司的SST29LE010,8位的1Mbit EEPROM作為DSP的字節(jié)存儲(chǔ)器。它是3.3V單電源,可以分頁(yè),每頁(yè)128字節(jié),最多1024頁(yè),支持Page-Write(頁(yè)寫)和JEDEC標(biāo)準(zhǔn)的在線編程,使用起來(lái)方便可靠。
紅外熱像儀及其控制電路以RS422方式發(fā)送串行數(shù)據(jù),TL16C552A按照通信協(xié)議接收到,自動(dòng)轉(zhuǎn)換成并行數(shù)據(jù),ADSP2183直接用程序方式從數(shù)據(jù)總線上讀回。DSP發(fā)送給熱像儀的串行數(shù)據(jù)也是經(jīng)過(guò)TL16C552A并串轉(zhuǎn)換,再由RS422驅(qū)動(dòng)的。考慮到ADSP2183和外部的通信任務(wù)就是控制命令、工作參數(shù)的發(fā)送和狀態(tài)字的返回,數(shù)據(jù)傳輸需求較低且數(shù)據(jù)流零散的特點(diǎn),這里使用德州儀器公司的TL16C552A雙異步通信器就可以勝任了。
另外,系統(tǒng)中還加入了一個(gè)串行EEPROM器件,Microchip公司93LC66B Microwire 串行EEPROM。因?yàn)殡娨曈^瞄系統(tǒng)中需要一些動(dòng)態(tài)的參數(shù),來(lái)進(jìn)行不同的處理以適應(yīng)特殊的場(chǎng)合需求。比如不同光學(xué)機(jī)構(gòu)的零位角度不同、命令的調(diào)整、系統(tǒng)運(yùn)行過(guò)程對(duì)特定參數(shù)或者錯(cuò)誤信息的記錄,等等。都需要系統(tǒng)每次能夠記錄這些參數(shù),并且在斷電以后存儲(chǔ)這些參數(shù)。由于參數(shù)并不多,所以不需要額外設(shè)計(jì)復(fù)雜的FLASH存儲(chǔ)空間。93LC66B的使用十分方便,確定好EEPROM的ORG狀態(tài),就只需要把93LC66B的DI、DO、SCK和CS這幾根引腳與ADSP2183的Flag引腳正確連接,然后在DSP中對(duì)Flag編程,就可以實(shí)現(xiàn)對(duì)EEPROM的各種操作。
● 電源設(shè)計(jì)
現(xiàn)在以ASIC、DSP、FPGA等組成的系統(tǒng)中芯片都是低功耗設(shè)計(jì),供電部分也變得越來(lái)越復(fù)雜。不僅對(duì)不同電平值的電壓精度、輸出電流、紋波、沖擊等要求十分嚴(yán)格,而且同一個(gè)芯片的不同電平的上電時(shí)序也有了要求。整個(gè)系統(tǒng)的電源設(shè)計(jì)都采用了美國(guó)德州儀器公司的電源器件。
ADSP2183的供電相對(duì)比較簡(jiǎn)單,這里主要討論FPGA的供電。手冊(cè)規(guī)定,EP2S30F484的電源基本分為這幾種:核心供電(Vccint)為1.2V;各個(gè)BANK的I/O口供電(Vccio),鎖相環(huán)數(shù)字供電(Vccpll_d)為1.2V,鎖相環(huán)模擬供電(Vccpll_a)為1.2V。還有Vccpd為3.3V),它是StratixII FPGA新定義的一個(gè)供電,其作用是為所有相關(guān)的3.3V/2.5V的配置輸入緩沖器和JTAG相關(guān)引腳提供穩(wěn)定可靠的供電。它要求從0~3.3V的抬升時(shí)間必須小于100ms,否則Stratix II FPAG將不能配置成功。但是如果確實(shí)不能保障這樣苛刻的要求,就必須人為地把nCONFIG信號(hào)強(qiáng)制拉低,直到其他電源達(dá)到設(shè)計(jì)的可靠狀態(tài),以確保配置過(guò)程的正確完成。
EP2S30F484的(Vccint)是由TP54312提供,1.2V(Vccpll_a/Vccpll_d)是TP73633提供,3.3V(Vccpd)是TP78601提供,整個(gè)系統(tǒng)的3.3V供電是TP75533提供。不同電源的供電時(shí)序經(jīng)過(guò)設(shè)計(jì)并實(shí)驗(yàn)測(cè)量出,是符合設(shè)計(jì)要求,當(dāng)然也保證了觀瞄系統(tǒng)的正常運(yùn)行。
在每種電源設(shè)計(jì)的時(shí)候,都加入了二極管反向保護(hù)和瞬態(tài)電壓抑制器進(jìn)行瞬間過(guò)沖保護(hù)。同一種電源的模擬和數(shù)字部分也用電感隔離開了,相應(yīng)的模擬地層和數(shù)字地層之間也物理分隔開,在合適的位置點(diǎn)用Ferrite Bead(鐵氧體磁珠)做了連接,最大程度的減小EMI。主圖像處理板是一塊10層PCB的設(shè)計(jì),電源和地就有4層,所有電源和部分時(shí)鐘都在內(nèi)電層或地層劃分出來(lái),信號(hào)層沒(méi)有長(zhǎng)距離的供電回路和時(shí)鐘走線。
● VHDL程序設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)包括對(duì)FPGA的VHDL程序編寫和對(duì)DSP的匯編程序編寫兩部分。
在FPGA設(shè)計(jì)中采用VHDL語(yǔ)言設(shè)計(jì),不僅大大簡(jiǎn)化了設(shè)計(jì)復(fù)雜邏輯電路的難度,而且可以充分發(fā)揮FPGA內(nèi)部資源的優(yōu)勢(shì)。在Quartus II5.0集成開發(fā)環(huán)境下,對(duì)整個(gè)FPGA運(yùn)算模塊采用了自頂向下的設(shè)計(jì)方式。首先,用Block圖的方式按照系統(tǒng)中所用芯片劃分,設(shè)計(jì)了邏輯總體,把所有FPGA的資源合理分配到相應(yīng)的物理引腳,規(guī)劃好頂層邏輯。接著,在每個(gè)Block下編寫VHDL程序,實(shí)現(xiàn)具體的控制邏輯。采用模塊化、規(guī)則化和局部化的技術(shù),既提高了設(shè)計(jì)效率,又減少設(shè)計(jì)的復(fù)雜性。
對(duì)于EP2S30F484,使用一個(gè)統(tǒng)一的全局時(shí)鐘,并采用同步時(shí)序的設(shè)計(jì)方法。FPGA內(nèi)部的所有模塊都使用一個(gè)全局時(shí)鐘,統(tǒng)一復(fù)位。在具體功能模塊設(shè)計(jì)的時(shí)候,可以調(diào)用一些Altera公司的內(nèi)部核和LPM功能塊。這些模塊具有結(jié)構(gòu)獨(dú)立的設(shè)計(jì)輸入、高效的設(shè)計(jì)映射和工具獨(dú)立的設(shè)計(jì)輸入,不僅節(jié)省大量的FPGA資源,提高了設(shè)計(jì)效率,而且使系統(tǒng)性能得到提高。
圖4 系統(tǒng)軟件流程圖
● DSP程序設(shè)計(jì)
ADSP-2183有一套完整的軟件與硬件開發(fā)系統(tǒng),包含一個(gè)以PC為平臺(tái)的硬件仿真器ADSP218xEZIC E 和IDE(集成開發(fā)環(huán)境)VisualDSP++3.5。ADSP218xEZIC E是基于RS232串口的在線仿真器,它一邊通過(guò)串口和PC的IDE通信,下載程序代碼到目標(biāo)DSP運(yùn)行,另外一邊通過(guò)設(shè)計(jì)在目標(biāo)板上的Emulator的14個(gè)管腳,觀察和測(cè)試DSP的端口、寄存器以及RAM的工作情況,并返回到PC的IDE界面。
● 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件主要是由主程序和中斷服務(wù)程序兩部分組成,程序設(shè)計(jì)框圖如圖4所示。主程序首先設(shè)置ADSP-2183 內(nèi)部寄存器,如中斷控制寄存器ICNTL、中斷屏蔽寄存器IMASK、系統(tǒng)控制寄存器,以建立ADSP-2183的工作模式。然后運(yùn)行DSP自檢程序。通過(guò)后,則要初始化UART芯片(TL16C552)、讀取串行EEPROM中預(yù)存的參數(shù),然后進(jìn)入主體循環(huán)。DSP的三個(gè)外部中斷源產(chǎn)生中斷:場(chǎng)中斷,每20ms產(chǎn)生一次、UART通信中斷,紅外熱像儀及其控制電路產(chǎn)生、控制臺(tái)中斷。主要的消像旋運(yùn)算、圖文混合的任務(wù),方位解算器角度讀取和計(jì)算都由場(chǎng)中斷服務(wù)程序完成,而且必須在20ms時(shí)間內(nèi)及時(shí)完成。UART中斷服務(wù)程序由發(fā)送和接收任務(wù)觸發(fā),當(dāng)有數(shù)據(jù)被接收到或要發(fā)送,中斷服務(wù)程序首先通過(guò)讀狀態(tài)寄存器確定是發(fā)送還是接收,然后跳轉(zhuǎn)到相應(yīng)服務(wù)程序中執(zhí)行。其中TL16C552的初始化程序則主要完成異步串行通信協(xié)議的設(shè)置。系統(tǒng)界面顯示的字符是16x16的矩陣,所以制作了4KB地字庫(kù),可以容納128個(gè)中文、數(shù)字、字母、特殊符號(hào)。
結(jié)束語(yǔ)
本設(shè)計(jì)大大提高了觀瞄系統(tǒng)的智能化、自動(dòng)化水平,更是賦予其全天候作戰(zhàn)能力。外場(chǎng)實(shí)驗(yàn)充分證明從目標(biāo)的輪廓邊緣來(lái)看,進(jìn)行了8倍插值后,消像旋的效果和預(yù)期設(shè)計(jì)完全符合,鋸齒效應(yīng)控制得非常不錯(cuò),其他各項(xiàng)指標(biāo)均達(dá)到設(shè)計(jì)要求。還可以進(jìn)一步把由ADSP2183完成的工作移植到FPGA內(nèi)部,讓它來(lái)完成任務(wù)調(diào)配、算法實(shí)現(xiàn)、控制流程等任務(wù)。這樣,將進(jìn)一步加大應(yīng)用系統(tǒng)的集成度,也使得整個(gè)系統(tǒng)的可靠性和實(shí)時(shí)性將會(huì)有一個(gè)更好的提高。