梁山网站建设公司,网站建设app开发合同范本,重庆在线课程,安卓开发自学教程3.1 总线的基本概念
计算机系统的五大部件之间的互连方式有两种 各部件之间使用单独的连线#xff0c;称为分散连接将各部件连到一组公共信息传输线上#xff0c;称为总线连接 总线是连接多个部件的信息传输线#xff0c;是各部件共享的传输介质。 当多个部件与总线相连时称为分散连接将各部件连到一组公共信息传输线上称为总线连接 总线是连接多个部件的信息传输线是各部件共享的传输介质。 当多个部件与总线相连时如果出现两个或两个以上部件同时向总线发送信息会导致信号冲突传输无效。因此采用总线连接方式在某一时刻只允许有一个部件向总线发送信息而多个部件可以同时从总线上接收相同的信息。 总线传输信息的方式 串行一位一位地传输二进制代码一串二进制代码可在一段时间内逐一传输完成并行干条传输线可以同时传输若干位二进制代码
3.2 总线的分类
3.2.1 片内总线
片内总线是指芯片内部的总线 如在CPU芯片内部寄存器与寄存器之间、寄存器与算逻单元ALU之间都由片内总线连接。
3.2.2 系统总线
系统总线是指CPU、主存、I/O设备(通过I/O接口)各大部件之间的信息传输线。 由于这些部件通常都安放在主板或各个插件板(插卡)上故又称板级总线(在一块电路板上各芯片间的连线)或板间总线。按系统总线传输信息的不同又可分为三类 数据总线 数据总线用来传输各功能部件之间的数据信息它是双向传输总线其位数与机器字长、存储字长有关数据总线的位数称为数据总线宽度 地址总线 地址总线主要用来指出数据总线上的源数据或目的数据在主存单元的地址或I/O设备的地址。地址总线是单向传输的 地址总线上的信息用来指明要访问的存储单元或I/O端口的地址由CPU发出 地址线的位数与存储单元的个数有关 如地址线20根存储单元个数为220 控制总线 控制总线是用来发出各种控制信号的传输线。通常对任一控制线而言它的传输是单向的由CPU发出控制信号对于控制总线总体来说可认为是双向的各设备通过控制总线向CPU发出请求。控制总线还起到监视各部件状态的作用。对CPU而言控制信号既有输出又有输人。
3.2.3 通信总线
通信总线用于计算机系统之间或计算机系统与其他系统之间的通信。按传输方式可分为两种 串行通信 指数据在单条1位宽的传输线上一位一位地按顺序分时传送。串行通信适宜于远距离传送 并行通信 指数据在多条并行1位宽的传输线上同时由源传送到目的地。并行通信适宜于近距离的数据传输在短距离内并行数据传送速率比串行数据传送速率高得多。
3.3 总线特性及性能指标
3.3.1 总线特性
总线的物理实现 总线由许多导线直接印制在电路板上延伸到各个部件各个部件通过插头与水平方向总线插槽连接 总线的特性 (1)机械特性 为了保证机械上的可靠连接机械特性是指总线在机械连接方式上的一些性能如插头与插座的几何尺寸、形状、引脚的个数以及排列的顺序等 (2电气特性 为了确保电气上正确连接电气特性是指总线的每一根传输线上信号的传递方向和有效的电平范围。通常规定由CPU发出的信号称为输出信号送入CPU的信号称为输入信号。控制总线的每一根都是单向的但从整体看有输入也有输出。 (3功能特性 为保证正确地连接不同部件功能特性是指总线中每根传输线的功能如地址总线用来指出地址码数据总线用来传递数据控制总线发出控制信号 (4)时间特性 为保证正确地连接不同部件时间特性是指总线中的任一根线在什么时间内有效。每条总线上的各种信号互相存在一种有效时序的关系时间特性一般可用信号时序图来描述。
3.3.2 总线性能指标
总线宽度 通常是指数据总线的根数用bit(位)表示一位一根线 总线带宽 总线带宽可理解为总线的数据传输速率即单位时间内总线上传输数据的位数通常用每秒传输信息的字节数来衡量单位可用MBps(兆字节每秒)表示。如总线工作频率为33 MHz总线宽度为32位(4B)则总线带宽为33× (32÷8)132 MBps。 时钟同步/异步 总线上的数据与时钟同步工作的总线称为同步总线与时钟不同步工作的总线称为异步总线。 总线复用 一条信号线上分时传送两种信号。为了提高总线的利用率优化设计特将地址总线和数据总线共用一组物理线路在这组物理线路上分时传输地址信号和数据信号即为总线的多路复用。 信号线数 地址总线、数据总线和控制总线三种总线数的总和。 总线控制方式 包括突发工作、自动配置(设备即插即用自动配置驱动程序)、仲裁方式、逻辑方式、计数方式等。其他指标 负载能力电源电压总线宽度能否扩展… 总线的负载能力即驱动能力是指当总线接上负载后总线输入输出的逻辑电平是否能保持在正常的额定范围内。
3.3.3 总线标准
所谓总线标准可视为系统与各模块模块与模块之间的一个互连的标准界面实现了对部件的隔离即界面的任一方只需根据总线标准的要求完成自身一方接口的功能要求而无须了解对方接口与总线的连接要求即可连上总线进行使用按总线标准设计的接口可视为通用接口。采用总线标准可以为计算机接口的软硬件设计提供方便使各个模块的接口芯片设计相对独立对软件设计而言,更有利于接口软件的模块化设计。目前流行的总线标准 ISA总线工业标准总线EISA总线扩展工业标准总线VESA(VL-BUS)总线 VESA(VL-BUS)总线局部总线标准局部总线在系统外为两个以上模块提供的高速传输信息通道 PCI总线 现代计算机最常用的总线之一 AGP总线 显卡专用的局部总线 RS-232C总线USB总线通用串行总线
3.4 总线结构
总线结构通常分为单总线结构和多总线结构
3.4.1 单总线结构
单总线结构中所有的设备共享同一个总线易发生总线争用不允许两个以上的部件同一时刻向总线传输信息
3.4.2 多总线结构
双总线结构 将速度较低的I/O设备从单总线上分离出来形成主存总线与I/O总线分开的结构。通道是一个具有特殊功能的处理器 CPU将一部分功能下放给通道使其对I/O设备具有统一管理的功能以完成外部设备与主存储器之间的数据传送其系统的吞吐能力可以相当大。通道可以进行数据格式的转换与数据校验 三总线结构 主存总线用于CPU与主存之间的传输I/О总线供CPU与各类I/O设备之间传递信息DMA总线用于高速I/O设备与主存之间直接交换信息。在三总线结构中任一时刻只能使用一种总线。 主存总线与DMA总线不能同时对主存进行存取I/O总线只有在CPU执行I/O指令时才能用到。 处理器与Cache之间有一条局部总线 将CPU与Cache或与更多的局部设备连接。Cache的控制机构不仅将Cache连到局部总线上而且还直接连到系统总线上这样Cache可通过系统总线与主存传输信息且I/O设备与主存之间的传输也不必通过CPU。 扩展总线将局域网小型计算机接口(SCSI)、调制解调器(Modem)以及串行接口等都连接起来通过这些接口又可与各类I/O设备相连因此它可支持相当多的I/O设备。扩展总线通过扩展总线接口与系统总线相连可实现这两种总线之间的信息传递由于高速I/O设备与低速I/O设备都连接在扩展总线上会降低扩展总线的工作效率 四总线结构 在高速总线上挂接一些高速I/O设备它们通过Cache控制机构中的高速总线桥或高速缓冲器与系统总线和局部总线相连使得这些高速设备与CPU更密切一些较低速的设备仍挂在扩展总线上并由扩展总线接口与高速总线相连。可以提高效率
3.4.3 总线结构举例
略
3.5 总线控制
3.5.1 总线判优控制
总线上所连接的各类设备按其对总线有无控制功能可分为主设备(模块)和从设备(模块)两种。 主设备对总线有控制权从设备只能响应从主设备发来的总线命令对总线没有控制权。总线上信息的传送是由主设备启动的 首先由主设备发出总线请求信号 若多个主设备同时要使用总线时就由总线控制器的判优、仲裁逻辑按一定的优先等级顺序确定哪个主设备能使用总线。只有获得总线使用权的主设备才能开始传送数据。 总线判优控制可分为 集中式 将控制逻辑集中在一处(如在CPU中) 分布式 将控制逻辑分散在与总线连接的各个部件或设备上 常见的集中控制优先权仲裁方式 (1)链式查询 控制总线中有3根线用于总线控制 BS总线忙BR总线请求BC总线同意 总线同意信号BC是串行地从一个I/O接口送到下一个I/O接口。如果BC到达的接口有总线请求BG信号就不再往下传该接口获得了总线使用权并建立总线忙BS信号表示它占用了总线。 链式查询中离总线控制部件最近的设备具有最高的优先级。这种方式的特点 只需很少几根线就能按一定优先次序实现总线控制很容易扩充设备对电路故障很敏感如果其中一个I/O接口故障则不能正常工作优先级别低的设备可能很难获得请求优先级固定效率慢按次序一个接口一个接口传递信号 (2)计数器定时查询 多了一组设备地址线少了一根总线同意线BG。总线控制部件接到由BR送来的总线请求信号后在总线未被使用(BS0)的情况下总线控制部件中的计数器开始计数并通过设备地址线向各设备发出一组地址信号。当某个请求占用总线的设备地址与计数值一致时便获得总线使用权此时终止计数查询。这种方式的特点 计数可以从“0”开始 一旦设备的优先次序被固定设备的优先级就按0,1,…,n的顺序降序排列且固定不变 计数也可以从上一次计数的终止点开始即是一种循环方法 设备使用总线的优先级相等 计数器的初始值还可由程序设置 优先次序可以改变 这种方式对电路故障不如链式查询方式敏感增加了控制线(设备地址)数控制较复杂 (3)独立请求方式 每一台设备均有一对总线请求线BR和总线同意线BG。当设备要求使用总线时便发出该设备的请求信号。总线控制部件中有一排队电路可根据优先次序确定响应哪一台设备的请求。这种方式的特点 响应速度快优先次序控制灵活(通过程序改变)控制线数量多总线控制更复杂。 链式查询中仅用两根线确定总线使用权属于哪个设备在计数器查询中大致用log2nlog_2nlog2n根线其中n是允许接纳的最大设备数独立请求方式需采用2n1根线还要一个BS。
3.5.2 总线通信控制
将完成一次总线操作的时间称为总线周期总线周期可分 ①申请分配阶段 由需要使用总线的主模块(或主设备)提出申请经总线仲裁机构决定下一传输周期的总线使用权授于某一申请者。 ②寻址阶段 取得了使用权的主模块通过总线发出本次要访问的从模块(或从设备)的地址及有关命令启动参与本次传输的从模块。 ③传数阶段 主模块和从模块进行数据交换数据由源模块发出经数据总线流入目的模块。 ④结束阶段 主模块的有关信息均从系统总线上撤除让出总线使用权。 总线通信控制主要解决通信双方如何获知传输开始和传输结束以及通信双方如何协调如何配合。总线通信的方式 同步通信异步通信半同步通信分离式通信。 同步通信 通信双方由统一时标控制数据传送称为同步通信。同步通信规定了在每个时钟必须完成的任务必须在限定的时间内完成规定的要求 异步通信 异步通信允许各模块速度的不一致性采用应答方式(又称握手方式)即当主模块发出请求(Request)信号时一直等待从模块反馈回来“响应(Acknowledge)信号后才开始通信。异步通信的应答方式分为 不互锁 主模块发出请求信号后不必等待接到从模块的回答信号而是经过一段时间便撤销其请求信号从模块接到请求信号后在条件允许时发出回答信号并且经过一段时间自动撤销回答信号。通信双方并无互锁关系。 半互锁 主模块发出请求信号必须待接到从模块的回答信号后再撤销其请求信号有互锁关系从模块在接到请求信号后发出回答信号不必等待获知主模块的请求信号已经撤销而是隔一段时间后自动撤销其回答信号无互锁关系。由于一方存在互锁关系,一方不存在互锁关系故称半互锁方式。 全互锁 主模块发出请求信号必须待从模块回答后再撤销其请求信号从模块发出回答信号必须待获知主模块请求信号已撤销后再撤销其回答信号。双方存在互锁关系故称为全互锁方式。 半同步通信 半同步通信既保留了同步通信的基本特点也有异步通信的特点半同步通信增设了一条“等待”( WAIT)响应信号线采用插入时钟(等待)周期的措施来协调通信双方的配合问题。当没有准备好如数据没有准备好就发出 WAIT 响应信号主设备进行等待 分离式通信 分离式通信过程 ①主模块通过传输总线向从模块发送地址和命令。②从模块按照命令进行读数据的必要准备。③从模块经数据总线向主模块提供数据。 将一个传输周期(或总线周期)分解为两个子周期。 在第一个子周期中,主模块A在获得总线使用权后将命令、地址以及其他有关信息发到系统总线上经总线传输后由有关的从模块B接收下来。一旦发送完立即放弃总线使用权以便其他模块使用。在第二个子周期中当B模块收到A模块发来的有关命令信号后经选择、译码、读取等一系列内部操作将A模块所需的数据准备好便由B模块申请总线使用权一旦获准B模块便将A模块的编号、B模块的地址、A模块所着的数据等一系列信息送到总线上供A模块接收。 特点 ①各模块均有权申请占用总线。②在得到总线使用权后主模块在限定的时间内向对方传送信息采用同步方式传送不再等待对方的回答信号。主从模块身份可以互换③各模块在准备数据的过程中都不占用总线④总线被占用时不存在空闲等待时间充分地利用了总线的有效占用