WO2003034632A2 - Method and device for data communication in a multi-user system - Google Patents
Method and device for data communication in a multi-user system Download PDFInfo
- Publication number
- WO2003034632A2 WO2003034632A2 PCT/US2002/031858 US0231858W WO03034632A2 WO 2003034632 A2 WO2003034632 A2 WO 2003034632A2 US 0231858 W US0231858 W US 0231858W WO 03034632 A2 WO03034632 A2 WO 03034632A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- channel
- predetermined
- tag
- signal
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 215
- 238000004891 communication Methods 0.000 title claims abstract description 74
- 230000005540 biological transmission Effects 0.000 claims abstract description 88
- 230000000116 mitigating effect Effects 0.000 claims abstract description 64
- 230000003190 augmentative effect Effects 0.000 claims description 20
- 238000003860 storage Methods 0.000 claims description 14
- 238000012937 correction Methods 0.000 claims description 8
- 238000001228 spectrum Methods 0.000 claims description 5
- 108010076504 Protein Sorting Signals Proteins 0.000 claims 7
- 238000012544 monitoring process Methods 0.000 claims 2
- 230000006870 function Effects 0.000 description 39
- 230000008569 process Effects 0.000 description 28
- 238000012545 processing Methods 0.000 description 27
- 210000001956 EPC Anatomy 0.000 description 25
- 238000002474 experimental method Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 10
- 238000001514 detection method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000007480 spreading Effects 0.000 description 9
- 238000003892 spreading Methods 0.000 description 9
- 101100545272 Caenorhabditis elegans zif-1 gene Proteins 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000005259 measurement Methods 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 239000002131 composite material Substances 0.000 description 5
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 230000011664 signaling Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000000875 corresponding effect Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 102100031948 Enhancer of polycomb homolog 1 Human genes 0.000 description 1
- 101000920634 Homo sapiens Enhancer of polycomb homolog 1 Proteins 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005352 clarification Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013478 data encryption standard Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 230000005672 electromagnetic field Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W16/00—Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
- H04W16/14—Spectrum sharing arrangements between different networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
- H04B1/709—Correlator structure
- H04B1/7093—Matched filter type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B17/00—Monitoring; Testing
- H04B17/30—Monitoring; Testing of propagation channels
- H04B17/382—Monitoring; Testing of propagation channels for resource allocation, admission control or handover
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
- H04B1/709—Correlator structure
- H04B1/7093—Matched filter type
- H04B2001/70935—Matched filter type using a bank of matched fileters, e.g. Fast Hadamard Transform
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J13/00—Code division multiplex systems
- H04J13/0007—Code type
- H04J13/0022—PN, e.g. Kronecker
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J13/00—Code division multiplex systems
- H04J13/10—Code generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
Definitions
- the present invention relates generally to a METHOD AND DEVICE FOR DATA COMMUNICATION IN A MULTI-USER SYSTEM.
- the electronic identification industry is important for numerous commercial and military applications, including real-time item tracking and inventory. Such uses can greatly increase operational efficiency in a myriad of scenarios, including virtually all of those involving some form of manufacturing, warehousing, distribution and retail.
- the ability to quickly and efficiently perform accurate real-time inventory tracking can greatly reduce waste in many forms, including, but not limited to, the misplacement of items, over- or under- stocking of items, and item theft.
- FIG. 1 illustrates a high-level view of multiple source devices communicating with a single destination device in accordance with the present invention
- FIG. 2 illustrates how data stored on a tag is altered and used to determine communications channels while operating in accordance with the present invention
- FIG. 3 illustrates a high-level view of the process used to scramble the stored data on a tag in accordance with the present invention
- FIG. 4 illustrates a high-level system view of multiple tag communications and the scrambling reversal (descrambling method) performed in the reader in accordance with the present invention
- FIG. 5 illustrates the iterative algorithms used to scramble and recover the tag data in accordance with the present invention
- FIG. 6 illustrates a detailed example of the scrambling procedure in accordance with the present invention
- FIG. 7 illustrates a high-level block diagram of a tag in accordance with the present invention
- FIG. 8 illustrates a general flowchart outlining tag transmission conditions in accordance with the present invention
- FIG. 9 illustrates a detailed flowchart outlining tag transmission conditions in accordance with the present invention.
- FIG. 10 illustrates an application using capacitive coupling between the reader and a variety of tags in a typical embodiment in accordance with the present invention
- FIG. 11 illustrates a method of generating a channel for the tag to communicate over based on the data stored on the tag in accordance with the present invention
- FIG. 12 illustrates a simplified tag circuitry functional block diagram highlighting the pass dependence and modulation method in accordance with the present invention
- FIG. 13 illustrates a detailed view of the reader block diagram in accordance with the present invention
- FIG. 14 illustrates an example of fast transform methods for Walsh coded signals in accordance with the present invention
- FIG. 15 illustrates a detailed example of the reader receiver signal processing for fast correlation of pseudonoise sequences in accordance with the present invention
- FIG. 16 illustrates a simplified functional block diagram of the reader signal processing in accordance with the present invention
- FIG. 17 illustrates an example waveform in the presence of a collision in accordance with the present invention
- FIG. 18 illustrates several example waveforms in the absence of collisions in accordance with the present invention.
- FIG. 19 illustrates a general flowchart for the reader actions in accordance with the present invention.
- FIG. 20 illustrates a detailed flowchart of a reader processing signals using forward collision mitigation techniques in accordance with the present invention
- FIG. 21 illustrates an example inventory accounting with no collision mitigation techniques applied in accordance with the present invention
- FIG. 22 illustrates an example flowchart of the inventory algorithm when no collision mitigation techniques are applied in accordance with the present invention
- FIG. 23 illustrates an example inventory accounting with forward collision mitigation techniques in accordance with the present invention.
- FIG. 24 illustrates an example inventory accounting with bi-directional collision mitigation techniques in accordance with the present invention.
- the present invention discloses an improved communications method that allows multiple source devices to quickly and efficiently communicate information to a destination device.
- the described communications system employs a combination of several techniques to achieve superior performance over the prior art.
- the present invention provides a means for UPC replacement, while adding additional features and benefits, such as the elimination of manual (light-based) scanning, and greatly increased scanning (or item identification) speeds.
- the present invention further provides for simultaneous identification of numerous items, which is highly useful in many applications, such as inventory, retail checkout, or the like.
- the preferred embodiment of the present invention generally utilizes oneway communication (from the source device to the destination device) in order to simplify the circuitry on the source device; the source device does not require the use of a receiver.
- the information communicated from the source device to the destination device typically takes the form of binary electronic product codes (“EPC”) or identification (“ID”) information, though it is not limited in any manner to these forms of information. Communicating other types of information, such as electronic telemetry (or any other type of measured or assigned data) is also possible. In fact, any information that has a representation in a binary (or other) number format can be communicated with the present invention.
- EPC binary electronic product codes
- ID identification
- the information is typically communicated from a set of source devices 110, 120, 130 to a single destination device 100; the preferred embodiment of the present invention utilizes simultaneous communication of information from the set of source devices 110, 120, 130 to the destination device 100.
- the present invention has numerous applications, depending on the context of the example, some terms used throughout the discussion are interchangeable with other terms for ease of clarification.
- source device transponder, user, item, tag, or the like; it should also be noted that the following terms are used interchangeably throughout the following discussion without loss of generality: destination device, system controller, interrogator, reader, receiver, or the like.
- the communication system employed by the present invention can encompass several different forms of communication 140, including, but not limited to, optical communication, radio frequency (RF) communication, wired (contacted) communication, capacitively coupled communication, or inductively coupled communication.
- RF radio frequency
- the preferred embodiment of the present invention utilizes a capacitively coupled communication link between the tags 110, 120, 130 and the reader 100, though other forms of communications links may be utilized without limitation.
- the data 200 that is communicated by the tag 110 to the reader 100 in the described system can take many forms, including, but not limited to, measured or other user defined data as described below.
- the communicated data 200 consists of at least an identification data sequence.
- the data 200 may consist of at least an EPC having 96-bits of identification data as outlined by
- the EPC 200 serves to uniquely identify each tag (or item) 110 in the system, by reserving fields for a header 203, object class 204, vendor code 205, and serial number 206. Note, for example, that 96-bits of information provides for a huge number of unique IDs (2 96 ⁇ 8 x 10 28 ; as an indication of theconcentrity of this number, the mass of the earth is 6 x 10 27 grams).
- Additional information 202 is typically appended to the stored data 200 on the tag 110 in the preferred embodiment, such as user information, error checking or correction information (e.g., forward error correction (FEC), cyclic redundancy checks (CRCs), etc.), and other reserved bits.
- FEC forward error correction
- CRCs cyclic redundancy checks
- the additional information e.g., error detection or correction data
- FEC forward error correction
- CRCs cyclic redundancy checks
- the additional information e.g., error detection or correction data
- programmable timestamps, other user personal identification numbers (PINs), measured data, environment data, etc. may also be predetermined and stored on the tags 110, 120, 130. Note that there are no limitations placed on the amount or type of data stored on the tags 110, 120, 130 in the described system.
- All of the tag functions are typically implemented in low complexity (i.e., low cost) circuitry.
- low complexity i.e., low cost
- This scrambling algorithm 211 is typically applied universally throughout the system in order to assure that the EPC data 200, after being scrambled 220, exhibits desirable statistical (i.e., uniform and random) properties.
- some other scrambling, encryption, or numbering assignment algorithm may be applied to the stored data 200 in order to effectively create the scrambled data 220.
- individual vendors may optionally apply pre-encryption 210.
- FIG. 3 illustrates an example of the system for embedding scrambled data 220 into the tag 110 in accordance with the preferred embodiment of the present invention.
- the original EPC 200 is obtained in the usual manner from the EPC manager 310, such as the manufacturer.
- the EPC 200 is then input into a scrambler 330 that performs a scrambling algorithm and output the scrambled data (S_EPC) 220.
- a RF tag programmer/writer 350 then embeds the scrambled data, S_EPC, 220 into the tag 110.
- the scrambled data 220 which is a modified version of the original data 200, now resides inside the tag 110.
- FIG. 4 illustrates a high-level block diagram for simultaneously reading electronic identification data 200 from many RF tag devices 110, 120, 130. This example illustrates how the tags associated with products residing on a shelf might be read during a typical inventory count.
- the reader 100 simultaneously activates a set of tags 110, 120, 130.
- the activated tags 110, 120, 130 then proceed with a multiple-pass transmission algorithm using the scrambled tag data 220 as a basis for channel selection (described in detail below in Section III).
- At least a portion of S EPC1 (which is embedded in tag 110) is used to select Channel A 240
- at least a portion of S_EPC2 is used to select Channel B 240
- at least a portion of SJEPCz? is used to select Channel C 240.
- channels A, B and C, or any combination thereof can be the same or different.
- the reader 100 proceeds with its demodulation algorithm, and eventually obtains the S_EPCs 220 for the tags 110, 120, 130 on the shelf.
- the S_EPCs 220 are routed into a descrambler 460 that performs a descrambling algorithm to obtain the original EPC data 200 of the tags 11, 120, 130.
- the EPC data 200 corresponding to each tag can then be kept in the reader 100 or sent back to the original EPC manager 310 (e.g., the manufacturer) in the form of an inventory report.
- the descrambling operation may be performed at other locations, such as a remotely located computer or an on-line server. Collisions in the system of FIG. 4 are minimized because, instead of the highly structured EPC data 200, the tags 110, 120, 130 use at least a portion of the scrambled versions of the EPC data 220 to select a channel during each pass of the multiple-pass transmission algorithm. This scrambled data 220 very closely resembles uniformly distributed data, thus collisions between products with similar EPC data 200 are minimized.
- the scrambling and de-scrambling methods of the present invention must be self-referential only; that is, the only information needed to scramble the EPC 200 or descramble the S_EPC 220 is the data itself.
- the system described in the present invention calls for the use of a scrambling method that possesses certain key properties.
- An important property is that the scrambling method maps typical data sequences (such as EPC data sequences) to results that exhibit properties of a uniform random distribution.
- the scrambling method has two main properties:
- S_EPCs 220 corresponding to these EPCs 200 match for n consecutive k-ary digits (used by the tag 110 to determine channel assignments) is approximately 1/k";
- these properties are related to a strong avalanche property whereby each output bit is dependent on every input bit and changing a single input bit, changes half of the output bits on average.
- the present invention performs this scrambling and descrambling method by dividing and conquering the problem using the recursive strategies shown in FIG. 5.
- the scrambling algorithm 510 receives data and length information as input and recursively scrambles the left and right portions of the data.
- the descrambling algorithm 520 performs the inverse function to the scrambling algorithm 510.
- the operations performed for all, except the base (last) level of recursion, are as follows:
- the steps of modifying are invertible and selected from a group consisting of exclusive-or (XOR), modular addition, modular subtraction, or the like.
- the first and second scrambling/ descrambling methods recursively execute steps 1 through 5, respectively, until the set of data to be scrambled/descrambled reaches a predetermined length, which means that a base case must be established.
- the predetermined length is one byte.
- a predetermined function is performed.
- the predetermined function is invertible, and is preferably a lookup function; in the preferred embodiment, a substitution box ("S-box") lookup function is performed. Stopping at a single byte is beneficial because scrambling/descrambling separate bits of data by the divide-and-conquer technique is significantly less efficient than simply using a lookup function. Stopping at larger sizes generally leads to large and unwieldy S-box tables.
- the predetermined function in the present invention has a number of desired properties. First of all, the function should be invertible.
- the scrambling algorithm 510 uses the S-box lookup function, but the descrambling method 520 uses the inverse of the S-box lookup function; the function needs to be invertible, so that the original EPC 200 can be found. In practical terms, for a lookup function to be invertible, each entry will appear precisely once.
- the input to the S-box is one byte and the output is also one byte.
- the S-box and its inverse each contain 256 bytes of data.
- a second property of the predetermined function is that it displays a strong avalanche criterion; that is, every output bit depends on every input bit.
- An additional property, called the Strict Avalanche Criteria ("SAC"), is that changing one input bit causes each output bit to change with exactly a fifty percent likelihood. This property is not strictly necessary for the present invention, although it would not be detrimental.
- the predetermined function exhibits a low dpmax.
- the value for dpmax is the maximum of the entries in the XOR matrix of the lookup table.
- a low dpmax property provides for continued good mixing when repeated iterations of the table are used, which is basically the case in the present invention.
- lookup tables are often searched for in cryptography.
- a table satisfying all but the SAC is used in the advanced encryption standard ("AES") cryptographic algorithm, for example, and would work well in the present invention. Reusing this table could save code space, if the AES was also used for other system functions unrelated to the use described in the present invention.
- AES advanced encryption standard
- FIG. 6 illustrates a block diagram of the scrambling process unrolled into separate components.
- the input to the process is EPC data 200 that is 128-bit (or 16 bytes).
- This EPC data 200 is subdivided and labeled as separate bytes P 0 though P1 5 .
- the process of scrambling (or de-scrambling) starts on the top left side of FIG. 6, where the two leftmost bytes (P ⁇ 5 and P ⁇ 4 ) are input to the "MixBytes" block 610.
- the "MixBytes" block 610 is composed of the S-box lookup functions 602 and 608, and labeled 'S', and the exclusive-or operations 606 and 604, and labeled ' ⁇ '.
- the next step is to exclusive-or 624 the next two bytes (P ⁇ 3 and P J2 ) with the output of the "MixBytes" block 610.
- This algorithm proceeds by successively combining data using exclusive-or functions 622, 626, 628, 632, 634, 636, 642, 644, 646, 648, 652, 656, and 658 and mixing bytes using functions 620, 630, 640, 650, 660, 670, and 680 until, at the final stage, the output bytes 220 (C 0 though C 15 ) emerge.
- the entire process requires a total of sixteen S-box lookup operations and 64 one-byte exclusive-or operations.
- the data 200 may also be encrypted 210 prior to applying the universal scrambling algorithm (e.g., prior to programming the tag 110) to assure further data security.
- the universal scrambling algorithm e.g., prior to programming the tag 110
- AES Data Encryption Standard
- International Data Encryption Algorithm etc.
- the availability of this additional level of security is important for high- privacy applications (such as those where tags may contain sensitive medical or financial data).
- FIG. 7 A block diagram of a tag 110 in the spirit of the preferred embodiment is illustrated in FIG. 7.
- the antenna 701 is a pair of conductive electrodes (e.g., capacitive plates), but in general can be any method of coupling energy from an electromagnetic field into a circuit.
- the alternating current (“AC") power from the reader 100 that is coupled into the tag 110 is rectified in power converter 703, the direct current (“DC”) output of which is used to power the tag 110 and also serve as a tag energy monitor 704 which further enables communications (the elements of which will be discussed in more detail below).
- AC alternating current
- DC direct current
- the state controller 705 acts on the tag data 220 and the communications channel selection block 240 to produce transmit information, which is applied to the transmission element 702 (such as a load modulation element that is well understood in the art) under the control of the channel modulator 708.
- the data 220 stored on each tag 110 is typically stored in low complexity
- Each tag 110, 120, 130 typically waits for a first predetermined condition to be met before transmitting its information in a multiple pass algorithm, in accordance with the present invention.
- the first predetermined condition is typically set to be the same for each of the tags 110, 120, 130, though it could be randomly chosen or assigned in other embodiments.
- An example of a general flowchart showing tag transmission conditions is shown in FIG. 8. Note that in this flowchart, the second predetermined condition may be met by a variety of measures (e.g., when a first predetermined condition is no longer met or a second predetermined condition is met).
- the reader 100 remotely powers the tags 110, 120,130, and the first predetermined transmission condition is met when the instantaneous received power level at the tag 110 exceeds a predetermined threshold (that is generally determined by 703 and 704).
- a predetermined threshold that is generally determined by 703 and 704.
- FIG. 9 illustrates a flowchart of this action, where TI and T2 represent a first and second power level threshold. Note that implementations employing other predetermined conditions (such as, particular synchronization pulses or pseudo-random pauses) can be employed by those skilled in the art without departing from the spirit of the present invention.
- the fag 110 begins modulation and transmission 250 of its data, it is fully activated.
- tags 110, 120, 130 will typically be fully activated at a given time in the preferred embodiment of the system.
- the fully activated tags in a group will continue to transmit their information in multiple passes (fully described below) until a second predetermined transmission condition is met, at which time they will stop transmitting data.
- the second predetermined transmission condition in the preferred embodiment is met when the received power level at the tag 110, as observed by tag energy monitor 704, either falls below the first predetermined threshold or exceeds a second predetermined threshold, which is typically set higher than the first predetermined threshold.
- the first and second predetermined transmission conditions form a range of received power levels (e.g., a window) over which each group of tags is typically fully activated.
- the power-on range is typically about 3dB wide, meaning that tags 110, 120, 130 will respond to power in a range of 1-2X (relative to some normalized received operational power level).
- this powering window generally causes the tag's transmissions to fall within a proportionally narrow power window, which helps alleviate the typical near-far problem that affects some communications systems (e.g., as in spread spectrum systems with non-orthogonal spreading codes).
- tags 110, 120, 130 in the system are typically assigned the same power-on range in the preferred embodiment, although other embodiments are possible, such as those that utilize programmable (e.g., pre-assigned, but likely different) or random power-on conditions.
- programmable e.g., pre-assigned, but likely different
- random power-on conditions One such example may occur when different manufacturers are assigned different power-on range levels, providing some separation (or distinction) between different manufacturer's products.
- tags with two-way communication abilities may exist, in which case the first and second predetermined transmission conditions may consist of some type of synchronization pulses or other signaling information. In the case where the predetermined transmission conditions are random, they may be randomly determined on the tag 110, or during programming of the tag 110. Note once again that other implementations of these transmission controls (e.g., synchronization signals, two-way communication with the tag, etc.) are possible without departing from the spirit of the invention.
- the reader 100 which may be remotely controlled from a head office by controller 1001, is connected via a transmission medium 1003 to an antenna 1004 mounted on a shelf 1005.
- Objects 1020, 1021, 1022, of varying physical dimensions, have tags 110, 120, 130 located on different parts of the packages, and result in variations in coupling between the antenna 1004 associated with the reader 100 and the antenna 701 associated with the tags 110, 120, 130, further resulting in different received power levels by tag electronics 1012.
- tags 110, 120, 130 may receive different power levels (demonstrated by the range boundary lines 1030 and 1031) for a given reader antenna excitation level (i.e., reader transmit power level).
- This effect also serves as a coarse population reduction of the tags present in the system in the preferred embodiment, since it is likely that various tags 110, 120, 130 will begin transmitting at different reader transmit power levels and hence different times. Note, however, that multiple tags 110, 120, 130 will still typically begin transmission simultaneously for a particular power level in the preferred embodiment of the present invention.
- tags there may be one thousand items (tags) in an inventory that need to be identified, and the reader 100 may step through ten different possible power levels, activating groups of roughly one hundred tags at each power level (though fewer tags will likely be activated at the extreme upper and lower power levels).
- transmissions from multiple tags may only be synchronized (though not necessarily simultaneous), such as in the case of time-slotted (channelization) systems, where users choose a particular time slot (relative to a common reference) to transmit on.
- the reader 100 will step through all possible transmit power levels, starting with the lowest transmit power level.
- the reader 100 effectively controls when each group of tags begins and ends transmissions.
- the reader 100 determines when all of the tags 110, 120, 130 in a particular power-on range (e.g., between 1030 and 1031) have been uniquely identified, at which time it can step to the next power level (e.g., above 1031) or terminate the identification process.
- the reader 100 may 'learn' or remember a range of expected power levels for a given inventory profile, and arrange its power sweep with priority given to those power levels with a history of activity.
- the reader 100 steps to a power level where no tags are activated, it senses that condition (typically through a short energy or modulation detection measurement), and quickly steps to the next power level, so as to minimize the total reading time of the tags, as further described below.
- Orthogonal communications channels have the advantage that communication on a chosen channel does not interfere (at all) with communication on other channels in a linear system (i.e., the cross-correlation between different channels is defined as zero).
- Quasi-orthogonal channels are nearly orthogonal (e.g., having a cross-correlation value near zero for different channels), and are typically utilized in direct-sequence code division multiple access (DS-CDMA) systems, where each user is typically assigned a different spreading code.
- DS-CDMA direct-sequence code division multiple access
- LFSR linear feedback shift register
- m- sequence i.e., an m- sequence
- PN pseudonoise
- Different code phases of the same base m-sequence are often used to channelize different users in a code-division multiple access system.
- Each symbol or bit in the PN sequence is typically referred to as a 'chip', as is well known in the art.
- orthogonal channelizing functions include, but are not limited to, Walsh functions, timeslots in a slotted system, frequencies in a frequency division system, specially augmented PN codes, etc.
- quasi-orthogonal channelizing functions include m-sequences or PN sequences as described above.
- An example of a specially augmented PN code is one that has an artificially inserted (i.e., not generated by the normal operation of the LFSR) binary zero into the sequence (at different points in the sequence depending on the code phase), such that the time-aligned (i.e., synchronized) artificially inserted zero occurs at the same time offset on the channel, resulting in a zero cross- correlation value between different code phases of the same m-sequence.
- the preferred embodiment of the present invention utilizes these specially augmented m-sequences (whose generation is shown in FIG. 11) to obtain orthogonal code channels in the synchronized system.
- the tags 110, 120, 130 in the described system transmit their data using a multiple pass transmission algorithm.
- the multiple pass transmission algorithm is critical in determining the total reading time of the tags 110, 120, 130, and consists of several different aspects.
- the general idea employed in the algorithm is that each tag 110, 120, 130 will choose a particular (preferably a uniform random) channel for communications in each algorithm pass.
- the channel selection 240 is typically based directly on the data 220 stored on the tag 110.
- the tag 110 will then typically transmit its information (i.e., identification data) in the preferred embodiment on the chosen channel, until the next pass of the algorithm, at which time it will choose a new chamiel and repeat the process.
- the transmissions of the tags are assumed to be roughly synchronized (by virtue of the first predetermined condition) in the preferred embodiment of the present invention.
- the channel selections by each of the tags are based upon predetermined information (i.e., determined either at tag programming 230 in typical embodiments, or possibly in the design of the tag itself).
- the channel selections of each tag 110 are determined (in an algorithmic manner) directly from the identification data 220 that is stored on the tag 110 (as further described below).
- the predetermined information above can include randomly generated numbers not directly based on the data stored on the tag 110.
- the preferred embodiment of the present invention requires that at least a portion of the data 200 (e.g., EPC, CRC, etc.) be pre-randomized (or scrambled) 211 before storing it 230 on the tag 110.
- the tag 110 essentially uses the stored data 220, or a portion thereof (e.g., 221, 222) to select 240 a communications channel in each pass of the multiple pass algorithm, it is crucial that the data 220 appear to be uniformly random for the best overall system performance. This is accomplished through a low complexity reversible scrambling algorithm 211 that is fully described in Section I above.
- the channel selection process 240 in each of the multiple transmission passes in the preferred embodiment is carried out by utilizing a predetermined subset (e.g., 221, 222, 223, 224) of the pre- scrambled (i.e., randomized and stored) data 220 to select the communications channel 240 in each pass.
- a channel selector 1220 such as a commutator or multiplexing device 1240, typically selects a channel.
- a new subset 221, 222, 223, 224 (i.e., a new random number draw) of the data stored on the tag 220 is typically utilized for channel selection in each subsequent pass of the algorithm, ensuring a random and independent selection of channels throughout the multiple pass transmission algorithm.
- the tag 110 may transmit all of its data 220 in each algorithm pass (as in the preferred embodiment), or only a portion of the data (i.e., generally enough data is transmitted to determine the channel utilized by the tag in the next pass).
- the portions 221, 222, 223, 224 of the data that are utilized for the channel selection in each pass of the algorithm are unique and contiguous sections of the data 220, preferably pre-randomized.
- a particular selection of channels for passes of the multiple pass transmission algorithm is termed a 'channel selection profile'.
- unique but sequential sections of 8-bits may be utilized to choose one of 256 (i.e., 2 ) channels in each of 16 (i.e., 128/8) algorithm passes.
- the first randomized byte of data (e.g., 221) for each tag chooses 240 the communications channel for each tag, respectively, on the first pass of the algorithm
- the second (and hopefully different) byte (e.g., 222) of randomized data for each tag is used to choose 240 the channel for transmission on the second pass of the algorithm, and so on.
- This multiple transmission pass process continues until all of the data stored on the tag is exhausted (e.g., the 16th pass is completed in this example; in FIG. 2, this would correspond to 224), or the reader 100 signals the tags to stop transmitting (generally sensed in the tag 110 by the second predetermined condition being met in 704 (1210) as described above). Once the data is exhausted, the whole process may optionally be repeated, though the tags will typically choose the same (deterministic) channels. Note once again it is desirable to choose a random and uniquely determined channel for each algorithm pass for each tag in order to randomize the collisions that will inevitably occur (see further details in Section V below).
- the tags may shift the channel selection data (i.e. the predetermined data) by 4-bits (in the above example) to arrive at new channel selections for subsequent passes of the algorithm. In this manner, it is possible to extend the number of unique channel choices practically without limit, though the tag circuitry complexity is increased.
- channel selection algorithm may also apply some type of mapping (generally one-to-one look-up table, or other algebraic or logic) function to determine the channel choices from the (generally limited) data stored or programmed on the tag.
- mapping generally one-to-one look-up table, or other algebraic or logic
- a collision is defined as the case where two or more tags choose to communicate on the same channel during a particular algorithm pass. This situation is to be expected under normal system operation. For example, for a typical case of twenty-five tags communicating over 64 channels, the probability that there is at least one collision is 99.6% per pass. This is based on the fact that, for M tags communicating over N channels, the expression for the probability of no collisions is
- the number of tags present in the system may even exceed the number of available channels (especially on earlier passes of the preferred embodiment algorithm, or when the number of available channels is set low as described below).
- This situation is completely acceptable in the present invention when orthogonal channelization means are utilized.
- typical DS-CDMA systems using quasi-orthogonal channelization codes
- the activated tag population can effectively be further reduced by collision mitigation techniques, which are fully described in Section N below.
- the preferred embodiment of the present invention utilizes a variable number of channels per pass (generally determined by 221, 222, ... 224) of the multiple pass transmission algorithm in order to improve overall system performance (e.g., total reading time, total system capacity, reliability, etc.).
- overall system performance e.g., total reading time, total system capacity, reliability, etc.
- the variable number of channels per algorithm pass i.e., per unit time
- the dynamic channel profile is also termed a dynamic channel profile in the present discussion, since the number of available channels changes dynamically with time. Implementing the dynamic channel profile essentially optimizes the total transmission time (or total reading time) for an expected tag population.
- T T ⁇ The total transmission time (T T ⁇ ) for the multiple pass transmission algorithm
- L is the number of transmission passes that are required to successfully transmit the data
- R is the transmission (signaling or channel symbol) rate
- Bj is the number of data symbols that are transmitted per pass
- Ni is the number of channels available (or spreading gam) m the i pass of the algorithm.
- L can be as high as 16 passes
- Bj is fixed at 128 bits
- R is equal to 62.5KHz
- Nj the number of channels available per pass
- Nj generally depends on the number of bits utilized to select a communications channel in each pass (n;) as follows (as also shown in 240):
- Nj represents the spreading gain and number of available code phases per pass
- R is the signaling rate in chips per second. Note that the application of advanced collision mitigation techniques (described in Section V below) can greatly reduce the required number (L) of transmission passes from the tags 110, 120, 130. In general, there are no restrictions on any of the values in the above equation in other embodiments of the described system.
- the system's total reading (i.e., acquisition) time performance can be improved for a small number of tags by using a smaller number of channels in earlier passes of the multiple pass transmission algorithm (since adding more channels to the system in such a case would be of little additional benefit for small numbers of tags).
- the number of channels may be increased in later passes of the algorithm (potentially in multiple steps) to accommodate cases where larger numbers of tags are present in the system, and the reader 100 does not employ the more sophisticated signal processing (e.g., advanced collision mitigation) techniques referenced in Section V below.
- systems with a small number of tags present would typically not be penalized by the longer transmission time of systems with a larger number of (earlier) channel choices, while at the same time systems with a larger number of tags present would also not be significantly penalized (since earlier passes of the multiple pass algorithm also typically take a much shorter time due to the smaller number of channels available initially). Also, increasing the number of channel choices in later algorithm passes ensures that systems with a large number of tags present will successfully acquire all of the data in a limited number of algorithm passes (thus increasing system reliability).
- the preferred embodiment of the present invention utilizes 128-bits of data 220, with 32 channels in the 1st and 2nd algorithm passes, 64 channels in the 3rd through 6th algorithm passes, 128 channels in the 7th and 8th passes, and 1024 channels in the remaining 8 algorithm passes.
- unique subsets of the data 220 are utilized to directly choose 1220 the communications channel 1260 in each pass in this embodiment, resulting once again in a maximum of 16 algorithm passes before unique, non-overlapping portions of the data are exhausted.
- Other embodiments of the present invention may utilize a variable number of channels per transmission algorithm pass that changes after a predetermined number of passes.
- the first sixteen passes of the multiple pass transmission algorithm in the above example may utilize anywhere from 32 - 256 available channels (i.e., five to eight-bits of channel selection data), while the next sixteen passes may utilize anywhere from 256 - 4096 available channels (i.e., eight to twelve-bits of channel selection data).
- the dynamic channel profile (or number of available channels per algorithm pass) may be extended virtually without limit.
- the maximum number of passes may be extended by utilizing overlapping or interleaved portions of the data to drive the channel selection algorithm.
- the actual choice of the number of available channels per algorithm pass (also called a dynamic channel profile) in a particular embodiment of the system may also depend (in addition to the expected number of tags present in the system) on the expected or predominant type of signal processing algorithms (such as the type of collision mitigation algorithms) utilized in the reader 100.
- the variable number of channels per algorithm pass may also result in channel profiles that decrease in later passes, hi general, any channel profile that changes versus time is considered to be a dynamic channel profile for the purposes of the present invention.
- the channel profile of a particular tag 110 does not necessarily have to be known by the reader 100 a priori, but that is generally the case. If the channel profile of a tag 110 is not known, the reader 100 would have to ascertain the period of the PN (chipping) sequence for example (possibly through measuring its autocorrelation or spectral properties), and act (demodulate) accordingly.
- the random channel choices are utilized to select a particular spreading code (or code channel in 1220) in each pass of the multiple pass transmission algorithm. More specifically, in the preferred embodiment, portions of the data 220 stored/programmed on the tag 110 are used to directly specify a time offset (or code phase as in 1220) of a length-N specially augmented m-sequence (where N is equal to the number of channels in a particular algorithm pass, as described above). This process is shown schematically in FIG. 11.
- PN generator PN generator
- LFSR PN generator
- all of the tags 110, 120, 130 use the same basic LFSR (m-sequence) generator in each algorithm pass, beginning with the same initial generator state in the preferred embodiment, such that all of the tags 110, 120, 130 transmissions are synchronized to a known basic initial generator state.
- the traditional m-sequence generators are typically made to be specially augmented PN sequence generators by forcing a zero output for the first chip (or PN bit) time in the preferred embodiment, ensuring that the cross-correlations of the sequences from different tags will be zero over a given sequence period. Note that forcing a zero into the code sequence at other points in time would also produce orthogonal sequences (as is done in other systems), and that other types of orthogonal function generators could be used in the place of the LFSR PN generators (e.g., Walsh or Hadamard functions) in other embodiments.
- the data 220 stored on the tag 110 is then spread by the generated spreading codes 1260 by traditional means 1230 (e.g., an XOR gate in digital implementations, or a multiplier in analog implementations, as is well known to those skilled in the art).
- traditional means 1230 e.g., an XOR gate in digital implementations, or a multiplier in analog implementations, as is well known to those skilled in the art.
- the spread data signals of the activated tags are then sent (in aggregate) over the given communications channel.
- tags could employ a range of modulation types to transmit their data (e.g., amplitude modulation, phase modulation, frequency modulation, or some combination thereof).
- the preferred embodiment of the present invention utilizes a form of amplitude shift keying ("ASK") from load modulation via transmission element 702, though other modulation types and implementations are certainly possible (e.g., Differential Quadrature Phase Shift Keying, Quadrature Amplitude Modulation, Pulse Code Modulation, Pulse Amplitude Modulation, Pulse Position Modulation, etc.).
- ASK amplitude shift keying
- the employment of a variety of data encoding and mapping techniques is also possible with the present invention. Some examples of encoding techniques include, but are not limited to, return to zero
- RZ non-return to zero
- NRZ non-return to zero
- Manchester and differential encoding
- CRC codes CRC codes
- convolutional codes CRC codes
- block codes etc.
- the tags 110, 120, 130 in the preferred embodiment also directly modulate the carrier supplied by the reader 100 via transmission element 702; thus, they have no local oscillator (though the use of a locally generated carrier is certainly possible within the scope of the present invention, and does not in any way limit its application).
- power converter 703 rectifies the carrier signal from the reader 100 so that the reader 100 remotely powers the circuitry on the tag 110. Note that the use of actively powered tags is also possible and does not in any way limit the use of the present invention.
- a general goal of the present invention is to minimize the complexity of the tag 110, and through the use of the described techniques in the preferred embodiment, the circuitry on the tag 110 can be kept to a minimum.
- the reader 100 typically begins the reading process of the tags 110, 120, 130 by initializing the output of a signal source 1310 with a transmit level control 1320 and amplifier 1330, and transmitting power at some minimum level. The reader 100 then begins transmitting a continuous wave at that level in the preferred embodiment. Once the reader 100 is transmitting at a particular power level, it typically listens (via the coupling device 1340 and antenna 1345) for any return signal from the tags 110, 120, 130. This activity detection may take the form of a modulation or energy detection measurement, such as detecting signal levels or signal swings in each of the possible communications channels (which is further described below).
- the reader 100 can rapidly step (generally in an increasing manner) to the next power level. If signals are sensed at a particular transmit power level, the reader 100 may begin the full demodulation processing 1390 (possibly employing collision mitigation techniques, as discussed in Section N below). Note that the reader 100 may also send out modulated carrier signals, synchronization pulses, or asymmetric carrier waveforms in other embodiments of the system without loss of generality.
- the signal processing performed by the reader 100 can be performed in either hardware or software architectures, or some combination thereof. Typical embodiments will include some selectivity 1365, amplification 1370, analog-to- digital conversion 1375, and DC acquisition and gain control functions 1380. In general, the reader 100 cycles through each of the possible communications channels (either sequentially or concurrently) in a given communications pass, and looks for signal energy on each. Those skilled in the art recognize that there are many methods available to detect the presence of a signal, and to detect the presence or absence of collisions, which may vary based on the modulation and signaling type. In general, the reader 100 may also perform active or passive suppression 1360 of its carrier signal in certain embodiments, and interference or noise cancellation (for any form of interference from sources other than the desired tags in the system).
- the preferred embodiment of the present invention utilizes spread spectrum modulation in the tags 110, 120, 130.
- the received data must be despread in the reader 100 for each code channel by first applying each possible spreading code, as is well known in the art.
- the preferred embodiment of the present invention utilizes specially augmented m-sequences as spreading sequences in the tag 110, very fast, efficient and novel demodulation (i.e., despreading and channelization) techniques can be utilized in the reader demodulation processing 1390. These techniques substantially reduce (e.g., by about a factor of 57 in the preferred embodiment) the processing power required in the reader demodulation processing 1390, which results in faster reading times and lower cost implementations of the reader 100.
- F the number of channels employed in each pass of the multiple pass system, and can be expressed in terms of a factor (F) which is equal to the ratio of the number of traditional despreading operations to the number of improved despreading operations per symbol (using a novel combination of received sequence reordering and Fast Hadamard Transforms (FHTs)): r _ l (N,f _ l y N, E ⁇ ft N N,- ** llooggNN,. LE ⁇ logN ; - where L is equal to the number of passes required to successfully demodulate the source data, and ⁇ ; is (once again) equal to the number of channels in the i th pass.
- F a factor
- This factor directly represents a processing savings (which is typically expressed in terms of millions of operations per second (MOPS) or millions of instruction per second (MIPS)) in the reader demodulation processing 1390.
- a processor 1390 that is fifty-seven times less capable (e.g., 10 MOPS vs. 570 MOPS) may be utilized in the reader 100 in the preferred embodiment in the best case (with no collision mitigation as described below).
- specially augmented m-sequences are an orthogonal extension of traditional PN sequences, which have some similarities to orthogonal Walsh codes (shown in box 1420 of FIG. 14); namely, the two sets of sequences have the same number of binary ones and zeroes in the sequence.
- the two types of sequences i.e., specially augmented m- sequences and Walsh sequences
- This special re-ordering function is derived directly from the primitive polynomial that is used to generate the base m-sequence (as is shown in the tag sequence generator 1110) in reader receiver block 1520 of FIG. 15.
- the sequence re-ordering function 1510 is used to directly re-order the data samples (or elements) as the receiving device 1375 receives them.
- the receiving device 1375 could be an analog to digital converter, an analog sample and hold device, a register, or any other device that receives a signal. Note that a single sequence reordering 1510 function is applied to the composite received signal, which consists of transmissions from several different tags 110, 120, 130 using multiple code channels (or code phases as in 110).
- FHT Fast Hadamard Transform
- Transforms may be utilized with the described fast correlation methods without departing from the spirit of the present invention.
- all of the described processing techniques can be performed in either the analog or digital signal processing domain.
- traditional FHT algorithms e.g., as shown in box 1410
- box 1400 termed a 'butterfly'
- a radix-2 FHT butterfly is similar to a radix-2 FFT butterfly, though it consists of multiplying the data elements by only a +1 and -1 value (or equivalently adding and subtracting the data values together).
- the trellis structure 1410 of an 8x8 FHT is also shown.
- Each output of an FHT 1550 is termed an FHT bin or FHT code channel. Since the FHT is a fast transform, it can be shown that the processing savings over traditional correlation (similar to the factor F expressed above) is equal to (N / N log N) for an N-point orthogonal sequence. This same savings is realized by utilizing the described fast correlation techniques.
- the exact received data re-ordering function 1520 is determined by observing the states that the tag Fibonacci LFSR (as shown in 1110) cycles through during normal operation (also refer to the example below).
- the states that the LFSR progresses through correspond directly to the indirect addresses that the incoming (spread) received data samples must be stored at in the received data memory buffer (1530 or other storage medium) as they are received (linearly) in time.
- This sequence of addresses (in 1520) may alternately be stored in a storage medium (e.g., Random Access Memory, Read Only Memory, Hard Disk Drive, etc.) instead of being actively generated in the receiver.
- the elements of the received m-sequences are re-ordered such that they now represent exactly the elements in Walsh sequences (or more specifically, the rows in a Hadamard matrix).
- a traditional fast (Hadamard) transform (correlation) method may now be utilized (in 1540) to despread the received data channels in parallel.
- the data sequences can also be double buffered in memory to accommodate any processing latency.
- the output indexes (or bins) 1550 of the FHT that exhibit signal energy correspond directly to the mask values 1130 (when expressed in binary) that were used in the AND-XOR reduction 1100 in the tags 110, 120, 130.
- the channel selection code 1130 (the 'c0-c4' shown in FIG. 11) (transmitter processing) directly corresponds to the active outputs 1550 of the FHT block 1540 in FIG. 15 (receiver processing).
- the binary mask value 1130 is applied in the tag 110 to select a particular code channel (or code phase). This is also shown in FIG. 7, where the mask 710 is drawn from the tag data 240 to input to the channel selection 240.
- the binary mask value 1130 (and FHT bin index) directly corresponds to the data 221, 222, 223, 224 stored on the tag 110, that was utilized to select a channel during a particular pass (see also identifiers 1710, 1820, 1830 and 1840 in FIG. 17 and FIG. 18 for a supplementary demonstration of how tag data relates to the channel choice).
- Each tag 110 will send its data 220 over a fixed channel 1260 for the duration of each of the passes of the multiple pass algorithm in the preferred embodiment.
- the output signal level at each FHT bin corresponds directly to the signal level on each code channel 1260 (e.g., for each code phase) after despreading.
- the data signal 1550 at the output of each active FHT bin during the cham el selection portion of the received data sequence can be verified by matching it up with the binary FHT index value (since the two sequences should match for valid data).
- This technique is shown in FIG. 18 for Pass #2 of the multiple pass transmission algorithm. Note that the data sequence 1820, 1830, 1840 over the portion 222 used to select the channel 240 for the second pass is the binary equivalent of the FHT bin number.
- the demodulator is able to rapidly demodulate (i.e., despread) all possible code channels (i.e., code phases) in the preferred embodiment.
- code channels i.e., code phases
- aN-point FHT will typically be required to demodulate N-channels for each received symbol period in the receiver (which corresponds to the required dechaimelizing and despreading operation for each potential data channel and symbol).
- other embodiments of the transponder system may utilize orthogonal Walsh codes for channelizing functions, in which case the FHT bins would correspond directly to the Walsh code channel indexes (and no re-ordering process is necessary).
- the preferred embodiment of the system utilizes specially augmented m-sequences as channelizing functions, and the above described demodulation techniques.
- the sequence 1260 represented by the channel selection value 1130 (nj) of '0001 ' (1) in binary will be '0111101011001000'
- the sequence 1260 represented by the channel selection (mask) 1130 value of '1001' (9) in binary will be '0010110010001111' (which is just a different time shift or code phase of the same basic m-sequence that is subsequently specially augmented with a leading zero).
- An example of the tag PN generation and mask circuitry for a primitive polynomial of 23 is shown in FIG. 11.
- the reader receiver will resolve these two signals using a special reordering function 1520 and FHT processing (as shown in FIG. 15).
- the special received data sample re-ordering that must be utilized for the transmitted PN sequence is ⁇ 0,15,7,11,5,10,13,6,3,9,4,2,1,8,12,14, the same as is shown in 1120 ⁇ for this example.
- This sequence may be generated in the reader 100 by replicating the m-sequence generator 1110 that is utilized in the tag 110, and observing the PN generator states, or by simply storing the required re-ordering sequence in memory.
- the re-ordering sequence is utilized to store the incoming received data sample stream into memory using indirect addressing.
- the first valid A/D sample that arrives at the reader is stored in memory buffer location 0 of storage medium 1530 (as is the case for all specially augmented codes), the second sample is stored at memory location 15, the third at location 7, and so on.
- normal FHT processing 1540 can be performed on the newly re-ordered data samples in the memory buffer 1530.
- the re-ordering function will translate the '0001 ' PN code above into the sequence '01010101010101' (which is identical to Walsh code 1) and the '1001' PN code into the sequence '0101010110101010' (which is identical to Walsh code 9).
- the FHT 1540 will indicate that signal energy is present (e.g., tags are transmitting) in bin 1 (corresponding to channel code 1) and bin 9 (corresponding to channel code 9) of output 1550.
- bin 1 and bin 9 FHT outputs for each transmitted symbol the remainder of the tag data can be sensed.
- the techniques described above may be utilized for traditional (i.e., non-specially augmented) m-sequences by assuming in the receiver that the first chip (or symbol) that is sent by the tag 110 is a binary zero (which is equivalent to a +1 normalized signal value on the channel), even though no such signal was actually sent.
- the first buffer location in the storage medium 1530 is initialized to a +1 value, and processing (i.e., re-ordering 1510 and FHTs 1540) continues as normal.
- processing i.e., re-ordering 1510 and FHTs 1540
- Other normally augmented PN sequences can also be accommodated by keeping track of where the additional chip (e.g., other than the first chip as described above) is inserted into the sequence.
- the above described fast correlation techniques apply to any communication system that uses PN sequences that can be generated with an AND-XOR reduction network 1100 (whether or not they are generated with such a network).
- Many popular communications systems utilize these types of PN sequences, or sequences generated from a combination of traditional m-sequences (such as Gold codes, as is well known in the art).
- Some examples of such systems are the IS-95, IS-2000, 3GPP CDMA cellular systems, and the GPS CDMA location system.
- the above fast correlation techniques can be equally as effective in these systems.
- the composite received signal must be filtered and amplified in the receiver front end 1610, and then channelized (or de-channelized) 1620 in the reader 100 as illustrated on FIG. 16.
- Each channel is then generally processed separately (though possibly concurrently) for signal and collision detection purposes (generally in 1630).
- an FHT operation could still be utilized to simultaneously demodulate all of the different data channels as described above.
- Other embodiments of the system may utilize a bank of (parallel or time-shared) traditional despreaders (in place of 1540, 1620) to perform the dechannelization and despreading process.
- a despreader typically consists of a multiplier followed by an integrate and dump function, as is well known in the art.
- other embodiments may utilize orthogonal timeslots as the channel (such as in a slotted ALOHA system), in which case signals from different tags would be demodulated as they arrive (at different points in time).
- the selected channelization method does not change the general type of collision mitigation algorithms that can be employed in the reader 100, as further described below.
- the demodulation process is generally a multiple iteration process in many embodiments of the present invention, since it is typically not likely that all tags will successfully transmit their information on the first pass of the multiple pass transmission algorithm. Thus, the reader 100 must remain powered up (at the same power level) and continually demodulate the incoming data until all data from the tags has been successfully received (further using the methods described below).
- multiple demodulation iterations may be required for each pass of the multiple pass algorithm.
- subsequent passes of the multiple pass transmission algorithm may require the demodulator to adapt to a new number of channels, as described in the dynamic channel profile discussion above.
- collision mitigation techniques in the reader 100 in the described system (as further detailed below), depending on the desired complexity of the reader 100. For instance, a low cost receiver may not utilize any collision mitigation techniques, while a higher cost (higher processing power version) of the receiver may utilize advanced collision mitigation techniques.
- tags 110, 120, 130 in general transmit the same patterns regardless of whether collision mitigation is utilized in the reader 100.
- Each tag e.g., 110
- Each tag is in effect 'blind' to other tags present in the system (e.g., 120, 130).
- Performing the following additional steps further carries out the demodulation process in the receiver.
- the presence of a low deviation ASK signal(s) from a tag is typically detected by subtracting out any mean signal level (i.e., dc value as in 1380) from a channel to obtain a normalized signal, and examining the absolute value of the remaining (normalized) signal.
- a form of automatic gain control also in 1380 may also be applied to further normalize the signal levels. If the absolute value of the normalized signal level exceeds some threshold (generally over some period of time), a signal is said to be present on that channel in the preferred embodiment. Once a signal is detected on a particular channel, the reader 100 must typically detect if a collision has occurred on that channel.
- Collisions may also be detected by alternate means, such as standard error detection (e.g., CRC) means, though these methods may not in all cases properly detect collisions. Also note that whether or not collisions occur on a channel, standard error correction means can be employed to correct for transmission errors and improve the accuracy of the signal estimates. These measurements are typically performed on all of the available (possible) communications channels in a given pass (which may vary with the pass number of the multiple pass algorithm, as described above).
- CRC standard error detection
- the reader 100 typically characterizes whether any signal is present on (each and) all of the possible communications channels per pass, and whether a collision has occurred on each channel where signal(s) are present. Recall that a collision is generally defined as when two or more tags utilize the same communications channel during the same pass of the multiple pass algorithm. When a collision occurs on a given channel, the data for that channel is generally lost if no collision mitigation techniques are utilized. If a signal is present on a given channel, and no collisions are detected, the particular signal on that (given) channel is typically said to be successfully received, and the reader 100 generally knows the entire data sequence of that particular tag. Note that some embodiments may also perform error detection or correction (or some other type of signal integrity measure) to ensure that the data is valid and received correctly.
- the reader 100 may also check that the tag 110 has indeed communicated on the expected communications channel (serving as another form of error checking for the portion of the data that is used to determine the channel as described above - also see FIG. 18, where the channel selection data 222 for the second pass must match up with the channel choice, as identified with 1820, 1830, 1840).
- the signal from the tag 110 Once the signal from the tag 110 is known (and possibly confirmed), it may be ignored, or removed (as described below) from the rest of the signal population.
- a form of collision mitigation is implemented if a signal from a particular tag is effectively removed from the signal population (through a variety of possible algorithms). Note that the removal of the signal does not have to be exact to realize a benefit from collision mitigation.
- FIG. 19 shows a general flow chart for reader actions when utilizing collision mitigation techniques.
- the reader 100 will attempt to resolve as many collisions (e.g., errors in data) as possible before moving on to the next pass of the multiple pass transmission algorithm (e.g., by holding the reader transmit power constant in the preferred embodiment).
- the reader 100 will generally keep transmitting at a given power level until some confidence level (or probability) is obtained that all actively transmitting tags have been identified.
- One very low complexity algorithm for the case of when no collision mitigation techniques are utilized by the reader 100 is to simply have the tags 110, 120, 130 transmit the maximum number of passes in the multiple pass communications algorithm.
- the maximum number of passes is typically determined (as described above) when the unique portions of the data stored on the tag is exhausted.
- the reader 100 directly controls the number of passes that the tags transmit on by controlling the first and second predetermined transmission conditions.
- the reader transmit power level is held constant in order to continue transmissions among fully activated tags, though other first and second predetermined transmission conditions are possible to control the groups of transmissions from the tags.
- the maximum number of passes is generally determined by the particular channel selection algorithm, but is generally limited to the data length (in bits) divided by the sum of the channel selection portions of data (in bits) for completely unique (non-overlapping) channel selection choices.
- the maximum interrogation time can be determined, and the total acquisition (or reading) time is fixed for all cases (as also illustrated in the equations above).
- tags 110, 120, 130 transmit for a limited number of passes (less than the maximum), such that a given confidence level is obtained that the received data (or taken tag inventory) is correct. This is generally determined by the expected number of source devices (or tags) present in the system (or at each power-on level), and the desired confidence level (or probability of successfully identifying the items or tags in the system). For instance, with the dynamic channel profile given in the example above, simulations (over 1000 trials) have shown that it takes an average of 7.73 transmission passes to identify 50 tags, though a maximum of 10 passes was required to uniquely identify tags in 1000 trials.
- the reader 100 could remain powered up at a given power level for 10 passes to have a reasonable confidence that all of the 50 (or so) tags have successfully transmitted their data on a unique channel.
- the reader 100 would only have to be able to determine when there is only one tag 110 on a channel to receive its ID data. This would result in a substantial total acquisition time-savings, since only 10 passes were performed instead of the absolute maximum of 16 passes given in the example above. Further simulations, statistical or probability analysis could be applied to determine other confidence levels or the number of passes for a given number of tags. Note that in some applications, the reader 100 could utilize the maximum number of passes the first time it takes an inventory, and then adjust the number of passes based on the expected (i.e., measured or observed) number of tags present in the system.
- the algorithm used by the reader 100 could keep track of expected collision locations (i.e., channels) for each tag (once its data or ID information has been successfully received), and estimate how many tags are left to be identified in the system.
- the reader 100 may be able to stop the interrogation process sooner than the techniques described above (once it determines that no other tags are likely present in the system).
- the required number of transmission passes is adaptively estimated by the reader 100 during reception, instead of being pre-computed based on the expected number of tags as described above. This technique is further described in the examples below, and in FIG. 22.
- a more advanced embodiment of the reader 100 may utilize any one of several forms of collision mitigation techniques.
- Collision mitigation techniques generally lessen the impact of collisions on a given communications channel. Ideally, they remove the effects of a particular collision on a channel. This can be accomplished in the described system by (at least conceptually) regenerating a known signal and subtracting the known signal from the total signal population (or composite received signal). Note that this interfering signal subtraction may occur at any stage in the demodulation process (e.g., it may occur at the chip-rate or it may occur after despreading in the preferred embodiment).
- the preferred embodiment of the present invention performs collision mitigation after demodulation (i.e., despreading) in order to reduce the implementation complexity.
- the observed signal levels from the tag 110 are also generally measured (and low pass filtered) in the reader 100 during the normal signal detection process so a reliable estimate of a given (non- colliding) tag's actual signal strength is available. This knowledge can be utilized to effectively re-create the known signal and accurately subtract it out from the aggregate received signal, thereby removing its effect from other transmission passes.
- FIG. 20 shows an example flow chart for reader processing using forward collision mitigation techniques, where the processing is performed in a sequential (e.g., one channel at a time) fashion in order to ease understanding of the process.
- the process generally involves determining which tags 110, 120, 130 have successfully transmitted their ID data (as described in the receiver algorithms above), and keeping a data structure (or list) containing known (tags') channel choices and estimated signal levels for each pass of the multiple pass algorithm.
- a tag's LD data and the signal level of a transmitted tag signal are known, it can effectively be removed from any subsequent collisions involving that tag.
- the signal level can be measured and filtered over increasing lengths of time to obtain increasing levels of accuracy of the interfering signal level.
- a tag signal is estimated (determined within some level of accuracy)
- it is subfracted out from the proper (pre-determined) channels in later passes of the multiple pass transmission algorithm, negating any interfering effects of that (known) tag's signal on other signals transmitted by other users. This technique is made possible due to the deterministic nature of each tag's channel choices, which are typically based on the data stored on the tag 110.
- the quasi-static channel assumption becomes important here since the measured signal level will be assumed to hold for all subsequent passes.
- the signal level estimate could be updated every transmission pass to account for slowly varying channel conditions. Note that only the known tag signal information (typically contained in a data structure or list) and the composite received signal from the current transmission pass (or burst) needs to be stored to perform this algorithm (as opposed to storing all received bursts in memory as described in the algorithm below).
- this type of forward collision mitigation algorithm can result in a significant (2-4X) total reading time improvement over methods that do not perform any collision mitigation.
- Another more advanced form of collision mitigation involves subtracting known signals from both subsequent and previous passes of the multiple pass transmissions.
- Bi-directional collision mitigation is more computationally complex (and generally requires more memory to store prior communication passes), but results in greatly reduced total tag reading time (reduced by roughly an order of magnitude over methods that do not perform any collision mitigation).
- this method requires storing a data structure containing known channel choices and estimated signal levels in each communications pass (as in the case above) for identified tags.
- signals are subtracted out from prior transmission passes (in addition to the current pass as in forward collision mitigation algorithms), additional collisions can be resolved.
- data from the third pass of the multiple pass communications algorithm may result in the data from another user being resolvable in a prior pass (e.g., the second pass) of the algorithm, which in turn may free up another user that was previously colliding in either a prior (e.g., the first pass) or subsequent pass (e.g., the third pass) of transmissions.
- a prior pass e.g., the first pass
- subsequent pass e.g., the third pass
- the reader 100 may cycle through all of the available transmission passes (up to and including the current pass), and resolve more tag signals virtually continuously, until a point is reached where no more users can be resolved in any of the passes (up to and including the current pass).
- the reader 100 would then step to the next power level and continue with the bi-directional collision mitigation algorithm.
- the effect can be quite powerful in later transmission passes, allowing a number of tag signals to be resolved which is much greater than the available number of communications channels.
- the reader 100 may check the integrity of the data via the means mentioned above (e.g., error detection and correction).
- the reader 100 may also post-process the data, which typically includes functions such as descrambling, de-encryption, classification, and removal of redundant items (which power up in more than one power-on range in the preferred embodiment of the present invention). Note that some or all of these functions could take place at a centralized location, thereby serving multiple readers or antennas.
- FIGs. 21, 23, and 24, which will be used to explain the example, are a state diagram of the system, showing which channel each tag picks to communicate over on each subsequent pass through the algorithm.
- the states in the example are unaltered outputs of an actual experiment using a random number generator to choose the channels.
- the type of physical channel e.g., code phase, time slot, etc.
- each tag's ID information is used to select one of eight channels that each tag 110 will transmit on during each pass of transmission in the preferred embodiment.
- the first thirty bits of the tags ID's were randomly
- Tag 2 1106 2551 65.. Tag 3 4767 4416 41..
- Tag 4 2044 6111 36..
- Tag 7 5443 3675 34..
- Tag 8 2135 5115 64..
- Tag 1 will choose channel 0 during Pass #1, channel 0 during Pass #2, channel 3 during Pass #3, and so on.
- Tag 2 will choose channel 1 during Pass #1, channel 1 during Pass #2, channel 0 during Pass #3, and so on.
- tags 1, 3, 5, and 7 are successfully identified in their entirety; tags 1, 3,5 and 7 communicated their full ID in a channel that had no collisions.
- tags 2 and 6 collided in channel 1
- tags 4 and 8 collided in channel 2. These tags cannot be successfully identified, and will require subsequent passes to be resolved.
- the reader 100 observing that collisions exist, leaves the power applied at the present level and allows all of the tags to draw another channel from the second octal digit for Pass #2. It should be noted that none of the tags know whether they have successfully communicated their ID.
- tags have to show up in a channel all by themselves in order to be identified. If the experiment is allowed to run enough times, this will happen. However, with only a limited number of bits in the tag ID 220 information, the experiment can only be run a limited number of times before it starts repeating. For example, if the tag ID was 96-bits long, and three bits per pass were used to draw a channel (one of 8), then after 32 experiments the process would repeat. Since there is a high probability of at least one collision per pass (99.76% for this scenario), there is a small but finite probability that a tag's ID can 'hide' in collisions on each and every pass through the experiment.
- a tag's ID 220 is identical to a different tag's ID over the entirety (which is not allowed by the assumption of unique tag ID's and a unique, reversible mapping to a scrambled tag ID). All that it means is that the tag's ID 220 is identical to at least one other tag's ID when examined over the small number of bits (in this case, three) being used to define the channel space for that pass. This introduces the concept of inventory or item uncertainty, where an inventory of tags is known only to a certain confidence. For the example experiment in FIG. 21, eight trials are required for each tag to make an appearance in a collision-free channel.
- tags 1, 3, 5 and 7 are identified in Pass #1
- tag 2 shows up in Pass #3
- tags 4 and 8 are identified in Pass #4
- tag 6 does not show up until Pass #8.
- Tag 6 is a good example of how a unique tag can be hidden in collisions even though it has a unique ID. If this experiment had only been run through Pass #7 (i.e., if the IDs were only 21 bits long), tag 6 would not have been identified.
- the reader 100 thus expects there to be a collision on channel 0, but there is a possibility that there is also an unknown tag that is occupying channel 0 (in this case, tag 4).
- Channel 0 indicates two known tags and a potential for one or more unknown tags.
- the reader 100 was not expecting a collision on channel 1 (since none of the known tags were expected to choose that channel).
- a collision here indicates at least two more unknown tags, with perhaps more.
- Pass #2 results in four previously known tags, with at least three (definitely) unknown tags. This is less than the set defined by the first pass, which was four known tags and at least four unknown tags, so the reader 100 gathered no new information in the second pass.
- Tag 1 was the only tag expected to go to channel 3, so a collision there indicates at least one unknown tag.
- Tag 7 was the only item expected to go to channel 4, so a collision there indicates at least two unknown tags (the unknown tag on channel 3 and the unknown tag on channel 4).
- Tag 3 is again by itself.
- Tag 5 was the only tag expected to go to channel 7. A collision there indicates at least three unknown tags (counting the unknown tags on channels 3, 4 and 7). These, along with the now five known tags, again indicate at least eight tags.
- Pass #4 identifies new tags 4 and 8.
- Tags 3, 5 and 7 turn up in collision- free channels.
- Tags 1 and 2 were expected to collide on channel 6, but there may be additional tags there. This leaves seven known tags, and from previous experiments, at least one unknown tag.
- Pass #5 identifies no new tags. The collision on channel 5 was unexpected, again indicating seven known tags and at least one unknown tag. Similar interpretations can be made from Pass #6 and Pass #7.
- tag 6 is identified. All other collisions were expected. There are now eight identified tags, the minimum number expected from previous passes. However, there could still be tags hidden in the collisions. For example, there could be a tag that chose channels 1, 0, 4, 6, 3, 1, 1, 5, and this tag would be hidden by other collisions. The probability that a tag would have this particular LD would be l/8 8 or 6 x l0- 8 .
- the level of inventory confidence could be further improved in other embodiments by unscrambling the data and determining, for example, that the hidden tag would be associated with a tire or some other unexpected item when all the other items were grocery items.
- FIG. 22 A flow chart showing the steps involved in the no-interference cancellation method described above appears in FIG. 22.
- the system is initialized with no positive ID's and no unknowns, which together corresponds to a total of zero items.
- positive ID's e.g., items 1, 3, 5 and 7 in Pass #1
- the number of collisions in the pass 2250 is also recorded (e.g., two collisions in Pass #1). If the collisions were anticipated 2260, then there are potential unknowns that may be revealed in future passes but no definite unknowns. If the collisions were not anticipated 2270, the two unknowns are added to the unknown list.
- the total number of items is then estimated 2280 to be the positively identified items and the minimum number of unknowns that could cause the recorded collisions. Assuming the positive ID's do not equal the estimated total items, the unknowns total is reset to zero 2295 and another pass 2220 is initiated. The loop is finally exited 2290 when the number of positive ID's equals the maximum number of previously identified ID's plus unknowns, and a predetermined confidence level 2296 is satisfied.
- the "no collision mitigation method" can be applied whether the channel is static or dynamic. For the case of static channel conditions, where the return signals have a consistent power level and phase, more information is available at the reader 100 in the form of received signal level. If it is now assumed that, in addition to knowing what channel a known tag will choose on future passes, its signal level is also known, then it can be determined whether there are additional hidden tags in expected collisions. For example, the collision on channel 0 during Pass #2 contained two known tags and one unknown tag. If the signal levels of the known tags were also known, then the total signal level of the collision could be compared to the individual signal levels to determine if there was an additional unknown tag concealed in the collision. Such an environment would allow the reader 100 to terminate its inquiry after all tags had been independently identified (in this case, 8 passes) with certainty that there were no hidden tags because all collisions would be accounted for.
- tags 1 and 5 are known to transmit their data over channel 0. With their known signal level, they can be subtracted out, leaving behind only tag 4 that can now be identified. Likewise, tag 7 was expected to transmit its data over channel 4 during Pass #2, and by canceling out this tag, tag 6 is left alone to be identified. There is still an unresolved collision on channel 1, so at least one other pass through the algorithm is required.
- tag 2 shows up by itself and is identified.
- Tag 1 was expected to transmit its data over channel 3, so it is subtracted out, leaving behind only tag 8, which can now be identified. All other collisions contain only known tags, so the accounting of the tags has been completed in three passes through the algorithm with full confidence instead of eight or more passes (depending on the confidence level required) for no collision mitigation as in FIG. 21.
- the signal strength of identified tags can be known to a high precision.
- the tags would choose different code phases of an eight-chip long augmented PN sequence. This eight-chip long PN sequence would be transmitted either true or inverted for each bit of the tag's ID, depending on the sense of the particular ID bit.
- the gain increases. For 32 channels and 128 bits, a gain in signal-to-noise ratio of 36 dB results.
- tags 1, 3, 5 and 7 are identified in both bit pattern and signal level and phase.
- tag 4 can be identified in Pass #2 since the effects of tags 1 and 5 can be removed from the collision on channel 0.
- tags 1, 3, 4, 5, 6 and 7 are known.
- the results of Pass #1 may be revisited after applying forward collision mitigation.
- tag 4 identified during Pass #2 it can be removed from channel 2 of the stored results of the first pass to resolve tag 8.
- tag 6 identified during Pass #2 it can also be removed from channel lof the stored results of the first pass to resolve tag 2. In this case, only two passes are required to successfully identify all eight tags.
- the benefits of both forward and bi-directional collision mitigation become more significant when larger numbers of channels and tags are involved.
- a one-way communications system utilizing a multiple pass transmission algorithm preferably employing spread spectrum techniques
- superior performance e.g., reading time and capacity
- the incorporation of collision mitigation techniques, dynamic channel profiles, and power on ranges further improves system performance.
- the described communication system has many applications that are not limited to the preferred embodiment and actual examples detailed in the text.
- the present invention also has applications in two-way communications devices, actively powered user devices, and networked devices without departing from its essential characteristics (described in the claims below).
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003537231A JP4125676B2 (en) | 2001-10-17 | 2002-10-04 | Method and device for data communication in a multi-user system |
AU2002334867A AU2002334867A1 (en) | 2001-10-17 | 2002-10-04 | Method and device for data communication in a multi-user system |
IL16116902A IL161169A0 (en) | 2001-10-17 | 2002-10-04 | Method and device for data communication in a multi-user system |
EP02801657A EP1446905A4 (en) | 2001-10-17 | 2002-10-04 | Method and device for data communication in a multi-user system |
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/981,476 | 2001-10-17 | ||
US09/982,279 | 2001-10-17 | ||
US09/981,031 | 2001-10-17 | ||
US09/982,271 | 2001-10-17 | ||
US09/982,279 US7133432B2 (en) | 2001-10-17 | 2001-10-17 | Collision mitigation methods used in a communication system |
US09/981,476 US7706765B2 (en) | 2001-10-17 | 2001-10-17 | Method and device for enabling and disabling group transmissions |
US09/978,890 | 2001-10-17 | ||
US09/982,271 US7227885B2 (en) | 2001-10-17 | 2001-10-17 | Correlation method in a communication system and apparatus |
US09/981,031 US6754190B2 (en) | 2001-10-17 | 2001-10-17 | Channel selection method used in a communication system |
US09/978,890 US7099469B2 (en) | 2001-10-17 | 2001-10-17 | Method of scrambling and descrambling data in a communication system |
Publications (4)
Publication Number | Publication Date |
---|---|
WO2003034632A2 true WO2003034632A2 (en) | 2003-04-24 |
WO2003034632A3 WO2003034632A3 (en) | 2004-02-05 |
WO2003034632B1 WO2003034632B1 (en) | 2004-03-11 |
WO2003034632A9 WO2003034632A9 (en) | 2004-07-08 |
Family
ID=27542314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2002/031858 WO2003034632A2 (en) | 2001-10-17 | 2002-10-04 | Method and device for data communication in a multi-user system |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP1446905A4 (en) |
JP (3) | JP4125676B2 (en) |
CN (1) | CN1572079A (en) |
AU (1) | AU2002334867A1 (en) |
IL (1) | IL161169A0 (en) |
TW (1) | TWI226587B (en) |
WO (1) | WO2003034632A2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006009871A1 (en) * | 2004-06-17 | 2006-01-26 | W5 Networks, Inc. | Low power wireless communication system and protocol |
WO2006020490A1 (en) * | 2004-08-10 | 2006-02-23 | Mayo Foundation For Medical Education And Research | Asynchronous communication system for remote monitoring of objects or an environment |
JP2006197578A (en) * | 2005-01-03 | 2006-07-27 | Samsung Electronics Co Ltd | Communication collision avoidance protocol using unique identifier |
WO2006131118A1 (en) * | 2005-06-07 | 2006-12-14 | Aalborg Universitet | Method for data communication |
US7668831B2 (en) | 2005-10-27 | 2010-02-23 | International Business Machines Corporation | Assigning unique identification numbers to new user accounts and groups in a computing environment with multiple registries |
US8369380B2 (en) | 2005-04-01 | 2013-02-05 | Ntt Docomo, Inc. | Transmitter, receiver, and mobile communication system |
US9189665B2 (en) | 2005-01-03 | 2015-11-17 | Samsung Electronics Co., Ltd. | Anti-collision coupling for contactless cards |
US10079704B2 (en) | 2014-09-22 | 2018-09-18 | Drnc Holdings, Inc. | Transmission apparatus for a wireless device using delta-sigma modulation |
CN115134142A (en) * | 2022-06-28 | 2022-09-30 | 南京信息工程大学 | Information hiding method and system based on file segmentation |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7894551B2 (en) | 2005-08-29 | 2011-02-22 | Mediatek Inc. | Modulation scheme detecting apparatus and related method |
EP1786132A1 (en) * | 2005-11-11 | 2007-05-16 | BRITISH TELECOMMUNICATIONS public limited company | Method and system for secure communication |
JP5486330B2 (en) * | 2010-02-01 | 2014-05-07 | パナソニック株式会社 | Wireless communication system |
US8847834B2 (en) * | 2012-05-14 | 2014-09-30 | Tag-Comm Inc. | Method and apparatus for generating dedicated data channels in backscatter RFID systems using band-pass modulation |
CN103487815B (en) * | 2013-10-10 | 2016-04-13 | 南京航空航天大学 | A kind of satellite navigation signal enhancement method based on orthogonal domain interference optimization overlapping multiplexing |
CN103713880B (en) * | 2014-01-03 | 2017-02-22 | 浪潮(北京)电子信息产业有限公司 | Sequence generator and design method thereof |
CN107342793B (en) * | 2016-04-28 | 2021-06-29 | 松下知识产权经营株式会社 | Power transmitting device, power receiving device, and power transmission system |
CN111291667A (en) * | 2020-01-22 | 2020-06-16 | 上海交通大学 | Method for detecting abnormality in cell visual field map and storage medium |
US20230155624A1 (en) * | 2021-11-12 | 2023-05-18 | POSTECH Research and Business Development | Transceiver and operating method thereof |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5500856A (en) * | 1993-07-30 | 1996-03-19 | Matsushita Communication Industrial Co., Ltd. | Transmission de-correlator for eliminating interference in a CDMA communication system |
US5771288A (en) * | 1992-04-10 | 1998-06-23 | Ericsson, Inc | Multiple access coding for radio communications |
US6101176A (en) * | 1996-07-24 | 2000-08-08 | Nokia Mobile Phones | Method and apparatus for operating an indoor CDMA telecommunications system |
US6256487B1 (en) * | 1998-09-01 | 2001-07-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Multiple mode transmitter using multiple speech/channel coding modes wherein the coding mode is conveyed to the receiver with the transmitted signal |
US6275478B1 (en) * | 1998-07-10 | 2001-08-14 | Qualcomm Incorporated | Methods and apparatuses for fast power control of signals transmitted on a multiple access channel |
US6385264B1 (en) * | 1999-06-08 | 2002-05-07 | Qualcomm Incorporated | Method and apparatus for mitigating interference between base stations in a wideband CDMA system |
US6545994B2 (en) * | 2000-02-23 | 2003-04-08 | Tantivy Communications, Inc. | Access probe acknowledgment including collision detection to avoid oversetting initial power level |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4446546A (en) * | 1981-12-31 | 1984-05-01 | Magnetic Peripherals Inc. | Focus initialization system for optical recording |
JPS62213442A (en) * | 1986-03-14 | 1987-09-19 | Hitachi Ltd | Data protecting device |
US5581614A (en) * | 1991-08-19 | 1996-12-03 | Index Systems, Inc. | Method for encrypting and embedding information in a video program |
US5463657A (en) * | 1994-02-15 | 1995-10-31 | Lockheed Missiles & Space Company, Inc. | Detection of a multi-sequence spread spectrum signal |
JPH088853A (en) * | 1994-06-24 | 1996-01-12 | Sony Corp | Scrambling device and descrambling device |
JP3039334B2 (en) * | 1995-08-14 | 2000-05-08 | 日本電気株式会社 | Encryption device |
US5764646A (en) * | 1996-04-02 | 1998-06-09 | Ericsson Inc. | Packet data transmission with clash subtraction |
SE9700212L (en) * | 1997-01-24 | 1998-07-25 | Ericsson Telefon Ab L M | Procedure and arrangement in a communication system |
JP2000089666A (en) * | 1998-09-16 | 2000-03-31 | Nippon Telegr & Teleph Corp <Ntt> | Encoding/decoding device |
US7123624B1 (en) * | 1999-01-14 | 2006-10-17 | Cape Range Wireless, Ltd. | System and method for single-point to fixed-multipoint data communication |
WO2001059968A1 (en) * | 2000-02-09 | 2001-08-16 | Golden Bridge Technology, Inc. | Collision avoidance |
-
2002
- 2002-10-04 WO PCT/US2002/031858 patent/WO2003034632A2/en active Search and Examination
- 2002-10-04 JP JP2003537231A patent/JP4125676B2/en not_active Expired - Fee Related
- 2002-10-04 EP EP02801657A patent/EP1446905A4/en not_active Withdrawn
- 2002-10-04 CN CNA028206258A patent/CN1572079A/en active Pending
- 2002-10-04 AU AU2002334867A patent/AU2002334867A1/en not_active Abandoned
- 2002-10-04 IL IL16116902A patent/IL161169A0/en unknown
- 2002-10-17 TW TW091123928A patent/TWI226587B/en not_active IP Right Cessation
-
2007
- 2007-03-12 JP JP2007061794A patent/JP4629692B2/en not_active Expired - Fee Related
- 2007-05-30 JP JP2007143755A patent/JP4180641B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771288A (en) * | 1992-04-10 | 1998-06-23 | Ericsson, Inc | Multiple access coding for radio communications |
US5500856A (en) * | 1993-07-30 | 1996-03-19 | Matsushita Communication Industrial Co., Ltd. | Transmission de-correlator for eliminating interference in a CDMA communication system |
US6101176A (en) * | 1996-07-24 | 2000-08-08 | Nokia Mobile Phones | Method and apparatus for operating an indoor CDMA telecommunications system |
US6275478B1 (en) * | 1998-07-10 | 2001-08-14 | Qualcomm Incorporated | Methods and apparatuses for fast power control of signals transmitted on a multiple access channel |
US6256487B1 (en) * | 1998-09-01 | 2001-07-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Multiple mode transmitter using multiple speech/channel coding modes wherein the coding mode is conveyed to the receiver with the transmitted signal |
US6385264B1 (en) * | 1999-06-08 | 2002-05-07 | Qualcomm Incorporated | Method and apparatus for mitigating interference between base stations in a wideband CDMA system |
US6545994B2 (en) * | 2000-02-23 | 2003-04-08 | Tantivy Communications, Inc. | Access probe acknowledgment including collision detection to avoid oversetting initial power level |
Non-Patent Citations (1)
Title |
---|
See also references of EP1446905A2 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006009871A1 (en) * | 2004-06-17 | 2006-01-26 | W5 Networks, Inc. | Low power wireless communication system and protocol |
JP2008503939A (en) * | 2004-06-17 | 2008-02-07 | ダブリュー ファイブ ネットワークス インコーポレイテッド | Low power wireless communication system and protocol |
WO2006020490A1 (en) * | 2004-08-10 | 2006-02-23 | Mayo Foundation For Medical Education And Research | Asynchronous communication system for remote monitoring of objects or an environment |
US7643536B2 (en) | 2004-08-10 | 2010-01-05 | Mayo Foundation For Medical Education And Research | Asynchronus communication system for remote monitoring of objects or an environment |
US7830948B2 (en) | 2004-08-10 | 2010-11-09 | Mayo Foundation For Medical Education And Research | Asynchronous communication system for remote monitoring of objects or an environment |
JP2006197578A (en) * | 2005-01-03 | 2006-07-27 | Samsung Electronics Co Ltd | Communication collision avoidance protocol using unique identifier |
US9189665B2 (en) | 2005-01-03 | 2015-11-17 | Samsung Electronics Co., Ltd. | Anti-collision coupling for contactless cards |
US8369380B2 (en) | 2005-04-01 | 2013-02-05 | Ntt Docomo, Inc. | Transmitter, receiver, and mobile communication system |
WO2006131118A1 (en) * | 2005-06-07 | 2006-12-14 | Aalborg Universitet | Method for data communication |
US7668831B2 (en) | 2005-10-27 | 2010-02-23 | International Business Machines Corporation | Assigning unique identification numbers to new user accounts and groups in a computing environment with multiple registries |
US10079704B2 (en) | 2014-09-22 | 2018-09-18 | Drnc Holdings, Inc. | Transmission apparatus for a wireless device using delta-sigma modulation |
US10419254B2 (en) | 2014-09-22 | 2019-09-17 | Drnc Holdings, Inc. | Transmission apparatus for a wireless device using delta-sigma modulation |
CN115134142A (en) * | 2022-06-28 | 2022-09-30 | 南京信息工程大学 | Information hiding method and system based on file segmentation |
CN115134142B (en) * | 2022-06-28 | 2023-09-22 | 南京信息工程大学 | Information hiding method and system based on file segmentation |
Also Published As
Publication number | Publication date |
---|---|
IL161169A0 (en) | 2004-08-31 |
JP2007274682A (en) | 2007-10-18 |
JP4125676B2 (en) | 2008-07-30 |
JP4180641B2 (en) | 2008-11-12 |
EP1446905A2 (en) | 2004-08-18 |
WO2003034632A3 (en) | 2004-02-05 |
WO2003034632B1 (en) | 2004-03-11 |
TWI226587B (en) | 2005-01-11 |
AU2002334867A1 (en) | 2003-04-28 |
CN1572079A (en) | 2005-01-26 |
JP4629692B2 (en) | 2011-02-09 |
WO2003034632A9 (en) | 2004-07-08 |
JP2008017460A (en) | 2008-01-24 |
EP1446905A4 (en) | 2006-11-15 |
JP2005507193A (en) | 2005-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6754190B2 (en) | Channel selection method used in a communication system | |
US7099469B2 (en) | Method of scrambling and descrambling data in a communication system | |
US6970518B2 (en) | Method and apparatus for electronic item identification in a communication system using known source parameters | |
US7218641B2 (en) | Method and apparatus for adaptive processing gain for multiple source devices in a communications system | |
JP4180641B2 (en) | Method and device for data communication in a multi-user system | |
US7023817B2 (en) | Method and apparatus for source device synchronization in a communication system | |
US7706765B2 (en) | Method and device for enabling and disabling group transmissions | |
US7227885B2 (en) | Correlation method in a communication system and apparatus | |
US7133432B2 (en) | Collision mitigation methods used in a communication system | |
Zhang et al. | Design and optimization of a CDMA-based multi-reader passive UHF RFID system for dense scenarios |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BY BZ CA CH CN CO CR CU CZ DE DM DZ EC EE ES FI GB GD GE GH HR HU ID IL IN IS JP KE KG KP KR LC LK LR LS LT LU LV MA MD MG MN MW MX MZ NO NZ OM PH PL PT RU SD SE SG SI SK SL TJ TM TN TR TZ UA UG UZ VC VN YU ZA ZM |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ UG ZM ZW AM AZ BY KG KZ RU TJ TM AT BE BG CH CY CZ DK EE ES FI FR GB GR IE IT LU MC PT SE SK TR BF BJ CF CG CI GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
B | Later publication of amended claims |
Effective date: 20040116 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 161169 Country of ref document: IL |
|
WWE | Wipo information: entry into national phase |
Ref document number: 20028206258 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2003537231 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2002801657 Country of ref document: EP |
|
COP | Corrected version of pamphlet |
Free format text: PUBLISHED INTERNATIONAL SEARCH REPORT (4 PAGES) REPLACED BY CORRECT INTERNATIONAL SEARCH REPORT (3 PAGES) |
|
WWP | Wipo information: published in national office |
Ref document number: 2002801657 Country of ref document: EP |
|
DPE2 | Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101) |