课程介绍
6.004 介绍了计算结构,包含MOS transistors, logic gates, combinational and sequential circuits, finite-state machines, computers and finally complete systems. 并介绍了一系列硬件软件设计例子。
课程框架
-
§ Module 1-- 汇编与指令集
- 二进制表示与操作 Binary representation and operations
- RISC-V ISA
- Assembly language programming in RISC-V
- Expressing high-level programming in assembly language
- Procedure calling convention
-
§ Module 2 -- 数字表示与逻辑电路
- Digital abstraction
- Boolean algebra and combinational logic
- Sequential Logic
- Expressing logic designs in Bluespec, a modern hardware design language
- Logic synthesis
- Pipelined and folded circuits
-
§ Module 3
- Implement non-pipelined RISC-V computer
- Caches
- Implement Pipelined RISC-V computers
- control and data hazards, bypasses
- Branch prediction (time permitting)
-
§ Module 4 -- 操作系统
- Operating systems
- I/O interrupts and exceptions
- Virtual memory
-
§ Module 5 -- 并行运算
- parallel programming and multicore issues – synchronization, cache coherence, ...
学习记录
- 第一节 introduction - 完成
- RISC-V Assembly - 完成
- Compiling code, Procedure, and Stack - 完成
- Procedures and MMIO
第一节总结
介绍了本门课程涵盖的内容以及重要性。MicroProcessor的组成,高级编程语言(c++, python, java)到机器语言(机器指令)的转换方式及汇编的作用。
Components of a MicroProcessor
第二节总结
RISC-V指令集的四类指令:
- Arithmetic
- Comparison
- Logical
- Shift operations
第三节总结
介绍了从代码到汇编的转换,比较复杂的地方是进行procedure call,以及为了解决procedure call中主函数和被调函数之间使用寄存器可能会相互覆盖的问题增加了栈的使用。
本节结束后开始学习lab1
扩展学习:深入理解计算机系统-第三章-程序的机器级表示
RISC-V资料
参考资料
6.004 计算结构 - MIT挑战总结
电子工程和计算机科学的交叉课程。设计项目包含了门级CPU的规范,这是用来搭建计算机的电子元件。这门课的缺点是缺少相关的课程材料,但是作业和实验很给力。分数:4/5。
1. 免费课程资料
2. 实验和工程(注:运行这些文件需要BSim和JSim,都可以在课程页面免费下载)
3. 我的考试结果
4. MIT官方答案
参考资料
网友评论