# Nonvolatile Memory (eFuse)

The ATWINC15x0B IC have 768 bits of nonvolatile eFuse memory that can be read by the CPU after device Reset. The eFuse is partitioned into six 128-bit banks (Bank 0 – Bank 5). Each bank has the same bitmap (refer to the following figure). The purpose of the first 80 bits in each bank is fixed and the remaining 48 bits are general-purpose software-dependent bits, or reserved for future use.

Note: If the IQ Amp Used, IQ Amp Correction, IQ Pha Used and IQ Pha Correction bit fields are programmed, Bank 0 must not be programmed with any values; only the Bank Invalid bit has to be programmed in this case.

This nonvolatile one-time-programmable (OTP) memory can be used for storing the following customer-specific parameters:

• Calibration information (TX power, crystal frequency offset and so on)
• Other software-specific configuration parameters

Several updates of the device parameters are allowed after the initial programming because each bank can be programmed independently. For example, if the MAC address is currently programmed in Bank 2 and the MAC address has to be changed. To change this, perform the following steps:

1. 1.Contents of Bank 2 have to be invalidated by programming the Bank Invalid bit.
2. 2.Bank 3 has to be programmed with the new MAC address along with the values of ADC Calib (if used in Bank 2), frequency offset (from Bank 2), IQ Amp Correction (from Bank 2) and IQ Pha Correction (from Bank 2). The used bit field for the corresponding bit field must also be programmed.
3. 3.Contents of Bank 3 have to be validated by programming the used bit field of Bank 3.

Each bit field (i.e., MAC Addr, ADC Calib, Freq Offset, IQ Amp Correction and IQ Pha Correction) has its corresponding Used bit field. This Used bit field indicates to the firmware that the values in these bit fields are valid. A value of '0' in the Used bit field indicates that the following bit field is invalid and a value of '1' programmed to the Used bit field indicates that the corresponding bit field is valid and can be used by the firmware. By default, all the ATWINC15x0B devices are programmed with IQ Amp and IQ Phase fields of Bank 1. In IC variants where the MAC address is assigned, the MAC address bit field is programmed in Bank 1. For more information on IC marking, refer to Ordering Details.

Figure 1. Bit Map for ATWINC15x0B eFuse Bank (1)
Note:
1. 1.The bit map has been updated with bit fields, IQ Amp Correction and IQ Pha Correction fields, from firmware version 19.7 onwards. Earlier, these bit fields were reserved for future use. For customers using firmware older than 19.7, IQ Amp Correction and IQ Pha Correction bit fields are not used by the firmware.
The matrix table below provides details on how different versions of the firmware would handle the IQ Amp Used, IQ Amp Correction, IQ Pha Used and IQ Pha Correction bit fields during initialization.
Firmware Version Used by Customer IQ Amp Used and IQ Pha Used Bit Status
Device with IQ Amp Used and IQ Pha Used Bits with Value ‘1’ Device with IQ Amp Used and IQ Pha Used Bits with Value ‘0’
19.7 or later for WINC1500 The firmware loads the IQ cal values from the IQ Amp Correction and IQ Pha Correction bit fields of the corresponding eFuse bank and proceeds with the initialization. The firmware ignores the values in the IQ Amp Correction and IQ Pha Correction bit fields of the corresponding eFuse bank and proceeds with the initialization.
Prior to 19.7 for WINC1500 The firmware does not check for the IQ Amp and IQ Pha Used bit fields and proceeds with initialization.