HK1189979B - Simultaneous programming of selected tags - Google Patents
Simultaneous programming of selected tags Download PDFInfo
- Publication number
- HK1189979B HK1189979B HK14103081.8A HK14103081A HK1189979B HK 1189979 B HK1189979 B HK 1189979B HK 14103081 A HK14103081 A HK 14103081A HK 1189979 B HK1189979 B HK 1189979B
- Authority
- HK
- Hong Kong
- Prior art keywords
- tags
- commands
- tag
- data
- programming
- Prior art date
Links
Description
技术领域Technical Field
本发明涉及射频识别(RFID)标签,更特别地涉及用于向这种标签写入数据的方法和装置。The present invention relates to radio frequency identification (RFID) tags, and more particularly to methods and apparatus for writing data to such tags.
背景技术Background Art
射频识别(RFID)是一种包含处于电磁频谱的射频(RF)部分的信号的使用以唯一地识别标签的技术。询问发射机(例如,询问器、编程器、或读取器)能够通过发送命令至标签且接收响应,从无线标签询问(读取)信息。某些询问器(编程器)除了读取标签响应之外,能够对标签存储器编程。Radio Frequency Identification (RFID) is a technology that involves the use of signals in the radio frequency (RF) portion of the electromagnetic spectrum to uniquely identify tags. An interrogating transmitter (e.g., an interrogator, programmer, or reader) can interrogate (read) information from a wireless tag by sending commands to the tag and receiving a response. Some interrogators (programmers) can program the tag's memory in addition to reading the tag's response.
需要以尽可能最有效率的方法对多组标签编程。当处理上千的标签(例如,仓库中产品上的标签)时,编程的时间是尤其重要的。大数量的标签应当在尽可能最短的时间内被编程,特别是如果标签大批量(例如,装满带有需要编程标签的产品的集装箱)出现时。然而,现有的技术存在限制,尤其是在试图在短时间内将一大组标签编程时。There is a need to program multiple groups of tags in the most efficient way possible. Programming time is particularly important when dealing with thousands of tags (e.g., tags on products in a warehouse). Large numbers of tags should be programmed in the shortest possible time, especially if the tags are in large batches (e.g., a container full of products with tags that need programming). However, existing technologies have limitations, especially when trying to program a large group of tags in a short period of time.
能够生产带有可编程存储器的标签以用于存储数据(例如,序号、型号、以及其它对象特性)。询问器(编程器)能够基于各个应用需求初始化标签的存储器。例如,紧邻在标签应用至产品包装之前,给定产品的生产商能够将唯一的识别数字编码在标签上。在其它情形中,更多的数据被编程到标签的存储器中。例如,在供应渠道中使用标签来追踪电视机的电视机生产商可能也想将他们的电视机的样式、型号、颜色、尺寸和/或其它细节指定到每个标签中。利用可重写标签,数据能够在标签的生命周期中的各点被改变、添加或删除。遗憾的是,对大量标签的写入,尤其是对很低成本的无源标签,可能花费相对长的时间,这取决于标签的编程方法。It is possible to produce tags with programmable memory for storing data (e.g., serial number, model, and other object characteristics). An interrogator (programmer) can initialize the tag's memory based on individual application requirements. For example, just before the tag is applied to the product packaging, the manufacturer of a given product can encode a unique identification number on the tag. In other cases, more data is programmed into the tag's memory. For example, a television manufacturer that uses tags to track televisions in the supply channel may also want to specify the style, model, color, size, and/or other details of their televisions to each tag. With rewritable tags, data can be changed, added, or deleted at various points in the tag's life cycle. Unfortunately, writing to a large number of tags, especially to very low-cost passive tags, may take a relatively long time, depending on the tag's programming method.
对标签编程的一种方法是对每个标签单独地编程。然而,在存储器正在被编程的时间段上必须为每个标签提供电源。对无源RFID标签的存储器编程需要相对长的编程时间间隔,在这个时间间隔期间,读取器传送对标签的存储器编程需要的能量。对标签的存储器编程的时间可能长达十微秒或更多。在库存管理应用中,比如在仓库中使用的标签系统,数以千计的标签对象可以在单一读取器的RF场内,该RF场可能有几米的半径。例如,标签对象的单个货盘可能具有多于一百个货箱,每个货箱包含数十个标签对象。One way to program tags is to program each tag individually. However, power must be provided to each tag during the time period when the memory is being programmed. Memory programming for passive RFID tags requires a relatively long programming interval during which the reader transmits the energy required to program the tag's memory. The time required to program a tag's memory may be as long as ten microseconds or more. In inventory management applications, such as tag systems used in warehouses, thousands of tagged objects may be within the RF field of a single reader, which may have a radius of several meters. For example, a single pallet of tagged objects may have more than one hundred boxes, each containing dozens of tagged objects.
对标签编程的另一个方法是广播写入命令至范围内的所有标签,对命令范围内的所有标签编程相同的数据。对范围内的所有标签广播的一个限制是不可能指定特定的标签且仅写入那些标签。以广播写入举例,范围内的所有标签将接收广播命令且按照广播命令写入。对所有标签广播的另一个限制是,当多个标签在编程完成后响应时,不能核实写入每个单独标签的数据。例如,发出广播写入命令至十个标签的询问器将接收到十个对命令的响应。在相同时间发送的写入响应将冲突且对询问器变得难以辨认。此外,询问器不能以广播命令编程对群体中的每个标签特定的唯一数据。例如,广播写入,对接收到命令的所有标签写入相同数据。Another method of programming tags is to broadcast a write command to all tags in range, programming the same data to all tags in range. One limitation of broadcasting to all tags in range is that it is not possible to specify specific tags and write only to those tags. Taking a broadcast write as an example, all tags in range will receive the broadcast command and write according to the broadcast command. Another limitation of broadcasting to all tags is that when multiple tags respond after programming is completed, the data written to each individual tag cannot be verified. For example, an interrogator that issues a broadcast write command to ten tags will receive ten responses to the command. Write responses sent at the same time will conflict and become difficult to decipher to the interrogator. In addition, the interrogator cannot program unique data specific to each tag in the group with a broadcast command. For example, a broadcast write writes the same data to all tags that receive the command.
对标签编程的另一种方法是使用写入意图标记以告知标签编程命令将被发送。为了以这种方法写入数据至标签,标签必须首先被编程有写入意图,这也可能需要长达十微秒。在写入意图被保存至存储器后,能够发起同时写入。然而,因为写入该写入意图常常花费与以要写入存储器的最终数据来编程标签的相同的时间量,该过程不是很有效率。此外,写入意图标记在写入可以开始前需要被核实,并且写入意图标记在写入完成后必须被清除。因此,写入意图标记具有固有的效率低下,延长了对多个标签编程的时间。Another method of programming tags is to use a write intent flag to inform the tag that a programming command will be sent. In order to write data to a tag using this method, the tag must first be programmed with the write intent, which can also take up to ten microseconds. After the write intent is saved to memory, a simultaneous write can be initiated. However, because writing the write intent often takes the same amount of time as programming the tag with the final data to be written to memory, this process is not very efficient. In addition, the write intent flag needs to be verified before writing can begin, and the write intent flag must be cleared after writing is complete. Therefore, the write intent flag has inherent inefficiencies that extend the time it takes to program multiple tags.
需要对无线标签高效地写入数据,尤其在对短时间内需要编程多个标签的场合。There is a need to efficiently write data to wireless tags, especially when multiple tags need to be programmed in a short period of time.
发明内容Summary of the Invention
在一个实施方式中,提供一种用于同时编程标签的方法和装置,用于对多个标签同时有效率地编程。In one embodiment, a method and apparatus for simultaneously programming tags are provided for efficiently programming multiple tags simultaneously.
在一个实施方式中,询问器对标签群体完成目录清单,以确定对编程单独指定的一组标签。在一个实施方式中,询问器为在指定的标签组中的每个标签设置一个“正在寻址”的状态。“正在寻址”状态被用于让标签对到来的同时编程命令做好准备。In one embodiment, the interrogator performs an inventory on a population of Tags to identify a group of Tags that are individually designated for programming. In one embodiment, the interrogator sets a "being addressed" state for each Tag in the designated group of Tags. The "being addressed" state is used to prepare the Tags for incoming simultaneous programming commands.
在一个实施方式中,将要被编程的数据传送给一组标签中的每个指定标签。在一个实施方式中,编程间隔由所有同时写入它们的数据的多个标签共享。In one embodiment, the data to be programmed is transferred to each designated Tag in a group of Tags. In one embodiment, the programming interval is shared by multiple Tags all writing their data simultaneously.
在一个实施方式中,同时编程命令被分离为发送给指定标签的数据和寻址命令、以及在多个标签中触发数据写入的编程间隔命令。在一个实施方式中,数据、寻址、和编程间隔在单个命令中被发送至一组指定标签。In one embodiment, the simultaneous program command is separated into data and address commands sent to a specified tag, and a program interval command that triggers data writing in multiple tags. In one embodiment, data, addressing, and program interval are sent to a group of specified tags in a single command.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
本发明以示例的方式被阐明,且并不限制于附图中的这些图,其中相似的标记指示类似的元件。The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings in which like references indicate similar elements.
图1图示出识别系统的一个实施方式,该识别系统包括询问器和多个RF标签。FIG1 illustrates one embodiment of an identification system including an interrogator and a plurality of RF tags.
图2图示出可以与本发明的至少一个实施方式一起使用的标签的一种实现方式的示例。FIG. 2 illustrates an example of one implementation of a tag that may be used with at least one embodiment of the present invention.
图3图示出根据本发明的一个实施方式的RF标签的示例。FIG. 3 illustrates an example of an RF tag according to one embodiment of the present invention.
图4图示出一种方法的一个实施方式的流程图表示,该方法将各个寻址的数据同时编程至一组标签中的每个标签。FIG4 illustrates a flow chart representation of one embodiment of a method for simultaneously programming individually addressed data to each Tag in a group of Tags.
图5图示出一种方法的一个实施方式的流程图表示,该方法以相同的数据同时编程一组指定标签。FIG5 illustrates a flow chart representation of one embodiment of a method for simultaneously programming a group of designated Tags with the same data.
图6图示出参与同时编程的标签实现方法的一个实施方式的流程图表示。FIG6 illustrates a flow chart representation of one embodiment of a method for implementing tags that participate in simultaneous programming.
具体实施方式DETAILED DESCRIPTION
以下的描述和附图对发明是示例性的,且不被解释为限定发明。许多具体的细节被描述以提供对本发明完全的理解。然而,在某些例子中,为了避免使发明的描述模糊,公知的或常规的细节没有被描述。此处使用的术语“耦合”,可以意指直接耦合或经过一个或多个居间组件的非直接耦合。对当前公开的一个实施方式的引用并不必然是相同实施方式的引用,这种引用意指至少一个。The following description and drawings are illustrative of the invention and are not to be construed as limiting the invention. Many specific details are described to provide a complete understanding of the invention. However, in some instances, to avoid obscuring the description of the invention, well-known or conventional details are not described. The term "coupled" as used herein may mean a direct coupling or an indirect coupling via one or more intervening components. A reference to one embodiment of the present disclosure is not necessarily a reference to the same embodiment; such a reference means at least one.
图1图示出标签编程系统100的一个示例,该系统包括询问器101和多个标签131、133、135、......、和139。在一个实施方式中,询问器101询问一个设备中的编程器和读取器。在一个实施方式中,标签编程系统使用读取器先发言(reader-talks first)RFID系统,该系统使用无源或半无源有源反向散射应答器作为标签。将电池并入标签是扩展特征以促进更长读取范围;然而,电池的使用的确需要某些折衷,比如更高的成本、有限的寿命、更大的形状因子、更重的重量以及使用寿命结束的丢弃处理需求。因此,标签131-139可以具有电池或者不具有电池。将意识到的是,不同类型的标签可以混合在询问器询问带有电池的标签以及不带电池的标签的系统中。至少存在4个种类的可以与本发明一起使用的标签:Figure 1 illustrates an example of a tag programming system 100 that includes an interrogator 101 and a plurality of tags 131, 133, 135, ..., and 139. In one embodiment, the interrogator 101 interrogates a programmer and a reader in one device. In one embodiment, the tag programming system uses a reader-talks first RFID system that uses passive or semi-passive active backscatter transponders as tags. Incorporating batteries into tags is an extended feature to facilitate longer read ranges; however, the use of batteries does require certain tradeoffs, such as higher cost, limited life, larger form factor, heavier weight, and end-of-life disposal requirements. Therefore, tags 131-139 can have batteries or not. It will be appreciated that different types of tags can be mixed in a system where the interrogator interrogates tags with batteries and tags without batteries. There are at least four types of tags that can be used with the present invention:
(I)除了从标签的天线获得的能量外,在标签上没有能量源,且包括能够存储标签的识别码的一次可编程存储器,以及可以包括工厂编程的存储器,(II)除了从标签的天线获得的能量外,在标签上没有能量源的标签,但当从询问器获得能量时,能够对标签中的非易失性存储器写入、擦除、或重写数据;这种类型的标签还可以包括一次可编程存储器,且标签的识别码能够在这些存储器中的任何一个中。(III)具有为标签中的电路提供能量的小电池的标签。这种标签还可以包括也存储标签的识别码或其它数据的非易失性存储器,以及其它类型的存储器,比如工厂编程的存储器和一次写入存储器,以及(IV)能够与其它标签或其它设备通信的标签。(I) A tag that has no energy source on board other than that obtained from the tag's antenna and includes a one-time programmable memory capable of storing the tag's identification code, and may include factory-programmed memory, (II) A tag that has no energy source on board other than that obtained from the tag's antenna, but is capable of writing, erasing, or rewriting data to non-volatile memory in the tag when powered by an interrogator; this type of tag may also include a one-time programmable memory, and the tag's identification code may be in any of these memories. (III) A tag that has a small battery that provides power to the circuitry in the tag. This type of tag may also include non-volatile memory that also stores the tag's identification code or other data, as well as other types of memory, such as factory-programmed memory and write-once memory, and (IV) A tag that is capable of communicating with other tags or other devices.
询问器101通常包括接收器119和发射器123,接收器和发射器的每一个都耦合至I/O(输入/输出)控制器117。接收器119可以具有它自己的天线121,发射器123可以具有它自己的天线125。本领域的技术人员将意识到,发射器123和接收器119可以共享相同的天线。接收器119和发射器123可以与在现有的询问器中找到的常规接收器和发射器单元相似。在北美,接收器和发射器通常工作在大约900兆赫的频率范围中。在其它的实施方式中,该范围为大约2400兆赫。然而,将意识到,此处公开的RFID系统的工作不依赖于特定的工作频率。接收器和发射器耦合至I/O控制器117,I/O控制器117控制从接收器接收数据以及数据(比如命令)从发射器123的发射。I/O控制器耦合至总线115,该总线115又耦合至微处理器113(或者处理逻辑)以及存储器111。对于由元件117、115、113和111代表的处理系统,存在各种不同的可能实现方式可以使用在询问器101中。在一个实施方式中,询问器101可以包括耦合至总线115的处理逻辑。处理逻辑能够包括微控制器、有限状态机、或逻辑阵列。在一个实现方式中,微处理器113为可编程的微控制器,比如8051微控制器或其它公知的微控制器或微处理器(例如,ARM微处理器),存储器111包括动态随机存取存储器以及控制存储器工作的存储器控制器。存储器111也可以包括用于存储数据和软件程序的非易失性只读和/或可重写存储器。存储器111典型地包含控制微处理器113工作的程序,也包含如在标签的询问中标签的处理期间使用的数据。在下面进一步描述的一个实施方式中,存储器111包括计算机程序,该计算机程序使微处理器113经过I/O控制器发送编程命令至发射器,以及经过接收器119且经过I/O控制器117从标签接收响应。在下面进一步描述的一个实施方式中,存储器111包括用于创建和维持将被编程的标签的队列或列表的指令。询问器101也可以包括网络接口127,比如以太网接口,其允许询问器101经由网络129与其它处理系统通信。网络接口127可以耦合至总线115,从而它能够接收数据,比如来自微处理器113或从存储器111的询问中识别的标签列表。Interrogator 101 typically includes a receiver 119 and a transmitter 123, each coupled to an I/O (input/output) controller 117. Receiver 119 may have its own antenna 121, and transmitter 123 may have its own antenna 125. Those skilled in the art will appreciate that transmitter 123 and receiver 119 may share the same antenna. Receiver 119 and transmitter 123 may be similar to conventional receiver and transmitter units found in existing interrogators. In North America, receivers and transmitters typically operate in a frequency range of approximately 900 MHz. In other embodiments, this range is approximately 2400 MHz. However, it will be appreciated that the operation of the RFID system disclosed herein is not dependent on a specific operating frequency. The receiver and transmitter are coupled to I/O controller 117, which controls the reception of data from the receiver and the transmission of data (e.g., commands) from transmitter 123. The I/O controller is coupled to bus 115, which is in turn coupled to microprocessor 113 (or processing logic) and memory 111. There are various possible implementations of the processing system represented by elements 117, 115, 113, and 111 that can be used in interrogator 101. In one embodiment, interrogator 101 may include processing logic coupled to bus 115. The processing logic can include a microcontroller, a finite state machine, or a logic array. In one implementation, microprocessor 113 is a programmable microcontroller, such as an 8051 microcontroller or other well-known microcontroller or microprocessor (e.g., an ARM microprocessor), and memory 111 includes dynamic random access memory and a memory controller that controls the operation of the memory. Memory 111 may also include non-volatile read-only and/or rewritable memory for storing data and software programs. Memory 111 typically contains programs that control the operation of microprocessor 113, as well as data used during the processing of tags, such as in the interrogation of tags. In one embodiment described further below, memory 111 includes a computer program that causes microprocessor 113 to send programming commands to the transmitter via the I/O controller and to receive responses from the tags via receiver 119 and via I/O controller 117. In one embodiment described further below, memory 111 includes instructions for creating and maintaining a queue or list of tags to be programmed. Interrogator 101 may also include a network interface 127, such as an Ethernet interface, that allows interrogator 101 to communicate with other processing systems via network 129. Network interface 127 may be coupled to bus 115 so that it can receive data, such as a list of tags identified from an interrogation of memory 111, from microprocessor 113 or from memory 111.
在一个实施方式中,询问器101使用定向耦合器和反射电路实现噪音消除。定向耦合器将在一个端口处的信号部分且按预定的量电耦合出到另一个端口。反射电路提供传输信号的可变衰减和可变相移以产生消除信号。该消除信号与接收到的信号相加以消除或减少传输信号的未调制的反射。In one embodiment, interrogator 101 implements noise cancellation using a directional coupler and a reflection circuit. The directional coupler electrically couples a predetermined amount of a signal at one port to another port. The reflection circuit provides variable attenuation and a variable phase shift of the transmitted signal to generate a cancellation signal. This cancellation signal is added to the received signal to cancel or reduce unmodulated reflections of the transmitted signal.
图2图示出可以与本发明的至少一个实施方式一起使用的标签的一种实现方式的示例。标签200包括耦合至接收器以及解调器205且耦合至反向散射调制器209的天线201。相关器和控制器单元207耦合至接收器和解调器205,以及耦合至反向散射调制器209。在图2中所示出标签的特定的示例可以使用在各种实施方式中,其中用于在命令之间维持数据的存储器被维持在标签中,且其中一个比特一个比特(或更大的数据块)的相关发生在标签中。接收器和解调器205经由天线201和开关203接收信号、解调信号,并且提供这些信号至相关器和控制器单元207。为了控制标签的工作,接收器205接收的命令被传递至单元207的控制器。接收器205接收的数据也传递至控制单元207,在下面描述的实施方式中,这个数据可以包括命令的参数。反向散射调制器209在控制单元207的控制下调制对应于经由天线201至询问器101的响应或其它数据的标签的输入阻抗。本领域的技术人员将意识到,芯片到天线201的阻抗调制将导致在询问器处的反射改变,该反射改变能够被解调以提取由标签发送的数据。FIG2 illustrates an example of one implementation of a tag that can be used with at least one embodiment of the present invention. Tag 200 includes an antenna 201 coupled to a receiver and demodulator 205 and to a backscatter modulator 209. A correlator and controller unit 207 is coupled to the receiver and demodulator 205 and to the backscatter modulator 209. The specific example of a tag shown in FIG2 can be used in various embodiments in which memory for maintaining data between commands is maintained in the tag and in which bit-by-bit (or larger blocks of data) correlation occurs in the tag. Receiver and demodulator 205 receives signals via antenna 201 and switch 203, demodulates the signals, and provides these signals to correlator and controller unit 207. To control the operation of the tag, commands received by receiver 205 are passed to a controller in unit 207. Data received by receiver 205 is also passed to control unit 207; in the embodiments described below, this data may include parameters for the commands. Backscatter modulator 209, under the control of control unit 207, modulates the input impedance of the tag corresponding to a response or other data to interrogator 101 via antenna 201. Those skilled in the art will appreciate that the impedance modulation of the chip to antenna 201 will result in a change in reflection at the interrogator that can be demodulated to extract the data transmitted by the tag.
在本发明的一个实施方式中,标签被设计具有比如小的集成电路(IC)区域的特性,以允许低成本、小存储器以及非精确定时需求。在一个实施方式中,原子事务被使用以最小化标签状态存储需求。然而,在其它的实施方式中,可以使用其它标签设计。此外,应当理解的是,根据本发明的实施方式的指定标签的同时编程的方法也能够使用在其它类似场合中。In one embodiment of the present invention, the tags are designed with features such as a small integrated circuit (IC) area to allow for low cost, small memory, and less precise timing requirements. In one embodiment, atomic transactions are used to minimize tag state storage requirements. However, in other embodiments, other tag designs can be used. Furthermore, it should be understood that the methods for simultaneous programming of designated tags according to embodiments of the present invention can also be used in other similar situations.
图3图示出根据本发明的一个实施方式的RF标签的示例。在一个实施方式中,VLC(成本很低的)标签300包括连接在一起的天线301和集成电路(IC)303。IC实现命令协议且包含标签的识别码,该识别码可以是符合标签数据标准,比如由EPCGlobal的标签数据标准工作组发布的标签数据标准的电子产品码(EPCTM)。天线301接收询问信号,且响应于IC303生成的调制信号,将该询问信号反射回至询问器101。标签IC303可以包括RF接口和电源311、数据检测器和定时电路313、命令和控制315、数据调制器317和存储器319。在一个实施方式中,命令和控制315包括根据本发明的实施方式实现同时编程的静态逻辑。FIG3 illustrates an example of an RF tag according to one embodiment of the present invention. In one embodiment, a VLC (very low cost) tag 300 includes an antenna 301 and an integrated circuit (IC) 303 connected together. The IC implements a command protocol and contains an identification code for the tag, which can be an Electronic Product Code (EPC ™ ) that complies with a tag data standard, such as the tag data standard published by EPCGlobal's Tag Data Standards Working Group. Antenna 301 receives an interrogation signal and, in response to a modulated signal generated by IC 303, reflects the interrogation signal back to interrogator 101. Tag IC 303 can include an RF interface and power supply 311, a data detector and timing circuit 313, a command and control 315, a data modulator 317, and a memory 319. In one embodiment, command and control 315 includes static logic that implements simultaneous programming according to an embodiment of the present invention.
在一个实施方式中,RF接口和电源311转换RF能量成为标签IC303工作所需要的DC电力并且提供调制信息至数据检测器和定时电路313。作为选择地,电力可以由电池或采集的电源提供。数据检测和定时块313解调读取器信号且产生控制逻辑315使用的定时和数据信号。RF接口还提供将标签调制信号耦合至天线用于发射至询问器101的手段。数据检测器和定时电路313解调询问器101信号且产生命令和控制逻辑315使用的定时和数据信号。命令和控制逻辑315协调标签IC303的所有功能。命令和控制逻辑315可以包括状态逻辑以解释来自询问器101的数据、执行需要的内部工作以及确定标签是否应答询问器101。命令和控制逻辑315实现多个标签状态以及根据下面描述的实施方式的通信协议。标签存储器319可以包含由加VLC标签标记的产品的EPCTM码。标签存储器46可以包含唯一的识别码或非唯一的识别码。标签存储器还可以包含可以用于误差检测的校验和。数据调制器317将二进制标签数据翻译成为信号,该信号随后应用至RF接口311且随后发射至询问器101。在一个实施方式中,应用至RF接口311的信号经由天线301被发射。In one embodiment, the RF interface and power supply 311 converts RF energy into the DC power required for tag IC 303 operation and provides modulation information to the data detector and timing circuit 313. Alternatively, power can be provided by a battery or harvested power source. The data detection and timing block 313 demodulates the reader signal and generates timing and data signals used by the control logic 315. The RF interface also provides a means for coupling the tag modulated signal to the antenna for transmission to the interrogator 101. The data detector and timing circuit 313 demodulates the interrogator 101 signal and generates timing and data signals used by the command and control logic 315. The command and control logic 315 coordinates all functions of the tag IC 303. The command and control logic 315 may include state logic to interpret data from the interrogator 101, perform necessary internal operations, and determine whether the tag has responded to the interrogator 101. The command and control logic 315 implements multiple tag states and communication protocols according to the embodiments described below. The tag memory 319 may contain the EPC ™ code of the product marked with the VLC tag. The tag memory 46 may contain a unique identification code or a non-unique identification code. The tag memory may also contain a checksum that may be used for error detection. The data modulator 317 translates the binary tag data into a signal that is then applied to the RF interface 311 and then transmitted to the interrogator 101. In one embodiment, the signal applied to the RF interface 311 is transmitted via the antenna 301.
标签的设计和实现能够以层为特征。例如,物理和环境层表征机械的、环境的可靠性以及标签的制造方面;射频(RF)传输层表征读取器和标签之间的RF耦合;以及通信层表征读取器和标签之间的通信/数据协议。位于不同层的标签的各种不同实现能够与本发明的实施方式一起使用。应该理解的是,标签的实现并不限制于本说明书中示出的示例。不同的标签或通信设备能够使用本发明的实施方式的方法,以根据目标应用的需要进行通信。The design and implementation of a tag can be characterized by layers. For example, the physical and environmental layers characterize the mechanical, environmental reliability, and manufacturing aspects of the tag; the radio frequency (RF) transmission layer characterizes the RF coupling between the reader and the tag; and the communication layer characterizes the communication/data protocol between the reader and the tag. Various different implementations of tags located at different layers can be used with embodiments of the present invention. It should be understood that the implementation of tags is not limited to the examples shown in this specification. Different tags or communication devices can use the methods of embodiments of the present invention to communicate as needed for the target application.
在本发明的一个实施方式中,标签可以经由流体自装配过程而制造。例如,集成电路可以由在半导体晶片中的多个其它集成电路而制造。如果可能的话,该集成电路将包括特定RF标签的所有必要的逻辑,不包括天线301。因此,在标签300中示出的所有逻辑将被包括在单个集成电路上,且在单个半导体晶片上与类似的集成电路一同被制造。每个电路以唯一的识别码编程,且随后晶片将被处理以从晶片移除每个集成电路,以创建悬浮在流体中的块。In one embodiment of the present invention, the tag can be manufactured via a fluid self-assembly process. For example, an integrated circuit can be manufactured from multiple other integrated circuits in a semiconductor wafer. If possible, the integrated circuit will include all the necessary logic for a specific RF tag, excluding antenna 301. Therefore, all the logic shown in tag 300 will be included on a single integrated circuit and manufactured together with similar integrated circuits on a single semiconductor wafer. Each circuit is programmed with a unique identification code, and the wafer will then be processed to remove each integrated circuit from the wafer to create a block suspended in the fluid.
该流体随后被散布在基片上,比如柔性基片,以创建分离的RF标签。基片上的接收区域接收至少一个集成电路,该集成电路随后能够与基片上的天线连接以形成RF标签。The fluid is then spread on a substrate, such as a flexible substrate, to create a discrete RF tag. The receiving area on the substrate receives at least one integrated circuit, which can then be connected to an antenna on the substrate to form an RF tag.
如上描述的,以可能的最有效率的方式对标签编程是有利的。对标签编程的一个瓶颈是提交数据给存储器的时间。将数据提交给存储器需要长达十微秒或更久连续地提供电力给标签,取决于标签设计。As described above, it is advantageous to program the tag in the most efficient way possible. One bottleneck in tag programming is the time it takes to commit data to memory. Committing data to memory can take up to ten microseconds or more, depending on the tag design, to continuously provide power to the tag.
预编程标签Pre-programmed tags
在一个实施方式中,标签存储器包括逻辑地分开且不同的分块。在一个实施方式中,标签存储器被分为保留存储器、用户存储器、EPC存储器、以及TID存储器。如果在标签中实现了密码,保留存储器包含删除和或访问密码。用户存储器允许用户特定的数据存储。EPC存储器包含用来识别粘贴标签的物体的EPC数据。在一个实施方式中,TID存储器是在从标签制造商分发出之前,预装唯一的标签ID的只读存储器。TID存储器中的标签ID可以是唯一的数字以用于唯一地识别一个标签和粘贴标签的物体。在其它的实施方式中,除了前面提到的分块或者取代它们,标签存储器包括另外类型的存储器分块。In one embodiment, the tag memory includes logically separate and different blocks. In one embodiment, the tag memory is divided into a reserved memory, a user memory, an EPC memory, and a TID memory. If a password is implemented in the tag, the reserved memory contains a deletion and or access password. The user memory allows user-specific data storage. The EPC memory contains EPC data used to identify the object to which the label is affixed. In one embodiment, the TID memory is a read-only memory that is pre-loaded with a unique tag ID before being distributed from the tag manufacturer. The tag ID in the TID memory can be a unique number for uniquely identifying a tag and the object to which the label is affixed. In other embodiments, in addition to the aforementioned blocks or in place of them, the tag memory includes another type of memory block.
一个标签的买家或用户基于特定的使用需求可能想要对标签存储器块编程。例如,电视机的制造商在使用标签来标志和追踪他们的产品之前,可能想把他们的制造商名字、电视机型号、颜色、尺寸、以及其它识别特征编程进标签。A buyer or user of a tag may want to program the tag memory block based on specific usage requirements. For example, a manufacturer of televisions may want to program their manufacturer's name, television model, color, size, and other identifying characteristics into the tag before using it to mark and track their products.
在一个实施方式中,在标签被发送至最终用户之前(例如,在仓库存储之前,产品制造商在供应链或其它用户中使用标签),标签存储器的一个或更多部分由标签制造商预编程。在一个实施方式中,标签以唯一的序列号和唯一的标签ID之一或两者预编程。唯一的序列号可以并入产品号或EPC中。除了唯一的序列号之外或取代唯一的序列号,唯一的标签ID可以用于确定标签或关联物体的唯一标识。在一个实施方式中,唯一的标签ID被编程进入TID存储器区,唯一的序列号被编程进入EPC存储器区。由标签制造商对序列号和标签ID的预编程能够减少最终用户所需的总编程量。例如,公司XYZ想要将特定的识别特征编程进入标签(例如,产品颜色、型号、以及他们的产品的其它特征)。公司XYZ具有大批有相同特征的产品。没有预编程标签,公司XYZ必须花费需要的时间,以唯一的序列号或其它唯一的标识以及产品颜色和型号个别地编程每个标签。通过利用标签制造商预编程,公司XYZ只需要将他们产品颜色和型号编程进入每个标签,加速了完全编程他们的标签的他们的总时间。在这个示例中,对于大批产品,颜色和型号是相同的,公司XYZ将为许多标签编程完全相同的颜色和型号。因为公司XYZ从标签制造商收到的标签是以至少一个唯一的标识符预编程的,仅相同的特征(例如,颜色和型号)需要加入标签数据。在制造商预编程唯一的标签的情形中,最终用户能够为一组标签同时地编程相同数据(例如,颜色和型号),且避免对每个标签写入唯一的数据。在一个实施方式中,使用下面进一步讨论的同时编程操作,唯一的数据(例如,序列号或唯一的标签ID)被同时地编程至每个标签。In one embodiment, one or more portions of the tag memory are preprogrammed by the tag manufacturer before the tag is sent to the end user (e.g., before storage in a warehouse, a product manufacturer uses the tag in a supply chain, or other users). In one embodiment, the tag is preprogrammed with one or both of a unique serial number and a unique tag ID. The unique serial number can be incorporated into the product number or EPC. In addition to or in place of the unique serial number, the unique tag ID can be used to uniquely identify the tag or associated object. In one embodiment, the unique tag ID is programmed into the TID memory area and the unique serial number is programmed into the EPC memory area. Preprogramming the serial number and tag ID by the tag manufacturer can reduce the total amount of programming required by the end user. For example, Company XYZ wants to program specific identifying features into the tag (e.g., product color, model number, and other features of their products). Company XYZ has a large number of products with the same features. Without preprogrammed tags, Company XYZ would have to spend the necessary time to individually program each tag with a unique serial number or other unique identification, as well as the product color and model number. By utilizing the label manufacturer's pre-programming, Company XYZ only needs to program their product color and model number into each label, speeding up their overall time to fully program their labels. In this example, for a large number of products, the color and model number are the same, and Company XYZ will program many labels with the exact same color and model number. Because the labels that Company XYZ receives from the label manufacturer are pre-programmed with at least one unique identifier, only the identical features (e.g., color and model number) need to be added to the label data. In the case where the manufacturer pre-programs unique labels, the end user can program the same data (e.g., color and model number) for a group of labels at the same time and avoid writing unique data to each label. In one embodiment, using a simultaneous programming operation discussed further below, unique data (e.g., a serial number or a unique label ID) is programmed into each label at the same time.
标签清点Tag Inventory
在一个实施方式中,询问器101在发送同时编程命令之前,清点当前标签群体。执行标签群体的清点在确定序列号、标签ID、标签类型、标签等级、数据特征、以及在场中的标签数量时是有用的。在一个实施方式中,确定标签群体之后,询问器101从整个标签群体中指定一组标签准备来同时编程。在一些情形中,例如,当用户手动地输入一组标签,或标签列表已经设置在询问器存储器111中时,询问器101跳过最初的清点。In one embodiment, the interrogator 101 counts the current tag population before sending the simultaneous programming command. Performing a count of the tag population is useful in determining the serial number, tag ID, tag type, tag level, data characteristics, and the number of tags present. In one embodiment, after determining the tag population, the interrogator 101 designates a group of tags from the entire tag population to be programmed simultaneously. In some cases, such as when a user manually enters a group of tags, or when a tag list is already stored in the interrogator memory 111, the interrogator 101 skips the initial count.
存在各种方法用于扫描标签的群体以确定标签的各个特征。在一个实施方式中,RFID标签具有一个或更多会话(例如,会话0-3)。每个会话能够存储具有两个值的状态(例如,状态A和状态B)。在一个实施方式中,其中一个状态可以是持久状态,另一个状态可以是瞬时状态。询问器使用一系列编码的询问信号来搜索标签的群体。该搜索可以是系统地分类和分开匹配越来越多的特定搜索标准的组和子组的随机搜索或二进制树搜索。There are various methods for scanning a population of tags to determine the individual characteristics of the tags. In one embodiment, the RFID tag has one or more sessions (e.g., sessions 0-3). Each session can store a state with two values (e.g., state A and state B). In one embodiment, one of the states can be a persistent state and the other can be a transient state. The interrogator uses a series of coded interrogation signals to search for a population of tags. The search can be a random search or a binary tree search that systematically classifies and separates groups and subgroups that match an increasing number of specific search criteria.
在一个实施方式中,询问器101以一个或更多清点命令(例如,询问、ACK、以及NAK)清点标签。询问命令发起及指定一个清点循环,一个或更多标签以16比特的数字响应它。如果询问器101成功地提取16比特数字,则它被发送回标签,用于经由ACK命令握手。如果由ACK命令发送的16比特数字与标签发送的数字匹配,则标签响应。已经确认了其16比特数字的标签随后以前缀、它的CRC(循环冗余校验)以及它的EPC(电子产品码)做出回答。在另一个实施方式中,该数字可以在8至64比特的范围内。标签随后从A至B(或从B至A)转换对于该会话的它的内部状态,除非它得到NAK。如果它接收到NAK,它停留在前面的状态中。询问器能够发现标签群体中的标签,且转换所有发现的标签的内部状态。在其它的实施方式中,询问器101使用其它清点命令、操作、或方法来清点标签群体。在一个实施方式中,标签具有四个会话可用,每一个具有独立状态存储器的单个比特。这个会话结构允许多达四个询问器或进程,以在多任务环境中与标签群体通信,然而其它的实施方式可以允许多于四个的询问器。In one embodiment, the interrogator 101 counts the tags using one or more count commands (e.g., query, ACK, and NAK). The query command initiates and specifies a count cycle, and one or more tags respond to it with a 16-bit number. If the interrogator 101 successfully extracts the 16-bit number, it is sent back to the tag for handshaking via the ACK command. If the 16-bit number sent by the ACK command matches the number sent by the tag, the tag responds. The tag that has confirmed its 16-bit number then responds with a prefix, its CRC (cyclic redundancy check), and its EPC (electronic product code). In another embodiment, the number can be in the range of 8 to 64 bits. The tag then switches its internal state for the session from A to B (or from B to A) unless it receives a NAK. If it receives a NAK, it remains in the previous state. The interrogator can discover tags in the tag population and convert the internal states of all discovered tags. In other embodiments, the interrogator 101 uses other count commands, operations, or methods to count the tag population. In one embodiment, a tag has four sessions available, each with a single bit of independent state memory. This session structure allows up to four interrogators or processes to communicate with a tag population in a multitasking environment, however other embodiments may allow more than four interrogators.
指定各个标签以编程Specify individual tags to programmatically
在一个实施方式中,清点过的标签被添加至询问器的存储器,指定标签的组从清点过的标签群体中选出。在一个实施方式中,清点过的标签在询问器101中呈现为标签的队列或列表。In one embodiment, the inventoried tags are added to the memory of the interrogator and the group of designated tags is selected from the population of inventoried tags. In one embodiment, the inventoried tags are presented in the interrogator 101 as a queue or list of tags.
在一个实施方式中,询问器101能够通过指定标签的序列号或唯一的标签ID,指定各个标签来添加至同时编程组。在最初清点阶段可以发现标签序列号和唯一的标签ID,或者询问器101可以具有用于编程的标签的预设置列表。在一个实施方式中,询问器101可以基于编程间隔、标签等级、存储在标签存储器中的数据、或其它特征,自动地分组各个标签用于编程。例如,询问器101能够选择仅II等级标签的组用于编程,或者能够选择序列号在限定范围内的标签组。在其它的实施方式中,用户能够手动地选择一组标签用于同时编程。在一个实施方式中,用户能够使用标签序列号或唯一的标签ID来指定各个标签以添加至同时编程组。In one embodiment, the interrogator 101 can designate individual tags to be added to a simultaneous programming group by specifying the tag's serial number or unique tag ID. The tag serial number and unique tag ID can be discovered during the initial inventory phase, or the interrogator 101 can have a pre-set list of tags for programming. In one embodiment, the interrogator 101 can automatically group individual tags for programming based on programming intervals, tag class, data stored in tag memory, or other characteristics. For example, the interrogator 101 can select a group of only Class II tags for programming, or can select a group of tags with serial numbers within a limited range. In other embodiments, a user can manually select a group of tags for simultaneous programming. In one embodiment, a user can designate individual tags to be added to a simultaneous programming group using a tag serial number or unique tag ID.
在一个实施方式中,一组指定用于同时编程的标签包含两个或更多标签。在一个实施方式中,询问器101能够指定四百个或更多标签的单个组用于同时编程,且根据下面描述的方法对该组同时编程。在一个实施方式中,编程之后,标签被个别地验证编程是否成功。成功编程的标签从将被编程的标签的列表或队列中移除,且指定下一组标签。询问器101继续编程指定的标签组,直到不再有标签剩下待编程。在一个实施方式中,当不再存在标签组待编程时,询问器101提供完成状态消息且记录编程的完成至询问器的内部存储器。In one embodiment, a group of Tags designated for simultaneous programming includes two or more Tags. In one embodiment, the interrogator 101 is capable of designating a single group of four hundred or more Tags for simultaneous programming and programming the group simultaneously according to the method described below. In one embodiment, after programming, the Tags are individually verified whether the programming was successful. The successfully programmed Tags are removed from the list or queue of Tags to be programmed and the next group of Tags is designated. The interrogator 101 continues to program the designated group of Tags until no more Tags remain to be programmed. In one embodiment, when there are no more groups of Tags to be programmed, the interrogator 101 provides a completion status message and records the completion of the programming to the interrogator's internal memory.
不同类型的标签可能需要不同的持续时间以提交数据至存储器。提交数据至存储器需要的时间也可以作为编程间隔被提及,且可以直接与标签在编程期间接收稳定电源所需要的时间量相关。例如,一些标签在稳定电源下能够以十微秒或更少提交数据至标签存储器,而其它标签在稳定电源下为了提交数据至标签的存储器可能需要二十微秒或更多。在一个组内询问器101能够编程的标签的最大数目依赖于询问器101能够与标签组维持通信和维持向标签组供电的持续时间。例如,本地无线频率规章可能要求询问器101限制与标签组通信和为之供电所花费的持续时间。在一个实施方式中,询问器101确定允许与标签组通信和供电的总持续时间,且自动地将在给定的时间内能够被成功编程的多个标签排队。Different types of tags may require different durations to submit data to the memory. The time required to submit data to the memory can also be mentioned as a programming interval, and can be directly related to the amount of time required for the tag to receive a stable power supply during programming. For example, some tags can submit data to the tag memory with ten microseconds or less under a stable power supply, while other tags may need twenty microseconds or more under a stable power supply in order to submit data to the memory of the tag. The maximum number of tags that the interrogator 101 can program in a group depends on the duration that the interrogator 101 can maintain communication with the tag group and maintain power to the tag group. For example, local wireless frequency regulations may require that the interrogator 101 limit the duration spent communicating with the tag group and powering it. In one embodiment, the interrogator 101 determines the total duration allowed to communicate with the tag group and power supply, and automatically queues a plurality of tags that can be successfully programmed within a given time.
在一个实施方式中,在清点期间,询问器101存储关于每个标签的细节。询问器能够在标签的群体中确定标签的各种特征,且能够按特定的特征将标签分组。在一个实施方式中,询问器101能够基于标签提交数据至存储器需要的最小时间分组标签。例如,标签的群体可以是需要十微秒编程的标签以及需要二十微秒编程的标签混合在一起的。在一个实施方式中,询问器101设置编程间隔为至少二十微秒,以至少二十微秒的编程间隔编程整个群体。在另一个实施方式中,询问器101将需要十微秒的编程间隔的标签一起分组在一个或更多同时编程组中,与需要二十微秒的组分开。在另一个实施方式中,询问器101从所有将被编程的标签中确定需要的最长编程间隔并且使用该最长编程间隔作为默认编程间隔用于编程所有的标签。在一个实施方式中,询问器101在必须切换频率之前,使用每个标签的编程间隔需求最大化能够在一个组中被编程的标签的数量。In one embodiment, during the inventory, interrogator 101 stores details about each tag. The interrogator can determine various characteristics of the tags within a population of tags and can group tags by specific characteristics. In one embodiment, interrogator 101 can group tags based on the minimum time required for the tags to submit data to memory. For example, a population of tags may be a mix of tags that require ten microseconds to program and tags that require twenty microseconds to program. In one embodiment, interrogator 101 sets the programming interval to at least twenty microseconds and programs the entire population with a programming interval of at least twenty microseconds. In another embodiment, interrogator 101 groups tags that require ten microseconds of programming intervals together in one or more simultaneous programming groups, separate from groups that require twenty microseconds. In another embodiment, interrogator 101 determines the longest required programming interval from all tags to be programmed and uses this longest required programming interval as the default programming interval for programming all tags. In one embodiment, interrogator 101 uses each tag's programming interval requirement to maximize the number of tags that can be programmed in a group before having to switch frequencies.
正在寻址指示符Addressing indicator
将标签制造为具有若干状态,这些状态控制标签对于命令的响应。例如,EPC第2代标签包含就绪、确认、开放、以及安全状态(还有其它状态)。标签的逻辑确定各种标签状态的行为。例如,就绪状态和取消状态是标签在加电时可以进入的两个状态。处于就绪状态的标签不参加清点循环。开放状态和安全状态通过访问命令(从标签读取或写入标签的命令)使用。开放状态能够执行除了锁定(Lock)和块永久锁定(BlockPermalock)之外的所有访问命令。安全状态能够执行所有访问命令。Tags are manufactured with several states that control how the tag responds to commands. For example, EPC Gen 2 tags contain Ready, Acknowledged, Open, and Secure states (among other states). The tag's logic determines the behavior of the various tag states. For example, Ready and Cancel are two states a tag can enter upon power-up. A tag in the Ready state does not participate in an inventory cycle. The Open and Secure states are used by access commands (commands that read from or write to the tag). The Open state is capable of executing all access commands except Lock and Block Permalock. The Secure state is capable of executing all access commands.
在一个实施方式中,每个标签包含“正在寻址”指示符。在一个实施方式中,正在寻址指示符是能够在标签的存储器中设置的标记或比特。在一个实施方式中,激活/设置正在寻址指示符通过从0至1改变标签的正在寻址比特而完成。在其它的实施方式中,正在寻址指示符能够以其它的方式实现和操作。In one embodiment, each tag includes a "being addressed" indicator. In one embodiment, the being addressed indicator is a flag or bit that can be set in the tag's memory. In one embodiment, activating/setting the being addressed indicator is accomplished by changing the tag's being addressed bit from 0 to 1. In other embodiments, the being addressed indicator can be implemented and operated in other ways.
在一个实施方式中,在询问器101继续提升其它标签至可寻址状态时,具有已激活/已设置的正在寻址指示符的标签可以保持可寻址状态。下面讨论同时编程命令的操作的进一步细节。In one embodiment, Tags with activated/set being addressed indicators may remain in the addressable state while Interrogator 101 continues to promote other Tags to the addressable state. Further details of the operation of simultaneous programming commands are discussed below.
不具有正在寻址指示符或者具有未激活指示符的标签,一次仅能够被寻址一个,因为当标签接收到寻址不同标签的命令时,标签改变它们的状态。例如,没有正在寻址指示符,寻址标签A的存储器的命令使得附近标签B、C、和D退出它们的可寻址的状态。Tags that do not have a being addressed indicator or have an inactive indicator can only be addressed one at a time because tags change their state when they receive a command to address a different tag. For example, without a being addressed indicator, a command to address the memory of tag A causes nearby tags B, C, and D to exit their addressable state.
在一个实施方式中,具有已激活/已没置的正在寻址指示符的打开或安全状态能够接收和处理同时编程命令。在一个实施方式中,同时编程命令包括寻址和准备用于编程的数据的命令,以及提交数据至存储器的命令。同时编程命令在下面进一步更细节地讨论。In one embodiment, an open or secure state with an activated/deasserted addressing indicator is capable of receiving and processing simultaneous program commands. In one embodiment, simultaneous program commands include commands to address and prepare data for programming, as well as commands to commit data to the memory. Simultaneous program commands are discussed in more detail further below.
在一个实施方式中,在打开或安全状态激活/设置正在寻址指示符转换该状态至分开且独立的打开寻址或安全寻址状态。在其它的实施方式中,在打开或安全状态激活/设置正在寻址指示符并不改变现有的状态,但允许一组标签接收和处理同时编程命令。对本领域的技术人员明显的是,其它状态也可以被修改以包括正在寻址指示符。In one embodiment, activating/setting the being-addressed indicator in the open or secure state transitions that state to a separate and independent open-addressed or secure-addressed state. In other embodiments, activating/setting the being-addressed indicator in the open or secure state does not change the existing state, but allows a group of Tags to receive and process simultaneous programming commands. It will be apparent to one skilled in the art that other states may also be modified to include the being-addressed indicator.
在一个实施方式中,标签还包含与上面描述的状态分开的,且与关联于打开或安全状态的正在寻址指示符分开的正在寻址独立标签状态。在一个实施方式中,正在寻址状态还允许标签接收和处理同时编程命令。在一个实施方式中,为了接收和处理发送至一组标签的同时编程命令,标签接收切换到正在寻址状态的命令。在一个实施方式中,在同时编程命令被发送前,标签被置于正在寻址状态。在一个实施方式中,处于正在寻址状态中的标签停留在正在寻址状态,直到接收到退出正在寻址状态的信号(例如,来自查询或NAK命令)。In one embodiment, the Tag also includes a Being Addressed independent Tag state that is separate from the states described above and separate from the Being Addressed indicator associated with the Open or Secure states. In one embodiment, the Being Addressed state also allows the Tag to receive and process simultaneous programming commands. In one embodiment, in order to receive and process simultaneous programming commands sent to a group of Tags, the Tag receives a command to switch to the Being Addressed state. In one embodiment, the Tag is placed in the Being Addressed state before the simultaneous programming commands are sent. In one embodiment, a Tag in the Being Addressed state remains in the Being Addressed state until a signal is received to exit the Being Addressed state (e.g., from a query or NAK command).
在一个实施方式中,不同于开放状态或安全状态,正在寻址状态不以反向散射应答来响应编程命令。在一个实施方式中,当处于正在寻址状态时,标签接收编程命令且不以任何错误报告来应答。在一个实施方式中,为了验证成功的同时编程,如下进一步描述的,询问器101发布独立的确认验证至每个标签。In one embodiment, unlike the Open or Secure states, the Being Addressed state does not respond to programming commands with a backscattered reply. In one embodiment, while in the Being Addressed state, the Tags receive programming commands and do not reply with any error reports. In one embodiment, to verify successful simultaneous programming, as further described below, the Interrogator 101 issues a separate confirmation verification to each Tag.
在一个实施方式中,在加电时,标签不被许可进入正在寻址状态。在一个示例性的实施方式中,待编程的标签在清点过程期间被转换至正在寻址状态。在其它实施方式中,待编程的标签在清点过程后处于确认状态(或其它状态),随后由询问器101转换至正在寻址、开放寻址、或安全寻址状态。在一个实施方式中,没有转换至正在寻址、开放寻址、或安全寻址状态的标签不能接收和处理同时编程命令。In one embodiment, upon power-up, Tags are not permitted to enter the Being Addressed state. In one exemplary embodiment, Tags to be programmed are transitioned to the Being Addressed state during the inventory process. In other embodiments, Tags to be programmed are in the Confirmed state (or other state) after the inventory process and are subsequently transitioned to the Being Addressed, Open Addressed, or Secure Addressed state by Interrogator 101. In one embodiment, Tags that have not transitioned to the Being Addressed, Open Addressed, or Secure Addressed state cannot receive and process simultaneous programming commands.
编程选择的标签Programmatically selected tags
在一个实施方式中,处于正在寻址、开放寻址、或安全寻址状态的标签能够接收同时编程命令。在一个实施方式中,使用两个命令的操作:1)用于寻址指定的标签且发射待编程的数据至指定的标签的命令,以及2)用于为指定标签的组提交寻址数据的命令,唯一的数据被同时编程至一组标签。在一个实施方式中,相同的数据以一个命令而非两个命令的操作被同时寻址且编程至一组标签。In one embodiment, Tags in the Being Addressed, Open Addressed, or Secure Addressed states are capable of receiving simultaneous programming commands. In one embodiment, unique data is simultaneously programmed to a group of Tags using two command operations: 1) a command for addressing a specified Tag and transmitting data to be programmed to the specified Tag, and 2) a command for submitting addressed data for a specified group of Tags. In one embodiment, the same data is simultaneously addressed and programmed to a group of Tags using one command operation rather than two.
在一个实施方式中,存在三种类型的同时编程命令。批编程命令将相同/同样的数据(例如,产品的相同颜色和型号)编程至一组标签。编程设置和编程提交命令将唯一的数据编程至一组指定标签(例如,唯一的序列号)中的每一个标签。对本领域的技术人员明显的是,当使用编程设置和编程提交命令时,数据是否实际上唯一是可选的。在其它实施方式中,可能存在不同的命令名称和类型也提供同时编程命令。在一个实施方式中,多种命令能够被与正在寻址、开放寻址、以及安全寻址状态一起使用(例如,写入、块写入、以及锁定命令)。在一个实施方式中,写入命令将数据写入标签存储器。在一个实施方式中,块写入命令写入多个16比特的字到标签存储器。在其它实施方式中,块写入字的尺寸可以是8比特、32比特或其它长度。在一个实施方式中,锁定命令锁定密码且防止使用锁定的密码的后续写入。锁定命令还可以锁定各个存储器区,以防止对特定存储器区的后续写入。In one embodiment, there are three types of simultaneous programming commands. The Batch Program command programs identical/identical data (e.g., the same color and model of a product) to a group of tags. The Program Set and Program Commit commands program unique data to each tag in a specified group of tags (e.g., a unique serial number). It will be apparent to one skilled in the art that whether the data is actually unique is optional when using the Program Set and Program Commit commands. In other embodiments, there may be different command names and types that also provide simultaneous programming commands. In one embodiment, multiple commands can be used with the addressing, open addressing, and secure addressing states (e.g., Write, Block Write, and Lock commands). In one embodiment, the Write command writes data to the tag memory. In one embodiment, the Block Write command writes multiple 16-bit words to the tag memory. In other embodiments, the Block Write word size may be 8 bits, 32 bits, or other lengths. In one embodiment, the Lock command locks a password and prevents subsequent writes using the locked password. The Lock command can also lock individual memory regions to prevent subsequent writes to specific memory regions.
在一个实施方式中,询问器101使用预定的排他句柄来建立至处于正在寻址状态中的标签的I/O数据链路。例如,该句柄可以是由全0组成的16比特数字。这个预定的排他句柄用于发送同时编程命令至标签。标签从不是该排他句柄的句柄接收到的命令被忽略,且标签将不会对与同时编程不相关的命令作出动作。In one embodiment, interrogator 101 uses a predefined exclusive handle to establish an I/O data link to a tag in the being addressed state. For example, the handle can be a 16-bit number consisting of all zeros. This predefined exclusive handle is used to send simultaneous programming commands to the tag. Commands received by the tag from handles other than the exclusive handle are ignored, and the tag will not act on commands not related to simultaneous programming.
在一个实施方式中,能够接收同时编程命令的标签不需要句柄以接收同时编程命令。在一个实施方式中,处于正在寻址、开放寻址、或安全寻址状态中的标签忽略以不是排他同时编程句柄的句柄发送的命令。In one embodiment, Tags capable of receiving simultaneous programming commands do not require a handle to receive simultaneous programming commands. In one embodiment, Tags in the Being Addressed, Open Addressed, or Secure Addressed states ignore commands sent with a handle that is not an Exclusive Simultaneous Programming handle.
批编程唯一数据Batch programming unique data
在一个实施方式中,用于编程唯一数据的方法被分为多个命令。编程设置命令建立各个标签寻址且为每个指定的标签提供待编程的数据。编程提交命令使得标签编程(提交)寻址的数据至标签存储器。In one embodiment, the method for programming unique data is divided into multiple commands. The Program Setup command establishes individual tag addressing and provides the data to be programmed for each specified tag. The Program Commit command causes the tag to program (commit) the addressed data to the tag memory.
在一个实施方式中,编程设置命令个别地寻址以及发送数据至一组指定标签中的每个标签。例如,对于十个标签的组,标签1将接收寻址至标签1的编程设置命令,标签2将接收寻址至标签2的编程设置命令,依此类推。询问器101为指定标签组中的每个标签单独发布编程设置命令,直到每个标签已经被寻址,且数据已经发送至指定的标签地址。在一个实施方式中,发送给一组中的每个标签的编程设置数据可以是唯一的数据(例如,唯一的序列号)。在一个实施方式中,编程设置命令指定标签的存储器区,并且数据被存储在该存储器区中。在一个实施方式中,编程设置命令基于标签的序列号或唯一的标签ID寻址各个标签。In one embodiment, the programming setup commands individually address and send data to each tag in a group of specified tags. For example, for a group of ten tags, tag 1 will receive a programming setup command addressed to tag 1, tag 2 will receive a programming setup command addressed to tag 2, and so on. The interrogator 101 issues programming setup commands individually for each tag in the specified tag group until each tag has been addressed and the data has been sent to the specified tag address. In one embodiment, the programming setup data sent to each tag in a group can be unique data (e.g., a unique serial number). In one embodiment, the programming setup commands specify a memory area of the tag, and the data is stored in the memory area. In one embodiment, the programming setup commands address each tag based on the tag's serial number or unique tag ID.
在一个实施方式中,当电源连续地应用至标签时,编程设置命令使得每个单个标签在一个或更多触发器或锁存器中暂时地保存数据。在一个实施方式中,当编程间隔被接收到时,指定的标签完全地提交数据至存储器。在一个实施方式中,为了提交由编程设置命令发送的数据,询问器101发布编程提交命令以在编程间隔维持电源。如上讨论的,标签可具有不同的需求持续时间以完全地提交数据至标签存储器。在一个实施方式中,为了完整地编程标签,询问器101保持电源至少二十微秒。在一个实施方式中,询问器101基于在最初清点阶段确定的指定标签类型,选择编程间隔。在一个实施方式中,编程间隔提交数据至非易失性存储器,从而另一个询问器能够在将来的时间点访问该数据。In one embodiment, the program setup command causes each individual tag to temporarily store data in one or more flip-flops or latches while power is continuously applied to the tags. In one embodiment, when a programming interval is received, the designated tag fully commits the data to the memory. In one embodiment, to commit the data sent by the program setup command, the interrogator 101 issues a program commit command to maintain power during the programming interval. As discussed above, tags may have different required durations to fully commit data to the tag memory. In one embodiment, to fully program the tag, the interrogator 101 maintains power for at least twenty microseconds. In one embodiment, the interrogator 101 selects the programming interval based on the designated tag type determined during the initial inventory phase. In one embodiment, the programming interval commits the data to the non-volatile memory so that another interrogator can access the data at a future point in time.
图4图示出一种方法的一个实施方式的流程图表示,该方法将寻址数据单个地同时编程至一组标签中的每个标签。在块405,询问器101对标签群体进行请点。Figure 4 illustrates a flow chart representation of one embodiment of a method for individually and simultaneously programming addressing data to each Tag in a group of Tags.At block 405, the interrogator 101 interrogates the population of Tags.
在块410,询问器101从整个清点群体指定一组标签。在一个实施方式中,询问器101从标签的初始群体指定一组标签。在一个实施方式中,询问器101接连编程标签组,直到所有清点的标签被成功地编程。At block 410, the interrogator 101 specifies a group of tags from the entire inventory population. In one embodiment, the interrogator 101 specifies a group of tags from an initial population of tags. In one embodiment, the interrogator 101 successively programs groups of tags until all inventory tags are successfully programmed.
在块415,询问器101为标签的指定组中的每个待编程标签设置正在寻址指示符。At block 415, Interrogator 101 sets the being addressed indicator for each Tag to be programmed in the designated group of Tags.
在块420,询问器101提供待编程的数据至指定标签组中的每个指定标签。在一个实施方式中,询问器101单个地提供待编程数据至每个标签,直到组中的每个指定标签已经收到待编程数据。At block 420, the interrogator 101 provides the data to be programmed to each designated Tag in the group of designated Tags. In one embodiment, the interrogator 101 provides the data to be programmed to each Tag individually until each designated Tag in the group has received the data to be programmed.
在块425,询问器101提供命令以同时编程所有指定组的标签。在一个实施方式中,当标签组编程数据至存储器时,询问器101保持编程间隔指定的持续时间。At block 425, Interrogator 101 provides a command to program all of the specified group of Tags simultaneously. In one embodiment, Interrogator 101 maintains a duration specified by a programming interval while the group of Tags programs data to memory.
在块430,询问器101单个地验证编程命令对在指定组中的每个单个标签是否成功。At block 430 , Interrogator 101 individually verifies that the programming command was successful for each individual Tag in the specified group.
在块435,询问器为标签的指定组中的所有标签重置正在寻址指示符。At block 435, the interrogator resets the being addressed indicator for all Tags in the designated group of Tags.
批编程相同数据Batch programming of the same data
批编程命令与编程间隔同时发送。在一个实施方式中,批编程命令包括目的地存储器区、待编程数据和编程间隔。询问器101如上所述地确定编程间隔的持续时间。在一个实施方式中,批编程命令被处于正在寻址、开放寻址、或安全寻址状态中的标签接收和处理。在一个实施方式中,具有激活/设置的正在寻址指示符的标签能够接收批编程命令。The batch program command is sent concurrently with the programming interval. In one embodiment, the batch program command includes the destination memory area, the data to be programmed, and the programming interval. Interrogator 101 determines the duration of the programming interval as described above. In one embodiment, the batch program command is received and processed by Tags in the Being Addressed, Open Addressed, or Secure Addressed states. In one embodiment, Tags with the Being Addressed indicator activated/set are able to receive the batch program command.
图5图示出一种方法的一个实施方式的流程图表示,该方法以相同的数据同时编程一组指定标签。在块505,询问器101对标签群体进行清点。Figure 5 illustrates a flow chart representation of one embodiment of a method for simultaneously programming a group of designated Tags with the same data.At block 505, the Interrogator 101 takes an inventory of the Tag population.
在块510,询问器101从清单群体指定一组标签。At block 510, the interrogator 101 specifies a set of tags from an inventory population.
在块515,询问器101为标签的指定组中的每个待编程标签设置正在寻址指示符。At block 515, Interrogator 101 sets the being addressed indicator for each Tag to be programmed in the designated group of Tags.
在块520,询问器101发送同时编程命令至指定标签的整个组。在一个实施方式中,同时编程命令包含待编程数据,且在指定编程间隔中保持电源。At block 520, Interrogator 101 sends a simultaneous program command to the entire group of designated Tags. In one embodiment, the simultaneous program command contains the data to be programmed and maintains power for a designated programming interval.
在块525,询问器101对在指定组中的每个单个标签单个地验证编程命令是否成功。At block 525, Interrogator 101 individually verifies for each individual Tag in the designated group whether the programming command was successful.
在块530,询问器为标签的指定组中的所有标签重置正在寻址指示符。At block 530, the interrogator resets the being addressed indicator for all Tags in the designated group of Tags.
图6图示出参与同时编程的标签实现方法的一个实施方式的流程图表示。在块605,标签参加清点。Figure 6 illustrates a flow chart representation of one embodiment of a method for implementing tags participating in simultaneous programming.At block 605, tags participate in an inventory.
在块610,标签接收设置它的正在寻址指示符的命令,并且执行内部逻辑以设置正在寻址指示符。At block 610 , the Tag receives a command to set its being addressed indicator and executes internal logic to set the being addressed indicator.
在块615,标签接收一个或更多如上所述的同时编程命令。At block 615, the Tag receives one or more simultaneous programming commands as described above.
在块620,标签接收验证同时编程命令的成功的命令,且发送回对该验证命令的应答。At block 620, the Tag receives a command to verify the success of the simultaneous programming command and sends back a reply to the verification command.
在块625,标签接收重置它的正在寻址指示符的命令,并且执行内部逻辑以重置正在寻址指示符。At block 625 , the Tag receives the command to reset its being addressed indicator and executes internal logic to reset the being addressed indicator.
验证编程成功Verify programming success
一组同时编程的标签可能自动地以及同时地响应同时编程,从而这些响应相互冲突,使得单个应答令询问器101难以识别。在一个实施方式中,对每个标签,同时编程的成功都被验证。标签的单个验证确保询问器101从每个标签接收到清晰的响应。在一个实施方式中,询问器101通过单个地发布验证命令至每个标签来验证编程至标签的数据。验证命令返回来自标签的响应,指示标签的编程是否成功。如果标签编程命令不成功或询问器101没有收到响应,该标签被添加回待编程标签队列中。询问器101在随后一轮同时编程中,通过重新发送编程命令重试失败的或不明状态的标签。A group of tags being programmed simultaneously may respond to the simultaneous programming automatically and simultaneously, such that the responses conflict with each other, making a single response difficult for the interrogator 101 to discern. In one embodiment, the success of the simultaneous programming is verified for each tag. Individual verification of the tags ensures that the interrogator 101 receives a clear response from each tag. In one embodiment, the interrogator 101 verifies the data programmed into the tags by issuing a verification command to each tag individually. The verification command returns a response from the tag indicating whether the programming of the tag was successful. If the tag programming command is unsuccessful or the interrogator 101 does not receive a response, the tag is added back to the queue of tags to be programmed. The interrogator 101 retries the failed or unidentified tags in a subsequent round of simultaneous programming by reissuing the programming command.
重置正在寻址指示符Reset the addressing indicator
基于标签以正确的数据成功编程的验证,询问器101重置正在寻址、开放寻址、或安全寻址状态。在一个实施方式中,询问或NAK命令足以重置正在寻址、开放寻址、或安全寻址状态。在一个实施方式中,在成功地编程一组标签后,询问器101从正在寻址、开放寻址、或安全寻址状态切换至另一个状态(例如,就绪状态或仲裁状态)。在一个实施方式中,询问器101基于标签已经被成功地编程的验证,重置、去激活、或去选择正在寻址指示符。Based on verification that a Tag has been successfully programmed with the correct data, Interrogator 101 resets the BeingAddressed, OpenAddressed, or SecureAddressed state. In one embodiment, an Query or NAK command is sufficient to reset the BeingAddressed, OpenAddressed, or SecureAddressed state. In one embodiment, after successfully programming a group of Tags, Interrogator 101 switches from the BeingAddressed, OpenAddressed, or SecureAddressed state to another state (e.g., Ready state or Arbitration state). In one embodiment, Interrogator 101 resets, deactivates, or deselects the BeingAddressed indicator based on verification that a Tag has been successfully programmed.
在一个实施方式中,询问器101在重置或从正在寻址、开放寻址、或安全寻址的状态转换之前,还锁定标签的存储器。在一个实施方式中,询问器101在重置或从正在寻址、开放寻址、或安全寻址状态转换之后,锁定标签的存储器。In one embodiment, the interrogator 101 also locks the Tag's memory before resetting or transitioning from the being addressed, open addressed, or secure addressed state. In one embodiment, the interrogator 101 locks the Tag's memory after resetting or transitioning from the being addressed, open addressed, or secure addressed state.
本发明各种实施方式和方面已经在上面描述,附图将图示该各种实施方式。在前面的说明中,本发明已经参照它的特定示例性实施方式被描述。明显的是,不背离如在下面的权利要求阐述的本发明更宽的精神和范围,可作出各种修改。因此,说明书和附图视为示例性意义而非限制性的意义。Various embodiments and aspects of the present invention have been described above, and the accompanying drawings illustrate these various embodiments. In the foregoing description, the invention has been described with reference to specific exemplary embodiments thereof. It will be apparent that various modifications may be made without departing from the broader spirit and scope of the invention as set forth in the following claims. The specification and drawings are, therefore, to be regarded in an illustrative rather than a restrictive sense.
对说明书中某个实施方式的引用表示连同该实施方式描述的特定特征、结构或特征包括在本发明的至少一个实施方式中。在说明书中,词组“在一个实施方式中”在不同位置的出现不一定指相同的实施方式。Reference to an embodiment in the specification indicates that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. In the specification, the appearance of the phrase "in one embodiment" in different places does not necessarily refer to the same embodiment.
本发明前面的实施方式可以被描述为一个过程,该过程通常描绘为流程图、流程图表、结构图或块图。尽管流程图可以以连续的过程描述操作,许多这些操作可以被重新安排。当过程的操作完成时,该过程被终止。一个过程可以对应于一种方法、程序、进程,等等。The foregoing embodiments of the present invention may be described as a process, which is often depicted as a flow chart, flow diagram, structure diagram, or block diagram. Although a flow chart may describe operations as a sequential process, many of these operations may be rearranged. When the operations of a process are completed, the process is terminated. A process may correspond to a method, procedure, process, and the like.
Claims (44)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/355,432 | 2012-01-20 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| HK1189979A HK1189979A (en) | 2014-06-20 |
| HK1189979B true HK1189979B (en) | 2020-01-24 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9405941B2 (en) | Simultaneous programming of selected tags | |
| CN101364911B (en) | Household appliance network system capable of realizing equipment recognition | |
| US8044774B1 (en) | RFID tag chips and tags able to be partially killed and methods | |
| CN101174308B (en) | Response control mehtod for RFID tag, device for rfid tag, and rfid reading and control device | |
| US8134451B1 (en) | RFID tag chips and tags capable of backscattering more codes and methods | |
| US10719671B1 (en) | Tag-to-tag communication using RFID readers | |
| US8072327B2 (en) | Causing RFID tags to reply using changed reply timing | |
| CN114692790B (en) | A communication method and related equipment | |
| US8063740B1 (en) | Interfacing to RFID reader utility that causes RFID tags to reply using changed reply timing | |
| US20240370686A1 (en) | Rfid ics with privacy modes | |
| US8830065B1 (en) | RFID readers with run commands | |
| US20070236335A1 (en) | Ahead-of-time scheduling of commands in RFID reader systems | |
| US8698629B1 (en) | RFID readers with encapsulating commands | |
| US20070236331A1 (en) | Preventing timeout of RFID tag in timed state of air-interface protocol | |
| CN105279543A (en) | Radiofrequency transponder circuit | |
| CN100437622C (en) | Method of activating a communication mode of a peer-to-peer communication unit | |
| US9582691B2 (en) | Simultaneous programming of selected tags | |
| HK1189979B (en) | Simultaneous programming of selected tags | |
| KR101268542B1 (en) | System and method for recognizing a plurality of RFID tags | |
| HK1189979A (en) | Simultaneous programming of selected tags | |
| US7911323B2 (en) | Radio frequency identification (RFID) tag response modulation | |
| US8028149B2 (en) | Method of reading the memory plane of a contactless tag | |
| KR101236854B1 (en) | Method for Managing Production of Manufactures | |
| Tee et al. | An intelligent warehouse stock management and tracking system based on silicon identification technology and 1-wire network communication | |
| US7436307B2 (en) | Method and system for setting parameters of a field station in a communications network |