04-总线控制
04-总线控制
总线通信控制
- 目的 解决通信双方 协调配合问题
- 总线传输周期
- 申请分配阶段 主模块申请,总线仲裁决定
- 寻址阶段 主模块向从模块 给出地址和命令
- 传数阶段 主模块和从模块交换数据
- 结束阶段 主模块撤销有关消息
总线通信的四种方式
- 同步通信 由统一时标 控制数据传送
- 异步通信 采用应答方式,没有公共时钟标准
- 半同步通信 同步、异步相结合
- 分离式通信 充分挖掘系统 总线每个瞬间的潜力,发挥最大效能
1) 同步式数据输入
有定宽定距的时钟 来控制整个数据传输过程
在给定的时间点完成相应的操作
2) 同步式数据输入
同步通信 用于总线长度比较短,各个模块存取时间比较一致的情况下(为什么需要总线长度比较短?)
3) 异步通信
不互锁,半互锁,全互锁
4)半同步通信(同步、异步结合)
同步
发送方用系统时钟前沿发信号
接收方用系统时钟后沿 判断、识别
异步
允许不同速度的模块和谐工作
增加一条"等待"响应信号
以上三种通信的共同点
一个总线传输周期(以输入数据为例)
- 主模块发地址、命令 占用总线
- 从模块准备数据 不占用总线 总线空闲
- 从模块向主模块发数据 占用总线
从模块准备数据,总线空闲时,对总线来说是极大的浪费,总线的效率是计算机系统的瓶颈,如何提高其利用率?分离式通信
5)分离式通信
充分挖掘系统总线每个瞬间的潜力
一个总线传输周期
子周期1 主模块 申请占用总线,使用完后 即放弃总线的使用权
子周期2 从模块申请占用总线,将各种信息送至总线上
分离式通信特点:
1.各模块有权申请占用总线
2.采用同步方式通信,不等对方回答
3.各模块准备数据时,不占用宗霞
4.总线被占用时,无空闲
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了