16-5
PROGRAMMING THE NONVOLATILE MEMORY
These protection levels are provided by the PCCB0 lock bits, the CCB0 lock bits, and the internal
security key (Table 16-3). When entering programming modes, the reset sequence loads the
PCCBs into the chip configuration registers. It also loads CCB0 into internal RAM to provide an
additional level of security.
You can program the CCBs using any of the programming methods, but only slave and PCCB
programming modes permits access to the PCCBs, and only slave and auto programming allow
you to program the internal security key.
If you want to prohibit all programming, clear both PCCB0 lock bits. If these bits are cleared,
they prevent the device from entering any programming mode.
If you want to prevent programming, but allow ROM dumps, leave the PCCB0 read-protection
bit (PCCB0.7) unprogrammed and clear the PCCB0 write-protection bit (PCCB0.6). To protect
against unauthorized reads, program an internal security key. The ROM-dump mode compares
the internal security key location with an externally supplied security key, regardless of the CCB0
lock bits. If the security keys match, the routine continues; otherwise, the device enters an endless
internal loop.
If you want to allow slave and auto programming as well as ROM dumps, leave both PCCB0 lock
bits unprogrammed. To protect against unauthorized programming, clear the CCB0 lock bits and
program an internal security key. After the device enters either slave or auto programming mode,
the corresponding test ROM routine reads the CCB0 lock bits. If either CCB0 lock bit is enabled,
the routine compares the internal security key location with an externally supplied security key.
If the security keys match, the routine continues; otherwise, the device enters an endless internal
loop.
Table 16-3. Memory Protection Options for Programming Modes
LOC1
(CCR0.7)
LOC0
(CCR0.6)
Security Key
Programmed
?
Protection Status
PCCB CCB PCCB CCB
1 1 1 1 No No protection. All programming modes allowed.
1X0X Yes
All programming disabled. ROM-dump permitted with
matching security key.
1010 Yes
Auto and slave programming permitted with matching
security key.
0 X 0 X X All programming unconditionally disabled.