GMS81C2012/GMS81C2020
8.2 Program Memory
HYUNDAI MicroElectronics
A 16-bit program counter is capable of addressing up to
64K bytes, but this device has 20K bytes program memory
space only physically implemented. Accessing a location
above FFFFH will cause a wrap-around to 0000H.
Example: Usage of TCALL
LDA
#5
TCALL 0FH
;
;
;
1BYTE INSTRUCTION
INSTEAD OF 3 BYTES
NORM AL CALL
:
:
Figure 8-5, shows a map of Program Memory. After reset,
the CPU begins execution from reset vector which is stored
in address FFFEH and FFFFH as shown in Figure 8-6.
;
;TABLE CALL ROUTINE
;
FUNC_A: LDA
LRG0
RET
As shown in Figure 8-5, each area is assigned a fixed loca-
tion in Program Memory. Program Memory area contains
the user program.
;
FUNC_B: LDA
LRG1
2
1
RET
;
;TABLE CALL ADD. AREA
;
ORG
DW
0FFC0H
FUNC_A
FUNC_B
;
TCALL ADDRESS AREA
DW
B000H
D000H
The interrupt causes the CPU to jump to specific location,
where it commences the execution of the service routine.
The External interrupt 0, for example, is assigned to loca-
tion 0FFFAH. The interrupt service locations spaces 2-byte
interval: 0FFF8H and 0FFF9H for External Interrupt 1,
0FFFAH and 0FFFBH for External Interrupt 0, etc.
FEFFH
FF00H
Any area from 0FF00H to 0FFFFH, if it is not going to be
used, its service location is available as general purpose
Program Memory.
FFC0H
TCALL area
FFDFH
FFE0H
FFFFH
Interrupt
Vector Area
Address
Vector Area Memory
0FFE0H
E2
-
-
E4
Serial Communication Interface
Basic Interval Timer
Watchdog Timer Interrupt
Figure 8-5 Program Memory Map
E6
E8
EA
A/D Co-nverter
Page Call (PCALL) area contains subroutine program to
reduce program byte length by using 2 bytes PCALL in-
stead of 3 bytes CALL instruction. If it is frequently called,
it is more useful to save program byte length.
EC
-
-
-
EE
F0
F2
F4
F6
F8
FA
FC
FE
-
Timer/Counter 1 Interrupt
Timer/Counter 0 Interrupt
Table Call (TCALL) causes the CPU to jump to each
TCALL address, where it commences the execution of the
service routine. The Table Call service area spaces 2-byte
for every TCALL: 0FFC0H for TCALL15, 0FFC2H for
TCALL14, etc., as shown in Figure 8-7.
External Interrupt 1
External Interrupt 0
-
RESET Vector Area
NOTE:
"-" means reserved area.
Figure 8-6 Interrupt Vector Area
28
MAR. 2000 Ver 1.00