基于FPGA的指紋識(shí)別系統(tǒng)電路模塊設(shè)計(jì)
本設(shè)計(jì)選用具有高集成度、低功耗、短開發(fā)周期的FPGA來完成此項(xiàng)設(shè)計(jì),以實(shí)現(xiàn)系統(tǒng)的ASIC為研究背景,具有很強(qiáng)的現(xiàn)實(shí)意義和廣闊的市場空間。 采用xilinx公司Spartan 3E系列FPGA作為核心控制器件,這款器件采用90ns的先進(jìn)工藝,最大容量50萬門,可支持32位的RISC處理器,具有128 Mbit 并行Flash,足以滿足設(shè)計(jì)的要求。該項(xiàng)目利用嵌入式軟核實(shí)現(xiàn)系統(tǒng)的管理,利用硬件實(shí)現(xiàn)識(shí)別算法,保證了系統(tǒng)功能的完整性與識(shí)別的正確性。
指紋采集模塊
本設(shè)計(jì)中采用的是富士通的MBF200指紋傳感器,MBF200硬件框圖如圖6所示,采用SPI模式,所以MBF200與FPGA只通MISO,MOSI,/S/C/S,SCLK四個(gè)端口相連接。 /S/C/S為MBF200的使能端,SCLK為MBF200的系統(tǒng)時(shí)鐘,當(dāng)需要采集指紋信號(hào)時(shí),F(xiàn)PGA向/S/C/S發(fā)送低電平,則MBF200開始工作。FPGA通過MOSI向MBF200發(fā)送控制命令,控制MBF200的數(shù)據(jù)輸出方式及傳輸模式。VDD[3:1]為數(shù)字電源輸入,VDDA[2:1]為模擬電源輸入,VSS[3:1]為數(shù)字地,VSSA[2:1]為模擬地,所以如圖所接。而為了防止數(shù)字信號(hào)對(duì)模擬信號(hào)的干擾,用10歐電阻隔開。并且數(shù)字電源輸入與相應(yīng)的數(shù)字地之間均接有電容用來閣除非直流信號(hào)。為了防止數(shù)字地與信號(hào)地之間的干擾,本設(shè)計(jì)采用0歐電阻隔離。0歐電阻相當(dāng)于很窄的電流通路,能夠有效地限制環(huán)路電流,使噪聲得到抑制。電阻在所有頻帶上都有衰減作用(0歐電阻也有阻抗),這點(diǎn)比磁珠強(qiáng)。
MODE[1:0]引腳是用來設(shè)定MBF200所用接口模式的,在本設(shè)計(jì)中,置MODE[1:0]為01,選定SPI傳輸模式。 在SPI模式當(dāng)中,AIN,ISET,F(xiàn)EST三個(gè)接口都不會(huì)用上,但根據(jù)MBF200內(nèi)部電路結(jié)構(gòu),最好接電阻與地相接。
指紋數(shù)據(jù)處理模塊
由于指紋數(shù)據(jù)處理涉及很多算法,運(yùn)算量大,所以本系統(tǒng)在Spartan-3E開發(fā)板上嵌入一個(gè)Microblaze軟核來進(jìn)行數(shù)據(jù)處理,首先將SPI口傳輸進(jìn)來的數(shù)據(jù)送人SDRAM進(jìn)行存儲(chǔ),開發(fā)板上帶有32M的SDRAM,完全可以存儲(chǔ)很多張指紋數(shù)據(jù)。在創(chuàng)建指紋數(shù)據(jù)庫時(shí),系統(tǒng)從SDRAM中取出數(shù)據(jù),放入Microblaze進(jìn)行處理,再將處理后的指紋數(shù)據(jù)信息存入FLASH組建指紋數(shù)據(jù)庫。在比對(duì)模式時(shí),利用Microblaze進(jìn)行數(shù)據(jù)處理后的數(shù)據(jù)扔存入SDRAM,然后從FLASH和SDRAM分別提取指紋圖像特征數(shù)據(jù)進(jìn)行比對(duì),得出比對(duì)結(jié)果。
指紋數(shù)據(jù)存儲(chǔ)模塊
trataFlash與FPGA管腳連接圖如圖7所示。 CE[2:0]為strataFlash使能信號(hào)輸入端口當(dāng)只用一個(gè)片子時(shí),CE[2:1]接地只用CE0控制。 由于在本設(shè)計(jì)中,F(xiàn)PGA與FLASH之間的數(shù)據(jù)傳輸D[0]與FPGA對(duì)MBF200的控制線MISO復(fù)用,所以從FLASH里取數(shù)據(jù)與控制MBF200產(chǎn)生沖突,時(shí)序不好控制,所以本設(shè)計(jì)中將會(huì)給BYTE#置高關(guān)閉A0,將strataFlash置于X16模式。 D[7:0]在寫模式下,傳送控制命令在寫CUI時(shí),在緩沖器寫和編程模式下。在讀模式下,D[7:0]發(fā)送CFI、數(shù)據(jù)陣列和標(biāo)志數(shù)據(jù)。狀態(tài)寄存器的數(shù)據(jù)將不通過這8位傳輸。 VPEN是鎖定使能輸入,當(dāng)VPEN《VPRNLK時(shí),內(nèi)存將不允許寫入數(shù)據(jù)或者命令。
本系統(tǒng)采用xilinx公司Spartan 3E系列FPGA作為核心控制芯片,通過富士通公司的MBF200指紋傳感器實(shí)現(xiàn)對(duì)指紋圖象的采集,利用SPI接口傳輸?shù)紽PGA進(jìn)行數(shù)據(jù)的存儲(chǔ),利用內(nèi)嵌的MicroBlaze處理器對(duì)指紋圖象進(jìn)行灰度濾波、二值化、二值去噪、細(xì)化等預(yù)處理,得到清晰的指紋圖象,再從清晰的指紋圖象中提取指紋特征點(diǎn)并存入指紋數(shù)據(jù)庫作為建檔模版。指紋比對(duì)時(shí),采用同樣的方法,得到比對(duì)模版,然后將比對(duì)模版與建檔模版利用指紋識(shí)別算法進(jìn)行比對(duì),得出比對(duì)結(jié)果。該項(xiàng)目利用嵌入式軟核實(shí)現(xiàn)系統(tǒng)的管理,利用硬件實(shí)現(xiàn)識(shí)別算法,保證了系統(tǒng)功能的完整性與識(shí)別的正確性。該識(shí)別系統(tǒng)可用于門禁、考勤、證件管理等很多方面,具有很廣泛的應(yīng)用前景。