Cpu Control; Register File; Register Arithmetic-Logic Unit (Ralu) - Intel 8XC196K Series User Manual

Table of Contents

Advertisement

8XC196K x , J x , CA USER'S MANUAL
2.3.1

CPU Control

The CPU is controlled by the microcode engine, which instructs the RALU to perform operations
using bytes, words, or double words from either the 256-byte lower register file or through a win-
dow that directly accesses the upper register file. (See Chapter 4, "Memory Partitions," for more
information about the register file and windowing.) CPU instructions move from the 4-byte queue
in the memory controller into the RALU's instruction register. The microcode engine decodes the
instructions and then generates the sequence of events that cause desired functions to occur.
2.3.2

Register File

The register file is divided into an upper and a lower file. In the lower register file, the lowest 24
bytes are allocated to the CPU's special-function registers (SFRs) and the stack pointer, while the
remainder is available as general-purpose register RAM. The upper register file contains only
general-purpose register RAM. The register RAM can be accessed as bytes, words, or double-
words.
The RALU accesses the upper and lower register files differently. The lower register file is always
directly accessible with register-direct addressing (see "Addressing Modes" on page 3-5). The
upper register file is accessible with register-direct addressing only when windowing is enabled.
Windowing is a technique that maps blocks of the upper register file into a window in the lower
register file. See Chapter 4, "Memory Partitions," for more information about the register file and
windowing.
2.3.3

Register Arithmetic-logic Unit (RALU)

The RALU contains the microcode engine, the 16-bit arithmetic logic unit (ALU), the master pro-
gram counter (PC), the program status word (PSW), and several registers. The registers in the
RALU are the instruction register, a constants register, a bit-select register, a loop counter, and
three temporary registers (the upper-word, lower-word, and second-operand registers).
The PSW contains one bit (PSW.1) that globally enables or disables servicing of all maskable in-
terrupts, one bit (PSW.2) that enables or disables the peripheral transaction server (PTS), and six
Boolean flags that reflect the state of your program. Appendix A, "Instruction Set Reference"
provides a detailed description of the PSW.
All registers, except the 3-bit bit-select register and the 6-bit loop counter, are either 16 or 17 bits
(16 bits plus a sign extension). Some of these registers can reduce the ALU's workload by per-
forming simple operations.
2-4

Advertisement

Table of Contents
loading

Table of Contents