极客时间《计算机组成原理》课程笔记

2019/04/30 ComputerFoundation

扎实基础!!!

  • 冯诺依曼

  • 图灵

简答:

  1. 我们写的程序,是如何从输入的代码,变成运行的程序,并最终得到结果的

  2. 这个过程中,计算机层面经历了哪些步骤

  3. 控制器、运算器的工作原理?

  4. 内存的工作原理?电路和提供给上层的接口

  5. CPU 是怎么和输入输出设备打交道的
  6. 什么是寄存器?

1.冯诺依曼体系结构

https://time.geekbang.org/column/article/91793 2019年4月30日星期二

无论计算机、手机、还是树莓派,都遵循一个“计算机”抽象概念。这个概念是由冯诺依曼提出的冯·诺依曼体系结构,也叫存储程序计算机

“存储程序计算机”两个概念:

  1. 可编程
  • 计算机是由各种门电路组装成的电路板组成,可编程是指要修改功能,不需要重新组装电路

  • 老式计算器就是“不可编程”的,电路板设好了加减乘除,做不了任何计算逻辑以外的

  1. 可存储
  • 程序的数据存储在磁盘,运行时存储在内存里,运行后刷回磁盘,下次可以直接运行,并且数据还保存

冯诺依曼写了一篇报告,First Draft of a Report on the EDVAC(《第一份草案》),描述了一台计算机应该长什么样。

冯诺依曼体系结构(五大组件)

  1. 处理器单元(也叫运算器),包括:
  • 算数逻辑单元 ALU

  • 处理器计算器

  1. 控制器单元,包括:
  • 指令寄存器

  • 程序计数器

  1. 存储器
  • 内存

  • 外部存储

  1. 输入

  2. 输出

2.计算机组成原理应该这么学

https://time.geekbang.org/column/article/92378

学习地图清晰地址

需要掌握的知识点:

  1. 控制器
    • 每一行代码是怎么跑起来的
    • 高级语言代码如何经过编译器和汇编器,变成一条条机器指令
    • 操作系统如何链接、装载、执行这些程序的
  2. 运算器
    • 理解数据在计算机里的表示,二进制和编码
    • 怎么从数字电路层面,实现加法、乘法等基本运算功能
    • 掌握浮点数(数据的编码、存储和计算)
  3. CPU 的设计
    • 为什么需要 CPU 时钟
    • 寄存器和内存是用什么样的硬件组成的
    • 整个计算机的数据通路是如何构造出来的
    • 面向流水线设计的 CPU、数据和控制冒险,分支预测
    • 异常和中断发生的机制
  4. 存储器的原理
    • 从上到下,CPU 高速缓存、内存、SSD 硬盘和机械硬盘的工作原理
    • CPU 和存储器是如何通信的

3.“性能”究竟是什么

性能:

  1. 响应时间
  2. 吞吐率

计算机的计时单位:CPU 时钟

程序的 CPU 执行时间 = CPU 时钟周期数 × 时钟周期时间

  • 时钟周期时间
  • CPU 的主频,即在单位时间内,可以运行的指令数(例如 2.8GHz,可以粗浅的理解为 CPU 在 1s 内可以执行的简单指令的数量是 2.8G 条)
  • CPU 内部,有一个晶体振荡器,简称晶振,它的每一次“滴答”,就是时钟周期时间
  • 时钟周期时间,即执行一次需要的时间,等于 1/主频(例如 1/2.8GHz),主频越高,代表着时钟周期时间越短
  • CPU 时钟周期数
  • CPU 时钟周期数 = 指令数 × 每条指令的平均时钟周期数(Cycles Per Instruction, CPI)
  • 不同指令需要的 Cycles 是不同的,加法和乘法都是一条 CPU 指令,但是乘法需要的周期比加法多,也就慢

因此,程序的 CPU 执行时间 = 指令数 × CPI × 时钟周期时间

要提高性能,就要优化这三者:

  1. 降低时钟周期时间,提高计算机主频,取决于硬件,“摩尔定律”说的就是主频
  2. 降低每条指令的 CPI
    • 现代 CPU 通过流水线技术(Pipeline),让一条指令需要的时钟周期尽可能少
  3. 降低指令数
    • 程序到底需要多少指令、用哪些指令
    • 由程序员和编译器决定

学习资料

  • 《计算机是怎样跑起来的》
  • 《程序是怎样跑起来的》,“入门微缩版计算机组成原理”
  • 北京大学公开课,计算机组成中硬件层面的基础实现,寄存器、ALU 等
  • 《计算机组成与设计:硬件/软件接口》,已购
  • 《深入理解计算机系统》,配套视频
  • 《编码:隐匿在计算机软硬件背后的语言》,已购 -《程序员的自我修养:链接、装载和库》,已购

Search

    Table of Contents