University of Bristol 8bit - Computer - Uarch
University of Bristol 8bit - Computer - Uarch
Tom Deakin
Lecture 3
University of Bristol
Outline
1. Timing
2. Data Path
3. Decode
6. ModuleSim
Reg
Timing unit
Reg
Timing unit
Reg
Reg
Timing unit
Reg φ2
Timing unit
Fetch
DEMUX Inc PC
Execute
• Start with a register (will use 4-bit).
• Use an ALU to add 1 to the value.
• Want to feedback result back to add ADD 1
again — store in a second register.
• Two-phase clock so registers update in
turn. Reg φ1
φ1
φ2
Timing unit: signals
Fetch
φ1
φ2
Timing unit: signals
Fetch
Inc PC
φ1
φ2
Timing unit: signals
Fetch
Inc PC
Execute
φ1
φ2
A MUX
A MUX B MUX
0 0
0 0
ALU
0 0
0 0
rreg
0 0
rreg
0 0
rreg φ1
0 0
rreg φ1
0 0
rreg φ1
ALU COND
0 0
To Control
areg pc breg inst/oreg
selection.
DEMUX
Execute
DEMUX DEMUX
selection.
• Example: Instruction 0110 → 01 10 DEMUX
Execute
DEMUX DEMUX
selection.
• Example: Instruction 0110 → 01 10 DEMUX
10
selection.
• Example: Instruction 0110 → 01 10 DEMUX
on left DMUX.
01 10
selection.
• Example: Instruction 0110 → 01 10 DEMUX
on left DMUX.
• On Execute signal, left DMUX 01 10
selects which right DMUX to 4-bit instruction, split into two 2-bit signals
activate — only one output signal.
©Tom Deakin [email protected] 6
Modules and ModuleSim
Modules
Modules were once used to construct a giant 16-bit computer called The Big Hex
Machine.
• You’ll use ModuleSim to build the Hex 8 computer instead of the physical
modules.
• See lab sheet for details.