Caratteristiche, struttura e funzionalità dei transponder UHF EPC Class1 Gen2

Riga_Rossa
Inlay RFID UHF di Alien Technology
Tecnologia
RFID UHF passiva (868 MHz)
Data/Revisione
Febbraio 2014 / rev. 1.0
Riferimenti
Transponder RFID Passivi

 


Aree di memoria

I transponder UHF  EPC Class1 Gen2 possono avere 4 banchi di memoria

Struttura memoria transponder UHF EPC C1 G2

Struttura memoria transponder UHF EPC C1 G2

EPC Memory

Contiene il codice EPC del transponder, la cui lunghezza è impostabile all’interno della relativa memoria; per default è ad oggi di 12 byte. In dettaglio, essa contiene:

  • Un CRC di 16 bit calcolato su PC (Protocol Control) ed EPC; attualmente è il complemento a 1 del valore calcolato con il comune algoritmo CRC16.
  • Un Protocol Control (PC) a 16 bit così composto:
    • 5 bits che indicano la lunghezza di PC + EPC
    • 2 bits RFU (002)
    • 9 bits di Numbering System Id (NSI), che può contenere un header EPC Global, oppure un AFI come definito nello standard ISO 15963
  • Un EPC (Electronic Product Code), identificativo dell’oggetto che il tag deve identificare.

Per quanto riguarda l’accesso alla memoria:

  • Memoria non protetta da password di Access: in questo caso, essa è sempre leggibile e scrivibile.
  • Memoria protetta da password di Access: può sempre essere letta, mentre può essere scritta solo tramite password.
  • Memoria protetta da password di Access permanentemente: non è più possibile riscriverla neppure tramite password.

User Memory

Permette di inserire informazioni generiche nel transponder. È opzionale e può contenere i dati specifici assegnati ed organizzati dall’utente. Per quanto riguarda l’accesso alla memoria:

  • Memoria non protetta da password di Access: sempre leggibile e scrivibile.
  • Memoria protetta da password di Access: solo in scrittura, può sempre essere letta.

Reserved memory

Quest’area di memoria contiene le password per il tag:

  • Una password di “Kill” a 32 bit che permette di rendere il tag permanentemente inutilizzabile. Il suo valore di default è zero. Il relativo comando “Kill” può solo essere eseguito se questa password è stata settata, cioè non è quella di default.
  • Una password di “Access” a 32 bit che permette di impostare il tag in uno stato “sicuro”, cioè i suoi blocchi di memoria possono essere acceduti in scrittura tramite la password di access. I comandi di “Access” possono      essere sempre eseguiti, sempre tramite password.

Per quanto riguarda l’accesso alla memoria:

  • Memoria non protetta da password di Access: sempre leggibile e scrivibile senza necessità di fornire alcuna password.
  • Memoria protetta da password di Access: accesso consentito in lettura e scrittura tramite la password di Access. Si possono quindi leggere e modificare le due password utilizzando quest’ultima.
  • Memoria protetta da password di Access permanentemente: accesso negato in lettura neppure fornendo la password di Access.

TID memory

Di sola lettura, contiene informazioni necessarie per l’identificazione del transponder come codice del produttore, modello del chip e, su alcuni modelli, un seriale univoco. In dettaglio, essa contiene:

  • Un Allocation Class Identifier (AC) a 8 bit (che per i tag EPCGlobal ha valore 0xE2)
  • Un Tag Mask-Designer Identifier a 12 bit
  • Un Tag Model Number a 12 bit
  • Il produttore può includere altre informazioni, tra cui per esempio un Serial Number.

[learn_more caption=”La Memoria TID in dettaglio – Clicca qui” state=”close”]

Il codice TID (Transponder ID) identifica il modello del chip ed il produttore. Esso è scritto al momento della produzione e reso non riscrivibile. Può opzionalmente includere una parte seriale per identificare univocamente il chip. Solo alcuni dei maggiori produttori di tag Gen-2 effettuano la serializzazione del codice TID.

Questa memoria è così composta:

  • 32 bit (2 blocchi = 4 Byte) di TID ISO contenenti l’ISO Identifier and Manufacturer Code. Questa parte è obbligatoria e presente in tutti i transponder.
  • Opzionale UID serializzato di lunghezza variabile a seconda del produttore
  • Opzionali 96 bit (6 blocchi = 12 Byte) di Device Configuration.

Leggendo la memoria TID dei transponder e indicando opportunamente i byte da leggere, è possibile vedere anche la memoria “Device Configuration”. Si può notare che alcun byte variano tra due diverse letture. Tuttavia questo è un comportamento normale, poiché in questa area di memoria, direttamente controllata dal tag, sono presenti  informazioni di configurazione e di stato, che possono variare tra lettura successive.

Lo scopo del codice TID dei tag EPC è di identificare il tipo di chip, con i possibili comandi custom e funzionalità opzionali che esso supporta. Per espletare questa funzione, non è necessario che esso sia univoco. Inoltre, il formato del codice TID dei tag EPC non richiede la serializzazione. Quando esso è integrato con un Serial Number univoco, come nel formato ISO 15963, esso identifica univocamente il chip.

La parte TID ISO presente in tutti i transponder, inizia con un identificatore a 8 bit chiamato Allocation Class (AC) come da standard ISO/IEC 15963. Questo standard descrive il meccanismo per garantire l’univocità del codice TID ed attualmente 4 organizzazioni hanno assegnato un AC identifier. L’AC per l’EPCGlobal è 111000102=E2h.

Per i tag con AC 0xE2, lo standard EPC C1 G2 richiede che la memoria TID comprenda un identificatore a 12 bit chiamato “Tag Mask-Designer IDentifier” (Tag MDID), ed un identificatore a 12 bit chiamato “Tag Model Number”. Inoltre, la memoria TID può contenere dati specifici assegnati dal produttore, come un Serial Number. Il contenuto della memoria TID come definito dallo standard EPC è mostrato in figura.

Struttura codice TID all'interno della relativa memoria

In futuro lo standard dovrebbe rendere il blocco in scrittura del codice TID obbligatorio, e definire delle specifiche per la serializzazione dei codici TID. Ciò dovrebbe essere fatto con un codice TID esteso (XTID, Extended Tag Identification Number), che amplia l’attuale formato TID con un Serial Number di 48 bit (o più), ed informazioni circa le funzioni implementate dal tag. Anche se i produttori dei chip possono optare per una versione non serializzata, il nuovo standard dovrebbe portare all’adozione globale di questa nuova TID serializzata.

[/learn_more]

[learn_more caption=”Specifiche tecniche per tipo di chip e produttore – Clicca qui” state=”close”]

Chip type

TID

Suddivisione   della memoria

Alien = 0x003

HIGGS3 E2 00 34 12 EPC Memory 96 bit estendibile fino a 480 (1)
TID Memory 64 bit unique non modificabile
User Memory 512 bit
Reserved Memory 32 bit   Access Password, 32 bit Kill Password
(1)Se si estende la EPC oltre i 96 bit, viene utilizzata   la memoria User che di conseguenza si riduce. La riduzione delle memoria   User avviene con granularità di 4 blocchi ossia di 8 byte. Quindi,   aumentando di 2 byte (non sono possibili EPC con numero di byte dispari)   il codice EPC questo passa da 12byte (96 bit) a 14 byte e la memoria User si   riduce in ogni caso di 8 byte e passa da 64 byte (512 bit) a 56 byte. L’aumento della memoria EPC accorcia la User Memory partendo dal fondo quindi, se si hanno 64 byte di User Memory iniziale e  si   scrivono gli ultimi 8 byte (4 blocchi) in fondo, se si aumenta di 2 byte la   EPC, la User si riduce di 8 byte e si perdono questi ultimi in fondo.
HIGGS4 E2 00 34 14 EPC Memory 128 bit  (1)
TID Memory 64 bit unique non modificabile
User Memory 128 bit (1)
Reserved Memory 32 bit   Access Password, 32 bit Kill Password
(1)Esistono due aree separate di memoria EPC e memoria   User, entrambe di 128 bit. Quindi entrambe possono essere utilizzate con 128   bit di dimensione contemporaneamente (EPC non estensibile tramite   l’incapsulamento di una parte della memoria User).
HIGGS2 E2 00 34 11 Impostando: Map 0 seriale unico di 4 byte; Map 1 64 byte di User

Impinj = 0x001

ImpinJ Monza E2 00 10 xx
ImpinJ Monza 2 E2 00 10 71
ImpinJ Monza 3 E2 00 10 93 4 byte TID
ImpinJ Monza 4 QT E2 80 11 05 Public   Mode
TID 32 bit:   Chip information (cod. Produttore e modello = E2 80 11 05)
EPC Public   96 bit (12 byte): Questo è ri-mappato dalla posizione in cui si trova in TID (dopo i 96 bit di TID in private)
User Memory non visibile
Reserved Memory: 4 byte Access PW, 4 byte Kill PW
Private Mode
TID 96 bit + 96 bit composta da:

  • 32 bit (Chip information = E2 80 11 05)
  • 16 bit TID header
  • 48 bit TID serial
  • 96 bit Public EPC (inizialmente 0, da scrivere a cura dell’operatore)


User Memory 512 bit
EPC Public 96 bit (12 byte)
EPC Private 128 bit (12 byte)
Reserved Memory: 4 byte Access PW, 4 byte Kill PW

ImpinJ Monza 4 U E2 80 11 04 User Memory 512 bit
TID 48 bit seriale + 16 bit TID header
EPC 128 bit (16 byte)
Reserved Memory: 4 byte Access PW, 4 byte Kill PW
ImpinJ Monza 4 E E2 80 11 0C User Memory 128 bit
TID 48 bit seriale + 16 bit TID header
EPC 496 bit (62 byte)
Reserved Memory: 4 byte Access PW, 4 byte Kill PW
ImpinJ Monza 4 D E2 80 11 00 User Memory 32 bit
TID 48 bit  seriale + 16 bit TID header
EPC 128   bit (16 byte)
Reserved Memory: 4 byte Access PW, 4 byte Kill PW
ImpinJ Monza 5 E2 80.11 30
ImpinJ Monza ID E2 00 10 61

NXP = 0x006

NXP U-CODE G2XL E2 00  60 04    TID Memory: 32 bit Identificativo Chip, 32 bit Unique Serial Number
Reserved Memory: 64 bit
EPC Memory: 240 bit
NXP U-CODE G2XM E2 00  60 03    TID Memory: 32 bit Identificativo Chip, 32 bit Unique Serial Number
Reserved Memory: 64 bit
EPC Memory: 240 bit
User Memory: 512 bit
  Sia per G2XM che per G2XL: EPC, User possono essere   protette (permanente o no) solo in scrittura e possono essere lette senza   password. Esiste un comando custom chiamato “Read Protect Command”   che, se attivato, impedisce la lettura di tutta la memoria del tag (EPC,   User, Reserved e TID). Quando Read Protect è attivato, il tag non viene   proprio identificato neppure dall’inventory. Si deve eseguire il   comando “Reset   Read Protect” con pasword   per risvegliarlo (resetta tutte le password   eventualmente   impostate).
NXP U-CODE G2iM E2 00  68 0A TID Memory: 96 bit (including permalocked unique 48 bit serial number; 16bit   unalterable XTID-header); 112 bit User TID
EPC Memory: 256 bit
User Memory: 512 bit
Reserved Memory: 32 bit access pw, 32 bit kill pw
NXP U-CODE G2iM+ E2 00  68 0B    TID Memory: 96 bit (including permalocked unique 48 bit serial number; 16bit   unalterable XTID-header); 112 bit User TID
EPC Memory: 128 bit up to 448 bit
User Memory: 320 up to 640 bit
Reserved Memory: 32 bit access pw, 32 bit kill pw
NXP U-CODE G2iL E2 00  68 06 TID Memory: 32 bit TID ISO + 32 bit unique serial number
Reserved Memory: 64 bitEPC: 128 bit
NXP U-CODE G2iL+ E2 00  68 07 TID Memory: 64 bit che include 32 bit TID ISO + 32 bit unique serial number
Reserved Memory: 64 bit
EPC Memory: 128 bit

[/learn_more]

Riga_Grigia