雙界面卡的發(fā)展研究及其技術(shù)構(gòu)架
文章出處:http://www.sgrivertours.com 作者:楊慶森、周曉方 人氣: 發(fā)表時(shí)間:2011年09月15日
1.引言
1.1. 非接觸卡與接觸卡的介紹
如今,接觸式IC卡(下簡稱接觸卡)在人們的日常生活中得到了普遍的應(yīng)用。在接觸卡的普及過程中,逐漸發(fā)現(xiàn)了許多的弊端:卡在讀寫器上經(jīng)常拔插造成的磨損導(dǎo)致接觸不良,從而引起數(shù)據(jù)傳輸錯(cuò)誤,并且卡與讀寫器之間的磨損也大大縮短了卡和讀寫器的使用壽命;另外,接觸卡的通訊速率較低,再加上插拔卡的動(dòng)作延誤,造成每一筆交易需要較長時(shí)間的等待。
為了解決這些問題,非接觸式IC卡(下簡稱非接觸卡)應(yīng)運(yùn)而生。非接觸卡的優(yōu)點(diǎn)是顯而易見的:它通過無線電波與讀寫設(shè)備進(jìn)行通訊,無裸露觸點(diǎn),與讀寫器間也無機(jī)械接觸,可靠性和使用壽命高;它的通訊速率高于接觸卡,在一定距離范圍內(nèi)可以從任意方向與讀寫設(shè)備通訊,從而使操作更為方便、快捷。因此,非接觸卡在很多場合已經(jīng)取代了接觸卡,在卡市場所占的份額越來越大。非接觸卡也存在缺陷:當(dāng)卡片彎曲過度時(shí),卡片容易因線圈焊點(diǎn)斷裂而失效;在一些場合的通訊容易受環(huán)境干擾而失敗;加密方法較簡單,安全性低于接觸卡等。
總的來說,接觸卡和非接觸卡因使用環(huán)境不同各有利弊,因此在實(shí)際應(yīng)用中都得到了廣泛的應(yīng)用。相對來說,在安全要求較高,操作速度要求不高的應(yīng)用如銀行卡中通常使用接觸卡;而在安全要求較低,操作速度要求較高的應(yīng)用如公共交通中,通常使用非接觸卡。
非接觸式IC卡與接觸式IC卡的優(yōu)缺點(diǎn)比較如表1所示。
1.2. 非接觸卡應(yīng)用發(fā)展
隨著技術(shù)和應(yīng)用的發(fā)展,非接觸式卡的應(yīng)用越來越廣泛,功能也越來越強(qiáng)大。應(yīng)用中出現(xiàn)了非接觸式IC卡和接觸式IC卡結(jié)合的雙接口IC卡,雙接口IC卡既具有非接觸卡的耐用性和方便性,又不失安全性。
越來越多的應(yīng)用除了對非接觸卡的接口提出了要求,還對傳統(tǒng)非接觸卡的應(yīng)用開發(fā)提出了進(jìn)一步的要求。原來非接觸卡的指令比較簡單,功能比較少。要完成一個(gè)復(fù)雜的操作如建立一個(gè)文件需要對非接觸卡的數(shù)據(jù)結(jié)構(gòu)十分了解而且要編寫許多條指令。特別的,非接觸卡中存放的許多資料是比較敏感,的如金額之類,在對這些資料進(jìn)行讀寫時(shí),如果發(fā)生意外使操作中斷,如何正確恢復(fù)資料是一個(gè)很頭痛的問題,這需要很高軟件技巧。所有這些大大阻礙了非接觸卡的應(yīng)用開發(fā)。因此在非接觸卡集成入CPU,通過COS軟件來提供一個(gè)簡單、強(qiáng)大的應(yīng)用軟件開發(fā)接口是一個(gè)很好的解決方法。
2.研究目標(biāo)與內(nèi)容
本文的研究目標(biāo)是設(shè)計(jì)一個(gè)帶串行接觸接口和非接觸式接口的CPU卡芯片。我們稱這個(gè)設(shè)計(jì)為雙界面卡。
本文研究的思路是怎樣合理的設(shè)計(jì)芯片架構(gòu),使CPU、操作系統(tǒng)軟件和外部界面接口無關(guān),盡量利用原有設(shè)計(jì)資源完成芯片設(shè)計(jì)。
2.1 芯片架構(gòu)
芯片主要由CPU系統(tǒng)、界面接口和存儲(chǔ)器三個(gè)主要部分組成。界面接口負(fù)責(zé)和外界進(jìn)行命令和資料的傳輸,本芯片提供了ISO/IEC 14443-A的非接觸接口和基于串行通迅的接觸接口。
CPU系統(tǒng)是兼容8051指令的高速微處理器、外設(shè)、RAM、ROM和EEPROM組成。
芯片的架構(gòu)如圖1所示。
這個(gè)架構(gòu)的基本思想是使智能卡的CPU系統(tǒng)與界面之間接口相對獨(dú)立。使界面接口形成應(yīng)用的底層,操作系統(tǒng)軟件的應(yīng)用處理不必關(guān)心接口的具體實(shí)現(xiàn)。這意味著從應(yīng)用軟件開發(fā)的角度看到的資料是與應(yīng)用正在使用何種具體接口是不相關(guān)的。接口可以隨著應(yīng)用的發(fā)展而改變,可以是接觸和非接觸的組合,甚至可以是藍(lán)牙、WLAN、IrD、并行接口等其他種類的接口組合。
這種接口和CPU系統(tǒng)在遵循統(tǒng)一訪問規(guī)范的基礎(chǔ)上可以任意組合的特點(diǎn),提供了對用戶、芯片設(shè)計(jì)者和系統(tǒng)軟件設(shè)計(jì)者很大的好處:在引入新應(yīng)用或開發(fā)新系統(tǒng)時(shí)可任意選用已存在的成熟的基本模塊,以加快開發(fā)的進(jìn)度,降低開發(fā)的成本和風(fēng)險(xiǎn)。
2.2 界面與CPU系統(tǒng)的接口
為了達(dá)到界面接口與軟件的獨(dú)立性,CPU系統(tǒng)與各種界面接口之間需要建立一個(gè)簡單的標(biāo)準(zhǔn)接口。在本文設(shè)計(jì)中使用增加8051系列處理器的特殊功能寄存器(SFR)的方法作為訪問CPU不同界面接口的標(biāo)準(zhǔn)。
非接觸界面的接收解調(diào)和發(fā)射調(diào)制電路是在原非接觸卡的設(shè)計(jì)中已有模塊,對原來的接收、發(fā)射寄存器組進(jìn)行SFR編址以及增加一些控制寄存器和邏輯電路就可以容易的在非接觸接口中設(shè)計(jì)出支持特殊功能寄存器(SFR)的接口。
接觸界面的接口就是一個(gè)支持特殊功能寄存器(SFR)的接口的串行(UART)模塊,與標(biāo)準(zhǔn)的UART不同的是,這個(gè)模塊的發(fā)送和接收是一個(gè)開漏的雙向數(shù)據(jù)線,這意味著接觸的串行接口只能以半雙工的方法進(jìn)行通訊。
在完成與外界的數(shù)據(jù)通訊后,用中斷請求信號(hào)來喚醒處于休眠模式的CPU。在本設(shè)計(jì)中,非接觸接口使用8051的外部中斷INT1,而接觸接口使用內(nèi)部的串行中斷。
2.3 電源產(chǎn)生
在雙界面卡中一個(gè)困難的問題是如何提供CPU系統(tǒng)一個(gè)可靠的系統(tǒng)時(shí)鐘和電源。因?yàn)閮蓚€(gè)界面都會(huì)產(chǎn)生時(shí)鐘和電源,所以系統(tǒng)需要能正確相互切換,而不產(chǎn)生沖突。
本設(shè)計(jì)提出了一個(gè)簡單可靠的方法來產(chǎn)生電源和時(shí)鐘。特別的,本文描述的方法還可以支持兩個(gè)界面同時(shí)工作。
上圖表示兩個(gè)接口電源的切換方法。電容C1是芯片的儲(chǔ)能電容,在非接觸供電和操作時(shí),C1可以存儲(chǔ)電荷;在接觸操作使用外部電源時(shí),C1可以穩(wěn)定Vdd電壓。為了防止電流可能的倒流,這里使用二極管D1來保證電流的單向流動(dòng)。當(dāng)然,D1存在會(huì)使Vdd與外部Ext_Vdd存在一個(gè)電壓差,解決方法是采用特殊的低閾值MOS管來代替普通的二極管。需要指出的是,來自非接觸界面的電壓產(chǎn)生電路是橋式整流結(jié)構(gòu),電流不會(huì)反向流動(dòng),所以不需要串一個(gè)象D1那樣的二極管。
DC-DC模塊是為了在不同的電源電壓下,提供系統(tǒng)一個(gè)較低的、穩(wěn)定的工作電壓。這有利于降低芯片的功耗和適應(yīng)不同應(yīng)用場合的電源電壓的要求。
2.4 復(fù)位信號(hào)產(chǎn)生
上圖是CPU復(fù)位信號(hào)的產(chǎn)生。上下電檢測模塊負(fù)責(zé)監(jiān)視VDD的電壓,在上電過程或工作電壓過低時(shí)產(chǎn)生上下電復(fù)位信號(hào);WDT模塊是看門狗電路(watch dog timer),當(dāng)軟件長時(shí)間不對WDT模塊進(jìn)行操作后,WDT會(huì)產(chǎn)生超時(shí)復(fù)位信號(hào)使CPU復(fù)位。CPU對WDT模塊進(jìn)行讀寫也是通過SFR接口。
特別要指出的是,盡管接觸接口有復(fù)位信號(hào)的輸入腳,但不會(huì)因此產(chǎn)生CPU的復(fù)位。當(dāng)接觸界面的復(fù)位信號(hào)有效時(shí),接觸界面會(huì)設(shè)置復(fù)位標(biāo)志位并產(chǎn)生中斷,由CPU來決定如何處理外部接口的復(fù)位請求。
2.5 系統(tǒng)時(shí)鐘產(chǎn)生
系統(tǒng)時(shí)鐘有非接觸界面和接觸界面的兩個(gè)來源,為了使系統(tǒng)可以工作在來自任意界面的時(shí)鐘下,而且可以同時(shí)和兩個(gè)界面正確通訊,這需要系統(tǒng)有隨時(shí)根據(jù)應(yīng)用切換系統(tǒng)時(shí)鐘的能力。另外,為了盡可能的降低系統(tǒng)的功耗,還需要在CPU不需要工作時(shí)將系統(tǒng)時(shí)鐘關(guān)斷,在中斷產(chǎn)生后把時(shí)鐘恢復(fù)。
如上圖所示,芯片通過一個(gè)時(shí)鐘管理模塊來完成兩個(gè)界面時(shí)鐘clk1(3.39MHz)和clk2(典型頻率為3.58MHz)到系統(tǒng)時(shí)鐘clk的切換,并可由CPU來關(guān)斷clk來節(jié)省功耗。在中斷INT1和INT2發(fā)生時(shí),時(shí)鐘管理模塊負(fù)責(zé)恢復(fù)系統(tǒng)時(shí)鐘。
從系統(tǒng)架構(gòu)可以看出,在正常工作時(shí)的CPU和兩個(gè)界面的時(shí)鐘并不需要同步,這是因?yàn)橛晒δ塥?dú)立的界面模塊負(fù)責(zé)各自通訊,通訊的時(shí)鐘可以獨(dú)自由界面產(chǎn)生,CPU做的只是通過特殊寄存器(SFR)接口訪問這兩個(gè)界面模塊。因此在兩個(gè)界面同時(shí)在工作時(shí),CPU的系統(tǒng)時(shí)鐘可以是clk1和clk2的任何一個(gè)。當(dāng)兩個(gè)中斷都有效時(shí),系統(tǒng)時(shí)鐘將從先申請中斷的那個(gè)界面的時(shí)鐘中恢復(fù),并先處理這個(gè)界面的中斷。
上圖是時(shí)鐘管理模塊的電路圖。從CPU來的stop_clk會(huì)使clk關(guān)斷,而來自界面的中斷請求INT1、INT2或者來自定時(shí)器的中斷INT3會(huì)清除關(guān)斷信號(hào),來由恢復(fù)時(shí)鐘選擇模塊來決定恢復(fù)那個(gè)時(shí)鐘。
圖中的clk_timer是給定時(shí)器的時(shí)鐘,clk_timer的輸出在與門之前是為了保證在系統(tǒng)時(shí)鐘關(guān)閉后,定時(shí)器仍有時(shí)鐘來計(jì)數(shù)。
3. 結(jié)束語
本文研究了非接觸IC卡和接觸式IC卡的應(yīng)用,提出一個(gè)支持ISO/IEC 14443-A標(biāo)準(zhǔn)的非接觸卡接口和支持串行接口的雙界面CPU卡平臺(tái)的設(shè)計(jì)方案。應(yīng)用本方案設(shè)計(jì)的雙界面CPU卡可以在兼容已有的非接觸卡、接觸式CPU卡的應(yīng)用的基礎(chǔ)上,提供更強(qiáng)大的應(yīng)用開發(fā)接口并且能作為移動(dòng)設(shè)備近距離通訊的載體。
本文提出了一個(gè)新的雙界面卡的架構(gòu),這個(gè)架構(gòu)的好處是:使CPU控制系統(tǒng)和具體的接口類型相互獨(dú)立,使COS軟件的開發(fā)更加容易;盡量利用IP復(fù)用技術(shù),搭積木的設(shè)計(jì)方法來縮短芯片的設(shè)計(jì)周期。
作者簡介:復(fù)旦大學(xué)微電子學(xué)系 楊慶森、周曉方
參考文獻(xiàn)
[1] Ulrich Kaiser,Wolfgang Steinhagen .A Low-Power Transponder IC for High-Performance Identification Systems. IEEE Journal of Solid-State Circuit, Vol30, No. 3. March 1995
[2] 王凜. 存儲(chǔ)IC卡芯片的研制. 復(fù)旦大學(xué)集成電路和系統(tǒng)國家重點(diǎn)實(shí)驗(yàn)室碩士論文.1998
[3] Gary Yeap. Pratical low power digital VLSI design. Kluwer Academic Publisher.1998,
[4] 于宏軍,趙冬艷. 智能(IC)卡技術(shù)全書. 電子工業(yè)出版社. 1996年10月
[5] Duane H. Oto, Vinod K. Dham, Keith H. Gudger et al. High-voltage regulation and process considerations for high-density 5V-only EEPROMs, IEEE. J. Solid-State Circuits, vol. SC-18, No. 5, pp.532-538, Oct. 1983.