邵景陽,羅勝欽,楊立吾
(1.同濟(jì)大學(xué)電子與信息工程學(xué)院,上海 201804;2.中芯國際(上海)集成電路制造有限公司,上海 201203)
射頻識(shí)別技術(shù)[1]簡稱RFID,是一種非接觸式的自動(dòng)識(shí)別技術(shù),通過射頻信號(hào)自動(dòng)識(shí)別目標(biāo)對(duì)象并獲取相關(guān)數(shù)據(jù),識(shí)別過程無須人工干預(yù),尤其可工作于各種惡劣環(huán)境。與其他自動(dòng)識(shí)別技術(shù)相比,具有識(shí)別速度快、操作方便、存儲(chǔ)容量大、安全可靠等優(yōu)點(diǎn),在國內(nèi)外已被廣泛應(yīng)用于各個(gè)領(lǐng)域。例如近幾年來得到廣泛應(yīng)用的基于ISO14443 TypeA協(xié)議的非接觸式IC卡作為短距離公共交通車票,第二代身份證則用到ISO14443 TypeB協(xié)議,可見RFID市場(chǎng)前景極其廣闊。
RFID有很多應(yīng)用頻段,目前應(yīng)用到公共場(chǎng)所的多處于HF頻段,ISO/IEC15693標(biāo)準(zhǔn)就是一種針對(duì)高頻段(HF)13.56MHz無源式射頻電子標(biāo)簽的設(shè)計(jì)標(biāo)準(zhǔn),這種標(biāo)簽依靠13.56MHz的線圈耦合磁場(chǎng)載波信號(hào)提供能量。無源電子標(biāo)簽的數(shù)據(jù)傳輸以能量傳輸?shù)男问竭M(jìn)行,主要有全雙工(FDX)、半雙工(HDX)和時(shí)序(SEQ)三種方式。由于數(shù)據(jù)的傳輸在空間進(jìn)行,因此無源電子標(biāo)簽涉及信道安全技術(shù)以及信息安全技術(shù),主要包括數(shù)據(jù)的編解碼、信道的編解碼、防沖突機(jī)制、加解密以及認(rèn)證機(jī)制。
非接觸式智能卡的無源載波供電方式?jīng)Q定了其芯片SoC系統(tǒng)結(jié)構(gòu)可分為三部分:射頻前端接口電路、數(shù)字基帶協(xié)議處理電路、數(shù)據(jù)存儲(chǔ)介質(zhì)。射頻前端接口電路包含電源電路和調(diào)制解調(diào)電路,處理來自天線的模擬信號(hào);數(shù)字部分就是處理協(xié)議指令和數(shù)據(jù)的讀寫操作;作為數(shù)據(jù)的真正載體,數(shù)據(jù)存儲(chǔ)介質(zhì)目前廣泛應(yīng)用的是EEPROM技術(shù),是整個(gè)芯片最寶貴的部分。
RFID的核心是防沖撞技術(shù),這也是它和接觸式IC卡的主要區(qū)別。ISO/IEC14443-3規(guī)定了TYPE A和TYPE B兩類防沖撞機(jī)制。兩者防沖撞機(jī)制的原理不同,前者是基于“位”沖撞檢測(cè)協(xié)議,而TYPE B通過系列命令序列完成防沖撞。ISO/IEC15693采用輪尋機(jī)制、分時(shí)查詢的方式完成防沖撞機(jī)制。防沖撞機(jī)制使得同時(shí)處于讀寫區(qū)內(nèi)的多張卡的正確操作成為可能,既方便了操作,也提高了操作的速度。
射頻識(shí)別系統(tǒng)一般包括兩個(gè)部分,一個(gè)是應(yīng)答器(即無源射頻標(biāo)簽),一個(gè)是閱讀器。在HF頻段內(nèi),應(yīng)答器是由耦合元件及芯片組成,每個(gè)標(biāo)簽具有它唯一的識(shí)別編號(hào)(UID),標(biāo)簽多附著在被識(shí)別的物體上;閱讀器可以讀取或者寫入(指定應(yīng)用條件下)數(shù)據(jù)到應(yīng)答器標(biāo)簽內(nèi),通過發(fā)送指令控制標(biāo)簽內(nèi)數(shù)據(jù)更新。
RFID芯片與閱讀器之間的指令和數(shù)據(jù)交換是通過射頻接口電路來完成的。由于RFID芯片沒有電源,所以需要其片上天線通過耦合方式從讀寫器發(fā)送的電磁波中獲取能量,為RFID芯片電路正常工作提供電源電壓。此外,射頻接口電路從讀寫器發(fā)射的載波信號(hào)中解調(diào)出基帶信號(hào),并送到數(shù)字電路進(jìn)行解碼處理。反過來,射頻接口電路將數(shù)字電路發(fā)送的編碼信號(hào)經(jīng)過負(fù)載調(diào)制通過片上天線發(fā)送給讀寫器,讀寫器再對(duì)接收到的信號(hào)進(jìn)行相應(yīng)的還原處理。
基于射頻接口電路的方框圖如圖1所示(SMIC DS/RFAG授權(quán)),主要包括電源產(chǎn)生電路、時(shí)鐘提取電路、復(fù)位電路、調(diào)制和解調(diào)電路。
圖1 ISO/IEC 15693無源標(biāo)簽系統(tǒng)結(jié)構(gòu)圖
電源產(chǎn)生電路為RFID芯片內(nèi)部電路提供正常工作時(shí)所需要的穩(wěn)定的直流電源,電源產(chǎn)生電路由整流電路、穩(wěn)壓電路、過流保護(hù)電路三個(gè)功能模塊組成。由于數(shù)字基帶電路和EEPROM Charge Pump電路對(duì)電壓要求不同,故分為兩類電壓1.2V和1.8V,數(shù)字部分和EEPROM部分電路用到1.2V電壓,Charge Pump電路用到1.8V電壓。
時(shí)鐘提取電路從載波中提取芯片數(shù)字部分和存儲(chǔ)介質(zhì)正常工作時(shí)需要的時(shí)鐘頻,此處時(shí)鐘提取電路僅僅是提取了載波頻率13.56MHz,數(shù)字電路需要的時(shí)鐘以及調(diào)制時(shí)需要的副載波都是由這個(gè)信號(hào)分頻得到的。鑒于低功耗處理方式,在數(shù)字基帶部分分頻器的系統(tǒng)設(shè)計(jì)中才用到4、8、16和32分頻時(shí)鐘。
ISO/IEC15693協(xié)議中規(guī)定卡片在規(guī)定的場(chǎng)強(qiáng)范圍內(nèi)能持續(xù)性地工作。因此必須有一個(gè)信號(hào)來控制后面的數(shù)字邏輯電路工作的狀態(tài)。當(dāng)電源電壓達(dá)到一個(gè)特定的值時(shí),Reset觸發(fā)數(shù)字邏輯電路上電信號(hào)讓它進(jìn)行工作,即上電復(fù)位。反之,一旦電源電壓下降到某一個(gè)特定電壓以下時(shí), Reset觸發(fā)數(shù)字邏輯電路掉電信號(hào)讓它停止工作,即下電復(fù)位,保證數(shù)字邏輯電路寄存器的狀態(tài)為暫存工作。
將待發(fā)送的數(shù)據(jù)進(jìn)行調(diào)制以及從接收到的載波信號(hào)中還原出指令數(shù)據(jù)則由調(diào)制和解調(diào)電路來實(shí)現(xiàn)[3]。ASK解調(diào)模塊解調(diào)出ISO/IEC 15693協(xié)議中包含10% ASK和100% ASK信號(hào),ASK/FSK調(diào)制模塊則是調(diào)制以進(jìn)行基帶曼徹斯特編碼的副載波調(diào)制。
基于以上考慮,在模擬前端各個(gè)端口信號(hào)清晰的情況下,可以明確到主狀態(tài)機(jī)要進(jìn)行PPM解碼、指令譯碼、CRC驗(yàn)證、防沖撞操作和EEPROM的數(shù)據(jù)讀寫操作。數(shù)字基帶部分進(jìn)行的操作類似于ISO七層網(wǎng)絡(luò)更高一層的通信協(xié)議處理,可以理解為編解碼操作和指令譯碼、執(zhí)行操作。其中隨時(shí)保持?jǐn)?shù)據(jù)校驗(yàn)的功能。
解調(diào)后的同步數(shù)據(jù)首先經(jīng)過PPM解碼,解碼后得到一幀數(shù)據(jù),在數(shù)據(jù)接受模塊的控制下,一幀中的數(shù)據(jù)分別串行移入通用移位寄存器或指令、標(biāo)志位寄存器進(jìn)行存儲(chǔ),在數(shù)據(jù)串行移入寄存器的同時(shí),數(shù)據(jù)也串行送到CRC模塊進(jìn)行校驗(yàn)。當(dāng)數(shù)據(jù)接受完畢,如果CRC錯(cuò)誤,則Reset2將已經(jīng)存儲(chǔ)的數(shù)據(jù)清零,電子標(biāo)簽不做任何響應(yīng);如果沒有發(fā)現(xiàn)錯(cuò)誤,電子標(biāo)簽的命令處理模塊將讀取數(shù)據(jù)指令、標(biāo)志位寄存器的數(shù)據(jù),并據(jù)此來進(jìn)行下一步的操作。
電子標(biāo)簽要發(fā)送回復(fù)幀時(shí),首先把要發(fā)送的幀數(shù)據(jù)寫入通用移位寄存器,當(dāng)計(jì)時(shí)器完成計(jì)時(shí)準(zhǔn)許發(fā)送時(shí),數(shù)據(jù)串行進(jìn)入發(fā)送模塊,并同時(shí)送到CRC模塊進(jìn)行CRC計(jì)算,在數(shù)據(jù)發(fā)送模塊為數(shù)據(jù)加上SOF、CRC和EOF,最后通過對(duì)比特流進(jìn)行曼徹斯特編碼和一次調(diào)制(ASK或FSK)后,送入模擬部分的調(diào)制電路。
在執(zhí)行ISO/IEC15693指令流過程中,如果數(shù)字基帶電路操作順序不當(dāng),隨時(shí)會(huì)造成鎖死狀態(tài)。因此基于指令流和譯碼過程中整體的考慮,指令的操作和PPM譯碼處理是密不可分的,這很好地體現(xiàn)在防沖撞機(jī)制中。
射頻識(shí)別系統(tǒng)工作時(shí),經(jīng)常會(huì)有多個(gè)應(yīng)答器同時(shí)處于閱讀器的工作范圍內(nèi)。當(dāng)多個(gè)應(yīng)答器同時(shí)向閱讀器發(fā)送識(shí)別信息時(shí), 由于所有的應(yīng)答器都使用同一傳輸信道,所以在應(yīng)答器發(fā)送信息的過程中經(jīng)常會(huì)發(fā)生信號(hào)的混合疊加,產(chǎn)生碰撞,造成應(yīng)答器信息相互干擾,使閱讀器無法正確接收和識(shí)別應(yīng)答器[2]。
常用的射頻標(biāo)簽防沖撞機(jī)制主要有ALOHA法和二進(jìn)制搜索算法。
ALOHA法是所有多路存取方法中最簡單的。只要有一個(gè)數(shù)據(jù)包可以使用,這個(gè)數(shù)據(jù)包就從標(biāo)簽發(fā)送到讀寫器。這類標(biāo)簽通常只有一些數(shù)據(jù)(序列號(hào))傳輸給閱讀器,并且在一個(gè)周期性的循環(huán)中將這些數(shù)據(jù)不斷地發(fā)送給閱讀器,數(shù)據(jù)的傳輸時(shí)間只是重復(fù)時(shí)間的一小部分,以致在傳輸之間產(chǎn)生相當(dāng)長的間歇。各個(gè)標(biāo)簽的重復(fù)時(shí)間之間的差別很小,所以存在著一定的概率,兩個(gè)標(biāo)簽可以在不同的時(shí)間段上設(shè)置它們的數(shù)據(jù),使數(shù)據(jù)包傳送時(shí)不互相發(fā)生碰撞。
二進(jìn)制搜索算法及其改進(jìn)算法由一個(gè)閱讀器和多個(gè)標(biāo)簽之間規(guī)定的一組命令和應(yīng)答規(guī)則構(gòu)成,目的在于從多卡中選出任一個(gè)實(shí)現(xiàn)數(shù)據(jù)通信。
該類算法有3個(gè)關(guān)鍵要素:(1)選用適當(dāng)?shù)幕鶐Ь幋a;(2)利用標(biāo)簽序列號(hào)唯一的特性;(3)設(shè)計(jì)一組有效的指令規(guī)則,高效、迅速地實(shí)現(xiàn)選卡。實(shí)現(xiàn)此類算法的必要前提是能辨認(rèn)出在閱讀器中數(shù)據(jù)碰撞的比特位的準(zhǔn)確位置。因此,必須采用合適的編碼法,為了能辨認(rèn)出閱讀器中數(shù)據(jù)碰撞比特位的準(zhǔn)確位置,采用Manchester編碼,該編碼是用電平的改變(上升沿/下降沿)來表示數(shù)值位,這里上升沿編碼為邏輯0,下降沿編碼為邏輯1。若無狀態(tài)跳變視為非法數(shù)據(jù)作為錯(cuò)誤被識(shí)別,當(dāng)兩個(gè)或多個(gè)標(biāo)簽同時(shí)返回的數(shù)位有不同值時(shí)則上升沿和下降沿互相抵消以至無狀態(tài)跳變,閱讀器可知該位出現(xiàn)碰撞產(chǎn)生了錯(cuò)誤應(yīng)進(jìn)一步搜索。ISO/IEC15693中無源標(biāo)簽反饋信號(hào)采用的是ASK/FSK副載波調(diào)制,發(fā)送的基帶信號(hào)正是Manchester編碼。
在基于表1所示的閱讀器發(fā)送的尋卡指令,采取一種普遍化的指令譯碼操作模式。無源標(biāo)簽數(shù)字基帶電路設(shè)計(jì)時(shí),采用實(shí)時(shí)PPM解碼、指令譯碼操作算法電路。
從表1可知一條指令在無源標(biāo)簽準(zhǔn)備接受的時(shí)候會(huì)有兩種情況,一個(gè)是真正指令到來的SOF和EOF結(jié)束,另一個(gè)就是基于防沖撞算法到來的時(shí)隙同步幀EOF,那么在無源標(biāo)簽不知道所到來的指令的意思時(shí),結(jié)合芯片內(nèi)部狀態(tài)寄存器和SOF、EOF,根據(jù)ISO/IEC15693協(xié)議對(duì)指令中Flag和Inventory匹配指令的定義,可以得到圖2所示的指令譯碼流程操作。
Inventory數(shù)據(jù)幀標(biāo)志位包括4種模式,F(xiàn)lag位定義無源標(biāo)簽的反饋信號(hào)格式和信息速率,結(jié)合起來考慮即可以區(qū)分到兩種不同的EOF。
當(dāng)Inventory指令標(biāo)志bit1=1時(shí),我們就進(jìn)入防沖突序列。根據(jù)協(xié)議中采用的算法公式:
在防沖撞時(shí)序里每當(dāng)來一個(gè)EOF幀格式,即是一個(gè)slot時(shí)隙,采取解碼之前先取無源標(biāo)簽UID,然后跟接收到的Mask進(jìn)行比較,會(huì)產(chǎn)生一個(gè)差數(shù),應(yīng)用這個(gè)差數(shù)進(jìn)行每次來臨一個(gè)slot時(shí)隙,N自減1操作,基于功耗的考慮,N的自減1比每次運(yùn)行公式(1)來的更快捷。具體操作流程見圖3。
通過以上對(duì)基于ISO/IEC15693協(xié)議的無源標(biāo)簽的SoC系統(tǒng)結(jié)構(gòu)和防沖撞流程操作的分析,可知無論是系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)還是整個(gè)指令的控制,都需要根據(jù)協(xié)議所有指令的廣義含義設(shè)計(jì),在滿足空中接口定義的信號(hào)要求的同時(shí),還要了解到信號(hào)格式的確定與指令的操作意義是有很大關(guān)系的。電路的設(shè)計(jì)都可以找到其原來的數(shù)學(xué)模型,映射到電路操作方式和信號(hào)格式上,以上設(shè)計(jì)結(jié)構(gòu)和控制流程有待于具體電路驗(yàn)證,在此提出前期研究結(jié)構(gòu)。
[1]張殿東.無線射頻識(shí)別(電子標(biāo)簽)技術(shù)[J].電信技術(shù),2005,2:8-9.
[2]吳春華,陳軍.動(dòng)態(tài)ALOHA法在解決RFID反碰撞問題中的應(yīng)用[J] .電子器件,2003,26 (6) : 173-176.
[3]王笑梅,張朝暉.智能標(biāo)簽技術(shù)及其應(yīng)用[J].金卡工程,2004,5:45-46.
[4]Finkenzeller K.,陳大才譯.射頻識(shí)別(RFID)技術(shù)——無線電感應(yīng)的應(yīng)答器和非接觸IC 卡的原理與應(yīng)用[M].北京: 電子工業(yè)出版社,2001 :141-149.
[5]沈宇超,沈樹群,王海波,等.射頻識(shí)別系統(tǒng)中的防碰撞算法設(shè)計(jì)[J] .電子科學(xué)學(xué)刊,1999,21 (9):702-705.
[6]秦燕青,葛元慶. ISO15693非接觸式IC卡射頻前端電路的設(shè)計(jì)[J].中國集成電路,2008,4:39-44.
[7]劉佳,張有光.基于時(shí)隙的RFID防碰撞算法分析[J].電子技術(shù)應(yīng)用,2007,5: 94-97.
[8]沈劍良.電子標(biāo)簽芯片數(shù)字電路系統(tǒng)研究與實(shí)現(xiàn)[D].國防科學(xué)技術(shù)大學(xué)研究生院工學(xué)碩士學(xué)位論文.
[9]Identification cards – Contactless integrated circuits cards– Vicinity cards – Part 2: Air interface and initialization[S].ISO/IEC FDIS 15693-3, 2000.
[10]Identification cards – Contactless integrated circuits cards– Vicinity cards – Part 3: Anticollision and transmission protocol[S]. ISO/IEC FDIS 15693-3, 2000.