SLUSEC2A December 2021 – November 2023 BQ79631-Q1
PRODUCTION DATA
Section 8.5.1 shows all parameters that can be programmed to the customer OTP page. There are two pages of OTP memory available for customer to use.
Before programming the OTP, host ensures:
Step | Procedure |
---|---|
1 | Unlock the OTP programming: a. Write the following data to OTP_PROG_UNLOCK1A to OTP_PROG_UNLOCK1D registers.
b. Do another write with the following data to OTP_PROG_UNLOCK2A to OTP_PROG_UNLOCK2D registers.
|
2 | Check to confirm the OTP unlock procedure is successful: a. Read to confirm OTP_PROG_STAT[UNLOCK] = 1 Issuing a Read command after step 1 is ok, but issuing the [PROG_GO] must be the next write command after the unlock procedures. |
3 | Select the proper OTP page and start the OTP programming: a. To program page1, set OTP_PROG_CTRL[PAGESEL][PROG_GO] = 0x01, or b. To program page2, set OTP_PROG_CTRL[PAGESEL][PROG_GO] = 0x03 |
4 | Wait tPROG for the OTP programming to complete |
5 | Check to ensure there is no error during OTP programming. The following bits are expected to be 1 after a successful OTP programming: a. OTP_PROG_STAT[DONE] = 1, OTP programming is done. No other bit will be set in this register. b. If page 1 is programmed, OTP_CUST1_STAT[PROGOK], [TRY], [OVOK], and [UVOK] bits are 1. Other bits are 0. c. If page 2 is programmed, OTP_CUST2_STAT[LOADED], [PROGOK], [TRY], [OVOK], and [UVOK] bits are 1. Other bits are 0. |
6 | Issue a digital reset to reload the registers with the updated OTP values: a. CONTROL1[SOFT_RESET] = 1 |
During programming, if a programming voltage OV or UV event occurs, the OTP_CUST*_STAT[UVOK] or OTP_CUST_STAT2[OVOK] bit is 0 to indicate the programming voltage under- or overvoltage condition is detected during the programing attempts. In addition, the [UVERR], [OVERR], [SUVERR], and [SOVERR] bits in the OTP_PROG_STAT register indicate if there is programming voltage error during programming and stability test.