现在计算机的基本结构示意
可知CPU主要与主存和IO设备进行通信,核心包括ALU运算器和CU控制器两大部分。
CPU主要功能
指令控制:控制程序顺序执行
操作控制:产生完成每条指令所需的控制命令
时间控制:对各种操作加以时间上控制
数据加工:对于数据进行算术和逻辑运算
处理中断:处理各种中断
CPU主要由ALU,寄存器,CU以及中断系统来组成。
CPU中寄存器
主要包括用户可见寄存器和控制状态寄存器
用户可见寄存器有:
通用寄存器 存放操作数;作为某种寻址方式所需的专用寄存器
数据寄存器 存放操作数
地址寄存器 存放地址
条件码寄存器 存放条件码,用作程序分支依据
控制和状态寄存器有:
MAR 存储器地址寄存器
MDR 存储器数据寄存器
PC 程序计数器 现行指令的地址
IR 指令寄存器 当前欲执行的指令
PSW 存放程序状态字
中断标记寄存器
例8086中的寄存器 共有14个寄存器
参考链接:https://blog.csdn.net/Jinxiutf666/article/details/80894656
控制单元CU
提供完成计算机全部指令操作的微操作命令序列部件
微操作序列形成方式:组合逻辑设计 微程序设计
指令周期
CPU取出并执行一条指令所需全部时间称为指令周期,即CPU完成一条指令的时间
将取指和分析称为取指周期;指令执行阶段称为执行周期
有些指令只需要取指周期,有些指令需要取指周期和执行周期,有些需要取指周期和多个执行周期
如果操作数为间接寻址,则需要首先取出操作数的地址,然后访存取出操作数,因此需要增加间址周期
CPU采用中断方式与IO设备通信,在每条指令执行结束时罚中断查询信号,如果有中断请求,需要进入中断周期
指令周期的流程如下所示
CPU指令周期由取指,间址,执行和中断组成,称为CPU4个工作周期,4个工作周期都需要访存
取指 取指令
间址 取地址
执行 取操作数
中断 存程序断点
可以用4个标志触发器来标识CPU各个工作周期
指令周期数据流
取指周期数据流
PC中存放当前待执行指令地址,送入MAR,送入地址总线
CU经过控制总线向存储器发送读操作,使MAR所指主存地址内容经数据总线送入MDR,送入IR
CU控制PC内容加1,形成下一条指令地址
间址周期数据流
取指周期结束,CU检查IR中内容,如果有间址操作,将Ad(MDR)中内容送入MAR,地址总线,CU向存储器发送读命令,将有效地址送入MDR中
中断周期数据流
CU将保存程序断点存储器特殊地址送入MAR,送到地址总线,CU向存储器发写明令,将PC内容送到MDR,最终将程序断点将数据总线存入存储器;
CU将中断服务程序入口地址送到PC,为下一个指令周期取值周期做准备。