CN102640462A - 用于缓冲服务请求的集成电路布置 - Google Patents
用于缓冲服务请求的集成电路布置 Download PDFInfo
- Publication number
- CN102640462A CN102640462A CN2009801624118A CN200980162411A CN102640462A CN 102640462 A CN102640462 A CN 102640462A CN 2009801624118 A CN2009801624118 A CN 2009801624118A CN 200980162411 A CN200980162411 A CN 200980162411A CN 102640462 A CN102640462 A CN 102640462A
- Authority
- CN
- China
- Prior art keywords
- buffer
- services request
- module
- identifiers
- network interface
- 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
Links
- 230000003139 buffering effect Effects 0.000 title description 2
- 239000000872 buffer Substances 0.000 claims abstract description 79
- 238000004891 communication Methods 0.000 claims abstract description 39
- 230000008901 benefit Effects 0.000 claims description 15
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 230000015572 biosynthetic process Effects 0.000 description 25
- 238000005755 formation reaction Methods 0.000 description 25
- 230000008707 rearrangement Effects 0.000 description 6
- 238000000926 separation method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2475—Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种集成电路布置(100),包括:包括多个连接(300)的数据通信网络;经由至少一个网络接口(120)耦合到数据通信网络的多个模块(110),该网络接口包括多个缓冲器;经由其他网络接口(140)耦合到数据通信网络的远程服务模块(150),其中每个所述模块(110)被布置用于向其网络接口(120)提供针对远程服务模块(150)的服务请求(200),所述网络接口被布置用于利用第一标识符(204)扩展所述服务请求,该第一个标识符用于与远程服务模块(150)建立网络连接(300);以及电路部分(350),包括在至少一个网络接口(120)与所述远程服务模块(150)之间的多个缓冲器(142)以用于存储来自所述多个模块(110)的服务请求(200),所述电路部分包括解码逻辑(144)用于通过对嵌入在服务请求(200)中的其他标识符(210)进行解码来选择所述缓冲器(142)中的一个缓冲器。
Description
技术领域
本发明涉及集成电路(IC)布置,该集成电路布置包括具有多个连接的数据通信网络,经由至少一个网络接口耦合到所述数据通信网络的多个模块,网络接口包括多个缓冲器,以及经由其他网络接口耦合到数据通信网络的远程服务模块,其中每个模块被设置以提供其与对于所述远程服务模块的服务请求的网络接口,服务请求包括用于选择所述网络接口的缓冲器的第一标识符。
本发明还涉及用于在这样的IC布置中使用的模块和电路部分。
背景技术
支持在例如片上系统(SoC)的集成电路的模块之间或者在封装中系统(SiP)中的IC模块之间的数据通信给这种布置的设计者提出了设计上的挑战,因为该布置内模块的复杂性以及这些模块操作的速度对该布置的数据通信部分的灵活性和性能提出了较高要求。
在复杂的布置中,例如总线的端到端连接是不适当的,因为它们缺乏所需要的灵活性,使得在IC布置中不得不使用过量的金属以满足数据通信要求。为此,研究了所谓的片上网络(NoC)范式。典型的NoC包括多个网络接口之间的多个连接,连接借助于NoC中的开关是可配置的。
Radulescu等人在IEEE Transactions on Computer Aided Design ofIntegrated Circuits and Systems,第24卷,第1期,2005年,第4-17页上发表的“An Efficient On-Chip NI Offering Guaranteed Services,Shared Memory Abstraction,and Flexible Network Configuration”中公开了根据第一段的IC布置的示例。在该布置中,通过这样的NoC从主模块向从模块通信服务请求。从模块可以包括多个队列,主模块以路径标识符和远程队列标识符的组合形式提供路由信息以允许所述网络接口在主模块的网络接口和从模块的网络接口之间建立网络连接。路径标识符和远程队列标识符二者作为第一级别标识符驻留在OSI兼容请求包的相同级别中。主(master)的网络接口包括不同的队列以在网络上提供保证的带宽和尽力而为的服务。远程(从)网络接口中的队列用于相同目的。
该方案的缺点在于,一旦服务请求被存储在远程队列中的一个中,服务请求的重新排序就不再可能,特别是在队列被实现为先进先出(FIFO)缓冲器时。如果从模块的请求处理消耗相对大量的时间,这会导致在从模块处理一个或者多个耗时的服务请求时网络变为未被充分使用,则这样的重新排序会是有用的。例如,在从模块是存储器控制器的情况下,存储器访问请求的处理典型地比访问请求和访问结果在网络上的通信花费得更长,以使得通过在网络连接上实现保证的带宽和尽力而为的原理的网络性能优化不可能产生IC布置的最佳性能。
US 7,043,593公开了在经由数据总线连接的数据处理器中的主单元和从单元。主单元被设置以向主单元和从单元之间的数据事务指派优选级标识符。从单元具有其中存储有数据事务的数据事务队列以及执行顺序分析单元,执行顺序分析单元基于进入的数据事务的优先级标识符值来确定数据事务队列的内容是否需要重新组织。这考虑到通过从单元的数据事务的无序执行。该方案具有的缺点在于大量数据事务会每次在新的数据事务到达从模块时要求重新组织。这在数据事务流量的高体积的情况下会禁止有效的数据产出。而且,该方案不适于处理来自多个主的数据事务。
发明内容
本发明旨在提供一种IC布置,其中支持对针对用于处理服务请求的其他模块的这些服务请求的有效调度,同时避免对大量网络连接的需要。
根据本发明的一方面,提供一种集成电路布置,包括:包括多个连接的数据通信网络,经由至少一个网络接口耦合到所述数据通信网络的多个模块,该网络接口包括多个缓冲器;经由其他网络接口耦合到数据通信网络的至少一个远程服务模块,其中每个模块被设置以提供其与针对远程服务模块的服务请求的网络接口,所述网络接口被设置以利用用于与远程服务模块建立网络连接的第一标识符扩展所述服务请求;以及电路部分,包括位于至少一个网络接口与远程服务模块之间的用于存储来自多个模块的服务请求的多个缓冲器,所述电路部分包括解码逻辑,用于通过解码嵌入在服务请求中的其他标识符来选择缓冲器之一。
这种电路部分可以位于数据通信网络中或者其他模块的网络接口中,支持对例如FIFO队列等适当缓冲器中的服务请求的调度。这些缓冲器可以被组织,使得在将服务请求放置在所述缓冲器中之前,可以分离要求不同服务处理持续时间的服务访问请求,从而不需要对缓冲器的重新组织。而且,与在Radulescu等人的论文中公开的IC布置相比较,不需要去往每个远程队列的专用连接,由此支持网络所提供的连接数目的降低。
该其他标识符可以是队列标识符,使得解码逻辑可以基于该队列标识符而直接向缓冲器之一指派服务请求。备选地,该其他标识符可以包括所述服务请求的优先级指示,使得解码逻辑被布置用于基于优先级信息来选择缓冲器。在另一备选方案中,该其他标识符包括用于确定远程服务模块处理所述服务请求所需要的时间的指示,使得解码逻辑被布置用于基于该其他模块对请求的处理的持续时间来选择缓冲器。
在一个实施例中,服务请求符合OSI(开放系统互连)模型,并且其中解码逻辑被布置用于在将所述服务请求转译为OSI模型的传输层时对该其他标识符进行解码。为此,服务请求可以包括多层分组,该多层分组包括包含第一标识符的第一报头层和包含该其他标识符的其他有效载荷层。这具有的优点在于,第二标识符对于发送服务请求的模块的网络接口而言将是不可见的,因为此网络接口通常被布置用于基于OSI模型中的第一报头层来建立网络连接。
在另一实施例中,电路部分包括M个缓冲器,M是至少为2的整数,并且其中模块被布置用于生成M个不同的其他标识符。换句话说,远程缓冲器对于每个其他标识符值都是可用的,使得具有不同标识符值的服务请求可以被指派到不同的远程缓冲器。这具有的优点在于,实现了在其他模块处对服务请求重新排序的高灵活性。
在备选实施例中,集成电路布置包括N个模块,N是至少为2的整数,N个模块中的每一个被配置用于生成M个不同的其他路由标识符,M是至少为2的整数,并且其中电路部分包括M乘N个缓冲器,解码逻辑被布置用于基于第一标识符和其他标识符的组合来选择M乘N个缓冲器中的一个。这具有的优点在于,可以基于在与请求模块相关联的网络接口中使用的优先级标识符以及其他标识符来重新调度服务请求,从而可以实现优化的精细等级。备选地,电路部分可以包括M乘P个缓冲器,P是网络中的连接数目,M乘P个缓冲器中的一个是基于例如连接标识符的连接标识信息和其他标识符而可选择的。
优选地,每一个连接包括位于网络接口和电路部分之间的缓冲器。这具有的优点在于,不需要即时(on-the-fly)进行向电路部分缓冲器之一指派服务请求,因而避免了由同时发生服务请求产生的解码冲突。
本发明的集成电路布置可以是单个IC以及包括通过所述数据通信网络互连的多个IC的模块,IC形成IC布置的模块(以及其他模块)。在后一种情况下,网络接口可以形成IC的一部分或者可以是所述布置中的分离IC。本发明的IC布置可以被结合在诸如移动通信设备、图像处理设备、信号处理设备等等的电子设备中。
根据本发明的进一步方面,提供一种用于在本发明的集成电路布置中使用的模块,其中该模块被布置用于提供与用于远程服务模块的服务请求的网络接口,服务请求包括用于选择所述网络接口的缓冲器的第一标识符以及用于选择在所述网络接口和所述远程服务模块的其他网络接口之间耦合的电路部分中的多个缓冲器之一的第二标识符。这样的模块能够生成可以由本发明的IC布置的电路部分的解码器以所述进一步标识符为基础指派到其缓冲器之一的服务请求。
根据本发明的再一方面,提供一种用于在本发明的集成电路布置中使用的电路部分,该电路部分包括用于在用于提供服务请求的多个模块的至少一个网络接口和用于处理所述服务请求的远程服务模块之间耦合的多个缓冲器;以及解码逻辑,用于通过解码被嵌入在服务请求中的其他标识符在所述缓冲器之一中存储服务请求。可以被包括在网络接口中的这样的电路部分考虑到其他模块的服务请求的有效处理。
附图说明
参照附图通过非限制性示例的方式更加详细地描述本发明的实施例,其中
图1示出了本发明的IC布置的实施例;
图2示出了本发明的服务请求的实施例;
图3示出了本发明的IC布置的实施例的另一细节;以及
图4描绘了本发明的IC布置的另一实施例的细节。
具体实施方式
应该理解,附图只是示意性的并且没有按照比例绘制。还应该理解,在整个附图中使用相同的附图标记表明相同或者类似的部件。
图1描绘了IC布置100,其包括四个主模块110,这四个主模块100经由网络接口120耦合到由一对缓冲器131、132以及开关134符号化的路由器模块130。将会理解,这只是这样的开关模块130的符号化说明,并不旨在将该模块的范围限制到该表示;开关模块130的其它实施例对于本领域的普通技术人员来说将是易见的。
IC布置100通常包括经由其他网络接口140耦合到路由器模块130的至少一个从模块150。主模块110和从模块150的数目仅以非限制性示例的方式示出,并且可以包括任何适合数目的模块。此外,在图1中,四个主模块110共享单个网络接口120,但是应该理解其他布置同样是可行的,例如每一个主模块110具有专用网络接口120或者P个主模块110共享Q个网络接口120,其中P和Q是整数并且P>Q,多个从模块150也是这样,其也可以经过专用或者共享的其他网络接口140连接到数据通信网络。
网络接口120和其他网络接口140可以被认为是包括路由器模块130的数据通信网络的一部分。尽管示出了单个路由器模块130,但是将会理解,数据通信网络可以包括更多的路由器模块130,例如路由器开关。路由器模块130可以可选地包括缓冲器131、132,例如用于缓冲网络上的尽力而为的(best effort)通信。从模块150可以是提供对数据存储器的访问的存储器控制器,来自主模块110的请求包括访问指定的存储器地址处的数据的请求。这样的请求将称为服务请求。网络接口120和其他网络接口140的可能实现对于本领域的普通技术人员来说是已知的;例如,Radulescu等人的论文给出了这样实现的详细描述,并且替代物对于本领域的普通技术人员来说将容易可获得。因而,仅出于简化目的,将不详细描述这些网络接口的实现。
例如,网络接口可以被布置用于提供数据通信网络的基于分组的通信与模块110和150所使用的更高级别协议之间的转换。这样的协议可以根据OSI模型定义,这将在后面进行更加详细地解释。网络接口120和140每一个的设计可以被划分为两个部分:NI内核,其实现信道,对服务请求进行分组并且调度到路由器模块130的请求,实现模块到模块流控制和在多个时钟域情况下的时钟域交叉;以及NI外壳,其实现数据通信网络连接、对于连接的事务排序以及被提供到模块的协议专有的其它较高等级问题。
在一个实施例中,第一网络接口120包括多个队列(未示出),例如FIFO缓冲器,用于存储保证的带宽和来自主模块110的尽力而为的服务请求。如在Radulescu等人的论文中解释的,调度器选择哪一个服务请求在每一个数据通信周期中将被转发到数据通信网络。
根据本发明,IC布置100进一步包括电路部分,其包括多个缓冲器142以及解码逻辑144,解码逻辑144用于向缓冲器(即,队列)142之一指派例如经由路由器模块130而从数据通信网络到达的服务请求。在图1中,电路部分被包括在其他网络接口140中,但是后面将更加详细地解释电路部分也可以位于其它位置。
解码逻辑144被布置用于基于服务请求中所包含的其他标识符而将该服务请求指派给缓冲器142中的一个。这利用图2进行更加详细地解释,其示出了由主模块110(和网络接口120)生成的服务请求200的可能实施例。服务请求200包括四个层,包括在其中定义网络路径202和第一等级标识符204的上层。该四个层可以形成OSI模型内的网络层消息240。在一个实施例中,由主模块110生成摘要服务请求,网络接口120被布置用于例如通过向服务请求250添加该上层而将该摘要服务请求转译为OSI兼容分层包200。网络接口120可以使用嵌入在来自主模块110的服务请求中的服务信息(例如远程服务的名称)在网络上定位该服务并且相应地生成上层。其它备选方案对于本领域的普通技术人员来说将容易获得。这具有的优点在于对实际网络实现的知识可被限于网络接口120(和用于返回通信的其他网络140)。
网络路径202通常包括用于在网络接口120与其他网络接口140之间建立连接的路由信息,例如通过在正确位置中放置开关134。这样的连接可以包括从主模块110到从模块150的两个单向信道,反之亦然。这样的主模块110和从模块150的相应网络接口120和140可以包括标记此类连接的终端的缓冲器,如前所述。这些缓冲器例如被表示在图3的网络接口中,例如网络接口120中的缓冲器321、322以及其他网络接口140中的缓冲器341、342。其他网络接口140中的终端连接缓冲器可以由诸如由Radulescu等人公开的队列标识符的分离的第一等级标识符标识,在这种情况下连接可以由第一等级标识符的组合来建立,例如由第一标识符204和队列标识符的组合建立。第一标识符204也可以存在以指示被分组的服务请求在数据通信网络上的通信必须符合某些性能要求,例如保证的带宽或者尽力而为。上层典型地由用于建立必要的网络连接的网络接口120解释。
出于完整目的,第一等级标识符204的数目不必与从模块150的数目相对应,因为这样的模块可以经过多个网络连接可访问,在这种情况下第一标识符204的数目可以大于从模块150的数目。第二层与较低层一起可以是,符合OSI模型的服务请求200的传输层消息250的部分,该第二层通常在网络层消息240被转译为传输层消息250时被解释,在该阶段可以放弃服务请求200的上层。传输层250可以在服务请求目的地处被解释,例如从模块150的其他网络接口140处。根据本发明的服务请求200的实施例,第二层可以包括服务请求类型206、服务请求长度208和其他标识符210,其他标识符210可以被认为是OSI模型上下文中的第二级标识符,因为它被嵌入在分层服务请求200的较低等级中,并且由相应地向其他网络接口140的缓冲器142之一指派服务请求200的解码逻辑144解码。
其他标识符210可以是用于标识队列142之一的标识符,或者可以是由解码逻辑144解释并且随后被映射到所述队列(例如,其他网络接口140的缓冲器142)之一的一些优先级标识符。备选地,请求类型206可以被用作其他标识符,因为请求类型可由从模块150映射到服务请求的期望处理时间。
此时,要强调的是,队列142不是与端接网络接口140中的网络连接的缓冲器相同的缓冲器,而是分离的缓冲器。因此,第二等级标识符210这一标识符不同于Radulescu等人公开的作为用于通过定义连接终端而建立网络连接的标识符的第一等级队列标识符。相反,本发明的其他标识符210用于在一旦服务请求200到达电路部分时就向队列142分派这些服务请求,使得其他标识符210不被用于建立网络连接。
在一个实施例中,电路部分中的缓冲器142的数目等于其他标识符210的潜在值的数目。因此,如果两个主模块110生成具有相同的其他标识符210的服务请求,则这些服务请求将被指派到相同的队列142,队列142通常是FIFO队列,使得这些服务请求无法由从模块150的负载调度器重新排序。该实施例在从模块150的重新调度灵活性和队列142的硬件开销之间提供良好的权衡。
在另一实施例中,电路部分中缓冲器142的数目等于其他标识符210的潜在值的数目乘以IC布置100中主模块110的数目。这允许基于第一标识符204和第二标识符210的组合而向队列142指派服务请求200,使得来自具有相同其他标识符210的不同主模块110的服务请求200到达电路部分的顺序可以仍然由从模块150按照不同的顺序执行,因为这些服务请求200的相应第一标识符204可以使这些服务请求200被调度到不同的队列142。该实施例提供从模块150对服务请求200的处理中的高度重新调度灵活性。
为此,应该理解,队列142优选地是FIFO队列,使得这些队列的内部重新排序是不可能的。因而,通过将被允许向例如存储器控制器的从模块150转发服务请求200的队列142的选择在这些队列的输出处发生重新调度。
此时,要重申的是,尽管Radulescu等人的论文公开了用于选择远程网络接口的目的地队列的队列标识符的使用,但是该队列标识符由主模块的网络接口与路由信息相结合地用于在主模块与指定的从模块之间建立网络连接。该实现的直接结果是队列标识符的数目必须等于网络连接的数目。由于网络中连接的数目通常是受限的以避免包括专用于这样的连接的大面积的IC布置100,因此这限制了队列标识符可以采取的值的数目;由于所述连接典型地包括一个或者多个缓冲器,因此大量队列标识符将导致在数据通信网络中引入大量缓冲器。然而,由于IC布置100对于在其他网络接口140中进行的调度决策比对于数据通信网络的性能更加敏感,因此不需要网络中这样大量的缓冲器,因而至少在面积开销方面产生无效的方案。由于模块之间连接的对等本质,这仅能够通过限制网络接口140中缓冲器142的数目进行克服。
出于该原因,有益的是使其他模块150可获得的缓冲器的数目与数据通信网络中连接的数目无关,使得缓冲器142的数目可以超出此类连接的数目。这由本发明通过如下方式实现:将服务请求200路由到其他网络接口140的端口地址而不是其中的具体队列,使得到该端口的连接充当复用连接,通过该复用连接,针对电路部分中的多个队列142的服务请求200被复用。本发明是基于这样的认识,即,这不会对对IC布置100的整体性能产生显著影响,因为此性能主要是从模块150处理服务请求200花费的时间。
电路部分内侧的解码逻辑144被设置用于通过每一个服务请求的传输层250的转译并且向合适的队列142指派服务请求对这些服务请求200进行解复用。这在图3中进行了示意性阐释,其中在主模块100和网络接口120和从模块150的其他网络接口140之间建立连接300。连接300包括两个信道:从网络接口120到进一步网络接口140的第一单向请求信道310,用于从主模块110向从模块150通信服务请求200;以及单向响应信道320,用于从从模块150向主模块110传送例如所访问的存储器数据的所请求的服务。
如前所述,其他网络接口140包括两个缓冲器341和342,用于在各自信道310和320上缓冲信道上的通信。在操作中,服务请求200从缓冲器341以及由电路部分350的解码逻辑144转译的这些请求的传输层被顺序获取。解码逻辑142控制解复用器145用于基于其他标识符210或者如前所述第一标识符204和其他标识符210的组合而将服务请求200指派到队列142之一。在一个实施例中,复用器146由存储器控制器150控制以从所选择的队列142获取服务请求200。可以使用任何合适的调度算法进行该选择。这样的算法本身已知并且因此仅出于简化目的不再进行详细解释。其中按照不同方式控制复用器146的可选实施例也是可预见的。例如,可以提供用于控制复用器146的分离控制逻辑(未示出),以使得存储器控制器150接收被预复用的请求200的单个流,而不对该流中的请求200的顺序进行控制。
另一可能性在于存在多个复用器146,每一个向存储器控制器150呈现单个请求流。在其他实施例中,存在多个其他网络接口140,每一个包括电路部分350,这些电路部分的复用器146的每一个向存储器控制器150发送服务请求200的单个流。如果多个流访问存储器控制器150,例如经由多个端口,则存储器控制器150可以包括具有相关联的控制逻辑(未示出)的复用器(未示出)。其它替代物对于本领域的普通技术人员来说将明显。
在图3中,仅通过非限制性示例的方式,电路部分350形成从模块150的其他网络接口140的一部分。电路部分350位于网络接口120和其他网络接口140之间的数据通信网络中也是可行的,即位于服务请求250的传输层被解释处的中间网络接口中。这样的可选实施例的示例在图4中示出。这里,电路部分350被放置在位于两个开关模块130之间的数据通信网络中。在该实施例中,通过重新调度从上游开关模块130去往下游开关模块130的传入服务请求200的顺序,解码逻辑144还充当重新调度块。在该实施例中,服务请求200向传输层250的转译是在数据通信网络中而不是其他网络接口140中执行的。这例如在如下情况下是有益的:缓冲器142例如出于路由原因而无法靠近从模块150放置使得它们被代之以放置在数据通信网络中,或者为了支持多个网络接口级中的重新排序以在多于一个远程网络接口上均衡重新排序负载。备选地,在服务请求200的两个流A和B在去往电路部分350的连接上被复用并且在电路部分350中被解复用时,该实施例可以是有用的。电路部分350可以检测流A和B中的一个不恰当,并且(暂时)在离开电路部分350的连接上复用A和B时给出对“流”B的请求的偏好。因而,通常,本发明可以被利用以在数据通信网络中的下游点处均衡服务请求流。
应该注意,上面提及的实施例说明而非限制本发明,并且本领域的普通技术人员将能够在不偏离所附权利要求的范围的情况下设计许多替代实施例。在权利要求中,括号中的任何附图标记不应该被构筑为限制权利要求。词语“包括”不排除除了在权利要求中列出的元件或者步骤之外的元件或者步骤的存在。位于元件之前的词语“一”或者“一个”不排除多个这样的元件的存在。本发明能够利用包括几个分离元件的硬件实现。在枚举几个模块的设备权利要求中,这些模块中的几个可以由一项硬件或者硬件的相同项实施。唯一事实是,在共同的不同从属权利要求中阐述的某些措施不表明不能够有利地利用这些措施的组合。
Claims (15)
1.一种集成电路布置(100),包括:
包括多个连接(300)的数据通信网络,
经由至少一个网络接口(120)耦合到所述数据通信网络的多个模块(110),所述网络接口包括多个缓冲器;
经由其他网络接口(140)耦合到所述数据通信网络的至少一个远程服务模块(150),其中所述模块(110)的每一个模块被布置用于向其网络接口(120)提供针对所述远程服务模块(150)的服务请求(200),所述网络接口被布置用于利用第一标识符(204)来扩展所述服务请求,所述第一标识符用于与远程服务模块(150)建立网络连接(300);以及
电路部分(350),包括位于所述至少一个网络接口(120)与所述远程服务模块(150)之间的多个缓冲器(142)以用于存储来自所述多个模块(110)的服务请求(200),所述电路部分包括解码逻辑(144)以用于通过对嵌入在所述服务请求(200)中的其他标识符(210)进行解码来选择所述缓冲器(142)中的一个缓冲器。
2.根据权利要求1所述的集成电路布置(100),其中所述电路部分(350)被包括在所述其他网络接口(140)中。
3.根据权利要求1或者2所述的集成电路布置(100),其中所述其他标识符(210)包括所述服务请求(200)的优先级指示。
4.根据权利要求1或者2所述的集成电路布置(100),其中所述其他标识符(210)包括用于确定所述远程服务模块(150)可用于处理所述服务请求(200)的时间的指示。
5.根据权利要求1-4任一项所述的集成电路布置(100),其中所述服务请求(200)符合OSI(开放系统互连)模型,并且其中所述解码逻辑(144)被布置用于在将所述服务请求(200)转译至所述OSI模型的传输层时对所述其他标识符(210)进行解码。
6.根据权利要求5所述的集成电路布置(100),其中所述服务请求(200)包括多层分组,所述多层分组包括包含所述第一标识符(204)的第一报头层以及包含所述其他标识符(210)的其他有效载荷层(250)。
7.根据权利要求1-6任一项所述的集成电路布置(100),其中所述电路部分(350)包括M个缓冲器(142),M是至少为2的整数,并且其中所述模块(110)被布置用于生成M个不同的其他标识符(210)。
8.根据权利要求1-6任一项所述的集成电路布置(100),包括N个模块(110),N是至少为2的整数,所述N个模块(110)中的每一个模块被布置用于生成M个不同的其他标识符(210),M是至少为2的整数,并且其中所述电路部分(350)包括M乘N个缓冲器(142),所述解码逻辑(144)被布置用于基于所述第一标识符(204)和所述其他标识符(210)的组合来选择所述M乘N个缓冲器(142)中的一个缓冲器。
9.根据权利要求1-6任一项所述的集成电路布置(100),包括P个网络连接(110),M个不同的其他标识符可以在所述P个网络连接上被传送,P和M分别是值至少为2的整数,并且其中所述电路部分(350)包括M乘P个缓冲器(142),所述解码逻辑(144)被布置用于基于连接标识信息和所述其他标识符(210)的组合来选择所述M乘P个缓冲器(142)中的一个缓冲器。
10.根据权利要求1-9任一项所述的集成电路布置(100),其中每一个连接(300)包括在所述网络接口(120)与所述电路部分(350)之间的缓冲器(321,322,341,342)。
11.一种电子设备,包括根据权利要求1-10任一项所述的集成电路布置。
12.一种电路部分(350)用于在根据权利要求1-10任一项所述的集成电路布置(100)中使用,所述电路部分包括:
多个缓冲器(142),用于耦合在用于提供服务请求(200)的多个模块(110)的至少一个网络接口(120)与用于处理所述服务请求的远程服务模块(150)之间;以及
解码逻辑(144),用于通过对嵌入在所述服务请求(200)中的其他标识符(210)进行解码而将所述服务请求(200)存储在所述缓冲器(142)中的一个缓冲器中。
13.根据权利要求12所述的电路部分(350),其中所述多个缓冲器(142)包括M个缓冲器,M是至少为2的整数,M等于服务请求(200)中的所述其他标识符(210)的可能值的数目。
14.根据权利要求12所述的电路部分(350),其中所述多个缓冲器(142)包括M乘N个缓冲器,M和N是至少为2的整数,M等于服务请求(200)中的所述其他标识符(210)的可能值的数目,并且N等于所述集成电路布置(100)中的所述多个模块中的模块(110)的数目;
所述解码逻辑(142)被布置用于基于第一标识符(204)和所述其他标识符(210)的组合来选择所述M乘N个缓冲器(142)中的一个缓冲器。
15.一种网络接口(140),包括根据权利要求12-14任一项所述的电路部分(350)。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2009/055014 WO2011058392A1 (en) | 2009-11-11 | 2009-11-11 | Integrated circuit arrangement for buffering service requests |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102640462A true CN102640462A (zh) | 2012-08-15 |
CN102640462B CN102640462B (zh) | 2015-12-09 |
Family
ID=42335502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980162411.8A Active CN102640462B (zh) | 2009-11-11 | 2009-11-11 | 用于缓冲服务请求的集成电路布置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9246826B2 (zh) |
EP (1) | EP2499790B1 (zh) |
CN (1) | CN102640462B (zh) |
WO (1) | WO2011058392A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112352403A (zh) * | 2018-07-17 | 2021-02-09 | Wago管理有限责任公司 | 用于数据的缓冲传输的设备 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2296091A1 (en) * | 2009-09-14 | 2011-03-16 | Nxp B.V. | Servicing low-latency requests ahead of best-effort requests |
KR20210012439A (ko) * | 2019-07-25 | 2021-02-03 | 삼성전자주식회사 | 마스터 지능 소자 및 이의 제어 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6430181B1 (en) | 1999-01-15 | 2002-08-06 | Lsi Logic Corporation | Crossbar switch fabric with deterministic maximal scheduling of connection requests with strict scheduling prioritization derived from requested service delays |
US6460120B1 (en) | 1999-08-27 | 2002-10-01 | International Business Machines Corporation | Network processor, memory organization and methods |
US7043593B1 (en) | 2003-04-29 | 2006-05-09 | Advanced Micro Devices, Inc. | Apparatus and method for sending in order data and out of order data on a data bus |
US7243165B2 (en) | 2004-01-14 | 2007-07-10 | International Business Machines Corporation | Parallel pattern detection engine |
EP1728364A1 (en) * | 2004-03-17 | 2006-12-06 | Koninklijke Philips Electronics N.V. | Integrated circuit and method of communication service mapping |
DE602006005925D1 (de) * | 2005-06-03 | 2009-05-07 | Koninkl Philips Electronics Nv | Elektronische vorrichtung und verfahren zur kommunikationsressourcenzuteilung |
WO2007010461A2 (en) * | 2005-07-19 | 2007-01-25 | Koninklijke Philips Electronics N.V. | Electronic device and method of communication resource allocation |
CN101501651A (zh) * | 2006-08-08 | 2009-08-05 | 皇家飞利浦电子股份有限公司 | 电子设备和控制通信的方法 |
EP1919154B1 (en) * | 2006-10-30 | 2015-10-21 | BlackBerry Limited | Wi-Fi quality of service signalling |
-
2009
- 2009-11-11 US US13/508,537 patent/US9246826B2/en active Active
- 2009-11-11 CN CN200980162411.8A patent/CN102640462B/zh active Active
- 2009-11-11 EP EP09764053.6A patent/EP2499790B1/en active Active
- 2009-11-11 WO PCT/IB2009/055014 patent/WO2011058392A1/en active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112352403A (zh) * | 2018-07-17 | 2021-02-09 | Wago管理有限责任公司 | 用于数据的缓冲传输的设备 |
CN112352403B (zh) * | 2018-07-17 | 2023-12-19 | Wago管理有限责任公司 | 用于数据的缓冲传输的设备 |
Also Published As
Publication number | Publication date |
---|---|
US9246826B2 (en) | 2016-01-26 |
US20120226826A1 (en) | 2012-09-06 |
EP2499790A1 (en) | 2012-09-19 |
CN102640462B (zh) | 2015-12-09 |
EP2499790B1 (en) | 2018-02-07 |
WO2011058392A1 (en) | 2011-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Radulescu et al. | An efficient on-chip NI offering guaranteed services, shared-memory abstraction, and flexible network configuration | |
US6490631B1 (en) | Multiple processors in a row for protocol acceleration | |
JP2006502642A (ja) | トランザクションを確立するための集積回路および方法 | |
US8014401B2 (en) | Electronic device and method of communication resource allocation | |
JP4756158B2 (ja) | 通信リソース割り当て電子デバイスおよび方法 | |
US20030200342A1 (en) | Communications system using rings architecture | |
US20080205432A1 (en) | Network-On-Chip Environment and Method For Reduction of Latency | |
US20030167348A1 (en) | Communications system using rings architecture | |
US7843928B2 (en) | Egress traffic management system for a data communications system | |
JP2009502080A (ja) | 電子装置及び通信リソース割り当て方法 | |
TW408272B (en) | LAN switch architecture | |
JP2006254450A (ja) | 大域的非同期ネットワークオンチップシステムにおける通信ノードアーキテクチャ | |
CN116235469B (zh) | 网络芯片和网络设备 | |
WO2005091574A1 (en) | Integrated circuit and method of communication service mapping | |
CN107533481A (zh) | 在具有硬件加速平面和软件平面的系统中提供服务 | |
CN102640462A (zh) | 用于缓冲服务请求的集成电路布置 | |
US7218638B2 (en) | Switch operation scheduling mechanism with concurrent connection and queue scheduling | |
EP1605727A1 (en) | Integrated circuit and method for time slot allocation | |
US8670454B2 (en) | Dynamic assignment of data to switch-ingress buffers | |
US7272151B2 (en) | Centralized switching fabric scheduler supporting simultaneous updates | |
US20080123666A1 (en) | Electronic Device And Method Of Communication Resource Allocation | |
US8559443B2 (en) | Efficient message switching in a switching apparatus | |
WO2010110289A1 (ja) | ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム | |
Parkes et al. | SpaceWire: Spacecraft onboard data-handling network | |
CN109891834A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |