计算机组成原理之机器
笔记来源:哈尔滨工业大学计算机组成原理(哈工大刘宏伟)
Chapter2:总线
2.1 总线的基本概念
1.为什么需要总线?有几百个部件需要连接进行信息传输
2.什么是总线?总线是连接各个部件的信息传输线,是各个部件共享的传输介质
3.总线上信息的传送:串行、并行
在高速状态下,并行口的几根数据线之间存在串扰,而并行口需要信号同时发送同时接收,任何一根数据线的延迟都会引起问题。而串行只有一根数据线,不存在信号线之间的串扰,而且串行还可以采用低压差分信号,可以大大提高它的抗干扰性,所以可以实现更高的传输速率,尽管并行可以一次传多个数据位,但是时钟远远低于串行,所以目前串行传输是高速传输的首选。—引自:并行通信与串行通信的区别对比及优缺点
2.2 总线的分类
按总线所处位置分类:
计算机内部:片内总线、系统总线(理解为片外)
计算机外部:通信总线
2.3 总线特性及性能指标
总线物理实现
总线特性
总线性能指标
总线标准
只要按照此标准生产部件就可以与其他部件集成在一起
2.4 总线结构
2.4.1 单总线结构
(1)单总线结构框图
存在的问题:如果主存与I/O设备使用总线进行数据传输时(即总线被征用)CPU与I/O设备将无法同时传输
2.4.2 双总线结构
(1)面向CPU的双总线结构框图
存在的问题:主存与某I/O设备之间没有进信息传输的直接通路。一旦发生外部设备和主存之间进行信息传输CPU的计算任务会被打断。
(2)以存储器为中心的双总线结构框图
存在的问题:通常情况系统总线和存储总线无法同时工作,虽然有双口RAM,但双口RAM两端口在送数据时是采用分时来做的
2.4.3 三总线结构
为什么需要cache?
随着工艺和设计的演进,CPU 计算性能其实发生了翻天覆地的变化,但是DRAM存储性能的发展没有那么快。
所以造成了一个问题,存储限制了计算的发展。容量与速度不可兼得。我们只需要将这些数据放入一个小而快的存储中,这样就可以快速访问相关数据了。总结起来,Cache是为了给CPU提供高速存储访问,利用数据局部性而设计的小存储单元。—引自:深入理解 Cache 工作原理
2.4.4 四总线结构
高速总线连接高速设备
扩展总线连接低速设备
2.4.5 总线结构实例
2.5 总线控制
2.5.1 总线判优控制
两个设备同时提出占用总线请求,该优先给哪个设备使用?
总线判优控制–集中式
(1)链式查询
I/O设备通过BR线提出占用总线请求
总线控制部件通过BG链式查询哪个I/O设备优先占用总线
查询到的第一个I/O设备优先占用总线,该设备通过BS线通知总线控制部件已占用总线
(2)计数器定时查询方式
I/O接口1和2通过BR线发出总线占用请求
计数器通过设备地址线对I/O接口进行查询,计数器为0代表查询I/O接口0是否有总线占用请求,若无则加1进行后序接口查询
查询到IO接口1进行了总线占用请求,IO接口1通过BS线通知总线控制部件已占用总线
(3)独立请求方式
各个IO接口独立请求
排队器对各个请求进行排序
2.5.2 总线通信控制
总线通信的四种方式
(1)同步通信
双方在同一个时钟信号的控制下,进行数据的接收和发送,来一个时钟,发送端发送,接收端接收,他们彼此之间的工作状态是一致的。—引自什么是同步通信?什么是异步通信?两者的优缺点是什么?
1个总线传输周期由4个时钟周期构成,4个时钟周期就能保证完成一次可靠完整的数据通讯
(2)异步通信
异步通信不要求所有部件严格的统一操作时间,而是采用应答方式(又称握手方式),即当主模块发出请求信号时,一直等待从模块反馈回来“响应”信号后,才开始通信。—引自:总线的异步通讯方式
不互锁:主从设备在发送信号无需等待对方确认,当自己认为对方收到信号后便开始发送下一次信号
半互锁:主设备发送请求信号后必须收到从设备的应答才可以撤销请求信号,存在互锁关系。而从设备发出应答信号后无需等待主设备确认便可撤销其回答信号,不存在互锁关系。
当主模块发送请求信号后必须等待从模块发送应答信号后才能撤销信号,又互锁关系。当从模块发送应答信号后必须等待主模块确认,当收到确认信号后才能撤销信号,也存在互锁关系。双发都存在互锁关系,故称为全互锁关系。
—引自:计算机组成原理(唐朔飞) 知识点总结 第三章
(3)半同步通信(同步、异步结合)
(4)分离式通信
将一个总线传输周期分为两个子周期