SCPS286 July 2025 TPLD2001
ADVANCE INFORMATION
Cyclic Redundancy Checks (CRCs) is a common method of performing error checking on areas of OTP and ensuring data integrity of this memory. OTP is used to configure the TPLD2001’s macro-cells and connection mux routing. The OTP is one-time programmable and holds the device configuration data. OTP memory is loaded during device power up and transferred to TPLD2001 connection mux.
To ensure the bit integrity of the OTP memory before the stored configuration is loaded from OTP to device registers, as a safety measure, TPLD2001 implements a cyclic redundancy check (CRC) feature for the OTP to make sure that the data stored in the OTP is uncorrupted. At start-up, the OTP will be read internally and will check for a valid CRC. If the CRC is not valid, this process will be performed for a total of 7 more times. If still not valid after the 8th attempt, the device will proceed with loading the contents from OTP but set the following status bits:
The CRC_ERR_CNT bits in register 0x0FEh [7:5] indicate the number of failed CRC attempts before loading the OTP contents into the configuration of the device. To reset the status bits to 0, issue a software reset command, or cycle power to the TPLD2001.
The CRC_ERR_FLAG bit in register 0x0FEh [0] indicates there were more than 8 CRC calculation failures in the loading of the OTP contents into the configuration of the device. To reset the status bits to 0, issue a software reset command, or cycle power to the TPLD2001.