Browse Prior Art Database

Storing and Programming Microcontroller Code in Electrically Erasable Programmable Read-Only Memory

IP.com Disclosure Number: IPCOM000116659D
Original Publication Date: 1995-Oct-01
Included in the Prior Art Database: 2005-Mar-31
Document File: 2 page(s) / 88K

Publishing Venue

IBM

Related People

Eng, RC: AUTHOR [+2]

Abstract

Disclosed is a method for installing and updating microcontroller code in an Electrically Erasable Programmable Read-Only Memory (EEPROM). This method is used in a system, consisting of a microcontroller with built-in Read-Only Memory (ROM) and of an attached EEPROM, having program code which can be stored in the ROM and in the EEPROM. However, since the EEPROM must be completely erased before data can be programmed into it, the microcontroller cannot be programming the EEPROM while fetching code from it. Therefore, the ROM is used to store the base operational code, together with code for an EEPROM programming algorithm. This base code, which represents the first version of code, provides minimal function for the microcontroller system without requiring that the EEPROM is programmed for operation.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Storing and Programming Microcontroller Code in Electrically Erasable
Programmable Read-Only Memory

      Disclosed is a method for installing and updating
microcontroller code in an Electrically Erasable Programmable
Read-Only Memory (EEPROM).  This method is used in a system,
consisting of a microcontroller with built-in Read-Only Memory (ROM)
and of an attached EEPROM, having program code which can be stored in
the ROM and in the EEPROM.  However, since the EEPROM must be
completely erased before data can be programmed into it, the
microcontroller cannot be programming the EEPROM while fetching code
from it.  Therefore, the ROM is used to store the base operational
code, together with code for an EEPROM programming algorithm.  This
base code, which represents the first version of code, provides
minimal function for the microcontroller system without requiring
that the EEPROM is programmed for operation.

      The EEPROM stores updated copies of the base code, which
provide the same functions as the base code in ROM, together with
code providing additional functions, such as code for features not
fitting within the space constraints of the microcontroller ROM and
code for newly-added features.

      The Figure is a Flow Diagram of the steps leading from power-on
to execution out of either ROM or EEPROM.  After power-on in step 1,
the microcontroller automatically begins execution out of ROM, with
code performing initialization in step 2 and with POST testing in
step 3.  If a POST failure occurs, as determined in step 4, the error
is indicated in step 5.  If the system passes POST (Power On Self
Test) testing, a checksum and header check is performed on the code
in the EEPROM in step 6.  If the EEPROM is thus determined, as
indicated in step 7, to contain valid code, the interrupt vectors are
rerouted to the EEPROM code in step 8, and execution continues, in
step 9, out of code within the EEPROM, providing full system
functions.  On the...