计组学习笔记之总线
1 总线概念
- 定义:总线是一组能为多个部件分时共享的公共信息的传送线路
- 共享:总线上可以挂接多个部件,各个部件之间互相交换的信息都可以通过这组线路分时共享
- 分时:同一时刻只允许有一个部件向总线发送信息,如果系统中有多个部件,则它们只能分时地向总线发送信息
2 总线的特性
- 机械特性:尺寸、形状、管脚数、排列顺序
- 电气特性:传输方向和有效的电平范围
- 功能特性:每根传输线的功能(地址、数据、控制)
- 时间特性:信号的时序关系
3 总线的分类
3.1 按数据传输格式分类
1 串行总线
- 数据按位传输、接收
- 优点
- 只需要一条传输线,成本低廉,广泛应用于长距离传输
- 应用于计算机内部时,可以节省布线空间
- 缺点:在数据发送和接收的时候要进行拆卸和装配,要考虑串行并行转换的问题
2 并行总线
- 数据并行传输、接收
- 优点:总线的逻辑时序比较简单,电路实现起来比较容易
- 缺点
- 信号线数量多,占用更多的布线空间
- 远距离传输成本高昂
- 无法持续提升工作频率
3.2 按总线功能分类
1 片内总线
- 定义:芯片内部的总线也称为片内总线
2 系统总线
- 定义:计算机系统各个功能部件之间相互连接的总线
- 按照传输信息内容不同,可分为
- 数据总线:用来传输各功能部件之间的数据信息,它是双向传输总线,其位数与机器
字长、存储字长有关 - 地址总线:用来指出数据总线上的源数据或目的数据所在的主存单元或/O端口的地址,它是单向传输总线,地址总线的位数与主存地址空间的大小有关
- 控制总线:传输的是控制信息,包括 CPU 送出的控制命令和主存(或外设)返回 CPU 的反馈信号
- 数据总线:用来传输各功能部件之间的数据信息,它是双向传输总线,其位数与机器
3 通信总线
- 定义:用于计算机系统之间或计算机系统与其他系统之间信息传送的总线,也称为外部总线
3.3 按时序控制方式分类
具体细节见下章节
4 系统总线的结构
4.1 单总线结构
-
结构:CPU、主存、IO 设备都连接在一组总线上,允许 IO 设备之间、IO 设备和 CPU 之间或 IO 设备与主存之间直接交换信息
-
优点:结构简单,成本低,易于接入新的设备
-
缺点:带宽低、负载重,多个部件只能争用唯一的总线,且不支持并发传送操作
4.2 双总线结构
-
结构:双总线结构有两条总线,一条是主存总线,用于 CPU、主存和通道之间进行数据传送;另一条是 IO 总线,用于多个外部设备与通道之间进行数据传送
-
优点:将较低速的 IO 设备从单总线上分离出来,实现存储器总线和 IO 总线分离
-
缺点:需要增加通道等硬件设备
4.3 三总线结构
-
结构:三总线结构是在计算机系统各部件之间采用3条各自独立的总线来构成信息通路,这 3 条总线分别为主存总线、IO 总线和直接内存访问 DMA 总线
-
优点:提高了 IO 设备的性能,使其更快地响应命令,提高系统吞吐量
-
缺点:系统工作效率较低
5 总线的性能指标
5.1 总线传输周期
-
定义:一次总线操作所需的时间(包括申请阶段、寻址阶段、传输阶段和结束阶段),通常由若干个总线时钟周期构成
5.2 总线时钟周期
- 定义:机器的时钟周期
- 计算机有一个统一的时钟,以控制整个计算机的各个部件,总线也要受此时钟的控制
5.3 总线工作频率
- 定义:总线上各种操作的频率,为总线周期的倒数
- 若总线周期 = N 个时钟周期,则总线的工作频率 = 时钟频率 / N
- 实际上指一秒内传送几次数据
5.4 总线时钟频率
- 定义:即机器的时钟频率,为时钟周期的倒数
- 若时钟周期为 T,则时钟频率为 1/T
- 实际上指一秒内有多少个时钟周期
5.5 总线宽度
- 定义:又称为总线位宽,它是总线上同时能够传输的数据位数
- 通常是指数据总线的根数,如 32 根称为 32 位(bit)总线
5.6 总线带宽
- 定义:总线的数据传输率,即单位时间内总线上可传输数据的位数
- 通常用每秒钟传送信息的字节数来衡量,单位可用字节/秒(B / s)表示
- 总线带宽 = 总线工作频率 总线宽度 (bit / s)
5.7 总线复用
- 定义:总线复用是指一种信号线在不同的时间传输不同的信息
- 可以使用较少的线传输更多的信息,从而节省了空间和成本
5.5 信号线数
- 定义:地址总线、数据总线和控制总线 3 种总线数的总和称为信号线数
6 总线仲裁
6.1 定义和分类
- 定义:多个主设备同时竞争主线控制权时,以某种方式选择一个主设备优先获得总线控制权
- 分类
- 集中仲裁方式
- 链式查询方式
- 计数器定时查询方式
- 独立请求方式
- 分布仲裁方式
- 集中仲裁方式
6.2 集中仲裁方式
- 工作流程
- 主设备发出请求信号
- 若多个主设备同时要使用总线,则由总线控制器的判优、仲裁逻辑按一定的优先等级顺序确定哪个主设备能使用总线
- 获得总线使用权的主设备开始传送数
1 链式查询方式
-
优点:链式查询方式优先级固定,只需很少几根控制线就能按一定优先次序实现总线控制,结构简单,扩充容易
-
缺点:对硬件电路的故障敏感,并且优先级不能改变,当优先级高的部件繁请求使用总线时,会使优先级较低的部件长期不能使用总线
-
“总线忙信号”的建立者获得控制权的设备
2 计数器查询方式
-
用一个计数器控制总线的使用权,相对于链式多了一组设备地址线,少了一根总线响应线 BG
-
优点
- 计数初始值可改变优先次序计数每次从 0 开始,设备的优先级就按顺序排列,固定不变
- 计数从上一次的终点开始,此时设备使用总线的优先级相等
- 计数器的初值还可以由程序设置
- 对电路的故障没有链式敏感
-
缺点
-
增加了控制线数(若有 n 个设备,则需要 条控制线)
-
控制相比链式查询行对复杂
-
3 独立请求方式
-
每一个设备均由一对总线请求线 和总线允许线
-
优点
- 响应速度快,总线允许信号 BG 直接从控制器发送到有关设备,不必在设备间传递或者查询
- 对优先次序的控制相当灵活
-
缺点:
-
控制线数量多
-
若设备有 n 个,则需要 2n+1 条控制线
-
其中 +1 为 BS 线,其用于设备向总线控制部件反馈已经使用完毕总线
-
总线的控制逻辑更加复杂
-
4 三种仲裁对比
6.3 分布仲裁方式
- 特点:不需要中央仲裁器,每个潜在的主模块都有自己的仲裁器和仲裁号,多个仲裁器竞争使用总线
- 当设备有总线请求时,它们就把各自唯一的仲裁号发送到共享的仲裁总线上
- 每个仲裁器将从仲裁总线上得到的仲裁号与自己的仲裁号进行比较
- 如果仲裁总线上的号优先级高,则它的总线请求不予响应,并撤销它的仲裁号
- 最后,获胜者的仲裁号保留在仲裁总线上
7 总线操作
7.1 总线周期的四个阶段
- 申请分配阶段:由需要使用总线的主模块提出申请,经总线仲裁机构决定将下一传输周期的总线使用权授予某一申请者。也可将此阶段细分为传输请求和总线仲裁两个阶段
- 寻址阶段:获得使用权的主模块通过总线发出本次要访问的从模块的地址及有关命令,启动参与本次传输的从模块
- 传输阶段:主模块和从模块进行数据交换,可单向或双向进行数据传送
- 结束阶段:主模块的有关信息均从系统总线上撤除,让出总线使用权
7.2 总线定时
- 总线定时是指总线在双方交换数据的过程中需要时间上配合关系的控制,这种控制称为总线定时,它的实质是一种协议或规则
- 同步通信:由统一时钟控制数据传送
- 异步通信:采用应答方式,没有公共时钟标准
- 半同步通信:同步、异步结合
- 分离式通信:充分挖掘系统总线每瞬间的潜力
1 同步定时方式
- 定义:系统采用一个统一的时钟信号来协调发送和接收双方的传送定时关系
- 时钟产生相等的时间间隔,每个间隔构成一个总线周期
- 在一个总线周期中,发送方和接收方可进行一次数据传送
- 优点:传送速度快,具有较高的传输速率;总线控制逻辑简单
- 缺点:主从设备属于强制性同步;不能及时进行数据通信的有效性检验,可靠性较差
- 同步通信适用于总线长度较短及总线所接部件的存取时间比较接近的系统
2 异步定时方式
-
在异步定时方式中,没有统一的时钟,也没有固定的时间间隔,完全依靠传送双方相互制约的“握手”信号来实现定时控制
-
主设备提出交换信息的“请求”信号,经接口传送到从设备;从设各接到主设备的请求后,通过接口向主设备发出“回答”信号
-
不互锁方式
-
主设备发出“请求”信号后,不必等到接到从设备的“回答”信号,而是经过一段时间,便撤销“请求”信号
-
从设备在接到“请求”信号后,发出“回答”信号,并经过一段时间,自动撤销“回答”信号
-
双方不存在互锁关系
-
-
半互锁方式
-
主设备发出“请求”信号后,必须待接到从设各的“回答”信号后,才撤销“请求”信号,有互锁的关系
-
从设备在接到“请求”信号后,发出“回答”信号,但不必等待获知主设备的“请求”信号已经撤销,而是隔一段时间后自动撤销“回答”信号,不存在互锁关系
-
-
全互锁方式
-
最可靠速度最慢
-
主设备发出“请求”信号后,必须待从设备“回答”后,才撤销“请求”信号
-
从设备发出“回答”信号,必须待获知主设备“请求”信号已撤销后,再撤销其“回答”信号
-
双方存在互锁关系
-
-
波特率:单位时间内传送的二进制数据的位数,单位用 bps (位/秒)表示,记作波特
-
比特率:单位时间内传送二进制有效数据的位数,单位用 bps 表示,bps 即 bit/s
-
3 半同步通信
统一时钟的基础上,增加一个“等待”响应信号
4 分离式通信
- 子周期一:主模块申请占用总线,使用完后放弃总线使用权
- 子周期二:从模块申请占用总线,将各种信息送至总线上
- 特点
- 各模块均有权申请占用总线
- 采用同步方式通信,不等对方回答
- 各模块准备数据时,不占用总线
- 总线利用率提高
8 总线标准
8.1 总线标准
总线标准 | 全称 | 工作频率 | 数据线 | 最大速度 | 特点 |
---|---|---|---|---|---|
ISA | Industry Standard Architecture | 8MHz | 8/16 | 8MB/s | 系统总线 |
EISA | Extended ISA | 8MHz | 32 | 32MB/s | 系统总线 |
PCI | Peripheral Component Interconnect | 33MHz | 32 | 133MB/s | 局部总线 |
AGP | Accelerated Graphics Port | - | - | x1:266MB/s X8:2.1GB/s |
局部总线 |
VESA | Video Electronics Standard Architecture | 33MHz | 32 | 132MB/s | 局部总线 |
PCI-E | Pci-express (3G10) | - | - | 10GB/s以上 | 串行 |
USB | Universal Serial Bus | - | - | 1280MB/s | 设备总线、串行 |
RS-232C | Recommended Standard | - | - | 20kbps | 串行通信总线 |
IDE(ATA) | Integrated Drive Electronics | - | - | 100MB/s | 硬盘光驱接口 |
SATA | Serial Advanced Technology Attachment | - | - | 600MB/s | 串行硬盘接口 |
PCMCIA | Personal Computer Memory Card International Association |
- | - | 90Mbps | 便携设备接口 |
SCSI | Small Computer System Interface | - | - | 640MB/s | 智能通用接口 |
8.2 各标准特征
- ISA 和 EISA
- ISA
- 数据传送需要 CPU 或 DMA 接口来进行管理
- 不支持总线仲裁
- EISA
- 与 8/16 bit 的 ISA 总线完全兼容
- 从 CPU 中分类出了总线控制权,支持多个总线主控器和突发传送
- ISA
- PCI
- 是一种局部总线
- 高性能,不依附于某个具体的处理器,支持突发传送
- 良好的兼容性
- 支持即插即用
- 支持多主设备
- 具有与处理器和存储器子系统完全并行操作的能力
- 提供数据和地址奇偶校验的能力
- 可扩充性好,可米用多层结构提高駆动能力
- 采用多路复用技术,减少了总线引脚个数
- AGP
- 独立于 CPU 的局部总线
- 加速图形接口,时显卡专用的局部总线
- PCI - E
- 是一种点对点串行连接的设备方式
- 支持热插拔和双向传输模式
- VESA
- 又称为视频局部总线
- 针对多媒体 PC 要求高速传送活动图像的大量数据应运而生
-
USB
- 属于设备总线,是设备和设备控制器之间的接口
- 支持热插拔,即插即用
- 具有很强的连接能力的很好的扩充性
- 标准统一
- 高速传输
- 连接电缆轻巧,可为低压外设供电
-
RS - 232C
- 是串行二进制交换的数据终端设备(DTE)和数据通信设备(DCE)之间的标准接口
-
IDE(ATA)
- 又称电子集成驱动器
- 硬盘和光驱通过 IDE 接口与主板连接
-
SATA
- 又称串行高级技术附件,采用串行方式传输数据
- 传输效率高,降低系统能耗,减少系统复杂性
-
SCSI
- 又称小型计算机系统接口
- 扩充性比 IDE 要更大
- 价格高,耐用,更稳定
-
PCMCIA
- 支持即插即用
9 本章总结
-
思维导图
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!