总线
硬件系统中不同部件两两相连是不现实的,所以需要连到公共的信道上。
接口
由于外设在速度,信号形式间存在差异,需要在CPU与外设间加入接口来协调
总线带宽
总 线 带 宽 = 总 线 时 钟 频 率 ∗ 总 线 宽 度 / 8 总线带宽=总线时钟频率*总线宽度/8 总线带宽=总线时钟频率∗总线宽度/8
总线分类
按位置
- 片内
连接芯片内部各功能单元 - 片间
即芯片总线/局部总线,连接处理器与外围芯片 - 系统
板级总线,系统内高速模块 - 系统外
IO总线/通信总线,连接计算机或计算机与外设
按功能 - 地址
单向 - 数据
双向三态,可以通过高阻态隔离 - 控制
按传输格式
- 并行
- 串行
按有无时钟
- 同步
SPI, I 2 C I^{2}C I2C - 异步
按是否可复用
- 时分复用
- 非复用
总线结构
- 单总线结构
- 双总线结构
添加了CPU与存储器的总线 - 三总线结构
添加了DMA总线
还有带cache的版本 - 四总线结构
多层总线
总线仲裁
主设备需要取得控制权才能启动数据传输
从设备只能响应请求
在多个主设备的情况下需要总线仲裁,避免冲突
分为
集中式
串行仲裁
并行仲裁
混合仲裁
分布式
不需要仲裁器,设备模块包含访问控制逻辑
总线操作与时序
- 请求及仲裁
- 寻址
- 数据传输
- 结束阶段