SPRUHM8K December 2013 – May 2024 TMS320F28374D , TMS320F28375D , TMS320F28376D , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28378D , TMS320F28379D , TMS320F28379D-Q1
For each of the two security zones of each CPU subsystem on this device, a dedicated OTP memory block exists that holds the configuration related to zone’s security. The following are the available programmed configurations:
Since OTP memory cannot be erased, to provide flexibility of configuring some of the security settings like CSM passwords, allocation of RAM/Flash sectors and the attributes, multiple times by the user, the following configurations are placed in zone select regions of each zone’s OTP Flash.
The location of the zone select region in OTP memory is decided based on the value of three 29-bit link pointers (Zx-LINKPOINTERx) programmed in the OTP memory of each zone of both CPU subsystems. All OTP memory locations except link pointer locations are protected with ECC. Since the link pointer locations are not protected with ECC, three link pointers are provided that need to be programmed with the same value. The final value of the link pointer is resolved in hardware when a dummy read is done to all the link pointers by comparing all the three values (bit-wise voting logic). Since in OTP memory, a 1 can be flipped by the user to 0 but a 0 cannot be flipped to a 1 (no erase operation for OTP memory), the most-significant bit position in the resolved link pointer that is 0 defines the valid base address for the zone select region. While generating the final link pointer value, if the bit patterns is not one of those listed in Figure 3-22, the final link pointer value becomes All_1 (0xFFFF_FFFF) that selects the Zone-Select-Block1 (also known as the default zone select block).
Since linkpointer location in USER OTP does not have ECC, the user must always define a separate structure and section for linkpointers.