具有连接联锁总线与分支总线的桥式电路的总线系统的制作方法

文档序号:10687001阅读:503来源:国知局
具有连接联锁总线与分支总线的桥式电路的总线系统的制作方法
【专利摘要】本发明提供一种具有连接联锁总线与分支总线的桥式电路的总线系统,通过第一桥式电路、第二桥式电路连接不能重试的联锁总线与分支总线,通过这些第一桥式电路、第二桥式电路分别将分支总线的第一信道、第二信道与联锁总线连接,由此构成总线系统。然后,利用第一桥式电路来处理从分支总线侧向联锁总线侧的访问,还利用第二桥式电路来处理从联锁总线侧向分支总线侧的访问,由此来避免总线竞争时的死锁。
【专利说明】
具有连接联锁总线与分支总线的桥式电路的总线系统
技术领域
[0001]本发明涉及一种具有连接联锁总线与分支总线的桥式电路的总线系统。
【背景技术】
[0002]在电子设备内部的芯片间总线(inter-chip bus)和片上总线(on-chip bus)中存在:联锁总线(interlock bus),其从开始请求访问到结束响应为止占有总线;分支总线(split bus),其在请求访问与针对其的响应的期间不占有总线而能够执行其他访问。作为分支总线的示例存在PCI Express和AMBA AXI,此外,作为联锁总线的示例存在PCI总线和AMBA APB。因此,有时在电子设备的内部存在连接联锁总线与分支总线的桥式电路(bridgecircuit)ο
[0003]使用这样的桥式电路,例如想到经由分支总线连接两个联锁总线的形式,则存在从一个联锁总线经由分支总线向其他联锁总线的访问,若同时还发生其相反的访问,则联锁总线不响应来自分支总线的访问,而产生死锁(deadlock)。作为避免上述情况的手段已知有如下方法:重试(re try)联锁总线,先执行来自分支总线的访问(例如,参照日本特开2001-060181号公报、日本特开平10-055341号公报、日本特开平09-212469号公报、日本特开平09-204409号公报)。
[0004]但是,在联锁总线是不支持重试的总线的情况下不能应用现有技术。此外,有时即使分支总线是支持无序转发(out-of-order)的总线,与分支总线连接的器件(device)或IP内核(core)在保留中的越界(outbound)访问请求超过一定数量的状态下也不会对界内(inbound)读取请求返回响应(读取数据)。

【发明内容】

[0005]因此,本发明的目的在于提供一种总线系统,能够在连接不能重试的联锁总线与分支总线的桥式电路中避免总线竞争时的死锁。
[0006]本发明涉及的具有连接分支总线与联锁总线的桥式电路的总线系统,其中,所述总线系统具有:第一桥式电路;以及第二桥式电路;所述具有连接分支总线与联锁总线的桥式电路的总线系统构成为:所述第一桥式电路连接所述分支总线的第一信道与所述联锁总线,所述第二桥式电路连接所述分支总线的第二信道与所述联锁总线,从所述分支总线侧向所述联锁总线侧的访问通过所述第一信道由所述第一桥式电路进行处理,从所述联锁总线侧向所述分支总线侧的访问通过所述第二信道由所述第二桥式电路进行处理。
[0007]根据本发明,能够在连接不能重试的联锁总线与分支总线的桥式电路中避免总线竞争时的死锁。
[0008]也可以构成为,所述第一桥式电路具有:缓冲器,其接收来自所述分支总线侧的访问请求,所述联锁总线具有:第一调停电路,其对与所述联锁总线连接的各总线主控器的总线使用权进行调停,所述第一调停电路构成为:根据所述缓冲器保持有的访问请求的数量,限制除所述第一桥式电路以外的所述联锁总线的各总线主控器的总线使用权。
[0009]根据该实施方式,根据缓冲器保持有的访问请求的数量来调停联锁总线,由此总线系统能够避免联锁总线与分支总线的竞争时的停止,同时,在联锁总线上优先对积压于缓冲器的从分支总线侧向联锁总线的访问请求进行处理,因此,能够防止访问请求过剩地积压于缓冲器。
[0010]也可以构成为,所述联锁总线(第一联锁总线)总线主控器中至少一个总线主控器是连接该第一联锁总线和不同于所述第一联锁总线的联锁总线(第二联锁总线)的第三桥式电路,所述第二联锁总线具有:第二调停电路,其对所述第二联锁总线的各总线主控器的总线使用权进行调停,所述第三桥式电路构成为:对从所述第一联锁总线向所述第二联锁总线的访问以及从所述第二联锁总线向所述第一联锁总线的访问进行处理,所述第二调停电路构成为:根据所述缓冲器保持有的访问请求的数量,限制除所述第三桥式电路以外的所述第二联锁总线的各总线主控器的总线使用权。
[0011]根据该实施方式,在第一联锁总线还与其他的第二联锁总线连接时,总线系统通过第二调停电路限制从第二联锁总线向第一联锁总线的访问,由此能够减少第一联锁总线的负荷,在第一联锁总线上优先对积压于缓冲器的从分支总线侧向第一联锁总线侧的访问请求进行处理,因此,能够防止访问请求过剩地积压于缓冲器。
[0012]所述第一调停电路构成为:在所述缓冲器保持有的访问请求的数量超过第一阈值时,限制除所述第一桥式电路以外的所述第一联锁总线的各总线主控器的总线使用权,而在所述缓冲器保持有的访问请求的数量低于第二阈值时,解除所述第一联锁总线的使用限制,所述第二调停电路构成为:在所述缓冲器保持有的访问请求的数量超过第三阈值时,限制除所述第二桥式电路以外的所述第二联锁总线的各总线主控器的总线使用权,而在所述缓冲器保持有的访问请求的数量低于第四阈值时,解除所述第二联锁总线的使用限制,所述第二阈值是所述第一阈值以下,此外,所述第四阈值是所述第三阈值以下。
[0013]根据该实施方式,通过将第一、第三阈值设定得大而将对调停的介入抑制为最小限度,同时,通过将第二、第四阈值设定得小,总线系统在第一联锁总线上优先对积压于缓冲器的从分支总线侧向联锁总线侧的访问请求进行处理,因此,能够防止访问请求过剩地积压于缓冲器。
【附图说明】
[0014]通过参照附图对以下的实施例的说明,可以明确本发明的上述和其它目的以及特征。这些图中:
[0015]图1是表示本发明的第三实施方式涉及的总线系统的电路结构的图,也用于说明本发明的第一、第二实施方式涉及的总线系统的电路结构。
[0016]图2是表示本发明的第四实施方式涉及的总线系统的电路结构的图。
[0017]图3是表示本发明的第五实施方式涉及的总线系统的电路结构的图。
【具体实施方式】
[0018]参照图1对本发明涉及的总线系统的第一、第二、第三实施方式进行说明。
[0019]首先,对本发明涉及的总线系统的第一实施方式进行说明。
[0020]该实施方式涉及的总线系统是内部总线通过印刷基板上的分支总线将由联锁总线构成的器件(device)与CPU等对置器件连接的系统,是在器件内部的联锁总线设置了将联锁总线与分支总线进行桥连接的两个桥式电路的结构。
[0021]总线系统I如图1所示,构成为内部总线通过印刷基板上的分支总线50将由联锁总线20构成的器件10与具有CPU内核31、DMAC32等的对置器件30连接,在该器件10内的联锁总线20中设置有连接该联锁总线20与分支总线50的两个桥式电路11、12。
[0022]第一桥式电路11经由分支总线50的一个信道(第一信道)与对置器件30连接,第二桥式电路12经由分支总线的另一信道(第二信道)与对置器件30连接。
[0023]然后,从分支总线50侧向联锁总线20侧的访问通过第一信道由第一桥式电路11进行处理,而从联锁总线20侧向分支总线50侧的访问通过第二信道由第二桥式电路12进行处理。
[0024]这里,若考虑到桥式电路只通过分支总线50的一个信道与对置器件30连接的情况,当发生了从联锁总线20侧向分支总线50侧的读取请求(或者用于保证结束的写入请求)时,从分支总线50侧向联锁总线20侧的访问请求频繁产生,例如在达到分支总线50的未结束事务处理数量(未完成的数量)的上限时、或对置器件30的发送缓冲器与桥式电路的接收缓冲器被装满而没有空闲时等时候,不能返回从分支总线50侧向联锁总线20侧的读取响应(或者写入完通知)。在从联锁总线20侧的读取(或者用于保证结束的写入)没有结束时,来自分支总线50侧的访问请求不能输出到联锁总线20,因此,产生总线的死锁。
[0025]在图1所示的总线系统I的电路结构中,对联锁总线20设置两个桥式电路11、12,通过两个信道将分支总线50与对置器件30连接,将从分支总线50侧向联锁总线20侧的访问、和从联锁总线20侧向分支总线50的的访问分离分别通过桥式电路11、12来进行处理,由此,能够可靠地避免总线竞争时的死锁。
[0026]这里,示出了通过分支总线50的两个信道将第一、第二桥式电路11、12与对置器件30连接的示例,但是将从分支总线50侧向联锁总线20侧的访问以及从联锁总线20侧向分支总线50侧的访问连接的信道也可以分别是多个。例如,可以想到:通过两个信道来连接从分支总线50侧向联锁总线20侧的访问,与之相对地准备两个联锁总线20侧的桥式电路来进行处理。该情况下,作为信道的分开使用,想到了通过访问的优先级来分开要使用的信道。
[0027]此外,在图1中示出了内部总线20通过印刷基板上的分支总线50将构成为联锁总线的器件10与对置器件30连接的示例,但是不需要分开构成器件10与对置器件30,而可以是一个器件的内部由多段总线构成,包含联锁总线、分支总线以及两个桥式电路的总线系统整体安装于一个器件内。
[0028]此外,在上述的示例中,器件内部总线是联锁总线,器件间总线是分支总线,但是也可以相反地,器件内部总线是分支总线,器件间总线是联锁总线。此外,还可以是如下结构:联锁总线与分支总线都是器件间总线,只有桥式电路安装于器件内部。
[0029]并且,这里示出了通过两个信道物理性地与对置器件30连接的情况,但是在对置器件30支持通过一个物理信道实现多个逻辑信道的功能的情况下,也可以使用该功能。作为这样功能的示例存在PCI Express的虚拟信道。PCI Express标准上支持最大8信道的虚拟信道,作为实际器件也存在具有多个虚拟信道的产品。该情况下,物理性的连接为一个信道,但通过使用多个虚拟信道能够与上述同样地避免总线竞争时的死锁。
[0030]接下来,对本发明涉及的总线系统的第二实施方式进行说明。
[0031]本实施方式涉及的总线系统的基本结构与上述的第一实施方式涉及的总线系统相同,但是与第一实施方式的不同点在于对其增加了调停电路。
[0032]在本实施方式中,第一桥式电路11构成为具有接收来自所述分支总线50侧的访问请求的缓冲器。该缓冲器如图1所示,可以使用作为第一桥式电路11的构成要素的PCIe IP内核13的RX缓冲器,也可以在第一桥式电路11内设置为其他缓冲器。
[0033]此外,第一联锁总线20构成为具有对与该第一联锁总线20连接的各总线主控器(bus master)的总线使用权进行调停的第一调停电路17。然后,该第一调停电路17根据缓冲器保持有的访问请求的数量,来限制除第一桥式电路11以外的第一联锁总线20的各总线主控器的总线使用权。
[0034]根据本实施方式的结构,第一调停电路17通过根据缓冲器保持有的访问请求的数量来调停联锁总线20,由此,总线系统能够避免联锁总线20与分支总线50的竞争时的死锁,同时,在联锁总线20上优先对积压于缓冲器的从分支总线50侧向联锁总线20侧的访问请求进行处理,因此,能够防止访问请求过剩地积压于缓冲器。
[0035]接下来,对本发明涉及的总线系统的第三实施方式进行说明。
[0036]本实施方式涉及的总线系统的基本结构与上述的第一以及第二实施方式涉及的总线系统相同,与第二实施方式的不同点在于:对上述的第二实施方式进一步增加了其他联锁总线和调停电路。
[0037]在第一联锁总线20的总线主控器的至少一个是将该第一联锁总线20与其他(第二)联锁总线51进行连接的第三桥式电路18时,该第二联锁总线51具有对该第二联锁总线51的各总线主控器的总线使用权进行调停的第二调停电路19。
[0038]该第三桥式电路18对从第一联锁总线20向第二联锁总线51的访问和从第二联锁总线51向第一联锁总线20的访问进行处理。此外,第二调停电路19根据缓冲器保持有的访问请求的数量,来限制除第三桥式电路18以外的第二联锁总线51的各总线主控器使用权。
[0039]根据本实施方式的结构,在第一联锁总线20还与其他联锁总线51连接时,通过第二调停电路19来限制从第二联锁总线51向第一联锁总线20的访问,能够减少第一联锁总线20的负荷,在第一联锁总线20上优先对积压于缓冲器的从分支总线50侧向第一联锁总线20侧的访问请求进行处理,因此,能够防止访问请求过剩地积压于缓冲器。
[0040]接下来,对图1所示的总线系统I中的第一调停电路17、第二调停电路19的动作例(上述第二实施方式涉及的第一调停电路17、上述第三实施方式涉及的第一、第二调停电路17、19的动作例)进行说明。
[0041]第一调停电路17在缓冲器保持有的访问请求的数量超过第一阈值时,限制除第一桥式电路11以外的第一联锁总线20的各总线主控器的总线使用权,另一方面,在缓冲器保持有的访问请求的数量低于第二阈值时,解除第一联锁总线20的使用限制。
[0042]此外,第二调停电路19在缓冲器保持有的访问请求的数量超过第三阈值时,限制除第三桥式电路18以外的第二联锁总线51的各总线主控器的总线使用权,另一方面,在缓冲器保持有的访问请求的数量低于第四阈值时,解除第二联锁总线的使用限制。
[0043]这里,第二阈值设定为第一阈值以下。作为阈值的值,取决于第一桥式电路11的缓冲器数量,而例如在缓冲器数量N= 128时,设为第一阈值P = 32 ( <N)、第二阈值Q = 2 ( < P)等即可。[OO44 ]同样地,第四阈值设定为第三阈值以下。作为阈值的值,例如设为第三阈值U = 3 2(<N)、第四阈值V = 2(<U)即可。
[0045]可以是只有第一调停电路17或者第二调停电路19中的某一个应用这样的设定,也可以应用于双方。
[0046]根据上述的第一、第二调停电路17、19的动作例,通过将第一、第三阈值设定得大而将对调停的介入抑制为最小限度,同时总线系统通过将第二、第四阈值设定得小,在第一联锁总线20上优先对积压于缓冲器的从分支总线50侧向联锁总线20侧的访问请求进行处理,因此,能够防止访问请求过剩地积压于缓冲器。
[0047]接下来,参照图2对本发明涉及的总线系统的第四实施方式进行说明。
[0048]图2是本实施方式涉及的总线系统的简易的电路结构图,在图2中对于与图1的电路结构图对应的结构标注相同符号。
[0049]在本实施方式中,构成为在将分支总线50与第一联锁总线20进行桥连接的桥式电路11设置第一路径22和第二路径23,通过选择器电路21来选择第一路径22和第二路径23,其中,当没有产生从联锁总线20侧向分支总线50侧的读取请求所对应的读取响应、从联锁总线20侧向分支总线50侧的读取请求时,所述第一路径22对从分支总线50侧产生的访问请求(目标地址或写入数据)进行处理,当产生从联锁总线20侧向分支总线50侧的读取请求时,所述第二路径23对从分支总线50侧产生的访问请求进行处理。
[0050]此外,将缓冲器60设置于第二路径23,当产生从联锁总线20侧向分支总线50侧的读取请求时,所述缓冲器60用于保全(保存)从分支总线50侧产生的访问请求。作为缓冲器的尺寸N,优选相对于在等待一次读取响应而保全至缓冲器的访问请求数的最大数量为两倍以上,也依赖于系统结构,而是例如设为128。
[0051]在本实施方式的总线系统I中,当存在从联锁总线20向分支总线50的读取请求时,在接收来自分支总线50的响应(读取数据)之前,将从分支总线50接收到的访问请求保全至在第二路径23上设置的缓冲器60中。从分支总线50侧的器件或者IP内核来看,若访问请求保全至缓冲器60,则该访问请求在分支总线50上结束,不为保留状态。因此,分支总线50侧的器件或者IP内核若接收读取请求则可以返回响应(读取数据)。桥式电路11接收来自分支总线的响应,将其返回给联锁总线20,自联锁总线20被解放起,按照保全至缓冲器60的来自分支总线50的访问请求对联锁总线20进行访问。
[0052]并且,如图2所示,设置第一调停电路17,所述第一调停电路17对来自与联锁总线20连接的多个总线主控器的总线使用请求进行调停。第一调停电路17根据保全至缓冲器的来自分支总线50侧的访问请求的数量,进行联锁总线20的调停,以便限制来自联锁总线20侧的访问,优先进行对连锁总线20侧的访问。
[0053]接下来,参照图3对本发明涉及的总线系统的第五实施方式进行说明。
[0054]在本实施方式的总线系统中,如图3所示,设置将第一联锁总线20与器件10外部的第二联锁总线51进行连接的第三桥式电路18、对第二联锁总线51的使用进行调停的第二调停电路19。该第二调停电路19根据保全至缓冲器(读取响应以外的访问请求用缓冲器)60的来自分支总线50侧的访问请求的数量来进行调停,以便限制从第二联锁总线51向第一联锁总线20的访问,使第一联锁总线20的占有率降低。
[0055]在具有了这样结构的图3的总线系统I中,当保全至在桥式电路11内的第二路径23上设置的缓冲器60的访问请求的数量超过预先设定的第一阈值时,第一调停电路17限制除第一桥式电路11以外的第一联锁总线20的各总线主控器的总线使用权,而当保全至在桥式电路内的第二路径23上设置的缓冲器60的访问请求的数量比预先设定的第二阈值减少时,解除第一联锁总线20的使用限制。
[0056]第二阈值设定得比第一阈值小。例如,设为第一阈值P= 32 ( <N),第二阈值Q = 2(<P)0
[0057]同样地,当保全至在桥式电路11内的第二路径23上设置的缓冲器60的访问请求的数量超过预先设定的第三阈值时,第二调停电路19限制除第三桥式电路18以外的第二联锁总线51的各总线主控器的总线使用权,当保全至桥式电路11内的缓冲器的访问请求的数量比预先设定的第四阈值减少时,解除第二联锁总线51的使用限制。
[0058]第四阈值设定得比第三阈值小。例如,第三阈值U = 32( <N),第四阈值V = 2( <U)。
[0059]既可以是只有第一调停电路17或者第二调停电路19中的某一个应用这样的设定,也可以是应用于第一调停电路17和第二调停电路19两者。
[0060]以上,对本发明的实施方式进行了说明,但是本发明不局限于上述实施方式的示例,通过增加适当的变更能够以各种的方式来进行实施。
【主权项】
1.一种具有连接分支总线与联锁总线的桥式电路的总线系统,其特征在于, 所述总线系统具有: 第一桥式电路;以及 第二桥式电路; 所述具有连接分支总线与联锁总线的桥式电路的总线系统构成为: 所述第一桥式电路连接所述分支总线的第一信道与所述联锁总线, 所述第二桥式电路连接所述分支总线的第二信道与所述联锁总线, 从所述分支总线侧向所述联锁总线侧的访问通过所述第一信道由所述第一桥式电路进行处理, 从所述联锁总线侧向所述分支总线侧的访问通过所述第二信道由所述第二桥式电路进行处理。2.根据权利要求1所述的具有连接分支总线与联锁总线的桥式电路的总线系统,其特征在于, 所述第一桥式电路具有:缓冲器,其接收来自所述分支总线侧的访问请求, 所述联锁总线具有:第一调停电路,其对与所述联锁总线连接的各总线主控器的总线使用权进行调停, 所述第一调停电路构成为:根据所述缓冲器保持有的访问请求的数量,限制除所述第一桥式电路以外的所述联锁总线的各总线主控器的总线使用权。3.根据权利要求2所述的具有连接分支总线与联锁总线的桥式电路的总线系统,其特征在于, 作为所述联锁总线的第一联锁总线的总线主控器中至少一个总线主控器是连接该第一联锁总线与第二联锁总线的第三桥式电路,其中,所述第二联锁总线是与所述第一联锁总线不同的联锁总线, 所述第二联锁总线具有:第二调停电路,其对所述第二联锁总线的各总线主控器的总线使用权进行调停, 所述第三桥式电路构成为:对从所述第一联锁总线向所述第二联锁总线的访问以及从所述第二联锁总线向所述第一联锁总线的访问进行处理, 所述第二调停电路构成为:根据所述缓冲器保持有的访问请求的数量,限制除所述第三桥式电路以外的所述第二联锁总线的各总线主控器的总线使用权。4.根据权利要求3所述的具有连接分支总线与联锁总线的桥式电路的总线系统,其特征在于, 所述第一调停电路构成为:在所述缓冲器保持有的访问请求的数量超过第一阈值时,限制除所述第一桥式电路以外的所述第一联锁总线的各总线主控器的总线使用权,而在所述缓冲器保持有的访问请求的数量低于第二阈值时,解除所述第一联锁总线的使用限制,所述第二调停电路构成为:在所述缓冲器保持有的访问请求的数量超过第三阈值时,限制除所述第二桥式电路以外的所述第二联锁总线的各总线主控器的总线使用权,而在所述缓冲器保持有的访问请求的数量低于第四阈值时,解除所述第二联锁总线的使用限制,所述第二阈值是所述第一阈值以下,此外,所述第四阈值是所述第三阈值以下。
【文档编号】G06F13/40GK106055501SQ201610207178
【公开日】2016年10月26日
【申请日】2016年4月5日 公开号201610207178.2, CN 106055501 A, CN 106055501A, CN 201610207178, CN-A-106055501, CN106055501 A, CN106055501A, CN201610207178, CN201610207178.2
【发明人】小松孝彰, 辻真大
【申请人】发那科株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1