HT48R30A-1
7
November 29, 2000
The lower byte of the program counter (PCL) is
a readable and writeable register (06H).
Moving data into the PCL performs a short
jump. The destination will be within the cur-
rent program ROM page.
When a control transfer takes place, an addi-
tional dummy cycle is required.
Program memory
ROM
The program memory is used to store the pro-
gram instructions which are to be executed. It
also contains data, table, and interrupt entries,
and is organized into 2048 14 bits, addressed
by the program counter and table pointer.
Certain locations in the program memory are
reserved for special usage:
Location 000H
This area is reserved for program initializa-
tion. After chip reset, the program always be-
gins execution at location 000H.
Location 004H
This area is reserved for the external inter-
rupt service program. If the INT input pin is
activated, the interrupt is enabled and the
stackisnotfull,theprogrambeginsexecution
at location 004H.
Location 008H
This area is reserved for the timer/event coun-
ter interrupt service program. If a timer inter-
rupt results from a timer/event counter
overflow,andiftheinterruptisenabledandthe
stack is not full, the program begins execution
at location 008H .
Table location
Any location in the program memory space
can be used as look-up tables. The instruc-
tions "TABRDC [m]" (the current page, 1
page=256 words) and "TABRDL [m]" (the last
Mode
Program Counter
*10
*9
*8
*7
*6
*5
*4
*3
*2
*1
*0
Initial Reset
0
0
0
0
0
0
0
0
0
0
0
External Interrupt
0
0
0
0
0
0
0
0
1
0
0
Timer/Event Counter Overflow
0
0
0
0
0
0
0
1
0
0
0
Skip
PC+2
Loading PCL
*10
*9
*8
@7
@6
@5
@4
@3
@2
@1
@0
Jump, Call Branch
#10
#9
#8
#7
#6
#5
#4
#3
#2
#1
#0
Return from Subroutine
S10
S9
S8
S7
S6
S5
S4
S3
S2
S1
S0
Program counter
Note: *10~*0: Program counter bits
S10~S0: Stack register bits
#10~#0: Instruction code bits
@7~@0: PCL bits
0 7 7 >
7 7 >
*
) # ' # ! ## ! # '
: ! ' ! ! ' @ ! #
#) ! ' !
! ! ' @ ! # '
( = ; " ' @ ' 8 2 4 ' A + 9
( = ; " ' @ ' 8 2 4 ' A + 9
! B ' ' '' ' ! ' 0
>
3 >
& >
>
& ' @ # !
0 >
Program memory