在谈结构前我们先看CPU有哪些功能
8.1.1 CPU的功能- 取指令
控制器必须具备能自动地从存储器中取出指令的功能
- 分析指令
分析指令包括两部分内容:其一,分析此指令要完成什么操作,即控制器需发出什么操作命令;其二,分析参与这次操作的操作数地址,即操作数的有效地址。
- 执行指令
执行指令就是根据分析指令产生的“操作命令”和“操作数地址”的要求,形成操作控制信号序列,通过对运算器、存储器以及I/O设备的操作,执行每条指令。
CPU必须具有控制程序的顺序执行(称指令控制)、产生完成每条指令的控制命令(称操作控制)、对各种操作加以时间上的控制(称时间控制)、对数据进行算术运算和逻辑运算(称数据加工)、处理中断等功能。
通过CPU的功能,我们来看需要实现这些功能CPU需要哪些结构
8.1.2 CPU的结构8.1.3 CPU的寄存器CPU中的寄存器大致可分为两类:
- 用户可见寄存器,用户可对这类寄存器编程,以及通过优化使CPU因使用这类寄存器而减少对主存的访问次数;
- 控制和状态寄存器,用户不可对这类寄存器编程,它们被控制部件使用,以控制CPU的操作,也可被带有特权的操作系统程序使用,从而控制程序的执行。
- 通用寄存器
通用寄存器可由程序设计者指定许多功能,可用于存放操作数,也可作为满足某种寻址方式所需的寄存器。寄存器间接寻址时还可用通用寄存器存放有效地址的地址。
- 数据寄存器
数据寄存器用于存放操作数,其位数应满足多数数据类型的数值范围。
- 地址寄存器
地址寄存器用于存放地址,其本身可以具有通用性,也可用于特殊的寻址方式。
- 条件码寄存器
条件码是CPU根据运算结果由硬件设置的位。将条件码放到一个或多个寄存器中,就构成了条件码寄存器。
状态和控制寄存器MAR:存储器地址寄存器,用于存放将被访问的存储单元的地址。
MDR:存储器数据寄存器,用于存放欲存入存储器中的数据或最近从存储器中读出的数据。
PC:程序计数器,存放现行指令的地址,通常具有计数功能。当遇到转移类指令时,PC的值可被修改。
IR:指令寄存器,存放当前欲执行的指令。
PSW:(Program State Word)程序状态字寄存器,存放条件码和其他状态信息。
在具有中断系统的机器中还有中断标记寄存器。
8.1.4 控制单元和中断系统控制单元(CU)是提供完成计算机全部指令操作的微操作命令序列部件。
微操作命令序列的形成方法有两种:一种是组合逻辑设计方法,为硬连线逻辑;另一种是微程序设计方法,为存储逻辑。
这里简单提一下,后文会详细介绍
8.2 指令周期8.2.1 基本概念
CPU每取出并执行一条指令所需的全部时间称为指令周期,也即CPU完成一条指令的时间。
取指阶段完成取指令和分析指令的操作,又称取指周期;执行阶段完成执行指令的操作,又称执行周期。
由于各种指令操作功能不同,因此各种指令的指令周期是不相同的