0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
SRIX4K-SBN181GE

SRIX4K-SBN181GE

  • 厂商:

    STMICROELECTRONICS(意法半导体)

  • 封装:

  • 描述:

    SRIX4K-SBN181GE - 13.56 MHz short-range contactless memory chip with 4096-bit EEPROM, anticollision ...

  • 数据手册
  • 价格&库存
SRIX4K-SBN181GE 数据手册
SRIX4K 13.56 MHz short-range contactless memory chip with 4096-bit EEPROM, anticollision and anti-clone 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 France Telecom proprietary anti-clone function 8 bit Chip_ID based anticollision system 2 count-down binary counters with automated antitearing protection 64-bit unique identifier 4096-bit EEPROM with write protect feature Read_block and Write_block (32 bits) Internal tuning capacitor 1million erase/write cycles 40-year data retention Self-timed programming cycle 5 ms typical programming time – Unsawn wafer – Bumped and sawn wafer August 2008 Rev 8 1/47 www.st.com 1 Contents SRIX4K Contents 1 2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.0.1 AC1, AC0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3 Data transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.1 Input data transfer from the reader to the SRIX4K (request frame) . . . . . . 9 3.1.1 3.1.2 3.1.3 Character transmission format for request frame . . . . . . . . . . . . . . . . . . 9 Request start of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Request end of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.2 Output data transfer from the SRIX4K to the reader (answer frame) . . . . 11 3.2.1 3.2.2 3.2.3 Character transmission format for answer frame . . . . . . . . . . . . . . . . . . 11 Answer start of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Answer end of frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.3 3.4 Transmission frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4 Memory mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.1 4.2 4.3 4.4 Resettable OTP area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 32-bit binary counters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 EEPROM area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 System area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.4.1 4.4.2 OTP_Lock_Reg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Fixed Chip_ID (Option) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 5 6 SRIX4K operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 SRIX4K states . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 6.1 6.2 6.3 6.4 6.5 Power-off state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Ready state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Inventory state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Selected state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Deselected state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2/47 SRIX4K Contents 6.6 Deactivated state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 7 Anticollision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.1 Description of an anticollision sequence . . . . . . . . . . . . . . . . . . . . . . . . . 25 8 9 Anti-clone function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 SRIX4K commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9 9.10 Initiate() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Pcall16() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Slot_marker(SN) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Select(Chip_ID) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Completion() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Reset_to_inventory() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Read_block(Addr) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Write_block (Addr, Data) command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Get_UID() command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Power-on state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 10 11 12 Maximum rating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 DC and ac parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Part numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Appendix A ISO 14443 Type B CRC calculation . . . . . . . . . . . . . . . . . . . . . . . . . 43 Appendix B SRIX4K command summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3/47 List of tables SRIX4K List of tables Table 1. Table 2. Table 3. Table 4. Table 5. Table 6. Table 7. Table 8. Table 9. Table 10. Signal names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Bit description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Standard anticollision sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Command code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 DC characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 AC characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Ordering information scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4/47 SRIX4K 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 SRIX4K 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 SRIX4K memory mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Resettable OTP area (addresses 0 to 4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Write_block update in Standard mode (binary format) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Write_block update in Reload mode (binary format). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Binary counter (addresses 5 to 6). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Count down example (binary format) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 EEPROM (addresses 7 to 127) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 System area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 State transition diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 SRIX4K Chip_ID description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Description of a possible anticollision sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Example of an anticollision sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Initiate request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Initiate response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Initiate frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Pcall16 request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Pcall16 response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Pcall16 frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Slot_marker request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Slot_marker response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Slot_marker frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 31 Select request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Select response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Select frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Completion request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Completion response format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Completion frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 33 Reset_to_inventory request format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Reset_to_inventory response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Reset_to_inventory frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . 34 Read_block request format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Read_block response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Read_block frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 35 Write_block request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Write_block response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Write_block frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 37 Get_UID request format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5/47 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. Figure 60. Figure 61. SRIX4K Get_UID response format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 64-bit unique identifier of the SRIX4K. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Get_UID frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . 38 SRIX4K synchronous timing, transmit and receive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Initiate frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Pcall16 frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Slot_marker frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 44 Select frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Completion frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 44 Reset_to_inventory frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . 45 Read_block frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 45 Write_block frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . 45 Get_UID frame exchange between reader and SRIX4K . . . . . . . . . . . . . . . . . . . . . . . . . . 45 6/47 SRIX4K Description 1 Description The SRIX4K is a contactless memory, powered by an externally transmitted radio wave. It contains a 4096-bit user EEPROM fabricated with STMicroelectronics CMOS technology. The memory is organized as 128 blocks of 32 bits. The SRIX4K 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 SRIX4K and the reader is 106 Kbit/s in both reception and emission modes. The SRIX4K follows the ISO 14443-2 Type B recommendation for the radio-frequency power and signal interface. Figure 1. Logic diagram SRIX4K Power Supply Regulator 4 Kbit User EEPROM ASK Demodulator BPSK Load Modulator AC1 AC0 AI06829 The SRIX4K is specifically designed for short range applications that need secure and reusable products. The SRIX4K includes an anticollision mechanism that allows it to detect and select tags present at the same time within range of the reader. The anticollision is based on a probabilistic scanning method using slot markers. The SRIX4K provides an anticlone function which allows its authentication. Using the STMicroelectronics single chip coupler, CRX14, it is easy to design a reader with the authentication capability and to build a system with a high level of security. Table 1. Signal names Signal name AC1 AC0 Antenna coil Antenna coil Description 7/47 Signal description SRIX4K The SRIX4K contactless EEPROM can be randomly read and written in block mode (each block containing 32 bits). The instruction set includes the following ten commands: ● ● ● ● ● ● ● ● ● ● Read_block Write_block Initiate Pcall16 Slot_marker Select Completion Reset_to_inventory Authenticate Get_UID The SRIX4K memory is organized in three areas, as described in Figure 12. The first area is a resettable OTP (one time programmable) area in which bits can only be switched from 1 to 0. Using a special command, it is possible to erase all bits of this area to 1. The second area provides two 32-bit binary counters which 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 2.0.1 Signal description AC1, AC0 The pads for the antenna coil. AC1 and AC0 must be directly bonded to the antenna. 8/47 SRIX4K Data transfer 3 3.1 Data transfer Input data transfer from the reader to the SRIX4K (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 SRIX4K’s antenna is transformed into a supply voltage by a regulator, and into data bits by the ASK demodulator. For the SRIX4K to decode correctly the information it receives, the reader must 10% amplitude-modulate the 13.56 MHz wave before sending it to the SRIX4K. 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 SRIX4K 10% ASK MODULATION OF THE 13.56MHz WAVE, GENERATED BY THE READER Transfer time for one data bit is 1/106 kHz AI05729 3.1.1 Character transmission format for request frame The SRIX4K 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 SRIX4K does not execute the command, but it does not generate an error frame. Figure 4. SRIX4K request frame character format b0 1 ETU Start "0" b1 LSb b2 b3 b4 b5 b6 b7 b8 MSb b9 Stop "1" Information Byte ai07664 9/47 Data transfer Table 2. Bit b0 b1 to b8 b9 SRIX4K Bit description Description Start bit used to synchronize the transmission Information byte (command, address or data) Stop bit used to indicate the end of a character Value b0 = 0 The information byte is sent with the least significant bit first b9 = 1 3.1.2 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. Request start of frame b0 ETU 0 b1 0 b2 0 b3 0 b4 0 b5 0 b6 0 b7 0 b8 0 b9 0 b10 1 b11 1 Figure 5. 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. Request end of frame b0 ETU 0 b1 0 b2 0 b3 0 b4 0 b5 0 b6 0 b7 0 b8 0 b9 0 Figure 6. ai07666 10/47 SRIX4K Data transfer 3.2 Output data transfer from the SRIX4K to the reader (answer frame) The data bits issued by the SRIX4K use retro-modulation. Retro-modulation is obtained by modifying the SRIX4K 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 SRIX4K. 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 847kHz BPSK Modulation Generated by the SRIX4K BPSK Modulation at 847kHz During a One-bit Data Transfer Time (1/106kHz) AI05730 3.2.1 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 SRIX4K, 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 Answer start of frame b0 ETU 0 b1 0 b2 0 b3 0 b4 0 b5 0 b6 0 b7 0 b8 0 b9 0 b10 1 b11 1 Figure 8. ai07665 11/47 Data transfer SRIX4K 3.2.3 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. Answer end of frame b0 ETU 0 b1 0 b2 0 b3 0 b4 0 b5 0 b6 0 b7 0 b8 0 b9 0 b10 1 b11 1 Figure 9. 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 SRIX4K 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 SRIX4K 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 SRIX4K. Figure 10. Example of a complete transmission frame Sent by the Reader SOF 12 bits Cmd 10 bits Data 10 bits CRC 10 bits CRC 10 bits EOF 10 bits SOF at 106kb/s Sent by the SRIX4K t DR fs=847.5kHz Sync SOF 12 bits Data CRC CRC EOF 10 bits 10 bits 10 bits 12 bits t0 128/fs t1 128/fs t2 Input data transfer using ASK Output data transfer using BPSK AI05731 12/47 SRIX4K Data transfer 3.4 CRC The 16-bit CRC used by the SRIX4K is generated in compliance with the ISO 14443 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 SRIX4K verifies that the CRC value is valid. If it is invalid, the SRIX4K discards the frame and does not answer the reader. Upon reception of an Answer from the SRIX4K, 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 LSbit MSbit LSbit MSByte MSbit CRC 16 (8 bits) CRC 16 (8 bits) ai07667 13/47 Memory mapping SRIX4K 4 Memory mapping The SRIX4K is organized as 128 blocks of 32 bits as shown in Figure 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. SRIX4K memory mapping Block Addr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 127 Msb b31 b24 b23 32-bit block b16 b15 32 bits Boolean area 32 bits Boolean area 32 bits Boolean area 32 bits Boolean area 32 bits Boolean area 32 bits binary counter 32 bits binary counter User area User area User area User area User area User area User area User area User area User area User area User area b8 b7 Lsb b0 Description Resettable OTP bits Count down counter Lockable EEPROM EEPROM 255 OTP_Lock_Reg ST Reserved Fixed Chip_ID (Option) System OTP bits UID0 64 bits UID area UID1 ROM 14/47 SRIX4K Memory mapping 4.1 Resettable OTP area In this area contains five individual 32-bit Boolean words (see Figure 13 for a map of the area). A Write_block command will not erase the previous contents of the block as the write cycle is not preceded by an auto-erase cycle. This feature can be used to reset selected bits from 1 to 0. All bits previously at 0 remain unchanged. When the 32 bits of a block are all at 0, the block is empty, and cannot be updated any more. See Figure 14 and Figure 15 for examples of the result of the Write_block command in the resettable OTP area. Figure 13. Resettable OTP area (addresses 0 to 4) Block address 0 1 2 3 4 MSb b31 32-bit block b16 b15 32-bit Boolean area 32-bit Boolean area 32-bit Boolean area 32-bit Boolean area 32-bit Boolean area ai07657b b24 b23 b8 b7 LSb b0 Description Resettable OTP bit Figure 14. Write_block update in Standard mode (binary format) b31 Previous data stored in block 1 ... 1 1 0 1 0 1 1 1 1 1 0 1 b0 1 Data to be written 1 ... 1 0 0 1 0 1 1 0 0 1 1 1 1 New data stored in block 1 ... 1 0 0 1 0 1 1 0 0 1 0 1 1 ai07658 The five 32-bit blocks making up the resettable OTP area can be erased in one go by adding an auto-erase cycle to the Write_block command. An auto-erase cycle is added each time the SRIX4K detects a Reload command. The Reload command is implemented through a specific update of the 32-bit binary counter located at block address 6 (see Section 4.2: 32bit binary counters for details). 15/47 Memory mapping Figure 15. Write_block update in Reload mode (binary format) b31 Previous data stored in block 1 ... 1 1 0 1 0 1 1 1 1 1 0 1 SRIX4K b0 1 Data to be written 1 ... 1 1 1 1 0 1 1 0 0 1 1 1 1 New data stored in block 1 ... 1 1 1 1 0 1 1 0 0 1 1 1 1 ai07659 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 SRIX4K 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 in Counter 5 is FFFF FFFEh and is 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 17 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. Figure 16. Binary counter (addresses 5 to 6) MSb b31 32-bit block b16 b15 32-bit binary counter 32-bit binary counter LSb b0 Block Address 5 6 b24 b23 b8 b7 Description Count down Counter ai07660b 16/47 SRIX4K Figure 17. Count down example (binary format) b31 Initial data 1 ... 1 1 1 1 1 1 1 1 1 Memory mapping b0 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 The counter with block address 6 controls the Reload command used to reset the resettable OTP area (addresses 0 to 4). Bits b31 to b21 act as an 11-bit Reload counter; whenever one of these 11 bits is updated, the SRIX4K detects the change and adds an Erase cycle to the Write_block command for locations 0 to 4 (see Section 4.1: Resettable OTP area). The Erase cycle remains active until a Power-off or a Select command is issued. The SRIX4K’s resettable OTP area can be reloaded up to 2,047 times (211-1). 4.3 EEPROM area The 121 blocks between addresses 7 and 127 are EEPROM blocks of 32 bits each (484 bytes in total). (See Figure 18 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 8 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. 17/47 Memory mapping Figure 18. EEPROM (addresses 7 to 127) Block address 7 8 9 10 11 12 13 14 15 16 ... 127 MSb b31 32-bit block b16 b15 User area User area User area User area User area User area User area User area User area User area User area User area LSb b0 SRIX4K b24 b23 b8 b7 Description Lockable EEPROM EEPROM Ai07662c 4.4 System area This area is used to modify the settings of the SRIX4K. It contains 3 registers: OTP_Lock_Reg, Fixed Chip_ID and ST Reserved. See Figure 19 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 19. System area MSb b31 b24 b23 32-bit block b16 b15 ST reserved b8 b7 LSb b0 Block address Description 255 OTP_Lock_Reg Fixed Chip_ID (Option) OTP ai07663b 18/47 SRIX4K Memory mapping 4.4.1 OTP_Lock_Reg The 8 bits, b31 to b24, of the System area (block address 255) are used as OTP_Lock_Reg bits in the SRIX4K. They control the write access to the 9 EEPROM blocks with addresses 7 to 15 as follows: ● ● ● ● ● ● ● ● When b24 is at 0, blocks 7 and 8 are 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, EEPROM blocks behave like ROM blocks and cannot be unprotected. 4.4.2 Fixed Chip_ID (Option) The SRIX4K is provided with an anticollision feature based on a random 8-bit Chip_ID. Prior to selecting an SRIX4K, an anticollision sequence has to be run to search for the Chip_ID of the SRIX4K. 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 SRIX4K Chip_ID beforehand, so that the SRIX4K can be identified and selected directly without having to run an anticollision sequence. This is why the SRIX4K 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. 19/47 SRIX4K operation SRIX4K 5 SRIX4K operation All commands, data and CRC are transmitted to the SRIX4K as 10-bit characters using ASK modulation. The start bit of the 10 bits, b0, is sent first. The command frame received by the SRIX4K at the antenna is demodulated by the 10% ASK demodulator, and decoded by the internal logic. Prior to any operation, the SRIX4K must have been selected by a Select command. Each frame transmitted to the SRIX4K 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 SRIX4K (wrong command or CRC error), the memory does not return any error code. When a valid frame is received, the SRIX4K 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 SRIX4K sending the 2 CRC bytes and the EOF. 20/47 SRIX4K SRIX4K states 6 SRIX4K states The SRIX4K can be switched into different states. Depending on the current state of the SRIX4K, its logic will only answer to specific commands. These states are mainly used during the anticollision sequence, to identify and to access the SRIX4K in a very short time. The SRIX4K provides 6 different states, as described in the following paragraphs and in Figure 20. 6.1 Power-off state The SRIX4K is in Power-off state when the electromagnetic field around the tag is not strong enough. In this state, the SRIX4K does not respond to any command. 6.2 Ready state When the electromagnetic field is strong enough, the SRIX4K 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 SRIX4K. 6.3 Inventory state The SRIX4K switches from the Ready to the Inventory state after an Initiate() command has been issued. In Inventory state, the SRIX4K 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 SRIX4K is active and responds to all Read_block(), Write_block(), Authenticate() and Get_UID() commands. When an SRIX4K has entered the Selected state, it no longer responds to anticollision commands. So that the reader can access another tag, the SRIX4K 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 SRIX4K can be in Selected state at a time. 6.5 Deselected state Once the SRIX4K 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 SRIX4K can only be turned off. All commands are ignored. 21/47 SRIX4K states Figure 20. State transition diagram SRIX4K Power-off Out of field On field Ready Chip_ID8bits = RND Initiate() Out of field Out of field Inventory Select(Chip_ID) Reset_to_inventory() Out of field Select(Chip_ID) Deselected Select( Selected Completion() Out of field Deactivated Initiate() or Pcall16() or Slot_marker(SN) or Select(wrong Chip_ID) ≠ Chip_ID) Select(Chip_ID) Read_block() Write_block() Authenticate() Get_UID() AI09053b 22/47 SRIX4K Anticollision 7 Anticollision The SRIX4K 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 SRIX4K individually, and access its memory. The anticollision sequence is managed by the reader through a set of commands described in Section 5: SRIX4K operation: ● ● ● Initiate() Pcall16() Slot_marker(). The reader is the master of the communication with one or more SRIX4K device(s). It initiates the tag communication activity by issuing an Initiate(), Pcall16() or Slot_marker() command to prompt the SRIX4K to answer. During the anticollision sequence, it might happen that two or more SRIX4K devices respond simultaneously, so causing a collision. The command set allows the reader to handle the sequence, to separate SRIX4K transmissions into different time slots. Once the anticollision sequence has completed, SRIX4K communication is fully under the control of the reader, allowing only one SRIX4K to transmit at a time. The Anticollision scheme is based on the definition of time slots during which the SRIX4K 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 SRIX4K answers after the command is issued. SRIX4K devices are allowed to answer only once during the anticollision sequence. Consequently, even if there are several SRIX4K devices present in the reader field, there will probably be a slot in which only one SRIX4K answers, allowing the reader to capture its Chip_ID. Using the Chip_ID, the reader can then establish a communication channel with the identified SRIX4K. The purpose of the anticollision sequence is to allow the reader to select one SRIX4K at a time. The SRIX4K 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 21. SRIX4K Chip_ID description b7 b6 b5 b4 b3 8-bit Chip_ID b0 to b3: Chip_slot_number ai07668b b2 b1 b0 Each time the SRIX4K receives a Pcall16() command, the Chip_slot_number is given a new 4-bit random value. If the new value is 0000b, the SRIX4K 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 SRIX4K receives the Slot_marker(SN) command, it compares its Chip_slot_number with the Slot_number parameter (SN). If they match, the SRIX4K returns its Chip_ID as a response to the command. If they do not, the SRIX4K does not answer. The Slot_marker(SN) command is used to define all the anticollision slot numbers from 1 to 15. 23/47 24/47 Slot 0 Slot 1 Slot 2 Slot N Slot 15 Anticollision < > S O F Slot Marker (2) ... S O F S O F Answer Chip_ID X1h E O F E O F Slot Marker (15) > < > < < > Reader S O F S O F Slot Marker (1) S O F E O F PCALL 16 Request E O F E O F SRIX devices S O F Answer Chip_ID X0h E O F S Answer O Chip_ID F X1h E O F ... E O F S O F Answer Chip_ID XFh E O F t2 t0 + t1 t2 < t3 > t2 t0 + t 1 t2 Figure 22. Description of a possible anticollision sequence Timing t0 + t1 1. The value X in the Answer Chip_ID means a random hexadecimal character from 0 to F. No collision Collision No Answer No collision Comment Time > Ai09035b SRIX4K SRIX4K Anticollision 7.1 Description of an anticollision sequence The anticollision sequence is initiated by the Initiate() command which triggers all the SRIX4K devices that are present in the reader field range, and that are in Inventory state. Only SRIX4K devices in Inventory state will respond to the Pcall16() and Slot_marker(SN) anticollision commands. A new SRIX4K 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 23 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 SRIX4K. After accessing the SRIX4K, deselect the tag and go to step1. – If a collision (many answers) is detected, go to step2. 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. Step 1 Init: Step 2 Slot 0 Step 3 Slot 1 Step 4 Slot 2 Step N Send Slot_marker(3 up to 14) ... 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 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. 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 SRIX4K one by one. After accessing each SRIX4K, 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. Step 18 After each Slot_marker() command, there may be several, one or no answers from the SRIX4K 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 SRIX4K 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 SRIX4K devices in the field. The anticollision sequence can stop when all SRIX4K devices have been identified. 25/47 Anticollision Figure 23. Example of an anticollision sequence Command READY State INITIATE () PCALL16() SELECT(30h) SLOT_MARKER(1) SLOT_MARKER(2) SELECT(12h) SLOT_MARKER(3) SLOT_MARKER(4) SLOT_MARKER(5) SLOT_MARKER(6) SLOT_MARKER(N) SLOT_MARKER(F) PCALL16() SLOT_MARKER(1) SELECT(41h) SLOT_MARKER(2) SELECT(42h) SLOT_MARKER(3) SELECT(53h) SLOT_MARKER(4) SELECT(74h) SLOT_MARKER(N) PCALL16() SELECT(50h) SLOT_MARKER(1) SLOT_MARKER(N) PCALL16() SLOT_MARKER(3) SELECT(43h) 43h 41h 41h 50h 50h 50h 53h 53h 74h 74h 40h 40h 41h 41h 42h 42h 41h 53h 42h 50h 50h 74h 45h 55h 12h 12h 43h 43h 53h 73h Tag 1 Tag 2 Tag 3 Tag 4 Tag 5 Tag 6 Tag 7 Tag 8 Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID 28h 40h 45h 75h 13h 12h 40h 3Fh 30h 30h 30h 01h 4Ah 43h 02h 50h 55h FEh 48h 43h A9h 52h 53h 7Ch 7Ch 73h Comments SRIX4K Each tag gets a random Chip_ID Each tag get a new random Chip_ID. All tags answer: collisions All CHIP_SLOT_NUMBERs get a new random value Slot0: only one answer Tag3 is identified Slot1: no answer Slot2: only one answer Tag2 is identified Slot3: collisions Slot4: no answer Slot5: collisions Slot6: no answer SlotN: no answer SlotF: no answer All CHIP_SLOT_NUMBERs get a new random value Slot0: collisions Slot1: only one answer Tag4 is identified Slot2: only one answer Tag6 is identified Slot3: only one answer Tag5 is identified Slot4: only one answer Tag8 is identified SlotN: no answer All CHIP_SLOT_NUMBERs get a new random value Slot0: only one answer Tag7 is identified Slot1: only one answer but already found for tag4 SlotN: no answer All CHIP_SLOT_NUMBERs get a new random value Slot0: only one answer Slot3: only one answer Tag1 is identified All tags are identified 43h 43h ai07669 26/47 SRIX4K Anti-clone function 8 Anti-clone function The SRIX4K provides an anti-clone function that allows the application to authentication the device. This function uses reserved data that is stored in the SRIX4K memory at its time of manufacture. The Authentication system is based on a proprietary challenge/response mechanism which allows the application software to authenticate any member of the secure memory tag SRXxxx family from STMicroelectronics (of which the SRIX4K is the prime example). A reader system, based on the ST CRX14 chip coupler, can check each SRIX4K tag for authenticity, and protect the application system against silicon copies or emulators. A complete description of the Authentication system is available under non disclosure agreement (NDA) with STMicroelectronics. For more details about this SRIX4K function, please contact your nearest STMicroelectronics sales office. 27/47 SRIX4K commands SRIX4K 9 SRIX4K commands See the paragraphs below for a detailed description of the commands available on the SRIX4K. The commands and their hexadecimal codes are summarized in Table 4. A brief is given in Appendix B. Table 4. Command code Hexadecimal Code 06h-00h 06h-04h x6h 08h 09h 0Ah 0Bh 0Ch 0Eh 0Fh Initiate() Pcall16() Slot_marker (SN) Read_block(Addr) Write_block(Addr, Data) Authenticate(RND) Get_UID() Reset_to_inventory Select(Chip_ID) Completion() Command 28/47 SRIX4K SRIX4K commands 9.1 Initiate() command Command code = 06h - 00h Initiate() is used to initiate the anticollision sequence of the SRIX4K. On receiving the Initiate() command, all SRIX4K 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 SRIX4K 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 24. Initiate request format SOF 06h Initiate 00h CRCL 8 bits CRCH 8 bits EOF AI07670b Request parameter: ● No parameter Figure 25. Initiate response format SOF Chip_ID 8 bits CRCL 8 bits CRCH 8 bits EOF AI07671 Response parameter: ● Chip_ID of the SRIX4K Figure 26. Initiate frame exchange between reader and SRIX4K Reader SRIX4K SOF 06h 00h CRCL CRCH EOF SOF Chip_ID CRCL CRCH EOF AI07672b 29/47 SRIX4K commands SRIX4K 9.2 Pcall16() command Command code = 06h - 04h The SRIX4K must be in Inventory state to interpret the Pcall16() command. On receiving the Pcall16() command, the SRIX4K 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 SRIX4K is powered off. The new Chip_slot_number value is then compared with the value 0000b. If they match, the SRIX4K returns its Chip_ID value. If not, the SRIX4K 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 SRIX4K device in Inventory state present in the reader field range. Figure 27. Pcall16 request format SOF 06h Pcall16 04h CRCL 8 bits CRCH 8 bits EOF AI07673b Request parameter: ● No parameter Figure 28. Pcall16 response format SOF Chip_ID 8 bits CRCL 8 bits CRCH 8 bits EOF AI07671 Response parameter: ● Chip_ID of the SRIX4K Figure 29. Pcall16 frame exchange between reader and SRIX4K Reader SRIX4K SOF 06h 04h CRCL CRCH EOF SOF Chip_ID CRCL CRCH EOF AI07674b 30/47 SRIX4K SRIX4K commands 9.3 Slot_marker(SN) command Command code = x6h The SRIX4K 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 SRIX4K compares its Chip_slot_number value with the Slot_number value given in the command code. If they match, the SRIX4K returns its Chip_ID value. If not, the SRIX4K 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 SRIX4K device in Inventory state present in the reader field range. Figure 30. Slot_marker request format SOF SLOT_MARKER X6h CRCL 8 bits CRCH 8 bits EOF AI07675 Request parameter: ● x: Slot number Figure 31. Slot_marker response format SOF Chip_ID 8 bits CRCL 8 bits CRCH 8 bits EOF AI07671 Response parameters: ● Chip_ID of the SRIX4K Figure 32. Slot_marker frame exchange between reader and SRIX4K Reader SRIX4K SOF X6h CRCL CRCH EOF SOF Chip_ID CRCL CRCH EOF AI07676b 31/47 SRIX4K commands SRIX4K 9.4 Select(Chip_ID) command Command code = 0Eh The Select() command allows the SRIX4K to enter the Selected state. Until this command is issued, the SRIX4K 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 SRIX4K 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 33. Select request format SOF Select 0Eh Chip_ID 8 bits CRCL 8 bits CRCH 8 bits EOF AI07677b Request parameter: ● 8-bit Chip_ID stored during the anticollision sequence Figure 34. Select response format SOF Chip_ID 8 bits CRCL 8 bits CRCH 8 bits EOF AI07671 Response parameters: ● Chip_ID of the selected tag. Must be equal to the transmitted Chip_ID Figure 35. Select frame exchange between reader and SRIX4K Reader SRIX4K SOF 0Eh Chip_ID CRCL CRCH EOF SOF Chip_ID CRCL CRCH EOF AI07678b 32/47 SRIX4K SRIX4K commands 9.5 Completion() command Command code = 0Fh On receiving the Completion() command, an SRIX4K in Selected state switches to Deactivated state and stops decoding any new commands. The SRIX4K is then locked in this state until a complete reset (tag out of the field range). A new SRIX4K 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 SRIX4K devices not in Selected state ignore the Completion() command. Figure 36. Completion request format SOF Completion 0Fh CRCL 8 bits CRCH 8 bits EOF AI07679b Request parameters: ● No parameter Figure 37. Completion response format No Response AI07680 Figure 38. Completion frame exchange between reader and SRIX4K Reader SRIX4K SOF 0Fh CRCL CRCH EOF No Response AI07681 33/47 SRIX4K commands SRIX4K 9.6 Reset_to_inventory() command Command code = 0Ch On receiving the Reset_to_inventory() command, all SRIX4K devices in Selected state revert to Inventory state. The concerned SRIX4K devices are thus resubmitted to the anticollision sequence. This command is useful when two SRIX4K 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 SRIX4K devices that are not in Selected state ignore the Reset_to_inventory() command. Figure 39. Reset_to_inventory request format SOF Reset_to_inventory 0Ch CRCL 8 bits CRCH 8 bits AI07682b EOF Request parameter: ● No parameter Figure 40. Reset_to_inventory response format No Response AI07680 Figure 41. Reset_to_inventory frame exchange between reader and SRIX4K Reader SRIX4K SOF 0Ch CRCL CRCH EOF No Response AI07681 34/47 SRIX4K SRIX4K commands 9.7 Read_block(Addr) command Command code = 08h On receiving the Read_block command, the SRIX4K 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 128 blocks of the SRIX4K (addresses 0 to 127). Read_block commands issued with a block address above 127 will not be interpreted and the SRIX4K will not return any response, except for the System area located at address 255. The SRIX4K 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 SRIX4K before a Select() command is issued are ignored. Figure 42. Read_block request format SOF Read_block 08h Address 8 bIts CRCL 8 bits CRCH 8 bits EOF AI07684b Request parameter: ● Address: block addresses from 0 to 127, or 255 Figure 43. Read_block response format SOF Data 1 8 bIts Data 2 8 bIts Data 3 8 bIts Data 4 8 bIts CRCL 8 bits CRCH 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 44. Read_block frame exchange between reader and SRIX4K S Reader O F SRIX4K 08h ADDR E CRCL CRCH O F S E O Data 1 Data 2 Data 3 Data 4 CRCL CRCH O F F AI07686c 35/47 SRIX4K commands SRIX4K 9.8 Write_block (Addr, Data) command Command code = 09h On receiving the Write_block command, the SRIX4K 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 128 blocks of the SRIX4K (addresses 0 to 127). Write_block commands issued with a block address above 127 will not be interpreted and the SRIX4K 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 Figures for a complete description of the Write_block command: ● ● ● Figure 13: Resettable OTP area (addresses 0 to 4). Figure 16: Binary counter (addresses 5 to 6). Figure 18: EEPROM (addresses 7 to 127). The Write_block command does not give rise to a response from the SRIX4K. The reader must check after the programming time, tW, that the data was correctly programmed. The SRIX4K 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 SRIX4K before a Select() command is issued, are ignored. Figure 45. Write_block request format SOF Write_block Address 8 bIts Data 1 8 bIts Data 2 8 bIts Data 3 8 bIts Data 4 8 bIts CRCL 8 bits CRCH 8 bIts EOF 09h AI07687b Request parameters: ● ● ● ● ● Address: block addresses from 0 to 127, or 255 Data 1: Less significant data byte Data 2: Data byte Data 3: Data byte Data 4: Most significant data byte. Figure 46. Write_block response format No Response AI07680 36/47 SRIX4K SRIX4K commands Figure 47. Write_block frame exchange between reader and SRIX4K Reader SRIX4K SOF 09h Address Data 1 Data 2 Data 3 Data 4 CRCL CRCH EOF No response AI0768b 9.9 Get_UID() command Command code = 0Bh On receiving the Get_UID command, the SRIX4K 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 SRIX4K 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 SRIX4K before a Select() command is issued, are ignored. Figure 48. Get_UID request format SOF Get_UID 0Bh CRCL 8 bits CRCH 8 bits EOF AI07693b Request parameter: ● No parameter Figure 49. Get_UID response format SOF UID 0 8 bits UID 1 8 bIts UID 2 8 bIts UID 3 8 bIts UID 4 8 bIts UID 5 8 bIts UID 6 8 bIts UID 7 8 bIts CRCL 8 bits CRCH 8 bIts EOF AI07694 Response parameters: ● ● ● UID 0: Less significant UID byte UID 1 to UID 6: UID bytes UID 7: Most significant UID byte. 37/47 SRIX4K commands SRIX4K Unique Identifier (UID) Members of the SRIX4K family are uniquely identified by a 64-bit Unique Identifier (UID). This is used for addressing each SRIX4K 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 50): ● ● ● ● 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 0011b = 3d for SRIX4K a 42-bit unique serial number Figure 50. 64-bit unique identifier of the SRIX4K Most significant bits 63 55 47 41 D0h 02h 3d Least significant bits 0 Unique Serial Number AI14082 Figure 51. Get_UID frame exchange between reader and SRIX4K S E O 0Bh CRCL CRCH O F F S E O UID UID UID UID UID UID UID UID CRCL CRCH O 0 1 2 3 4 5 6 7 F F AI07692b Reader SRIX4K 9.10 Power-on state After power-on, the SRIX4K 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(). 38/47 SRIX4K Maximum rating 10 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. Symbol TSTG tSTG ICC VMAX VESD Storage conditions Supply current on AC0 / AC1 Input voltage on AC0 / AC1 Electrostatic discharge voltage(1) Machine model Human body model Absolute maximum ratings Parameter Wafer (kept in its antistatic bag) Min. 15 Max. 25 23 –20 –7 –100 –1000 20 7 100 1000 Unit °C months mA V V V 1. Mil. Std. 883 - Method 3015 39/47 DC and ac parameters SRIX4K 11 DC and ac parameters Table 6. Symbol TA Operating conditions Parameter Ambient operating temperature Min. –20 Max. 85 Unit °C Table 7. Symbol VCC ICC ICC VRET CTUN DC characteristics Parameter Regulated voltage Supply current (active in read) Supply current (active in write) Retromodulation induced voltage Internal tuning capacitor VCC = 3.0 V VCC = 3.0 V ISO 10373-6 13.56 MHz 20 64 Condition Min 2.5 Typ Max 3.5 100 250 Unit V µA µA mV pF Table 8. Symbol fCC AC characteristics Parameter External RF signal frequency MI=(A-B)/(A+B) Condition Min Max Unit MHz % µs µs +2 µs ms 847.5 151 151 132 0 0 3 5 7 57 kHz µs µs µs µs µs ms ms ms 13.553 13.567 8 0.8 ETU = 128/fCC Coupler to SRIX4K –2 5 fCC/16 128/fS 128/fS 14 ETU Coupler to SRIX4K SRIX4K to coupler With no auto-erase cycle (OTP) 9.44 14 2.5 MICARRIER Carrier modulation index tRFR, tRFF 10% rise and fall times tRFSBL tJIT tMIN CD fS t0 t1 t2 tDR tDA Minimum pulse width for start bit ASK modulation data jitter Minimum time from carrier generation to first data Subcarrier frequency Antenna reversal delay Synchronization delay Answer to new request delay Time between request characters Time between answer characters tW Programming time for write With auto-erase cycle (EEPROM) Binary counter decrement 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. 40/47 SRIX4K Figure 52. SRIX4K synchronous timing, transmit and receive ASK Modulated signal from the Reader to the Contactless device DC and ac parameters A B tRFF tRFR ƒcc tRFSBL tMIN CD FRAME Transmission between the reader and the contactless device tDR tDR 1 0 DATA 1 EOF FRAME Transmitted by the reader in ASK FRAME Transmitted by the SRIX4K in BPSK t0 847KHz SOF 11 0 DATA 10 DATA 10 t1 tDA tDA Data jitter on FRAME Transmitted by the reader in ASK tJIT tJIT tJIT tJIT tJIT 0 START tRFSBL tRFSBL tRFSBL tRFSBL tRFSBL AI09052 41/47 Part numbering SRIX4K 12 Part numbering Table 9. Example: Ordering information scheme SRIX4K – W4 /1GE Device type SRIX4K 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. 42/47 SRIX4K ISO 14443 Type B CRC calculation Appendix A ISO 14443 Type B CRC calculation #include #include #include #include #define BYTE unsigned char #define USHORT unsigned short unsigned short UpdateCrc(BYTE ch, USHORT *lpwCrc) { ch = (ch^(BYTE)((*lpwCrc) & 0x00FF)); ch = (ch^(ch 8)^((USHORT)ch > 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
SRIX4K-SBN181GE 价格&库存

很抱歉,暂时无法提供与“SRIX4K-SBN181GE”相匹配的价格&库存,您可以联系我们找货

免费人工找货