CN115905088A - 一种数据收集结构、方法、芯片和系统 - Google Patents
一种数据收集结构、方法、芯片和系统 Download PDFInfo
- Publication number
- CN115905088A CN115905088A CN202211684700.8A CN202211684700A CN115905088A CN 115905088 A CN115905088 A CN 115905088A CN 202211684700 A CN202211684700 A CN 202211684700A CN 115905088 A CN115905088 A CN 115905088A
- Authority
- CN
- China
- Prior art keywords
- arbiter
- data collection
- chain
- calculation result
- unit
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Complex Calculations (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种数据收集结构、方法、芯片和系统,该数据收集结构包括:多个计算单元和多个仲裁器;多个仲裁器包括与每个计算单元对应的第一仲裁器;多个计算单元通过多个第一仲裁器依次相连接,构成数据收集链,并且处于链尾的计算单元与控制单元相连接;其中,仲裁器设置为接收计算单元发送的计算结果并沿数据收集链传输至控制单元。通过该实施例方案,多个计算单元紧密排列,实现了充分利用芯片空间,仲裁器对计算单元没有反压,使得计算单元设计简单,提高了设计频率,并且对芯片的算力几乎没有影响。
Description
技术领域
本申请实施例涉及数据收集技术,尤指一种数据收集结构、方法、芯片和系统。
背景技术
在算力芯片中,存在很多个计算单元,在进行数据处理时需要将多个计算单元的计算结果进行收集、汇总,以将全部计算结果统一收集在一个控制单元中。目前方案中对多个计算结果的收集方法是将计算结果依次加入预设的缓存器中,而且当缓存器已满时,控制单元如果要接收所有计算单元提交的所有计算结果,这就需要对计算单元有反压,而这会大大增加计算单元的设计难度;另外,目前的方案没有考虑全部计算单元的空间布局。
发明内容
本申请实施例提供了一种数据收集结构、方法、芯片和系统,能够充分利用芯片空间,对计算单元没有反压,使得计算单元设计简单,提高工作效率,并且对芯片的算力几乎没有影响。
本申请实施例提供了一种数据收集结构,可以包括:多个计算单元和多个仲裁器;所述多个仲裁器包括与每个计算单元对应的第一仲裁器;
多个所述计算单元通过多个所述第一仲裁器依次相连接,构成数据收集链,并且处于链尾的计算单元与控制单元相连接;
其中,所述仲裁器设置为接收所述计算单元发送的计算结果并沿所述数据收集链传输至所述控制单元。
在本申请的示例性实施例中,所述多个所述计算单元通过多个所述第一仲裁器依次相连接,构成数据收集链,可以包括:
每个计算单元分别通过与该计算单元对应的第一仲裁器连接到下一个计算单元,使得所述多个计算单元呈链式连接,构成所述数据收集链。
在本申请的示例性实施例中,每个所述第一仲裁器可以包括第一入口、第二入口和出口;
所述每个计算单元分别通过与该计算单元对应的第一仲裁器连接到下一个计算单元,包括:
每个所述第一仲裁器的第一入口与该第一仲裁器所对应的计算单元的输出接口相连接;
每个所述第一仲裁器的第二入口与上一个计算单元对应的第一仲裁器的出口相连接。
在本申请的示例性实施例中,所述数据收集链为一条时;所述处于链尾的计算单元与控制单元相连接,可以包括:
处于链尾的所述计算单元对应的所述第一仲裁器通过该的第一仲裁器出口直接与所述控制单元相连接;
所述数据收集链为多条时;所述多个仲裁器还可以包括:第二仲裁器;每个第二仲裁器包括第一入口、第二入口和出口;
所述处于链尾的计算单元与控制单元相连接,可以包括:
多条所述数据收集链的处于链尾的所述计算单元对应的第一仲裁器的出口通过所述第二仲裁器与所述控制单元相连接。
在本申请的示例性实施例中,所述多条所述数据收集链的处于链尾的所述计算单元对应的第一仲裁器的出口通过所述第二仲裁器与所述控制单元相连接,可以包括:
每条所述数据收集链的处于链尾的所述计算单元对应的第一仲裁器的出口与所述第二仲裁器的第一入口或所述第二仲裁器的第二入口相连接;
所述第二仲裁器的出口与所述控制单元的输入接口相连,或者与下一个第二仲裁器的第一入口或第二入口相连。
在本申请的示例性实施例中,每个所述第一仲裁器的第一入口处可以设置有缓存器;
所述缓存器可以设置为缓存该第一仲裁器对应的计算机单元发送的计算结果。
本申请实施例还提供了一种数据收集方法,基于所述的数据收集结构,应用于所述数据收集结构中的仲裁器;所述仲裁器包括第一仲裁器,或者包括所述第一仲裁器和第二仲裁器;所述方法可以包括:
获取对应的计算单元提交的和/或上一级仲裁器传输的计算结果;
将所述计算结果直接或选择性地沿数据收集链进行传输,直至传输到所述控制单元。
在本申请的示例性实施例中,所述将所述计算结果直接或选择性地沿数据收集链进行传输,可以包括:
当所述仲裁器所包含的第一入口和第二入口中任意一个收到所述计算结果时,由该仲裁器将所述计算结果直接发送到该仲裁器的出口进行输出;
当所述仲裁器所包含的第一入口和第二入口中均收到计算结果时,由该仲裁器根据预设的选择策略将两个所述计算结果择一发送到该仲裁器的出口进行输出。
在本申请的示例性实施例中,当所述计算单元的数量小于预设的数量阈值时,所述选择策略可以包括:
不在所述第一仲裁器的第一入口处设置缓存器,从所述第一入口和所述第二入口接收到的计算结果中任意选择一个,将选中的计算结果发送至该仲裁器的出口;
当所述计算单元的数量大于或等于预设的数量阈值时,所述选择策略包括:
预先在所述第一仲裁器的第一入口处设置缓存器,将所述第一入口接收到的所述计算结果发送请求包含的计算结果缓存到该第一入口处预先设置的缓存器内;
在发送完所述第一入口接收到的所述计算结果以后发送所述缓存器中缓存的计算结果或者发送此时所述第一入口接收到的新的计算结果。
本申请实施例还提供了一种芯片,可以包括所述的数据收集结构。
本申请实施例还提供了一种数据收集系统,包括所述的芯片、处理器和计算机可读存储介质,所述处理器将所述芯片中的计算结果存储到所述计算机可读存储介质中。
与相关技术相比,本申请实施例的数据收集结构包括:多个计算单元和多个仲裁器;所述多个仲裁器包括与每个计算单元对应的第一仲裁器;多个所述计算单元通过多个所述第一仲裁器依次相连接,构成数据收集链,并且处于链尾的计算单元与控制单元相连接;其中,所述仲裁器设置为接收所述计算单元发送的计算结果并沿所述数据收集链传输至所述控制单元。通过该实施例方案,多个计算单元紧密排列,实现了充分利用芯片空间,仲裁器对计算单元没有反压,使得计算单元设计简单,提高了设计频率,并且对芯片的算力几乎没有影响。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本申请实施例的包含单条数据收集链且第一仲裁器设置于计算单元内部时的数据收集结构示意图;
图2为本申请实施例的包含单条数据收集链且第一仲裁器设置于计算单元外部时的数据收集结构示意图;
图3为本申请实施例的包含多条数据收集链且第一仲裁器设置于计算单元内部时的数据收集结构示意图;
图4为本申请实施例的包含多条数据收集链且第一仲裁器设置于计算单元外部时的数据收集结构示意图;
图5为本申请实施例的数据收集方法流程图;
图6为本申请实施例的数据收集装置组成框图;
图7为本申请实施例的数据收集系统组成框图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
本申请实施例提供了一种数据收集结构A,如图1、图2、图3、图4所示,可以包括:多个计算单元1和多个仲裁器2;所述多个仲裁器2包括与每个计算单元对应的第一仲裁器21;
多个所述计算单元1通过多个所述第一仲裁器21依次相连接,构成数据收集链,并且处于链尾的计算单元与控制单元相连接;
其中,所述仲裁器2设置为接收所述计算单元发送的计算结果并沿所述数据收集链传输至所述控制单元3。
在本申请的示例性实施例中,提供了一种无反压的数据收集链式结构,收集所有计算单元的计算结果,可以简化计算单元的设计,提高计算单元工作频率,并使计算单元紧密排列,充分利用芯片空间。
在本申请的示例性实施例中,第一仲裁器2可以设置于所对应的计算单元1内部(如图1、图3所示),也可以设置于所对应的计算单元1外部(如图2、图4所示),当第一仲裁器2设计在计算单元1内部,使得计算单元1可以紧密排列充分利用芯片空间。
在本申请的示例性实施例中,图1、图2、图3、图4中所示的多个计算单元1分别为不同的计算单元1,并不是指同一计算单元1,多个第一仲裁器21分别为不同的第一仲裁器21,并不是指同一第一仲裁器21,多个第二仲裁器22分别为不同的第二仲裁器22,并不是指同一第二仲裁器22。
在本申请的示例性实施例中,所述多个所述计算单元通过多个所述第一仲裁器依次相连接,构成数据收集链,可以包括:
每个计算单元1分别通过与该计算单元相对应的第一仲裁器21连接到下一个计算单元1,使得所述多个计算单元1呈链式连接,构成所述数据收集链。
在本申请的示例性实施例中,每个仲裁器可以包括两个入口,一个出口:一个入口接本计算单元,一个入口接上一个计算单元,一个出口接下一个计算单元或控制单元。
在本申请的示例性实施例中,每个所述第一仲裁器21可以包括第一入口a1、第二入口b1和出口c1;
所述每个计算单元1分别通过所对应的第一仲裁器21连接到下一个计算单元1,包括:
每个所述第一仲裁器21的第一入口a1与该第一仲裁器21对应的计算单元1的输出接口相连接;
每个所述第一仲裁器21的第二入口b1与上一个计算单元1对应的第一仲裁器21的出口c1相连接。
在本申请的示例性实施例中,数据收集链可以仅为一条,也可以设置多条数据收集链相并联,并在每个数据收集链的尾端与控制单元3相连。
在本申请的示例性实施例中,当所述数据收集链为一条时;所述处于链尾的计算单元1与控制单元3相连接,可以包括:
处于链尾的所述计算单元1对应的所述第一仲裁器21通过所述出口c1直接与所述控制单元3相连接。
在本申请的示例性实施例中,如图3、图4所示,当所述数据收集链为多条时;所述多个仲裁器2还可以包括第二仲裁器22;每个第二仲裁器22可以包括第一入口a2、第二入口b2和出口c2;
所述处于链尾的计算单元1与控制单元3相连接,可以包括:
多条所述数据收集链的处于链尾的所述计算单元1对应的第一仲裁器21的出口c1通过所述第二仲裁器22与所述控制单元3相连接。
在本申请的示例性实施例中,当存在一个或多个第二仲裁器22时,第二仲裁器22也加入所连接的数据收集链中,作为该数据收集链的一部分。
在本申请的示例性实施例中,所述多条所述数据收集链的处于链尾的所述计算单元1对应的第一仲裁器21的出口c1通过所述第二仲裁器22与所述控制单元3相连接,可以包括:
每条所述数据收集链的处于链尾的所述计算单元1对应的第一仲裁器21的出口c1与所述第二仲裁器22的第一入口a2或第二入口b2相连接;
所述第二仲裁器22的出口c2与所述控制单元3的输入接口相连,或者与下一个第二仲裁器22的第一入口a2或第二入口b2相连。
在本申请的示例性实施例中,当多条所述数据收集链为两条数据收集链时,所述第二仲裁器22可以为一个;该第二仲裁器22的所述第一入口a2与一条所述数据收集链的处于链尾的所述计算单元1对应的第一仲裁器21的出口c2相连,该第二仲裁器22的所述第二入口b2与另一条所述数据收集链的处于链尾的所述计算单元1对应的第一仲裁器21的出口c1相连;该第二仲裁器22的出口c2直接与所述控制单元3的输入接口相连。
在本申请的示例性实施例中,当多条所述数据收集链大于两条数据收集链时,所述第二仲裁器22可以为多个;多个所述第二仲裁器22同样呈链式相连,记作第二仲裁器链,构成所连接的数据收集链的一部分;并且每个所述第二仲裁器22的第一入口a2和第二入口b2中至少之一连接到所述数据收集链的最后一个计算单元1对应的第一仲裁器22的出口c1,处于所述第二仲裁器链的链尾的第二仲裁器22的出口c2直接与所述控制单元3的输入接口相连。
在本申请的示例性实施例中,如图3、图4所示,详细连接方式可以包括:当包括m(m为正整数)个第二仲裁器22时,第一个第二仲裁器22的第一入口a2可以与第一条数据收集链的最后一个计算单元1对应的第一仲裁器21的出口c1相连,第一个第二仲裁器22的第二入口b2可以与第二条数据收集链的最后一个计算单元1对应的第一仲裁器21的出口c1相连,第一个第二仲裁器22的出口c2可以与下一个第二仲裁器22(第二个第二仲裁器22)的第二入口b2相连。第2个至第m个第二仲裁器22的第一入口a2可以依次与第三条数据收集链到最后一条数据收集链内的最后一个计算单元1对应的第一仲裁器21的出口c1相连,第2个至第m个第二仲裁器22的第二入口b2可以依次连接到对应的上一个第二仲裁器22的出口c2。第m个第二仲裁器22的出口c2直接连接到控制单元3的输入接口。
在本申请的示例性实施例中,图1、图2、图3、图4中计算单元1的数量仅为示例,实际可以为任意多个,例如,一般为1到65536个。
本申请实施例还提供了一种数据收集方法,基于所述的数据收集结构,应用于所述数据收集结构中的仲裁器;所述仲裁器可以包括第一仲裁器,或者包括所述第一仲裁器和第二仲裁器;如图5所示,所述方法可以包括步骤S101-S102:
S101、获取对应的计算单元1提交的和/或上一级仲裁器2传输的计算结果;
S102、将所述计算结果直接或选择性地沿数据收集链进行传输,直至传输到所述控制单元3。
在本申请的示例性实施例中,所述将所述计算结果直接或选择性地沿数据收集链进行传输,可以包括:
当所述仲裁器2所包含的第一入口和第二入口中任意一个收到所述计算结果时,由该仲裁器2将所述计算结果直接发送到该仲裁器的出口进行输出;
当所述仲裁器2所包含的第一入口和第二入口中均收到计算结果时,由该仲裁器根据预设的选择策略将两个所述计算结果择一发送到该仲裁器的出口进行输出。
在本申请的示例性实施例中,当所述计算单元1的数量小于预设的数量阈值时,所述选择策略可以包括:
不在所述第一仲裁器的第一入口处设置缓存器,从所述第一入口和所述第二入口接收到的计算结果中任意选择一个,将选中的计算结果发送至该仲裁器的出口。
在本申请的示例性实施例中,如果计算单元1的数量较少,当遇到第一入口和第二入口均收到计算结果的情况时,可以随机选取一个计算结果丢弃,并将另一个计算结果通过出口向下传输。
在本申请的示例性实施例中,理论上控制单元3需要接收所有计算单元1提交的所有计算结果,但这就需要对计算单元1有反压,而这会大大增加计算单元1的设计难度,所以将计算单元1提交计算结果的电路设计成一条链,任一个计算单元1都可以通过一个仲裁器2向整个链上提交计算结果,如果仲裁器2的两个入口都有请求,则丢弃其中一个。
在本申请的示例性实施例中,假设有n(n为正整数)个计算单元,每个计算单元提交计算结果的概率都为1/232,独立事件。从链头到链尾的计算单元依次编号为计算单元[0]至计算单元[n-1],则:
计算单元[0]连接的链节点没有数据概率为(1-1/232)1,
计算单元[1]连接的链节点没有数据概率为(1-1/232)2
计算单元[2]连接的链节点没有数据概率为(1-1/232)3,
…
计算单元[i]连接的链节点没有数据概率为(1-1/232)i+1,i为正整数,
…
计算单元[n-1]连接的链节点没有数据概率为(1-1/232)n,
上式约等于0,可以视为该结构没有算力损失。
只要n的数量一定,计算单元1完全串联或部分并联并不影响上述计算结果。
在本申请的示例性实施例中,前述的适当丢弃计算结果的功能使得仲裁器2的设计极为简单,且对计算单元1没有反压,可以使整个计算单元1的数据流向都是单向的,简化计算单元1的结构,且有利于计算单元1工作频率的提升。
在本申请的示例性实施例中,当所述计算单元1的数量大于或等于预设的数量阈值时,所述选择策略可以包括:
预先在所述第一仲裁器的第一入口处设置缓存器,将所述第一入口接收到的所述计算结果发送请求包含的计算结果缓存到该第一入口处预先设置的缓存器内;
在发送完所述第一入口接收到的所述计算结果以后发送所述缓存器中缓存的计算结果或者发送此时所述第一入口接收到的新的计算结果。
在本申请的示例性实施例中,当所述计算单元的数量大于或等于预设的数量阈值时,说明计算单元数量较大,针对该情况,可以预先在每个第一仲裁器21的所述第一入口处增加一个缓存器,所述缓存器的容量为小于预设的容量阈值(例如,缓存器的容量为1,仅能容纳一个计算结果),所述缓存器设置为缓存该第一仲裁器21对应的计算机单元1发送的计算结果。
在本申请的示例性实施例中,当所述第一仲裁器21所包含的第一入口a1和第二入口b1中均收到计算结果时,可以先将所述第一入口a1接收到的所述计算结果缓存到相应的缓存器内,并将所述第二入口b1接收到的计算结果发送到该第一仲裁器21的出口c1进行输出。
在本申请的示例性实施例中,在所述第二入口b1接收到的计算结果发送至出口c1后,将所述缓存器中缓存的计算结果发送到该第一仲裁器21的出口c1进行输出;其中,如果在将所述缓存器中缓存的计算结果发送到该第一仲裁器21的出口c1之前接收到该缓存器对应的计算单元1发送的新的计算结果,则抛弃所述缓存器中缓存的计算结果,并将所述新的计算结果发送到该第一仲裁器21的第一出口a1进行输出。
在本申请的示例性实施例中,所述方法还包括:根据挽回的算力损失大小以及需要增加的资源多少确定是否设置缓存器;其中,当挽回的算力损失大于或等于预设的算力阈值,并且需要增加的资源占芯片总资源的比例小于或等于预设的比例阈值时确定设置所述缓存器;当挽回的算力损失小于预设的算力阈值,和/或需要增加的资源占芯片总资源的比例大于预设的比例阈值时确定不设置所述缓存器。
在本申请的示例性实施例中,当n的数量较大时,通过在第一仲裁器21的第一入口a1增加1个缓存器,缓存计算单元1的计算结果,并在当前缓存的计算结果遇到新发送的计算结果时抛弃缓存的计算结果这一方案,使得算力损失进一步降低,但该方案可能会导致芯片资源增加,因此可以结合挽回的算力损失以及需要增加的资源综合考虑是否在入口1加缓存器,例如在n为256时,最多也只能挽回2.9802322387695312e-08的算力,如果在第一入口a1增加的缓存资源所占的芯片资源超过这个值,就不应该在第一入口a1增加缓存。
在本申请的示例性实施例中,本申请实施例方案至少包括以下优势:
1、计算单元可以紧密排列,充分利用计算空间;
2、仲裁器对计算单元没有反压,可以使得计算单元设计简单,提高了工作频率;
3、对芯片的算力几乎没有影响。
本申请实施例还提供了一种芯片10,如图6所示,包括所述的数据收集结构A。
在本申请的示例性实施例中,前述的数据收集结构和方法中的任意实施例均适用于该芯片10实施例中,在此不再一一赘述。
本申请实施例还提供了一种数据收集系统1,如图7所示,包括芯片10、处理器11和计算机可读存储介质12,所述处理器11将所述芯片10中的计算结果存储到所述计算机可读存储介质12中。
在本申请的示例性实施例中,前述的数据收集结构和方法中的任意实施例均适用于该数据收集系统1实施例中,在此不再一一赘述。
在本申请的示例性实施例中,处理器11和计算机可读存储介质12可以由上述的控制单元实现。
在本申请的示例性实施例中,前述的数据收集结构和方法中的任意实施例均适用于该计算机可读存储介质实施例中,在此不再一一赘述。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (10)
1.一种数据收集结构,其特征在于,包括:多个计算单元和多个仲裁器;所述多个仲裁器包括与每个计算单元对应的第一仲裁器;
多个所述计算单元通过多个所述第一仲裁器依次相连接,构成数据收集链,并且处于链尾的计算单元与控制单元相连接;
其中,所述仲裁器设置为接收所述计算单元发送的计算结果并沿所述数据收集链传输至所述控制单元。
2.根据权利要求1所述的数据收集结构,其特征在于,每个所述第一仲裁器包括第一入口、第二入口和出口;
所述每个计算单元分别通过与该计算单元对应的第一仲裁器连接到下一个计算单元,包括:
每个所述第一仲裁器的第一入口与该第一仲裁器所对应的计算单元的输出接口相连接;
每个所述第一仲裁器的第二入口与上一个计算单元对应的第一仲裁器的出口相连接。
3.根据权利要求1所述的数据收集结构,其特征在于,所述数据收集链为一条时;所述处于链尾的计算单元与控制单元相连接,包括:
处于链尾的所述计算单元对应的所述第一仲裁器通过该第一仲裁器的出口直接与所述控制单元相连接;
所述数据收集链为多条时;所述多个仲裁器还包括:第二仲裁器;每个第二仲裁器包括第一入口、第二入口和出口;
所述处于链尾的计算单元与控制单元相连接,包括:
多条所述数据收集链的处于链尾的所述计算单元对应的第一仲裁器的出口通过所述第二仲裁器与所述控制单元相连接。
4.根据权利要求3所述的数据收集结构,其特征在于,所述多条所述数据收集链的处于链尾的所述计算单元对应的第一仲裁器的出口通过所述第二仲裁器与所述控制单元相连接,包括:
每条所述数据收集链的处于链尾的所述计算单元对应的第一仲裁器的出口与所述第二仲裁器的第一入口或所述第二仲裁器的第二入口相连接;
所述第二仲裁器的出口与所述控制单元的输入接口相连,或者与下一个第二仲裁器的第一入口或第二入口相连。
5.根据权利要求2所述的数据收集结构,其特征在于,每个所述第一仲裁器的第一入口处设置有缓存器;
所述缓存器设置为缓存该第一仲裁器对应的计算机单元发送的计算结果。
6.一种数据收集方法,其特征在于,基于如权利要求1-5任意一项所述的数据收集结构,应用于所述数据收集结构中的仲裁器;所述仲裁器包括第一仲裁器,或者包括所述第一仲裁器和第二仲裁器;所述方法包括:
获取对应的计算单元提交的和/或上一级仲裁器传输的计算结果;
将所述计算结果直接或选择性地沿数据收集链进行传输,直至传输到所述控制单元。
7.根据权利要求6所述的数据收集方法,其特征在于,所述将所述计算结果直接或选择性地沿数据收集链进行传输,包括:
当所述仲裁器所包含的第一入口和第二入口中任意一个收到所述计算结果时,由该仲裁器将所述计算结果直接发送到该仲裁器的出口进行输出;
当所述仲裁器所包含的第一入口和第二入口中均收到计算结果时,由该仲裁器根据预设的选择策略将两个所述计算结果择一发送到该仲裁器的出口进行输出。
8.根据权利要求7所述的数据收集方法,其特征在于,当所述计算单元的数量小于预设的数量阈值时,所述选择策略包括:
不在所述第一仲裁器的第一入口处设置缓存器,从所述第一入口和所述第二入口接收到的计算结果中任意选择一个,将选中的计算结果发送至该仲裁器的出口;
当所述计算单元的数量大于或等于预设的数量阈值时,所述选择策略包括:
预先在所述第一仲裁器的第一入口处设置缓存器,将所述第一入口接收到的所述计算结果发送请求包含的计算结果缓存到该第一入口处预先设置的缓存器内;
在发送完所述第一入口接收到的所述计算结果以后发送所述缓存器中缓存的计算结果或者发送此时所述第一入口接收到的新的计算结果。
9.一种芯片,其特征在于,包括如权利要求1-5任意一项所述的数据收集结构。
10.一种数据收集系统,其特征在于,包括权利要求9所述的芯片、处理器和计算机可读存储介质,所述处理器将所述芯片中的计算结果存储到所述计算机可读存储介质中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211684700.8A CN115905088B (zh) | 2022-12-27 | 2022-12-27 | 一种数据收集结构、方法、芯片和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211684700.8A CN115905088B (zh) | 2022-12-27 | 2022-12-27 | 一种数据收集结构、方法、芯片和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115905088A true CN115905088A (zh) | 2023-04-04 |
CN115905088B CN115905088B (zh) | 2023-07-14 |
Family
ID=86471046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211684700.8A Active CN115905088B (zh) | 2022-12-27 | 2022-12-27 | 一种数据收集结构、方法、芯片和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115905088B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1424024A1 (ru) * | 1987-02-16 | 1988-09-15 | Предприятие П/Я Г-4173 | Система сбора и обработки информации |
US6434649B1 (en) * | 1998-10-14 | 2002-08-13 | Hitachi, Ltd. | Data streamer |
US20180089122A1 (en) * | 2016-09-29 | 2018-03-29 | Yanir Oz | System, apparatus and method for performing distributed arbitration |
US20190026237A1 (en) * | 2017-07-24 | 2019-01-24 | Tesla, Inc. | Computational array microprocessor system with variable latency memory access |
CN111782580A (zh) * | 2020-06-30 | 2020-10-16 | 北京百度网讯科技有限公司 | 复杂计算装置、方法、人工智能芯片和电子设备 |
CN112130752A (zh) * | 2019-06-24 | 2020-12-25 | 英特尔公司 | 共享本地存储器读取合并和多播返回 |
CN113722249A (zh) * | 2021-11-01 | 2021-11-30 | 中科声龙科技发展(北京)有限公司 | 数据处理装置及数据处理方法 |
CN114138706A (zh) * | 2021-10-29 | 2022-03-04 | 北京中科昊芯科技有限公司 | 一种多功能仲裁器、仲裁方法、芯片以及产品 |
CN114928578A (zh) * | 2022-07-19 | 2022-08-19 | 中科声龙科技发展(北京)有限公司 | 芯片结构 |
CN114928577A (zh) * | 2022-07-19 | 2022-08-19 | 中科声龙科技发展(北京)有限公司 | 工作量证明芯片及其处理方法 |
CN114925004A (zh) * | 2022-07-19 | 2022-08-19 | 中科声龙科技发展(北京)有限公司 | 轮询仲裁器及其轮询仲裁方法和芯片 |
CN115002050A (zh) * | 2022-07-18 | 2022-09-02 | 中科声龙科技发展(北京)有限公司 | 工作量证明芯片 |
JP2022163093A (ja) * | 2019-03-14 | 2022-10-25 | 国立大学法人東海国立大学機構 | 通信システム |
CN115328828A (zh) * | 2022-10-17 | 2022-11-11 | 中科声龙科技发展(北京)有限公司 | 数据存储系统及其数据存储结构的数据寻址和返回方法 |
-
2022
- 2022-12-27 CN CN202211684700.8A patent/CN115905088B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1424024A1 (ru) * | 1987-02-16 | 1988-09-15 | Предприятие П/Я Г-4173 | Система сбора и обработки информации |
US6434649B1 (en) * | 1998-10-14 | 2002-08-13 | Hitachi, Ltd. | Data streamer |
US20180089122A1 (en) * | 2016-09-29 | 2018-03-29 | Yanir Oz | System, apparatus and method for performing distributed arbitration |
US20190026237A1 (en) * | 2017-07-24 | 2019-01-24 | Tesla, Inc. | Computational array microprocessor system with variable latency memory access |
JP2022163093A (ja) * | 2019-03-14 | 2022-10-25 | 国立大学法人東海国立大学機構 | 通信システム |
CN112130752A (zh) * | 2019-06-24 | 2020-12-25 | 英特尔公司 | 共享本地存储器读取合并和多播返回 |
CN111782580A (zh) * | 2020-06-30 | 2020-10-16 | 北京百度网讯科技有限公司 | 复杂计算装置、方法、人工智能芯片和电子设备 |
CN114138706A (zh) * | 2021-10-29 | 2022-03-04 | 北京中科昊芯科技有限公司 | 一种多功能仲裁器、仲裁方法、芯片以及产品 |
CN113722249A (zh) * | 2021-11-01 | 2021-11-30 | 中科声龙科技发展(北京)有限公司 | 数据处理装置及数据处理方法 |
CN115002050A (zh) * | 2022-07-18 | 2022-09-02 | 中科声龙科技发展(北京)有限公司 | 工作量证明芯片 |
CN114928577A (zh) * | 2022-07-19 | 2022-08-19 | 中科声龙科技发展(北京)有限公司 | 工作量证明芯片及其处理方法 |
CN114925004A (zh) * | 2022-07-19 | 2022-08-19 | 中科声龙科技发展(北京)有限公司 | 轮询仲裁器及其轮询仲裁方法和芯片 |
CN114928578A (zh) * | 2022-07-19 | 2022-08-19 | 中科声龙科技发展(北京)有限公司 | 芯片结构 |
CN115328828A (zh) * | 2022-10-17 | 2022-11-11 | 中科声龙科技发展(北京)有限公司 | 数据存储系统及其数据存储结构的数据寻址和返回方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115905088B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112433881A (zh) | 一种分布式存储系统的数据恢复方法和装置 | |
CN114928577B (zh) | 工作量证明芯片及其处理方法 | |
CN115905088B (zh) | 一种数据收集结构、方法、芯片和系统 | |
CN110796229A (zh) | 一种实现卷积运算的装置及方法 | |
CN113746763B (zh) | 一种数据处理的方法、装置和设备 | |
WO2024138796A1 (zh) | 一种数据收集结构、方法、芯片和系统 | |
CN112631757B (zh) | 一种ddr4多用户访问的调度方法和设备 | |
CN116185649A (zh) | 存储控制方法、存储控制器、存储芯片、网卡、可读介质 | |
CN210804421U (zh) | 一种服务器系统 | |
CN115002052A (zh) | 一种分层的缓存控制器、控制方法及控制设备 | |
CN114861895A (zh) | 神经网络神经元信息存储方法及装置、众核系统、介质 | |
CN114884936A (zh) | 终端设备的数据处理方法、装置、设备及介质 | |
CN209803775U (zh) | 数据处理装置 | |
CN112118012A (zh) | 译码器迭代次数确定方法及装置 | |
CN111459544B (zh) | 安全计算机板卡中多对线程数据表决方法、介质和装置 | |
CN113419988B (zh) | 异构多核数据的传输方法、装置、设备及存储介质 | |
CN117424932B (zh) | 智能物联网边缘网关的数据缓存系统及方法 | |
CN114792128A (zh) | 权重数据传输的方法、众核系统、电子设备、介质 | |
CN115883645B (zh) | 通信配置方法、电子设备及存储介质 | |
CN113099488B (zh) | 解决网络拥塞的方法、装置、计算设备及计算机存储介质 | |
CN117478749A (zh) | 一种发送取数请求的方法及装置、计算设备 | |
CN114647380B (zh) | 一种数据存算一体固态硬盘模组及系统 | |
CN212873459U (zh) | 一种用于数据压缩存储的系统 | |
CN109324826B (zh) | 计数装置和计数方法 | |
CN110677463B (zh) | 并行数据传输方法、装置、介质及电子设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |