beautypg.com

2 bank configuration of general-purpose registers – NEC PD754144 User Manual

Page 45

background image

CHAPTER 3 FEATURES OF ARCHITECTURE AND MEMORY MAP

45

User’s Manual U10676EJ3V0UM

RBE

Register Bank

Fixed to 0

Remark

× = don’t care

RBE is automatically saved or restored during subroutine processing and therefore can be set while subroutine

processing is under execution. When interrupt servicing is executed, RBE is automatically saved or restored, and

RBE can be set during interrupt servicing depending on the setting of the interrupt vector table as soon as the interrupt

servicing is started. Consequently, if different register banks are used for normal processing and interrupt servicing

as shown in Table 3-3, it is not necessary to save or restore general-purpose registers when an interrupt is serviced,

and only RBS needs to be saved or restored if two interrupts are nested. This means that the interrupt servicing speed

can be increased.

Table 3-3. Example of Using Different Register Banks for Normal Routine and Interrupt Routine

Normal processing

Uses register bank 2 or 3 with RBE = 1

Single interrupt servicing

Uses register bank 0 with RBE = 0

Nesting servicing of two

Uses register bank 1 with RBE = 1

interrupts

(at this time, RBS must be saved or restored)

Nesting servicing of

Registers must be saved or restored by PUSH or POP instructions

three or more interrupts

.

3.2 Bank Configuration of General-Purpose Registers

The

µPD754244 is provided with four register banks with each bank consisting of eight general-purpose registers:

X, A, B, C, D, E, H, and L. The general-purpose register area consisting of these registers is mapped to the addresses

00H to 1FH of memory bank 0 (refer to Figure 3-5 Configuration of General-Purpose Registers (4-Bit Process-

ing)). To specify a general-purpose register bank, a register bank enable flag (RBE) and a register bank select register

(RBS) are provided. RBS selects a register bank, and RBE determines whether the register bank selected by RBS

is valid or not. The register bank (RB) that is enabled when an instruction is executed is as follows:

RB = RBE

RBS

Table 3-2. Register Bank Selected by RBE and RBS

RBS

3

2

1

0

0

0

0

Ч

Ч

Fixed to bank 0

1

0

0

0

0

Bank 0 selected

0

1

Bank 1 selected

1

0

Bank 2 selected

1

1

Bank 3 selected

This manual is related to the following products: