计算机组成原理第五章(中央处理器CPU)
---恢复内容开始---
- 指令周期(取指令、分析指令到执行完该指令所需的全部时间)
- 机器周期通常又称CPU周期
- 通常把一条指令周期分成若干个机器周期,每个机器周期完成一个基本操作
- 以主存的工作周期(存取周期)为基础来规定CPU周期,比如,可以用CPU读取一个指令字的最短时间来规定CPU周期
- 不同的指令,可能包含不同数目的机器周期
- 一个机器周期中,包含若干个T周期(节拍脉冲或T脉冲)
- 不同的指令,CPU周期规定不同
- 时钟周期
- 在一个机器周期内,要完成若干个微操作。这些微操作有的可以同时执行,有的需要按先后次序串行执行。因而需要把一个机器周期分为若干个相等的时间段,每一个时间段称为一个节拍。节拍常用具有一定宽度的电位信号表示,称之为节拍电位
- 节拍的宽度取决于CPU完成一次基本的微操作的时间,如:ALU完成一次正确的运算,寄存器间的一次数据传送等
- 指令周期(由若干个CPU周期构成,CPU周期由若干个T周期构成)
- MOV指令的指令周期

LAD指令的指令周期:

- ADD指令的指令周期:

- STO指令的指令周期:

- JMP指令的指令周期:

- 取值周期
- 执行周期
5.2总结:
1. 一条指令包括一个取指令周期和一个执行指令周期
2. 在每个CPU周期中数据通路是明确的
3. 数据通路的建立及操作收到操作控制器的控制,当然决定于是什么指令
时序产生器和控制方式
1. 时序信号的作用和体制
- 时序信号:CPU规定脉冲,有节奏的及其工作,提供的时间标志。(需要采用多级时序体制)
- 时序信号是协调各工件工作的同步信号,时间按标志是用时序信号来体现的。
- 时序信号的基本体制:电位——脉冲体制
2. 时序信号产生器
- 硬布线控制器:采用主状态周期——节拍电位——节拍脉冲三级体制
- 微程序控制器:采用节拍电位——节拍脉冲二级体制
- 利用微程序顺序执行来实现为操作
- 时序信号产生电路简单
- 一个节拍电位包含若干个节拍脉冲,及时钟周期。节拍电位表示一个CPU周期的时间,而节拍脉冲把一个CPU周期划分为若干个较小的事假时间间隔。这些时间间隔可以相等,也可以不等。
- 时序信号产生器功能:产生时序信号
- 时序信号产生器构成:1. 时钟源 2. 环形脉冲发生器 3. 节拍脉冲和读写时序控制逻辑 4. 启停控制逻辑

- 时钟脉冲φ的宽度等于节拍脉冲T的宽度
- 4个节拍脉冲(T周期)构成一个机器周期(CPU周期)
- 启停控制逻辑:启动、停止是随机的。
- 当运行触发器为“1”时,打开时序电路。(计算机启动时,一定要从第一个节拍脉冲前沿开始工作)
- 当运行触发器为“0”时,关闭时序产生器。(停机时一定要第四个节拍脉冲结束后关闭时序产生器)
3. 时序控制方式
- 时序控制方式
- 同步控制方式
- 完全统一的机器周期执行不同的指令
- 采用不定长机器周期
- 中央控制及与局部控制的结合
- 异步控制方式
- 每条指令需要多少时间就占用多少时间
- 联合控制方式
- 大部分指令在固定的周期内完成,少数难以确定的指令采用异步控制方式
- 机器周期的 节拍脉冲固定,但是各指令的机器周期数不固定(微程序控制器的采用)
- 同步控制方式
微程序控制器的
1. 微程序控制器原理
- 微程序设计技术是用软件方法来设计硬件的技术。
- 微命令和微操作
- 一条机器指令是由一个微程序来实现的
- 控制部件向执行部件发出的各种控制命令叫做微命令,它是构成控制部件的最小单位
- 微操作:是微命令的操作过程
- 由于数据通路的结构关系,微操作可分为相容的和互斥的两种
- 互斥的微操作:是指不能同时或不能在同一个节拍中并行执行的微操作
- 相容的微操作:是指能够同时或者在同一个节拍内并行执行的微操作。必须各占一位。
- 微指令:把在同一个CPU周期内并行执行的微操作控制信息,存储在控制存储器里,称为一条微指令
- 它是微命令的组合,微指令存储在控制器中的控制存储器中
- 一条微指令通常至少包含两大部分信息:
- 操作控制字段,又称微操作码字段,用以产生某一步操作所需的各个微操作控制信号
- 某位为1.表明发微命令
- 微指令发出的控制信号都是节拍的电位信号,持续时间为一个CPU周期
- 微命令信号还要引入时间控制
- 顺序控制字段,又称微地址码字段,用以控制产生下一条要执行的微指令地址
- 操作控制字段,又称微操作码字段,用以产生某一步操作所需的各个微操作控制信号
- 微程序
- 一切微指令的有序集合就是微程序
- 一段微程序对应一条机器指令
- 微地址:存放微指令的控制存储器的单元地址
- 一切微指令的有序集合就是微程序
计算机组成原理第五章(中央处理器CPU)的更多相关文章
- 【知识强化】第五章 中央处理器 5.1 CPU的功能和基本结构
那么在前四章我们已经把数据的表示和运算,存储系统和指令系统都已经给大家讲完了.那么从这一章开始,我们将要讲解中央处理器的内容.那么这一部分内容我们就进入到我们计算机组成原理的一个深水区,它是我们计算机 ...
- 重学计算机组成原理(五)- "旋转跳跃"的指令实现
CPU执行的也不只是一条指令,一般一个程序包含很多条指令 因为有if-else.for这样的条件和循环存在,这些指令也不会一路平直执行下去. 一个计算机程序是怎么被分解成一条条指令来执行的呢 1 CP ...
- 计算机组成原理 — CPU 中央处理器
目录 文章目录 目录 前文列表 逻辑电路部件 组合逻辑电路 时序逻辑电路 阵列逻辑电路 中央处理器(CPU) 控制单元(控制器) 运算单元(运算器) 存储单元(寄存器组和片内缓存) CPU 的工作原理 ...
- 计算机组成原理实验之CPU组成与指令周期实验
(实验五 CPU组成与指令周期实验) 课程 计算机组成原理实验 实验日期 2015 年 12 月 8 日 一.实验目的 1.将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机. 2. ...
- 编程必备基础知识|计算机组成原理篇(09):CPU的控制器和运算器
计算机基础方面的知识,对于一些非科班出身的同学来讲,一直是他们心中的痛,而对于科班出身的同学,很多同学在工作之后,也意识到自身所学知识的不足与欠缺,想回头补补基础知识.关于计算机基础的课程很多,内容繁 ...
- linux的系统组成和计算机组成原理,linux常用操作
Linux入门 linux简介 学习目的:linux服务器操作系统稳定长期运行,python,pycharm装于linux上 linux系统组成 应用软件:调用系统软件接口 linux操作系统分两 ...
- day01-编程与计算机组成原理
什么是编程 编程语言:是人与计算机沟通交流的介质,通过标准化的规则传递信息 编程:就是为了使计算机能够理解人的意图,通过编程语言写出一个个文件,这堆文件完成相应的目的 编程的目的:用计算机取代人完成工 ...
- 计算机组成原理(电脑硬件&语言分类)
计算机组成原理 一.电脑硬件配置 CPU :中央处理器(人类的大脑) -飞机 内存:存放一些临时数据(人类的短暂记忆-右脑) -高铁 硬盘:存储永久数据(左脑-长期记忆) - 汽车 输入输出:键盘鼠标 ...
- Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第五章:渲染流水线
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第五章:渲染流水线 学习目标 了解几个用以表达真实场景的标志和2D图像 ...
随机推荐
- C#:foreach语句,yield语句
原文:C#:foreach语句,yield语句 1. foreach语句 C#编译器会把foreach语句转换为IEnumerable接口的方法和属性. foreach (Person p in pe ...
- windows管理员利器之用Log Parser Studio分析IIS日志(附逐浪CMS官方命令集)
原文:windows管理员利器之用Log Parser Studio分析IIS日志(附逐浪CMS官方命令集) Log Parser Studio是一个强大的IIS图形分析工具,值得推荐. 1. 安装L ...
- C#连接oracle 数据库查询时输入中文查询不出来,用plsql就可以
查询语句为:select * from Per where khmc like '%李%',其实是字符集的问题. 解决方案:在连接字符串加一个“Unicode=True;”
- 发布ActiveX控件
最近我们正在研究ActiveX技术.我们使用Delphi 5创建了一个具有ActiveForm的ActiveX控件应用程序.这个控件产生一个.OCX文件.现在,我们需要把这个控件部署在服务器端,在用户 ...
- MySQL半同步复制搭建
默认情况下,MySQL 5.5/5.6/5.7和MariaDB 10.0/10.1的复制是异步的,异步复制可以提供最佳性能,主库把binlog日志发送给从库,这一动作就结束了,并不会验证从库是否接收完 ...
- QML于C++交互之信号与槽(signal&slot )
connect c++ SIGNAL with QML SLOT 简介 QML 与 C++ 混合编程时,总结了一下qml和c++互相直接调用.及信号与槽连接 的几种情况,详细使用情况看示例代码 所有的 ...
- qt的demo中,经常可以看到emum
最近开始看QT的文档,发现了很多好东西,至少对于我来说 收获很多~~~ 当然很多东西自己还不能理解的很透彻,也是和朋友讨论以后才渐渐清晰的,可能对于QT中一些经典的用意我还是存在会有些认识上的偏差,欢 ...
- BI-学习之 商业智能平台的引入(传统关系型数据库的问题)
早在 SQL Server 2005里面就有了这种 完整的商业智能平台了,那时候Nosql什么的都还停留在概念性的提出阶段,发展至2009年才一下子蹦了出来变得众所周知了.当然这个要扯就扯远了,咱们还 ...
- javascript (java)动态时钟
<script language="javascript"> var t = null; t = setTimeout(time,1000);//开始执行 functi ...
- 血的教训--如何正确使用线程池submit和execute方法
血的教训之背景:使用线程池对存量数据进行迁移,但是总有一批数据迁移失败,无异常日志打印 凶案起因 听说parallelStream并行流是个好东西,由于日常开发stream串行流的场景比较多,这次 ...