了解完计算机系统的基本概念,我们今天就来了解一下本章的核心知识 —— 总线控制。
我们在总线上连接了多个设备,设备之间要进行通讯,我们就面临着以下两个问题
- 多个设备在同时向总线发出总线占用请求的情况下,如何确定占用总线的设备。
- 在设备占用总线以后,如何在保证正确性的情况下完成通讯过程。
总线判优控制
基本概念
- 主设备(模块) 对总线具有控制权,可以发出总线占用请求,并且占用之后可以控制与另外一台设备之间的通讯过程。
- 从设备(模块) 不能控制总线,不能发出总线占用请求,只能响应从主设备发来的总线命令。
某些设备既可以充当主设备的角色,也可以充当从设备的角色。
某些总线可以有多个主设备,也有某些主线只可以有一个主设备。
总线判优控制大体上可分为集中式和分布式2种方式,集中式又分为3种,链式查询,计数器定时查询,以及独立请求方式。
集中式的判优逻辑只位于一个部件上,例如cpu。
分布式的判优逻辑分布到各个设备或各个设备的端口上。
链式查询方式
链式查询的特点体现在BG线上
基本查询步骤
- 所有设备通过BR线向控制部件发出占用总线的请求。
- 控制部件通过BG线确定控制权的给予对象,首先在BG线上确认发送请求的设备并根据设备在BG线上的排序,按照顺序优先原则给予控制权。
- 获得控制权的设备通过BS线,告知总线控制部件以及其他设备主线忙。
- 主设备占用主线之后,利用地址总线确定从设备,从而达到与从设备之间传输数据的目的。
优点:结构和优先级算法简单,增加设备方便,可靠性设计容易实现(设置备用线)。
缺点:优先级速度慢,对电路故障敏感。
应用:该查询方式一般用于微型计算机和嵌入式系统当中。
计数器定时查询
总线控制部件内含有计数器
基本查询步骤
- 主设备通过BR线提出占用请求。
- 在可以让出总线控制权的情况下,计数器启动,并通过设备地址这条线向外输出计数值。
- 查询地址与计数值对应的接口是否提出了占用请求。若无,计数值+1;若有,设备通过BS线应答。
优点:优先级确定灵活。
缺点:速度慢。
独立请求方式
总线控制部内部含有确定优先级的排队器
基本请求步骤
- 设备通过BR线发送请求。
- 经过排队器确定优先级后,控制部件通过BG线应答设备请求。
优点:优先级确定速度快。
缺点:线数多。
总线通讯控制
目的
解决通讯双方协调配合的问题。
总线传输周期
总线传输周期定义为主设备和从设备完成一次完整的通讯所需要的时间。
它可分为申请分配阶段、寻址阶段、传数阶段、结束阶段共4个阶段。
申请阶段
主设备发出占用请求,由总线控制部件仲裁决定设备占用权。
寻址阶段
主设备向从设备发出地址和命令,通过地址找到从设备,通过命令控制从设备,从而完成接下来的传输数据工作。
传数阶段
从设备准备完毕后,即可进行传数操作。
结束阶段
主设备和从设备撤销有关信息。
总线通讯方式
同步通信
同步通信根据速度最慢的设备确定一个统一的时标,并由该定宽、定距的时标控制数据的传输,每一个操作、每一个信号都在固定的时间点由时标控制。该通信方式一般应用在总线长度比较短,并且各设备存取时间较为一致的情况。
异步通信
异步通信无统一时标,而是采用应答方式。主设备发出请求,从设备发出应答信号,再进行信息传输。它分为不互锁、半互锁、全互锁三种方式。
半同步通信
半同步通信是同步和异步通讯的结合,解决了两个不同速设备之间的通讯问题。发送方用系统时钟前沿发送信号,接收方用系统时钟后沿判断、识别,待速度较慢的一方撤销wait信号,另一方再发送/接收数据
分离式通讯
分离式通信充分利用了系统总线的能力,在最大限度下完成通信任务
分离式通讯特点
- 各模块有权申请占用总线。
- 采用同步方式通信,不等对方应答。
- 各模块准备数据,不占用总线。
- 总线被占用时,无空闲状态。