提供的功能
对应
基本结构
运算器
算术逻辑单元(ALU):主要功能是进行算术/逻辑运算
通用寄存器组:用于存放操作数(包括原操作数、目的操作数及中间结果)和各种地址信息等。SP是堆栈指针,用于指示栈顶的地址
暂存寄存器:可以用于暂存从主存读来的数据,这个数据不能存放在通用寄存器中,否则会破坏其原有内容
累加寄存器(ACC):通用寄存器之一,用于暂时存放ALU运算的结果信息,用于实现加法运算
程序状态字寄存器(PSW):保留由算术逻辑运算指令或测试指令的结果二建立的各种状态信息,如溢出标志(OP)、符号标志(SF)、零标志(ZF)、进位标志(CF)等。PSW中的这些位参与并决定微操作的形成
移位器:对运算结果进行移位运算
计数器:控制乘除运算的操作步数
专用数据通路方式:根据指令执行过程中的数据和地址的流动方向安排链接线路
CPU内部单总线方式:将所有寄存器输入端和输出端都连接到一条公共的通路上
控制器
程序计数器(PC):用于指出下一条指令在主存总存放的地址。CPU根据PC的内容去主存中取指令的。因程序中指令(通常)是顺序执行,所以有自增功能
指令寄存器(IR):用于保存当前正在执行的那条指令
指令译码器(ID):仅对操作码字短进行译码,向控制器提供特定的操作信号
微操作信号发生器(CU):根据IR的内容(指令)、PSW的内容(状态信息)及时序信号,产生控制整个计算机系统所需的各种控制信号,其结构有组合逻辑型和存储逻辑型
时序系统:用于产生各种时序信号,他们都是由统一时钟(CLOCK)分频得到
存储器地址寄存器(MAR):用于存放所要访问的主存单元的地址
存储器数据寄存器(MDR):用于存放向主存写入信息或从主存中读出信息
指令周期
概念:一条指令的执行分为不同的阶段
CPU从主存中每取出并执行一条指令所需的全部时间
指令周期=若干个个机器周期(CPU周期)
机器周期=若干个时钟周期(节拍、T周期、CPU时钟周期),CPU操作的最基本单位
流程:
数据流
不同阶段要求一次访问的数据序列
取指周期——根据PC内容去除指令代码并存放在IR中
间址周期——根据IR中的指令地址码取操作数有效地址
执行周期
根据IR中的指令字的操作码和操作数通过ALU操作产生执行结果。不同指令的执行周期操作不同,没有统一的数据流向
中断周期——暂停当前任务去完成其他任务,为了能恢复当前任务,需要保存断点一般用堆栈来保存断点
进栈用减1,主存从高位向低位扩增分配地址
指令执行方案
如何安排多条指令的执行
数据通路:数据在功能部件之间传送的路径
由控制部件产生的控制信号建立数据通路
基本结构:
内部总线:同一部件,如CPU内部连接各寄存器及运算部件之间的总线
系统总线:同一台计算机系统的各部件,如CPU、内存、通道和各类I/O接口间互相连接的总线
如何设置部件之间的连接路径
MDR既要内部交流,又要外部交流,会分配两组输入输出线,MDRin暂时表示从外部输入
IR与MDR存放的地址码相同
描述指令执行过程中信号和数据在这些路径上的传输
OP:操作码字段,译码
控制器——计算机系统的指挥中心
功能: