Try   HackMD

Assignment3: SoftCPU

Due: Dec 20, 2021

Requirements

  1. Following the instructions of srv32 - RISCV RV32IM Soft CPU, you shall modify the assembly programs used/done with Assignment1 for srv32 Simulation with Verilator.
    • dhrystone is a good starting point for writing test cases.
    • You should validate the results in your program(s).
    • You should program in RISC-V assembly for the sake of further optimizations. Hint: You may modify a customized Makefile for building C and assembly source files from scratch.
  2. Check the generated file wave.fst and use GTKwave to view the waveform. Then, explain how your program is executed along with srv32 Simulation.
    • Show the signals/events inside srv32 associated to PC, branch, instruction memory (I-MEM), data memory (D-MEM), and instruction internals.
    • You shall discuss pipeline architecture along with your program.
  3. Propose the software optimizations (against your program) based on the pipeline design of srv32.
    • fewer instructions
    • shorter cycle counts
    • eliminate unnecessary stalls
  4. Write down your thoughts and progress in HackMD notes.

Fill in the table for your homework

Formal given name HackMD note
Sample1 Homework3
Sample2 Homework3
徐卓朗 Homework3
方竫泓 Homework3
陳韋綸 Homework3
劉恩澔 Homework3
黃牧恩 Homework3
向景亘 Homework3
李安豐 Homework3
朱俊霖 Homework3
賴虓翰 Homework3
黃上睿 Homework3
鄭學陽 Homework3
李仲恩 Homework3
李政憲 Homework3
林信宇 Homework3
許永貞 Homework3
孫祥鈞 Homework3
張又仁 Homework3
陳日昇 Homework3
李其祐 Homework3
杰凱力艾 Homework3
歐禮寬 Homework3
黃品程 Homework3
陳銘畯 Homework3
陳力維 Homework3
劉品宏 Homework3
黃瑋盛 Homework3
林甄羚 Homework3
蕭珮珊 Homework3
林嘉歆 Homework3
陳昕佑 Homework3
戴仕誠 Homework3
歐子杰 Homework3
朱祐均 Homework3
鄒柏宇 Homework3
張亦妤 Homework3
羅紹豪 Homework3
伍志忠 Homwwork3
莊崴 Homwwork3
鄭力維 Homwwork3
張峻瑋 Homwwork3
柯凱瑋 Homwwork3
譚亦翔 Homwwork3
郭又宗 Homwwork3