FPGA滿(mǎn)足紅外熱像儀數據采集處理需求
隨著(zhù)信息技術(shù)的發(fā)展,人們面臨的數字信號處理任務(wù)越來(lái)越繁重,對數據處理系統的要求也越來(lái)越高。數字信號處理功能一般在兩類(lèi)可編程平臺上實(shí)現:數字信號處理器(DSP)和現場(chǎng)可編程門(mén)陣列(FPGA)。DSP是一種特殊的微處理器,計算功能很強大,可以用C語(yǔ)言或匯編語(yǔ)言進(jìn)行編程,能實(shí)現復雜的信號處理算法;而FPGA是一種配置能力很強的硬件,可以用VHDL或VerilogHDL來(lái)編程,它的實(shí)時(shí)性很好,能并行進(jìn)行大數據量的底層算法處理。
本文引用地址:http://dyxdggzs.com/article/97539.htm筆者主要從事紅外熱像儀的研制工作。紅外熱像儀是一種成像設備,它和CCD(電荷耦合器件)相機類(lèi)似,都是通過(guò)探測器將探測到的光信號轉化為電信號,再進(jìn)行信號處理和顯示。不同的是CCD相機探測到的是可見(jiàn)光,而紅外熱像儀探測到的是紅外線(xiàn)。紅外探測器將探測到的光信號轉化為模擬信號,為了進(jìn)行后續的數字信號處理,需要對模擬信號進(jìn)行數字采樣。設計中用到了兩片以上的14bit的AD(模數)轉換芯片,由于DSP管腳資源有限,而且對各個(gè)轉換芯片的訪(fǎng)問(wèn)時(shí)間是分時(shí)進(jìn)行的,因此它需要花大量的時(shí)間與各個(gè)芯片進(jìn)行數據交換,相應用于計算的時(shí)間大大減少,無(wú)法滿(mǎn)足數據交換的并行要求。相比較而言,FPGA以其豐富的管腳資源和高實(shí)時(shí)性滿(mǎn)足了設計需求,因此紅外熱像儀中多采用FPGA處理平臺來(lái)實(shí)現數據采集和處理。
目前世界上生產(chǎn)FPGA的廠(chǎng)商很多,而Altera和Xilinx兩家就占有60%以上的市場(chǎng)份額,它們生產(chǎn)的FPGA各有優(yōu)劣,筆者主要采用了Altera公司的Stratix系列FPGA來(lái)進(jìn)行設計。該系列芯片的相關(guān)數據在A(yíng)ltera公司的官方網(wǎng)站都有詳細介紹,本文就不再贅述。選用Altera公司的FPGA一方面是由于該芯片具有豐富的硬件資源,另一方面原因是它具有功能強大的開(kāi)發(fā)軟件QuartusII,非常便于系統開(kāi)發(fā)和設計。
QuartusII是Altera公司開(kāi)發(fā)的進(jìn)行SoPC(可編程片上系統)設計的綜合性環(huán)境和基本開(kāi)發(fā)工具,內部嵌有綜合器和仿真器,它提供了一種與結構無(wú)關(guān)的設計環(huán)境,使設計者能方便地進(jìn)行設計輸入、快速處理和器件編程。同時(shí),它支持第三方綜合工具和仿真工具。Modelsim作為專(zhuān)業(yè)的第三方仿真工具,能有效地彌補QuartusII在仿真速度方面的不足,大大提高產(chǎn)品開(kāi)發(fā)的速度。
與DSP、微控制器結合將成主流
Altera公司的Stratix系列或者更高級別的FPGA內部都嵌入有DSP內核,可以作為CPU來(lái)使用。NiosII是Altera公司提供的完整的開(kāi)發(fā)環(huán)境,可以通過(guò)C/C++語(yǔ)言直接對CPU進(jìn)行編程,并進(jìn)行編譯和調試。CPU內核可以根據需要選擇合適的外設、存儲器和接口。紅外熱像儀通過(guò)調用DSP內核的SPI(高速同步串口)總線(xiàn)控制接口控制溫度傳感器,實(shí)現了溫度采集功能,通過(guò)調用UART(通用異步接收/發(fā)送裝置)模塊實(shí)現了串口收發(fā)控制功能,編程難度比直接用FPGA進(jìn)行時(shí)序設計要容易得多。
紅外熱像儀中要用到很多圖像處理算法,直接用FPGA進(jìn)行時(shí)序設計比較復雜,需要編寫(xiě)幾千甚至上萬(wàn)行代碼。而Matlab是一款功能強大的計算軟件,可以用很少的代碼實(shí)現算法設計和仿真,但是其設計結果并不能直接載入FPGA運行。對此,Altera公司開(kāi)發(fā)了一款系統級設計工具:DspBuilder,它可以作為Matlab和QuartusII之間的紐帶,將MATLAB環(huán)境下完成的算法轉化為HDL語(yǔ)言模塊,QuartusII將這些模塊作為IP核直接調用,即可進(jìn)行編譯、鏈接和下載,輕松實(shí)現復雜算法的設計,大大提高了設計效率,并且降低了復雜算法的設計難度。
FPGA進(jìn)行程序調試的過(guò)程中經(jīng)常需要對信號波形和延時(shí)情況進(jìn)行驗證,單純通過(guò)軟件仿真有時(shí)不能完全體現信號在硬件電路中運行的真實(shí)情況。QuartusII內部集成的嵌入式邏輯分析儀SignalTap是個(gè)很實(shí)用的解決此問(wèn)題的工具,它能夠捕獲和顯示設計中信號的實(shí)時(shí)狀態(tài)。我們只需要設置被測試信號、采樣時(shí)鐘、采樣模式和采樣深度,在硬件電路通電工作狀態(tài)下即可通過(guò)軟件實(shí)時(shí)觀(guān)測到信號波形的變化,從而判斷信號的正確性和準確性,有效地完成程序調試。
未來(lái)FPGA與微控制器的結合將成為芯片開(kāi)發(fā)的主流。在SoC設計中嵌入FPGA就形成了新的IC即可編程系統級集成電路(FPSLIC),現在也已經(jīng)廣泛應用于電信、網(wǎng)絡(luò )、儀器儀表等系統中了。把CPU嵌入FPGA中,是眾多FPGA廠(chǎng)商現在的做法,我們使用軟核即SoPC就可以高效完成復雜設計,不過(guò)希望FPGA在集成CPU內核的同時(shí)保持高密度、大容量,并且降低功耗,以滿(mǎn)足更高的系統設計需求。
紅外熱像儀相關(guān)文章:紅外熱像儀原理
評論