EEPROM Memory and Data Zone Access Policies

The EEPROM memory contains a total of 1,400 bytes and is divided into the following zones:

Table 1. ATECC608A-TFLXTLS EEPROM Zones
Zone Description Nomenclature
Configuration Zone of 128 bytes (1,024 bits) EEPROM that contains:
  • Device Configuration
  • Slot Access Policy Information
  • Counter Values
  • Device Serial Number
  • Lock Information
The LockConfig byte has already been set. Nothing can be directly written to this zone. The zone can always be read.
Config[a:b] = A range of bytes within a field of the Configuration zone.
Data Zone of 1,208 bytes (9.7 Kb) split into 16 general purpose read-only or read/write memory slots. The slots are divided in the following way:
  • Slots 0-7 Contain 36 Bytes
  • Slot 8 Contains 416 Bytes
  • Slots 9-15 Contain 72 Bytes
The Access Policy information defined by the Configuration zone bytes determines how each slot can be accessed. The Access Policy for each data slot in the ATECC608A-TFLXTLS device has already been set and the slot Access Policies defined by the Configuration zone are in full effect. Some slots can be read from or written to while others cannot, depending upon that slot's Access Policy.
Slot[YY] = The entire contents stored in Slot YY of the Data zone.
One-Time Programmable (OTP) Zone of 64 bytes (512 bits) arranged into two blocks of 32 bytes each. For the ATECC608A-TFLXTLS, the zone has been preloaded with a predefined value. This zone cannot be modified but can be read at any time. See Section ATECC608A-TFLXTLS EEPROM One Time Programmable (OTP) Zone for more information. OTP[bb] = A byte within the OTP zone, while OTP[aa:bb] indicates a range of bytes.
Table 2. Document Terms. Terms discussed within this document will have the following meanings:
Term Meaning
Block A single 256-bit (32-byte) area of a particular memory zone. The industry standard SHA-256 documentation also uses the term “block” to indicate a 512-bit section of the message input. Within this document, this convention is used only when describing hash input messages.
KeyID KeyID is equivalent to the slot number for those slots designated to hold key values. Key 1 (sometimes referred to as key[1]) is stored in Slot[1] and so on. While all 16 slots can potentially hold keys, those slots, which are configured to permit clear-text reads, would not normally be used as private or secret keys by the crypto commands.
mode[b] Indicates bit b of the parameter mode.
SRAM Contains input and output buffers as well as internal state storage locations. This memory is not directly accessible by the user. See Section Static RAM (SRAM) Memory.
Word A single four-byte word of data read from or written to a block. The word is the smallest unit of data access.