English
Language : 

HMS87C1808B Datasheet, PDF (29/99 Pages) List of Unclassifed Manufacturers – 8-BIT SINGLE-CHIP MICROCONTROLLERS
HMS87C1X04B/08B/16B
8.2 Program Memory
A 16-bit program counter is capable of addressing up to 64K
bytes, but these devices have 4K/8K/16K bytes program memory
space only physically implemented. Accessing a location above
FFFFH will cause a wrap-around to 0000H.
Figure 8-4 , shows a map of Program Memory. After reset, the
CPU begins execution from reset vector which is stored in ad-
dress FFFEH and FFFFH as shown in Figure 8-5 .
As shown in Figure 8-4 , each area is assigned a fixed location in
Program Memory. Program Memory area contains the user pro-
gram.
C000H
HMS87C1X16B
E000H
HMS87C1X08B
F000H
HMS87C1X04B
FEFFH
FF00H
FFC0H
FFDFH
FFE0H
FFFFH
TCALL
AREA
INTERRUPT
VECTOR AREA
PROGRAM
MEMORY
PCALL
AREA
Figure 8-4 Program Memory Map
Page Call (PCALL) area contains subroutine program to reduce
program byte length by using 2 bytes PCALL instead of 3 bytes
CALL instruction. If it is frequently called, it is more useful to
save program byte length.
Table Call (TCALL) causes the CPU to jump to each TCALL ad-
dress, 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-6 .
Example: Usage of TCALL
LDA
#5
TCALL 0FH
:
:
;
;TABLE CALL ROUTINE
;
FUNC_A: LDA LRG0
RET
;
FUNC_B: LDA LRG1 2
RET
;
;TABLE CALL ADD. AREA
;
ORG 0FFC0H
DW FUNC_A
DW FUNC_B
;1BYTE INSTRUCTION
;INSTEAD OF 3 BYTES
;NORMAL CALL
1
;TCALL ADDRESS AREA
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 location 0FFFAH. The in-
terrupt service locations spaces 2-byte interval: 0FFF8H and
0FFF9H for External Interrupt 1, 0FFFAH and 0FFFBH for Exter-
nal Interrupt 0, etc.
As for the area from 0FF00H to 0FFFFH, if any area of them is not
going to be used, its service location is available as general pur-
pose Program Memory.
Address
Vector Area Memory
0FFE0H
-
E2
-
E4 Serial Peripheral Interface Interrupt Vector Area
E6
Basic Interval Interrupt Vector Area
E8
Watchdog Timer Interrupt Vector Area
EA
A/D Converter Interrupt Vector Area
EC
Timer/Counter 3 Interrupt Vector Area
EE
Timer/Counter 2 Interrupt Vector Area
F0
External Interrupt 3 Vector Area
F2
External Interrupt 2 Vector Area
F4
Timer/Counter 1 Interrupt Vector Area
F6
Timer/Counter 0 Interrupt Vector Area
F8
External Interrupt 1 Vector Area
FA
External Interrupt 0 Vector Area
FC
-
FE
RESET Vector Area
NOTE:
“-” means reserved area.
Figure 8-5 Interrupt Vector Area
SEP. 2004 Ver 1.03
25