【机组】计算机系统组成课程笔记 第三章 微体系结构层 —— CPU的构成

news/2024/12/29 0:57:28/

3.1 CPU的组成和功能

3.1.1 CPU的组成

CPU(中央处理单元)由寄存器组、算术逻辑单元(ALU)、控制器(CU)及内部总线构成。

3.1.2 CPU的功能

CPU通过程序指令的执行,控制各部件协调工作,以完成程序指定的功能。主要功能如下:

  1. 指令控制:控制程序的执行顺序;
  2. 操作控制:产生每条指令所需的控制命令;
  3. 时间控制:对各种操作实施时间上的控制;
  4. 数据加工:对数据进行算术运算和逻辑运算;
  5. 处理中断:对异常情况和外来请求的处理。

3.1.3 指令的执行过程

取指 → 译码 → 执行

  1. 取指:PC→MAR;;M(MAR)→MDR;MDR→IR;PC+1→PC
  2. 译码:分析指令、解释指令
  3. 执行:根据译码阶段产生的控制信号序列,通过CPU及输入输出设备的执行,实现具体指令的功能。

3.2 CPU模型机的数据通路及指令流程

CPU分为数据部分和控制部分;

数据部分即数据通路,包括寄存器和ALU,数据通路对数据项执行某些操作;

控制部分指的是控制器,用来向数据通路发出控制信号;

指令流程就是指令的操作过程。

3.2.1 单总线结构

CPU寄存器和ALU之间采用单一总线。

1. 单总线结构的数据通路及控制信号

优点:总线结构简单,花费时间最小;

缺点:限制了在同一时钟周期内数据传输的数量,从而降低了CPU总体的性能。


http://www.ppmy.cn/news/1155300.html

相关文章

对象混入的实现方式

对象混入(Object mixins)是一种在面向对象编程中用于组合和重用代码的技术。它允许你将一个对象的属性和方法混合(或合并)到另一个对象中,从而创建一个具有多个来源的对象,这些来源可以是不同的类、原型或其…

Python赋值运算符:= 等号 以及 复合赋值运算符 += -= *=

赋值运算符 运算符描述实例赋值**将右侧的结果赋值给等号左侧的变量 案例1:把某个值赋值给某个变量 num 10 案例2:多个变量同时进行赋值操作 n 5 f 10.88 s ‘hello world’ 简写为:----------就类似一对一的,一个序号对应…

CV计算机视觉每日开源代码Paper with code速览-2023.10.13

精华置顶 墙裂推荐!小白如何1个月系统学习CV核心知识:链接 点击CV计算机视觉,关注更多CV干货 论文已打包,点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【基础网络架构】CHIP: Contrastive Hierarchical Image …

【2023】redis-stream配合spring的data-redis详细使用(包括广播和组接收)

目录 一、简介1、介绍2、对比 二、整合spring的data-redis实现1、使用依赖2、配置类2.1、配置RedisTemplate bean2.2、异常类 3、实体类3.1、User3.2、Book 4、发送消息4.1、RedisStreamUtil工具类4.2、通过延时队列线程池模拟发送消息4.3、通过http主动发送消息 5、&#x1f3…

文件操作合集 - C语言

前言 由于我们每次打开程序写入的数据都是在内存中处理,关闭程序就直接没有了,下次还需要重新进行操作录入数据等,这里我们就可以使用文件来保存数据,更加持久化,下面我们基于c语言来介绍一些文件操作. 文件指针: 文件的打开和关闭 文件在读写之前应该先打开文件,在…

一文解读如何应用 REST 对资源进行访问?

文章目录 一、REST 简介二、涉及注解2.1 RequestMapping2.2 PathVariable2.3 RestController2.4 GetMapping、PostMapping、PutMapping、DeleteMapping补充:PathVariable、RequestBody、RequestParam 区别与应用 三、REST风格案例 一、REST 简介 REST (Representat…

Vue_Bug VUE-ADMIN-TEMPLATE-MASTER electron build后无法登录

Bug描述: VUE-ADMIN-TEMPLATE-MASTER 项目在经过 electron 的 build 命令后,无法登录 问题原因: 大部分vue 前段项目 会使用 js-cookie 这个库 来操作浏览器的cookie 然而这个库 在electron下 会无法使用 (最坑的是还没报错&…