计算机组成原理(超详解!!) 第七节 中央处理器(上)

1.CPU的功能和组成

CPU的功能:

指令控制:程序的顺序控制。

操作控制:管理并产生每条指令的操作信号,并把它们送到相应部件,控制这些部件按要求进行动作。                    

时间控制:对各种操作实施时间上的定时。

数据加工:对数据进行算术和逻辑运算处理。

CPU的基本组成:(1)运算器(2)Cache(3)控制器

运算器:

由ALU、R0-R3、DR和PSW组成;是数据加工处理部件;在控制器的指挥下运行。

运算器的主要功能:执行算术运算;执行逻辑运算,并进行逻辑测试。

定点运算器的结构:单总线结构的运算器;双总线结构的运算器 ;三总线结构的运算器。

控制器:      

组成:PC、指令寄存器(IR) 、AR、指令译码器(ID)、时序产生器和操作控制器;      

作用:“决策机构” ,协调和指挥整个系统的操作。      

功能:

(1)取指令,并指出下一条指令的位置。            

(2)对指令译码或测试,产生相应操作控制信号,以启动规定的动作。                                         

(3)指挥并控制CPU、内存和I/O设备之间数据流动的方向。

各种计算机的CPU可能有这样或那样的不同,但是在CPU中至少要有6类寄存器:

①指令寄存器(IR)

②程序计数器(PC)

③数据地址寄存器(AR) 保存当前CPU所访问的内存单元的地址

④数据缓冲寄存器(DR)    暂时存放由内存读出或写入的指令或数据字

⑤通用寄存器(R0~R3)    存放操作数

⑥状态字寄存器(PSW) 保存由算术和逻辑指令的结果建立的各种条件码

通常把许多寄存器之间传送信息的通路,称为数据通路。 在各寄存器之间建立数据通路的任务,是由称为操作控制器的部件来完成的。  

操作控制器的功能:根据指令操作码和时序信号,产生各种操作控制信号,以便正确地选择数据通路,把有关数据打入到一个寄存器,从而完成取指令和执行指令的控制。  

根据设计方法不同,操作控制器可分为两种:

1.硬连线控制器,它是采用时序逻辑技术来实现的;

2.微程序控制器,它是采用存储逻辑来实现的。  

操作控制器产生的控制信号必须定时,为此必须有时序产生器。  

因为计算机高速地进行工作,每一个动作的时间是非常严格的,不能太早也不能太迟。时序产生器的作用,就是对各种操作信号实施时间上的控制。

操作控制器(微命令发生器)分类:

(1)组合逻辑型:   常规控制器或硬布线控制器,采用组合逻辑技术实现。  

优点:速度快;  

缺点:设计、调试、维修困难,难实现设计自动化。

(2)存储逻辑型 :  微程序控制器,采用存储逻辑来实现,即微操作信号代码化,使得每条指令转化为一段微程序并存入一个专门的存储器中。

(3)结合型 :  PLA控制器,组合两者优点,尽量克服两者的缺点,是一种较有前途的方法

2.指令周期

1.指令周期的基本概念

指令周期:取出并执行一条指令的时间。    

注:各种指令功能变化多样,其指令周期亦不尽相同。

CPU周期|机器周期(工作周期):

通常把一条指令周期划分为若干个机器周期,每个机器周期完成一个基本操作。

主存的工作周期(存取周期)为基础来规定CPU周期,比如,可以用CPU读取一个指令字的最短时间来规定CPU周期

不同的指令,可能包含不同数目的机器周期。

一个机器周期中,包含若干个时钟周期(节拍脉冲或T脉冲)。

CPU周期规定,不同的计算机中规定不同

时钟周期|节拍电位|T周期:

在一个机器周期内,要完成若干个微操作。这些微操作有的可以同时执行,有的需要按先后次序串行执行。因而需要把一个机器周期分为若干个相等的时间段,每一个时间段称为一个节拍。节拍常用具有一定宽度的电位信号表示,称之为节拍电位。

节拍的宽度取决于CPU完成一次基本的微操作的时间,如:ALU完成一次正确的运算,寄存器间的一次数据传送等。

2.MOV指令的指令周期

3.LAD指令的指令周期

4.ADD指令的指令周期

5.STO指令的指令周期

6.JMP指令的指令周期

7.用方框图语言表示指令周期 

方框:代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制操作;

菱形:表示某种判别或测试,在时间上不单占一个CPU周期,而是依附于紧接它的前面一个方框的CPU周期;

箭头:表示CPU执行顺序;

‘ ~ ’ :公操作符号,表示一条指令执行完毕后,CPU所开始执行的一些操作——如中断处理、通道处理等,其中取指令也可认为是公操作。

3.时序产生器和控制方式

1.时序信号的作用和体制

CPU中的控制器用它指挥机器的工作

CPU可以用时序信号/周期信息来辨认从内存中取出的是指令(取指)还是数据(执行)

一个CPU周期中时钟脉冲对CPU的动作有严格的约束

操作控制器发出的各种信号是时间(时序信号)和空间(部件操作信号)的函数。

是CPU中的时间标志。计算机就是按照时序信号准确、迅速、有条不紊指挥各个部件协同工作。

功能:控制操作时间和操作时刻。

基本体制:电位-脉冲制。

当实现寄存器之间的数据传送时,数据加在触发器的电位输入端,而打入数据的控制信号加在触发器的时钟输入端。

所有的操作都按节拍进行,持续时间为一个节拍的称为节拍电位。在节拍电位有效期间产生的脉冲称为节拍脉冲。一个节拍电位中可产生多个节拍脉冲。

硬布线控制器:主状态周期-节拍电位-节拍脉冲三级体制

微程序控制器:节拍电位-节拍脉冲二级体制

节拍电位-节拍脉冲:

控制信号:脉冲

数据:电位

数据准备好后,以电位的方式送触发器

控制信号来到后,用一个脉冲信号把数据装入触发器

硬布线控制器中的时序信号:

硬布线控制器中,时序信号往往采用主状态周期-节拍电位-节拍脉冲三级体制。

主状态周期(指令周期):包含若干个节拍周期,可以用一个触发器的状态持续时间来表示

节拍电位(机器周期):表示一个CPU 周期的时间,包含若干个节拍脉冲

节拍脉冲(时钟周期):表示较小的时间单位

2.时序信号产生器

一般由时钟源、环行脉冲发生器、节拍脉冲和读写时序译码逻辑、启停控制逻辑等组成。

1、时钟源(主时钟)

通常由石英晶体震荡器和与非门组成的正反馈振荡电路组成。  

作用:提供频率稳定且电平匹配的方波时钟脉冲信号,为整个机器提供基准信号。    

时钟源在机器上电后立即开始产生具有一定占空比的时钟脉冲序列,直到关电源为止,中间不允许有任何间断。

2、环形脉冲发生器(节拍信号发生器)

产生一组有序的间隔相等或不等的脉冲序列,以便通过译码电路产生最后所需要的节拍脉冲。

3、节拍脉冲和读写时序译码逻辑

根据环形脉冲发生器产生的脉冲,通过与门和与非门电路产生节拍。同时和微程序控制器中产生的读/写/对内存/对I/O设备等操作信号融合,实现对内存和外设的读写操作。

注:时序信号还不是微操作信号,而只是协调各部件工作的同步信号。

4、启停控制逻辑

根据计算机的需要,可靠地开放和封锁脉冲,控制时序信号的发生和停止,实现对整个机器的正确启动与停止。必须保证启动时输出的第一个脉冲和停止时输出的最后一个脉冲都是完整的脉冲。

1.同步控制方式(固定时序控制方式)

产生不同微操作命令序列所用的时序控制方式

1. 同步控制方式

任一微操作均由 统一基准时标 的时序信号控制

(1) 采用定长的机器周期

以最长的微操作序列 和最繁的微操作作为 标准

机器周期内节拍数相同

(2) 采用不定长的机器周期

机器周期内节拍数不等

(3) 采用中央控制和局部控制相结合的方法

局部控制的节拍宽度与中央控制的节拍宽度一致

优点:时序关系简单,时序划分规整,控制不复杂;控制逻辑易于集中,容易实现,便于管理。

缺点:时间安排不合理,会造成简单指令较多的空闲时间,影响指令执行速度,不利于发挥计算机高速运算的潜力。

应用场合:用于CPU和设备内部、系统总线操作(各挂接部件速度相近,传送时间确定,传送距离较近)。

2.异步控制方式(可变时序控制方式)

各项操作按需安排时间,不受统一时序控制。

特点:无统一时钟周期划分,各操作间的衔接和各部件之间的信息交换采用异步应答方式。

主设备:申请并掌握总线权的设备。

从设备:响应主设备请求的设备。

优点:   时间安排紧凑、合理、效率高;

缺点:   控制复杂,不容易实现。

应用场合:用于异步总线操作(各挂接部件速度差异大,传送时间不确定,传送距离较远)。

3.联合控制方式

大部分操作安排在固定的机器周期中,对某些时间难以确定的操作则以执行部件的“回答”信号作为本次操作的结束。

特点:同步方式引入异步应答。

优点:不浪费很多时间,控制上又不是很复杂。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/8318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL表分区深入指南

MySQL的表分区功能允许将一个表的数据分散存储在多个物理子表中,但在逻辑上仍表现为一个单独的表。这可以帮助提高大型数据库表的查询和维护效率。本文将详细介绍如何在MySQL中实施和管理表分区,包括分区类型、创建分区表的步骤,以及分区表的…

Day_3

1. HttpClient HttpClient是Apache的一个子项目&#xff0c;是高效的、功能丰富的支持HTTP协议的客户端编程工具包 作用&#xff1a;发送HTTP请求&#xff0c; 接受相应数据 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>…

ES集群搭建、身份认证配置

虚机搭建 添加es用户 elasticsearch 默认不允许root用户启动&#xff0c;所以需要创建es用户 useradd elasticsearch passwd elasticsearch解压安装包 #解压es tar -xvzf elasticsearch-7.14.2-linux-x86_64.tar.gz将文件夹赋予es用户权限 #将文件夹赋予es用户权限 sudo c…

controlnet的preprocessor类型

GitHub - huggingface/controlnet_auxContribute to huggingface/controlnet_aux development by creating an account on GitHub.https://github.com/huggingface/controlnet_aux/https://huggingface.co/lllyasviel/sd_control_collection

js中日期Date的使用

日常搬砖过程中,凡事使用到Date总是一知半解,每次都要查阅资料,今天有时间把这里整理一下,希望今天储备的知识,够以后使用就不用查阅资料了哈,现在开始吧 new Date() 使用它可以创建一个日期实例,并返回代表当前时间的字符串 接收参数有5种形式 无参数,新创建的 Date 对象代…

Qt绘制箭头

Qt绘制箭头 接收两个点作为向量的两端&#xff0c;用来确定箭头方向&#xff0c;额外添加参数&#xff0c;确定箭头是否和向量一致 然后使用fillPath填充箭头 QPainterPath arrowPath(const QPointF& p1, const QPointF& p2, int direct 0, int endIndex 0, int ar…

智慧监控 高效运维

随着企业IT建设的不断深入和完善&#xff0c;IT管理的重要性逐渐被重视&#xff0c;打通数据割裂&#xff0c;使业务更加充分融合。亟需一套统一的平台来实现跨品牌跨设备类型的集中监控和管理。 LinkSLA带外监控平台&#xff0c;不仅适用于大规模或超大规模的运维场景&#x…

量化交易的优势和QMT、Ptrade开通流程

量化交易没有一个精确的定义&#xff0c;广义上可以认为&#xff0c;凡是借助于数学模型和计算机实现的交易方法都可以称为量化交易。 量化交易的基本原理是通过计算机方法对海量的股票市场历史数据进行分析&#xff0c;总结出一些能够带来持续收益的交易因子。根据这些因子编…

Tomcat添加服务以及设置开机自启

下载地址连接 Index of /dist/tomcat👓 注意点:不要出现中文路径 #环境变量CATALINA_HOME=D:\apache-tomcat-7.0.62 TOMCAT_HOME=D:\apache-tomcat-7.0.62 JAVA_HOME=D:\tool\jdk1.8.0_111 PATH=%CATALINA_HOME%\bin;%CATALINA_HOME%\lib;%CATALINA_HOME%\lib;D:\tool\jdk1.…

将数据结构和流程可视化——E-R图和DFD图

通过程序处理数据时&#xff0c;不仅可以将数据保存到文件&#xff0c;还可以将其保存到数据库中。在数据库中数据是以表格形式保存的&#xff0c;但并不是只有一个表格&#xff0c;而是多个表格进行保存&#xff0c;因此数据更易于管理&#xff0c;即使变更数据&#xff0c;也…

Spring MVC(一)

1 Spring MVC概述 我们在之前学习Servlet的时候&#xff0c;认识了在WEB开发中MVC设计模式&#xff0c;其最为经典的设计就是&#xff0c;通过控制器&#xff08;Controller&#xff09;分离模型&#xff08;Model&#xff09;和视图&#xff08;View&#xff09;。在具体的WEB…

Redis进阶学习

Redis进阶学习 一、Redis事务1.2 Redis监控1.3 Jedis连接1.4 SpringBoot整合1.5 自定义RedisTemple1.6 Redis.conf详解 二、 Redis持久化2.1 RDB2.2 AOF进程 三、Redis发布订阅3.1 Redis主从复制3.2 集群环境配置3.3、复制原理3.4、宕机后主动变为主机3.5、哨兵模式 四、Redis缓…

【ITK配准】第七期 尺度(Metric)-基匹配Metric

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享ITK中的基匹配Metric,即itk::MatchCardinalityImageToImageMetric ,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我…

【算法刷题day45】卡码网:70. 爬楼梯(进阶版);Leetcode:322. 零钱兑换、279. 完全平方数

文章目录 Leetcode 70. 爬楼梯&#xff08;进阶版&#xff09;解题思路代码总结 Leetcode 322. 零钱兑换解题思路代码总结 Leetcode 279. 完全平方数解题思路代码总结 草稿图网站 java的Deque Leetcode 70. 爬楼梯&#xff08;进阶版&#xff09; 题目&#xff1a;70. 爬楼梯&…

2024年大数据与艺术设计国际学术会议(ICBDAD 2024)

2024年大数据与艺术设计国际学术会议(ICBDAD 2024) 2024 International Conference on Big Data and Art Design 一、【会议简介】 2024年大数据与艺术设计国际学术会议&#xff0c;听起来好像两个完全不相关的领域&#xff0c;却意外地融合在了一起。 在这个会议上&#xff0c…

力士乐触摸屏维修VCP11.2DWN-003-NN-NN-PW工业液晶屏幕电脑主机深圳捷达工控维修

扩展的性能、高系统可用性和多种配置选项 借助 lndraControl 系列工业 PC 和显示器&#xff0c;实现高性能和高灵活性。 lndraControl PR 性能分级盒采用最新的 Intel ATOM 和 Core-i 处理器&#xff0c;可与 lndraControl DR 多点触控显示屏集成&#xff0c;连接距离可达 100M…

el-carousel走马灯页数回到第一页

我的走马灯是在一个弹窗里,包裹着一些button,切换到下一页时 关闭弹窗再打开弹窗还显示的是上次第二页位置 领导很不满意 1. 2.写在你打开弹窗或者关闭弹窗的位置 this.$refs.carousel && (this.$refs.carousel.activeIndex 0); 解释一下: this.$refs.carousel: thi…

开源数据可视化大屏对接表单数据实践!

如果你需要一个表单系统&#xff0c;进行数据收集&#xff1b;可以使用tduck填鸭进行私有化部署&#xff0c;进行表单制作&#xff0c;完成数据收集。 在实际业务中&#xff0c;往往需要将收集的数据进行展示或分析&#xff1b;此时就可以使用表单数据推送到TReport中&#xf…

华为eNSP中型企业局域网网络规划设计(下)

→b站传送门&#xff0c;感谢大佬← →华为eNSP中型企业局域网网络规划设计&#xff08;上&#xff09;← →拓扑图传送门&#xff0c;可以自己配置着玩← 配置ospf AR3 [AR3]ospf 1 router-id 3.3.3.3 //出口默认路由 [AR3-ospf-1]default-route-advertise always #area…

R语言数据探索与分析-中国GDP回归分析与预测

首先读取数据&#xff1a; 将GDP列转换为常规数字格式 # 可视化GDP数据 # 查看数据结构 # 确保数据类型是正确的 第一张图片展示了中国2002年到2021年间的GDP增长趋势&#xff0c;这是一个时间序列图&#xff0c;其中横轴表示年份&#xff0c;纵轴表示GDP&#xff08;单位未…