基于ARM核AT75C220/其在指紋識別系統(tǒng)中應(yīng)用
指紋識別技術(shù)近年來逐漸成熟,在門禁、安防和金融等方面得到了越來越廣泛的應(yīng)用。典型的指紋識別系統(tǒng)是以指紋傳感器和dsp處理器為核心構(gòu)成。指紋傳感器采集指紋圖像,dsp處理器實時實現(xiàn)指紋識別算法。同時,通常的指紋識別系統(tǒng)還具有較強的通信能力,除了具有rs485通信外,高檔的指紋識別系統(tǒng)還要求具有以太網(wǎng)接口和internet連接能力。atmel公司新推出的智能互聯(lián)網(wǎng)芯片at75c220集成了arm內(nèi)核、dsp協(xié)處理器以及以太網(wǎng)mac接口,用at75c220和指紋傳感器結(jié)合可構(gòu)成高性能的指紋識別系統(tǒng)。 1 at75c220主要特點at75c220是定位于智能互聯(lián)網(wǎng)應(yīng)用的高性能arm處理器,采用arm7tdmi微處理器核,具有oaddsp核,強大的外設(shè)(如中斷控制器和外設(shè)數(shù)據(jù)控制器),其dma通道增強了微控制器的實時性能。主要特點有:集成arm7tdmi arm thumb處理器核 一個16b定點dsp核 雙以太網(wǎng)10/100mb/s mac接口 88kb的完整快速ram(支持dma方式) 多媒體數(shù)字信號編解碼器(codec接口) 集成sdram控制器 這樣,at75c220就很適合于需要圖像處理功能并具有互聯(lián)網(wǎng)通信能力的設(shè)備,比如高性能的指紋識別設(shè)備和voip應(yīng)用等。單芯片集成多種功能可以降低成本,提高系統(tǒng)可靠性。同時,該芯片完備的開發(fā)軟件支持(包括linux操作系統(tǒng)和dsp算法程序支持等)也有利于減少產(chǎn)品上市時間。2 芯片結(jié)構(gòu)at75c220主要由運行速度達(dá)40 mi/s的基于arm7tdmi的risc處理器、運行速度為60mi/s的dsp處理器和雙以太網(wǎng)10/100mb/s的mac接口組成。其內(nèi)部機構(gòu)如圖1所示。at75c220包含2種不同的總線asb和apb,asb用于連接arm核、dsp核等核心模塊,而apb總線則連接串行通信接口、通用i/o口等,兩總線之間用amba總線橋連接。 armttdmi微處理器是一個高性能的嵌入式cpu,他功耗低,運算速度快,內(nèi)含thumb指令解碼器,可支持16b指令,同時支持調(diào)試和快速乘法等功能,并可通過模塊互交總線與其他功能模塊進行數(shù)據(jù)交換。
armttdmi(thumb)是公司授權(quán)用戶最多的一項產(chǎn)品,將arm7指令集同thumb擴展組合在一起,以減少內(nèi)存容量和系統(tǒng)成本。同時,他還利用嵌入式ice調(diào)試技術(shù)來簡化系統(tǒng)設(shè)計,并用一個dsp增強擴展來改進性能。選擇基于arm核的產(chǎn)品的另一個理由是,arm公司的處理器核心得到了大量廠家的支持,便于產(chǎn)品的開發(fā)和升級換代。同其他集成dsp核的芯片相比,at75c220的dsp子系統(tǒng)資源是相當(dāng)豐富的,如圖2所示,除包含一個60mi/s,16b定點dsp內(nèi)核外,還具有不同用途的ram:2kb×l6x-ram,2kb×l6y-ram,16kbxl6通用數(shù)據(jù)ram,24 kb×l6可下載程序ram,一個256×16雙端口的ram郵箱用于mcu-dsp通信。完整的codec接口允許大量的工業(yè)聲音、多媒體或數(shù)據(jù)的連接。
芯片集成的以太網(wǎng)接口包括了2個獨立的10/100mb/s以太網(wǎng)mac接口和一個32kb的數(shù)據(jù)包緩沖區(qū)。雙端口mac的設(shè)計使設(shè)備嵌入到現(xiàn)有的以太網(wǎng)中而不需要另外的電纜,由于2個mac接口之間用局部總線連接,大量的數(shù)據(jù)包可以不受延遲地從一個mac傳送到另一個mac,其間無需軟件的參與。數(shù)據(jù)包緩沖區(qū)由mac接口通過dma的方式操作,用于臨時保存接收和發(fā)送的數(shù)據(jù)包,在大多數(shù)情況下可以滿足較大的通信量。
3 指紋識別算法 指紋自動識別作為一個有較大難度的模式識別研究分支,其研究難點主要集中在如何對采集進來的各種有噪聲圖像進行濾波和增強、如何抽取指紋的全局和局部特征以及如何進行在圖像不能完全定位和圖像可能發(fā)生扭曲變形情況下的特征匹配上。一般可以分為以下幾個步驟,如圖3所示,指紋識別算法流程主要包括灰度濾波、二值化、二值濾波、細(xì)化、細(xì)化后的去噪等步驟,最后進行特征提取和匹配。
本系統(tǒng)的指紋識別算法的灰度濾波采用基于塊方圖的方向濾波,接著進行二值化并細(xì)化指紋圖像,在二值化和細(xì)化的過程中進一步去噪聲,消除導(dǎo)致錯誤的特征點的可能性。用模板匹配的方法分別獲取指紋的特征點,如端點、叉點等。指紋匹配采用基于中心點的匹配算法。通過在pc機上驗證,該算法可以達(dá)到較好的效果。 4 指紋識別系統(tǒng)指紋識別系統(tǒng)一般由指紋傳感器、dsp處理器和外圍電路組成,為增加系統(tǒng)的處理能