---
tags: computer-arch
---
# Computer Architecture 2025: Term Project
> :notebook: You must provide the materials and demonstrate to the instructor before ==Jan 20, 2026==
## Deliverables (all in English, public to all)
* A development log and accompanying report
* Complete source code sufficient for full reproduction
* An illustrated video of at least 15 minutes.
* The presentation must use your own recorded voice, without any text-to-speech or voice-generation tools.
* All group members must appear in the final video, and each member's individual contribution must be clearly presented as part of the evaluation.
## Term project listing
> * Send email to `<jserv.tw@gmail.com>` to confirm the details and expectations.
> * Numbers denote the expected sizes of the teams, and you should replace them with your name(s) if you are about to take the task.
> * If you cannot propose a specific topic, the instructor will assign an improvement task related to [MyCPU](https://github.com/sysprog21/ca2025-mycpu) as your final project.
> * Reference: [Terms projects for 2024](https://hackmd.io/@sysprog/arch2024-projects), [Terms projects for 2023](https://hackmd.io/@sysprog/arch2023-projects), [Terms projects for 2022](https://hackmd.io/@sysprog/arch2022-projects), [Terms projects for 2021](https://hackmd.io/@sysprog/arch2021-projects)
| Group | Topic | HackMD note |
|:-------------------------- | ----- | --------------- |
| 邱繼寬 | Fast usermode x86-64 emulator for RISC-V | [box64](https://hackmd.io/@sysprog/ryZfQVCN1l) |
| 張暐俊, 林濤@ | Simple Multi-tasking Operating System Kernel | [linmo](https://hackmd.io/@sysprog/r12LeHzWWe) |
| 劉孟劭, 何學禮 | Re-implement [TPU](https://github.com/BaoAh/tpu_project) in Chisel | [tpu](https://hackmd.io/@sysprog/BJxeVPSZZl) |
| 朱丞瀚@ | Implement a parameterizable scatter-gather DMA controller for MyCPU | [dma](https://hackmd.io/@sysprog/rJt_7FaZbx) |
| 謝宜宏, 張家瑋, 林佳輝@ | Adapt [BNRV](https://github.com/HKUSTGZ-MICS-LYU/BNRV) Accelerator for MyCPU<br>Lightweight BitNet Acceleration on RISC-V via Custom Insturctions<br>[Reference](https://github.com/redoop/riscv-ai-accelerator) | [bnrv](https://hackmd.io/@sysprog/rkPssRpbbx) |
| 吳承晉@ | Rework [Raster I](https://github.com/raster-gpu/raster-i) as a compact and efficient GPU in Chisel | [gpu](https://hackmd.io/@sysprog/Hk6hP5wZWl) |
| 林劭恩@ | Hardware Generator for JPEG Compression, improving on the [2024 work](https://hackmd.io/@sysprog/rkK8O1fLkg) | [jpeg](https://hackmd.io/@sysprog/SkXaZFvbZx) |
| 陳冠銘@ | Matrix Multiplication Accelerator implemented with Chisel.<br>[Reference](https://hackmd.io/@sysprog/BkIuQE0E1g) | [matmul](https://hackmd.io/@sysprog/ryBjm9DWbe) |
| 楊承叡@ | Accelerate TinyML Convolution | [accel](https://hackmd.io/@sysprog/SJ50qPjZZl) |
| 楊芷安@ | Port xv6-riscv to 32-bit RV32I core<br>[Reference](https://hackmd.io/@sysprog/BJPdjVCNJe) | [xv6](https://hackmd.io/@sysprog/HJlO8trZWx) |
| 陳昶安, 郭瀚文@ | Convolutional Neural Network Accelerator implemented in Chisel, improving on the [2024 work](https://hackmd.io/@sysprog/ByIdVr04ye) | [nn-accel](https://hackmd.io/@sysprog/SyyGbH9W-l) |
| 廖國佑, 蘇翊荃@ | High-Performance Pipelined AES-GCM Accelerator | [aes](https://hackmd.io/@sysprog/SJQ8oOsZZx) |
| 黃國豪@ | Implement "M" and "B" extensions for MyCPU | [ext](https://hackmd.io/@sysprog/rJyWtqOZZl) |
| 江冠緯@ | Implement A (atomic) extension for MyCPU | [atomic](https://hackmd.io/@sysprog/HyE7RcuWbl) |
| 陳麒為, 秦沐恩@ | Execution visualization for rv32emu, improving on the [2024 work](https://hackmd.io/@sysprog/Syi8MmPrke) | [visualize](https://hackmd.io/@sysprog/H11vkA5-Wl) |
| 簡誌加@ | Multi-threading on top of 'Operating System in 1,000 Lines', improving on the [2024 work](https://hackmd.io/@sysprog/BJBqnuPBye) and [another](https://hackmd.io/@sysprog/BkK6FkzPJl) | [threading](https://hackmd.io/@sysprog/BJgswc_--l) |
| 黃彥軒@ | Implement Vector extension for rv32emu, improving on the [2024 work](https://hackmd.io/@sysprog/ByZpIYiHJg) and [PR #545](https://github.com/sysprog21/rv32emu/pull/545) | [rvv](https://hackmd.io/@sysprog/S1ZZlKaZZg) |
| 黃柏盛@ | Build RISC-V Instruction Set Simulator from scratch, improving on the [2024 work](https://hackmd.io/@sysprog/HyoeCOcr1e) | [simulator](https://hackmd.io/@sysprog/r1Zl-oB-be) |
| 陳沁妤@ | Pixel-art scaling Accelerator in Chisel<br>Reference: [2024 work](https://hackmd.io/@sysprog/r1cybDhSye) | [pixel-art](https://hackmd.io/@sysprog/HyEjGq_-bg) |
| 戴仁杰, 吳家豪, 胡竣凱@ | Branch prediction for 5-stage pipelined RISC-V, improving on the [2024 work](https://hackmd.io/@sysprog/SJTSoPl8yx) | [branch-predict](https://hackmd.io/@sysprog/B1woKODWZe) |
| 梁菁芸@ | Hardware Ray Tracer Datapath, improving on the [2024 work](https://hackmd.io/@sysprog/SyPS6yGIyx) | [raytracer](https://hackmd.io/@sysprog/r1C4-YoWWg) |
| 陳馳原@ | Implement sector cache for MyCPU | [sector-cache](https://hackmd.io/@sysprog/ry_OQ1i-Ze) |
| 徐曉汎, 陳婕寧@ | Implement cache for MyCPU | [cache](https://hackmd.io/@sysprog/H1rtJ1jbbg) |
| 古孝正@ | Implement MMU (Sv32) for MyCPU | [mmu](https://hackmd.io/@sysprog/SyCApAcWWg) |
| 林志祐, 羅彥博@ | Heterogeneous Linux and RTOS Software Architecture for RISC-V Cores | [amp](https://hackmd.io/@sysprog/H1KAZ3o--g) |
| 賴韋辰@ | Port [Eclipse ThreadX RTOS](https://github.com/eclipse-threadx/threadx) to RV32 and make open source contributions | [threadx](https://hackmd.io/@sysprog/rk15UvnWbe) |
| Van Nguyen Thi Thao, Alexandre Amedro, Ngo Chan Phong@ | Run FreeRTOS and multitasking on MyCPU<br>[Reference-1](https://hackmd.io/@oscarshiang/freertos_on_riscv), [Reference-2](https://hackmd.io/@chiangkd/FreeRTOS-on-VexRiscv) | [freertos](https://hackmd.io/@sysprog/S1BdQcq--x) |
| 呂金寶@ | Custom RISC-V instructions to Accelerate LLM Inference<br>[Reference](https://hackmd.io/@sysprog/Bym6n6X8kx) | [custom-simd](https://hackmd.io/@sysprog/BySEI9BW-e) |
| 王崇恩@ | Custom MyCPU Instructions for Offloading Transformer Non-Linear Operations | [offload](https://hackmd.io/@sysprog/H1z3SDjZbx) |
| 周安@ | Optimize QR code generation programs for MyCPU<br>[Reference](https://hackmd.io/@KXkA4u0LQuyNTwOorDw2RA/Skg-yOGua) | [qrcode](https://hackmd.io/@sysprog/SyCpcKBZ-x) |
| 黃政毅, 謝易叡@ | Implement Doom-like game and optimize for MyCPU | [raycast](https://hackmd.io/@sysprog/B13jG4pWbl) |
| 賴莨橙, 陳彥伯@ | Run [DOOM](https://github.com/sysprog21/rv32emu/blob/master/docs/demo.md) on MyCPU | [doom](https://hackmd.io/@sysprog/HyLF9Ea-Zx) |
| 黃育笙@ | Implement minimalist window system (like [Mado](https://github.com/sysprog21/mado)) for MyCPU, consolidting display and input peripherals | [winsys](https://hackmd.io/@sysprog/SJQfgwjb-l) |
| 劉冠頡, 鄭宇峻@ | Port non-trivial games (such as [trex](https://github.com/jserv/trex) and [auto-tetris](https://github.com/jserv/auto-tetris)) to MyCPU | [games](https://hackmd.io/@sysprog/ryFsl25bbl) |
| 王鼎森@ | [Bad Apple](https://github.com/cnlohr/badderapple) challenge: smaller footprint on MyCPU for both video and audio | [badapple](https://hackmd.io/@sysprog/SkNhGiiWZl) |
| 邱昱晴@ | GEMM Acceleration on a Custom RISC-V SIMD Extension | [gemm](https://hackmd.io/@sysprog/H1SOcZ3WZg) |
| 唐萱, 萬宸維@ | Web-based RISC-V Instruction Set Simulation and Debugger | [web](https://hackmd.io/@sysprog/S1t4EjCZ-e) |
| 黃薇庭 | Evaluate Zephyr RTOS on [WB2-12F development board](https://docs.zephyrproject.org/latest/boards/aithinker/ai_wb2_12f/doc/index.html) | [zephyr](https://hackmd.io/@sysprog/SkdWewVM-x) |
| 施柏安, 林昊霆@ | Consolidate superscalar RISC-V processor, capable of running Linux kernel<br>[Reference](https://github.com/LoveLonelyTime/Bergamot) | [superscalar](https://hackmd.io/@sysprog/ByxsXBBMZe) |
| 黃偉峰, 陳彥宇, 陳識博@ | Rework [Coral NPU](https://github.com/google-coral/coralnpu) as standalone RV32IMF_Zve32x RISC-V core | [RV32IMF_Zve32x](https://hackmd.io/@sysprog/SJuPCa7Gbe) |
| 鄭皓壬@ | Build a hardware-accelerated [MIDI synthesiser](https://github.com/sysprog21/picosynth) for MyCPU | [synth](https://hackmd.io/@sysprog/ByJQJfNz-l) |
| 陳廷瑜, 胡旻鈞@ | Refine system emulation for rv32emu, improving on the [2024 work](https://hackmd.io/@sysprog/rkiothUSJl) | [virtio](https://hackmd.io/@sysprog/SJaQ5TXMbg) |
| 劉時軒, 黃啟恆@ | Implement RV32F/RV32D, improving on the [2024 work](https://hackmd.io/@sysprog/HkkE0ueL1x) | [fpu](https://hackmd.io/@sysprog/r1dTZCXfWe) |
| 陳德懷@ | Implement Systolic Matrix Multiplier (TPU) using Chisel | [tinytpu](https://hackmd.io/@sysprog/rJOWWIk8-e) |
| 洪逸宸@ | Annotate Quiz 1 to Quiz 5 | [quiz1-5](https://hackmd.io/@sysprog/ry7NSAQMbl) |
| 黃泓昌@ | Refine subtitles for all video recordings included in the lecture materials | [subtitle](https://hackmd.io/@sysprog/r19Y4i8Mbl) |
| 宋明翰@ | Consolidate Lab 3 | [lab3](https://hackmd.io/@sysprog/HJ1kvpwzZg) |
| 李昆翰@ | Integrate software renderers into MyCPU and accelerate | [render](https://hackmd.io/@sysprog/SJaiNMtf-e) |
| 翁品皙 | Develop size-optimized RISC-V assembly animation engine for Ripes | [anim](https://hackmd.io/@sysprog/ryRYzj9GWg) |
| 2+ | Improve out-of-order superscalar RISC-V core<br>Reference: [rsd](https://github.com/rsd-devel/rsd), [LOROF](https://github.com/zlagpacan/LOROF), [Qu](https://github.com/kagandikmen/Qu) | ? |
| ? | Contribute to Ripes: pick up pending issues, work on them, and finally send pull request(s) for reviewing.<br>[Reference](https://hackmd.io/@NeedSleep/CA_Final) | [ripes](https://hackmd.io/@sysprog/BJfO-cB-Ze) |