KTU - CST202 - Computer Organization and Architecture Module: 2
REGISTER TRANSFER LOGIC: Inter Register Transfer – Arithmetic, Logic
and Shift Micro Operations.
Module: 2 PROCESSOR LOGIC DESIGN: Processor Organisation - Arithmetic Logic
Unit- Design of Arithmetic Unit, Design of Logic circuit, Design of
Arithmetic Logic Unit – Status Register- Design of Shifter –Processor Unit
–Design of Accumulator.
REGISTER TRANSFER LOGIC:
Digital system is a collection of digital hardware modules. A digital system is a
sequential logic system constructed with flip flops and gates. The sequential circuit can be
specified by means of a state table. Specifying a large digital system with a state table would be
very difficult, since the number of states would be very large.
To overcome this difficulty, digital systems are designed using a modular approach,
where each modular subsystem performs some functional task. The modules are constructed
from such digital functions as registers, counters, decoders, multiplexers, arithmetic elements
and control logic. Various modules are interconnected with data and control path. The
interconnection of digital functions cannot be described by means of combinational or sequential
logic techniques.
The information flow and the processing task among the data stored in the registers can
be described by means of register transfer logic. The registers are selected as primitive
components of the system. Register transfer logic uses a set of expressions and statements which
compare the statements used in programming language. It provides the necessary tool for
specifying the interconnection between various digital functions.
Components of Register Transfer Logic
1. The set of registers in the system and their functions:A register also encompasses all
type of registers including shift registers, counters and memory units.
2. The binary-coded information stored in the registers: The binary information stored in
registers may be binary numbers, binary coded decimal numbers, alphanumeric characters,
control information or any other binary coded information.
3. The operations performed on the information stored in the registers: The operations
performed on data stored in registers are called micro operations. Examples are shift, count,
add, clear and load
4. The control functions that initiate the sequence of operations: The control functions
that initiate the sequence of operations consists of timing signals that sequence the operations
one at a time.
,KTU - CST202 - Computer Organization and Architecture Module: 2
Register transfer language (Computer hardware description language)
Symbolic notation used for registers, for specifying operations on the contents of
registers and specifying control functions . A statement in a register transfer language consists of
control function and a list of microoperations
Micro-Operation: Operations performed in data stored in registers. Elementary
operation that can be performed parallel during one clock pulse period. The result of operation
may replace the previous binary information of a register or may be transfered to another
register. Example: Shift, count, clear, add & load
A micro-operation requires one clock pulse for the execution if the operation done in
parallel. In serial computer a microoperation requires a number of clock pulses equal to the word
time in the system.
Types of Binary Informations
Micro operations performed is based on the type of data kept in registers. Type of binary
information in the register can be classified into three categories:
Numerical data such as binary numbers or binary-coded decimal numbers.
Non-numerical data such as alphanumeric characters or other binary-coded symbols.
Instruction codes, addresses and other control information used to specify the data
processing requirements in the system
Types of Micro-Operations in digital system
Interregister transfer micro-operation: Do not change the information content when the
binary information moves from one register to another
Arithmetic operation: Perform arithmetic on numbers stored in registers.
Logic microoperation: Perform operations such as AND and OR on individual pairs of
bits stored in registers.
Shift microoperation: Specify operations for shift registers.
INTER REGISTER TRANSFER
Computer registers are designated by capital letters (sometimes followed by numerals) to
denote the function of the register. [Example: R1 - Processor Register, MAR - Memory Address
Register (holds an address for a memory unit), PC - Program Counter, IR - Instruction Register,
SR: Status Register].The cells or flipflops of n-bit register are numbered in sequence from1 to n
(from 0 to n-1) starting either from left or from right
The register can be represented in 4 ways:
Rectangular box with name of the register inside,
The individual cells is assigned a letter with a subscript number,
2
, KTU - CST202 - Computer Organization and Architecture Module: 2
The numbering of cells from right to left can be marked on top of the box as the 12
bit register Memory Buffer Register (MBR).
16 bit register is partitioned into 2 parts , bits 1 to 8 are assigned the letter L(for low)
and bits 9 to 16 are assigned the letter H(for high)
A a) Register A
A8 A7 A6 A5 A4 A3 A2 A1 b) Showing individual Cells
12 1
MBR c) Numbering of Cells
16 9 8 1
PC (H) PC (L) d) Portions of Register
Registers can be specified in a register transfer language with a declaration statement.
For example: Registers in the above figure can be defined with declaration statement such as
DECLARE REGISTER A(8), MBR(12), PC(16)
DECLARE SUBREGISTER PC(L) = PC(1-8), PC(H) = PC(9-16).
Information transfer from one register to another is described by a replacement
operator: A ← B. This statement denotes a transfer of the content of register B into register A
and this transfer happens in one clock cycle. After the operation, the content of the B (source)
does not change. The content of the A (destination) will be lost and replaced by the new data
transferred from B.
Conditional transfer occurs only under a control condition: The condition that
determines when the transfer is to occurs called a control function. A control function is a
Boolean function that can be equal to 1 or 0. The control function is included with the statement
as follows
x’T1: A ← B
The control function is terminated with a colon. It symbolizes the requirement that the
transfer operation be executed by the hardware only when the Boolean function x’T1 = 1. ie;
when variable x = 0 and timing variable T1 = 1.
Hardware implementation of a controlled transfer: x’T1: A ← B is as follows
The outputs of register B are connected
to the input of register A and the number
of lines in this connection is equal to the
number of bits in the registers. Register
A must have a load control input so that
3
REGISTER TRANSFER LOGIC: Inter Register Transfer – Arithmetic, Logic
and Shift Micro Operations.
Module: 2 PROCESSOR LOGIC DESIGN: Processor Organisation - Arithmetic Logic
Unit- Design of Arithmetic Unit, Design of Logic circuit, Design of
Arithmetic Logic Unit – Status Register- Design of Shifter –Processor Unit
–Design of Accumulator.
REGISTER TRANSFER LOGIC:
Digital system is a collection of digital hardware modules. A digital system is a
sequential logic system constructed with flip flops and gates. The sequential circuit can be
specified by means of a state table. Specifying a large digital system with a state table would be
very difficult, since the number of states would be very large.
To overcome this difficulty, digital systems are designed using a modular approach,
where each modular subsystem performs some functional task. The modules are constructed
from such digital functions as registers, counters, decoders, multiplexers, arithmetic elements
and control logic. Various modules are interconnected with data and control path. The
interconnection of digital functions cannot be described by means of combinational or sequential
logic techniques.
The information flow and the processing task among the data stored in the registers can
be described by means of register transfer logic. The registers are selected as primitive
components of the system. Register transfer logic uses a set of expressions and statements which
compare the statements used in programming language. It provides the necessary tool for
specifying the interconnection between various digital functions.
Components of Register Transfer Logic
1. The set of registers in the system and their functions:A register also encompasses all
type of registers including shift registers, counters and memory units.
2. The binary-coded information stored in the registers: The binary information stored in
registers may be binary numbers, binary coded decimal numbers, alphanumeric characters,
control information or any other binary coded information.
3. The operations performed on the information stored in the registers: The operations
performed on data stored in registers are called micro operations. Examples are shift, count,
add, clear and load
4. The control functions that initiate the sequence of operations: The control functions
that initiate the sequence of operations consists of timing signals that sequence the operations
one at a time.
,KTU - CST202 - Computer Organization and Architecture Module: 2
Register transfer language (Computer hardware description language)
Symbolic notation used for registers, for specifying operations on the contents of
registers and specifying control functions . A statement in a register transfer language consists of
control function and a list of microoperations
Micro-Operation: Operations performed in data stored in registers. Elementary
operation that can be performed parallel during one clock pulse period. The result of operation
may replace the previous binary information of a register or may be transfered to another
register. Example: Shift, count, clear, add & load
A micro-operation requires one clock pulse for the execution if the operation done in
parallel. In serial computer a microoperation requires a number of clock pulses equal to the word
time in the system.
Types of Binary Informations
Micro operations performed is based on the type of data kept in registers. Type of binary
information in the register can be classified into three categories:
Numerical data such as binary numbers or binary-coded decimal numbers.
Non-numerical data such as alphanumeric characters or other binary-coded symbols.
Instruction codes, addresses and other control information used to specify the data
processing requirements in the system
Types of Micro-Operations in digital system
Interregister transfer micro-operation: Do not change the information content when the
binary information moves from one register to another
Arithmetic operation: Perform arithmetic on numbers stored in registers.
Logic microoperation: Perform operations such as AND and OR on individual pairs of
bits stored in registers.
Shift microoperation: Specify operations for shift registers.
INTER REGISTER TRANSFER
Computer registers are designated by capital letters (sometimes followed by numerals) to
denote the function of the register. [Example: R1 - Processor Register, MAR - Memory Address
Register (holds an address for a memory unit), PC - Program Counter, IR - Instruction Register,
SR: Status Register].The cells or flipflops of n-bit register are numbered in sequence from1 to n
(from 0 to n-1) starting either from left or from right
The register can be represented in 4 ways:
Rectangular box with name of the register inside,
The individual cells is assigned a letter with a subscript number,
2
, KTU - CST202 - Computer Organization and Architecture Module: 2
The numbering of cells from right to left can be marked on top of the box as the 12
bit register Memory Buffer Register (MBR).
16 bit register is partitioned into 2 parts , bits 1 to 8 are assigned the letter L(for low)
and bits 9 to 16 are assigned the letter H(for high)
A a) Register A
A8 A7 A6 A5 A4 A3 A2 A1 b) Showing individual Cells
12 1
MBR c) Numbering of Cells
16 9 8 1
PC (H) PC (L) d) Portions of Register
Registers can be specified in a register transfer language with a declaration statement.
For example: Registers in the above figure can be defined with declaration statement such as
DECLARE REGISTER A(8), MBR(12), PC(16)
DECLARE SUBREGISTER PC(L) = PC(1-8), PC(H) = PC(9-16).
Information transfer from one register to another is described by a replacement
operator: A ← B. This statement denotes a transfer of the content of register B into register A
and this transfer happens in one clock cycle. After the operation, the content of the B (source)
does not change. The content of the A (destination) will be lost and replaced by the new data
transferred from B.
Conditional transfer occurs only under a control condition: The condition that
determines when the transfer is to occurs called a control function. A control function is a
Boolean function that can be equal to 1 or 0. The control function is included with the statement
as follows
x’T1: A ← B
The control function is terminated with a colon. It symbolizes the requirement that the
transfer operation be executed by the hardware only when the Boolean function x’T1 = 1. ie;
when variable x = 0 and timing variable T1 = 1.
Hardware implementation of a controlled transfer: x’T1: A ← B is as follows
The outputs of register B are connected
to the input of register A and the number
of lines in this connection is equal to the
number of bits in the registers. Register
A must have a load control input so that
3