RFID信源編碼方法
RFID系統(tǒng)信源編碼是指將模擬信號轉(zhuǎn)換成數(shù)字信號,或?qū)?shù)字信號編碼成更適合傳輸?shù)臄?shù)字信號。RFID系統(tǒng)中讀寫器和電子標(biāo)簽所存儲的信息都已經(jīng)是數(shù)字信號,因此本書介紹的編碼均為數(shù)字信號的編碼。
在實(shí)際應(yīng)用的RFID系統(tǒng)中,選擇編碼方法的考慮因素有很多。例如,無源標(biāo)簽需要在與讀寫器的通信過程中獲得自身的能量供應(yīng);為了保證系統(tǒng)的正常工作,信道編碼方式必須保證不中斷讀寫器對電子標(biāo)簽的能量供應(yīng)。數(shù)據(jù)編碼一般又稱為基帶數(shù)據(jù)編碼,常用的數(shù)據(jù)編碼方法有反向不歸零編碼、曼徹斯特編碼、密勒編碼、修正密密勒編碼等,這幾種典型的編碼方式如圖所示,下面將詳細(xì)介紹這幾種編碼。
幾種數(shù)據(jù)編碼波形圖
1. 反向不歸零編碼
反向不歸零編碼(Non Return Zero,NRZ)用高電平表示二進(jìn)制“1”,低電平表示二進(jìn)制“0”。反向不歸零碼一般不宜用于實(shí)際傳輸中,主要有以下原因:
1)存在直流分量,信道一般難以傳輸零頻附近的頻率分量;
2)接收端判決門限與信號功率有關(guān),使用不方便;
3)不能直接用來提取位同步信號,因?yàn)镹RZ中不含有位同步信號頻率成分;
4)要求傳輸線中有一根接地。
5)在RFID系統(tǒng)應(yīng)用中,為了能很好地解決讀寫器和電子標(biāo)簽通信時(shí)的同步問題,往往不使用數(shù)據(jù)的反向不歸零編碼直接對射頻信號進(jìn)行調(diào)制,而是將數(shù)據(jù)的反向不歸零碼進(jìn)行某種編碼后再對射頻信號進(jìn)行調(diào)制,所采用的編碼方法主要有曼徹斯特編碼、密勒碼和修正密勒碼等。
2. 曼徹斯特編碼
曼徹斯特編碼也稱為分相編碼(Split Phase Coding),某位的值是由半個(gè)位周期(50%)的電平變化(上升/下降)來表示的。在半個(gè)位周期時(shí)的負(fù)跳變(即電平由1變?yōu)?)表示二進(jìn)制“1”,正跳變(即電平由0變?yōu)?)表示二進(jìn)制“0”。
在采用副載波的負(fù)載調(diào)制或者反向散射調(diào)制時(shí),曼徹斯特編碼通常用于從電子標(biāo)簽到讀寫器方向的數(shù)據(jù)傳輸,這有利于發(fā)現(xiàn)數(shù)據(jù)傳輸?shù)腻e誤。比如,當(dāng)多個(gè)電子標(biāo)簽同時(shí)發(fā)送的數(shù)據(jù)位有不同值時(shí),接收的上升邊和下降邊互相抵消,導(dǎo)致在整個(gè)位長度副載波信號是不跳變的,但由于該狀態(tài)是不允許的,所以讀寫器利用該錯誤就可以判定碰撞發(fā)生的具體位置。
曼徹斯特編碼是一種自同步的編碼方式,其時(shí)鐘同步信號隱藏在數(shù)據(jù)波形中。在曼徹斯特編碼中,每一位的中間跳變既可作為時(shí)鐘信號,又可作為數(shù)據(jù)信號,因此具有自同步能力和良好的抗干擾性能。
3. 密勒(Miller)編碼
密勒編碼規(guī)則為:對于原始符號“1”,用碼元起始不跳變而中心點(diǎn)出現(xiàn)跳變來表示,即用10或01表示;對于原始符號“0”,則分成單個(gè)“0”還是連續(xù)“0”予以不同的處理,單個(gè)“0”時(shí),保持“0”前的電平不變,即在碼元邊界處電平不跳變,在碼元中間點(diǎn)電平也不跳變;對于連續(xù)兩個(gè)“0”,則使連續(xù)兩個(gè)“0”的邊界處發(fā)生電平跳變。密勒碼的編碼規(guī)則如表所示。
密勒碼編碼方法
密勒碼的解碼方法是以2倍時(shí)鐘頻率讀入位值后再判決解碼的。首先,讀出0→1的跳變后,表示獲得了起始位,然后每兩位進(jìn)行一次轉(zhuǎn)換:01和10都譯 為1,00和11都譯為0。密勒碼停止位的電位隨前一位的不同而變化,既可能為00,也可能為11,因此,為保證起始位的一致,停止位后必須規(guī)定位數(shù)的間歇。此外,在判別時(shí)若結(jié)束位為00,則問題不大,后面再讀入也為00,則可判知前面一個(gè)00為停止位。但若停止位為11,則再讀入4位才為0000,而實(shí)際上,停止位為11,而不是第一個(gè)00。解決這個(gè)問題的辦法就是預(yù)知傳輸?shù)奈粩?shù)或以字節(jié)為單位傳輸,這兩種方法在RFID系統(tǒng)中均可實(shí)現(xiàn)。
4. 修正密勒碼
修正密勒碼是ISO/IEC 14443(Type-A)規(guī)定使用的從讀寫器到電子標(biāo)簽的數(shù)據(jù)傳輸編碼。以ISO/IEC 14443(Type-A)為例,修正密勒碼的編碼規(guī)則為:每位數(shù)據(jù)中間有個(gè)窄脈沖表示“1”,數(shù)據(jù)中間沒有窄脈沖表示“0”,當(dāng)有連續(xù)的“0”時(shí),從第二個(gè)“0”開始在數(shù)據(jù)的起始部分增加一個(gè)窄脈沖。該標(biāo)準(zhǔn)還規(guī)定起始位的開始處也有一個(gè)窄脈沖,而結(jié)束位用“0”表示。如果有兩個(gè)連續(xù)的位開始和中間部分都沒有窄脈沖,則表示無信息。
該規(guī)則描述為:Type-A首先定義如下三種時(shí)序。
1)時(shí)序X:在64/f處產(chǎn)生一個(gè)凹槽。
2)時(shí)序Y:在整個(gè)位期間(128/f)不發(fā)生調(diào)制。
3)時(shí)序Z:在位期間的開始處產(chǎn)生一個(gè)凹槽。
其中,f為載波頻率,即13.56 MHz,凹槽脈沖的時(shí)間長度為0.5~3.0 μs,用這三種時(shí)序?qū)?shù)據(jù)幀進(jìn)行編碼即修正密勒碼,其編碼規(guī)則如下。
1)邏輯1為時(shí)序X。
2)邏輯0為時(shí)序Y。
3)數(shù)據(jù)傳輸開始時(shí)用時(shí)序Z表示。
4)數(shù)據(jù)傳輸結(jié)束時(shí)用邏輯0加時(shí)序Y表示。
5)無信息傳輸時(shí)用至少兩個(gè)時(shí)序Y表示。
但兩種情況除外:若相鄰有兩個(gè)或者更多的0,則從第二個(gè)0開始采用時(shí) 序Z;直接與起始位相連的所有0,用時(shí)序Z表示。
修正密勒碼編碼電路原理圖和時(shí)序圖如圖所示。假設(shè)輸入數(shù)據(jù)為011010,則圖(a)所示原理圖中有關(guān)部分的波形如圖b)所示。其中,波形c實(shí)際上是曼徹斯特編碼的反相波形,用它的上升沿輸出便產(chǎn)生了密勒碼,而用其上升沿產(chǎn)生一個(gè)凹槽就是修正密勒碼。
修正密勒碼編碼電路原理圖和時(shí)序圖