- CPU及指令执行过程
- CPU及其内部构成(详解见第一章2..2)
CPU,即中央处理器,具有以下功能:1.程序的顺序控制、2.操作控制,即产生取出并执行指令的微操作信号,并将其送到相应的部件来控制对应部件实现对应的操作、3.时间控制:对各种操作进行时间上的控制、4.数据加工:对数据进行算术或逻辑运算。由以下部件来完成:
-
- 运算器
承担了执行各种算术(对带符号数的操作)和逻辑运算(对不带符号数的操作)的工作(负责数据加工和处理)
-
-
- 算术逻辑单元(ALU):用于进行算术/逻辑运算,属于组合逻辑电路
-
基本操作包括加、减、乘、除四则运算(都是加法运算),与、或、非、异或等逻辑运算以及移位、求补等操作。核心为并行加法器。
补:加法器:由全加器(最基本的加法单元,有两个加数和低位的进位共3个输入,本位和高位的进位2个输出)配以其他必要的逻辑电路组成,根据全加器是单个还是多个分为串行加法器(数据逐位串行送入)和并行加法器(位数与机器字长相同,数据同时运算,关键是加快进位产生和传递的速度)
-
-
- 暂存寄存器:暂存从主存读来的将送到运算器运算的数据,对应用程序员透明(不可见),在ALU的输入端
- 累加寄存器(ACC):是通用寄存器,用于暂时存放ALU运算的结果信息,可作为加法运算(ALU)的一个输入端
- 通用寄存器组:用于存放操作数(源操作数、目的操作数和中间结果)和各种地址信息等,其位数取决于机器字长
- 程序状态字寄存器(PSW):保留由算术逻辑运算指令或测试指令的结果而建立的各种状态信息(中断时要保护的现场)(包括SF-符号标志;ZF-零标志;CF-进位标志;OP-溢出标志等)
-
补:单片机PSW中包括:C-进位、借位标志;AC-辅助进位、借位标志;RS1、RS0-寄存器组选择控制位;OV-溢出标志;P-奇偶校验位
-
-
- 移位器:对操作数或运算结果进行移位运算
- 计数器(CT):控制乘除运算的操作步数
- 控制器
-
基本功能为执行指令,由控制器发出的一组微操作实现对应指令,即控制器通过控制总线向执行部件(如运算器、存储器、外设等)发出控制命令(微命令)来执行对应操作(微操作)
-
-
- 程序寄存器(PC):指出下一条指令在主存中存放的地址,CPU通过PC来获得指令,PC在使用后会自加
- 指令寄存器(IR):用于保存当前正在执行的指令内容(二进制数据)
- 指令译码器:对指令操作码字段进行译码,产生对应的操作信号
- 存储器地址寄存器(MAR):用于存放所要访问的主存单元的地址
- 存储器数据寄存器(MDR):用于存放向主存中写入或读出的数据
- 时序系统:对主频进行分频从而产生各种时序信号
- 微操作信号发生器:由IR中的内容(指令)、PSW中的状态信息和条件信号来产生控制计算机执行部件的各种控制信号(产生微命令)
-
例:CPU中有专用寄存器:PC、IR、MDR、MAR和PSW,但除了PSW属于运算器外,剩下的都是控制器,且IR、MDR和MAR都是透明的(不可见,无法编程控制)
-
- Cache(高速缓冲存储器)
位于CPU与内存间的一种容量小但速度高的存储器,保存CPU刚用过或循环使用的一部分数据,降低CPU从主存中调用数据的次数(减少等待时间),提高系统效率。(CPU的运算速度和Cache的存读取速度近似)
注:CPU在读取数据的地址时,若查找的地址在Cache中,则直接在Cache中以字为单位读取,称为命中;如果不在,则访问主存,而Cache则将主存中该字所在的块空间以Cache的块为单位(Cache和主存被分为若干大小相等的块,每块由若干字节组成)从主存中调入Cache中
-
- 内部总线(内部数据通路)
数据通路是数据在功能部件之间交互的路径,CPU的内部数据通路是运算器、各内部寄存器之间的传送路径,数据通路的功能是实现CPU内部的运算器与寄存器以及寄存器之间的数据交换
扩:系统总线,是CPU与主存、I/O等相连的总线,包括地址总线、数据总线和控制总线。CPU通过地址总线获取主存单元或I/O接口的地址
通过数据总线接发数据,通过控制总线发送对主存或I/O的(接收)控制信号
注:数据通路表示数据交互的路径,而数据总线是承载数据的媒介,或者说,数据通路是各个功能部件通过数据总线的连接而形成的数据传输路径