quick navigator
Products
Technologies
Development Tools
Documentation
ApBuilder
Application Notes
Backgrounder
Datasheets
Development Tools
Manuals
Packaging Data
Papers
Specification Updates
Technical Notes
Support
Price Quote and Ordering
Product Selector
Software Support
Related Sites
MCS96/296 Microcontrollers
Flash Memory Components
SmartDie® Products
Developer Home Contents Search Contact Us Support Intel(r)
 

PROPER 8XC51FX ENCRYPTION ARRAY USAGE


ABSTRACT:

This TechBit cautions encryption array users to fill all program code locations with a value other than 0FFH.

PROPER 8XC51FX ENCRYPTION ARRAY USAGE

Customers using the program lock features on FX devices should not use the same value for all bytes in the Encryption Array, or leave large blocks of code memory unprogrammed.

To enable FX ROM (or QROM) lock features, customers must submit a 64-byte encryption file along with their program code. The factory then programs the device encryption array and sets Lock Bit 1 before the device is shipped. Those customers using EPROM devices must program the encryption array themselves.

There is one important factor that needs to be considered before using the encryption array as a means for program protection.

The encryption feature exclusively NORs each code byte with one of the encryption bytes. All unprogrammed encryption bytes have the value 0FFH. If the encryption array is left unprogrammed, any code byte XNORed with 0FFH leaves the byte unchanged. Similarly, if a code byte has the value 0FFH, verification of the byte will produce the encryption byte value. If a large block (> 64 bytes) of code is left unprogrammed (an unprogrammed byte has value 0FFH), a verification routine will, essentially, display the contents of the encryption array.

For this reason it is strongly recommended that all unused code bytes be programmed with some value other than 0FFH, and not all of them the same value. This practice will ensure the maximum possible program protection for this feature.



To top of page


* Legal Information © 1999 Intel Corporation