计算机组成原理20——控制单元的功能和实现2

本系列文章是学习了网课《哈尔滨工业大学–计算机组成原理》之后,用以梳理思路而整理的听课笔记及相关思维拓展。本文涉及到的观点均为个人观点,如有不同意见,欢迎在评论区讨论。

目录

    • 控制单元的外特性
    • 控制信号举例-
    • 多级时序系统
    • 控制方式

控制单元的外特性

输入信号
1、时钟
控制单元控制硬件有两点需要注意:1,每个操作都需要占用时间,2、各个操作有先后顺序。
为了让控制单元按照一定先后顺序、一定的节奏发出各个控制信号,控制单元必须受时钟控制,每一个时钟脉冲使控制信号发送一个操作命令,或发送一组操作命令。
2、指令寄存器
不同指令在执行周期内完成不同的操作,指令的操作码字段是控制信号的输入信号,与时钟配合产生不同的控制信号。
3、标志
控制单元有时需要根据CPU当前的状态产生控制信号。
4、来自系统总线的控制信号
中断请求、DMA请求等

输出信号
1、CPU内的控制信号,用于实现CPU内的寄存器之间的传送和控制ALU实现不同的操作。
2、送至系统总线的信号,如,命令主存或I/O读写、中断响应等。

在这里插入图片描述

控制信号举例-

1、不采用CPU内部总线的方式,以加法指令“ADD @X”为例。
在这里插入图片描述

1)取指周期
控制信号C0有效,打开PC送往MAR的控制门。
控制信号C1有效,打开MAR送往地址总线的输出门。
通过控制总线向主存发读命令。
C2有效,打开数据总线送至MDR的输入门。
C3有效,打开MDR和IR之间的控制门,至此指令送至IR。
C4有效,打开指令操作码送至CU的输出门。CU在操作码和时钟的控制下,产生各种控制信号。
使PC内容加1。

2)间址周期
C5有效,打开MDR和MAR之间的控制门,将指令的形式地址送至MAR。
C1有效,打开MAR送往地址总线的输出门。
通过控制总线向主存发读命令。
C2有效,打开数据总线送至MDR的输入门,至此,将有效地址存入MDR。
C3有效,打开MDR和IR之间的控制门,将有效地址送至IR的地址码字段。

3)执行周期
C5有效,打开MDR和MAR 之间的控制门,将有效地址送至MAR
C1有效,打开MAR送往地址总线的输出门
通过控制总线向主存发读命令
C2有效,打开数据总线送至MDR的输入门,将操作数存入MDR
C6、C7同时有效,打开AC和MDR通往ALU的控制门
通过CPU内部控制总线对ALU发ADD控制信号,完成AC的内容和MDR的内容相加
C8有效,打开ALU通往AC的控制门,至此将求和结果存入AC

2、采用CPU内部总线的方式
图中每一个小圈处都有一个控制信号,它控制寄存器到总线或总线到寄存器之间的传送。例如, I R i IR_i IRi示控制从内部总线到指令寄存器的输入控制门; P C o PC_o PCo表示控制从程序计数器到内部总线的输出控制门。下标为i示输入控制,下标为o表示输出控制,以此类推。
多了两个寄存器Y和Z,因为ALU需要保证运算中两个输入端不变:一个输入来自Y,另一个来自总线,Y的存在使得CPU可以实现任意两个寄存器之间的算逻运算,先送一个数到Y,另一个数通过总线。此外ALU的输出不能直接输出到总线,因为总线和ALU输入相连,需要寄存器Z暂存运算结果,再送入执行的目标。
在这里插入图片描述

还是以ADD @X为例
1)取指周期
P C o PC_o PCo M A R i MAR_i MARi控制有效,PC经内部总线送至MAR,PC->MAR
通过控制总线向主存发读指令,1->R
存储器通过数据总线将MAR所指单元的内容送至MDR
M D R o MDR_o MDRo I R i IR_i IRi控制有效,将MDR的内容送至IR,MDR->IR,指令送至IR,操作码字段开始控制CU
PC内容+1

2)间址周期
M D R o MDR_o MDRo M A R i MAR_i MARi有效,将指令的形式地址经内部总线送至MAR,即MDR->MAR
通过控制总线向主存发读命令,1->R
存储器通过数据总线将MAR所指单元内容送至MDR
M D R o MDR_o MDRo M A R i MAR_i MARi有效,将MDR中的有效地址送至IR的地址码字段,即MDR->Ad(IR)

3)执行周期
M D R o MDR_o MDRo M A R i MAR_i MARi有效,将有效地址经内部总线送至MAR,MDR->MAR
通过控制总线向主存发读命令,1->R
存储器通过数据总线将MAR所指单元的内容送至MDR
M D R o MDR_o MDRo Y i Y_i Yi有效,将操作数送至Y,MDR->Y
A C o AC_o ACo A L U i ALU_i ALUi有效,同时CU向ALU发“ADD”控制信号,使AC的内容和Y的内容相加,结果送寄存器Z,(AC)+ (Y)-> Z
Z o Z_o Zo A C i AC_i ACi有效,将运算结果存入AC,Z->AC

多级时序系统

1、机器周期
可以看作所有指令执行过程中的一个基准时间,想要找到一个基准时间,在这个基准时间内,所有指令的操作都能结束。
但是,若将这个基准时间定为机器周期,并不合理,因为只有以完成复杂指令功能所需的时间为基准,才能保证所有指令在此时间内完成全部操作,这显然不利于简单指令。
机器内的各种操作可以分为对CPU内部的操作和对主存的操作两大类,因为CPU内部操作速度快,CPU访存时间长,所以将对存储器访问的时间定为基准时间比较合理,这个基准时间就是机器周期。

2、时钟周期(节拍、状态)
在一个机器周期里可以完成若干个微操作,每个微操作都需要一定的时间,可以用时钟信号来控制产生每一个微操作命令。图中显示每个节拍的宽度正好对应一个时钟周期。
在这里插入图片描述

3、多级时序系统
一个指令周期包含若干个机器周期,一个机器周期又包含若干个时钟周期,每个指令周期内的机器周期可以不等,每个机器周期内的节拍数也可以不等。机器周期、节拍构成了多级时序系统。
在这里插入图片描述

控制方式

上面的多级时序系统中,可以看到,不同的指令,其中包含的机器周期不同,机器周期中可能的节拍也不同。那么该如何控制CU产生这些微操作序列呢?

常见的CU控制方式有:同步控制、异步控制、联合控制和人工控制四种。

1、同步控制方式
任何一条指令或指令中任何一个微操作的执行都是事先确定的,并且都是受统一基准时标的时序信号所控制的方式。
同步控制中有三种方案:
1)采用定长的机器周期
像多级时序系统中说的,如果采用最长的存取周期作为机器周期,CPU效率会大大降低,因为简单指令执行的时间被拉长了。
2)采用不定长的机器周期
这种方案,每个机器周期内的节拍数可以不等,复杂指令通过延长机器周期或增加节拍的方法解决。
在这里插入图片描述
3)采用中央控制和局部控制相结合的方法
大部分指令安排在统一的、较短的机器周期内完成,称为中央控制;少数操作复杂的指令中的某些操作采用局部控制方式来完成。就是在中央控制的节拍中加入局部控制的节拍。
在这里插入图片描述

2、异步控制方式
上述同步控制,机器周期可能定长,节拍长度需要一直保持。异步通信不存在基准时标信号,采用应答方式,一个微操作执行完成之后,发出应答信号再进行下一步操作。

3、联合控制方式
同步和异步相结合。大部分采用同步方式,难以确定时间的指令,采用异步操作。

4、人工控制方式
为了调机和软件开发的需要,在机器面板或者内部设置一些开关或按键,来达到人为控制的目的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

关于jupyter突然打不开的问题

好久没有用python了,我的电脑环境是安装过anaconda和pycharm,但是有些简单的东西就希望在jupyter中测试一下,但是最近发现jupyter打不开了。 具体是: 在这里打开jupyter是可以的,但是在命令行就不行,表现为…

2023-12-29 贪心算法 分发饼干和摆动序列以及最大子数组和

贪心算法 什么是贪心算法? 就是每一阶段的最优解,从局部的最优解达到全局的最优解! 最好用的策略就是举反例,如果想不到反例,那么就试一试贪心吧。 贪心算法一般分为如下四步: 将问题分解为若干个子问…

神州战神z7ra7重装教程

UEFI模式下装的系统,开机速度明显比Legacy模式下装的系统开机速度更快 关键点: ①.U盘格式必须为FAT32 ②.不可以使用ISO镜像制作UEFI安装U盘,而是使用微软官方的工具。 ③.开机BIOS设置,最好将Secure boot设置为Disabled&#xf…

软件测试工程师经典面试题总结

一、接口测试如何设计测试用例? 首先,接口测试用例与其他测试用例是一样的,都是为了证明程序存在错误,其出发点相同;接口测试用例的对象是接口,需要验证各个系统及组件间的接口;其三是接口测试的…

SpringMVC概述、SpringMVC 的入门

1.MVC介绍 MVC是一种设计模式,将软件按照模型、视图、控制器来划分: M:Model,模型层,指工程中的JavaBean,作用是处理数据 JavaBean分为两类: 一类称为数据承载Bean:专门存储业务数据…

“第四个中国人民警察节”细语

今(2024年1月10日)天,是第四个中国人民警察节,本“人民体验官”推广人民日报官方微博文化产品《一起致敬人民警察!》。 图:来源“人民体验官”推广平台 笔者认同“平安的密码叫110”这个洽当比喻。因为人民…

threejs 光带扩散动画

目录 一、创建光带 (1) 设置光带顶点 (2) 设置光带顶点透明度属性 二、光带动画 完整代码 html文件代码 js文件代码 最后展示一下项目里的效果: 最近项目中要求做一段光带效果动画,尝试着写了一下,下面是本次分享光带扩散动画的效果预…

Kubernetes实战(十五)-Pod垂直自动伸缩VPA实战

1 介绍 VPA 全称 Vertical Pod Autoscaler,即垂直 Pod 自动扩缩容,它根据容器资源使用率自动设置 CPU 和 内存 的requests,从而允许在节点上进行适当的调度,以便为每个 Pod 提供适当的资源。 它既可以缩小过度请求资源的容器&…

STM32 使用 DS18B20 温度传感器实现环境温度监测

为了实现环境温度监测系统,我们可以利用STM32微控制器和DS18B20数字温度传感器。在本文中,我们将介绍如何通过STM32微控制器读取DS18B20传感器的温度数据,并展示一个简单的示例代码。 1. 系统概述 环境温度监测系统旨在使用DS18B20数字温度…

PolarDB DDL MDL

PolarDB DDL MDL 转载数据库内核那些事|深度解析PolarDB DDL锁的优化和演进 - 知乎 (zhihu.com) 概述 Request lock问题 MySQL 拿锁 即乐观等待的方式来拿锁MDL-X。问题:会导致DDL后续DML的阻塞。 第三方插件 pt-osc / gh-ost 采用copying method&…

微机原理常考简答题总结

一,8086和8088这两个微处理器在结构上有什么异同? (1)共同点:内部均由EU、BIU组成,结构基本相同;寄存器等功能部件均为16位;内部数据通路为16位;指令系统相同。 &#x…

搜维尔科技:【简报】元宇宙数字人赛道,2022年金奖《金魚姬》赏析!

一名网络直播主名叫琉璃,在即将展开她日常进行的每日准时直播前,肚子极为不舒服,突然很想上厕所,由于时间紧迫,导致琉璃需要在厕所里面完成直播!为了掩饰自己所在的处境,她决定运用自己设计的虚…

vivado 工程管理

管理项目 打开项目 当项目打开时,Vivado IDE会从项目已关闭。项目状态包括当前源文件顺序、已禁用和已启用 源文件、活动约束文件和目标约束文件,以及合成、模拟和实现运行。要打开项目,请使用以下方法之一: •在“入门”页面…

聚道云软件连接器助力某家居公司实现付款流程自动化

客户介绍: 某家居公司是一家集家居研发、生产、销售于一体的综合性家居企业。公司业务遍布全国多个城市,拥有庞大的供应商网络和采购需求。 添加图片注释,不超过 140 字(可选) 客户痛点: 付款申请单需要…

linux --proc文件夹学习笔记

内容在飞书文档: Docshttps://r0dhfl3ujy9.feishu.cn/docx/Xe2wd23MToSmGrxUm9kcVHrPn7g?fromfrom_copylink

mercury靶机

文章妙语 不与伪君子争名,不与真小人争利,不与执拗人争理,不与匹夫争勇,不与酸儒争才。不与蠢人施恩 一、信息收集 主机探测 端口探测 探测主机详细版本信息 8080开了http服务 目录扫描 robots.txt目录下什么也没有 二&#xff0…

lvs+keepalived+nginx双主模式双主热备实现负载均衡

目录 一、原理 二、真实服务器nginx配置 三、lvs的keepalived配置 3.1 配置文件 3.2 开启keepalived服务 四、测试 4.1 测试访问VIP 4.2 模拟lvs01宕机 主机名IPnginx0111.0.1.31nginx0111.0.1.31lvs0111.0.1.33lvs0211.0.1.34VIP111.0.1.29VIP211.0.1.30 一、原理 lvskeepal…

推理证明-条件等价式、德摩根律、双条件

对于命题逻辑部分来说,只需要掌握命题的符号化,以及如何进行推理证明即可。足矣。其他的都是一些基本的概念,扫一遍,记住即可。 对于什么是命题:陈述句、能判断、真值唯一 进行推理证明,我们需要记住以下…

查看服务器的yum 源

1、cd /etc/yum.repos.d 2、编辑 CentOS-Stream-Sources.repo 3、 查看里面的yum源地址 4、更新yum源,执行下面指令 yum clean all # 清除系统所有的yum缓存 yum makeacache # 生成新的yum缓存 yum repolist

TCN 时序卷积网络 (temporal convolutional network)【因果卷积、空洞卷积】

文章目录 TCN 时序卷积 (temporal convolutional network)1.因果卷积2.膨胀卷积 TCN 时序卷积 (temporal convolutional network) 它由膨胀卷积核因果卷积两种卷积构成。 如图:左边是膨胀因果卷积,右边是…