指纹采集模块
本设计中采用的是富士通的MBF200指纹传感器,MBF200硬件框图如图6所示,采用SPI模式,所以MBF200与FPGA只通MISO,MOSI,/S/C/S,SCLK四个端口相连接。 /S/C/S为MBF200的使能端,SCLK为MBF200的系统时钟,当需要采集指纹信号时,FPGA向/S/C/S发送低电平,则MBF200开始工作。FPGA通过MOSI向MBF200发送控制命令,控制MBF200的数据输出方式及传输模式。VDD[3:1]为数字电源输入,VDDA[2:1]为模拟电源输入,VSS[3:1]为数字地,VSSA[2:1]为模拟地,所以如图所接。而为了防止数字信号对模拟信号的干扰,用10欧电阻隔开。并且数字电源输入与相应的数字地之间均接有电容用来阁除非直流信号。为了防止数字地与信号地之间的干扰,本设计采用0欧电阻隔离。0欧电阻相当于很窄的电流通路,能够有效地限制环路电流,使噪声得到抑制。电阻在所有频带上都有衰减作用(0欧电阻也有阻抗),这点比磁珠强。

指纹数据处理模块
由于指纹数据处理涉及很多算法,运算量大,所以本系统在Spartan-3E开发板上嵌入一个Microblaze软核来进行数据处理,首先将SPI口传输进来的数据送人SDRAM进行存储,开发板上带有32M的SDRAM,完全可以存储很多张指纹数据。在创建指纹数据库时,系统从SDRAM中取出数据,放入Microblaze进行处理,再将处理后的指纹数据信息存入FLASH组建指纹数据库。在比对模式时,利用Microblaze进行数据处理后的数据扔存入SDRAM,然后从FLASH和SDRAM分别提取指纹图像特征数据进行比对,得出比对结果。
指纹数据存储模块
trataFlash与FPGA管脚连接图如图7所示。 CE[2:0]为strataFlash使能信号输入端口当只用一个片子时,CE[2:1]接地只用CE0控制。 由于在本设计中,FPGA与FLASH之间的数据传输D[0]与FPGA对MBF200的控制线MISO复用,所以从FLASH里取数据与控制MBF200产生冲突,时序不好控制,所以本设计中将会给BYTE#置高关闭A0,将strataFlash置于X16模式。 D[7:0]在写模式下,传送控制命令在写CUI时,在缓冲器写和编程模式下。在读模式下,D[7:0]发送CFI、数据阵列和标志数据。状态寄存器的数据将不通过这8位传输。 VPEN是锁定使能输入,当VPEN《VPRNLK时,内存将不允许写入数据或者命令。
