中央处理器
中央处理器
CPU的功能
中央处理器(CPU)由运算器和控制器组成。
- 控制器的功能:负责协调并控制计算机各部件执行程序的指令序列,包括取值令、分析指令和执行指令。
- 运算器的功能:对数据进行加工处理。
具体功能:
- 指令控制:控制程序的顺序执行(完成取指、分析、执行操作)
- 操作控制:产生完成每条指令所需的控制命令
- 时间控制:对各种操作加以时间上的控制
- 数据加工:对数据进行算术和逻辑运算
- 中断处理:处理计算机在运行过程中出现的异常情况和特殊请求
CPU的基本结构
- 运算器
组成部分:- 算术逻辑单元(ALU):进行算术和逻辑运算
- 暂存寄存器:用于暂存从主存读来的数据
- 累加寄存器(ACC):暂时存放ALU运算的结果信息
- 通用寄存器组:存放操作数和各种地址信息
- 程序状态字寄存器(PSW):保留状态信息,如溢出标志,符号标志
- 移位器:对操作数或运算结果进行移位
- 计数器(CT):控制乘除运算的操作步数
- 控制器
组成部分:- 程序计数器(PC):用于指出欲执行指令在主存中的存放地址,CPU根据PC的内容去主存中取指令
- 指令寄存器(IR):用于保存当前正在执行的那条指令
- 指令译码器:仅对操作码字段进行译码,向控制器提供特定的操作信号
- 存储器地址寄存器(MAR):用于存放要访问的主存单元的地址
- 存储器数据寄存器(MDR):用于存放向主存写入的信息或从主存读出的信息
- 时序系统:用于产生各种时序信号
- 微操作信号发生器:产生控制整个计算机系统所需的控制信号
程序计数器的位数取决于存储器的容量
指令寄存器的位数取决于指令字长
通用寄存器的位数取决于机器字长
CPU中的专用寄存器
- 程序计数器(PC)
- 指令寄存器(IR)
- 存储器数据寄存器(MDR)
- 存储器数据寄存器(MAR)
- 程序状态字寄存器(PSW)
指令周期
CPU从主存中取出并执行一条指令的时间被称为指令周期
CPU的工作周期:CPU访问一次存储器的时间
- 取指周期(根据PC的内容从主存中取出指令代码并放在IR中)
- 间址周期(取操作数有效地址)
- 执行周期(取操作数)
- 中断周期(处理中断请求)
指令流水
将指令分解成若干子过程,通过将每个子过程与其他子过程并行执行,来提高计算机吞吐率的技术。
流水线的性能指标
-
吞吐率
在单位时间内流水线所完成的指令或输出结果的数量
对于 \(m\) 段的流水线而言,若各段的时间均为 \(\Delta t\) ,连续取 \(n\) 条指令,除了第一条指令需要 \(m\Delta t\) 外,其余 \(n-1\) 条指令,每隔 \(\Delta t\) 就有一个结果输出。
实际吞吐率为 \(T_P=\frac{n}{m\Delta t +(n-1)\Delta t}\) -
加速比
\(m\) 段流水线的速度与等功能的非流水线的速度之比。设流水线各段时间均为 \(\Delta t\) ,则完成 n 条指令在 m 段流水线上所需时间为 \(T'=nm \Delta t\) 。
加速比为 \(S_P=\frac{n m\Delta t}{m\Delta t +(n-1)\Delta t}=\frac{nm}{m+n-1}\) -
流水线中的多发技术
- 超标量流水技术
- 超流水线技术
- 超长指令字技术
指令和数据都放在内存中,计算机如何区分它们是指令还是数据?
从时间上,取指令发生在取指周期,取数据发生在执行周期;
从空间上,从内存读出的指令流向控制器(指令寄存器),从内存读出的数据流向运算器(通用寄存器)
本文来自博客园,作者:风雨zzm,转载请注明原文链接:https://www.cnblogs.com/zzmxj/p/17456821.html