SlideShare a Scribd company logo
1 of 30
Charles Kime & Thomas Kaminski
© 2004 Pearson Education, Inc.
Terms of Use
(Hyperlinks are active in View Show mode)
Chapter 10 – Computer
Design Basics
Part 1 – Datapaths
Logic and Computer Design Fundamentals
Chapter 10 Part 1 2
Overview
 Part 1 – Datapaths
• Introduction
• Datapath Example
• Arithmetic Logic Unit (ALU)
• Shifter
• Datapath Representation
• Control Word
 Part 2 – A Simple Computer
• Instruction Set Architecture (ISA)
• Single-Cycle Hardwired Control
 Instruction Decoder
 Sample Instructions
 Single Cycle Computer Issues
• Multiple Cycle Hardwired Control
 Sequential Control Design
Chapter 10 Part 1 3
Introduction
 Computer Specification
• Instruction Set Architecture (ISA) - the
specification of a computer's appearance to a
programmer at its lowest level
• Computer Architecture - a high-level
description of the hardware implementing
the computer derived from the ISA
• The architecture usually includes additional
specifications such as speed, cost, and
reliability.
Chapter 10 Part 1 4
Introduction (continued)
 Simple computer architecture
decomposed into:
• Datapath for performing operations
• Control unit for controlling datapath
operations
 A datapath is specified by:
• A set of registers
• The microoperations performed on the data
stored in the registers
• A control interface
Chapter 10 Part 1 5
Datapaths
 Guiding principles for basic datapaths:
• The set of registers
 Collection of individual registers
 A set of registers with common access resources called a
register file
 A combination of the above
• Microoperation implementation
 One or more shared resources for implementing
microoperations
 Buses - shared transfer paths
 Arithmetic-Logic Unit (ALU) - shared resource for
implementing arithmetic and logic microoperations
 Shifter - shared resource for implementing shift
microoperations
Chapter 10 Part 1 6
 Four parallel-load
registers
 Two mux-based
register selectors
 Register destination
decoder
 Mux B for external
constant input
 Buses A and B with external
address and data outputs
 ALU and Shifter with
Mux F for output select
 Mux D for external data input
 Logic for generating status bits
V, C, N, Z
MD select 0 1
MUX D
V
C
N
Z
n
n
n
n
n
n
n
n
n n
n
2 2
n
n
A data B data
Register file
1 0
MUX B Address
Out
Data
Out
Bus A
Bus B
n
n
Function unit
A B n
G select
4
Zero Detect
MF select
n
n
n
F
MUX F
H select
2
n
A B
S2:0 || Cin
Arithmetic/logic
unit (ALU)
G
B
S
Shifter
H
MUX
0
1
2
3
MUX
0
1
2
3
0 1 2 3
Decoder
Load
Load
Load
Load
Load enable
Write
D data
D address
2
Destination select
Constant in
MB select
A select
A address
B select
B address
R3
R2
R1
R0
Bus D
n
Data In
IL
IR
0 0
0 1
Datapath Example
Chapter 10 Part 1 7
 Microoperation: R0 ← R1 + R2
MD select 0 1
MUX D
V
C
N
Z
n
n
n
n
n
n
n
n
n n
n
2 2
n
n
A data B data
Register file
1 0
MUX B Address
Out
Data
Out
Bus A
Bus B
n
n
Function unit
A B n
G select
4
Zero Detect
MF select
n
n
n
F
MUX F
H select
2
n
A B
S2:0 || Cin
Arithmetic/logic
unit (ALU)
G
B
S
Shifter
H
MUX
0
1
2
3
MUX
0
1
2
3
0 1 2 3
Decoder
Load
Load
Load
Load
Load enable
Write
D data
D address
2
Destination select
Constant in
MB select
A select
A address
B select
B address
R3
R2
R1
R0
Bus D
n
Data In
IL
IR
0 0
0 1
Datapath Example: Performing a
Microoperation
 Apply 01 to A select to place
contents of R1 onto Bus A
 Apply 10 to B select to place
contents of R2 onto B data and
apply 0 to MB select to place
B data on Bus B
 Apply 0010 to G select to perform
addition G = Bus A + Bus B
 Apply 0 to MF select and 0 to MD
select to place the value of G onto
BUS D
 Apply 00 to Destination select to
enable the Load input to R0
 Apply 1 to Load Enable to force the
Load input to R0 to 1 so that R0 is
loaded on the clock pulse (not shown)
 The overall microoperation requires
1 clock cycle
Chapter 10 Part 1 8
Datapath Example: Key Control Actions
for Microoperation Alternatives
 Perform a shift microoperation –
apply 1 to MF select
 Use a constant in a micro-
operation using Bus B – apply 1
to MB select
 Provide an address and data for a
memory or output write
microoperation – apply 0 to Load
enable to prevent register loading
 Provide an address and obtain
data for a memory or output read
microoperation – apply 1 to MD
select
 For some of the above, other
control signals become don't
cares
MD select 0 1
MUX D
V
C
N
Z
n
n
n
n
n
n
n
n
n n
n
2 2
n
n
A data B data
Register file
1 0
MUX B Address
Out
Data
Out
Bus A
Bus B
n
n
Function unit
A B n
G select
4
Zero Detect
MF select
n
n
n
F
MUX F
H select
2
n
A B
S2:0 || Cin
Arithmetic/logic
unit (ALU)
G
B
S
Shifter
H
MUX
0
1
2
3
MUX
0
1
2
3
0 1 2 3
Decoder
Load
Load
Load
Load
Load enable
Write
D data
D address
2
Destination select
Constant in
MB select
A select
A address
B select
B address
R3
R2
R1
R0
Bus D
n
Data In
IL
IR
0 0
0 1
Chapter 10 Part 1 9
Arithmetic Logic Unit (ALU)
 In this and the next section, we deal with detailed design
of typical ALUs and shifters
 Decompose the ALU into:
• An arithmetic circuit
• A logic circuit
• A selector to pick between the two circuits
 Arithmetic circuit design
• Decompose the arithmetic circuit into:
 An n-bit parallel adder
 A block of logic that selects four choices for the B input to the
adder
 See next slide for diagram
Chapter 10 Part 1 10
Arithmetic Circuit Design (continued)
 There are only four functions of B to select as Y in G = A + Y:
• 0
• B
• B
• 1
 What functions are implemented with carry-in to the adder = 0?
=1?
S1
S0
B
n
B input
logic
n
A
n
X
Cin
Y
n
G5 X1 Y1 Cin
Cout
n-bit
parallel
adder
Cin = 0 Cin = 1
G = A
G = A + 1
G = A – 1
G = A + B
G = A
G = A + B
G = A + B + 1
G = A + B + 1
Chapter 10 Part 1 11
Arithmetic Circuit Design (continued)
 Adding selection codes to the functions of B:
 The useful arithmetic functions are labeled in the table
 Note that all four functions of B produce at least one
useful function
TABLE 10-1
FunctionTable forArithmetic Circuit
Select Input
S1 S0 Y
0 0 all 0's (transfer) (increment)
01 B (add)
10 (subtract)
1 1 all 1's (decrement) (transfer)
G AYC in
=
Cin 0 Cin 1
GA
= GA 1
=
GA B
= GA B 1
=
B GA B
= GA B 1
=
GA 1
-
= GA
=
+
+
+
+ +
+ +
+ +
+
= =
Chapter 10 Part 1 12
Logic Circuit
 The text gives a circuit implemented using a multiplexer
plus gates implementing: AND, OR, XOR and NOT
 Here we custom design a circuit for bit Gi by beginning
with a truth table organized as a K-map and assigning
(S1, S0) codes to AND, OR, etc.
 Gi = S0 Ai Bi + S1 Ai Bi
+ S0 Ai Bi + S1 S0 Ai
 Gate input count for
MUX solution > 29
 Gate input count for
above circuit < 20
 Custom design better
S1S0 AND OR XOR NOT
AiBi 0 0 0 1 1 1 1 0
0 0 0 0 0 1
0 1 0 1 1 1
1 1 1 1 0 0
1 0 0 1 1 0
Chapter 10 Part 1 13
Arithmetic Logic Unit (ALU)
 The custom circuit has interchanged the (S1,S0) codes for XOR and NOT
compared to the MUX circuit. To preserve compatibility with the text,
we use the MUX solution.
 Next, use the arithmetic circuit, the logic circuit, and a 2-way
multiplexer to form the ALU. See the next slide for the bit slice diagram.
 The input connections to the arithmetic circuit and logic circuit have
been been assigned to prepare for seamless addition of the shifter,
keeping the selection codes for the combined ALU and the shifter at 4
bits:
• Carry-in Ci and Carry-out Ci+1 go between bits
• Ai and Bi are connected to both units
• A new signal S2 performs the arithmetic/logic selection
• The select signal entering the LSB of the arithmetic circuit, Cin, is
connected to the least significant selection input for the logic circuit,
S0.
Chapter 10 Part 1 14
Arithmetic Logic Unit (ALU) (continued)
 The next most significant select signals, S0 for the arithmetic circuit and
S1 for the logic circuit, are wired together, completing the two select
signals for the logic circuit.
 The remaining S1 completes the three select signals for the arithmetic
circuit.
Ci Ci + 1
One stage of
arithmetic
circuit
One stage of
logic circuit
2-to-1
MUX
0
1
S
A i
Bi
S0
S1
S2
Ci
G i
A i
Bi
S0
S1
A i
Bi
S0
S1
Cin
Chapter 10 Part 1 15
 Direction: Left, Right
 Number of positions with examples:
• Single bit:
 1 position
 0 and 1 positions
• Multiple bit:
 1 to n – 1 positions
 0 to n – 1 positions
 Filling of vacant positions
• Many options depending on instruction set
• Here, will provide input lines or zero fill
Combinational Shifter Parameters
Chapter 10 Part 1 16
4-Bit Basic Left/Right Shifter
 Serial Inputs:
• IR for right shift
• IL for left shift
 Serial Outputs
• R for right shift (Same as MSB input)
• L for left shift (Same as LSB input)
 Shift Functions:
(S1, S0) = 00 Pass B unchanged
01 Right shift
10 Left shift
11 Unused
B3
IR IL
S
Serial
output L
Serial
output R
2
B2 B1 B0
H0
H1
H2
H3
S
M
U
X
0 1 2
S
M
U
X
0 1 2
S
M
U
X
0 1 2
S
M
U
X
0 1 2
Chapter 10 Part 1 17
Barrel Shifter
 A rotate is a shift in which the bits shifted out are inserted into the
positions vacated
 The circuit rotates its contents left from 0 to 3 positions depending on S:
S = 00 position unchanged S = 10 rotate left by 2 positions
S = 01 rotate left by 1 positions S = 11 rotate left by 3 positions
 See Table 10-3 in text for details
D3
S0
3 S1 S0
M
U
X
D2 D1 D0
Y0
Y1
Y2
Y3
S1
0
1
2 3 S1 S0
M
U
X
0
1
2 3 S1 S0
M
U
X
0
1
2 3 S1 S0
M
U
X
0
1
2
Chapter 10 Part 1 18
Barrel Shifter (continued)
 Large barrel shifters can be constructed
by using:
• Layers of multiplexers - Example 64-bit:
 Layer 1 shifts by 0, 16, 32, 48
 Layer 2 shifts by 0, 4, 8, 12
 Layer 3 shifts by 0, 1, 2, 3
 See example in section 12-2 of the text
• 2 - dimensional array circuits designed at the
electronic level
Chapter 10 Part 1 19
Datapath Representation
 Have looked at detailed design of
ALU and shifter in the datapath
in slide 8
 Here we move up one level in the
hierarchy from that datapath
 The registers, and the
multiplexer, decoder, and enable
hardware for accessing them
become a register file
 The ALU, shifter, Mux F and
status hardware become a
function unit
 The remaining muxes and buses
which handle data transfers are
at the new level of the hierarchy
Address out
Data out
Constant in
MB select
Bus A
Bus B
FS
V
C
N
Z
MD select
n
D data
Write
D address
A address B address
A data B data
2m
x n
Register file
m
m m
n n
n
n
n
A B
Function
unit
F
4
MUX B
1 0
MUX D
0 1
n n
Data in
Chapter 10 Part 1 20
Datapath Representation (continued)
 In the register file:
• Multiplexer select inputs become
A address and B address
• Decoder input becomes D
address
• Multiplexer outputs become A
data and B data
• Input data to the registers
becomes D data
• Load enable becomes write
 The register file now appears like
a memory based on clocked flip-
flops (the clock is not shown)
 The function unit labeling is quite
straightforward except for FS
Address out
Data out
Constant in
MB select
Bus A
Bus B
FS
V
C
N
Z
MD select
n
D data
Write
D address
A address B address
A data B data
2m
x n
Register file
m
m m
n n
n
n
n
A B
Function
unit
F
4
MUX B
1 0
MUX D
0 1
n
n
Data in
Chapter 10 Part 1 21
Boolean
Equations:
MFS = F3 F2
GSi = Fi
HSi = Fi
G Select, H Select, and MF
in T of FS Codes
FS(3:0)
MF
Select
G
Select(3:0)
H
Select(3:0) Microoperation
0000 0 0000 XX
0001 0 0001 XX
0010 0 0010 XX
0011 0 0011 XX
0100 0 0100 XX
0101 0 0101 XX
0110 0 0110 XX
0111 0 0111 XX
1000 0 1 X00 XX
1001 0 1 X01 XX
1010 0 1 X10 XX
1011 0 1 X11 XX
1100 1 XXXX 00
1101 1 XXXX 01
1110 1 XXXX 10
F A

F A 1
+

F A B

F A B 1

F A B

F A B 1

F A 1
-

F A

F A B


F A B


F A B

F A

F B

F sr B

F sl B

+
+ +
+
+ +

Definition of Function Unit Select (FS) Codes
Chapter 10 Part 1 22
The Control Word
 The datapath has many control inputs
 The signals driving these inputs can be defined
and organized into a control word
 To execute a microinstruction, we apply control
word values for a clock cycle. For most
microoperations, the positive edge of the clock
cycle is needed to perform the register load
 The datapath control word format and the field
definitions are shown on the next slide
Chapter 10 Part 1 23
The Control Word Fields
 Fields
• DA – D Address
• AA – AAddress
• BA – B Address
• MB – Mux B
• FS – Function Select
• MD – Mux D
• RW – Register Write
 The connections to datapath are shown in the next slide
Control word
DA AA BA M
B
FS M
D
R
W
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Chapter 10 Part 1 24
Control Word Block Diagram
10
8
14
0
13
11
Bus D
Constant in
n
n
MUX B
1 0
D data
Write
D address
A address B address
A data B data
8 x n
Register file
A B
Function
unit
n
n
n
MUX D
0 1
n
n
Data in
Bus A
Bus B
RW
12
AA
15
DA
n
BA
9
Address out
Data out
V
C
N
Z
7
MD 1
MB 6
4 FS
5
3
2
Chapter 10 Part 1 25
F A
Encoding of Control W
DA, AA, BA MB FS MD RW
Function Code Function Code Function Code Function Code Function Code
R0 000 Register 0 0000 Function 0 No write 0
R1 001 Constant 1 0001 Data In 1 Write 1
R2 010 0010
R3 011 0011
R4 100 0100
R5 101 0101
R6 110 0110
R7 111 0111
1000
1001
1010
1011
1100
1101
1110
F A

F A 1
+

B

F A B 1

F A B

F A B 1

F A 1
-

F A

F A B


F A B


F A B

F A

F B

F sr B

F sl B

+
+ +
+
+ +

Control Word Encoding
Chapter 10 Part 1 26
Microoperations for the Datapath -
Symbolic Representation
Micro-
operation DA AA BA MB FS MD RW
R1 R2 R3 Register Function Write
R4 — R6 Register Function Write
R7 R7 — Register Function Write
R1 R0 — Constant Function Write
—— R3 Register — — No Wr ite
R4 —— — — Data in Write
R5 R0 R0 Register Function Write
R1 R2 R3
–
 F A B 1
+ +
=
R4 sl R6
 F sl B
=
R7 R7 1
+
 F A 1
+
=
R1 R0 2
+
 F A B
+
=
Data out R3

R4 Data in

R5 0
 F A B

=
Chapter 10 Part 1 27
m Microoperations from Ta Binary Co o
 Results of simulation of the above on the
next slide
Microoperations for the Datapath -
Binary Representation
Micro-
operation DA AA BA MB FS MD RW
001 010 011 0 0101 0 1
100 XXX 110 0 1110 0 1
111 111 XXX 0 0001 0 1
001 000 XXX 1 0010 0 1
XXX XXX 011 0 XXXX X 0
100 XXX XXX X XXXX 1 1
101 000 000 0 1010 0 1
R1 R2 R3
–

R4 sl R6

R7 R7 1
+

R1 R0 2
+

Data out R3

R4 Data in

R5 0

Chapter 10 Part 1 28
Datapath Simulation
1 4 7 1 0 4 5
2 0 7 0
3 6 0 3 0
X X
2 0 7 0
3 6 0 2 3 0
14 1 2 0 10
2 0 0 1 X
18 18
1 255 2
2
3
4 12 18
5 0
6
7 8
clock
DA
1 4
AA
2
BA
3 6
Constant_in 2
MB
Address_out
Data_out
FS
5
Status_bits
Data_in
MD
RW
reg0 0
reg1
reg2
reg3
reg4
reg5
reg6
reg7
7 8
5
Chapter 10 Part 1 29
Terms of Use
 © 2004 by Pearson Education,Inc. All rights reserved.
 The following terms of use apply in addition to the standard Pearson
Education Legal Notice.
 Permission is given to incorporate these materials into classroom
presentations and handouts only to instructors adopting Logic and
Computer Design Fundamentals as the course text.
 Permission is granted to the instructors adopting the book to post these
materials on a protected website or protected ftp site in original or
modified form. All other website or ftp postings, including those
offering the materials for a fee, are prohibited.
 You may not remove or in any way alter this Terms of Use notice or
any trademark, copyright, or other proprietary notice, including the
copyright watermark on each slide.
 Return to Title Page
Chapter 1 30
This Summary is an Online Content from this Book:
Morris Mano, DIGITAL DESIGN, 4th Edition, Prentice Hall, 2007
It is edited for
Logic Analysis and Design Course
6803213-3
by:
T.Mariah Sami Khayat
Teacher Assistant @ Adam University College
For Contacting:
mskhayat@uqu.edu.sa
Kingdom of Saudi Arabia
Ministry of Education
Umm AlQura University
Adam University College
Computer Science Department
‫السعودية‬ ‫العربية‬ ‫المملكة‬
‫التعليم‬ ‫وزارة‬
‫القرى‬ ‫أم‬ ‫جامعة‬
‫أضم‬ ‫الجامعية‬ ‫الكلية‬
‫اآللي‬ ‫الحاسب‬ ‫قسم‬

More Related Content

Similar to LCDF3_Chap_10_P1.ppt

REGISTER TRANSFER AND MICROOPERATIONS2017-3-5.ppt
REGISTER  TRANSFER  AND  MICROOPERATIONS2017-3-5.pptREGISTER  TRANSFER  AND  MICROOPERATIONS2017-3-5.ppt
REGISTER TRANSFER AND MICROOPERATIONS2017-3-5.pptNARENDRAKUMARCHAURAS1
 
Digital VLSI - Unit 2.pptx
Digital VLSI - Unit 2.pptxDigital VLSI - Unit 2.pptx
Digital VLSI - Unit 2.pptxSanjaiPrasad
 
Combinational and sequential logic
Combinational and sequential logicCombinational and sequential logic
Combinational and sequential logicDeepak John
 
Register transfer and microoperations
Register transfer and microoperationsRegister transfer and microoperations
Register transfer and microoperationsmahesh kumar prajapat
 
Digital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECE
Digital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECEDigital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECE
Digital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECESeshaVidhyaS
 
Digital electronics nandhini kusuma
Digital electronics nandhini kusumaDigital electronics nandhini kusuma
Digital electronics nandhini kusumakusuma11
 
Digital electronics nandhini kusuma
Digital electronics nandhini kusumaDigital electronics nandhini kusuma
Digital electronics nandhini kusumakusuma11
 
Digital electronics nandhini kusuma
Digital electronics nandhini kusumaDigital electronics nandhini kusuma
Digital electronics nandhini kusumakusuma11
 
Chapter 07 Digital Alrithmetic and Arithmetic Circuits
Chapter 07 Digital Alrithmetic and Arithmetic CircuitsChapter 07 Digital Alrithmetic and Arithmetic Circuits
Chapter 07 Digital Alrithmetic and Arithmetic CircuitsSSE_AndyLi
 
Chapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSIChapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSIEr. Nawaraj Bhandari
 
Register transfer &amp; microoperations moris mano ch 04
Register transfer &amp; microoperations    moris mano ch 04Register transfer &amp; microoperations    moris mano ch 04
Register transfer &amp; microoperations moris mano ch 04thearticlenow
 
LEC 2-register transfer and register transfer language.ppt
LEC 2-register transfer and register transfer language.pptLEC 2-register transfer and register transfer language.ppt
LEC 2-register transfer and register transfer language.pptmailmynew202
 
Single Cycle Processing
Single Cycle ProcessingSingle Cycle Processing
Single Cycle Processinginmogr
 
Design of chip controller
Design of chip controllerDesign of chip controller
Design of chip controllerasha
 

Similar to LCDF3_Chap_10_P1.ppt (20)

Chapter-04.pdf
Chapter-04.pdfChapter-04.pdf
Chapter-04.pdf
 
Co ppt
Co pptCo ppt
Co ppt
 
REGISTER TRANSFER AND MICROOPERATIONS2017-3-5.ppt
REGISTER  TRANSFER  AND  MICROOPERATIONS2017-3-5.pptREGISTER  TRANSFER  AND  MICROOPERATIONS2017-3-5.ppt
REGISTER TRANSFER AND MICROOPERATIONS2017-3-5.ppt
 
Digital VLSI - Unit 2.pptx
Digital VLSI - Unit 2.pptxDigital VLSI - Unit 2.pptx
Digital VLSI - Unit 2.pptx
 
Combinational and sequential logic
Combinational and sequential logicCombinational and sequential logic
Combinational and sequential logic
 
Unit 4 dica
Unit 4 dicaUnit 4 dica
Unit 4 dica
 
Register transfer and microoperations
Register transfer and microoperationsRegister transfer and microoperations
Register transfer and microoperations
 
Digital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECE
Digital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECEDigital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECE
Digital Electronics (EC8392) UNIT-II -PPT-S.SESHA VIDHYA/ ASP/ECE
 
Digital electronics nandhini kusuma
Digital electronics nandhini kusumaDigital electronics nandhini kusuma
Digital electronics nandhini kusuma
 
Digital electronics nandhini kusuma
Digital electronics nandhini kusumaDigital electronics nandhini kusuma
Digital electronics nandhini kusuma
 
Digital electronics nandhini kusuma
Digital electronics nandhini kusumaDigital electronics nandhini kusuma
Digital electronics nandhini kusuma
 
microprocessors
microprocessorsmicroprocessors
microprocessors
 
Chapter 07 Digital Alrithmetic and Arithmetic Circuits
Chapter 07 Digital Alrithmetic and Arithmetic CircuitsChapter 07 Digital Alrithmetic and Arithmetic Circuits
Chapter 07 Digital Alrithmetic and Arithmetic Circuits
 
Chapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSIChapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSI
 
Register transfer &amp; microoperations moris mano ch 04
Register transfer &amp; microoperations    moris mano ch 04Register transfer &amp; microoperations    moris mano ch 04
Register transfer &amp; microoperations moris mano ch 04
 
LEC 2-register transfer and register transfer language.ppt
LEC 2-register transfer and register transfer language.pptLEC 2-register transfer and register transfer language.ppt
LEC 2-register transfer and register transfer language.ppt
 
Single Cycle Processing
Single Cycle ProcessingSingle Cycle Processing
Single Cycle Processing
 
5. Arithmaticn combinational Ckt.ppt
5. Arithmaticn combinational Ckt.ppt5. Arithmaticn combinational Ckt.ppt
5. Arithmaticn combinational Ckt.ppt
 
Design of chip controller
Design of chip controllerDesign of chip controller
Design of chip controller
 
Chapter5 dek3133
Chapter5 dek3133Chapter5 dek3133
Chapter5 dek3133
 

Recently uploaded

Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...Call Girls in Nagpur High Profile
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 

Recently uploaded (20)

Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 

LCDF3_Chap_10_P1.ppt

  • 1. Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Chapter 10 – Computer Design Basics Part 1 – Datapaths Logic and Computer Design Fundamentals
  • 2. Chapter 10 Part 1 2 Overview  Part 1 – Datapaths • Introduction • Datapath Example • Arithmetic Logic Unit (ALU) • Shifter • Datapath Representation • Control Word  Part 2 – A Simple Computer • Instruction Set Architecture (ISA) • Single-Cycle Hardwired Control  Instruction Decoder  Sample Instructions  Single Cycle Computer Issues • Multiple Cycle Hardwired Control  Sequential Control Design
  • 3. Chapter 10 Part 1 3 Introduction  Computer Specification • Instruction Set Architecture (ISA) - the specification of a computer's appearance to a programmer at its lowest level • Computer Architecture - a high-level description of the hardware implementing the computer derived from the ISA • The architecture usually includes additional specifications such as speed, cost, and reliability.
  • 4. Chapter 10 Part 1 4 Introduction (continued)  Simple computer architecture decomposed into: • Datapath for performing operations • Control unit for controlling datapath operations  A datapath is specified by: • A set of registers • The microoperations performed on the data stored in the registers • A control interface
  • 5. Chapter 10 Part 1 5 Datapaths  Guiding principles for basic datapaths: • The set of registers  Collection of individual registers  A set of registers with common access resources called a register file  A combination of the above • Microoperation implementation  One or more shared resources for implementing microoperations  Buses - shared transfer paths  Arithmetic-Logic Unit (ALU) - shared resource for implementing arithmetic and logic microoperations  Shifter - shared resource for implementing shift microoperations
  • 6. Chapter 10 Part 1 6  Four parallel-load registers  Two mux-based register selectors  Register destination decoder  Mux B for external constant input  Buses A and B with external address and data outputs  ALU and Shifter with Mux F for output select  Mux D for external data input  Logic for generating status bits V, C, N, Z MD select 0 1 MUX D V C N Z n n n n n n n n n n n 2 2 n n A data B data Register file 1 0 MUX B Address Out Data Out Bus A Bus B n n Function unit A B n G select 4 Zero Detect MF select n n n F MUX F H select 2 n A B S2:0 || Cin Arithmetic/logic unit (ALU) G B S Shifter H MUX 0 1 2 3 MUX 0 1 2 3 0 1 2 3 Decoder Load Load Load Load Load enable Write D data D address 2 Destination select Constant in MB select A select A address B select B address R3 R2 R1 R0 Bus D n Data In IL IR 0 0 0 1 Datapath Example
  • 7. Chapter 10 Part 1 7  Microoperation: R0 ← R1 + R2 MD select 0 1 MUX D V C N Z n n n n n n n n n n n 2 2 n n A data B data Register file 1 0 MUX B Address Out Data Out Bus A Bus B n n Function unit A B n G select 4 Zero Detect MF select n n n F MUX F H select 2 n A B S2:0 || Cin Arithmetic/logic unit (ALU) G B S Shifter H MUX 0 1 2 3 MUX 0 1 2 3 0 1 2 3 Decoder Load Load Load Load Load enable Write D data D address 2 Destination select Constant in MB select A select A address B select B address R3 R2 R1 R0 Bus D n Data In IL IR 0 0 0 1 Datapath Example: Performing a Microoperation  Apply 01 to A select to place contents of R1 onto Bus A  Apply 10 to B select to place contents of R2 onto B data and apply 0 to MB select to place B data on Bus B  Apply 0010 to G select to perform addition G = Bus A + Bus B  Apply 0 to MF select and 0 to MD select to place the value of G onto BUS D  Apply 00 to Destination select to enable the Load input to R0  Apply 1 to Load Enable to force the Load input to R0 to 1 so that R0 is loaded on the clock pulse (not shown)  The overall microoperation requires 1 clock cycle
  • 8. Chapter 10 Part 1 8 Datapath Example: Key Control Actions for Microoperation Alternatives  Perform a shift microoperation – apply 1 to MF select  Use a constant in a micro- operation using Bus B – apply 1 to MB select  Provide an address and data for a memory or output write microoperation – apply 0 to Load enable to prevent register loading  Provide an address and obtain data for a memory or output read microoperation – apply 1 to MD select  For some of the above, other control signals become don't cares MD select 0 1 MUX D V C N Z n n n n n n n n n n n 2 2 n n A data B data Register file 1 0 MUX B Address Out Data Out Bus A Bus B n n Function unit A B n G select 4 Zero Detect MF select n n n F MUX F H select 2 n A B S2:0 || Cin Arithmetic/logic unit (ALU) G B S Shifter H MUX 0 1 2 3 MUX 0 1 2 3 0 1 2 3 Decoder Load Load Load Load Load enable Write D data D address 2 Destination select Constant in MB select A select A address B select B address R3 R2 R1 R0 Bus D n Data In IL IR 0 0 0 1
  • 9. Chapter 10 Part 1 9 Arithmetic Logic Unit (ALU)  In this and the next section, we deal with detailed design of typical ALUs and shifters  Decompose the ALU into: • An arithmetic circuit • A logic circuit • A selector to pick between the two circuits  Arithmetic circuit design • Decompose the arithmetic circuit into:  An n-bit parallel adder  A block of logic that selects four choices for the B input to the adder  See next slide for diagram
  • 10. Chapter 10 Part 1 10 Arithmetic Circuit Design (continued)  There are only four functions of B to select as Y in G = A + Y: • 0 • B • B • 1  What functions are implemented with carry-in to the adder = 0? =1? S1 S0 B n B input logic n A n X Cin Y n G5 X1 Y1 Cin Cout n-bit parallel adder Cin = 0 Cin = 1 G = A G = A + 1 G = A – 1 G = A + B G = A G = A + B G = A + B + 1 G = A + B + 1
  • 11. Chapter 10 Part 1 11 Arithmetic Circuit Design (continued)  Adding selection codes to the functions of B:  The useful arithmetic functions are labeled in the table  Note that all four functions of B produce at least one useful function TABLE 10-1 FunctionTable forArithmetic Circuit Select Input S1 S0 Y 0 0 all 0's (transfer) (increment) 01 B (add) 10 (subtract) 1 1 all 1's (decrement) (transfer) G AYC in = Cin 0 Cin 1 GA = GA 1 = GA B = GA B 1 = B GA B = GA B 1 = GA 1 - = GA = + + + + + + + + + + = =
  • 12. Chapter 10 Part 1 12 Logic Circuit  The text gives a circuit implemented using a multiplexer plus gates implementing: AND, OR, XOR and NOT  Here we custom design a circuit for bit Gi by beginning with a truth table organized as a K-map and assigning (S1, S0) codes to AND, OR, etc.  Gi = S0 Ai Bi + S1 Ai Bi + S0 Ai Bi + S1 S0 Ai  Gate input count for MUX solution > 29  Gate input count for above circuit < 20  Custom design better S1S0 AND OR XOR NOT AiBi 0 0 0 1 1 1 1 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 0
  • 13. Chapter 10 Part 1 13 Arithmetic Logic Unit (ALU)  The custom circuit has interchanged the (S1,S0) codes for XOR and NOT compared to the MUX circuit. To preserve compatibility with the text, we use the MUX solution.  Next, use the arithmetic circuit, the logic circuit, and a 2-way multiplexer to form the ALU. See the next slide for the bit slice diagram.  The input connections to the arithmetic circuit and logic circuit have been been assigned to prepare for seamless addition of the shifter, keeping the selection codes for the combined ALU and the shifter at 4 bits: • Carry-in Ci and Carry-out Ci+1 go between bits • Ai and Bi are connected to both units • A new signal S2 performs the arithmetic/logic selection • The select signal entering the LSB of the arithmetic circuit, Cin, is connected to the least significant selection input for the logic circuit, S0.
  • 14. Chapter 10 Part 1 14 Arithmetic Logic Unit (ALU) (continued)  The next most significant select signals, S0 for the arithmetic circuit and S1 for the logic circuit, are wired together, completing the two select signals for the logic circuit.  The remaining S1 completes the three select signals for the arithmetic circuit. Ci Ci + 1 One stage of arithmetic circuit One stage of logic circuit 2-to-1 MUX 0 1 S A i Bi S0 S1 S2 Ci G i A i Bi S0 S1 A i Bi S0 S1 Cin
  • 15. Chapter 10 Part 1 15  Direction: Left, Right  Number of positions with examples: • Single bit:  1 position  0 and 1 positions • Multiple bit:  1 to n – 1 positions  0 to n – 1 positions  Filling of vacant positions • Many options depending on instruction set • Here, will provide input lines or zero fill Combinational Shifter Parameters
  • 16. Chapter 10 Part 1 16 4-Bit Basic Left/Right Shifter  Serial Inputs: • IR for right shift • IL for left shift  Serial Outputs • R for right shift (Same as MSB input) • L for left shift (Same as LSB input)  Shift Functions: (S1, S0) = 00 Pass B unchanged 01 Right shift 10 Left shift 11 Unused B3 IR IL S Serial output L Serial output R 2 B2 B1 B0 H0 H1 H2 H3 S M U X 0 1 2 S M U X 0 1 2 S M U X 0 1 2 S M U X 0 1 2
  • 17. Chapter 10 Part 1 17 Barrel Shifter  A rotate is a shift in which the bits shifted out are inserted into the positions vacated  The circuit rotates its contents left from 0 to 3 positions depending on S: S = 00 position unchanged S = 10 rotate left by 2 positions S = 01 rotate left by 1 positions S = 11 rotate left by 3 positions  See Table 10-3 in text for details D3 S0 3 S1 S0 M U X D2 D1 D0 Y0 Y1 Y2 Y3 S1 0 1 2 3 S1 S0 M U X 0 1 2 3 S1 S0 M U X 0 1 2 3 S1 S0 M U X 0 1 2
  • 18. Chapter 10 Part 1 18 Barrel Shifter (continued)  Large barrel shifters can be constructed by using: • Layers of multiplexers - Example 64-bit:  Layer 1 shifts by 0, 16, 32, 48  Layer 2 shifts by 0, 4, 8, 12  Layer 3 shifts by 0, 1, 2, 3  See example in section 12-2 of the text • 2 - dimensional array circuits designed at the electronic level
  • 19. Chapter 10 Part 1 19 Datapath Representation  Have looked at detailed design of ALU and shifter in the datapath in slide 8  Here we move up one level in the hierarchy from that datapath  The registers, and the multiplexer, decoder, and enable hardware for accessing them become a register file  The ALU, shifter, Mux F and status hardware become a function unit  The remaining muxes and buses which handle data transfers are at the new level of the hierarchy Address out Data out Constant in MB select Bus A Bus B FS V C N Z MD select n D data Write D address A address B address A data B data 2m x n Register file m m m n n n n n A B Function unit F 4 MUX B 1 0 MUX D 0 1 n n Data in
  • 20. Chapter 10 Part 1 20 Datapath Representation (continued)  In the register file: • Multiplexer select inputs become A address and B address • Decoder input becomes D address • Multiplexer outputs become A data and B data • Input data to the registers becomes D data • Load enable becomes write  The register file now appears like a memory based on clocked flip- flops (the clock is not shown)  The function unit labeling is quite straightforward except for FS Address out Data out Constant in MB select Bus A Bus B FS V C N Z MD select n D data Write D address A address B address A data B data 2m x n Register file m m m n n n n n A B Function unit F 4 MUX B 1 0 MUX D 0 1 n n Data in
  • 21. Chapter 10 Part 1 21 Boolean Equations: MFS = F3 F2 GSi = Fi HSi = Fi G Select, H Select, and MF in T of FS Codes FS(3:0) MF Select G Select(3:0) H Select(3:0) Microoperation 0000 0 0000 XX 0001 0 0001 XX 0010 0 0010 XX 0011 0 0011 XX 0100 0 0100 XX 0101 0 0101 XX 0110 0 0110 XX 0111 0 0111 XX 1000 0 1 X00 XX 1001 0 1 X01 XX 1010 0 1 X10 XX 1011 0 1 X11 XX 1100 1 XXXX 00 1101 1 XXXX 01 1110 1 XXXX 10 F A  F A 1 +  F A B  F A B 1  F A B  F A B 1  F A 1 -  F A  F A B   F A B   F A B  F A  F B  F sr B  F sl B  + + + + + +  Definition of Function Unit Select (FS) Codes
  • 22. Chapter 10 Part 1 22 The Control Word  The datapath has many control inputs  The signals driving these inputs can be defined and organized into a control word  To execute a microinstruction, we apply control word values for a clock cycle. For most microoperations, the positive edge of the clock cycle is needed to perform the register load  The datapath control word format and the field definitions are shown on the next slide
  • 23. Chapter 10 Part 1 23 The Control Word Fields  Fields • DA – D Address • AA – AAddress • BA – B Address • MB – Mux B • FS – Function Select • MD – Mux D • RW – Register Write  The connections to datapath are shown in the next slide Control word DA AA BA M B FS M D R W 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
  • 24. Chapter 10 Part 1 24 Control Word Block Diagram 10 8 14 0 13 11 Bus D Constant in n n MUX B 1 0 D data Write D address A address B address A data B data 8 x n Register file A B Function unit n n n MUX D 0 1 n n Data in Bus A Bus B RW 12 AA 15 DA n BA 9 Address out Data out V C N Z 7 MD 1 MB 6 4 FS 5 3 2
  • 25. Chapter 10 Part 1 25 F A Encoding of Control W DA, AA, BA MB FS MD RW Function Code Function Code Function Code Function Code Function Code R0 000 Register 0 0000 Function 0 No write 0 R1 001 Constant 1 0001 Data In 1 Write 1 R2 010 0010 R3 011 0011 R4 100 0100 R5 101 0101 R6 110 0110 R7 111 0111 1000 1001 1010 1011 1100 1101 1110 F A  F A 1 +  B  F A B 1  F A B  F A B 1  F A 1 -  F A  F A B   F A B   F A B  F A  F B  F sr B  F sl B  + + + + + +  Control Word Encoding
  • 26. Chapter 10 Part 1 26 Microoperations for the Datapath - Symbolic Representation Micro- operation DA AA BA MB FS MD RW R1 R2 R3 Register Function Write R4 — R6 Register Function Write R7 R7 — Register Function Write R1 R0 — Constant Function Write —— R3 Register — — No Wr ite R4 —— — — Data in Write R5 R0 R0 Register Function Write R1 R2 R3 –  F A B 1 + + = R4 sl R6  F sl B = R7 R7 1 +  F A 1 + = R1 R0 2 +  F A B + = Data out R3  R4 Data in  R5 0  F A B  =
  • 27. Chapter 10 Part 1 27 m Microoperations from Ta Binary Co o  Results of simulation of the above on the next slide Microoperations for the Datapath - Binary Representation Micro- operation DA AA BA MB FS MD RW 001 010 011 0 0101 0 1 100 XXX 110 0 1110 0 1 111 111 XXX 0 0001 0 1 001 000 XXX 1 0010 0 1 XXX XXX 011 0 XXXX X 0 100 XXX XXX X XXXX 1 1 101 000 000 0 1010 0 1 R1 R2 R3 –  R4 sl R6  R7 R7 1 +  R1 R0 2 +  Data out R3  R4 Data in  R5 0 
  • 28. Chapter 10 Part 1 28 Datapath Simulation 1 4 7 1 0 4 5 2 0 7 0 3 6 0 3 0 X X 2 0 7 0 3 6 0 2 3 0 14 1 2 0 10 2 0 0 1 X 18 18 1 255 2 2 3 4 12 18 5 0 6 7 8 clock DA 1 4 AA 2 BA 3 6 Constant_in 2 MB Address_out Data_out FS 5 Status_bits Data_in MD RW reg0 0 reg1 reg2 reg3 reg4 reg5 reg6 reg7 7 8 5
  • 29. Chapter 10 Part 1 29 Terms of Use  © 2004 by Pearson Education,Inc. All rights reserved.  The following terms of use apply in addition to the standard Pearson Education Legal Notice.  Permission is given to incorporate these materials into classroom presentations and handouts only to instructors adopting Logic and Computer Design Fundamentals as the course text.  Permission is granted to the instructors adopting the book to post these materials on a protected website or protected ftp site in original or modified form. All other website or ftp postings, including those offering the materials for a fee, are prohibited.  You may not remove or in any way alter this Terms of Use notice or any trademark, copyright, or other proprietary notice, including the copyright watermark on each slide.  Return to Title Page
  • 30. Chapter 1 30 This Summary is an Online Content from this Book: Morris Mano, DIGITAL DESIGN, 4th Edition, Prentice Hall, 2007 It is edited for Logic Analysis and Design Course 6803213-3 by: T.Mariah Sami Khayat Teacher Assistant @ Adam University College For Contacting: mskhayat@uqu.edu.sa Kingdom of Saudi Arabia Ministry of Education Umm AlQura University Adam University College Computer Science Department ‫السعودية‬ ‫العربية‬ ‫المملكة‬ ‫التعليم‬ ‫وزارة‬ ‫القرى‬ ‫أم‬ ‫جامعة‬ ‫أضم‬ ‫الجامعية‬ ‫الكلية‬ ‫اآللي‬ ‫الحاسب‬ ‫قسم‬