APP下载

基于FPGA的嵌入式指纹采集系统设计

2013-11-19印辉云刘云飞马玲玲顾敏明

湖北大学学报(自然科学版) 2013年1期
关键词:指纹图信号线开发板

印辉云,刘云飞,马玲玲,顾敏明

(南京林业大学信息科学技术学院,江苏 南京 210037)

0 引言

生物识别技术是利用人体生物特征,主要包括指纹、声音、掌纹、虹膜等进行身份验证的一种技术.与传统的身份鉴别手段相比,该技术具有不易丢失、防伪性能好等优点.其中,指纹的唯一、不易丢失和终身不变的特点使其在国家安全、门禁系统、考勤制度、身份管理等领域起着鉴定和识别作用.

传统的指纹采集系统通常基于单片机或数字信号处理芯片(DSP).由于单片机的时钟频率较低,各种功能均借助软件运行实现,效率低.DSP的运算速度快,擅于处理密集的乘加运算,但很难完成外围复杂的硬件逻辑控制.FPGA具有时钟频率高,内部延时小,全部控制逻辑均由硬件完成,速度较快,因而有较大的优势,且FPGA设计可以利用EDA工具进行设计、综合和验证,加快设计过程,效率更高[1-4].本文中设计的指纹采集系统,控制部分采用Altera公司的FPGA芯片EP2C35F672C6作为中央处理器,采集器选择富士通公司的MBF200型固态指纹传感器,实现了高实时性和强易用性的嵌入式指纹采集系统.

1 指纹采集系统硬件设计

1.1 MBF200的结构和特点富士通公司的MBF200型电容式固体指纹采集传感器具有256×300传感阵列,500 dpi的分辨率,集成8位A/D转换器,工作电压为3.3~5.0 V,具有指纹自动检测功能,提供3种总线接口:8位微处理器(MCU)总线接口、串行外围设备接口(SPI)和集成USB接口.鉴于SPI接口需要的物理连线较少,包括时钟信号线(SCK),主进从出信号线(MISO),主出从进信号线(MOSI),使能信号线(SCS),共4条信号线,硬件设计简单,本文中采用SPI从模式.选用SPI从模式后,其他2种模式(USB,MCU)是自动禁止的[4].

1.2 MBF200与FPGA芯片的硬件连接结构本文中控制部分的硬件平台采用Altera公司的DE2开发板,是FPGA多媒体开发平台,具有灵活而可靠的外围接口设计,其FPGA芯片为EP2C35F672,属于Altera公司的Cyclone Ⅱ系列产品.EP2C35F672封装的引脚672个,最多可以有475个I/O引脚供用户使用.本设计中使用了DE2开发板提供的512-Kbyte SRAM、扩展I/O口及50 MHZ的时钟源[5].

图1 EP2C35F672C6与MBF200的SPI连接图

本设计中FPGA芯片EP2C35F672C6(主设备)与指纹传感器MBF200(从设备)采用SPI连接.由于FPGA没有特定的管脚要求,可任意选用DE2开发板的6个输入/输出(I/O)口.其中通用输入/输出口GPIO_01-GPIO_04分别与指纹传感器MBF200的相应管脚相连接,GPIO_010接电源(VCC),GPIO_011接地(GND),如图1所示.

1.3 MBF200的SPI接口特性SPI协议是同步串行数据传输协议,对于MBF200,在时钟上升沿锁存MOSI引脚的数据,在下降沿将数据送至MISO引脚, MBF200与FPGA通讯协议的具体内容如下:

(1)所有串行数据传输开始于/SCS下降沿;

(2)/SCS在数据传输期间必须保持低电平,在两条指令之间保持高电平;

(3)MOSI在时钟下降沿开始发送,在上升沿进行采样;

(4)MISO在时钟下降沿开始发送;

(5)/SCS拉低后,输入指令、地址和数据.

MBF200在SPI从模式下的读操作时序如图2所示[6],写操作时序如图3所示.

图2 MBF200的读操作时序

图3 MBF200的写操作时序

2 指纹采集接口软件设计

软件设计主要实现主设备EP2C35F672C6控制从设备MBF200,完成指纹采集工作.整个采集指纹流程如图4所示,包括初始化、调整参数、指纹检测、指纹采集、指纹存储等[7].

图4 指纹采集软件流程图

2.1初始化FPGA和MBF200 DE2上电后,将编译好的程序下载到EP2C35F672C6中,即可完成FPGA的初始化.MBF200初始化即对其寄存器赋值,包括PGC(可编程增益控制器)、DTR(放电时间寄存器)、DCR(放电电流寄存器)、THR(阈值寄存器)、CTRLB(控制寄存器B)等.将0x0D写入CTRLB后,能实现A/D转换和自动检测功能.

MBF200初始化程序:

module mbf200(

inout DTR;

inout DCR;

inout PGC;

inout THR;

inout CTRLB;

inout ISR;

inout ICR;……)——定义需要初始化的MBF200寄存器

initial

图5 MBF200采集指纹流程图

begin

PGC=8'b0000_0101;——可编程增益为5

DTR=8'b0011_1010; ——放电时间为58

DCR=8'b0000_0001; ——放电电流为1

THR=8'b0010_1100; ——设置阈值

CTRLB=8'b0000_1101; ——使能A/D转换

ISR=8'b00000011; ——清空中断

ICR=8'b01011001; ——使能自动检测

……

end

2.2指纹采集与存储MBF200采用逐行读取,逐点转换的方式获取指纹图像数据,当本行像素点转换完毕后,MBF200将自动捕获下一行指纹数据,直到一幅完整的256×256的指纹图像转换完毕.具体工作流程如图5所示.

下面讨论寄存器THR控制指纹检测的阈值.寄存器ISR的0位指示指纹检测的状态:没检测到指纹时,该位一直为低电平;检测到指纹时,该位重复地从低电平变为高电平.检测到指纹后,拉低/SCS,在MOSI信号线上向控制寄存器A(CTRLA)发送写指令(0x02),以选定整幅图像存取模式,开始第一个像素的A/D转换.一行数据转换完后,向CTRLA发送读指令(0x03),再由MISO信号线上读取A/D转换后的指纹数据,并随即发送到SRAM的数据端口进行存储.一行数据全部读出后,拉高/SCS,等待下一次行转换.SRAM的地址空间为0000 0000 0000 0000 ~ FFFF FFFF FFFF FFFF.

MBF200的3个寄存器PGC、DTR、DCR只有相互配合才能采集到质量较高的图像,在不同的环境下,它们的值都有所不同,需要在现场不断调试.经测试,当PGC=0x05,DTR=0x58,DCR=0x01时,指纹图像质量最佳.

3 实验结果与分析

在Quartus Ⅱ软件平台上实现整个指纹采集系统的编译、综合、仿真,Quartus Ⅱ仿真波形图如图6所示,编译结果:Total logic elements:441/33,216(1%);Total registers:240/33,216(<1%),且整个系统的数据传输速率为106bps,与DSP等其他方案实现指纹采集系统相比,资源消耗大幅度降低,数据传输速率较高.最后通过DE2开发板中的控制面板程序将SRAM中的指纹数据读出,并经Matlab程序将其转换成所需的指纹图像[8],如图7所示.

图6 Quartus Ⅱ仿真波形图

图7 指纹图像

4 结论

本文中结合EP2C35F672C6与MBF200的特点,设计了由EP2C35F672C6控制的基于SPI通信方式的指纹采集系统,实现了指纹采集、存储、显示等功能.系统应用DE2开发板提供 50MHz的外部时钟源,提高了指纹采集、数据传输的速度,满足了实时性的要求.

[1] LUO Yong, HAN Xiaojun. Design and implementation of a fingerprint identification system based on FPGA[J]. Chinese Journal of Electron Devices,2008,31(4):1361-1365.

[2] JIANG Chunfeng, ZHAO Yulan, XU Wei.Research of fingerprint recognition[C]. Eighth IEEE International Conference on Dependable, Autonomic and Secure Computing,2009:847-848.

[3] Davide Maltoni, Dario Maio, Anil K J, et al. Handbook of fingerprint recognition[M]. London:Springer,2009.

[4] 张翼.指纹采集系统的设计及其预处理算法研究[D].大连:大连海事大学,2009.

[5] 张志刚.FPGA与SOPC设计教程—DE2实践[M].西安:西安电子科技大学出版社,2007:46-80.

[6] EPASS Inc. MBF200 Data sheet[EB/OL].2002. http://www.epasstech.com.

[7] 郭娟,王洪,金庆辉,等.基于FPGA实现指纹识别系统及指纹采集接口[J].微计算机信息,2007, 23(2-3):183-185.

[8] 翁文田.基于FPGA的指纹自动识别系统[D].上海:东华大学,2010.

猜你喜欢

指纹图信号线开发板
迈腾B8L 轿车灯光系统应急模式控制策略及开关监测信号线作用研究
三类矩形微屏蔽线主模截止波长特性的矢量有限元计算
指纹图像干湿度评价及亮度自动调节方法研究
聊聊蓄电池的那点事儿小小信号线也能让蓄电池亏电
浅析单片机开发板的设计与制作
沉香GC-MS指纹图谱分析
基于模板检测法的指纹图像的细节特征提取
ARM宣布mbed Enabled Freescale FRDM—K64F开发板通过微软认证
2型糖尿病患者肠道菌群两种分子指纹图谱分析研究
Mouser为您呈上开发关键之STMicroelectronics Nucleo开发板