计算机组成原理——第三章系统总线

文章目录

  • 3.1 总线的基本概念
      • 为什么要用总线
      • 什么是总线
      • 总线上的信息传送
  • 3.2 总线的分类
        • 片内总线
        • 系统总线
        • 通信总线
  • 3.3 总线特性及性能指标
        • 总线物理实现
        • 总线特性
        • 总线的性能指标
        • 总线标准
  • 3.4 总线结构
        • 单总线结构
        • 多总线结构
        • 总线结构举例
  • 3.5 总线控制
        • 总线判优控制
        • 集中式查询
          • 链式查询
          • 计数器定时查询
          • 独立请求方式
        • 总线通信控制
        • 同步通信——==定宽定距的公共时钟信号==
          • 同步式数据输入
          • 同步式数据输出
        • 异步通信
        • 半同步通信
        • 分离式通信

3.1 总线的基本概念

  1. 为什么要用总线

    计算机系统五大部件之间的互连方式有两种:

    • 分散连接——各部件之间使用单独的连线
    • 总线连接——各部件连到一组公共信息传输线上

    早期的计算机大多采用分散连接方式,内部连线十分复杂,尤其当I/O与存储器交换信息时都需要经过运算器,使运算器停止运算,严重影响CPU的工作效率。

  2. 什么是总线

    总线是连接各个部件的信息传输线,是各个部件共享的传输介质

  3. 总线上的信息传送

    • 串行
    • 并行

3.2 总线的分类

  1. 片内总线

    芯片内部的总线

    • CPU芯片内部
    • 寄存器之间
    • 寄存器与算逻单元ALU之间
  2. 系统总线

    计算机各部件(CPU、主存、I/O设备)之间的信息传输线

    按系统总线传输信息不同分为:

    • 数据总线——传输各功能部件之间的数据信息
      • 双向
      • 与机器字长、存储字长有关
      • 数据总线宽度——数据总线的位数
    • 地址总线——用来指出数据总线上的源数据或目的数据在主存单元的地址I/O设备的地址
      • 单向(由CPU输出)
      • 与存储地址、I/O地址有关
      • 地址线位数( 2 n 2^n 2n)与存储单元的个数(n)有关
    • 控制总线——用来发出各种控制信号的传输线
      • 出——中断请求、总线请求
      • 入——存储器读/写、总线允许、中断确认
      • 常见控制信号:
        • 时钟:用来同步各种操作
        • 复位:初始化所有部件
        • 总线请求:表示某部件需获得总线使用权
        • 总线允许:表示需要获得总线使用权的部件已获得了控制权
        • 中断请求:表示某部件提出中断申请
        • 中断响应:表示中断请求已被接收
        • 存储器写:将数据总线上的数据写至存储器的指定地址单元内
        • 存储器读:将指定存储单元中的数据读到数据总线上
        • I/O读:从指定的I/O端口将数据读到数据总线上
        • I/O写:将数据总线上的数据输出到指定的I/O端口内
        • 传输响应:表示数据已被接收,或已将数据送至数据总线上
  3. 通信总线

    用于计算机系统之间或计算机系统与其它系统(控制仪器、移动通信等)之间的通信

    通信方式:

    • 串行通信
      • 数据在单条1位宽的传输线上,一位一位地按顺序分时传送。
        • 一字节的数据要通过一条传输线分8次由低位到高位按顺序传送
      • 适用于远距离传送,实现远程通信
    • 并行通信
      • 数据在多条并行1位宽的传输线上,同时由源传送到目的地。
      • 一字节的数据要通过8条并行传输线同时由源传送到目的地
      • 适宜于近距离的数据传输,通常小于30m
    • 数据传送速率与距离成反比

3.3 总线特性及性能指标

  1. 总线物理实现

    总线由许多导线直接印制在电路板上,延伸到各个部件。

计算机组成原理——第三章系统总线_第1张图片

​ CPU、主存、I/O这些插板通过插头与水平方向总线插槽连接。为了保证机械上的可靠连接,必须规定其机械特性;为了确保电气上的正确连接,必须规定其电气特性;为了保证正确地连接不同部件,还需规定其功能特性时间特性

​ Pentium Ⅲ以上微型计算机已将CPU芯片直接安装在主板上,很多插卡已做成专用芯片,减少插槽,结构更合理。

  1. 总线特性

    1. 机械特性——总线在机械连接方式上的一些性能

      • 尺寸
      • 形状
      • 管脚数
      • 排列顺序
    2. 电气特性

      • 每一根传输线上信号的传输方向
      • 有效电平范围
    3. 功能特性——每根传输线的功能

      • 地址
      • 数据
      • 控制
    4. 时间特性——信号的时序关系

      • 总线中的任一根线在什么时间内有效
      • 每条总线上的各种信号互相存在一种有效时序关系,一般可用信号时序图描述
  2. 总线的性能指标

    1. 总线宽度
      • 数据线的根数
      • 用bit(位)表示(8位,16位,32位,64位)
    2. 标准传输率——每秒传输的最大字节数 − M B p s -MBps MBps
    3. 时钟同步/异步——同步/不同步
    4. 总线复用——地址线数据线复用
    5. 信号线数—— 地 址 线 + 数 据 线 + 控 制 线 \bold{地址线+数据线+控制线} 线+线+线
    6. 总线控制方式
      • 突发工作
      • 自动配置
      • 仲裁方式
      • 逻辑方式
      • 计数方式
    7. 其他指标
      • 负载能力
      • 电源电压
      • 总线宽度能否扩展
  3. 总线标准

    总线标准 数据线 总线时钟 带宽
    ISA
    工业标准结构总线
    16 8MHz(独立) 16MBps
    EISA
    扩展工业标准结构
    32 8MHz(独立) 33MBps
    VESA(VL-BUS)
    视频电子标准协会
    32 32MHz(CPU) 132MBps
    PCI
    外设部件互联标准
    32/64 33MHz(独立)/ 66MHz(独立) 132MBps
    528MBps
    AGP
    加速图形接口
    32 66.7MHz(独立)
    133MHz(独立)
    266MBps
    533MBps
    RS-232 串行通信总线标准 数据终端设备(计算机)和数据通信设备
    (调制解调器)之间的标准接口
    USB
    通用串行总线
    串行通信总线标准 普通无屏蔽双绞线
    带屏蔽双绞线
    最高
    1.5MBps (USB1.0)
    12MBps (USB1.0)
    480MBps (USB2.0)

3.4 总线结构

  1. 单总线结构

    计算机组成原理——第三章系统总线_第2张图片
  2. 多总线结构

    1. 双总线结构(分离主存总线和I/O主线)

      计算机组成原理——第三章系统总线_第3张图片
    2. 三总线结构

      DMA(主存与I/O设备之间):直接存储器访问

      计算机组成原理——第三章系统总线_第4张图片
    3. 三总线结构2

      多种外部设备都连在一条扩展总线上,影响外设设备工作速度

      计算机组成原理——第三章系统总线_第5张图片
    4. 四总线结构

      分离高速设备和低速设备

  3. 总线结构举例

    • 传统微型机总线结构

      分离系统总线和I/O总线

      计算机组成原理——第三章系统总线_第6张图片
    • VL-BUS局部总线结构

      分类组织高速设备和低速设备

      计算机组成原理——第三章系统总线_第7张图片
    • PCI 总线结构

      计算机组成原理——第三章系统总线_第8张图片
    • 多层 PCI 总线结构

      计算机组成原理——第三章系统总线_第9张图片

3.5 总线控制

  1. 总线判优控制

    • 主设备(模块)——对总线有控制权
    • 从设备(模块)——响应从主设备发来的总线命令
    • 某些设备既可作为主设备也可作为从设备

    控 制 方 法 { 集 中 式 { 链 式 查 询 计 数 器 定 时 查 询 独 立 请 求 方 式 分 布 式 控制方法\begin{cases} 集中式\begin{cases} 链式查询\\ 计数器定时查询\\ 独立请求方式 \end{cases}\\ 分布式 \end{cases}

  2. 集中式查询

    • 链式查询
      • 优先级由连接方式事先决定    ⟹    \implies BG的查询顺序
      • 增添设备容易
      • 容易实现可靠性设计
      • 速度慢    ⟹    \implies 用于微型计算机,嵌入式系统
      • 对电路故障敏感(尤其BG线
    计算机组成原理——第三章系统总线_第10张图片
    • 计数器定时查询
      • 判优过程:计数器控制设备地址线进行查询

      • 设备地址线宽度:与设备数n有关    ⟹    ⌈ log ⁡ 2 n ⌉ + 2 \implies\lceil\log_{2}{n}\rceil+2 log2n+2

      • 判优灵活:可设定计数器初值;利用循环计数实现公平判优

        计算机组成原理——第三章系统总线_第11张图片
    • 独立请求方式
      • 速度更快

      • 每个I/O接口都有单独的请求线和授权线

      • 优先级:总线控制部件内部有排队器

      • 线数多: 2 n 2^n 2n

        计算机组成原理——第三章系统总线_第12张图片
  3. 总线通信控制

    • 目的:解决通信双方协调配合的问题
    • 总线传输周期
      • 申请分配阶段:主模块申请,总线仲裁决定
      • 寻址阶段:主模块向从模块给出地址命令
      • 存数阶段:主模块和从模块交换信息
      • 结束阶段:主模块撤消有关信息
    • 总线通信的四种方式

    { 同 步 通 信 由 统 一 时 标 控 制 数 据 传 送 异 步 通 信 采 用 应 答 方 式 , 没 有 公 共 时 钟 标 准 半 同 步 通 信   同 步 、 异 步 结 合 分 离 式 通 信   充 分 挖 掘 系 统 总 线 每 个 瞬 间 的 潜 力 \begin{cases} \bold{同步通信}\quad\quad由\color{blue}{统一时标}\color{black}控制数据传送\\ \bold{异步通信}\quad\quad采用\color{blue}{应答方式}\color{black},没有公共时钟标准\\ \bold{半同步通信}\quad\,\color{blue}同步、异步结合\\ \bold{分离式通信}\quad\,充分\color{blue}挖掘\color{black}系统\color{blue}总线每个瞬间\color{black}的\color{blue}潜力 \end{cases} 线

  4. 同步通信——定宽定距的公共时钟信号

    • 优点

      • 规定明确、统一
      • 模块间的配合简单一致
    • 缺点

      • 主、从模块时间配合“强制性”同步
      • 必须按最慢速度的部件来设计公共时钟,严重影响总线的工作效率
    • 一般用于总线长度较短,各部件存取时间比较一致的场合

      • 总线传输周期越短,数据线的位数越多,直接影响总线的数据传输率
    • 同步式数据输入
      • T 1 T_1 T1上升沿主设备给出地址信号
      • T 2 T_2 T2上升沿给出读命令信号
      • T 3 T_3 T3上升沿从设备给出数据信号(数据总线)
      • T 4 T_4 T4上升沿撤销数据信号和控制信号
      • T 4 T_4 T4下降沿撤销地址信号
    计算机组成原理——第三章系统总线_第13张图片
    • 同步式数据输出
      • T 1 T_1 T1上升沿给出地址信号
      • T 1 T_1 T1下降沿给出数据
      • T 2 T_2 T2上升沿给出写命令
      • T 3 T_3 T3上升沿执行写操作
      • T 4 T_4 T4上升沿撤销数据和写命令
      • T 4 T_4 T4下降沿撤销地址数据
    计算机组成原理——第三章系统总线_第14张图片

    数据传输率:每秒传输的最大字节数—— M B P s MBPs MBPs

    例1:假设总线的时钟频率为 100 M H z 100MHz 100MHz,总线的传输周期为4个时钟周期,总线的宽度为32位,试求总线的数据传输率。若想提高一倍的数据传输率,可采取什么措施?

    解:根据总线时钟频率为 100 M H z 100MHz 100MHz,得

    一个时钟周期为 1 100 M H z = 0.01 μ s \frac{1}{100}MHz=0.01\mu s 1001MHz=0.01μs

    总线传输周期为 0.01 μ s × 4 = 0.04 μ s 0.01\mu s\times4=0.04\mu s 0.01μs×4=0.04μs

    由于总线得宽度为 32 位 = 4 B ( 字 节 ) 32位=4B(字节) 32=4B()

       ⟹    \implies 总线的数据传输率为 4 B 0.04 μ s = 100 M B p s \frac{4B}{0.04\mu s}=100 MBps 0.04μs4B=100MBps

    若想提高一倍数据传输率,可以在不改变总线时钟频率得前提下,将数据线得宽度改为64位;

    也可以保持32位的数据宽度,让总线的时钟频率增加到 200 M H z 200MHz 200MHz


  5. 异步通信

    { 主 设 备 发 起 总 线 通 讯 从 设 备 受 主 设 备 控 制 增 加 { 请 求 线 应 答 线 \begin{cases} \bold{主设备}\quad发起总线通讯\\ \bold{从设备}\quad受主设备控制 \end{cases}\\ 增加\begin{cases} \bold{请求线}\\ \bold{应答线} \end{cases} {线{线线

    • 不互锁

      • 主设备发出通信请求
      • 从设备收到请求后进行应答
      • 主设备撤销请求信号
      • 从设备撤销应答信号

      无论从设备是否收到请求信号,一段时间后主设备都会撤销请求信号

      无论主设备是否收到应答信号,一段时间后从设备都会撤销应答信号

         ⟹    \implies 通信可靠性存在问题

    • 半互锁

      • 主设备发出通信请求
      • 从设备收到请求后进行应答
      • 主设备收到应答后撤销请求信号
      • 从设备撤销应答信号

      只有收到应答后主设备才撤销请求信号

      无论主设备是否收到应答信号,一段时间后从设备都会撤销应答信号

         ⟹    \implies 可能造成主设备请求信号一直保持高电平

    • 全互锁

      • 主设备发出通信请求
      • 从设备收到请求后进行应答
      • 主设备收到应答后撤销请求信号
      • 请求信号撤销后从设备撤销应答信号
    计算机组成原理——第三章系统总线_第15张图片

    异步串行通信的数据传送速率:

    • 波特率:单位时间内传送二进制数据的位数—— b p s ( 位 / 秒 ) bps(位/秒) bps(/)
    • 比特率:单位时间内传送二进制有效数据的位数—— b p s ( 位 / 秒 ) bps(位/秒) bps(/)

    例2:在异步串行传输系统中,假设每秒传输120个数据帧,其字符串格式规定包含1个起始位,7个数据位,1个奇校验位、1个终止位,试计算波特率。

    解:根据题目给出的字符格式,一帧包含 1 + 7 + 1 + 1 = 10 位 1+7+1+1=10位 1+7+1+1=10

       ⟹    \implies 波特率为 ( 1 + 7 + 1 + 1 ) × 120 = 1200 b p s = 1200 波 特 (1+7+1+1)\times120=1200bps=1200波特 (1+7+1+1)×120=1200bps=1200

    例3:在异步串行传输系统中,若字符串格式为:1起始位、8位数据位、1位奇校验位、1位终止位。假设波特率为 1200 b p s 1200bps 1200bps,求此时的比特率。

    解:总数据位: 1 + 8 + 1 + 1 = 11 位 1+8+1+1=11位 1+8+1+1=11

    有效数据位:8位

       ⟹    \implies 比特率为 1200 × 8 11 ≈ 872.72 b p s 1200\times\frac{8}{11}\approx872.72bps 1200×118872.72bps


  6. 半同步通信

    • 同步特征
      • 发送方用系统时钟前沿发信号
      • 接收方用系统时钟后沿判断、识别
    • 异步特征
      • 允许不同速度模块和谐工作
      • 增加一条**“等待”响应信号** → W A I T ‾ \to\overline{WAIT} WAIT
    • 例:输入数据
      • T 1 T_1 T1 主设备发地址
      • T 2 T_2 T2 主设备发命令
      • T W T_W TW W A I T ‾ \overline{WAIT} WAIT为低电平时,等待一个 T T T
      • T W T_W TW W A I T ‾ \overline{WAIT} WAIT为低电平时,等待一个 T T T
      • T 3 T_3 T3 从设备提供数据
      • T 4 T_4 T4 从设备撤销数据,主模块撤销命令
    计算机组成原理——第三章系统总线_第16张图片

    上述三种通信的共同点

    ​ 一个总线传输周期(以输入数据为例):

    • 主模块发地址、命令 → \to 占用总线
    • 从模块准备数据 → \to 不占用总线    ⟹    \implies 总线空闲
    • 从模块向主模块发数据 → \to 占用总线

  7. 分离式通信

    • 各模块有权申请占用总线
    • 采用同步方式通信,不等对方回答
    • 各模块准备数据时,不占用总线
    • 总线被占用时,无空闲

       ⟹    \implies 充分提高了总线的有效占用

    一个总线传输周期:

    • 子周期1——主模块申请占用总线,使用完后即放弃总线的使用权
    • 子周期2——从模块(此时相当于主模块)申请占用总线,将各种信息送至总线上

    分离式通信控制比较复杂,一般在普通微型计算机系统很少采用

你可能感兴趣的:(计算机组成原理)