Introduction to Computer Architecture

College of Computer Science and Technology, Zhejiang University, Fall 2021
Monday 08:00 - 11:25/12:15, Cao Guangbiao Building West Wing
Room 202 Lecture, Room 301 Lab

Acknowledgement

The lab materials heavily follow the design from Dr. Zonghui Wang, who provides generous help to develop sample code as well.

Lab Objective

1.  Learn the operation of the SWORD board and the usage of Xilinx Vivado.
2.  Understand the principle of the pipelined CPU and RISC-V instructions.
3.  Design the pipelined CPU that can execute RV32I instructions correctly on the SWORD board step by step according to the lab tutorial.
4.  Enhance the pipelined CPU with various caching and scheduling techniques.

Lab Sessions

Lab 01     
 
 
Review & warmup the experiment environment of the course of Computer Organization:
SWORD board, Xilinx Vivado environment;
Implement a 5-staged pipelined CPU with forwarding and predicted-not-taken to support RV32I instructions.
Lab 02      Implement handling of interrupt and exception on the pipelined CPU from Lab 01.
Lab 03      Implement a two-way associative cache through simulation.
Lab 04      Incorporate the two-way associative cache from Lab 03 to the pipelined CPU from Lab 02.
Lab 05      Extend the pipelined CPU from Lab 02 to support multi-cycle operations, out-of-order execution, and hazard detection.
Lab 06    
 
Extend the pipelined CPU from Lab 05 to support dynamic scheduling such as Scoreboarding or Tomasulo.
 

Grading: 32%

Lab 01     Lab 02     Lab 03     Lab 04     Lab 05     Lab 06    
6%     4%     3%     4%     7%     8%    

Notes: A demo of the experiment result is required during the lab session; a report should be submitted per instructions.

Report

Report template (Latex version)
Report submission website: https://courses.zju.edu.cn/

Due Dates

  Demo Report
Lab 01     2021.10.11     2021.10.18
Lab 02     2021.10.25 2021.11.01
Lab 03     2021.11.08 2021.11.15
Lab 04     2021.11.15 2021.11.22
Lab 05     2021.12.06 2021.12.13
Lab 06     2022.01.03 2022.01.05

Lab Opening Hours

TBD