新闻中心

EEPW首页>手机与无线通信>设计应用> RFID电子标签A型卡的防碰撞模块设计

RFID电子标签A型卡的防碰撞模块设计

——
作者: 时间:2005-08-15 来源:电子产品世界 收藏

电子标签A型卡的防碰撞设计

Design of Anticollision Block Used in Type AElectronic Tags

电子科技大学微电子学院 陈志云 王豪才 龚关珍 姜义初

摘 要:本文介绍了A型电子标签防碰撞的工作原理,设计了一种具有防碰撞功能控制逻辑的VLSI结构,并用VHDL语言进行了仿真,用0.35um的CMOS单元库综合后,电路规模5000门左右。目前,已成功应用于电子防伪标签实际项目中。

关键词:RFID;电子标签;防碰撞;IC设计

引言

  RFID(射频识别)电子标签是一种把天线和IC封装到塑料基片上的新型电子卡片。它具有数据存储量大、无线无源、小巧轻便、使用寿命长、防水、防磁和安全防伪等特点。它是近几年发展起来的新型产品,是未来几年代替条形码走进“物联网”时代的关键技术之一。阅读器(PCD机)和电子标签(PICC卡)之间是通过电磁场感应进行能量、时序和数据的无线传输,如图1所示。但问题是在PCD机天线的可识别范围内,可能会同时出现多张PICC卡,如何准确识别每张卡,这正是A型PICC卡的防碰撞(Anticollision),亦称防冲突技术要解决的关键问题。

A型卡防碰撞的工作原理

  A型PICC卡采用了ISO/IEC14443系列协议,配合PCD机来共同实现防碰撞的快速交互通信。为了从多张PICC卡中快速识别出一张来单独进行通信,A型卡采用了位碰撞监测协议来实现防碰撞过程,即阅读器对卡返回的唯一识别号(即UID)数据帧中的每一位来进行冲突监测。当多张A型PICC卡在同一时刻向PCD机传送UID数据帧时,一定会在同时返回的某一位上有不同的位值,根据Manchester编码规则,如果这一位的正负边沿抵消了,由PCD机没法识别的该数据位即为碰撞位。碰撞位监测到后马上启动防碰撞过程,PCD机主动地发出一系列命令数据帧(即下传数据),主要是ANTICOLLISION命令和SELECT命令,PICC卡被动地响应每一条指令(即上传数据)完成交互的会话过程。

  对于ANTICOLLISION命令,如果PICC卡本身固有的UID CLn和命令中所带的UID CLn数据位相等,则发送UID CLn的其余位,否则不发送响应。根据协议规定ANTICOLLISION命令(即第1部分:下传数据)和PICC卡的响应(即第2部分:上传数据)组合成一个防碰撞帧。而且防碰撞帧的数据位总数为56位;16下传数据位数55;1上传数据位数40。防碰撞帧举例如图2所示。由于56位的防碰撞帧可以在任意位置上分开,因此有两种情况:1.在一个完整的数据字节之后分开,则在第1部分的最后一个数据位之后有一个校验位;2.在一个数据字节内分开,则在第1部分的最后一个数据位之后不加校验位。情况1和情况2的不同分开方法如图2所示。

对于SELECT命令,如果PICC卡内固

有的UID CLn和命令中的UID CLn相等,则发送SAK帧,否则不发送响应。

防碰撞的设计

引脚定义

防碰撞的外部信号引脚定义及其在卡中与其它模块的连接图如图3所示。

防碰撞模块外部信号定义的VHDL代码如下:

entity ANTICOLLISION_BLOCK is

port

(clk: in std_logic;—时钟信号

reset: in std_logic; —复位信号

rxd: in std_logic; —外部数据串行输入

active: in std_logic; —外部数据输入的状态

csn_fb: in std_logic_vector(7 down to 0);

—来自ROM的并行数据

csn_full: in std_logic;

—ROM接口中的输出Latch“满”

Rd_csn: out std_logic;—允许读ROM

txd: out std_logic; --数据串行输出

Txd_active: out std_logic--数据输出的状态

);

end ANTICOLLISION_BLOCK;

模块划分

  防碰撞模块主要分为4个部分:数据接收模块(A)、读ROM模块(B)、数据比较模块(C)、发送模块(D),如图4所示。A的作用是:接收PCD机发送的命令信号,从rxd引脚串行输入后对每个字节进行校验,并进行串并转换,按字节逐个存入7个Latch中;B的作用是:从ROM接口模块中读出卡内固有的UID CLn,按字节存入4个Latch后,计算UID CLn的4个字节的异或值(即卡的BCC字节),并存入锁存器。C和D的作用是:比较PCD机命令中的UID CLn和卡的UID CLn,并根据比较结果决定是否输出响应。如果比较结果相同,则根据命令的类型(ANTICOLLISION命令或SELECT命令)从txd引脚串行输出不同的响应数据。由于篇幅所限,后面主要介绍数据的发送模块是如何设计实现的。

发送模块的设计



关键词:RFID模块

评论


相关推荐

技术专区

关闭