RFID Tag Memory Architecture: EPC, TID & User Memory
RFID Tag Memory Architecture: EPC, TID & User Memory
Technology

RFID Tag Memory Architecture: EPC, TID & User Memory

A tag is more than its EPC — four memory banks each with its role. From SGTIN-96 to custom User Memory, an engineer's view of the encoding system and data management.

8 min· By SpidersRFID Editorial Team

Key Takeaways

  • Overview of the four memory banks
  • EPC encoding: SGTIN-96 in detail
  • TID: the chip's ID card

01Overview of the four memory banks

A Gen2 tag chip contains four logical memory banks: Reserved (64 bits, holding Kill/Access Password), EPC (96-496 bits, holding the unique identifier), TID (48-128 bits, holding chip vendor and model info, factory read-only), and User (0-512 bits, user-defined). Each bank is independently addressable with individual read/write permissions. This layered design keeps security credentials, unique ID, chip info and business data isolated — one of the essence of the Gen2 protocol.

  • Reserved (64b): Kill Password + Access Password
  • EPC (96-496b): unique identifier, rewritable
  • TID (48-128b): chip vendor + model, factory read-only
  • User (0-512b): user-defined, no standard structure

02EPC encoding: SGTIN-96 in detail

SGTIN-96 is GS1's recommended retail-level EPC encoding scheme; 96 bits suffice to identify 2^38 serials. The structure is: Header (8 bits, 0x30 for SGTIN-96) + Filter (3 bits, packaging type such as each/case/pallet) + Partition (3 bits, allocating bit-width between Company Prefix and Item Reference) + Company Prefix (20-40 bits, GS1-assigned) + Item Reference (4-24 bits, in-house product code) + Serial Number (38 bits, per-item serial).

The Partition field is the elegance of SGTIN-96. It allows Company Prefix to vary between 20-40 bits with Item Reference inversely varying between 24-4 bits, the two summing to a fixed 44 bits. This lets different-length GS1 company prefixes compress into one scheme. For example, a 7-bit prefix (typical large-country firm) sets Partition=5 with Item Reference at 24 bits; a 12-bit prefix (small-country firm) sets Partition=2 with Item Reference at 19 bits. This flexibility makes SGTIN-96 globally usable.

  • SGTIN-96: Header 8b + Filter 3b + Partition 3b + CP + IR + SN
  • Partition lets Company Prefix vary 20-40 bits, IR compensates inversely
  • 96 bits can identify 2^38 serial numbers
  • SGTIN-96 is the GS1 retail-level standard

03TID: the chip's ID card

The TID (Tag Identifier) is a read-only identifier burnt in at the factory, holding the vendor ID (e.g. Impinj=0xE2), chip model, mask version and serial. Its core value is anti-counterfeit — an attacker can copy the EPC but not the TID, since the TID is burnt into the chip ROM and not rewritable. In high-value anti-counterfeit scenarios, the backend can identify cloned tags by matching the TID against a whitelist database. Gen2 V2 further extends the TID to 128 bits, adding a chip security-capability bitmap so the reader can query whether a tag supports AES-128, QRS and other advanced features.

  • TID is factory read-only: vendor ID + model + mask + serial
  • Anti-counterfeit value: EPC can be copied, TID cannot
  • Gen2 V2 extends TID to 128 bits with security capability bitmap
  • Backend identifies clones via TID whitelist

04User Memory: extended storage and pitfalls

User Memory is the free storage area beyond EPC, ranging from 0 to 512 bits (some high-end chips reach 4K). Common uses include lot number, production date, QC status and serialised logistics encoding. But User Memory has no standard structure — Impinj Monza and NXP UCODE may arrange bytes completely differently, hurting cross-vendor interoperability. GS1 proposed the BM-11 standard for User Memory encoding, but industry adoption is below 30%.

The key principle: EPC is the source of truth, User Memory is cache. Any critical data must live in the backend database; User Memory is only a fallback. Use ASCII + 2-byte CRC for cross-reader verification. A common mistake is to store unrecoverable data (e.g. the unique serial) only in User Memory — once the chip dies, the data is lost forever. Another pitfall is write speed: writing User Memory is 3-5× slower than EPC because it uses slower EEPROM programming cycles, which must be factored into batch-encoding takt time.

  • EPC is source of truth, User Memory is cache
  • Write recommendation: ASCII + 2-byte CRC
  • Write speed 3-5× slower than EPC
  • Unrecoverable data must not live only in User Memory

Wir verwenden Cookies, um Ihr Surferlebnis zu verbessern, den Website-Traffic zu analysieren und Inhalte zu personalisieren. Klicken Sie auf „Alle akzeptieren“, um allen Cookies zuzustimmen, oder wählen Sie „Nur notwendige“. Weitere Informationen in unserer Datenschutzerklärung für weitere Details.