计算机组成原理
第三章 系统总线
重点:
①有关总线的基本概念;
②如何克服总线的瓶颈;
③如何对总线进行管理,包括判优控制和通信控制。
难点:
总线的通信控制,既要解决通信双方如何获知传输的开始和结束,又要使通信双方按规定的协议互相协调来完成通信任务。
一、总线的概念
1、总线
物理上:一根根导线的集合;
逻辑上:分为地址总线、控制总线和数据总线。
(1)地址总线
地址总线的宽度直接决定了可以访存的内存的地址单元的个数。
例:
一个CPU有n根地址线,则地址总线宽度为n,
那么寻址的内存单元有多少?
答:
2^n
(2)数据总线
数据总线的宽度决定了CPU和外界的数据传送速度。
即:
8根数据总线一次可以传送一个8位二进制数据(一个字节);
16根数据总线一次可传送两个字节。
2、总线的基本概念
(1)什么是总线
总线是连接各个部件的信息传输线,是各个部件共享的传输介质。
注意:某一时刻,只允许一个部件向总线发送信息,而多个部件可以同时从总线上接受相同的信息。
(2)总线上信息的传送
串行
并行
3、总线结构的计算机
(1)面向CPU的双总线结构框图

(2)单总线结构框图
容易造成总线的阻塞。
(3)以存储器为中心的双总线结构框图
二、总线的分类
1、按数据传送方式
并行传输总线、串行传输总线
2、总线的使用范围
计算机总线、测控总线、网络通信总线等
3、按连接部件不同划分
(1)片内总线
芯片内部的总线
(2)系统总线
计算机各部件(CPU、内存、I/O接口)之间的信息传输线
分为:
①数据总线(DB):双向的,与机器字长、存储字长有关。
②地址总线(AB):单向(CPU->存储器),与存储地址、I/O地址有关。
③控制总线(CB):有出(存储器读,写等)、有入(中断请求,总线请求),双向。
(3)通信总线
用于计算机系统之间或计算机系统与其他系统(如控制表、移动通信等)之间的通信。
传输方式:
①串行通信总线:由低位向高位逐位传送,适合远距离,代价低。
②并行通信总线:适合近距离,代价高。
三、总线特性及性能指标
1、总线的特性
(1)机械特性
保证尺寸、形状、管脚数及排列顺序。
(2)电气特性
保证传输方向和有效的电平范围。
(3)功能特性
每根传输线的功能:地址、数据、控制。
(4)时间特性
信号的时序关系。
2、总线的性能指标
(1)总线的宽度
数据线的根数
(2)标准传输率
每秒传输的最大字节数(MBps)
(3)时钟同步/异步
总线上的数据与时钟是同步、还是不同步。
(4)总线复用
一条信息线上分时传送两种信息。如:地址线与数据线复用
(5)信号线数
地址线、数据线和控制线三种总线数的总和
(6)总线控制方式
并发、自动、仲裁、逻辑、计数
(7)其他指标
负载能力等
总线带宽(又称总线的数据传输速率):
单位时间内总线上传输数据的位数,通常以每秒传输信息的字节数来衡量,单位:MBps(兆字节每秒)。
例:
总线工作频率为33MHz,总线宽度32为,求总线带宽?
总线带宽=33x(32/8)=132MBps
四、总线结构
1、单总线结构
(1)特点:系统中只有一条总线,所有设备都以总线设备的形式连接到这条总线上
(2)问题:系统工作效率不高。
(3)原因:
①大量设备竞争总线使用权
②总线设备存在巨大的速度差异。
③影响计算机的扩展能力。
2、多总线结构
(1)双总线结构
优点:减少了CPU等待访问存储器的开销。
①
特点:
CPU把一部分功能下放给通道,另外,将速度较低的I/O设备从单总线上分离出来。
通道:
具有特殊功能的处理器,由通道对I/O统一管理。
②以存储器为中心的双总线结构框图
特点:
保留了I/O设备与存储器交换信息时不经过CPU特点,因为增加了快速的存储总线,提高了传输效率,减轻了系统总线的负担。
(2)三总线结构
DMA:
DMA直接内存存取原理是指外部设备不通过CPU而直接与系统内存交换数据的接口技术。
采用DMA方式,可以解决效率和速度问题
功能:
①能向CPU发出系统保持(HOLD)信号,提出总线接管请求;
②当CPU发出允许接管信号后,负责对总线的控制,进入DMA方式;
③能对存储器寻址及能修改地址指针,实现对内存的读写操作;
④能决定本次DMA传送的字节数,判断DMA传送是否结束
⑤发出DMA结束信号,使CPU恢复正常工作状态。
五、总线控制
1、总线判优控制
(1)基本概念
主设备(模块):对总线有控制权
从设备(模块):响应从主设备发来的总线命令
总线判优控制分为:集中式(链式查询、计数器定时查询、独立请求)、分布式
(2)链式查询方式
特点:
离总线控制部件最近的设备具有最高的优先级。只需很少几根线(3根)就按一定优先次序实现总线控制,且易扩充设备,但对电路敏感,且优先级低的设备可能很难获得请求。
(3)计时器定时查询方式
特点:
当某个请求占用总线的设备地址与计数值一致时,便获得总线使用权,此时终止计数查询。
优先次序可以改变(可由程序设置初始的计数值),电路故障不如链式查询方式敏感,
但增加的控制线(设备地址线),控制较复杂(设备地址线有
(4)独立请求方式
特点:
响应速度快,优先次序控制灵活(通过程序改变),但控制线数量多(2n根),总线控制复杂。
2、总线通信控制
(1)目的
解决通信双方如何获知传输开始和结束,如何协调配合问题。
(2)总线传输周期
**总线周期:**完成一次总线操作的时间。
①申请分配阶段
主模块申请,总线仲裁决定。
②寻址阶段
主模块向从模块给出地址和命令
③传数阶段
主模块和从模块交换数据
④结束阶段
主模块撤销有关信息
(3)总线通信的四种方式
①同步通信
由统一时标控制数据传送
②异步通信
采用应答方式,没有公共时钟标准
③半同步通信
同步、异步结合
④分离式通信
充分挖掘系统总线每个瞬间的潜力
(4)同步通信
①同步式数据输入(外设->CPU传输数据)
②同步式数据输出(CPU传输数据->外设)
③同步通信的优缺点
**优点:**规定明确、统一,模块间的配合简单一致。
**缺点:**主、从模块实际配合属于强制性“同步”,必须按最慢的部件来设置公共时钟,严重影响了总线的工作效率,设计带来局限性,缺乏灵活性。
例:
假设总线的时钟频率为100MHz,总线的传输周期为4个时钟周期,总线的宽度为32位,试求总线的数据传输率。若想提高一倍数据传输率,可采取什么措施?
解:
(1)
方法一:
根据总线的时钟频率为100MHz,得
1个时钟周期为:1/100MHz=0.01us;
总线传输周期为:0.01x4=0.04us;
由于总线的宽度为:32/8=4B(字节);
所以总线的数据传输率为:4B/0.04us=100MBps
方法二:
设总线的数据传输率为x,则
1/100MHz*4:32/8B=1s:x
x=100MBps
总线的传输周期/总线的宽度=1s:总线的数据传输率
(2)
若想提高一倍数据传输率,可以在不改变总线时钟频率的前提下,使数据宽度改为64位,也可以仍保持数据宽度32位,但使总线的时钟频率增加到200MHz。
(5)异步通信
采用应答方式:
当主模块发出请求信号时,一直等待从模块响应信号后,才开始通信。(在主从模块之间增加两条应答线)。
①异步并行:
使用“Ready”和“Strobe”联络信号。
②异步串行
没有同步时钟,也不需要在数据传送过程中传送同步信号。为了确认被传送的字符,约定字符格式为:
1个起始位(低电平),5*-*8个数据位,1个奇偶校验位、1或1.5或2个终止位(高电平)
传送时起始位后面紧跟要传送字符的最低位,每个字符结束是一个高电平的终止位。
起始位至终止位构成1帧。两帧之间的间隔可以是任意长度的。
异步串行通信的数据传输速率用波特率来衡量
③波特率
单位时间内传送二进制数据的位数,用bps(位/秒)表示,记作波特。
④例题
在异步串行传输系统中,假设每秒传输120个数据帧,其字符格式规定包含1个起始位,7个数据位,1个校验位,1个终止位,试计算波特率。
解:
一帧包含1+7+1+1=10(位);
所以波特率=10x120=1200bps=1200波特
(6)半同步通信(同步、异步结合)
以输入数据为例的半同步通信时序:
(7)分离式通信
特点:
①各模块有权申请占用总线;
②采用同步方式通信,不等对方回答;
③各模块准备数据是,不占用总线;
④总线被占用时,无空闲
⑤充分提供了总线的有效占用;
⑥控制线路比较复杂。