Code Security Module (CSM)
12 - 12 C2000 Microcontroller Workshop - System Design
CSM Registers
Address Name Description
0x00 0AE0 KEY0 Low word of 128-bit Key register
0x00 0AE1 KEY1 2
nd
word of 128-bit Key register
0x00 0AE2 KEY2 3
rd
word of 128-bit Key register
0x00 0AE3 KEY3 4
th
word of 128-bit Key register
0x00 0AE4 KEY4 5
th
word of 128-bit Key register
0x00 0AE5 KEY5 6
th
word of 128-bit Key register
0x00 0AE6 KEY6 7
th
word of 128-bit Key register
0x00 0AE7 KEY7 High word of 128-bit Key register
0x00 0AEF CSMSCR CSM status and control register
Key Registers – accessible by user; EALLOW protected
Address Name Description
0x3F 7FF8 PWL0 Low word of 128-bit password
0x3F 7FF9 PWL1 2
nd
word of 128-bit password
0x3F 7FFA PWL2 3
rd
word of 128-bit password
0x3F 7FFB PWL3 4
th
word of 128-bit password
0x3F 7FFC PWL4 5
th
word of 128-bit password
0x3F 7FFD PWL5 6
th
word of 128-bit password
0x3F 7FFE PWL6 7
th
word of 128-bit password
0x3F 7FFF PWL7 High word of 128-bit password
PWL in memory – reserved for passwords only
Locking and Unlocking the CSM
The CSM is always locked after reset
To unlock the CSM:
Perform a dummy read of each PWL
(passwords in the flash)
Write the correct password to each KEY
register
Passwords are all 0xFFFF on new devices
When passwords are all 0xFFFF, only a read of
each PWL is required to unlock the device
The bootloader does these dummy reads and
hence unlocks devices that do not have
passwords programmed