1.1 概念
- 何为计算机:计算机是指“通用电子计算机”
- 通用:不是专用设备
- 电子:采用电子元器件
- 数字:信息采用数字化形式表示
- 计算机系统:硬件和软件
- 何为计算机“组织”:操作单元及其互联连接
- 对编程人员不可见
- 包括:控制信号,存储技术等
- 何为计算机”结构“:直接影响逻辑程序执行的属性
- 对编程人员可见
- 包括:指令集,表示数据类型的位数等
指令集体系结构: ISA ,有时称为指令系统。 ISA 是一种规约,规定如何使用硬件。
- 可执行指令的集合,包含指令格式、操作种类及操作数的规定
- 指令可以接受的操作数类型
- 操作数所能存放的寄存器组的结构,包括每个寄存器的名称、编号、长度和用途
- 操作数所能存放的存储空间的大小和编址方式
- 操作数在存储空间存放时按照大端还是小端方式存放
- 指令获取操作数的方式,即寻址方式
- 指令执行过程的控制方式,包括程序计数器(PC)、条件码定义等
ISA 与组成之间的关系:计算机组成必须能够实现 ISA 规定的功能,如提供 GPR 、标志、运算电路等,一种 ISA 可以有不同的计算机组成。
1.2 计算机简史
1.2.1 第一代:真空管
- ENIAC :第一台通用计算机,十进制,手动编程
- ABC :第一台电子计算机,不可编程
- EDVAC :冯·诺伊曼架构(普林斯顿架构)
- 三个基本原则:
- 二进制
- 存储程序
- 5个组成部分
- 主存储器:地址和存储内容
- 算术逻辑单元 / 处理单元:执行信息处理
- 程序控制单元 / 控制单元:指挥信息处理
- 输入设备
- 输出设备
- 三个基本原则:
1.2.2 第二代:晶体管
- 体积更小、更便宜、发热更少
- 使用高级语言编程,并为计算机提供了系统软件
1.2.3 第三代:中小规模集成电路
1.2.4 第四代:(超)大规模集成电路
思想:
- 将整个电路安装在很小的硅片上,而不是用分立元件搭成的等价电路
- 晶体管可以通过金属化相互连接,形成电路
1.3 计算机发展
1.3.1 摩尔定律
- 价格不变时,单芯片上所能包含的晶体管数量每年翻一番 (1965-1969) / 1970年起减慢为每18个月翻一番
- 影响:
- 更小尺寸带来更多灵活性与可能性
- 成本下降
- 减小电能损耗与冷却要求
- 芯片间连接更少,更可靠
1.4 计算机性能
1.4.1 CPU 性能
- 计算机设计主要目标:提升 CPU 性能
- 系统时钟
- 时钟频率: 1s 内执行基本操作的次数
- 始终周期:执行每次最基本操作的时间
- 指令执行: $CPI_i$ 表示第 $i$ 种指令需要周期数, $I_i$ 表示第 $i$ 类指令条数,则有
执行一个程序的处理时间表示为
- 每秒百万条指令( MIPS ):
- 每秒百万条浮点操作( MFLOPS ):
1.4.2 性能设计的基本原则
- 大概率事件优先原则:对于大概率事件,赋予优先的处理权与资源使用权。
- Amdahl 定律:
- 部件系统加速比受限于其在系统中所占重要性比例。
- 性能增加的递减规则:改进越,系统获得效果越小