Special
Topics in Hardware Systems
COL 861 (3-0-0)
Instructor:
Dr. Smruti R. Sarangi
TA: Prathmesh Kallurkar
Objective of the course: Design a 2 issue out-of-order pipeline
in Verilog/VHDL for the SimpleRisc instruction set. It should
have most of the basic features of modern
OOO designs including: branch prediction, renaming,
wakeup-select, bypass, and precise exceptions.
Checkpoints:
1) Minor 1:
a) Bimodal branch predictor
b) Fetch and Decode
c) Renaming, dependency checks, free list (or
ROB based renaming)
d) Pipeline these stages
2) Minor 2:
a) Instruction Window
b) Broadcast and Wakeup
c) Execute and bypass
d) A basic branchless code should be
executing correctly at this stage
e) Regsiter read/write
3) Major:
a) LSQ
b) ROB and commit
c) Branch misprediction and recovery
d) Execution of large codes with loops