• 计算机组成:总线


    总线

    之前我已经写过一个总线的总结了:https://www.cnblogs.com/jiading/p/11729807.html

    总线的分类

    数据总线的宽度不一定等于字长,也可以小于,因为可以多次传输来完成一个子的数据传输

    image-20200105220856507.png
    控制总线的输出:储存器读、储存器写、中断确认

    控制总线的输入:中断请求、总线请求

    image-20200105221028596.png

    总线的物理实现

    image-20200105221145541.png
    image-20200105221219791.png

    总线的性能指标

    8086就是地址线和数据线复用的:20根地址线,其中的16条同时作为数据线。总线复用的目的是减小芯片的管脚数,从而减小封装体积

    image-20200105221525172.png

    总线的标准

    image-20200105221745112.png
    image-20200105221818129.png
    USB是总线的一种

    总线结构举例

    image-20200105222022654.png
    image-20200105222049224.png
    这种结构实现了高速设备和低速设备的分离

    VL-BUS是高速总线,连接高速设备;通过标准总线控制器拓展出了ISA、EISA总线用于连接低速设备

    image-20200105222211501.png
    PCI总线可以进行扩展

    image-20200105222300240.png

    总线控制

    总线判优控制

    一条总线同时只能有一对设备进行通信

    image-20200105222629228.png

    • 链式查询

      image-20200105223011481.png
      查询过程:

      1. 某一IO设备从接口通过BR向总线控制部件发送请求
      2. 总线控制部件同意,BG从第一个IO接口开始,如果沿途的IO接口都同意,则请求占用的发出BS表示总线被占用

      原因就是所有接口接在一条线上,总线控制部件并不知道是哪个接口申请占用,所以不能动态调整优先级,只能依靠这种依赖于电路结构的优先级排序

      缺点:

      1. 优先级固定于硬件结构,不能动态调整
      2. 对电路故障特别敏感,特别是BG线

      优点:结构简单、增加设备容易、可靠性拓展比较容易

      一般使用在微机和简单的嵌入式计算机中

    • 计数器定时查询

      image-20200105225138379.png
      总线控制部件中有一个计数器,在总线控制部件收到请求并且确认没有占用时,计数器启动,通过设备地址线(可以视为通过设备地址线传输接口号,所以设备地址线的宽度会限制接口的最大数量)依次查询是哪个接口申请

      优点:

      1. 优先级确定灵活,可以有多种优先级算法
    • 独立请求方式

      不再依次确定申请设备,速度快

      image-20200105225559068.png
      每一个接口都有单独的线路

      排队在总线控制部件内进行,也是很灵活

      缺点就是线用的多

    总线通信控制

    目的是解决通信双方协调配合的问题

    image-20200105225823347.png
    总线通信有四种方式:

    image-20200105225924897.png
    最后挡住的两个字是“潜力”

    • 同步通信

      时钟控制整个过程

      在固定是时间节点必须给出固定的操作

      这个学过

      image-20200105230412201.png

    • 异步通信

      这个也学过

      没有时钟,但是要增加两台线:请求线和应答线

      异步通信分为三种:不互锁、半互锁和全互锁

      不互锁:无论是请求信号还是应答信号,持续发送一段时间之后,无论对方是否接受,都会撤销,所以说异步通信的可靠性有问题

      image-20200105230755849.png
      半互锁:从设备接收到请求后就返回一个信号,主设备收到应答信号之后才撤销请求。但是从设备发出应答信号后,依然不管主设备是否收到

      image-20200105230908644.png
      半互锁部分解决了问题,但是却可能导致主设备在一直收不到从设备返回的应答信号时一直保持请求信号

      全互锁:主设备请求-从设备收到请求后应答-主设备收到应答后撤销请求-从设备发现请求撤销后应答结果

      image-20200105231313184.png

    • 半同步通信

      image-20200105231411789.png
      image-20200105231538139.png
      image-20200105231607848.png

    • 分离式通信

      image-20200105231729873.png
      分离式通信利用了第二部分的总线空闲,这部分空闲其实还是很大的,例如如果要访问硬盘数据的话,由于硬盘速度限制,准备数据的时间远多于剩下两个部分的时间花费

      image-20200105231833709.png
      image-20200105232118096.png
      分离式通信实际上使用的是同步方式通信

  • 相关阅读:
    03-串联
    大数据项目之电商数仓(3电商数据仓库系统)V6.1.3
    JQuery实现tab页
    Java面试题之计算字符/字符串出现的次数
    ios 苹果内购订单验证 --- nodejs实现
    ios 苹果内购订单验证 --- php实现
    Android内购订单验证 --- nodejs实现
    Android内购订单验证 --- php实现
    Google Compute Engine VM自动调节
    php性能优化 --- laravel 性能优化
  • 原文地址:https://www.cnblogs.com/jiading/p/12240864.html
Copyright © 2020-2023  润新知