-
1 教学内容
-
2 教学视频
-
3 翻转课堂教学任务单
-
4 翻转作业和测验
本节教学内容:
1、总线判优控制
2、总线通信控制
教学目的和要求:
1、掌握总线判优的链式查询控制;
2、掌握总线判优的计数器定时查询控制;
3、掌握总线判优控制的独立请求方式;
4、掌握总线周期的构成和总线通信的四种方式。
重点:1、集中式总线判优控制的三种方式;
2、总线周期;
3、四种通信方式的特点;
难点:1、总线传输时每个时钟周期完成的工作;
2、传输率、波特率等的计算.
第1讲 总线判优控制
一、知识要点
1、总线判优的概念
2、总线集中控制的三种仲裁方式
3、总线通信控制概念
二、教学安排
首先介绍总线控制的概念,然后通过图例讲解三种集中式判优控制方式,讲解时注意三种方式的优缺点对比,以及使用的信号线根数,然后通过问答形式让同学们回答,检查他们学习的情况。
三、教学内容
1、总线判优的概念
系统中多个设备或模块可能同时申请对总线的使用权,为避免产生总线冲突,需由总线仲裁机构合理地控制和管理系统中需要占用总线的申请者,在多个申请者同时提出总线请求时,以一定的优先算法仲裁哪个应获得对总线的使用权。
连接到总线上的功能模块有主动和被动两种形态,CPU可以做主方也可以做从方,而存取器模块只能用作从方。主方可以启动一个总线周期,而从方只能响应主方的请求。对多个主设备提出的占用总线请求,一般采用优先级或公平策略进行仲裁。
总线判优控制按照仲裁控制机构的设置可分为集中控制和分散控制两种。
分布式仲裁不需要中央仲裁器,每个潜在的主方功能模块都有自己的仲裁号和仲裁器。当它们有总线请求时,把它们唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。如果仲裁总线上的号大,则它的总线请求不予响应,并撤消它的仲裁号。最后,获胜者的仲裁号保留在仲裁总线上。显然,分布式仲裁是以优先级仲裁策略为基础。
集中式总线仲裁的控制逻辑基本集中在一处,需要中央仲裁器,分为链式查询方式、计数器定时查询方式、独立请求方式;
2、总线判优控制
1)链式查询

链式查询方式的主要特点:总线授权信号BG串行地从一个I/O接口传送到下一个I/O接口。假如BG到达的接口无总线请求,则继续往下查询;假如BG到达的接口有总线请求,BG信号便不再往下查询,该I/O接口获得了总线控制权。离中央仲裁器最近的设备具有最高优先级,通过接口的优先级排队电路来实现。
链式查询方式的优点: 只用很少几根线就能按一定优先次序实现总线仲裁,很容易扩充设备。
链式查询方式的缺点: 对询问链的电路故障很敏感,如果第i个设备的接口中有关链的电路有故障,那么第i个以后的设备都不能进行工作。查询链的优先级是固定的,如果优先级高的设备出现频繁的请求时,优先级较低的设备可能长期不能使用总线。
2)计数器定时查询
总线上的任一设备要求使用总线时,通过BR线发出总线请求。中央仲裁器接到请求信号以后,在BS线为“0”的情况下让计数器开始计数,计数值通过一组地址线发向各设备。每个设备接口都有一个设备地址判别电路,当地址线上的计数值与请求总线的设备地址相一致时,该设备置“1”BS线,获得了总线使用权,此时中止计数查询。

每次计数可以从“0”开始,也可以从中止点开始。如果从“0”开始,各设备的优先次序与链式查询法相同,优先级的顺序是固定的。如果从中止点开始,则每个设备使用总线的优先级相等。
计数器的初值也可用程序来设置,这可以方便地改变优先次序,但这种灵活性是以增加线数为代价的。
3)独立请求

每一个共享总线的设备均有一对总线请求线BRi和总线授权线BGi。当设备要求使用总线时,便发出该设备的请求信号。中央仲裁器中的排队电路决定首先响应哪个设备的请求,给设备以授权信号BGi。
独立请求方式的优点:响应时间快,确定优先响应的设备所花费的时间少,用不着一个设备接一个设备地查询。其次,对优先次序的控制相当灵活,可以预先固定也可以通过程序来改变优先次序;还可以用屏蔽(禁止)某个请求的办法,不响应来自无效设备的请求。
链式查询 ----------- 两根线
计数器查询----------- log2n(n=最大设备数)
独立请求 ----------- 2n
3、总线通信控制概念
众多部件共享总线,在争夺总线使用权时,应按部件的优先等级来解决。在通信时间上,则应按分时方式来处理,即以获得总线使用权的先后顺序分时占用总线,即哪一个部件获得使用权,此刻就由它传送,下一部件获得使用权,接着下一时刻传送。这样一个接一个轮流交替传送。
总线完成一次传输,分四个阶段:
1)总线裁决:决定哪个主控设备使用总线;
2)寻址阶段:主控设备送出要访问的主存或设备的地址,同时送出有关命令(读或写等),启动从设备;
3)数据传输阶段:主、从设备间进行数据交换;
4)结束阶段:有关信息在总线上撤销,让出总线使用权。
对于仅有一个主模块的简单系统,无需申请、分配和撤除,总线使用权始终归它占有。对于包含中断、DMA控制或多处理器的系统,还需要有其他管理机构来参与。
总线通信控制的目的:解决主、从设备如何获知传输开始和传输结束,以及通信双方如何协调进行数据通信。通常有四种通信方式:同步、异步、半同步、分离式通信。
四、互动及练习
本次课采用提问的互动方式:
1、什么是总线判优?为什么需要总线判优?
请同学们自己谈谈自己对总线判优的认识,以及结合上次课的内容来分析一下需要总线判优的原因,以此引出集中式总线判优的三种方式。
2、三种总线判优方式的特点?
讲完这部分内容后,通过提问的方式让同学们根据讲过的内容回答,以复习并掌握这部分知识。
第2讲 总线通信控制
一、知识要点
1、同步通信方式
2、异步通信方式
3、半同步通信方式
4、分离式通信方式
二、教学安排
首先,详细介绍同步、异步、半同步、分离式这四种通信方式,其中对于同步和半同步,涉及到时钟的配合,所以在这部分通过计算机工作过程来帮学生梳理每个时钟周期所做的工作,然后对异步通信的三种应答方式进行对比式讲解,最后通过同步通信来分析出还有挖掘总线的潜力,由此产生的分离式通信。
三、教学内容
1、同步通信
控制线中有一个时钟信号线,挂接在总线上的所有设备都从这个公共的时钟线上获得定时信号,一定频率的时钟信号定义了等间隔的时间段,这个固定的时间段为一个时钟周期,也称总线周期。
通信双方由统一时钟控制数据传送称为同步通信。每种总线操作都有一个确定的通信协议(规定在每个时钟周期内交换哪些信息)。
例如,在处理器-主存总线上执行存储器读操作,其协议为:在第1个时钟周期发送地址和存储器读命令,然后存储器被要求在第5个时钟将数据放到总线上。
下图为表示某个输入设备向CPU传输数据的同步通信过程。

图中总线传输周期是连接在总线上的两个部件完成一次完整可靠的信息传输时间,它包含4个时钟周期T1、T2、T3、T4。
CPU在T1上升沿发出地址信息;在T2的上升沿发出读命令;与地址信号相符合的输入设备按命令进行一系列内部操作,且必须在T3的的上升沿到来之前将CPU所需的数据送到数据总线上;CPU在T3时钟周期内,将数据线上的信息送到其内部寄存器中;CPU在T4的上升沿撤销读命令,输入设备不再向数据总线上传送数据,撤销它对数据总线的驱动。如果总线采用三态驱动电路,则从T4起,数据总线成浮空状态。
同步通信在系统总线设计时,对T1、T2、T3、T4都有明确、唯一的规定。
对于读命令,其传输周期如下:
T1 主模块发地址。
T2 主模块发读命令。
T3 从模块提供数据。
T4 主模块撤销读命令,从模块撤销数据。
对于写命令,其传输周期如下:
T1 主模块发地址。
T1.5 主模块提供数据。
T3 主模块发出写命令,从模块接受到命令后,必须在规定时间内将数据总线上的数据写到地址总线所指明的单元中。
T4 主模块撤销写命令和数据信号。
写命令传输周期的时序如下图所示。

这种通信的优点是规定明确、统一,模块间的配合简单一致。其缺点是主、从模块时间配合属于强制性“同步”,必须在限定时间内完成规定的要求。并且对所有从模块都用同一限时,这就势必造成,对各部相同速度的部件而言,必须按最慢速度的部件来设计公共时钟,严重影响总线的工作效率,也给设计带来了局限性,缺乏灵活性。
同步通信一般用于总线长度较短、各部件存取时间比较一致的场合。
2、异步通信
异步通信允许各模块速度不一致,没有公共的时钟标准,不要求所有部件严格的统一操作时间。
异步方式采用应答方式(握手方式),主模块发出请求(Request)信号,等到从模块反馈回来“响应”(Acknowledge)信号后开始通信。只有当双方都同意时,发送者或接收者才会进入到下一步,协议通过一对附加的“握手”信号线(Ready、Ack)来实现。
Request:读请求,告诉从设备进行读操作地址信息同时送到地址/数据线上
Ready:数据就绪,从设备已准备好数据,主设备可取数据同时送到地址/数据线上
Ack:回答信号线,表示已收到对方的请求信号
异步通信有不互锁、半互锁和全互锁三种方式。不互锁方式通信双方没有相互制约关系;半互锁方式通信双方有简单的制约关系;全互锁方式通信双方有完全的制约关系。其中全互锁通信可靠性最高。

优点:灵活,可挂接各种具有不同工作速度的设备。
缺点: ①对噪声较敏感。 ②接口逻辑较复杂。
3、半同步通信
半同步定时方式同时具备了同步定时方式和异步定时方式的优点。它采用同步方式定时,即传输信号的发送时间和接受时间均由时钟信号确定。通常在时钟前沿发送信号,在时钟后沿接收信号,这样可以包容部分传输延迟。为了支持速度不同的设备间的通信,半同步方式为速度慢的通信方增设了一条等待(WAIT(取反))信号线,或就绪(Ready)信号线,通过采用异步定时方式来协调体内通信双方的速度配合问题。
如所有的地址、命令、数据信号的发出时间,都严格参照系统时钟的某个前沿开始,而接收方都采用系统时钟后沿时刻来进行判断识别。同时又像异步通信那样,允许不同速度的模块和谐地工作。为此增设了一条“等待”( )响应信号线。
以读命令为例,在同步通信中,主模块在T1发出地址,T2发出命令,T3传输数据,T4结束传输。倘若从模块工作速度较慢,无法在T3时刻提供数据,则必须在T3之前通知主模块,使其进入等待状态,此刻,从模块置为低电平有效。主模块在T3测得“等待”有效,则不立即从数据线上取数,这样一个时钟周期、一个时钟周期地等待,直到主模块测得为高电平即等待无效时,主模块即把此刻的下一周期当作正常周期T3,即时获取数据,T4结束传输。如下图所示。

半同步通信时序可为:
T1 主模块发地址;
T2 主模块发命令;
Tw 当为低电平有效时,进入等待,其间隔与T统一;
Tw 当为低电平有效时,进入等待,其间隔与T统一;
……
T3 从模块提供数据(若属读命令);
T4 从模块撤消数据。
半同步通信适用于系统工作速度不高,但又包含了许多工作速度差异较大的各类设备的简单系统。半同步通信控制方式比异步通信简单,在全系统内各模块又在统一的系统时钟控制下同步工作,可靠性较高,同步结构较方便。其缺点是对系统时钟频率不能要求太高,故从整体上来看,系统工作的速度还是不很高。
4、分离式通信
同步通讯、异步通信和半同步通信都是从主模块发出地址和读写命令开始,直到数据传输结束。在整个传输周期中,系统总线的使用权完全有占有使用权的主模块和由他选中的从模块占据。进一步分析读命令传输周期,发现除了申请总线这一阶段外,其余时间主要花费在如下3个方面。
1.主模块通过传输总线向从模块发送地址和命令。
2.从模块按照命令进行读数据的必要准备。
3.从模块经数据线向主模块提供数据。
从2可见,对系统总线而言,从模块内部读数据过程并无实质性的信息传输,总线纯属空闲等待。为了克服和利用这种消极等待,尤其在大型计算机系统中,总线的负载已经处于饱和状态,充分挖掘系统总线每瞬间的潜力,对提高系统系能起到极大作用。为此提出了“分离式”的通信方式,其基本思想是即将一个传输周期(或总线周期)分解为两个子周期。在第一个子周期中,主模块A在获得总线使用权后将命令、地址以及其他有关信息,包括主模块编号(当有多个主模块时,此编号尤为重要)发到系统总线上,经过总线传输后,由有关的从模块B接收下来。主模块A向系统总线发布这些信息只占用总线很短的时间,一旦发送完成,立即放弃总线使用权,以便其他模块使用。在第二个子周期中,当B模块接收到A模块发来的有关命令信号后,经过选择、译码、读取等一系列内部操作,将A模块所需的数据准备好,遍有B模块申请总线使用权,一旦获准,B模块便将A模块的编号、B模块的地址、A模块所需的数据等一系列信息送到总线上,供A模块接收。很显然,上述两个子周期都只有单方向的信息流,每个模块都变成了主模块。

这种通信方式的特点如下:
1.个模块占用总线使用权都必须提出申请。
2.在得到总线使用权后,主模块在限定的时间内向对方发送信息,采用同步方式传送,不再等待对方的回答信号。
3.各模块在准备数据的过程中都不占用总线,是总线可以接受其他模块的请求。
4.总线被占用时都在做有效工作,或者通过他发送命令,或者通过他传送数据,不存在空闲等待时间,充分地利用了总线的有效占用,从而实现了在多个主、从模块间进行交叉重叠并行式传送,这对大型计算机是极为重要的。
这种方式控制比较复杂,一般在普通微型计算机系统很少采用。
四、互动及练习
本次课采用提问的互动方式:
1、试比较同步通信和异步通信。
请同学们谈谈对这两种通信方式的理解以及它们所应用的场合,由此引入这两种方式的讲解,以及它们的特点和应用场合。
2、分离式通信有何特点,主要用于什么系统?
在讲完同步和异步通信后,让同学们自己分析在这两种方式中还有那些环节式可以挖掘的,然后引入分离式通信的讲解。

