功能和结构
计算机组成架构:
中央处理器cpu即包含运算器和控制器。
细分为:ALU,寄存器,中断系统,CU。
cpu组成结构
运算器用于对数据的加工,实现算术运算和逻辑运算。
其中包含:ACC累加器,MQ乘商寄存器,X通用寄存器,ALU算数逻辑单元
控制器主要协调并控制计算机各个部件执行程序指令的顺序,包括取指令,分析指令,执行指令。
cpu的功能
指令控制,操作控制,时间控制,数据加工,中断处理。
指令控制:完成取指令,分析指令,执行指令的操作。
操作控制:一条指令得到功能往往是由若干个操作信号的组合来实现的。cpu管理并产生由内存取出的每条指令的操作信号。
时间控制:对各种操作加以时间上的控制。
数据加工:对数据进行算数和逻辑运算。
中断处理:对计算机运行过程中出现的异常情况和特殊请求进行处理。
运算器的基本结构
算数逻辑单元:主要进行算数计算,逻辑计算。
通用寄存器组:AX,BX,CX,DX,SP,用于存放操作数和各种地址信息。
暂存寄存器:用于暂存从主存读来的数据。
累加寄存器:是一个通用寄存器,用于暂存ALU的计算结果信息,用于实现加法运算。
程序状态字寄存器:保留由算数逻辑运算指令或者测试指令的结果而建立的各种状态信息。
移位器:对算术结果进行移位运算。
计数器:控制乘除计算的操作步骤。
CPU内部单总线方式:将所有寄存器的输入输出端都连接到一条公共的通路上。
控制器的基本结构
程序计数器PC:指出下一条指令在主存中的存放地址。
指令寄存器:用于保存当前只在执行的那条指令。
指令译码器:仅对操作码字段进行译码,向控制器提供特定的操作信号。
为操作信号发生器:根据IR的指令,PSW的内容及时序信号,产生控制整个计算机系统所需的各种控制信号。
时序系统:用于产生各种时序信号,由统一时钟分频得到。
地址寄存器:存放要访问的主存单元地址
数据寄存器:存放向主存写入信息或者从主存中读出的信息。
综上:cpu内部结构整体如下
指令执行过程
指令周期
cpu从主存中取出一条指令并执行所需的时间。
指令周期常常用若干机器周期来表示,机器周期又叫cpu周期。
一个机器周期又包含若干个时钟周期。时钟周期是cpu操作的最基本单位。
注:每个指令周期内机器周期数可以不等,每个机器周期内时钟周期也可以不等。
不同指令的指令周期不同。有长有短。也不全是取指+执行。
综上,指令周期最多包含四个周期,且判断流程如下:
四个工作周期都有访存操作,只是访存目的不同,取指周期取指令,间址周期是为了取有效地址,执行周期是为了取操作数,中断周期是为了保存程序断点。
取址周期的详细过程。
pc中存着即将执行的指令地址,将地址给MAR地址寄存器,再通过地址总线将指令地址传给存储器,此时CU给存储器控制信号,读取传来地址上的指令信息,将其地址上的信息读出后传入数据总线,通过数据总线将指令信息存入MDR数据寄存器中,再将MDR中的指令信息传入IR指令寄存器,此时就完成了取指令的操作,最后将PC+1,就完成了整个取址周期要干的事。
间址周期详细过程
开始的第一步和取址周期干的事一样,只不过通过pc的地址取回来的指令不是真实地址,还得再取一次,所以这次就是从IR出发,IR指令寄存器中已经存放了需要再次取指令的地址,然后和从PC取址一样,将地址给MAR地址寄存器,再通过地址总线将指令地址传给存储器,此时CU给存储器控制信号,读取传来地址上的指令信息,将其地址上的信息读出后传入数据总线,通过数据总线将指令信息存入MDR数据寄存器中,再将MDR中的指令信息传入IR指令寄存器,此时就完成了取指令的操作。
执行周期
执行周期的任务是根据IR中的指令操作码和操作数通过ALU操作产生执行结果。不同指令的执行周期操作不同,因此没有统一的数据流向。
中断周期
中断:暂停当前任务去完成其他任务。为了能够恢复当前任务,需要保存断点。
一般使用堆栈来保存断点,将断点入栈保存。sp表示栈顶地址。
发生中断时,CU控制SP减一,修改后的地址送入MAR,本质就是将断点存入某个存储单元。再将pc中的断点内容传入MDR,再分别通过地址总线,数据总线,再在CU的控制信号下,将MDR中的断点数据存入到MAR传来的地址中。以此方法保存断点。
指令执行方案
单指令周期:对所有指令都选用相同的执行时间来完成。指令之间串行执行,指令周期取决于执行时间最长的的指令执行时间。
对那些本可以很快完成的指令却需要定长的周期来完成,会降低整个系统的运行速度。
多指令周期:对不同类型的指令选用不同的执行步骤来完成。指令之间串行执行,可选用不同个数的时钟周期来完成不同指令的执行过程。
但需要更复杂的硬件设计。
流水线方案:
在每一个时钟周期启动一条指令,尽可能让多条指令同时运行,但各自处在不同的执行步骤中。
指令之间并行执行。
数据通路
定义:数据在功能部件之间传送的路径。
基本结构:
cpu内部单总线方式,cpu内部多总线方式,专用数据通路方式。
内部总线是指同一部件,如cpu内部连接各寄存器及运算部件之间的总线。
系统总线是指同一台计算机系统的各部件,如cpu,内存,通道和各类IO接口间互相连接的总线。
cpu内部单总线方式
同一时刻只允许两个部件之间进行数据的流通。
例如:把pc中的数据送至MAR。
(pc)-> Bus ,PCout有效,PC内容送至总线Bus。
Bus -> MAR ,MARin有效,总线内容送至MAR。
cpu内部多总线方式
设置多条总线,可同时支持多个设备两两进行数据传输。但也仅限在有几条总线,同时间允许传输的最大并行量也就是几个。
专用数据通路方式
是一种特定的数据传输路径或数据处理路径,而不是简单地将各个部件连接起来。它通常涉及到在计算机体系结构或者特定应用的硬件设计中,为了优化特定功能或任务而设计的数据传输路径。
标签:计算机,地址,指令,寄存器,原理,执行,中央处理器,cpu,周期 From: https://blog.csdn.net/qq_62960735/article/details/140101628