8XC251SA, SB, SP, SQ USER’S MANUAL
14-8
14.6.4 Encryption Array
The 87C251Sx and 83C251Sx controllers include a 128-byte encryption array located in nonvol-
atile memory outside the memory address space. During verification of the on-chip code memory,
the seven low-order address bits also address the encryption array. As the byte of the code mem-
ory is read, it is exclusive-NOR’ed (XNOR) with the key byte from the encryption array. If the
encryption array is not programmed (still all 1s), the user program code is placed on the data bus
in its original, unencrypted form. If the encryption array is programmed with key bytes, the user
program code is encrypted and can’t be used without knowledge of the key byte sequence.
CAUTION
If the encryption feature is implemented, the portion of the on-chip code
memory that does not contain program code should be filled with “random”
byte values other than FFH to prevent the encryption key sequence from being
revealed.
To program the encryption array, perform the procedure described in section 14.4, “Programming
Algorithm,” using the program encryption array mode (Table 14-1).
To preserve the secrecy of the encryption key byte sequence, the encryption array can not be ver-
ified.
14.6.5 Signature Bytes
The 87C251Sx and 83C251Sx contain factory-programmed signature bytes. These bytes are lo-
cated in nonvolatile memory outside the memory address space at 30H, 31H, 60H, and 61H. To
read the signature bytes, perform the procedure described in 14.5, “Verify Algorithm,” using the
verify signature mode (Table 14-1). Signature byte values are listed in Table 14-3.
Table 14-2. Lock Bit Function
Lock Bits Programmed
Protection Type
LB3
LB2
LB1
Level 1
U
U
U
No program lock features are enabled. On-chip user code is
encrypted when verified, if encryption array is programmed.
Level 2
U
U
P
External code is prevented from fetching code bytes from on-
chip code memory. Further programming of the on-chip
OTPROM is disabled.
Level 3
U
P
P
Same as level 2, plus on-chip code memory verify is disabled.
Level 4
P
P
P
Same as level 3, plus external memory execution is disabled.
NOTE:
Other combinations of the lock bits are not defined.
Summary of Contents for 8XC251SA
Page 2: ......
Page 3: ...May 1996 8XC251SA 8XC251SB 8XC251SP 8XC251SQ Embedded Microcontroller User s Manual...
Page 18: ......
Page 19: ...1 Guide to This Manual...
Page 20: ......
Page 30: ......
Page 31: ...2 Architectural Overview...
Page 32: ......
Page 41: ...3 Address Spaces...
Page 42: ......
Page 63: ...4 Device Configuration...
Page 64: ......
Page 81: ...5 Programming...
Page 82: ......
Page 102: ......
Page 103: ...6 Interrupt System...
Page 104: ......
Page 120: ......
Page 121: ...7 Input Output Ports...
Page 122: ......
Page 132: ......
Page 133: ...8 Timer Counters and Watchdog Timer...
Page 134: ......
Page 153: ...9 Programmable Counter Array...
Page 154: ......
Page 170: ......
Page 171: ...10 Serial I O Port...
Page 172: ......
Page 187: ...11 Minimum Hardware Setup...
Page 188: ......
Page 197: ...12 Special Operating Modes...
Page 198: ......
Page 206: ......
Page 207: ...13 External Memory Interface...
Page 208: ......
Page 239: ...14 Programming and Verifying Nonvolatile Memory...
Page 240: ......
Page 250: ......
Page 251: ...A Instruction Set Reference...
Page 252: ......
Page 390: ......
Page 391: ...B Signal Descriptions...
Page 392: ......
Page 400: ......
Page 401: ...C Registers...
Page 402: ......
Page 436: ......
Page 437: ...Glossary...
Page 438: ......
Page 446: ......
Page 447: ...Index...
Page 448: ......
Page 458: ......