目录
中央处理器CPU
CPU
CPU由什么组成?
主要有运算器和控制器组成。
运算器:对数据进行加工
控制器:负责协调和控制各部件执行程序的指令序列(取指令,分析指令,执行指令)
CPU的功能有哪些?
1)指令控制:取指令,分析指令,执行指令
2)操作控制:CPU管理并生成操作信号,并把操作信号送往各个部件,完成指令控制。
3)时间控制:对各种操作加以时间上的控制。
4)数据加工:对数据进行算术和逻辑运算。
5)中断处理:对异常和特殊请求进行处理。
微程序控制器
将每条机器指令编写成一个微程序,每个微程序包含若干个微指令,每条微指令对应一个或者几个微操作命令。这些微程序可以存到一个控制器中,用寻址用户程序机器指令的办法来寻址每个微程序中的微指令。
流水线
将一条指令的执行过程分解成若干个阶段,每条指令都由相应的功能部件完成,在一条指令的第一个阶段完成之后,就可以紧接着执行下一条指令的第一个阶段。这样就构成了一条流水线。
作用/功能:提高计算机的运行速度
为了有利于实现指令流水线,指令集应具有以下特征:
1)指令长度尽量一致
2)指令格式尽量规整
3)数据和指令在存储器中对齐存放,可以减少访存次数。
4)流水线中的各功能段的时间尽量相等,否则容易引起堵塞、断流。
影响流水线的因素:
1)结构相关(资源冲突):多条指令在同一时刻争用同一资源。
解决方法:
- 前一个指令访存时,令后续指令暂停一个时钟周期;
- 单独设置数据存储器和指令存储器。
2)数据相关:在一个程序中,下一条指令会使用当前指令的结果。
解决方法:
- 将后续指令暂停几个时钟周期,直至数据相关问题得到解决;
- 设置相关专用通路,使得不用等到前一条指令把计算结果写回寄存器,而是直接将结果当做下一个指令的输入数据。
3)控制相关:当前流水线遇到了分支指令,如执行转移,会改变PC值,容易引起断流,引起控制冒险。
解决方法:
- 对转移指令进行分支预测,尽早生成转移目标地址。
流水线的性能指标
1)吞吐量:单位时间内流水线完成的任务数量
2)加速比:不使用流水线所用的时间与使用流水线所用的时间之比
3)效率:流水线的设备利用率
总线
为什么要引入总线?
原因:
在冯诺依曼结构中,各个部件之间均有单独连线,不仅线多,而且导致扩展I/O设备很不容易。即扩展一个I/O设备,需要连接很多线。因此,引入了总线连接方式,将多个设备连接在同一组总线上,构成设备之间的公共传输通道。
优点:
1)简化了系统结构,便于系统设计制造
2)减少了连线数目,方便布线,提高了系统的可靠度
3)方便接口设计、软件设计、系统的扩充
4)方便故障诊断和维修
总线的分类
片内总线: CPU芯片内部寄存器与寄存器之间、寄存器与ALU(算术逻辑单元)之间的公共连接线
通信总线:计算器系统之间、计算机系统与其他系统之间
系统总线:计算机系统内部各个功能部件之间
数据总线: | 地址总线: | 控制总线: |
各个功能部件之间传送数据信息, | 用来指明数据总线上,源数据或目的数据所在的主存单元的地址。 | 用来发送各种控制信号。 |
双向传输; | 单向:由CPU发出 | 对于控制总线中的单根线,是单向的 而一组控制总线中,有输入也有输出,因此是双向的。 |
单总线 | 双总线 | 三总线 | |
原理 | CPU、主存、I/O设备,挂在一组总线上。 | 主存总线:CPU、主存、通道之间传递数据 I/O总线:外部设备和通道之间传递数据 | 主存总线 I/O总线 直接内存访问(DMA)总线 |
优点 | 结构简单、成本低 | 实现了存储器和I/O总线的分离 | 提高了系统吞吐量 |
缺点 | 同一时刻只能有一组之间传递数据,不支持并发传送。 | 需要增加通道等硬件设施。 | 系统工作效率低 |
总线的性能指标
传输周期:指一次总线操作所需要的时间(申请、寻址、传输、结束阶段)
工作频率:各种操作的频率,总线周期的倒数
时钟周期:机器的时钟周期
时钟频率:时钟周期的倒数
带宽:总线的数据传输率,单位时间内总线上能同时传输的数据位数。
宽度:总线上能同时传输的数据位数
复用:一种信号线在不同的时间传输不同的数据
信号线数:数据线+地址总线+控制总线的和
总线仲裁
集中式仲裁请求:
1)链式查询:根据线的连接顺序一次查询每个部件是否有请求
2)计数器定时查询:对每个设备进行编号,用一个计数器依次查询
3)独立请求方式:在总线控制器中排队,按照一定规则依次批准某个请求
分布式仲裁请求:
不需要中央仲裁器,每一个主模块都有自己的仲裁号和仲裁器。
总线的定时
同步定时
采用一个统一的时钟信号,来协调发送方和接收方的传递定时关系
优点:传送速度快,具有较高的传递速率,逻辑简单
缺点:不能及时进行数据通信的有效性检验,可靠性较差
异步定时
没有统一的时钟信号,也没有固定的时间间隔,完全依靠双方相互制约的“握手”信号来实现控制。
优点:总线周期长度可变,能保证可靠的信息交换,自动适应时间的配合。
缺点:比同步定时复杂,速度慢。
不互锁
- 主设备发出请求信号后,不必等到接到从设备的“回答”信号,而是经过一段时间自动撤销信号
- 从设备在接到“请求”信号后,发出“回答”信号,经过一段时间之后,自动撤销信号
半互锁
- 主设备发出请求信号后,必须等到接到从设备的“回答”信号,才能撤销信号
- 从设备在接到“请求”信号后,发出“回答”信号,经过一段时间之后,自动撤销信号
全互锁
- 主设备发出请求信号后,必须等到接到从设备的“回答”信号,才能撤销信号
- 从设备发出回答信号后,必须等到接到主设备的“请求”信号撤销后,才能撤销