STMICROELECTRONICS SRT512

SRT512
13.56 MHz short-range contactless memory chip
with 512-bit EEPROM and anticollision functions
Features
■
ISO 14443-2 Type B air interface compliant
■
ISO 14443-3 Type B frame format compliant
■
13.56 MHz carrier frequency
■
847 kHz subcarrier frequency
■
106 Kbit/second data transfer
■
8 bit Chip_ID based anticollision system
■
2 count-down binary counters with automated
anti-tearing protection
■
64-bit unique identifier
■
512-bit EEPROM with write protect feature
■
Read_block and Write_block (32 bits)
■
Internal tuning capacitor
■
1 million erase/write cycles
■
40-year data retention
■
Self-timed programming cycle
■
5 ms typical programming time
– Unsawn wafer
– Bumped and sawn wafer
Applications
■
Transport
July 2009
Doc ID 13277 Rev 4
1/46
www.st.com
1
Contents
SRT512
Contents
1
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2
Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1
3
Data transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1
3.2
4
AC1, AC0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Input data transfer from reader to SRT512 (request frame) . . . . . . . . . . . . 9
3.1.1
Character transmission format for request frame . . . . . . . . . . . . . . . . . . 9
3.1.2
Request start of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.3
Request end of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Output data transfer from SRT512 to reader (answer frame) . . . . . . . . . . 11
3.2.1
Character transmission format for answer frame . . . . . . . . . . . . . . . . . . 11
3.2.2
Answer start of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.3
Answer end of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3
Transmission frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.4
CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Memory mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.1
EEPROM area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.2
32-bit binary counters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3
EEPROM area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.4
System area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.4.1
OTP_Lock_Reg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.4.2
Fixed Chip_ID (Option) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5
SRT512 operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
6
SRT512 states . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2/46
6.1
Power-off state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.2
Ready state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.3
Inventory state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.4
Selected state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.5
Deselected state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Doc ID 13277 Rev 4
SRT512
Contents
6.6
7
Anticollision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.1
8
Deactivated state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Description of an anticollision sequence . . . . . . . . . . . . . . . . . . . . . . . . . 25
SRT512 commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
8.1
Initiate() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.2
Pcall16() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8.3
Slot_marker(SN) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
8.4
Select(Chip_ID) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
8.5
Completion() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
8.6
Reset_to_inventory() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
8.7
Read_block(Addr) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
8.8
Write_block (Addr, Data) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
8.9
Get_UID() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
8.10
Power-on state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9
Maximum rating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
10
DC and AC parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
11
Part numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Appendix A ISO14443 type B CRC calculation . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Appendix B SRT512 command brief . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Doc ID 13277 Rev 4
3/46
List of tables
SRT512
List of tables
Table 1.
Table 2.
Table 3.
Table 4.
Table 5.
Table 6.
Table 7.
Table 8.
Table 9.
Table 10.
4/46
Signal names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Bit description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Standard anticollision sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Command code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
DC characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
AC characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Ordering information scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Doc ID 13277 Rev 4
SRT512
List of figures
List of figures
Figure 1.
Figure 2.
Figure 3.
Figure 4.
Figure 5.
Figure 6.
Figure 7.
Figure 8.
Figure 9.
Figure 10.
Figure 11.
Figure 12.
Figure 13.
Figure 14.
Figure 15.
Figure 16.
Figure 17.
Figure 18.
Figure 19.
Figure 20.
Figure 21.
Figure 22.
Figure 23.
Figure 24.
Figure 25.
Figure 26.
Figure 27.
Figure 28.
Figure 29.
Figure 30.
Figure 31.
Figure 32.
Figure 33.
Figure 34.
Figure 35.
Figure 36.
Figure 37.
Figure 38.
Figure 39.
Figure 40.
Figure 41.
Figure 42.
Figure 43.
Figure 44.
Figure 45.
Figure 46.
Figure 47.
Figure 48.
Logic diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Die floor plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
10% ASK modulation of the received wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
SRT512 request frame character format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Request start of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Request end of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Wave transmitted using BPSK subcarrier modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Answer start of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Answer end of frame. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Example of a complete transmission frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
CRC transmission rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
SRT512 memory mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Lockable EEPROM area (addresses 0 to 4). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Binary counter (addresses 5 to 6). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Count down example (binary format) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
EEPROM (addresses 7 to 15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
System area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
State transition diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
SRT512 Chip_ID description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Description of a possible anticollision sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Example of an anticollision sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Initiate request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Initiate response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Initiate frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Pcall16 request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Pcall16 response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Pcall16 frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Slot_marker request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Slot_marker response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Slot_marker frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . 30
Select request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Select response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Select frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Completion request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Completion response format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Completion frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . 32
Reset_to_inventory request format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Reset_to_inventory response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Reset_to_inventory frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . 33
Read_block request format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Read_block response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Read_block frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . 34
Write_block request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Write_block response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Write_block frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . 35
Get_UID request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Get_UID response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
64-bit unique identifier of SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Doc ID 13277 Rev 4
5/46
List of figures
Figure 49.
Figure 50.
Figure 51.
Figure 52.
Figure 53.
Figure 54.
Figure 55.
Figure 56.
Figure 57.
Figure 58.
Figure 59.
6/46
SRT512
Get_UID frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . 37
SRT512 synchronous timing, transmit and receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Initiate frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Pcall16 frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Slot_marker frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . 43
Select frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Completion frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . 43
Reset_to_inventory frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . 44
Read_block frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . 44
Write_block frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . 44
Get_UID frame exchange between reader and SRT512 . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Doc ID 13277 Rev 4
SRT512
1
Description
Description
The SRT512 is a contactless memory, powered by an externally transmitted radio wave. It
contains a 512-bit user EEPROM fabricated with STMicroelectronics CMOS technology.
The memory is organized as 16 blocks of 32 bits. The SRT512 is accessed via the
13.56 MHz carrier. Incoming data are demodulated and decoded from the received
amplitude shift keying (ASK) modulation signal and outgoing data are generated by load
variation using bit phase shift keying (BPSK) coding of a 847 kHz subcarrier. The received
ASK wave is 10% modulated. The data transfer rate between the SRT512 and the reader is
106 Kbit/s in both reception and emission modes.
The SRT512 follows the ISO 14443-2 Type B recommendation for the radio-frequency
power and signal interface.
Figure 1.
Logic diagram
Power
Supply
Regulator
512-bit
User
EEPROM
AC1
ASK
Demodulator
BPSK
Load
Modulator
AC0
AI13502
The SRT512 is specifically designed for short range applications that need re-usable
products. The SRT512 includes an anticollision mechanism that allows it to detect and
select tags present at the same time within range of the reader.
Table 1.
Signal names
Signal name
Description
AC1
Antenna coil
AC0
Antenna coil
Doc ID 13277 Rev 4
7/46
Signal description
SRT512
The SRT512 contactless EEPROM can be randomly read and written in block mode (each
block containing 32 bits). The instruction set includes the following nine commands:
●
Read_block
●
Write_block
●
Initiate
●
Pcall16
●
Slot_marker
●
Select
●
Completion
●
Reset_to_inventory
●
Get_UID
The SRT512 memory is organized in three areas, as described in Table 12. The first area is
an EEPROM area where all blocks behave as User blocks.
The second area provides two 32-bit binary counters that can only be decremented from
FFFF FFFFh to 0000 0000h, and gives a capacity of 4,294,967,296 units per counter.
The last area is the EEPROM memory. It is accessible by block of 32 bits and includes an
auto-erase cycle during each Write_block command.
Figure 2.
Die floor plan
AC0
AC1
AI09055
2
Signal description
2.1
AC1, AC0
The pads for the antenna coil. AC1 and AC0 must be directly bonded to the antenna.
8/46
Doc ID 13277 Rev 4
SRT512
Data transfer
3
Data transfer
3.1
Input data transfer from reader to SRT512 (request frame)
The reader must generate a 13.56 MHz sinusoidal carrier frequency at its antenna, with
enough energy to “remote-power” the memory. The energy received at the SRT512’s
antenna is transformed into a supply voltage by a regulator, and into data bits by the ASK
demodulator. For the SRT512 to decode correctly the information it receives, the reader
must 10% amplitude-modulate the 13.56 MHz wave before sending it to the SRT512. This is
represented in Figure 3. The data transfer rate is 106 Kbits/s.
Figure 3.
10% ASK modulation of the received wave
DATA BIT TO TRANSMIT
TO THE SRT512
10% ASK MODULATION
OF THE 13.56-MHz WAVE,
GENERATED BY THE READER
Transfer time for one data bit is 1/106 kHz
Ai13503b
3.1.1
Character transmission format for request frame
The SRT512 transmits and receives data bytes as 10-bit characters, with the least
significant bit (b0) transmitted first, as shown in Figure 4. Each bit duration, an ETU
(elementary time unit), is equal to 9.44 µs (1/106 kHz).
These characters, framed by a start of frame (SOF) and an end of frame (EOF), are put
together to form a command frame as shown in Figure 10. A frame includes an SOF,
commands, addresses, data, a CRC and an EOF as defined in the ISO 14443-3 Type B
Standard. If an error is detected during data transfer, the SRT512 does not execute the
command, but it does not generate an error frame.
Figure 4.
SRT512 request frame character format
b0
1 ETU
Start
"0"
b1
LSb
b2
b3
b4
b5
Information Byte
b6
b7
b8
b9
MSb
Stop
"1"
ai07664
Doc ID 13277 Rev 4
9/46
Data transfer
SRT512
Table 2.
Bit description
Bit
Description
b0
Start bit used to synchronize the transmission
b0 = 0
b1 to b8
Information byte (command, address or data)
The information byte is sent with
the least significant bit first
b9
3.1.2
Value
Stop bit used to indicate the end of a character
b9 = 1
Request start of frame
The SOF described in Figure 5 is composed of:
●
one falling edge,
●
followed by 10 ETUs at logic-0,
●
followed by a single rising edge,
●
followed by at least 2 ETUs (and at most 3) at logic-1.
Figure 5.
ETU
Request start of frame
b0
b1
b2
b3
b4
b5
b6
b7
b8
b9
b10
b11
0
0
0
0
0
0
0
0
0
0
1
1
ai07665
3.1.3
Request end of frame
The EOF shown in Figure 6 is composed of:
●
one falling edge,
●
followed by 10 ETUs at logic-0,
●
followed by a single rising edge.
Figure 6.
ETU
Request end of frame
b0
b1
b2
b3
b4
b5
b6
b7
b8
b9
0
0
0
0
0
0
0
0
0
0
ai07666
10/46
Doc ID 13277 Rev 4
SRT512
3.2
Data transfer
Output data transfer from SRT512 to reader (answer frame)
The data bits issued by the SRT512 use back-scattering. Back-scattering is obtained by
modifying the SRT512 current consumption at the antenna (load modulation). The load
modulation causes a variation at the reader antenna by inductive coupling. With appropriate
detector circuitry, the reader is able to pick up information from the SRT512. To improve
load-modulation detection, data is transmitted using a BPSK encoded, 847 kHz subcarrier
frequency ƒs as shown in Figure 7, and as specified in the ISO 14443-2 Type B standard.
Figure 7.
Wave transmitted using BPSK subcarrier modulation
Data Bit to be Transmitted
to the Reader
Or
847-kHz BPSK Modulation
Generated by the SRT512
BPSK Modulation at 847 kHz
During a One-bit Data Transfer Time (1/106 kHz)
3.2.1
AI13504b
Character transmission format for answer frame
The character format is the same as for input data transfer (Figure 4). The transmitted
frames are made up of an SOF, data, a CRC and an EOF (Figure 10). As with an input data
transfer, if an error occurs, the reader does not issue an error code to the SRT512, but it
should be able to detect it and manage the situation. The data transfer rate is
106 Kbits/second.
3.2.2
Answer start of frame
The SOF described in Figure 8 is composed of:
●
followed by 10 ETUs at logic-0
●
followed by 2 ETUs at logic-1
Figure 8.
ETU
Answer start of frame
b0
b1
b2
b3
b4
b5
b6
b7
b8
b9
b10
b11
0
0
0
0
0
0
0
0
0
0
1
1
ai07665
Doc ID 13277 Rev 4
11/46
Data transfer
3.2.3
SRT512
Answer end of frame
The EOF shown in Figure 9 is composed of:
●
followed by 10 ETUs at logic-0,
●
followed by 2 ETUs at logic-1.
Figure 9.
Answer end of frame
ETU
b0
b1
b2
b3
b4
b5
b6
b7
b8
b9
b10
b11
0
0
0
0
0
0
0
0
0
0
1
1
ai07665
3.3
Transmission frame
Between the request data transfer and the answer data transfer, all ASK and BPSK
modulations are suspended for a minimum time of t0 = 128/ƒS. This delay allows the reader
to switch from Transmission to Reception mode. It is repeated after each frame. After t0, the
13.56 MHz carrier frequency is modulated by the SRT512 at 847 kHz for a period of
t1 = 128/ƒS to allow the reader to synchronize. After t1, the first phase transition generated
by the SRT512 forms the start bit (‘0’) of the answer SOF. After the falling edge of the
answer EOF, the reader waits a minimum time, t2, before sending a new request frame to
the SRT512.
Figure 10. Example of a complete transmission frame
Sent by the
Reader
SOF
12 bits
Cmd
Data
CRC
CRC
EOF
10 bits
10 bits
10 bits
10 bits
10 bits
at 106kb/s
SOF
fs=847.5kHz
t DR
Sent by
SRT512
SOF
Sync
t0
t1
128/fs
128/fs
12 bits
Data CRC CRC EOF
10 bits
10 bits
10 bits
12 bits
t2
Input data transfer using ASK
Output data transfer using BPSK
Ai13506b
12/46
Doc ID 13277 Rev 4
SRT512
3.4
Data transfer
CRC
The 16-bit CRC used by the SRT512 is generated in compliance with the ISO14443 type B
recommendation. For further information, please see Appendix A. The initial register
contents are all 1s: FFFFh.
The two-byte CRC is present in every request and in every answer frame, before the EOF.
The CRC is calculated on all the bytes between SOF (not included) and the CRC field.
Upon reception of a request from a reader, the SRT512 verifies that the CRC value is valid.
If it is invalid, the SRT512 discards the frame and does not answer the reader.
Upon reception of an answer from the SRT512, the reader should verify the validity of the
CRC. In case of error, the actions to be taken are the reader designer’s responsibility.
The CRC is transmitted with the least significant byte first and each byte is transmitted with
the least significant bit first.
Figure 11. CRC transmission rules
LSByte
MSByte
LSbit
MSbit
LSbit
CRC 16 (8 bits)
MSbit
CRC 16 (8 bits)
ai07667
Doc ID 13277 Rev 4
13/46
Memory mapping
4
SRT512
Memory mapping
The SRT512 is organized as 16 blocks of 32 bits as shown in Table 12. All blocks are
accessible by the Read_block command. Depending on the write access, they can be
updated by the Write_block command. A Write_block updates all the 32 bits of the block.
Figure 12. SRT512 memory mapping
Block MSB
Addr b31
32-bit block
b16
b15
b14
0
User area
1
User area
2
User area
3
User area
4
User area
5
32 bits binary counter
6
32 bits binary counter
7
User area
8
User area
9
User area
10
User area
11
User area
12
User area
13
User area
14
User area
15
User area
255
OTP_Lock_Reg
1
LSB
b8 b7
b0
Description
lockable
EEPROM
Count down
counter
Lockable
EEPROM
ST Reserved
Fixed Chip_ID
(Option)
System OTP bits
UID0
64 bits UID area
UID1
14/46
Doc ID 13277 Rev 4
ROM
SRT512
4.1
Memory mapping
EEPROM area
Blocks 0 to 4 define a User area. They behave as standard EEPROM blocks, like blocks 7 to
15 as described in Figure 13. Each block can be individually write-protected using the
OTP_Lock_Reg bits of the system area. Once a block has been protected, it can no longer
be unprotected.
Figure 13. Lockable EEPROM area (addresses 0 to 4)
MSb
b31
Block
address
32-bit block
b16 b15 b14
0
User area
1
User area
2
User area
3
User area
4
User area
b8 b7
LSb
b0
Description
Lockable
EEPROM
ai12382b
4.2
32-bit binary counters
The two 32-bit binary counters located at block addresses 5 and 6, respectively, are used to
count down from 232 (4096 million) to 0. The SRT512 uses dedicated logic that only allows
the update of a counter if the new value is lower than the previous one. This feature allows
the application to count down by steps of 1 or more. The initial value is FFFF FFFEh in
counter 5 and, FFFF FFFFh in counter 6. When the value displayed is 0000 0000h, the
counter is empty and cannot be reloaded. The counter is updated by issuing the Write_block
command to block address 5 or 6, depending on which counter is to be updated. The
Write_block command writes the new 32-bit value to the counter block address. Figure 15
shows examples of how the counters operate.
The counter programming cycles are protected by automated antitearing logic. This function
allows the counter value to be protected in case of power down within the programming
cycle. In case of power down, the counter value is not updated and the previous value
continues to be stored.
Blocks 5 and 6 can be write-protected using the OTP_Lock_Reg bits (block 255). Once a
block has been protected, its contents cannot be modified. A protected counter block
behaves like a ROM block.
Figure 14. Binary counter (addresses 5 to 6)
Block
address
MSb
32-bit block
b31
b16 b15 b14
5
32-bit binary counter
6
32-bit binary counter
LSb
b8 b7
Description
b0
Count down
counter
ai12384b
Doc ID 13277 Rev 4
15/46
Memory mapping
SRT512
Figure 15. Count down example (binary format)
b31
b0
Initial data
1
...
1
1
1
1
1
1
1
1
1
1
1
1
1
1-unit decrement
1
...
1
1
1
1
1
1
1
1
1
1
1
1
0
1-unit decrement
1
...
1
1
1
1
1
1
1
1
1
1
1
0
1
1-unit decrement
1
...
1
1
1
1
1
1
1
1
1
1
1
0
0
8-unit decrement
1
...
1
1
1
1
1
1
1
1
1
0
1
0
0
Increment not allowed
1
...
1
1
1
1
1
1
1
1
1
1
0
0
0
ai07661
16/46
Doc ID 13277 Rev 4
SRT512
4.3
Memory mapping
EEPROM area
The 9 blocks between addresses 7 and 15 are EEPROM blocks of 32 bits each (36 bytes in
total). (See Figure 16 for a map of the area.) These blocks can be accessed using the
Read_block and Write_block commands. The Write_block command for the EEPROM area
always includes an auto-erase cycle prior to the write cycle.
Blocks 7 to 15 can be write-protected. Write access is controlled by the 9 bits of the
OTP_Lock_Reg located at block address 255 (see Section 4.4.1: OTP_Lock_Reg for
details). Once protected, these blocks (7 to 15) cannot be unprotected
Figure 16. EEPROM (addresses 7 to 15)
Block
address
MSb
b31
32-bit block
b16 b15 b14
7
User area
8
User area
9
User area
10
User area
11
User area
12
User area
13
User area
14
User area
15
User area
LSb
b8 b7
Description
b0
Lockable
EEPROM
Ai12383b
Doc ID 13277 Rev 4
17/46
Memory mapping
4.4
SRT512
System area
This area is used to modify the settings of the SRT512. It contains 3 registers:
OTP_Lock_Reg, Fixed Chip_ID and ST Reserved. See Figure 17 for a map of this area.
A Write_block command in this area will not erase the previous contents. Selected bits can
thus be set from 1 to 0. All bits previously at 0 remain unchanged. Once all the 32 bits of a
block are at 0, the block is empty and cannot be updated any more.
Figure 17. System area
Block
address
MSB
32-bit block
b31
255
b16 b15 b14
OTP_Lock_Reg
1
ST reserved
LSB
b8 b7
Description
b0
Fixed Chip_ID
(Option)
OTP
ai13505b
4.4.1
OTP_Lock_Reg
The 16 bits, b31 to b16, of the System area (block address 255) are used as
OTP_Lock_Reg bits in the SRT512. They control the write access to the 16 blocks 0 to 15
as follows:
●
When b16 is at 0, block 0 is write-protected
●
When b17 is at 0, block 1 is write-protected
●
When b18 is at 0, block 2 is write-protected
●
When b19 is at 0, block 3 is write-protected
●
When b20 is at 0, block 4 is write-protected
●
When b21 is at 0, block 5 is write-protected
●
When b22 is at 0, block 6 is write-protected
●
When b23 is at 0, block 7 is write-protected
●
When b24 is at 0, block 8 is write-protected
●
When b25 is at 0, block 9 is write-protected
●
When b26 is at 0, block 10 is write-protected
●
When b27 is at 0, block 11 is write-protected
●
When b28 is at 0, block 12 is write-protected
●
When b29 is at 0, block 13 is write-protected
●
When b30 is at 0, block 14 is write-protected
●
When b31 is at 0, block 15 is write-protected.
The OTP_Lock_Reg bits cannot be erased. Once write-protected, the blocks behave like
ROM blocks and cannot be unprotected. After any modification of the OTP_Lock_Reg bits, it
is necessary to send a Select command with a valid Chip_ID to the SRT512 in order to load
the block write protection into the logic.
This bit is set by ST during production tests on customer request. It cannot be modified by
the user.
18/46
Doc ID 13277 Rev 4
SRT512
4.4.2
Memory mapping
Fixed Chip_ID (Option)
The SRT512 is provided with an anticollision feature based on a random 8-bit Chip_ID. Prior
to selecting an SRT512, an anticollision sequence has to be run to search for the Chip_ID of
the SRT512. This is a very flexible feature, however the searching loop requires time to run.
For some applications, much time could be saved by knowing the value of the SRT512
Chip_ID beforehand, so that the SRT512 can be identified and selected directly without
having to run an anticollision sequence. This is why the SRT512 was designed with an
optional mask setting used to program a fixed 8-bit Chip_ID to bits b7 to b0 of the system
area. When the fixed Chip_ID option is used, the random Chip_ID function is disabled.
Doc ID 13277 Rev 4
19/46
SRT512 operation
5
SRT512
SRT512 operation
All commands, data and CRC are transmitted to the SRT512 as 10-bit characters using ASK
modulation. The start bit of the 10 bits, b0, is sent first. The command frame received by the
SRT512 at the antenna is demodulated by the 10% ASK demodulator, and decoded by the
internal logic. Prior to any operation, the SRT512 must have been selected by a Select
command. Each frame transmitted to the SRT512 must start with a start of frame, followed
by one or more data characters, two CRC bytes and the final end of frame. When an invalid
frame is decoded by the SRT512 (wrong command or CRC error), the memory does not
return any error code.
When a valid frame is received, the SRT512 may have to return data to the reader. In this
case, data is returned using BPSK encoding, in the form of 10-bit characters framed by an
SOF and an EOF. The transfer is ended by the SRT512 sending the 2 CRC bytes and the
EOF.
20/46
Doc ID 13277 Rev 4
SRT512
6
SRT512 states
SRT512 states
The SRT512 can be switched into different states. Depending on the current state of the
SRT512, its logic will only answer to specific commands. These states are mainly used
during the anticollision sequence, to identify and to access the SRT512 in a very short time.
The SRT512 provides 6 different states, as described in the following paragraphs and in
Figure 18.
6.1
Power-off state
The SRT512 is in Power-off state when the electromagnetic field around the tag is not
strong enough. In this state, the SRT512 does not respond to any command.
6.2
Ready state
When the electromagnetic field is strong enough, the SRT512 enters the Ready state. After
Power-up, the Chip_ID is initialized with a random value. The whole logic is reset and
remains in this state until an Initiate() command is issued. Any other command will be
ignored by the SRT512.
6.3
Inventory state
The SRT512 switches from the Ready to the Inventory state after an Initiate() command has
been issued. In Inventory state, the SRT512 will respond to any anticollision commands:
Initiate(), Pcall16() and Slot_marker(), and then remain in the Inventory state. It will switch to
the Selected state after a Select(Chip_ID) command is issued, if the Chip_ID in the
command matches its own. If not, it will remain in Inventory state.
6.4
Selected state
In Selected state, the SRT512 is active and responds to all Read_block(), Write_block(), and
Get_UID() commands. When an SRT512 has entered the Selected state, it no longer
responds to anticollision commands. So that the reader can access another tag, the
SRT512 can be switched to the Deselected state by sending a Select(Chip_ID2) with a
Chip_ID that does not match its own, or it can be placed in Deactivated state by issuing a
Completion() command. Only one SRT512 can be in Selected state at a time.
6.5
Deselected state
Once the SRT512 is in Deselected state, only a Select(Chip_ID) command with a Chip_ID
matching its own can switch it back to Selected state. All other commands are ignored.
6.6
Deactivated state
When in this state, the SRT512 can only be turned off. All commands are ignored.
Doc ID 13277 Rev 4
21/46
SRT512 states
SRT512
Figure 18. State transition diagram
Power-off
Out of
field
On field
Ready
Chip_ID8bits = RND
Initiate()
Out of
field
Inventory
Out of
field
Initiate() or Pcall16()
or Slot_marker(SN) or
Select(wrong Chip_ID)
Select(Chip_ID)
Reset_to_inventory()
Out of
field
Select(Chip_ID)
Selected
Deselected
Completion()
Out of
field
Deactivated
Select(
≠ Chip_ID)
Select(Chip_ID)
Read_block()
Write_block()
Get_UID()
AI10794b
22/46
Doc ID 13277 Rev 4
SRT512
7
Anticollision
Anticollision
The SRT512 provides an anticollision mechanism that searches for the Chip_ID of each
device that is present in the reader field range. When known, the Chip_ID is used to select
an SRT512 individually, and access its memory. The anticollision sequence is managed by
the reader through a set of commands described in Section 5: SRT512 operation:
●
Initiate()
●
Pcall16()
●
Slot_marker().
The reader is the master of the communication with one or more SRT512 device(s). It
initiates the tag communication activity by issuing an Initiate(), Pcall16() or Slot_marker()
command to prompt the SRT512 to answer. During the anticollision sequence, it might
happen that two or more SRT512 devices respond simultaneously, so causing a collision.
The command set allows the reader to handle the sequence, to separate SRT512
transmissions into different time slots. Once the anticollision sequence has completed,
SRT512 communication is fully under the control of the reader, allowing only one SRT512 to
transmit at a time.
The Anticollision scheme is based on the definition of time slots during which the SRT512
devices are invited to answer with minimum identification data: the Chip_ID. The number of
slots is fixed at 16 for the Pcall16() command. For the Initiate() command, there is no slot
and the SRT512 answers after the command is issued. SRT512 devices are allowed to
answer only once during the anticollision sequence. Consequently, even if there are several
SRT512 devices present in the reader field, there will probably be a slot in which only one
SRT512 answers, allowing the reader to capture its Chip_ID. Using the Chip_ID, the reader
can then establish a communication channel with the identified SRT512. The purpose of the
anticollision sequence is to allow the reader to select one SRT512 at a time.
The SRT512 is given an 8-bit Chip_ID value used by the reader to select only one among up
to 256 tags present within its field range. The Chip_ID is initialized with a random value
during the Ready state, or after an Initiate() command in the Inventory state.
The four least significant bits (b0 to b3) of the Chip_ID are also known as the
Chip_slot_number. This 4-bit value is used by the Pcall16() and Slot_marker() commands
during the anticollision sequence in the Inventory state.
Figure 19. SRT512 Chip_ID description
b7
b6
b5
b4
b3
b2
b1
b0
8-bit Chip_ID
b0 to b3: Chip_slot_number
ai07668b
Each time the SRT512 receives a Pcall16() command, the Chip_slot_number is given a new
4-bit random value. If the new value is 0000b, the SRT512 returns its whole 8-bit Chip_ID in
its answer to the Pcall16() command. The Pcall16() command is also used to define the slot
number 0 of the anticollision sequence. When the SRT512 receives the Slot_marker(SN)
command, it compares its Chip_slot_number with the Slot_number parameter (SN). If they
match, the SRT512 returns its Chip_ID as a response to the command. If they do not, the
SRT512 does not answer. The Slot_marker(SN) command is used to define all the
anticollision slot numbers from 1 to 15.
Doc ID 13277 Rev 4
23/46
24/46
S
E
PCALL 16
O
O
Request
F
F
Doc ID 13277 Rev 4
1. The value X in the answer Chip_ID means a random hexadecimal character from 0 to F.
Time
Comment
Timing
SRT devices
Reader
t2
t0 + t1
No
collision
<->
S Answer E
O Chip_ID O
X0h
F
F
>
<->
<
Slot 0
S
Slot E
O Marker O
F
F
(1)
t0 + t1
<->
<
Collision
S Answer E
O Chip_ID O
F
F
X1h
S Answer E
O Chip_ID O
X1h
F
F
Slot 1
t2
<->
>
E
S
Slot
O Marker O
F
F
(2)
t3
>
No
Answer
<
<
Slot 2
>
S
O
F
...
...
Slot N
E
O
F
<->
t0 + t1
t2
E
O
F
<->
S
Slot
O Marker
F
(15)
<
S
O
F
No
collision
Answer
Chip_ID
XFh
Slot 15
>
t2
<->
Ai13589
E
O
F
>
Anticollision
SRT512
Figure 20. Description of a possible anticollision sequence
SRT512
Anticollision
7.1
Description of an anticollision sequence
The anticollision sequence is initiated by the Initiate() command which triggers all the
SRT512 devices that are present in the reader field range, and that are in Inventory state.
Only SRT512 devices in Inventory state will respond to the Pcall16() and Slot_marker(SN)
anticollision commands.
A new SRT512 introduced in the field range during the anticollision sequence will not be
taken into account as it will not respond to the Pcall16() or Slot_marker(SN) command
(Ready state). To be considered during the anticollision sequence, it must have received the
Initiate() command and entered the Inventory state.
Table 3 shows the elements of a standard anticollision sequence. (See Figure 21 for an
example.)
Table 3.
Standard anticollision sequence
Send Initiate().
– If no answer is detected, go to step1.
– If only 1 answer is detected, select and access the SRT512. After accessing the SRT512,
deselect the tag and go to step1.
– If a collision (many answers) is detected, go to step2.
Step 1
Init:
Step 2
Slot 0
Step 3
Slot 1
Step 4
Slot 2
Step N
Slop N – If no answer or collision is detected, go to stepN+1.
– If 1 answer is detected, store the Chip_ID, Send Select() and go to stepN+1.
Send Pcall16().
– If no answer or collision is detected, go to step3.
– If 1 answer is detected, store the Chip_ID, Send Select() and go to step3.
Send Slot_marker(1).
– If no answer or collision is detected, go to step4.
– If 1 answer is detected, store the Chip_ID, Send Select() and go to step4.
Send Slot_marker(2).
– If no answer or collision is detected, go to step5.
– If 1 answer is detected, store the Chip_ID, Send Select() and go to step5.
Send Slot_marker(3 up to 14)...
Send Slot_marker(15).
Step 17 Slot 15 – If no answer or collision is detected, go to step18.
– If 1 answer is detected, store the Chip_ID, Send Select() and go to step18.
Step 18
All the slots have been generated and the Chip_ID values should be stored into the
reader memory. Issue the Select(Chip_ID) command and access each identified
SRT512 one by one. After accessing each SRT512, switch them into Deselected or
Deactivated state, depending on the application needs.
– If collisions were detected between Step2 and Step17, go to Step2.
– If no collision was detected between Step2 and Step17, go to Step1.
After each Slot_marker() command, there may be several, one or no answers from the
SRT512 devices. The reader must handle all the cases and store all the Chip_IDs, correctly
decoded. At the end of the anticollision sequence, after Slot_marker(15), the reader can
start working with one SRT512 by issuing a Select() command containing the desired
Chip_ID. If a collision is detected during the anticollision sequence, the reader has to
generate a new sequence in order to identify all unidentified SRT512 devices in the field.
The anticollision sequence can stop when all SRT512 devices have been identified.
Doc ID 13277 Rev 4
25/46
Anticollision
SRT512
Figure 21. Example of an anticollision sequence
Command
Tag 1
Tag 2
Tag 3
Tag 4
Tag 5
Tag 6
Tag 7
Tag 8
Comments
Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID
READY State
28h
75h
40h
01h
02h
FEh
A9h
7Ch
INITIATE ()
40h
13h
3Fh
4Ah
50h
48h
52h
7Ch
45h
12h
30h
43h
55h
43h
53h
73h
PCALL16()
SELECT(30h)
Each tag gets a random Chip_ID
Each tag get a new random Chip_ID
All tags answer: collisions
30h
All CHIP_SLOT_NUMBERs get
a new random value
Slot0: only one answer
30h
Tag3 is identified
SLOT_MARKER(1)
Slot1: no answer
SLOT_MARKER(2)
12h
Slot2: only one answer
SELECT(12h)
12h
Tag2 is identified
43h
SLOT_MARKER(3)
43h
53h
73h
SLOT_MARKER(4)
SLOT_MARKER(5)
Slot3: collisions
Slot4: no answer
45h
55h
Slot5: collisions
SLOT_MARKER(6)
Slot6: no answer
SLOT_MARKER(N)
SlotN: no answer
SLOT_MARKER(F)
SlotF: no answer
All CHIP_SLOT_NUMBERs get
a new random value
Slot0: collisions
PCALL16()
40h
41h
53h
42h
40h
50h
74h
50h
SLOT_MARKER(1)
41h
Slot1: only one answer
SELECT(41h)
41h
Tag4 is identified
SLOT_MARKER(2)
42h
Slot2: only one answer
SELECT(42h)
42h
Tag6 is identified
SLOT_MARKER(3)
53h
Slot3: only one answer
SELECT(53h)
53h
Tag5 is identified
SLOT_MARKER(4)
74h
Slot4: only one answer
SELECT(74h)
74h
Tag8 is identified
SLOT_MARKER(N)
PCALL16()
SlotN: no answer
41h
50h
50h
SELECT(50h)
50h
All CHIP_SLOT_NUMBERs get
a new random value
Slot0: only one answer
Tag7 is identified
41h
Slot1: only one answer but already
found for tag4
43h
SlotN: no answer
All CHIP_SLOT_NUMBERs get
a new random value
Slot0: only one answer
SLOT_MARKER(3)
43h
Slot3: only one answer
SELECT(43h)
43h
Tag1 is identified
SLOT_MARKER(1)
SLOT_MARKER(N)
PCALL16()
All tags are identified
26/46
Doc ID 13277 Rev 4
ai07669
SRT512
8
SRT512 commands
SRT512 commands
See the paragraphs below for a detailed description of the Commands available on the
SRT512. The commands and their hexadecimal codes are summarized in Table 4. A brief is
given in Appendix B.
Table 4.
Command code
Hexadecimal Code
Command
06h-00h
Initiate()
06h-04h
Pcall16()
x6h
Slot_marker (SN)
08h
Read_block(Addr)
09h
Write_block(Addr, Data)
0Bh
Get_UID()
0Ch
Reset_to_inventory
0Eh
Select(Chip_ID)
0Fh
Completion()
Doc ID 13277 Rev 4
27/46
SRT512 commands
8.1
SRT512
Initiate() command
Command code = 06h - 00h
Initiate() is used to initiate the anticollision sequence of the SRT512. On receiving the
Initiate() command, all SRT512 devices in Ready state switch to Inventory state, set a new
8-bit Chip_ID random value, and return their Chip_ID value. This command is useful when
only one SRT512 in Ready state is present in the reader field range. It speeds up the
Chip_ID search process. The Chip_slot_number is not used during Initiate() command
access.
Figure 22. Initiate request format
SOF
Initiate
06h
CRCL
00h
CRCH
8 bits
EOF
8 bits
AI07670b
Request parameter:
●
No parameter
Figure 23. Initiate response format
SOF
Chip_ID
CRCL
8 bits
8 bits
CRCH
EOF
8 bits
AI07671
Response parameter:
●
Chip_ID of the SRT512
Figure 24. Initiate frame exchange between reader and SRT512
Reader
SRT512
SOF
06h
00h
CRCL
CRCH
EOF
<-t0-> <-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13507b
28/46
Doc ID 13277 Rev 4
SRT512
8.2
SRT512 commands
Pcall16() command
Command code = 06h - 04h
The SRT512 must be in Inventory state to interpret the Pcall16() command.
On receiving the Pcall16() command, the SRT512 first generates a new random
Chip_slot_number value (in the 4 least significant bits of the Chip_ID). Chip_slot_number
can take on a value between 0 an 15 (1111b). The value is retained until a new Pcall16() or
Initiate() command is issued, or until the SRT512 is powered off. The new
Chip_slot_number value is then compared with the value 0000b. If they match, the SRT512
returns its Chip_ID value. If not, the SRT512 does not send any response.
The Pcall16() command, used together with the Slot_marker() command, allows the reader
to search for all the Chip_IDs when there are more than one SRT512 device in Inventory
state present in the reader field range.
Figure 25. Pcall16 request format
SOF
Pcall16
06h
CRCH
CRCL
04h
8 bits
EOF
8 bits
AI07673b
Request parameter:
●
No parameter
Figure 26. Pcall16 response format
SOF
Chip_ID
CRCL
8 bits
8 bits
CRCH
EOF
8 bits
AI07671
Response parameter:
●
Chip_ID of the SRT512
Figure 27. Pcall16 frame exchange between reader and SRT512
Reader SOF
SRT512
06h
04h
CRCL
CRCH
EOF
<-t0-> <-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13508b
Doc ID 13277 Rev 4
29/46
SRT512 commands
8.3
SRT512
Slot_marker(SN) command
Command code = x6h
The SRT512 must be in Inventory state to interpret the Slot_marker(SN) command.
The Slot_marker byte code is divided into two parts:
●
b3 to b0: 4-bit command code
with fixed value 6.
●
b7 to b4: 4 bits known as the Slot_number (SN). They assume a value between 1 and
15. The value 0 is reserved by the Pcall16() command.
On receiving the Slot_marker() command, the SRT512 compares its Chip_slot_number
value with the Slot_number value given in the command code. If they match, the SRT512
returns its Chip_ID value. If not, the SRT512 does not send any response.
The Slot_marker() command, used together with the Pcall16() command, allows the reader
to search for all the Chip_IDs when there are more than one SRT512 device in Inventory
state present in the reader field range.
Figure 28. Slot_marker request format
SOF
Slot_marker
CRCH
CRCL
X6h
8 bits
EOF
8 bits
AI07675b
Request parameter:
●
x: Slot number
Figure 29. Slot_marker response format
SOF
Chip_ID
CRCL
8 bits
CRCH
8 bits
EOF
8 bits
AI07671
Response parameters:
●
Chip_ID of the SRT512
Figure 30. Slot_marker frame exchange between reader and SRT512
Reader
SRT512
SOF
X6h
CRCL
CRCH
EOF
<-t0->
<-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13509b
30/46
Doc ID 13277 Rev 4
SRT512
8.4
SRT512 commands
Select(Chip_ID) command
Command code = 0Eh
The Select() command allows the SRT512 to enter the Selected state. Until this command is
issued, the SRT512 will not accept any other command, except for Initiate(), Pcall16() and
Slot_marker(). The Select() command returns the 8 bits of the Chip_ID value. An SRT512 in
Selected state, that receives a Select() command with a Chip_ID that does not match its
own is automatically switched to Deselected state.
Figure 31. Select request format
SOF
Chip_ID
Select
0Eh
CRCL
8 bits
CRCH
8 bits
EOF
8 bits
AI07677b
Request parameter:
●
8-bit Chip_ID stored during the anticollision sequence
Figure 32. Select response format
SOF
Chip_ID
CRCL
8 bits
8 bits
CRCH
EOF
8 bits
AI07671
Response parameters:
●
Chip_ID of the selected tag. Must be equal to the transmitted Chip_ID
Figure 33. Select frame exchange between reader and SRT512
Reader
SRT512
SOF
0Eh
Chip_ID
CRCL
CRCH
EOF
<-t0-> <-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13510b
Doc ID 13277 Rev 4
31/46
SRT512 commands
8.5
SRT512
Completion() command
Command code = 0Fh
On receiving the Completion() command, an SRT512 in Selected state switches to
Deactivated state and stops decoding any new commands. The SRT512 is then locked in
this state until a complete reset (tag out of the field range). A new SRT512 can thus be
accessed through a Select() command without having to remove the previous one from the
field. The Completion() command does not generate a response.
All SRT512 devices not in Selected state ignore the Completion() command.
Figure 34. Completion request format
SOF
Completion
0Fh
CRCL
CRCH
8 bits
8 bits
EOF
AI07679b
Request parameters:
●
No parameter
Figure 35. Completion response format
No Response
AI07680
Figure 36. Completion frame exchange between reader and SRT512
Reader
SOF
0Fh
CRCL
CRCH
EOF
SRT512
No Response
AI13511b
32/46
Doc ID 13277 Rev 4
SRT512
8.6
SRT512 commands
Reset_to_inventory() command
Command code = 0Ch
On receiving the Reset_to_inventory() command, all SRT512 devices in Selected state
revert to Inventory state. The concerned SRT512 devices are thus resubmitted to the
anticollision sequence. This command is useful when two SRT512 devices with the same 8bit Chip_ID happen to be in Selected state at the same time. Forcing them to go through the
anticollision sequence again allows the reader to generates new Pcall16() commands and
so, to set new random Chip_IDs.
The Reset_to_inventory() command does not generate a response.
All SRT512 devices that are not in Selected state ignore the Reset_to_inventory()
command.
Figure 37. Reset_to_inventory request format
SOF
Reset_to_inventory
CRCL
CRCH
0Ch
8 bits
8 bits
EOF
AI07682b
Request parameter:
●
No parameter
Figure 38. Reset_to_inventory response format
No Response
AI07680
Figure 39. Reset_to_inventory frame exchange between reader and SRT512
Reader
SOF
0Ch
CRCL
CRCH
EOF
SRT512
No Response
AI13512b
Doc ID 13277 Rev 4
33/46
SRT512 commands
8.7
SRT512
Read_block(Addr) command
Command code = 08h
On receiving the Read_block command, the SRT512 reads the desired block and returns
the 4 data bytes contained in the block. Data bytes are transmitted with the Least Significant
byte first and each byte is transmitted with the least significant bit first.
The address byte gives access to the 16 blocks of the SRT512 (addresses 0 to 15).
Read_block commands issued with a block address above 15 will not be interpreted and the
SRT512 will not return any response, except for the System area located at address 255.
The SRT512 must have received a Select() command and be switched to Selected state
before any Read_block() command can be accepted. All Read_block() commands sent to
the SRT512 before a Select() command is issued are ignored.
Figure 40. Read_block request format
SOF
Read_block
Address
08h
8 bIts
CRCL
8 bits
CRCH
EOF
8 bits
AI07684b
Request parameter:
●
Address: block addresses from 0 to 15, or 255
Figure 41. Read_block response format
SOF
Data 1
Data 2
Data 3
Data 4
CRCL
CRCH
8 bIts
8 bIts
8 bIts
8 bIts
8 bits
8 bIts
EOF
AI07685b
Response parameters:
●
Data 1: Less significant data byte
●
Data 2: Data byte
●
Data 3: Data byte
●
Data 4: Most significant data byte
Figure 42. Read_block frame exchange between reader and SRT512
Reader SOF 08h Address CRCL CRCH EOF
SRT512
<-t0-> <-t1-> SOF Data 1 Data 2 Data 3 Data 4 CRCL CRCH EOF
AI13513c
34/46
Doc ID 13277 Rev 4
SRT512
8.8
SRT512 commands
Write_block (Addr, Data) command
Command code = 09h
On receiving the Write_block command, the SRT512 writes the 4 bytes contained in the
command to the addressed block, provided that the block is available and not writeprotected. Data bytes are transmitted with the least significant byte first, and each byte is
transmitted with the least significant bit first.
The address byte gives access to the 16 blocks of the SRT512 (addresses 0 to 15).
Write_block commands issued with a block address above 15 will not be interpreted and the
SRT512 will not return any response, except for the System area located at address 255.
The result of the Write_block command is submitted to the addressed block. See the
following paragraphs for a complete description of the Write_block command:
●
Figure 13: Lockable EEPROM area (addresses 0 to 4)
●
Figure 14: Binary counter (addresses 5 to 6).
●
Figure 16: EEPROM (addresses 7 to 15).
The Write_block command does not give rise to a response from the SRT512. The reader
must check after the programming time, tW, that the data was correctly programmed. The
SRT512 must have received a Select() command and be switched to Selected state before
any Write_block command can be accepted. All Write_block commands sent to the SRT512
before a Select() command is issued, are ignored.
Figure 43. Write_block request format
SOF
Write_block
09h
Address
Data 1
Data 2
Data 3
Data 4
CRCL
CRCH
8 bIts
8 bIts
8 bIts
8 bIts
8 bIts
8 bits
8 bIts
EOF
AI07687c
Request parameters:
●
Address: block addresses from 0 to 15, or 255
●
Data 1: Less significant data byte
●
Data 2: Data byte
●
Data 3: Data byte
●
Data 4: Most significant data byte.
Figure 44. Write_block response format
No response
AI07680b
Figure 45. Write_block frame exchange between reader and SRT512
Reader
SOF
09h
Address Data 1 Data 2 Data 3 Data 4 CRCL CRCH EOF
No response
SRT512
AI13514d
Doc ID 13277 Rev 4
35/46
SRT512 commands
8.9
SRT512
Get_UID() command
Command code = 0Bh
On receiving the Get_UID command, the SRT512 returns its 8 UID bytes. UID bytes are
transmitted with the least significant byte first, and each byte is transmitted with the least
significant bit first.
The SRT512 must have received a Select() command and be switched to Selected state
before any Get_UID() command can be accepted. All Get_UID() commands sent to the
SRT512 before a Select() command is issued, are ignored.
Figure 46. Get_UID request format
SOF
Get_UID
CRCL
CRCH
0Bh
8 bits
8 bits
EOF
AI07693b
Request parameter:
●
No parameter
Figure 47. Get_UID response format
SOF
UID 0
UID 1
UID 2
UID 3
8 bits
8 bIts
8 bIts
8 bIts
UID 4
8 bIts
UID 5
8 bIts
UID 6
8 bIts
UID 7
CRCL
CRCH
8 bIts
8 bits
8 bIts
EOF
AI07694
Response parameters:
36/46
●
UID 0: Less significant UID byte
●
UID 1 to UID 6: UID bytes
●
UID 7: Most significant UID byte.
Doc ID 13277 Rev 4
SRT512
SRT512 commands
Unique identifier (UID)
Members of the SRT512 family are uniquely identified by a 64-bit unique identifier (UID).
This is used for addressing each SRT512 device uniquely after the anticollision loop. The
UID complies with ISO/IEC 15963 and ISO/IEC 7816-6. It is a read-only code, and
comprises (as summarized in Figure 48):
●
an 8-bit prefix, with the most significant bits set to D0h
●
an 8-bit IC manufacturer code (ISO/IEC 7816-6/AM1) set to 02h (for
STMicroelectronics)
●
a 6-bit IC code set to 00 1100b = 12d for SRT512
●
a 42-bit unique serial number
Figure 48. 64-bit unique identifier of SRT512
Most significant bits
63
55
47
41
D0h
02h
12d
Least significant bits
0
Unique Serial Number
AI14080
Figure 49. Get_UID frame exchange between reader and SRT512
S
E
Reader O 0Bh CRCL CRCH O
F
F
SRT512
S
E
<-t0-> <-t1-> O UID UID UID UID UID UID UID UID CRCL CRCH O
0
1
2
3
4
5
6
7
F
F
AI13515b
8.10
Power-on state
After power-on, the SRT512 is in the following state:
●
It is in the low-power state.
●
It is in Ready state.
●
It shows highest impedance with respect to the reader antenna field.
●
It will not respond to any command except Initiate().
Doc ID 13277 Rev 4
37/46
Maximum rating
9
SRT512
Maximum rating
Stressing the device above the rating listed in the absolute maximum ratings table may
cause permanent damage to the device. These are stress ratings only and operation of the
device at these or any other conditions above those indicated in the operating sections of
this specification is not implied. Exposure to absolute maximum rating conditions for
extended periods may affect device reliability. Refer also to the STMicroelectronics SURE
Program and other relevant quality documents.
Table 5.
Absolute maximum ratings
Symbol
TSTG
tSTG
ICC
VMAX
Parameter
Wafer
(kept in its antistatic bag)
Storage conditions
Supply current on AC0 / AC1
Input voltage on AC0 / AC1
Machine
VESD
Electrostatic discharge voltage
Human body model(1)
1. Mil. Std. 883 - Method 3015
38/46
model(1)
Doc ID 13277 Rev 4
Min.
Max.
Unit
15
25
°C
23
months
–20
20
mA
–7
7
V
–100
100
V
–1000
1000
V
SRT512
10
DC and AC parameters
DC and AC parameters
Table 6.
Operating conditions
Symbol
TA
Table 7.
Symbol
Parameter
Ambient operating temperature
Min.
Max.
Unit
–20
85
°C
DC characteristics
Parameter
Condition
Min
Typ
Max
Unit
3.5
V
VCC
Regulated voltage
ICC
Supply current (active in read)
VCC = 3.0 V
100
µA
ICC
Supply current (active in write)
VCC = 3.0 V
250
µA
VRET
Backscattering-induced voltage
ISO10373-6
CTUN
Internal tuning capacitor
13.56 MHz
Table 8.
Symbol
fCC
2.5
20
64
pF
AC characteristics(1)
Parameter
Condition
External RF signal frequency
MI=(A-B)/(A+B)
tRFR, tRFF 10% rise and fall times
Minimum pulse width for start bit
tJIT
ASK modulation data jitter
tMIN CD
Minimum time from carrier
generation to first data
Min
Max
13.553 13.567
MICARRIER Carrier modulation index
tRFSBL
mV
MHz
8
14
%
0.8
2.5
µs
ETU = 128/fCC
Coupler to SRT512
Unit
9.44
–2
µs
+2
5
µs
ms
fS
Subcarrier frequency
fCC/16
847.5
kHz
t0
Antenna reversal delay
128/fS
151
µs
t1
Synchronization delay
128/fS
151
µs
t2
Answer to new request delay
14 ETU
132
0
tDR
Time between request characters
Coupler to SRT512
tDA
Time between answer characters
SRT512 to coupler
tW
Programming time for write
µs
57
0
µs
µs
With no auto-erase cycle
(OTP)
3
ms
With auto-erase cycle
(EEPROM)
5
ms
Binary counter decrement
7
ms
1. All timing measurements were performed on a reference antenna with the following characteristics:
External size: 75 mm x 48 mm
Number of turns: 3
Width of conductor: 1 mm
Space between 2 conductors: 0.4 mm
Value of the coil: 1.4 µH
Tuning Frequency: 14.4 MHz.
Doc ID 13277 Rev 4
39/46
DC and AC parameters
SRT512
Figure 50. SRT512 synchronous timing, transmit and receive
ASK Modulated signal from the Reader to the Contactless device
A
tRFF
B
tRFR
ƒcc
tRFSBL
tMIN CD
FRAME Transmission between the reader and the contactless device
tDR
1
tDR
0
DATA
1
EOF
FRAME Transmitted by the reader in ASK
847KHz
FRAME Transmitted by SRT512
in BPSK
t0
SOF
11 0
t1
tDA
DATA
10
DATA
10
tDA
Data jitter on FRAME Transmitted by the reader in ASK
tJIT
tJIT
tJIT
tJIT
tJIT
0
START
tRFSBL
tRFSBL
tRFSBL
tRFSBL
tRFSBL
Ai13516b
40/46
Doc ID 13277 Rev 4
SRT512
11
Part numbering
Part numbering
Table 9.
Ordering information scheme
Example:
SRT512
–
W4
/ 1GE
Device type
SRT512
Package
W4 =180 µm ± 15 µm unsawn wafer
SBN18 = 180 µm ± 15 µm bumped and sawn wafer on 8-inch frame
Customer code
1GE = generic product
xxx = customer code after personalization
Note:
Devices are shipped from the factory with the memory content bits erased to 1.
For a list of available options (speed, package, etc.) or for further information on any aspect
of this device, please contact your nearest ST sales office.
Doc ID 13277 Rev 4
41/46
ISO14443 type B CRC calculation
Appendix A
SRT512
ISO14443 type B CRC calculation
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define BYTE unsigned char
#define USHORT unsigned short
unsigned short UpdateCrc(BYTE ch, USHORT *lpwCrc)
{
ch = (ch^(BYTE)((*lpwCrc) & 0x00FF));
ch = (ch^(ch<<4));
*lpwCrc = (*lpwCrc >> 8)^((USHORT)ch <<
8)^((USHORT)ch<<3)^((USHORT)ch>>4);
return(*lpwCrc);
}
void ComputeCrc(char *Data, int Length, BYTE *TransmitFirst, BYTE
*TransmitSecond)
{
BYTE chBlock; USHORTt wCrc;
wCrc = 0xFFFF; // ISO 3309
do
{
chBlock = *Data++;
UpdateCrc(chBlock, &wCrc);
} while (--Length);
wCrc = ~wCrc; // ISO 3309
*TransmitFirst = (BYTE) (wCrc & 0xFF);
*TransmitSecond = (BYTE) ((wCrc >> 8) & 0xFF);
return;
}
int main(void)
{
BYTE BuffCRC_B[10] = {0x0A, 0x12, 0x34, 0x56}, First, Second, i;
printf("Crc-16 G(x) = x^16 + x^12 + x^5 + 1”);
printf("CRC_B of [ ");
for(i=0; i<4; i++)
printf("%02X ",BuffCRC_B[i]);
ComputeCrc(BuffCRC_B, 4, &First, &Second);
printf("] Transmitted: %02X then %02X.”, First, Second);
return(0);
42/46
Doc ID 13277 Rev 4
SRT512
SRT512 command brief
Appendix B
SRT512 command brief
Figure 51. Initiate frame exchange between reader and SRT512
Reader
SOF
06h
00h
CRCL
CRCH
EOF
SRT512
<-t0-> <-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13507b
Figure 52. Pcall16 frame exchange between reader and SRT512
Reader SOF
06h
04h
CRCL
CRCH
EOF
SRT512
<-t0-> <-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13508b
Figure 53. Slot_marker frame exchange between reader and SRT512
Reader
SOF
X6h
CRCL
CRCH
EOF
SRT512
<-t0->
<-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13509b
Figure 54. Select frame exchange between reader and SRT512
Reader
SOF
0Eh
Chip_ID
CRCL
CRCH
EOF
SRT512
<-t0-> <-t1-> SOF
Chip_ID
CRCL
CRCH
EOF
AI13510b
Figure 55. Completion frame exchange between reader and SRT512
Reader
SOF
0Fh
CRCL
CRCH
EOF
SRT512
No Response
AI13511b
Doc ID 13277 Rev 4
43/46
SRT512 command brief
SRT512
Figure 56. Reset_to_inventory frame exchange between reader and SRT512
Reader
SOF
0Ch
CRCL
CRCH
EOF
SRT512
No Response
AI13512b
Figure 57. Read_block frame exchange between reader and SRT512
Reader SOF 08h Address CRCL CRCH EOF
SRT512
<-t0-> <-t1-> SOF Data 1 Data 2 Data 3 Data 4 CRCL CRCH EOF
AI13513c
Figure 58. Write_block frame exchange between reader and SRT512
Reader
SOF
09h
Address Data 1 Data 2 Data 3 Data 4 CRCL CRCH EOF
No response
SRT512
AI13514d
Figure 59. Get_UID frame exchange between reader and SRT512
S
E
Reader O 0Bh CRCL CRCH O
F
F
SRT512
S
E
<-t0-> <-t1-> O UID UID UID UID UID UID UID UID CRCL CRCH O
0
1
2
3
4
5
6
7
F
F
AI13515b
44/46
Doc ID 13277 Rev 4
SRT512
Revision history
Revision history
Table 10.
Document revision history
Date
Revision
Changes
12-Dec-2006
0.1
22-Feb-2007
1
Document status promoted from Target Specification to Preliminary
Data.
05-Apr-2007
2
Document status promoted from Preliminary Data to full Datasheet.
A3, A4 and A5 antennas added (see Package mechanical on
page 41).
6-bit IC code changed under Unique identifier (UID) on page 37.
CTUN min and max values removed, typical value added in Table 7:
DC characteristics. Small text changes.
All antennas are ECOPACK® compliant.
28-Aug-2008
3
SRT512 products no longer delivered with A3, A4 and A5 antennas.
Table 5: Absolute maximum ratings and Table 9: Ordering
information scheme clarified. Small text changes.
28-Jul-2009
4
Initial counter values corrected in Section 4.2: 32-bit binary counters.
Small text changes.
Initial release.
Doc ID 13277 Rev 4
45/46
SRT512
Please Read Carefully:
Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the
right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any
time, without notice.
All ST products are sold pursuant to ST’s terms and conditions of sale.
Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no
liability whatsoever relating to the choice, selection or use of the ST products and services described herein.
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this
document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products
or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such
third party products or services or any intellectual property contained therein.
UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED
WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS
OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS EXPRESSLY APPROVED IN WRITING BY AN AUTHORIZED ST REPRESENTATIVE, ST PRODUCTS ARE NOT
RECOMMENDED, AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING
APPLICATIONS, NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY,
DEATH, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE
GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER’S OWN RISK.
Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void
any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any
liability of ST.
ST and the ST logo are trademarks or registered trademarks of ST in various countries.
Information in this document supersedes and replaces all information previously supplied.
The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners.
© 2009 STMicroelectronics - All rights reserved
STMicroelectronics group of companies
Australia - Belgium - Brazil - Canada - China - Czech Republic - Finland - France - Germany - Hong Kong - India - Israel - Italy - Japan Malaysia - Malta - Morocco - Philippines - Singapore - Spain - Sweden - Switzerland - United Kingdom - United States of America
www.st.com
46/46
Doc ID 13277 Rev 4