计算机组成原理

 2021-10-10 18:18  阅读(33)
文章分类:计算机组成原理 文章标签:计算机原理计算机组成原理
©  原文地址:https://www.cnblogs.com/shinianhuanniyijuhaojiubujian/p/10886684.html

第一章计算机系统概论

硬件:计算机的实体,如主机,外设等
软件:具有各类特殊功能的信息(程序)组成
软件类型 定义 举例
系统软件 用来管理整个计算机系统 标准程序库,语言处理程序,操作系统,数据库管理系统,网络软件
应用软件 按任务需要编制成的各种程序 科学计算程序,数据处理程序,过程控制程序,事务管理程序

计算机系统的层次结构

202110101818224711.png

计算机系统的体系结构

分类 区别 定义
计算机体系结构 有无乘法指令 程序员见到的计算机系统的属性,即概念性的结构和功能特性(指令系统,数据类型,寻址技术,I/O机理)
计算机组成 如何实现乘法指令 实现计算机体系结构所体现的属性(具体指令的实现)
冯.诺依曼计算机的特点

1.计算机由运算器,存储器,控制器,输入设备和输出设备五大部分组成

2.指令和数据以同等地位存放与存储器内,并可按地址寻访

3.指令和数据用二进制表示

4.指令由操作码和地址码组成

5.存储程序

6.以运算器为中心

冯.诺依曼计算机硬件框图

202110101818246222.png

现代计算机硬件框图

202110101818275713.png

设某机的指令字长为16位,其中操作码占6位,地址码占10位。
操作码 操作性质 具体内容
000001 取数 将指令地址码指示的存储单元中的操作数取到运算器的累加器ACC中
000010 存数 将ACC中的数存至指令地址码指示的存储单元中
000011 将ACC中的数与指令地址码指示的存储单元中的数相加,结果存于ACC中
000100 将ACC中的数与指令地址码指示的存储单元中的数相乘,结果存于ACC中
000101 打印 将指令地址码指示的存储单元中操作数打印输出
存储器的基本组成
组成 解释
存储单元 存放一串二进制代码
存储字 存储单元中二进制代码的组合
存储字长 存储单元中二进制代码的位数每个存储单元赋予一个地址号
MAR 存储器地址寄存器,反映存储单元的个数2**n
MDR 存储器数据寄存器,反映存储字长n
运算器基本组成
寄存器,操作数,运算 加法 减法 乘法 除法
ACC 被加数及和 被减数及差 乘积高位 被除数及余数
MQ 乘数及乘积低位
X 加数 减数 被乘数 除数
控制器的基本组成
简称 意义 作用 解释
PC 取指令 取指,访存 存放当前欲执行指令的地址,具有计数功能(PC)+1->pc
IR 分析指令 取指,访存 存放当前欲执行的指令
CU 执行指令 执行,访存 控制单元
以取数指令为例

202110101818281524.png
程序首地址PC

取指令:PC->MAR->存储体M-MDR->IR

分析指令:IR->CU

执行指令:IR->MAR->M->MDR->ACC

计算机硬件的主要技术指标

机器字长:CPU一次能处理数据的位数,与CPU中的寄存器位数有关。
运算速度:主频,吉普森法(每条指令的执行的时间以及他们在全部操作中所占的百分比𝑇𝑀=∑𝑛𝑖=1𝑓𝑖𝑡𝑖 T M = ∑i = 1nf it i),MIPS(百万条指令每秒),CPI(执行一条指令所需时钟周期数),FLOPS(每秒浮点运算次数)
存储容量(存放二进制信息的总位数)
分类 组成
主存容量 存储单元×字节数
主存容量 字节数
辅存容量 字节数
指令和数据都存于存储器中,计算机如何区分它们?

1.通过不同的时间段,在取指令阶段取出的为指令,在执行指令阶段取出为数据
2.通过地址源:由PC提供存储单元地址的取出的是指令,由指令地址码提供存储单元地址取出的是操作数。

第二章 计算机的发展及应用

Moore定律:微芯上集成的晶体管数目每三年翻两番

计算机的应用

一、科学计算和数据处理
二、工业控制和实时控制
三、网络技术
1.电子商务
2.网络教育
3.敏捷制造
四、虚拟现实
五、办公自动化和管理信息系统
六、CAD/CAM/CIMS
七、多媒体技术
八、人工智能
芯片集成度的提高受以下三方面的限制
芯片集成度受物理极限的制约
按几何级数递增的制作成本
芯片的功耗、散热、线延迟
计算机 代替部分
光计算机 利用光子取代电子进行运算和存储
DNA生物计算机 通过控制DNA分子间的生化反应
量子计算机 利用原子所具有的量子特性

第三章 系统总线

计算机系统五大部件之间的互连的方式有两种

1.分散连接:各部件之间使用单独的连线

2.总线连接:将各部件连到一组公共信息传输线上

总线:连接各个部件的信息传输线,是各个部件共享的传输介质
总线传输特点:某一时刻只能有一路信息在总线上传输,即分时使用。为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线相连
总线上信息的传输:
串行:每条线可一位一位的传输二进制代码,一串二进制代码可在一段时间内逐一传输完成
并行:若干条传输线同时传输若干条二进制代码
面向 CPU 的双总线结构框图

202110101818286255.png

单总线结构框图

202110101818292196.png

以存储器为中心的双总线结构框图

202110101818298297.png

总线分类 解释
片内总线 芯片内部的总线,如寄存器与寄存器之间,寄存器与算逻单元ALU之间。
系统总线 计算机各部件之间的信息传输线(CPU,主存,I/O设备等)
系统总线-数据总线 双向传输,其位数与机器字长,存储字长有关
系统总线-地址总线 单向,与存储地址,I/O地址有关
系统总线-控制总线 单向,发出各种控制信号。有出(存储器读、存储器写总线允许、中断确认),有入(中断请求、总线请求)
通信总线 用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)之间的通信。分为串行通信和并行通信
总线物理实现

202110101818302098.png

总线特性
总线特性
机械特性 指总线在机械连接方式上的一些性能,尺寸,形状,引脚的个数以及排列的顺序,接头处的可靠接触
电气特性 总线的每一根传输线上信号的传输方向和有效的电平范围
功能特性 每根传输线的功能。地址总线用来指出地址码;数据总线传递数据;控制总线发出控制信号
时间特性 信号的时序关系
总线性能指标
性能 指标
总线宽度 数据线分根数,用bit
总线带宽 每秒传输的最大字节数(MBps)
时钟同步/异步 同步,异步
总线复用 地址线与数据线复用
信号线数 地址线,数据线和控制线的总和
总线控制方式 突发,自动,仲裁,逻辑,计数
其他指标 负载能力(驱动能力),电源电压,总线宽度能否扩展等
总线标准
总线标准:系统与各模块,模块与模块之间的一个互连的标准界面
为什么要设立总线标准:为了使设计简化,模块生产批量化,确保其性能稳定,质量可靠,实现可移化,便于维护。
总线标准 数据线 地址线 总线时钟 带宽 特性
ISA 16 24 8MHz(独立) 16MBps
EISA 32 32 8MHz(独立) 33MBps
VESA(VL-BUS) 32 33MHz(CPU) 133MBps
PCI 3264 33MHz(独立)66MHz(独立) 132MBps528MBps 良好的兼容性,即插即用,支持多主设备,具有与处理器和存储器子系统完全并行操作的能力,提供数据和地址奇偶校验,可扩充,软件兼容性好,支持两种电压标准5V、3.3V,采用多路复用
AGP 32 66.7MHz(独立)133MHz(独立) 266MBps533MBps
RS-232C 串行通信总线标准 数据终端设备(计算机)和数据通信设备(调制解调器)之间的标准接口
USB 串行接口总线标准 普通无屏蔽双绞线带屏蔽双绞线最高 1.5Mbps(USB1.0)12Mbps(USB1.0)480Mbps(USB2.0) 具有真正的即插即用,很强的连接能力,数据传输率,标准统一

总线结构

单总线结构

202110101818306829.png

双总线结构

2021101018183092310.png

三总线结构

2021101018183122711.png

三总线结构又一

2021101018183160812.png

四总线结构

2021101018183216213.png

总线判优控制

为什么要设置总线判优控制:总线上所连接的各类设备,按其对总线有无控制功能分为主设备(模块)和从设备(模块)。主设备对总线有控制权,从设备只能响应从主设备发来的总线命令,对总线没有控制权。总线上的信息是又主设备启动的,若多个主设备同时要使用总线时,就由总线控制器的优判,仲裁逻辑按一定的优先等级顺序确定哪个主设备能使用总线。
总线优判控制分为集中式和分布式两种
集中式种类 特点
链式查询 连线简单,易于扩充,对电路故障最敏感
计数器定时查询 优先级设置较灵活,对故障不敏感,连线及控制过程较复杂
独立请求 响应速度快,优先级次序控制灵活,但连线多,总线控制复杂

总线通信

通信方式 特点 适用场合
同步通信 指由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降 一般用于总线长度较短,各部件存取时间比较一致的场合
异步通信 指没有统一时钟控制的通信,部件采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率 又分为不互锁,半互锁,全互锁
半同步通信 既可以像同步通信一样由统一时钟控制,又可以像异步通信一样允许传输时间不一致,工作效率介于两者之间
分离式通信 1.各模块欲占用总线使用权必须提出申请2.在得到总线使用权后,主模块在限定的时间内向对方传送信息,采用同步方式,不再等待对方回答信号3.各模块在准备数据的过程中都不占用总线,使总线可以接受其他模块的请求4.总线被占用时都在做有效工作,或者通过它发送命令,或者通过它传送数据,不存在空闲等待时间,充分的利用了总线的有效占用,从而实现了总线在多个主,从模块间进行交叉重叠并行传送。 大型计算机系统
同步式数据输入传输

2021101018183276714.png

同步式数据输出传输

2021101018183341615.png

第四章 存储器

存储器分类

2021101018183419516.png

存储器速度容量和价位的关系

2021101018183466117.png

缓存主存层次和主存辅存层次

2021101018183523218.png

缓存主存--解决CPU和主存速度不匹配的问题
主存辅存--解决存储系统的容量问题

主存的主要技术指标

存储容量
指主存能存放二进制代码的总位数
存储容量=存储单元个数*存储字长
存储容量=存储单元个数*存储字长/8
存储速度
由存取时间和存取周期来表示,存取时间指存储器的访时间,存取周期指存储器进行两次独立的存储器操作所需的最小时间间隔
存储器带宽
单位时间内存储器存取的信息量,单位可以用字/秒或字节/秒或位/秒。提高存储器带宽可以1.缩短存取周期2.增加存储字长,使每个存取周期可读/写更多的二进制位数3.增加存储体

静态RAM

2021101018183576519.png

动态RAM
动态RAM通过电容来存储电荷的原理来存储信息,电容上有足够多的电荷表示存1,无电荷表示存0,电容上电荷一般只能维持1——2ms,因此,必须在2ms内对其所存储单元恢复一次原状态,这个过程称为再生或刷新。
动态RAM时序图
先由𝑅𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ R A S¯将行地址送入行地址缓存器,再由𝐶𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ C A S¯将列地址送入列地址缓存器,因此𝐶𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ C A S¯滞后于𝑅𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ R A S¯的时间必须要超过其规定值
𝑅𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ R A S¯和𝐶𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ C A S¯正、负电平的宽度要大于规定值,以保证芯片内部正常工作
行地址对𝑅𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ R A S¯的下降沿以及列地址对𝐶𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ C A S¯的下降沿应有足够的地址建立时间和地址保持时间,已确定行、列地址均能准确写入芯片。
动态RAM读时序

行地`𝑅𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ R A S¯有效
写允许𝑊𝐸⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ W E¯有效(高)
列地址𝐶𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ C A S¯有效
数据𝐷𝑂𝑈𝑇 DO U T有效

动态RAM写时序

行地址𝑅𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ R A S¯有效
写允许𝑊𝐸⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ W E¯有效(低)
数据𝐷𝐼𝑁 DI N有
列地址𝐶𝐴𝑆⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ C A S¯有效

动态RAM刷新

刷新实质是将原信息读出,在由刷新放大器形成原信息并重新写入的再生过程

集中刷新--在规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新,此刻必须停止读/写操作。之后剩余的时间进行读写操作或维持信息。因此存在“死时间”或访存“死区”。

2021101018183628520.png

分散刷新--对每行存储单元的刷新分散到每个存取周期内完成。其中把机器的周期𝑡𝑐 t c分成两段,前半段𝑡𝑀 t M用来读写或维持信息,后半段𝑡𝑅 t R用来刷新,不存在死时间,但存取周期长

2021101018183694621.png

异步刷新--异步刷新为前两种的结合,既可以缩短死时间,又可以充分利用2ms的特点

2021101018183764822.png

动态RAM和静态RAM的比较
在同样大小的芯片中,动态RAM的集成度远高于静态RAM。
动态RAM行、列地址按先后顺序输送,减少了芯片的引脚,封装尺寸也减少
动态RAM的功耗比静态RAM小
动态RAM的价格比静态RAM的价格便宜
由于使用动态元件(电容),因此它的速度比静态RAM低
动态RAM需要再生,故需要配置再生电路,也需要消耗一部分功率。通常,容量不大的高速缓存器大多用静态RAM实现

存储器与CPU的连接

存储容量的扩展
位扩展--增加存储字长
字扩展--增加存储器字的数量
字、位扩展--既增加存储字的数量,又增加存储字长
存储器与CPU连接
地址线的连接--CPU的地址线往往比存储芯片的地址线数多,通常总是将CPU地址线的低位与存储器的芯片的地址线相连,CPU地址线的高位或在存储芯片的扩充时用,或作其他用途。
数据线的连接--CPU的数据线与存储器的也不等,因此必须对存储芯片扩位使其相等
片选线的连接--是CPU与存储芯片正确工作的关键
合理选择存储芯片--指存储芯片类型(RAM或ROM)和数量的选择。通常用ROM存放程序,标准子程序和各类常数等。RAM为用户编程设计。此外,尽量选择连线简单方便。

提高访存速度的措施

单体多字系统--在一个存取周期内,从同一地址取出4条指令,然后在逐条送至CPU执行。增大存储器带宽,提高存储器工作速度。前提是,指令和数据在主存内必须是连续存放。
多体并行系统--采用多提模块组成的存储器,每个模块具有相同的容量和存取速度,各自具有独立的寄存器(MAR),数据寄存器(MDR),地址译码,驱动电路和读写电路。

2021101018183829023.png

高位交叉编址的多体存储器

2021101018183868124.png

低位交叉编址的多体存储器

2021101018183923025.png


高速缓冲存储器

Cache的基本结构

2021101018183979626.png

地址映射变换机构--将CPU送来的主存地址转换为Cache地址。

Cache--主存地址映射

直接映射
优点:实现简单,只需要利用主存地址的某些位直接判断,即可确定所需字块是否在缓存中
缺点:不够灵活,每个主存快只能固定的对应某个缓存块,即使缓存内还空着许多位置也不能被占用,使缓存的空间得不到充分的利用。此外,如果程序恰好重复访问对应同一缓存位置不同的主存块,就要不停的进行替换,降低命中率。
全相联映射--允许主存中每一字块映射到Cache中的任何一块位置上。
优点:灵活,命中率高,缩小了快冲突率。
缺点:所需的逻辑电路甚多,成本较高。
组相联映射

第五章 输入输出系统

输入输出系统发展的四个阶段

1.早期阶段
分散连接 CPU和I/O设备 串行工作 程序查询方式
2.接口模块和DMA阶段
总线连接 CPU和I/O设备并行工作
3.具有通道结构的阶段
4.具有I/O处理机的阶段

输入输出系统的组成

1.I/O软件
I/O指令 CPU指令的一部分
操作码 命令码 设备码
通道指令:通道自身的指令 指明数组的首地址、传送字数、操作命令。
I/O硬件
设备 I/O接口
设备 设备控制器 通道

I/O设备与主机的联系方式

1.I/O设备编址方式

统一编址 用取数存数指令
不统一编址 有专门的I/O指令

2.设备寻址

用设备选择电路识别是否被选中

3.传送方式

串行 并行

4.联络方式

立即响应方式
异步方式采用应答信号

2021101018184048027.png

同步工作采用同步时标联络

5.I/O设备

辐射式连接

2021101018184105228.png

总线式连接

I/O设备与主机信息传送的控制方式

1.程序查询方式

2021101018184147629.png

2.程序中断方式

倘若CPU在启动I/O设备后,不查询设备是否已准备就绪,继续执行自身程序,只是当I/O设备准备就绪并向CPU发出中断请求后才予以响应。

3.DMA方式(直接存储器存取)

主存与I/O设备之间有一条数据通路,主存与I/O设备交换信息时,无须调用中断服务程序。若出现DMA和CPU同时访问主存,CPU总是将总线占有权让给DMA,通常把DMA这种占有称为窃取或挪用。窃取的时间一般为一个周期,故又把DMA占用的存取周期窃取周期或挪用周期。

I/O接口

为什么设置I/O接口

实现设备的选择
实现数据缓冲达到速度匹配
实现数据串--并格式转换
实现电平转换
实现电平转换
传送控制命令
反映设备的状态("忙","就绪","中断请求")

端口和接口的关系

端口是指接口电路中的一些寄存器,这些寄存器用来存放数据信息,控制信息和状态信息,相应的端口被分别称为数据端口,控制端口,和状态端口。若干个端口加上相应的控制逻辑才能组成接口。

接口的功能和组成

总线连接方式的I/O接口电路

设备选择线,数据线,命令线,状态线

接口的功能和组成

接口功能 接口组成
选址功能 设备选择电路
传送命令的功能 命令寄存器,命令译码器
传送数据的功能 数据缓冲寄存器
反映设备状态的功能 设备标记状态

2021101018184187330.png

接口类型

分类 种类
按数据传送方式 并行接口(Intel8255)串行接口(Intel8251)
按功能选择的灵活性 可编程接口(Intel8255,Intel8251)不可编程接口(Intel8212)
按通用性 通用接口(Intel8255、Intel8251)专用接口(Intel8279、Intel8275)
按数据传送的控制方式 中断接口(Intel8259)DMA接口(Intel8257)

程序查询方式

指令 作用
测试指令 用来查询I/O设备已准备就绪
传送指令 当I/O设备已准备就绪时,执行传送指令
转移指令 若I/O设备未准备就绪,执行转移指令,转至测试指令,继续测试I/O设备的状态
程序流程

2021101018184228431.png
2021101018184277332.png

1)CPU发I/O地址设备开始工作;地址总线接口设备选择器译码选中发SEL信号;2)CPU发启动命令DBR开命令接收门;D置0,B置1接口向设备发启动命令;3)CPU等待,输入设备读出数据;4)外设工作完成,B置0,D置1;5)准备就绪信号接口完成信号控制总线CPU;6)输入:CPU通过输入指令(IN)将DBR中的数据取走。

程序中断方式

中断:在执行程序过程中,当出现异常情况或特殊情况请求时,计算机停止现行程序的运行,转向对这些异常情况或特殊情况的请求的处理,处理结束后再返回到现行程序的间断处,继续执行源程序。
程序中断方式配置中断请求和中断寄存

2021101018184329633.png

接口电路的基本组成

2021101018184382434.png


中断处理过程

1.CPU响应中断的条件和时间

(1)条件
允许中断触发器 EINT = 1
用 开中断 指令将 EINT 置 “1”
用 关中断 指令将 EINT 置“ 0” 或硬件 自动复位
(2)时间
当 D = 1(随机)且 MASK = 0 时
在每条指令执行阶段的结束前
CPU 发 中断查询信号(将 INTR 置“1”)

2.I/O中断处理过程

1.CPU发启动I/O设备命令,将接口中的B置1,D置0
2.接口启动输入设备开始工作
3.输入设备将数据送入数据缓冲寄存器
4.输入设备向接口发出"设备工作结束"信号,将D置1,B置0
5.当设备准备就绪(D=1),且本设备未被屏蔽(MASK=0),在指令执行阶段的结束时刻,由CPU发出中断查询信号
6.设备中断请求触发器INTR被置1,标志设备向CPU提出中断请求。于此同时,INTR被送至排队器,进行中断优判
7.若CPU允许中断(EINT=1),设备又被选中排队,即进入中断响应阶段
8.向量地址送至PC,作为下一条指令的地址
9.无条件转至设备服务程序的入口地址,进入中断服务阶段
10.执行结束,中断返回至原程序的断点处

中断服务程序的流程

保护现场
中断服务
恢复现场
中断返回

DMA接口的功能和组成

DMA接口具有的功能

向CPU申请DMA传送
在CPU允许DMA工作时,处理总线控制权的转交
在DMA期间管理系统总线,控制数据传送
确定数据传送的气势地址和数据长度,修正数据传送过程中的数据地址和数据长度
在数据块传送结束时,给出DMA操作完成的信号

DMA与主存交换数据的三种方式

1.停止CPU访问主存
2.周期挪用
3.DMA与CPU交替访问

DMA基本组成

2021101018184489635.png


DMA的工作过程

预处理、数据传送、后处理

DMA方式与中断程序的比较

中断方式 DMA方式
数据传送 程序 硬件
响应时间 指令执行结束 存取周期结束
处理异常情况 不能
中断请求 传送数据 后处理
优先级

第七章 指令系统

指令的一般格式

操作码字段 地址码字段

操作码 反映机器做什么操作

1).长度固定:用于指令字长较长的情况,RISC。如IBM 370 操作码 8位
2).长度可变:操作码分散在指令字段的不同字段中。

指令字长

指令字长决定于操作码的长度,操作数地址的长度,操作数地址的个数
指令字长固定的话=存储字长
指令字长可变的话=,按字节的倍数变化

操作数类型和操作种类

类型 代表
地址 无符号整数
数字 定点数、浮点数、十进制数
字符 ASCII
逻辑数 逻辑运算

操作类型

操作类型 解释
数据传送 寄存器->寄存器、寄存器->存储器等
算数逻辑运算 加、减、乘、除等
移位操作 算数移位、逻辑移位、循环移位(带进位,不带进位)
转移 无条件转移(JMP)、条件转移{结果为零转(JZ)、结果溢出转(JO)、结果有进位转(JC)、跳过一条指令(SKP)}
调用和返回
陷阱(Trap)与陷阱指令 意外事故的中断
输入和输出 端口地址->CPU的寄存器,CPU的寄存器->端口地址

寻址方式

指令寻址 解释
顺序寻址 自动形成下一条指令的地址
跳跃寻址 通过转移类指令实现
数据寻址 例子
立即寻址 op#A
直接寻址 EA=A
隐含寻址 ACCx
间接寻址 EA=(A)
寄存器寻址 EA=R
寄存器间接寻址 EA=(R)
基址寻址 EA=A+(BR)
变址寻址 EA=A+(IX)
相对寻址 EA=(PC)+A
堆栈寻址 PUSHA

设计指令格式应考虑的各种因素

因素 详细
操作类型 包括指令数及操作的难易程度
数据类型 确定哪些数据类型可以参与操作
指令格式 指令字长是否固定、操作码数、是否采用扩展操作码技术,地址码位数、地址个数、寻址方式类型
寻址方式 指令寻址、操作数寻址
寄存器个数 寄存器的多少直接影响指令的执行时间

RISC技术

RISC:精简指令系统计算机
CISC:复杂指令系统计算机

RISC的主要特征

选用使用频度较高的一些简单指令,复杂指令的功能由简单指令来组合
指令 长度固定、指令格式种类少、寻址方式少
只有 LOAD / STORE 指令访存
CPU 中有多个 通用 寄存器
采用 流水技术 一个时钟周期 内完成一条指令
采用 组合逻辑 实现控制器
采用 优化 的 编译 程序

RISC和CISC的比较

RISC更能 充分利用 VLSI 芯片的面积
RISC 更能 提高计算机运算速度(指令数、指令格式、寻址方式少,通用 寄存器多,采用组合逻辑,便于实现指令流水)
RISC 便于设计,可 降低成本,提高 可靠性
RISC 有利于编译程序代码优化
RISC 不易 实现 指令系统兼容

第八章 CPU的结构

CPU的功能

控制器的功能

取指令、分析指令、执行指令,发出各种操作命令、控制程序输入及结果的输出、总线管理、处理异常情况和特殊情况;分别对应指令控制、操作控制、时间控制、处理中断、数据加工。

运算器的功能

实现算数运算和逻辑预算

CPU的结构

2021101018184543536.png

2021101018184577537.png

CPU的寄存器

分类 寄存器 作用
用户可见寄存器 通用寄存器 存放操作数:可做某种寻址方式所需的专用寄存器
用户可见寄存器 数据寄存器 存放操作数(满足各种数据类型)两个寄存器拼接存放双倍字长数据
用户可见寄存器 地址寄存器 存放地址:其位数应满足最大的地址范围用于特殊的寻址方式段基值栈指针
用户可见寄存器 条件码寄存器 存放条件码:可作程序分支的依据如正、负、零、溢出、进位等
控制和状态寄存器 控制寄存器 PC->MAR->M->MDR->IR,控制CPU
控制和状态寄存器 状态寄存器 状态寄存器(存放条件码),PSW寄存器(存放子程序状态字)

指令周期

取出并执行一条指令所需的全部时间。分为取值周期和执行周期

指令周期的数据流

取值周期数据流

2021101018184625438.png

间址周期数据流

2021101018184671739.png

执行周期数据流--不同指令的执行周期数据流不同
中断周期数据流

2021101018184725840.png


影响指令流水线性能的因素

因素 解释 解决
结构相关 不同指令争用同一功能部件产生资源冲突使指令流水出现停顿,影响流水线效率 停顿、指令存储器和数据存储器分开、指令预取技术
数据相关 不同指令因重叠操作,可能改变操作数的读/写访问顺序 后推法、采用旁路技术
控制相关 由转移指令引起 今早判别转移是否发生、及早生成转移目标地址、预取转移成功或不成功两个控制流方向上的目标指令、加快和提前形成条件码等

流水线性能

指标 性能
吞吐率 单位时间内流水线所完成指令或输出结果的数量
加速比 m段的流水线的速度与等功能的非流水线的速度之比
效率 流水线中各功能段的利用率

流水线的多发技术

超标量技术、超流水线技术、超长指令字技术

流水线结构

指令流水线结构

2021101018184759841.png

运算流水线

2021101018184802242.png


中断请求

中断请求标记、中断判优逻辑、(硬件排队、软件排队)

中断响应

响应中断的条件:允许中断触发器 EINT = 1
响应中断的 时间:指令执行周期结束时刻由CPU发查询信号
中断隐指令
1.保护程序断点
2.寻找服务程序入口地址
3.硬件 关中断

保护现场和恢复现场

程序断点保护和保护CPU内部个寄存器内容

中断屏蔽技术

1.多重中断的概念
2.实现多重中断的条件
1).提前设置“开中断”指令
2).优先级别高的中断源有权中断优先级别低的中断源
3.屏蔽技术
1).屏蔽触发器和屏蔽字
2).屏蔽技术可改变优先等级
3).屏蔽技术的其他应用
4.多重中断的断点保护

第九章 控制单元功能

取值周期

PC->MAR
1->R
M(MAR)->MDR
MDR->IR
OP(IR)->CU
(PC)+1->PC

间址周期

Ad(IR)->MAR
1->R
M(MAR)->MDR
MDR->Ad(IR)

执行周期

指令类别 步骤
非访存指令 0->ACC、𝐴𝐶𝐶⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ACC¯->ACC、L(ACC)->R(ACC),𝐴𝐶𝐶0ACC0->𝐴𝐶𝐶0ACC0、R(ACC)->L(ACC),𝐴𝐶𝐶0ACC0->𝐴𝐶𝐶0ACC0、0->G
访存指令-加法指令 ADDX、Ad(IR)->MAR、1->R、M(MAR)->MDR、(ACC)+(MDR)->ACC
访存指令-存数指令 STAX、Ad(IR)->MAR、1->W、ACC->MDR、MDR->M(MAR)
访存指令-取数指令 LDAx、Ad(IR)->MAR、1->R、M(MAR)->MDR、MDR-ACC
转移指令-无条件转移 JMPx、Ad(IR)->PC
转移指令-条件转移 BANX(负则转)、𝐴0∗𝐴𝑑(𝐼𝑅)+𝐴0⎯⎯⎯⎯⎯⎯⎯(𝑃𝐶)−>𝑃𝐶A0∗Ad(IR)+A0¯(PC)−>PC

中断周期

0->MAR
1->W
PC->MDR
MDR->M(MAR)
中断程序识别程序入口地址M->PC
0->EINT

控制方式

控制方式 解释
同步控制方式 任一微操作均由统一基准时标的时序信号控制
异步控制方式 无基准时标信号、无固定的周期节拍和严格的时钟同步、采用应答方式
联合控制方式 同步与异步相结合
人工控制方式 Reset、连续和单条指令执行转换开关、符合停机开关
点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> 计算机组成原理

相关推荐