【导读】指纹识别技术是成熟的、唯一的、稳定的鉴别手段之一。现如今,大学生身体素质不达标,学校引导锻炼势在必行。人工管理费时费力,但是机器智能管理却能实现目的。指纹识别能够对学生信息统一管理,促进学校对学生的体育锻炼。
功能要求
使用指纹采集器采集指纹信息,传送至SDRAM存储。在FPGA上对指纹进行处理和匹配,同时编写程序使FPGA与计算机通信并且在计算机上建立数据库,使得可以使用计算机的数据库完成数据管理。
性能要求
实现以精准,快速,实用性强的指纹识别系统。同时实现良好的FPGA与计算机通信的功能。
系统要点
本系统主要难点在于指纹识别的算法以及XILINX 与PC机通信时所需要写的驱动。
方案设计
系统功能实现原理
本系统采用FPGA作为核心控制芯片,通过FPC1011F传感器采集指纹传送至存储器SDRAM存储。在Spartan上运行的指纹处理程序对指纹信息进行处理获得特征点,并存储在SDRAM中或与SDRAM中的指纹信息进行匹配。最终,通过USB与计算机通信,使用计算机中的学生数据库。

图1
指纹传感器FPC1011F该传感器采用了多项专利,如独立的晶圆体信号放大、传感器表面的保护膜等。内部具有A/D转换,高速的SPI接口,8PIN的软排线可以方便的接入各种系统。

图2
(1)FPC1011F芯片产自瑞典,采用独特的反射式测量法,抗静电可达正负15 kV,耐磨100万次,已被国内金融界公认为银行指定零件。
(2)采用专业的指纹识别芯片PS1802DSP和最优化的指纹算法,指纹成像效果好。
(3)处理速度快,峰值能达到480MIPS,在1:1 000模式下,时间小于1 s。
(4)功耗较同类产品低,正常工作主频120 MHz下,只有120 mW。
(5)模块体积为35 mm×26 mm×1 mm,便于各种指纹产品的开发。
(6)对干湿手指有自动调节功能。
FPC1011F指纹传感器含有小电容板,传感器使用高灵敏度像素放大器,让每个像素即使是非常微弱的信号FPC1011F都能探测到,以此提高图像质量。用了交替命令的并排列和传感器电板,交替板的形式是两个电容板,以及指纹的山谷和山脊成为板之间的电介质。两者之间的恒量电介质传感器检测变化生成指纹图像。
[page]
SPI 通信接口
SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。
SPI总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。外围设置FLASHRAM、网络控制器、LCD显示驱动器、A/D转换器和MCU等。SPI总线系统可直接与各个厂家生产的多种标准外围器件直接接口,该接口一般使用4条线:串行时钟线(SCK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线SS(有的SPI接口芯片带有中断信号线INT、有的SPI接口芯片没有主机输出/从机输入数据线MOSI)。
SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(用于单向传输时,也就是半双工方式)。也是所有基于SPI的设备共有的,它们是SDI(数据输入),SDO(数据输出),SCK(时钟),CS(片选)。
SDO – 主设备数据输出,从设备数据输入 。
SDI – 主设备数据输入,从设备数据输出 。
SCLK – 时钟信号,由主设备产生 。
CS – 从设备使能信号,由主设备控制 。
其中CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。 接下来就负责通讯的3根线了。通讯是通过数据交换完成的,这里先要知道SPI是串行通讯协议,也就是说数据是一位一位的传输的。这就是SCK时钟线存在的原因,由SCK提供时钟脉冲,SDI,SDO则基于此脉冲完成数据传输。数据输出通过 SDO线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。完成一位数据传输,输入也使用同样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。
要注意的是,SCK信号线只由主设备控制,从设备不能控制信号线。同样,在一个基于SPI的设备中,至少有一个主控设备。这样传输的特点:这样的传输方式有一个优点,与普通的串行通讯不同,普通的串行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SCK时钟线由主控设备控制,当没有时钟跳变时,从设备不采集或传送数据。也就是说,主设备通过对SCK时钟线的控制可以完成对通讯的控制。SPI还是一个数据交换协议:因为SPI的数据输入和输出线独立,所以允许同时完成数据的输入和输出。不同的SPI设备的实现方式不尽相同,主要是数据改变和采集的时间不同,在时钟信号上沿或下沿采集有不同定义,具体请参考相关器件的文档。
在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,显得简单高效。在多个从设备的系统中,每个从设备需要独立的使能信号,硬件要稍微复杂一些。
SPI接口在内部硬件实际上是两个简单的移位寄存器,传输的数据为8位,在主器件产生的从器件使能信号和移位脉冲下,按位传输,高位在前,低位在后。如图3.4所示,在SCLK的下降沿上数据改变,同时一位数据被存入移位寄存器。
FPC1011F口主要由4个引脚构成:SPI_CK、SPI_DO、SPI_DI、/SS,SPI_CK是整个SPI总线的公用时钟,SPI_DO、SPI_DI作为主机,从机的输入输出的标志,SPI_DO是主机的输出,从机的输入,SPI_DI是主机的输入,从机的输出。/SS是从机的标志管脚,在互相通信的两个SPI总线的器件,/SS管脚的电平低的是从机,相反/SS管脚的电平高的是主机。在一个SPI通信系统中,必须有主机。SPI总线可以配置成单主单从,单主多从,互为主从。
SPI的片选可以扩充选择16个外设。
SPI接口的缺点:没有指定的流控制,没有应答机制确认是否接收到数据。
SDRAM
SDRAM:同步动态随机存储器,同步动态随机存储器,同步是指 Memory工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是自由指定地址进行数据读写。
FIFO模块
此模块主要功能是对已经收到的指纹数据进行缓存,避免指纹数据的丢失,因此此系统SPI工作频率为16MByte,而UART串口工作频率为38MByte。所以需要设定FIFO来使得SPI和UART协调工作。
UART模块
此模块的主要功能是和计算机进行通信,把接受到的数据通过计算机数据库显示出来。
相关阅读:
无线传感器网络射频前端系统架构如何实现低功耗?
包装领域竟也有如此多的传感器,你知晓吗?
皮肤要想仿真,大脑传感器才是关键!