用于识别设备的方法和装置的制作方法

文档序号:6498424阅读:120来源:国知局
专利名称:用于识别设备的方法和装置的制作方法
技术领域
本发明涉及具有标识符的设备(例如标签(Tag))的领域,并且还涉及用于识别这样的标签的方法和装置。
背景技术
可以通过从询问方发射器(例如读取器)发送代码并使标签发射信息作为响应,来询问多个无线标签。这通常是通过使标签监听询问消息并且以唯一的序列号和/或其他信息对其作出响应来实现的。标签通常具有可用于向读取器无线地发射数据的受限功率。希望扩展无线标签的范围,以使得不一定将每个标签都放在读取器附近才能进行读取。但是,当扩展读取系统的范围时,很多标签将处在询问系统的范围内,从而它们的回复可能彼此破坏。
射频(RF)标签的当前实现方式需要大量逻辑来处理接口协议和在处于读取器范围内的多个标签都试图回复询问消息时发生的抗冲突问题。例如,当前在RF标签中使用的集成电路需要大约3000个逻辑门来处理接口协议和处理抗冲突协议。集成电路所要求的这种庞大的数量增加了RF标签的成本并因而使这样的标签不太可能被更普遍地使用。现有技术试图避免在读取多个RF标签时的冲突,这在美国专利5,266,925、5,883,582和6,072,801中有所描述。但是,这些现有技术方法提供的用于避免在读取多个RF标签时的冲突的解决方案效率很低。

发明内容
在这里描述了用于识别标签的方法和装置。本部分中总结了本发明的某些实施例。
本发明的实施例包括具有读取器和标签的系统,其中读取器以指定回复概率等级的参数查询标签,根据该回复概率,标签单独地随机判定是否回复。在一个示例中,标签可在两个状态之间切换A和B。查询命令还指定一个状态(A或B),以便只有处于指定状态中的标签才能够回复。在成功地从标签向读取器发送出标签标识数据之后,标签从指定状态切换到其他状态。在一个实施例中,关于两个状态的操作是对称的。在另一实施例中,标签能够记住查询中使用的参数,从而可以使用查询命令的缩短形式来重复具有相同查询参数的查询。
在本发明的一个方面中,用于查询多个标签的方法包括广播具有第一概率参数值的第一查询命令,其中第一概率参数值指示第一回复概率,根据该第一回复概率,多个标签中的每一个随机确定是否回复;并且检测响应于第一查询命令的回复。在一个实施例中,响应于确定没有对用于根据第一概率参数值进行查询的一个或多个查询命令的回复,读取器还广播具有第二概率参数值的第二查询命令,其中第二概率参数值指示大于第一回复概率的第二回复概率。在另一个实施例中,响应于确定由于多个回复的冲突因而没有对于用于根据第一概率参数值进行查询的一个或多个查询命令的可辨回复,读取器还广播具有第二概率参数值的第二查询命令,其中第二概率参数值指示小于第一回复概率的第二回复概率。在一个实施例中,第一值是整数Q,多个标签中的一个的第一回复概率基本等于pQ,并且p小于1(例如p可以基本等于0.5)。在一个实施例中,多个标签中的第一标签的第一回复概率不同于多个标签中的第二标签的第一回复概率。在一个实施例中,第一查询命令还包括指示第一状态的状态标志,以便处于第二状态中的标签不对第一查询命令作出回复,而处于第一状态中的标签根据第一概率参数值随机地对第一查询命令作出回复。在一个实施例中,读取器还1)广播具有第二概率参数值和指示第二状态的状态标志的第二查询命令,以便处于第一状态中的标签不对第二查询命令作出回复,而处于第二状态中的标签根据第二概率参数值随机地对第二查询命令作出回复;以及2)检测响应于第二查询命令的回复。在一个实施例中,第一和第二查询命令相对于第一和第二状态是对称的。在一个实施例中,响应于对第一查询命令的包括第一握手数据的可辨回复,读取器还发送包括第一握手数据的第二命令,并接收标签标识数据作为对第二命令的回复。当未成功接收到标识标签数据时,读取器还发送用于指示接收标签数据时的差错的命令。在一个实施例中,读取器还广播第二查询命令,而不指定概率参数值,以根据第一概率参数值进行查询。第一查询命令包括多个参数的第二值,所述多个参数包括概率参数;并且,第二查询命令不指定多个参数的值,以根据多个参数的第二值进行查询。在一个示例中,第二查询命令比第一查询命令短得多。
在本发明的另一个方面中,标签用以响应于来自读取器的查询的方法包括接收来自读取器的具有第一概率参数值的第一查询命令;并且随机地判定是否对第一查询命令作出回复,以使得回复概率是根据第一概率参数值的。在一个示例中,响应于对回复的随机判定,标签还发送具有第一握手数据的回复,该第一握手数据可以是响应于第一查询命令而生成的随机数。在一个实施例中,第一值是整数Q,多个标签中的一个的第一回复概率基本上等于pQ,并且p小于1(例如p基本等于0.5)。在一个实施例中,第一查询命令还包括指示第一状态的状态标志;标签如果处于第二状态中则不对第一查询命令作出回复,并且标签如果处于第一状态中则根据第一概率参数值随机地对第一查询命令作出回复。在一个实施例中,标签1)接收具有第二概率参数值和指示第二状态的状态标志的第二查询命令;以及2)如果标签处于第二状态中,则随机地判定是否对第二查询命令作出回复,以使得回复概率是根据第二概率参数值的。标签如果处于第一状态中则不对第二查询命令作出回复。在一个实施例中,标签就第一和第二状态而言对称地处理第一和第二查询命令。在一个实施例中,标签还响应于对回复的随机判定而发送具有第一握手数据的第一回复;并且响应于接收到来自读取器的包括第一握手数据的第二命令,标签发送具有标签标识数据的第二回复。在一个实施例中,响应于在发送第二回复之后接收到查询命令,标签从第一状态切换到第二状态;并且在接收到指示读取器处接收标签标识数据时的差错的命令之后,如果在指示差错的命令之后接收到查询命令,则标签保持在第一状态中。在一个实施例中,标签还接收不指定概率参数值的第二查询命令;并且标签随机地判定是否对第二查询命令作出回复,以使得回复概率是根据第一概率参数值的。在一个实施例中,第一查询命令包括多个参数的值,所述多个参数包括概率参数;第二查询命令不指定多个参数的值;并且标签根据多个参数的第二值处理第二查询命令。在一个实施例中,第二查询命令比第一查询命令短得多。
本发明包括方法和执行这些方法的装置,其中包括执行这些方法的数据处理系统,以及当在数据处理系统上被执行时致使系统执行这些方法的计算机可读介质。
本发明的其他特征将从以下附图和详细描述中清楚。


在附图中以示例方式而非限制方式示出了本发明,附图中的相似标号指示类似元件。
图1示出识别系统的一个示例,该系统包括读取器和多个RF标签。
图2示出可与本发明的实施例一起使用的RF标签的一个实施例的示例。
图3示出根据本发明一个实施例的RF标签的示例。
图4示出根据本发明一个实施例的通信方法的流程图表示。
图5示出根据本发明一个实施例,标签与读取器通信的方法的流程图表示。
图6示出根据本发明一个实施例,标签用以随机地判断是否回复询问的判定电路的示例。
图7示出根据本发明一个实施例,标签用于生成随机数以与读取器通信的方法的流程图表示。
图8示出根据本发明一个实施例,读取器用于从多个标签读取标签数据的方法的流程图表示。
图9示出根据本发明一个实施例的标签状态图。
图10-图13示出根据本发明实施例用于从读取器向标签广播的信号调制。
图14-图17示出根据本发明实施例标签用于回复读取器的信号调制。
具体实施例方式
以下描述和附图用于举例说明本发明,不应被看作对本发明的限制。多个特定细节被描述以提供对本发明的全面理解。但是,在某些实例中,公知的或传统的细节未被描述以避免模糊本发明的描述。这里使用的术语“耦合”可能指直接耦合,或通过一个或多个中间组件的间接耦合。本公开中对实施例的提及不一定指相同实施例,这样的提及意思是至少一个。
图1示出识别系统100的示例,该系统包括读取器191和多个标签131、133、135、...和139。该系统一般是读取器先说型(reader-talks-first)RF ID系统,其利用被动型或半被动主动型后向散射应答器作为标签。在标签中结合电池和/或存储器是用于帮助加长读取范围的扩展特征;但是使用电池确实需要某些折衷,例如更高的成本、有限的寿命、更大的外形参数、更大的重量以及寿命终结时的处置要求。从而标签131-139可以具有存储器和/或电池,或者不具有这些元件。将会意识到,不同类型的标签可被混合在系统中,其中读取器询问有电池的标签和没有电池的标签。至少有4类标签可以用于本发明(1)除了从标签的天线获得的电力外,标签上没有电源,但是标签确实包括具有标签的标识码的只读存储器;(2)没有内部电源的标签,但当被读取器供电时,可向标签中的非易失性存储器写入数据;此类标签也包括用于存储标识码的存储器;(3)具有小电池以向标签中的电路供电的标签。这种标签也可包括非易失性存储器以及用于存储标签的标识码的存储器;(4)可以与其他标签或其他设备通信的标签。
图1示出读取器的一个实施例。读取器101一般会包括接收器119和发射器123,其中每一个都耦合到I/O(输入/输出)控制器117。接收器119可具有其自己的天线121,发射器123可具有其自己的天线125。本领域的技术人员将会意识到,如果存在用于控制存在于天线上的信号并将接收器和发射器彼此隔离开来的接收/发射开关,则发射器123和接收器119就可共享相同的天线。接收器119和发射器123可以类似于当前读取器中的传统接收器和发射器单元。在北美,接收器和发射器一般可工作于约900兆赫兹的频率范围内。接收器和发射器都耦合到I/O控制器117,该I/O控制器117控制从接收器接收数据以及从发射器123发射数据(例如命令)。I/O控制器耦合到总线115,总线115又耦合到微处理器113和存储器111。有各种不同的可能实现方式可用在读取器101中,用于元件117、115、113和111所代表的处理系统。在一种实现方式中,微处理器113是可编程微控制器,例如8051微控制器或其他公知的微控制器或微处理器(例如PowerPC微处理器),存储器111包括动态随机访问存储器和控制存储器的操作的存储器控制器。存储器111还可包括用于存储数据和软件程序的非易失性只读存储器。存储器111一般包含控制微处理器113的操作的程序,还包含在诸如询问标签这样的标签处理期间使用的数据。在下文中进一步描述的一个实施例中,存储器111一般将会包括计算机程序,该计算机程序致使微处理器113通过I/O控制器向发射器发送搜索命令,并通过接收器119和通过I/O控制器117接收来自标签的响应。读取器111还可包括网络接口,例如以太网接口,其允许读取器通过网络与其他处理系统通信。网络接口一般将会耦合到总线115,以便它可接收来自微处理器113或来自存储器111的数据,例如在询问中识别的标签列表。
图2示出可用于本发明的标签的一种实现方式的示例。标签200包括天线201,该天线201耦合到接收/发射开关203。此开关耦合到接收器和解调器205以及耦合到发射器和调制器209。相关器和控制器单元207耦合到接收器和解调器205和发射器209。图2中所示的标签的特定示例可用于各种实施例中,在这些实施例中,标签中维护着用于维护命令之间的数据的存储器,并且在标签中发生逐比特的相关。接收器和解调器205通过天线201和开关203接收信号,对信号进行解调,并将这些信号提供给相关器和控制器单元207。被接收器205接收到的命令被传递到单元207的控制器,以便控制标签的操作。被接收器205接收到的数据还被传递到控制单元207,并且在下述实施例中,该数据可以包括用于询问命令的参数和来自握手命令的握手数据。发射器209在控制单元207的控制下,通过开关203和天线201将响应或其他数据发射到读取器。本领域的技术人员将会意识到,发射器可能仅仅是用于对来自天线(例如天线201)的反射进行调制的开关或其他设备。
在本发明的一个实施例中,为了使标签成本低到足以使标签的使用在供应链中无处不在,标签被设计具有以下属性,来使标签状态存储要求及其他最小化这些属性例如是小集成电路(IC)面积以允许低成本、小存储器、不需要精确定时、原子事务。可以以低成本生产这种标签。但是,也可使用其他标签设计。此外,要理解根据本发明的实施例的避免通信冲突的方法也可用于其他类似的情形中。
图3示出根据本发明的一个实施例的RF标签的示例。在一个实施例中,VLC(超低成本)标签300包括连接在一起的天线301和集成电路303。标签IC 303实现命令协议并包含ePC(电子产品代码)。天线301接收读取器询问信号并响应于由IC 303产生的调制信号将询问信号反射回读取器。标签IC 303通过组合RF接口和电源311、数据检测器和定时电路313、命令和控制315、数据调制器317和存储器319,来实现VLC标签。在一个实施例中,命令和控制315包括实现根据本发明的实施例的通信协议的静态逻辑。
RF接口和电源311将RF能量转换成标签IC 303操作所需要的DC电力,并向数据检测器和定时电路313提供调制信息。RF接口还提供将标签调制信号耦合到天线以便发射到读取器的装置。数据检测器和定时电路313对读取器信号进行解调并生成被命令和控制315使用的定时和数据信号。命令和控制315协调标签IC 303的所有功能。命令和控制315可包括状态逻辑,以解释来自读取器的数据,执行所需的内部操作并确定标签是否将会响应读取器。命令和控制315根据本发明的实施例实现状态图和通信协议。存储器319包含VLC标签所标记的项目的ePC代码。数据调制器317将二进制标签数据转化为信号,该信号然后被提供到RF接口311,并且然后被发射到读取器(例如读取器101)。
标签的设计和实现可表征为层。例如,物理和环境层表征标签的机械、环境、可靠性和制造方面;射频(RF)传输层表征读取器和标签之间的RF耦合;通信层表征读取器和标签之间的通信/数据协议。不同层处的各种不同的标签实现方式可用于本发明的实施例。要理解,标签的实现方式并不限于本说明书中所示的示例。不同的标签或通信设备可使用本发明的实施例的方法,以根据目标应用的需求来进行通信。
在本发明的一个实施例中,标签可以是通过射流自组装工艺(fluidicself-assembly process)来制造的。例如,集成电路可以用半导体晶片上的许多其他集成电路来制造。如果可能的话,集成电路将会包括特定RF标签的除天线301外的所有必要逻辑。从而,标签300中所示的所有逻辑都将被包括在单个集成电路上,并且以单个半导体晶片上的类似的集成电路来制造。每个电路将会被编程以唯一的标识码,然后晶片将会被处理,以从晶片上去除每个集成电路以产生悬浮在流体中的块。然后该流体被分散在衬底(例如柔性衬底)上,以产生单独的RF标签。衬底中的受体(receptor)区域将会接收至少一个集成电路,然后所述至少一个集成电路可以与衬底上的天线相连以形成RF标签。射流自组装的示例在美国专利No.5,545,291中有所描述。
图4示出根据本发明一个实施例的通信方法的流程图表示。读取器向处于状态A中的标签广播具有指定的Q参数值的查询命令(401)。响应于查询命令,每个处于状态A中的标签分别随机地判定是否回复该查询命令,以使得回复概率是根据Q参数的值的(403)。处于状态B中的标签不回复针对处于状态A中的标签的查询命令。然后读取器检测任何对查询命令的回复(405)。确定回复是否太少(407)。例如,当读取器未获得对于多个具有指定的Q参数值的查询命令的回复时,读取器可确定指定的回复概率级别太低,并且回复太少。当回复太少时,读取器调整Q参数的值,以增大回复概率(411)。类似地,确定是否有太多回复(409)。当存在太多回复时,来自不同标签的回复彼此破坏。从而,当存在太多回复时,读取器调整Q参数的值以减小回复概率。如果未接收到可辨的回复(417),读取器则广播不指定参数的查询命令,以使先前发射的参数被用于当前查询(415)。由于针对查询的相同参数不被再次发射,因此发出查询命令以重复先前的查询比起发出具有所有参数的查询命令来说更快。响应于新的查询命令,每个处于状态A中的标签于是分别随机地判定是否回复查询命令,以使得回复概率是根据Q参数的值的(403)。
当Q参数的值被调整到合适的值时,从大量标签获得一个可辨回复的概率将会很高。从而,读取器可以就简单地在不调整查询参数的情况下重复先前的查询,直到有太少(或太多)回复。
当接收到一个可辨回复时(417),读取器与提供回复的标签通信(419)。在本发明的一个实施例中,来自标签的回复包括标识标签的数据,以使读取器可寻址到提供该可辨回复的标签。在一个实施例中,标签生成随机数,以便与读取器握手。在与标签的通信期间,读取器获得来自标签的标签标识数据。如果与标签的通信成功(421),则标签从状态A切换到状态B(423);否则,标签保持在状态A中(425)。一旦标签处于状态B中,标签就不再对针对处于状态A中的标签的查询作出响应。从而,读取器可以按一次一个的方式与处于状态A中的标签通信,直到所有标签都处于状态B中。
在本发明的一个实施例中,关于状态A和状态B的操作是对称的。例如,读取器可向处于状态B中的标签广播具有指定的Q参数值的查询命令。响应于针对处于状态B中的标签的查询命令,每个处于状态B中的标签分别随机地判定是否回复查询命令,以使得回复概率是根据Q参数的值的。处于状态A中的标签不回复针对处于状态B中的标签的查询。如果与处于状态B中的标签的通信成功,标签就从状态B切换到状态A;否则标签保持在状态B中。从而,读取器可以按一次一个的方式将标签从状态A分选到状态B,或者按一次一个的方式将标签从状态B分选到状态A。
或者,关于状态A和状态B的操作可以是不对称的。例如,读取器可以按一次一个的方式将标签从状态A分选到状态B,但却不按一次一个的方式将标签从状态B分选到状态A。在这种实现方式中,读取器可以在开始以一次一个的方式读取来自标签的标签数据之前将标签置于状态A中。
图5示出根据本发明的一个实施例的供标签用于与读取器通信的方法的流程图表示。在操作501中,标签接收来自读取器的命令。在接收到针对处于状态A中的标签的具有查询参数Q的查询命令(例如QueryA)之后(503),标签确定它是否处于状态A中(507)。如果标签不处于状态A中,标签就不回复针对处于状态A中的标签的查询。
类似地,在接收到针对处于状态B中的标签的具有查询参数Q的查询命令(例如QueryB)之后(505),标签确定它是否处于状态B中(507)。如果标签不处于状态B中,标签就不回复针对处于状态B中的标签的查询。
如果查询匹配标签的状态(例如处于状态A中的标签接收到针对处于状态A中的标签的查询或处于状态B中的标签接收到针对处于状态B中的标签的查询),则标签随机地确定是否回复查询命令,以使回复的概率是根据查询参数的(例如回复概率为0.5Q)。如果标签判定回复(513),标签就以握手数据(例如随机数)回复查询命令。
当标签接收到没有参数的查询命令(例如QueryRep)517时,它确定标签是否已获得来自先前的查询命令的查询参数(519)。如果标签具有来自先前的查询命令(例如先前的QueryA或QueryB命令)的查询参数,则标签利用用于先前查询命令的同样的参数来对该查询作出响应(521)。例如,如果先前的查询命令是针对处于状态A中的标签的,则当前的没有参数的查询命令也是针对处于状态A中的标签的。从而,执行操作507以检查该查询是否是打算针对该标签的。类似地,如果先前的查询命令是针对处于状态B中的标签的,则当前的没有参数的查询命令也是针对处于状态B中的标签的,从而执行操作509。在处理先前的查询命令时使用的Q参数也被用于处理当前的没有参数的查询命令。在本发明的一个实施例中,当达到合适的Q参数值时,读取器发出许多没有参数的查询命令以重复具有相同参数的查询。由于没有参数的查询命令发射起来较快(并且处理起来较快),因此可利用这种没有参数的查询命令来缩短用于处理大量标签的时间。
当标签接收到来自读取器的具有握手数据的握手命令(例如AcK)时(523),标签检查接收到的握手数据是否匹配从标签发送的握手数据(525)。如果握手数据不匹配(527)(例如握手命令不是响应于从标签发送的回复的,或者从读取器接收到的握手数据不同于从标签发送的握手数据),则标签不回复。否则,标签向读取器发送标签数据(例如ePC)(529),并且进入“等待改变状态”(531)。在一个实施例中,除非读取器发射用于指示未接收到标签数据的命令,否则标签假定读取器接收到标签数据。例如,当标签接收到用于防止状态变化的命令(例如NAk)时(533),标签退出“等待改变状态”(537)。当标签接收到除了用于握手或用于防止状态变化的命令之外的其他命令时(例如接收QueryA、QueryB或QueryRep)(539),如果标签正在等待改变状态(541),则标签改变标签状态(例如从状态A到状态B,或从状态B到状态A)(543)。在另一个实施例中,标签始终假定读取器接收到了标签数据。如果在发送标签数据之后等待改变状态的同时接收到查询命令,则标签将其状态从A改变到B,或从B改变到A。要理解,操作541和543是在操作507或509被执行之前被执行的。从而,在回复针对处于状态A中的标签的查询并发送标签数据之后,处于状态A中的标签切换到状态B中,并不回复另外的针对处于状态A中的标签的查询。为了防止标签改变状态,读取器可在另一查询命令之前广播用于防止状态变化的命令(例如NAk)。
图6示出根据本发明的一个实施例的判定电路的示例,该判定电路是供标签用于随机判定是否回复查询的。随机比特生成器(601)一次生成一比特的随机信息。多个随机比特被存储在存储器603中。例如,当新的一比特随机信息被生成时,它被移动到存储器中,以使存储器中的第一比特包含新的一比特随机信息,并且最旧的那一比特随机信息被丢弃。当标签接收到来自读取器的Q参数(例如在QueryA命令或QueryB命令中)时,Q参数的值被存储在存储器607中。逻辑电路(605)确定存储器603中的前Q比特(例如最近的Q比特)是否都是零。如果存储器603中的前Q比特都是零,则标签判定回复查询。否则,标签不回复。当Q为零时,如果标签处于指定的状态中,则标签始终判定回复。
在一个实施例中,随机比特生成器(601)生成零的概率为(1/2)。从而,对于给定Q值,回复概率为(1/2)Q。随机比特生成器(601)可以按每命令一比特的速率生成随机比特,或者以快于每命令一比特或略慢于每命令一比特的速率生成随机比特。要理解,不同标签可以按不同速率生成随机比特。此外,随机比特生成器(601)可能不以(1/2)的概率生成零。例如,重要的标签可被偏置成生成零的概率大于1/2。从而,这些标签更可能满足前Q比特全都为零的要求。结果,这些标签比其他标签更早回复的概率更大。
根据上述示例,可以理解到标签可以随机判定回复,并且回复概率由Q参数控制。不同的实现方式可被用于实现这种受控随机判定。例如,它可请求存储器中最旧的Q比特全都是1。由于调整Q参数的值可调整回复概率,因此读取器可适应性地调整Q值以增大从位于范围中的大量标签获得单个可辨回复的概率。
图7示出根据本发明的一个实施例的供标签用于生成随机数以便与读取器通信的方法的流程图表示。操作701生成随机比特(例如利用随机比特生成器601)。然后确定标签是否已完成与读取器的握手(703)。如果标签正处于与读取器握手的过程中,则随机比特不被用于更新存储器(例如603)中的信息。从而,在握手过程期间存储器中的随机数保持相同。在握手过程中,标签向读取器发送随机比特的存储器(例如16比特存储器)的内容作为握手数据,并接收来自读取器的具有握手数据的握手命令(例如Ack)。如果从读取器接收到的握手数据匹配从标签发送的并在标签处维护的握手数据,则握手成功并且标签可向读取器发送标签数据以作为响应。如果读取器没有再次发送握手命令(或者握手数据不匹配),则标签完成与读取器的握手(例如通过发送另一查询命令)。当标签未处于与读取器的握手过程中时,标签不需要冻结随机比特的存储器的内容。从而,标签将随机比特移动到随机比特的存储器(705)中,以更新内容。基于本说明书,本领域的技术人员可设想各种备选实现方式。例如,可以仅响应于查询命令才生成随机比特。
在本发明的一个实施例中,被用于做出随机判定的随机比特的存储器(例如603)的整个内容被用作握手数据。或者,只有其中一部分被用作握手数据。例如,当在前Q比特全为零的情况下标签回复时,标签可以只用随机比特存储器的后(16-Q)比特作为握手数据。或者,标签可使用其他随机数作为握手数据。
图8示出根据本发明的一个实施例的供读取器用于读取来自多个标签的标签数据的方法的流程图表示。在广播针对处于状态A中的标签的具有Q参数的查询命令(801)之后,读取器检测来自标签的任何具有握手数据的回复(803)。当没有回复时(805),确定Q参数是否已经等于零。如果Q参数等于零,并且没有接收到回复作为对查询命令的响应,则可确定在该范围内没有处于状态A中的标签,这是因为当Q参数等于零时,接收到的查询命令的任何处于状态A中的标签都会回复。如果Q参数还不是零,则读取器可减小Q参数以增大接收到回复的概率。例如,读取器可保持参数Qf作为浮点数,以便根据Int(Qf)确定Q(其中Int(x)指示实数x的整数部分)。当没有回复时,读取器可以按Min(Qf/1.4,0.9)来更新Qf(其中Min(x/a,b)指示x/a和b之间的最小值),并按Int(Q)来更新Q(811,815)。当存在来自不同标签的彼此破坏的多个回复时,读取器无法从回复中获得可辨的握手数据(817)。为了避免冲突,读取器可增大Q参数,以减小接收到多个回复的概率。例如,当多个回复发生冲突以彼此破坏时,读取器可以按Qf×1.4来更新Qf,并按Int(Q)来更新Q(813,815)。
注意,当读取器可从一个回复获得可辨的握手数据时,则即使存在冲突,读取器也不必增大Q参数。例如,当弱回复与强回复相冲突时,读取器仍可从强回复中获得握手数据。在该情况下,读取器可简单地忽略弱回复,并开始与发送强回复的标签握手。从而,隐藏的冲突增强了性能,这是因为弱标签被ACK握手所保护,而如果读取器能够提取其握手,则较强的标签仍被计数。
在接收到可辨的握手数据作为对查询命令的回复之后(817),读取器与发送握手数据的标签握手(例如,通过广播具有握手数据的命令,例如Ack)。然后,读取器尝试接收来自标签的标签数据(例如标签标识数据,例如ePC)(821)。例如,如果标签确定Ack命令中的握手数据匹配从标签发送的握手数据,则标签发射标签标识数据作为对Ack命令的回复。如果标签接收到可辨的标签数据(823),则标签可以广播重复先前查询命令的命令,而无需重新广播查询参数(829)。响应于查询命令,刚才发送标签数据的标签从状态A切换到状态B,以便它不响应于针对处于状态A中的标签的查询。处于状态A中的标签将先前的查询参数用于当前查询。但是,如果标签数据不可辨(823),则读取器可再次尝试与标签握手(819),或广播用于指示未接收到标签数据的命令(827)。
在本发明的一个实施例中,标签响应于发射标签数据之后的任何查询命令来切换状态。从而,在接收到可辨的标签数据之后,读取器可选择广播重复先前查询的命令,或广播具有新的查询参数的查询命令。或者,标签可被实现成在发射标签数据之后,它仅响应于重复先前查询命令的命令(例如QueryRep)才切换状态。从而,读取器可使用一个QueryRep命令来致使1)刚才发送标签数据的标签切换状态以离开将要被询问的标签集合;以及2)其他标签被查询并且随机判定是否回复查询。
在本发明的一种实现方式中,系统通信遵循两阶段命令回复型式,其中读取器发起事务(读取器先说型,RTF)。在第一阶段中,读取器以连续波(CW)RF能量向一个或多个被动标签提供电力。标签加电,并且在接收到用于同步其时钟的一个命令之后准备好处理命令。读取器利用下文中描述的读取器到标签编码方案,通过幅度调制来向场(field)中发射信息。在完成发射之后,读取器停止调制,并保持RF在回复阶段期间为标签供电。标签在此时段期间利用下文中描述的四(4)相比特编码方案经由后向散射调制与读取器通信。
在一种实现方式中,基本命令被设计为限制标签在事务之间必须存储的状态信息的量。可供被动标签使用的电力是发射功率、标签/读取器天线方位、局部环境和外部干扰源的复杂函数。处于RF场边沿的标签被不可靠地供电,因此不能指望它们维持先前与读取器的事务的记忆。具体而言,移动的标签或物体可能导致标签只在短时间内具有电力,这主要是由于多路径干扰引起的。在一种实现方式中,通过使总事务时间最小化,并且通过允许从错过的命令中迅速恢复,从而允许了在这些条件下的高效标签计数。具有阈值电力并且在短达3毫秒时间内接收到三个命令(例如先前的用于起动(spin up)的命令、查询和具有其回复的ACK)的标签可被清点。
在一种实现方式中,在命令群组之间对于每个会话只有一比特的状态,并且该状态的影响通过使命令集合关于这两个状态对称而被进一步减小,如下所述。
在一种实现方式中,每个标签具有四个可用会话,每个会话具有单比特的独立状态存储器。后向散射模式和相对速率对于所有会话都是相同的,并且随机回复寄存器对于所有会话都是相同的。被选择的状态对于所有会话也都是相同的。这种会话结构允许了在多任务处理环境中最多达四个读取器或过程与标签群体通信,但是它们可以用完整的命令群组来完成这一点。命令群组开始于QueryA/B(QueryRep不会启动命令群组),通过ACK继续,并且结束于ACK之后的命令(从标签角度来看它完成了事务),或者结束于过程对选中的状态的使用结束时。
使用两个会话的一个示例是入口(portal)读取器,其对经过入口的所有标签进行计数,但希望以择优方式对栈板(pallet)计数。然后它将会对标签群体运行两个同时的过程。例如,会话0可被一个过程用于在状态A和状态B之间扫过整个标签群体,以确保对所有它触及过一次的标签进行计数,而不论它们初始状态如何。会话1可选择性地在该会话中将所有栈板标签掩蔽为状态A,而将所有其他标签掩蔽为状态B,然后在交错的过程中以择优方式对它们进行计数,而不干扰第一过程中正在进行的清点。
类似的示例是一组商店清点读取器,它们将会被设置为使其清点类型同步,例如所有清点读取器都在标签处使用会话0,以在10秒间隔内从A状态清点到B状态,然后从B状态清点回A状态。这确保了在每个周期中所有标签都被一个清点读取器计数一次。同时,手持式读取器可使用会话1,以便通过将ePC的足够的一部分掩蔽为状态A,同时将所有其他标签掩蔽为状态B,来搜索特定ePC。然后它使用会话1QueryA命令来搜寻该标签或标签类型。只要命令群组不发生冲突(交错),并且只要避免了RF干扰,这就能避免与商店清点读取器干扰。
图9示出根据本发明的一个实施例的标签状态图。标签状态图示出了在命令群组内标签可采取的状态。命令群组是顺序命令的一个集合,这些命令以QueryA/B命令开始,并且以标签离开所选中的或确认的状态结束。在标签群组之间,每个会话中的状态是A或B。DEAD状态是永久状态。对于会话0,即使不存在电力,状态A和B也都是永久状态。在一长段时间(至少1秒,可能是数小时)之后,状态B复原到状态A。在状态A中,所有标签都对QueryA命令作出响应,但不对QueryB命令作出响应。在状态B中,对QueryB命令作出响应,但不对QueryA命令作出响应。如果对于特定会话状态存储器已经期满,则对于该会话在加电之后标签进入状态A。
除0会话之外的会话可能不具有持续的A-B标志,并且可能只在有电力可用时才会记住它们的状态。如果它们的状态丢失,则该会话的状态复原到状态A。
在加电后,标签重置其所有内部状态,除了4个会话中每一个的状态标志之外。标签将其时钟同步到第一命令所提供的同步比特的上升沿,但却不被允许在加电后作用于第一命令。它以充分的精度维护其时钟,以对下一命令解码。如果在任何命令起动期间时钟频率需要被校正超过20%,则标签不对该命令作出响应而是等到下一个QueryA或QueryB命令。这样设计是为了防止不适当的、可能产生干扰的响应。
对于每个会话,在标签处于状态A的同时,它对QueryA命令而不对QueryB命令作出响应。在适当的SetState命令以及成功完成以QueryB开始的清点握手之后,标签进入状态A。
对于每个会话,在标签处于状态B的同时,它对QueryB命令而不对QueryA命令作出响应。在适当的SetState命令以及成功完成以QueryA开始的清点握手之后,标签进入状态B。即使在多达1秒的掉电的情况下,对于会话零(0)标签也可保持在状态B中。
对于每个独立会话,如果关于状态B的状态记忆丢失,则标签在状态A中加电。
死亡(Dead)状态是标签状态的永久状态变化,它是在接收到有效的销毁(Kill)命令和销毁代码序列时被进入的。死亡状态是通过物理标签的永久变化来实现的,例如对E2编程或烧断熔丝。
本发明的某些实施例涉及用于为各类RFID标签实现快速、健壮、可兼容和可扩展的协议的RFID协议,同时允许非常便宜的标签和读取器的实现方式。在一个实施例中,RF传输层专注于UHF操作;例如,协议可应用于从400MHz到2.45GHz。
对于不同应用和成本要求,至少有四类标签。符合所有设计层的要求的不同种类的标签能够一起工作。标签还可包括到传感器、时钟、显示器和其他设备的标准化的有线I/O接口。
第I类标签是为最低成本的产品设计的简单的被动、只读后向散射标签。第I类标签具有一次可编程存储器、一次写入身份存储器、64或96比特ePC代码和可选再循环代码。
第II类标签是比起第I类来具有较高的功能和成本的被动后向散射标签。除了第I类的特征外,第II类标签可向标签写入数据和从标签读出数据,具有读写存储器,可能具有用于非通信目的的电池电源,并且可选地具有传感器和数据记录器。
第III类标签是半被动后向散射标签。除了第II类的特征外,第III类标签还具有内置的电池或其他能量源,以支持更大的读取范围。
第IV类标签是类似调制解调器的半被动或主动(发射器)标签,这种标签可以与彼此和/或其他设备进行无线通信。在与读取器通信时第IV类标签还可仿效第I-III类标签。
根据本发明的一种实现方式的RFID系统具有以下特征识别读取器的场中的单个标签;用于管理对读取器的场中的多个标签的读取的抗冲突功能、系统中来自RF干扰源和边沿标签的差错管理、依照本地RF管制要求的操作以及与依照本地RF管制要求工作的系统的共存。
以下给出某些详细示例。但是,根据本说明书,本领域的技术人员可设想出不同的详细设计和实现方式。整个系统体系结构一般是市场的函数。
在以下描述中,提及了RFID标签的存储器中的比特。当提及标签存储器中的比特时,词“上(up)”或“更高(higher)”一般是指最高有效比特(MSB)方向,词“下(down)”或“更低(lower)”一般是指最低有效位(LSB)方向。例如,十进制数七(7)的二进制表示是0111。将每个比特向“上”或“更高”方向移动一位产生十进制数十四(14),用二进制数表示是1110。
在本发明的一个实施例中,是围绕支持超低成本(VLC)标签的想法来设计命令格式的。读取器执行额外工作,从而允许标签尽可能地简单和便宜。这主要分成两个区域处理标签中的定时不确定性和处理标签中的有限长期存储器。但是,其他类型的标签(例如第III类和更高类的标签,例如具有大存储器的由电池供电的设备)也可支持这些命令格式(例如出于兼容性原因)。
VLC单芯片标签一般具有有限的振荡器稳定性,这是因为石英晶体在成本和大小上都高得让人不敢问津。在一个实施例中,标签使用命令的比特定时来同步其内部时钟,并且在能够开始对更多命令解码之前需要被加电并看见一个完整的命令包。来自这些标签的回复被构造成使得读取器能够解释标签以标签能够提供的任何时钟速率所发射的信息。这种方案在概念上与磁卡或条码读取器中使用的自动同步方案类似。
在一种实现方式中,提供了三类命令,其中包括基本命令、编程命令和数据链路命令。基本命令提供对象识别、分选、清点等等。编程命令支持标签制造商在被标记的项目进入供应链之前对标签数据进行初始化和编程。数据链路命令为第II类和更高类的标签提供数据链路层。
本发明的一个实施例使用了哈夫曼编码命令,例如,18比特用于QueryA/B(带4比特Q)、6比特用于QueryRep(最后的查询重复)、23比特用于ACK(包括16比特数据)、13比特用于NAK(很少使用,例如在数据差错时使用),以及13比特或更多用于其他命令的参数。从而,QueryRep命令比起QueryA或QueryB命令来短得多。
一种实现方式中的命令结构的详细示例在下文中描述。在以下的命令结构示例中,命令字段一般是以它们被发射的顺序被列出的。
在一种实现方式中,存在三种类型的清点命令,即查询、ACK和NAK。查询命令启动事务,一个或多个标签以随机的16比特数字响应该事务。如果读取器成功提取了16比特数字,则该数字通过ACK命令被发送回标签以便握手。仅当ACK命令所发送的16比特数字匹配标签发送的数字时,标签才会作出响应。然后其16比特随机数字被确认的标签以前缀、它的CRC(循环冗余码校验)以及它的ePC(电子产品代码)来回复。然后对于该会话标签将其内部状态从A转换到B(或从B到A),除非它获得NAK。如果它接收到NAK,则它保持在以前的状态中。
在一种实现方式中,读取器首先发射SPINUP比特。在每个字段内,LSB(最低有效比特)首先被发射。每个命令之前是四个曼彻斯特零比特以使时钟能够起动。时钟起动比特之后是曼彻斯特高违倒(violation)、命令比特,以及对于不同命令不同的参数。如果标签时钟设置机构需要将时钟调整超过20%,或者如果标签没有看到起动比特或曼彻斯特高违倒,则除了出于改进其时钟同步的目的外,标签忽略该命令。如果任何命令不匹配有效命令的数据型式,则标签不必应为其内部状态,并且不调制其后向散射。在每个命令开始时,标签刷新用于其四个会话中每一个的状态存储器。如果标签是从通电重置(power on reset)启动的,则它进入“等待第一查询”状态。
当标签是通过“通电”重置的时,标签始终进入“等待第一查询”状态。
当时钟未同步时,或者时钟改变超过20%时,或者未看到起动或曼彻斯特违倒时,或者接收到坏命令比特或坏CRC数据时,则在标签接收到坏命令。当起始状态条件是“等待第一查询”、“准备就绪”或“被选中”时,标签响应于坏命令而保持在相同的状态条件。当起始状态条件是“等待ACK”或“已确认”时,坏命令导致标签进入“准备就绪”状态。
QueryA命令具有包括会话号码、后向散射模式以及相对的标签到读取器数据速率在内的参数。它们具有数据有效载荷,该数据有效载荷是数字Q。当标签接收到QueryA命令时,如果对于该会话它处于状态A,则它以(1/2)Q的概率作出响应。标签以独立的(1/2)Q概率对每个查询作出响应。在一个实施例中,来自标签的回复包含16个随机比特,标签也会记住这16个随机比特,直到下一命令。
例如,QueryA命令包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)、命令比特(1比特,“0”)、会话号码[S](2比特)、A/B标志(1比特,对于QueryA为“0”,对于QueryB为“1”),后向散射模式[M](2比特),后向散射相对速率[R](2比特)以及Q参数[Q](4比特)。比特掩蔽可被用于大群体,如下所述。
响应于QueryA命令,标签1)将会话号码设置为[S];2)将查询的状态标志设置为“A”;3)将Q参数设置为[Q];4)将后向散射模式设置为[M];并且5)将后向散射速率设置为[R]。标签计算随机数字并且根据[Q]作出随机判定。此外,如果标签处于“被选中”或“已确认”的起始状态中,则如果标签处于状态A它就切换到状态B,如果它处于状态B则切换到状态A。然后,如果标签处于状态A并且随机判定是肯定的,则标签以随机数字作出回复并进入“等待ACK”状态;否则,标签进入“准备就绪”状态。
就状态A和B而,QueryB命令与QueryA命令是对称的。在QueryB命令之后成功完成握手周期使得标签对于该会话进入状态B。标签对QueryB命令的回复与对QueryA命令的回复具有相同格式。
例如,QueryB命令包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)、命令比特(1比特,“0”)、会话号码[S](2比特)、A/B标志(1比特,对于QueryA为“0”,对于QueryB为“1”),后向散射模式[M](2比特),后向散射相对速率[R](2比特)以及Q参数[Q](4比特)。比特掩蔽可被用于大群体,如下所述。
响应于QueryB命令,标签1)将会话号码设置为[S];2)将查询的状态标志设置为“B”;3)将Q参数设置为[Q];4)将后向散射模式设置为[M];并且5)将后向散射速率设置为[R]。标签计算随机数字并且根据[Q]作出随机判定。此外,如果标签处于“被选中”或“已确认”的起始状态中,则如果标签处于状态A它就切换到状态B,如果它处于状态B则切换到状态A。然后,如果标签处于状态B并且随机判定是肯定的,则标签以随机数字作出回复并进入“等待ACK”状态;否则,标签进入“准备就绪”状态。
QueryRep命令以相同的参数重复最近的查询。如果标签在通电重置以后未看到QueryA/B,则它不对QueryRep作出响应。除了在完全原子模式中以外,这种命令一般是最常见的命令。标签对QueryRep的回复与对QueryA或QueryB命令的回复具有相同格式。
例如,QueryRep命令包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)和命令比特(1比特,“0”)。
响应于QueryRep命令,处于“等待第一查询”状态中的标签不作出回复并保持在“等待第一查询”状态中。处于“已确认”或“被选中”状态中的标签不作出回复,如果处于状态A就切换到状态B,如果处于状态B则切换到状态A,并进入“准备就绪”状态。处于“准备就绪”或“被选中”状态中的标签1)计算随机数字并根据[Q]作出随机判定;2)检查标签的状态是否匹配查询的状态标志(例如查询的状态标志是“A”同时标签处于状态A,或者查询的状态标志是“B”同时标签处于状态B);以及3)如果标签的状态匹配查询的状态标志并且随机判定是肯定的,则以随机数字作出回复并进入“等待ACK”状态。如果标签的状态不匹配查询的状态标志或随机判定是否定的,则标签不作出回复并进入“准备就绪”状态。
在一个实施例中,响应于查询命令(例如QueryA、QueryB或QueryRep)的来自标签的回复在当前设置的后向散射模式中,并且在当前设置的后向散射速率下包含16比特握手数据。(这两者都是由QueryA或QueryB命令设置的)。它们发送一个1,然后是一比特时段的撬棍关断(crowbar off),16比特随机数据,然后是另一个撬棍关断时段,以及尾部的1。
例如,响应于查询命令来自标签的回复包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签握手(16比特,随机数据)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
当读取器从标签回复中成功提取握手时,它发送ACK命令。ACK紧跟在查询命令之后,其间除了其他ACK之外没有其他命令。它还在时间Tcoast(下面定义)内继而出现,一起被视为协议的原子“命令”。如果标签接收到的ACK命令不包含它对紧邻的前一查询回复的握手,则它不回复。
例如,ACK命令可以包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)、命令比特(2比特,“10”)和句柄数据(16比特,在紧邻的前一查询中发送到读取器的数据)。
响应于ACK命令,处于“等待第一查询”的起始状态的标签不作出回复并保持在“等待第一查询”状态中。处于“准备就绪”或“被选中”的起始状态的标签不作出回复并进入“准备就绪”状态。处于“等待ACK”或“已确认”的起始状态的标签检查ACK命令中的握手数据是否匹配在紧邻的前一查询中发送到读取器的随机数字。如果匹配,则标签回滚ePC和CRC作为回复,并且进入“已确认”状态;否则,标签进入“准备就绪”状态。
响应于ACK命令的回复包含ePC和CRC。其16比特握手与读取器所发送的匹配的标签在当前设置的后向散射模式中并以当前设置的后向散射速率作出回复。(这两者都是由QueryA或QueryB命令设置的)。它们通过发送四(4)个一(1)比特,然后是一个R-T比特时间的高违倒,以及以比特0开始的标签中的所有标识数据,来作出响应。读取器发送到标签的数据可能具有可变长度。数据之后是撬棍关断(高)违倒,以及4个尾部的一(1)。
例如,响应于ACK命令来自标签的回复可以包括TAGSPINUP(4比特,“1111”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签数据(可变长度,ePC、CRC、再循环数据等)高违倒以及TAGTRAILER(4比特,“1111”)。
如果读取器未接收到对ACK的响应,则读取器发射NAK。如果它接收到对ACK的曲解的响应,它可发射NAK或再次尝试ACK。NAK(或除了查询、重复ACK或选择之外的任何命令)被用于通知标签它尚未被记录,并且应当保持在以前的(A或B)状态中。
在查询-ACK清点中,NAK只在数据差错时才被使用。NAK命令还结束SELECTED状态。没有对于NAK的回复。例如,NAK命令可以包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)和命令比特(8比特,“11000000”)。
响应于NAC命令,处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”的状态中。处于“准备就绪”、“被选中”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
SetState命令被用于限制搜索,用于直接寻址和掩蔽,其中包括各种集合操作(例如并集)。集合操作是用SetState命令来执行的。掩蔽将会开始于选择未使用的会话,然后通过发出一串SetState命令从而在该会话中将所有标签设置为所需的状态。状态被改变的标签以ScrollID前序(preamble)作为响应,从而实现了以下应用这种应用通过简单地单独地改变先前已知处于场中的每个标签的状态,并且在执行新标签的随机清点之前利用回复的存在性或不存在性来更新其清点,从而来维护清点。
例如,SetState命令可以包括spinup比特(4比特,“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11000001”)、会话号码[S](2比特)、状态标志(1比特)、标签操纵标志(2比特,“00”用于在匹配情况下设置状态以及不匹配情况下设置相反状态,“10”用于在匹配掩码的情况下设置状态而在不匹配时不进行任何操作,“11”用于在不匹配掩码的情况下设置状态而在匹配时不进行任何操作)、指针(8比特)、长度(8比特,掩码比特的长度)、掩码比特(可变长度)以及CRC8(8比特,从第一命令比特到最后的掩码比特计算)。
响应于SetState命令,处于“等待第一查询”的起始状态中的标签保持在“等待第一查询”状态。处于“准备就绪”、“被选中”、“等待ACK”或“已确认”的起始状态中的标签进入“准备就绪”状态。响应于SetState ACK命令,标签将会话号码设置为[S]并根据掩码将会话的AB状态设置为“A”或“B”。当掩码匹配时,标签发送肯定回复;否则,标签不回复。如果状态标志是“A”并且状态操纵标志是“00”,则如果掩码匹配的话会话的AB状态被设置为“A”,掩码不匹配的话则被设置为“B”。如果状态标志是“A”并且状态操纵标志是“01”,则不进行任何操作。如果状态标志是“A”并且状态操纵标志是“10”,则如果掩码匹配的话会话的AB状态被设置为“A”,掩码不匹配的话则不进行任何操作。如果状态标志是“A”并且状态操纵标志是“11”,则如果掩码匹配的话会话的AB状态被设置为“A”,掩码不匹配的话则不进行任何操作。如果状态标志是“B”并且状态操纵标志是“00”,则如果掩码匹配的话会话的AB状态被设置为“B”,掩码不匹配的话则被设置为“A”。如果状态标志是“B”并且状态操纵标志是“01”,则不进行任何操作。如果状态标志是“B”并且状态操纵标志是“10”,则如果掩码匹配的话会话的AB状态被设置为“B”,掩码不匹配的话则不进行任何操作。如果状态标志是“B”并且状态操纵标志是“11”,则如果掩码匹配的话会话的AB状态被设置为“B”,掩码不匹配的话则不进行任何操作。
其数据与读取器所发送的掩码匹配的标签在当前设置的后向散射模式中以当前设置的后向散射速率(这两者都是由QueryA或QueryB命令设置的)来作出回复。它们发送一个1,然后是一比特时段的撬棍关断,16比特数据,然后是另一个撬棍关断时段,以及尾部的1。
例如,对SetState命令的回复包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,“0101010101010101”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
SELECT命令是寻址命令。SELECTED状态被保存在易失性存储器中,并且在通电重置时被清除,并且也通过用任何查询命令被清除。编程和第II类或更高类的命令被划分成寻址(SELECT)和数据交换部分,以允许用于寻址的标签通信硬件和寄存器被重新用于读和写。要执行KILL、ProgramID、VerifyID、LockID、Read和Write,标签要处于“被选中”状态中。(Select仅用于第I类标签中的Kill、Program和LockID)。
例如,SELECT命令包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11000010”)、会话号码(2比特)以及CRC8(从第一命令比特到会话号码计算)。
标签寻址的进行方式如下。
1)挑选开放会话。
2)发出用于该会话的掩码,该掩码足够特定以便可能只获得所需标签。
3)利用Query-ACK搜索标签,直到找到所需标签(通过其完整的ePC和CRC来识别它)。
4)发出SELECT命令。
响应于SELECT命令,处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”的状态中。处于“准备就绪”、“被选中”或“等待ACK”的起始状态中的标签不作出回复并进入“准备就绪”状态。处于“已确认”的起始状态中的标签在电力高到足够写入的情况下提供肯定回复,并且在电力没有高到足够写入的情况下提供否定回复,并且进入“被选中”状态。
被SELECT命令选中的标签在当前设置的后向散射模式中以当前设置和后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们发送一个1,然后是一比特时段的撬棍关断,16比特数据,然后是另一个撬棍关断时段,以及尾部的1。
例如,对SELECT命令的回复可以包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,如果电力没有高到足够写入则为“0000 0000 0000 0000”,如果电力高到足够写入则为“0101 0101 0101 0101”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
KILL命令是由SELECTED寻址模式所寻址的。匹配读取器在[VALUE]字段中发送的销毁代码的标签被解除激活并且不再对读取器查询作出响应。除了CRC计算外,超出标签支持的销毁代码的长度的任何比特都被忽略,并且如果标签的所有比特都匹配销毁代码,则销毁命令执行适当的销毁。KILL命令可能需要来自读取器的更高的场强度,因此是短程操作。在一个实施例中,在销毁代码之后,读取器发射100毫秒的“1”,然后是100毫秒的“0”,其后是15个“1”,然后是又100毫秒的“0”,以便标签完成该命令。
例如,KILL命令可以包括起动比特(4比特,“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11000011”)、销毁类型(2比特,对于完整销毁为“00”(擦除所有数据并永久失活),对于保留再循环为“01”(擦除除再循环字段外的所有数据),对于掩饰(cloak)为“10”(设置为不响应,但不擦除))、指针(8比特)、长度(8比特,掩码比特的长度)、销毁代码(可变长度)以及CRC8(对从第一命令比特到完整销毁代码的比特计算,包括销毁代码的任何被忽略的比特)。
要执行销毁命令标签首先要处于被选中状态中。标签忽略超出它能处理的长度的销毁代码数据。如果销毁代码匹配它确实拥有的比特,则它执行销毁。销毁代码较长的标签更安全,销毁代码较短的标签制造起来可能较便宜,但所有标签都是可兼容的。
响应于KILL命令,如果销毁代码匹配并且销毁成功的话,则处于“被选中”的起始状态中的标签在不回复的情况下将销毁比特设置为DEAD,并且进入“DEAD”状态。如果销毁代码匹配但是销毁不成功的话,则处于“被选中”的起始状态中的标签发送否定响应并保持在“被选中”状态中。处于“等待第一查询”的起始状态中的标签不作出回复并且保持在“等待第一查询”状态中。处于“准备就绪”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
只有未能成功尝试执行KILL命令的标签才在当前设置的后向散射模式中以当前设置的后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们发送一个1,然后是一比特时段的撬棍关断,16比特数据,然后是另一个撬棍关断时段,以及尾部的1。
例如,对KILL命令的回复可以包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,对于Kill命令失败为“0000 0000 0000 0000”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
标签被选中以便对ScrollMFG命令作出响应。例如,ScrollMFG命令可以包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11000100”)以及CRC8(对所有命令比特计算出的)。
响应于ScrollMFG命令,处于“被选中”的起始状态中的标签发送回复并保持在“被选中”的状态中。处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”状态中。处于“准备就绪”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
被选中的标签通过发回前序和随后的数据来对SCROLLMFG命令作出回复,所述数据永不被允许可编程。
例如,对ScrollMFG命令的回复包括前序(4比特,“0000”)、高曼彻斯特违倒、MANUFACTURER(制造商)(16比特,由授权机构分配)、MASK SET/PRODUCT CODE(掩码设置/产品代码)(16比特,由制造商定义),DIE NUMBER(管芯号码)(16比特,由制造商定义)、CAPABILITY CODE(能力代码)(16比特,由授权机构分配)、MEMORY SIZE(存储器大小)(16,其意义依赖于能力代码)以及CRC(16比特,对从制造商到发射的最后字段的所有比特计算)。ScrollMFG回复可以任选在MANUFACTURER字段之后的任何字段处结束。
编程命令使用与基本命令相同的命令结构和字段定义,但是一般只由标签编程设备或编程器发出。标签编程器可以类似于读取器,只不过除了执行基本命令外它还可以根据标签(以及IC)制造商认可的方法执行编程命令。
编程命令使得能够对标签存储器的内容进行编程,以及在锁定内容之前验证标签存储器的内容。
制造商可定义附加的可选命令,这些命令只具体用于制造测试。例如,这些命令需要具有在D7h到Dfh范围内的命令代码。
一旦标签制造商已锁定了标签数据内容,所有编程命令就都被禁用。对标签编程的特定定时是依赖于存储器技术的。
标签编程是以每次16比特的方式完成的。如果标签先前未被锁定,则编程一般是被允许的。如果不知道标签要被清除或者标签是在编程之前不需要擦除周期的类型的,则EraseID被用在ProgramID之前。
数据被用ProgramID命令发送到标签,在该命令中,[PTR]字段是要被编程的存储器行地址,[VAL]字段包含要被编程到选中的存储器行地址中的16比特数据。
一旦接收到有效ProgramID命令,标签就执行对存储器编程所需的适当的内部定时序列。
例如,ProgramID命令可以包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11000101”)、指针(8比特)、数据区域(2比特,对于CRC和ePC是“00”,对于用户数据(对于第I类没有)是“01”,对于销毁代码是“10”),长度(8比特,数据长度)、要编程的ID(可变长度)以及CRC8(对从第一命令比特到ID结束的所有字段计算)。
响应于ProgramID命令,处于“被选中”的起始状态中的标签如果未被锁定则写入数据并保持在“被选中”状态中。处于“被选中”的起始状态中的标签如果成功则发送肯定回复,而如果未成功则发送否定回复。处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”状态中。处于“准备就绪”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
执行ProgramID命令的标签在当前设置的后向散射模式中以当前设置的后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们发送一个1,然后是一比特时段的撬棍关断,16比特数据,然后是另一个撬棍关断时段,以及尾部的1。
例如,对ProgramID命令的回复包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,对于写入失败是“0000 0000 0000 0000”,对于成功写入是“0101 0101 0101 0101”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
标签擦除是以每次16比特的方式完成的。仅当标签以前未被锁定时,擦除ID才被允许。一旦接收到有效的EraseID命令,标签就执行对存储器编程所需的适当的内部定时序列。
例如,EraseID命令可以包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11000111”)以及CRC8(对从第一命令比特到ID结束的所有字段计算)。
响应于EraseID命令,处于“被选中”的起始状态中的标签如果未被锁定则尝试擦除ePC和CRC并保持在“被选中”状态中。处于“被选中”的起始状态中的标签如果成功则发送肯定回复而如果未成功则发送否定回复。处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”状态中。处于“准备就绪”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
执行EraseID命令的标签在当前设置的后向散射模式中以当前设置的后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们发送一个1,然后是一比特时段的撬棍关断,16比特数据,然后是另一个撬棍关断时段,以及尾部的1。
例如,对EraseID命令的回复包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,对于擦除失败是“0000 0000 0000 0000”,对于成功擦除是“01010101 0101 0101”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
VerifyID命令滚动出存储器的全部内容,包括受保护的字段。在被锁定之后,标签不对VerifyID作出响应。要执行VerifyID,标签要先被选中。
例如,VerifyID命令包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11001000”)以及CRC8(对所有命令比特计算)。
响应于EraseID命令,处于“被选中”的起始状态中的标签如果未被锁定则作出回复并保持在“被选中”状态中。处于“被选中”的起始状态中的标签如果未被锁定则不作出回复并进入“准备就绪”状态。处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”状态中。处于“准备就绪”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
其16比特握手与读取器发送的握手匹配的标签在当前设置的后向散射模式中以当前设置的后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们通过发送四(4)个一(1)比特,然后是一个读取器到标签比特时间的高违倒,以及以比特0开始的标签中的所有标识数据,来作出响应。读取器发送到标签的数据可能具有可变长度。数据之后是撬棍关断(高)违倒,以及4个尾部的一(1)。
例如,对VerifyID命令的回复可以包括TAGSPINUP(4比特,“1111”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签数据(可变长度,所有标签数据内容,包括受保护的字段)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(4比特,“1111”)。
LockID命令被用于在标签离开受控供应通道之前锁定标签的存储器的标识(CRC和ePC)部分。在执行LockID之前标签要先被选中。
例如,LockID命令可以包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11001001”)以及CRC8(对所有命令比特计算)。
响应于LockID命令,处于“被选中”的起始状态中的标签如果未被锁定则尝试锁定ePC和CRC。处于“被选中”的起始状态中的标签保持在“被选中”状态中,并且如果成功则提供肯定回复而如果未成功则提供否定回复。处于“等待第一查询”的起始状态中的标签不作出回复并保持在“等待第一查询”状态中。处于“准备就绪”、“等待ACK”或“已确认”的起始状态中的标签不作出回复并进入“准备就绪”状态。
被选择命令选中的标签执行LockID命令,然后在当前设置的后向散射模式中以当前设置的后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们发送一个1,然后是一比特时段的撬棍关断,来自下表的16比特,然后是另一个撬棍关断时段,以及尾部的1。
例如,对LockID命令的回复包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,对于LockID失败是“0000 0000 0000 0000”,对于命令成功是“0101 0101 0101 0101”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
第II类和更高类的标签使用与第I类标签相同的分离(singulation)方法和识别方法。此外,它们可具有附加的读/写存储器、安全性特征、传感器等等。第II类标签还可具有电池,以实现例如传感器记录。
第III类及以上的标签被定义为具有电池辅助的通信。第III类及以上的标签在低功率被动模式下对第I类命令作出响应,或者在较长距离内它们使用密钥传输来进入电池辅助通信模式。用于第三类及以上的标签的唤醒密钥下面将描述。这允许它们除了对专门针对它们的长距离交换以外都避免使用其电池辅助,从而减少了电池电力的使用。
与第II类及以上的标签的通信被标准化为基于句柄(handle)的I/O数据链路。句柄是由授权机构针对特定目的发出的,并且与SCROLLMFG信息一起,可以用于引出和行使标签的能力。几个示例性能力代码和相应的句柄包括00XX XXXX XXXX XXXX用于查找表的句柄和能力;01XX XXXX XXXX XXXX用于子字段的句柄和能力;
01XX XXXX XXXX 0000针对无存储器;01XX XXXX XXXX 0001针对比特宽的存储器,以比特为单位的0-7FFFFF存储器地址,读起始于给定地址处的LEN个比特,在给定地址处写LEN个比特;01XX XXXX XXXX 0010针对字节宽的存储器,以字节为单位的0-7FFFFF存储器地址,读起始于给定地址处的LEN个比特,在给定地址处写LEN个比特;01XX XXXX XXX1 XXXX针对暂存型存储器,例如1)1-7FFFFF存储器地址,读起始于给定地址处的LEN个比特,将地址和LEN个数据比特写入暂存,或者2)FFFFFF,验证暂存的数据和地址,或3)FFFFFE,将暂存写入存储器中;01XX XXXX 000X XXXX针对无安全性;01XX XXXX 001X XXXX针对密钥交换安全性,例如1)FFFFFD,写安全性令牌,LEN个比特长,或2)FFFFFC,读安全性令牌;01XX XX00 XXXX XXXX针对无温度;01XX XX01 XXXX XXXX针对温度间隔记录器,例如1)FFFFFFB间隔,以秒为单位设置间隔,读当前间隔,或者2)FFFFFFA,设置每次读取的温度数目,或者3)FFFE 0000 0000-FFFE FFFF FFFF,读温度,过去的Handle-FFFE0000000 0个间隔。
READ命令是用于从第II类或更高类标签取得数据的基本命令。它只由SELECTED寻址模式所寻址,并且使用作为读地址或句柄的24比特PTR字段,以及LEN字段,该字段是要读取的比特数目,或者被用作其含义由句柄确定的第二参数。
例如,READ命令包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11010000”)、读句柄(24比特,其含义由能力代码确定)、数据区域(比特,对于CRC和ePC是“00”,对于用户数据(第I类没有)是“01”,对于销毁代码是“10”)、长度(8比特,要读取的数据长度)以及CRC8(8比特,对从第一命令比特到长度结束的所有字段计算)。
标签返回的数据由能力代码和所使用的句柄确定。它可能包含CRC。
例如,对读命令的回复包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、数据(可变长度数据)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
WRITE命令是用于向第II类或更高类标签写入数据的基本命令。它只由SELECTED寻址模式所寻址,并且使用作为读地址或句柄的24比特PTR字段,16比特LEN,以及其长度由[LEN]参数确定的可变长度数据字段。
例如,WRITE命令包括起动比特(4比特“0000”)、曼彻斯特高违倒(1比特)、命令比特(8比特,“11010001”)、写句柄(24比特,其含义由能力代码确定)、长度(8比特,数据长度(粒度由句柄和能力代码确定),要写入的数据(可变长度)以及CRC8(8比特)。
被选择命令所选中的标签执行WRITE命令,并且在当前的后向散射模式中以当前的后向散射速率(这两者都是由QueryA或QueryB命令设置的)作出回复。它们发送一个1,然后是一比特时段的撬棍关断,来自下表的16比特,然后是另一个撬棍关断时段,以及尾部的1。
例如,对WRITE命令的回复可以包括TAGSPINUP(1比特,“1”)、高违倒(针对后向散射调制比特时段的撬棍关断)、标签确认(16比特,对于写入失败是“0000 0000 0000 0000”,对于写入成功是“0101 0101 0101 0101”)、高违倒(针对后向散射调制比特时段的撬棍关断)以及TAGTRAILER(1比特,“1”)。
本发明的一个实施例包括利用协议的两状态对称性,这比起本领域公知的准备就绪-安静(ready-quiet)协议来有优势。对称协议通过将安静-准备就绪状态对称化为两个对称的半部分,即协议的状态A和状态B,从而从效果上而言具有更小的状态依赖性。
在标签已被清点并被置于安静状态,并且希望从不同的读取器站再次清点它们,或者作为用于适时监视被移除的标签的连续清点的一部分而再次清点它们的情况下,本说明书中描述的对称性比起准备就绪-安静协议来性能大有提高。
在准备就绪-安静协议的情况下,标签一旦被置于安静状态中,就必须先被交谈命令所触及,然后才能参与清点。在清点之前可发出若干交谈命令,但是如果多路径干扰很强,发射频率错误,或者如果标签在该时间点处于读取器范围之外,则不保证标签将接收到交谈命令。通过消除对看到交谈命令的需要,标签可在单个“幸运”时间或位置期间被计数,从而扩展了协议的有效可靠范围。
对于持续安静使用超时可能是更简单的备选方案,但是制造具有严格受控的持续时间的标签是困难的。另外,例如,10秒超时可能太短,以至于无法清点大量标签,而30秒却可能长到足以干扰正在跟踪轨迹上的项目或正在抓获破坏标签或将项目放进屏蔽袋中并带着项目离开的行窃者的多个读取器。
一种推荐的标签实现方式是提供持续节点,该持续节点即使在无电力的情况下也将其状态保持至少二十秒。假设持续节点衰减到零(0)状态、
编码状态A,而[1]编码状态B。状态B随时间期满而进入状态A。对于状态B持续的时间没有上限,但是不允许处于被随机加电进入状态A或状态B的状态中。建议的实现方式是在每个命令期间的某个时刻刷新持续节点,不论此标签是否被命令寻址。
读取器将会通过按前一部分中所描述的用QueryA或QueryRep命令以及ACK进行清点来启动。在没有更多标签作出响应之后,读取器将会继续进行高级别的(例如利用如上所述的比特掩蔽来寻址很多标签)查询命令以探测任何未被计数的标签。注意,处于状态A中的标签即使只被供电了很短的一段时间(只长到足够看到用于同步其时钟的命令、QueryA、ACK和一个后续的命令),它也会被计数。此时,所有已被清点的标签都处于状态B中。在预定的时间量之后,新的清点将会用QueryB以相同的方式完成。不需要进行任何单独的交谈或唤醒命令,因为所有在该时刻被供电的标签都已被置于状态B中。在该清点之后,所有被清点的标签都处于状态A中,并且读取器可继续进行一段时间的高级别QueryA命令。然后A清点将会再次启动,不需要发出交谈命令,因此不可能有交谈命令被错过。
任何连续处于场中的标签都在每次清点(不论是针对状态A还是针对状态B的)中被计数。任何进入场中的标签在最坏情况下将在其进入场中之后的第二次清点中被计数,与使用准备就绪-安静协议时的最坏情况时间相同,即使在安静-交谈型协议中在每次清点开始时的交谈命令是保证被接收到的。
在RFID系统中的持续安静能力在当标签移动通过读取器的场时对靠近读取器范围边沿的标签进行计数的过程中提供了一致性。对于范围边沿处的标签,由于在标签或其他物体移动到读取器场中时频率被改变和/或多路径干扰改变,因此标签可用的电力发生波动并且可能只够在短时间内为标签供电。持续睡眠允许大多数标签被迅速计数,并且针对将重复的Q=0查询,挑出仅被间歇供电的标签。对称命令将此综合计数能力扩展到这样的标签这些标签刚刚被清点过并被置于安静状态中,因此如果它们未接收到唤醒命令则可能会被漏掉。作为连续清点过程的一部分它也是有用的。
此方法防止了标签永远进入它们难以被计数的状态,当在准备就绪-安静协议的安静状态中时它们就难以被计数。乍看起来似乎不难走出安静状态,因为可使用交谈命令。但是,如果标签对于读取器来说是未知的,则只有高级别的交谈命令才可能将其唤醒,而高级别的交谈命令也将会唤醒所有其他标签。似乎如果标签处于安静状态中,则无论如何它最近刚被清点过,但是如果是不同的读取器站进行的该清点,或者如果需要连续清点,则标签需要再次被清点。如果标签处于准备就绪-安静协议的安静状态中,则它两次被触及,这两次触及发生在相隔很远的时间并且可能是以两个频率进行的。它需要在整个标签场被唤醒时活动一次,后来又在该特定标签被清点时再次活动。需要发生两个事件大大影响了对处于RF范围边沿并且仅被间断供电的标签计数的概率,而这可通过使用对称协议来避免。另外,通过不需要发出附加交谈命令而节省了时间。
在本发明的一个实施例中,RF传输层是为UHF操作设计的,但是也可使用其他备选操作。标签到读取器和读取器到标签链路被定义为半双工的。读取器通过发送命令序列来发起与标签的通信。然后读取器通过发射未经调制的载波并监听来自标签的回复,来为标签提供回复时段。预期标签在回复的同时不能检测读取器调制。RF传输层可使用以下频带北美的902-928MHz和2400.0-2483.5MHz,欧洲的869.4-869.65MHz和865.6-867.6MHz,以及接近2450MHz的UHF频带。这些UHF频带具有以下特征高速(在北美高达160Kps)读取器到标签系统数据速率;320kbps或更快的标签到读取器系统数据速率;在典型条件下的2米及以上范围内的高命中率的稳定操作;相对较小的标签和读取器天线;以及北美频带宽到足以允许相当大的跳频。
读取器可能处于以下三个可用状态之一中OFF(不发射RF能量)、CW(以某个功率级别发射RF能量,但没有幅度调制),以及活动(发射RF能量并且有幅度调制)。
图10示出读取器到标签调制的实施例。在活动状态中,读取器到标签链路以30%的最小调制深度使用分相曼彻斯特编码。数据一(1)可通过高RF时段后跟随低RF时段来编码。数据零(0)可通过低RF时段后跟随高RF时段来编码。调制形状、深度和调制速率在下述极限内是可变的。标签在某个调制速率范围上调整其定时以自动锁定到读取器发射。下降沿将被保持在距其标称时间有少量抖动的位置处,如曼彻斯特编码所定义的。下降时间可随其标称值变化以适应RF占空因数。
一般调制参数在图11中示出。要理解,脉冲调制参数的特定值可以是本地管制环境的函数。例如,脉冲调制参数可以包括T0基本时钟周期时段。从读取器向标签发送单个比特的时间。
Tr调制包络的上升时间,调制幅度变化的10%到90%。
Tf调制包络的下降时间,调制幅度变化的10%到90%。
Tfwhm在调制幅度变化的50%处测量的调制包络的脉冲宽度。
Mod被调制载波的幅度变化。
Ripple预计调制的边沿处的调制过冲和下冲中的峰到峰变化。
Dmod调制深度相对于预计值的峰到峰变化。
T0Tol主时钟间隔容限,读取器信令的基本精度。
TCW紧邻命令之前的最小CW时间。
TCoastEOF和下一命令之间的最大持续时间,以确保标签时钟充分精确以对下一命令进行解码。
在一种实现方式中,对于读取器调制序列,在事务长度期间读取器时钟稳定到1%内。所有其他基本时钟周期定时与调制时钟频率T0成比例。在一种实现方式中,调制参数具有以下值,其中除非另有注释否则所有时间和频率都按T0换算。
T0主时钟间隔(6us到24us)T0Tol主时钟间隔容限(最大为±0.1%)DR数据速率(1/T0)Trisejitter下降沿中相对于标称值的最大抖动(0.01*T0)DutyCycleRF高时段占空因数(=50%或>50%)MOD调制深度(最小为30%)Tf最大下降时间(1/4T0)Tr最大上升时间(1/4T0)Ripple波纹(10%pp)TCW任何命令之前的最小CW时间,可能与响应CW间隔交叠(4×T0)TCoastEOF和下一命令之间的持续时间(最大为5ms,不按T0换算)图12示出读取器到标签调制编码的示例。在一种实现方式中,所有事务都以每个命令之前的最小CW时段开始,以允许标签定位命令的开始。所有命令都以4个起动比特开始,以同步标签时钟。在命令的数据调制期间,标签通过参考读取器到标签数据调制的被保持到低时间抖动的下降沿来保持其时钟相位。比特时段时间T0确定读取器到标签的数据速率。在上一脉冲之后,标签准备好在最小CW时间后接收下一命令,并且能够对在Tcoast间隔内接收到的命令解码。
为了使标签能够成功地解码下一命令,读取器在Tcoast间隔内启动下一事务。当载波被关断充分长的时间以便标签释放DC电力时,此限制不适用,因为标签在下一次加电时重新同步。如果在一次起动中标签时钟频率被调整超过20%,则标签不对该命令作出响应。
图13示出针对数据“0”、“1”和曼彻斯特高违倒的数据调制定时。用于数据=“0”时的读取器到标签时钟生成的数据调制定时Tdata0是通过RF低时段后跟随高时段来编码的。用于数据=“1”时的读取器到标签时钟生成的数据调制定时Tdata1是通过RF高时段后跟随RF低时段来编码的。用于曼彻斯特高违倒的读取器到标签时钟生成的数据调制定时Tdata1是通过两个连续的RF高时段来编码的。
读取器可任选缩短以下需要响应的命令之间的时间。读取器可在回复时段期间监听标签回复,并且如果在时间(TTagscrollDel+2*T0)期满之前标签未启动回复,则可以缩短该回复间隔的持续时间。
标签通过在两个状态之间调制其后向散射来回复读取器。这两个状态可在相位或幅度或者两者上调制后向散射。
假设但不要求这些状态之一将削弱标签的能量收集能力,并且在本文档中将其称为“撬棍接通”状态。假设标签的后向散射状态是“撬棍关断”的,直到后向散射调制开始。由于许多标签需要在后向散射调制结束时返回“撬棍关断”状态,因此所有标签都需要从其后向散射状态返回到在启动后向散射回复之前它们所处的状态。该事务发生在所发射的最后的后向散射转换(转换到撬棍接通状态)结束之后,其时间等于后向散射调制模式中的最小特征大小。
标签到读取器调制由读取器到标签命令的[MODULATION]字段选择,在[MODULATION]=0情况下为FM0,在[MODULATION]=1情况下为F2F,或者对于[MODULATION]=3是尚未定义的高频模式。所有标签都需要实现所有三种形式的编码。读取器可实现一个或多个解码器。F2F编码的基元(primitive)与FM0相同,并且定时也相同,但是两个FM0基元被用于编码F2F的每个比特。可通过使用前有比特反相器的FM0编码器并为每个比特连续编码两次来实现F2F编码器。
在FM0中,标签用后向散射调制来回复读取器命令。在每个比特时段之间后向散射状态有变化,并且0比特在比特时间中央处具有附加的后向散射状态变化。标签到读取器的标称数据速率是读取器到标签速率的四倍,但是由于标签中的振荡器漂移,在80比特的响应窗口期间可能变化达±10%。可以预期,FM0被用于后向散射噪声环境可被控制(即荧光灯周围的屏蔽等等)的情况中。
在F2F中,标签以遵循四(4)间隔比特单元编码方案的后向散射调制来回复读取器命令。在比特单元期间,对于零(0)观察到两(2)个转换,对于一(1)观察到四(4)个转换。标签到读取器的标称数据速率是读取器到标签速率的两倍,但是由于标签中的振荡器漂移,在80比特的响应窗口期间可能变化达±10%。
标签到读取器调制参数的某些示例在以下列出。
T0读取器到标签主时钟间隔;TTagbitcell标签到读取器比特单元间隔(对于FM0是T0/4,对于F2F是T0/2);标签数据速率标签到读取器标称数据速率(对于FM0是4/T0,对于F2F是2/T0);TtagscrollDel从命令结束到标签ScrollID回复开始的回复延迟(2×T0);TTagDel从命令结束到标签ID回复开始的回复延迟(2×T0);TTagreplyNom8+16+96比特ScrollID回复的标签到读取器回复持续时间(TTagbitcell×120比特);ΔTTagbitcell在120比特ScrollID回复的最后比特处的标签到读取器比特单元间隔变化(最大为±10%);TCoastEOF和下一命令之间的持续时间(最大为5ms)。
从数据结束到对ScrollID或VerifyID命令的回复开始的延迟TTagscrollDel在图14中示出。ScrollID回复的持续时间TTagreplyNom也在图14中示出。比特单元持续时间的变化ΔTTagbitcell在图15中示出。
标签到读取器比特单元编码在图16中示出。在FM0编码中,标签后向散射的状态在每个比特边沿处改变,并且附加的状态变化发生在与“0”数据比特相对应的比特间隔的中间。撬棍开始于关断状态中,并且在第一数据比特开始时首次转换到接通状态。在可能具有额外1比特时间的较后边沿处,如果需要将调制保持在高状态中(而不是撬棍状态中),则最后的比特间隔转换被插入在末尾处。
在F2F编码中,通过对于每比特单元选择两个符号之一来调制标签后向散射。在这种编码方案下,在比特中间始终有转换,并且与曼彻斯特编码不同,当代码被反转时,零和一的感觉被保持。图17示出这种反转。
从本说明书中可清楚看出,本发明的方面至少可以部分地实现在软件中。即,这些技术可在计算机系统或其他数据处理系统中响应于其处理器(例如微处理器113或控制器207)执行存储器(例如存储器111或存储器319)中包含的指令序列而被执行。在各种实施例中,硬连线电路可以与软件指令结合使用以实现本发明。从而,这些技术不限于硬件电路和软件的任何特定组合,也不限于数据处理系统所执行的指令的任何特定源。此外,在整篇说明书中,各种功能和操作被描述为由软件代码所执行或导致,以便简化描述。但是,本领域的技术人员将会意识到这种表达的意思是功能产生于诸如微处理器113或控制器207这样的处理器对代码的执行。
机器可读介质可被用于存储软件和数据,这些软件和数据在被数据处理系统执行时致使系统执行本发明的各种方法。此可执行软件和数据可被存储在各种地方,例如包括存储器111或存储器319。此软件和/或数据的某些部分可被存储在这些存储设备中的任何一个中。
从而,机器可读介质包括任何提供(即存储和/或传输)采取可由机器(例如计算机、网络设备、个人数字助理、制造工具、任何具有一个或多个处理器的集合的设备等等)访问的形式的信息的机构。例如,机器可读介质包括可记录/不可记录介质(例如只读存储器(ROM);随机访问存储器(RAM);磁盘存储介质;光存储介质;闪存设备;等等),以及电、光、声或其他形式的传播信号(例如载波、红外信号、数字信号等);等等。
本说明书中使用的某些缩写在以下列出。
AM幅度调制;CRC循环冗余校验;CW连续波;kbps千比特每秒;LSB最低有效比特;ms毫秒(10-3秒);MHz兆赫兹(106赫兹);MSB最高有效比特;RAM随机访问存储器;RF射频;RFID射频识别;RTF读取器先说;us微秒(10-6秒);VLC超低成本。
在以上的说明书中,已参考本发明的特定典型实施例描述了本发明。很明显,可在不脱离权利要求书中阐述的本发明的更宽的精神和范围的情况下对其做出各种修改。因此,应当从示例意义而不是限制意义上来看待说明书和附图。
权利要求
1.一种用于查询多个标签的方法,该方法包括广播一个或多个包括第一概率参数值的第一查询命令,所述第一概率参数值指示第一回复概率,其中所述多个标签中的每一个随机地确定是否回复;以及检测响应于所述第一查询命令的回复。
2.如权利要求1所述的方法,还包括响应于确定不存在对所述一个或多个第一查询命令的回复而广播包括第二概率参数值的第二查询命令,所述第二概率参数值指示大于所述第一回复概率的第二回复概率。
3.如权利要求1所述的方法,还包括响应于确定不存在对所述一个或多个第一查询命令的可辨回复而广播包括第二概率参数值的第二查询命令,所述第二概率参数值指示小于所述第一回复概率的第二回复概率。
4.如权利要求1所述的方法,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
5.如权利要求4所述的方法,其中p基本等于0.5。
6.如权利要求1所述的方法,其中所述多个标签中的第一标签的第一回复概率不同于所述多个标签中的第二标签的第一回复概率。
7.如权利要求1所述的方法,其中所述第一查询命令还包括指示第一状态的状态标志,其中处于第二状态的标签不回复所述第一查询命令,而处于所述第一状态的标签根据所述第一概率参数值来随机地回复所述第一查询命令。
8.如权利要求7所述的方法,还包括广播包括第二概率参数值和指示所述第二状态的状态标志的第二查询命令,其中处于所述第一状态的标签不回复所述第二查询命令,而处于所述第二状态的标签根据所述第二概率参数值来随机地回复所述第二查询命令;以及检测响应于所述第二查询命令的回复。
9.如权利要求8所述的方法,其中所述第一和第二查询命令相对于所述第一和第二状态对称。
10.如权利要求7所述的方法,还包括响应于对所述第一查询命令的可辨回复而发送第二命令,其中所述可辨回复包括第一握手数据,所述第二命令包括所述第一握手数据;以及接收作为对所述第二命令的回复的标签标识数据。
11.如权利要求10所述的方法,还包括当没有成功接收到所述标签标识数据时,发送命令以指示接收所述标签标识数据时的差错。
12.如权利要求1所述的方法,还包括广播不包括概率参数值的第二查询命令。
13.如权利要求12所述的方法,其中所述第一查询命令包括多个参数的第一值,所述第一值包括所述第一概率参数值;以及所述第二查询命令不包括所述多个参数的值。
14.如权利要求13所述的方法,其中所述第二查询命令比所述第一查询命令短得多。
15.一种标签用以对来自读取器的查询作出响应的方法,该方法包括从所述读取器接收包括第一概率参数值的第一查询命令;以及随机判定是否回复所述第一查询命令,其中回复概率由所述第一概率参数值确定。
16.如权利要求15所述的方法,还包括响应于对回复的随机判定而发送具有第一握手数据的回复。
17.如权利要求16所述的方法,其中所述第一握手数据是响应于所述第一查询命令而生成的随机数。
18.如权利要求15所述的方法,其中所述第一概率参数值是整数Q,所述第一回复概率基本等于pQ,而p小于1。
19.如权利要求18所述的方法,其中p基本等于0.5。
20.如权利要求15所述的方法,其中所述第一查询命令还包括指示第一状态的状态标志,其中如果所述标签处于第二状态,该标签则不回复所述第一查询命令,而如果所述标签处于所述第一状态,该标签则根据所述第一概率参数值来随机地回复所述第一查询命令。
21.如权利要求20所述的方法,还包括接收包括第二概率参数值和指示所述第二状态的状态标志的第二查询命令;并且随机判定是否回复所述第二查询命令,其中如果所述标签处于所述第二状态,则回复概率由所述第二概率参数值确定,而如果所述标签处于所述第一状态,该标签则不回复所述第二查询命令。
22.如权利要求21所述的方法,其中所述标签处理相对于所述第一和第二状态对称的所述第一和第二查询命令。
23.如权利要求20所述的方法,还包括响应于对回复的随机判定来发送具有第一握手数据的第一回复;以及响应于从所述读取器接收到包括所述第一握手数据的第二命令而发送具有标签标识数据的第二回复。
24.如权利要求23所述的方法,还包括响应于在发送所述第二回复后接收到查询命令而从所述第一状态切换到所述第二状态,其中在接收到指示在所述读取器处接收所述标签标识数据时的差错的命令之后,如果在指示所述差错的命令之后接收到查询命令,所述标签则保持在所述第一状态中。
25.如权利要求15所述的方法,还包括接收不包括概率参数值的第二查询命令;以及随机判定是否回复所述第二查询命令,其中回复概率是由所述第一概率参数值确定的。
26.如权利要求25所述的方法,其中所述第一查询命令包括多个参数的第一值,所述第一值包括所述第一概率参数值;所述第二查询命令不包括所述多个参数的值;并且所述标签根据所述多个参数的第一值来处理所述第二查询命令。
27.如权利要求26所述的方法,其中所述第二查询命令比所述第一查询命令短得多。
28.一种用于查询多个标签的读取器,该读取器包括用于广播一个或多个包括第一概率参数值的第一查询命令的装置,所述第一概率参数值指示第一回复概率,其中所述多个标签中的每一个随机地确定是否回复;以及用于检测响应于所述第一查询命令的回复的装置。
29.如权利要求28所述的读取器,还包括用于响应于确定不存在对所述一个或多个第一查询命令的回复而广播包括第二概率参数值的第二查询命令的装置,所述第二概率参数值指示大于所述第一回复概率的第二回复概率。
30.如权利要求28所述的读取器,还包括用于响应于确定不存在对所述一个或多个第一查询命令的可辨回复而广播具有第二概率参数值的第二查询命令的装置,所述第二概率参数值指示小于所述第一回复概率的第二回复概率。
31.如权利要求28所述的读取器,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
32.如权利要求31所述的读取器,其中p基本等于0.5。
33.如权利要求28所述的读取器,其中所述多个标签中的第一标签的第一回复概率不同于所述多个标签中的第二标签的第一回复概率。
34.如权利要求28所述的读取器,其中所述第一查询命令还包括指示第一状态的状态标志,其中处于第二状态的标签不回复所述第一查询命令,而处于所述第一状态的标签根据所述第一概率参数值来随机地回复所述第一查询命令。
35.如权利要求34所述的读取器,还包括用于广播包括第二概率参数值和指示第二状态的状态标志的第二查询命令的装置,其中处于所述第一状态的标签不回复所述第二查询命令,而处于所述第二状态的标签根据所述第二概率参数值来随机地回复所述第二查询命令;以及用于检测响应于所述第二查询命令的回复的装置。
36.如权利要求35所述的读取器,其中所述第一和第二查询命令相对于所述第一和第二状态对称。
37.如权利要求34所述的读取器,还包括用于响应于对所述第一查询命令的可辨回复而发送第二命令的装置,其中所述可辨回复包括第一握手数据,所述第二命令包括所述第一握手数据;以及用于接收作为对所述第二命令的回复的标签标识数据的装置。
38.如权利要求37所述的读取器,还包括用于当没有成功接收到所述标签标识数据时,发送命令以指示接收所述标签标识数据时的差错的装置。
39.如权利要求28所述的读取器,还包括用于广播不包括概率参数值的第二查询命令的装置。
40.如权利要求39所述的读取器,其中所述第一查询命令包括多个参数的第一值,所述第一值包括所述第一概率参数值;以及所述第二查询命令不包括所述多个参数的值。
41.如权利要求40所述的读取器,其中所述第二查询命令比所述第一查询命令短得多。
42.一种对来自读取器的查询作出响应的标签,该标签包括用于从所述读取器接收包括第一概率参数值的第一查询命令的装置;以及用于随机判定是否回复所述第一查询命令的装置,其中回复概率由所述第一概率参数值确定。
43.如权利要求42所述的标签,还包括用于响应于对回复的随机判定而发送具有第一握手数据的回复的装置。
44.如权利要求43所述的标签,其中所述第一握手数据是响应于所述第一查询命令而生成的随机数。
45.如权利要求42所述的标签,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
46.如权利要求45所述的标签,其中p基本等于0.5。
47.如权利要求42所述的标签,其中所述第一查询命令还包括指示第一状态的状态标志,其中如果所述标签处于第二状态,该标签则不回复所述第一查询命令,而如果所述标签处于所述第一状态,该标签则根据所述第一概率参数值来随机地回复所述第一查询命令。
48.如权利要求47所述的标签,还包括用于接收包括第二概率参数值和指示所述第二状态的状态标志的第二查询命令的装置;并且用于随机判定是否回复所述第二查询命令的装置,其中如果所述标签处于所述第二状态,则回复概率由所述第二概率参数值确定,而如果所述标签处于所述第一状态,该标签则不回复所述第二查询命令。
49.如权利要求48所述的标签,其中所述标签处理相对于所述第一和第二状态对称的所述第一和第二查询命令。
50.如权利要求47所述的标签,还包括用于响应于对回复的随机判定来发送具有第一握手数据的第一回复的装置;以及用于响应于从所述读取器接收到包括所述第一握手数据的第二命令而发送具有标签标识数据的第二回复的装置。
51.如权利要求50所述的标签,还包括用于响应于在发送所述第二回复后接收到查询命令而从所述第一状态切换到所述第二状态的装置,其中在接收到指示在所述读取器处接收所述标签标识数据时的差错的命令之后,如果在指示所述差错的命令之后接收到查询命令,所述标签则保持在所述第一状态中。
52.如权利要求42所述的标签,还包括用于接收不包括概率参数值的第二查询命令的装置;以及用于随机判定是否回复所述第二查询命令的装置,其中回复概率是由所述第一概率参数值确定的。
53.如权利要求52所述的标签,其中所述第一查询命令包括多个参数的第一值,所述第一值包括所述第一概率参数值;所述第二查询命令不包括所述多个参数的值;并且所述标签根据所述多个参数的第一值来处理所述第二查询命令。
54.如权利要求53所述的标签,其中所述第二查询命令比所述第一查询命令短得多。
55.一种包含指令的机器可读介质,所述指令在数据处理系统上执行时致使所述系统执行用于查询多个标签的方法,该方法包括广播一个或多个包括第一概率参数值的第一查询命令,所述第一概率参数值指示第一回复概率,其中所述多个标签中的每一个随机地确定是否回复;以及检测响应于所述第一查询命令的回复。
56.如权利要求55所述的介质,其中所述方法还包括响应于确定不存在对所述一个或多个第一查询命令的回复而广播包括第二概率参数值的第二查询命令,所述第二概率参数值指示大于所述第一回复概率的第二回复概率。
57.如权利要求55所述的介质,其中所述方法还包括响应于确定不存在对所述一个或多个第一查询命令的可辨回复而广播具有第二概率参数值的第二查询命令,所述第二概率参数值指示小于所述第一回复概率的第二回复概率。
58.如权利要求55所述的介质,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
59.如权利要求58所述的介质,其中p基本等于0.5。
60.如权利要求55所述的介质,其中所述多个标签中的第一标签的第一回复概率不同于所述多个标签中的第二标签的第一回复概率。
61.如权利要求55所述的介质,其中所述第一查询命令还包括指示第一状态的状态标志,其中处于第二状态的标签不回复所述第一查询命令,而处于所述第一状态的标签根据所述第一概率参数值来随机地回复所述第一查询命令。
62.如权利要求61所述的介质,其中所述方法还包括广播包括第二概率参数值和指示第二状态的状态标志的第二查询命令,其中处于所述第一状态的标签不回复所述第二查询命令,而处于所述第二状态的标签根据所述第二概率参数值来随机地回复所述第二查询命令;以及检测响应于所述第二查询命令的回复。
63.如权利要求62所述的介质,其中所述第一和第二查询命令相对于所述第一和第二状态对称。
64.如权利要求61所述的介质,其中所述方法还包括响应于对所述第一查询命令的可辨回复而发送第二命令,其中所述可辨回复包括第一握手数据,所述第二命令包括所述第一握手数据;以及接收作为对所述第二命令的回复的标签标识数据。
65.如权利要求64所述的介质,其中所述方法还包括当没有成功接收到所述标签标识数据时,发送命令以指示接收所述标签标识数据时的差错。
66.如权利要求55所述的介质,其中所述方法还包括广播不包括概率参数值的第二查询命令。
67.如权利要求66所述的介质,其中所述第一查询命令包括多个参数的第一值,所述第一值包括所述第一概率参数值;以及所述第二查询命令不包括所述多个参数的值。
68.如权利要求67所述的介质,其中所述第二查询命令比所述第一查询命令短得多。
69.一种对来自读取器的查询作出响应的标签,该标签包括天线;耦合到所述天线的集成电路,用于从所述读取器接收具有第一概率参数值的第一查询命令;以及随机判定是否回复所述第一查询命令,其中回复概率由所述第一概率参数值确定。
70.如权利要求69所述的标签,所述耦合到天线的集成电路还用于响应于对回复的随机判定而发送具有第一握手数据的回复。
71.如权利要求70所述的标签,其中所述第一握手数据是响应于所述第一查询命令而生成的随机数。
72.如权利要求69所述的标签,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
73.如权利要求72所述的标签,其中p基本等于0.5。
74.如权利要求69所述的标签,其中所述第一查询命令还包括指示第一状态的状态标志,其中如果所述标签处于第二状态,该标签则不回复所述第一查询命令,而如果所述标签处于所述第一状态,该标签则根据所述第一概率参数值来随机地回复所述第一查询命令。
75.如权利要求74所述的标签,所述耦合到天线的集成电路还用于接收包括第二概率参数值和指示所述第二状态的状态标志的第二查询命令;并且随机判定是否回复所述第二查询命令,其中如果所述标签处于所述第二状态,则回复概率是根据所述第二概率参数值的,而如果所述标签处于所述第一状态,该标签则不回复所述第二查询命令。
76.如权利要求75所述的标签,其中所述标签处理相对于所述第一和第二状态对称的所述第一和第二查询命令。
77.如权利要求74所述的标签,所述耦合到天线的集成电路还用于响应于对回复的随机判定来发送具有第一握手数据的第一回复;以及响应于从所述读取器接收到包括所述第一握手数据的第二命令而发送具有标签标识数据的第二回复。
78.如权利要求77所述的标签,所述耦合到天线的集成电路还用于响应于在发送所述第二回复后接收到查询命令而从所述第一状态切换到所述第二状态,其中在接收到指示在所述读取器处接收所述标签标识数据时的差错的命令之后,如果在指示所述差错的命令之后接收到查询命令,所述标签则保持在所述第一状态中。
79.如权利要求69所述的标签,所述耦合到天线的集成电路还用于接收不包括概率参数值的第二查询命令;以及随机判定是否回复所述第二查询命令,其中回复概率是由所述第一概率参数值确定的。
80.如权利要求79所述的标签,其中所述第一查询命令包括多个参数的第一值,所述第一值包括所述第一概率参数值;所述第二查询命令不包括所述多个参数的值;并且所述标签根据所述多个参数的第一值来处理所述第二查询命令。
81.如权利要求80所述的标签,其中所述第二查询命令比所述第一查询命令短得多。
82.一种用于查询多个标签的装置,包括天线;以及读取器,包括耦合到所述天线的接收器;耦合到所述天线的发射器;耦合到所述接收器、所述发射器和存储器的处理器,该处理器控制所述发射器和所述接收器,所述读取器广播一个或多个包括第一概率参数值的第一查询命令,所述第一概率参数值指示第一回复概率,其中所述多个标签中的每一个随机地确定是否回复;以及所述读取器还检测响应于所述第一查询命令的回复。
83.如权利要求82所述的装置,所述读取器还响应于确定不存在对所述一个或多个第一查询命令的回复而广播包括第二概率参数值的第二查询命令,所述第二概率参数值指示大于所述第一回复概率的第二回复概率。
84.如权利要求82所述的装置,所述读取器还响应于确定不存在对所述一个或多个第一查询命令的可辨回复而广播包括第二概率参数值的第二查询命令,所述第二概率参数值指示小于所述第一回复概率的第二回复概率。
85.如权利要求82所述的装置,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
86.如权利要求82所述的装置,其中p基本等于0.5。
87.如权利要求82所述的装置,其中所述多个标签中的第一标签的第一回复概率不同于所述多个标签中的第二标签的第一回复概率。
88.如权利要求82所述的装置,其中所述第一查询命令还包括指示第一状态的状态标志,其中处于第二状态的标签不回复所述第一查询命令,而处于所述第一状态的标签根据所述第一概率参数值来随机地回复所述第一查询命令。
89.如权利要求88所述的装置,所述读取器还广播包括第二概率参数值和指示第二状态的状态标志的第二查询命令,其中处于所述第一状态的标签不回复所述第二查询命令,而处于所述第二状态的标签根据所述第二概率参数值来随机地回复所述第二查询命令,并且所述读取器还检测响应于所述第二查询命令的回复。
90.一种包含指令的机器可读介质,所述指令在数据处理系统上执行时致使所述系统执行用于对来自读取器的查询作出响应的方法,该方法包括从所述读取器接收包括第一概率参数值的第一查询命令;以及随机判定是否回复所述第一查询命令,其中回复概率由所述第一概率参数值确定。
91.如权利要求90所述的方法,还包括响应于对回复的随机判定而发送具有第一握手数据的回复。
92.如权利要求91所述的方法,其中所述第一握手数据是响应于所述第一查询命令而生成的随机数。
93.如权利要求90所述的方法,其中所述第一概率参数值是整数Q,所述多个标签中的一个的第一回复概率基本等于pQ,而p小于1。
94.如权利要求93所述的方法,其中p基本等于0.5。
全文摘要
本发明的实施例包括具有读取器和标签的系统,其中读取器利用包括回复概率等级的参数查询标签,标签根据该回复概率等级来单独地随机判定是否回复。在一个实施例中,标签可以在两个状态间切换状态A和状态B。查询命令还指定状态(A或B),以使只有处于指定状态的标签可以回复。在成功地从标签向读取器发送出标签标识数据之后,标签从指定状态切换到另一状态。在一个实施例中,关于两个状态的操作是对称的。在一个实施例中,标签可以记住在查询中使用的参数,从而可使用查询命令的缩短形式来重复具有相同查询参数的查询。
文档编号G06K7/00GK1875371SQ200480032318
公开日2006年12月6日 申请日期2004年11月5日 优先权日2003年11月7日
发明者约翰·斯蒂芬·史密斯, 柯蒂斯·L·卡恩德 申请人:阿利安科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1