版权归原作者所有,如有侵权,请联系我们

[科普中国]-分时公共总线

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

多个处理机、存贮器模块和I/O子系统通过各自的接口与一条公用总线相连,部件之间的信息传送采用分时技术或多路转换技术实现的一种多处理机结构。这种结构的优点是简单、价格便宜、在系统上增加或减少模块非常灵活方便。它的缺点是可靠性差,总线失效将导致整个系统失效。此外,随着处理机数量增多,访问总线冲突机会增加,会使系统的性能大大降低。提高总线结构效率的有效方法是采用高传输率的传输介质,如优质高频同轴电缆、增加总线数,以战少访问总线冲突程度。系统总线通常设置在印刷电路板底板上,其他处理机板,存储板或设备接口板,通过插座或电缆插入底板。传输控制一般有集中控制和分布控制两种方式。集中控制是由一个称为总线控制器的处理机专门用来实现总线控制功能,能简便和有效地解决冲突问题,但是可靠性和灵活性都较差。分布式控制是在各个处理机中都带有总线控制部件,按照一定的通信协议,实现数据收发及解决总线访问冲突,可靠性和总线利用率都能得以提高,但结构上和控制算法的实现都比较复杂。1

总线仲裁方法及常用仲裁算法仲裁方法总线仲裁方法可分静态优先级算法和动态优先级,固定时间片,先来先服务等方法,当某台处理机发出总线请求时,首先检查总线状态是否为“忙”,若为“忙”,则等待;等到不“忙”时,发出总线请求信号,经仲裁后,得到总线响应信号,才可以占用总线,与目的部件通信。总线仲裁常用硬件实现,并允许在一个总线通信过程内对下一个总线请求予以仲裁。有两种方法可提高总线方式的系统效率。一种是采用优质高频同轴电缆来提高总线的传输速率,另一种是设置多条双向总线来减少访问总线的冲突概率,但增加了系统的复杂性。

仲裁算法(1)静态优先级算法:它为每个连到总线上的处理机(或计算机模块)分配一个唯一的固定优先级。当多个处理机同时请求使用系统总线时,仲裁器使优先级高的申请者使用总线。通常用串行连接方式确定优先级,因而越靠近仲裁器的处理机,它的优先级就越高。这算法的优点是算法简单,易实现。缺点是优先级低的处理机将很会很少有机会使用总线。

(2)平等算法:通常以轮转方式将总线按固定大小的时间片依次供各处理机使用。常用于同步总线。该算法的优点是算法较简单且能保证各处理机有均等机会使用总线,缺点是均等待时间较长。此外,若所轮到的处理机不用总线时,将造成总线带宽的浪费。

(3)动态优先级算法:这是一种根据总线使用情况和相应规则,能动态地改变连接到总线线上的多处理机的优先级。例如近期最少使用的LRU算法,它将最高的优先级分配给在最长时间间隔内未使用总线的处理机。循环菊花链(RDC-Rotating Daisy Chain)算法,则根据离最后一次使用总线的处理机所处位置的远近分配优先级。它将总线准用线按某一方向接成闭环,刚使用总线的处理机的优先级最低,而离它越近的处理机的优先级越高。该算法的优点是兼顾了前两种算法的优点,既有较短的平均等待时间,并可使系统中的各处理机有均等机会使用总线。缺点是控制逻辑较为复杂。

(4)先来先服务算法:它不是按优先级选择主控器,因而具有最好的均等性,该算法是性能最好的仲裁算法,但实现困难。该算法的作用只提供一种标准以衡量其他算法好坏。

上述的各种仲裁算法,通常用集中方式实现,即统一由一个裁器实现仲裁算法。此时对于总线的请求和允许使用信号可采用如下三种实现方式:一是请求线共享,而允许使用线则用串行菊花链方式连接。二是使请求和允许线都采用分离独立的线。三是采用前两种混合方式。

上述各种仲裁算法也可采用分布方式实现。此时的仲裁硬件被分布到各个处理机中。

它的工作方式如下:每个潜在总线主控器分配一个唯一的优先号,提出申请的主控器将自己的优先号送往共享请求/有效线进行逻辑或操作,得到一个合成优先号,然后提出申请的各个主控器将自己的优先号与合成号比较。比合成优先号小的申请者将自动撤消申请,这样剩下获得总线使用权的必将是具有最高优先号的处理机。分布式仲裁算法的优点是有较高的可幕性。分布式仲裁器的工作过程如下:首先,通过请求线接收来自各处理机发来的使用总线请求;然后,由仲裁器加以仲裁并以串行链接或并行分离方式向选中的处理机在总线准用线上发出总线有效信号;最后,由选中处理机通过总线忙控制线向其他处理机表明总线已被占用。当主控处理机使用总线传送信息后便撤销总线忙信号,此后,仲裁器便可再去响应选择其他处理机对总线的请求。

2

总线标准多处理机总线的发展趋向是实行标准化,已有一些总线标准支持多处理机系统,常用VME总线、 Multibus II总线等。前者以异步方式传送信息,后者则以同步方式传送信息。当用总线结构互连多处理机时,应尽量采用总线标准。如因需要必须采用专用总线时,也应通过总线适配器与标准总线相连,为此,各种按总线标准设计的外围设备才能方便地与多处理机系统相连。

标准总线一般都带有仲裁器,如VME总线仲裁器采用集中式结构,而 Multibus II和Futurebus总线仲裁器则采用分布式结构。这些标准总线一般都支持优先和均等混合仲裁算法,以适应多处理机系统需要。对外围部件使用优先仲裁算法,而对其他处理机则使用均等仲裁算法,以使各处理机有较均等机会使用系统总线。

要使一个主存能为CPU处理器所共享,就应将主存分为多个模块,并为CPU和主存模块间提供更多通路,这样不但可以增加带宽,还可以允许多个并行处理请求。纵横交叉互连方式可以较好地满足这一方面的要求。2

优缺点优点系统硬件成本最低且最简单,每个处理机的物理接口、寻址、判优和分时逻辑线路与单处理机系统仍然相同。

通过增、删功能模块可方便地改变系统硬件配置。

缺点全部存储访问都要经过总线,所以全系统的速度受到总线工作周期的限制,因而可接处理机数量不能太多。

系统以增加模块方式进行扩充会降低整个系统的吞吐率。

这种互联方式的系统效率较低。

1

本词条内容贡献者为:

鄢志丹 - 副教授 - 中国石油大学(华东)