Computer Architecture¶
课程简介¶
- 机构: Cornell University
- 课程编号: ECE 4750
- 方向: 计算机体系结构
- 评级: A
- 角色: 主线
- 难度: 提供方未标准化(请按先修判断)
- 最近复核: 2026-07-28
Cornell University 的《Computer Architecture》以 RISC-V 讲义、问题和实验说明建立体系结构主线;公开代码资源较强,但团队仓库、服务器及部分起始代码不开放。
为什么选择这门课
主线课程,核心内容可靠,适合按自身背景作为主课或高质量替代。
学习前准备
- 建议先完成方向基础:数字逻辑与计算结构
- 建议先完成方向基础:编程与工程计算
可验证的学习成果
- 解释计算机体系结构中的核心模型,并说明主要假设与适用边界
- 独立完成代表性推导与题目,并用量纲、极限情形或数值结果交叉检查
- 完成可复现实验或实现,保留原始数据、参数、版本和验证记录
工时与节奏
12 周,每周 10 小时。 这是维护者规划估计,依据课程角色与公开练习、实验密度生成,不是提供方工时承诺。先试学两周,分别记录授课、练习、实验和复盘时间;若实际偏差超过 25%,据实调整剩余计划。
安全等级
仅仿真。 默认实践范围仅限软件、计算或仿真;不得因资源清单中的“实验”标签自行连接实体设备,任何硬件扩展都必须重新核对提供方范围并进行风险评估。
课程资源¶
软件、硬件与成本
软件
- 维护者建议的开源/免费验证路径:RISC-V GNU 或 LLVM 工具链、QEMU、Verilator 与 GTKWave
- 资源清单包含公开代码覆盖;复现时固定解释器、依赖、工具链、数据集和 PDK(如适用)版本
硬件
- 资源清单包含实验覆盖;维护者路径将其按计算/仿真实验处理,除非提供方实验手册另有明确说明。只假设可运行仿真和交叉编译的通用计算机;仅在课程明确要求时使用指定 RISC-V 或 FPGA 板。提供方如另列设备或算力要求,以其课程页面为准
成本说明
建议软件栈可开源或免费使用;这只是维护者规划,不是提供方要求。商业许可证、云计算、存储和机构资源如被提供方指定,其费用随方案、地区与机构而变,本文不设固定价格。
公开资源完整度
| 资源类型 | 完整度 |
|---|---|
| 视频 | 无公开材料 |
| 讲义 | 完整 |
| 练习 | 部分 |
| 实验 | 部分 |
| 考试 | 无公开材料 |
| 代码 | 完整 |
资源与访问条件
| 资源 | 访问 | 许可 | 状态 | 复核日期 |
|---|---|---|---|---|
| 课程主页 | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Lab Assignment Logistics | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Code resource: section1 | 无需注册公开访问 | Repository-specific license; inspect before reuse | 官方页已列出 | 2026-07-28 |
| Code resource: section2 | 无需注册公开访问 | Repository-specific license; inspect before reuse | 官方页已列出 | 2026-07-28 |
| Code resource: section3 | 无需注册公开访问 | Repository-specific license; inspect before reuse | 官方页已列出 | 2026-07-28 |
| Code resource: ece4750 tut3 verilog | 无需注册公开访问 | Repository-specific license; inspect before reuse | 官方页已列出 | 2026-07-28 |
| Lab 1: Iterative Integer Multiplier | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Lab 2: Pipelined Processor | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Lab 3: Blocking Cache | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Lab 4: Single-Core and Multi-Core Systems | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T01-proc-concepts.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T02-proc-uarch.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T03-mem-concepts.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T04-mem-uarch.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T05-proc-mem.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T06-ap-superscalar.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| notes — csl.cornell.edu/ece4750-T07-ap-ooo.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| 4-up notes | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Lecture 1: Course Overview | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| common mistakes | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| handout — csl.cornell.edu/ece4750-section-pbl-proc-mem.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| handout — csl.cornell.edu/ece4750-section-pipediagram.pdf | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Tutorial 3: Verilog Hardware Description Language | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
| Verilog RTL Usage Rules | 无需注册公开访问 | Provider-specific terms; verify before reuse | 官方页已列出 | 2026-07-28 |
“官方页已列出”表示核验日从成功访问的官方来源页发现该链接,不保证目标文件在所有地区或账号状态下都能直接打开。访问不代表获得再分发权;下载、改编或公开发布前,应重新核对提供方页面、目标链接及其中第三方材料的许可。
实践与验收¶
实践闭环
《Computer Architecture · Cornell University ECE 4750》微体系结构性能与正确性审计
这是维护者为《Computer Architecture · Cornell University ECE 4750》建议的自学项目,不是课程官方作业。为计算机体系结构实现一个指令级模拟器或流水线模型,对功能正确性、CPI、缓存行为和冒险处理进行可复现审计。
来源: 维护者建议项目
交付物
- ISA 子集、流水线/缓存参数、异常和计数器语义说明
- 模拟器或 RTL 模型、参考执行器和至少 20 个微基准源文件
- 逐指令轨迹、性能计数器、缓存命中和运行时原始数据
- 一份报告,解释性能瓶颈、正确性反例和设计取舍
验收
- 所有微基准的架构状态与参考执行器逐指令一致
- 覆盖空程序、分支全错、依赖链、缓存抖动和地址边界
- 对至少 5 个短程序手算指令数与理想 CPI,并与计数器交叉核对
- 关闭转发或改变缓存行大小,量化 CPI/未命中率变化并解释异常
复现要求
- 提交模型、微基准、参考器、测试和轨迹解析源文件
- 固定编译器、模拟器、参数、基准输入和构建命令
- 保存原始轨迹、计数器与报告生成日志并附校验和
安全边界: 仅仿真 — 仅使用本地模拟器与自有测试程序;不要运行未知二进制、真实恶意载荷或未隔离的特权代码。
风险、缺口与边界
RISC-V 讲义、问题和实验说明已公开,但团队仓库、服务器和部分起始代码为私有资源。
完成证据
- 按周学习日志:投入时间、问题、错误订正、决策、下一步,并链接本周可复现产物
- 设计审查包:需求与约束、方案权衡、可编辑源文件、适用的 ERC/DRC/时序/稳定性检查、导出物与复现实验
- 代码仓库:固定依赖和工具链、最小运行命令、测试或波形/基准、预期输出与许可说明
- 仿真包:模型或网表、输入、求解器与版本、参数扫描脚本、基准对照、预期结果及一条重新运行命令