雙模超高頻讀寫(xiě)器的同步和解碼模塊設(shè)計(jì)和實(shí)現(xiàn)
引言
本文引用地址:http://www.ex-cimer.com/article/201703/345029.htmRFID(Radio Frequency Identification)技術(shù)是指以識(shí)別和數(shù)據(jù)交換為目的,利用電磁波進(jìn)行非接觸式雙向通信的自動(dòng)識(shí)別技術(shù)。利用這種技術(shù)可以實(shí)現(xiàn)所有物理對(duì)象的追蹤和管理,在物品管理和物流跟蹤等方面?zhèn)涫荜P(guān)注和應(yīng)用。一個(gè)典型的讀寫(xiě)器系統(tǒng)主要由三部分組成:讀寫(xiě)器,標(biāo)簽和天線。本文所介紹的同步和解碼模塊屬于讀寫(xiě)器接收鏈路的關(guān)鍵模塊,整個(gè)讀寫(xiě)器接收鏈路如圖1所示。
讀寫(xiě)器上的天線接收到標(biāo)簽的返回信號(hào),經(jīng)過(guò)帶通濾波后,與混頻器(Mixer)混頻,用低通濾波器濾掉高頻分量,經(jīng)過(guò)運(yùn)放處理后的兩路信號(hào)給ADC (Analog to Digtal Converter)轉(zhuǎn)換為兩路I、Q數(shù)字基帶信號(hào),數(shù)字基帶處理器接收兩路信號(hào)。帶有同步和解碼功能的處理器,用來(lái)進(jìn)行兩路信號(hào)的判決、同步和解碼,從而恢復(fù)出原始的比特符號(hào),使得讀寫(xiě)器能夠進(jìn)行下一步的通信。
圖1 UHF RFID讀寫(xiě)器接收鏈路
可見(jiàn)數(shù)字同步和解碼模塊是整個(gè)接收鏈路的重點(diǎn)和難點(diǎn)。前人對(duì)這一部分也做了很大的研究。這里,我們?cè)O(shè)計(jì)了一個(gè)新穎的同步和解碼模塊。為了滿(mǎn)足我國(guó)RFID讀寫(xiě)器的發(fā)展,我們的同步和解碼模塊同時(shí)支持ISO18000-6C和GB標(biāo)準(zhǔn),支持兩種標(biāo)準(zhǔn)下的各種返回速率。同步模塊以面積和低功耗為設(shè)計(jì)原則,在設(shè)計(jì)實(shí)現(xiàn)中,(1)采用過(guò)零點(diǎn)同步;(2)設(shè)計(jì)中兩種模式共用一條接收鏈路,通過(guò)外部接口,配置寄存器,選擇標(biāo)準(zhǔn)工作模式,同步模塊能夠快速判斷出標(biāo)簽的理想返回速率并且進(jìn)行返回速率的計(jì)算,各種速率共用一個(gè)判決機(jī)制,大大減小了同步模塊的面積;(3)解碼模塊增加再生信號(hào)相位檢測(cè)和同步時(shí)鐘相位檢測(cè)機(jī)制,提高了解碼的抗干擾能力,降低了誤碼率,并且由同步判決模塊產(chǎn)生同步時(shí)鐘,經(jīng)過(guò)相位檢測(cè)機(jī)制后得到的解碼時(shí)鐘,使得該時(shí)鐘和待解碼信號(hào)恰好相差一個(gè)采樣時(shí)鐘的相位差,這進(jìn)一步降低誤碼率,增加解碼的正確性。
本次設(shè)計(jì)的驗(yàn)證和實(shí)現(xiàn),采用FPGA (Field Progammable Gate Array)和讀寫(xiě)器射頻板共同搭建一套讀寫(xiě)器系統(tǒng)測(cè)試平臺(tái),實(shí)測(cè)結(jié)果表明我們的設(shè)計(jì)能夠容忍+/-22%的頻偏,能夠解調(diào)各種受射頻接收機(jī)、天線、噪聲、直流偏置和距離等因素影響的標(biāo)簽返回信號(hào)。
1 同步和解碼模塊分析與設(shè)計(jì)
根據(jù)ISO18000-6C和GB兩種標(biāo)準(zhǔn),標(biāo)簽接收讀寫(xiě)器發(fā)送的載波能量,通過(guò)后向散射給讀寫(xiě)器信號(hào),返回信號(hào)采用FM0或者M(jìn)iller (2、4、8)編碼,本文的研究以Miller2來(lái)說(shuō)明,圖2展示了Miller基本函數(shù)和信號(hào)狀態(tài)圖,圖3展示了Miller導(dǎo)引頭,可通過(guò)設(shè)置‘Trext’位的值來(lái)選擇導(dǎo)引頭類(lèi)型。FM0與Miller基本類(lèi)似,這里不再贅述。
圖2 Miller基本函數(shù)和信號(hào)狀態(tài)圖
圖3 Miller導(dǎo)引頭
1.1 數(shù)字基帶接收信號(hào)的特征
通過(guò)上述的論述,我們了解到了RFID系統(tǒng)返回信號(hào)的特殊性,首先由于無(wú)源標(biāo)簽沒(méi)有一個(gè)參考時(shí)鐘來(lái)校準(zhǔn)返回的數(shù)據(jù)速率,使得基帶接收到的信號(hào)速率偏差較大,最大可達(dá)+/-22%的頻偏,增加了同步和頻率估計(jì)的難度;接著從上述討論的Miller函數(shù)的基本特征可知,返回信號(hào)的導(dǎo)引頭過(guò)短,過(guò)于理想化,難以達(dá)到同步;最后數(shù)字接收信號(hào)相位和功率受射頻接收機(jī)、天線、多路徑衰減信道、距離和直流偏置等因素的影響,使得SNR (Signal To Noise Ratio)較低。ADC轉(zhuǎn)化之前的接收信號(hào)可由公式(1)來(lái)進(jìn)行描述:
其中 s(t),r(t) , ndc(t)和n(t)分別為讀寫(xiě)器發(fā)射信號(hào),接收信號(hào),直流偏置噪聲和高斯白噪聲, 表示射頻載波頻率, 表示讀寫(xiě)器與標(biāo)簽之間的距離, 是標(biāo)簽返回信號(hào)的初始相位。
為了克服上述RFID接收信號(hào)的這些缺點(diǎn),設(shè)計(jì)思路,采用在接收鏈路上加了窗函數(shù)控制功能,即用一位inx_o來(lái)控制射頻接收模塊的開(kāi)啟和關(guān)閉,在接收時(shí)開(kāi)啟射頻接收,發(fā)送時(shí)關(guān)閉射頻接收,來(lái)緩解直流偏置噪聲的影響,提高SNR。其時(shí)序如圖4所示,這里不屬于本文研究重點(diǎn),不做詳細(xì)說(shuō)明。根據(jù)接收信號(hào)的特征,綜合資源和功耗的考慮,同步器采用過(guò)零檢測(cè)型結(jié)構(gòu),增加累加器判決機(jī)制,多種返回速率計(jì)算模塊復(fù)用,并且由于速率偏差嚴(yán)重,解碼時(shí)鐘由同步器判決提供,解碼器帶有再生信號(hào)相位檢測(cè)和同步時(shí)鐘相位檢測(cè)機(jī)制,具體的分析設(shè)計(jì)和實(shí)現(xiàn)以下討論。
圖4 窗函數(shù)控制時(shí)序圖
1.2 同步模塊分析與設(shè)計(jì)
同步模塊采用過(guò)零檢測(cè)型結(jié)構(gòu),其整個(gè)算法實(shí)現(xiàn)如圖5所示,該結(jié)構(gòu)主要由過(guò)零檢測(cè)處理器、頻率選擇及頻偏計(jì)算器、累加高位符號(hào)判決器、同步時(shí)鐘生成器和符號(hào)判決器組成。讀寫(xiě)器天線接收的射頻信號(hào)經(jīng)過(guò)匹配濾波器后,經(jīng)ADC量化成數(shù)字基帶信號(hào)供同步模塊提取接收頻率、相位和符號(hào)信號(hào)。頻率選擇、協(xié)議標(biāo)準(zhǔn)及接收結(jié)束標(biāo)志等由外部模塊及外部接口提供。
圖5 同步模塊結(jié)構(gòu)示意圖
過(guò)零檢測(cè)型結(jié)構(gòu)相對(duì)于相關(guān)型和數(shù)字PLL(Phase Locked Loop)型結(jié)構(gòu),其結(jié)構(gòu)簡(jiǎn)單,所占資源小,不過(guò)抗干擾性差,噪聲及干擾會(huì)嚴(yán)重惡化過(guò)零點(diǎn)邊沿的檢測(cè)的性能,且其同步性能與過(guò)采樣率密切相關(guān)。所以我們將量化后的數(shù)字信號(hào)進(jìn)行累加運(yùn)算,提取它的高位符號(hào)給過(guò)零檢測(cè)處理器,考慮到返回信號(hào)最大速率40kHz及+/-22%的頻偏,可得累加器位寬計(jì)算公式如下(2):
MSB為累加器的位寬,N為量化器位寬, fsp1為采樣時(shí)鐘。
綜合考慮了同步性能和功耗的影響,采樣時(shí)鐘設(shè)計(jì)為10 MHz,采用6bit量化器,所以MSB為15,即累加器位寬為15。符號(hào)的判別由累加器的最高比特提供,每次過(guò)零標(biāo)志置一時(shí),重新累加,誤差不累積,大大地提高了SNR及抗干擾能力。
以Miller2解碼,640 kHz、320 kHz和80 kHz為例來(lái)說(shuō)明此同步模塊對(duì)頻偏的處理。該同步模塊事先存儲(chǔ)好在采樣頻率下的每種返回速率的理想計(jì)數(shù)值,并且由此計(jì)算出該頻率偏移下的頻率計(jì)數(shù)值,能夠正確判決出接收信號(hào)的最大+/-22%的頻偏。下表1給出了640 kHz、320 kHz和80 kHz下的計(jì)數(shù)值。Miller解碼下,根據(jù)計(jì)數(shù)器cnt_ts與計(jì)數(shù)閾值1和計(jì)數(shù)閾值2的比較,來(lái)進(jìn)行符號(hào)的判決。
2.3 解碼模塊分析與實(shí)現(xiàn)
解碼模塊的解碼時(shí)鐘由同步模塊生成的同步時(shí)鐘處理得到,符號(hào)數(shù)據(jù)由同步模塊提供,同步器生成的同步時(shí)鐘及符號(hào)數(shù)據(jù)信號(hào)均采用邊沿信號(hào)ts_bgn這同一個(gè)起始點(diǎn),并且同步時(shí)鐘的占空比和周期時(shí)時(shí)根據(jù)量化后的數(shù)字基帶信號(hào)的采樣個(gè)數(shù)進(jìn)行調(diào)節(jié),使得同步時(shí)鐘和符號(hào)數(shù)據(jù)之間最多一個(gè)采樣時(shí)鐘周期的相位差,大大提高解碼的正確性。下文會(huì)給出它的驗(yàn)證波形。
該解碼模塊也同時(shí)支持ISO18000-6C和GB兩種標(biāo)準(zhǔn)模式,支持FM0和Miller解碼,這里以和Miller2解碼和ISO18000-6C模式來(lái)說(shuō)明。設(shè)計(jì)中,保證解碼模塊和同步模塊在同一個(gè)時(shí)鐘域下工作,這里采用同一個(gè)采樣時(shí)鐘。
整個(gè)解碼模塊的工作流程圖如圖6所示。從同步模塊產(chǎn)生的符號(hào)數(shù)據(jù)與存儲(chǔ)的映射序列24'b1010_1001_0101_0110_1001_0110進(jìn)行比特級(jí)的比對(duì),若一一對(duì)應(yīng),則表示導(dǎo)引頭同步,f_sync_a置位,反相標(biāo)志位inv_en清零,若比對(duì)完全相反,表示導(dǎo)引頭同步上,f_sync_a置位,inv_en置位,從而達(dá)到再生符號(hào)信號(hào)的相位檢測(cè),能夠解碼返回的正相和反相信號(hào)。與此同時(shí),在序列存儲(chǔ)區(qū)
的2/3區(qū)域進(jìn)行判斷,得到一個(gè)采樣時(shí)鐘周期的信號(hào)脈沖,在該信號(hào)脈沖的下降沿與同步時(shí)鐘進(jìn)行與運(yùn)算,判斷符號(hào)信號(hào)與同步時(shí)鐘是否有(2k+1)p的相位偏移,若有則調(diào)節(jié)時(shí)鐘,若無(wú)則保持原來(lái)的同步模塊的同步時(shí)鐘,從而達(dá)到同步時(shí)鐘的相位檢測(cè),此機(jī)制能夠大大地緩解數(shù)字接收信號(hào)相位和功率受射頻接收機(jī)、天線、多路徑衰減信道、距離等因素的影響造成的解碼的錯(cuò)誤,減小了解碼的誤碼率。之后經(jīng)過(guò)一組時(shí)鐘分頻和選擇鏈路,從而得到Miller解碼時(shí)鐘。之后開(kāi)始數(shù)據(jù)的解碼,解碼的錯(cuò)誤判斷以及解碼數(shù)據(jù)的存儲(chǔ)和提取。該模塊,數(shù)據(jù)解碼的實(shí)現(xiàn)主要是根據(jù)它的‘data_0’和‘data_1’數(shù)據(jù)的特點(diǎn)以及數(shù)據(jù)與Miller解碼時(shí)鐘的相位關(guān)系。解碼模塊接收同步模塊的再生符號(hào)信號(hào)symbol_i和同步時(shí)鐘clk_data_buff,在clk_data_buff時(shí)鐘下,將symbol_i下降沿采樣到buff_ofst,在解碼時(shí)鐘clk_inf上升沿對(duì)symbol_i和buff_ofst的異或信號(hào)進(jìn)行處理,得到f_v_0信號(hào),該信號(hào)用來(lái)判斷Miller (M=2)每一位符號(hào)數(shù)據(jù)的開(kāi)始相位是否出現(xiàn)跳變,若有則f_v_0信號(hào)為高電平,否則為低電平;在解碼時(shí)鐘clk_inf下降沿對(duì)symbol_i和buff_ofst的異或信號(hào)進(jìn)行處理,得到f_v_1信號(hào),該信號(hào)用來(lái)判斷Miller (M=2)每一位符號(hào)數(shù)據(jù)的中間相位是否出現(xiàn)跳變,若有則f_v_1信號(hào)為低電平,否則為高電平。在clk_inf時(shí)鐘的上升沿判斷下,通過(guò)f_v_0 跟f_v_1兩個(gè)標(biāo)志信號(hào),便可得出解碼數(shù)據(jù)r_data。下文會(huì)給出它的仿真波形。
2仿真與驗(yàn)證
2.1 ModleSim仿真結(jié)果
對(duì)于設(shè)計(jì)的同步和解碼模塊,采用ModleSim進(jìn)行功能仿真。先用Matlab建模,模擬產(chǎn)生ADC量化之后的6比特?cái)?shù)字基帶信號(hào),如圖7所示,藍(lán)色實(shí)線表示10dB SNR的數(shù)字基帶信號(hào),黑色虛線表示理想的數(shù)字基帶信號(hào)。從而將Matlab產(chǎn)生的信號(hào)作為輸入信號(hào)源,與ModleSim進(jìn)行聯(lián)合仿真。
圖6 解碼模塊流程圖
圖7 Matlab建模產(chǎn)生的10 dB SNR的數(shù)字基帶信號(hào)和理想數(shù)字基帶信號(hào)
在仿真建立中,先用Matlab產(chǎn)生的理想數(shù)字基帶信號(hào)作為提供給同步模塊的6比特信號(hào)源,仿真波形如圖8所示,當(dāng)有6比特的信號(hào)進(jìn)來(lái)時(shí),首先進(jìn)行標(biāo)準(zhǔn)的返回速率的選擇,接著是頻偏計(jì)數(shù)的計(jì)算,這里是640 kHz的返回速率,得到理想計(jì)數(shù)為14,計(jì)數(shù)閾值1 ts1p_d為10,計(jì)數(shù)閾值2 ts1p_u為21,與表1所示的設(shè)計(jì)值一致,對(duì)于理想的數(shù)字信號(hào)每個(gè)返回速率的周期過(guò)零點(diǎn)數(shù)最多不超過(guò)兩個(gè),即ts_bgn脈沖信號(hào)在一個(gè)返回速率周期中不超過(guò)兩個(gè)脈沖信號(hào),cnt_ts是兩個(gè)ts_bgn脈沖之間的采樣計(jì)數(shù),acc是累加器的累加和,可通過(guò)cnt_ts和acc的最高比特來(lái)共同判斷判決出來(lái)的符號(hào),并提供給內(nèi)部FIFO進(jìn)行存儲(chǔ)。10 dB SNR的數(shù)字基帶信號(hào)同步模塊仿真波形如圖9所示。
圖8 理想數(shù)字基帶同步模塊仿真波形
圖9 10 dB SNR數(shù)字基帶同步模塊仿真波形
對(duì)于判決輸出的符號(hào)信號(hào)d_o,供給解碼模塊進(jìn)行解碼,ModleSim仿真出來(lái)的解碼波形如圖10所示,與協(xié)議標(biāo)準(zhǔn)符合,判決出來(lái)的符號(hào)波形由導(dǎo)引頭、16比特隨機(jī)數(shù)和CRC16校驗(yàn)組成,當(dāng)與序列映射一一對(duì)應(yīng)時(shí),f_sync_a置1,表示導(dǎo)引頭同步上,開(kāi)始數(shù)據(jù)的解碼,clk_inf為最終經(jīng)過(guò)時(shí)鐘檢測(cè)和信號(hào)檢測(cè)之后的解碼時(shí)鐘。在該時(shí)鐘下,對(duì)f_v0和f_v1異或之后的信號(hào)進(jìn)行上升沿采樣,則可得出解碼后的數(shù)據(jù),經(jīng)過(guò)比對(duì)可得出符號(hào)信號(hào)的16比特隨機(jī)數(shù)與data_o的數(shù)據(jù)一一對(duì)用,hdl16和rn16為提取出的解碼數(shù)據(jù)。
圖10 解碼模塊仿真波形
2.2 驗(yàn)證平臺(tái)驗(yàn)證結(jié)果
最終,基于Altera FPGA “Stratix III EP3SL150F1152C2”與讀寫(xiě)器射頻板和標(biāo)簽共同搭建測(cè)試平臺(tái),用于實(shí)測(cè)我們?cè)O(shè)計(jì)的同步和解碼模塊。驗(yàn)證平臺(tái)如圖11所示。圖12是上位機(jī)軟測(cè)試工具。
基于FPGA的實(shí)測(cè),我們可以通過(guò)Quartus II的Signal tap工具來(lái)抓取實(shí)際電路的數(shù)字信號(hào)。通過(guò)上位機(jī)軟件和接口電路,可以控制讀寫(xiě)器的發(fā)送命令,來(lái)測(cè)試整個(gè)讀寫(xiě)器系統(tǒng)的功能,這里主要用來(lái)驗(yàn)證我們的同步和解碼模塊。發(fā)送select和query命令后,Signal tap抓取的波形圖如圖13所示。圖14是抓取的同步模塊和解碼模塊的部分信號(hào)波形圖,可以看出標(biāo)簽的返回速率的偏差以及解碼時(shí)鐘的生成的相關(guān)信號(hào)。
圖11 上位機(jī)軟件測(cè)試工具
圖12 驗(yàn)證平臺(tái)
圖13 發(fā)送select和query命令后的波形
圖14 同步和解碼模塊部分波形圖
3結(jié)論
本文提出了一種新穎的,同時(shí)支持ISO18000-6C和GB兩種標(biāo)準(zhǔn)的同步和解碼模塊的設(shè)計(jì)和實(shí)現(xiàn)。根據(jù)低功耗和面積資源的原則,同步模塊采用過(guò)零檢測(cè)型碼元同步器,增加一級(jí)累加器結(jié)構(gòu)用于過(guò)零檢測(cè),提高了判決的正確性。解碼模塊增加再生信號(hào)相位檢測(cè)和同步時(shí)鐘相位檢測(cè)機(jī)制,大大提高了解碼的抗干擾能力,降低了誤碼率。通過(guò)仿真和驗(yàn)證結(jié)果分析,該結(jié)構(gòu)可正確解調(diào)+/-22%的頻偏,能夠在10 dB SNR下正確地同步和解碼。最終生成的RTL級(jí)數(shù)字電路可作為IP核使用,用于FPGA的調(diào)用或者通過(guò)DC
綜合,作為ASIC的數(shù)字電路,這對(duì)于UHF RFID讀寫(xiě)器全數(shù)字集成具有一定的借鑒意義。
作者:
許玉淇1 肖永光2 唐明華2 成傳品3
1湘潭大學(xué) 物理與光電工程學(xué)院(湖南 湘潭 411105)
2湘潭大學(xué) 材料科學(xué)與工程學(xué)院(湖南 湘潭 411105)
3湖南工程學(xué)院 理學(xué)院(湖南 湘潭 411104)
基金項(xiàng)目:國(guó)家自然科學(xué)基金項(xiàng)目(編號(hào):51472210, 61274107, 61404113)
評(píng)論