
Rev. 1.00
10
��ne 1�� �01�
Rev. 1.00
11
��ne 1�� �01�
HT46R003B
Cost-Effective A/D 8-bit OTP MCU
HT46R003B
Cost-Effective A/D 8-bit OTP MCU
System Clocking and Pipelining
Instruction Fetching
Program Counter – PC
During program execution, the Program Counter is used to keep track of the address of the next
instruction to be executed. It is automatically incremented by one each time an instruction is
executed except for instructions, such as “JMP” or “CALL” that demand a jump to a non-consecutive
Program Memory address. It must be noted that only the lower 8 bits, known as the Program
Counter Low Register, are directly addressable by user.
When executing instructions requiring jumping to non-consecutive addresses such as a jump
instruction, a subroutine call, interrupt or reset, etc, the microcontroller manages program control
by loading the required address into the Program Counter. For conditional skip instructions, once
the condition has been met, the next instruction, which has already been fetched during the present
instruction execution, is discarded and a dummy cycle takes its place while the correct instruction is
obtained.
Program Counter
High Byte of Program
Low Byte of Program
PC�~PC8
PCL7~PCL0
The lower byte of the Program Counter, known as the Program Counter Low register or PCL, is
available for program control and is a readable and writeable register. By transferring data directly
into this register, a short program jump can be executed directly. However, as only this low byte
is available for manipulation, the jumps are limited in the present page of memory, which have
256 locations. When such program jumps are executed it should also be noted that a dummy cycle
will be inserted. The lower byte of the Program Counter is fully accessible under program control.
Manipulating the PCL might cause program branching, so an extra cycle is needed to pre-fetch.