|
| 1 | +<!DOCTYPE html> |
| 2 | +<html lang="zh-CN"> |
| 3 | +<head> |
| 4 | + <meta charset="UTF-8"> |
| 5 | + <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| 6 | + <title>计算机组成与体系结构 · 2026 春季</title> |
| 7 | + <link rel="stylesheet" href="assets/style.css"> |
| 8 | +</head> |
| 9 | +<body> |
| 10 | + <header class="course-header"> |
| 11 | + <h1>计算机组成与体系结构</h1> |
| 12 | + <p class="sub">2026 年春 · 陈辰老师 · TA: 佟铭洋、段光杰、朱程炀</p> |
| 13 | + </header> |
| 14 | + |
| 15 | + <nav class="main-nav"> |
| 16 | + <ul> |
| 17 | + <li><a href="#course">课程信息</a></li> |
| 18 | + <li><a href="#docs">文档说明</a></li> |
| 19 | + <li><a href="#labs">实验</a></li> |
| 20 | + <li><a href="integrity.html">学术诚信</a></li> |
| 21 | + <li><a href="#resources">参考资源</a></li> |
| 22 | + </ul> |
| 23 | + </nav> |
| 24 | + |
| 25 | + <div class="layout"> |
| 26 | + <aside class="sidebar"> |
| 27 | + <nav aria-label="课程文档目录"> |
| 28 | + <ul class="nav-tree"> |
| 29 | + <li class="nav-group"> |
| 30 | + <span class="nav-group-title">课程信息</span> |
| 31 | + <ul> |
| 32 | + <li><a href="#course">课程简介与答疑</a></li> |
| 33 | + <li><a href="integrity.html">学术诚信与抄袭说明</a></li> |
| 34 | + </ul> |
| 35 | + </li> |
| 36 | + <li class="nav-group"> |
| 37 | + <span class="nav-group-title">文档说明</span> |
| 38 | + <ul> |
| 39 | + <li><a href="#doc-what">各文档用途</a></li> |
| 40 | + <li><a href="#doc-clone">获取与更新代码</a></li> |
| 41 | + </ul> |
| 42 | + </li> |
| 43 | + <li class="nav-group"> |
| 44 | + <span class="nav-group-title">实验</span> |
| 45 | + <ul> |
| 46 | + <li><a href="labs/lab1.html">Lab1 五级流水线 CPU</a></li> |
| 47 | + </ul> |
| 48 | + </li> |
| 49 | + <li class="nav-group"> |
| 50 | + <span class="nav-group-title">参考资源</span> |
| 51 | + <ul> |
| 52 | + <li><a href="#resources">RISC-V 手册与工具</a></li> |
| 53 | + </ul> |
| 54 | + </li> |
| 55 | + </ul> |
| 56 | + </nav> |
| 57 | + </aside> |
| 58 | + |
| 59 | + <main class="content"> |
| 60 | + <section id="course"> |
| 61 | + <h2>课程信息</h2> |
| 62 | + <p>本课程通过一系列实验,实现一个 RISC-V 五级流水线 CPU 核,并使用 Verilator 仿真与 Difftest 进行验证。实验代码与说明通过 GitHub 仓库与 Wiki 发布。</p> |
| 63 | + |
| 64 | + <h3>推荐答疑方式</h3> |
| 65 | + <ul> |
| 66 | + <li><strong>Issues</strong>:在项目仓库 <a href="https://github.com/26-Arch/26-Arch/issues" target="_blank" rel="noopener">26-Arch/26-Arch</a> 发起</li> |
| 67 | + <li><strong>微信群聊</strong>:信息量少时使用(不建议私聊,效率不高且容易忽略问题)</li> |
| 68 | + <li><strong>线下</strong>:周二实验课</li> |
| 69 | + </ul> |
| 70 | + </section> |
| 71 | + |
| 72 | + <section id="docs"> |
| 73 | + <h2>文档说明</h2> |
| 74 | + <p>课程材料分为两部分:<strong>代码仓库</strong>(26-Arch)和<strong>Wiki</strong>(说明文档)。请先克隆代码仓库并初始化子模块,再做实验。</p> |
| 75 | + |
| 76 | + <h3 id="doc-what">各文档分别是用来做什么的</h3> |
| 77 | + <div class="doc-cards"> |
| 78 | + <div class="doc-card"> |
| 79 | + <strong>Wiki · Home</strong> |
| 80 | + <p>课程首页:答疑方式 参考文档链接等。</p> |
| 81 | + </div> |
| 82 | + <div class="doc-card"> |
| 83 | + <strong>Wiki · Environment</strong> |
| 84 | + <p>实验环境搭建与介绍:Linux/WSL、Verilator、GTKWave、Vivado 的安装与配置,以及 VS Code 连接、克隆仓库与更新步骤。做实验前请先完成环境搭建。</p> |
| 85 | + </div> |
| 86 | + <div class="doc-card"> |
| 87 | + <strong>Wiki · Direction</strong> |
| 88 | + <p>整体流程与代码编写指南:CPU 与 Difftest 的关系、代码规范、内存总线接口、如何接线与测试、常见问题等。建议在写代码前通读。</p> |
| 89 | + </div> |
| 90 | + <div class="doc-card"> |
| 91 | + <strong>Wiki · Lab1</strong> |
| 92 | + <p>实验一详细说明:目标指令、测试方法、Difftest 接线、波形图生成、提交方式、评分标准、常见问题(如 No rule to make target 'emu'、CBus 报错、Difftest 连接等)。做 Lab1 时以该页为准。</p> |
| 93 | + </div> |
| 94 | + </div> |
| 95 | + |
| 96 | + <h3 id="doc-clone">如何获取与更新代码</h3> |
| 97 | + <p>在选定目录下执行:</p> |
| 98 | + <pre><code>git clone https://github.com/26-Arch/26-Arch.git |
| 99 | +cd 26-Arch |
| 100 | +git submodule update --init --recursive # 初始化 difftest 子模块</code></pre> |
| 101 | + <p>每次助教发布新内容后,请先 <code>commit</code> 本地改动,再拉取并合并:</p> |
| 102 | + <pre><code>git fetch --all |
| 103 | +git merge origin/main |
| 104 | +git submodule update</code></pre> |
| 105 | + <p class="note">代码需在 <code>vsrc</code> 目录下编写,核心在 <code>vsrc/src/core.sv</code>。不要修改 <code>vsrc</code> 以外的文件,除非你清楚自己在做什么。</p> |
| 106 | + </section> |
| 107 | + |
| 108 | + <section id="labs"> |
| 109 | + <h2>实验</h2> |
| 110 | + <p>实验说明按实验编号分级存放,当前已发布 Lab1。每个实验的详细目标、测试方法、提交与评分见对应页面。</p> |
| 111 | + <ul class="lab-list"> |
| 112 | + <li> |
| 113 | + <a href="labs/lab1.html"><strong>Lab1 五级流水线 CPU</strong></a> |
| 114 | + <p class="lab-desc">构建五级流水线 CPU,支持算术/逻辑与扩展指令,通过 <code>make test-lab1</code> 验证。</p> |
| 115 | + </li> |
| 116 | + </ul> |
| 117 | + </section> |
| 118 | + |
| 119 | + <section id="resources"> |
| 120 | + <h2>参考资源</h2> |
| 121 | + <ul> |
| 122 | + <li>The RISC-V Instruction Set Manual Volume I: <a href="https://riscv.github.io/riscv-isa-manual/snapshot/unprivileged/" target="_blank" rel="noopener">Unprivileged ISA(在线)</a></li> |
| 123 | + <li>The RISC-V Instruction Set Manual Volume II: <a href="https://riscv.github.io/riscv-isa-manual/snapshot/privileged/" target="_blank" rel="noopener">Privileged Architecture(在线)</a></li> |
| 124 | + <li>RISC-V 指令集手册中文版(不推荐):<a href="https://github.com/ISRC-CAS/riscv-isa-manual-cn/tree/master/build" target="_blank" rel="noopener">GitHub</a></li> |
| 125 | + <li>Online RISC-V Instruction Encoder/Decoder: <a href="https://luplab.gitlab.io/rvcodecjs/" target="_blank" rel="noopener">RISC-V Instruction Encoder/Decoder</a></li> |
| 126 | + </ul> |
| 127 | + </section> |
| 128 | + </main> |
| 129 | + </div> |
| 130 | + |
| 131 | + <footer> |
| 132 | + <p>2026 年春 · 陈辰老师《计算机组成与体系结构》 · TA: 佟铭洋、段光杰、朱程炀</p> |
| 133 | + <p>代码仓库:<a href="https://github.com/26-Arch/26-Arch" target="_blank" rel="noopener">26-Arch/26-Arch</a> · Wiki:<a href="https://github.com/26-Arch/26-Arch/wiki" target="_blank" rel="noopener">26-Arch Wiki</a></p> |
| 134 | + </footer> |
| 135 | +</body> |
| 136 | +</html> |
0 commit comments