计算机组成原理

计算机的发展史

世界上第一台电子计算机ENIAC(1946)

image-20230530125301506

计算机系统

计算机系统包括硬件和软件,其中软件又分为系统软件和应用软件

系统软件

管理整个计算机系统

  • 语言处理系统 汇编程序 编译程序 解释程序
  • 操作系统 DOS、UNIX、Windows、Linux、Kylin Linux
  • 服务性程序 装配 调试 诊断 排错
  • 数据库管理系统 数据库和数据库管理软件
  • 网络软件

应用软件

按任务需要编制成的各种程序

软件发展的特点

  • 开发周期长
  • 制作成本昂贵
  • 检测软件产品质量的特殊性

计算机系统的层次结构

软件

高级语言 虚拟机器M3 用编译程序翻译成汇编语言程序

汇编语言 虚拟机器M2 用汇编程序翻译成机器语言程序

操作系统 虚拟机器 用机器语言解释操作系统


硬件

机器语言 实际机器M1 用微指令解释机器指令

微指令系统 微程序机器M0 由硬件直接执行微指令

计算机的基本组成

冯诺依曼计算机的特点

  1. 计算机由五大部件组成
  2. 指令和数据以同等地位存于存储器,可按地址寻访
  3. 指令和数据用二进制表示
  4. 指令由操作码和地址码组成
  5. 存储程序
  6. 以运算器为中心

存储器

基本组成

image-20230529145413548

image-20230613140501209

存储体-存储单元-存储元件

存储单元

存放一串二进制代码

存储字

存储单元中二进制代码的组合

存储字长

存储单元中二进制代码的位数

每个存储单元赋予一个地址

按地址寻访

MAR

存储器地址寄存器

反映存储单元个数

MDR

存储器数据寄存器

反映存储字长

存储器的层次结构

image-20230423222300470

image-20230423221751690

image-20230613140253327

主存-辅存:实现虚拟存储系统,解决了主存容量不够的问题

Cache-主存:解决了主存和CPU速度不匹配的问题

存储器的分类

按层次image-20230423222924284
按存储介质

1.半导体存储器:以半导体器件存储信息,读写速度较快,如主存、Cache

2.磁表面存储器:以磁性材料存储信息,如磁盘、磁带

3.光存储器:以光介质存储信息,如DVD、VCD

存取方式

1.随机存取存储器(Random Access Memory,RAM):读写任何一个存储单元所需时间都相同,与存储单元所在物理位置无关,如内存条

2.顺序存取存储器(Sequential Access Memory,SAM):读写一个存储单元所需时间取决于存储单元所在的物理位置,如复读机、录音机

3.直接存取存储器(Direct Access Memory,DAM):既有随机存取存储器特性,也有顺序存取存储器特性。先直接选取信息所在区域,然后顺序方式存取,速度比SAM快一些,比RAM慢一些,如机械硬盘也就是磁盘

4.相联存储器(Associative Memory),即可以按内容访问的存储器(Content Addressed Memory,CAM)可以按照内容检索到存储位置进行读写,“快表”就是一种相联存储器

串行访问存储器:读写某个存储单元所需时间与存储单元的物理位置有关,如SAM,DAM

信息的可更改性

1.读写存储器(Read/Write Memory):即可读,也可写(如:磁盘、内存、Cache)

2.只读存储器(Read Only Memory):只能读,不能写(如实体音乐专辑通常采用CD-ROM,实体电影采用蓝光光碟,BIOS通常写在ROM中)

信息的可保存性

1.易失性存储器:断电后,存储信息消失的存储器(主存、Cache)

2.非易失性存储器:存储信息依然保持的存储器(磁盘、光盘)

破坏性读出:信息读出后,原存储信息被破坏(DRAM芯片,读出数据后要进行重写)

非破坏性读出:信息读出后,原存储信息不被破坏(SRAM芯片,磁盘、光盘)

按作用分类

image-20230613135009179

存储器的性能指标

1.存储容量:存储字数×字长(如1M×8位)(MDR位数反映存储字长)

2.单位成本:每位价格=总成本/总容量

3.存储速度:数据传输率=数据的宽度/存储周期(数据的宽度即存储字长)

image-20230423230020043

主存和CPU的联系

image-20230613140741229

主存中存储单元地址分配

image-20230613141304002

主存的技术指标

存储容量:主存存放二进制代码的总位数

存储速度:

  • 存储时间:存储器的访问时间:读出/写入时间
  • 存取周期:连续两次独立的存储器操作:(读或写)所需的最小间隔时间

存储器的带宽:位/秒

半导体存储芯片的译码驱动方式

image-20230613143444970

image-20230613143703094

主存储器的基本组成

基本的半导体元件及原理

image-20230423230748503

存储器芯片的基本原理

image-20230423231326934

image-20230613142345779

image-20230613142830251

寻址

image-20230423232424137

DRAM和SRAM

DRAM(动态RAM):Dynamic Random Access Memory,用于主存

SRAM(静态RAM):Static Random Access Memory,用于Cache

核心区别:存储元不一样

DRAM芯片:使用栅极电容存储信息

SRAM芯片:使用双稳态触发器存储信息

image-20230613144338505

image-20230613145923126

image-20230424121904352

由于电容内的电荷只能维持2ms。即便不断电,2ms后信息也会消失,因此2ms内必须“刷新”一次(给电容充电)

DRAM的刷新

image-20230424153945407

DRAM和SRAM的对比

image-20230424154224651

ROM

image-20230424154845459

主板上的BIOS芯片(ROM)存储了“自举装入程序”,负责引导装入操作系统(开机)。根据程序,CPU指挥IO系统把辅存中存储的操作系统的相关数据放到主存,引导开机。

主存与CPU的连接

image-20230425162218518

双端口RAM和多模块存储器

image-20230426104127971

运算器

基本组成

image-20230529150843806

image-20230529151806640

控制器

基本组成

image-20230529153834194

完成一条指令

  • 取指令:PC(程序计数器)存放当前欲执行指令的地址,具有计数功能(PC)+1->PC
  • 分析指令:IR(指令寄存器)存放当前欲执行的指令
  • 执行指令:CU

计算机硬件的主要技术指标

机器字长

CPU一次能处理数据位数与CPU中的寄存器位数有关

运算速度

  • 主频
  • 核数,每个核支持的线程数
  • 吉普森法
  • CPI:执行一条指令所需时钟周期数
  • MIPS:每秒执行百万条指令
  • FLOPS:每秒浮点运算次数

存储容量

存放二进制信息的总位数

主存容量
  • 存储单元个数×存储字长
  • 字节数
辅存容量

字节数

总线

定义

总线是连接各个部件的信息传输线,是各个部件共享的的传输介质

信息的传送

串行:传输数据一位一位传输,传输距离比较长

并行:传输数据多位传输,需要多根总线,传输距离比较短

结构

以存储器为中心的双总线结构框图

image-20230530133908385

分类

片内总线

芯片内部的总线

系统总线

计算机各部件之间的信息传输线

  • 数据总线:双向,与机器字长、存储字长有关
  • 地址总线:单向,与存储地址、I/O地址有关
  • 控制总线:有出 有入

有出:存储器读,存储器写,总线允许、中断确认

有入:中断请求、总线请求

通信总线

用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信)之间的通信

按传输方式分为两类

  • 串行通信总线
  • 并行通信总线

特性

机械特性:尺寸、形状、管脚数及排列顺序

电气特性:传输方向和有效的电平范围

功能特性:每根传输线的功能

  • 地址
  • 数据
  • 控制

时间特性:信号的时序关系

性能指标

  1. 总线宽度:数据线的根数
  2. 标准传输率:每秒传输的最大字节数(MBps)
  3. 时钟同步/异步:同步、不同步
  4. 总线复用:地址线与数据线复用
  5. 信号线数:地址线、数据线和控制线的总和
  6. 总线控制方式:突发、自动、仲裁、逻辑、计数
  7. 其他指标:负载能力

总线标准

image-20230530135654251

总线结构

单总线结构

image-20230530140038637

多总线结构

双总线结构

image-20230530140137230

三总线结构

image-20230530140308828

另一种三总线结构

image-20230530140427320

四总线结构

image-20230530140626965

总线控制

总线判优控制
定义

主设备(模块)对总线有控制权

从设备(模块)响应从主设备发来的总线命令

分类
  • 集中式
  • 分布式
集中式
  • 链式查询

image-20230530141517661

缺点:优先级事先确定,与位置有关,对电路故障敏感

优点:结构简单,增加设备很容易,优先级算法简单,可靠性设计容易实现,速度慢

应用:微型计算机、嵌入式系统

  • 计数器定时查询

image-20230530141834281

优点:优先级确定灵活

缺点:速度较慢

  • 独立请求方式

image-20230530142337784

总线通信控制
目的

解决通信双方协调配合问题

总线传输周期
  • 申请分配阶段:主模块申请,总线仲裁决定
  • 寻址阶段:主模块向从模块给出地址和命令
  • 传数阶段:主模块和从模块交换数据
  • 结束阶段:主从模块撤销有关信息

总线通信的四种方式

  • 同步通信:由统一时标控制数据传送,应用于总线长度比较短,各个模块存取时间比较一致

image-20230530152933567

image-20230530153004164

  • 异步通信:采用应答方式,没有公共时钟标准

image-20230530153408573

  • 半同步通信:同步、异步结合

同步:发送方用系统时钟前沿发信号、接收方用系统时钟后沿判断、识别

异步:允许不同速度的模块和谐工作,增加一条“等待”响应信号wait

image-20230530154328379

共同点

一个总线传输周期(以输入数据为例)

主模块发地址、命令 占用总线

从模块准备数据 不占用总线 总线空闲

从模块向主模块发数据 占用总线

  • 分离式通信:充分挖掘系统总线每个瞬间的潜力

一个总线周期

  • 子周期1:主模块申请占用总线,使用完后即放弃总线的使用权
  • 子周期2:从模块申请占用总线,将各种信息送至总线上

image-20230530155439004