CN109947556A - 任务分配方法 - Google Patents
任务分配方法 Download PDFInfo
- Publication number
- CN109947556A CN109947556A CN201711402440.XA CN201711402440A CN109947556A CN 109947556 A CN109947556 A CN 109947556A CN 201711402440 A CN201711402440 A CN 201711402440A CN 109947556 A CN109947556 A CN 109947556A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- chip
- node chip
- command
- 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
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000012545 processing Methods 0.000 claims abstract description 96
- 230000005540 biological transmission Effects 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 16
- 230000009849 deactivation Effects 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 14
- 239000013078 crystal Substances 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 3
- 230000006978 adaptation Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 12
- 238000003745 diagnosis Methods 0.000 description 9
- 238000013135 deep learning Methods 0.000 description 3
- 238000004377 microelectronic Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种任务分配方法。所述任务分配方法包括:向所述数据处理装置的节点芯片发送计算任务命令;数据处理装置的各节点芯片根据各自任务进行运算;数据处理装置向外部控制装置返回运算结果。本发明实施例能够有效避免串联节点芯片之间的数据发送的冲突,通过较少的指令交互实现串联节点芯片的计算任务的分配。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种任务分配方法。
背景技术
目前,随着机器学习尤其是深度学习技术在各领域的应用和发展,对计算装置的数据处理能力提出了更高的要求。GPU处理芯片因为其优于传统CPU的强大的图形处理和并行运算能力,已广泛应用于各领域的数据运算任务,成为通用的深度学习计算平台。
然而,单一GPU架构的计算能力仍然受限,无法满足深度学习、哈希运算等对高强度的数据计算能力的需求。为此,申请号为CN 201610312586.4的中国发明专利申请提出了一种扩展数据处理装置的运算能力的方案,如图1所示。该方案提出了一种由多个节点芯片串联连接的数据处理装置,该数据处理装置经由位于下行通信方向的首节点芯片的外部接口接收数据处理任务,通过串行连接的各级节点芯片对数据处理任务进行运算处理,并通过首节点芯片的外部接口返回数据处理结果。该方案中节点芯片的数量可以根据数据处理任务的运算能力需求进行扩展,并且只需要一个节点芯片与外部设备进行通信连接,不占用外部设备的通信接口,因此,可以提供较强的易于扩展的数据处理能力。
虽然上述现有技术将节点芯片串联连接,每个节点芯片都负责一部分计算处理,加快了数据处理速度,但是各节点芯片之间进行数据发送很容易产生冲突。并且,该数据处理装置接收外部设备传输的数据处理任务,需要在各节点芯片之间分配数据处理任务,如何在多个节点芯片之间分配任务以减少信令的交互也是需要考虑的问题。此外,在串联的各节点芯片处理同一数据处理任务时,可能存在某个节点芯片发生宕机的故障情况,从而造成整个节点芯片组无法正常工作,如何快速进行节点芯片的故障诊断也是需要解决的问题。
发明内容
为了解决上述问题,本发明提出一种任务分配方法。
所述任务分配方法应用于具有多个依次串联连接的节点芯片的数据处理装置,所述方法包括如下步骤:
向所述数据处理装置的节点芯片发送计算任务命令;
数据处理装置的各节点芯片根据各自任务进行运算;
数据处理装置向外部控制装置返回运算结果。
可选地,所述向所述数据处理装置的节点芯片发送计算任务命令,包括:
向所述数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态;
向所述数据处理装置的节点芯片发送地址分配命令,依次为各节点芯片分配芯片地址;
根据各节点芯片的芯片地址,为各节点芯片分配计算任务。
可选地,所述向数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态,包括:
向所述数据处理装置的各节点芯片分别发送命令,使得各节点芯片依次进入去活状态;或者,
向所述数据处理装置的所有节点芯片发送一次命令,使得各节点芯片同时进入去活状态。
可选地,所述依次为各节点芯片分配芯片地址,包括:
当节点芯片处于去活状态时,解析所述地址分配命令,将为其分配的芯片地址保存至寄存器,并转入激活状态;和/或,
当节点芯片处于激活状态时,将所述地址分配命令转发给下一级节点芯片。
可选地,还包括:
节点芯片根据为其分配的计算任务执行哈希运算。
可选地,所述数据处理装置包括多个依次串联连接的节点芯片,首级节点芯片的数据输出单元与外部控制装置的数据输入单元连接,用于将数据处理装置的运算结果返回给外部控制装置;上级节点芯片的数据输入单元与下级节点芯片的数据输出单元连接,用于接收下级节点芯片运算后得到的数据;所述首级节点芯片的一个或多个数据输入单元与外部控制装置的一个或多个数据输出单元连接,以接收外部控制装置的数据输入或者命令输入,上级节点芯片的一个或多个数据输出单元与下级节点芯片的一个或多个数据输入单元连接,用于向下级节点芯片发送数据输入或者命令输入。
可选地,所述节点芯片包括控制单元和多个运算算子,所述运算算子分为两组或者多组,每组运算算子包括两个或多个串联连接的运算算子,每组运算算子中的首级运算算子与所述控制单元连接。
可选地,所述运算算子包括:运算部件和存储部件;其中:
所述运算部件与上级运算算子的存储部件连接,用于读取上级运算算子存储部件中存储的数据并进行运算;
所述运算部件与存储部件连接,用于将运算得到的数据存储在存储部件中,供下级运算算子调用。
可选地,所述数据处理装置还包括信号转换单元,将两个节点芯片连接,用于进行信号电压适配。
可选地,所述数据处理装置还包括一个或多个时钟晶体,所述时钟晶体的时钟信号输出接口与所述数据处理装置中的一个节点芯片的时钟信号输入接口连接。
可选地,所述节点芯片设置有忙信号输入命令和忙信号输出命令,所述忙信号输入命令和忙信号输出命令用于控制相应节点芯片在上行通信方向上的数据发送。
可选地,所述忙信号输出命令为低/高电平时,指示可以转发下一级节点芯片返回的数据;所述忙信号输出命令为高/低电平时,指示本级节点芯片或者上一级节点芯片将要或正在发送数据。
可选地,当节点芯片的忙信号输入命令为高/低电平时,该节点芯片的忙信号输出命令也为高/低电平。
可选地,本级节点芯片有数据等待发送时,当检测到忙信号输入管脚为高/低电平时,等待所述忙信号输入管脚转为低/高电平时,再发送数据;当检测到所述忙信号输入管脚为低/高电平时,立即发送数据;和/或,
本级节点芯片有数据等待发送时,将忙信号输出管脚输出为高/低电平,当数据发送完成后将所述忙信号输出管脚输出为低/高电平。
可选地,本级节点芯片正在发送数据时,若检测到忙信号输入管脚为高/低电平,继续发送数据,直至缓存队列中的全部数据发送完成。
可选地,本级节点芯片的忙信号输出管脚输出为高/低电平后,等待预定的保护间隔时间,再进行数据的传输。
相比现有技术,本发明的一些实施方式通过配置忙信号输入输出管脚来控制串联节点芯片之间的数据发送,有效避免了节点芯片之间的数据发送冲突;通过控制单元和节点芯片之间较少的指令交互实现了串联节点芯片的计算任务的分配,充分利用了串联节点芯片的计算能力。
附图说明
图1是现有技术中一种数据处理装置的结构示意图;
图2是根据本发明一实施例的数据处理装置的结构示意图;
图3是根据本公开一实施例的节点芯片的结构框图;
图4是根据本公开一实施例的运算算子的结构框图;
图5是根据本发明一实施例的数据发送方法的流程图;
图6是根据本发明另一实施例的数据发送方法的流程图;
图7是根据本发明另一实施例的数据发送方法的流程图;
图8是根据本发明一实施例的任务分配方法的流程图;
图9是根据本发明一实施例的任务分配方法的步骤S21的流程图;
图10是根据本发明另一实施例的任务分配方法的流程图;
图11是根据本发明一实施例的故障诊断方法的流程图;
图12是根据本发明另一实施例的故障诊断方法的流程图;
图13是根据本发明一实施例的计算设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图2是根据本发明一实施例的数据处理装置10的结构示意图。如图2所示,所述数据处理装置10包括多个依次串联连接的节点芯片20,其中:
位于下行通信方向的首级节点芯片通过外部接口接收外部控制装置的命令信号,传输给一个以上的节点芯片进行处理,并通过外部接口向外部控制装置返回计算数据;
所述节点芯片20设置有忙信号输入管脚BI和忙信号输出管脚BO,位于下行通信方向的节点芯片20的忙信号输出管脚BO耦接至下一级节点芯片的忙信号输入管脚BI,所述忙信号输入管脚和忙信号输出管脚用于控制相应节点芯片20在上行通信方向上的数据发送。
在一些实施方式中,所述节点芯片20可以采用ASIC专用集成电路、GPU、DSP或FPGA芯片实现。
在一些实施方式中,忙信号输出管脚BO为低/高电平时,指示可以转发下一级节点芯片返回的数据,忙信号输出管脚BO为高/低电平时,指示本级节点芯片或者上一级节点芯片将要或正在发送数据。
在一些实施方式中,当节点芯片20的所述忙信号输入管脚BI为高/低电平时,该节点芯片的所述忙信号输出管脚BO相应地也为高/低电平。
在一些实施方式中,本级节点芯片20的缓存队列FIFO中有等待发送的数据时,当检测到自身的忙信号输入管脚BI为高/低电平时,需要等待所述忙信号输入管脚BI转为低/高电平时,才可以发送数据;当检测到自身的忙信号输入管脚BI为低/高电平时,可以立即发送数据。
在一些实施方式中,当本级节点芯片20正在发送数据时,如果检测到自身的所述忙信号输入管脚BI为高/低电平时,数据发送不受影响,即继续发送数据,直至缓存队列FIFO中的全部数据发送完成。
在一些实施方式中,本级节点芯片20的缓存队列FIFO中有等待发送的数据时,将其自身的忙信号输出管脚BO输出为高/低电平,当数据发送完成后将其自身的忙信号输出管脚BO输出为低/高电平。本发明实施例中,当节点芯片接收复位信号时,其忙信号输出管脚BO就可以变为低/高电平。
在一些实施方式中,本级节点芯片20的所述忙信号输出管脚BO输出为高/低电平后,会等待预定的保护间隔时间GAP,再进行数据的传输。
设定保护间隔时间GAP是为了在本级节点芯片需要发送数据时,还要保证下一级节点芯片没有同时在发送数据。下一级节点芯片发送数据包含两种可能的情形:一是下一级节点芯片正在发送自己的数据,二是下一级节点芯片正在转发更往后的节点芯片发送的数据。
如果本级节点芯片在需要发送数据时,其将忙信号输出管脚BO输出为高/低电平,此时即便下一级节点芯片没有数据正在被转发,也需要等待一个保护间隔时间GAP,这是为了避免当忙信号输出管脚BO刚刚被置为高/低电平的时候,下一级节点芯片已经开发发送数据了。具体实施时,保护间隔时间GAP至少要有8比特的数据传输时间,比如可以设定保护间隔时间GAP是16比特的数据传输时间。
如果有下一级节点芯片正在发送数据,本级节点芯片也要等待一个保护间隔时间GAP,以确保下一级节点芯片的数据发送结束,然后再开始发送本级节点芯片的数据。由于在此之前本级节点芯片的忙信号输出管脚BO已经输出为高/低电平,那么下一级节点芯片后续就不会再继续发送数据了。
实际应用中还有一种情形,当数据处理装置的首级节点芯片需要发送数据的时候,其把忙信号输出管脚BO输出为高/低电平,等链路上最后一级节点芯片检测到忙信号输入管脚BI为高/低电平的时候,已经经过了N级延时。如果最后一级节点芯片在没有检测到忙信号输入管脚BI为高/低电平时,就已经往上行通信方向发送数据,那么它发送出去的数据信号,也是需要经过N级延时才到达首级节点芯片。因此,在设定保护间隔时间GAP时,这两个N级延时,也要控制在保护间隔时间GAP之内。
在一些实施方式中,设定保护间隔时间GAP还需要根据节点芯片之间采用的不同通信模式进行设定。以256个节点芯片串联为例,具体而言:
1)当节点芯片采用异步串行通信模式(UART)时,考虑到节点芯片内部的线延时、PCB延时,这种异步通信模式下,采用16比特的UART传输时间作为保护间隔时间等待是足够的。
2)当节点芯片采用同步串行通信模式时,在256个节点芯片级联的情况下,考虑到从忙信号输出管脚BO到忙信号输入管脚BI的延时时间,而数据在每一级节点芯片转发需要一个时钟周期,总体延时就需要256个时钟周期。因此,在实际电路中可以设定等待512个时钟周期。
在一些实施方式中,所述保护间隔时间根据信号或命令的传输时延和/或芯片的运算速度来设置。
图3是根据本公开一实施例的节点芯片的结构框图,如图3所示,在该实施例中,所述节点芯片包括:控制单元201、两组或者多组运算算子202和一个或多个输入输出接口203,其中:
所述控制单元201与所述输入输出接口203连接,用于与外部进行数据交换;
每组运算算子包括两个或多个串联连接的运算算子。
一个节点芯片上通常都需要设置多个运算算子,为了节省布线空间,降低布线复杂度,更方便控制单元的控制,可以根据节点芯片的可用面积、运算算子的工作特点、运算算子的性能、运算算子的功能或其他因素将多个运算算子分为两组或多组运算算子组,并使每一组运算算子中的运算算子互相串联连接。
上述仅为示例性的说明,在实际操作中,本领域技术人员可根据实际应用的需要对于运算算子进行分组,本公开对于具体分组方法不作具体限定。
在本公开一实施方式中,每组运算算子中的首级运算算子与所述控制单元连接。
由于每组运算算子中的运算算子互相串联连接,因此,每组运算算子中只要有一个运算算子与控制单元连接就可以了。在本公开一实施方式中,可使每组运算算子中的首级运算算子与所述控制单元连接,所述首级运算算子通常是距离控制单元最近的运算算子,这样就可以进一步地节省布线空间,降低布线复杂度。
上述仅为示例性的说明,在实际操作中,本领域技术人员可根据实际应用的需要选择与控制单元连接的运算算子,本公开对其不作具体限定。
在本公开一实施方式中,所述输入输出接口203为两个,分设在所述节点芯片的两端,两个输入输出接口均与所述控制单元连接,使控制单元通过输入输出接口与外部进行数据交换。
上述仅为示例性的说明,在实际操作中,本领域技术人员可根据实际应用的需要选择输入输出接口的安设位置,本公开对其不作具体限定。
图4是根据本公开一实施例的运算算子202的结构框图,如图4所示,在本公开一实施方式中,所述运算算子202包括:一个或多个运算部件2021、一个或多个存储部件2022和时钟输入接口2023,其中:
所述运算部件2021与上级运算算子的存储部件2022连接,用于读取上级运算算子存储部件2022中存储的数据并进行运算;
所述运算部件2021与存储部件2022连接,用于将运算得到的数据存储在存储部件2022中,供下级运算算子调用;
所述时钟输入接口2023与所述控制单元的时钟输出接口连接。
在该实施方式中,通过互相串联的运算算子的逐级数据连接,每个运算算子都能够获取自己需要的数据,而且这种串联结构能够节省布线空间,降低布线复杂度。
进一步地,所述运算算子由微电子电路组成,而所述微电子电路由COMS管、NMOS管组成。
在实际应用中,本领域技术人员可根据实际应用的需要选择与运算目的相匹配的运算算子和存储单元,本公开对于运算算子和存储单元的选择、相关型号不作具体限定。
在一些实施方式中,所述首级节点芯片的数据输出单元与外部控制装置的数据输入单元连接,用于将数据处理装置的运算结果返回给外部控制装置;上级节点芯片的数据输入单元与下级节点芯片的数据输出单元连接,用于接收下级节点芯片运算后得到的数据;所述首级节点芯片的一个或多个数据输入单元与外部控制装置的一个或多个数据输出单元连接,以接收外部控制装置的数据输入或者命令输入,上级节点芯片的一个或多个数据输出单元与下级节点芯片的一个或多个数据输入单元连接,用于向下级节点芯片发送数据输入或者命令输入。
在一些实施方式中,所述数据处理装置还包括信号转换单元,将两个节点芯片连接,用于进行信号电压适配。
在一些实施方式中,还包括一个或多个时钟晶体,所述时钟晶体的时钟信号输出接口与所述数据处理装置中的一个节点芯片的时钟信号输入接口连接。
图5是基于本发明数据处理装置10的数据发送方法的一个实施方式的流程图。如图5所示,基于所述数据处理装置的数据发送方法包括以下步骤:
步骤S1,本级节点芯片判断缓存队列中是否有等待发送的数据;
步骤S2,如果有,则检测所述忙信号输入管脚是否为高/低电平;
步骤S3,如果所述忙信号输入管脚为高/低电平,则等待所述忙信号输入管脚从高/低电平变为低/高电平后,开始发送缓存队列中的数据;
步骤S4,如果所述忙信号输入管脚为低/高电平,则立即发送缓存队列中的数据。
在一些实施方式中,所述数据发送方法进一步包括:
本级节点芯片检测到所述忙信号输入管脚为高/低电平时,将所述忙信号输出管脚也输出为高/低电平。
图6是基于本发明数据处理装置10的数据发送方法的另一个实施方式的流程图。如图6所示,基于所述数据处理装置的数据发送方法包括以下步骤:
步骤S11,本级节点芯片判断缓存队列中是否有等待发送的数据;
步骤S12,如果有,则将所述忙信号输出管脚输出为高/低电平;
步骤S13,检测所述忙信号输入管脚是否为高/低电平;
步骤S14,如果所述忙信号输入管脚为低/高电平,则立即发送缓存队列中的数据;
步骤S15,判断所述缓存队列中的数据是否发送完成;
步骤S16,如果所述缓存队列中的数据已经发送完成,则将所述忙信号输出管脚输出为低/高电平;
步骤S17,如果所述缓存队列中的数据还没有发送完成时检测到所述忙信号输入管脚为高/低电平,则继续发送数据直至缓存队列中的全部数据发送完成。
图7是基于本发明数据处理装置10的数据发送方法的另一个实施方式的流程图。如图7所示,在图6所述实施例的基础上,所述基于所述数据处理装置的数据发送方法,在步骤S12之后还包括以下步骤:
步骤S18,在本级节点芯片的所述忙信号输出管脚输出为高/低电平后,等待预定的保护间隔时间,再进行数据的传输,以确保下一级节点芯片不会同时发送数据。
在一些实施方式中,所述保护间隔时间根据节点芯片之间采取同步或异步通信模式而分别设定。
如之前所示本发明的一些实施例,通过配置忙信号输入输出管脚来控制串联节点芯片之间的数据发送,并且结合保护间隔时间的设置,有效避免了节点芯片之间的数据发送冲突。
图8是基于本发明数据处理装置10的任务分配方法的一个实施方式的流程图。如图8所示,所述基于所述数据处理装置的任务分配方法适用于控制单元,所述方法包括以下步骤:
步骤S21,向所述数据处理装置的节点芯片发送计算任务命令;
步骤S22,数据处理装置的各节点芯片根据各自任务进行运算;
步骤S23,数据处理装置向外部控制装置返回运算结果。
其中,所述步骤S21,即向所述数据处理装置的节点芯片发送计算任务命令的步骤,包括以下步骤:
步骤S211,向所述数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态;
步骤S212,向所述数据处理装置的节点芯片发送地址分配命令,依次为各节点芯片分配芯片地址;
步骤S213,根据各节点芯片的芯片地址,为各节点芯片分配计算任务。
在一些实施方式中,所述向所述数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态的步骤包括:
向所述数据处理装置的各节点芯片分别发送命令,使得各节点芯片依次进入去活状态。
在一些实施方式中,所述向所述数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态的步骤包括:
向所述数据处理装置的所有节点芯片发送一次命令,使得各节点芯片同时进入去活状态。
图9是基于本发明数据处理装置10的任务分配方法的另一个实施方式的流程图。如图9所示,在图8所示实施例基础上,所述基于所述数据处理装置的任务分配方法的步骤S21中,在步骤S213之后还包括以下步骤:
步骤S214,节点芯片根据为其分配的计算任务,执行一次或多次哈希运算。
具体而言,哈希运算可以包括加密哈希运算或哈希碰撞运算。
图10是基于本发明数据处理装置10的任务分配方法的另一个实施方式的流程图。如图10所示,所述任务分配方法适用于节点芯片,所述方法包括以下步骤:
步骤S31,接收控制单元发送的地址分配命令;
步骤S32,判断节点芯片当前是否处于去活状态;
步骤S33,当节点芯片处于去活状态时,解析控制单元发送的地址分配命令,将为其分配的芯片地址保存至寄存器,并转入激活状态;
步骤S34,当节点芯片处于激活状态时,该节点芯片不解析控制单元发送的地址分配命令,直接将其转发给下一级节点芯片。
数据处理装置10采用的任务输入命令格式包括HCN字段、起始随机数偏移量SNO字段。HCN字段用于控制每个节点芯片的计算次数,例如,假设执行的计算任务需要2^32次计算,即随机数nonce从初值开始递增,遍历2^32个数值,则对于32个节点芯片串联连接,每个节点芯片只需要计算2^27步。起始随机数偏移量SNO字段包括一个数字。
数据处理装置10采用的SetAddress地址分配命令格式包括芯片地址ChipAddr字段,ChipAddr字段指定单个节点芯片的芯片地址。每个节点芯片的计算任务由SNO和ChipAddr字段中的数值确定。
对于芯片地址的分配,首先,控制单元发出一个ChainInactive命令将一个节点芯片转入去活(Inactive)状态。具体实施中,可以所有节点芯片一起进入去活(Inactive)状态,也可以一个一个设置去活(Inactive)状态。然后,控制单元向这个节点芯片发送SetAddress地址分配命令,来给该节点芯片分配任意地址。
在去活(Inactive)状态下,节点芯片会解析SetAddress地址分配命令并在寄存器中保存其地址,然后转入激活(Active)状态。具体实施中,分配地址后的节点芯片可以根据控制单元的命令进入激活(Active)状态,也可以解析地址分配命令后自动进入激活(Active)状态。
在激活(Active)状态下,节点芯片不解析SetAddress地址分配命令,直接将其转发给下一级节点芯片。对于N个节点芯片串联,控制单元需要依次发出N个SetAddress命令来一个一个给节点芯片分配任意地址。例如,对于256颗节点芯片级连的矿机,控制CPU需要连续发出256个SetAddress地址分配命令才能完成所有节点芯片的地址设置。
图11是基于本发明数据处理装置10的故障诊断方法的一个实施方式的流程图。如图11所示,所述基于所述数据处理装置的故障诊断方法适用于控制单元,所述方法包括以下步骤:
步骤S41,向所述数据处理装置的节点芯片发送工作状态查询命令;
步骤S42,所述数据处理装置的各节点芯片依次转发所述工作状态查询命令;
步骤S43,判断各节点芯片的芯片地址是否与所述工作状态查询命令中指定的芯片地址相匹配;
步骤S44,若节点芯片的芯片地址与所述工作状态查询命令中指定的芯片地址相匹配,返回寄存器数据;
步骤S45,根据节点芯片返回的寄存器数据,判断节点芯片的工作状态。
在一些实施方式中,所述故障诊断方法进一步包括:
若检测发现未接收到与所述工作状态查询命令中指定的芯片地址相匹配的节点芯片返回的寄存器数据,则判断该节点芯片发生故障。
图12是基于本发明数据处理装置10的故障诊断方法的另一个实施方式的流程图。如图12所示,所述基于所述数据处理装置的故障诊断方法适用于控制单元,所述方法包括以下步骤:
步骤S51,向所述数据处理装置的节点芯片发送工作状态查询命令;
步骤S52,所述数据处理装置的各节点芯片依次转发所述工作状态查询命令;
步骤S53,判断所述工作状态查询命令是否指定了查询全部节点芯片的工作状态;
步骤S54,如果是,则各节点芯片依次返回寄存器数据;
步骤S55,根据节点芯片返回的寄存器数据,判断节点芯片的工作状态。
在一些实施方式中,所述故障诊断方法进一步包括:
当所述工作状态查询命令指定了查询全部节点芯片的工作状态时,控制单元根据接收到的节点芯片返回的寄存器数据的数目,判断哪些节点芯片发生故障。
当节点芯片接收到控制单元的工作状态查询命名后,首先转发给下一级节点芯片,对于芯片地址与命令中地址相匹配的节点芯片会通过UAPT接口把相应寄存器的数值(例如,正在运算的数值)返回给控制单元。控制单元可以根据收到的节点芯片应答的数目来确定装置中的芯片数目。从而,可以利用命令进行节点芯片组的故障诊断,如果正在工作的时候某个节点芯片出现了故障,一方面可以从数据处理装置的哈希率应该基本可以判断出来,也可以根据哪个节点芯片长时间不回复运算数值来加以判断。
图13是基于本发明一实施例的计算设备40的结构示意图。如图13所示,所述计算设备40包括前述数据处理装置10和控制单元30,所述数据处理装置10通过外部接口与所述控制单元30通信连接。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种应用于具有多个依次串联连接的节点芯片的数据处理装置的任务分配方法,其特征在于,所述方法包括如下步骤:
向所述数据处理装置的节点芯片发送计算任务命令;
数据处理装置的各节点芯片根据各自任务进行运算;
数据处理装置向外部控制装置返回运算结果。
2.根据权利要求1所述的任务分配方法,其特征在于,所述向所述数据处理装置的节点芯片发送计算任务命令进一步包括:
向所述数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态;
向所述数据处理装置的节点芯片发送地址分配命令,依次为各节点芯片分配芯片地址;
根据各节点芯片的芯片地址,为各节点芯片分配计算任务。
3.根据权利要求2所述的任务分配方法,其特征在于,所述向数据处理装置的节点芯片发送命令,使得节点芯片进入去活状态,包括:
向所述数据处理装置的各节点芯片分别发送命令,使得各节点芯片依次进入去活状态;或者,
向所述数据处理装置的所有节点芯片发送一次命令,使得各节点芯片同时进入去活状态。
4.根据权利要求2所述的任务分配方法,其特征在于,所述依次为各节点芯片分配芯片地址,包括:
当节点芯片处于去活状态时,解析所述地址分配命令,将为其分配的芯片地址保存至寄存器,并转入激活状态;和/或,
当节点芯片处于激活状态时,将所述地址分配命令转发给下一级节点芯片。
5.根据权利要求1所述的任务分配方法,其特征在于,还包括:
节点芯片根据为其分配的计算任务执行哈希运算。
6.根据权利要求1所述的任务分配方法,其特征在于,所述数据处理装置包括多个依次串联连接的节点芯片,首级节点芯片的数据输出单元与外部控制装置的数据输入单元连接,用于将数据处理装置的运算结果返回给外部控制装置;上级节点芯片的数据输入单元与下级节点芯片的数据输出单元连接,用于接收下级节点芯片运算后得到的数据;所述首级节点芯片的一个或多个数据输入单元与外部控制装置的一个或多个数据输出单元连接,以接收外部控制装置的数据输入或者命令输入,上级节点芯片的一个或多个数据输出单元与下级节点芯片的一个或多个数据输入单元连接,用于向下级节点芯片发送数据输入或者命令输入。
7.根据权利要求1所述的任务分配方法,其特征在于,所述节点芯片包括控制单元和多个运算算子,所述运算算子分为两组或者多组,每组运算算子包括两个或多个串联连接的运算算子,每组运算算子中的首级运算算子与所述控制单元连接。
8.根据权利要求7所述的任务分配方法,其特征在于,所述运算算子包括:运算部件和存储部件;其中:
所述运算部件与上级运算算子的存储部件连接,用于读取上级运算算子存储部件中存储的数据并进行运算;
所述运算部件与存储部件连接,用于将运算得到的数据存储在存储部件中,供下级运算算子调用。
9.根据权利要求1所述的任务分配方法,其特征在于,所述数据处理装置还包括信号转换单元,将两个节点芯片连接,用于进行信号电压适配。
10.根据权利要求1所述的任务分配方法,其特征在于,所述数据处理装置还包括一个或多个时钟晶体,所述时钟晶体的时钟信号输出接口与所述数据处理装置中的一个节点芯片的时钟信号输入接口连接。
11.根据权利要求5所述的任务分配方法,其特征在于,
所述节点芯片设置有忙信号输入命令和忙信号输出命令,所述忙信号输入命令和忙信号输出命令用于控制相应节点芯片在上行通信方向上的数据发送。
12.根据权利要求11所述的任务分配方法,其特征在于,所述忙信号输出命令为低/高电平时,指示可以转发下一级节点芯片返回的数据;所述忙信号输出命令为高/低电平时,指示本级节点芯片或者上一级节点芯片将要或正在发送数据。
13.根据权利要求11或12所述的任务分配方法,其特征在于,当节点芯片的忙信号输入命令为高/低电平时,该节点芯片的忙信号输出命令也为高/低电平。
14.根据权利要求11所述的任务分配方法,其特征在于,本级节点芯片有数据等待发送时,当检测到忙信号输入管脚为高/低电平时,等待所述忙信号输入管脚转为低/高电平时,再发送数据;当检测到所述忙信号输入管脚为低/高电平时,立即发送数据;和/或,
本级节点芯片有数据等待发送时,将忙信号输出管脚输出为高/低电平,当数据发送完成后将所述忙信号输出管脚输出为低/高电平。
15.根据权利要求11所述的任务分配方法,其特征在于,本级节点芯片正在发送数据时,若检测到忙信号输入管脚为高/低电平,继续发送数据,直至缓存队列中的全部数据发送完成。
16.根据权利要求14所述的任务分配方法,其特征在于,本级节点芯片的忙信号输出管脚输出为高/低电平后,等待预定的保护间隔时间,再进行数据的传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711402440.XA CN109947556A (zh) | 2017-12-21 | 2017-12-21 | 任务分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711402440.XA CN109947556A (zh) | 2017-12-21 | 2017-12-21 | 任务分配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109947556A true CN109947556A (zh) | 2019-06-28 |
Family
ID=67006237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711402440.XA Pending CN109947556A (zh) | 2017-12-21 | 2017-12-21 | 任务分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109947556A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114088224A (zh) * | 2021-11-22 | 2022-02-25 | 上海聪链信息科技有限公司 | 计算板芯片温度监测系统 |
TWI760789B (zh) * | 2020-07-13 | 2022-04-11 | 香港商蜜蜂計算(香港)股份有限公司 | 礦機系統與礦機系統的訊號補償方法 |
CN116414569A (zh) * | 2023-06-12 | 2023-07-11 | 上海聪链信息科技有限公司 | 任务处理系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163184A (zh) * | 2011-03-22 | 2011-08-24 | 中兴通讯股份有限公司 | 一种基于专用多芯片串行互连接口的主从传输系统及方法 |
US20140245319A1 (en) * | 2013-02-27 | 2014-08-28 | Greenbutton Limited | Method for enabling an application to run on a cloud computing system |
CN104639552A (zh) * | 2015-02-13 | 2015-05-20 | 李明 | 链型网络无线高速通讯协议 |
CN105718405A (zh) * | 2016-01-28 | 2016-06-29 | 努比亚技术有限公司 | 移动终端和其处理器的usb接口复用的方法 |
CN105760324A (zh) * | 2016-05-11 | 2016-07-13 | 北京比特大陆科技有限公司 | 数据处理装置和服务器 |
CN107025136A (zh) * | 2016-01-29 | 2017-08-08 | 中兴通讯股份有限公司 | 一种去中心化资源调度方法及系统 |
-
2017
- 2017-12-21 CN CN201711402440.XA patent/CN109947556A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163184A (zh) * | 2011-03-22 | 2011-08-24 | 中兴通讯股份有限公司 | 一种基于专用多芯片串行互连接口的主从传输系统及方法 |
US20140245319A1 (en) * | 2013-02-27 | 2014-08-28 | Greenbutton Limited | Method for enabling an application to run on a cloud computing system |
CN104639552A (zh) * | 2015-02-13 | 2015-05-20 | 李明 | 链型网络无线高速通讯协议 |
CN105718405A (zh) * | 2016-01-28 | 2016-06-29 | 努比亚技术有限公司 | 移动终端和其处理器的usb接口复用的方法 |
CN107025136A (zh) * | 2016-01-29 | 2017-08-08 | 中兴通讯股份有限公司 | 一种去中心化资源调度方法及系统 |
CN105760324A (zh) * | 2016-05-11 | 2016-07-13 | 北京比特大陆科技有限公司 | 数据处理装置和服务器 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI760789B (zh) * | 2020-07-13 | 2022-04-11 | 香港商蜜蜂計算(香港)股份有限公司 | 礦機系統與礦機系統的訊號補償方法 |
CN114088224A (zh) * | 2021-11-22 | 2022-02-25 | 上海聪链信息科技有限公司 | 计算板芯片温度监测系统 |
CN114088224B (zh) * | 2021-11-22 | 2024-04-05 | 上海聪链信息科技有限公司 | 计算板芯片温度监测系统 |
CN116414569A (zh) * | 2023-06-12 | 2023-07-11 | 上海聪链信息科技有限公司 | 任务处理系统 |
CN116414569B (zh) * | 2023-06-12 | 2023-08-11 | 上海聪链信息科技有限公司 | 任务处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108595353B (zh) | 一种基于PCIe总线的控制数据传输的方法及装置 | |
US8520563B2 (en) | Interface device, communications system, non-volatile storage device, communication mode switching method and integrated circuit | |
US10802960B2 (en) | Flash medium access method and controller | |
CN109947556A (zh) | 任务分配方法 | |
JP4763405B2 (ja) | データ・フロー・アプリケーションのためのネットワーク・オン・チップ半自動通信アーキテクチャ | |
JP7104448B2 (ja) | 二値化アルゴリズムに基づくアクセラレーション制御システム、チップ及びロボット | |
JP5460143B2 (ja) | データ処理装置、データ処理方法およびプログラム | |
CN101506783B (zh) | 用于阻隔操作的条件式广播的方法和设备 | |
CN109446145B (zh) | 一种服务器主板i2c通道扩展芯片、电路及控制方法 | |
CN109947605A (zh) | 故障诊断方法 | |
CN111966189A (zh) | 一种灵活配置的多计算节点服务器主板结构和程序 | |
EP2759927A1 (en) | Apparatus and method for sharing function logic between functional units, and reconfigurable processor thereof | |
GB2377138A (en) | Ring Bus Structure For System On Chip Integrated Circuits | |
WO2019120294A1 (en) | Data-processing apparatus, data transmission method, and computing system thereof | |
CN112434800A (zh) | 控制装置及类脑计算系统 | |
CN108881514B (zh) | 总线系统的地址分配方法、通讯设备和总线系统 | |
CN111258641B (zh) | 运算方法、装置及相关产品 | |
CN111078598B (zh) | 存储模块数据访问控制方法、数据访问装置和芯片 | |
CN111260046B (zh) | 运算方法、装置及相关产品 | |
CN111260070B (zh) | 运算方法、装置及相关产品 | |
US9336172B2 (en) | Parallel computer system, data transfer device, and method for controlling parallel computer system for performing arbitration | |
CN107145466A (zh) | 远端串列设备的资源切换的处理系统与方法 | |
JP2001154981A (ja) | エレメント間のチャンネル通信方法およびそのチャンネル通信装置 | |
CN118413478A (zh) | 数据传输方法、装置、设备、交换芯片及存储介质 | |
CN106687930A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190628 |
|
RJ01 | Rejection of invention patent application after publication |