NFC的通信机制
作为一种虚拟连接器,NFC可以用来在设备上迅速实现各种无线通信。只需将2个NFC设备靠近,NFC就能进行无线配置并初始化其他无线协议,如蓝牙和IEEE802.11,从而可以进行远距离通信或者数据传输。NFC技术支持3种不同的操作模式:
·读写模式,对Felica或IS014443A卡的读写;
·卡模式,如Felica和ISOl4443A/MIEARE卡之间的通信;
·NFC模式,NFC芯片间的通信。
NFC国际标准ISO/IECl8092、ISO/IEC21481涵盖了通信模式、调制和编码、防冲突机制、帧结构等内容。
1.通信模式NFC工作在13.56MHz频段,支持主动和被动两种工作模式和多种传输数据速率,见下表。在主动模式下,主呼和被呼各自发出射频场来激活通信,在被动工作模式下,如果主呼发出射频场,被呼将响应并且装载一种调制模式激活通信。也就是说在一对NFC通信设备中(主呼和被呼),至少有一方是主动的。
NFC传输模式与传输速率 模式传输速率R(kbit/s)成数因子D 1主动或被动1061 2主动或被动2122 3主动或被动4244 4主动8478 5主动169516 6主动339032 7主动678064NFC设备在传输有效数据前必须先通过有关协议选定一种通信模式和传输数据速率,在数据传输过程中,选定的通信模式和传输数据速率不能改变。数据传输速率R与射频工之问的关系为:
R = (fcxD)/128(kbit/s)
其中,D是一个乘数因子。
2.调制技术目前,NFC标准中对于高速传输(>424kbit/s)还没有做出具体的规定。在低速传输时采用了幅移键控(ASK)调制,但对于不同的传输速率具体的调制参数是不同的。
ASK是一种相对简单的调制方式。ASK相当于模拟信号中的调幅,只不过与载频信号相乘的是二进制数码而已。幅移就是把频率、相位作为常量,而把振幅作为变量,信息比特是通过载波的幅度来传递的。二进制振幅键控(2ASK),由于调制信号只有0或1两个电平,相乘的结果相当于将载频或者关断,或者接通,它的实际意义是当调制的数字信号为1时,传输载波:当调制的数字信号为0时,不传输载波,原理如图所示,其中S(t)为基带矩形脉冲。
一般载波信号用余弦信号,而调制信号是把数字序列转换成单极性的基带矩形脉冲序列,图7.10ASK调制原理而这个通断键控的作用就是把这个输出与载波相乘,就可以把频谱搬移到载波频率附近,实现2ASK。实现后的2ASK波形如图所示。
3.编码技术
NFC的编码包括信源编码和纠错编码2部分。
(1)信源编码不同的数据传输速率对应的信源编码的规则也不一样。对于模式1,信源编码的规则类似于密勒(Miller)码。具体的编码规则包括起始位、“1”、“0”、结束位和空位。对于模式2和模式3,起始位、结束位以及空位的编码与模式1相同,只是“0”和“1”采用曼彻斯特(Manchester)码进行编码,或者可以采用反向的曼彻斯特码表示。
(2)纠错编码纠错编码采用循环冗余校验法。所有的传输比特,包括数据比特、校验比特、起始比特、结束比特以及循环冗余校验比特都要参加循环冗余校验。由于编码是按字节进行的,因此总的编码比特数应该是8的倍数。循环码的码多项式为:
g(x) = x6 + x2 + x + 1
其中,模式1移存器的初始值为6363,模式2和模式3移存器的初始值为0。
4.防冲突机制为了防止干扰正在工作的其他NFC设备(包括工作在此频段的其他电子设备),NFC标准规定任何NFC设备在呼叫前都要进行系统初始化以检测周围的射频场。当周围NFC频段的射频场小于规定的门限值RFID(0.1875A/m)!!!时,NFC设备才能呼叫。系统初始化防冲突检测的流程如图所示。
如果在NFC射频场范围内有2台以上NFC设备同时开机的话,需要采用单用户检测来保证哪台设备点对点通信的正常进行。单用户识别主要是通过检测NFC设备识别码或信号时隙来完成的。
5.帧结构不同的传输速率具有不同的帧结构。在模式1中,帧结构分为短帧、标准帧和检测帧3种。
短帧:短帧用在系统的初始化过程中,由起始位、7位指令码、结束位组成。指令码包括阅读请求、阅读响应、唤醒请求、单用户设备检测请求、选择请求、选择响应以及休眠请求等。
标准帧:标准帧用在数据的交换过程中,由起始位、nx8数据比特、n位奇偶校验比特、结束位组成,见下表。其中n是一个随机产生的整数,它决定了有效数据的长度。
标准帧结构 字节0校验码字节1校验码…字节n校验码 起始位(bit)8181…81结束位 指令或数据数据…数据检测帧:检测帧是用在单用户检测过程中的,以保证点对点通信的进行。检测帧由一个7byte的标准帧一分为二而成,其中第一部分是由主呼传至被呼,第二部分是由被呼传至主呼。
模式2、模式3的帧结构比较简单,其中,前导符至少要有48bit的“0”信号;同步标志有2个byte,第一个字节的同步码为“B2”,第二个字节的同步码为“4D”;数据长度是一个8bit码,它表示有效传输数据的字节数。
6.传输协议NFC传输协议包括3个过程:激活协议、数据交换、协议关闭。协议的激活包括属性的申请和参数的选择,激活的流程分为主动模式和被动模式2种。数据交换协议的帧结构中,包头包括2byte的数据交换请求与响应指令、1byte的传输控制信息、1byte的设备识别码、1byte的数据交换节点地址。协议关闭包括信道的拆线和设备的释放。在数据交换完成后,主呼可以利用数据交换协议进行拆线。一旦拆线成功,主呼和被呼都回到初始化状态。主呼可以再次激活,但是被呼不再响应主呼的属性请求指令,而是通过释放请求指令切换到刚开机时的原始状态。