Mitsubishi microcomputers
M16C / 62 Group
SINGLE-CHIP 16-BIT CMOS MICROCOMPUTER
Memory
11
Operation of Functional Blocks
The M16C/62 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.4.1 is a memory map of the M16C/62 group. The address space extends the 1M bytes from
address 0000016 to FFFFF16. From FFFFF16 down is ROM. For example, in the M30622MC-XXXFP, there
is 128K bytes of internal ROM from E000016 to FFFFF16. The vector table for fixed interrupts such as the
_______
reset and NMI are mapped to FFFDC16 to FFFFF16. 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 0040016 up is RAM. For example, in the M30622MC-XXXFP, 5K bytes of internal RAM is mapped to
the space from 0040016 to 017FF16. 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 0000016 to 003FF16. 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.7.1 to 1.7.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 FFE0016 to FFFDB16. 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 M30622MC-XXXFP, the following spaces cannot be used.
The space between 0180016 and 03FFF16 (Memory expansion and microprocessor modes)
The space between D000016 and D7FFF16 (Memory expansion mode)
Figure 1.4.1. Memory map
0000016
YYYYY16
FFFFF16
0040016
0400016
XXXXX16
D000016
External area
Internal ROM area
SFR area
For details, see Figures
1.7.1 to 1.7.3
Internal RAM area
Internal reserved
area (Note 1)
Internal reserved
area (Note 2)
FFE0016
FFFDC16
FFFFF16
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 M30624MG/FG, they show an instance in which PM13 is set to 1.
Undefined instruction
Overflow
BRK instruction
Address match
Single step
Watchdog timer
Reset
Special page
vector table
DBC
NMI
M30622M4
00FFF16
F800016
C000016
053FF16
M30624MG/FG
M30620M8
02BFF16
F000016
E800016
017FF16
M30622MA
E000016
017FF16
M30622MC
M30620MA
E800016
02BFF16
M30622M8/E8
F000016
013FF16
Address XXXXX16
Type No.
Address YYYYY16
M30620MC/EC
E000016
02BFF16