Mitsubishi microcomputers
M16C / 62A Group
SINGLE-CHIP 16-BIT CMOS MICROCOMPUTER
Memory
10
Operation of Functional Blocks
The M16C/62A group accommodates certain units in a single chip. These units include ROM and RAM to
store instructions and data and the central processing unit (CPU) to execute arithmetic/logic operations.
Also included are peripheral units such as timers, serial I/O, D-A converter, DMAC, CRC calculation circuit,
A-D converter, and I/O ports.
The following explains each unit.
Memory
Figure 1.3.1 is a memory map of the M16C/62A group. The address space extends the 1M bytes from
address 00000
16
to FFFFF
16
. From FFFFF
16
down is ROM. For example, in the M30622MCA-XXXFP,
there is 128K bytes of internal ROM from E0000
16
to FFFFF
16
. The vector table for fixed interrupts such as
the reset and NMI are mapped to FFFDC
16
to FFFFF
16
. The starting address of the interrupt routine is
stored here. The address of the vector table for timer interrupts, etc., can be set as desired using the
internal register (INTB). See the section on interrupts for details.
From 00400
16
up is RAM. For example, in the M30622MCA-XXXFP, 5K bytes of internal RAM is mapped
to the space from 00400
16
to 017FF
16
. In addition to storing data, the RAM also stores the stack used when
calling subroutines and when interrupts are generated.
The SFR area is mapped to 00000
16
to 003FF
16
. This area accommodates the control registers for periph-
eral devices such as I/O ports, A-D converter, serial I/O, and timers, etc. Figures 1.6.1 to 1.6.3 are location
of peripheral unit control registers. Any part of the SFR area that is not occupied is reserved and cannot be
used for other purposes.
The special page vector table is mapped to FFE00
16
to FFFDB
16
. If the starting addresses of subroutines
or the destination addresses of jumps are stored here, subroutine call instructions and jump instructions
can be used as 2-byte instructions, reducing the number of program steps.
In memory expansion mode and microprocessor mode, a part of the spaces are reserved and cannot be
used. For example, in the M30622MCA-XXXFP, the following spaces cannot be used.
The space between 01800
16
and 03FFF
16
(Memory expansion and microprocessor modes)
The space between D0000
16
and D7FFF
16
(Memory expansion mode)
Figure 1.3.1. Memory map
00000
16
YYYYY
16
Internal ROM area
FFFFF
16
00400
16
04000
16
AAAAA
XXXXX
16
D0000
16
AAAAA
Internal reserved
AAAAA
AAAAA
SFR area
For details, see Figures
1.6.1 to 1.6.3
Internal RAM area
area (Note 1)
FFE00
16
FFFDC
16
FFFFF
16
Note 1: During memory expansion and microprocessor modes, can not be used.
Note 2: In memory expansion mode, can not be used.
Note 3: These memory maps show an instance in which PM13 is set to 0; but in the
case of M30624MGA/FGA, they show an instance in which PM13 is set to 1.
Undefined instruction
Overflow
BRK instruction
Address match
Single step
Watchdog timer
DBC
NMI
Reset
Special page
vector table
M30622M4A
M30620M8A
M30620MAA
M30620MCA/FCA
00FFF
16
02BFF
16
02BFF
16
02BFF
16
F8000
16
F0000
16
E8000
16
E0000
16
C0000
16
053FF
16
M30624MGA/FGA
E8000
16
E0000
16
017FF
16
017FF
16
M30622MAA
M30622MCA
M30622M8A
F0000
16
013FF
16
Address XXXXX
16
Type No.
Address YYYYY
16