寄组---

本文详细介绍了计算机总线的基本概念、分类、性能指标以及总线控制方式,涵盖了存储器的结构、分类、高速缓冲存储器(Cache)和输入输出设备等内容,探讨了RISC架构和CPU的相关原理。
摘要由CSDN通过智能技术生成

3.1总线的基本概念

3.1.1 什么是总线

总线是连接各个部件的信息传输线,是各个部件共享的传输介质

3.1.2 总线上信息的传送

3.2 总线的分类

 3.3总线的性能指标

 3.3.1 总线的物理实现

总线的英文名称是bus

3.3.2 总线的特性 

3.3.3总线的性能指标

 3.3.4 总线的标准

3.4 总线的结构

这一部分随着时间的推移,总线的结构总是在变化的 

3.5 总线的控制

3.5.1 链式查询方式

该方式的优点是结构简单,扩展容易,缺点是,效率低下,因为它需要通过BG这条线路一个一个地去询问IO接口是否需要使用总线,一旦有一个设备出错,则信息无法传入到下一个设备。 

3.5.2 计数器定时查询方式

 该查询方式会在总线控制部件中设置一个计数器,如计数器设置为2,则总线控制部件会通过设备地址线去查询设备2是否需要使用总线,随后计数器数字加1,该方法的好处是可以人为的设置查询的设备。

3.5.3 独立请求方式

这种请求方式给每个设备都配备了请求接口,每个设备可以独立地向总线发出控制请求,总线控制部件中地排队器会根据设备地优先级发送同意指令。 

3.6 总线的通信控制

申请分配阶段就是通过总线判优的方式来实现的。 

3.6.1 总线通讯的四种方式

3.6.1.1 同步通信 

条件 1:定宽定距的时钟 2:在给定的时间点上要完成指定的工作 3:时钟周期要服从传输速度最慢的设备。

3.6.1.2 异步通信

 1.不互锁即请求和回答信号不会等待对方的回复信号,只发送一次信号

2.半互锁即请求设备会向应答设备发送信号,只有在回答信号回复了该次请求,请求信号才会停止发送请求信号。这种方式可能会使请求信号一直保持高电平,因为应答设备只会回复一次请求。

3.全互锁就解决了半互锁的缺点,只有请求信号停止了发送请求,应答设备才会停止回复。

3.6.1.2 半同步通信

半同步通信引入了等待信号 

3.6.1.3 分离式通信 

4.1 存储器

4.1.1存储器的分类

除了这三个分类标准,还可以按照存储器在计算机中的位置等进行分类。

4.1.2 存储器的结构层次

其中缓存和主存之间是通过物理结构联系起来,主要是为了提速,主存和辅存是软硬件相结合联系 起来,主要是为了弥补主存内存不足的缺点。

4.2 主存储器 

4.2.1主存储器的基本组成

数据存储在存储体中,地址总线负责提供要处理数据的地址,控制电路负责控制数据的读与写,数据总线负责进行数据的传输。

4.2.2主存与cpu的关系

 4.2.3主存中存储单元地址的分配

这一部分还未弄明白。

4. 2.4 主存中的技术指标

4.3 主存储器--半导体芯片简介

4.3.1 半导体芯片的基本结构

其中从地址线和数据线的个数可以看出存储 的容量,如地址线数量为10,则说明该芯片中有2^{10}个存储单元,数据线数量为4,则说明每一个存储单元存储了四个数据(实际上并不能说一个存储单元存储四个数据,只是刚好当地址线指向某个地址的时候,一次性可以读取四个数据)

片选线:负责选中哪个芯片

使能线:决定该设备能否正常工作

如图所示存储芯片实际上是由和多个小的芯片组成,其中芯片也会分组,片选线就决定了选择哪个组。图中的芯片一次性可以读取8位数据。 

4.3.2半导体存储芯片的译码驱动方式

4.3.2.1 线选法

 

如图所示的芯片,该芯片地址线共有4位,我先把他理解为有2^4个存储单元 ,数据线有8个,所以一次读取数据可以取出八位数据。

4.3.2.2 重合法

由图可知,重合法涉及到x,y两个坐标,可以精准定位某一存储单元。图中芯片共有2^5*2^5个存储单元。

 4.4 随机存储器(RAM)

4.4.1 静态RAM基本电路

首先如果地址信号指向了该存储单元,则行地址信号会使T_5 T_6连通,列地址信号会使T_7 T_8连通,当写信号进入后,A段会接受高电平,A^{'}端会接受低电平,这样就存储了一位信号,假设刚刚那样存储的是1,那么存储0就与刚刚的电平相反。(该存储器应该是电容) 读操作与写操作类似。

4.4.1.1 Intel2114RAM芯片举例

如图所示,行地址译码器有6位,可以选择64行,列地址译码器有4位,可以选择16列但是这个芯片中,将一些芯片分为了4组(每组有16位),使得一次性可以读取4位数据,当行地址为000000时,则选择第0行,当列地址为0000时,则选择第一组第0列数据,第二组第0列数据.......。 

4.4.2 动态随机存储器(DRAM)

4.4.2.1 动态随机存储器保存0和1的原理

 如图左边为三管动态RAM,C_{g}是一个电容,带电时表示1,不带电时表示0,当我需要读取里面的信息时(假设存储的信息为1)预充电信号为高电平,读数据线和读选择线会有高电平,同时由于电容器带点,所以导通的二极管为T_{1} T_{2} T_{4},所以线路上的高电平会通过那条接地(我的理解时这样的)的线放电,所以V_{DD}输出的电流为低电平,为了与前面的存储原理相符合,我们需要在该电路上加一个非门,以保证当电容器带电时读出的数据为1. 信息的写入也可以自己推理。

右边那个为单管动态RAM,读取和写入的原理都比较简单。

4.4.2.2 三管动态RAM芯片举例

4.4.2.3 单管动态RAM芯片举例

这个芯片与其它芯片有点特殊之处,它传地址的时候会先传行地址再传列地址。 它的时序控制就由行时钟列时钟控制。

其中读放大器就是一个跷跷板电路,当输入一段的电流为低电平时,另一端就会是高电平。由图可知,该电路的数据输出线路在读放大器的右端,所以在读放大器左端的电容中不带电的表示1,带电的表示0。 由于写入操作的时候也会经过读放大器,所以信息读写的逻辑不会变(可以自己推理一下)。

4.4.2.4 动态RAM的刷新

由于动态RAM存储数据是用电容,所以电容会慢慢地放电,导致信息地丢失,因此要刷新。(下面的几种刷新周期有点没弄明白,需重点复习)

1.集中刷新

2.分散刷新
3.异步刷新

4.4.2.5动态RAM和静态RAM的比较

集成度就是看芯片内部的晶体管数量。 

 4.5 只读存储器ROM

4.5.1 只读存储器的举例

4.5.2 存储器容量的扩展

4.5.2.1 位扩展

4.5.2.2 字扩展

4.5.2.3 字位扩展

易得:位扩展就是增加一次从存储器中取得的数据位数,而字扩展是增加地址位数(增加更多的存储单元可供读取)

4.6 存储器与CPU的连接

以上是存储器与cpu连接时需要考虑的问题。 

示例

 首先根据要求确定好二进制地址码,如本题要求6000(H,十六进制)到67FF(H)表示系统存储区域,6800(H)到6BFF(H)表示用户存储区域.所以需要据此来确定对应的二进制地址码。

(2)然后就是根据给出的芯片类型确定要选择哪些芯片类型,比如1K x 8位 1K x 4 位等

 (4)确定好片选信号,即什么时候选择系统存储区域,什么时候选择用户存储区域。

 4.7 存储器的校验

由以上比较可以知道,代码的检错能力和纠错能力与代码的距离(即代码集中的一个代码要经过几次变化 才能变为另一个代码)有关,具体有什么关系呢?

4.7.2 汉明码的构成 

1.检验位的位置如何取?

 即2的几次方的位置。

2.如何分组?

首先我们要将对应位置的序号写成二进制数,如序号为3的二进制数为011。然后它应该放在第几组呢?如下图,第一组即从右边数第一个是1,第二组即从右边数第二个数是1,所以序号为3 的数应分到第一和第二组。

图中第一个不等式说明:k为检验位数,n为数据位数,这个不等式说明检验位数构成的二进制数可以指示所有位数(如果出错检验数就不是零,且构成的二进制数表示出错在第几位),+1表示还一个无错误的表示(如果不出错所有检验位就为0)。 

例题

5.1 高速缓冲存储器

5.1.1 概述

为什么我们需要高速缓冲存储器呢?

如何工作的?

其中M>>C

思考e的范围是什么?

 我也不知道流水啥意思-_-

5.1.2 高速缓冲存储器(Cache)主存的地址映射

这种方法,将主存储体中的块分为一个一个区,某个区中的所有块只能存入到Cache中指定的块中。这样的方法不利于提高Cache的利用率。比如你的书房相当于一个主存储体,你的床头柜相当于一个Cache,床头柜上有数学,物理,历史等,对应的书只能放进对应的类别中,如果你一直需要看不同数学类的书,那么你就只能不停地更换床头柜上数学的那一类,其它的类别就空闲了。

这种映射方法种,主存储体中的任意一个块都可以存储在Cache的任意一个块中。这种方法的缺点:每次寻找Cache中是否存在上次使用过的数据时都要遍历一遍Cache,耗费时间。

这种映射方法将Cache中的存储单元分为了不同的组,主存储体中的存储单元分为了不同的区,每个组和每个区中的存储单元数量相同,其中一个区中指定位置的存储单元可以存储在一个组中的任意一个位置。 如果把Cache中所有的块分成一组,这样组相联的方式就变为了全相连模式。如果每一个组中的块只有唯一一块,那么就变成了直接相联的模式。

5.1.3 替换算法

 这两个算法了解就行。

6.1 输入输出设备

统一编址即在cpu内部预留了地址供外部设备使用,但是这样的方法不利于IO设备的添加与删除。

程序查询的方式会使cpu进入一个空闲期,cpu的利用率低。

 6.1.1 具体示例

7.1 IO接口

8.1 算数逻辑单元 

8.1.1 ALU电路

AB即是要进行处理的值,K决定执行何种操作。

8.1.2 加法器

为了解决进位满的问题我们有以下的解决方案

9.1 机器指令

指令字长即构成一条指令的二进制数的个数。

9.2 操作数类型和操作种类

9.2.1 操作数类型

9.2.2 操作种类

9.3 寻址方式

9.3.1 指令寻址

9.3.2 数据寻址

变址寻址举例

9.4 指令格式的要求

9.5 精简指令系统集计算机(RISC)

10 CPU的结构和功能

10.1 cpu的结构和功能

PC是指令的地址,IR是指令寄存器 

10.2 CPU寄存器

用户可见是指程序员在编程的时候可以访问到的数据。

11 指令周期

11.1 指令流水 

  • 44
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值