基于ARM核AT75C220/其在指纹识别系统中应用
扫描二维码
随时随地手机看文章
指纹识别技术近年来逐渐成熟,在门禁、安防和金融等方面得到了越来越广泛的应用。典型的指纹识别系统是以指纹传感器和dsp处理器为核心构成。指纹传感器采集指纹图像,dsp处理器实时实现指纹识别算法。同时,通常的指纹识别系统还具有较强的通信能力,除了具有rs485通信外,高档的指纹识别系统还要求具有以太网接口和internet连接能力。atmel公司新推出的智能互联网芯片at75c220集成了arm内核、dsp协处理器以及以太网mac接口,用at75c220和指纹传感器结合可构成高性能的指纹识别系统。 1 at75c220主要特点at75c220是定位于智能互联网应用的高性能arm处理器,采用arm7tdmi微处理器核,具有oaddsp核,强大的外设(如中断控制器和外设数据控制器),其dma通道增强了微控制器的实时性能。主要特点有:集成arm7tdmi arm thumb处理器核 一个16b定点dsp核 双以太网10/100mb/s mac接口 88kb的完整快速ram(支持dma方式) 多媒体数字信号编解码器(codec接口) 集成sdram控制器 这样,at75c220就很适合于需要图像处理功能并具有互联网通信能力的设备,比如高性能的指纹识别设备和voip应用等。单芯片集成多种功能可以降低成本,提高系统可靠性。同时,该芯片完备的开发软件支持(包括linux操作系统和dsp算法程序支持等)也有利于减少产品上市时间。2 芯片结构at75c220主要由运行速度达40 mi/s的基于arm7tdmi的risc处理器、运行速度为60mi/s的dsp处理器和双以太网10/100mb/s的mac接口组成。其内部机构如图1所示。at75c220包含2种不同的总线asb和apb,asb用于连接arm核、dsp核等核心模块,而apb总线则连接串行通信接口、通用i/o口等,两总线之间用amba总线桥连接。 armttdmi微处理器是一个高性能的嵌入式cpu,他功耗低,运算速度快,内含thumb指令解码器,可支持16b指令,同时支持调试和快速乘法等功能,并可通过模块互交总线与其他功能模块进行数据交换。
armttdmi(thumb)是公司授权用户最多的一项产品,将arm7指令集同thumb扩展组合在一起,以减少内存容量和系统成本。同时,他还利用嵌入式ice调试技术来简化系统设计,并用一个dsp增强扩展来改进性能。选择基于arm核的产品的另一个理由是,arm公司的处理器核心得到了大量厂家的支持,便于产品的开发和升级换代。同其他集成dsp核的芯片相比,at75c220的dsp子系统资源是相当丰富的,如图2所示,除包含一个60mi/s,16b定点dsp内核外,还具有不同用途的ram:2kb×l6x-ram,2kb×l6y-ram,16kbxl6通用数据ram,24 kb×l6可下载程序ram,一个256×16双端口的ram邮箱用于mcu-dsp通信。完整的codec接口允许大量的工业声音、多媒体或数据的连接。
芯片集成的以太网接口包括了2个独立的10/100mb/s以太网mac接口和一个32kb的数据包缓冲区。双端口mac的设计使设备嵌入到现有的以太网中而不需要另外的电缆,由于2个mac接口之间用局部总线连接,大量的数据包可以不受延迟地从一个mac传送到另一个mac,其间无需软件的参与。数据包缓冲区由mac接口通过dma的方式操作,用于临时保存接收和发送的数据包,在大多数情况下可以满足较大的通信量。
3 指纹识别算法 指纹自动识别作为一个有较大难度的模式识别研究分支,其研究难点主要集中在如何对采集进来的各种有噪声图像进行滤波和增强、如何抽取指纹的全局和局部特征以及如何进行在图像不能完全定位和图像可能发生扭曲变形情况下的特征匹配上。一般可以分为以下几个步骤,如图3所示,指纹识别算法流程主要包括灰度滤波、二值化、二值滤波、细化、细化后的去噪等步骤,最后进行特征提取和匹配。
本系统的指纹识别算法的灰度滤波采用基于块方图的方向滤波,接着进行二值化并细化指纹图像,在二值化和细化的过程中进一步去噪声,消除导致错误的特征点的可能性。用模板匹配的方法分别获取指纹的特征点,如端点、叉点等。指纹匹配采用基于中心点的匹配算法。通过在pc机上验证,该算法可以达到较好的效果。 4 指纹识别系统指纹识别系统一般由指纹传感器、dsp处理器和外围电路组成,为增加系统的处理能