Building a Simple MIPS Datapath
Tom Kelliher, CS 220
Nov. 4, 2005
Read 5.4.
Comparing performance.
- Quick introduction to digital logic.
- Overview of the MIPS implementation.
Completing the datapath.
(Register for CS 240 for the complete introduction.)
- Basic logic gates: Inverter, AND, OR.
- One bit full adder:
- From truth table to gates.
- Multiple bit adders.
- 2-1 mux:
- What is it and why do we need it?
- From truth table to gates.
- The clock signal.
Sequential elements are rising edge sensitive.
- Clocking registers.
- A simple pipeline.
- A loadable counter.
Instruction set subset we'll consider:
lw
/sw
.
add
, sub
, and
, or
, slt
.
beq
.
j
.
The general instruction cycle:
- Instruction fetch.
- Instruction decode.
- Register fetch.
- Operate.
- Register store or memory operation.
How do the steps of the cycle fit each of the three instruction classes:
arithmetic-logic, memory reference, branch?
A high level view of the implementation, in view of the instruction cycle:
- Datapath only.
- Is everything we need for our instructions here?
- Why two memories?
Thomas P. Kelliher
2005-11-01
Tom Kelliher