MB89051 Series
s PROGRAMMING AND ERASING FLSH MEMORY
1. Flash Memory
The flash memory is located between 8000H and FFFFH in the CPU memory map and incorporates a flash
memory interface circuit that allows read access and program access from the CPU to be performed in the same
way as mark ROM. Programming and erasing flash memory is also performed via the flash memory interface
circuit by executing instructions in the CPU. This enables the flash memory to be updated in place under the
control of the CPU, providing an efficient method of updating program and data.
2. Flash Memory Features
• 32 Kbyte × 8-bit configuration (16 K + 8 K + 8 K sectors)
• Automatic programming algorithm (Embedded Algorithm* : Equivalent to MBM29LV200)
• Includes an erase pause and restart function
• Data polling and toggle bit for detection of program/erase completion
• Detection of program/erase completion via CPU interrupt
• Compatible with JEDEC-standard command
• Sector Protection (sectors can be combined in any combination)
• No. of program/erase cycles : 10,000 (Min)
* : Embedded Algorithm is a trademark of Advanced Micro Devices.
3. Procedure for Programming and Erasing Flash Memory
Programming and reading flash memory cannot be performed at the same time. Accordingly, to program or
erase flash memory, the program must first be copied from flash memory to RAM so that programming can be
performed without program access from flash memory.
4. Flash Memory Register
• Control status register (FMCS)
Address bit7 bit6 bit5
002EH INTE RDYINT WE
R/W R/W R/W
bit4 bit3 bit2 bit1
RDY
Re- Re-
served served
R R/W R/W
bit0
Re-
served
R/W
Initial value
000X00X0B
5. Sector Configuration
The table below shows the sector configuration of flash memory and lists the addresses of each sector for both
during CPU access and a flash memory programming.
• Sector configuration of flash memory
Flash Memory
CPU Address
Programmer Address*
16 Kbytes
8 Kbytes
8 Kbytes
FFFFH to C000H
BFFFH to A000H
9FFFH to 8000H
1FFFFH to 1C000H
1BFFFH to 1A000H
19FFFH to 18000H
* : Programmer address
The programmer address is the address to be used instead of the CPU address when programming data from
a parallel flash memory programmer. Use the programmer address on programming or erasing using a general-
purpose parallel programmer.
13