当前位置:首页 > 电源 > 数字电源
[导读]本文以指纹识别认证系统的ASIC化为应用背景,提出了一种基于FPGA的指纹采集接口的设计与实现方案。重点研究接口电路的硬件组成和如何采用硬件语言VHDL编程控制滑动式指纹传感器以完成高质量的指纹采集工作。

摘要:本文以指纹识别认证系统的ASIC化为应用背景,提出了一种基于FPGA指纹采集接口的设计与实现方案。重点研究接口电路的硬件组成和如何采用硬件语言VHDL编程控制滑动式指纹传感器以完成高质量的指纹采集工作。经验证本方案实现的指纹采集接口完全能满足系统需要。
关键字:FPGA,滑动式指纹传感器,SPI,指纹采集

一、引言

相对于密码、证件等传统身份认证技术和诸如语音、虹膜、脸形、签名等其他生物特征识别认证技术而言,指纹识别认证是一种更为理想的身份认证技术。其优点体现在:

·       广泛性——每个人的每一跟手指都具有指纹;

·       唯一性——每个人的指纹都不相同,极难进行复制;

·       稳定性——指纹不会随着年龄的增长而改变;

·        易采集性——指纹图像可运用专业的指纹传感器获取,易于开发识别认证系统。

随着电子商务的发展和消费类电子的普及,越来越多的领域需要指纹识别系统。目前,基于 、 的独立式指纹识别系统已经成功应用于考勤、门禁、安检等领域 。同时,随着微电子技术的进步,设计开发能应用在小型微型系统(如手机、PDA等)的ASIC

资金资助:上海市科学技术委员会PDC计划项目(No. 047062023)和AM 0403项目

(专用集成电路)指纹识别认证系统,将具有很强的现实意义和广阔的市场空间。

由于FPGA(现场可编程门阵列)具有高集成度,低功耗,短开发周期等优点,本文选用FPGA作为指纹识别认证系统的核心器件,以控制其依次实现指纹采集、指纹特征点提取、存储、比对等等过程。可见,指纹识别认证系统的首要任务是如何采集到高质量指纹图像以保证后续任务的完成,而指纹图像质量不仅与指纹传感器自身的性能有关,也与数据传输通信接口的性能密切相关。因此,如何设计性能优良的通信接口是实际系统设计的一个难点问题。于是本文针对这一问题进行了研究,介绍了一种基于FPGA与滑动式指纹传感器的指纹采集接口的设计与实现方法。

二、简介指纹采集接口器件

本指纹采集接口的核心控制器件为Xilinx公司SpartanIII系列的XC3S400型FPGA芯片,它的封装形式为PQ208。这款芯片采用先进的90ns工艺,最大容量40万门,工作频率高达200M,足以完成系统需要。

另外,本文选用的指纹采集传感器为富士通公司的MBF300滑动式电容指纹采集传感器。这款指纹传感器采用标准CMOS技术,含有8位A/D变换器,能在2.8V~5V的宽电压范围内工作,能自动检测到是否有指纹到达传感器,并实现在线采集。而它与以往采用的面积式指纹传感器相比最大的优点在于,在保证指纹图像高分辨率(500dpi)的同时大大减小了传感器的尺寸(13.3×3.6 )。

MBF300支持3种通信接口:8位微处理器总线接口(microprocessor bus interface)、集成的USB全速接口(Integrated USB Full-Speed Interface)和集成SPI接口(Integrated Serial Peripheral Interface)。其中本文选用SPI接口,并将详细讲述基于MBF300和FPGA的SPI设计与实现方法。

MBF300的SPI接口需要时钟信号线SCK、主进从出信号线MISO、主出从进信号线MOSI和使能信号线 ,共4根信号线。其中,传感器的时钟源可以从外部输人,也可以外接一个晶体振荡器后,利用MBF300内部的振荡电路来获得时钟源。在选择了SPI模式后,MBF300的其他两种模式将自动禁止。在本系统中,MBF300在SPI工作模式下相当于一个从设备,XC3S400作为主设备。XC3S400通过读写MBF300内部的寄存器实现对它的控制,以完成指纹采集的任务。

另外,MBF300在SPI的从设备状态下,它的通信协议的具体内容包括:

·          MOSI线上的数据在SCK的上升沿被采样;

·          MISO线上的数据在SCK的下降沿发生改变;

·          SCK在空闲状态时,可以为高电平,也可以为低电平;

·          串行传输过程中,高位在前(最先被移出)。具体时序见图1 。

三、指纹采集接口的设计与实现

本文中指纹传感器MBF300的主要任务是采集指纹图像,并自动A/D转换,并把转换后的图像数据通过SPI接口传送到FPGA芯片XC3S400中,以进行指纹登记或者指纹识别比对。由此可见,指纹采集是整个指纹识别系统的第一步,采集质量的好坏将直接影响系统的性能与准确度的高低,因此,接下来将重点介绍指纹采集接口——SPI接口的设计,在此过程中,XC3S400为SPI主设备,MBF300为SPI从设备。

1、指纹采集电路

由于FPGA内部采用的SRAM存储器结构,所以需要外置一个PROM在上电时对FPGA进行程序配置。同时,还扩展了一个SRAM和Flash分别用作存储指纹程序运行时的临时数据和指纹数据信息。另外,为了实现与PC机通信,指纹采集部分还设计一个RS232接口,整个的硬件电路如图2所示。由图中可以看出,整个指纹采集的核心部件就是FPGA芯片XC3S400,它相当于常见的嵌入系统中的DSP或者ARM,控制着整个指纹采集,以及指纹登记,指纹比对,结果输出等过程。

2、指纹采集接口硬件设计与实现

本文的SPI接口主设备为FPGA芯片XC3S400,从设备为指纹传感器MBF200。由于FPGA没有特定管脚的要求,本文任意选用XC3S400的4个I/O口137—140 ,分别与指纹传感器MBF300的相应管脚连接,见图3所示。

          

3、指纹采集接口软件设计与实现

    接口时钟采用传感器内部的12M时钟,整个采集指纹图像流程如图4所示,主要有初始化,调整参数,指纹采集,指纹存储几部分组成。

3.1 初始化XC3S400MBF300

XC3S400为FPGA器件,因此在系统上电后先要对其进行初始化,即从PROM中读取配置数据,以完成后面的指纹采集、特征点提取、存储、比对等工作;初始化XC3S400之后,接着初始化指纹传感器MBF300,其中部分VHDL源程序如下:

  ……

ENTITY ini_mbf300 IS

    PORT(......

pgc   :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

dtr    :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

dcr    :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

thr    :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

ctrlb   :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

isr     :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

icr     :   INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);

......);--定义需要初始化的MBF300寄存器;

END ini_mbf300;

ARCHITECTURE ini_mbf300 OF ini_mbf300 IS

BEGIN

  pgc <=  "00000110 ";      --初始设置图像增益为1.5;

dtr  <=  "00111111";     

dcr  <=  "00000001";     

thr  <=  "00101100";

ctrlb <=  "00000001";     --使能阵列,AD及时钟;

isr  <=  "00000011";     --清空中断;

icr  <=  "01011001";     --使能自动检测;…...

END ini_mbf300;......

3.2 调整MBF300参数

调整MBF300参数,也就是调整PGC、DTR、DCR三个寄存器的值来调整放电时间、放电电流速率和图像的放大增益,直到获得最佳质量的图像。

3.3 采集指纹图像

XC3S400按照MBF300的SPI时序要求,在MOSI信号线上发送一系列读写MBF300寄存器的指令,并由MBF300在MISO信号线上发送A/D转换后的指纹数据,直到一幅完整的256*32的指纹图像传输完毕。详细的工作流程见图5。

3.4 存储指纹图像

采集到的原始指纹图像保存到片外SRAM中,地址空间为0000 0000 0000 0000~FFFF FFFF FFFF FFFF。

4 实验调试与结论

指纹采集接口的整个程序的VHDL源代码已经通过调试,在ModelSim SE 6.1b中成功仿真,FPGA的SPI时序与MBF300一致,完全能达到指纹采集的目的。于是将MBF300设置为DTR=0x15,DCR=0x20,PGC=0x01,通过SPI接口采集到的原始指纹数据通过图2中的RS232接口传送给PC机,然后利用Matlab工具数据转化得到如图6的指纹图像,它足以满足后续的指纹特征点提取、比对等要求。

四、小结

这种基于FPGA芯片XC3S400与固体指纹传感器MBF300的SPI接口具有设计实现简单,传输速率高的特点,完全能胜任指纹采集的任务。而MBF300的高精度更能保证采集到的指纹图像的质量,这有利于简化后续的指纹图像增强、二值化等算法。总之,基于FPGA与指纹传感器的指纹采集系统的SPI接口的成功实现,为指纹识别技术的SOC片上集成打开一个良好的开端。

本文作者创新点

虽然基于DSP或者ARM的指纹识别认证系统已经在考勤,门禁等领域实现商品化,但这样的嵌入式系统很难实现小型化集成化,更无法SOC,所以本文采用FPGA来实现指纹识别认证系统,利用FPGA高集成度,低功耗,短开发周期等优点,并以实现系统的ASIC为研究背景,具有很强的现实意义和广阔的市场空间。

只有保证高质量的指纹采集才会保证高质量的指纹识别认证,因此本文主要介绍了基于FPGA的指纹识别系统的指纹采集接口部分的设计与实现方案,经实验研究证实该接口完全能满足实际需要,这为指纹识别系统的片上集成打开了一个良好的开端。

参考文献:

[1]谢健阳,李铁才,唐降龙等.指纹识别系统的设计与实现.微计算机信息 .2006;22(3-2):156-157;
[2]周宁婕,付宇卓,周煜. 基于DSP的指纹识别系统硬件平台设计. 计算机仿真.2005;22 (1):241-243; 
[3]黄林波,杜坤梅,谢建阳等. 基于ARM的指纹识别算法的研究与开发. 哈尔滨商业大学学报(自然科学版).2005; 21(2):179-181;
[4]沈小丰, 李小贝.便携式指纹识别系统的设计.自动化技术与应用.2005; 24 (4):55-58
[5] MBF300 Solid State Fingerprint Sweep Sensor,Data Sheet[Z]. 2002
[6] Spartan-3 FPGA Family: Complete Data Sheet [Z]. 2005

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭