计算机组成与系统结构 陈泽宇 副教授
第1章 计算机系统概论 第2章 运算方法和运算器 第3章 存储系统 第4章 指令系统 第5章 中央处理器(CPU) 第6章 总线系统 第7章 输入输出(I/O)系统 第8章 并行计算机系统
第6章 总线系统 总线是计算机系统中多个功能部件之间进行数据传送的公共通路 提供了信息传输和功能扩展的通道 采用总线结构方式,主要是由于其在系统设计、生产、使用和维护方面具有诸多的优越性
6.1 总线系统概述 6.1.1 总线的基本概念 6.1.2 总线的内部结构 6.1.3 总线接口 6.1.4 总线的连接方式
数字计算机是由若干个系统功能部件构成的 这些部件连接在一起才能形成完整的计算机系统 总线是构成计算机系统的互连机构 是多个系统功能部件之间进行数据传送的公共通路 由系统中各个功能部件所共享 总线的特点在于其公用性 可同时挂接多个部件或设备 借助于总线连接,计算机在各系统功能部件之间实现地址、数据和控制信息的交换,并在争用资源的基础上进行工作
一个单处理器系统中的总线,大致可分为三类: ⑴内部总线 ⑵系统总线 ⑶外部总线
⑴内部总线 CPU内部连接各寄存器及运算部件的总线
⑵系统总线 CPU同计算机系统的其他功能部件(如存储器、通道等)连接的总线 系统总线有多种标准接口 从16位的ISA,到32/64位的PCI、AGP乃至PCI Express 系统总线中包括局部总线 局部总线是系统总线向多层结构发展的结果
⑶外部总线 用来连接外部设备或其他计算机的总线,又称为I/O接口 如用于连接并行打印机的Centronics总线 用于串行通信的RS-232总线、通用串行总线USB和IEEE-1394 用于硬磁盘接口的IDE、SCSI总线等
6.1.1 总线的基本概念 1. 总线的特性 2. 总线的标准化 3. 总线的主要参数
1. 总线的特性 1)物理特性 2)功能特性 3)电气特性 4)时间特性
1)物理特性 指总线的物理连接方式 包括总线的根数,总线的插头插座的形状,引脚线的排列方式等
2)功能特性 描述总线中每一根线的功能 地址总线的宽度指明了总线能够直接访问的存储器地址空间范围; 数据总线的宽度指明了访问一次存储器或外设所能交换数据的位数; 控制总线包括CPU发出的各种控制命令(如存储器读/写、I/O读/写等),请求信号与仲裁信号,外设与CPU的时序同步信号,中断信号,DMA控制信号等等
3)电气特性 定义每一根线上信号的传递方向及有效电平范围 送入CPU的信号叫输入信号(IN),从CPU发出的信号叫输出信号(OUT) 例如,IBM PC/XT总线的A0~A19是地址输出线,D0~D7是双向数据线,既可作为数据输入线又可作为数据输出线 总线的电平都符合TTL电平的定义
4)时间特性 定义每根线在什么时间有效 即规定总线上各信号有效的时序关系
2. 总线的标准化 对于相同的指令系统、相同的功能, 不同厂家生产的功能部件在具体实现上几乎没有相同的 但各厂家生产的相同功能部件却可以互换使用 这是由于它们都遵守了相同的系统总线要求 IBM PC兼容微机系统中采用的标准总线 ISA总线(16位,带宽16MB/s) EISA总线(32位,带宽33MB/s) VESA总线(32位,带宽133MB/s) PCI总线(64位,带宽533MB/s)
3. 总线的主要参数 1)总线宽度 2)总线频率 3)总线带宽
1)总线宽度 总线宽度 总线能同时传送的数据的二进制位(bit)数 如16位总线、32位总线指的就是总线具有16位或32位的数据传输能力
2)总线频率 总线频率 总线的实际工作频率 也就是一秒钟传输数据的次数 是总线工作速度的一个重要参数 工作频率越高,速度越快 总线频率通常用MHz表示 如33MHz、100 MHz、400 MHz、800 MHz等 1Hz = 1/s
3)总线带宽 总线带宽 总线本身所能达到的最高数据传输速率 单位是兆字节每秒(MB/s) 是衡量总线性能的重要指标 总线带宽越宽,传输效率也就越高 总线带宽与总线宽度和总线频率的关系:
【例6-1】 ⑴某总线在一个总线周期中并行传送32位数据,假设一个总线周期等于一个总线时钟周期,总线时钟频率为33MHz,总线带宽是多少 【例6-1】 ⑴某总线在一个总线周期中并行传送32位数据,假设一个总线周期等于一个总线时钟周期,总线时钟频率为33MHz,总线带宽是多少? ⑵如果一个总线周期中并行传送64位数据,总线时钟频率升为66MHz,总线带宽是多少? 【解】⑴总线带宽 =(32bit/8bit/B)×33MHz =(32bit/8bit/B)×33M/s=132MB/s ⑵ 总线带宽 =(64bit/8bit/B)×66MHz =(64bit/8bit/B)×66M/s=528MB/s
6.1.2 总线的内部结构 1.早期总线的内部结构 2.当代总线的内部结构
1.早期总线的内部结构 实际上是处理器芯片引脚的延伸,是处理器与I/O设备适配器的通道 FLASH演示 这种简单的总线一般由 50~100根信号线组成 按功能特性可分为: 数据(总)线、 地址(总)线、 控制(总)线
1)数据总线 数据总线(Data Bus,DB)是在计算机系统各部件之间传输数据信息的信号线,数据总线是双向的 数据线的根数称为数据总线的宽度,通常为8、16、32或64 由于每根数据线每次传送1位二进制数,所以数据线的根数决定了每次能同时传送的二进制的位数 数据总线的宽度是表现系统总体性能的关键因素之一 如果数据总线的宽度为8位,而指令长度为16位,那么在每个指令周期中需要两次访问存储器才能取回完整的16位指令
2)地址总线 地址总线(Address Bus,AB)是在计算机系统各个部件之间传输地址信息的信号线 用来规定数据总线上的数据来自何处或将被送往何处 地址总线是单向的 如果CPU要从存储器中读取一个信息, 将要读取的信息的存储器地址放到地址总线上 从给定的存储器地址中取出所需要的信息 地址总线的宽度决定了计算机系统能够使用的最大的存储器容量
3)控制总线 控制总线(Control Bus,CB)是在计算机系统各部件之间传输控制信息的信号线 作用是对数据总线、地址总线的访问及使用实施控制 控制线中每一根线都是单向的 用来指明数据传送的方向、中断请求和定时控制等 控制总线上传输的控制信息,其作用就是在计算机系统各个部件之间发送操作命令和定时信息 命令信息规定了要执行的具体操作 定时信息则规定了数据信息和地址信息的时效性
随着计算机技术的发展,这种简单总线结构逐渐暴露出一些不足: 第一,CPU是总线上的惟一主控者 即使后来增加了具有简单仲裁逻辑的DMA控制器以支持DMA传送,但是仍不能满足多CPU环境的要求 第二,总线信号是CPU引脚信号的延伸 所以总线结构与CPU紧密相关,通用性较差
2.当代总线的内部结构 当代总线是一些标准总线 FLASH演示 追求与结构、CPU、 技术无关的开发 标准 满足包括多CPU在 内的主控者环境 需求
在当代总线结构中, CPU与Cache作为一个模块与总线相连 系统中允许存在多个这样的处理器模块 总线控制器负责在几个总线请求者之间进行协调与仲裁 整个总线结构分成四个部分: 1)数据传送总线 2)仲裁总线 3)中断和同步总线 4)公用线
1)数据传送总线 由地址线、数据线、控制线组成,结构与早期总线类似,有32条地址线,32或64条数据线 2)仲裁总线 包括总线请求线和总线授权线 3)中断和同步总线 处理带优先级的中断操作,包括中断请求线和中断认可线 4)公用线 包括时钟信号线、电源线、地线、系统复位线以及加电或断电的时序信号线等
6.1.3 总线接口 外围设备种类繁多,速度各异,不可能简单地把外围设备全部连接到CPU上, 而是将外围设备同适配器(Adapter)部件连接起来 通过适配器实现高速CPU与低速外设间工作速度上的匹配和同步 完成计算机和外设间的所有数据传送和控制 适配器通常称为接口(Interface)
接口就是指CPU和主存、外围设备之间通过总线进行连接的逻辑部件 接口部件在动态连接的两个部件之间起着“转换器”的作用,以便实现彼此之间的信息传送 一个典型的计算机系统具有不同类型的外围设备,因而会有不同类型的接口
CPU、接口和外围设备间的连接关系 FLASH演示 外围设备本身带有设备控制器 通过接口接收来自CPU的信息,并将信息传送到设备 或者从设备中读出信息传送到接口,由接口传给CPU 由于外围设备种类繁多且速度不同,因而每种设备都有适应自己工作特点的设备控制器 外围设备本身与它自己的控制电路,统称为外围设备
为使所有外围设备彼此兼容并能在一起工作,CPU规定了不同的信息传送控制方法 不管什么外围设备,只要选用某种数据传送方法,并按其规定通过总线和主机连接,就可以进行信息交换 通常在总线和每个外围设备的设备控制器之间,使用一个适配器(接口)电路来保证外围设备用计算机系统特性所要求的形式发送和接收信息 接口逻辑通常做成标准化的部件,称为标准接口 一个标准接口可连接一个设备,也可连接多个设备
典型的接口通常具有如下功能: 1)控制 接口靠程序的指令信息来控制外围设备的动作,如启动、关闭设备等 2)缓冲 接口在外围设备和计算机系统其他部件间起缓冲器作用,用以补偿各种设备在速度上的差异 3)状态 接口监视外围设备的工作状态并保存状态信息,供CPU查询外围设备时进行分析之用
4)转换 接口可完成所要求的数据转换工作,如并-串转换或串-并转换,数据能在外围设备和CPU间正确传送 5)整理 接口可完成一些特别的功能,如在需要时修改字计数器或当前主存地址寄存器 6)程序中断 每当外围设备向CPU请求某种动作时,接口即向CPU发出中断请求信号;如果设备完成了一个操作或设备发生错误,接口也会产生中断
事实上,一个适配器必然有两个接口: 一是和系统总线的接口 CPU和适配器进行数据交换 采用并行方式 二是和外设的接口 适配器和外设进行数据交换 可采用并行方式,也可采用串行方式 根据外围设备采用的数据交换方式的不同,适配器(接口)可分为串行数据接口和并行数据接口两大类
6.1.4 总线的连接方式 总线的排列布置、总线与其他各类部件的连接方式,对计算机系统性能而言尤其重要 根据连接方式的不同,单机系统中采用的总线结构可分成三种基本类型:单总线结构、双总线结构、三总线结构
1. 单总线结构 在许多单处理器的计算机中, 使用一条单一的系统总线来 连接CPU、主存和I/O设备 FLASH演示 要求连接到总线上的逻辑部件都必须高速运行, 以便在某些设备需要使用总线时能迅速获得总线控制权,当不再使用总线时也能迅速放弃总线控制权 否则,由于一条总线由多个功能部件共用,有可能导致很大的时间延迟
在单总线系统中,对输入/输出设备的操作与主存的操作方法完全一样 当CPU把指令的地址字段送到总线上时, 如果该地址字段对应的地址是主存地址,则主存予以响应,在CPU和主存间发生数据传送 数据传送的方向由指令操作码决定 如果该地址字段对应的地址是外围设备地址,则外围设备予以响应,在CPU和对应的外围设备间发生数据传送 数据传送的方向也由指令操作码决定
在单总线系统中,某些外围设备也可以指定地址 外围设备通过与CPU中的总线控制部件交换控制信号的方式占有总线 一旦外围设备得到总线控制权,就可以向总线发送地址信号,指定要与哪一个设备进行信息交换 如果一个由外围设备指定的地址对应于一个主存单元,则主存予以响应 于是在主存和外设间将进行直接存储器传送(Direct Memory Access,DMA)
单总线结构的优点 容易扩展成多CPU系统 只要在系统总线上挂接多个CPU即可 单总线结构的缺点 由于所有逻辑部件都挂在同一个总线上,因此总线只能分时工作 即某一个时间只能允许一对部件之间传送数据 这就使信息传送的吞吐量受到限制
2. 双总线结构 双总线系统结构在CPU和主存间设置了一组高速的存储总线 FLASH演示 使CPU可通过专用的 存储总线与存储器 交换信息,减轻系 统总线的负担 同时主存仍可通过系统总线与外设进行DMA操作,而不必经过CPU 当然,这种双总线系统是以增加硬件为代价的
3. 三总线结构 三总线系统结构是在双总线系统基础上增加I/O总线形成的 FLASH演示 系统总线是CPU、主存 和通道(IOP)之间进 行数据传送的公共通路 I/O总线是多个外围设备与通 道之间进行数据传送的公共通路
DMA方式中,外设与主存间直接交换数据而不经过CPU,从而减轻了CPU对数据输入输出的控制 通道方式I/O可进一步提高CPU的效率 通道实际上是一台具有特殊功能的处理器,又称为IOP(I/O Processor,I/O处理器) 分担CPU的一部分功能,实现对外设的统一管理,完成外设与主存之间的数据传送 由于增加了IOP,整个系统的工作效率可以大大提高 然而,这是以增加更多的硬件为代价的
本讲到此结束,谢谢!