SCPS286 July 2025 TPLD2001
ADVANCE INFORMATION
The TPLD2001 contains one-time programmable (OTP) memory bits. These memory bits retain the set values in the absence of a power supply, are used to configure the TPLD device, and can be programmed a maximum of one time. The default values for all the configuration registers in the TPLD2001 are loaded from OTP after a POR event is issued.
Procedure to temporarily set up configuration registers:
After starting up the device with the desired serial communications protocol, read the DEVICE_ID from registers 0x000 and 0x001 to ensure communication with the device has been established
Then:
For SPI, send the following four frames with at least 200µs between frames: 0x9000B9, 0x90003E, 0x9000AF, 0x900058
For I2C, in four write transactions, send the following with at least 500µs between transactions:
Transaction 1: BYTE0 = ADDR, BYTE1 = 0x01, BYTE2 = 0xB9
Transaction 2: BYTE0 = ADDR, BYTE1 = 0x01, BYTE2 = 0x3E
Transaction 3: BYTE0 = ADDR, BYTE1 = 0x01, BYTE2 = 0xAF
Transaction 4: BYTE0 = ADDR, BYTE1 = 0x01, BYTE2 = 0x58
After the final frame is sent, wait 1ms.
Ensure you have entered configuration mode correctly by reading 0x10 from register 0x400.
Write 0x02 to register 0x400.
Send configuration bits to 0x200 - 0x3FF.
Optionally, after sending configuration bits, read commands can be used to verify the correct data was written to the device.
Then:
For SPI, send the following frame: 0x90004B
For I2C, send the following write transaction: BYTE0 = ADDR, BYTE1 = 01, BYTE2 = 0x4B
Lastly, write 0x00 to register 0x400 for the configuration to take effect.
Device is now temporarily configured.
When temporarily configuring the TPLD with the I2C macro-cell enabled, the first four bits of the target address is set to 0000b and the next three bits will come from the configuration bits, or ADDR = [0][0][0][0][A2][A1][A0]. An OTP burn is necessary in order to change the first four bits, or MSB, of the target address.
To change the temporary configuration, it is recommended to power cycle the device and repeating the procedure to temporarily set up the configuration registers.
If the device is already temporarily configured with the I2C macro-cell enabled, writes to the I2C_ADDR register (SER_COMM_CFG1) will take immediate effect. Thus, subsequent I2C transactions need to be addressed to the updated target address.
Procedure to burn the OTP:
If the device has been temporarily configured, power cycle the device to clear configuration registers before continuing.
Follow steps 1 - 7 from the procedure to temporarily set up configuration registers.
Apply VPP to the GPI pin.
Write 0x01 to register 0x401 to start the OTP programming.
Wait 50ms for the programming to be complete.
Remove VPP from the GPI pin.
Device OTP is now burned.