CN113825202A - 跨芯片处理系统以及其路由方法 - Google Patents
跨芯片处理系统以及其路由方法 Download PDFInfo
- Publication number
- CN113825202A CN113825202A CN202111141627.5A CN202111141627A CN113825202A CN 113825202 A CN113825202 A CN 113825202A CN 202111141627 A CN202111141627 A CN 202111141627A CN 113825202 A CN113825202 A CN 113825202A
- Authority
- CN
- China
- Prior art keywords
- routing
- processing system
- chip processing
- cross
- packet
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 62
- 238000000034 method Methods 0.000 title claims description 17
- 230000005540 biological transmission Effects 0.000 claims abstract description 12
- 230000015654 memory Effects 0.000 claims description 7
- 238000013461 design Methods 0.000 abstract description 5
- 238000005538 encapsulation Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17312—Routing techniques specific to parallel machines, e.g. wormhole, store and forward, shortest path problem congestion
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种跨芯片处理系统及其路由设计。作为源节点的一芯片包括一互连总线、以及一微处理器。该互连总线具备一路由寄存器。该微处理器要求该源节点输出一封包在该跨芯片处理系统中传输交至一目标节点时,载有该源节点至该目标节点一路由路径的一路由信息寄存至该路由寄存器,以自该路由寄存器载至该封包的标头,随该封包自该源节点输出,指引该封包在该跨芯片处理系统中的传输。
Description
技术领域
本发明涉及一种跨芯片处理系统,特别涉及芯片之间的路由方案。
背景技术
传统技术是采用以太网络实现多个系统之间的连接。以太网络实现的服务器群可提供强大计算能力。然而,以太网络建构的服务器群延迟大、系统效能不佳、成本高。
本技术领域需要一种低延时、高可靠性、且高带宽利用率的系统连接技术。
发明内容
本发明公开一种跨芯片处理系统,在芯片之间、以及封装之间提供了互连接口,形成可彼此通信且资源灵活调用的系统。本发明特别公开系统中各节点的路由方案。
根据本申请一种实施方式实现的一跨芯片处理系统包括一第一芯片。该第一芯片具有一第一互连总线、以及耦接该第一互连总线的一第一微处理器。该第一互连总线具备一第一路由寄存器。该第一微处理器要求将该第一芯片作为一源节点,输出一封包,在该跨芯片处理系统中传输,交至一目标节点时,载有该源节点至该目标节点一路由路径的一路由信息寄存至该第一路由寄存器,以自该第一路由寄存器载至该封包的标头,随该封包自该源节点输出,指引该封包在该跨芯片处理系统中的传输。
一种实施方式中,该第一互连总线更有一存储空间存储一路由总表,条列该源节点至该跨芯片处理系统其他节点的路由路径。一种实施方式中,该路由总表由厂商根据该跨芯片处理系统的预设架构烧录(固定)。一种实施方式中,该路由总表在该跨芯片处理系统启动时,经扫描该跨芯片处理系统的当下架构而建立(动态配置)。一种实施方式中,该路由信息以一第一位标示所载该路由路径固定、或动态配置。
一种实施方式中,该路由信息标注有一路径有效位数,显示该路由信息所载该路由路径的有效位数。该路径有效位数随着该封包在该跨芯片处理系统的传递而调整,作为路程进度。
一种实施方式中,该第一微处理器要求该源节点输出的该封包用作一请求时,更评估该请求的一完成通知是否要原路返还,并以该路由信息的一第二位标注。该目标节点根据该第二位,决定是否原路返还该完成通知给该源节点。
一种实施方式中,该路由信息所载的该路由路径包括中间节点的输出接口信息,用于相对中间节点的一输入接口顺时针、或逆时针方向计数得一输出接口。该路由信息的一第三位标示所采乃顺时针、或逆时针方向计数。该目标节点辨识出该第二位指示原路返还该完成通知给该源节点时,更反转该第三位。该路由信息所载的该路由路径包括该源节点的一输出接口的接口编号。该路由信息所载的该路由路径包括该目标节点的一输入接口的接口编号。
一种实施方式是将以上技术实现为跨芯片处理系统的路由方法。
下文特举实施例,并配合所附图示,详细说明本发明内容。
附图说明
图1为ZPI互连接口的一种实施方式,其中两个封装socket0以及socket1是以ZPI互连接口(图中标号ZPI)连接;
图2A~2C图解封装间以互连接口ZPI实现的其他平面互连实施例;
图3A、3B图解封装间以互连接口ZPI实现的立体(3D)互连实施例;
图4为ZDI互连接口的一种实施方式;
图5A~5C图解平面互连实施例,其中,封装间以互连接口ZPI连接,而封装内部的芯片则以互连接口ZDI连接;
图6A、6B图解立体互连实施例,其中,封装间以互连接口ZPI连接,而封装内部的芯片则以互连接口ZDI连接;
图7图解一封装700,其中包括一芯片组702以及其他芯片(如,计算节点、协处理器、与加速器);
图8根据本申请一种实施方式图解一种路由设计;
图9根据本申请一种实施方式说明路由信息在节点之间的传输;
图10根据本申请一种实施方式图解路由信息的一种格式1000,其中包括32位;
图11以图3B立体互连架构的路由路径socket0→socket4→socket5→socket7为例,条列路由信息在路程上的变化;以及
图12根据本申请一种实施方式图解一源节点的路由信息编辑技术、以及使用技术。
具体实施方式
以下叙述列举本发明的多种实施例。以下叙述介绍本发明的基本概念,且并非意图限制本发明内容。实际发明范围应依照权利要求书界定。
本发明公开一种跨芯片处理系统,在芯片之间、以及封装之间提供了互连接口,形成可彼此通信且资源灵活调用的系统。本发明特别公开系统中各节点的路由方案。
本发明应用高效能的互连接口,包括封装之间的互连接口(socket-to-socketinterconnect interface)、以及各封装内、芯片之间的互连接口(die-to-dieinterconnect interface)。
首先介绍封装之间的互连接口(socket-to-socket interconnect interface),以下将之命名为ZPI互连接口。
图1为ZPI互连接口的一种实施方式,其中两个封装socket0以及socket1是以ZPI互连接口(图中标号ZPI)连接。图示每个封装中包括两个集群(clusters),标号为cluster0以及cluster1:其他实施方式也可有其他集群数目。各集群包括若干中央处理器(CPU)核心。各封装中可有末级快取存储器(last level cache,标号LLC)、互连总线102、以及各种组件(如,输入/输出控制器104、时针模块106、功耗模块108…等)。各封装可更连接双线存储器模块(标号DIMM)。
通过互连接口ZPI,封装socket0以及socket1组成一系统,其中所有集群的中央处理单元核心、输入/输出资源可被统一调度,且封装socket0以及socket1所拥有的内存可被统一使用。
例如,通过互连接口ZPI,不同封装快取的封包(flits)具有一致格式,在其他的实施例中,封包也可以称为分组或分组数据包。如此一来,这些封装所组成系统的任一中央处理单元核心、或输入/输出设备都可访问系统内的任何内存资源。
图2A~2C图解封装间以互连接口ZPI实现的其他平面互连实施例。图2A、2B令封装以互连接口ZPI形成环状连接。图2A为三封装环状连接。图2B为四封装环状连接。相较图2B,图2C四封装有更多互连接口ZPI确保封装间最短通信路径。封装数目可扩展为更大数值。
图3A、3B图解封装间以互连接口ZPI实现的立体(3D)互连实施例。图3A实现三层互连;封装socket0~socket3为一平面(属同一层),前、后层分别是封装socket4、socket5。前层封装socket4除了与中间层平面有互连接口ZPI连接,更有互连接口ZPI与后层封装socket5连接,形成环状连接。图3B实现两层互连。第一层平面的封装socket0~socket3与第二-层平面的封装socket4~socket7一对一以互连接口ZPI连接。立体互连可有更多层。各平面封装数目可扩展为更大数值。
另外,芯片之间的互连接口(die-to-die interconnect interface)介绍如下;以下将之命名为ZDI互连接口。
图4为ZDI互连接口的一种实施方式。图示一封装400内的两个芯片Die0以及Die1是以ZDI互连接口(图中标号ZDI)连接。其他实施方式可有更多数量的芯片封装在一起。每个芯片可包括多个集群(clusters)。各芯片可有末级快取存储器LLC、互连总线402、以及各种组件(如,输入/输出控制器404、时针模块406、功耗模块408…等),不对其限定。
以上互连接口ZPI、ZDI可联合使用,使多个封装中的芯片可彼此通信。
图5A~5C图解平面互连实施例,其中,封装间以互连接口ZPI连接,而封装内部的芯片则以互连接口ZDI连接。图5A图解互连接口ZPI环状连接的三个封装,各封装内芯片是以互连接口ZDI连接;如此一来,六个芯片组成一系统,资源可共用。图5B图解互连接口ZPI环状连接的四个封装,各封装内芯片是以互连接口ZDI连接;如此一来,八个芯片组成一系统,资源可共用。相较图5B,图5C有更多互连接口ZPI使不同封装的芯片的通信路径最短。各封装的芯片数量可不定。
图6A、6B图解立体互连实施例,其中,封装间以互连接口ZPI连接,而封装内部的芯片则以互连接口ZDI连接。图6A图解三层互连,各层可为单封装或多封装平面,各封装可包括多个芯片(如D0、D1);三层平面以互连接口ZPI实现环状连接,佐以互连接口ZDI。各芯片为系统的一节点,可控制其他节点的资源。图6B图解双层互连,双层平面上,各封装包括多个芯片;双层架构上的芯片各为系统的一节点,可控制其他节点的资源。以上立体互连可扩展为更多层,且各封装内可有任意数目的芯片。在芯片组(chipset)应用上,本申请互连接口ZPI、以及ZDI可以如下使用。
图7图解一封装700,其中包括一芯片组702(一芯片)以及其他芯片(如,计算节点、协处理器、与加速器)。芯片组702是通过互连接口ZDI与其他芯片(如,计算节点、协处理器、与加速器)连接。为组成更大的系统,多个芯片组封装可以互连接口ZPI连接,形成图2A~2C的平面互连架构、或图3A、3B的立体互连架构。一种实施方式中,单一封装内可包括多个芯片组;为组成更大的系统,如此多个封装可以互连接口ZPI连接,形成图5A~5C的平面互连架构、或图6A、6B的立体互连架构。芯片组702还可链接双线内存模块(标号DIMM)
前述内容为跨芯片处理系统的多种架构。
以下讨论跨芯片处理系统中节点之间的路由设计。
图8根据本申请一种实施方式图解一种路由设计。芯片800包括一互连总线802、以及耦接该互连总线802的一微处理器804。该互连总线802存储有一路由总表806。路由总表806条列芯片800至不同节点的路由路径。芯片800作为传输的源节点时,会根据传输的目标节点查询该路由总表806,取得源节点至目标节点的路由路径,组成一路由信息填入一路由寄存器808,再编入封包的标头进行传输。如图所示,芯片800传输给下一个节点的封包810含有路由信息。路由信息会随着封包810在节点间一路传输,指引该封包810在该跨芯片处理系统中的传输。
图9根据本申请一种实施方式说明路由信息在节点之间的传输。
图9图示一源节点902、两个中间节点904、906、以及一个目标节点908。源节点902将含有路由信息的封包910传输到中间节点904,作为中间节点904的输入路由信息缓存在路由寄存器912(由作为中间节点904的一芯片的一互连总线提供)中。中间节点904的微处理器914在路由寄存器912上修正路由信息,注记已通过中间节点904,再将修正后的路由信息随着封包916传递到中间节点906。封包916传来的路由信息是作为中间节点906的输入路由信息缓存在路由寄存器918(由作为中间节点906的一芯片的一互连总线提供)中。中间节点906的微处理器920在路由寄存器918修正路由信息,注记已通过中间节点906,再将修正后的路由信息随着封包922传递到目标节点908。封包922传来的路由信息是作为目标节点908的输入路由信息缓存在路由寄存器924(由作为目标节点908的一芯片的一互连总线提供)中。
路由信息在传递过程中一路所作的修正包括注记路程进度,直到输入目标节点。此外,若所传输的这个封包是一请求(request),其完成通知(completion element)会有返还需求。完成通知的返还可选择是原路返还。目标节点908的微处理器926便可根据路由寄存器924所载路由信息查询到请求送来时的路由路径,据以原路返还该完成通知给源节点902。图9路由信息维护概念可扩展在其他数量之中间节点的例子上。
特别是,路由总表806可以是由厂商根据该跨芯片处理系统的预设架构固定烧录在互连总线802中,也可以是更灵活的2动态配置方式形成。
一种实施方式中,包含多个芯片、甚至包含多个封装的跨芯片处理系统可以是厂商架构完成。如此一来,厂商可自订各节点的路由路径,烧录固定的路由总表806在互连总线802中。
一源节点至一目标节点的固定路由路径可以是遵循以下规则形成:先跨平面;再取同平面最短路径;且同平面有多条最短路径候选时,以顺时针方向取下一个节点。以图3B的立体互连架构为例,源节点为封装socket0、且目标节点为封装socket7时,路由路径可为socket0→socket4→socket5→socket7。路径socket0→socket4即跨平面优先的概念。路径socket4→socket5即顺时针方向取下一节点的概念。路径socket5→socket7即最短路径的概念。路由路径形成规则也可有其他实施方式。例如,同平面有多条最短路径候选时,可以是逆时针方向取下一个节点。
一种实施方式中,跨芯片处理系统是以软件方式扫描节点互连当下架构,再相应为各节点产生路由路径,存储在互连总线802的路由总表806。例如,跨芯片处理系统启动时,基本输入输出系统(BIOS)可负责节点扫描、再根据当下节点架构建立不同节点间的路由路径。如此路由路径称动态配置路由路径。软件也可采用前述路由路径形成规则也可用来供形成一源节点至一目标节点的路由路径:先跨平面;再取同平面最短路径;且同平面有多条最短路径候选时,以顺时针(或逆时针)方向取下一个节点。
图10根据本申请一种实施方式图解路由信息的一种格式1000,其中包括32位。位[31]标示此路由信息为固定路由信息、或乃动态配置方式产生。位[30]标示中间节点的输出接口相对输入接口以顺时针方向计数寻得、或以逆时针方向计数寻得。位[29]标示是否启动完成通知的原路返还。位[15:0]记录路由路径。位[28:25]则标示位[15:0]的有效位数,为路径有效位数。传递中,各节点是修正位[28:25],递减有效位,藉此注记路程进度。
一种实施方式中,格式1000的位[15:0]是以如下方式标示路径。关于中间节点,位[15:0]中相应位组成一计数值,用于相对中间节点的一输入接口顺时针、或逆时针方向计数得一输出接口。关于源节点,位[15:0]中相应位组成的是输出接口的接口编号。关于目标节点,位[15:0]中相应位组成的是输入接口的接口编号。
格式1000的位[15:0]也可以是统一以接口编号来编辑。如此一来,位[30]可为保留位,不需带有顺、逆时针信息。此外,路由信息各位的定义以及其控制都可有所调整。
图11以图3B立体互连架构的路由路径socket0→socket4→socket5→socket7为例,条列路由信息在路程上的变化。
封装socket0为源节点,而封装socket7为目标节点。封装socket0相应封装socket7查询路由总表找出路由路径,以建立路由信息1102存在源节点socket0内的路由寄存器。路由信息1102以位[31]的“1”表示此路由信息1102是软件动态配置产生,非厂商固定提供。路由信息1102以位[28:25]的“0111”(值7)表示对封装socket0而言,位[15:0]仅位[7:0]是有意义路由路径。因为封装socket0是源节点,系将相关封装socket0的路由路径信息以封装socket0的接口编号解读。封装socket0是以位[7:6]的“00”所标示的0号接口(连接封装socket4)输出封包。特别是,封装socket0是将路由信息1102修正成路由信息1104后夹入封包输出至封装socket4。相较路由信息1102,路由信息1104的位[29]修成“1”,标示有原路返还需求,且位[28:25]修正为“0101”,表示对封装socket4而言,位[15:0]仅位[5:0]是有意义路由路径。
封装socket4是中间节点,将路径信息1104的位[5:4]做为一计数值。路径信息1104的位[30]标示的“0”代表相应封包输入接口进行顺时针计数,继而寻得封包输出接口。位[5:4]的“00”指向的是输入接口顺时针数去的编号0接口(连接封装socket5)。特别是,封装socket4是将路由信息1104修正成路由信息1106后夹入封包输出至封装socket5。相较路由信息1104,路由信息1106的位[28:25]修正为“0011”,表示对封装socket5而言,位[15:0]仅位[3:0]是有意义路由路径。
封装socket5是中间节点,将路径信息1106的位[3:2]做为一计数值。路径信息1106的位[30]标示的“0”代表相应封包输入接口进行顺时针计数,继而寻得封包输出接口。位[3:2]的“01”指向的是输入接口顺时针数去的编号1接口(连接封装socket7)。特别是,封装socket5是将路由信息1106修正成路由信息1108后夹入封包输出至封装socket7。相较路由信息1106,路由信息1108的位[28:25]修正为“0001”,表示对封装socket7而言,位[15:0]仅位[1:0]是有意义路由路径。
封装socket7是目标节点,将路径信息1108的位[1:0]做封包输入的接口编号解读。路由信息1108的位[1:0]的“01”标明封装socket7是以编号1接口接收封包,而此编号1接口正是连接封装socket5。封装socket7不改变路由信息1108,缓存同样数值的路由信息1110在路由寄存器中,供原路返还一完成通知时使用。
原路返还一完成通知时,根据路由信息1110,封装socket7令该完成通知是从编号1(位[1:0])接口输出,由封装socket5接收。特别是,封装socket7是将缓存的路由信息1110修正为路由信息1112才随完成通知输出至封装socket5。路由信息1112位[30]为“1”,用以令之后中间节点的接口解读改为逆时针方向。位[7:0]修正为位[28:25]为“0011”,表示对封装socket5而言,位[15:0]仅位[3:0]是有意义路由路径。
根据路由信息1112,中间节点socket5将路径信息1112的位[3:2]做为一计数值。路径信息1112的位[30]标示的“1”代表相应封包输入接口进行逆时针计数,继而寻得封包输出接口。位[3:2]的“01”指向的是输入接口逆时针数去的编号1接口(连接封装socket4)。特别是,封装socket5是将路由信息1112修正成路由信息1114后夹入封包输出至封装socket4。相较路由信息1112,路由信息1114的位[28:25]修正为“0101”,表示对封装socket4而言,位[15:0]仅位[5:0]是有意义路由路径。
根据路由信息1114,中间节点socket4将路径信息1114的位[5:4]做为一计数值。路径信息1114的位[30]标示的“1”代表相应封包输入接口进行逆时针计数,继而寻得封包输出接口。位[5:4]的“00”指向的是输入接口逆时针数去的编号0接口(连接封装socket0)。特别是,封装socket4是将路由信息1114修正成路由信息1116后夹入封包输出至封装socket0。相较路由信息1114,路由信息1116的位[28:25]修正为“0111”,表示对封装socket0而言,位[15:0]仅位[7:0]是有意义路由路径。
封装socket0是完成通知的目标节点,将路径信息1116的位[7:6]做封包输入的接口编号解读。路由信息1116的位[7:6]的“00”标明封装socket0是以编号0接口接收封包,而此编号0接口正是连接封装socket4。该完成通知成功根据路径socket7→socket5→socket4→socket4原路返还。
以上示例更可有其他变形。路由信息各位的定义以及其控制都可有所调整。
图12根据本申请一种实施方式图解一源节点的32位路由信息编辑、以及使用技术。
步骤S1202,源节点取得目标节点的信息(可为一地址、或一编号ID)。
步骤S1204决定是否置位(拉升成“1”)路由信息的位[31]。若否,流程进入步骤S1206,以厂商预设的固定路由路径设定路由信息的位[15:0]。步骤S1208,根据此路由信息,封包按照厂商配置的固定路由路径自源节点传至目标节点。
若置位路由信息的位[31],流程切换成动态配置路由路径设计。步骤S1210判断源节点现在要传输的是否为一完成通知(completion element)。若是,流程进入步骤S1212,辨识当初收到的请求(request)的路由信息的位[29]是否置位(为“1”)。若是,代表该完成通知需原路返还。流程进入步骤S1214,修正当初收到的请求的路由信息,使其位[30]置位(拉升成“1”,切换中间节点出口辨识所采用的方向,如,从顺时针切换成逆时针)后做为该完成通知的路由信息。接着,流程进行步骤S1208,根据此路由信息,该完成通知原路返还。
若步骤S1212辨识到原请求的路由信息的位[29]非置位(为“0”),该完成通知无须需原路返还。关于此完成通知的路由信息,流程以步骤S1216令位[30]为0(无须反转出口解读方向),并以步骤S1218令位[29]为0(关闭原路返还)。步骤S1220以软件配置的路由路径设定位[15:0]。步骤S1208,根据此路由信息,该完成通知按照软件配置的此条路由路径自源节点传至目标节点。
步骤S1210若判断源节点现在要传输的并非一完成通知(completion element)、而是一请求,流程以步骤S1222、S1224以及S1220形成该请求的路由信息。步骤S1222令位[30]为0(无须反转出口解读方向),并以步骤S1224根据硬件自定义算法决定是否置位位[29](原路返还标示)。步骤S1220以软件配置的路由路径设定位[15:0]。步骤S1208,根据此路由信息,该请求按照软件配置的此条路由路径自源节点传至目标节点。
一种实施方式将以上技术实现为跨芯片处理系统的路由方法。凡是在节点间传输前述路由信息,并以各节点的互联总线进行路由信息管理的技术,皆落入本申请技术范围。
虽然本发明已以优选实施例公开如上,然其并非用以限定本发明,本领域技术人员在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当视所附权利要求书界定范围为准。
Claims (19)
1.一种跨芯片处理系统,包括:
第一芯片,具有第一互连总线、以及耦接该第一互连总线的第一微处理器,
其中,该第一互连总线包含第一路由寄存器,该第一微处理器将该第一芯片作为源节点,输出封包,在该跨芯片处理系统中传输,该封包交至目标节点时,载有该源节点至该目标节点路由路径的路由信息寄存至该第一路由寄存器,以自该第一路由寄存器载至该封包的标头,随该封包自该源节点输出,指引该封包在该跨芯片处理系统中的传输。
2.如权利要求1所述的跨芯片处理系统,其中:
该第一互连总线更有存储空间存储路由总表,该路由总表包含该源节点至该跨芯片处理系统其他节点的路由路径。
3.如权利要求2所述的跨芯片处理系统,其中:
该路由总表根据该跨芯片处理系统的预设架构烧录。
4.如权利要求2所述的跨芯片处理系统,其中:
该路由总表在该跨芯片处理系统启动时,经扫描该跨芯片处理系统的架构而建立。
5.如权利要求2所述的跨芯片处理系统,其中:
该路由信息以第一位标示所载该路由路径固定、或动态配置;
根据该跨芯片处理系统的预设架构,固定的该路由路径被烧录于该路由总表;以及
动态配置的该路由路径,是该跨芯片处理系统启动时,经扫描该跨芯片处理系统的架构而建立在该路由总表。
6.如权利要求1所述的跨芯片处理系统,其中:
该路由信息标注有路径有效位数,显示该路由信息所载该路由路径的有效位数;以及
该路径有效位数随着该封包在该跨芯片处理系统的传递而调整,作为路程进度。
7.如权利要求1所述的跨芯片处理系统,其中:
该第一微处理器要求该源节点输出的该封包用作请求时,更判断该请求的完成通知是否要原路返还,并以该路由信息的第二位标注;且
该目标节点根据该第二位,决定是否原路返还该完成通知给该源节点。
8.如权利要求7所述的跨芯片处理系统,其中:
该路由信息所载的该路由路径包括中间节点的输出接口信息,用于相对中间节点的输入接口顺时针、或逆时针方向计数得输出接口;且
该路由信息的第三位标示所使用的是顺时针、或逆时针方向计数。
9.如权利要求8所述的跨芯片处理系统,其中:
该目标节点辨识出该第二位指示原路返还该完成通知给该源节点时,更反转该第三位。
10.如权利要求9所述的跨芯片处理系统,其中:
该路由信息所载的该路由路径包括该源节点的输出接口的接口编号;且
该路由信息所载的该路由路径包括该目标节点的输入接口的接口编号。
11.如权利要求1所述的跨芯片处理系统,还包括:
第二芯片,用作该目标节点,具有第二互连总线、以及耦接该第二互连总线的第二微处理器,
其中:
该第二互连总线包含第二路由寄存器,寄存该目标节点所接收的该封包的标头所载的该路由信息;
该目标节点接收到的该封包用作请求时,寄存至该第二路由寄存器的该路由信息有标示是否原路返还完成通知给该源节点;且
该第二微处理器返还该完成通知时,若该第二路由寄存器寄存的该路由信息有标示原路返还,该完成通知根据该第二路由寄存器寄存的该路由信息中的该路由路径,返还该源节点。
12.如权利要求1所述的跨芯片处理系统,还包括:
第三芯片,用作该源节点以及该目标节点之间的中间节点,具有第三互连总线、以及耦接该第三互连总线的第三微处理器,
其中:
该源节点发出的该封包经过该中间节点传输到该目标节点;
该第三互连总线包含第三路由寄存器,寄存该中间节点所接收的该封包的标头所载的该路由信息;
该第三微处理器在该第三寄存器上修正该路由信息在所载的路径有效位数,以标明路程进度,并将修正后的该路由信息自该第三路由寄存器更新至该封包的标头,随该封包自该中间节点输出。
13.一种跨芯片处理系统的路由方法,包括:
在第一芯片的第一互连总线管理第一路由寄存器;以及
要求将该第一芯片作为源节点,输出封包,在该跨芯片处理系统中传输,交至目标节点时,将载有该源节点至该目标节点路由路径的路由信息寄存至该第一路由寄存器,以自该第一路由寄存器载至该封包的标头,随该封包自该源节点输出,指引该封包在该跨芯片处理系统中的传输。
14.如权利要求13所述的跨芯片处理系统的路由方法,其中:
该路由信息以第一位标示所载该路由路径固定、或动态配置;
根据该跨芯片处理系统的预设架构,将固定的该路由路径烧录在路由总表;
动态配置的该路由路径,是该跨芯片处理系统启动时,经扫描该跨芯片处理系统的当下架构而建立在该路由总表;且
该第一互连总线更有存储空间存储该路由总表,该路由总表包含该源节点至该跨芯片处理系统其他节点的路由路径。
15.如权利要求13所述的跨芯片处理系统的路由方法,其中:
该路由信息标注有路径有效位数,显示该路由信息所载该路由路径的有效位数;且
该路径有效位数根据该封包在该跨芯片处理系统的传递而调整,作为路程进度。
16.如权利要求13所述的跨芯片处理系统的路由方法,还包括:
在要求该源节点输出的该封包用作请求时,判断该请求的完成通知是否要原路返还,并以该路由信息的第二位标注;
其中,该目标节点根据该第二位,决定是否原路返还该完成通知给该源节点。
17.如权利要求16所述的跨芯片处理系统的路由方法,其中:
该路由信息所载的该路由路径包括中间节点的输出接口信息,用于相对中间节点的输入接口顺时针、或逆时针方向计数得输出接口;且
该路由信息的第三位标示所采乃顺时针、或逆时针方向计数。
18.如权利要求17所述的跨芯片处理系统的路由方法,其中:
该目标节点辨识出该第二位指示原路返还该完成通知给该源节点时,更反转该第三位。
19.如权利要求18所述的跨芯片处理系统,其中:
该路由信息所载的该路由路径包括该源节点的输出接口的接口编号;且
该路由信息所载的该路由路径包括该目标节点的输入接口的接口编号。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111141627.5A CN113825202A (zh) | 2021-09-28 | 2021-09-28 | 跨芯片处理系统以及其路由方法 |
US17/506,144 US11675729B2 (en) | 2021-09-28 | 2021-10-20 | Electronic device and operation method of sleep mode thereof |
US17/506,124 US11853250B2 (en) | 2021-09-28 | 2021-10-20 | Interconnect interface |
US17/511,800 US11526460B1 (en) | 2021-09-28 | 2021-10-27 | Multi-chip processing system and method for adding routing path information into headers of packets |
US17/523,049 US12001375B2 (en) | 2021-09-28 | 2021-11-10 | Interconnect system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111141627.5A CN113825202A (zh) | 2021-09-28 | 2021-09-28 | 跨芯片处理系统以及其路由方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113825202A true CN113825202A (zh) | 2021-12-21 |
Family
ID=78921496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111141627.5A Pending CN113825202A (zh) | 2021-09-28 | 2021-09-28 | 跨芯片处理系统以及其路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113825202A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114647602A (zh) * | 2022-05-24 | 2022-06-21 | 沐曦集成电路(上海)有限公司 | 一种跨芯片访问控制的方法、装置、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010051973A (ko) * | 1999-11-29 | 2001-06-25 | 루센트 테크놀러지스 인크 | 멀티-칩 패키지의 ic칩의 클러스터 패키징 |
US20090198956A1 (en) * | 2008-02-01 | 2009-08-06 | Arimilli Lakshminarayana B | System and Method for Data Processing Using a Low-Cost Two-Tier Full-Graph Interconnect Architecture |
CN103902472A (zh) * | 2012-12-28 | 2014-07-02 | 华为技术有限公司 | 基于内存芯片互连的内存访问处理方法、内存芯片及系统 |
US20140310444A1 (en) * | 2013-04-12 | 2014-10-16 | Texas Instruments Incorporated | Dynamic balancing of bus bandwidth across multiple routes |
CN106951390A (zh) * | 2017-03-15 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种可降低跨节点访存延时的numa系统构建方法 |
CN110365791A (zh) * | 2019-07-26 | 2019-10-22 | 奚伟祖 | 一种区域内的万物互联方法 |
CN112367279A (zh) * | 2020-10-30 | 2021-02-12 | 河南城建学院 | 一种基于二维mesh结构多核芯片组的路由方法及系统 |
-
2021
- 2021-09-28 CN CN202111141627.5A patent/CN113825202A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010051973A (ko) * | 1999-11-29 | 2001-06-25 | 루센트 테크놀러지스 인크 | 멀티-칩 패키지의 ic칩의 클러스터 패키징 |
US20090198956A1 (en) * | 2008-02-01 | 2009-08-06 | Arimilli Lakshminarayana B | System and Method for Data Processing Using a Low-Cost Two-Tier Full-Graph Interconnect Architecture |
CN103902472A (zh) * | 2012-12-28 | 2014-07-02 | 华为技术有限公司 | 基于内存芯片互连的内存访问处理方法、内存芯片及系统 |
US20140310444A1 (en) * | 2013-04-12 | 2014-10-16 | Texas Instruments Incorporated | Dynamic balancing of bus bandwidth across multiple routes |
CN106951390A (zh) * | 2017-03-15 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种可降低跨节点访存延时的numa系统构建方法 |
CN110365791A (zh) * | 2019-07-26 | 2019-10-22 | 奚伟祖 | 一种区域内的万物互联方法 |
CN112367279A (zh) * | 2020-10-30 | 2021-02-12 | 河南城建学院 | 一种基于二维mesh结构多核芯片组的路由方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114647602A (zh) * | 2022-05-24 | 2022-06-21 | 沐曦集成电路(上海)有限公司 | 一种跨芯片访问控制的方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11640362B2 (en) | Procedures for improving efficiency of an interconnect fabric on a system on chip | |
US10084692B2 (en) | Streaming bridge design with host interfaces and network on chip (NoC) layers | |
US8819611B2 (en) | Asymmetric mesh NoC topologies | |
CN101753388B (zh) | 适用于多核处理器片上和片间扩展的路由及接口装置 | |
Zeferino et al. | SoCIN: a parametric and scalable network-on-chip | |
US7643477B2 (en) | Buffering data packets according to multiple flow control schemes | |
US9548945B2 (en) | Matrix of on-chip routers interconnecting a plurality of processing engines and a method of routing using thereof | |
US8509078B2 (en) | Bufferless routing in on-chip interconnection networks | |
CN102959907B (zh) | 提供用于多维网格拓扑的无缓冲器传输方法 | |
JP4756158B2 (ja) | 通信リソース割り当て電子デバイスおよび方法 | |
US20040114609A1 (en) | Interconnection system | |
TWI236251B (en) | A switching I/O node for connection in a multiprocessor computer system | |
US10218581B2 (en) | Generation of network-on-chip layout based on user specified topological constraints | |
US11526460B1 (en) | Multi-chip processing system and method for adding routing path information into headers of packets | |
CN113825202A (zh) | 跨芯片处理系统以及其路由方法 | |
Carara et al. | Communication models in networks-on-chip | |
CN113168388A (zh) | 总线上的存储器请求链接 | |
US8571016B2 (en) | Connection arrangement | |
US8645557B2 (en) | System of interconnections for external functional blocks on a chip provided with a single configurable communication protocol | |
US8045573B2 (en) | Bit ordering for packetised serial data transmission on an integrated circuit | |
WO2006048826A1 (en) | Integrated circuit and method for data transfer in a network on chip environment | |
Mutha | Packet Switched Networks for Communications within Large Multi-core Systems on Chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Room 301, 2537 Jinke Road, Zhangjiang High Tech Park, Pudong New Area, Shanghai 201203 Applicant after: Shanghai Zhaoxin Semiconductor Co.,Ltd. Address before: Room 301, 2537 Jinke Road, Zhangjiang hi tech park, Shanghai 201203 Applicant before: VIA ALLIANCE SEMICONDUCTOR Co.,Ltd. |