The USER_DATA_00 - USER_DATA_12 commands are provided to streamline NVM programming. These 6-byte block commands are mapped internally to all of the user-configurable parameters the TPSM831D31 supports. The MFR_SERIAL command also provides a checksum, to streamline verification of desired programming values.
The generalized procedure for programming the TPSM831D31 is summarized below.
Configure User-Programmable Parameters
- First, configure all of the user-accessible parameters via the standard PMBus, and Manufacturer Specific commands. TI provides the Fusion Digital Power Designer graphical interface software to streamline this step. The user can also refer to the Technical Reference Manual for a full set of register maps for these commands.
- Once the device is configured as desired, issue the STORE_DEFAULT_ALL command to commit these values to NVM, and update the checksum value. Wait approximately 100 ms after issuing STORE_DEFAULT_ALL before communicating with the device again.
- Write PAGE to 00h
- Read-back and Record the value of IC_DEVICE_ID and IC_DEVICE_REV commands
- Read-back and Record the value of the USER_DATA_00 through USER_DATA_12 commands
- Read-back and Record the value of the MFR_SERIAL command
- Read-back and Record the value of VOUT_MAX
- Write PAGE to 01h
- Read-back and Record the value of VOUT_MAX
Program and Verify NVM (repeat for each device)
- Power the device by supplying +3.3V to the V3P3 pin. Power conversion should be disabled for NVM programming.
- Read-back and verify that IC_DEVICE_ID and IC_DEVICE_REV values match those recorded previously. This ensures that user-parameters being programmed correspond to the same device/revision as previously configured.
- Write PAGE to 00h.
- Write the USER_DATA_00 through USER_DATA_12 commands, with the values recorded previously.
- Write VOUT_MAX (Page 0) with the value recorded previously.
- Write PAGE to 01h
- Write VOUT_MAX (Page 1) with the value recorded previously.
- Issue STORE_DEFAULT_ALL. Wait appx 100 ms after issuing STORE_DEFAULT_ALL before communicating with the device again.
- Read-back the MFR_SERIAL command, and compare the value to that recorded previously. If the new MFR_SERIAL matches the value recorded previously, NVM programming was successful.