1. 10/26/2014
1
Computer Organization
Instructors :
Dr. Abdul Raouf Khan
Mr.Marwan El-Haj
REGISTER TRANSFER AND MICROOPERATIONS
• Register Transfer Language
• Register Transfer
• Bus and Memory Transfers
• Arithmetic Microoperations
• Logic Microoperations
• Shift Microoperations
• Arithmetic Logic Shift Unit
2. 10/26/2014
2
MICROOPERATION
An elementary operation performed during
one clock pulse, on the information stored
in one or more registers
R ← f(R, R)
f: shift, count, clear, load, add,...
ALU
(f)
Registers
(R)
1 clock cycle
Register Transfer Language
REGISTER TRANSFER LANGUAGE
- Set of registers and their functions
- Microoperations Set
Set of allowable microoperations provided
by the organization of the computer
- Control signals that initiate the sequence of
microoperations
----> Register transfer language
- A symbolic language
- A convenient tool for describing the
internal organization of digital computers
- Can also be used to facilitate the design
process of digital systems.
Definition of the (internal) organization of a computer
For any function of the computer, a sequence of
microoperations is used to describe it
Register Transfer Language
3. 10/26/2014
3
REGISTER TRANSFER
R1
Register
Numbering of bits
Showing individual bits
Subfields
PC(H) PC(L)
15 8 7 0
Common ways of drawing the block diagram of a register
A simultaneous transfer of all bits from the
source to the destination register, during one clock pulse
R2 ← R1
A binary condition(p=1) which determines when the transfer
is to occur
If (p=1) then (R2 ← R1)
P: R2 ← R1
7 6 5 4 3 2 1 0
R2
15 0
Representation of a transfer(parallel)
Representation of a controlled(conditional) transfer
Register Transfer
HARDWARE IMPLEMENTATION OF CONTROLLED TRANSFERS
Implementation of controlled transfer
P: R2 ← R1
Block diagram
Register Transfer
ClockR2
R1
Control
Circuit
LoadP
n
Timing diagram
Transfer occurs here
Clock
Load
t t+1
4. 10/26/2014
4
BUS AND MEMORY TRANSFER
Bus is a path(of a group of wires) over which information is transferred,
from any of several sources to any of several destinations.
Bus and Memory Transfers
Three-State Bus Buffers
Bus line with three-state buffers
Output Y=A if C=1
High-impedence if C=0
Normal input A
Control input C
Bus and Memory Transfers
Bus line with three-state buffers
5. 10/26/2014
5
Microoperations
A microoperation is an elementary operation
performed with the data stored in registers.
Microoperation Categories
Classified into four categories
1. Register Transfer Microoperations : transfer binary
information from one register to another register.
2. Arithmetic Microoperation: perform arithmetic
operations in numerical data stored in registers
3. Logic Microoperation: Perform bit manipulation
operations on numerical data stored in registers
4. Shift Microoperation: Perform shift operations on
data stored in registers.
7. 10/26/2014
7
BINARY ADDER Subtractor
Arithmetic Microoperations
4- bit binary adder- subtractor
(Contd)
Subtraction is done by 2’s complement
When mode control M= 0, the circuit is
adder. The output of XOR gates is equal to B
input ( B ⊕ 0= B).
When mode control M= 1, the circuit is
subtractor. The output of XOR gates is equal
to ܤത input ( B ⊕ 1= ܤത) and C0 = 1. hence
A + 2’s complement of B = A- B
9. 10/26/2014
9
Arithmetic circuit
The arithmetic microoperations can be
implemented in one circuit. The basic
component is a parallel adder, and
multiplexers can help us to chose one of the
actions.
We use a general arithmetic sum
D= A + Y + Cin
ARITHMETIC CIRCUIT
Arithmetic Microoperations
10. 10/26/2014
10
Arithmetic circuit function table
assignment
Design an arithmetic circuit with one select
line S and two n-bit data inputs A and B.
The circuit generates the following arithmetic
operations in conjunction with Cin. Draw the
logic diagram for two stages
S Cin = 0 Cin =1
0 D= A +B (add) D= A+1 (increment)
1 D= A-1 (decrement) D= A+B’ +1 (subtract)