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

2024-05-09 05:04

本文主要是介绍计算机组成原理(超详解!!) 第七节 中央处理器(上),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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.chinasem.cn/article/972465

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和

6.1.数据结构-c/c++堆详解下篇(堆排序,TopK问题)

上篇:6.1.数据结构-c/c++模拟实现堆上篇(向下,上调整算法,建堆,增删数据)-CSDN博客 本章重点 1.使用堆来完成堆排序 2.使用堆解决TopK问题 目录 一.堆排序 1.1 思路 1.2 代码 1.3 简单测试 二.TopK问题 2.1 思路(求最小): 2.2 C语言代码(手写堆) 2.3 C++代码(使用优先级队列 priority_queue)

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

hdu4407容斥原理

题意: 有一个元素为 1~n 的数列{An},有2种操作(1000次): 1、求某段区间 [a,b] 中与 p 互质的数的和。 2、将数列中某个位置元素的值改变。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.Inpu

hdu4059容斥原理

求1-n中与n互质的数的4次方之和 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWrit

嵌入式Openharmony系统构建与启动详解

大家好,今天主要给大家分享一下,如何构建Openharmony子系统以及系统的启动过程分解。 第一:OpenHarmony系统构建      首先熟悉一下,构建系统是一种自动化处理工具的集合,通过将源代码文件进行一系列处理,最终生成和用户可以使用的目标文件。这里的目标文件包括静态链接库文件、动态链接库文件、可执行文件、脚本文件、配置文件等。      我们在编写hellowor