首页> 中国专利> 总线控制装置以及向总线控制装置输出指示的控制装置

总线控制装置以及向总线控制装置输出指示的控制装置

摘要

本发明提供一种总线控制装置以及向总线控制装置输出指示的控制装置,通过有效地抑制路径切换时的资源争夺,可缩短路径切换延迟,提高总线的平均利用效率。总线控制装置设置在总线主控器与被网络化的通信总线之间,并对在通信总线上流动的数据包的发送路径进行控制。总线控制装置具备:路径表管理部,其对多个发送路径以及多个发送路径的每一个的发送状况进行管理;参数生成部,其生成符合规定的概率分布的参数、或者符合预先确定的规则的参数;决定部,其基于多个发送路径的每一个的发送状况和参数,决定发送路径;和中继部,其进行在通信总线上流动的数据包的中继处理。

著录项

  • 公开/公告号CN102893268A

    专利类型发明专利

  • 公开/公告日2013-01-23

    原文格式PDF

  • 申请/专利权人 松下电器产业株式会社;

    申请/专利号CN201180024086.6

  • 发明设计人 石井友规;山口孝雄;吉田笃;

    申请日2011-05-13

  • 分类号G06F13/14;

  • 代理机构中科专利商标代理有限责任公司;

  • 代理人樊建中

  • 地址 日本大阪府

  • 入库时间 2024-02-19 17:13:29

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-11-25

    授权

    授权

  • 2013-04-24

    实质审查的生效 IPC(主分类):G06F13/14 申请日:20110513

    实质审查的生效

  • 2013-01-23

    公开

    公开

说明书

技术领域

本发明涉及用于在具备被网络化的通信总线的半导体芯片中进行通 信总线的控制的装置、方法以及程序。

背景技术

近年来,伴随着SoC(System on Chip)或处理器的高功能化,取代 通常的通信总线,关注着作为网络型总线的NoC(Network on Chip)。在 NoC中,可以相互连接多个总线主控器(master)或存储器。

例如,图1(a)以及(b)表示NoC总线的一部分结构。图1(a) 是表示硬件连接结构例的图,图1(b)表示其示意图。图1(a)以及(b) 示出:设置在芯片10上的总线主控器1a~1c分别经由总线控制装置(R) 2而与总线3连接。其中,以下的本申请附图的NoC总线以图1(b)所 示的示意图进行描述。

图2表示以2维网格(mesh)型结合了总线主控器的NoC总线的结 构例。针对每个微型处理器或DSP、存储器、输入输出电路等总线主控 器,配置进行数据传送路径的控制的中继节点R,以短布线连接(link) 中继节点R之间。在本申请说明书中,中继节点R也被称作中继装置或 总线控制装置。

在这种构成中,存在多个用于从发送源的总线主控器向接收目的地的 总线主控器进行数据传送的通信路径。例如,图3表示从发送源到发送目 的地为止的3条路径(1)~(3)。

与总线的负荷状况相匹配地从多个选择候选路径之中选择最佳路径, 从而传送数据有效地分散在芯片整体中,能够预料总线的平均利用效率的 提高。因而,总线整体的吞吐量(throughput)得以提高,可以降低设计 时或工作时的总线的工作频率,能够降低芯片的功耗。另外,由于总线主 控器之间的数据传送用的等待时间(延迟时间)得以改善,因而能够最大 限度地提升总线主控器的性能(performance),也涉及芯片整体的处理能 力的提高。

在专利文献1中公开了与总线的状态相匹配地在相互连接总线主控 器的总线上选择多个数据传送路径的方法。根据专利文献1的技术,从发 送源的总线主控器到接收目的地的总线主控器,以帧为单位对传送对象的 数据进行传送。在接收目的地正常地接收了帧的情况下,返回应答 (acknowledge)数据,否则不返回应答数据。发送源的总线主控器根据 没有返回应答数据来检测帧传送的不良情况,并通过选择其他发送路径来 再次发送帧,从而继续进行通信。在接收到的帧的头部(header)中检测 到错误的情况下,因为在接收目的地的总线主控器中帧被废弃,所以在发 送源的总线主控器中不会接收应答数据。另外,在利用中的数据传送路径 中,帧的传送延迟会变大,在规定时间内帧仍未到达接收目的地的情况下, 在规定时间内也无法接收应答数据,从而发生路径的切换。与数据传送路 径的状态相匹配地动态地切换路径,从而可以利用传送延迟和错误少的路 径进行通信。

现有技术文献

专利文献

专利文献1:日本发明第3816531号说明书

发明内容

(发明所要解决的技术问题)

在采用作为现有技术的多个路径控制技术的情况下,发送源的总线主 控器通过检测传送延迟时间的恶化来判定为有必要切换数据传送路径,以 本身的数据传送状态最优的方式进行路径的选择(利己的路径选择)。换 言之,发送源的总线主控器想要通过将使用路径从高负荷的路径切换为低 负荷的路径来改善传送延迟时间。

然而,在存在独立工作的多个总线主控器这样的一般NoC中,即便 各总线主控器采用现有方法进行路径切换,也未必能达成数据传送性能的 改善。其理由在于,独立工作的多个总线主控器想要彼此争夺来选择最优 路径,所以会发生数据传送路径以及链路资源的争夺,在几个链路中会集 中来自多个发送源的传送数据。其结果,在各路径间流动的传送数据流量 的偏差会扩大。

由于该传送数据流量的偏差所引起的传送延迟时间的恶化,使得各总 线主控器反复进行路径的再次选择,因而路径切换所需的延迟时间会增 大。另外,数据传送所需的等待时间也会增大,由此各总线主控器的工作 速度受到限制。例如,在进行处理器与存储器之间的数据传送时,与存储 器访问等待时间对应的处理器的等待周期(weight cycle)数会增大,从 而关系到处理性能的下降。另外,由于争夺而导致吞吐量下降,在总线上 消耗的电力也会增加。这是因为,如果不提高总线的工作频率,则无法获 得所期望的总线传送能力。若由构成总线的晶体管的功耗P表示总线的 功耗,并设开关速率为α、电路的电容为C、电源电压为V、工作频率为 f,则可由数学式1表示功耗P。

[数学式1]

P=α·C·V2·f

其中,在此提及的“构成总线的晶体管”包括:在发送数据的网络要 素、与接收该数据的网络要素之间存在的网络要素(例如,中继节点)的 晶体管。

另外,通过抑制工作频率,从而电源电压也以数学式2所示的关系降 低。

[数学式2]

V=C(1-η)γ·f1γ-1

数学式2中的η是晶体管的工作阈值(threshold)电压与电源电压之 比,γ为依赖于进程规则(process rule)的常数。例如,在γ=2的情况下, 工作频率的降低以3次方影响功耗P,因而在用于容纳高传送速率的链路 上,吞吐量的偏差所引起的功耗变得非常大。

本发明正是为了解决上述技术问题而提出的,其目的在于提供一种通 过有效地抑制路径切换时的总线的资源争夺来能够缩短路径切换延迟并 提高总线的平均利用效率的总线控制装置(中继装置)。

(用于解决技术问题的技术方案)

本发明的总线控制装置设置在总线主控器与被网络化的通信总线之 间,并对在所述通信总线上流动的数据包的发送路径进行控制,所述总线 控制装置具备:路径表管理部,其对多个发送路径以及所述多个发送路径 的每一个的发送状况进行管理;参数生成部,其生成符合规定的概率分布 的参数、或者符合预先确定的规则的参数;决定部,其基于所述多个发送 路径的每一个的发送状况和所述参数,决定发送路径;和中继部,其进行 在所述通信总线上流动的数据包的中继处理。

所述总线控制装置也可以还具备切换部,所述切换部将所述数据包的 发送路径切换为由所述决定部决定的新的发送路径,所述中继部利用由所 述切换部切换后的所述新的发送路径来发送所述数据包。

所述决定部也可以根据所述参数是否被包括在基于表示所述发送状 况的评价值计算出的选择概率的范围内,决定是否切换为与所述选择概率 对应的发送路径。

所述决定部也可以使用与各路径的发送状况的良好程度成比例的概 率分布来进行路径的选择。

所述决定部也可以针对传输速率比基准值高的速率的数据包的数据 流,修正已经在使用中的路径的选择概率,并限制路径切换概率。

所述路径表管理部也可以将发送状况低于预先确定的基准的路径确 定为切换对象的路径,所述参数生成部利用以热噪声为基准的随机数、或 者基于均匀分布、泊松分布或正态分布的伪随机数来生成所述参数,关于 在所述切换对象的路径上传输的数据包的数据流,所述决定部计算出随着 所述发送状况的恶化而变大的评价值,根据所述参数是否被包括在所述评 价值的范围内,决定是否切换为与所述评价值对应的发送路径。

所述路径表管理部也可以将发送状况低于预先确定的基准的路径确 定为切换对象的路径,所述参数生成部利用规则性变化的计数器来生成所 述参数,关于在所述切换对象的路径上传输的数据包的数据流,所述决定 部计算出随着所述发送状况的恶化而变大的评价值,根据所述参数是否被 包括在所述评价值的范围内,决定是否切换为与所述评价值对应的发送路 径。

本发明的控制装置,向设置在总线主控器与被网络化的通信总线之间 的总线控制装置输出指示,并对在所述通信总线上流动的数据包的发送路 径进行控制,所述控制装置具备:路径表管理部,其对多个发送路径以及 所述多个发送路径的每一个的发送状况进行管理;参数生成部,其生成符 合规定的概率分布的参数、或者符合预先确定的规则的参数;和决定部, 其基于所述多个发送路径的每一个的发送状况和所述参数,决定发送路 径,并向所述总线控制装置输出与所决定出的所述发送路径相关的指示。

(发明效果)

根据本发明,生成符合规定的概率分布的参数、或者符合预先确定的 规则的参数,并基于该参数和多个发送路径的每一个的发送状况来决定新 的发送路径。由此,在连接了独立工作的多个总线主控器的一般性网络总 线中,可以防止各总线主控器仅以利己性判断来变更发送路径而产生的资 源争夺所相伴的吞吐量的下降,能够抑制争夺所引起的等待时间的恶化。 另外,由于吞吐量的改善,能够将总线自身的工作频率设定得较低,因而 还可以将总线中的功耗抑制得较低。

附图说明

图1(a)以及(b)是表示NoC总线的部分结构的图。

图2是表示以2维网格型结合了总线主控器的NoC总线的结构例的 图。

图3是表示从发送源到接收目的地为止的3条路径(1)~(3)的图。

图4是表示使用蝶形(butterfly type)多级连接网、即NoC总线构成 了搭载于组装设备中的系统半导体的存储器间接口的例子的图。

图5是作为从CPU访问DRAM0的路径而表示存在路径000102和路 径001102的2条路径的图。

图6是表示CPU所执行的OS或请求(application)是使用路径000102 访问DRAM0的状况的图。

图7是表示在图6的状况下进一步由作为CPU的外围设备的DMAC0 使用路径000102开始了向DRAM0的数据传送的图。

图8是表示进行了路径切换的结果为各总线主控器的存储器访问负 荷集中在中继节点R11、R00中的情况的图。

图9是表示通过概率性的路径切换处理,使得CPU止于路径000102、 且DMAC0进行了向路径001102的切换的情况的图。

图10是表示本发明的实施方式的总线控制装置100的结构例的图。

图11是表示用于进行对存储器的写入访问的数据包的结构例的图。

图12是表示头部片段(flit)的结构例的图。

图13是表示有效载荷(payload)片段的结构例的图。

图14是表示物理地址空间与DRAM0以及DRAM1之间的对应关系 的图。

图15是表示描述图14的对应关系的地址对应表的例子的图。

图16是表示由总线控制装置R00上的路径表管理部102所管理的路 径表的例子的图。

图17是表示数据流表的一例的图。

图18是在图17的数据流表示出的通信状况下,切换了数据流ID为 2的数据流路径时的数据流表。

图19是表示路径切换部104的处理顺序的流程图。

图20是表示对总线控制装置指示发送路径的切换的控制装置的结构 例的图。

具体实施方式

以下,参照附图来说明本发明的总线控制装置的实施方式。

(实施方式1)

在具体说明本实施方式的总线控制装置之前,说明被称作NoC (Network on Chip)的通信总线、在该通信总线上可利用的发送路径、以 及本实施方式的总线控制装置的工作原理。

图4是使用作为蝶形多级连接网的NoC总线构成了被搭载于组装设 备中的系统半导体的存储器间接口的例子。在图4中,通过2输入2输出 的中继节点Rxy(x=0、1,y=0、1、2),多级连接相当于总线主控器的 CPU、DMAC、DSP和作为存储控制器的DRAM0、DRAM1。该构成是 从总线主控器侧向存储控制器侧的一方向性的总线。但是,实际上,除了 从总线主控器向存储器侧的访问之外,还存在从存储器侧向总线主控器的 反方向的传送。然而,关于该构成,只要与本例相同的蝶形网在去程和回 程中被重叠即可,所有网在工作原理上都是相同的。因此,在此,使用从 总线主控器向存储器的去程的网进行说明,省略回程的动作。

在图4中,无论从各总线主控器向哪一个存储控制器传送数据都可以 利用不同的2个传送路径。作为从CPU向DRAM0进行访问的路径,图 5表示了存在路径000102和路径001102这2条路径的情形。虽然在图中 被省略,但是同样地对于从其他总线主控器向任何存储器,都分别存在2 条可利用的路径。

在本实施方式的说明中,通过连结被分配给路径上的中继节点的编 号,从而表示各路径。例如,从图5的CPU朝向DRAM0的路径之中, 由中继节点R00、R01、R02中继的路径被表现为“路径000102”。另外, 由中继节点R00、R11、R02中继的路径被表现为“路径001102”。

图6表示CPU所执行的OS或请求使用路径000102向DRAM0进行 访问的状况。同样地,示出在DSP上工作的微代码使用路径101102向 DRAM0进行访问的状况。在这些状况下,通过任何存储器访问数据流, 都能在所容许的平均访问等待时间的时间内实现存储器访问。

图7示出在图6的状况下进一步由作为CPU的外围设备的DMAC0 使用路径000102开始了向DRAM0的数据传送的情形。由于新产生的存 储器访问数据流的影响,若CPU以及DMAC0的平均访问等待时间超过 容许值,则CPU以及DMAC0进行数据传送路径的切换。

现在,假定在不存在负荷的状态下数据传送数据包通过NoC总线所 需的固定传送延迟为12周期,将从CPU或者DMAC0向DRAM0进行访 问时的平均等待时间在路径000102中是112周期、在路径001102中是 62周期。等待时间随着流动的数据量和中继节点的输出级中的访问的争 夺强度而增大。因此,路径000102的等待时间比路径001102的等待时间 大。

若采用现有技术中的路径切换方法,则CPU、DMAC0均一并从平均 等待时间高的路径000102向平均等待时间低的路径001102进行路径切 换。图8示出进行了路径切换的结果为各总线主控器的存储器访问负荷集 中于中继节点R11、R00的情形态。由于在中继节点R11、R00处导致负 荷的集中,因而基于各数据流的存储器访问状况进一步恶化。

在本实施方式中,在进行路径切换工作时,通过附加概率性举动(概 率性进行路径的切换),来解决这种路径争夺所引起的问题。例如,在图 7的事例中,根据与路径000102的平均等待时间112周期、路径001102 的平均等待时间62周期的比率成反比的比例,概率性选择路径。即,无 论在CPU还是在DMAC0中,选择路径000102的概率都为0.4,选择路 径001102的概率都为0.6。其结果,总线主控器想要同时进行路径切换时 的、成为切换对象的路径以概率分布分散。由此,不会陷入图8所示的路 径资源的争夺所引起的争夺状态。

图9表示利用概率性路径的切换处理而使得CPU止于路径000102、 且DMAC0进行了向路径001102的切换的情形。虽然CPU的访问路径 000102没有变化,但是DMAC0的访问移动到路径001102。因此,从CPU 向DRAM0的路径的等待时间从112周期提高至62周期。另外,由于 DMAC0的访问路径从路径000102向路径001102移动,因而等待时间从 112周期提高至62周期。进而,DSP也利用路径101102在62周期的等 待时间内向DRAM0进行访问。由此可知,访问数据流分散在去往DRAM0 的路径上的中继节点间链路的全部中,从而可有效地利用数据传送带。

以下,参照图10来说明用于进行上述动作的总线控制装置的结构例。

图10表示本实施方式的总线控制装置100的结构例。

总线控制装置具备:中继部101、路径表管理部102、参数生成部103 和路径切换部104。以下,说明各构成要素的功能。

(中继部101)

网络总线上的存储器访问是以数据包为单位进行的。中继部101接受 数据包,参照在该数据包中所描述的目标地址,向相邻的中继装置或 DRAM等存储器发送该数据包。

图11表示用于进行向存储器的写入访问的数据包的结构例。本例的 数据包由4个场构成,具体而言由FLOW ID、ADDR、RW、DATA的各 场构成。

在FLOW ID场中,保存了用于对发行向存储器访问的主体进行确定 的标识符。该值意味着路径的切换单位,使用相同的路径发送具有同一值 的数据包组。若按每个请求管理存储器访问,则可以针对请求来保存固有 的ID,若按构成请求的每个进程进行管理,则也可保存进程ID。若以更 细致的任务为单位进行管理,则也可保存任务ID。

在ADDR场中保存了进行数据写入的存储器地址的信息。在RW场 中保存了用于区分是读出命令还是写入命令的信息。在DATA场中保存 了要写入的数据的位模式(bit pattern)。

数据包的尺寸依赖于所使用的存储器或请求一次所访问的数据的长 度等。因而,1个数据包被分割成比被称作每个总线时钟可传送的片段更 小的单位。一般而言,数据包由一个头部片段和多个有效载荷片段构成。

图12表示头部片段的结构例。本例的头部片段由4个场构成。在 MARKER场中保存了表示是头部片段的信息。在LENGTH场中保存了 与片段数相关的信息。在SRC场中保存了发送源的节点的ID信息。在 DST场中保存了用于对访问目的地的存储器进行识别的信息、以及与所 使用的路径相关的信息。

图13表示有效载荷片段的结构例。在MARKER场中保存了表示是 有效载荷片段的信息。在PACKETPAYLOAD场中,图11所示的数据包 被分割成适当的个数之后保存。

作为设计信息,在地址映射图上定义物理地址空间、和用于对数据包 的发送目的地即DRAM0或DRAM1进行识别的信息之间的对应关系。图 14表示物理地址空间与DRAM0以及DRAM1之间的对应关系。另外, 图15表示描述该对应关系的地址对应表的例子。该地址对应表例如被保 持在总线主控器的内部存储器(未图示)中,并在该内部存储器中被管理。 总线主控器参照该地址对应表来决定数据包的发送目的地。

如图15所示,向描述了位于0x00000000~0x3FFFFFFF的范围内的 地址的访问数据包分配00的存储器ID,并向DRAM0发送数据包。另外, 向描述了位于0x40000000~0x7FFFFFFF的范围内的地址的访问数据包 分配10的存储器ID,并向DRAM1发送数据包。在图12的DST场中, 保存了路径切换部104所管理的路径序号和发送目的地的存储器的标识 符。例如,在从CPU使用路径000102向DRAM0进行访问的情况下,在 DST中保存000。另外,在从DMAC0使用路径001102向DRAM0进行 访问的情况下,保存100。各中继节点读出在头部片段中保存的DST场 的各位的值,决定片段的传送目的地的端口,由此向DRAM0中继数据包。

(路径表管理部102)

图16表示由总线控制装置R00上的路径表管理部102所管理的路径 表的例子。作为从中继节点R00向DRAM0的路径,存在路径000102以 及路径001102。另外,作为向DRAM1的路径,存在路径000112以及路 径001112。因此,路径表管理部102在路径表上与路径评价值一同管理4 条路径的各个路径。

在此,“路径评价值”是表示各路径的传输品质(发送状况)的值, 例如,可以将路径的通信等待时间用作路径评价值。各路径的通信等待时 间能够通过测量经过了该路径的数据包的收发所需的周期数来获得。或 者,也可以具备收发用于对路径的等待时间进行测量的测量用数据包的协 议。

在路径的等待时间超过了预先确定的阈值的情况下,换言之,在路径 的传输品质(发送状况)低于根据阈值预先确定的基准的情况下,路径表 管理部102向路径切换部104发行路径切换请求。在将等待时间的阈值设 为50的情况下,路径000102和路径001102成为切换对象路径,并向路 径切换部104进行通知。

(参数生成部103)

参数生成部103生成符合规定的概率分布的参数、或者符合预先确定 的规则的参数。在本实施方式中,参数生成部103随机地产生0.0至1.0 的范围上的值。例如,参数生成部103由以热噪声为基准的随机数产生用 的硬件构成。或者,参数生成部103也可由基于均匀分布、泊松分布或正 态分布等概率分布的产生伪随机数的软件构成。另外,也可以准备通过上 述方法所产生的概率表格,并分别读出该概率表格。这些是符合概率分布 的参数的生成例。

另一方面,参数生成部103也能够生成符合预先确定的规则的参数。 在此所说的“预先确定的规则”是指,准备例如从0.01至1规则性递增 或递减的计数器,且每隔恒定时间以0.01为单位规则性递增的规则。通 过将计数器所示的各值用作参数,由此成为总线主控器想要同时进行路径 切换时的切换对象的路径被分散。由此,不会陷入图8所示的路径资源的 争夺所引起的争夺状态。

(路径切换部104)

路径切换部104具备决定部106以及切换部108。决定部106与总线 的负荷状况相匹配地决定选择哪条路径。切换部108将一直到现在所采用 的路径切换为由决定部106决定了数据的传输路径的路径。该“切换路径” 是指,变更发送数据包(或片段)的中继装置、或者变更在发送路径上中 继的中继装置。决定部106以及切换部108可不以硬件的形式存在,也可 作为被模块化的程序来实现。

决定部106对图17所示的数据流表进行管理。决定部106针对以从 路径表管理部102接受了路径切换请求的路径正向存储器进行访问的各 数据流,决定切换为哪条路径。切换部108执行向由决定部106决定的路 径的切换。图18表示切换了数据流ID为2的数据流的路径时的数据流 表。以下,参照图19来说明对数据流的路径进行切换的详细处理。以下, 说明从图17的数据流表示出的状态重写为图18的数据流表示出的状态的 例子。在图17中,假设数据流ID为1以及2的各数据流使用路径000102 来进行传输,数据流ID为3的数据流使用路径101102来进行传输。

图19表示路径切换部104的处理顺序。

路径切换部104的决定部106从路径表管理部102接收针对路径 000102的路径切换请求(步骤S1)。此时,决定部106参照图17的数据 流表,进行针对接受了请求的各路径的迭代(步骤S2)。其结果,图17 中所管理的数据流1以及数据流2被识别为路径切换对象的数据流(步骤 S3)。决定部106对各切换对象数据流i进行迭代(步骤S4)。

决定部104从由路径表管理部102所管理的路径表之中读出与存储器 ID为00的DRAM0对应的切换候选路径、即路径000102和路径001102 的路径评价值E1、E2(步骤S5)。

如图16所示,若设路径评价值为E1=112、E2=62,则决定部106 求出这些值的倒数比率、即E1波浪线(tilde)以及E2波浪线(步骤S6)。 该例子的情况下:E1波浪线=62/(112+62)=0.4,E2波浪线=112 /(112+62)=0.6。其次,作为与路径切换的对象数据流、即数据流1 和数据流2分别对应的概率值,从参数生成部103中取得2个概率值P1 以及P2(步骤S7)。现在假设各个概率值分别为P1=0.2以及P2=0.7, 则看到以下关系能够决定切换对象的路径(步骤S8)。即,关于数据流1, 根据以下的基准来切换路径。

如果0<=P1<0.6→P1小于0.6(=E2波浪线),则切换为路径 000102;

如果0.6<=P1<=1.0→P1在0.6(E2波浪线)以上且在1.0(=E1 波浪线+E2波浪线)以下,则切换为路径001102。

另外,关于数据流2,根据以下的基准来切换路径。

如果0<=P2<0.6→P2小于0.6(=E2波浪线),则切换为路径 000102;

如果0.6<=P2<=1.0→P2在0.6(E2波浪线)以上且在1.0(=E1 波浪线+E2波浪线)以下,则切换为路径001102。

根据上述说明可以理解,可以说上述的E2波浪线被用作选择概率。

其结果,如图18所示那样,决定部106更新数据流表。即,数据流 1止于路径000102,数据流2被切换为路径001102(步骤S11)。其结果, 切换部108将数据流2切换为路径001102。然后,决定部106对各切换 对象数据流i进行迭代(步骤S12),对接受了请求的各路径进行迭代(步 骤S13)。根据以上处理,由于数据流概率性地分散在可利用的多个路径 上,因而路径的争夺被抑制。其中,上述的将数据流2切换为路径001102 的处理相当于将发送数据包(或片段)的中继装置从图5所示的R00变 更为R11的处理。

上述的处理是候选路径数为2条时的最简单的例子。因此,以下示出 候选路径较多时的一般性处理的例子。以下,在存在N条候选路径、且 各候选路径的路径评价值为Ei的情况下,为了计算出概率值的范围判定 的比率,在步骤S6中也可以按照其次的数学式3来求出被归一化之后的 值Ei波浪线。

[数学式3]

E~i=Ei-1ΣnEn-1

使用上述的Ei波浪线,在步骤S8中生成的概率值Pi位于下述数学 式4所示的概率范围时,将候选路径j选择为切换目的地的路径。

[数学式4]

Σk=0j-1E~kPi<Σk=0jE~k

其中,假设满足下述数学式5的条件。

[数学式5]

E~0=0

另外,如果可以利用各数据流的平均速率等速率信息,则也可如下述 数学式6那样修正相对于当前正在使用的路径的Ei波浪线的值。

[数学式6]

E~i=(1+w·u(r-rth))·E~i

其中,w为修正系数,u(·)为步幅函数,r为该数据流的平均速 率值,rth为表示是否进行修正的阈值。

由此,速率大的数据流向其他路径移动的概率变低,速率小的数据流 移动的概率变高。在总线上流动的多个存储器访问数据流的速率的偏差 大、且高速率和低速率同时存在的用途中,由于高速率的数据流彼此在概 率性地在切换目的地路径上竞争时,对其他数据流的影响大,因而使低速 率的数据流优先进行路径切换更能够使芯片工作稳定。通过进行概率性的 路径选择,从而避免了始终选择低负荷的路径的情形。因此,可以防止如 现有技术那样利己的路径选择所引起的、与资源争夺相伴的吞吐量的下 降。

另外,在修正中所用到的式子并不限于数学式6。例如,也可使用S 型函数(sigmoid function)如数学式7那样进行定义。也可利用除此之外 的更复杂方法来进行加权。

[数学式7]

E~i=w1+exp(-K·(r-rth))

K是用于对rth附近处的修正的变化程度进行调整的系数。

另外,在步骤S6中,虽然从所读出的路径评价值Ei变换为Ei波浪 线,但是该部分也可以预先作为变换表格来准备。在步骤S6中,将在步 骤S5中读出的路径评价值Ei作为检索的关键来搜索变换表格,取得预先 被保存于表格中的Ei波浪线的值。通过使用变换表格,从而能够削减变 换处理所需的运算时间。

以上,说明了本发明的实施方式。在本实施方式中,假设在决定路径 之后,切换为所决定的路径来传输发送数据。然而,本发明涉及的装置无 需进行一直到实际切换路径的处理,只要进行一直到决定新路径的处理即 可。切换路径的处理例如可以由从本发明的装置接受了指示的已有总线控 制装置来进行。因此,例如也可省略图10示出的切换部108、中继部101。

关于上述变形例,应该注意以下几点。

在本申请说明书中,由于总线控制装置说明了为中继节点的情形,因 而在省略了中继部101的情况下,严格意义上并不相当于总线控制装置。 然而,这只是单纯的表现问题。省略了中继部101的构成在对数据传送路 径的切换进行控制的意义上是指总线控制装置的范畴。或者,该构成也能 够视作向一般性总线控制装置指示发送路径的切换的“控制装置”。

图20示出控制装置110的结构例。控制装置110的路径切换部104 从一般性总线控制装置111接受数据包(接收数据),进行上述的处理(省 略说明),由此决定该数据包的输出路径。并且,路径切换部104按照在 所决定的发送路径中进行发送的方式,发送与发送路径相关的指示,并且 将该数据包(发送数据)发送给一般性总线控制装置111。

在上述的实施方式中,存储器被设成了DRAM,但是也可以是SRAM 等片上存储器(on-chip memory)或高速缓冲存储器。另外,不仅适用于 总线主控器与存储器之间,也适用于处理器彼此之间的通信网。另外,也 可以是拓扑网、网格网、环形网、其他多级连接网。另外,也可在芯片设 计时所使用的用于估计传输性能或功耗等的软件·模拟器(simulator)上, 作为算法(algorithm)来安装。通过在设计工具中适用本实施方式,能够 在掩蔽(masking)前的评价阶段验证芯片的性能提高。

(产业上的可利用性)

本发明可利用于面向组装设备的SoC中的片上总线(on-chip bus)、 通用处理器、DSP上的局部总线上的具备数据传送路径的控制技术的网 络总线控制装置、控制方法、控制程序。

符号说明

100总线控制装置

101中继部

102路径表管理部

103参数生成部

104路径切换部

110控制装置

111一般性总线控制装置

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号