不经一番寒彻骨,怎得梅花扑鼻香。
第二章计算机的发展及应用
本章内容对于学习计算机组成原理来讲不是那么重要,所以下面放出我借鉴别的博主的笔记,与刘老师的授课内容差不多 连接地址
系统总线
笔记框架
- 3.1 总线基本概念
- 3.2 总线分类
- 3.3 总线特征及性能指标
- 3.3.1 总线特性
- 3.3.2 总线特性
- 3.4 总线结构
- 3.5 总线控制
- 3.5.1 总线判优控制
- 3.5.2 总线通信控制
- 总结
3.1总线的基本概念
总线定义
总线是连接多个部件的信息的传输线,是各个部件共享的传输介质
3.2总线的分类
从不同角度可以将总线分为很多类,如果按照连接的部件不同,总线可以分为三类
1.片内总线
片内总线是指芯片内部的总线
如在 CPU 内部,寄存器与寄存器之间,寄存器与 AUL 之间连接的总线
2.系统总线
系统总线是指 CPU ,I/O 设备,主存 各大部件之间信息的传输线
根据总线传输的信息不同,又可分为 :数据总线,地址总线,控制总线 三类
(1).数据总线
作用:用于各部件之间的数据信息的传递
方向:双向
位数:与机器字长(CPU 一次性处理数据的位数),存储字长有关。(数据总线的位数称为数据总线的宽度,可以理解为一次可以处理多少个数据)
(2).地址总线
作用:用来指出数据总线上的源数据或者目的数据在主存的地址或者 I/O 设备的地址
举例:CPU 想读取某个数据进行处理,就要将此数据的地址送到地址线上;CPU 想要控制某个 I/O 设备,就要将这个 I/O 设备的地址送到 I/O 总线上
方向:由 CPU 输出,单项传输
位数:与存储单元个数有关,20根地址线,就可以组成 20位的地址
(3).控制总线
作用:用来发出各种控制信号的传输线
举例:单向:CPU 发出 存储器读写命令,或者 I/O 设备的读写命令
双向:当I/O设备准备就绪时向CPU 发出中断请求
方向:既可单项又可双向
3.通信总线
用于计算机系统之间或者计算机系统与其它系统(如手机)之间的通信
传输方式分为两种:串行通信,并行通信
串行通信:单条一位宽的数据线上,数据一位一位的按顺序传送。适合远距离传输数据
并行通信:多条并行1位宽的传输线上,同时由源送到目的地。适合近距离传输数据
3.3总线的特征及性能指标
3.3.1总线特征
总线由许多的导线直接印刷在电路板上 ,各个部件如 CPU,主存,I/O设备等也插在主板上,这就要求总线必须有以下的特性才能将各个部件更好的工作
3.3.2总线的性能指标
下面是几种流行的总线的性能指标数
3.4总线结构
总线一共分为三种结构
1.单总线结构
.
局限性:所有的设备都连接到一条总线上,某一时刻多个部件都要使用总线传输数据时就会冲突。
2.多总线结构
多总线结构主要是由于 不同设备之间数据处理的速度不同,进而将一些低速设备进行分离的思想
多总线结构在同一时间只能使用一条总线,也就是同一时间只能有一条总线在传递信息
多总线的连接方式可以有多种,以下为其中几种
(1)双总线结构
CPU 、主存 连接在主存总线,所有 I/O 设备连接在 I/O 总线上,主存总线与 I/O 总线再由通道进行连接
(3)三总线结构
高速外设Cache 为在 CPU 中增加的一个高速存储器,速度比主存快很多,用于暂时存放数据
根据I/O设备速度进一步划分,又衍生出了四总线结构
不同的总线标准用的结构是不同得到(详见课本P55)
3.5 总线控制
总线控制会管理多种问题,比如:决定当由多个设备发送占用总线信息的时候,决定哪对设备优先占用总线;在信息传递的时候,如何防止信息的丢失,等一些问题。它主要包括:判优控制,通信控制
3.5.1判优控制
当一个设备发送请求的时候,首先响应哪个设备的占用请求就需要判优控制决定
首先,根据是否能对总线进行控制可以将设备分为两类
只有主设备才能发出对总线的控制
其次,控制方法可以分为两种:集中式 和 分布式
集中式
集中式的控制方法又分为三种:链式查询,计数器定时查询,独立请求查询
图中控制总线一共有三根对于总线的控制
BS:总先忙,设置总线被占用信息
BR 总线请求,发出控制总线的请求
BG 总线同意,判断是哪个设备发出的请求
请求步骤:当I/O设备1需要占用总线时,它通过 BR 控制总线向总线控制部件发送一个请求。总线控制部件再通过 BG 总线一个个排查看是哪个设备接口发出的控制请求,并同意占用。最后 I/O设备1通过BS将总线设为忙的状态。
优点:通过很少的几根线按照优先次序就能实现对总线控制;很容易扩充设备
缺点:1.对电路故障很敏感,中间的一个I/O设备故障,控制总线就难以向下进行判断其它设备。2.BG总线是根据 I/O 设备的排序情况对设备进行判断,这就造成了排在后面的设备长时间得不到响应。
2.计数器定时查询
BS:总先忙,设置总线被占用信息
BR:总线请求,发出控制总线的请求、
设备地址线
请求步骤:当I/O设备1需要占用总线时,它通过 BR 控制总线向总线控制部件发送一个请求。总线控制部件中放置一个计数器,计数器从0开始。
在 BS=0 即总线未被占用的情况下计数器开始计数,判断计数器中的地址与设备地址是否一致,不一致计数器加一,一致则将满足请求。
优点:总线请求的优先级更加灵活,计数器可以从任意位置开始判断是哪个设备发出的请求,每个设备的优先级相同
缺点:少了 BG 线,增加了设备地址线,这就要求要对每一个设备进行编码,控制也更为复杂
3.独立请求方式
BR 总线请求,发出控制总线的请求
BG 总线同意,判断是哪个设备发出的请求
请求步骤:每个设备都有两条线与控制部件相连。某个设备通过自己的 BR 线发送一个占用总线的请求。在控制部件内部设置一个排队器,排队器根据预先设定好的优先级的顺序(设定的优先级的顺序规则比较灵活)再由控制部件通过 BG 线判断是哪个设备发出的请求并同意。
优点:排队器的使用使得优先级的设定更加的灵活
缺点:线多,个数为 2n 根
(链式查询为两根,计数器查询为 log2n 根)
3.5.2总线通信控制
可以理解为当一组部件有了总线的使用权后,这组部件在一定的时间周期内如何协调使用总线传递信息,什么时候哪个部件用总线传递什么样的信息是所要研究的
完成一次总线操作的时间成为总线周期,可以将这个周期分为四个阶段,主要做这四件事
在一组设备进行数据交互的时候都会经历这四个阶段,在下面详细介绍中可以很明显的看到
总线通信主要解决通信双方如何获得数据传输开始传输结束,相当于两个相隔很远的人之间如何通知对方自己已经就绪,你可以进行任务的下一步了
通信方式有四种
1.同步通信
定义:通信双方由统一时标控制数据传输成为同步通信
时标可以由 CPU 的控制总线部件发出送到总线上的所有部件;也可以由总线上的各个部件发出
(1)CPU 从输入设备读取数据
T1 时钟周期的上升沿: CPU 给出另一个设备的地址信号
T2周期的上升沿 :CPU 给出读命令信号,告诉从设备要从设备中读取数据
T3时钟周期上升沿到达之前:从设备将数字信号传送到数据总线上 ;T3时钟周期内,将数据送往 CPU 内部寄存器内
T4时钟周期上升沿:撤销读命令,输入设备不再向数据总线传输数据
(2)同步数据输出
模拟 CPU 将数据输出到某一个模块上
T1周期的上升沿:给出输出设备的地址信号
T1周期的下降沿:给出数据
T2上升沿:给出写命令,向从设备写入数据
T3周期:写入操作
T4上升沿:CPU 撤销写命令和数据等信号
T4结束:地址信息也撤销
同步数据传输的特点:1.定宽,定距的时钟
2.必须在限定的时间内完成规定的内容
3.同步通信一般用于总线较短,各部件存取时间统一的场合
局限性:如果T4时刻数据设备的数据还没有传输完成,由于时间已经到达中断的时候,所有的通信都要中断
PS :在上面的图中,阴影部分为不进行任何操作
上升沿与下降沿都是数字电路的知识,可点击跳转知识扩充
2.异步通讯
允许各模块速度不一致,没有公共的时钟标准,通过应答(握手)的方式。这就要求主模块与从模块之间增加请求线与应答线
(1)不互锁方式
主设备发送通信请求信号,从设备接收到请求信号之后进行应答,之后主设备撤销请求信号,从设备撤销应答信号。从设备(接收主设备发出的撤销请求信号),主设备(接收应答信号)无论是否接收到了对方发出的信号,最终都会将自己发出的信号撤销
这样会导致数据的丢失
(2)半互锁
主设备发出请求信号,从设备在接收到信号之后发出应答信号,主设备要是接收到了应答信号再将请求信号进行撤销,但是从设备不会等到主设备发出“撤销请求信号”发出了了再撤销,而是过一段时间之后自动撤销应答信号。
但是这样会一直发送请求信号
(3)全互锁方式
主设备发送请求,从设备接收到请求信号发出应答信号,主设备接收到应答信号撤销请求信号,只有主设备撤销请求信号后从设备才会撤销应答信号
3.半同步通信
半同步通信保留了同步通信的基本特点:所有地址,命令,数据信号的发出时间都严格按照系统时钟的某个前沿开始
又允许不同速度的模块和谐的工作,保留异步通信的特点
增加了一条 WAIT(上划线) 等待响应信号线
(1)以输入数据为例
橙色为同步过程,蓝色为异步过程。
T1:CPU 给出从设备的地址信号
T2:CPU 给出读信号
T3 开始之前:如果从设备无法给出数据,则从设备给出 WAIT 低电平的等待信号
Tw :等待从设备的数据
T3 开始:WAIT 线可以看到变为了高电平,则读取数据信息
T4:撤销信号
4.分离式通信
上述从模块在准备数据的过程时间长在这时总线一直是被占用状态,于是为了增加总线的运用效率,可以采用分离式通信
分为两个周期:主模块占用总线向从模块发送指令信号,同时放弃总线使用权。当从模块数据准备完毕发出占用总线的请求,向主模块发送数据
分离式通信特点
以上就是总线通信控制的四种方式
总结
本章重中之重在 3.5 总线控制 下面是课程框架.