CS 152/252A 计算机体系结构与工程(2023春季)

欢迎来到 CS 152/252A 计算机体系结构与工程课程!这门课程将带你深入探讨计算机体系结构设计中的各种核心原则和概念,以及如何利用这些基础原则构建现代复杂的处理器。

课程概述

在本课程中,我们将讨论“计算机体系结构”,这个术语在不同背景下可能有不同的解读。在我们的定义中,计算机体系结构涵盖了从应用程序到物理层的所有内容,涉及硬件和软件之间的多层抽象。这些抽象层使得我们能够更好地管理计算系统的复杂性,并设计出高效的计算系统。

你将学习如何将各种计算需求转化为硬件实现的方法,以及理解计算机架构设计中的核心技能和关键组成部分。在课程中,我们会深入探讨指令集架构(ISA)、微架构和实现层。这三层架构分别对应计算机系统的指令集、硬件组织结构以及具体的实现技术。

主要内容

  1. 指令集架构(ISA): 这部分内容涉及计算机架构中最核心的部分——指令集。我们将讨论各种ISA的实现方式,特别是RISC-V指令集,它将在本学期贯穿始终。

  2. 微架构: 微架构涉及计算机系统中不同模块和组件的组织方式。你将学习如何通过不同的微架构设计(例如乱序执行)提升计算机性能。

  3. 实现层: 在这里,你将学习如何使用硬件描述语言(如Verilog)实现你所设计的计算机架构。我们将讨论如何将抽象的架构理念转化为实际的硬件实现,并进行评估。

课程特点

  • 历史视角: 我们将回顾计算机架构的历史,探讨硬件设计中的直觉和创新。这部分内容将展示过去一百年中计算机架构的演变和发展。

  • 创新与趋势: 你将了解当前计算机架构领域的最新趋势和挑战,为什么在当今技术世界中成为一名计算机架构师是如此令人兴奋。

  • 多层抽象: 课程将特别强调多层抽象的概念,帮助你理解从应用层到硬件层的完整计算栈。

先修课程

本课程建议修过CS 61C,虽然CS 151/251A并不是本课程的强制先修课,但若已修过,将会为本课程的学习打下良好的基础。

总之,CS 152/252A 将为你提供一个全面的计算机体系结构设计的学习体验,从基础原理到实际应用,让你成为一名出色的计算机架构师。期待与你共同度过一个充实而有趣的学期!

Part 英文标题 中文标题
P1 Early Machines 早期计算机
P2 Simple Machine Implementations, Microcoding 简单机器实现,微码编程
P3 Microcoding 微码编程
P4 Pipelining I 流水线 I
P5 Pipelining II 流水线 II
P6 Memory 内存
P7 Memory II 内存 II
P8 Address Translation 地址转换
P9 Virtual Memory 虚拟内存
P10 Complex Pipelines 复杂流水线
P11 Out-Of-Order execution I 无序执行 I
P12 Out-Of-Order execution II 无序执行 II
P13 VLIW 超长指令字(VLIW)
P14 Multithreading 多线程
P15 Vectors 向量
P16 GPUs 图形处理单元(GPU)
P17 RISC-V Vectors RISC-V 向量
P18 Turing Award Lecture 图灵奖讲座
P19 Cache Coherence 缓存一致性
P20 Memory Consistency 内存一致性
P21 Synchronization 同步
P22 Finale 终结篇
P23 Discussion 1: Microcoding, Lab 1 Overview 讨论 1:微码编程,实验1概述
P24 Discussion 2: Pipelining 讨论 2:流水线
P25 Discussion 3: Memory Hierarchy 讨论 3:内存层次结构
P26 Discussion 4: Address Translation and Lab 2 Overview 讨论 4:地址转换及实验2概述
P27 Discussion 5: Midterm 1 Review 讨论 5:期中考试1复习
P28 Discussion 6: Out-of-order Execution 讨论 6:无序执行
P29 Discussion 7: Branch Predictions and VLIW 讨论 7:分支预测与VLIW
P30 Discussion 8: Multithreading 讨论 8:多线程
P31 Discussion 9: Vectors 讨论 9:向量
P32 Discussion 10: Midterm 2 讨论 10:期中考试2
P33 Discussion 11: Cache Coherence 讨论 11:缓存一致性