舒遠仲,歐陽玉梅+,李明齊,陸小凡
(1.南昌航空大學(xué) 信息工程學(xué)院,江西 南昌330063;2.中國科學(xué)院 上海高等研究院,上海201210)
射頻識別 (radio frequency identification,RFID)技術(shù)是利用無線射頻方式進行非接觸雙向通信的自動設(shè)備識別技術(shù),通過射頻信號與空間耦合傳輸達到識別目標(biāo)和交換數(shù)據(jù)的目的[1]。目前國內(nèi)外市場上RFID讀寫器的開發(fā)大都采用軟件無線電的方式,而此類RFID閱讀器需要專門的硬件平臺像ASIC、DSP、FPGA或者ARM等來進行基帶信號處理,不僅技術(shù)要求高、開發(fā)周期長、成本高且難以支持多協(xié)議和多應(yīng)用。通過研究發(fā)現(xiàn),由虛擬無線電技術(shù)實現(xiàn)RFID讀寫器是實現(xiàn)上述功能的一條有效途徑[2-3]。虛擬無線電技術(shù)利用通用計算機體系結(jié)構(gòu)盡可能地加入軟件成分,即根據(jù)需求設(shè)計或更新設(shè)備驅(qū)動程序和升級軟件,以實現(xiàn)并完善設(shè)備的功能,最終達到理想化的軟件無線電。虛擬無線電采用高性能的D/A和A/D轉(zhuǎn)換器對寬帶射頻信號直接進行變換,并由運行在PC機或工作站上的服務(wù)程序來實現(xiàn)無線電的功能[4]。
本文搭建了基于虛擬無線電技術(shù)的RFID系統(tǒng)測試平臺[5-6]。根據(jù)ISO/IEC 18000-6C協(xié)議標(biāo)準[7],在 PC機上完成基帶信號處理、標(biāo)簽識別層處理和驅(qū)動層與應(yīng)用層的數(shù)據(jù)通信,實現(xiàn)讀寫器與標(biāo)簽之間從建立通信鏈路到通信完成所涉及的信號波形和信令交互的測試[8-9]。基于多核PC的軟件無線電平臺,可以根據(jù)用戶需求靈活配置射頻前端,能夠在一臺計算機上實現(xiàn)多種通信協(xié)議,而且易于開發(fā)和軟件升級,對于開發(fā)者和用戶來說,都具有極大的便利性。
本系統(tǒng)由PC機、邏輯控制模塊FPGA、射頻前端、天線和標(biāo)簽組成,系統(tǒng)結(jié)構(gòu)框圖如圖1所示。其中設(shè)備驅(qū)動中包含了對標(biāo)簽識別層處理、基帶信號處理以及邏輯控制模塊的功能設(shè)計;邏輯控制模塊通過PCIe總線與PC機連接,本系統(tǒng)中邏輯控制模塊FPGA完成AD/DA控制、RF切換、功放、發(fā)送和接收數(shù)據(jù)控制的功能;射頻前端模塊中的射頻卡采用LMS6002D芯片來實現(xiàn)收發(fā)功能。
圖1 虛擬無線電平臺系統(tǒng)框架
系統(tǒng)通過應(yīng)用層調(diào)用設(shè)備驅(qū)動程序中標(biāo)簽識別層處理函數(shù)產(chǎn)生讀寫器指令,編碼后經(jīng)FPGA數(shù)據(jù)通道送入射頻前端進行DA轉(zhuǎn)換、功放、上變頻等處理,再由天線發(fā)射到周圍空間。標(biāo)簽進入讀寫器的識別區(qū)域內(nèi)后上電,并對讀寫器指令進行相應(yīng)的處理,若需要應(yīng)答,則標(biāo)簽將應(yīng)答信息通過天線反向散射給讀寫器的接收天線進入射頻前端,經(jīng)濾波、下變頻和AD轉(zhuǎn)換等處理后經(jīng)FPGA數(shù)據(jù)通道傳送到PC機中進行解調(diào)、解碼等基帶信號恢復(fù)處理,識別出標(biāo)簽的應(yīng)答數(shù)據(jù)。以軟件無線電方式實現(xiàn)的RFID閱讀器,需在FPGA或DSP上進行基帶信號處理[3],需設(shè)計基帶電路,而本系統(tǒng)的基帶信號處理和標(biāo)簽識別層處理通過軟件編程的方式在PC機上完成,便可在PC機上對射頻前端靈活配置,具有更好的靈活性、通用性和開放性。
RFID系統(tǒng)下行采用PIE編碼,其中數(shù)據(jù) “0”的時長為一個Tari,Tari的取值范圍為6.25us<=Tari<=25us,對應(yīng)數(shù)據(jù)速率為40KHz-160KHz。數(shù)據(jù) “1”的時長為1.5Tari-2Tari,相應(yīng)時長為9.375us<=Tari<=50us,對應(yīng)數(shù)據(jù)速率為20KHz-106.7KHz。如果下行鏈路數(shù)據(jù)“0”和數(shù)據(jù) “1”的個數(shù)相同,則平均每個數(shù)據(jù)Bit時長為7.8125us-37.5us,可推算出其對應(yīng)數(shù)據(jù)速率為26.7KHz-128KHz[7]。
標(biāo)簽的反射散射鏈路頻率即FM0數(shù)據(jù)速率或Miller副載波的頻率由TRcal和除法比率DR決定,即BLF=DR/TRcal。協(xié)議規(guī)定,讀寫器對標(biāo)簽的校準符號RTcal取值為2.5Tari<=RTcal<=3Tari,標(biāo)簽對讀寫器的校準符號TRcal取值為:1.1RTcal<=TRcal<=3RTcal,所以相應(yīng)時長為17.1875us<=TRcal<=225us,系統(tǒng)規(guī)定33.3us<=TRcal<=200us,DR=8或64/3,所以對應(yīng)的上行鏈路頻率BLF為40KHz-640KHz。即采用FM0編碼時數(shù)據(jù)速率為40KHz-640KHz;采用Miller編碼時數(shù)據(jù)速率為5KHz-320KHz[7]。
當(dāng)讀寫器發(fā)送完一條指令后等待下一條讀寫器指令的時間即為讀寫器最大處理時延,如果在讀寫器響應(yīng)標(biāo)簽的時間T2內(nèi)沒有發(fā)出下一條指令,則此次通信失敗[7]。
UHF RFID系統(tǒng)的反向散射鏈路頻率BLF范圍為40kHz-640kHz,讀寫器的最大處理時延的計算公式為
其 中, Tpri = 1/BLF,T(RN16)= 16Tpri,T1=MAX(RTcal,10Tpri),T2=20Tpri,采用長前導(dǎo)時T(Pr eamble)=18Tpri,采用短前導(dǎo)時T(Pr eamble)=6Tpri。
因此系統(tǒng)的鏈路頻率即數(shù)據(jù)速率在40kHz-640kHz范圍內(nèi)時,采用長前導(dǎo)對應(yīng)讀寫器的最大處理時延范圍為100us-1600us;采用短前導(dǎo)對應(yīng)讀寫器的最大處理時延范圍為81.25us-1300us。超出最大時延,讀寫器發(fā)出的指令和標(biāo)簽的響應(yīng)都無效。
系統(tǒng)在讀寫器發(fā)送完每一條指令并接收到標(biāo)簽反饋的信息后,對讀寫器處理反饋信息和生成下一條指令的處理時間有嚴格限制[7]。在解調(diào)數(shù)據(jù)過程中,同步和檢測操作耗時較大,下面針對讀寫器與標(biāo)簽第一次交互的同步耗時進行分析,發(fā)送完Query后,從0開始計時,如圖2所示。
圖2 讀寫器與標(biāo)簽第一次交互時序圖
以鏈路頻率BLF=200KHz,采樣率Fs=44MHz,采用長前導(dǎo)為例,此時系統(tǒng)各項參數(shù)設(shè)置為Tpri=5us,Sam=220點,T1=MAX (RTcal,10Tpri)=50us,長前導(dǎo) Preamble=18Tpri=90us,RN16=16Tpri=80us,T2=20.0Tpri=100us。
假設(shè)系統(tǒng)采用的同步算法為滑動相關(guān)[7],系統(tǒng)的同步策略為:在讀寫器發(fā)送完成一條指令 (Query)后,立即進入接收同步狀態(tài)。同步數(shù)據(jù)的長度為90us,則相關(guān)運算實際將起始于第30us。有效的處理時延為T1+T(Preamble)+T(RN16)+T2-30=290us。在 T1的時間內(nèi)共有2200個采樣點,在正常情況下需要進行2200次相關(guān)操作才能遍歷到前導(dǎo)處。
設(shè)一次相關(guān)運算的時間為t,在理想狀態(tài)下 (即前導(dǎo)剛發(fā)送完畢,讀寫器就同步到正確位置),由圖2上的時序關(guān)系可知,2200*t=140-30,即t=0.05us,所以0.05us為系統(tǒng)在最理想狀態(tài)下一次相關(guān)運算的處理時延。在非理想狀態(tài)下,同步到正確位置的時刻必須在第140us~第320us以內(nèi),并且必須小于第320us,否則無法進行之后的數(shù)據(jù)處理。由式 (1)可知,t的取值范圍為0.05us-0.132us
從上述結(jié)論可以看出,即使是最不理想的情況,對單次相關(guān)操作的處理時延要求也在0.1us的量級。而實際系統(tǒng)根本無法支持這個速率。由于反向鏈路的數(shù)據(jù)散射周期為5us,在采樣率為44MHz的情況下,對應(yīng)的采樣點數(shù)為220。在不嚴重損失鏈路性能的情況下,根據(jù)采樣定律可以每隔35個采樣點做一次相關(guān)操作,僅需進行63次相關(guān)操作,由算式 (2)可得t的取值范圍為1.75us-4.6us
因此,最大允許單次相關(guān)時間為4.6us。但是,為了進行之后的信號解調(diào)、數(shù)據(jù)面處理和信號發(fā)射等操作,必須預(yù)留相當(dāng)一部分時間。假定不考慮數(shù)據(jù)面處理和發(fā)送信號這部分時延,則主要的耗時模塊為同步和信號解調(diào)這兩個模塊。
相關(guān)操作對應(yīng)220*18=3960個采樣點,若進行10倍下采樣則為396點相關(guān),再乘以35次,預(yù)期為13860點相關(guān)。信號檢測對應(yīng)16*220=3520點相關(guān),10倍下采樣后為352點相關(guān)。設(shè)每點相關(guān)需耗時t,由算式 (3)可得t<0.0204us
于是一次同步相關(guān)的時間小于396*0.0204us=8.0784us,信號檢測時間小于352*0.0204us=7.1808us。
同理,若采用短前導(dǎo),設(shè)每點相關(guān)需耗時t,由算式(4)可得t<0.0583us
于是一次同步相關(guān)的時間小于132*0.0583us=7.6965us,信號檢測時間小于352*0.0583us=20.5216us。
UHF頻段RFID系統(tǒng)的典型間距為10m,電磁波傳輸時延為0.033us。假如以40MHz D/A采樣率來考慮,則會有1.32個采樣點的時延。上行鏈路數(shù)據(jù)傳輸速率為40 KHz ≤BLF ≤640 KHz ,對應(yīng)1.5625us~25us (62.5 Sam~1000Sam,Sam=200)。因此,無線空間傳播時延可以忽略。
ISO/IEC18000-6C協(xié)議標(biāo)準規(guī)定了R=>T和T=>R鏈路定時,整個實時通信過程需在數(shù)毫秒內(nèi)完成,其中包含了2條指令以及2條應(yīng)答交互的實時握手操作,即讀寫器發(fā)Query指令,標(biāo)簽反向散射RN16;讀寫器對RN16進行解調(diào)解碼,作為ACK指令的內(nèi)容實時生成ACK并發(fā)送出去,標(biāo)簽接收到ACK指令后,判斷其中的RN16與前一條應(yīng)答中的16位隨機數(shù)是否相同,若相同則響應(yīng)PC+EPC+CRC16,完成兩次握手操作,即標(biāo)簽身份驗證成功;若不相同則標(biāo)簽無響應(yīng),此次通信失?。?,10]。
在基于虛擬無線電的測試平臺上,設(shè)計實現(xiàn)標(biāo)簽識別層處理和基帶信號處理功能的程序[11],其中標(biāo)簽識別層功能包括生成讀寫器指令,分析并根據(jù)標(biāo)簽應(yīng)答的信息生成相應(yīng)的指令來完成對標(biāo)簽的身份驗證、讀和寫等操作;基帶信號處理包括對讀寫器指令進行編碼、調(diào)制,并對標(biāo)簽響應(yīng)的信號進行解調(diào)解碼?;谔摂M無線電的RFID系統(tǒng)由驅(qū)動態(tài)應(yīng)用程序調(diào)用驅(qū)動程序,以觸發(fā)虛擬驅(qū)動設(shè)備工作。若觸發(fā)成功,則生成并發(fā)送讀寫器指令,開始對標(biāo)簽進行身份驗證或訪問等操作;若觸發(fā)失敗,則提示用戶重新觸發(fā)測試流程圖如圖3所示。
圖3 測試流程
在PC機的接口驅(qū)動中設(shè)計多套標(biāo)簽協(xié)議程序,并提供相應(yīng)的函數(shù)接口給應(yīng)用層,應(yīng)用層通過調(diào)用相應(yīng)的函數(shù)即可實現(xiàn)多協(xié)議多模式的工作方式?;谔摂M無線電的測試平臺,由射頻前端獲取被測信號,而之后的數(shù)據(jù)采集、分析、處理和顯示都在PC機上通過軟件實現(xiàn),不需要三方儀器來輔助完成。
本次測試以ISO/IEC18000-6C協(xié)議標(biāo)準為例,在SORA平臺上完成。系統(tǒng)下行鏈路PIE編碼參數(shù)Tari=10us,采樣率Fs=44MHz,載波頻率為902MHz;上行鏈路采用FM0編碼,前導(dǎo)采用18位的長前導(dǎo)碼,BLF=200KHz。若觸發(fā)成功,則讀寫器發(fā)出Query指令,標(biāo)簽在T1<=50us的時間內(nèi)反向散射RN16,讀寫器在收到RN16后T2<=100us的時間內(nèi)對RN16進行解調(diào)解碼,生成ACK指令并發(fā)送出去,其中在解調(diào)RN16和生成ACK的過程中,讀寫器必須向標(biāo)簽持續(xù)發(fā)送空載波CW,以防止標(biāo)簽斷電[12]。如果標(biāo)簽掉電,則此次通信失敗,讀寫器重新發(fā)送盤存指令,開始新的盤存周期。測試結(jié)果如圖4所示。
圖4 標(biāo)簽響應(yīng)數(shù)據(jù)波形
基于虛擬無線電的測試平臺在數(shù)據(jù)獲取和分析上不需要通過第三方儀器來輔助完成,接收端將包含標(biāo)簽響應(yīng)信息的數(shù)據(jù)或基帶信號處理的數(shù)據(jù)直接以寫文件的形式保存到dat文件中,便可對數(shù)據(jù)進行離線分析。
圖4為在軟件Cool edit pro中顯示的接收端截取的數(shù)據(jù),即閱讀器與標(biāo)簽第一次交互的數(shù)據(jù),其中發(fā)送Query指令前面的空載波可以為標(biāo)簽提供能量,使標(biāo)簽上電。標(biāo)簽將響應(yīng)的信號調(diào)制到902MHz的載波上,與讀寫器發(fā)送的信號一起由接收端采集回來。按照協(xié)議標(biāo)準,發(fā)送特定格式的Query指令,本次測試規(guī)定系統(tǒng)上行鏈路采用FM0編碼,前導(dǎo)采用含導(dǎo)頻音的長前導(dǎo)等參數(shù)的設(shè)置。分析標(biāo)簽反射的數(shù)據(jù)可以看出,鏈接時間和同步碼數(shù)據(jù)格式都符合協(xié)議標(biāo)準。
為驗證系統(tǒng)物理層解調(diào)能力,對標(biāo)簽響應(yīng)的RN16進行解調(diào)、解碼,解碼后的數(shù)據(jù)如圖5所示,可讀出標(biāo)簽此次響應(yīng)的16位隨機數(shù)為:0110 0100 1000 0011,與圖4中的波形對比可知,RN16解調(diào)正確。
為保證在T2的時間內(nèi)能完成RN16的解調(diào)和ACK指令的生成,需在不失真的前提下降低解調(diào)算法復(fù)雜度,提高解調(diào)效率。在T2的時間內(nèi)完成RN16的解調(diào)和ACK指令的生成,并將ACK發(fā)送到周圍磁場空間,標(biāo)簽天線接收到ACK,判斷RN16有效后響應(yīng)PC+EPC+CRC-16。標(biāo)簽響應(yīng)的PC+EPC+CRC-16如圖6所示,此次標(biāo)簽響應(yīng)的數(shù)據(jù)為146位,包含18位長前導(dǎo)碼、16為CRC校驗碼、16位PC位和96位的EPC,其中EPC為截斷的EPC。標(biāo)簽正確響應(yīng)PC、EPC、CRC-16,即實現(xiàn)了讀寫器與標(biāo)簽的兩次握手操作,完成對標(biāo)簽的身份驗證,證明本RFID系統(tǒng)的可實施性。
圖5 RN16解調(diào)波形
圖6 標(biāo)簽響應(yīng)的PC+EPC+CRC-16
上述實驗證明在PC機上進行標(biāo)簽識別層處理、基帶信號處理以及數(shù)據(jù)分析的正確性和簡易性。以軟件為主的讀寫器實現(xiàn)方式,可根據(jù)用戶需求,便捷地改進算法,完善系統(tǒng)的功能。
本文基于虛擬無線電平臺,完成兩次實時交互握手操作,即完成了對標(biāo)簽的身份認證,由此驗證了系統(tǒng)的可行性,并可在此基礎(chǔ)上對標(biāo)簽進行讀或?qū)懙仍L問操作。在PC機上通過對射頻參數(shù)的配置和多套協(xié)議的軟件設(shè)計,使得系統(tǒng)具有多種模式的工作方式?;谔摂M無線電RFID讀寫器的應(yīng)用程序具有可重用性的優(yōu)點,其可視化的編程環(huán)境支持系統(tǒng)的迅速開發(fā)和驗證,易于實現(xiàn)。
:
[1]LIU Yu,GUAN Qiang.RFID system testing and application practices[M].Beijing:Publishing House of Electronics Industry,2010:129-175 (in Chinese).[劉禹,關(guān)強.RFID系統(tǒng)測試與應(yīng)用實務(wù) [M].北京:電子工業(yè)出版社,2010:129-175.]
[2]LIU Yan.RFID communication testing technology and application [M].Beijing:Publishing House of Electronics Industry,2010:223-241 (in Chinese). [劉巖.RFID通信測試及應(yīng)用[M].北京:電子工業(yè)出版社,2010:223-241.]
[3]CAI Pengpeng.UHF RFID protocol interface testing with soft-ware defined radio [D].Hangzhou:Hangzhou Dianzi University,2011:13-25 (in Chinese). [蔡鵬鵬.UHF RFID接口協(xié)議測試系統(tǒng)的軟件無線電實現(xiàn) [D].杭州:杭州電子科技大學(xué),2011:13-25.]
[4]ZHANG Li.Realization of virtual radio receiver and research of the key algorithm [D].Xi’an:Xi’an University of Electronic Scienceand Technology,2007:21-32 (in Chinese). [張麗.虛擬無線電接收機的實現(xiàn)與算法研究 [D].西安:西安電子科技大學(xué),2007:21-32.]
[5]ZHOU Chenfeng,HE Yigang,HOU Zhouguo,et al.The theory and design of baseband module for UHF RFID interrogator[J].Microcomputer Information,2009,25 (11):242-244(in Chinese). [周陳鋒,何怡剛,侯周國,等.超高頻RFID讀寫器基帶模塊的原理與設(shè)計 [J].微計算機信息,2009,25 (11):242-244.]
[6]CHEN Ni,ZHANG Chun,WANG Jingchao.Design of an UHF RFID interrogator baseband processor [J].Semiconductor Technology,2009,34 (4):370-374 (in Chinese). [陳逆,張春,王敬超.超高頻RFID讀寫器基帶處理器的設(shè)計[J].半導(dǎo)體技術(shù),2009,34 (4):370-374.]
[7]EPCglobal “EPC radio frequency identity protocols class-1generation-2UHF RFID protocol for communications at 860MHz-960MHz version 1.2.0”[S].2008.
[8]HOU Zhouguo,HE Yigang,LI Bing,et al.Measurement of the passive UHF EFID tag’s performance based on software-defined radio [J].Acta Physica Sinica,2010,59 (8):5606-5612(in Chinese).[侯周國,何怡剛,李兵,等.基于軟件無線電的無源超高頻RFID標(biāo)簽性能測試 [J].物理學(xué)報,2010,59 (8):5606-5612.]
[9]ZHENG Yang.RFID tag antenna design and measurement[D].Beijing:Beijing University of Posts and Telecommunications,2010:44-48 (in Chinese). [鄭洋.RFID系統(tǒng)標(biāo)簽天線設(shè)計與測量 [D].北京:北京郵電大學(xué),2010:44-48.]
[10]Information technology,automatic identification and data capture techniques-RFID device conformance test methods-Part 6:Test methods for air interface communication at 860-960MHz[S].2006.
[11]WU Congzi.The design of coder-decoder and analysis of air interface performance in system [D].Changsha:Hunan University,2010:39-43 (in Chinese). [伍聰子.RFID系統(tǒng)空中接口性能分析與編碼設(shè)計 [D].長沙:湖南大學(xué),2010:39-43.]
[12]LIU Shaoxin.The research and implementation of signal monitor algorithm in RFID communications [D].Wuhan:Huazhong University of Science and Technology,2006:41-52 (in Chinese).[劉少新.無線射頻識別信號監(jiān)控算法的研究與實現(xiàn) [D].武漢:華中科技大學(xué),2006:41-52.]