SPRUIN7C March 2020 – March 2024 TMS320F280021 , TMS320F280021-Q1 , TMS320F280023 , TMS320F280023-Q1 , TMS320F280023C , TMS320F280025 , TMS320F280025-Q1 , TMS320F280025C , TMS320F280025C-Q1
Unlike earlier C2000™ devices, on this device ALL_1 value (0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF) for CSM password for a zone does not unsecure the zone. Instead, if for any zone the CSM password values get loaded as ALL_1 from USER OTP, the device is in a BLOCKED state. Due to this reason, TI programs a few bits in the second 32-bit password value (ZxOTP_CSMPSWD1) in every zone select block of each zone with value 0. The default value for this password location is chosen in a manner that the respective ECC value remains ALL_1. Due to this, the CSMPSWD1 value programmed by TI for every zone select block is different. See Table 3-18 for ZxOTP_CSMPSWD1 value, programmed by TI on every device. Since ECC is not programmed, the user is able to change this value by flipping the bits that are 1 to 0 but leaving the bits that are already programmed by TI as 0. BOOTROM code writes the default password value into the KEYx register to unlock the device as part of device initialization sequence.
If all 128-bits of the password of a zone are programmed to zeroes (“all zeroes password”), that zone becomes permanently secure (LOCKED state), regardless of the contents of the CSMKEYx registers. This means the zone cannot be unlocked using the password match flow (PMF) described in Section 3.13.7.4. Therefore, the user can avoid using an “all zeroes password” since an all zeroes password prevents debug of secure code and reprogramming of the Flash sectors. CSMKEYx registers are user-accessible registers that are used to unsecure the zones.
Zone Select Block | Zone1 (Z1OTP_CSMPSWD1) | Zone2 (Z2OTP_CSMPSWD1) | ||
---|---|---|---|---|
Address | Value | Address | Value | |
PSWDLOCK (LSW) | 0x00078010 | 0xfb7fffff | 0x00078210 | 0xbf7fffff |
PSWDLOCK (MSW) | 0x00078012 | 0x7fffffff | 0x00078212 | 0x77ffffff |
CRCLOCK (LSW) | 0x00078014 | 0x4bffffff | 0x00078214 | 0x0fffffff |
CRCLOCK (MSW) | 0x00078016 | 0x3fffffff | 0x00078216 | 0x37ffffff |
Zone_Select_Block0 | 0x0007802a | 0x47ffffff | 0x0007822a | 0xe3ffffff |
Zone_Select_Block1 | 0x0007803a | 0xdb7fffff | 0x0007823a | 0x977fffff |
Zone_Select_Block2 | 0x0007804a | 0x4bffffff | 0x0007824a | 0xf1ffffff |
Zone_Select_Block3 | 0x0007805a | 0x3f7fffff | 0x0007825a | 0x9b7fffff |
Zone_Select_Block4 | 0x0007806a | 0xcfbfffff | 0x0007826a | 0x5b7fffff |
Zone_Select_Block5 | 0x0007807a | 0x8bffffff | 0x0007827a | 0x2fffffff |
Zone_Select_Block6 | 0x0007808a | 0x53ffffff | 0x0007828a | 0x1fffffff |
Zone_Select_Block7 | 0x0007809a | 0xcf7fffff | 0x0007829a | 0x6b7fffff |
Zone_Select_Block8 | 0x000780aa | 0xe77fffff | 0x000782aa | 0xab7fffff |
Zone_Select_Block9 | 0x000780ba | 0x93ffffff | 0x000782ba | 0x37ffffff |
Zone_Select_Block10 | 0x000780ca | 0xeb7fffff | 0x000782ca | 0x4f7fffff |
Zone_Select_Block11 | 0x000780da | 0x69ffffff | 0x000782da | 0x3bffffff |
Zone_Select_Block12 | 0x000780ea | 0xa9ffffff | 0x000782ea | 0xe5ffffff |
Zone_Select_Block13 | 0x000780fa | 0xdd7fffff | 0x000782fa | 0x8f7fffff |
Zone_Select_Block14 | 0x0007810a | 0x8bffffff | 0x0007830a | 0x2fffffff |
Zone_Select_Block15 | 0x0007811a | 0xcfbfffff | 0x0007831a | 0x5b7fffff |
Zone_Select_Block16 | 0x0007812a | 0x3f7fffff | 0x0007832a | 0x9b7fffff |
Zone_Select_Block17 | 0x0007813a | 0x4bffffff | 0x0007833a | 0xf1ffffff |
Zone_Select_Block18 | 0x0007814a | 0xdb7fffff | 0x0007834a | 0x977fffff |
Zone_Select_Block19 | 0x0007815a | 0x47ffffff | 0x0007835a | 0xe3ffffff |
Zone_Select_Block20 | 0x0007816a | 0x87ffffff | 0x0007836a | 0xcbffffff |
Zone_Select_Block21 | 0x0007817a | 0xf37fffff | 0x0007837a | 0x577fffff |
Zone_Select_Block22 | 0x0007818a | 0xdd7fffff | 0x0007838a | 0x8f7fffff |
Zone_Select_Block23 | 0x0007819a | 0xa9ffffff | 0x0007839a | 0xe5ffffff |
Zone_Select_Block24 | 0x000781aa | 0x69ffffff | 0x000783aa | 0x3bffffff |
Zone_Select_Block25 | 0x000781ba | 0xeb7fffff | 0x000783ba | 0x4f7fffff |
Zone_Select_Block26 | 0x000781ca | 0x93ffffff | 0x000783ca | 0x37ffffff |
Zone_Select_Block27 | 0x000781da | 0xe77fffff | 0x000783da | 0xab7fffff |
Zone_Select_Block28 | 0x000781ea | 0xcf7fffff | 0x000783ea | 0x6b7fffff |
Zone_Select_Block29 | 0x000781fa | 0x53ffffff | 0x000783fa | 0x1fffffff |