CN112579518A - 网络拓扑结构的构建方法、访问方法及装置 - Google Patents
网络拓扑结构的构建方法、访问方法及装置 Download PDFInfo
- Publication number
- CN112579518A CN112579518A CN202011552065.9A CN202011552065A CN112579518A CN 112579518 A CN112579518 A CN 112579518A CN 202011552065 A CN202011552065 A CN 202011552065A CN 112579518 A CN112579518 A CN 112579518A
- Authority
- CN
- China
- Prior art keywords
- module
- chain
- communication
- functional
- numbers
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8076—Details on data register access
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
一种网络拓扑结构的构建方法、访问方法及装置。该网络拓扑结构的构建方法包括:将多个功能模块划分为多个模块组,其中,多个模块组中的每个模块组包括多个功能模块中的至少一个功能模块;将每个模块组挂载到至少一条通信链上,以得到多条通信链;分别为多条通信链设置链编号;基于寄存器访问控制器和设置有链编号的多条通信链,构建网络拓扑结构,其中,网络拓扑结构包括寄存器访问控制器及与寄存器访问控制器相通信的多条通信链。该网络拓扑结构的构建方法通过为网络拓扑结构中的通信链设置链编号,可以在访问某个功能模块时,根据链编号将模块访问请求定位至一条或几条通信链上,从而仅需唤醒部分通信链即可完成模块访问,降低功耗。
Description
技术领域
本公开的实施例涉及一种网络拓扑结构的构建方法、网络拓扑结构的访问方法、网络拓扑结构的构建装置和网络拓扑结构的访问装置。
背景技术
寄存器的功能是存储二进制代码,寄存器是由具有存储功能的触发器组合起来构成的,不同的寄存器可以具有不同的功能,例如,寄存器可以用于保存运算信息、记录运行状态等。在处理器或集成电路内部,寄存器可以由寄存器访问控制器管理,通过寄存器访问控制器实现对寄存器的访问控制、请求转换等功能。
发明内容
本公开至少一实施例提供一种网络拓扑结构的构建方法,应用于计算装置,其中,所述计算装置包括寄存器访问控制器和多个功能模块,所述方法包括:将所述多个功能模块划分为多个模块组,其中,所述多个模块组中的每个模块组包括所述多个功能模块中的至少一个功能模块;将所述每个模块组挂载到至少一条通信链上,以得到多条通信链;分别为所述多条通信链设置链编号;基于所述寄存器访问控制器和设置有所述链编号的所述多条通信链,构建所述网络拓扑结构,其中,所述网络拓扑结构包括所述寄存器访问控制器及与所述寄存器访问控制器相通信的所述多条通信链。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,将所述多个功能模块划分为多个模块组,包括:确定与所述多个功能模块一一对应的多个模块编号;根据所述多个模块编号,将所述多个功能模块划分为所述多个模块组。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,所述每个模块组包括的至少一个功能模块对应的至少一个模块编号的种类小于预设阈值。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,所述计算装置为通用图形处理器,所述多个功能模块包括多个第一功能模块,所述多个第一功能模块属于所述通用图形处理器包括的运算单元中的多个着色引擎,且每个所述着色引擎包括至少一个第一功能模块,所述多个着色引擎分别具有一一对应的多个引擎编号,确定与所述多个功能模块一一对应的多个模块编号,包括:对于所述多个第一功能模块,将所述多个第一功能模块中的每个第一功能模块所属的着色引擎对应的引擎编号作为所述每个第一功能模块对应的模块编号;对于所述多个功能模块中除所述多个第一功能模块之外的其他功能模块,将所述多个引擎编号中的至少一个引擎编号作为所述其他功能模块对应的模块编号,或者,将与所述多个引擎编号不同的其他编号作为所述其他功能模块对应的模块编号。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,所述其他功能模块包括至少一个第二功能模块,所述至少一个第二功能模块属于所述通用图形处理器包括的存储单元,所述至少一个引擎编号包括第一引擎编号,所述其他编号包括第一编号,所述第一引擎编号作为所述至少一个第二功能模块对应的模块编号,或者,所述第一编号作为所述至少一个第二功能模块对应的模块编号。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,所述多个功能模块包括至少一个第三功能模块,所述至少一个第三功能模块属于所述通用图形处理器包括的控制单元,所述至少一个引擎编号包括第二引擎编号,所述其他编号包括第二编号,所述第二引擎编号作为所述至少一个第三功能模块对应的模块编号,或者,所述第二编号作为所述至少一个第三功能模块对应的模块编号。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,根据所述多个模块编号,将所述多个功能模块划分为所述多个模块组,包括:根据所述多个模块编号和所述多个功能模块,确定至少一个第一模块组,其中,所述多个模块组包括所述至少一个第一模块组,每个所述第一模块组包括的功能模块具有相同的模块编号。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,根据所述多个模块编号,将所述多个功能模块划分为所述多个模块组,还包括:根据所述多个模块编号和所述多个功能模块,确定至少一个第二模块组,其中,所述多个模块组包括所述至少一个第二模块组,每个所述第二模块组包括具有不同模块编号的功能模块,且所述不同模块编号的种类小于预设阈值。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,分别为所述多条通信链设置链编号,包括:根据所述多条通信链中的每条通信链挂载的至少一个功能模块对应的至少一个模块编号,确定所述每条通信链对应的链编号。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,根据所述多条通信链中的每条通信链挂载的至少一个功能模块对应的至少一个模块编号,确定所述每条通信链对应的链编号,包括:确定所述每条通信链挂载的至少一个功能模块对应的至少一个模块编号;将所述至少一个模块编号作为所述每条通信链的链编号。
例如,在本公开至少一实施例提供的网络拓扑结构的构建方法中,所述网络拓扑结构为菊花链拓扑结构。
本公开至少一实施例提供一种网络拓扑结构的构建装置,应用于计算装置,其中,所述计算装置包括寄存器访问控制器和多个功能模块,所述装置包括:划分单元,配置为将所述多个功能模块划分为多个模块组,其中,所述多个模块组中的每个模块组包括所述多个功能模块中的至少一个功能模块;挂载单元,配置为将所述每个模块组挂载到至少一条通信链上,以得到多条通信链;编号设置单元,配置为分别为所述多条通信链设置链编号;构建单元,配置为基于所述寄存器访问控制器和设置有所述链编号的所述多条通信链,构建所述网络拓扑结构,其中,所述网络拓扑结构包括所述寄存器访问控制器及与所述寄存器访问控制器相通信的所述多条通信链。
本公开至少一实施例提供一种网络拓扑结构的访问方法,其中,所述网络拓扑结构根据本公开至少一实施例提供的网络拓扑结构的构建方法构建得到,所述方法包括:接收所述寄存器访问控制器发送的模块访问请求,解析所述模块访问请求,以得到请求编号;基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链;开启与所述请求编号对应的至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块。
例如,在本公开至少一实施例提供的网络拓扑结构的访问方法中,基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链,包括:对于所述多条通信链中的第i条通信链:根据所述第i条通信链对应的链编号,确定所述第i条通信链对应的至少一个模块编号;将所述请求编号分别与所述第i条通信链对应的至少一个模块编号进行比较,响应于所述请求编号与所述第i条通信链对应的至少一个模块编号中的任意一个模块编号相同,确定所述第i条通信链为与所述请求编号对应的一条目标通信链,其中,i为正整数,且小于等于所述多条通信链的总数。
例如,在本公开至少一实施例提供的网络拓扑结构的访问方法中,基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链,包括:对于所述多条通信链中的第i条通信链:将所述第i条通信链对应的链编号与所述请求编号进行比较,响应于所述请求编号与所述第i条通信链对应的链编号相同,确定所述第i条通信链为与所述请求编号对应的一条目标通信链,其中,i为正整数,且小于等于所述多条通信链的总数。
例如,在本公开至少一实施例提供的网络拓扑结构的访问方法中,所述多个功能模块具有一一对应的实例编号,开启与所述请求编号对应的至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块,包括:解析所述模块访问请求,得到待访问的实例编号;基于所述待访问的实例编号,确定所述至少一条目标通信链上的与所述模块访问请求对应的功能模块,其中,与所述模块访问请求对应的功能模块对应的实例编号为所述待访问的实例编号;根据所述请求编号开启所述至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块。
例如,在本公开至少一实施例提供的网络拓扑结构的访问方法中,响应于所述多条通信链中不包括与所述请求编号对应的目标通信链,结束所述模块访问请求。
本公开至少一实施例提供一种网络拓扑结构的访问装置,其中,所述网络拓扑结构根据本公开至少一实施例提供的网络拓扑结构的构建方法构建得到,所述访问装置包括:接收单元,配置为接收所述寄存器访问控制器发送的模块访问请求,解析所述模块访问请求,以得到请求编号;确定单元,配置为基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链;访问处理单元,配置为开启与所述请求编号对应的至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为本公开一实施例提供的一种通用图形处理器的内部结构示意图;
图2为本公开至少一实施例提供的一种网络拓扑结构的构建方法的示意性流程图;
图3为本公开至少一实施例提供的网络拓扑结构的构建方法中步骤S110的示例性流程图;
图4为本公开至少一实施例提供的网络拓扑结构的示意性结构图;
图5A为本公开至少一实施例提供的网络拓扑结构的访问方法的示意性流程图;
图5B为本公开一实施例提供的基于图4所示的网络拓扑结构的访问过程示意图;
图5C为本公开一实施例提供的一种匹配模块的结构示意图;
图6为本公开至少一实施例提供的一种网络拓扑结构的构建装置的示意性框图;
图7为本公开至少一实施例提供的一种网络拓扑结构的访问装置的示意性框图。
具体实施方式
为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开实施例的以下说明清楚且简明,本公开省略了部分已知功能和已知部件的详细说明。
寄存器是用于存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果,在处理器或集成电路等电路中,通常包括多种不同功能的寄存器以完成不同的功能。当寄存器数量较多时,将寄存器与寄存器访问控制器直接相连需要大量的连接线路,从而造成线路面积较大且布局布线困难,因此一般将寄存器访问控制器与多个寄存器构成网络拓扑结构,例如菊花链(daisy chain)拓扑结构,将寄存器划分至不同通信链(例如菊花链)上,减少链长度并降低访问延时。
例如,对于通用图形处理器(General-purpose computing on graphicsprocessing units,GPGPU),在GPGPU内部存在多个具有不同功能的寄存器,例如,一些寄存器可以用来保存GPGPU的运算信息,以供运算时的快速访问;例如,一些寄存器可以记录GPGPU的运行状态,以供其他硬件或外部程序查询;例如,一些寄存器可以根据其所保存的数据信息(也即寄存器的配置状态)控制GPGPU的运行模式。由于GPGPU的程序在运行时需要将控制GPGPU的运行模式的寄存器配置在合理状态以获得良好的性能及功耗表现,同时在GPGPU工作时也需要读取寄存器内的数据来判断GPGPU当前的运行状态,这就要求实现对GPGPU内部寄存器的便捷访问。
图1为本公开一实施例提供的一种通用图形处理器的内部结构示意图。如图1所示,GPGPU可以包括控制单元、存储单元以及运算单元,每个单元根据功能可以划分为多个功能模块(Module),每个功能模块可以由一些完成特定功能的电路逻辑构成。例如,控制单元中包括控制时钟开启的功能模块、完成寄存器读写和请求转发功能的功能模块、完成任务分发功能的功能模块等;计算单元包括多个相同的着色引擎(Shader Engine),例如SE0、SE1、SE2、SE3…,每个着色引擎包括至少一个功能模块,每个功能模块可以执行不同的运算任务;GPGPU可以将这些功能模块进行组合实现控制、运算和存储功能。
例如,每个功能模块都有对应的唯一实例编号(instance ID),例如,每个功能模块具有功能编号,不同着色引擎中的功能模块的功能编号可以相同,则实例编号可以由每个功能模块所在着色引擎的引擎编号以及每个模块的功能编号组合构成。网络拓扑结构中能够传递寄存器访问信号的通路有多条,不同的功能模块挂载至不同的通信链上,当访问功能模块中的寄存器时,可以通过每个功能模块的实例编号来确定寄存器访问控制器发送的模块访问请求是否针对该功能模块。
但是,当寄存器数量较大时,网络拓扑结构中的通信链的数量较多,当需要访问某一个功能模块的寄存器时,需要激活所有通信链上的时钟网络,从而造成大量的功耗浪费。
本公开至少一实施例提供一种网络拓扑结构的构建方法及装置。网络拓扑结构的构建方法包括:将所述多个功能模块划分为多个模块组,其中,多个模块组中的每个模块组包括多个功能模块中的至少一个功能模块;将每个模块组挂载到至少一条通信链上,以得到多条通信链;分别为多条通信链设置链编号;基于寄存器访问控制器和设置有链编号的多条通信链,构建网络拓扑结构,其中,网络拓扑结构包括寄存器访问控制器及与寄存器访问控制器相通信的多条通信链。
本公开至少一实施例还提供一种网络拓扑结构的访问方法及装置。
该网络拓扑结构的构建方法通过为网络拓扑结构中的通信链设置链编号,可以在访问某个功能模块时,根据链编号将模块访问请求定位至网络拓扑结构中的部分通信链(例如,一条或几条通信链)上,从而仅需唤醒部分通信链即可完成模块访问,降低功耗。
下面结合附图对本公开的实施例进行详细说明,但是本公开并不限于这些具体的实施例。
图2为本公开至少一实施例提供的一种网络拓扑结构的构建方法的示意性流程图。
例如,该构建方法应用于计算装置,例如,该计算装置包括寄存器访问控制器和多个功能模块。例如,该计算装置可以为集成电路,例如,通用图形处理器或者人工智能(AI,Artificial Intelligence)芯片,需要说明的是,需要进行寄存器访问的计算装置均可以采用本公开所提出的方法,本公开对此不作限制。
例如,如图2所示,本公开实施例提供的网络拓扑结构的构建方法包括步骤S110至S140。例如,网络拓扑结构可以为菊花链拓扑结构。
在步骤S110,将多个功能模块划分为多个模块组。例如,多个模块组中的每个模块组包括多个功能模块中的至少一个功能模块。
在步骤S120,将每个模块组挂载到至少一条通信链上,以得到多条通信链。
在步骤S130,分别为多条通信链设置链编号。
在步骤S140,基于寄存器访问控制器和设置有链编号的多条通信链,构建网络拓扑结构。例如,网络拓扑结构包括寄存器访问控制器及与寄存器访问控制器相通信的多条通信链。
例如,在一些实施例中,在步骤S110中,多个功能模块可以根据通信链对应的挂载数量划分成多个模块组,例如,若每条通信链对应的挂载数量为10,则每个模块组则最多包括10个功能模块;然后,将每个模块组挂载至一条通信链上,此时可以为每条通信链设置唯一的链编号,例如,第一条通信链的链编号为0,第二条通信链的链编号为1等,以此类推,从而可以基于寄存器访问控制器和设置有链编号的多条通信链,构建网络拓扑结构。在访问该网络拓扑结构时,通过每条通信链对应的唯一的链编号确定需要开启的通信链,每次仅开启网络拓扑结构中的一条通信链,网络拓扑结构中的其余通信链均处于关闭状态,从而避免向无关功能模块发送模块访问请求,大幅减少需要开启的通信链的条数,达到降低功耗的目的。
图3为本公开至少一实施例提供的网络拓扑结构的构建方法中步骤S110的示例性流程图。例如,如图3所示,在一些实施例中,步骤S110可以至少包括步骤S1101-步骤S1102。
在步骤S1101,确定与多个功能模块一一对应的多个模块编号。
在步骤S1102,根据多个模块编号,将多个功能模块划分为多个模块组。
例如,在步骤S110中,多个功能模块可以按照每个功能模块的模块编号划分成多个模块组,并将每个模块组根据每条通信链对应的挂载数量挂载至一条或多条通信链上,基于每条通信链所挂载的模块编号确定每条通信链的链编号,从而可以基于寄存器访问控制器和设置有链编号的多条通信链,构建网络拓扑结构。
需要说明的是,通信链对应的挂载数量表示该条通信链上所挂载的功能模块的数量。
例如,每个模块组包括的至少一个功能模块对应的至少一个模块编号的种类小于预设阈值。例如,若模块组由具有相同模块编号的功能模块组成,也即此时该模块组包括的至少一个功能模块对应的模块编号的种类为1;例如,在一些示例中,预设阈值可以为3,也即每个模块组对应的模块编号至多有三种。本公开不限于此,预设阈值也可以为2、4等。
需要说明的是,每个功能模块对应有唯一的一个模块编号,多个功能模块可以对应同一个模块编号。在另一些示例中,一个模块编号也可以仅对应一个功能模块。
在这种方式中,不仅可以通过设置每个模块组中的模块编号的种类上限,使得每个模块组中的模块编号相同或模块编号种类尽可能的少,减少访问过程中需要开启的通信链的条数,降低功耗;此外,当链编号通过模块编号确定时,可以在一定程度上复用原有的编程逻辑及电路,降低编程复杂度及修改成本。
例如,计算装置为通用图形处理器,如图1所示,通用图形处理器包括运算单元、控制单元和存储单元。运算单元中的功能模块可以根据其所位于的着色引擎确定其模块编号,控制单元和存储单元中的功能模块可以根据着色引擎确定其模块编号,也可以设置新的模块编号。
例如,多个功能模块包括多个第一功能模块,多个第一功能模块属于通用图形处理器包括的运算单元中的多个着色引擎,且每个着色引擎包括至少一个第一功能模块,多个着色引擎分别具有一一对应的多个引擎编号,步骤S1101可以包括:对于多个第一功能模块,将多个第一功能模块中的每个第一功能模块所属的着色引擎对应的引擎编号作为每个第一功能模块对应的模块编号;对于多个功能模块中除多个第一功能模块之外的其他功能模块,将多个引擎编号中的至少一个引擎编号作为其他功能模块对应的模块编号,或者,将与多个引擎编号不同的其他编号作为其他功能模块对应的模块编号。
例如,其他编号可以为用户自定义的编号。
需要说明的是,第一功能模块对应的模块编号也可以为用户自定义的编号。
在一些示例中,其他功能模块对应的模块编号均相同,例如,均采用多个引擎编号中的任一个引擎编号作为其他功能模块对应的模块编号,或者均采用相同的其他编号作为其他功能模块对应的模块编号;在另一些示例中,其他功能模块对应的模块编号不完全相同,可以根据实际需要选择合适的方式设置模块编号,本公开对此不作限制。
例如,在一些实施例中,其他功能模块包括至少一个第二功能模块,至少一个第二功能模块属于通用图形处理器包括的存储单元,至少一个引擎编号包括第一引擎编号,其他编号包括第一编号,例如,在步骤S1101中确定其他功能模块的模块编号时,将该第一引擎编号作为至少一个第二功能模块对应的模块编号,或者,将该第一编号作为至少一个第二功能模块对应的模块编号。也就是说,至少一个第二功能模块对应的模块编号相同,均为第一引擎编号或第一编号。
例如,在另一些实施例中,其他功能模块还包括至少一个第三功能模块,至少一个第三功能模块属于通用图形处理器包括的控制单元,至少一个引擎编号包括第二引擎编号,其他编号包括第二编号,例如,在步骤S1101中确定其他功能模块的模块编号时,将该第二引擎编号作为至少一个第三功能模块对应的模块编号,或者,将该第二编号作为至少一个第三功能模块对应的模块编号。也就是说,至少一个第三功能模块对应的模块编号相同,均为第二引擎编号或第二编号。
例如,在一些示例中,如图1所示,运算单元中的多个着色引擎分别为SE0、SE1、SE2…,例如,着色引擎SE0对应的引擎编号(SE ID)为0,着色引擎SE1对应的引擎编号(SEID)为1,着色引擎SE2对应的引擎编号(SE ID)为2,依次类推。例如,对于位于着色引擎SE0上的每个第一功能模块,其对应的模块编号为0;例如,对于位于着色引擎SE1上的每个第一功能模块,其对应的模块编号为1;例如,对于位于着色引擎SE2上的每个第一功能模块,其对应的模块编号为2,以此类推。
例如,对于图1所示的存储单元,在一些示例中,存储单元中的第二功能模块可以采用第一引擎编号作为模块编号,例如,第一引擎编号可以为0,也即采用着色引擎SE0对应的引擎编号作为第一引擎编号。由于引擎编号是电路逻辑中原本就为着色引擎分配好的编号,采用引擎编号作为存储单元的模块编号时,不需对电路逻辑进行修改。
例如,在另一些示例中,存储单元中的第二功能模块可以采用第一编号作为模块编号,例如,第一编号可以为100。由于存储单元中的第二功能模块的数量可能较多,当存储单元中的第二功能模块与运算单元中的部分第一功能模块均采用相同的引擎编号时,可能导致对应于该同一个引擎编号的功能模块的数量较大,由此,对应于该同一个引擎编号的功能模块可能需要挂载至多条通信链上,导致访问过程中需要开启多条通信链以确定待访问的功能模块,因此为第二功能模块分配与多个引擎编号不同的其他编号,可以进一步减少需要开启的通信链的数量,降低功耗。
与第二功能模块类似,对于图1所示的控制单元,在一些示例中,控制单元中的第三功能模块可以采用第二引擎编号作为模块编号,第二引擎编号可以与第一引擎编号相同或不同,例如,第一引擎编号可以为0,第二引擎编号也可以为0;或者,第一引擎编号可以为0,而第二引擎编号可以为1,也即采用着色引擎SE1对应的引擎编号作为第二引擎编号。例如,控制单元中的第三功能模块可以采用第二编号作为模块编号,第二编号可以与第一编号相同或不同,例如,第一编号可以为100,第二编号也可以为100;或者,第一编号可以为100,而第二编号可以为200。
需要说明的是,模块编号不限于整数的形式,也可以采用字母、符号、小数或前述任意项之间的组合等,本公开对此不作限制。
例如,步骤S1102可以包括:根据多个模块编号和多个功能模块,确定至少一个第一模块组,其中,多个模块组包括至少一个第一模块组,每个第一模块组包括的功能模块具有相同的模块编号。
例如,将模块编号相同的功能模块作为一个第一模块组,例如,位于同一着色引擎的所有第一功能模块属于一个第一模块组。
例如,步骤S1102还可以包括:根据多个模块编号和多个功能模块,确定至少一个第二模块组,其中,多个模块组包括至少一个第二模块组,每个第二模块组包括具有不同模块编号的功能模块,且不同模块编号的种类小于预设阈值。
例如,每种模块编号对应的功能模块的数量不统一,可能存在有些模块编号对应的功能模块的数量较多,有些模块编号对应的功能模块的数量较少,因此可以将不同模块编号对应的功能模块划分至一个第二模块组,使得各个模块组中的功能模块的数量相差不大。例如,预设阈值为3,也即至多将三种模块编号对应的功能模块划分至一个第二模块组,通过限制预设阈值的大小,尽量减少在访问过程中开启的通信链的数量。
例如,步骤S1102可以包括:根据多个模块编号和多个功能模块,确定至少一个第二模块组,其中,多个模块组包括至少一个第二模块组,每个第二模块组包括具有不同模块编号的功能模块,且不同模块编号的种类小于预设阈值。此时,多个模块组可以都是第二模块组,第二模块组的相关内容与前述相同,这里不再赘述。
例如,步骤S130可以包括:根据多条通信链中的每条通信链挂载的至少一个功能模块对应的至少一个模块编号,确定每条通信链对应的链编号。
例如,根据多条通信链中的每条通信链挂载的至少一个功能模块对应的至少一个模块编号,确定每条通信链对应的链编号,可以包括:确定每条通信链挂载的至少一个功能模块对应的至少一个模块编号;将至少一个模块编号作为每条通信链的链编号。即链编号可以由至少一个模块编号组成,例如,若至少一个模块编号为0和1,则链编号也为0和1。
图4为本公开至少一实施例提供的网络拓扑结构的示意性结构图。如图4所示,该网络拓扑结构为菊花链拓扑结构,该菊花链拓扑结构由寄存器访问控制器和与寄存器访问控制器相通信的多条通信链构成,该多条通信链包括挂载有功能模块的通信链a、通信链b、通信链c等,例如,通信链a上挂载有功能模块A0、功能模块A1、功能模块A2、功能模块A3等,通信链b上挂载有功能模块B0、功能模块B1、功能模块B2、功能模块B3等,通信链c上挂载有功能模块C0、功能模块C1、功能模块C2、功能模块C3等。通信链a的链编号为0,通信链b的链编号为1,通信链c的链编号为2。
例如,功能模块A0、功能模块A1、功能模块A2和功能模块A3对应的模块编号相同(例如均为0),如图2所示,首先根据步骤S110,可以将功能模块A0、功能模块A1、功能模块A2和功能模块A3划分为一个第一模块组(1);之后,根据步骤S120,将第一模块组(1)包括的功能模块A0、功能模块A1、功能模块A2和功能模块A3挂载至通信链a上;之后,根据步骤S130,由于第一模块组(1)包括的所有功能模块对应的模块编号均为0,可以将通信链a的链编号设置为0。
类似地,功能模块B0、功能模块B1、功能模块B2、功能模块B3对应的模块编号相同(例如均为1),如图2所示,首先根据步骤S110,可以将功能模块B0、功能模块B1、功能模块B2、功能模块B3划分为一个第一模块组(2);之后,根据步骤S120,将第一模块组(2)包括的功能模块B0、功能模块B1、功能模块B2、功能模块B3挂载至通信链b上;之后,根据步骤S130,可以为通信链b设置链编号为1。
类似地,功能模块C0、功能模块C1、功能模块C2、功能模块C3对应的模块编号相同(例如均为2),如图2所示,首先根据步骤S110,可以将功能模块C0、功能模块C1、功能模块C2、功能模块C3划分为一个第一模块组(3);之后,根据步骤S120,将第一模块组(3)包括的功能模块C0、功能模块C1、功能模块C2、功能模块C3挂载至通信链c上;之后,根据步骤S130,可以为通信链c设置链编号为2。
例如,在另一些实施例中,功能模块C0、功能模块C1、功能模块C2和对应的模块编号相同,例如均为2,而功能模块C3对应的模块编号为3,若模块编号为3的功能模块仅包括功能模块C3,此时,如图2所示,首先根据步骤S110,也可以将功能模块C0、功能模块C1、功能模块C2、功能模块C3划分为一个第一模块组(3);之后,根据步骤S120,将第一模块组(3)包括的功能模块C0、功能模块C1、功能模块C2、功能模块C3挂载至通信链c上;之后,根据步骤S130,确定通信链c挂载的功能模块C0、功能模块C1、功能模块C2、功能模块C3对应的至少一个模块编号,即2和3,然后,将该至少一个模块编号2和3作为通信链c的链编号,即此时,通信链c的链编号为2和3。
最后,根据步骤S140,基于寄存器访问控制器和通信链a、通信链b、通信链c等通信链,构建菊花链网络拓扑结构,如图4所示。
本公开至少一实施例还提供一种网络拓扑结构的访问方法,该网络拓扑结构根据本公开至少一实施例提供的网络拓扑结构的构建方法得到。
图5A为本公开至少一实施例提供的网络拓扑结构的访问方法的示意性流程图。
例如,如图5A所示,本公开至少一实施例提供的网络拓扑结构的访问方法包括步骤S210至S230。
在步骤S210,接收寄存器访问控制器发送的模块访问请求,解析模块访问请求,以得到请求编号。
在步骤S220,基于多条通信链一一对应的链编号,确定多条通信链中与请求编号对应的至少一条目标通信链。
在步骤S230,开启与请求编号对应的至少一条目标通信链,以访问至少一条目标通信链上的与模块访问请求对应的功能模块。
例如,在一些示例中,每条通信链的链编号由每条通信链所挂载的功能模块的模块编号确定,此时,链编号可以由至少一个模块编号组成,步骤S220可以包括:对于多条通信链中的第i条通信链:根据第i条通信链对应的链编号,确定第i条通信链对应的至少一个模块编号;将请求编号分别与第i条通信链对应的至少一个模块编号进行比较,响应于请求编号与第i条通信链对应的至少一个模块编号中的任意一个模块编号相同,确定第i条通信链为与请求编号对应的一条目标通信链,其中,i为正整数,且小于等于多条通信链的总数。
例如,在另一些实例中,为每条通信链设置唯一的链编号,此时,链编号可以为单独的一个数字,步骤S220可以包括:对于多条通信链中的第i条通信链:将第i条通信链对应的链编号与请求编号进行比较,响应于请求编号与第i条通信链对应的链编号相同,确定第i条通信链为与请求编号对应的一条目标通信链,其中,i为正整数,且小于等于多条通信链的总数。
例如,寄存器访问控制器发送模块访问请求时,会同时发送待访问的模块信息以供挂载在通信链上的功能模块进行匹配,待访问的部分模块信息至少包括用于匹配通信链的链编号的请求编号以及匹配功能模块的实例编号。
例如,多个功能模块具有一一对应的实例编号,步骤S230可以包括:解析模块访问请求,得到待访问的实例编号;基于待访问的实例编号,确定至少一条目标通信链上的与模块访问请求对应的功能模块,其中,与模块访问请求对应的功能模块对应的实例编号为待访问的实例编号;根据请求编号开启至少一条目标通信链,以访问至少一条目标通信链上的与模块访问请求对应的功能模块。
图5B为本公开一实施例提供的基于图4所示的网络拓扑结构的访问结构示意图。如图5B所示,每条通信链通过对应的匹配模块确认该条通信链是否被开启。
图5C为本公开一实施例提供的一种匹配模块的结构示意图。
如图5C所示,该匹配模块主要通过触发器、逻辑与门(&)和比较器实现。比较器用于比较请求编号和链编号是否匹配,若请求编号与链编号匹配,则比较器可以输出第一信号(例如,逻辑值1)至逻辑与门,若请求编号与链编号不匹配,则比较器可以输出第二信号(例如,逻辑值0)至逻辑与门;逻辑与门(&)的一个输入端接收时钟门控信号,另一个输入端则接收比较器的输出(例如,第一信号或第二信号)。当比较器输出第一信号至逻辑与门,时钟门控信号能够通过逻辑与门并被输入至触发器的输入端,并最终在触发器时钟的控制下通过触发器的输出端输出,也即输出信号为时钟门控选通信号,此时可以开启匹配模块所在通信链的时钟网络;若请求编号与链编号不匹配,即比较器输出第二信号至逻辑与门,此时,触发器的输出信号为低电平信号,匹配模块所在通信链的时钟网络不会被开启。
例如,当时钟门控选通信号能够通过触发器的输出端输出时,也即输出信号为时钟门控选通信号时,将该匹配模块所在通信链作为目标通信链,且开启该目标通信链,模块访问请求(例如包括待访问的寄存器信息,如寄存器号、操作类型等)可以发送至目标通信链上挂载的各个功能模块,根据模块访问请求中的实例编号,目标通信链上的与模块访问请求对应的功能模块可以被访问。
例如,如图5B所示,假设功能模块C1对应的模块编号为2,且挂载在通信链c上,当寄存器访问控制器需要访问功能模块C1中的寄存器时,发送包括请求编号为2的模块访问请求。由于通信链a的链编号和通信链b的链编号分别为0和1,与寄存器访问控制器发送的请求编号不匹配,所以通信链a和通信链b保持关闭状态;通信链c的链编号为2,与请求编号相匹配,通信链c被开启,模块访问请求可以沿着通信链c发送至功能模块C1中。
在这种方式中,通过调整网络拓扑结构中的通信链上的功能模块排布方式,可以在访问某个功能模块时,将模块访问请求定位至一条或几条通信链上,从而仅需唤醒部分通信链即可完成模块访问,降低功耗。例如在上述示例中仅开启通信链c,而不必开启通信链a和通信链b,减少开启通信链a、通信链b以及其他链编号不为2的通信链所挂载模块的时钟网络能量消耗。
例如,响应于多条通信链中不包括与请求编号对应的目标通信链,结束模块访问请求。当然,若多条通信链中不包括与请求编号对应的目标通信链,也可以发送指示无法匹配的消息回执给寄存器访问控制器或由寄存器访问控制器重新发送模块访问请求。
与上述的网络拓扑结构的构建方法相对应,本公开至少一实施例还提供一种网络拓扑结构的构建装置,图6为本公开至少一实施例提供的一种网络拓扑结构的构建装置的示意性框图。
该网络拓扑结构的构建装置应用于计算装置,例如,计算装置包括寄存器访问控制器和多个功能模块。
例如,如图6所示,网络拓扑结构的构建装置600包括:划分单元601、挂载单元602、编号设置单元603和构建单元604。
划分单元601配置为将多个功能模块划分为多个模块组,例如,多个模块组中的每个模块组包括多个功能模块中的至少一个功能模块。
挂载单元602,配置为将每个模块组挂载到至少一条通信链上,以得到多条通信链。
编号设置单元603,配置为分别为多条通信链设置链编号。
构建单元604,配置为基于寄存器访问控制器和设置有链编号的多条通信链,构建网络拓扑结构,例如,网络拓扑结构包括寄存器访问控制器及与寄存器访问控制器相通信的多条通信链。
例如,划分单元601、挂载单元602、编号设置单元603和构建单元604可以至少部分通过硬件、固件或软件,或这些方式的任何组合实现,本公开的实施例对此不作限制。例如,当这些单元至少部分通过软件实现时,相应地计算机的执行代码存储在存储器之中,并且在需要时被相应地处理器执行。
需要说明的是,划分单元601用于实现图2所示的步骤S110,挂载单元602用于实现图2所示的步骤S120,编号设置单元603用于实现图2所示的步骤S130,构建单元604用于实现图2所示的步骤S140。从而关于划分单元601的具体说明可以参考上述网络拓扑结构的构建方法的实施例中图2所示的步骤S110的相关描述,关于挂载单元602的具体说明可以参考上述网络拓扑结构的构建方法的实施例中图2所示的步骤S120的相关描述,关于编号设置单元603的具体说明可以参考上述网络拓扑结构的构建方法的实施例中图2所示的步骤S130的相关描述,关于构建单元604的具体说明可以参考上述网络拓扑结构的构建方法的实施例中图2所示的步骤S140的相关描述。此外,网络拓扑结构的构建装置可以实现与前述网络拓扑结构的构建方法相似的技术效果,在此不再赘述。
与上述的网络拓扑结构的访问方法相对应,本公开至少一实施例还提供一种网络拓扑结构的访问装置,该网络拓扑结构可以通过上述网络拓扑结构的构建方法中的任一个实施例得到。
图7为本公开至少一实施例提供的一种网络拓扑结构的访问装置的示意性框图。例如,如图7所示,网络拓扑结构的访问装置700包括:接收单元701、确定单元702、访问处理单元703。
接收单元701,配置为接收寄存器访问控制器发送的模块访问请求,解析模块访问请求,以得到请求编号;
确定单元702,配置为基于多条通信链一一对应的链编号,确定多条通信链中与请求编号对应的至少一条目标通信链;
访问处理单元703,配置为开启与请求编号对应的至少一条目标通信链,以访问至少一条目标通信链上的与模块访问请求对应的功能模块。
例如,接收单元701、确定单元702、访问处理单元703可以至少部分通过硬件、固件或软件,或这些方式的任何组合实现,本公开的实施例对此不作限制。例如,当这些单元至少部分通过软件实现时,相应地计算机的执行代码存储在存储器之中,并且在需要时被相应地处理器执行。
需要说明的是,接收单元701用于实现图5A所示的步骤S210,确定单元702用于实现图5A所示的步骤S220,访问处理单元703用于实现图5A所示的步骤S230。从而关于接收单元701的具体说明可以参考上述网络拓扑结构的访问方法的实施例中图5A所示的步骤S210的相关描述,关于确定单元702的具体说明可以参考上述网络拓扑结构的访问方法的实施例中图5A所示的步骤S220的相关描述,关于访问处理单元703的具体说明可以参考上述网络拓扑结构的访问方法的实施例中图5A所示的步骤S230的相关描述。此外,网络拓扑结构的访问装置可以实现与前述网络拓扑结构的访问方法相似的技术效果,在此不再赘述。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (18)
1.一种网络拓扑结构的构建方法,应用于计算装置,其中,所述计算装置包括寄存器访问控制器和多个功能模块,
所述方法包括:
将所述多个功能模块划分为多个模块组,其中,所述多个模块组中的每个模块组包括所述多个功能模块中的至少一个功能模块;
将所述每个模块组挂载到至少一条通信链上,以得到多条通信链;
分别为所述多条通信链设置链编号;
基于所述寄存器访问控制器和设置有所述链编号的所述多条通信链,构建所述网络拓扑结构,其中,所述网络拓扑结构包括所述寄存器访问控制器及与所述寄存器访问控制器相通信的所述多条通信链。
2.根据权利要求1所述的方法,其中,将所述多个功能模块划分为多个模块组,包括:
确定与所述多个功能模块一一对应的多个模块编号;
根据所述多个模块编号,将所述多个功能模块划分为所述多个模块组。
3.根据权利要求2所述的方法,其中,所述每个模块组包括的至少一个功能模块对应的至少一个模块编号的种类小于预设阈值。
4.根据权利要求2所述的方法,其中,所述计算装置为通用图形处理器,所述多个功能模块包括多个第一功能模块,
所述多个第一功能模块属于所述通用图形处理器包括的运算单元中的多个着色引擎,且每个所述着色引擎包括至少一个第一功能模块,所述多个着色引擎分别具有一一对应的多个引擎编号,
确定与所述多个功能模块一一对应的多个模块编号,包括:
对于所述多个第一功能模块,将所述多个第一功能模块中的每个第一功能模块所属的着色引擎对应的引擎编号作为所述每个第一功能模块对应的模块编号;
对于所述多个功能模块中除所述多个第一功能模块之外的其他功能模块,将所述多个引擎编号中的至少一个引擎编号作为所述其他功能模块对应的模块编号,或者,将与所述多个引擎编号不同的其他编号作为所述其他功能模块对应的模块编号。
5.根据权利要求4所述的方法,其中,所述其他功能模块包括至少一个第二功能模块,所述至少一个第二功能模块属于所述通用图形处理器包括的存储单元,
所述至少一个引擎编号包括第一引擎编号,所述其他编号包括第一编号,
所述第一引擎编号作为所述至少一个第二功能模块对应的模块编号,或者,所述第一编号作为所述至少一个第二功能模块对应的模块编号。
6.根据权利要求4或5所述的方法,其中,所述多个功能模块包括至少一个第三功能模块,所述至少一个第三功能模块属于所述通用图形处理器包括的控制单元,
所述至少一个引擎编号包括第二引擎编号,所述其他编号包括第二编号,
所述第二引擎编号作为所述至少一个第三功能模块对应的模块编号,或者,所述第二编号作为所述至少一个第三功能模块对应的模块编号。
7.根据权利要求2所述的方法,其中,根据所述多个模块编号,将所述多个功能模块划分为所述多个模块组,包括:
根据所述多个模块编号和所述多个功能模块,确定至少一个第一模块组,其中,所述多个模块组包括所述至少一个第一模块组,每个所述第一模块组包括的功能模块具有相同的模块编号。
8.根据权利要求2或7所述的方法,其中,根据所述多个模块编号,将所述多个功能模块划分为所述多个模块组,还包括:
根据所述多个模块编号和所述多个功能模块,确定至少一个第二模块组,其中,所述多个模块组包括所述至少一个第二模块组,每个所述第二模块组包括具有不同模块编号的功能模块,且所述不同模块编号的种类小于预设阈值。
9.根据权利要求2所述的方法,其中,分别为所述多条通信链设置链编号,包括:
根据所述多条通信链中的每条通信链挂载的至少一个功能模块对应的至少一个模块编号,确定所述每条通信链对应的链编号。
10.根据权利要求9所述的方法,其中,根据所述多条通信链中的每条通信链挂载的至少一个功能模块对应的至少一个模块编号,确定所述每条通信链对应的链编号,包括:
确定所述每条通信链挂载的至少一个功能模块对应的至少一个模块编号;
将所述至少一个模块编号作为所述每条通信链的链编号。
11.根据权利要求1-10任一项所述的方法,其中,所述网络拓扑结构为菊花链拓扑结构。
12.一种网络拓扑结构的构建装置,应用于计算装置,其中,所述计算装置包括寄存器访问控制器和多个功能模块,
所述装置包括:
划分单元,配置为将所述多个功能模块划分为多个模块组,其中,所述多个模块组中的每个模块组包括所述多个功能模块中的至少一个功能模块;
挂载单元,配置为将所述每个模块组挂载到至少一条通信链上,以得到多条通信链;
编号设置单元,配置为分别为所述多条通信链设置链编号;
构建单元,配置为基于所述寄存器访问控制器和设置有所述链编号的所述多条通信链,构建所述网络拓扑结构,其中,所述网络拓扑结构包括所述寄存器访问控制器及与所述寄存器访问控制器相通信的所述多条通信链。
13.一种网络拓扑结构的访问方法,其中,所述网络拓扑结构根据权利要求1-11任一项所述的构建方法构建得到,
所述方法包括:
接收所述寄存器访问控制器发送的模块访问请求,解析所述模块访问请求,以得到请求编号;
基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链;
开启与所述请求编号对应的至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块。
14.根据权利要求13所述的方法,其中,基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链,包括:
对于所述多条通信链中的第i条通信链:
根据所述第i条通信链对应的链编号,确定所述第i条通信链对应的至少一个模块编号;
将所述请求编号分别与所述第i条通信链对应的至少一个模块编号进行比较,
响应于所述请求编号与所述第i条通信链对应的至少一个模块编号中的任意一个模块编号相同,确定所述第i条通信链为与所述请求编号对应的一条目标通信链,
其中,i为正整数,且小于等于所述多条通信链的总数。
15.根据权利要求13所述的方法,其中,基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链,包括:
对于所述多条通信链中的第i条通信链:
将所述第i条通信链对应的链编号与所述请求编号进行比较,响应于所述请求编号与所述第i条通信链对应的链编号相同,确定所述第i条通信链为与所述请求编号对应的一条目标通信链,
其中,i为正整数,且小于等于所述多条通信链的总数。
16.根据权利要求13所述的方法,其中,所述多个功能模块具有一一对应的实例编号,
开启与所述请求编号对应的至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块,包括:
解析所述模块访问请求,得到待访问的实例编号;
基于所述待访问的实例编号,确定所述至少一条目标通信链上的与所述模块访问请求对应的功能模块,其中,与所述模块访问请求对应的功能模块对应的实例编号为所述待访问的实例编号;
根据所述请求编号开启所述至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块。
17.根据权利要求13-16任一项所述的方法,其中,响应于所述多条通信链中不包括与所述请求编号对应的目标通信链,结束所述模块访问请求。
18.一种网络拓扑结构的访问装置,其中,所述网络拓扑结构根据权利要求1-11任一项所述的构建方法构建得到,
所述访问装置包括:
接收单元,配置为接收所述寄存器访问控制器发送的模块访问请求,解析所述模块访问请求,以得到请求编号;
确定单元,配置为基于所述多条通信链一一对应的所述链编号,确定所述多条通信链中与所述请求编号对应的至少一条目标通信链;
访问处理单元,配置为开启与所述请求编号对应的至少一条目标通信链,以访问所述至少一条目标通信链上的与所述模块访问请求对应的功能模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011552065.9A CN112579518B (zh) | 2020-12-24 | 2020-12-24 | 网络拓扑结构的构建方法、访问方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011552065.9A CN112579518B (zh) | 2020-12-24 | 2020-12-24 | 网络拓扑结构的构建方法、访问方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579518A true CN112579518A (zh) | 2021-03-30 |
CN112579518B CN112579518B (zh) | 2023-02-17 |
Family
ID=75139587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011552065.9A Active CN112579518B (zh) | 2020-12-24 | 2020-12-24 | 网络拓扑结构的构建方法、访问方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579518B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117785297A (zh) * | 2023-11-17 | 2024-03-29 | 北京国科天迅科技股份有限公司 | 基于事件触发的降低fpga功耗的装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1124351A2 (en) * | 2000-02-11 | 2001-08-16 | Alcatel USA Sourcing, L.P. | Communication protocol for nodes connected in a daisy chain |
US6414955B1 (en) * | 1999-03-23 | 2002-07-02 | Innovative Technology Licensing, Llc | Distributed topology learning method and apparatus for wireless networks |
US6791948B1 (en) * | 1998-05-02 | 2004-09-14 | Emulex Corporation | Distributed switch and connection control arrangement and method for digital communications network |
CN2792039Y (zh) * | 2005-04-15 | 2006-06-28 | 上海师范大学 | 网络节点及使用该种网络节点的链式总线结构 |
CN101171804A (zh) * | 2005-03-10 | 2008-04-30 | 高通股份有限公司 | 用于无线通信网络的自动配置的方法和设备 |
US20120297396A1 (en) * | 2011-05-20 | 2012-11-22 | Soft Machines, Inc. | Interconnect structure to support the execution of instruction sequences by a plurality of engines |
US20160212025A1 (en) * | 2015-01-21 | 2016-07-21 | Cisco Technology, Inc. | Methods and systems for a network appliance module enabling dynamic vdc aware span |
US9525598B1 (en) * | 2014-11-13 | 2016-12-20 | Amazon Technologies, Inc. | Network testing device for automated topology validation |
CN107040416A (zh) * | 2017-04-12 | 2017-08-11 | 大连理工大学 | 一种基于Cairngorm框架的虚拟数据中心可视化管理方法 |
US20170331669A1 (en) * | 2016-05-11 | 2017-11-16 | Cisco Technology, Inc. | Virtualized network management protocols |
US20180302289A1 (en) * | 2017-04-14 | 2018-10-18 | Cisco Technology, Inc. | Network Fabric Topology Expansion and Self-Healing Devices |
CN111953507A (zh) * | 2019-05-17 | 2020-11-17 | 中移(苏州)软件技术有限公司 | 一种网络拓扑发现方法、装置以及计算机存储介质 |
-
2020
- 2020-12-24 CN CN202011552065.9A patent/CN112579518B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6791948B1 (en) * | 1998-05-02 | 2004-09-14 | Emulex Corporation | Distributed switch and connection control arrangement and method for digital communications network |
US6414955B1 (en) * | 1999-03-23 | 2002-07-02 | Innovative Technology Licensing, Llc | Distributed topology learning method and apparatus for wireless networks |
EP1124351A2 (en) * | 2000-02-11 | 2001-08-16 | Alcatel USA Sourcing, L.P. | Communication protocol for nodes connected in a daisy chain |
CN101171804A (zh) * | 2005-03-10 | 2008-04-30 | 高通股份有限公司 | 用于无线通信网络的自动配置的方法和设备 |
CN2792039Y (zh) * | 2005-04-15 | 2006-06-28 | 上海师范大学 | 网络节点及使用该种网络节点的链式总线结构 |
US20120297396A1 (en) * | 2011-05-20 | 2012-11-22 | Soft Machines, Inc. | Interconnect structure to support the execution of instruction sequences by a plurality of engines |
US9525598B1 (en) * | 2014-11-13 | 2016-12-20 | Amazon Technologies, Inc. | Network testing device for automated topology validation |
US20160212025A1 (en) * | 2015-01-21 | 2016-07-21 | Cisco Technology, Inc. | Methods and systems for a network appliance module enabling dynamic vdc aware span |
US20170331669A1 (en) * | 2016-05-11 | 2017-11-16 | Cisco Technology, Inc. | Virtualized network management protocols |
CN107040416A (zh) * | 2017-04-12 | 2017-08-11 | 大连理工大学 | 一种基于Cairngorm框架的虚拟数据中心可视化管理方法 |
US20180302289A1 (en) * | 2017-04-14 | 2018-10-18 | Cisco Technology, Inc. | Network Fabric Topology Expansion and Self-Healing Devices |
CN111953507A (zh) * | 2019-05-17 | 2020-11-17 | 中移(苏州)软件技术有限公司 | 一种网络拓扑发现方法、装置以及计算机存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117785297A (zh) * | 2023-11-17 | 2024-03-29 | 北京国科天迅科技股份有限公司 | 基于事件触发的降低fpga功耗的装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112579518B (zh) | 2023-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9104828B2 (en) | State grouping for element utilization | |
US9280329B2 (en) | Methods and systems for detection in a state machine | |
EP2668575B1 (en) | Method and apparatus for compiling regular expressions | |
US6088795A (en) | Process for automatic dynamic reloading of data flow processors (DFPs) and units with two or three-dimensional programmable cell architectures (FPGAs, DPGAs and the like) | |
US7822881B2 (en) | Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like) | |
US4862347A (en) | System for simulating memory arrays in a logic simulation machine | |
US4112490A (en) | Data transfer control apparatus and method | |
EP2891054B1 (en) | Methods and systems for power management in a pattern recognition processing system | |
WO2012103146A2 (en) | Utilizing special purpose elements to implement a fsm | |
CN107832078B (zh) | 基于dsp的fpga程序在线更新电路 | |
WO2014035699A1 (en) | Results generation for state machine engines | |
JP2001067217A (ja) | 制御ユニットおよびその製造方法 | |
CN101546275B (zh) | 一种获取多处理器硬件信号量的方法 | |
US5983339A (en) | Power down system and method for pipelined logic functions | |
CN112579518B (zh) | 网络拓扑结构的构建方法、访问方法及装置 | |
JP5146451B2 (ja) | ハードウエアエミュレーションシステムのプロセッサを同期化する方法及び装置 | |
CN114153783B (zh) | 多核通信机制的实现方法、系统、计算机设备及存储介质 | |
US20100268999A1 (en) | Memory testing with snoop capabilities in a data processing system | |
US6237101B1 (en) | Microprocessor including controller for reduced power consumption and method therefor | |
CN114443137A (zh) | 一种集成计算装置、芯片、板卡、设备和计算方法 | |
CN107665281A (zh) | 一种基于fpga的处理器模拟方法 | |
US20240211761A1 (en) | Methods and systems for power management in a pattern recognition processing system | |
US20220147351A1 (en) | Instruction transmitting unit, instruction execution unit, and related apparatus and method | |
CA1271259A (en) | Simulation system | |
Nketsa et al. | A Petri net based single chip programmable controller for distributed local controls |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230116 Address after: 610216 building 3, No. 171, hele Second Street, Chengdu high tech Zone, China (Sichuan) pilot Free Trade Zone, Chengdu, Sichuan Province Applicant after: CHENGDU HAIGUANG INTEGRATED CIRCUIT DESIGN Co.,Ltd. Address before: 300392 North 2-204 industrial incubation-3-8, 18 Haitai West Road, Huayuan Industrial Zone, Tianjin Applicant before: Haiguang Information Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |