RFID系统信源编码方法有哪些?
在实际应用的RFID系统中,选择编码方法的考虑因素有很多。例如,无源标签需要在与读写器的通信过程中获得自身的能量供应;为了保证系统的正常工作,信道编码方式必须保证不中断读写器对电子标签的能量供应。数据编码一般又称为基带数据编码,常用的数据编码方法有反向不归零编码、曼彻斯特编码、密勒编码、修正密密勒编码等,下面将详细介绍这几种编码。
1. 反向不归零编码
反向不归零编码(Non Return Zero,NRZ)用高电平表示二进制“1”,低电平表示二进制“0”。反向不归零码一般不宜用于实际传输中,主要有以下原因:
存在直流分量,信道一般难以传输零频附近的频率分量;
接收端判决门限与信号功率有关,使用不方便;
不能直接用来提取位同步信号,因为NRZ中不含有位同步信号频率成分;
要求传输线中有一根接地。
在RFID系统应用中,为了能很好地解决读写器和电子标签通信时的同步问题,往往不使用数据的反向不归零编码直接对射频信号进行调制,而是将数据的反向不归零码进行某种编码后再对射频信号进行调制,所采用的编码方法主要有曼彻斯特编码、密勒码和修正密勒码等。
2. 曼彻斯特编码
曼彻斯特编码也称为分相编码(Split Phase Coding),某位的值是由半个位周期(50%)的电平变化(上升/下降)来表示的。在半个位周期时的负跳变(即电平由1变为0)表示二进制“1”,正跳变(即电平由0变为1)表示二进制“0”。
在采用副载波的负载调制或者反向散射调制时,曼彻斯特编码通常用于从电子标签到读写器方向的数据传输,这有利于发现数据传输的错误。比如,当多个电子标签同时发送的数据位有不同值时,接收的上升边和下降边互相抵消,导致在整个位长度副载波信号是不跳变的,但由于该状态是不允许的,所以读写器利用该错误就可以判定碰撞发生的具体位置。
曼彻斯特编码是一种自同步的编码方式,其时钟同步信号隐藏在数据波形中。在曼彻斯特编码中,每一位的中间跳变既可作为时钟信号,又可作为数据信号,因此具有自同步能力和良好的抗干扰性能。
3. 密勒(Miller)编码
密勒编码规则为:对于原始符号“1”,用码元起始不跳变而中心点出现跳变来表示,即用10或01表示;对于原始符号“0”,则分成单个“0”还是连续“0”予以不同的处理,单个“0”时,保持“0”前的电平不变,即在码元边界处电平不跳变,在码元中间点电平也不跳变;对于连续两个“0”,则使连续两个“0”的边界处发生电平跳变。 密勒码的解码方法是以2倍时钟频率读入位值后再判决解码的。首先,读出0→1的跳变后,表示获得了起始位,然后每两位进行一次转换:01和10都译为1,00和11都译为0。密勒码停止位的电位随前一位的不同而变化,既可能为00,也可能为11,因此,为保证起始位的一致,停止位后必须规定位数的间歇。此外,在判别时若结束位为00,则问题不大,后面再读入也为00,则可判知前面一个00为停止位。但若停止位为11,则再读入4位才为0000,而实际上,停止位为11,而不是第一个00。解决这个问题的办法就是预知传输的位数或以字节为单位传输,这两种方法在RFID系统中均可实现。
4. 修正密勒码
修正密勒码是ISO/IEC 14443(Type-A)规定使用的从读写器到电子标签的数据传输编码。以ISO/IEC 14443(Type-A)为例,修正密勒码的编码规则为:每位数据中间有个窄脉冲表示“1”,数据中间没有窄脉冲表示“0”,当有连续的“0”时,从第二个“0”开始在数据的起始部分增加一个窄脉冲。该标准还规定起始位的开始处也有一个窄脉冲,而结束位用“0”表示。如果有两个连续的位开始和中间部分都没有窄脉冲,则表示无信息。
该规则描述为:Type-A首先定义如下三种时序。
时序X:在64/f处产生一个凹槽。
时序Y:在整个位期间(128/f)不发生调制。
时序Z:在位期间的开始处产生一个凹槽。
其中,f为载波频率,即13.56 MHz,凹槽脉冲的时间长度为0.5~3.0 μs,用这三种时序对数据帧进行编码即修正密勒码,其编码规则如下。
逻辑1为时序X。
逻辑0为时序Y。
数据传输开始时用时序Z表示。
数据传输结束时用逻辑0加时序Y表示。
无信息传输时用至少两个时序Y表示。
但两种情况除外:若相邻有两个或者更多的0,则从第二个0开始采用时序Z;直接与起始位相连的所有0,用时序Z表示。实际上是曼彻斯特编码的反相波形,用它的上升沿输出便产生了密勒码,而用其上升沿产生一个凹槽就是修正密勒码。