Collision reply recovery using parallel RFID tag responses
By configuring RFID tags to enter a waiting mode after receiving an incorrect command, the conflict problem caused by multiple tags replying at the same time is resolved, and efficient identification and confirmation of tags in the RFID system is achieved.
Patent Information
- Application Number
- CN202480011135.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-06-26
- Filing Date
- 2024-02-07
- Publication Date
- 2025-09-12
AI Technical Summary
In RFID systems, conflicts caused by multiple tags replying simultaneously make it difficult for the reader to effectively identify and confirm tag information.
The RFID tag is configured to enter a waiting mode after receiving an incorrect or inapplicable command, and determine whether to exit the reply state by receiving a confirmation command, or wait for the next command in the waiting mode and respond only after receiving a confirmation command specifying itself.
In this way, the reader can continuously or simultaneously confirm multiple tags during the inventory cycle, improving the recognition efficiency and accuracy of the system and reducing misidentification caused by conflicts.
Smart Images

Figure CN120641906A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. Provisional Patent Application Serial No. 63 / 443,753, filed February 7, 2023, and U.S. Provisional Patent Application Serial No. 63 / 510,264, filed June 26, 2023. The disclosures of these applications are hereby incorporated by reference for all purposes. Background Art
[0003] Radio frequency identification (RFID) systems typically include an RFID reader and an RFID tag. An RFID reader is also known as an RFID reader / writer or RFID interrogator. RFID systems can be used in a variety of ways to locate and identify objects to which the tags are attached. RFID systems are suitable for use in both product-related and service-related industries to track objects being processed, inventoried, or disposed of. In such cases, RFID tags are typically attached to individual items or to their packaging. RFID tags typically include or are a radio frequency (RF) integrated circuit (IC).
[0004] In principle, RFID technology requires the use of an RFID reader to take inventory of one or more RFID tags, where the inventory involves singulating the tags, receiving identifiers from the tags, and / or acknowledging the received identifiers (e.g., by transmitting an acknowledgment command). "Singulated" is defined as the reader potentially selecting a tag from a pool of multiple tags for the reader-tag conversation. "Identifier" is defined as a number that identifies the tag or the item to which it is attached, such as a tag identifier (TID), electronic product code (EPC), etc. An "inventory round" is defined as the reader taking a continuous inventory of RFID tags in stages. The reader transmits radio frequency (RF) waves to perform the inventory. RF waves are typically electromagnetic waves, at least in the far field. In the near field or transitional near field, RF waves can also be primarily electric or magnetic waves. The RF waves can encode one or more commands that instruct the tag to perform one or more actions. The act of an RFID reader sending commands to an RFID tag is sometimes referred to as the reader "interrogating" the tag.
[0005] In a typical RFID system, an RFID reader transmits a modulated RF inventory signal (command), receives tag replies, and transmits an RF confirmation signal in response to the tag replies. Tags respond to the interrogating RF wave by transmitting another RF wave. The tag either generates the returning RF wave initially or generates it by reflecting a portion of the interrogating RF wave in a process called backscattering. Backscattering can occur in a variety of ways.
[0006] The reflected RF waves may encode data stored in the tag, such as a number. The reader demodulates and decodes the response, allowing it to identify, count, or otherwise interact with the associated item. The decoded data may represent a serial number, price, date, time, destination, encrypted message, electronic signature, other attributes, any combination of attributes, and the like. Thus, when a reader receives tag data, it can understand the tagged item and / or the tag itself.
[0007] RFID tags typically include an antenna section, a radio section, a power management section, and often a logic section, memory, or both. In some RFID tags, the power management section includes an energy storage device, such as a battery. RFID tags with energy storage devices are called battery-assisted, semi-active, or active tags. Other RFID tags can be powered solely by the RF signals they receive. Such RFID tags do not include energy storage devices and are called passive tags. Of course, even passive tags typically include temporary energy storage elements and data / flag storage elements, such as capacitors or inductors. Summary of the Invention
[0008] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be an aid in determining the scope of the claimed subject matter.
[0009] When an RFID reader inventories RFID tags in a population, two or more tags may reply simultaneously, resulting in a "collision." If the reader is properly configured, it can recover multiple tag replies from the collision, for example using error correction techniques or the like. The reader can then use the recovered replies to continuously or simultaneously acknowledge multiple tags during the inventory cycle. To achieve this continuous or simultaneous acknowledgement, the RFID tag or tag IC can be configured to wait for a subsequent acknowledgement or access command after receiving an incorrect or inappropriate command, rather than effectively exiting the inventory cycle immediately.
[0010] According to some examples, a method for a radio frequency identification (RFID) integrated circuit (IC) includes: receiving a query command via a transceiver block configured to receive commands and send replies; entering a reply state and sending a first reply to the query command via the transceiver block; receiving a first confirmation command via the transceiver block; determining whether the first confirmation command specifies the RFID IC; in response to determining that the first confirmation command does not specify the RFID IC, performing one of the following operations: if the reply state is set to a wait mode, waiting in the reply state; and if the reply state is set to a proceed mode, exiting the reply state.
[0011] According to another example, the method further includes receiving a first command via the transceiver block, the first command setting the reply state to one of the wait mode and the proceed mode. The first command is one of a query command, an acknowledgement command, or a broadcast command. The method further includes determining whether the acknowledgement command specifies the RFID IC by determining whether the acknowledgement command includes: a parameter corresponding to at least a portion of another parameter sent by the RFID IC in response to the query command; or a unique acknowledgement code specifying all RFID ICs that reply to the query command. The parameter is RN16.
[0012] According to another example, the method further includes waiting in the reply state by disabling an existing timeout. The method further includes, while waiting in the reply state, receiving another confirmation command; determining that the another confirmation command does not include the first parameter or does not specify the RFID IC; and continuing to wait in the reply state. The method further includes, while waiting in the reply state, sending an identifier in response to receiving the confirmation command specifying the RFID IC; and waiting for another command or another query command specifying the RFID IC. The method further includes, after sending the identifier, exiting the reply state and entering a confirmed state, in which the RFID IC waits for the another command or another query command specifying the RFID IC.
[0013] According to yet other examples, a radio frequency identification (RFID) integrated circuit (IC) includes a transceiver block configured to receive commands and send replies, and a processing block coupled to the transceiver block, wherein the processing block is configured to perform the actions of the methods described herein.
[0014] These and other features and advantages will be apparent from a reading of the following detailed description and a review of the associated drawings.It is to be understood that both the foregoing general description and the following detailed description are explanatory only and are not restrictive of the aspects, as claimed. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] The following detailed description will be made with reference to the accompanying drawings, in which:
[0016] Figure 1 is a block diagram of the components of an RFID system.
[0017] Figure 2 is a diagram showing the components of a passive RFID tag, such as may be used in Figure 1 Tags used in the system.
[0018] Figure 3 Is used to explain Figure 1 Conceptual diagram of the half-duplex mode of communication between components of an RFID system.
[0019] Figure 4 is a block diagram showing details of an RFID tag, such as Figure 2 The RFID tag shown.
[0020] Figure 5A and 5B Shown Figure 4 The signal paths during tag-to-reader and reader-to-tag communications in the block diagram of FIG.
[0021] Figure 6 is a block diagram depicting an RFID reader system according to an example.
[0022] Figure 7 is a diagram depicting a query-verification interaction between an RFID reader system and a plurality of RFID tags during an inventory cycle.
[0023] Figure 8 is a diagram depicting a query-confirmation interaction between an RFID reader and a plurality of RFID tags capable of waiting in their current state during an inventory cycle, according to an example.
[0024] Figure 9 is a diagram depicting a query-validation interaction between an RFID reader system and a plurality of RFID tags according to an example, wherein the RFID reader is configured to validate a plurality of designated RFID tags.
[0025] Figure 10is a diagram depicting a query-validation interaction between an RFID reader system and a plurality of RFID tags, according to an example, wherein the RFID reader is configured to validate all responding RFID tags.
[0026] Figure 11 is a diagram depicting a query-validation interaction between an RFID reader system and a plurality of RFID tags, according to an example, wherein the RFID reader is configured to initially validate all responding RFID tags.
[0027] Figure 12 A flow chart depicts a method of an RFID reader interacting with tags modified to wait in certain states according to an example.
[0028] Figure 13 A flow chart is depicted of a method for an RFID reader system to recover responses from multiple RFID tags according to an example. DETAILED DESCRIPTION
[0029] In the following detailed description, reference is made to the accompanying drawings which form a part of the present invention, and in which specific embodiments or examples are shown by way of illustration. These embodiments or examples may be combined, other aspects may be utilized, and structural changes may be made without departing from the spirit or scope of the present disclosure. Therefore, the following detailed description should not be construed as having a limiting meaning, and the scope of the present invention is defined by the appended claims and their equivalents.
[0030] As used herein, "memory" is one of ROM, RAM, SRAM, DRAM, NVM, EEPROM, FLASH, Fuse, MRAM, FRAM, and other similar volatile and non-volatile information storage technologies. Some parts of the memory may be writable, while some parts are not writable. An "instruction" is a request to perform a single explicit action on a tag (e.g., write data to memory). A "command" means a reader request to perform one or more actions on one or more tags, and contains one or more tag instructions preceded by a command identifier or command code that identifies the command and / or tag instruction. A "program" is a request to execute a group or series of instructions on a tag (e.g., read a value from memory, and lock a memory word if the read value is less than a threshold). “Protocol” means an industry standard for communication between a reader and a tag (and vice versa), such as the Type 1, Generation 2 UHF RFID Protocol for communication at 860 MHz to 960 MHz (“Gen2 Protocol”) developed by GS1 EPCglobal, Inc., versions 1.2.0, 2.0, and 3.0 of which are hereby incorporated by reference herein.
[0031] In some examples, an RFID tag responds to an interrogating RFID reader during a backscatter interval by modulating a symbol representing a data value onto the backscattered or reflected portion of the RF wave transmitted by the reader during the backscatter interval. The manner in which the RFID tag modulates the data symbol onto the backscattered RF wave portion may be defined by one or more protocols. For example, an RFID tag may use amplitude shift keying (ASK) or phase shift keying (PSK) to modulate the data symbol onto the backscattered RF wave, as described in the Gen2 protocol. In other examples, any other suitable modulation scheme known to one of ordinary skill in the art may be used.
[0032] During the backscattering time interval, the RFID tag may modulate the data symbols onto the backscattered RF waves by switching the associated impedance between two or more different values in a pattern corresponding to the data symbols. For example, the RFID tag may switch the tag front-end impedance presented to the RFID tag's antenna between a first impedance value and a second impedance value, thereby switching the reflectivity of the antenna to modulate the data symbols onto the backscattered RF waves.
[0033] The data symbol may be modulated onto the backscattered RF wave as a pattern of impedance values and / or transitions between impedance values. For example, a data symbol corresponding to a binary data value of "0" may be represented by a first series of impedance values and / or impedance value transitions, and a data symbol corresponding to a binary data value of "1" may be represented by a second series of impedance values and / or impedance value transitions.
[0034] Figure 1 is a diagram of the components of a typical RFID system 100, incorporating an example. An RFID reader 110 and a nearby RFID tag 120 communicate via RF signals 112 and 126. When transmitting data to a tag 120, reader 110 generates RF signal 112 by encoding the data, modulating an RF waveform with the encoded data, and transmitting the modulated RF waveform as RF signal 112. Conversely, tag 120 receives RF signal 112, demodulates the encoded data from RF signal 112, and decodes the encoded data. Similarly, when transmitting data to reader 110, tag 120 generates RF signal 126 by encoding the data, modulating an RF waveform with the encoded data, and transmitting the modulated RF waveform as RF signal 126. Data transmitted between reader 110 and tag 120 can be represented by symbols, also referred to as RFID symbols. Symbols can be delimiters, calibration values, or implemented to represent binary data, such as "0" and "1." After processing by reader 110 and tag 120, the symbol may be considered a value, a number, or any other suitable representation of data.
[0035] The RF waveforms transmitted by reader 110 and / or tag 120 can be within a suitable frequency range, such as those near 900 MHz, 13.56 MHz, etc. In some examples, RF signals 112 and / or 126 can include non-propagating RF signals, such as reactive near-field signals. RFID tag 120 can be active or battery-assisted (i.e., have its own power source), or passive. In the latter case, RFID tag 120 can derive power from RF signal 112.
[0036] Figure 2 is a diagram of an RFID tag 220 that can act as Figure 1 1. The label 220 may be formed on a generally planar inlay 222, which may be fabricated in any suitable manner. The label 220 includes circuitry that may be implemented as an IC 224. In some examples, the IC 224 is fabricated using complementary metal oxide semiconductor (CMOS) technology. In other examples, the IC 224 may be fabricated using other technologies, such as bipolar junction transistor (BJT) technology, metal-semiconductor field effect transistor (MESFET) technology, and other technologies known to those skilled in the art. The IC 224 is disposed on the inlay 222.
[0037] The tag 220 also includes an antenna for transmitting and / or interacting with RF signals. In some examples, the antenna can be: metal etched, deposited, and / or printed on the inlay 222; conductive lines formed with or without a substrate; a non-metallic conductive (e.g., graphene) pattern on a substrate; a first antenna inductively, capacitively, or galvanically coupled to a second antenna; or a variety of other existing methods that can be used to form an antenna to receive RF waves. In some examples, the antenna can even be formed in the IC 224. Regardless of the antenna type, the IC 224 communicates with the antenna via appropriate IC contacts ( Figure 2 ) is electrically coupled to an antenna. As used herein, the term "electrically coupled" may mean a direct electrical connection, or it may mean a connection involving one or more intervening circuit blocks, elements, or devices. The "electrical" portion of the term "electrically coupled" as used in this document shall mean coupling in one or more of ohmic / galvanic, capacitive, and / or inductive ways. Similarly, as used herein, the terms "electrically isolated" or "electrically decoupled" mean the absence, to the extent possible, of one or more types of electrical coupling (e.g., galvanic, capacitive, and / or inductive). For example, elements that are electrically isolated from one another are galvanically isolated from one another, capacitively isolated from one another, and / or inductively isolated from one another. Of course, there will generally be some unavoidable stray capacitive or inductive coupling between electrically isolated components, but the purpose of isolation is to minimize such stray coupling compared to the electrically coupled path.
[0038] IC 224 is shown with a single antenna port, including two IC contacts electrically coupled to two antenna segments 226 and 228, which are shown here as forming a dipole. Many other examples are possible using any number of ports, contacts, antennas, and / or antenna segments. Antenna segments 226 and 228 are depicted as being separate from IC 224, but in other examples, the antenna segments may instead be formed on IC 224. The tag antenna according to the examples can be designed in any form and is not limited to a dipole. For example, the tag antenna can be a patch antenna, a slot antenna, a loop antenna, a coil antenna, a horn antenna, a helical antenna, a monopole antenna, a microstrip antenna, a stripline antenna, or any other suitable antenna.
[0039] Diagram 250 depicts top and side views of a tag 252 formed using a tape. Tag 252 differs from tag 220 in that it includes a generally planar tape substrate 254 having tape contacts 256 and 258. IC 224 is mounted on tape substrate 254 such that the IC contacts on IC 224 are electrically coupled to tape contacts 256 and 258 via suitable connections (not shown). Tape substrate 254 is then placed on inlay 222 such that tape contacts 256 and 258 are electrically coupled to antenna segments 226 and 228. Tape substrate 254 can be secured to inlay 222 via compression, an interfacial layer, one or more adhesives, or any other suitable means.
[0040] Diagram 260 depicts a side view of an alternative way to place the strip substrate 254 onto the inlay 222. Rather than the surface of the strip substrate 254 containing the strip contacts 256 / 258 facing the surface of the inlay 222, the strip substrate 254 is placed with the strip contacts 256 / 258 facing away from the surface of the inlay 222. The strip contacts 256 / 258 can then be capacitively coupled to the antenna segments 226 / 228 through the strip substrate 254 or conductively coupled to the antenna segments using vias formed by crimping the strip contacts 256 / 258 to the antenna segments 226 / 228. In some examples, the positions of the strip substrate 254 and the inlay 222 can be reversed, with the strip substrate 254 mounted below the inlay 222 and the strip contacts 256 / 258 electrically coupled to the antenna segments 226 / 228 through the inlay 222. Of course, in yet other examples, the strip contacts 256 / 258 may be electrically coupled to the antenna segments 226 / 228 through both the inlay 222 and the strip substrate 254 .
[0041] In operation, the antenna couples with RF signals in the environment and propagates the signal to the IC 224, which can draw power and respond as appropriate based on the incoming signal and the internal state of the IC. If the IC 224 uses backscatter modulation, it can generate a response signal (e.g., signal 126) from the RF signal in the environment (e.g., signal 112) by modulating the reflectivity of the antenna. Electrically coupling and decoupling the IC contacts of the IC 224 can modulate the reflectivity of the antenna because the admittance or impedance of the parallel-connected or series-connected circuit elements coupled to the IC contacts can be changed. If the IC 224 is capable of transmitting signals (e.g., has its own power supply, is coupled to an external power supply, and / or can draw sufficient power to transmit signals), the IC 224 can respond by transmitting the response signal 126. Figure 2 In the example shown, antenna segments 226 and 228 are separate from IC 224. In other examples, antenna segments may be formed on IC 224 instead.
[0042] RFID tags, such as tag 220, are typically attached to or associated with individual items or item packaging. An RFID tag may be manufactured first and then attached to an item or package; it may be partially manufactured first, attached to an item or package, and then fully manufactured after attachment to the item or package; or the manufacturing process of the item or package may include the manufacture of the RFID tag. In some examples, an RFID tag may be integrated into an item or package, and portions of the item or package may serve as tag components. For example, conductive portions of the item or package may serve as tag antenna segments or contacts. Non-conductive portions of the item or package may serve as the tag substrate or inlay. If an item or package contains an integrated circuit or other circuitry, a portion of the circuitry may be configured to operate as part or all of an RFID tag IC. Therefore, the term "RFID IC" need not be distinguished from an item, but more generally refers to an item containing an RFID IC and an antenna capable of interacting with RF waves and receiving and responding to RFID signals. Because the boundaries between ICs, tags, and items are often blurred, the terms "RFID IC," "RFID tag IC," or "RFID tag" as used herein may refer to an IC, a tag, or even an item, as long as the referenced element possesses RFID functionality.
[0043] Figure 1 The components of an RFID system can communicate with each other in any number of modes. One such mode is called full-duplex, in which both the reader 110 and the tag 120 can transmit simultaneously. In some examples, the RFID system 100 is capable of full-duplex communication. Another such mode, which may be more suitable for passive tags, is called half-duplex and is described below.
[0044] Figure 3 Is used to explain Figure 1 A conceptual diagram 300 illustrates half-duplex communication between components of an RFID system, in this case, tag 120 implemented as a passive tag. The explanation is made with reference to a timeline and the human metaphors of "speaking" and "listening." A practical technical implementation of "speaking" and "listening" will now be described.
[0045] In half-duplex communication mode, RFID reader 110 and RFID tag 120 take turns talking and listening. As can be seen from the timeline, reader 110 talks to tag 120 during intervals designated as "R→T," and tag 120 talks to reader 110 during intervals designated as "T→R." For example, a sample R→T interval occurs during time interval 312, during which reader 110 talks (block 332) and tag 120 listens (block 342). A subsequent sample T→R interval occurs during time interval 326, during which reader 110 listens (block 336) and tag 120 listens (block 346). Interval 312 can be of a different duration than interval 326; the durations are shown here as being approximately equal for illustrative purposes only.
[0046] During interval 312, reader 110 transmits a signal, e.g. Figure 1 3. The reader 110 receives the reader signal 112 (block 352), and the tag 120 receives the reader signal (block 362), processes the reader signal to extract data, and draws power from the reader signal. When receiving the reader signal, the tag 120 does not backscatter (block 372), and therefore, the reader 110 does not receive a signal from the tag 120 (block 382).
[0047] During interval 326, also referred to as a backscatter time interval or backscatter interval, the reader 110 does not transmit a signal carrying data. Instead, the reader 110 transmits a continuous wave (CW) signal (block 356), which is a carrier wave that generally does not encode information. The CW signal provides energy for the tag 120 to acquire and provides a waveform that the tag 120 can modulate to form a backscatter response signal. Thus, during interval 326, the tag 120 does not receive a signal with encoded information (block 366), but instead modulates the CW signal (block 376) to generate a backscatter signal, such as Figure 2 The tag 120 may modulate the CW signal to generate a backscattered signal by adjusting its antenna reflectivity, as described above. The reader 110 then receives and processes the backscattered signal (block 386).
[0048] Figure 4 is shown, for example Figure 2224 in FIG. 4. Circuit 424 may be implemented in an IC such as IC 224. Circuit 424 implements at least two IC contacts 432 and 433 that are suitable for coupling to an antenna segment, such as an antenna segment. Figure 2 Antenna segments 226 / 228 are shown in FIG. When two IC contacts form the signal input to and return to the antenna, these IC contacts are often referred to as antenna ports. IC contacts 432 and 433 can be formed in any suitable manner, such as from conductive pads, bumps, etc. In some examples, circuit 424 implements more than two IC contacts, particularly when configured with multiple antenna ports and / or coupled to multiple antennas.
[0049] The circuit 424 includes a signal routing section 435, which may include signal wiring, signal routing buses, receive / transmit switches, etc., that can route signals between components of the circuit 424. The IC contacts 432 / 433 can be galvanically, capacitively, and / or inductively coupled to the signal routing section 435. For example, optional capacitors 436 and / or 438 can capacitively couple the IC contacts 432 / 433 to the signal routing section 435, thereby galvanically decoupling the IC contacts 432 / 433 from the signal routing section 435 and other components of the circuit 424.
[0050] In some cases, capacitive coupling (and resulting galvanic decoupling) between IC contacts 432 and / or 433 and components of circuit 424 may be desirable. For example, in some RFID tag examples, IC contacts 432 and 433 may be galvanically connected to terminals of a tuning loop on the tag. In these examples, galvanic decoupling IC contact 432 from IC contact 433 may prevent a DC short from forming between the IC contacts through the tuning loop.
[0051] Capacitors 436 / 438 can be implemented within circuit 424 and / or partially or completely outside of circuit 424. For example, a dielectric or insulating layer on the surface of the IC containing circuit 424 can serve as the dielectric in capacitors 436 and / or capacitors 438. As another example, a dielectric or insulating layer on the surface of a tag substrate (e.g., inlay 222 or tape substrate 254) can serve as the dielectric in capacitors 436 / 438. Metal or conductive layers positioned on both sides of the dielectric layer (i.e., between the dielectric layer and the IC and between the dielectric layer and the tag substrate) can then serve as terminals for capacitors 436 / 438. The conductive layers can include IC contacts (e.g., IC contacts 432 / 433), antenna segments (e.g., antenna segments 226 / 228), or any other suitable conductive layer.
[0052] Circuit 424 includes a rectifier and power management unit (PMU) 441 that harvests energy from the RF signal incident on antenna segments 226 / 228 to power the circuitry of IC 424 during either or both of the reader-to-tag (R→T) and tag-to-reader (T→R) intervals. Rectifier and PMU 441 may be implemented in any manner known in the art and may include one or more components configured to convert an alternating current (AC) or time-varying signal into a direct current (DC) or substantially time-invariant signal.
[0053] Circuit 424 also includes a demodulator 442, a processing block 444, a memory 450, and a modulator 446. Demodulator 442 demodulates RF signals received via IC contacts 432 / 433 and can be implemented in any suitable manner, such as using a slicer, amplifier, and other similar components. Processing block 444 receives output from demodulator 442, performs operations such as command decoding, memory interfacing, and other related operations, and can generate output signals for transmission. Processing block 444 can be implemented in any suitable manner, such as by a combination of one or more of a processor, a controller, processing circuitry, memory, a decoder, an encoder, and other similar components. Memory 450 stores data 452 and can be implemented at least in part as permanent or semi-permanent memory, such as non-volatile memory (NVM), EEPROM, ROM, or other memory types configured to retain data 452 even when circuit 424 is not powered. Processing block 444 may be configured to read data from and / or write data to memory 450 .
[0054] Modulator 446 generates a modulated signal from the output signal generated by processing block 444. For example, processing block 444 may cause modulator 446 to modulate data symbols onto backscattered RF waves, as described above. In one example, modulator 446 generates the modulated signal by driving a load presented by an antenna segment coupled to IC contacts 432 / 433, thereby forming the backscattered signal described above. In another example, modulator 446 includes and / or uses a transmitter to generate the modulated signal and transmit the modulated signal via the antenna segment coupled to IC contacts 432 / 433. Modulator 446 can be implemented in any suitable manner, such as using switches, drivers, amplifiers, and other similar components. Demodulator 442 and modulator 446 can be separate components, combined in a single transceiver circuit, and / or part of processing block 444.
[0055] In some examples, particularly in examples with more than one antenna port, circuitry 424 may contain multiple demodulators, rectifiers, PMUs, modulators, processing blocks, and / or memories.
[0056] Figure 5A Shown Figure 4 A version 524-A of the components of circuit 424 is further modified to emphasize the R→T interval (e.g., Figure 3 During the R→T interval, the demodulator 442 demodulates the RF signal received from the IC contacts 432 / 433. The demodulated signal is provided to the processing block 444 as C_IN, which in some examples may include the received symbol stream. The rectifier and PMU 441 may be in an active state, such as extracting energy from the incident RF waveform and providing power to the demodulator 442, the processing block 444, and other circuit components. During the R→T interval, the modulator 446 is not actively modulating the signal and may actually be decoupled from the RF signal. For example, the signal routing section 435 may be configured to decouple the modulator 446 from the RF signal, or the impedance of the modulator 446 may be adjusted to decouple the modulator from the RF signal.
[0057] Figure 5B Shown Figure 4 A version 524-B of the components of circuit 424 is further modified to emphasize the T→R interval (e.g., Figure 3 During the T→R interval, the processing block 444 outputs a signal C_OUT, which may include a symbol stream for transmission. The modulator 446 then generates a modulated signal from C_OUT and transmits the modulated signal via an antenna segment coupled to the IC contacts 432 / 433, as described above. During the T→R interval, the rectifier and PMU 441 may be active, while the demodulator 442 may not actively demodulate the signal. In some examples, the demodulator 442 may be decoupled from the RF signal during the T→R interval. For example, the signal routing section 435 may be configured to decouple the demodulator 442 from the RF signal, or the impedance of the demodulator 442 may be adjusted to decouple the demodulator from the RF signal.
[0058] In a typical example, demodulator 442 and modulator 446 are operable to demodulate and modulate signals according to a protocol, such as the aforementioned Gen2 protocol. In examples where circuitry 424 includes multiple demodulators, modulators, and / or processing blocks, each demodulator, modulator, and / or processing block can be configured to support a different protocol or a different set of protocols. A protocol specifies, in part, symbol encoding and may include a set of modulation, rate, timing, or any other parameters associated with data communication. A protocol can be a variant of an internationally approved protocol, such as the Gen2 protocol, e.g., including fewer or additional commands than required by the approved protocol. In some cases, the additional commands may sometimes be referred to as custom commands.
[0059] Figure 6 6 is a block diagram depicting an RFID reader system 600 according to an example. The reader system 600 is configured to communicate with RFID tags and, optionally, with entities external to the reader system 600, such as a service 632. The reader system 600 includes at least one reader module 602 configured to transmit signals to and receive signals from RFID tags. The reader system 600 further includes at least one local controller 612 and, in some examples, at least one remote controller 622. Controllers 612 and / or 622 are configured to control the operation of the reader module 602, process data received from RFID tags communicating through the reader module 602, communicate with external entities, such as the service 632, and otherwise control the operation of the reader system 600.
[0060] In some examples, the reader system 600 may include multiple reader modules, local controllers, and / or remote controllers. For example, the reader system 600 may include at least one other reader module 610, at least one other local controller 620, and / or at least one other remote controller 630. A single reader module may communicate with multiple local and / or remote controllers, a single local controller may communicate with multiple reader modules and / or remote controllers, and a single remote controller may communicate with multiple reader modules and / or local controllers. Similarly, the reader system 600 may be configured to communicate with multiple external entities, such as other reader systems (not depicted) and multiple services (e.g., services 632 and 640).
[0061] The reader module 602 includes a modulator / encoder block 604, a demodulator / decoder block 606, and an interface block 608. The modulator / encoder block 604 can encode and modulate data for transmission to the RFID tag. The demodulator / decoder block 606 can demodulate and decode the signal received from the RFID tag to recover the data sent from the tag. The modulation, encoding, demodulation, and decoding can be performed according to a protocol or specification such as the Gen2 protocol. The reader module 602 can use the interface block 608 to communicate with the local controller 612 and / or the remote controller 624, for example, to exchange tag data, receive instructions or commands, or exchange other relevant information.
[0062] The reader module 602 and blocks 604 / 606 are coupled to one or more antennas and / or antenna drivers (not depicted) for transmitting and receiving RF signals. In some examples, the reader module 602 is coupled to multiple antennas and / or antenna drivers. In these examples, the reader module 602 can transmit and / or receive RF signals on different antennas using any suitable scheme. For example, the reader module 602 can switch between different antennas to transmit and receive RF signals, transmit on one antenna but receive on another, or transmit and / or receive on multiple antennas simultaneously. In some examples, the reader module 602 can be coupled to one or more phased array or synthetic beam antennas, whose beams can be generated and / or steered, for example, by the reader module 602, the local controller 612, and / or the remote controller 622.
[0063] The modulator / encoder block 604 and / or the demodulator / decoder block 606 can be configured to perform conversion between analog signals and digital signals. For example, the modulator / encoder block 604 can convert a digital signal received via the interface block 608 into an analog signal for subsequent transmission, and the demodulator / decoder block 606 can convert a received analog signal into a digital signal for transmission via the interface block 608.
[0064] The local controller 612 includes a processor block 612, a memory 616, and an interface 618. The remote controller 622 includes a processor block 622, a memory 626, and an interface 628. The local controller 612 differs from the remote controller 622 in that the local controller 612 is co-located with or at least physically close to the reader module 602, while the remote controller 622 is not physically close to the reader module 602. For example, the local controller 612
[0065] Processor blocks 612 and / or 622 can be configured to provide different functions, either individually or in combination. Such functions may include: controlling other components, such as memory, interface blocks, and reader modules; communicating with other components, such as reader module 602, other reader systems, and services 632 / 640; data processing or algorithm processing, such as encryption, decryption, authentication, etc.; or any other suitable functions. In some examples, processor blocks 612 / 622 can be configured to convert analog signals to digital signals or convert digital signals to analog signals, as described above with respect to blocks 604 / 606. Processor blocks 612 / 622 can also be configured to perform any suitable analog or digital signal processing, such as filtering, carrier cancellation, noise determination, etc.
[0066] The processor blocks 612 / 622 may be configured to provide functionality by executing instructions or application programs that may be retrieved from a memory (e.g., memory 616 and / or 626) or received from some other entity. The processor blocks 612 / 622 may be implemented in any suitable manner. For example, the processor blocks 612 / 622 may be implemented using: digital and / or analog processors, such as microprocessors and digital signal processors (DSPs); controllers, such as microcontrollers; software running in a machine, such as a general-purpose computer; programmable circuits, such as field programmable gate arrays (FPGAs), field programmable analog arrays (FPAAs), programmable logic devices (PLDs), application specific integrated circuits (ASICs), any combination of one or more of these; and equivalents.
[0067] The memory 616 / 626 is configured to store information and can be implemented in any suitable manner, such as the memory types described above, any combination thereof, or any other known memory or information storage technology. The memory 616 / 626 can be implemented as part of its associated processor block (e.g., processor block 614 / 624) or implemented separately. The memory 616 / 626 can store instructions, programs, or applications for execution by the processor block 614 / 624. The memory 616 / 626 can also store other data, such as files, media, component configurations or settings, etc.
[0068] In some examples, memory 616 / 626 stores tag data. Tag data can be data read from a tag, data to be written to a tag, and / or data associated with a tag or a tagged item. Tag data can include an identifier for the tag, such as an electronic product code (EPC), a tag identifier (TID), or any other information suitable for identifying an individual tag. Tag data can also include a tag password, a tag configuration file, a tag encryption key (secret or public), a tag key generation algorithm, and any other suitable information about the tag or an item associated with the tag.
[0069] The memory 616 / 626 may also store information about how the reader system 600 is to operate. For example, the memory 616 / 626 may store information about algorithms for encoding commands to tags, algorithms for decoding signals from tags, communication and antenna operating modes, encryption / authentication algorithms, tag location and tracking algorithms, encryption keys and key pairs (e.g., public / private key pairs) associated with the reader system 600 and / or other entities, electronic signatures, and the like.
[0070] Interface blocks 608, 618, and 628 are configured to communicate with each other and with other appropriately configured interfaces. Communication between interface blocks occurs via the exchange of signals containing data, instructions, commands, or any other suitable information. For example, interface block 608 may receive data to be written to a tag, information regarding the operation of reader module 602 and its constituent components, and may transmit data read from a tag. Interface blocks 618 and 628 may transmit and receive tag data, information regarding the operation of other components, other information for enabling the local controller 612 and remote controller 622 to operate in conjunction, and the like. Interface blocks 608 / 618 / 628 may also communicate with external entities, such as services 632, 640, other services, and / or other reader systems.
[0071] The interface blocks 608 / 618 / 628 can communicate using any suitable wired or wireless means. For example, the interface blocks 608 / 618 / 628 can communicate via circuit traces or interconnects or other physical wires or cables and / or using any suitable wireless signal propagation technology. In some examples, the interface blocks 608 / 618 / 628 can communicate via an electronic communication network, such as a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a network of networks, such as the Internet. Communications from the interface blocks 608 / 618 / 628 can be protected, for example, via encryption and other electronic means, or may be unprotected.
[0072] Reader system 600 can be implemented in any suitable manner. One or more of the components in reader system 600 can be implemented as integrated circuits using CMOS technology, BJT technology, MESFET technology, and / or any other suitable physical implementation technology. Components can also be implemented as software executed on general-purpose or dedicated hardware.
[0073] In one example, a "reader" as used in this disclosure may include at least one reader module, such as reader module 602, and at least one local controller, such as local controller 612. This reader may or may not include any remote controller, such as remote controller 622. A reader including a reader module and a local controller may be implemented as a standalone device or as a component within another device. In some examples, the reader may be implemented as a mobile device, such as a handheld reader, or as a component within a mobile device, such as a laptop, tablet, smartphone, wearable device, or any other suitable mobile device.
[0074] If not included in the reader, the remote controller 622 can be implemented separately. For example, the remote controller 622 can be implemented as a local host, remote server, or database that is coupled to one or more readers via one or more communication networks. In some examples, the remote controller 622 can be implemented as an application executed on the cloud or at a data center.
[0075] The functionality within reader system 600 can be distributed in any suitable manner. For example, the encoding and / or decoding functionality of blocks 604 and 606 can be performed by processor blocks 614 and / or 624. In some examples, processor blocks 614 and 624 can collaborate to execute an application or perform certain functionality. One of local controller 612 and remote controller 622 may not implement memory, while the other controller provides memory.
[0076] Reader system 600 can communicate with at least one service 632. Service 632 provides one or more features, functions, and / or capabilities associated with one or more entities, such as a reader system, a tag, a tagged item, and the like. Such features, functions, and / or capabilities may include providing information associated with the entity, such as warranty information, repair / replacement information, upgrade / update information, and the like; and providing services associated with the entity, such as storage and / or access to data related to the entity, location tracking of the entity, entity security services (e.g., authentication of the entity), entity privacy services (e.g., who is allowed to access what information about the entity), and the like. Service 632 can be separate from reader system 600, and the two can communicate via one or more networks.
[0077] In some examples, the RFID reader or reader system implements the functions and features described above at least in part in the form of firmware, software, or a combination thereof, such as hardware or device drivers, operating systems, applications, and the like. In some examples, interfaces to various firmware and / or software components may be provided. Such interfaces may include application programming interfaces (APIs), libraries, user interfaces (graphical and other), or any other suitable interfaces. The firmware, software, and / or interfaces may be implemented via one or more processor blocks, such as processor blocks 614 / 624. In some examples, at least some of the reader or reader system functions and features may be provided as services, such as via services 632 or services 640.
[0078] RFID technology may require the use of an RFID reader to inventory one or more tags by continuously singling out individual tags and receiving backscattered identifiers from the singulated tags. RFID systems typically use anti-collision algorithms to schedule or queue tag responses to avoid simultaneous backscattering by multiple tags (referred to as "collisions"). These anti-collision algorithms may include slotted-Aloha, random timeslotting, and other scheduling algorithms known to those skilled in the art. For example, the Gen2 protocol uses a slotted-Aloha scheduling algorithm, in which individual RFID tags each generate a pseudo-random number to determine an appropriate response time.
[0079] Figure 7 is a diagram depicting a query-verification interaction between an RFID reader system and a plurality of RFID tags during an inventory cycle.
[0080] like Figure 7 As shown, at time 700, an RFID reader system 702 may transmit a query command to RFID tags 704, 706, and 708 during an inventory cycle. The query command directs tags that meet certain criteria to participate or continue participating in the inventory cycle by replying with a collision resolution code (CR code) at the appropriate time. A collision resolution code is a code that the RFID reader system can use to indicate or designate a particular RFID tag during an inventory cycle when multiple RFID tags may reply at approximately the same time. The collision resolution code may be an identifier of the RFID tag or an item associated with the RFID tag, or a portion of such an identifier. This identifier may be a permanent identifier, as described in more detail below. In some embodiments, the CR code may be a temporary identifier, such as a random or pseudo-random number, an example of which is a 16-bit number or "RN16" as described in the Gen2 protocol. In some embodiments, the query command may be a Query, QueryAdj, or QueryRep command as described in the Gen2 protocol.
[0081] Each tag that receives the query command can then independently select a specific time to reply with a CR code. For example, a tag operating according to the Gen2 protocol can generate a pseudo-random number to determine when it should respond. In some cases, two or more tags may end up replying at the same time. For example, RFID tags 704, 706, and 708 may reply with CR codes CR-1, CR-2, and CR-3, respectively, at approximately the same time. This may result in a "collision reply" or "collision" 710.
[0082] If reader system 702 is properly configured, it can recover two or more of CR-1, CR-2, and CR-3 from collision 710, for example, using error correction, source separation, or other suitable techniques. For example, one or more of the techniques described in commonly owned U.S. Patent Nos. 9,715,605, 9,881,186, and 10,037,444 (hereby incorporated by reference in their entireties) can be used to recover multiple codes from a collision. However, even if reader system 702 can recover multiple replies from a collision, it may not be able to further interact with all three RFID tags 704, 706, and 708. For example, the Gen2 protocol specifies that an RFID reader further interact with an RFID tag that has replied with a collision resolution RN16 by sending an acknowledgement ("ACK") command containing RN16, thereby causing the tag to transition from a "reply" state to an "acknowledged" state. If an RFID tag receives an ACK command containing an RN16 that matches the RN16 it provided, it transitions to the Acknowledged state and continues interacting with the RFID reader. On the other hand, if an RFID tag receives an ACK command containing an unmatched RN16 (i.e., an RN16 it did not provide), the Gen2 protocol requires the tag to effectively exit the current inventory cycle by transitioning to the "Arbitration" state. If the CR code at time 700 in the figure is RN16, then at time 720, reader system 702 may send an ACK command with CR-1, CR-2, or CR-3. If reader system 702 sends an ACK command with CR-1, tag 704 will continue interacting with reader system 702, but tags 706 and 708 will effectively exit the inventory cycle. Similarly, if reader system 702 sends an ACK command with CR-2, tag 706 will continue interacting with reader system 702, but tags 704 and 708 will effectively exit the inventory cycle.
[0083] In some embodiments, an RFID tag can be configured such that if the tag detects an unmatched acknowledgement command (e.g., an ACK command with an unmatched RN16), rather than exiting the inventory cycle (e.g., transitioning to the arbitration state), the tag will wait in the tag's current state (reply or acknowledged). In this case, the tag can be said to be in a "wait" mode for its current state, rather than a "go" mode, in which the tag exits the inventory cycle or transitions to a different state described by the Gen2 protocol. An appropriately configured RFID tag can implement both a wait mode and a go mode for the reply state, the acknowledged state, or any other suitable operating state. The wait mode can also be referred to as a "reply wait" mode or a "acknowledged wait" mode, depending on whether the tag is waiting in the reply state or the acknowledged state.
[0084] Figure 8 is a diagram depicting a query-confirmation interaction between an RFID reader and a plurality of RFID tags capable of waiting in their current state during an inventory cycle, according to an example.
[0085] At time 800, RFID reader system 802 may transmit a query command to RFID tags 804 and 806 during an inventory cycle. In this case, tags 804 and 806 ultimately reply at the same time, with tags 804 and 806 replying with CR-1 and CR-2, respectively, at approximately the same time, resulting in a collision 810. Reader system 802 is appropriately configured and is therefore able to recover from collision 810 with both CR-1 and CR-2. Tags 804 and 806 are now both operating in a wait mode ("reply wait mode" 812) in a reply state.
[0086] At time 820, the RFID reader system 802 acknowledges the tag by sending the tag 804's CR-1, for example, in an ACK command. The tag 804 then responds with, for example, an identifier ID-1 and subsequently transitions from the wait mode of the reply state to the wait mode of the acknowledged state ("acknowledged wait mode" 822). The tag 806 also detects the acknowledgement with CR-1. After determining that CR-1 is not what it sent, the tag 806 remains in the reply state ("reply wait mode" 812) or waits in the state, rather than waiting as described above with respect to the reply state. Figure 7 This allows the tag 806 to remain available for verification by the RFID reader system 802.
[0087] Subsequently, at time 840, the RFID reader system 802 acknowledges the tag 806 by, for example, sending CR-2 in another ACK command. The tag 806 then responds with, for example, an identifier ID-2 and subsequently transitions from the wait mode of the reply state to the wait mode of the acknowledged state ("acknowledged wait mode" 822). The tag 804 also detects the acknowledgement with CR-2. After determining that CR-2 is not its conflict resolution code, the tag 804 remains in the acknowledged state ("acknowledged wait mode" 822) or waits in the state, rather than transitioning back to the arbitration state according to the Gen2 protocol.
[0088] At this point, tags 804 and 806 are both in a wait mode in a confirmed state (“Confirmed Wait Mode” 822 ) and can be further accessed by reader system 802 .
[0089] Although Figure 8 Only two individual tags are explicitly described, but embodiments involving three or more appropriately configured tags are possible and within the scope of the present disclosure.
[0090] In cases where the RFID reader system can recover two or more responses from a collision reply, the RFID reader system can also be configured to acknowledge multiple tags at once. This acknowledgement, which can be referred to as a "multi-acknowledgement," can cause multiple tags to respond at approximately the same time, resulting in subsequent collision replies. The reader system can then resolve the two or more subsequent tag responses from the subsequent collision reply.
[0091] Figure 9 is a diagram depicting a query-validation interaction between an RFID reader system and a plurality of RFID tags according to an example, wherein the RFID reader is configured to validate a plurality of designated RFID tags.
[0092] At time 900, RFID reader system 902 may transmit a query command to RFID tags 904, 906, and 908 during an inventory cycle. In this case, tags 904, 906, and 908 ultimately reply at the same time, resulting in a collision 910. When replying, tags 904, 906, and 908 reply with CR codes CR-1, CR-2, and CR-3, respectively. RFID reader system 902 successfully recovers all CR codes from collision 910.
[0093] At time 920, RFID reader system 902 authenticates tags 904 and 906 by transmitting at least a portion of their CR codes, which are denoted as CR-1 and CR-2, respectively. and CR-2 The RFID reader system 902 may send the CR code portion in an acknowledgement (ACK) command, as depicted in diagram 900. In some examples, the CR code portion, as the name suggests, contains only a portion of the CR code (e.g., CR-1 may include only a portion of CR-1), while in other examples, the CR code portion may include the entire CR code (e.g., The CR code portion can be included in the entire CR-1. The former reduces the amount of information included in the acknowledgment, while the latter can reduce ambiguity about the tag being acknowledged. In some cases, a balance can be struck between the two options. For example, the CR code portion can be the portion of the CR code that is most likely to vary between tags. This means that the CR code portion included in the ACK command will typically be different from one tag to another, although this is not strictly necessary.
[0094] After determining that the RFID reader system 902 has acknowledged RFID tags 904 and 906 (using at least a portion of their respective CR codes), the RFID tags respond with their respective permanent identifiers ID-1 and ID-2. An RFID tag's permanent identifier is an identifier known to the tag, encoded on the tag, or stored on the tag that is intended to be permanent. The permanent identifier may identify the tag or an item associated with the tag. In some examples, the permanent identifier may include a tag identifier (TID), an electronic product code (EPC), a unique item identifier (UID), and / or versions of any of the foregoing. At time 920, after determining that the RFID reader system 902 has not acknowledged RFID tag 908, the RFID tag does not respond with its permanent identifier.
[0095] In some cases, such as when operating strictly according to the Gen2 protocol, after time 920, the RFID tag 908 will exit the inventory cycle, for example, by transitioning to the arbitration state because the RFID tag detects a mismatched acknowledgement (e.g., an acknowledgement command with a mismatched CR code). However, in some embodiments, the inventory cycle may be performed as described above with respect to Figure 8 The RFID tag is modified as described so that if the tag detects an unmatched confirmation, the tag does not exit the inventory cycle (e.g., transition to the arbitration state), but instead waits in a wait mode. In the example depicted in diagram 900, RFID tag 908 is actually configured in a wait mode, and after detecting an unmatched confirmation, the RFID tag enters or remains in a reply wait mode 922 (i.e., a reply state wait mode). In practice, RFID tag 908 may have entered reply wait mode 922 after transmitting CR code CR-3 at time 900.
[0096] When RFID tags 904 and 906 respond with ID-1 and ID-2 at time 920, a collision 924 may occur. As with collision 910, reader system 902 can successfully recover ID-1 and ID-2 from collision 924. Being able to recover two or more tag responses from a collision allows for faster and simpler reader-tag interactions.
[0097] At time 940, the RFID reader system 902 validates the RFID tag 908 by sending at least a portion of the CR code of the RFID tag, which is indicated as CR-3 In response, the RFID tag 908 responds with its permanent identifier ID-3 and transitions to the confirmed state.
[0098] In some cases, the mismatched confirmation at time 940 may cause RFID tags 904 and 906 to exit the inventory cycle, for example, by transitioning to the Arbitration state. However, RFID tags 904 and 906 may be modified so that, if they detect a mismatched confirmation, rather than exiting the inventory cycle, they will wait in their current state (in this case, the Confirmed state). Thus, at time 940, rather than exiting the inventory cycle upon detecting the mismatched confirmation, RFID tags 904 and 906 enter or remain in Confirmed Wait Mode 942 (i.e., a wait mode for the Confirmed state). In practice, RFID tags 904 and 906 may have entered Confirmed Wait Mode 942 after transmitting their identifiers at time 920.
[0099] After time 940, all three RFID tags 904, 906, and 908 are in a confirmed state, and the RFID reader system 902 may further interact with one of the three RFID tags, or none of them.
[0100] exist Figure 9 In the exemplary process, RFID reader system 902 first confirms RFID tags 904 and 906, and then confirms RFID tag 908. To do this and retain the ability to further access one of those tags, the RFID tag can implement a reply and confirmed wait mode. In some examples, RFID reader system 902 can base its use of the tag wait mode on whether the replying RFID tag implements the wait mode. RFID reader system 902 can determine whether the replying RFID tag implements the wait mode based on, for example, a received CR code.
[0101] Although Figure 9 The RFID reader system 902 in the first step confirms the RFID tags 904 and 906 (by sending CR-1 in the confirmation command). and CR-2 ) and then confirms the RFID tag 908 (by sending CR-3 in another confirmation command ), but the RFID reader system 902 can also send CR-1 in the same confirmation command CR-2 and CR-3 In another example, the RFID reader system can confirm all the replying RFID tags at once without having to specify individual CR codes.
[0102] Figure 10is a diagram depicting a query-validation interaction between an RFID reader system and a plurality of RFID tags, according to an example, wherein the RFID reader is configured to validate all responding RFID tags.
[0103] At time 1000, RFID reader system 1002 may transmit a query command to RFID tags 1004, 1006, and 1008 during an inventory cycle. In this case, tags 1004, 1006, and 1008 eventually all reply at the same time, resulting in a collision 1010. When replying, tags 1004, 1006, and 1008 reply with CR codes CR-1, CR-2, and CR-3, respectively. RFID reader system 1002 successfully recovers all CR codes from collision 1010.
[0104] At time 1020, the RFID reader system 1002 acknowledges all of the replying tags by, for example, sending a special confirmation code (shown as "all") in the confirmation command shown in diagram 1000. The RFID tags can be configured to consider a confirmation command a match if the confirmation command contains (a) at least a portion of the CR code previously provided by the RFID tag or (b) the special confirmation code. In diagram 1000, RFID tags 1004, 1006, and 1008 are configured in this manner and therefore consider the confirmation command with the special confirmation code a match. In response, all three tags reply with their permanent identifiers (or portions thereof) ID-1, ID-2, and ID-3, respectively. This may result in a conflict 1022, from which the RFID reader system 1002 is able to recover one or more of ID-1, ID-2, and ID-3.
[0105] Depending on their length, using a special confirmation code rather than individual CR codes in the confirmation command to confirm all responding tags can speed up the inventory process, with the speed advantage increasing as the number of individual tags increases.
[0106] In some examples, the special confirmation code in the confirmation can replace the CR code originally in the multiple confirmation.In other examples, the multiple confirmation can include a parameter, which indicates whether it is for all tags replied or only for tags specified with CR codes.
[0107] Generally speaking, an RFID reader system can expect to recover a certain number of permanent identifiers based on the number of CR codes it has successfully recovered. For example, if the RFID reader system recovers two CR codes from a collision, it can expect to recover two permanent identifiers in response to a subsequent confirmation. However, in some cases, the number of CR codes recovered may not match the number of permanent identifiers recovered. For example, the RFID reader system may fail to recover only a CR code from a collision but subsequently successfully recover the corresponding permanent identifier. In another example, the RFID reader system may successfully recover all CR codes but subsequently fail to recover one or more permanent identifiers.
[0108] Figure 11 The former example is shown. Figure 11 is a diagram depicting a query-validation interaction between an RFID reader system and a plurality of RFID tags, according to an example, wherein the RFID reader is configured to initially validate all responding RFID tags.
[0109] At time 1100, RFID reader system 1102 may transmit a query command to RFID tags 1104, 1106, and 1108 during an inventory cycle. In this case, tags 1104, 1106, and 1108 select the same time to reply, resulting in a collision 1110. When replying, tags 1104, 1106, and 1108 reply with CR codes CR-1, CR-2, and CR-3, respectively. RFID reader system 1102 successfully recovers at least CR-1 and CR-2 from collision 1110, but may not be able to successfully recover CR-3.
[0110] At time 1120, the RFID reader system 1102 acknowledges all of the replying tags by, for example, sending a special acknowledgement code (shown as "ALL") in the acknowledgement command shown in diagram 1100. This is somewhat similar to Figure 10 The situation depicted at time 1020 in FIG. 1 is different in that the RFID reader system 1102 may not have successfully recovered the CR codes from all replying RFID tags.
[0111] In response to the confirmation, RFID tags 1104, 1106 and 1108 reply with their permanent identifiers (or portions thereof) ID-1, ID-2 and ID-3, respectively. This may result in a conflict 1122.
[0112] After recovering one or more identifiers (or identifier portions) from the collision 1122, the RFID reader system 1102 may determine that at least one unexpected RFID tag has replied. If the reader system has not previously received a CR code from the tag, the RFID tag may be unexpected.
[0113] In response to detecting the unexpected RFID tag reply, at time 1140, the RFID reader system 1102 sends a second confirmation command, this time specifying the RFID tag that has successfully recovered the CR code. Specifically, the second confirmation command includes at least a portion of CR-1 and CR-2 (represented as CR-1 and CR-2, respectively). and CR-2 ).
[0114] After determining that the RFID reader system 1102 has specifically acknowledged the RFID tags 1104 and 1106, these RFID tags again respond with their respective permanent identifiers ID-1 and ID-2. After detecting an unmatched acknowledgement, the RFID tag 1108 may transition to an acknowledged wait mode 1142, which is similar to Figure 8 842 in confirmed waiting mode. In some examples, the RFID tag 1108 may instead exit the inventory cycle.
[0115] When the RFID tag is in the reply waiting mode, a confirmation command of the designated tag can cause the tag to exit the reply waiting mode and enter, for example, the confirmed waiting mode. The RFID tag can also exit the reply waiting mode after receiving a query command or after power failure.
[0116] When an RFID tag is in confirmed wait mode, an access command to a specific tag can cause the tag to exit confirmed wait mode. Access commands can be configured to access additional features or functionality of the RFID tag. Some exemplary Gen2 access commands include Req_RN, Read, and Write, as well as other access commands described in the Gen2 protocol. The RFID tag can also exit confirmed wait mode after receiving a query command or after power is removed.
[0117] In some examples, tags that enable the wait mode described above may also be configured to exceed, ignore, or disable wait times (also known as "timeouts") specified in their associated communication protocols (e.g., the Gen2 protocol). As a specific example, the Gen2 protocol specifies a T2 timeout for the reply or confirmed state. If a tag in the reply or confirmed state does not receive an appropriate command before the T2 timeout expires, the tag transitions to an arbitration state. Tags configured with the wait mode described above may be configured to wait for a timeout exceeding, for example, the T2 timeout, in certain circumstances to allow a reader to communicate with multiple conflicting tags. The length of time that such tags wait for exceeding the timeout may be built into the tag or indicated by the reader, for example, in the form of one or more command parameters. In some embodiments, such tags may be configured to wait indefinitely until power is removed or until a command is received that causes the tag to stop waiting.
[0118] Tags with a wait mode as described above can also be configured to enable or disable their wait mode. For example, a suitably configured tag can enable or disable the use of wait mode upon receiving a custom command, a proprietary command, a standard protocol command with custom fields, and / or any other suitable command. In some embodiments, such commands can include query commands, confirmation commands, or broadcast commands that are intended for multiple tags but do not request replies from those tags (e.g., select commands, such as the Select command described in the Gen2 protocol). In other embodiments, a tag can always have wait mode enabled, or enable or disable wait mode based on some internal determination.
[0119] In one specific embodiment, a Query command according to the Gen2 protocol can be used to cause a received tag to enable or disable a wait mode. Specifically, the Query command includes a 2-bit "Sel" field, the value of which selects which RFID tags respond to the Query. A Sel value of "11" selects all RFID tags with an SL flag value of "1" to respond, a Sel value of "10" selects all RFID tags with an SL flag value of "0" to respond, and a Sel value of "00" or "01" selects all RFID tags to respond regardless of the SL flag value. In one embodiment, a Sel value of "00" or "01" can be used to cause a received tag to enable or disable a wait mode. However, in other embodiments, any suitable field value of any suitable command can be used to enable or disable the wait mode.
[0120] When properly configured tags enable wait mode, they may enter the corresponding wait mode when transitioning to different states. For example, a properly configured tag may transition to the reply state and enter the reply state's wait mode ("reply wait mode") after replying to a query command. Similarly, a properly configured tag may transition to the confirmed state and enter the confirmed state's wait mode ("confirmed wait mode") after receiving a confirmation command. In some embodiments, a tag may enable wait mode for some states but not for other states.
[0121] Although the above Figures 9 to 11 The examples of explicitly describe only three individual tags, but implementations involving four or more appropriately configured tags are possible and within the scope of the present disclosure.
[0122] Figures 8 to 11The exemplary process in
[0014] may vary in different situations. In some cases, RFID tags may refrain from replying with their permanent identifiers after a match is confirmed. For example, if an RFID tag replies to a query with a CR code that includes a portion or all of its permanent identifier, the RFID tag may subsequently refrain from transmitting its permanent identifier, thereby reducing the transmission of duplicate or redundant information. In certain situations where a tag's CR code only includes a portion of its permanent identifier, the tag may be configured to subsequently transmit another portion of its permanent identifier, for example, in response to a match confirmation. If a tag does not reply with its permanent identifier after receiving a match confirmation, the tag may still transition to a confirmed or confirmed wait mode.
[0123] Similarly, in some cases, an RFID tag may reply with only a portion of its permanent identifier to confirm a match. This may occur if the RFID tag has previously provided a portion of its permanent identifier (as described above), the reader system has instructed the RFID tag to do so, or based on any other suitable criteria. In this document, "permanent identifier" and "permanent identifier portion" should be considered interchangeable.
[0124] The above functionality of the RFID tag to avoid providing repeated or redundant portions of the permanent identifier is independent of the standby mode and / or multiple confirmations. In other words, the RFID tag can avoid replying with repeated or redundant portions of its permanent identifier regardless of whether the standby mode and / or multiple confirmations are used.
[0125] Figure 12 A flow chart is depicted of a method 1200 of an RFID reader interacting with a tag in a modified standby mode according to an example.
[0126] The RFID reader may begin enabling the wait mode described above in certain tags at optional step 1202. For example, the reader may transmit a custom, proprietary, or standard protocol command with a special field value; a query, confirmation, or broadcast command; or other suitable command that causes a received and appropriately configured tag to enable wait mode.
[0127] At step 1204, the RFID reader may transmit an inventory command requesting that tags matching certain criteria participate or continue to participate in an inventory cycle. The command may be a single or query command. The query command may be a Query, QueryAdj, or QueryRep command as described in the Gen2 protocol, and RFID tags receiving the command may respond with a CR code, as described above.
[0128] At step 1206, multiple RFID tags reply with CR codes, and the RFID reader receives these replies at approximately the same time, resulting in conflicting replies. At step 1208, the RFID reader may use error correction or other techniques to recover the replies. The recovered replies may contain the tag-specific CR codes.
[0129] In step 1210, the RFID reader may transmit a tag-specific acknowledgement (ACK) command associated with one of the recovered CR codes. The RFID tag that receives this tag-specific ACK command may determine whether the ACK command includes the corresponding CR code of the RFID tag. If the RFID tag determines that the ACK command includes the CR code for which it is replying, the RFID tag will respond. For example, the RFID tag may respond with the same CR code or a different code or identifier. After responding, the RFID tag may transition to a different state (e.g., an acknowledged state) and, in some cases, may wait in that state (e.g., in a wait mode for the acknowledged state or an acknowledged wait mode), as described above. On the other hand, if the RFID tag determines that the ACK command does not include the CR code for which it is replying, the RFID tag may wait in its current state, e.g., in a wait mode for the reply state or a reply wait mode.
[0130] In step 1212, the RFID reader receives a response from the RFID tag whose CR code was included in the previously transmitted ACK command. In step 1214, the RFID reader attempts to interact with one of the other RFID tags that replied in step 1206 by transmitting a second ACK command associated with another of the CR codes recovered in step 1208. The RFID tag that replied in step 1206 but determined that the previously transmitted ACK command did not include the corresponding CR code may be in a reply wait mode. Upon receiving the second ACK command, the RFID tag will determine whether the second ACK command includes the corresponding CR code of the RFID tag. One of those RFID tags may determine that the second ACK command includes its CR code and may respond similarly to the RFID tag that responded in step 1210. The other RFID tags will continue to wait in their current state. Specifically, the RFID tag that responded in step 1210 and may now be in a different state (e.g., an acknowledged state) will also wait in its current state to remain available for further interaction with the RFID reader.
[0131] The RFID reader then returns to step 1212, receives a response to the second ACK command, and continues to transition between steps 1212 and 1214 until all RFID tags that replied in step 1206 have been acknowledged (i.e., an ACK command containing the corresponding CR code of the RFID tag has been received) or the RFID reader determines that no additional tags need to be acknowledged. The RFID reader can then further interact with one of the tags, for example, by sending an access command, such as the access command described in the Gen2 protocol. Upon detecting this command, the other tags can exit their various wait modes.
[0132] Figure 13 A flow chart is depicted of a method 1300 of recovering multiple RFID tag responses by an RFID reader system according to an example.
[0133] The RFID reader system may begin enabling the multiple response functionality described above in certain tags at optional step 1302. For example, the reader system may transmit custom, proprietary, or standard protocol commands with special field values; query, confirmation, or broadcast commands; or other suitable commands that cause the receiving and appropriately configured tags to enable relevant functionality. Such functionality may include, for example, recognizing confirmations containing multiple CR codes, multiple CR code portions, and / or special confirmation codes. Such functionality may also include the wait mode described above.
[0134] At step 1304, the RFID reader system may transmit an inventory command requesting that tags matching certain criteria participate or continue to participate in an inventory cycle. The command may be a single or query command. For example, the query command may be a Query, QueryAdj, or QueryRep command as described in the Gen2 protocol. RFID tags receiving the command may respond with a CR code, as described above.
[0135] At step 1306, multiple RFID tags reply with CR codes, and the RFID reader system receives these replies at approximately the same time, resulting in conflicting replies. At step 1308, the RFID reader system may employ error correction or other techniques to recover the CR codes from the replies.
[0136] In step 1310, the RFID reader system may transmit an acknowledgment associated with the multiple recovered CR codes. For example, the acknowledgment may be an ACK command described in the Gen2 protocol. The acknowledgment may include a specific CR code / code portion or a special acknowledgment code. An RFID tag receiving this acknowledgment may determine whether the acknowledgment is applicable. For example, if the acknowledgment includes (a) a CR code or code portion previously transmitted by the tag or (b) the special acknowledgment code described above, the RFID tag may determine that the received acknowledgment is applicable. If the RFID tag determines that the acknowledgment is applicable, the RFID tag may respond. For example, the RFID tag may respond with its permanent identifier or a portion of its permanent identifier. In some examples, as described above, the RFID tag may respond to an applicable acknowledgment without using its permanent identifier. Regardless of whether the RFID tag responds, the RFID tag may transition to a different state after receiving an applicable acknowledgment. In some examples, the RFID tag may transition to the Acknowledged state and further enter the Waiting mode of the Acknowledged state described above. If the RFID tag determines that the acknowledgment is not applicable, the RFID tag may wait in its current state, such as in the Waiting mode of the Reply state described above. In some examples, the RFID tag may instead exit the inventory cycle upon determining that the received confirmation is not applicable.
[0137] In step 1312, the RFID reader system receives conflicting responses from multiple RFID tags specified in the previously transmitted acknowledgment. In step 1314, the RFID reader may attempt to interact with one or more of the RFID tags that replied in steps 1306 or 1312 by transmitting a refined acknowledgment. For example, if the RFID reader is unable to recover one or more responses from the conflicting responses received in step 1312, the RFID reader may transmit an acknowledgment in step 1314 that specifies the same RFID tags as the acknowledgment in step 1310 or specifies fewer tags. As another example, if the RFID reader transmits a special acknowledgment code in step 1310 but receives more tags than expected in reply in step 1312, the RFID reader may transmit an acknowledgment in step 1314 that specifies only the expected tags. The RFID reader may then return to step 1312 to receive responses to the acknowledgment transmitted in step 1314. The RFID reader may then continue to transition between steps 1312 and 1314 until the RFID reader determines that no further acknowledgment transmission is necessary. For example, the RFID reader may determine that all tags that responded in step 1306 have been acknowledged, or that no additional tags need to be acknowledged.
[0138] In some examples, RFID tags are configured with a wait mode. In these examples, RFID tags that reply in step 1306 but determine that the acknowledgement transmitted in step 1310 specifies an RFID tag may transmit the reply received in step 1312 and enter a wait mode associated with a confirmed state, thereby remaining available for further interaction with the reader. RFID tags that reply in step 1306 but determine that the acknowledgement transmitted in step 1310 does not specify an RFID tag may all remain in the wait mode in the reply state. Upon receiving any acknowledgement transmitted in step 1314, these tags may determine whether the received acknowledgement specifies them. If so, the tag will reply and enter the wait mode in the confirmed state. Otherwise, the tag may remain in the wait mode in the reply state. After the RFID reader has determined that it no longer needs to transmit an acknowledgement, it may further interact with one of the tags, for example, by sending an access command, such as the access command described in the Gen2 protocol. Upon detecting this command, the other tags may exit their various wait modes.
[0139] According to some examples, a radio frequency identification (RFID) reader system includes: a transceiver configured to transmit commands to RFID tags and receive replies from the RFID tags; and a processing block coupled to the transceiver. The processing block is configured to: cause the transceiver to transmit a query command; receive, via the transceiver, conflicting replies to the query command from first and second RFID tags; recover a first reply from the first RFID tag and a second reply from the second RFID tag from the conflicting replies to the query command; cause the transceiver to transmit a first multiple acknowledgment acknowledging both the first and second RFID tags; and receive, via the transceiver, the conflicting reply to the first acknowledgment.
[0140] According to another example, the first reply includes a first collision resolution (CR) code; the second reply includes a second CR code; and the first multiple confirmation includes at least a portion of the first CR code and at least a portion of the second CR code. The first CR code includes a 16-bit pseudo-random number. The first multiple confirmation includes a unique confirmation code applicable to both the first RFID tag and the second RFID tag. The processing block is further configured to determine that a collision reply to the first multiple confirmation may include a reply from a third RFID tag; and in response, cause the transceiver to transmit a second multiple confirmation acknowledging the first and second RFID tags but not the third RFID tag.
[0141] According to another example, the processing block is configured to recover the first reply and the second reply using an error detection technique. The processing block is further configured to cause the transceiver to send a command directing the first RFID tag and the second RFID tag to utilize a wait state. The wait state includes at least one of a reply wait state, in which the RFID tag waits for an applicable acknowledgement from the RFID reader system, and a confirmed wait state, in which the RFID tag waits after providing the permanent identifier to the RFID reader.
[0142] According to yet another example, a first RFID tag has a first permanent identifier; a second RFID tag has a second permanent identifier; and the processing block is further configured to recover at least a portion of the first permanent identifier and at least a portion of the second permanent identifier from a conflict reply to a first acknowledgment. The first permanent identifier comprises one of an electronic product code (EPC), a tag identifier (TID), or a unique item identifier (UID). The processing block is further configured to cause the transceiver to transmit a command directing the first RFID tag and the second RFID tag to process the first multiple acknowledgment. The processing block is further configured to forgo transmitting a command directing the first RFID tag and the second RFID tag to provide the remaining portions of their respective permanent identifiers after the first multiple acknowledgment. The processing block is further configured to cause the transceiver to transmit a second multiple acknowledgment confirming at least one of the first RFID tag and the second RFID tag in response to failing to resolve an identifier received from one of the first RFID tag or the second RFID tag.
[0143] According to some examples, a radio frequency identification (RFID) integrated circuit (IC) configured to be coupled to an antenna includes: a transceiver configured to communicate with an RFID reader system; and a processing block coupled to the transceiver. The processing block is configured to: receive a query command via the transceiver; send a first reply to the query command via the transceiver, the first reply including a conflict resolution (CR) code; receive multiple confirmations via the transceiver; determine whether the confirmations specify the RFID IC by determining whether the multiple confirmations include a portion of the CR code or a special confirmation code applicable to multiple RFID ICs; and, in response to determining that the multiple confirmations specify the RFID IC, send at least a portion of a permanent identifier of the RFID IC via the transceiver.
[0144] According to other examples, the permanent identifier includes one of an electronic product code (EPC), a tag identifier (TID), or a unique item identifier (UID). The processing block is further configured to perform at least one of the following operations: in response to determining that multiple confirmations are not applicable, causing the RFID IC to enter a first wait state; and in response to sending at least a portion of the permanent identifier, causing the RFID IC to enter a second wait state. The first wait state is a reply wait state, in which the RFID IC waits for applicable confirmations, and the second wait state is a confirmed wait state, in which the RFID IC waits after providing at least a portion of the permanent identifier. The processing block is further configured to receive, via the transceiver, a command directing the RFID IC to utilize the first wait state and the second wait state.
[0145] According to some examples, another radio frequency identification (RFID) reader system includes: a transceiver configured to transmit commands to RFID tags and receive replies from the RFID tags; and a processing block coupled to the transceiver. The processing block is configured to: cause the transceiver to transmit a first command requesting an identifier; receive collision replies to the first command from a plurality of RFID tags via the transceiver; recover a first reply from a first RFID tag and a second reply from a second RFID tag from the collision replies; cause the transceiver to transmit a first acknowledgement command acknowledging the first RFID tag, wherein the first acknowledgement command causes the first RFID tag to respond and causes the second RFID tag to enter a first wait state; and receive a response to the first acknowledgement command from the first RFID tag.
[0146] According to other examples, another radio frequency identification (RFID) reader system includes: a reader block configured to transmit commands to RFID tags and receive replies from the RFID tags; and a processing block coupled to the reader block and configured to: cause the reader block to transmit a query command; receive, via the reader block, collision replies to the query command from a first RFID tag and a second RFID tag; recover a first reply from the first RFID tag and a second reply from the second RFID tag from the collision replies; and cause the reader block to transmit consecutive first and second confirmation commands, wherein the first confirmation command specifies the first RFID tag and the second confirmation command specifies the second RFID tag.
[0147] According to another example, the processing block is further configured to: cause the transceiver to transmit a second acknowledgement command acknowledging the second RFID tag, wherein the second acknowledgement command causes the second RFID tag to exit the first wait state and respond to the second acknowledgement command; and receive a response to the second acknowledgement command from the second RFID tag. The processing block is configured to use error detection techniques to recover the first reply and the second reply. The processing block is further configured to cause the transceiver to send a second command instructing the first and second RFID tags to utilize a wait state. The wait state includes at least one of a reply wait state, in which the RFID tag waits for an applicable acknowledgement from the RFID reader system, and a confirmed wait state, in which the RFID tag waits after providing the permanent identifier to the RFID reader system.
[0148] According to yet other examples, the first wait state has a predefined expiration time period. The processing block is further configured to extend the first wait state using a parameter in one of the first command or the first confirmation command. The first reply includes a first collision resolution (CR) code; the second reply includes a second CR code; and the first confirmation includes at least a portion of the first CR code and at least a portion of the second CR code. The first CR code includes a 16-bit pseudo-random number. The first RFID tag stores a first permanent identifier; the second RFID tag has a second permanent identifier; and the processing block is further configured to recover at least a portion of the first permanent identifier and at least a portion of the second permanent identifier from the collision reply to the first confirmation command. The first permanent identifier includes one of an electronic product code (EPC), a tag identifier (TID), or a unique item identifier (UID).
[0149] According to further examples, a method for an RFID reader to perform the actions of a processing block of an RFID reader as described herein is described. Another method for an RFID tag to perform the actions of a processing block of an RFID tag IC as described herein is described. Another method for an RFID reader system to perform the actions of a processing block of an RFID reader system as described herein is described.
[0150] As previously mentioned, examples relate to tag wait states and conflict tag reply recovery. Examples also include programs and methods of operating the programs. A program is generally defined as a set of steps or operations that, due to the nature of the elements in the steps and their order, produce a desired result. Programs are often advantageously implemented as a sequence of steps or operations for a processor, but can be implemented in other processing elements, such as FPGAs, DSPs, or other devices described above.
[0151] The steps, instructions or operations of executing a program require the manipulation of physical quantities. Typically, although not necessarily, these quantities can be transferred, combined, compared and otherwise manipulated or processed according to the steps or instructions, and they can also be stored in computer-readable media. These quantities include, for example, electrical, magnetic and electromagnetic charges or particles, states of matter, and more generally, the states of any physical device or component. The information represented by the states of these quantities can be referred to as bits, data bits, samples, values, symbols, characters, terms, numbers, etc. However, these terms and similar terms are associated with appropriate physical quantities individually or in groups and are merely convenient labels applied to appropriate physical quantities.
[0152] In addition, examples include storage media. Such media, alone or in combination with other media, store instructions, data, keys, signatures, and other data of programs written according to the examples. According to examples, the storage medium is a computer-readable medium, such as a memory, and is readable by a processor of the type described above. If it is a memory, it can be implemented in any of the ways and using any of the techniques described above.
[0153] Even though it is said that the program can be stored in a computer-readable medium, the program need not be a single memory, or even a single machine. Its various parts, modules, or features can reside in separate memories, or even in separate machines. The separate machines can be connected directly or through a network, such as a local access network (LAN) or a global network such as the Internet.
[0154] Often, for convenience only, it is desirable to implement and describe a program as software. The software may be a single entity or may be considered as various interconnected distinct software modules.
[0155] The foregoing detailed description has set forth various examples of devices and / or processes using block diagrams and / or examples. Where these block diagrams and / or examples contain one or more functions and / or aspects, each function and / or aspect within these block diagrams or examples may be implemented individually and / or collectively via a wide range of hardware, software, firmware, or virtually any combination thereof. Some aspects of the examples disclosed herein, whether in whole or in part, may be equivalently implemented using integrated circuits as one or more computer programs running on one or more computers (e.g., one or more programs running on one or more computer systems), one or more programs running on one or more processors (e.g., one or more programs running on one or more microprocessors), firmware, or virtually any combination thereof, and in light of this disclosure, designing circuit systems and / or writing code for software and / or firmware will be well within the skill of those skilled in the art.
[0156] The present disclosure is not limited to the specific examples described in this application, which are intended to illustrate various aspects. Many modifications and variations may be made without departing from the spirit and scope of the present disclosure. In addition to the methods and apparatus listed herein, functionally equivalent methods and apparatus within the scope of the present disclosure will be apparent to those skilled in the art based on the foregoing description. Such modifications and variations are intended to fall within the scope of the appended claims. The present disclosure is limited only by the terms of the appended claims and the full scope of equivalents to which such claims are entitled. It should be understood that the present disclosure is not limited to specific methods, configurations, antennas, transmission lines, etc., which may, of course, vary. It should also be understood that the terms used herein are merely for the purpose of describing specific examples and are not intended to be restrictive.
[0157] With respect to the use of generally any plural and / or singular terms herein, those skilled in the art can translate the plural into the singular and / or the singular into the plural as appropriate to the context and / or application. For purposes of clarity, various singular / plural permutations may be expressly set forth herein.
[0158] In general, the terms used herein, and especially in the appended claims (e.g., the appended claim bodies), are generally intended to be “open-ended” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.). If a specific number of an introduced claim recitation is intended, such intent will be explicitly recited in the claim, and in the absence of such recitation, no such intent is present. For example, to aid understanding, the appended claims may contain usage of the introductory phrases “at least one” and “one or more” to introduce claim recitations. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite article "a" or "an" limits any particular claim containing such introduced claim recitation to instances containing only one such recitation, even when the same claim contains the introductory phrase "one or more" or "at least one" and an indefinite article such as "a" or "an" (e.g., "a" and / or "an" should be construed to mean "at least one" or "one or more"); the same holds true for the use of definite articles used to introduce claim recitations. In addition, even if a specific number of introduced claim recitations is expressly recited, such recitation should be construed to mean at least the recited number (e.g., the simple recitation of "two recitations" without other modifiers means at least two recitations or two or more recitations).
[0159] Furthermore, in those instances where a convention similar to "at least one of A, B, and C, etc." is used, generally, such construction is intended to be understood in the sense that one skilled in the art would understand the convention (e.g., "a system having at least one of A, B, and C" would include, but is not limited to, systems having only A, only B, only C, A and B together, A and C together, B and C together, and / or A, B, and C together, etc.). Any disjunctive words and / or phrases presenting two or more alternative terms, whether in the specification, claims, or drawings, should be understood to contemplate the possibility of including one, either, or both of the terms. For example, the phrase "A or B" would be understood to include the possibility of "A" or "B" or "A and B."
[0160] For any and all purposes, such as in terms of providing a written description, all ranges disclosed herein also encompass any and all possible subranges and combinations of subranges thereof. Any enumerated range is readily identifiable by sufficient description, and the same range can be decomposed into at least equal halves, thirds, quarters, fifths, tenths, etc. As a non-limiting example, each range discussed herein can be readily decomposed into a lower third, a middle third, and an upper third, etc. Language such as "at most," "at least," "greater than," "less than," etc., includes the recited quantity and refers to a range that can subsequently be decomposed into the subranges discussed above. Finally, a range includes each individual member. Thus, for example, a group having 1 to 3 units refers to a group having 1, 2, or 3 units. Similarly, a group having 1 to 5 units refers to a group having 1, 2, 3, 4, or 5 units, and so on.
Claims
1. A method for a radio frequency identification (RFID) integrated circuit (IC), characterized in that: The method comprises: receiving a query command via a transceiver block configured to receive commands and send replies; entering a reply state and sending a first reply to the query command via the transceiver block; receiving a first confirmation command via the transceiver block; determining whether the first confirmation command specifies the RFID IC; In response to determining that the first confirmation command does not specify the RFID IC, performing one of the following operations: If the reply state is set to a waiting mode, waiting in the reply state; and If the reply state is set to the ongoing mode, exit the reply state.
2. The method according to claim 1, wherein: Further comprising receiving, via the transceiver block, a first command that sets the reply state to one of the wait mode and the go mode.
3. The method according to claim 2, wherein: The first command is one of a query command, a confirmation command, or a broadcast command.
4. The method according to claim 1, wherein: The method further includes determining whether the confirmation command specifies the RFID IC by determining whether the confirmation command includes: a parameter that corresponds to at least a portion of another parameter sent by the RFID IC in response to the query command; or A unique confirmation code that specifies all RFID ICs that reply to the query command.
5. The method according to any one of claims 1 to 4, characterized in that: The parameter is RN16.
6. The method according to any one of claims 1 to 5, characterized in that: Further comprising waiting in the reply state by disabling an existing timeout.
7. The method according to any one of claims 1 to 6, characterized in that: Further comprising performing the following operations while waiting in the reply state: receiving another confirmation command; determining that the another confirmation command does not include the first parameter or does not specify the RFID IC; and Continue to wait in the reply state.
8. The method according to any one of claims 1 to 7, characterized in that: Further comprising performing the following operations while waiting in the reply state: in response to receiving a confirmation command specifying the RFID IC, transmitting an identifier; and Waiting for another command or another query command specifying the RFID IC.
9. The method according to claim 8, characterized in that: Further comprising, after sending the identifier, exiting the reply state and entering a confirmed state, wherein in the confirmed state, the RFID IC waits for the other command or another query command designated for the RFID IC.
10. A radio frequency identification (RFID) integrated circuit (IC), characterized in that: include: a transceiver block configured to receive commands and send replies; as well as A processing block coupled to the transceiver block, wherein the processing block is configured to perform the actions of any one of claims 1 to 9.
Citation Information
Patent Citations
Weak RFID tag signal recovery from collisions
US10037444B1
Weak RFID tag signal recovery from collisions
US9715605B1
Weak RFID tag signal recovery from collisions
US9881186B1