CN103828312A - 总线系统以及中继器 - Google Patents

总线系统以及中继器 Download PDF

Info

Publication number
CN103828312A
CN103828312A CN201380003156.9A CN201380003156A CN103828312A CN 103828312 A CN103828312 A CN 103828312A CN 201380003156 A CN201380003156 A CN 201380003156A CN 103828312 A CN103828312 A CN 103828312A
Authority
CN
China
Prior art keywords
grouping
data
transmission
repeater
rank
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201380003156.9A
Other languages
English (en)
Other versions
CN103828312B (zh
Inventor
得津觉
石井友规
吉田笃
山口孝雄
山田隆史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN103828312A publication Critical patent/CN103828312A/zh
Application granted granted Critical
Publication of CN103828312B publication Critical patent/CN103828312B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

在不过度估计NoC总线上所传输的各业务的不同的要求性能的前提下,求取性能保证所需的总线频带,进而增大剩余频带的利用效率。在NoC总线系统中,经由中继器在第1节点以及第2节点之间传输数据。该数据包含保证吞吐量以及容许延迟时间的至少一者的性能保证数据。第1节点生成多个包含所传输的数据以及用于识别所传输的数据的要求性能的识别信息在内的分组,控制分组的发送。中继器具备:缓冲器部,其基于识别信息,按每个要求性能来对接收到的分组进行分离并保存;以及中继控制部,其按每个识别信息,以与识别信息对应的全部的第1节点要保证的发送速率的合计值以上的发送速率,来对保存在缓冲器部中的各分组的发送进行控制。

Description

总线系统以及中继器
技术领域
本发明涉及用于在设置于半导体的集成电路上的具备经网络化的通信总线(分布式总线)的总线系统中进行通信总线的控制的技术。
背景技术
NoC(Network-on-Chip;片上网络)是设置于作为半导体的集成电路的半导体芯片上的经网络化的通信总线。在NoC中,以中继器(路由器)来连接总线,共用相同的总线来传输从多个主机发送的业务。由此,能削减总线的条数,效率良好地利用总线。
然而,在NoC中,由于在多个主机的业务中共用总线,因此性能保证(吞吐量保证和延迟保证)变得困难。
多个主机独立地运行要求不同的性能的业务。故而,在相同的总线之中例如是在想以短的延迟时间来传输的业务(延迟保证)、始终想保证恒定的传输量的业务(吞吐量保证)、以及需要不定期地进行大容量的数据通信的业务混合存在的状态下传输的。
在NoC中,需要保证以最低限度所需的总线频带来满足各业务的要求性能(吞吐量以及延迟时间的至少一者)的性能保证机制的实现。若NoC的性能保证予以实现,则能效率更良好地利用总线,以及以满足要求性能的最小限度所需的总线频带来进行设计。其结果,总线的硬件设计和开发变得容易。
在现有的中继器之中,存在判断业务的优先级的中继器。在缓冲器中保存有优先级高的业务的数据的情况下,该中继器将该缓冲器切换为高优先来进行传输处理。图1(A)示出将缓冲器302~304当中保存有优先级高的业务的缓冲器304以及303的业务的数据先输出的中继器301的构成例。设数字的值越大则优先级越高。中继器301根据输入缓冲器的排头的数据的优先级来决定要输出的业务的数据。
然而,在这样的中继器中,在同一缓冲器内,不同的优先级的业务混合存在。其结果,存在高优先的业务会受低优先的业务的干扰的影响这一问题。
例如,专利文献1以及非专利文献1公开了用于应对这样的问题的技术。图1(B)示出在图1(A)的中继器301中,使用所保存的消息之中最高的优先级来决定输入缓冲器的优先级,并根据输入缓冲器的优先级来输出数据的构成例。
在图示的例子中,在输入缓冲器302中保存有优先级为3的消息、以及优先级为1的消息。另外,在输入缓冲器303中保存有优先级为2的消息、以及优先级为1的消息。而且,在输入缓冲器304中保存有优先级为1的消息、优先级为2的消息、以及优先级为3的消息。
各输入缓冲器的优先级使用所保存的消息的最高的优先级而被决定。故而,输入缓冲器302的优先级成为3,输入缓冲器303的优先级成为2,输入缓冲器304的优先级成为3。其结果,所发送的消息成为按照优先级从高到底的顺序,即输入缓冲器302和输入缓冲器304的排头处所保存的消息。
作为结果,优先级为3的消息进入的输入缓冲器302能不依赖于在此之前所保存的消息的优先级,而优先地进行传输处理。而且,即使低优先级的消息占据缓冲器的前方,也能减小优先级高的消息的延迟。
在先技术文献
专利文献
专利文献1:美国专利申请公开第2005/0117589号说明书
非专利文献
非专利文献1:Jean-Jacques Lecler,Gilles Baillieu著,“ApplicationDriven Network on Chip Architecture Exploration&Refinement for aComplex SoC”,Springer Verlag′s Design Automation for Embedded SystemsJournal,Volume15,Number2,pp.133-158
发明内容
发明要解决的课题
然而,在现有技术的方式下,优先级高的消息至少到在此之前所保存的其他的消息的传输完成为止,都不会被传输。故而,优先级高的消息的中继器中的延迟时间受优先级低的消息的影响,容易被设定得大。
为了在这样的条件下保证性能,必须准备比实际所需的频带过大的频带。另外,根据缓冲器内的高优先级与低优先级的比例,需要的传输频带也相应不同。
用于解决课题的手段
为了解决上述课题,本发明的一形态包含经由经网络化的总线以及配置在所述总线上的至少一个中继器而在第1节点以及至少一个第2节点之间传输数据的、半导体电路的总线系统。所传输的数据包含保证吞吐量以及容许延迟时间的至少一者的性能保证数据。所述第1节点具备:分组生成部,其生成多个包含所传输的数据以及用于识别所传输的数据的要求性能的识别信息在内的分组;以及发送控制部,其控制所述分组的发送。所述至少一个中继器具备:缓冲器部,其基于所述识别信息,按每个所述要求性能来对接收到的所述分组进行分离并保存;以及中继控制部,其按每个所述识别信息,以与识别信息对应的全部的第1节点要保证的发送速率的合计值以上的发送速率,来对保存在所述缓冲器部中的各分组的发送进行控制。
上述的一般的且特定的形态能使用系统、方法以及计算机程序来安装,或使用系统、方法以及计算机程序的组合而得以实现。
发明效果
根据本发明的某实施方式的总线系统,在中继器中,通过根据要求性能而应该传输的数据被切换的缓冲器构成、以及主机和中继器中的发送调度,能抑制相互的干扰,能将实现性能保证的总线动作频率估计得小。例如,通过使高优先的性能保证级别的业务能不受低优先的非性能保证级别的业务的干扰地进行传输,从而能在估计总线频带时减少干扰的业务量,从而能在不过度估计的前提下,以小的总线动作频率构筑性能可保证的总线。另外,通过主机和中继器中的发送调度,能尽量减少根据最差估计而产生的总线的剩余频带,换言之能增大总线的剩余频带的利用效率。
附图说明
图1(A)是表示将缓冲器302~304当中保存有优先级高的业务的缓冲器304以及303的业务的数据先输出的中继器301的构成例的图,(B)是表示在图1(A)的中继器301中,使用所保存的消息之中最高的优先级来决定输入缓冲器的优先级,并根据输入缓冲器的优先级来输出数据的构成例的图。
图2是表示根据性能保证级别/非性能保证级别而应用的本实施方式的处理的策略的图。
图3是表示由本发明的一实施方式的中继器103所构成的NoC的一例的图。
图4是表示NoC的构成要素的概念的图。
图5是示意地表示图3的NoC的构成的图。
图6(A)以及(B)是表示按每个中继器而设定的发送速率值的例子的图。
图7(A)以及(B)是表示将中继器103的构成应用于互联网的情况与应用于半导体的总线系统的情况的效果的差异的图。
图8是表示具备本发明的某实施方式所涉及的中继器的NoC的动作的流程图。
图9是表示为了降低需要的总线动作频率的估计,而至少能区分性能保证数据与非性能保证数据的级别分类规则的例子的图。
图10是表示主机所发行的业务的要求规格的定义的具体例的图。
图11是表示按每个总线主机101而分类的级别及其具体例的图。
图12是表示主机侧NIC102的构成的图。
图13是表示主机侧NIC102的动作流程的图。
图14是表示分组202的数据结构的图。
图15是表示设置于主机侧NIC102的速率控制部804的构成的图。
图16是表示速率值存储部1003所存储的速率值的图。
图17是表示速率控制部804的动作流程的图。
图18是表示发送可否决定部1001所执行的发送可否的决定处理S1103的动作流程的图。
图19是表示定时器处理部1002的动作流程的图。
图20是说明在主机侧NIC102和中继器103中进行的一般的流程控制的图。
图21(A)以及(B)是表示流程控制与速率控制的差异的图。
图22是表示中继器103的构成的图。
图23是表示级别存储部1411中所存储的级别的优先级信息的图。
图24是中继器103的输出调节部1410对要发送的缓冲器的优先顺位进行了调节的结果的具体例。
图25是表示中继器103的动作流程的图。
图26是表示中继器103的级别解析部1403的输入输出关系的图。
图27是表示中继器103的速率控制部1409的构成的图。
图28是表示速率控制部1409的动作流程的图。
图29是表示速率控制部1409的发送可否的决定处理的动作流程的图。
图30是表示定时器处理部的管理信息的具体例的图。
图31是表示速率控制部1409的定时器处理部2002的动作流程的图。
图32是表示速率控制值存储部2003按每个级别来管理的发送速率值的一例的图。
图33是表示输出调节部1410的动作流程的图。
图34是表示输出调节部1410对要发送的输入缓冲器1415进行调节的处理(S2805)的流程图的图。
图35是表示中继器103的缓冲器信息存储部1407的管理信息的构成例的图。
图36(a)~(c)是表示能作为本发明的其他实施方式应用的NoC网的例子的图。
图37是表示在分离出指令和数据的情况下的缓冲器构成的例子的图。
图38是表示作为分离出指令与数据的情况下的效果,能缩短针对指令的延迟的图。
图39是表示复用分组来进行传输的方法的概要的图。
图40(A)以及(B)是表示与分组复用的有无相应的分组传输例的图。
图41是表示用于分组复用的分组202的构成的图。
图42是表示用于分组复用的主机侧NIC102的动作流程的图。
图43是表示用于分组复用的从机侧NIC104的构成的图。
图44是表示用于分组复用的从机侧NIC104的动作流程的图。
图45是表示将半导体电路上的多个主机、与用于同多个存储器以及外部来通信数据的共用的输入输出端口(I/O端口)利用分布式的总线来进行了连接的例子的图。
图46是表示为了使CPU或GPU、DSP等核处理器的处理能力得以提高而将多个核处理器排列成网眼状,并将它们以分布总线进行了连接的多核处理器的图。
图47(a)~(c)分别表示与延迟保证级别的优先级关联的分类的例子。
具体实施方式
本发明的例示性实施方式对于流过总线的各个业务的要求性能,求取不成为过度估计的总线频带。在此基础上,尽量降低基于最坏情况估计而产生的总线的剩余频带。
在说明本公开的例示性实施方式之前,对本申请说明书中使用的术语进行说明。此外,除了以下的术语以外,还在实施方式的说明中适当地说明术语。
“具有突发性”是指,例如在总线主机连续地发送业务的通信数据的同时,这些业务的容许延迟时间短,或要求频带大。例如,在具有突发性的总线主机所发送的通信数据中,分类出影像系的数据。在不具有突发性的延迟保证级别的通信数据中,分类出USB的数据。有还是没有突发性是基于设计者的观点来决定的。
“非性能保证数据”是指,不保证吞吐量以及延迟两者也可以的数据。
“要求频带”是指,通过吞吐量保证来保证的业务的每单位时间的传输量。
业务的“截止时刻”表示,由开始了业务的传输的总线主机所指定的到达接收目的地(从机)的时刻。
例如,根据本发明的例示性实施方式,能得到以下的总线系统以及中继器。
即,根据某实施方式,半导体电路的总线系统是经由经网络化的总线以及配置在所述总线上的至少一个中继器而在第1节点以及至少一个第2节点之间传输数据的半导体电路的总线系统,所传输的数据包含保证吞吐量以及容许延迟时间的至少一者的性能保证数据,所述第1节点具备:分组生成部,其生成多个包含所传输的数据以及用于识别所传输的数据的要求性能的识别信息在内的分组;以及发送控制部,其控制所述分组的发送,所述至少一个中继器具备:缓冲器部,其基于所述识别信息,按每个所述要求性能来对接收到的所述分组进行分离并保存;以及中继控制部,其按每个所述识别信息,以与识别信息对应的全部的第1节点要保证的发送速率的合计值以上的发送速率,来对保存在所述缓冲器部中的各分组的发送进行控制。
在某实施方式中,所述至少一个中继器存在多个,多个中继器以同一动作频率进行动作,且所述多个中继器中所具备的各中继控制部以同一发送速率来控制所述各分组的发送,所述同一发送速率被设定为所述多个中继器要保证的各发送速率当中的最大的发送速率以上。
在某实施方式中,对于各性能保证数据预先设定要保证的发送速率,所述发送控制部以超过所述性能保证数据要保证的发送速率的给定速率,或不对发送速率设置限制地,控制所述性能保证数据的分组的发送,所述至少一个中继器利用能维持要保证的所述发送速率的第1频带以及作为剩余频带的第2频带,能以超过要保证的发送速率的速率来传输所述性能保证数据的分组,所述中继控制部基于所述识别信息,将保存在所述缓冲器部中的多个分组当中所述性能保证数据的各分组分类成是利用所述第1频带进行传输,还是利用所述第1频带以及所述第2频带进行传输,并优先地传输利用所述第1频带的各分组。
在某实施方式中,所述所传输的数据还包含不保证吞吐量以及容许延迟时间两者的非性能保证数据,所述发送控制部不对发送速率设置限制地控制所述非性能保证数据的分组的发送,所述缓冲器部还将接收到的所述非性能保证数据的分组进行分离并保存,所述中继控制部按照所述性能保证数据的分组、以及所述非性能保证数据的分组的顺序来进行传输。
在某实施方式中,所述分组生成部还对所述分组赋予与所述分组的截止时间相关的时间信息,所述中继控制部针对被赋予了同一识别信息的分组,按照各分组的所述截止时间来决定传输的顺位。
在某实施方式中,与所述截止时间相关的时间信息是以下信息的任一者:所述分组要到达所述至少一个第2节点的截止时间的信息、所述第1节点发送所述分组的时刻的信息、所述第1节点以及所述中继器的处理时间的累积值的信息、以及表征所述分组在所述第1节点处的发送顺序的发送计数器的值的信息。
在某实施方式中,与所述截止时间相关的时间信息是以下信息的任一者:所述分组要到达所述至少一个第2节点的截止时间的信息、所述第1节点发送所述分组的时刻的信息、所述第1节点以及所述中继器的处理时间的累积值的信息、以及表征所述分组在所述第1节点处的发送顺序的发送计数器的值的信息。
在某实施方式中,在与所述截止时间相关的时间信息表示所述截止时间的情况下,所述中继控制部从所述截止时间早的分组起优先发送。
在某实施方式中,关于利用所述第1频带以及所述第2频带而被传输的各分组,所述中继控制部以及所述发送控制部基于总线系统的成为瓶颈的节点或链路的处理能力来决定超过要保证的发送速率的速率。
在某实施方式中,所述性能保证数据包含具有突发性的突发数据以及不具有突发性的非突发数据,所述分组生成部所赋予的所述识别信息能识别所述突发数据、非突发数据,所述至少一个中继器的缓冲器部在所述多个缓冲器中分离所述突发数据、非突发数据来进行保存,所述至少一个中继器的所述中继控制部按照所述突发数据、非突发数据的顺序来传输所述分组。
在某实施方式中,所述第1节点的发送控制部以预定的发送速率来发送所述突发数据,所述中继控制部至少以预定的发送速率来发送所述突发数据。
在某实施方式中,所述至少一个第2节点存在多个,所述至少一个中继器的缓冲器部在所述多个缓冲器中分离每个第2节点的分组来进行保存。
在某实施方式中,分组之中存在输送指令的分组和输送数据的分组,所述中继控制部对于输送所述指令的分组不设置发送速率限制地进行发送。
在某实施方式中,分组之中存在输送指令的分组和输送数据的分组,所述至少一个中继器的缓冲器部在所述多个缓冲器中分离输送所述指令的分组与输送所述数据的分组来进行保存。
在某实施方式中,所述第1节点的分组生成部复用多个分组来进行传输。
在某实施方式中,发送经复用的所述分组的所述第1节点以及所述至少一个中继器具备:信号线,其传输表示用于将经复用的所述分组还原成各个数据的分割位置的信息。
本发明的其他实施方式所涉及的中继器配置在设置于半导体电路的总线系统的经网络化的总线上,对在所述总线系统的第1节点以及至少一个第2节点之间传输的数据进行中继,所述第1节点生成多个包含所传输的所述数据以及用于识别所传输的所述数据的要求性能的识别信息在内的分组并发送,所传输的所述数据包含保证吞吐量以及容许延迟时间的至少一者的性能保证数据,所述中继器具备:缓冲器部,其基于所述识别信息,按每个所述要求性能来对接收到的所述分组进行分离并保存;以及中继控制部,其按每个所述识别信息,以与识别信息对应的全部的第1节点要保证的发送速率的合计值以上的发送速率,来对保存在所述缓冲器部中的各分组的发送进行控制。
以下,参照附图来说明本发明的一实施方式的中继器。
在本说明书中,说明如下技术:在半导体的集成电路中的分布式总线(NoC)上,对于流过总线的具有不同的要求性能的多个业务,在抑制相互的干扰的同时,基于定量的验算来在小的总线动作频率下提高总线的传输效率。一并地,还关于NoC中所使用的用于保证性能(吞吐量和容许延迟时间)的中继器的构成、以及分布式总线上的QoS(Quality of Service;服务质量)进行说明。
本申请发明者们根据业务的要求性能,来对业务设定了“级别”。即,对于从作为输出节点的总线主机输出的业务,设定多个级别当中的任一级别,在中继器中,为了抑制级别间的干扰,分离设置了按每个级别来保存业务的缓冲器。例如,在本申请说明书中,大致划分地设定2个级别,即性能保证级别和性能非保证级别。各自能根据要求性能而划分成更细致的级别。细节将与后述的例示性实施方式相关联地进行说明。
在本发明的某实施方式中,在中继器和总线主机,对于要求性能相对严格的性能保证级别的业务,以高优先级且在速率控制下进行传输处理。另外,对于即便在性能保证级别之中要求性能也相对不严格的业务,或不存在要求性能的非性能保证级别的业务,虽然处于低优先级但超过要求频带地传输业务。由此,首先能对于性能保证级别的业务保证性能。另一方面,对于即便在性能保证级别之中要求性能也相对不严格的业务,或非性能保证级别的业务,能利用基于最差估计而产生的总线的剩余频带来进行传输。通过抑制每个要求性能的干扰,提高总线的利用效率,从而能不需要过度地估计保证性能所需的总线频带,而以小的总线动作频率来构筑可实现性能保证的总线。进而,由于能抑制总线动作频率,因此能实现总线的消耗电力的抑制、安装面积的抑制、布局的自由度的增大、总线布线的抑制。
图2示出对应于性能保证级别/非性能保证级别而被应用的本实施方式的处理的策略。
当前,如图2所示,设将性能保证级别A、B、C、非性能保证级别Z规定为业务的级别。
关于级别A、B的业务,在中继器和总线主机中,通过设定基于要求频带的发送速率值(上限值)来控制业务的发送速率,从而来保证性能。尤其是级别A的要求性能比级别B严格,级别A的业务是以更高优先级来传输的。
级别C的业务在中继器和总线主机中是以超过要求频带的发送速率来发送的。由此,能在保证性能的同时利用总线的剩余频带。
级别Z以上述的级别之中最低的优先级来进行处理。能将非性能保证数据无发送速率的上限地进行发送,利用总线的剩余频带。另外,在中继器中,将缓冲器按每个级别进行分离,通过每个级别的传输控制,从而能抑制级别间的干扰,且能以更低延迟来传输高优先的业务。基于这些,在小的总线动作频率下,能在保证性能的同时提高总线的利用效率。
此外,“最差估计”是指,在设计时设想总线系统的最差情况时的业务的状态,来计算能保证性能的总线频带。实际中业务量有时比最差时更小,由此产生剩余频带,即总线产生富余。
<整体构成>
图3示出由本发明的一实施方式的中继器103所构成的NoC的一例。在图3中,示出了中继器103的缓冲器构成例和基于分组的传输例。
NoC具备:总线主机101、主机侧网络·接口·控制器(Network InterfaceController;NIC)102、至少一个中继器(例如中继器103)、从机侧NIC104、以及从机105。
总线主机101(有时也简称为“主机”。)与主机侧NIC102连接。主机侧NIC102以及从机侧NIC104经由至少一个中继器(例如中继器103)进行连接。从机侧NIC104与从机105连接。此外,在以下的说明中,上述的至少一个中继器均具有相同的构成,进行相同的动作。因此,以下,作为至少一个中继器,以中继器103为例来进行说明。
中继器103具备保存分组202的输入缓冲器部1404。输入缓冲器部1404根据进行中继的分组202的级别,来按每个级别保存分组202。通过具有这样的输入缓冲器部1404,从而中继器103能调节要传输的分组202的优先顺位。细节将后述。另外,主机侧NIC102以及中继器103为了按每个级别来以预先设定的速率发送分组,分别具备速率控制部(后述)。
主机侧NIC102根据从总线主机101接收到的通信数据201来生成1以上的分组202。主机侧NIC102将分组202分割成能以总线的动作频率的1周期来送出的尺寸进行传输。在本申请说明书中,将具有能以总线的动作频率的1周期送出的尺寸的数据单位称为“微片”(flit)。在图3中,示出了多个微片203。
所传输的分组保存在中继器103所具备的输入缓冲器部1404中,在从中继器103以微片203为单位进行送出的同时,传输至从机侧NIC104。从机侧NIC104根据接收到的多个微片203来构筑各分组,进而根据多个分组来构筑原始的通信数据,并向从机105进行传输。
图4示出NoC的构成要素的概念。
在本说明书中,定义术语如下。
将总线主机101以及主机侧NIC102统称为“第1节点211”。
将从机105以及从机侧NIC104统称为“第2节点215”。
在宏观上观察1个或多个中继器103而视为1个中继器,称为中继器206。
将第1节点211、第2节点215以及中继器206整体称为“总线系统5501”。
以下,参照附图来说明本发明的例示性实施方式的中继器206。
图5示意地表示图3的NoC的构成。
首先,主机侧NIC102在输入缓冲器部(未图示)中从主机101接受各业务的数据,以满足各业务的要求性能所需的按每个主机101而设定的发送速率来发送分组202。
中继器103具备输入缓冲器部1404以及速率控制部1409。
输入缓冲器部1404(缓冲器部)具备对按每个接收目的地且按每个级别而分离出的业务进行保存的输入缓冲器1405。图5示出了由FIFO(FirstIn,First Out;先入先出)的缓冲器构成的例子。通过具备这样的输入缓冲器部1404,从而在中继器103中,高优先级的级别的业务能不受低优先级的级别的业务的影响地进行发送的切换。此外,在本实施方式中,以缓冲器作为输入缓冲器来进行说明,但即便将缓冲器作为输出缓冲器来具备,也能同样地应用。其理由在于,不依赖于具备缓冲器的位置,能根据要求性能将分组进行分离并保存,能控制向相邻的中继器或从机侧NIC的分组的发送速率即可。
速率控制部1409以按每个级别而设定的发送速率来传输分组。例如速率控制部1409可以以发送间隔这样的形态来设定发送速率。此外,在本申请说明书中,速率控制部有时也称为“中继控制部”。
针对中继器103的速率控制部1409的发送速率,由于从多个主机发行的分组合流,因此将在主机侧NIC102中要保证的发送速率以上的发送速率值按每个级别进行设定。例如,在存在分类为相同的级别的N个主机且以给定的发送间隔来设定发送速率的情况下,发送间隔被设定为将主机侧NIC的发送间隔除以N而得到的值以下。也就是说,以各主机要保证的发送速率之和以上的发送速率来进行传输。另外,通过不仅在主机侧NIC还在中继器中也进行速率控制,从而能端对端地实现各级别的延迟保证和吞吐量保证。
具体而言,作为中继器中的发送速率的设定方法,考虑基于通过各中继器的要保证的业务量,按每个中继器来设定各个单独的发送速率值的方法。
图6(A)以及(B)示出按每个中继器而设定的发送速率值的例子。
图6(A)示出基于流过各中继器的业务来对要保证的最小限度的发送速率值进行设定的例子。例如,如图6(A)所示,将涉及来自主机A0、A1的各业务要保证的发送速率之和设定为中继器R2的业务的发送速率来进行控制。若通过这样的方法来设定各中继器的发送速率,则能使各中继器的总线动作频率最小化。其中,由于必须在最适当的频率下设计各中继器,因此安装成本变大。
作为其他的例示性实施方式,还考虑对各中继器设定同一发送速率值。也就是说,对于各级别,基于系统整体上要保证的业务量最多合流的中继器的发送速率,设定为各中继器的业务的发送速率来进行控制。
例如,如图6(B)所示,在中继器R2中,基于业务最多合流的中继器R3的发送速率值(主机B0、B1、B2的保证速率之和),来设定各中继器中的业务的发送速率。通过将系统整体中成为最大的发送速率设定为各中继器的发送速率,从而在网络整体上难以出现瓶颈。故而性能保证变得容易,另外,由于能在单一的动作频率下进行设计,因此硬件的安装变得容易。
此外,作为各中继器的中继控制部中的发送速率,公共地设定系统整体中成为最大的发送速率,但这只是一例。可以设定比系统整体中成为最大的发送速率更大的发送速率。
其中,在各中继器以同一动作频率进行动作、且在各中继控制部中设定了同一发送速率的情况下,一部分的中继器被设定大到所需以上的发送速率。其结果,将以大到所需以上的动作频率来动作。
此外,在用于以要保证的发送速率之和来动作的动作频率过度变大的情况下,可以不以同一动作频率来驱动全部的中继器。例如,像系统总线或局部总线那样,以总线的作用的单位,改变动作频率,选择最大发送速率的中继器,设定发送速率。由此,能抑制离主机较近的局部总线的中继器的动作频率过度变大。
作为输入缓冲器部1404中的级别构成,例如考虑分类为:应该考虑延迟的延迟保证级别和无需考虑延迟的非延迟保证级别。延迟保证级别尤其细分类为:具有突发性的级别A和除此以外的级别B。在本实施方式中,根据细分类后的下位级别来分配了输入缓冲器。
此外,对于延迟保证级别和非延迟保证级别的下位的级别构成,能分别以任意的级别数来分配任意的输入缓冲器数。
在本实施方式中,基于能被容许的延迟来进行“延迟保证级别”的分类。但是,也可以不是基于延迟,而是基于吞吐量来进行“延迟保证级别”的分类。在本实施方式中,只要基于延迟以及吞吐量的至少一者的保证来进行延迟保证级别的分类即可。
中继器103的输入缓冲器部1404以及主机侧NIC102的输入缓冲器部(未图示)是按每个接收目的地来分离缓冲器而构成的。通过不仅按每个级别进行分离,还按每个接收目的地来分离缓冲器,从而能抑制每个接收目的地的业务的干扰,即使在去往某接收目的地的业务中总线之中发生了拥塞的情况下,去往其他的接收目的地的业务也能确保缓冲器,通过保证这一点,能可靠地传输去往其他的接收目的地的业务。
另外,若分离缓冲器,则在由FIFO构成了缓冲器的情况下通过按每个级别和接收目的地来切换发送,从而能抑制优先级间的业务的干扰、不同的接收目的地间的业务的干扰。其中,只要使用可随机访问的存储器等能进行发送的切换,且能管理按每个级别以及每个接收目的地而使用的缓冲器,也可以不物理性地分离缓冲器。
例如,在中继器103中与可随机访问的存储器一并设置作为数据的地址表即可。地址表是在存储器内对按各级别的每个接收目的地从机保存的地址和保存的分组进行管理的表。通过使用该存储器以及地址表,从而能自由地读写中继器103的输入缓冲器中所保存的任意的分组。由此,可得到逻辑性地分离出缓冲器的效果。在将低优先的分组或去往某特定的接收目的地的分组保存在缓冲器中的情况下,也能与它们无干扰地传输高优先的分组或去往别的接收目的地的分组。
另外,作为另一例,可以构成为:高优先的业务能利用低优先的业务所使用的缓冲器。在此情况下,在高优先的业务能利用的缓冲器之中,存在不被低优先的业务造成干扰的缓冲器和造成干扰的缓冲器两者,但不被干扰的缓冲器至少确保1个以上即可。其结果,能抑制基于低优先级的业务的干扰。
另外,作为在中继器103的速率控制部1409与主机侧NIC102的速率控制部(未图示)之间控制发送速率的方式,在本实施方式中根据安装的简便程度,控制了分组的发送间隔。例如,在想以更大的发送速率来传输业务的情况下,通过将发送间隔设定得更小,从而能增大发送速率。具体而言,在想使业务的发送速率成为2倍的情况下,将发送间隔设定为一半。在想使发送速率成为一半的情况下,将发送间隔设定为2倍。但是,例如,可以通过对每单位时间或每单位周期的发送数据量或发送数据长度进行测量的方法等其他的手段来予以实现。另外,尽管从机一般由存储器、存储器控制器构成,但也可以不仅是存储器还是主机或I/O、中继器等任意的节点。
基于本实施方式所涉及的中继器103的流程控制与应用于互联网的流程控制大不同。以下,参照图7来说明其理由。
图7示出在将上述的中继器103的构成应用于互联网的情况下与在应用于半导体的总线系统的情况下的效果的差异。
在互联网(图7(A))中,从主机发送的数据的流程控制是通过TCP(Transmission Control Protocol;传输控制协议),基于主机与从机之间的交换来进行的。另一方面,在传输路径上的中继器中,进行决定传输路径的路由控制或QoS控制。但是,在互联网的中继器中,不能进行流程控制。在互联网中,由于在相邻的节点的缓冲器中与空闲状态无关系地进行数据的发送,因此存在因缓冲器溢出而引起的数据的丢失发生的可能性。
在图7(A)的例子中,缓冲器中有空闲的中继器1、中继器2、从机能接收从相邻的节点发送出的数据。另一方面,在缓冲器中无空闲的中继器3中不能将数据保存至缓冲器,会发生缓冲器溢出。另外,以避免拥挤为目的,即使在缓冲器溢出发生前在路由器侧进行分组废弃,也会发生数据的丢失。
另一方面,在本实施方式作为对象的半导体的总线系统(图7(B))中,在传输路径上的全部的节点间进行流程控制。具体而言,各节点在发送数据时,确认相邻的发送目的地的节点的缓冲器的空闲状态,仅在缓冲器中有空闲的情况下发送数据。
故而,在发送目的地的节点的缓冲器中无空闲的情况下,通过停止数据的发送,能避免缓冲器溢出。在图7(B)的例子中,仅确认了在相邻的发送目的地的节点(包含中继器。)的缓冲器中有空闲的主机、中继器1、中继器3发送数据。未能确认相邻的发送目的地节点的缓冲器有空闲的中继器2停止数据的发送。由此,能避免基于缓冲器溢出的数据的损失。如此在本实施方式作为对象的半导体的总线系统中,从以传输路径上的数据的丢失不会发生为前提这一点来说,与互联网技术大不同。
假如将上述的实施方式的公开应用于互联网,则关于不进行速率控制的业务、或超过要求频带来进行传输的业务,因过度被送交的数据,会在路径上发生缓冲器溢出以及分组丢失。检测到该分组丢失的发送节点动态地减小数据量来重新发送数据,因此难以使剩余频带的利用效率最大化,以及难以保证延迟和吞吐量的性能。
另一方面,在上述的半导体的总线系统中,过度被送交的数据不丢失而蓄积在中继器的缓冲器中。故而,中继器例如能利用未发送高优先级的数据的时间段来发送在缓冲器中蓄存的低优先级的数据,能使总线的利用效率得以提高。在中继器中存在未进行高优先级的数据的传输的时间段,在该时间段中总线的频带存在富余。如后所述,本实施方式所涉及的中继器能利用该剩余频带来传送数据。
<整体流程>
图8是表示具备本发明的某实施方式所涉及的中继器的NoC的动作的流程图。
总线主机101将通信数据201向主机侧NIC102进行发送(S501)。主机侧NIC102将接收到的通信数据201变换成分组202,以按每个级别而设定的发送速率将分组202向中继器103传输(S502)。
针对延迟保证级别的级别A以及B的发送速率,主机侧NIC102设定能保证各级别的要求频带和延迟的性能的发送速率。针对级别C的发送速率,主机侧NIC102为了在保证要求频带和延迟的性能的同时利用剩余频带,而以超过要求频带的上限值来设定发送速率,或者不设定上限。
针对非延迟保证级别(级别Z)的发送速率,主机侧NIC102为了利用剩余频带而不设定发送速率的上限。此外,对于这4级别,按照级别A、B、C、Z的顺序定义为传输的优先级从高到低。也就是说,级别A是以最高的优先级进行处理。图2示出与性能保证级别A~C以及非性能保证级别Z间的优先级、以及速率控制有关的差异点。
1个或其以上的中继器103根据接受到的分组202的接收目的地从机ID以及级别,从优先级高的级别起依次以所设定的速率值来传输分组(S503)。
从机侧NIC104将从中继器103接受到的分组202变换成原始的通信数据201,将通信数据向从机105传输(S504)。从机105对接受到的通信数据201进行解释,若需要应答(S505的“是”),则生成用于应答的通信数据,向从机侧NIC104进行发送(S506)。从机侧NIC104将从从机接收到的应答的通信数据201变换成分组202,向中继器103传输分组202(S507)。中继器103观察接收到的分组202的接收目的地,决定转发目的地来进行传输(S508)。主机侧NIC102将接受到的分组202变换成通信数据201,将通信数据201向总线主机101进行发送(S509)。
图9示出了为了降低需要的总线动作频率的估计而至少能区分性能保证数据与非性能保证数据的级别分类规则的例子。总线系统的设计者按照该级别分类规则来设定总线主机的级别。尽管不是中继器等的动作,但在以下进行说明。
为了预先分类各主机的级别,首先在设计时,设计者定义由全部的主机发行的业务的要求规格(S3201)。
设计者将优先级低且仅在总线空闲时可以传输的主机分类为级别Z(S3202)。级别Z是发行非性能保证的业务的主机。例如,处理器所输出的数据符合非性能保证的业务。
设计者将需要要求频带以上的数据转发的主机分类为级别C(S3205)。例如,承担一部分的处理器处理或图形处理系的处理的主机符合级别C。另外,例如像滤波器系的处理那样,随时间变动而始终需要一定速率以上的传输的保证,且在时间上观察可以先行地在平均要求频带以上进行传输的业务也符合级别C。另外,例如像滤波器系的处理那样,对随时间变动而始终需要一定速率以上的传输的保证的业务,也即在时间上观察可以先行地在平均要求频带以上进行传输的业务进行输出的主机也符合级别C。
设计者将延迟保证级别之中要求频带或容许延迟时间的要求严格、且具有突发性的主机分类为级别A(S3203)。由于对于级别A的主机的业务,最优先地处理传输,因此在中继器中不被其他的级别的业务干扰地进行传输。故而,能在更小的总线动作频率下保证各业务的延迟和吞吐量的性能。
设计者将剩余的的主机分类为级别B(S3204)。
图10示出了主机所发行的业务的要求规格的定义的具体例。
要求规格的定义由各种参数决定。参数例如是主机ID或业务的要求频带、容许延迟时间、分组生成时的分组长度、接收目的地从机ID。在从机为存储器的情况下,还定义Read访问(读访问)或Write访问(写访问)等的通信数据的类别。例如,图10的表中的第2行的要素表示由主机ID为0的主机发行的业务的属性。该业务示出了针对要求频带为800MBytes/s、容许延迟时间为0.2μ秒、1分组长度为10微片(flit)、从机ID为0的从机的、Write访问。
<各构成要素>
图11示出按每个总线主机101进行分类的级别及其具体例。此外,在本实施方式中若总线主机101确定则级别确定,但在某总线主机进行多个种类的处理、送出业务的情况下,按每个业务来确定级别即可。
作为按每个业务来确定级别的方法,例如考虑以下的两种方法。
例如,总线主机通过对构成业务的数据赋予指定级别的信息并送出至主机侧NIC,从而能按每个业务来确定级别。如上所述,各总线主机的业务的要求规格由设计者定义。总线主机当然掌握着业务的要求规格,因此能指定级别。
或者,主机侧NIC可以按每个业务来确定级别。主机侧NIC在存储器中预先保持将业务的标识符与级别建立了对应的表(未图示)。总线主机将与业务的要求规格相应的标识符赋予至构成业务的数据并送出至主机侧NIC。主机侧NIC通过基于接受到的业务的标识符来参照表,从而能决定其业务的级别。
在本实施方式中,总线主机101根据图9的级别分类规则而被分类为各级别。级别被分类为:应该考虑延迟的延迟保证级别(级别A、B、C)、以及容许延迟时间大且不考虑延迟也能得以保证的非延迟保证级别(级别Z)。
进而,将延迟保证级别区分为:超过要求频带来发送业务的级别(级别C);尤其是容许延迟时间小、或要求频带大、发行具有突发性的业务的级别(级别A);以及除此以外的要考虑延迟、吞吐量的级别(级别B)。
例如,需要以短的周期来进行大容量的数据传输的编码器或解码器的主机被分类至级别A。外围设备或I/O的主机被分类至级别B。承担包含需要性能保证的数据转发的一部分的处理器或图形处理系的处理的主机被分类至级别C。
对不需要保证吞吐量和延迟的性能的业务也即优先级低且仅在总线空闲时传输即可的业务进行发行的主机被分类至非延迟保证级别(级别Z)。当然,如上所述,可以按每个业务来分类级别。例如,不需要性能保证的图形处理系的处理的业务或由处理器输出的数据的业务符合级别Z。此外,即便在处理器或图形处理系中,在包含需要保证延迟或吞吐量的任一者的数据的情况下,也与级别Z相区别,从而可以设定为性能保证的级别。
此外,对于在各级别之中尤其应该满足的性能(容许延迟时间或要求频带)严格的业务或主机,进而可以设置优先级高的级别来进行分类。
图47(a)~(c)分别示出与延迟保证级别的优先级关联的分类的例子。示出了越往图的上方优先级越高。此外,图47(a)~(c)分别是独立地进行级别划分的例子。在图47(a)~(c)的相互间,优先级的高低并无关联,请留意该点。
图47(a)示出至此为止说明的级别A~C的优先级的例子。关于优先级,按级别A最高,接下来是级别B、级别C的顺序进行了设定。
作为其他的例子,对于级别C的一部分的处理器的业务,为了缩短延迟,可以与级别C之中的其他的业务相区别地设置别的高优先级别D。图47(b)示出以比级别B低的优先级、且比级别C高的优先级的级别D。一部分的处理器的业务符合这样的级别D。至少被设定为级别D的要求频带的部分的业务为了低延迟化,而以比级别C的业务更高优先地进行传输。
另外,进而作为其他的例子,可以对分类为上述的级别D的业务进行细化来分配级别。图47(c)示出考虑了超过要求频带进行送出的业务的进一步被细化的级别的例子。在本例中,按照优先级从高到低的顺序,设定有级别A、B、D、C1、C、C2。
首先,将分类为级别D的业务当中超过了要求频带的业务的级别设定为级别C1。由此,超过了要求频带的业务以比超过了分类为级别C的要求频带的业务更高的优先级进行送出。
或者,也可将分类为级别D的业务当中超过了要求频带的业务的级别设定为级别C2。由此,超过了要求频带的业务以比分类为级别C的业务更低的优先级进行送出。
在尽量以高优先来输送最初被分类为级别D的业务的整体的情况下,能将级别D的业务的延迟设定得小于级别C。另外,在以低优先来输送超过级别D所要求的要求频带的业务的情况下,通过将其超过部分的业务设定为级别C2,从而能进一步减小级别C的业务的延迟。
另外,为了优先送出级别D的业务,考虑事先确保剩余频带。例如,以级别C所要求的频带来送出业务,进而在未传输级别D的业务的时间段中利用剩余频带来先行送出级别C的业务。由此,从将来来看,将不需要进行已先行送出的级别C的业务的传输。这意味着确保将来的剩余频带。具体而言,在未传输级别D的业务的时间段,将级别C的业务在要求频带以上进行传输。由此,能减少将来的级别C的发送量,将剩余频带用于其他的业务的送出。作为结果,能抑制对级别C的业务的干扰,能缩短级别D的业务的延迟时间。
图12示出主机侧NIC102的构成。主机侧NIC102主要以硬件电路来实现。各构成要素通过多个电路元件的组合来实现。此外,可以由1个集成电路或多个集成电路来实现。
主机侧NIC102具备:接收目的地解析部801、输入缓冲器部802、主机信息存储部803、速率控制部804、输出切换部805、分组生成部806、以及缓冲器利用信息通信部807。
接收目的地解析部801通过与总线主机101的通信来接收通信数据201、接收目的地从机ID705、截止时刻707、发送源ID704,保存各数据。
输入缓冲器部802按每个接收目的地来保存通信数据201。
主机信息存储部803将接收目的地解析部801与总线主机101的通信中所获取的表示该总线主机101的发送源ID704、该总线主机101的级别、截止时刻707、或者接收目的地从机ID705进行保存。
速率控制部804基于在速率值存储部1003中所预先设定的速率值来决定发送速率,控制分组的发送速率。在本申请说明书中,将速率控制部有时也称为“发送控制部”。
发送要求性能严格的性能保证的数据的总线主机将发送速率设定为要保证的发送速率。另外,超过要求频带来进行发送的总线主机为了利用剩余频带,将业务的速率值(上限值)设定为超过了要求频带的发送速率,或不设定业务的速率值(上限值)。对于非性能保证的级别的业务,总线主机不设定业务的发送速率的速率值(上限值)。由此,能始终将业务设为可发送的状态,能利用剩余频带来进行传输。
此外,在将速率值(上限值)设定为超过了要求频带的发送速率的情况下,可以基于总线系统整体的成为瓶颈的节点或链路的处理能力来决定速率值(上限值)。例如,设总线系统之中的某特定的链路是业务最集中的总线系统整体的瓶颈。此时,为了使该链路的利用效率能最大化,根据总线的动作频率和总线宽度来求取链路的传输能力,并基于传输能力来决定发送速率值(上限值)。另外,此时,可以设想某使用场景,减去从其他的总线主机发送的性能保证的数据的要求频带部分来求取剩余频带,决定速率值。另外,在从机为存储器的情况下,存储器针对通信数据的处理能力可成为瓶颈。故而,可以将发送只有存储器可持续处理的数据量所需的值决定为发送速率(上限值)。由此,不过度地传输业务而能使总线系统的瓶颈的利用效率最大化。
输出切换部805基于输入缓冲器部802中所保存的通信数据201、以及速率控制部804的发送可否、从缓冲器利用信息通信部807获取到的从机侧的中继器1402的空闲缓冲器信息,来切换进行发送的缓冲器,并将在输入缓冲器部802中保存的数据输出至分组生成部。
分组生成部806将从输出切换部805输送来的通信数据变换成分组,分割为微片来进行传输。在变换成分组时,分组生成部806如后所述,对成为通信对象的数据赋予报头以及结束代码。
图13示出主机侧NIC102的动作流程。
接收目的地解析部801在与总线主机101的通信中获取信息,记录要传输至主机信息存储部803的业务的接收目的地从机ID、截止时刻(8901)。由主机侧NIC102对分组赋予表示截止时刻的信息。另外,在本实施方式中,关于容许延迟时间,例如通过从发送源节点发送的时刻与到达发送目的地节点的时刻的最大的相对时间(差分值)来表现。关于截止时刻,通过到达发送目的地节点的绝对时间来表现。它们可以统一表现成绝对时间或相对时间的任一者。
接收目的地解析部801将接收到的通信数据201保存至与每个输入缓冲器部802的接收目的地从机对应的输入缓冲器(S902)。
输出切换部805向速率控制部804询问输入缓冲器的发送可否。速率控制部804按照接收到的询问,向输出切换部805通知发送可否,以不超过所设定的发送速率(S903)。
缓冲器利用信息通信部807获取从机侧的中继器1402的空闲缓冲器信息。输出切换部805基于从缓冲器利用信息通信部807获取到的空闲缓冲器信息,对于输入缓冲器部802中所保存的通信数据,分配发送目的地的空闲缓冲器。
输出切换部805基于所通知的发送可否、以及缓冲器分配结果,来从可发送的输入缓冲器转发通信数据201(S904)。
分组生成部806对于接收到的通信数据201,基于从主机信息存储部获取到的信息(发送源ID704、接收目的地从机ID705、截止时刻707、主机信息存储部803中预先设定的级别706)、和作为缓冲器分配结果的输入缓冲器编号708,来生成报头701。然后,分组生成部806对通信数据201赋予报头701和结束代码702,生成分组202,并将分组分割为微片进行转发(S905)。
图14示出分组202的数据结构。
分组202具有:通信数据201、报头信息701、以及结束代码702。
通信数据201是由总线主机101向从机105进行通信的实际数据,例如是运动图像的图像或声音的数据。
报头信息701具有:用于判定分组的开始的开始代码703、用于识别主机的发送源ID704、用于识别作为传输目的地的从机的接收目的地从机ID705、表示业务的级别分类的级别706、通信数据到达从机105或总线主机101的截止时刻707、以及各中继器103中所保存的输入缓冲器编号的分配结果708的信息。
结束代码702是表示分组的结束的信息。
此外,在本实施方式中,在生成分组202时,通过包含级别706来生成报头701,从而能在中继器103中按每个级别来区分数据进行传输。此时,级别706只要是能对数据的要求性能的差异进行识别的信息(识别信息)即可,例如可以不是级别706,而是包含基于各自的数据区别的传输的优先顺位信息,来生成分组。另外,作为能识别数据的信息的其他的例子,可以包含可保存在各中继器中的缓冲器编号的组合来生成分组,以中继器中所保存的缓冲器编号来确定传输的优先顺位。
图15示出在主机侧NIC102所设置的速率控制部804的构成。
速率控制部804具有:发送可否决定部1001、定时器处理部1002、以及速率值存储部1003。
发送可否决定部1001若从输出切换部805接收到各输入缓冲器的发送可否的询问,则基于发送速率来决定发送可否,并将决定结果向输出切换部805进行通知。
定时器处理部1002为了控制发送速率而具有用于测量分组201的发送间隔的定时器。
速率值存储部1003为了控制从主机发送的分组的发送速率,对预先设定的发送速率的值进行存储。
速率控制部804的各构成要素各个单独地由硬件实现。例如发送可否决定部1001以及定时器处理部1002各自可以以多个电路元件的组合或者1个集成电路来实现。速率值存储部1003的发送速率的设定方法中,例如存在在启动总线系统的电源接通时从非易失性的存储器进行读入的方法、以及经由信号线的布线来读入被别的节点设定的发送速率的方法。此外,速率控制部804可以作为计算机程序以及执行其程序的计算机(集成电路)来予以实现。
图16示出速率值存储部1003所存储的速率值。在以分组的发送间隔来控制发送速率的情况下,预先设定发送间隔的值。此外,发送速率可以针对每个级别设定相同的值,也可以以主机为单位而各个单独地设定值。此外,图16的“发送间隔”这样的措辞是为了记载方便。实际中可以不被存储。通过使存储区域等明确,从而只要保持发送间隔的值本身或与发送间隔的值对应的信息(换言之,表示发送速率的值的信息)即可。
此外,在以下参照的附图中,针对以类似的形式记载了数据结构的地方,第1行记载的文字在实际中可以不被存储。
图17示出速率控制部804的动作流程。
定时器处理部1002从速率值存储部1003读入所设定的速率值(S1101)。作为设定的具体例,对于被分类为延迟保证级别的级别而设定能保证延迟和吞吐量的性能的速率值,对于被分类为非延迟保证级别的级别,为了使剩余频带的利用效率最大化而不设定速率值的上限。
在从输出切换部805接收到输入缓冲器部802的输入缓冲器的发送可否的询问的情况下(S1102的“是”),发送可否决定部1001基于定时器处理部1002的定时器值来决定发送可否(S1103)。
发送可否决定部1001将所决定的发送可否信息向输出切换部805进行通知(S1104)。
图18示出发送可否决定部1001所执行的发送可否的决定处理S1103的动作流程。
发送可否决定部1001从定时器处理部1002获取每个输入缓冲器的当前的定时器值(S1201)。
在定时器值非正的情况下(S1202的“否”),设为可发送,在为正的情况下(S1202的“是”),设为不可发送。
图19示出定时器处理部1002的动作流程。
定时器处理部1002进行用于控制发送速率的定时器控制。在处理的开始之前,首先定时器处理部1002将定时器处理部1002所具有的定时器的值初始化为“0”。定时器处理部1002在发送输入缓冲器的通信数据时,在接收到发送结果的情况下(S1302的“是”),将定时器值设置为从速率值存储部1003读入的速率值(S1303)。
定时器处理部1002直到定时器的值成为0为止,按总线的动作频率的每1周期来进行递减(S1304)。
根据上述的处理,定时器处理部1002在定时器为正的期间,抑制对应的缓冲器中所保存的通信数据201的发送。由此,能将发送速率控制得不成为所设定的速率值以上。此外,如前所述,发送速率控制的实现方法可以以在此示出的方法以外的方法来实现。
图20是说明在主机侧NIC102和中继器103中进行的一般的流程控制的图。流程控制是指,接收发送目的地的通信状况,并根据通信状况来进行发送分组的控制。例如,主机侧NIC102获取在从发送源起至发送目的地为止的路径上存在的中继器或从机侧NIC的空闲缓冲器信息,并基于空闲缓冲器信息来发送分组的控制是流程控制的一例。
图21(A)以及(B)示出流程控制和速率控制的差异。图21(A)示出在进行速率控制时的每单位时间的传输量,图21(B)示出在未进行速率控制时的每单位时间的传输量。如图21(A)所示,通过速率控制,而将从主机侧NIC或中继器发送的分组的每单位时间的传输量控制得不超过预先设定的速率值(上限值)。如图21(B)所示,在不进行速率控制而进行了流程控制的情况下,基于流程控制的物理频带内的传输控制处于支配地位。例如,能不对发送速率加以限制地,将总线的物理频带全部进行利用来传输分组。另外,在超过要求频带来设定速率值(上限值)的情况下,也通过不使速率值足够大,从而基于流程控制的传输控制处于支配地位。另外,关于本实施方式中的流程控制,在中继器103和主机侧NIC102中进行基于发送目的地的输入缓冲器部的空闲缓冲器信息来发送分组的流程控制。
<中继器>
图22示出中继器103的构成。
中继器103从主机侧的中继器1401或者主机侧NIC102接收分组202,向从机侧的中继器1402或者从机侧NIC104传输分组202。在它们之间,以总线布线进行了连接。
中继器103具备:级别解析部1403、输入缓冲器部1404、输出端口选择部1406、缓冲器信息存储部1407、缓冲器利用信息通信部1408、速率控制部1409、输出调节部1410、级别存储部1411、以及交换机切换部1412。
级别解析部1403接收分组202,基于分组的开始代码703来解析报头信息701,获取级别、接收目的地从机ID、截止时刻。另外,级别解析部1403从缓冲器利用信息通信部1408获取从机侧的中继器1402的空闲缓冲器信息,进行与级别对应的输入缓冲器的分配。分配结果被记录至缓冲器信息存储部1407。
输入缓冲器部1404按每个级别来保存分组。
输出端口选择部1406根据从级别解析部1403获取到的接收目的地从机ID来决定输出端口编号,并存储至缓冲器信息存储部1407。
缓冲器信息存储部1407对输入缓冲器部1404中所保存的分组202的信息(级别、接收目的地从机ID、截止时刻、输出端口编号、从机侧主机的输入缓冲器分配结果)进行存储。
缓冲器利用信息通信部1408获取从机侧的中继器1402的缓冲器的空闲信息,另外从缓冲器信息存储部1407获取输入缓冲器部1404的空闲信息,并向主机侧的中继器1401的缓冲器利用信息通信部1408通知空闲信息。
速率控制部1409从缓冲器信息存储部1407获取输入缓冲器部1404中所保存的分组202的级别,基于按每个级别而分组要保证的发送速率来控制分组的发送。此外,按每个级别要保证的发送速率是基于速率值存储部2003(细节将后述。图22中无记载)中所设定的速率值来决定的。
速率控制部1409将速率控制的结果作为分组的发送许可信号,向输出调节部1410进行通知。输出调节部1410基于已获取的发送许可信号,从要保证的发送速率以下的分组起依次以高优先级进行调节,超过发送速率的分组以低优先级进行调节。
针对后述的速率值存储部2003中所设定的速率值,设定在主机侧NIC102已设定的要保证的速率值以上的值,以使属于相同的级别的业务能在维持要求频带的同时进行合流。例如,在基于发送间隔的速率控制的情况下,使用将在主机侧NIC102中设定的发送间隔(P)除以属于相同的级别的主机数(N)而得到的值(P/N)来设定中继器103的发送间隔,从而能维持各主机的要求频带来传输业务。另外,对于非延迟保证级别不设定发送速率的上限,以使总线的剩余频带的利用效率得以提高。
输出调节部1410通过级别存储部1411中存储的级别优先级、以及从缓冲器信息存储部1407获取到的截止时刻、从速率控制部1409获取到的发送许可信号,来调节要发送的分组的发送顺位。
级别存储部1411预先存储有与级别对应的优先级。
图23示出级别存储部1411中所存储的级别的优先级信息。
在本例中,优先级的值越小则越被优先地传输处理。例如,级别A的优先级的值是“1”,级别A最优先地被处理。级别B的优先级的值是“2”,级别C的优先级的值是“3”,因此级别B接着级别A而被优先处理。级别C接着级别B被处理。只要分配与已设计的级别数相应的任意的优先级即可。
中继器103的输出调节部1410基于在此定义的优先级和截止时刻,对按照优先级从高到低、截止时刻从早到晚的顺序要发送的输入缓冲器进行调节,进行发送处理。
图24是由中继器103的输出调节部1410对要发送的缓冲器的优先顺位进行了调节后的结果的具体例。例如,设按每个输出端口编号,且按级别A、级别B、级别C、级别Z的每个级别,在输入缓冲器中存在分组。当前,例如对于输出端口编号0以及1,设分别在级别A、B、C、Z的各输入缓冲器中存在分组。首先,输出调节部1410对于输出端口编号0,从保存有可发送的分组的输入缓冲器之中,提取优先级最高的级别的输入缓冲器(例如,级别A的输入缓冲器)。进而,输出调节部1410在所提取的输入缓冲器之中,提取截止时刻最早的输入缓冲器。在输入缓冲器一个也未被提取的情况下,输出调节部1410从不可发送的输入缓冲器中按照级别的优先级从高到低、且截止时刻从早到晚的顺序提取一个输入缓冲器。输出调节部1410将所提取的结果设为对输出端口编号0进行发送的输入缓冲器。接下来,输出调节部1410对于输出端口编号1,选择在上述的调节处理中发送的输入缓冲器。
交换机切换部1412基于输出调节部1410的调节结果和缓冲器信息存储部1407中所存储的输出端口编号,来切换交换机以传输分组。
此外,在本实施方式中,说明在同一级别内基于截止时刻的比较来决定传输顺位的方法。截止时刻只要是表征在相同的级别内针对分组的传输的时间上的紧急度的信息即可。例如,截止时刻可以是通信数据到达接收目的地从机的时刻、或者来自从机的回信到达发送源主机的时刻。同样地,容许延迟时间例如可以是从主机起到达从机为止的去路所花的时间、或者到回信返回至发送源主机为止的往返所花的时间。另外,可以取代截止时刻,而以发送分组的时刻、从发送时刻起的经过时间(主机侧NIC102以及中继器103的处理时间的累积值的信息)、在发送时间点上至此为止所发送的分组数的值(表示分组在主机侧NIC102的发送顺序的发送计数器的值)等,来表征针对传输的时间上的紧急度。在本申请说明书中,有时将这些信息包括起来表现为“与截止时间相关的时间信息”。
此外,在安装时,时刻例如通过由提供给半导体总线系统的总线时钟进行驱动的计数器值来表现。另外,在取代截止时刻而使用从发送时刻起的经过时间的情况下,取代截止时刻而将保持用于测量经过时间的计数器值的区域准备于头部,在主机侧NIC102以及中继器103中按每个动作时钟使计数器值以+1增加即可。或者,在取代截止时刻而使用表示分组的发送顺序的发送计数器的情况下,在分组生成部806中准备发送计数器,分组生成部806在每次发送分组时使发送计数器以+1增加,将在发送时间点的发送计数器的值赋予给报头,从而能予以实现。此外,这些示出了向上计数器中的例子,但也可以不是以向上计数器而是以向下计数器进行安装。
图25示出中继器103的动作流程。
级别解析部1403从主机侧的中继器1401接收分组202(S1501)。
级别解析部1403对分组202的报头信息701(接收目的地从机ID、级别、截止时刻)进行解析,并登记至缓冲器信息存储部1407(S1502)。
级别解析部1403从分组202中提取输入缓冲器编号,并将分组保存至对应的输入缓冲器部1404的输入缓冲器1405(S1503)。
输出端口选择部1406基于接收目的地从机ID来选择分组202的输出端口编号(S1504)。此外,对于输出端口编号的选择,一般存在利用基于中继器的连接关系而静态确定的路由表的方法、或使用接收目的地从机ID来通过基于某一定规则的计算进行求取的方法等。
速率控制部1409按各级别的每个输出端口编号来测量分组的发送速率,决定输入缓冲器部1404中所保存的分组的发送许可,以使输出调节部1410能判断实际的发送速率是否超过所设定的速率值(S1505)。此外,对于将速率控制部1409所设定的速率值(上限值)被设定为了要保证的速率值的业务,能保证该业务的速率。将该业务在本实施方式中称为利用第1频带(此业务要保证的频带)进行传输的业务。另外,对于超过要保证的速率值而设定的业务,能在保证发送速率的同时利用剩余频带。将该业务在本实施方式中称为利用第1频带和第2频带(剩余频带)进行传输的业务。另外,在没有速率控制的速率值(上限值)的情况下,例如通过将发送间隔设定为“0”,从而能连续地发送业务,能将剩余频带最大利用至总线的物理频带上限为止。
缓冲器利用信息通信部1408获取在分配从机侧的中继器1402的缓冲器时利用的空闲缓冲器的信息(S1506)。空闲缓冲器的信息是指,对于按从机侧的中继器1402的各级别的每个接收目的地从机而被分配的各输入缓冲器1405,所保存的分组的有无和空闲微片数。此外,在输入缓冲器部1404由一个可随机访问的存储器、以及按各级别的每个接收目的地从机来管理地址的地址表构成的情况下,能在一个输入缓冲器中保存多个分组,因此将与各级别的每个接收目的地对应的空闲分组数和空闲微片数作为空闲缓冲器的信息。
级别解析部1403对于在从机侧的中继器中所保存的输入缓冲器为未分配的输入缓冲器,按各级别的每个接收目的地从机ID来分配从机侧的中继器1402所具有的空闲缓冲器(S1507)。
输出调节部1410在输入缓冲器部1405中所保存的分组之中将要发送的分组按照优先级从高到低的顺序进行调节,若存在剩余频带,则速率控制部1409对于设为了不可发送的分组,也以低优先级调节发送顺序(S1508)。中继器中的速率控制部1409通过以基于要求频带的速率值(上限值)来控制传输,从而对于在保证需要的性能的同时超过要求频带的业务、或非性能保证的业务,若在总线上有剩余频带则进行传输,因此将提高剩余频带的利用效率。
交换机切换部1412基于输出调节部1410的决定结果,为了发送分组202而切换交换机,并开始分组202的发送(S1509)。
在分组202的发送已结束的情况下(S1510的“是”),对缓冲器信息存储部1407所对应的输入缓冲器的信息进行初始化(S1511)。在未结束的情况下(S1510的“否”),继续分组的发送。
图26示出中继器103的级别解析部1403的输入输出关系。
级别解析部1403从主机侧的中继器1401接收分组202,为了确定转发目的地,对输出端口选择部1406通知接收目的地从机ID。然后,级别解析部1403获取输出端口编号,在缓冲器信息存储部1407中记录输出端口编号。级别解析部1403为了分配从机侧的中继器1402的输入缓冲器,按各级别的每个接收目的地从机ID,从缓冲器利用信息通信部1408获取从机侧的中继器1402的空闲缓冲器信息。级别解析部1403使分组202的报头701和输出端口编号记录至缓冲器信息存储部1407。级别解析部1403使分组202保存至输入缓冲器部1404。
图27示出中继器103的速率控制部1409的构成。速率控制部1409与主机侧NIC102的速率控制部804同样地,使用定时器以控制分组的发送间隔的方式来进行速率控制。定时器处理部2002按各级别的每个输出端口编号来独立地管理定时器,发送可否决定部2001获取与级别、输出端口编号对应的定时器值来决定发送可否。另外,在速率值存储部2003中存储按每个级别而设定的速率值,按各级别的每个输出端口来决定输入缓冲器的发送可否,以能判定发送速率是否超过该速率值。此外,输出调节部1410为了利用剩余频带,有时还从不可发送的输入缓冲器之中进行发送。另外,各级别的速率值按照要求性能而由设计者预先设定。例如,性能保证业务以要保证的传输速率来设定速率值,非性能保证业务不设定速率值(上限值)。另外,在不设定速率限制的情况下,例如将发送间隔的值设定为“0”即可。
图28示出速率控制部1409的动作流程。
首先,速率控制部1409的定时器处理部2002从速率值存储部2003读入各级别的速率值(S2101)。
发送可否决定部2001从输出调节部1410获取各输入缓冲器的输出端口编号和级别(S2102)。
发送可否决定部2001对于已获取的输出端口编号和级别,基于定时器处理部2002的定时器值来决定发送可否(S2103)。
发送可否决定部2001向输出调节部1410通知发送可否信息(S2104)。
图29示出速率控制部1409的发送可否的决定处理的动作流程。
速率控制部1409的发送可否决定部2001从输出调节部1410接收输出端口和级别信息(S2201)。
发送可否决定部2001从定时器处理部2002获取与输出端口和级别对应的定时器值(S2202)。
发送可否决定部2001在已获取的定时器值为正的情况下(S2203的“是”)设为不可发送。在定时器值非正的情况下(S2203的“否”),发送可否决定部2001在性能保证级别的情况下(不是级别Z的情况下)(S2205的“否”)设为发送可,在非性能保证级别(级别Z)的情况下(S2205的“是”)设为不可发送。
图30示出定时器处理部的管理信息的具体例。例如,图30的表的第2行示出了与针对输出端口编号0的级别A相应的定时器值为“0”。定时器值为“0”是指,从上次的分组发送时刻起经过所设定的发送间隔的时间以上未发送分组,因此处于“可发送”的状态。另外,相同地,第3行示出了与针对输出端口编号0的级别B相应的定时器值为6,由于将分组的发送速率限制为速率值存储部2003中所设定的发送速率以下,因此处于发送被抑制的“不可发送”的状态,在6周期后定时器值变为0,成为“可发送”的状态。另外,在对非性能保证级别不设定速率值的情况下,例如通过将发送间隔设定为“0”,从而定时器值基于后述的动作而始终成为“0”。非性能保证级别(例如,级别Z)始终以低优先级进行处理,因此与定时器值无关,始终处于不可发送。另外,在超过要求频带进行传输的级别(例如,级别C)或非性能保证级别的情况下,若可发送的分组不存在于输入缓冲器中,则即使处于不可发送,有时也会被发送。由此,能利用总线的剩余频带。
图31示出速率控制部1409的定时器处理部2002的动作流程。
定时器处理部2002在动作开始时将各定时器值初始化为0,在发送分组的定时从输出调节部1410接收到发送结果(所发送的输入缓冲器的级别和输出端口编号)的情况下(S2401的“是”),以速率值存储部2003中所设定的速率值(在此情况下为发送间隔)来设定对应的定时器值。无论是在接收到发送结果的情况下(S2401的“是”)还是未接收到的情况下(S2401的“否”),均按总线动作频率的每个周期将定时器值各减小1,将定时器值减小至成为0为止(S2403)。此外,本实施方式的定时器处理部2002是中继器103中的发送速率控制的实现例,可以以别的方法来实现。具体而言,既可以以比特速率来控制发送速率,也可以是指定在某恒定期间内发送的分组的周期数的方法、不是以周期单位而是以时间单位来指定发送间隔的方法等。此外,根据实施方式,若长期观察满足了发送速率,则可以在短期观察中超过充分小的量的发送速率。
图32示出速率控制值存储部2003按每个级别进行管理的发送速率值的一例。例如,在速率控制基于发送间隔进行控制的情况下,所设定的值表示发送间隔。在图32中,级别A的值被设定为“10”,按中继器103的每个输出端口,能最大按每10周期来发送分组。级别Z的值被设定为“0”,表示级别Z的业务的分组能在中继器103中不空出发送间隔地连续发送。此外,所设定的发送间隔越小,发送速率变得越大,在发送间隔大的情况下,发送速率变小。另外,速率控制值存储部2003的发送速率的设定方法中,例如存在在启动总线系统的电源接通时从非易失性的存储器进行读入的方法、经由信号线的布线而读入被别的节点设定了的发送速率的方法。
图33示出输出调节部1410的动作流程。
输出调节部1410从级别存储部1411获取各级别的优先级(S2801)。
输出调节部1410为了选择要发送的输入缓冲器1415,从缓冲器信息存储部1407获取输入缓冲器1415的信息(输出端口编号、级别的属性信息、截止时刻)(S2802)。
为了向速率控制部1409询问发送可否,输出调节部1410通知输入缓冲器的输出端口编号和级别的属性信息(S2803),从速率控制部1409获取发送可否(S2804)。
输出调节部1410基于已获取的发送可否、输出端口编号、级别的属性、截止时刻,从可发送的输入缓冲器之中,按每个输出端口编号来选择级别的优先级最高的缓冲器。在优先级重复的情况下,输出调节部1410选择截止时刻早的缓冲器。由此,输出调节部1410对要发送的输入缓冲器进行调节(S2805)。
输出调节部1410向交换机切换部1412通知要发送的输入缓冲器与输出端口编号的组合(S2806),并将已发送的输入缓冲器1415的结果(进行发送的输入缓冲器的级别和输出端口编号)向速率控制部1409进行通知(S2806)。
图34示出对输出调节部1410要发送的输入缓冲器1415进行调节的处理(S2805)的流程图。
输出调节部1410进行控制,使得将可发送的输入缓冲器以高优先级进行传输,将不可发送的输入缓冲器以比可发送的输入缓冲器低的优先级进行传输。
输出调节部1410从输入缓冲器1415之中提取可发送的输入缓冲器(S2901),并从所提取的输入缓冲器之中,按每个输出端口编号提取级别的优先顺位最高的输入缓冲器(S2902)。
输出调节部1410按每个输出端口编号,提取截止时刻最早的输入缓冲器,来作为要发送的输入缓冲器(S2903)。
输出调节部1410对于未能提取要发送的输入缓冲器的输出端口编号,按每个输出端口编号,从除级别A、B以外的级别的输入缓冲器1415之中提取不可发送的输入缓冲器(S2904)。输出调节部1410从所提取的输入缓冲器之中,按每个输出端口编号来提取级别的优先顺位最高的输入缓冲器(S2905)。输出调节部1410从所提取的输入缓冲器之中,按每个输出端口编号来提取截止时刻最早的输入缓冲器(S2906)。
图35示出中继器103的缓冲器信息存储部1407的管理信息的构成例。
缓冲器信息存储部1407存储有与各输入缓冲器1405对应的级别和接收目的地从机ID。在缓冲器信息存储部1407中,保存有基于各输入缓冲器1405中所保存的分组的有无、截止时刻、接收目的地从机ID而选择出的输出端口编号、以及从机侧的中继器1402的输入缓冲器的分配结果(输入缓冲器ID)。
例如,针对图35的表的第2行的要素进行说明。该要素示出了与中继器103的输入端口编号0的输入缓冲器ID0对应的信息。关于该要素,在输入缓冲器1405中保存有级别A且接收目的地从机ID为0的分组,该分组的截止时刻为100,由输出端口选择部1406分配的输出端口编号为0。由级别解析部1403分配的从机侧的中继器1402的输入缓冲器ID为0。
相同地,表的第3行的要素示出了与输入端口编号0的输入缓冲器ID1对应的信息。关于该要素,在输入缓冲器1405中保存有级别A的接收目的地从机ID为1的业务的分组。在该要素中,因数据的有无成为“无”,因此可知所保存的分组不存在。
图36示出了能作为本发明的其他实施方式应用的NoC网的例子。
此外,本发明的一实施方式所涉及的中继器根据与要求性能相应的缓冲器分离构成和传输控制方式来减小性能保证所需的总线动作频率,增大了剩余频带的利用效率。故而,不依赖于NoC网的中继器的连接关系,即使是图36(a)的网眼型的NoC、或图36(b)的绕环型、图36(c)的树型那样的连接关系,也能够适用。
根据上述的实施方式,在中继器中根据上述的级别分类而对缓冲器进行分离来具备,已在抑制基于低优先级级别的干扰的同时减小了需要的总线频带。但也可以根据分组的类别来分离缓冲器。
分组之中存在输送指令的分组和输送数据的分组这2种。
指令存在2个种类。即,存在当针对从机的Read访问时包含数据的读出所需的请求信息在内的指令、和当针对从机的Write访问时包含数据的写入的响应信息在内的指令。Read请求的指令是从主机发送且被从机接收的。Write响应的指令是从从机发送且被主机接收的。
另一方面,数据也同样存在2个种类。即,是在Write访问时包含用于写入到从机的内容在内的数据、和在Read访问时包含从从机读出的内容在内的数据。包含Write数据的分组是从主机发送且被从机接收的。包含Read数据的分组是从从机发送且被主机接收的。
例如,以减小针对Read访问的延迟为目的,考虑对于包含Read访问的指令在内的分组,在中继器中不进行速率控制,仅对包含Write访问的数据在内的分组进行速率控制。在此情况下,通过对这些指令与数据进行分离而具备缓冲器,从而能抑制因指令和数据的控制方式的差异而引起的干扰。作为其结果,能将指令的最大延迟时间估计得更小,能减小保证性能所需的总线频带。
图37示出了分离出指令与数据的情况下的缓冲器构成的例子。对指令不进行速率控制,而仅对数据进行速率控制。此外,在本实施方式中,尽管基于将缓冲器物理性地分离后的构成来进行说明,但若逻辑性地进行了分离,则也可以不物理性地分离。
图38示出了作为分离出指令与数据的情况下的效果而能缩短针对指令的延迟。
在图37中,中继器103具备输入缓冲器部1404,该输入缓冲器部1404具备指令用的输入缓冲器3701和数据用的输入缓冲器3702。通过按每个指令与数据来分离输入缓冲器1405来构成,从而能在指令与数据之间切换传输,能抑制彼此的干扰。例如,设输入缓冲器3702中所保存的级别A的Write访问的数据用的分组基于速率控制而被抑制了传输。设在此期间,不需要速率控制的Read访问的指令用的分组到达,并保存在指令用的输入缓冲器3701中。在此情况下,中继器103基于被分离的效果,能立刻开始Read访问的分组的传输。图38(A)示出在按每个指令和数据分离出输入缓冲器1405的情况下的分组发送时刻的样子。
另一方面,例如,这些分组按照到达顺序被保存在相同的输入缓冲器中,在这些分组间不能进行传输切换的情况下(例如输入缓冲器由一个FIFO构成的情况下),先到达的Write访问的分组基于速率控制而被抑制发送,之后到达的Read访问的分组受在其之前的Write访问的分组的影响而被抑制发送。图38(B)示出在分组间不能进行传输切换的情况下的分组发送时刻。也就是说,对于保存在相同的输入缓冲器中的分组,因彼此受干扰而延迟变大,需要将保证性能所需的动作频率估计得较大。
由此,通过设为对于进行速率控制的Write数据分组、以及不进行速率控制的Read指令分组来分离输入缓冲器,并在它们之间切换传输的方式,从而能缓解Read指令分组的传输延迟。由此,能减小基于彼此影响所带来的中继器中的延迟时间,减小保证性能所需的总线动作频率。
接下来,说明通过复用分组来进行传输,从而提高特定的主机的每发送间隔的吞吐量,需要的动作频率的估计得以降低的方法。
图39示出复用分组来进行传输的方法的概要。“复用分组”是指,主机侧NIC102根据多个通信数据来生成一个分组。分组的“复用”的反向处理是分组的“解复用”。从机侧NIC104对接收到的经复用的分组进行解复用,而还原成原始的多个通信数据。
图40(A)以及(B)示出与分组复用的有无相应的分组传输例。图40(A)示出在不复用分组的情况下的例子。在本例中,按每个通信数据来生成分组,进行传输。图40(B)示出在复用了分组的情况下的例子。在本例中,基于多个通信数据来生成一个分组,进行传输。
在基于各主机的要求规格,对各主机求取“能保证吞吐量性能的发送间隔的最大值”来进行分组的复用的情况下,通过增加每发送间隔的传输量,从而能增大发送间隔的最大值。分类为同一级别的多个主机在中继器中以同一发送间隔进行控制。因此,在能保证吞吐量性能的发送间隔的最大值存在大的差的情况下,需要超过需要程度地减小发送间隔,动作频率的估计容易变得过度。故而,对于在同一级别内发送间隔的最大值小的主机,通过复用分组来进行传输,从而能增大能保证吞吐量性能的最大的发送间隔,能降低需要的动作频率。
图41示出用于分组复用的分组202的构成。分组与分组的开始代码703相区别,为了在一个分组之中保存多个通信数据,将通信数据的开始代码709配置于各通信数据的排头,在总线系统中具备用于发送通信数据的开始代码709的专用的信号线。在还原通信数据时,通信数据的开始代码709被插入至作为分割的记号的位置,经由专用的信号线而与分组一起传输。通过使用专用的信号线,从而能不准备复杂的结构地实现分组的复用。
此外,在本实施方式中,在分组的复用时,使用了用于发送通信数据的开始代码709的专用的信号线,但也可以对报头赋予表示经复用的多个通信数据的结构的信息。例如,即使是基于将经复用的通信数据的数量、以及各自的通信数据的数据长度的信息赋予至报头的方法,也能进行通信数据的还原。
用于分组复用的主机侧NIC102的构成与图12相同。
图42示出用于分组复用的主机侧NIC102的动作流程。由于分组复用,因此输出切换部805从可发送的输入缓冲器转发所保存的多个通信数据(S6204)。分组生成部806对于接收到的多个通信数据,将通信数据的开始代码709赋予至各通信数据的排头,赋予报头701和结束代码702来生成分组(S6205)。
此外,进行复用的数量的决定方法可以以所述那样设为所保存的通信数据的数量的方法以外的方法来实现。例如,在主机仅以既定的发行模式来发行业务的情况下,可以是动作状况能在设计时完全假定,在设计时确定复用数的方法。另外,在主机以不确定的发行模式发行业务的情况下,也可以是在达到了预先设定的分组长度时作为一个分组进行传输的方法。
图43示出用于分组复用的从机侧NIC104的构成。为了从经复用的分组还原多个通信数据,而具备通信数据还原部6303。从机侧NIC104除了通信数据还原部6303之外,还具备:用于接收分组的分组接收部6301;用于保存分组的信息(发送源ID、截止时刻、级别)的缓冲器信息存储部6302;保存还原后的通信数据的输入缓冲器部6304;从从机105获取从机105的缓冲器的空闲信息,并将从机侧NIC104的缓冲器的空闲信息通知给主机侧的中继器1401的缓冲器利用信息通信部6307;以及在基于缓冲器的空闲信息以及级别、发送源ID而分配了保存在从机中的缓冲器编号的基础上,基于截止时刻、级别来决定发送的顺序的输出切换部6305。
图44示出用于分组复用的从机侧NIC104的动作流程。分组接收部6301从主机侧的中继器接收分组202(S6401)。分组接收部将分组的信息(发送源ID、截止时刻、级别)记录至分组信息存储部6302(S6402)。通信数据还原部6303从分组中去除报头701和结束代码702,还原成通信数据201(S6403)。在为经复用的分组的情况下,在基于与分组一起接收到的通信数据的开始代码709而还原为通信数据时,分割为多个通信数据。
通信数据还原部6303基于报头701所具有的输入缓冲器编号708,将通信数据201保存至输入缓冲器部6304(S6404)。
在从机侧NIC104,为了分配从机105中保存的缓冲器编号,从从机105获取从机105的缓冲器的空闲信息,在主机侧的中继器1401中,为了分配从机侧NIC104中保存的缓冲器编号,而对主机侧的中继器1401通知从机侧NIC104的缓冲器的空闲信息(S6405)。输出切换部6305基于已获取的从机的缓冲器的空闲信息以及缓冲器信息存储部6302的信息(发送源ID、级别),分配从机105中保存的缓冲器编号(S6406)。输出切换部6305根据级别、截止时刻来决定输入缓冲器部6304中所保存的通信数据202发送的次序,并将通信数据202以及已分配的输入缓冲器编号708向从机105进行发送(S6407)。
(利用例1)
以下,说明本发明的例示性实施方式的中继器向实际设备利用的利用例。
图45示出了利用分布式的总线来连接了用于与半导体电路上的多个主机和多个存储器以及外部来通信数据的共用的输入输出端口(I/O端口)的例子。这样的半导体电路例如能用于便携式电话、PDA(PersonalDigital Assistants;个人数字助理)、电子书籍阅读器等便携式终端、TV、视频录像机、摄像机、监视摄像头等设备。主机例如是CPU、DSP、传输处理部、图像处理部等。从机既可以是易失性的DRAM,也可以是非易失性的闪存。另外,易失性存储器以及非易失性存储器可以混合存在。另外,输入输出端口能够为用于与外接的HDD或SSD、DVD等存储装置连接的USB或以太网(注册商标)等通信接口。
在同时利用多个影像或音乐等的再现、记录、转码、以及书籍、照片、地图数据等的阅览或编辑、玩游戏等多个应用或服务的情况下,从各主机向存储器进行不同的要求性能的访问。此时,在设计总线时,估计能实现性能保证所需的最小限度的总线频带,若能使总线频带的利用效率最大化,则能降低开发的安装成本,能使产品化加速。
作为实现手段,例如,根据应用或服务等的种类来定义由主机利用的要求频带或容许延迟时间,通过基于与要求性能相应的级别分类的缓冲器分离构成、传输控制方式,从而在抑制业务间的干扰的同时增大剩余频带的利用效率,因此能将性能保证所需的总线频带估计得小。
(利用例2)
接下来,说明本发明的例示性实施方式所涉及的中继器向多核处理器(multi-core processor)利用的利用例。
图46示出了为使CPU或GPU、DSP等的核处理器的处理能力得以提高而将多个核处理器排列成网眼状,将它们在分布总线上连接的多核处理器。在此构成中,各核处理器既能作为上述的第1节点发挥功能,又能作为第2节点发挥功能。
在多核处理器上,在各核处理器间进行通信。例如,在各核处理器中具备对运算处理所需的数据进行存储的高速缓冲存储器,能在核处理器间交换相互的高速缓冲存储器的信息。由此能实现信息的共有,能使处理性能得以提高。
但是,在多核处理器上发生的核处理器间的通信中,各自的位置关系或距离(中继跳数)、通信频度不同。故而,若单纯维持数据分组的顺序地进行中继,则优先级高的应用的业务受优先级低的应用的业务的干扰,传输时间也变大。其结果,将引起多核处理器的性能的下降。
与此相对,在利用了本发明的某实施方式的中继器的情况下,通过以由各CPU执行的应用的属性来进行级别分类,从而能效率良好地利用总线频带,能将需要的总线频带估计得更小。例如,在为以高频度访问至存储器的应用的情况下,分类为优先级比其他的应用高的级别,在为低频度且定期地访问的应用而能先行地发行访问请求的情况下,通过在降低优先级的同时超过要求频带地控制发送速率,从而能抑制业务在总线上传输的时间,能利用总线的剩余频带,作为其结果,各核处理器的性能得以提高,以及能使处理时间的效率得以提高。
(利用例3)
在以上的说明中,第1节点、中继器、第2节点的各构成要素表现为经模块化的各个单独的功能部,但也可以通过使安装于中继器的处理器(计算机)执行对这些功能部的处理进行规定的程序来实现中继器的动作。这样的程序的处理过程例如记载于图示的流程图。
在上述的实施方式以及利用例中,说明了本申请发明安装于芯片上时的构成。本申请发明能不仅安装于芯片上,还能作为进行用于安装于芯片上的设计以及验证的模拟程序来实施。这样的模拟程序由计算机执行。例如,图12所示的各构成要素作为模拟程序上的经目标化的级别而被安装。各级别通过读入预先规定的模拟脚本而在计算机上实现与各构成要素对应的动作。换言之,与各构成要素对应的动作作为计算机的处理步骤而被串行或并行地执行。
作为中继器而被安装的数据级别通过读入在模拟器中定义的模拟脚本来决定总线主机的级别等条件。另外,根据其他的中继器的数据级别来决定发送的分组的发送定时、发送目的地、优先级、截止时间等条件。
作为中继器而被安装的数据级别在至模拟脚本中所记述的模拟的结束条件成立为上的期间进行动作。计算动作中的吞吐量或延迟时间、总线的流量的变动的状况、动作频率、消耗电力的估计值等并提供给程序的利用者。程序的利用者基于这些进行拓扑或性能的评价,进行设计以及验证。
在模拟脚本的各行中,例如记述发送源节点的ID、接收目的地节点的ID、进行发送的分组的尺寸、进行发送的定时等信息是普通的。另外,通过批量处理地评价多个模拟脚本,从而能高效地验证是否能以设想的全部脚本来保证期望的性能。另外,通过使总线的拓扑或节点数、发送节点、中继器、接收目的地节点的配置变化来进行性能比较,从而还能确定最适合模拟脚本的网络构成。上述的实施方式均能作为本形态的设计以及验证工具而应用。如此,本申请发明的例示性实施方式能作为设计以及验证工具而实现。
工业实用性
本发明的某实施方式在半导体的集成电路中的分布式总线上,对于流过总线的具有不同的要求性能的多个业务,能基于定量的验算在较小的(例如最小的)总线动作频率下使总线的传输效率最大化,且能利用于保证性能的中继器的构成和具备QoS的技术的半导体总线。
符号说明
101  总线主机
102  主机侧NIC
103  中继器
104  从机侧NIC
801  接收目的地解析部
802  输入缓冲器部
803  主机信息存储部
804  速率控制部(发送控制部)
805  输出切换部
806  分组生成部
807  缓冲器利用信息通信部
1403 级别解析部
1404 输入缓冲器部
1406 输出端口选择部
1407 缓冲器信息存储部
1408 缓冲器利用信息通信部
1409 速率控制部(中继控制部)
1410 输出调节部
1411 级别存储部
1412 交换机切换部

Claims (16)

1.一种总线系统,是经由经网络化的总线以及配置在所述总线上的至少一个中继器而在第1节点以及至少一个第2节点之间传输数据的半导体电路的总线系统,
所传输的数据包含保证吞吐量以及容许延迟时间的至少一者的性能保证数据,
所述第1节点具备:
分组生成部,其生成多个包含所传输的数据以及用于识别所传输的数据的要求性能的识别信息在内的分组;以及
发送控制部,其控制所述分组的发送,
所述至少一个中继器具备:
缓冲器部,其基于所述识别信息,按每个所述要求性能来对接收到的所述分组进行分离并保存;以及
中继控制部,其按每个所述识别信息,以与识别信息对应的全部的第1节点要保证的发送速率的合计值以上的发送速率,来对保存在所述缓冲器部中的各分组的发送进行控制。
2.根据权利要求1所述的总线系统,其中,
所述至少一个中继器存在多个,
多个中继器以同一动作频率进行动作,且所述多个中继器中所具备的各中继控制部以同一发送速率来控制所述各分组的发送,
所述同一发送速率被设定为所述多个中继器要保证的各发送速率当中的最大的发送速率以上。
3.根据权利要求1所述的总线系统,其中,
对于各性能保证数据预先设定要保证的发送速率,
所述发送控制部以超过所述性能保证数据要保证的发送速率的给定速率,或不对发送速率设置限制地,控制所述性能保证数据的分组的发送,
所述至少一个中继器利用能维持要保证的所述发送速率的第1频带以及作为剩余频带的第2频带,能以超过要保证的发送速率的速率来传输所述性能保证数据的分组,
所述中继控制部基于所述识别信息,将保存在所述缓冲器部中的多个分组当中所述性能保证数据的各分组分类成是利用所述第1频带进行传输,还是利用所述第1频带以及所述第2频带进行传输,并优先地传输利用所述第1频带的各分组。
4.根据权利要求1所述的总线系统,其中,
所述所传输的数据还包含不保证吞吐量以及容许延迟时间两者的非性能保证数据,
所述发送控制部不对发送速率设置限制地控制所述非性能保证数据的分组的发送,
所述缓冲器部还将接收到的所述非性能保证数据的分组进行分离并保存,
所述中继控制部按照所述性能保证数据的分组、以及所述非性能保证数据的分组的顺序来进行传输。
5.根据权利要求1所述的总线系统,其中,
所述分组生成部还对所述分组赋予与所述分组的截止时间相关的时间信息,
所述中继控制部针对被赋予了同一识别信息的分组,按照各分组的所述截止时间来决定传输的顺位。
6.根据权利要求5所述的总线系统,其中,
与所述截止时间相关的时间信息是以下信息的任一者:所述分组要到达所述至少一个第2节点的截止时间的信息、所述第1节点发送所述分组的时刻的信息、所述第1节点以及所述中继器的处理时间的累积值的信息、以及表征所述分组在所述第1节点处的发送顺序的发送计数器的值的信息。
7.根据权利要求6所述的总线系统,其中,
在与所述截止时间相关的时间信息表示所述截止时间的情况下,
所述中继控制部从所述截止时间早的分组起优先发送。
8.根据权利要求3所述的总线系统,其中,
关于利用所述第1频带以及所述第2频带而被传输的各分组,
所述中继控制部以及所述发送控制部基于总线系统的成为瓶颈的节点或链路的处理能力来决定超过要保证的发送速率的速率。
9.根据权利要求1所述的总线系统,其中,
所述性能保证数据包含具有突发性的突发数据以及不具有突发性的非突发数据,
所述分组生成部所赋予的所述识别信息能识别所述突发数据、非突发数据,
所述至少一个中继器的缓冲器部在所述多个缓冲器中分离所述突发数据、非突发数据来进行保存,
所述至少一个中继器的所述中继控制部按照所述突发数据、非突发数据的顺序来传输所述分组。
10.根据权利要求9所述的总线系统,其中,
所述第1节点的发送控制部以预定的发送速率来发送所述突发数据,
所述中继控制部至少以预定的发送速率来发送所述突发数据。
11.根据权利要求1所述的总线系统,其中,
所述至少一个第2节点存在多个,
所述至少一个中继器的缓冲器部在所述多个缓冲器中分离每个第2节点的分组来进行保存。
12.根据权利要求1、2、3以及8中任一项所述的总线系统,其中,
分组之中存在输送指令的分组和输送数据的分组,
所述中继控制部对于输送所述指令的分组不设置发送速率限制地进行发送。
13.根据权利要求12所述的总线系统,其中,
分组之中存在输送指令的分组和输送数据的分组,
所述至少一个中继器的缓冲器部在所述多个缓冲器中分离输送所述指令的分组与输送所述数据的分组来进行保存。
14.根据权利要求2所述的总线系统,其中,
所述第1节点的分组生成部复用多个分组来进行传输。
15.根据权利要求14所述的总线系统,其中,
发送经复用的所述分组的所述第1节点以及所述至少一个中继器具备:信号线,其传输表示用于将经复用的所述分组还原成各个数据的分割位置的信息。
16.一种中继器,配置在设置于半导体电路的总线系统的经网络化的总线上,对在所述总线系统的第1节点以及至少一个第2节点之间传输的数据进行中继,
所述第1节点生成多个包含所传输的所述数据以及用于识别所传输的所述数据的要求性能的识别信息在内的分组并发送,
所传输的所述数据包含保证吞吐量以及容许延迟时间的至少一者的性能保证数据,
所述中继器具备:
缓冲器部,其基于所述识别信息,按每个所述要求性能来对接收到的所述分组进行分离并保存;以及
中继控制部,其按每个所述识别信息,以与识别信息对应的全部的第1节点要保证的发送速率的合计值以上的发送速率,来对保存在所述缓冲器部中的各分组的发送进行控制。
CN201380003156.9A 2012-07-24 2013-07-22 总线系统以及中继器 Expired - Fee Related CN103828312B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012-163833 2012-07-24
JP2012163833 2012-07-24
PCT/JP2013/004449 WO2014017069A1 (ja) 2012-07-24 2013-07-22 バスシステムおよび中継器

Publications (2)

Publication Number Publication Date
CN103828312A true CN103828312A (zh) 2014-05-28
CN103828312B CN103828312B (zh) 2017-06-30

Family

ID=49996897

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380003156.9A Expired - Fee Related CN103828312B (zh) 2012-07-24 2013-07-22 总线系统以及中继器

Country Status (4)

Country Link
US (1) US9270604B2 (zh)
JP (1) JP5838365B2 (zh)
CN (1) CN103828312B (zh)
WO (1) WO2014017069A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112154615A (zh) * 2018-05-10 2020-12-29 三菱电机株式会社 电子控制装置
CN112702056A (zh) * 2020-12-03 2021-04-23 海光信息技术股份有限公司 集成电路、集成电路的广播方法、中继模块及电子设备
CN114884765A (zh) * 2022-01-14 2022-08-09 天地融科技股份有限公司 基于中继设备的plc总线通信方法、系统及中继设备

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9237581B2 (en) * 2013-03-14 2016-01-12 Cavium, Inc. Apparatus and method for media access control scheduling with a sort hardware coprocessor
US9571402B2 (en) * 2013-05-03 2017-02-14 Netspeed Systems Congestion control and QoS in NoC by regulating the injection traffic
US9473415B2 (en) * 2014-02-20 2016-10-18 Netspeed Systems QoS in a system with end-to-end flow control and QoS aware buffer allocation
JP6540095B2 (ja) * 2015-02-27 2019-07-10 日本電気株式会社 通信装置、情報処理システム、電文処理方法
KR102255334B1 (ko) 2015-03-11 2021-05-24 삼성전자주식회사 전자 장치에서 네트워크 온 칩을 생성하는 장치 및 방법
US10305952B2 (en) 2015-11-09 2019-05-28 T-Mobile Usa, Inc. Preference-aware content streaming
US10193943B2 (en) 2015-11-09 2019-01-29 T-Mobile Usa, Inc. Data-plan-based quality setting suggestions and use thereof to manage content provider services
US10728152B2 (en) * 2016-02-08 2020-07-28 T-Mobile Usa, Inc. Dynamic network rate control
US10966070B2 (en) * 2017-01-30 2021-03-30 Veniam, Inc. Systems and methods for managing data with heterogeneous multi-paths and multi-networks in an internet of moving things
CN111917656B (zh) * 2017-07-27 2023-11-07 超聚变数字技术有限公司 传输数据的方法和设备
JP6973956B2 (ja) 2019-07-04 2021-12-01 株式会社Kokusai Electric 基板処理装置、半導体装置の製造方法、プログラムおよび記録媒体
US20230370392A1 (en) * 2022-05-13 2023-11-16 Xilinx, Inc. Network-on-chip architecture for handling different data sizes
CN115102875B (zh) * 2022-07-15 2024-04-09 深信服科技股份有限公司 一种数据包处理方法、装置、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2859942Y (zh) * 2005-12-21 2007-01-17 浙江大学 多路控制器局域网总线物理中继器
JP2008109534A (ja) * 2006-10-27 2008-05-08 Renesas Technology Corp パケット中継装置及び半導体チップ
JP2009253949A (ja) * 2008-04-11 2009-10-29 Yamaha Corp 通信システム、送信装置およびプログラム
CN102415059A (zh) * 2009-07-07 2012-04-11 松下电器产业株式会社 总线控制装置
CN102474468A (zh) * 2010-01-25 2012-05-23 松下电器产业株式会社 半导体系统、中继器及芯片电路

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3733784B2 (ja) * 1999-05-21 2006-01-11 株式会社日立製作所 パケット中継装置
JP4879382B2 (ja) * 2000-03-22 2012-02-22 富士通株式会社 パケットスイッチ、スケジューリング装置、廃棄制御回路、マルチキャスト制御回路、およびQoS制御装置
JP4484317B2 (ja) * 2000-05-17 2010-06-16 株式会社日立製作所 シェーピング装置
JP3816314B2 (ja) * 2000-07-11 2006-08-30 三菱電機株式会社 パケット交換装置
JP2002185503A (ja) 2000-12-11 2002-06-28 Nippon Telegr & Teleph Corp <Ntt> パケット処理装置および通信システム
JP3643827B2 (ja) * 2002-12-17 2005-04-27 株式会社半導体理工学研究センター ルータ装置とその出力ポート回路及びその制御方法
FR2858895B1 (fr) 2003-08-13 2006-05-05 Arteris Procede et dispositif de gestion de priorite lors de la transmission d'un message
WO2005043838A1 (en) * 2003-10-31 2005-05-12 Koninklijke Philips Electronics N.V. Integrated circuit and method for avoiding starvation of data
CN100592711C (zh) * 2004-03-08 2010-02-24 皇家飞利浦电子股份有限公司 用于包交换控制的集成电路和方法
JP4333780B2 (ja) 2007-05-25 2009-09-16 船井電機株式会社 デジタル放送受信機
JP2010258844A (ja) * 2009-04-27 2010-11-11 Hitachi Ltd 通信システム
JP4856790B2 (ja) * 2010-03-05 2012-01-18 パナソニック株式会社 中継器
JP4880802B1 (ja) 2010-09-03 2012-02-22 パナソニック株式会社 中継装置
CN103238302B (zh) * 2011-03-28 2016-07-06 松下知识产权经营株式会社 中继器、中继器的控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2859942Y (zh) * 2005-12-21 2007-01-17 浙江大学 多路控制器局域网总线物理中继器
JP2008109534A (ja) * 2006-10-27 2008-05-08 Renesas Technology Corp パケット中継装置及び半導体チップ
JP2009253949A (ja) * 2008-04-11 2009-10-29 Yamaha Corp 通信システム、送信装置およびプログラム
CN102415059A (zh) * 2009-07-07 2012-04-11 松下电器产业株式会社 总线控制装置
CN102474468A (zh) * 2010-01-25 2012-05-23 松下电器产业株式会社 半导体系统、中继器及芯片电路

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
E.RIJPKEMA等: "Trade-offs in the Design of a Router with Both Guaranteed and Best-Effort Services for Networks on Chip", 《DESIGN, AUTOMATION AND TEST IN EUROPE》 *
J. DIELISSEN等: "Concepts and implementation of the Philips network-on-chip", 《IP-BASED SOC DESIGN》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112154615A (zh) * 2018-05-10 2020-12-29 三菱电机株式会社 电子控制装置
CN112154615B (zh) * 2018-05-10 2023-09-29 三菱电机株式会社 电子控制装置
CN112702056A (zh) * 2020-12-03 2021-04-23 海光信息技术股份有限公司 集成电路、集成电路的广播方法、中继模块及电子设备
CN112702056B (zh) * 2020-12-03 2023-07-21 成都海光集成电路设计有限公司 集成电路、集成电路的广播方法、中继模块及电子设备
CN114884765A (zh) * 2022-01-14 2022-08-09 天地融科技股份有限公司 基于中继设备的plc总线通信方法、系统及中继设备
CN114884765B (zh) * 2022-01-14 2024-06-21 天地融科技股份有限公司 基于中继设备的plc总线通信方法、系统及中继设备

Also Published As

Publication number Publication date
WO2014017069A1 (ja) 2014-01-30
JP5838365B2 (ja) 2016-01-06
CN103828312B (zh) 2017-06-30
US9270604B2 (en) 2016-02-23
JPWO2014017069A1 (ja) 2016-07-07
US20140204740A1 (en) 2014-07-24

Similar Documents

Publication Publication Date Title
CN103828312A (zh) 总线系统以及中继器
JP5036920B1 (ja) 中継装置、中継装置の制御方法、およびプログラム
CN103348640B (zh) 中继装置
CN102523764B (zh) 中继装置
JP5661365B2 (ja) クオリティ・オブ・サービスを伴ったネットワークオンチップ
JP5320512B2 (ja) 中継器、中継器の制御方法、およびプログラム
US9961005B2 (en) Bus system and computer program
US9379983B2 (en) Router, method for controlling router, and computer program
CN108809707A (zh) 一种面向实时应用需求的tsn调度方法
CN101180842B (zh) 具有内部通信网络的集成电路
CN110166380A (zh) 调度报文的方法、第一网络设备及计算机可读存储介质
US9203759B2 (en) Switch state reporting
WO2014141692A1 (ja) バス制御装置、中継装置およびバスシステム
EP3485618B1 (en) Device and method for managing end-to-end connections
CN101129033B (zh) 控制对共享资源的访问的方法和系统
US20070297404A1 (en) System and method for managing messages transmitted in an interconnect network
CN117857466A (zh) 网络流量的确定性编排处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160108

Address after: Japan Osaka

Applicant after: PANASONIC INTELLECTUAL PROPERTY MANAGEMENT Co.,Ltd.

Address before: Osaka Japan

Applicant before: Matsushita Electric Industrial Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170630