NEC uPD78056Y User Manual

Page 541

Advertising
background image

541

CHAPTER 25 ROM CORRECTION

No

Yes

Initialization

Load the contents of external nonvolatile memory
into internal expansion RAM
Correction address register setting
ROM correction enabled

Is ROM

correction used ?

Note

ROM correction

Main program

(2) Assemble in advance the initialization routine as shown in Figure 25-6 to correct the program.

Figure 25-6. Initialization Routine

Note

Whether the ROM correction is used or not should be judged by the port input level. For example, when

the P20 input level is high, the ROM correction is used, otherwise, it is not used.

(3) After reset, store the contents that have been previously stored in the external nonvolatile memory with

initialization routine for ROM correction of the user to internal expansion RAM (see Figure 25-6).

Set the start address of the instruction to be corrected to CORAD0 and CORAD1, and set bits 1 and 3

(COREN0, COREN1) of the correction control register (CORCN) to 1.

(4) Set the entire-space branch instruction (BR !addr16) to the specified address (F7FDH) of the internal

expansion RAM with the main program.

(5) After the main program is started, the fetch address value and the values set in CORAD0 and CORAD1 are

always compared by the comparator in the ROM correction circuit. When these values match, the correction

branch request signal is generated. Simultaneously the corresponding correction status flag (CORST0 or

CORST1) is set to 1.

(6) Branch to the address F7FDH by the correction branch request signal.

(7) Branch to the internal expansion RAM address set with the main program by the entire-space branch

instruction of the address F7FDH.

(8) When one place is corrected, the correction program is executed. When two places are corrected, the

correction status flag is checked with the branch destination judgment program, and branches to the correction

program.

Advertising