计算机组成原理 第六章 中央处理器上
概述
功能
程序控制
完成取指令、分析指令和执行指令的操作,即程序的顺序控制
操作控制
管理并产生指令的操作信号,送往相应部件,从而控制这些部件按照指令的要求进行动作
时序控制
对各种操作加以时间上的控制,为每条指令按照时间顺序提供应有的控制信号
数据加工
对数据进行算术和逻辑运算
中断处理
对异常情况和特殊请求进行处理
组成
运算器
含义
运算器接受从控制器送来的命令并执行相应的动作,对数据进行加工和处理
组成
算术逻辑单元ALU(核心)
主要功能是进行算术/逻辑运算
暂存寄存器
暂存从主存读来的数据,该数据不能存放在通用寄存器中,否则会破坏原有内容。暂存寄存器对应用程序员是透明的
累加寄存器
是一个通用寄存器,用于暂时存放ALU运算的结果,可以作为加法运算的一个输入端
通用寄存器组
例如AX、BX等,用于存放操作数、各种地址信息等
程序状态字寄存器
保留由算术逻辑运算指令或测试指令的结果而建立的各种状态信息。例如溢出标志OF、符号标志SF、零标志ZF、进位标志CF等
控制器
含义
执行指令,每条指令的执行由控制器发出的一组微操作实现
操作控制器根据指令操作码和时序信号,产生各种操作控制信号,以便正确地选择数据通路,把有关数据打入到一个寄存器,从而完成取指令和执行指令的控制。
组成
程序计数器PC
用于指出下一条指令在主存中的存放位置,PC有自增功能
指令寄存器IR
保存当前正在执行的那条指令
指令译码器
对操作码进行译码,向控制器提供特定的操作信号
存储器地址寄存器MAR
存放将要访问的主存单元的地址
存储器数据寄存器MDR
存放向主存写入的信息或从主存读出的信息
时序系统
产生各种时序信号,由统一时钟CLOCK分频得到
时序产生器
含义
时序产生器用于协调计算机内部各个部件的操作,确保它们按照正确的时间顺序执行。
??? 操作控制器产生的控制信号必须定时,为此必须有时序产生器。时序产生器的作用,就是对各种操作信号实施时间上的控制。
组成
时钟源:提供频率稳定且电平匹配的方波时钟脉冲信号。
环形脉冲发生器:产生有序的间隔相等或不等的脉冲序列,用于生成最终所需的节拍脉冲。
读写时序译码逻辑:用于控制数据的读写操作。
启停控制逻辑:控制时序信号的启停。
应用
测试系统:用于测试集成电路,特别是向量测试法的测试系统。
芯片开发:在数字逻辑电路中,时序产生器用于产生节拍脉冲,以控制时序逻辑电路的操作。
集成电路:在空间环境中,时序产生器对抗高能粒子的影响,确保集成电路的正常工作。
微信号操作发生器
根据IR、PSW及时序信号,产生各种控制信号
原理
控制器部件从数据总线接收指令信息,从运算器部件接收指令转移地址,送出指令地址到地址总线,还要向系统中的部件提供它们运行所需要的控制信号
功能
从主存中取出一条指令,并指出下一条指令在主存中的位置
对指令进行移码或测试,产生相应的操作控制信号,以便启动规定的动作
指挥并控制CPU、主存、输入和输出设备之间的数据流向
实现
硬布线控制器
采用时序逻辑技术实现
基本原理
基本架构
微程序控制器
采用存储逻辑实现
微程序设计需明确以下几个概念:
微程序
每条机器指令对应一段微程序, 这段微程序执行完毕, 该指令规定的功能也就完成了
微指令
微指令是指在微程序控制的计算机中,同时发出的控制信号所执行的一组微操作
微命令
构成控制信号序列的最小单位(即一条微指令中的每一位对应就是一种微命令)
CPU中的主要寄存器
⑴数据缓冲寄存器(DR)
用来暂存算数逻辑单元(ALU)的运算结果,或由数据存储器读出的数据字,或来自外部接口的数据字。
⑵指令寄存器(IR)
用来保存当前正在执行的一条指令。当执行一条指令时,先把它从指令 cache 存储器(简称指存) 中读出,然后再传送至指令寄存器。
⑶?? 程序计数器(PC)
用来确定下一条指令的地址,程序若是顺序执行的,则对 PC 加 1;若遇到转移指令,后继指令的地址(即 PC 的内容)必须从指令寄存器中的地址字段取得。
⑷ 数据地址寄存器(AR)
用来保存当前 CPU 所访问的数据 cache 存储器单元(简称数存)中的地址。由于要对存储器阵列进行地址译码,故必须使用地址寄存器来保持地址信息,直到一次读/写操作完成为止。
?⑸通用寄存器
在 CPU 模型中,通用寄存器是当 ALU 执行算术或逻辑运算时,为 ALU 提供一个工作区。目前 CPU 的通用寄存器数量很多,需要在指令格式中对寄存器号加以编址。
⑹状态字寄存器(PSW)
保存由算术指令和逻辑指令运算或测试结果建立的各种条件代码,如运算结果进位标志(C),溢出标志(V),零标志(Z),负标志(N)以及中断和系统工作状态等信息。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!