Register Scoreboarding; Literals; Register And Literal Addressing And Alignment - Intel i960 Jx Developer's Manual

Microprocessor
Table of Contents

Advertisement

PROGRAMMING ENVIRONMENT
3.2.3

Register Scoreboarding

Register scoreboarding maintains register coherency by preventing parallel execution units from
accessing registers for which there is an outstanding operation. When an instruction that targets a
destination register or group of registers executes, the processor sets a register-scoreboard bit to
indicate that this register or group of registers is being used in an operation. When the instructions
that follow do not require data from registers already in use, the processor can execute those
instructions before the prior instruction completes execution.
Software can use this feature to execute one or more single-cycle instructions concurrently with a
multi-cycle instruction (e.g., multiply or divide).
boarding prevents a subsequent instruction from executing. It also illustrates overlapping instruc-
tions that do not have register dependencies.
muli r4,r5,r6
# r6 is scoreboarded
addi r6,r7,r8
# addi must wait for the previous multiply
.
# to complete
.
.
muli r4,r5,r10
# r10 is scoreboarded
and
r6,r7,r8
# and instruction is executed concurrently with multiply
3.2.4

Literals

The architecture defines a set of 32 literals that can be used as operands in many instructions.
These literals are ordinal (unsigned) values that range from 0 to 31 (5 bits). When a literal is used
as an operand, the processor expands it to 32 bits by adding leading zeros. When the instruction
requires an operand larger than 32 bits, the processor zero-extends the value to the operand size.
When a literal is used in an instruction that requires integer operands, the processor treats the
literal as a positive integer value.
3.2.5

Register and Literal Addressing and Alignment

Several instructions operate on multiple-word operands. For example, the load long instruction
(
ldl
) loads two words from memory into two consecutive registers. The register for the less
significant word is specified in the instruction. The more significant word is automatically loaded
into the next higher-numbered register.
3-4
Example 3-1
Example 3-1. Register Scoreboarding
shows a case where register score-

Advertisement

Table of Contents
loading

Table of Contents