e5561型加密射頻識別電路的原理及其應用
文章出處:http://hz-huyue.com 作者:www.21cn.com 人氣: 發表時間:2011年09月18日
射頻識別(RFID)是無線電頻率識別的簡稱,即通過無限電波進行識別處理。射頻識別系統通常由讀卡器(閱讀器)和應答器(卡)二部分組成。其識別數據被存儲在應答器電路中。應答器是一種非接觸卡,該卡自身不帶電源,當卡進行閱讀器的電磁場范圍時,便可通過耦合無線電波的能量并經整流穩壓后獲得工作電源。這樣,在激活狀態下,卡上存儲的數據便可通過編碼、調制送往閱讀器以實現識別。
Atmel公司生產的e5561型電路是一種加密的射頻識別器(IDIC),它適用于高保密的場合,其內部有加密運算單元。其主要性能如下:
●低功率、低電壓的CMOS IDIC;
●射頻(RF)范圍為100kHz~150kHz,典型值為125kHz;
●內含320bitEEPROM(分10塊);
●位率為RF/32,RF/64;
●加密鑒別時間小于10ms;
●帶有可編程讀/寫保護功能;
●采用曼徹斯特和兩相兩種編碼方式。
1 內部結構和工作原理
正常使用時e5561只使用線圈1(coil1)和線圈2(coil2)及外接電感線圈和電容器,其余引腳均未使用。其內部結構框圖如圖1所示。芯片包括自適應部分、前置模塊端、調制器、解碼器、存儲器、加密電路等部分。
當基站與e5561的諧振頻率不匹配時,其自適應部分調整e5561的頻率使其與基站頻率匹配,調整范圍為5%。前置模擬端(AFE)可用來產生電路所需的電源,同時可處理與基站的雙向數據通信。
芯片中的存儲器由320位EEPROM組成,分為10塊,每塊32位;第0位用于保存基本的配置數據,第1塊-第9塊為用戶數據區,可自由編程,其中第1-4塊為ID代碼,第5-8塊為密匙,在口令模式下,第9塊的4-31位用于存放口令,0-3位用于存放用戶配置數據,否則,第9塊的相應位也可自由編程。
編程電壓由高壓電發生器提供(18V)。加密電路AUT64運算規則加密寫入e5561的口令,運算結果可被基站讀出,將此結果與基站數據相比較,便可建立高安全的認證過程。
調制器由2個數據編碼器組成,基本的調制類型有曼徹斯特和兩相編碼方式。
e5561可工作在以下工作模式:
(1)ID模式:在RF場中,e5561向基站循環發送ID碼。ID模式允許使用二種不同的位率和調制方式,并可使用二種長度的ID碼代(64位或128位)。
(2)編程模式:使用前要對e5561進行編程。EEPROM會被分成10塊,每塊被分別編程,基站送出的數據序列應被寫入e5561的EEPROM存儲器。在編程期間,如果e5561監視器發現錯誤或保護被入侵,那么,系統將會回到ID模式。
(3)直接存儲模式:當基站發送一特殊數據序列給e5561時,e5561就會進入直接存儲模式。這種模式有二種功能:一是基站讀取EEPROM每一塊的內容,二是重新設備e5561。在此期間,如果e5561監視器發現錯誤或保護被入侵,那么,系統將會回到ID模式。
(4)加密模式:此模式中,e5561使用AUT64運算規則(一種非線性的高安全的運算規則)。在基站完成對e5561的識別后(通過讀取ID代碼),基站可對應答器進行鑒別(通過發送一口令),當收到此數據序列后,e5561進入加密模式。如果e5561監視器發現錯誤或保護被入侵,系統也會回到ID模式。
(5)停止模式:當二個或二個以上應答器同時使用時,為避免沖突,基站將發送一特殊數據序列以使處于主動狀態的應答器進入停止模式,之后通過加電復位或發出重啟命令,使e5561再進入ID模式。
各模式之間的轉換可通過基站發送一序列命令來改變。
使用時,e5561可通過外接LC回路來接收讀/寫基站的RF信號,并經過電路內部的電源電路處理為電路提供電源。電路可通過內部的阻尼負載將片內EEPROM中的數據讀入讀/寫基站,并以一個特殊的方式中斷RF場,以使讀/寫基站可將數據寫入片內EEPROM中。
基站在完成口令和ID碼識別以及密碼鑒別后,便可產生控制信號以控制系統的動作。其應答器電路如圖2所示。
應答器與基站的通信有二個傳輸通道:一是能量傳輸通道,另一個是信號傳輸通道。能量傳輸通道是單向的,可由基站產生給應答器供電的電磁場。信號傳輸通道是雙向的,通常由基站向應答器傳輸的信息為“寫”,反方向則為“讀”用戶數據(包括用戶口令、ID碼、密碼等)。使用時,用戶可根據需要進行編程。表1和表2分別給出EEPROM第0塊(共32位)和第9塊的配置數據位。
表1 第0塊位的含義及設置
位 | 代 號 | 含 義 |
設 置 值 |
0 | MOD | 調制類型 | 0:曼徹斯特;1:二相 |
1 | BR | 位率 | 0:RF/32;1:RF/64 |
2 | BC | 代碼長度 | 0:128bit;1:64bit |
3-4 | T | 終端 | 00:測試;1 0,0 1:終端;1 1:無 |
5 | S | 停止模式 | 0:關;1:開 |
6 | A | 自適應部分 | 0:自動;1:人工設置 |
7 | AUT | 次數 | 0:8次;1:24次 |
8 | L_0 | 第0塊鎖定 | 0:解鎖;1:鎖定 |
9-11 | Adapt bit | 固定 | 1;1;1 |
12-31 | SID | 廠商芯片代碼 | 出廠設定 |
表2 第9塊位的含義及設置
位 | 代 號 | 含 義 | 設 置 值 |
0 | L_ID | 第1-4塊鎖定 | 0:解鎖;1:鎖定 |
1 | L_K | 第5-8塊鎖定 | 0:解鎖;1:鎖定 |
2 | L_9 | 第9塊鎖定 | 0:解銷;1:鎖定 |
3 | PWD | 口令允許 | 0:允許;1:不允許 |
4-31 | 存放口令 | 可編程設置 |
2 e5561的應用
一個基本的射頻識別系統通常由三個標準部件組成:應答器、讀/寫基站和微控制器。由e5561組成的應答器電路如圖2所示,圖中給出電感線圈和電容器參數,該電路的RF工作頻率為125kHz。
2.1 讀/寫基站
讀寫基站主要由U2270B型配套電路組成。U2270B是Atmel公司生產的IDIC讀/寫基站專用電路,其內部含有一個由片上電源、振蕩器和線圈激勵器組成的、可為應答器供電的能量轉換電路和一個能將微小輸入信號變為微控制器所需信號的信號處理電路。它屬于非編程電路,采用5V單電源供電,外圍電路比較簡單,只需配置讀寫天線(L)、諧振電容器(C)、輸入電容器(CIN)等元件即可工作。在天線載波頻率為125kHz、比特率為RF/32的典型情況下,基站天線L的電感量為737μH。一般采用銅制漆包線繞制成直徑為3cm、匝數為100的線圈即可。
射頻載波允許/禁止端(CFE)和讀數據輸出端(OUTPUT)的對外接口,應分別與單片機的二條I/O口線P1.0和P1.1相連以用來對e5561卡進行數據讀寫。
2.2 單片機系統
本系統的單片機采用AT890C52機型,其內部有8KB的Flash EEPROM存儲系統程序,主要用于完成鍵盤掃描、顯示相關數據、通過U2270B對卡中數據進行讀寫處理,以及與上位管理主機進行數據通訊等功能。擴展的數據存儲器AT29C256型Flash EEPROM主要用于掉電后的數據存儲。單片機與上位管理主機的通信選用RS-485總線標準,該標準具有接口簡單(只需2條數據線和1條地線),驅動能力大、通信距離長(最長112km)、抗干擾能力強等特點。由于一般微機串行口采用的都是RS-232接口,故需另配接RS-232/RS-485轉換器。讀/寫基站電路如圖3所示。
圖4所示是本系統的單片機系統主程序框圖。本系統中,由于U2270B只能完成射頻調制信號和整流和發射,而對所選編碼方式以及讀數據流的解碼、寫數據流的編碼等則需軟件實現。一般為使數據容易解碼,設計時都選用同步信號。由于讀信號的波形隨調制、編碼方式的不同而不同,因此,讀卡程序選用模擬信號時序,即在P1.1口先檢測同步信號,然后根據所選的編碼方式進行相應的解碼。方法是對收到的信號計時和判別。寫卡則是通過P1.0來對U2270B的載波允許/禁止端進行控制,以定時控制載波有無,其各位的順序應注意與讀卡時時間,以防止數據字節或比特的混亂