一、基本概念
定义
数字计算机是由若干系统功能部件构成的,这些系统功能部件在一起工作才能形成一个完整的计算机系统。
计算机的若干功能部件之间不可能采用全互联形式。
需要有公共的信息通道,即总线。
总线是构成计算机系统的互联机构,是是多个系统功能部件之间进行数据传送的公共通路。借助于总线连接,计算机在各系统功能部件之间实现地址、数据和控制信息的交换,并在争用资源的基础上进行工作。
分类
内部总线: CPU内部连接各寄存器及运算器部件之间的总线
系统总线: 外部总线或板级总线(数据总线DB、地址总线AB、控制总线CB),CPU同计算机系统的其它高速功能部件如存储器、通道互相连接的总线,来构成完整的微机系统
I/O总线: 中低速I/O设备相互连接的总线
特征
物理特性: 总线的物理连接方式(根数、插头、插座形状、引脚排列方式等)
功能特性: 每根线的功能(数据、地址、控制等)
电气特性: 每根线上信号的传递方向及有效电平范围(单双向、高/低电平有效)
时间特性: 规定了每根总线在什么时间有效。规定了总线各信号有效的时序关系,CPU才能正确区分及使用
性能指标
总线宽度: 数据线的根数(bit)
总线带宽: 总线本身所能达到的最高传输速率,单位是兆字节每秒(MB/s),实际带宽会受到总线布线长度、驱动器性能等的影响
时钟: 同步(互联的所有部件或设备通过时钟同步)、异步(依靠部件或设备内部定时操作)
总线复用: 数据和地址在同一根总线上进行传输
信号线数: 数据线、地址线、控制线的总和
总线控制方式: 串行链接(按照物理位置排优先级)、定时查寻(计数改变优先级次序)、独立请求
例题:
某总线在一个时钟周期中并行传送4字节的数据,假设一个总线周期等于一个总线时钟周期,总线时钟频率为33MHz,总线带宽为多少?
解:4B × 33MHz = 132MB/s
如果一个总线周期中并行传送64位数据,总线时钟频率为66MHz,总线带宽是多少?
解:(64b ÷ 8)× 66MHz = 528MB/s
总线标准
标准规定了总线的机械结构、功能结构和电气规范,按照总线标准设计的接口可视为通用接口。
正式标准:由国际标准化组织指定
工业标准:由行业、大公司提出
二、总线连接方式
单总线结构
使用一条单一的系统总线来连接CPU、内存和I/O设备
特点: 要求连接到总线上的部件必须高速运行,否则可能导致很大的时间延迟
传送指令: CPU取一条指令时,把程序计数器PC中的地址和控制信息一同送至总线上,该地址不仅加至主存,同样加至总线上的所有外围设备,只有与出现在总线上的地址相对应的设备执行数据传送操作
传送数据: 取出指令之后,CPU将检查操作码。操作码规定了对数据要执行什么操作,以及数据是流进CPU还是流出CPU
I/O操作: 如果该指令地址字段对应的是外围设备地址,则外围设备译码器予以响应,从而在CPU和与该地址相对应的外围设备之间发生数据传送,而数据传送的方向由指令操作码决定
单总线结构容易扩展成多CPU系统
优点: 结构简单,成本低,易于接入新的设备
缺点: 带宽低、负载重,多个部件只能争用唯一的总线,且不支持并发传送操作
双总线结构
在CPU和主存之间专门设置了一组高速的存储总线,使CPU可通过专用总线与存储器交换信息,并减轻了系统总线的负担
三总线结构
在双总线系统的基础上增加I/O总线,IOP(I/O处理器)可以分担一部分CPU的功能,以实现对外设的统一管理及外设与主存之间的数据传送
I/O处理器可以对数据进行存储
多总线结构
多总线结构采用多条总线
CPU总线: 连接CPU和cache
系统总线: 连接CPU与主存
高速总线: 连接高速LAN(100Mb/s局域网)、视频接口、图形接口、SCSI接口(支持本地磁盘驱动器和其他外设)、Firewire接口(支持大容量I/O设备)。通过扩充总线接口与扩充总线相连,扩充总线上可以连接串行方式工作的I/O设备
桥: 是一种具有缓冲、转换、控制功能的逻辑电路。不类型的桥扩展出不同层次的总线,并分别连接高速、中速和低速设备。
特点:多总线结构体现了高速、中速、低速设备连接到不同的总线上同时进行工作,以提高总线的效率和吞吐量,而且处理器结构的变化不影响高速总线
三、总线的内部结构
早期总线结构
实际上是处理器芯片引脚的延伸,是处理器与I/O设备适配器的通道。
按功能可分为:地址线、数据线、控制线
特点: 地址线是单向的,用来传送主存与设备的地址,数据线是双向的,用来传送数据,控制线一般而言对每一根线是单向的,用来指明数据传送的方向、中断控制和定时控制等
不足之处: CPU是总线上唯一的主控者;总线信号是CPU引脚信号的延伸,故总线结构与CPU紧密相关,通用性较差
当代总线结构
CPU和它私有的cache一起作为一个模块与总线相连。系统中允许多个这样的处理器模块
总线控制器完成多个总线请求者之间的协调与仲裁
整个系统分为四个部分
数据传送总线: 由地址线、数据线、控制线组成。其结构与简单总线相似,但一般是32条地址线,32或64条数据线。为了减少布线,64位数据的低32位数据线常常和地址线采用复用方式
仲裁总线: 包括总线请求线和总线授权线
中断和同步总线: 用于处理带优先级的中断操作,包括中断请求线和中断认可线
公用线: 包括时钟信号线、电源线、地线、系统复位线以及加电或断电的时序信号线等
总线结构示例
南桥、北桥:连接总线,作用是信号速度缓冲、电平转换和控制协议的转换
CPU总线:包含64位数据线和32位地址线的同步总线,(传统观点看)可看作CPU引脚的延伸
PCI总线:32位(或64位)的同步总线,地址线和数据线分时复用,连接高速的I/O模块,如图形显示适配器、硬盘控制器等,采用集中式仲裁方式
ISA总线:连接低速I/O设备,还通过片级总线和时钟/日历、ROM、键盘鼠标等芯片连接
有一个核心逻辑芯片组
四、总线接口
I/O功能模块通常简称为I/O接口,也叫适配器
I/O接口是CPU和主存、外设之间通过总线进行连接的逻辑部件
通过适配器可以实现高速CPU与低速外设之间工作速度上的匹配和同步,并完成计算机和外设之间所有的数据传送和控制。适配器通常简称接口
信息传送方式
基本有三种:串行传送、并行传送、分时传送
早期出于速度和效率上的考虑,系统总线采用并行传送方式
总线接口
两个接口:
- 与系统总线相连
- 控制寄存器发送命令 状态寄存器获取外设或I/O设备状态信息
- 与外围设备相连
- I/O端口:I/O控制器中CPU能够访问的各类寄存器
接口功能:
- 控制:接口模块靠指令信息来控制外围设备的动作,如启动、关闭设备等
- 缓冲:接口模块在外围设备和计算机系统其他部件之间用作为一个缓冲器,以补偿各 种设备在速度上的差异
- 状态:接口模块监视外围设备的工作状态并保存状态信息。状态信息包括“准备就 绪”、“忙”等,供CPU询问外围设备时进行分析
- 转换:接口模块可以完成任何要求的数据转换,如串并、并串、模拟数字信号转换等
- 整理:接口模块可以完成一些特别的功能,例如:修改字计数器、内存地址寄存器
- 程序中断:每当外围设备向CPU请求某种动作时,接口模块发出中断请求信号到CPU
接口模块分为并行数据接口和串行数据接口两大类
总线仲裁
每次总线操作,只能有一个主方占用总线控制权,但同一时间内可以有多个从方。
主方:可以启动一个总线周期,如CPU模块,可以做主方也可以做从方;
从方:只能响应主方的请求,如存储器模块只能用作从方。
为了解决多个主设备同时竞争总线控制权的文体,必须有总线仲裁部件。
一般采用优先级或公平策略进行仲裁。
优先级:I/O模块通常采用优先级策略
公平策略:多处理器系统中对各CPU模块的总线请求采用公平的原则来处理
仲裁方式:
总线定时
总线的信息传送过程分为5个阶段:请求总线、总线仲裁、寻址、信息传送、状态返回
为了同步主、从双方的操作,必须置顶定时协议。定时是指时间出现在总线上的时序关系
- 同步定时:事件出现在总线上的时刻由总线时钟信号来确定,总线中包含时钟信号线
- 同步定时适用于总线长度较短、各功能模块在存取时间上相近的情况。同步定时对于任何两个功能模块的通信都给予相同的时间安排,按照最慢的模块来设置公共时钟,因此差别大时,会损失总线效率
- 异步定时:后一事件出现在总线上的时刻取决于前一事件的出现,即建立在应答式或互锁机制的基础上
- 异步定时的优点是总线周期长度可变,允许快速和慢速的功能模块都能连接到同一总线上,但这以增加总线的复杂性和成本为代价。
- 异步通信的三种方式:
- 非互锁:主模块发出请求信号后,不等待接到从模块的回答信号,而是经过一段时间,便撤消其请求信号;从设备接到请求信号后,在条件允许时发出回答信号,并且经过一段时间,自动撤消回答信号
- 半互锁:主模块发出请求信号,待接到从模块的回答信号后再撤消其请求信号,存在着简单的互锁关系:而从模块发出回答信号后,不等待主模块回答,在一段时间后便撤消其回答信号,无互锁关系
- 全互锁:主模块发出请求信号,待从模块回答后再撤其请求信号;从 模块发出回答信号,待主模块获知后,再撤消其回答信号
- 半同步总线定时协定:
- 整体上仍采用同步操作方式,其总线周期是时钟周期的整数倍。不同处在于增加一根联络信号线,由此信号决定时都需要增加时钟周期
总线的数据传送模式
- 读、写操作
- 读操作是由从方到主方的数据传送
- 写操作是由主方到从方的数据传送
- 一般地,主方先以一个总线周期发出命令和从方地址,经过一 定的延时再开始数据传送总线周期。为了提高总线利用率,减 少延时损失,主方完成寻址总线周期后可让出总线控制权,以 使其他主方完成更紧迫的操作。然后再重新竞争总线,完成数 据传送总线周期
- 块传送操作
- 只需给出块的起始地址,然后对固定块长度的数据一个接 一个地读出或写入
- 对于CPU(主方)存储器(从方)而言的块传送,常称为猝发式传送。其块长一般固定为数据线宽度(存储器字长) 的4倍 例如一个64位数据线的总线,一次猝发式传送可达256位
- 写后读、读修改写操作
- 这是两种组合操作,只给出地址一次(表示同一地址), 或进行先写后读操作,或进行先读后写操作
- 前者用于校验目的,后者用于多道程序系统中对共享存储 资源的保护
- 这两种操作和猝发式操作一样,主方掌管总线直到整个操作完成
- 广播、广集操作
- 一般而言,数据传送只在一个主方和一个从方之间进行。 但有的总线允许一个主方对多个从方进行写操作,这种操作称为广播
- 与广播相反的操作称为广集,它将选定的多个从方数据在总线上完成AND或OR操作,用以检测多个中断源
五、常见的总线标准
目前,典型的总线标准有ISA,EISA,VESA,PCI,PCI-Express,AGP,RS-232C, USB等
它们的主要区别是总线宽度,带宽,时钟频率,寻址能力,是否支持突发传送等
- ISA(Industry Standard Architecture) 工业标准体系结构,是IBM公司为PC/AT电脑而制定的总线标准,为16位体系结构, 只能支持16位的I/O设备
- EISA(Extended Industry Standard Architecture) 扩展工业标准结构,是EISA集团为配合32位CPU而设计的总线扩展标准。它吸收了 IBM微通道总线的精华,并且兼容ISA总线
- VESA(Video Electronics Standard Association) 32位标准的计算机局部总线,是针对多媒体PC要求高速传送活动图像的大量数据应运而生
- PCI(Peripheral Component Interconnect) 外设部件互连标准,它是目前个人电脑中使用最为广泛的接口,几乎所有的主板产品上都带有 这种插槽
- PCI-E(PCI-Express) 一种通用的总线规格,它由Intel所提倡和推广,其最终的设计目的是为了取代现有电脑系统内 部的总线传输接口
- AGP(Accelerated Graphics Port) 加速图像接口,是英特尔推出的一种3D标准图像接口,它能够提供四倍于PCI的效率
- USB(Universal Serial Bus) 通用串行总线,是由Intel、 Compaq、Digital、IBM、Microsoft、NEC、Northern Telecom等7家世界著名的计算机和通信公司共同推出的一种新型接口标准。它基于通用 连接技术,实现外设的简单快速连接,达到方便用户、降低成本、扩展PC连接外设范围 的目的
- SCSI(Small Computer System Interface) 小型计算机系统接口,是种较为特殊的接口总线,具备与多种类型的外设进行通信(硬盘, 光驱,打印机等)
- SATA(Serial Advanced Technology Attachment) 串行高级技术附件,一种基于行业标准的串行硬件驱动器接口,是由Intel、IBM、Dell、 APT、Maxtor和Seagate公司共同提出的硬盘接口规范
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)