功能要求
使用指紋采集器采集指紋信息,傳送至SDRAM存儲(chǔ)。在FPGA上對(duì)指紋進(jìn)行處理和匹配,同時(shí)編寫程序使FPGA與計(jì)算機(jī)通信并且在計(jì)算機(jī)上建立數(shù)據(jù)庫(kù),使得可以使用計(jì)算機(jī)的數(shù)據(jù)庫(kù)完成數(shù)據(jù)管理。
性能要求
實(shí)現(xiàn)以精準(zhǔn),快速,實(shí)用性強(qiáng)的指紋識(shí)別系統(tǒng)。同時(shí)實(shí)現(xiàn)良好的FPGA與計(jì)算機(jī)通信的功能。
系統(tǒng)要點(diǎn)
本系統(tǒng)主要難點(diǎn)在于指紋識(shí)別的算法以及XILINX 與PC機(jī)通信時(shí)所需要寫的驅(qū)動(dòng)。
方案設(shè)計(jì)
系統(tǒng)功能實(shí)現(xiàn)原理
本系統(tǒng)采用FPGA作為核心控制芯片,通過FPC1011F傳感器采集指紋傳送至存儲(chǔ)器SDRAM存儲(chǔ)。在Spartan上運(yùn)行的指紋處理程序?qū)χ讣y信息進(jìn)行處理獲得特征點(diǎn),并存儲(chǔ)在SDRAM中或與SDRAM中的指紋信息進(jìn)行匹配。最終,通過USB與計(jì)算機(jī)通信,使用計(jì)算機(jī)中的學(xué)生數(shù)據(jù)庫(kù)。
圖1
指紋傳感器FPC1011F該傳感器采用了多項(xiàng)專利,如獨(dú)立的晶圓體信號(hào)放大、傳感器表面的保護(hù)膜等。內(nèi)部具有A/D轉(zhuǎn)換,高速的SPI接口,8PIN的軟排線可以方便的接入各種系統(tǒng)。
圖2
(1)FPC1011F芯片產(chǎn)自瑞典,采用獨(dú)特的反射式測(cè)量法,抗靜電可達(dá)正負(fù)15 kV,耐磨100萬次,已被國(guó)內(nèi)金融界公認(rèn)為銀行指定零件。
(2)采用專業(yè)的指紋識(shí)別芯片PS1802DSP和最優(yōu)化的指紋算法,指紋成像效果好。
(3)處理速度快,峰值能達(dá)到480MIPS,在1:1 000模式下,時(shí)間小于1 s。
(4)功耗較同類產(chǎn)品低,正常工作主頻120 MHz下,只有120 mW。
(5)模塊體積為35 mm×26 mm×1 mm,便于各種指紋產(chǎn)品的開發(fā)。
(6)對(duì)干濕手指有自動(dòng)調(diào)節(jié)功能。
FPC1011F指紋傳感器含有小電容板,傳感器使用高靈敏度像素放大器,讓每個(gè)像素即使是非常微弱的信號(hào)FPC1011F都能探測(cè)到,以此提高圖像質(zhì)量。用了交替命令的并排列和傳感器電板,交替板的形式是兩個(gè)電容板,以及指紋的山谷和山脊成為板之間的電介質(zhì)。兩者之間的恒量電介質(zhì)傳感器檢測(cè)變化生成指紋圖像。
[page]
SPI 通信接口
SPI接口主要應(yīng)用在 EEPROM,F(xiàn)LASH,實(shí)時(shí)時(shí)鐘,AD轉(zhuǎn)換器,還有數(shù)字信號(hào)處理器和數(shù)字信號(hào)解碼器之間。SPI,是一種高速的,全雙工,同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳,同時(shí)為PCB的布局上節(jié)省空間,提供方便,正是出于這種簡(jiǎn)單易用的特性,現(xiàn)在越來越多的芯片集成了這種通信協(xié)議。
SPI總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息。外圍設(shè)置FLASHRAM、網(wǎng)絡(luò)控制器、LCD顯示驅(qū)動(dòng)器、A/D轉(zhuǎn)換器和MCU等。SPI總線系統(tǒng)可直接與各個(gè)廠家生產(chǎn)的多種標(biāo)準(zhǔn)外圍器件直接接口,該接口一般使用4條線:串行時(shí)鐘線(SCK)、主機(jī)輸入/從機(jī)輸出數(shù)據(jù)線MISO、主機(jī)輸出/從機(jī)輸入數(shù)據(jù)線MOSI和低電平有效的從機(jī)選擇線SS(有的SPI接口芯片帶有中斷信號(hào)線INT、有的SPI接口芯片沒有主機(jī)輸出/從機(jī)輸入數(shù)據(jù)線MOSI)。
SPI的通信原理很簡(jiǎn)單,它以主從方式工作,這種模式通常有一個(gè)主設(shè)備和一個(gè)或多個(gè)從設(shè)備,需要至少4根線,事實(shí)上3根也可以(用于單向傳輸時(shí),也就是半雙工方式)。也是所有基于SPI的設(shè)備共有的,它們是SDI(數(shù)據(jù)輸入),SDO(數(shù)據(jù)輸出),SCK(時(shí)鐘),CS(片選)。
SDO – 主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入 。
SDI – 主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出 。
SCLK – 時(shí)鐘信號(hào),由主設(shè)備產(chǎn)生 。
CS – 從設(shè)備使能信號(hào),由主設(shè)備控制 。
其中CS是控制芯片是否被選中的,也就是說只有片選信號(hào)為預(yù)先規(guī)定的使能信號(hào)時(shí)(高電位或低電位),對(duì)此芯片的操作才有效。這就允許在同一總線上連接多個(gè)SPI設(shè)備成為可能。 接下來就負(fù)責(zé)通訊的3根線了。通訊是通過數(shù)據(jù)交換完成的,這里先要知道SPI是串行通訊協(xié)議,也就是說數(shù)據(jù)是一位一位的傳輸?shù)?。這就是SCK時(shí)鐘線存在的原因,由SCK提供時(shí)鐘脈沖,SDI,SDO則基于此脈沖完成數(shù)據(jù)傳輸。數(shù)據(jù)輸出通過 SDO線,數(shù)據(jù)在時(shí)鐘上升沿或下降沿時(shí)改變,在緊接著的下降沿或上升沿被讀取。完成一位數(shù)據(jù)傳輸,輸入也使用同樣原理。這樣,在至少8次時(shí)鐘信號(hào)的改變(上沿和下沿為一次),就可以完成8位數(shù)據(jù)的傳輸。
要注意的是,SCK信號(hào)線只由主設(shè)備控制,從設(shè)備不能控制信號(hào)線。同樣,在一個(gè)基于SPI的設(shè)備中,至少有一個(gè)主控設(shè)備。這樣傳輸?shù)奶攸c(diǎn):這樣的傳輸方式有一個(gè)優(yōu)點(diǎn),與普通的串行通訊不同,普通的串行通訊一次連續(xù)傳送至少8位數(shù)據(jù),而SPI允許數(shù)據(jù)一位一位的傳送,甚至允許暫停,因?yàn)镾CK時(shí)鐘線由主控設(shè)備控制,當(dāng)沒有時(shí)鐘跳變時(shí),從設(shè)備不采集或傳送數(shù)據(jù)。也就是說,主設(shè)備通過對(duì)SCK時(shí)鐘線的控制可以完成對(duì)通訊的控制。SPI還是一個(gè)數(shù)據(jù)交換協(xié)議:因?yàn)镾PI的數(shù)據(jù)輸入和輸出線獨(dú)立,所以允許同時(shí)完成數(shù)據(jù)的輸入和輸出。不同的SPI設(shè)備的實(shí)現(xiàn)方式不盡相同,主要是數(shù)據(jù)改變和采集的時(shí)間不同,在時(shí)鐘信號(hào)上沿或下沿采集有不同定義,具體請(qǐng)參考相關(guān)器件的文檔。
在點(diǎn)對(duì)點(diǎn)的通信中,SPI接口不需要進(jìn)行尋址操作,且為全雙工通信,顯得簡(jiǎn)單高效。在多個(gè)從設(shè)備的系統(tǒng)中,每個(gè)從設(shè)備需要獨(dú)立的使能信號(hào),硬件要稍微復(fù)雜一些。
SPI接口在內(nèi)部硬件實(shí)際上是兩個(gè)簡(jiǎn)單的移位寄存器,傳輸?shù)臄?shù)據(jù)為8位,在主器件產(chǎn)生的從器件使能信號(hào)和移位脈沖下,按位傳輸,高位在前,低位在后。如圖3.4所示,在SCLK的下降沿上數(shù)據(jù)改變,同時(shí)一位數(shù)據(jù)被存入移位寄存器。
FPC1011F口主要由4個(gè)引腳構(gòu)成:SPI_CK、SPI_DO、SPI_DI、/SS,SPI_CK是整個(gè)SPI總線的公用時(shí)鐘,SPI_DO、SPI_DI作為主機(jī),從機(jī)的輸入輸出的標(biāo)志,SPI_DO是主機(jī)的輸出,從機(jī)的輸入,SPI_DI是主機(jī)的輸入,從機(jī)的輸出。/SS是從機(jī)的標(biāo)志管腳,在互相通信的兩個(gè)SPI總線的器件,/SS管腳的電平低的是從機(jī),相反/SS管腳的電平高的是主機(jī)。在一個(gè)SPI通信系統(tǒng)中,必須有主機(jī)。SPI總線可以配置成單主單從,單主多從,互為主從。
SPI的片選可以擴(kuò)充選擇16個(gè)外設(shè)。
SPI接口的缺點(diǎn):沒有指定的流控制,沒有應(yīng)答機(jī)制確認(rèn)是否接收到數(shù)據(jù)。
SDRAM
SDRAM:同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,同步是指 Memory工作需要同步時(shí)鐘,內(nèi)部的命令的發(fā)送與數(shù)據(jù)的傳輸都以它為基準(zhǔn);動(dòng)態(tài)是指存儲(chǔ)陣列需要不斷的刷新來保證數(shù)據(jù)不丟失;隨機(jī)是指數(shù)據(jù)不是線性依次存儲(chǔ),而是自由指定地址進(jìn)行數(shù)據(jù)讀寫。
FIFO模塊
此模塊主要功能是對(duì)已經(jīng)收到的指紋數(shù)據(jù)進(jìn)行緩存,避免指紋數(shù)據(jù)的丟失,因此此系統(tǒng)SPI工作頻率為16MByte,而UART串口工作頻率為38MByte。所以需要設(shè)定FIFO來使得SPI和UART協(xié)調(diào)工作。
UART模塊
此模塊的主要功能是和計(jì)算機(jī)進(jìn)行通信,把接受到的數(shù)據(jù)通過計(jì)算機(jī)數(shù)據(jù)庫(kù)顯示出來。
相關(guān)閱讀:
無線傳感器網(wǎng)絡(luò)射頻前端系統(tǒng)架構(gòu)如何實(shí)現(xiàn)低功耗?
包裝領(lǐng)域竟也有如此多的傳感器,你知曉嗎?
皮膚要想仿真,大腦傳感器才是關(guān)鍵!