计算机组成原理
计算机组成原理
计算机的发展史
世界上第一台电子计算机ENIAC(1946)
计算机系统
计算机系统包括硬件和软件,其中软件又分为系统软件和应用软件
系统软件
管理整个计算机系统
- 语言处理系统 汇编程序 编译程序 解释程序
- 操作系统 DOS、UNIX、Windows、Linux、Kylin Linux
- 服务性程序 装配 调试 诊断 排错
- 数据库管理系统 数据库和数据库管理软件
- 网络软件
应用软件
按任务需要编制成的各种程序
软件发展的特点
- 开发周期长
- 制作成本昂贵
- 检测软件产品质量的特殊性
计算机系统的层次结构
软件
高级语言 虚拟机器M3 用编译程序翻译成汇编语言程序
汇编语言 虚拟机器M2 用汇编程序翻译成机器语言程序
操作系统 虚拟机器 用机器语言解释操作系统
硬件
机器语言 实际机器M1 用微指令解释机器指令
微指令系统 微程序机器M0 由硬件直接执行微指令
计算机的基本组成
冯诺依曼计算机的特点
- 计算机由五大部件组成
- 指令和数据以同等地位存于存储器,可按地址寻访
- 指令和数据用二进制表示
- 指令由操作码和地址码组成
- 存储程序
- 以运算器为中心
存储器
基本组成
存储体-存储单元-存储元件
存储单元
存放一串二进制代码
存储字
存储单元中二进制代码的组合
存储字长
存储单元中二进制代码的位数
每个存储单元赋予一个地址
按地址寻访
MAR
存储器地址寄存器
反映存储单元个数
MDR
存储器数据寄存器
反映存储字长
存储器的层次结构
主存-辅存:实现虚拟存储系统,解决了主存容量不够的问题
Cache-主存:解决了主存和CPU速度不匹配的问题
存储器的分类
按层次
按存储介质
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芯片,磁盘、光盘)
按作用分类
存储器的性能指标
1.存储容量:存储字数×字长(如1M×8位)(MDR位数反映存储字长)
2.单位成本:每位价格=总成本/总容量
3.存储速度:数据传输率=数据的宽度/存储周期(数据的宽度即存储字长)
主存和CPU的联系
主存中存储单元地址分配
主存的技术指标
存储容量:主存存放二进制代码的总位数
存储速度:
- 存储时间:存储器的访问时间:读出/写入时间
- 存取周期:连续两次独立的存储器操作:(读或写)所需的最小间隔时间
存储器的带宽:位/秒
半导体存储芯片的译码驱动方式
主存储器的基本组成
基本的半导体元件及原理
存储器芯片的基本原理
寻址
DRAM和SRAM
DRAM(动态RAM):Dynamic Random Access Memory,用于主存
SRAM(静态RAM):Static Random Access Memory,用于Cache
核心区别:存储元不一样
DRAM芯片:使用栅极电容存储信息
SRAM芯片:使用双稳态触发器存储信息
由于电容内的电荷只能维持2ms。即便不断电,2ms后信息也会消失,因此2ms内必须“刷新”一次(给电容充电)
DRAM的刷新
DRAM和SRAM的对比
ROM
主板上的BIOS芯片(ROM)存储了“自举装入程序”,负责引导装入操作系统(开机)。根据程序,CPU指挥IO系统把辅存中存储的操作系统的相关数据放到主存,引导开机。
主存与CPU的连接
双端口RAM和多模块存储器
运算器
基本组成
、
控制器
基本组成
完成一条指令
- 取指令:PC(程序计数器)存放当前欲执行指令的地址,具有计数功能(PC)+1->PC
- 分析指令:IR(指令寄存器)存放当前欲执行的指令
- 执行指令:CU
计算机硬件的主要技术指标
机器字长
CPU一次能处理数据位数与CPU中的寄存器位数有关
运算速度
- 主频
- 核数,每个核支持的线程数
- 吉普森法
- CPI:执行一条指令所需时钟周期数
- MIPS:每秒执行百万条指令
- FLOPS:每秒浮点运算次数
存储容量
存放二进制信息的总位数
主存容量
- 存储单元个数×存储字长
- 字节数
辅存容量
字节数
总线
定义
总线是连接各个部件的信息传输线,是各个部件共享的的传输介质
信息的传送
串行:传输数据一位一位传输,传输距离比较长
并行:传输数据多位传输,需要多根总线,传输距离比较短
结构
以存储器为中心的双总线结构框图
分类
片内总线
芯片内部的总线
系统总线
计算机各部件之间的信息传输线
- 数据总线:双向,与机器字长、存储字长有关
- 地址总线:单向,与存储地址、I/O地址有关
- 控制总线:有出 有入
有出:存储器读,存储器写,总线允许、中断确认
有入:中断请求、总线请求
通信总线
用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信)之间的通信
按传输方式分为两类
- 串行通信总线
- 并行通信总线
特性
机械特性:尺寸、形状、管脚数及排列顺序
电气特性:传输方向和有效的电平范围
功能特性:每根传输线的功能
- 地址
- 数据
- 控制
时间特性:信号的时序关系
性能指标
- 总线宽度:数据线的根数
- 标准传输率:每秒传输的最大字节数(MBps)
- 时钟同步/异步:同步、不同步
- 总线复用:地址线与数据线复用
- 信号线数:地址线、数据线和控制线的总和
- 总线控制方式:突发、自动、仲裁、逻辑、计数
- 其他指标:负载能力
总线标准
总线结构
单总线结构
多总线结构
双总线结构
三总线结构
另一种三总线结构
四总线结构
总线控制
总线判优控制
定义
主设备(模块)对总线有控制权
从设备(模块)响应从主设备发来的总线命令
分类
- 集中式
- 分布式
集中式
- 链式查询
缺点:优先级事先确定,与位置有关,对电路故障敏感
优点:结构简单,增加设备很容易,优先级算法简单,可靠性设计容易实现,速度慢
应用:微型计算机、嵌入式系统
- 计数器定时查询
优点:优先级确定灵活
缺点:速度较慢
- 独立请求方式
总线通信控制
目的
解决通信双方协调配合问题
总线传输周期
- 申请分配阶段:主模块申请,总线仲裁决定
- 寻址阶段:主模块向从模块给出地址和命令
- 传数阶段:主模块和从模块交换数据
- 结束阶段:主从模块撤销有关信息
总线通信的四种方式
- 同步通信:由统一时标控制数据传送,应用于总线长度比较短,各个模块存取时间比较一致
- 异步通信:采用应答方式,没有公共时钟标准
- 半同步通信:同步、异步结合
同步:发送方用系统时钟前沿发信号、接收方用系统时钟后沿判断、识别
异步:允许不同速度的模块和谐工作,增加一条“等待”响应信号wait
共同点
一个总线传输周期(以输入数据为例)
主模块发地址、命令 占用总线
从模块准备数据 不占用总线 总线空闲
从模块向主模块发数据 占用总线
- 分离式通信:充分挖掘系统总线每个瞬间的潜力
一个总线周期
- 子周期1:主模块申请占用总线,使用完后即放弃总线的使用权
- 子周期2:从模块申请占用总线,将各种信息送至总线上