2 program memory, 1 configuration of program memory, 2 pc (program counter) – Epson S1C63000 User Manual
Page 17
S1C63000 CORE CPU MANUAL
EPSON
11
CHAPTER 2: ARCHITECTURE
2.2 Program Memory
2.2.1 Configuration of program memory
The S1C63000 can access a maximum 64K-word (
×
13 bits) program memory space. In the individual
model of the S1C63 Family, the ROM of which size is decided depending on the model is connected to
this space to write a program and static data.
Figure 2.2.1.1 shows the program memory map of the S1C63000.
Fig. 2.2.1.1 S1C63000 program memory map
The S1C63000 can access 64K-word space linearly without any page management used in current 4-bit
microcomputers.
As shown in Figure 2.2.1.1, the program start address after an initial reset is fixed at 0110H independent
of the S1C63 Family models. Programming should be done so that the execution program starts from that
address.
The address 0100H to 010FH is the hardware interrupt vector's area in which up to 16 interrupt vectors
can be assigned. Address 0100H is for the exclusive use of NMI (non-maskable interrupt). The number of
interrupt vectors is dependent on the interrupt function of the S1C63 Family models. Branch instructions
to the interrupt service routines should be written in this area. See Section 3.5, "Interrupts" for details of
the interrupts.
The address 0111H to 013FH is the software interrupt vector's area. Up to 63 software interrupts can be
set up together with the hardware interrupt vector area. Set branch instructions to the interrupt service
routines in this area similarly to the hardware interrupts.
Addresses from 0000H to 00FFH and from 0140H to FFFFH are program area. A call instruction (CALZ)
that is for the exclusive use of the area from 0000H to 00FFH is provided so that the area is useful to store
common subroutines that are called from relocatable modules.
2.2.2 PC (program counter)
The PC (program counter) is a 16-bit counter that keeps the program address to be executed next. The PC
is incremented by executing every instruction step to execute a program sequentially. When a branch
instruction is executed or an interrupt is generated, the content of the PC is modified to branch the
process flow.
The PC covers the entire program memory space alone, therefore processing such as page management
are unnecessary.
At initial reset, the PC is initialized to 0110H and the program starts executing from that address.
Address
0000H
00FFH
0100H
0101H
010FH
0110H
0111H
013FH
0140H
FFFFH
13-bit
Program area
Common subroutine, etc.
NMI interrupt vector
Hardware interrupt vectors
Program start address
Software interrupt vectors
Program area