原创 基于DSP的指纹识别系统硬件平台设计

2009-9-20 09:38 2162 4 4 分类: 处理器与DSP
作者:周宁婕,付宇卓,周煜    时间:2006-10-15    来源: 
 
       摘要:目前传统指纹识别平台通用CPU实现识别算法,此类平台在功耗和可移动性方面已不能满足市场需要。随着标准CMOS工艺制造,并且集成SPI,USB,并行数据接口的指纹传感芯片的出现,以及DSP芯片在图像处理领域的广泛应用,采用基于DSP指纹识别系统结构是今后指纹识别技术的发展方向。文章详细介绍了如何搭建基于DSP的指纹识别系统的硬件平台。针对嵌入式系统的特点,重点讨论了传感器的控制方法和指纹图像的读取,分析了DSP的性能优点。最后讨论了最佳指纹图像的获取方法。该系统灵活性强,除了为进一步实现指纹识别软件提供了功能强大的硬件基础外,对研究和开发速度快、性价比高、识别率高的嵌入式指纹识别平台有着很大的参考价值。

关键词:指纹;嵌入式系统;传感器

引言

随着科技水平的提升,身份验证对保障系统安全来说越来越重要。指纹的唯一性、终生不变性、难于伪造的特点,使它在金融、电子商务以及安全性能要求较高的行业中得到广泛应用。指纹识别平台即集指纹图像的采集、识别并给出身份验证结果的软硬件相结合的平台。

传统的指纹识别系统一般以PC、工作站或工控板作为主处理平台,这样的系统结构简单、固定,借助于高性能的计算机运算能力,系统处理能力强、识别速度快。然而目前人们对移动设备的安全性的要求不断提高,指纹识别产品在移动信息安全方面的市场巨大,原来的系统平台模式高功耗、低移动性的弊端就显而易见了。所以设计一套体积小、速度快、功耗低的嵌入式指纹识别系统是非常有意义的。

本文实现了一种基于dsp的指纹识别系统硬件平台设计。在该系统中采用Motorola公司的DSP芯片DSP56858作为核心处理器,指纹采集芯片采用Veridicom公司的FPS200,该采集芯片可以输出大小为256x300x8bit分辨率为500dpi的灰度图象。

系统硬件设计

硬件平台大致可以分为5个部分:成像系统(传感器FPS200) 、核心部分(DSP56858) 、RAM、EEPROM以及外部存储器。根据嵌入式指纹识别平台的系统要求,我们的SRAM和EEPROM分别选择了TC55V16256FT-12和AT45PB011B-SC两款性价比高的芯片,外部存储器选择了体积小、可靠性高的MMC卡。本系统的硬件组成如图1所示。
3495.jpg
图1  指纹识别系统硬件组成框图

其工作原理如下:固化的程序存储在EEPROM中,这些指令控制了整个指纹识别系统的工作流程。指纹经传感器采集后,由传感器直接转换成RGB格式,并且数据传输到DSP。DSP需要执行大量的模式
识别和图像处理相关计算。指纹匹配信息、数据库更新信息和其他大量数据被保存到外部存储器MMC卡中。SRAM为内存存储临时数据。这构成了数据通道。

调试通道指的是,传感器和DSP分别通过USB和并口与PC机相连,传感器可经PC机调试,RGB格式的图像也可以先经调试通道由PC机取得并分析传感器工作状态;DSP通过并口与PC机连接,并可通过调试软件调试指纹算法程序,监控DSP工作状态。由此可以看出,数据通道在硬件上证明此系统能够实现指纹识别的功能要求,而调试通道的设计着眼于程序和系统的调试工作,为进一步的软件设计与优化提供了方便的接口。

成像系统
现有技术光学传感器的体积都比较大,而且成像结果也要经过变换才可以使用。所以本文选择了固体传感器。本系统选择的是Veridicom公司的FPS200固体指纹识别传感器。

FPS200固体指纹识别传感器是一种性能优越、功耗低、价格便宜的指纹识别传感器。由于其特殊的ESD保护,特别窄小的物理尺寸,以及独特的省电特性使这块片传感器尤其适合嵌入式系统的应用。它的主要原理是,其在指纹图像感知区域集成了二维金属电极阵列,每根电极充当电容一级,在传感器表面、两极之间有一层钝化层作为电容介电层。由于指纹的脊和谷与传感器接触时会产生不同电容值,测量这些不同值就形成了指纹图像。

FPS200传感器支持三种接口方式: 8位的系统总线接口、集成的全速的USB接口和集成的串行外设接口(SPI)。其丰富的接口方式方便了指纹传感器的调试和使用。其自带的USB 接口可以将其数据直接传送到PC机上,这样就可以利用PC平台上的编译和调试工具来调试各种指纹识别的算法,方便了用户的初期测试,提高了效率和准确性。图2为FPS200与DSP的接口连接图。

如图2 所示,利用传感器提供的MCU系统总线接口可以很方便地实现其与DSP的连接。控制信号CS0和CS1都是片选信号,CS0低有效,CS1高有效,这是为不同的CPU 选信号高低电平特征提供便利。本系统选用的是CS0;~RD和~WR分别为读、写控制信号。

MODE0和MODE1两根信号线决定了FPS200工作在何种模式下:

MODE[1 :0]=00b 系统总线接口工作模式,用于与DSP相连,正常工作时使用;

MODE[1 :0]=01b SPI接口工作模式;

MODE[1 :0]=10b USB接口工作模式,用于与PC相连,调试时使用;

A0地址线,FPS200共有两个接口寄存器,索引寄存器和数据寄存器,A0决定了是写索引寄存器还是读写数据寄存器。A0拉低时为写索引寄存器,数据总线D7~D0的内容写到索引寄存器;A0拉高时可读写数据寄存器,数据总线上D7~D0的内容读写到数据寄存器。

本系统对FPS200的操作有以下两种:

1) FPS200的控制:传感器是由内部寄存器控制的,而对传感器的内部控制器的读写是通过写索引寄存器以选择合适的内部寄存器后,才可以读写具体的寄存器值。

读操作过程见图3。
3496.jpg
图2  FPS200的DSP接口

先将A0管脚的电平拉低,发出写信号,将要读写的内部寄存器地址送到数据总线上,写入控制寄存器并由FPS200送到它的索引寄存器。再将A0管脚拉高,发出读信号,将数据寄存器上的值读入DSP。写操作的过程类似,只是在写入索引寄存器后,发出写信号即可。
3497.jpg
图3  读FPS200 寄存器时序图

2) FPS200的数据读取:即指纹图像的读取。需要注意的是控制寄存器A。写这一寄存器就初始化了一幅指纹图像的采集。然后循环读这一寄存器则可以读出A/D转换出来指纹图像的结果。CTRLA 的结构是:

3499.jpg
GETSUB为1时读取一个矩形区域子图;

GETIMG为1时读取整幅2563300图像;

GETROW为1时读取指定行的子图;

值得注意的是,往这三个位的任意位置(同时只有一位有效,否则无效) 写1 都会自动初始化新的采集,传送完最后一个像素的数据后传感器自动停止。

DSP 模块及外围模块
DSP在本系统中,要完成流程的控制、指纹图像的处理和识别等大计算量的工作。通过比较8位单片机(如8051系列) 、16位DSP和32位微处理器(如基于ARMcore系列MCU)在各方面的表现,可以看到16 位DSP更加适合作为嵌入式指纹识别设备的核心,从而符合本次设计的要求。

表1  处理器对照表
3500.jpg
在同类型的16位DSP中,DSP56858是以DSP56800E为内核的DSP5685x 系列中的一款16位的定点DSP芯片,其主频达到了120MHz ,在120MHz 的运算条件下运算能力可以达到120MIPS ,可以说是一款运算速度非常快的DSP芯片,指纹识别的大计算量工作正需要这样一款运算速度快的芯片;

在外围模块方面,外部扩程序空间达2M字,外部扩数据空间达8M字。我们扩展了两片128K字存储器,都可以任意作为数据存储器还是程序存储器。其中有一块存储器还设计成可以配置成字节或字的存取模式,以适应指纹识别图像的处理需要。因为指纹识别图像像素值都是以字节形式采集的,以字节为单位操作可以大大节省空间;

使用SPI总线实现了MMC卡的读写,MMC卡体积小,数据存储可靠,被广泛用于消费类电子产品中;

JTAG接口实现实时调试,只需在与PC 的并口之间接一片5V到3V的电平转换芯片,这构成了一个简单的EVM板,使用CodeWarrior for DSP56800E就可以调试程序了;
3498.jpg
图4  硬件成像效果
(a) 原始图像(b) 增加放电时间
(c) 增加放电电流(d) 改变增益值

DSP还支持SCI、SSI、定时器接口,以及47个复用的GPIO,在接下来的软件设计中可以充分利用这些接口以及接口电路特性,实现系统性能优化、系统稳定性设计和系统的可扩展性设计。

实验结果分析

FPS200是一个功能强大的指纹传感器,图像的输出质量是可控的。放电时间和放电电流决定了传感器对指纹采集的灵敏度,可以不同程度的减少背景图的噪声。寄存器DCR、DTR和PGC分别是放电电流寄存器、放电时间寄存器和可编程增益控制寄存器,通过改变这些寄存器的值就可以得到不同的图像效果。系统缺省设置得到指纹图像如图4所示。

可以看到,从原始图像经过增加放电时间,增加放电电流,以及进一步改变增益值,可以得到最佳图像质量。

结论

本文设计了一个基于DSP的指纹识别系统。使用Veridicom公司的FPS200固体指纹传感器为指纹采集元器件。利用其优异的图像采集调节技术,可以很容易的采集到清晰有效的指纹图像,减少了用软件优化图像的运算处理量。以Motorola 的DSP56858为核心,扩展了2×128K16位的SRAM和1Mbits 的EEPROM充分考虑了运算过程中的主存需要。另外本文还额外设计了MMC 卡的外围存储器,可以非常容易扩展对外部数据的存放需要。非常适合需要存储大量指纹特征库场合的应用需求。

本文设计的指纹识别平台采用了可编程技术,增强了系统的可扩展性、灵活性。采用DSP技术,能够实现指纹识别的脱机产品。由于DSP具有优越的哈佛结构和乘累加等功能特殊的单周期指令,使得该平台能满足对指纹的快速采集和识别的要求。具有实际应用价值。
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
4
关闭 站长推荐上一条 /3 下一条