Title: CPE 431531 Chapter 5 The Processor: Datapath and Control
1CPE 431/531Chapter 5 - The Processor Datapath
and Control
Swathi T. Gurumani Modified From Slides of Dr.
Rhonda Kay Gaede UAH
25.1 Introduction Implementation Basics
- Performance Factors
- Instruction Count
- Cycle Time
- CPI
- A Basic MIPS Implementation
- Simple subset lw, sw, add, sub, and, or, slt,
beq, j
35.1 Introduction Implementation Overview
- All instructions begin the same way
- Send PC to memory and fetch the instruction
- Read registers using fields of instruction
- Then, it depends on the instruction
- Use ALU after reading registers
- lw sw - Address calculation
- add et.al. - operation execution
- beq - comparison
- Simplicity and regularity of instruction set
simplifies the implementation
45.1 Introduction Implementation Datapath,
Datapath Control
55.1 Introduction Implementation Datapath,
Datapath Control
Datapath Control
65.2 Logic Design Conventions Classes and Values
- Two classes of logic
- Elements that operate on data values -
Combinational - Elements that contain state State elements
(some internal storage) - sequential - Two logic values
- Asserted - high
- Deasserted - low
75.2 Logic Design Conventions Clocking
Methodology
- A clocking methodology defines when signals can
be read and when they can be written. - We assume an edge-triggered clocking methodology.
85.3 Building a Datapath -Instruction Fetch and
Sequencing
Datapath element Functional unit used to
operate on or hold data within a
processor Program counter (PC) Register
containing the address of current instruction
95.3 Building a Datapath -R-type Instruction
Requirements
105.2 Building a Datapath lw/sw Instruction
Requirements
115.3 Building a Datapath beq Instruction
Requirements
Branch Target Address Address specified in A
branch, which becomes the new PC if branch is
taken. Branch taken, branch not taken
125.3 Building a Datapath Creating a Single
Datapath R-type lw/sw
135.3 Building a Datapath Creating a Single
Datapath
145.4 A Simple Implementation Scheme Defining
Necessary Control
155.4 A Simple Implementation Scheme - Adding a
Control Unit