CN1689312B - 用于建立事务的集成电路和方法 - Google Patents

用于建立事务的集成电路和方法 Download PDF

Info

Publication number
CN1689312B
CN1689312B CN038239159A CN03823915A CN1689312B CN 1689312 B CN1689312 B CN 1689312B CN 038239159 A CN038239159 A CN 038239159A CN 03823915 A CN03823915 A CN 03823915A CN 1689312 B CN1689312 B CN 1689312B
Authority
CN
China
Prior art keywords
module
address
network
message
pnip
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.)
Expired - Lifetime
Application number
CN038239159A
Other languages
English (en)
Other versions
CN1689312A (zh
Inventor
K·G·W·戈斯森斯
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.)
Network System Technology Co ltd
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=32088020&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1689312(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1689312A publication Critical patent/CN1689312A/zh
Application granted granted Critical
Publication of CN1689312B publication Critical patent/CN1689312B/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9068Intermediate storage in different physical parts of a node or terminal in the network interface card
    • H04L49/9073Early interruption upon arrival of a fraction of a packet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Multi Processors (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Bus Control (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Microcomputers (AREA)
  • Computer And Data Communications (AREA)

Abstract

提供了一种包括多个模块(M,S)和被安排用于在所述模块(M,S)间传送消息的网络(N)的集成电路,其中,由第一模块(M)发出的消息包括表示网络(N)内所寻址的模块的位置的第一信息,以及表示寻址模块(S)内的位置的第二信息。所述集成电路进一步包括至少一个用于将第一和第二信息配置成单个地址的地址转换装置(AT)。所述地址转换装置(AT)适合于基于所述单个地址来确定寻址哪个模块,以及基于所述单个地址来确定寻址模块(S)的选择位置。因此,第一模块(M)即主模块的设计可以独立于映射到寻址模块(S)即从模块的地址而被实现。此外,实现了更有效的网络资源使用,并且这一方案与总线向后兼容。

Description

用于建立事务的集成电路和方法
技术领域
本发明涉及具有多个处理模块和被安排用于在处理模块间传送消息的网络的集成电路以及用于在这种集成电路中交换消息的方法。
背景技术
硅上系统由于用于实现现有功能的新特性和改进的日益增长的需要,在复杂性方面显示出持续的增长。这通过利用其可在集成电路上集成部件的增加的密度来实现。同时,电路操作的时钟速度也趋于增加。与部件的增加密度结合的更高的时钟速度已经减少了可在相同时钟域内同时操作的区域。这已产生了对于模块化方法的需要。根据这种方法,处理系统包括多个相对独立的、复杂的模块。在传统的处理系统中,系统模块通常经总线彼此通信。然而,随着模块数量增加,由于下述原因,这种通信方法不再实用。一方面,大量模块形成非常高的总线负荷。另一方面,由于总线仅允许一个设备向其发送数据,所以总线形成通信瓶颈。通信网络形成了一种克服这些缺点的有效的方法。
作为高度复杂的芯片中的互连问题的解决方案,片上网络(NoC)近来已经受到相当多的关注。原因有两个方面。首先,NoC有助于解决深亚微米技术方面的电气问题,因为它们构造和管理全局导线。同时,它们共享导线,降低了它们的数量并增加了它们的利用率。NoC也可是能量高效和可靠的,并且与总线相比是可称的。其次,NoC还将计算和通信分离,其主要管理十亿晶体管芯片的设计。NoC实现了此分离,因为传统上使用协议栈来设计它们,所述协议栈提供了将通信服务使用与服务实现分开的明确定义的接口。
然而,当设计片上系统(SoC)时,使用用于片上通信的网络引起了许多必须考虑的新问题。这是因为与其中直接连接通信模块的现有的片上互连(例如总线、交换机或点到点导线)相对比,在NoC中模块经网络节点远程通信。因此,互连判优从集中式改变成分布式,并且必须通过知识产权块(IP)或通过网络来处理诸如无序事务、更高等待时间和端到端流量控制之类的问题。
这些主题的大多数已经是局域与广域网(计算机网络)和作为用于并行机互连网络的互连的领域中的研究课题。两者都与片上网络密切相关,并且在那些领域中的许多结果也可应用于片上。然而,NoC的前提是与片外网络不同的,因此,必须重新评估大多数网络设计选择。片上网络具有导致最终影响网络服务的不同设计选择的不同属性(例如更严格的链路同步)和约束(例如更高存储器成本)。内存(即存储器)和计算资源相对更昂贵,而片上点到点链路的数量在比片外大。内存昂贵,因为诸如RAM之类的通用片上存储器占用大的面积。使存储器以相对较小的尺寸分布在网络部件中甚至更糟,因为那时存储器中开销面积变成主要的。
对片上网络来说,与片外网络相比,计算也以相对较高的成本获得。片外网络接口通常包含专用处理器来实现达到网络层或甚至更高的协议栈,以使主处理器免于通信处理。在网络接口中包括专用处理器在片上是不可行的,因为网络接口的大小将变得比得上连接到网络上的IP或更大。此外,在IP本身上运行协议栈也是不可行的,因为通常这些IP仅具有一个专用功能,并且不具有运行网络协议栈的能力。
连接网络部件的导线和管脚的数量在片上比片外大一个数量级。如果它们整体上不被用于除NoC通信外的其他目的,则它们允许广泛的点到点互连(例如300位链路)。这对片外是不可能的,其中链路相对更窄:8-16位。
片上导线也比片外相对更短,允许比片外更严格的同步。这允许减少路由器中的缓冲空间,因为能以更小粒度进行通信。在当前的半导体技术中,导线也是快的和可靠的,这允许更简单的链路层协议(例如不需要纠错或重传)。这也补偿了缺乏的存储和计算资源。
数据排序:在网络中,从源传送到目的地的数据由于网络节点中的重排序、沿着不同路径、或在丢失后重传而可以无序地到达。对于片外网络,无序数据传送是典型的。然而,对于其中无数据丢失的NoC,能迫使数据沿着源和目的地间的相同路径(确定性路由)而不用重排序。此有序数据传输需要更少的缓冲空间,并且不再需要重排序模块。
当与诸如总线或交换机之类的直接互连相比时,引入网络作为片上互连彻底地改变了通信。这是因为网络的多跳特性,其中不直接连接通信模块,而是由一个或多个网络节点分开。这与其中直接连接模块的普遍的现有互连(即总线)形成对比。这一改变的含意在于判优(其必须从集中式改变成分布式)和通信属性(例如排序或流量控制)。
事务排序:传统上,在总线上排序所有事务(参照外围VCI、AMBA或CoreConnect PLB和OPB)。这以低成本是可能的,因为作为通信方之间的直接链接的互连不重新排序数据。然而,在分割总线上,当从模块以不同速度响应时,在单个主模块上的总排序仍然可引起性能恶化。为解决这一问题,近来总线协议的扩充允许在连接上执行事务。仍然保留连接内的事务排序,但在连接之间没有排序约束(例如OCP或基本VCI)。几个总线协议允许在它们的高级模式(例如高级VCI)中的每连接的无序响应,但请求和响应以与发送它们时相同的顺序到达目的地。
在NoC中,排序变得更差。由于网络的分布式特性与全局排序所需的集中式判优的要求之间的冲突,仅能以非常高的成本来提供全局排序。甚至在源-目的地对之间的局部排序的成本也高。如果数据在多个路径上传送,则它会无序地到达。在这种情况下,为了仍然实现有序传送,必须在传送数据前以顺序号标记数据并在目的地对其重排序。通信网络包括多个部分连接的节点。由节点将来自模块的消息重定向到一个或多个其他节点。为此,所述消息包括表示网络内的寻址模块的位置的第一信息。所述消息可以进一步包括表示模块内的特定位置的第二信息,例如存储器或寄存器地址。第二信息可以调用寻址模块的特定响应。
目的地名称和路由:对于总线来说,在互连上广播命令、地址和数据。它们到达每个目的地,其中的一个基于广播地址激活,并执行所请求的命令。这是可能的,因为所有模块直接连接到相同的总线。在NoC中,将信息广播到所有目的地是不可行的,因为它必须被拷贝到所有路由器和网络接口。这用数据填满了网络。
发明内容
本发明的目的是提供集成电路和用于在集成电路中交换消息的方法,而不用将许多数据引入到网络中。
这个目的是通过根据权利要求1的集成电路和根据权利要求7的用于交换消息的方法来实现的。
因此,提供了一种包括多个模块M、S和被配置用来在所述模块M、S之间传送消息的网络N的集成电路,其中,由第一模块M发出的消息包括表示网络内所寻址的模块的位置的第一信息,以及表示寻址模块S内的位置的第二信息。所述集成电路进一步包括至少一个地址转换装置AT,用于将第一和第二信息配置成单个地址。所述地址转换装置AT适合于基于所述单个地址来确定寻址哪个模块,以及基于所述单个地址来确定寻址模块S的选择位置。
因此,可以独立于映射到寻址模块即从模块的地址来实现第一模块即主模块的设计。此外,实现了更高效的网络资源利用,并且这一方案与总线向后兼容。通过地址转换装置来执行该寻址。
根据本发明的一个方面,所述集成电路包括至少一个与模块M、S中的一个有关的接口装置ANIP、PNIP,用于管理在所述相关模块M、S和网络N之间的通信。所述地址转换装置AT被安排在所述接口装置ANIP、PNIP的一个中。
根据本发明的另一方面,所述地址转换装置AT被安排在与所述第一模块M有关的所述接口装置ANIP、PNIP中。
根据本发明的又一方面,所述地址转换装置AT包括地址映射表,以便存储在全局和局部存储器映射之间的联系。
根据本发明的另一方面,所述地址映射表是静态的、可编程的或动态的。
根据本发明的又一方面,所述地址映射表包含用于连接的每个信道、用于连接的网络接口端口ANIP、PNIP和用于在寻址模块S中的局部地址的字段。
本发明还涉及一种用于在包括多个模块M、S的集成电路中交换消息的方法,所述消息经网络N在模块M、S之间进行交换,其中,由模块M发出的消息包括表示网络内的寻址模块S的位置的第一信息,以及表示寻址模块S内的位置的第二信息。通过将第一和第二信息配置为单个地址来执行地址转换AT。基于所述单个地址,所述地址转换确定寻址哪个模块,以及基于所述单个地址,确定寻址模块(S)的选择位置。
本发明基于对主模块隐藏数据的寻址的思想。
本发明的另外方面如在从属权利要求书中所述。
参考下文所述的实施例,本发明的这些和其他方面是显而易见的并将被阐明。
附图说明
图1示出根据第一实施例的片上系统,以及
图2示出根据第二实施例的片上系统,以及
图3示出根据第三实施例的片上系统。
具体实施方式
下述实施例涉及片上系统,即在相同芯片上经某种互连彼此通信的多个模块。互连具体化为片上网络NOC。片上网络可以包括网络内的导线、总线、时分多路复用、交换机和/或路由器。在所述网络的传输层,在连接上执行模块间的通信。连接被视为在第一模块和至少一个第二模块间的一组信道,每个具有一组连接属性。对于在第一模块和单个第二模块间的连接(即简单连接),所述连接包括两个信道,也就是从第一模块到第二模块的一个信道,即请求信道,以及从第二模块到第一模块的第二信道,即响应信道。请求信道专供从第一模块到第二模块的数据和消息之用,而响应信道专供从第二模块到第一模块的数据和消息之用。然而,如果连接包含一个第一模块以及N个第二模块,则提供2*N个信道,以便提供例如多播连接。这里,第一模块向所有第二模块发出请求。连接属性可以包括排序(有序数据传输)、流量控制(远程缓冲器被保留用于连接,以及允许数据产生者仅当保证空间可用于所生成的数据时才发送数据)、吞吐量(保证吞吐量的下限)、等待时间(保证用于等待时间的上限)、损失(数据丢失)、传输终止、事务完成、数据纠正、优先级或数据传送。
图1示出根据第一实施例的片上系统。该系统包括主模块M、两个从模块S1、S2。每个模块分别经网络接口NI连接到网络N上。网络接口NI用作在主从模块M、S1、S2与网络N之间的接口。网络接口NI被提供来管理各个模块和网络N的通信,以便模块能执行它们的专用操作,而不必处理与网络或其他模块的通信。模块接口NI可以通过网络在彼此之间发送读rd和写wr请求以及操作。
图2示出根据第二实施例的片上系统。该系统包括主模块M和两个从模块S1、S2,路由器网络RN以及三个在模块和路由器网络RN之间的网络接口ANIP、PNIP。网络接口提供两个网络接口端口NIP(一个请求和一个响应端口),通过它们模块能与路由器网络RN或经路由器网络RN与其他模块通信。与主模块M有关的网络接口端口被称为有源网络接口端口ANIP以及与从模块有关的网络接口称为无源网络接口端口PNIP。在主模块M和从模块S1、S2之间的通信基于请求-响应事务,其中主M通过提出可能具有一些数据或所请求的连接属性的请求来启动事务。请求REQ经有源网络接口端口ANIP、网络RN和无源网络接口端口PNIP被传送到从模块S。由从模块T执行请求,并且如果需要或请求的话将数据返回为响应RESP。此响应RESP可以包括用于主M的数据和/或确认。主M上的过程可以看见0-FF的地址映射,其被分配在两个从S1、S2的存储器中,即第一从S1的存储器中的0-7F以及第二从S2的存储器中的80-FF。在源处解码地址以便找出到目的地模块的路径。因此,事务地址将具有两部分:(a)目的地标识符,以及(b)目的地处的内部地址。
模块/网络接口间的连接可以分类如下:
-简单连接是在一个ANIP和一个PNIP之间的连接。
-多播连接是在一个ANIP和一个或多个PNIP之间的连接,其中复制所发送的消息,并且每个PNIP接收这些消息的拷贝。在多播连接中,当前允许无返回消息,因为它们产生大的通信量(即每个目的地一个响应)。它还增加了在ANIP中的复杂性,因为来自PNIP的各个响应必须合并成用于ANIP的单个响应。这要求用于合并本身的缓冲器空间和/或附加计算。
-窄播(narrowcast)连接是在一个ANIP和一个或多个PNIP之间的连接,其中ANIP启动的每个事务正好由一个PNIP执行。窄播连接的例子,其中ANIP在两个存储器模块上映射的地址空间上执行事务。根据事务地址,仅在这两个存储器中的一个上执行事务。
通过解码在有源网络接口端口ANIP处的每个事务地址可以实现窄播连接。根据所述解码,识别了事务的目标从模块,并且仅将事务请求发送到那个特定的从模块,即请求仅对目标从模块可见而不是对网络中所有的从模块可见。
图3示出根据本发明的第三实施例的片上系统。根据第三实施例的系统是基于根据第二实施例的系统。另外,有源网络接口端口ANIP包括具有地址映射表AMT的地址转换管理器AT,其中地址转换管理器AT基于存储在地址映射表AMT中的信息来执行目标从模块的地址解码。所述地址映射表AMT可以在静态的、可编程的或动态的基础上实现,并且可以包含用于连接的每个信道、用于连接标识符、用于连接的网络接口端口ANIP、PNIP和/或用于寻址模块S中的本地地址的字段。
在从模块中的每个地址具有全局和局部地址。全局地址与如从主M上的处理所看到的地址有关以及局部地址与从模块的地址有关。全局地址的地址范围可以是0000-FFFF,而从模块内的范围可以是000-FFF。
全局地址可以用不同方式形成。首先,它由网络地址和局部地址构成。网络地址可以是接收模块的端口标识符,即无源网络接口端口PNIP的port_ID。这种方案可以向后兼容。
其次,全局地址由连接标识符(连接id)和作为最小信息的局部地址、或者替代地连接标识符、无源网络接口端口PNIP和局部地址构成。提供无源网络接口端口PNIP在某些情形中是冗余的,但增加了方案的安全性。在主模块的情况下,连接id识别几个从模块,以及应当有某种装置来选择它们中的一个。仍然需要网络接口端口NIP地址或全局地址(从其导出无源网络接口端口PNIP)。在两种情况下(即网络接口(NI)地址和全局地址),根据用于选择的装置校验是可能的,因为仅将网络接口端口NIP的子集映射到连接:
a)基于连接id+全局地址,即无源网络接口端口PNIP id和局部地址,也可能仅通过连接的通信属性和校验来执行地址转换。
b)基于连接id、无源网络接口端口PNIP id+局部地址,也可能通过连接的通信属性和校验来执行地址转换。
在从模块的情况下,连接id足以确定数据的目的地。此目的地是在那个连接的唯一ANIP处连接的唯一主模块。
如上所述,在有源网络接口中由地址转换管理器AT执行地址转换,其中地址转换管理器AT包括其自己的地址映射表AMT,其中存储执行地址转换所需的所有信息。然而,地址转换管理器AT和/或地址映射表AMT也可以不被安排在网络接口中,而是被安排在网络N的中央。
根据本发明的另一实施例,使用简单或多播连接也能实现窄播连接的功能性,然而是以更高的成本,具有更少的灵活性和/或妨碍模块的可重用性。使用几个到每个从模块S的简单连接可以实现窄播连接。根据所述地址,主模块M或其有源网络接口端口ANIP选择适当的简单连接。连接的不同属性,即用于连接的各个信道的不同连接属性仍然能被每个从模块地实现。然而,主模块M需要预先了解地址映射的分配,其将妨碍可重用性。使用简单连接使得编程主模块更困难,因为必须管理多个连接标识符。如果使用多个简单连接,则必须为各个响应分配多个缓冲器,即一个用于一个简单连接。然而,这会需要比分配如用在窄播连接中的单个的较大缓冲器更大的存储器。对要求有序窄播事务的情形,必须在较高级上实现这些,因为在连接上不提供排序保证。
可选择地,可以在多播连接的基础上实现窄播连接。多播连接将主M连接到一个或多个从S1、S2。对具有响应的事务,所有从模块均响应,但仅有一个单个响应返回到主模块。可以通过与主模块有关的有源网络接口ANIP来执行响应消息的这一过滤。可选择地,可以通过在从模块处实施事务过滤来实现基于多播连接的窄播连接,即通过与从模块有关的无源网络接口PNIP执行过滤。PNIP根据事务地址确定是否将事务转发到相关从模块。然而,由于多播连接期望来自每个从模块的响应,所以PNIP必须包括空响应,其然后通过ANIP或模块过滤。这一方案允许主模块的简单编程,因为仅包含一个单个连接。也增加了主模块M的设计的可重用性,因为不需要知道各个从模块上的地址分配。但生成了对于其也需要缓冲的大量不必要的网络通信量,即到未寻址的从模块或来自未寻址的从模块的通信量。最后,由于将请求发送到每个从模块,所以可执行每个从模块的微分带宽分配的微调。
没有响应的事务(例如预写入)在已经由从模块执行时被认为完成。由于没有到主模块的响应消息,所以不能提供有关事务完成的保证。
当从ANIP接收RETSTAT消息时,具有响应的事务(例如确认写入)被认为完成。回想当数据接收为响应(RETDATA)时,也接收RETSTAT(可能隐含)来验证数据。或者可以成功地执行事务,在这种情况下,返回成功RETSTAT,在从模块处的执行失败,然后返回执行错误RETSTAT,或者失败,因为与无流量控制有关的缓冲器溢出,然后报告溢出错误。假定当从模块接受请求响应的CMD时,从模块总是生成响应。
在网络中,路由器不丢失数据,因此,总是保证在NI处传送消息。与流量控制有关,NI也不丢失数据。因此,在这种情况下,自动保证消息递送,以及由此的到IP的事务完成。
然而,如果没有流量控制,在缓冲器溢出的情况下,在网络接口处丢失消息。在NI处会丢失所有CMD、OUTDATA和RETDATA。为保证事务完成,不允许RETSTAT丢失。因此,在ANIP中,必须提供足够的缓冲器空间来容纳用于所有未完成事务的RETSTAT消息。这是通过限制未完成事务的数量来实施的。
现在描述单个连接内的不同事务间的排序要求。在不同连接上,在传输层不定义事务的排序。
在其中能观察到事务的顺序的连接中有几点:(a)其中主模块M、I向ANIP提供CMD消息的顺序,(b)其中通过PNIP将CMD递送到从模块T、S的顺序,(c)其中从模块T、S向PNIP提供响应的顺序,以及(d)通过ANIP将响应递送到主模块的顺序。注意并非(b)、(c)和(d)总是存在。此外,不存在有关从模块执行事务的假设;仅能观察到响应的顺序。通过从模块的事务执行的顺序被认为是系统判定,并且不是互连协议的一部分。
在ANIP和PNIP处,允许交错属于相同连接上的不同事务的输出消息。例如,可以发出两个写入命令,并仅在它们的数据后。如果OUTDATA消息的顺序不同于CMD消息的顺序,则必须引入事务标识符以将OUTDATA与它们相应的CMD关联。
如下可以通过PNIP将输出消息递送到从模块(见b):
-无序,其使得在PNIP处的不同事务的输出消息的递送无序,
-局部有序,其中必须按发送事务的顺序将它们递送到每个PNIP,但在PNIP上强加无序。可以通过有序数据传输或通过在PNIP处重新排序输出消息来提供输出消息的局部有序递送。
-全局有序,其中必须在连接的所有PNIP上按发送事务的顺序来递送它们。事务的输出部分的全局有序递送需要成本高的同步机制。
当按与将CMD递送到从模块相同的顺序返回RETDATA和RETSTAT消息(b)时,可以按顺序将事务响应消息通过从模块递送到PNIP(c),或者相反地按无序。当响应是无序时,必须有识别响应所属的事务的机制。这通常使用附加到用于事务识别的消息的标记(与VCI中的标记类似)来完成。
如下可以通过ANIP将响应消息递送到主模块(见d):
-无序,其使得响应的递送无序,这里还必须使用标记来将响应与它们相应的CMD关联。
-局部有序,其中按通过主模块将原始CMD提供给ANIP的顺序来递送用于单个从模块的事务的RETDATA和RETSTAT消息。注意对到相同连接内的不同从模块的事务不强迫排序。
-全局有序,其中按与原始CMD相同的顺序来将连接中的所有响应递送到主模块。当在连接上对事务进行流水线处理时,那么响应的全局有序递送要求在ANIP处重新排序。
上述排序间的所有3×2×3=18种组合是可能的。从这些中定义和提供了下述两个。未排序连接是其中在事务的任何部分中假定无排序的连接。因此,必须标记响应以能够识别它们属于哪个事务。实现无排序连接具有低成本,然而,它们更难被使用,并且引入了标记的开销。
有序连接被定义为具有用于从PNIP到从模块的输出消息的局部排序、PNIP处的有序响应以及用于在ANIP处的响应的全局排序的连接。选择用于输出部分的局部排序,因为全局排序具有非常高的成本,并且很少使用。选择响应排序以允许具有无标记的简单编程模式。以适度成本在ANIP处的全局排序是可能的,因为在ANIP中局部完成了所有重新排序。用户可以使用非流水线确认的事务以高的等待时间为代价来在PNIP处模拟具有输出和返回消息的全局排序的连接。
在网络中,可以以时分多址(TDMA)方式为连接保留吞吐量,其中,在固定帧上以固定大小的时隙来分离带宽。当保留时隙时,可以保证带宽以及等待时间和抖动的限度。它们都被定义在多个时隙中。
如前所述,网络保证消息递送到NI。从一个NIP发送的消息在另一NIP处不是立即可见的,因为网络的多跳特性。因此,网络上的信号交换仅允许每次传送一个单个消息。这限制了连接上的吞吐量并增加了事务的等待时间。为解决这一问题以及实现更好的网络利用,必须对消息进行流水线处理。在这种情况下,如果不以数据到来的相同速率在PNIP处使用数据,则必须引入流量控制来降低生产者,或者会丢失数据,因为在用户NI处有限的缓冲空间。
定义了从网络细节提取的一组NoC服务。在IP设计中使用这些服务来分离计算和通信。使用请求-响应事务模型来接近现有的片上互连协议。这易于当前IP到NoC的迁移。为了充分利用NoC的性能,例如高带宽和事务并行性,提供了面向连接的通信。可以与不同属性无关来构造连接。这些属性包括事务完成、各种事务排序、带宽下限、等待时间和抖动上限以及流量控制。
如上所述,NoC具有不同于现有的片外网络和现有的片上互连的属性。因此,不能直接将现有的协议和服务接口应用于NoC,而是必须考虑到NoC的特性。例如,诸如TCP/IP之类的协议假定网络有损耗,并且包括相当的复杂性以提供可靠的通信。因此,在NoC中,假定在较低层已经解决数据传送可靠性是不合适的。另一方面,也不可以直接应用现有片上协议,例如VCI、OCP、AMBA或CoreConnect。例如,假定数据的有序传送:如果从相同主模块启动两个请求,则它们以相同的顺序到达目的地。这并不自然而然地适合NoC。事务的原子链以及端对端流量控制也需要NoC接口中的特别关注。
如图1和2中所述的模块可以是在所述网络接口NI处与网络交互作用的所谓的知识产权块IP(计算元件、存储器或包含模块的子系统)。NI提供NI端口NIP,通过该端口通信服务被访问。NI可以具有连接一个或多个IP的几个NIP。类似地,IP可连接到不至一个的NI和NIP上。
通过连接上的网络接口来执行网络上的通信,即启动者和目标模块对网络来说是不可见的。引入连接来描述和识别具有诸如有保证的吞吐量、受限的等待时间和抖动、有序递送或流量控制之类的不同属性的通信。例如,为区分和独立地保证1Mbs和25Mbs的通信,可以使用两个连接。通过可能具有不同属性的多个连接可以连接两个NIP。如在此定义的连接与来自OCP和VCI的线程和连接的概念类似。其中在OCP和VCI中仅使用连接来放宽事务排序,仅从排序属性归纳以包括缓冲和流量控制的结构、有保证的吞吐量以及每个连接受限的等待时间。
根据本发明的实施例的具有想要属性的连接必须在使用前首先被创建或建立。这会导致网络内的资源保留(例如缓冲空间或每时间单位的链接使用率的百分比)。如果所请求的资源不可用,则网络RN将拒绝该请求。在使用后,关闭连接,这将导致释放由那个连接占用的资源。
为了允许结构连接更灵活并因此的每个连接的更好资源分配,可以独立地构造连接的输出和返回部分。例如,可以在主从模块处的NIP中分配不同数量的缓冲空间,或可以对请求和响应保留不同的带宽。
在使用由请求以及可能响应组成的事务的连接上进行通信。所述请求编码操作(例如读、写、刷新、测试并设置、空操作指令)并可能运送输出数据(例如用于写命令)。作为命令(例如读)和/或确认的结果,所述响应返回数据。连接包含至少两个NIP。总是在称为连接的有源NIP(ANIP)的NIP的一个且仅一个处启动连接上的事务。连接的所有其他NIP称为无源NIP(PNIP)。
在连接上每次可有多个激活的事务,但更通常地不是用于分割总线。也就是说,在连接的ANIP处启动事务,而用于先前事务的响应是未决的。如果连接具有多个从模块,则可向多个从模块启动多个事务。也可在用于请求和响应的单个主-从对间对事务进行流水线处理。原则上,也可在从模块内对事务进行流水线处理,如果从模块允许此的话。
事务可以由下述消息组成:
-由ANIP发送的命令消息(CMD),并且其描述了将在连接到PNIP的从模块处执行的动作。命令的例子是读取、写入、测试和设置以及刷新。命令是事务中必须的唯一消息。对仅允许不具有参数的单个命令(例如固定大小的无地址写入)的NIP,假定命令消息仍然存在,即使它是隐含的(即不是由IP明确发送的)。
-在要求要被执行的数据的命令(例如写入、多播及测试并设置)后由ANIP发送的输出数据消息(OUTDATA)。
-作为产生数据(例如读取及测试并设置)的事务执行的结果由PNIP发送的返回数据消息(RETDATA)。
-完成确认消息(RETSTAT),它是在结束命令时由PNIP返回的可选消息。它可以发信号告知成功完成或错误。对包括RETDATA  和RETSTAT的事务,为了效率可以将两个消息结合成单个消息。然而,在概念上它们都存在:发信号告知存在数据或错误的RETSTAT,以及运送数据的RETDATA。在基于总线的接口中,RETDATA和RETSTAT通常存在为两个单独的信号。
组成事务的消息被划分成输出消息,即CMD和OUTDATA,以及响应消息,即RETDATA、RETSTAT。在事务内,CMD在所有其他消息之前,以及如果存在的话,RETDATA在RETSTAT之前。这些规则适用于主模块和ANIP间以及PNIP和从模块间。
应该注意到,上述实施例是示例说明而不是限制本发明,并且本领域的技术人员将能设计许多替代的实施例而不背离附加权利要求书的范围。在权利要求书中,位于括号间的任何附图标记不被解释为限制权利要求。词“包括”不排除存在除了在权利要求中列出的以外的元件或步骤。在元件前的词“一”或“一个”不排除存在多个这种元件。在列举几个装置的设备权利要求中,可以通过硬件的同一项来实现这些装置中的若干。不过,在相互不同的从属权利要求中讲述的某些措施的事实不表示这些措施的组合不能被有利地利用。
此外,权利要求书中的任何附图标记不应当被解释为限制权利要求的范围。

Claims (6)

1.包括多个模块(M,S)和被安排用于在所述模块(M,S)间传送消息的网络(N)的集成电路,其中,由第一模块(M)发出的消息包括表示网络内的所寻址模块(S)的位置的第一信息,以及表示所寻址模块(S)内的特定位置的第二信息,
所述集成电路包括
至少一个地址转换装置(AT),用于将第一和第二信息配置成单个地址,
其中,所述地址转换装置(AT)适合于基于所述单个地址来确定寻址哪个模块,以及
基于所述单个地址来确定所寻址模块(S)内的特定位置。
2.如权利要求1所述的集成电路,进一步包括:
与模块(M,S)中的一个模块有关的至少一个网络接口端口(ANIP,PNIP),用于管理在所述模块(M,S)中的一个模块和网络(N)之间的通信,
其中,所述地址转换装置(AT)中的一个被安排在所述网络接口端口(ANIP,PNIP)的一个中。
3.如权利要求2所述的集成电路,其中,
所述地址转换装置(AT)被安排在与所述第一模块(M)有关的所述网络接口端口(ANIP,PNIP)中。
4.如权利要求2或3所述的集成电路,其中,
所述地址转换装置(AT)包括地址映射表(AMT)。
5.如权利要求4所述的集成电路,其中,
所述地址映射表(AMT)包含用于连接的每个信道、用于连接的网络接口端口(ANIP,PNIP)和用于所寻址模块(S)中的局部地址的字段。
6.用于在包括多个模块(M,S)的集成电路中交换消息的方法,所述消息经网络(N)在模块(M,S)之间进行交换,其中,由第一模块(M)发出的消息包括表示网络内的所寻址模块(S)的位置的第一信息,以及表示所寻址模块(S)内的特定位置的第二信息,该方法包括步骤:
-将第一和第二信息配置为单个地址;
-基于所述单个地址来确定寻址哪个模块;以及
-基于所述单个地址来确定所寻址模块(S)内的特定位置。
CN038239159A 2002-10-08 2003-07-04 用于建立事务的集成电路和方法 Expired - Lifetime CN1689312B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP02079196.8 2002-10-08
EP02079196 2002-10-08
PCT/IB2003/003036 WO2004034676A1 (en) 2002-10-08 2003-07-04 Integrated circuit and method for establishing transactions

Publications (2)

Publication Number Publication Date
CN1689312A CN1689312A (zh) 2005-10-26
CN1689312B true CN1689312B (zh) 2010-04-14

Family

ID=32088020

Family Applications (5)

Application Number Title Priority Date Filing Date
CNB038239132A Expired - Lifetime CN100342370C (zh) 2002-10-08 2003-07-04 用于交换数据的集成电路和方法
CN038239159A Expired - Lifetime CN1689312B (zh) 2002-10-08 2003-07-04 用于建立事务的集成电路和方法
CNA200380101041XA Pending CN1703881A (zh) 2002-10-08 2003-10-07 集成电路和建立事务处理的方法
CNB2003801010439A Expired - Lifetime CN100367250C (zh) 2002-10-08 2003-10-07 用于建立事务的集成电路和方法
CNB2003801010458A Expired - Fee Related CN100370443C (zh) 2002-10-08 2003-10-07 集成电路

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNB038239132A Expired - Lifetime CN100342370C (zh) 2002-10-08 2003-07-04 用于交换数据的集成电路和方法

Family Applications After (3)

Application Number Title Priority Date Filing Date
CNA200380101041XA Pending CN1703881A (zh) 2002-10-08 2003-10-07 集成电路和建立事务处理的方法
CNB2003801010439A Expired - Lifetime CN100367250C (zh) 2002-10-08 2003-10-07 用于建立事务的集成电路和方法
CNB2003801010458A Expired - Fee Related CN100370443C (zh) 2002-10-08 2003-10-07 集成电路

Country Status (10)

Country Link
US (3) US7769893B2 (zh)
EP (3) EP1552411A2 (zh)
JP (3) JP2006502642A (zh)
KR (1) KR101016987B1 (zh)
CN (5) CN100342370C (zh)
AT (2) ATE373922T1 (zh)
AU (3) AU2003299454A1 (zh)
DE (2) DE60316458T2 (zh)
TW (1) TWI307840B (zh)
WO (3) WO2004034173A2 (zh)

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005010768A1 (en) * 2003-07-30 2005-02-03 Koninklijke Philips Electronics N.V. Integrated circuit with dynamic communication service selection
CN1926826B (zh) * 2004-03-03 2010-10-20 皇家飞利浦电子股份有限公司 其中数据处理单元经网络进行通信的数据处理电路
US20070234006A1 (en) * 2004-04-26 2007-10-04 Koninklijke Philips Electronics, N.V. Integrated Circuit and Metod for Issuing Transactions
ATE396454T1 (de) * 2004-05-18 2008-06-15 Koninkl Philips Electronics Nv Integrierte schaltung und verfahren zur pufferung zur optimierung der burst-länge in netzwerken auf chips
EP1605727A1 (en) * 2004-06-09 2005-12-14 Koninklijke Philips Electronics N.V. Integrated circuit and method for time slot allocation
FR2875982B1 (fr) * 2004-09-28 2006-12-22 Commissariat Energie Atomique Architecture de communication semi-automatique noc pour applications "flots de donnees"
US7596653B2 (en) * 2004-11-08 2009-09-29 Intel Corporation Technique for broadcasting messages on a point-to-point interconnect
CN101053225A (zh) * 2004-11-09 2007-10-10 皇家飞利浦电子股份有限公司 通信资源分配的电子设备和方法
JP2008522306A (ja) * 2004-12-01 2008-06-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データ・トラフィックを変換し、同期化するデータ処理システム及び方法
US7711787B2 (en) * 2004-12-15 2010-05-04 Electronics And Telecommunications Research Institute On-chip network interfacing apparatus and method
US20080186998A1 (en) * 2005-04-06 2008-08-07 Koninklijke Philips Electronics, N.V. Network-On-Chip Environment and Method for Reduction of Latency
WO2006106476A1 (en) * 2005-04-07 2006-10-12 Koninklijke Philips Electronics N. V. Network-on-chip environment and method for reduction of latency
WO2006109207A1 (en) * 2005-04-13 2006-10-19 Koninklijke Philips Electronics N.V. Electronic device and method for flow control
CN101189843B (zh) * 2005-06-03 2011-06-15 皇家飞利浦电子股份有限公司 电子设备和通信资源分配方法
DE602005004529T2 (de) * 2005-07-14 2009-01-29 Interuniversitair Microelektronica Centrum Vzw Verfahren zum Verwalten einer Vielzahl von virtuellen Verbindungen zur gemeinsamen Nutzung auf einer Verbindungsleitung und Netzwerk zur Implementierung dieses Verfahrens
KR100653087B1 (ko) * 2005-10-17 2006-12-01 삼성전자주식회사 AXI가 적용된 NoC 시스템 및 그 인터리빙 방법
WO2007071889A1 (en) * 2005-12-22 2007-06-28 Arm Limited Arbitration method reordering transactions to ensure quality of service specified by each transaction
JP4611901B2 (ja) * 2006-01-16 2011-01-12 株式会社ソニー・コンピュータエンタテインメント 信号伝送方法、ブリッジユニット、および情報処理装置
JP4372110B2 (ja) * 2006-02-10 2009-11-25 エヌイーシーコンピュータテクノ株式会社 データ転送回路、それを利用したマルチプロセッサシステム、及びデータ転送方法
FR2898753B1 (fr) * 2006-03-16 2008-04-18 Commissariat Energie Atomique Systeme sur puce a controle semi-distribue
FR2900017B1 (fr) * 2006-04-12 2008-10-31 Arteris Sa Systeme d'interconnexions de blocs fonctionnels externes sur puce muni d'un unique protocole parametrable de communication
FR2904445B1 (fr) * 2006-07-26 2008-10-10 Arteris Sa Systeme de gestion de messages transmis dans un reseau d'interconnexions sur puce
US7961605B2 (en) * 2006-07-31 2011-06-14 International Business Machines Corporation System and method for enabling management of a plurality of messages in a communication network
US8045573B2 (en) 2006-08-16 2011-10-25 Arm Limited Bit ordering for packetised serial data transmission on an integrated circuit
KR100737943B1 (ko) * 2006-09-13 2007-07-13 삼성전자주식회사 네트워크-온-칩 응답 신호 제어 장치 및 그 방법
US8689244B2 (en) * 2007-01-26 2014-04-01 Objective Interface Systems, Inc. Hardware communications infrastructure supporting location transparency and dynamic partial reconfiguration
WO2008126471A1 (ja) * 2007-04-06 2008-10-23 Nec Corporation 半導体集積回路およびその試験方法
US7860085B2 (en) * 2007-05-14 2010-12-28 Alcatel Lucent Dual OSS management of an Ethernet access network
CN101075961B (zh) * 2007-06-22 2011-05-11 清华大学 片上网络设计用的一种自适应打包方法
US20090109996A1 (en) * 2007-10-29 2009-04-30 Hoover Russell D Network on Chip
US20090125706A1 (en) * 2007-11-08 2009-05-14 Hoover Russell D Software Pipelining on a Network on Chip
US20090125703A1 (en) * 2007-11-09 2009-05-14 Mejdrich Eric O Context Switching on a Network On Chip
US8261025B2 (en) * 2007-11-12 2012-09-04 International Business Machines Corporation Software pipelining on a network on chip
US8526422B2 (en) * 2007-11-27 2013-09-03 International Business Machines Corporation Network on chip with partitions
US8276034B2 (en) 2007-12-27 2012-09-25 Ricoh Company, Limited Information processing apparatus, information processing method, and computer program product
JP4554703B2 (ja) * 2007-12-27 2010-09-29 株式会社リコー 情報処理装置、情報処理方法及び情報処理プログラム
US8473667B2 (en) * 2008-01-11 2013-06-25 International Business Machines Corporation Network on chip that maintains cache coherency with invalidation messages
US8490110B2 (en) * 2008-02-15 2013-07-16 International Business Machines Corporation Network on chip with a low latency, high bandwidth application messaging interconnect
US8307180B2 (en) 2008-02-28 2012-11-06 Nokia Corporation Extended utilization area for a memory device
WO2009125368A2 (en) * 2008-04-09 2009-10-15 Nxp B.V. Electronic device and method for controlling an electronic device
US20090260013A1 (en) * 2008-04-14 2009-10-15 International Business Machines Corporation Computer Processors With Plural, Pipelined Hardware Threads Of Execution
US20090271172A1 (en) * 2008-04-24 2009-10-29 International Business Machines Corporation Emulating A Computer Run Time Environment
US8423715B2 (en) 2008-05-01 2013-04-16 International Business Machines Corporation Memory management among levels of cache in a memory hierarchy
US20090282419A1 (en) * 2008-05-09 2009-11-12 International Business Machines Corporation Ordered And Unordered Network-Addressed Message Control With Embedded DMA Commands For A Network On Chip
US8214845B2 (en) * 2008-05-09 2012-07-03 International Business Machines Corporation Context switching in a network on chip by thread saving and restoring pointers to memory arrays containing valid message data
US20090282211A1 (en) * 2008-05-09 2009-11-12 International Business Machines Network On Chip With Partitions
US8494833B2 (en) * 2008-05-09 2013-07-23 International Business Machines Corporation Emulating a computer run time environment
US8392664B2 (en) * 2008-05-09 2013-03-05 International Business Machines Corporation Network on chip
US8230179B2 (en) * 2008-05-15 2012-07-24 International Business Machines Corporation Administering non-cacheable memory load instructions
US8438578B2 (en) 2008-06-09 2013-05-07 International Business Machines Corporation Network on chip with an I/O accelerator
US8195884B2 (en) * 2008-09-18 2012-06-05 International Business Machines Corporation Network on chip with caching restrictions for pages of computer memory
FR2945396A1 (fr) * 2009-05-07 2010-11-12 St Microelectronics Grenoble 2 Procede et dispositif d'analyse de la propagation de transactions dans un reseau multi-protocoles d'un systeme sur puce
US8874824B2 (en) 2009-06-04 2014-10-28 Memory Technologies, LLC Apparatus and method to share host system RAM with mass storage memory RAM
KR101563195B1 (ko) 2009-08-18 2015-10-27 삼성전자주식회사 호스트 장치 및 슬레이브 장치 제어 방법
US8204731B2 (en) * 2010-03-01 2012-06-19 Himax Technologies Limited Signal analyzing method for electronic device having on-chip network and off-chip network
US8819116B1 (en) * 2010-03-08 2014-08-26 Amazon Technologies, Inc. Providing services using a device capabilities service
US8861410B2 (en) 2011-10-31 2014-10-14 Qualcomm Incorporated Method and apparatus for scalable network transaction identifier for interconnects
US8640230B2 (en) 2011-12-19 2014-01-28 International Business Machines Corporation Inter-thread communication with software security
US9417998B2 (en) * 2012-01-26 2016-08-16 Memory Technologies Llc Apparatus and method to provide cache move with non-volatile mass memory system
JP2013196167A (ja) 2012-03-16 2013-09-30 Toshiba Corp 情報処理装置
US9311226B2 (en) 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change
US8838861B2 (en) 2012-05-09 2014-09-16 Qualcomm Incorporated Methods and apparatuses for trace multicast across a bus structure, and related systems
US9164804B2 (en) 2012-06-20 2015-10-20 Memory Technologies Llc Virtual memory module
US9116820B2 (en) 2012-08-28 2015-08-25 Memory Technologies Llc Dynamic central cache memory
EP2901294A4 (en) * 2012-09-25 2016-08-10 Qualcomm Technologies Inc PROTOCOL FOR A SOCKET WITH A NETWORK ON A CHIP
US9471538B2 (en) 2012-09-25 2016-10-18 Qualcomm Technologies, Inc. Network on a chip socket protocol
EP2741452A1 (en) * 2012-12-10 2014-06-11 Robert Bosch Gmbh Method for data transmission among ECUs and/or measuring devices
US9571402B2 (en) * 2013-05-03 2017-02-14 Netspeed Systems Congestion control and QoS in NoC by regulating the injection traffic
US9270659B2 (en) 2013-11-12 2016-02-23 At&T Intellectual Property I, L.P. Open connection manager virtualization at system-on-chip
US9456071B2 (en) 2013-11-12 2016-09-27 At&T Intellectual Property I, L.P. Extensible kernel for adaptive application enhancement
US9602587B2 (en) * 2014-06-26 2017-03-21 Altera Corporation Multiple plane network-on-chip with master/slave inter-relationships
US9747239B2 (en) 2014-08-25 2017-08-29 Apple Inc. Transaction filter for on-chip communications network
US10078356B2 (en) * 2015-08-20 2018-09-18 Intel Corporation Apparatus and method for saving and restoring data for power saving in a processor
US10243882B1 (en) * 2017-04-13 2019-03-26 Xilinx, Inc. Network on chip switch interconnect
CN107894963B (zh) * 2017-11-27 2021-07-27 上海兆芯集成电路有限公司 用于系统单芯片的通信控制器与通信方法
CN109302296B (zh) * 2018-10-10 2020-12-29 上海保险交易所股份有限公司 用于在区块链网络中广播消息的方法、设备和存储介质
CN114077568A (zh) * 2020-08-18 2022-02-22 Oppo广东移动通信有限公司 核间通信方法、装置、电子组件以及电子设备
CN116389357B (zh) * 2023-06-06 2023-09-29 太初(无锡)电子科技有限公司 基于片上网络的空洞地址处理方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0275135A2 (en) * 1987-01-14 1988-07-20 Hewlett-Packard Company Method for handling slow requests over a network
CN1174619A (zh) * 1995-02-17 1998-02-25 尢罗佩国际公司 由集成电路控制的事务管理系统
EP1083768A1 (en) * 1999-09-08 2001-03-14 TELEFONAKTIEBOLAGET LM ERICSSON (publ) A method for facilitating data transmission
EP1164471A2 (en) * 2000-06-13 2001-12-19 Siroyan Limited Predicated execution of instructions in processors

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4570220A (en) * 1983-11-25 1986-02-11 Intel Corporation High speed parallel bus and data transfer method
US4842740A (en) 1988-08-05 1989-06-27 Hoechst Celanese Corporation Membranes prepared from blend of polybenzimidazole with polyarylates
US5098985A (en) * 1988-10-11 1992-03-24 The Dow Chemical Company Copolymers containing polybenzoxazole, polybenzothiazole and polybenzimidazole moieties
US5212652A (en) * 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5317568A (en) * 1991-04-11 1994-05-31 Galileo International Partnership Method and apparatus for managing and facilitating communications in a distributed hetergeneous network
US5341369A (en) * 1992-02-11 1994-08-23 Vitesse Semiconductor Corp. Multichannel self-routing packet switching network architecture
JP2675968B2 (ja) * 1992-08-20 1997-11-12 インターナショナル・ビジネス・マシーンズ・コーポレイション 加入者分散2相コミット・プロトコルの拡張機能
EP0753979A1 (en) * 1995-07-13 1997-01-15 International Business Machines Corporation Routing method and system for a high speed packet switching network
US5887146A (en) * 1995-08-14 1999-03-23 Data General Corporation Symmetric multiprocessing computer with non-uniform memory access architecture
US6400715B1 (en) * 1996-09-18 2002-06-04 Texas Instruments Incorporated Network address matching circuit and method
US6018782A (en) * 1997-07-14 2000-01-25 Advanced Micro Devices, Inc. Flexible buffering scheme for inter-module on-chip communications
JP3815841B2 (ja) * 1997-03-28 2006-08-30 ローム株式会社 IrDA変復調IC
US6248469B1 (en) * 1997-08-29 2001-06-19 Foster-Miller, Inc. Composite solid polymer electrolyte membranes
US5940448A (en) * 1997-09-03 1999-08-17 National Semiconductor Corporation Universal serial bus receiver having input signal skew compensation
US6449273B1 (en) * 1997-09-04 2002-09-10 Hyundai Electronics America Multi-port packet processor
US6446173B1 (en) * 1997-09-17 2002-09-03 Sony Corporation Memory controller in a multi-port bridge for a local area network
JPH11187031A (ja) * 1997-12-19 1999-07-09 Fujitsu Ltd Atm交換機
US6256740B1 (en) * 1998-02-06 2001-07-03 Ncr Corporation Name service for multinode system segmented into I/O and compute nodes, generating guid at I/O node and exporting guid to compute nodes via interconnect fabric
US6339788B1 (en) * 1998-06-12 2002-01-15 International Business Machines Corporation Method for encapsulating hardware to allow multi-tasking of microcode
US6311212B1 (en) * 1998-06-27 2001-10-30 Intel Corporation Systems and methods for on-chip storage of virtual connection descriptors
US6717910B1 (en) * 1998-09-30 2004-04-06 Stmicroelectronics, Inc. Method and apparatus for controlling network data congestion
DE19851498A1 (de) * 1998-11-09 2000-07-06 Aventis Res & Tech Gmbh & Co Polymerzusammensetzung, Membran enthaltend diese, Verfahren zu deren Herstellung und deren Verwendung
US6539450B1 (en) * 1998-11-29 2003-03-25 Sony Corporation Method and system for adjusting isochronous bandwidths on a bus
US6381638B1 (en) * 1999-02-24 2002-04-30 3Com Corporation System and method for options based address reuse
US6768742B1 (en) * 1999-10-08 2004-07-27 Advanced Micro Devices, Inc. On-chip local area network
US6594704B1 (en) * 1999-12-15 2003-07-15 Quarry Technologies Method of managing and using multiple virtual private networks in a router with a single routing table
US6769046B2 (en) * 2000-02-14 2004-07-27 Palmchip Corporation System-resource router
JP3623712B2 (ja) * 2000-03-16 2005-02-23 日本電気エンジニアリング株式会社 バッファ制御システム及びその方法並びにその制御プログラム記録媒体
US6813275B1 (en) 2000-04-21 2004-11-02 Hewlett-Packard Development Company, L.P. Method and apparatus for preventing underflow and overflow across an asynchronous channel
DE60142897D1 (de) * 2000-06-02 2010-10-07 Stanford Res Inst Int Polymermembranzusammensetzung
US6629166B1 (en) * 2000-06-29 2003-09-30 Intel Corporation Methods and systems for efficient connection of I/O devices to a channel-based switched fabric
DE10052242A1 (de) * 2000-10-21 2002-05-02 Celanese Ventures Gmbh Mit Säure dotierte, ein- oder mehrschichtige Kunststoffmembran mit Schichten aufweisend Polymerblends umfassend Polymere mit wiederkehrenden Azoleinheiten, Verfahren zur Herstellung solche Kunststoffmembranen sowie deren Verwendung
GB2373595B (en) * 2001-03-15 2005-09-07 Italtel Spa A system of distributed microprocessor interfaces toward macro-cell based designs implemented as ASIC or FPGA bread boarding and relative common bus protocol
US20020144078A1 (en) * 2001-03-30 2002-10-03 Siroyan Limited Address translation
US7287649B2 (en) * 2001-05-18 2007-10-30 Broadcom Corporation System on a chip for packet processing
US7165128B2 (en) * 2001-05-23 2007-01-16 Sony Corporation Multifunctional I/O organizer unit for multiprocessor multimedia chips
US6910092B2 (en) * 2001-12-10 2005-06-21 International Business Machines Corporation Chip to chip interface for interconnecting chips
US7389319B2 (en) * 2002-03-22 2008-06-17 Sun Microsystems, Inc. Adaptive connection routing over multiple communication channels
US6885638B2 (en) * 2002-06-13 2005-04-26 Motorola, Inc. Method and apparatus for enhancing the quality of service of a wireless communication
US7099983B2 (en) * 2002-11-25 2006-08-29 Lsi Logic Corporation Multi-core communications module, data communications system incorporating a multi-core communications module, and data communications process
US6825688B1 (en) * 2003-08-15 2004-11-30 Lsi Logic Corporation System for yield enhancement in programmable logic
US7219209B2 (en) * 2003-08-29 2007-05-15 Motorola, Inc. Bus filter for memory address translation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0275135A2 (en) * 1987-01-14 1988-07-20 Hewlett-Packard Company Method for handling slow requests over a network
CN1174619A (zh) * 1995-02-17 1998-02-25 尢罗佩国际公司 由集成电路控制的事务管理系统
EP1083768A1 (en) * 1999-09-08 2001-03-14 TELEFONAKTIEBOLAGET LM ERICSSON (publ) A method for facilitating data transmission
EP1164471A2 (en) * 2000-06-13 2001-12-19 Siroyan Limited Predicated execution of instructions in processors

Also Published As

Publication number Publication date
DE60316587D1 (de) 2007-11-08
CN100342370C (zh) 2007-10-10
DE60316458D1 (de) 2007-10-31
EP1552399B1 (en) 2007-09-26
EP1552399A2 (en) 2005-07-13
KR20050083730A (ko) 2005-08-26
CN100370443C (zh) 2008-02-20
US7769893B2 (en) 2010-08-03
CN1703682A (zh) 2005-11-30
KR101016987B1 (ko) 2011-02-25
ATE374399T1 (de) 2007-10-15
JP2006502642A (ja) 2006-01-19
WO2004034176A2 (en) 2004-04-22
EP1552411A2 (en) 2005-07-13
JP2006502487A (ja) 2006-01-19
CN1703881A (zh) 2005-11-30
JP2006502650A (ja) 2006-01-19
CN1688990A (zh) 2005-10-26
TW200419358A (en) 2004-10-01
WO2004034173A3 (en) 2004-12-16
DE60316587T2 (de) 2008-07-03
DE60316458T2 (de) 2008-06-26
WO2004034173A2 (en) 2004-04-22
AU2003299454A8 (en) 2004-05-04
US7373449B2 (en) 2008-05-13
US20060041888A1 (en) 2006-02-23
ATE373922T1 (de) 2007-10-15
CN1703683A (zh) 2005-11-30
US20060095920A1 (en) 2006-05-04
AU2003299282A1 (en) 2004-05-04
EP1552669A1 (en) 2005-07-13
AU2003299454A1 (en) 2004-05-04
AU2003267730A8 (en) 2004-05-04
WO2004034176A3 (en) 2004-08-19
WO2004034676A1 (en) 2004-04-22
CN100367250C (zh) 2008-02-06
US20060041889A1 (en) 2006-02-23
CN1689312A (zh) 2005-10-26
JP4560409B2 (ja) 2010-10-13
TWI307840B (en) 2009-03-21
EP1552669B1 (en) 2007-09-19
AU2003267730A1 (en) 2004-05-04
US7366818B2 (en) 2008-04-29

Similar Documents

Publication Publication Date Title
CN1689312B (zh) 用于建立事务的集成电路和方法
CN1934831B (zh) 通信服务映射的集成电路和方法
US7012448B2 (en) Integrated circuit and related improvements
US7940788B2 (en) System for transmitting data within a network between nodes of the network and flow control process for transmitting the data
CN100534063C (zh) 用于避免数据饥饿的集成电路和方法
JP2008535435A (ja) ネットワーク・オン・チップ環境及び遅延低減方法
CN101223745A (zh) 用于通信资源分配的电子设备和方法
US20080123666A1 (en) Electronic Device And Method Of Communication Resource Allocation
JP2008547099A (ja) メモリチャネル上の応答のスケジューリング
US8645557B2 (en) System of interconnections for external functional blocks on a chip provided with a single configurable communication protocol
CN101069434B (zh) 用于转换及同步数据通信量的数据处理系统和方法
Temple The design of a ring communication network
WO2006048826A1 (en) Integrated circuit and method for data transfer in a network on chip environment
CN115480932A (zh) Srio中间件和裸驱动数据收发共存方法、设备及介质
Kim Integrated switching networks: a performance study
Ferrer et al. Quality of Service in NoC for Reconfigurable Space Applications
WO2008035265A2 (en) Electronic device, and method of controlling a communication between processing units

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
CP03 Change of name, title or address

Address after: 52 high-tech park, 5656AG, Edelhofen, Netherlands

Patentee after: KONINKLIJKE PHILIPS N.V.

Address before: Holland Ian Deho Finn

Patentee before: KONINKLIJKE PHILIPS ELECTRONICS N.V.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20230529

Address after: Maine

Patentee after: Network System Technology Co.,Ltd.

Address before: 52 high-tech park, 5656AG, Edelhofen, Netherlands

Patentee before: KONINKLIJKE PHILIPS N.V.

TR01 Transfer of patent right
CX01 Expiry of patent term

Granted publication date: 20100414

CX01 Expiry of patent term