CN110516332B - 并行计算结果的过滤方法及*** - Google Patents

并行计算结果的过滤方法及*** Download PDF

Info

Publication number
CN110516332B
CN110516332B CN201910755046.7A CN201910755046A CN110516332B CN 110516332 B CN110516332 B CN 110516332B CN 201910755046 A CN201910755046 A CN 201910755046A CN 110516332 B CN110516332 B CN 110516332B
Authority
CN
China
Prior art keywords
fvp
output result
effective position
fragment
results
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.)
Active
Application number
CN201910755046.7A
Other languages
English (en)
Other versions
CN110516332A (zh
Inventor
史宏志
刘海威
赵健
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.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
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
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201910755046.7A priority Critical patent/CN110516332B/zh
Priority to US17/615,582 priority patent/US11886534B2/en
Priority to PCT/CN2019/108942 priority patent/WO2021027037A1/zh
Publication of CN110516332A publication Critical patent/CN110516332A/zh
Application granted granted Critical
Publication of CN110516332B publication Critical patent/CN110516332B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种并行计算结果的过滤方法及***,通过同时生成每个分片的第一有效位置fvp的输入值,并同时以每一个分片各自对应的第一有效位置fvp输入值计算得到每个第一有效位置fvp的输入值对应的输出结果,并根据第一个分片的第一有效位置fvp输出结果,依次选择第二到S个分片的输出结果的方式、对并行计算结果进行过滤,最终得到正确的并行计算结果。本发明的采用并行过滤的方式,让本来串行的过滤计算改为S个分片的并行计算,计算时间只有原来的S分之一,提高计算效率的同时能够满足并行计算的时序需求。

Description

并行计算结果的过滤方法及***
技术领域
本发明涉及数字电路技术领域,具体为一种并行计算结果的过滤方法及***。
背景技术
目前在特殊应用集成电路(Application Specific Integrated Circuit,ASIC)和现场可编程门阵列(Field-Programmable Gate Array,FPGA)等数字电路的设计开发过程中,多会采用并行计算的设计,在同一时刻下并行进行多路计算,以提高计算性能和效率。但当多路并行计算之间存在着较强的数据依赖关系,例如多路计算在时间上存在着串行的关系,就会影响并行计算效率,而目前比较常见的是采用超前计算方法提高并行计算效率。
由于每一路的计算结果需要依托于前一路的计算结果进行计算,如果直接进行超前计算就会造成并行计算结果的不准确,现有的并行计算结果的过滤方法主要有两种,一种是在并行计算的一个时钟周期内按照多路计算的时间串行顺序依次确认每路输出的第一有效位置(first valid position,fvp),然后根据fvp确认正确的并行计算结果,但是一旦串行计算电路比较长,就会导致确认fvp花费时间超过一个时钟周期,导致计算出现错误,无法满足并行计算的时序需求。
发明内容
本发明提供了一种并行计算结果的过滤方法及***,可以解决现有技术中由于串行计算电路比较长,导致确认fvp花费时间超过并行计算一个时间周期,导致计算出现错误,无法满足并行计算的时序需求的问题。
为达到上述目的,本发明提供了如下技术方案:
一种并行计算结果的过滤方法,包括:
将接收到的N路并行计算结果分为S个分片,其中,
Figure BDA0002168470160000021
S和N均为大于0的正整数;
同时分别对每个分片进行初始化,生成每个分片进行过滤计算所需的所有第一有效位置fvp的输入值;
同时以每一个分片各自对应的第一有效位置fvp输入值进行计算,得到每个第一有效位置fvp的输入值对应的输出结果;所述输出结果包括第一有效位置fvp输出结果和并行计算输出结果;
根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的多个输出结果中的一个作为最终输出结果,并以根据第二个分片的第一有效位置fvp输出结果,选择第三个分片的多个输出结果中的一个作为最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp的输入值对应的输出结果就是所述第一个分片的最终输出结果;
将所有分片的最终输出结果中的并行计算输出结果进行组合,得到过滤后的并行计算结果。
可选的,所述过滤方法,还包括:若所述N路并行计算结果按照
Figure BDA0002168470160000022
进行拆分的结果不是整数,则选取最接近
Figure BDA0002168470160000023
的正整数S值,并将剩余的并行计算结果作为第S+1个分片。
可选的,所述所有第一有效位置fvp的输入值,包括:第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值;第二个分片的第一有效位置fvp的输入值有S种,分别为fvp=S、fvp=S+1、fvp=S+2……fvp=S+S-1、fvp≥S+S;……第S个分片的第一有效位置fvp的输入值有S种,分别为fvp=SS-S、fvp=SS-S+1……fvp=SS-1、fvp=SS。
可选的,所述过滤方法,还包括:
将第S个分片的第一有效位置fvp输出结果作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
可选的,所述根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的多个输出结果中的一个作为最终输出结果,并以根据第二个分片的第一有效位置fvp输出结果,选择第三个分片的多个输出结果中的一个作为最终输出结果,最终得到所有分片的最终输出结果,包括:
根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的第一有效位置fvp的输入值中与所述第一个分片的第一有效位置fvp输出结果对应的输入值,并以所述对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第二个分片的最终输出结果;
根据所述第二个分片的最终输出结果中的第一有效位置fvp输出结果,选择第三个分片的第一有效位置fvp的输入值中与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值,并以所述与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第三个分片的最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp输出结果和并行计算输出结果就是所述第一个分片的最终输出结果。
一种并行计算结果的过滤***,包括:
分片单元,用于将接收到的N路并行计算结果分为S个分片,其中,
Figure BDA0002168470160000031
S和N均为大于0的正整数;
生成单元,用于同时分别对每个分片进行初始化,生成每个分片进行过滤计算所需的所有第一有效位置fvp的输入值;
计算单元,用于同时以每一个分片各自对应的第一有效位置fvp输入值进行计算,得到每个第一有效位置fvp的输入值对应的输出结果;所述输出结果包括第一有效位置fvp输出结果和并行计算输出结果;
选择单元,用于根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的多个输出结果中的一个作为最终输出结果,并以根据第二个分片的第一有效位置fvp输出结果,选择第三个分片的多个输出结果中的一个作为最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp的输入值对应的输出结果就是所述第一个分片的最终输出结果;
组合单元,用于将所有分片的最终输出结果中的并行计算输出结果进行组合,得到过滤后的并行计算结果。
可选的,所述分片单元,还用于若所述N路并行计算结果按照
Figure BDA0002168470160000041
进行拆分的结果不是整数,则选取最接近
Figure BDA0002168470160000042
的正整数S值,并将剩余的并行计算结果作为第S+1个分片。
可选的,所述所有第一有效位置fvp的输入值,包括:第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值;第二个分片的第一有效位置fvp的输入值有S种,分别为fvp=S、fvp=S+1、fvp=S+2……fvp=S+S-1、fvp≥S+S;……第S个分片的第一有效位置fvp的输入值有S种,分别为fvp=SS-S、fvp=SS-S+1……fvp=SS-1、fvp=SS。
可选的,所述组合单元,还用于将第S个分片的第一有效位置fvp输出结果作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
可选的,所述选择单元,用于根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的第一有效位置fvp的输入值中与所述第一个分片的第一有效位置fvp输出结果对应的输入值,并以所述对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第二个分片的最终输出结果;
根据所述第二个分片的最终输出结果中的第一有效位置fvp输出结果,选择第三个分片的第一有效位置fvp的输入值中与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值,并以所述与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第三个分片的最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp输出结果和并行计算输出结果就是所述第一个分片的最终输出结果。
经由上述技术方案可知,本发明公开了一种并行计算结果的过滤方法及***,通过同时生成每个分片的第一有效位置fvp的输入值,并同时以每一个分片各自对应的第一有效位置fvp输入值计算得到每个第一有效位置fvp的输入值对应的输出结果,并根据第一个分片的第一有效位置fvp输出结果,依次选择第二到S个分片的输出结果的方式、对并行计算结果进行过滤,最终得到正确的并行计算结果。本发明的采用并行过滤的方式,让本来串行的过滤计算改为S个分片的并行计算,计算时间只有原来的S分之一,提高计算效率的同时能够满足并行计算的时序需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种并行计算结果的过滤方法的流程图;
图2为本发明实施例公开的另一种并行计算结果的过滤方法的流程示意图;
图3为本发明实施例公开的一种并行计算结果的过滤***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由背景技术可知,由于每一路的计算结果需要依托于前一路的计算结果进行计算,如果直接进行超前计算就会造成并行计算结果的不准确,现有的并行计算结果的过滤方法主要有两种,一种是在并行计算的一个时钟周期内按照多路计算的时间串行顺序依次确认每路输出的第一有效位置(first valid position,fvp),然后根据fvp确认正确的并行计算结果,但是一旦串行计算电路比较长,就会导致确认fvp花费时间超过一个时钟周期,导致计算出现错误,无法满足并行计算的时序需求。
有鉴于此,本发明提供了一种并行计算结果的过滤方法及***,可以解决现有技术中由于串行计算电路比较长,导致确认fvp花费时间超过并行计算一个时间周期,导致计算出现错误,无法满足并行计算的时序需求的问题。
如图1所示,本发明实施例公开了一种并行计算结果的过滤方法,包括以下步骤:
S101、将接收到的N路并行计算结果分为S个分片,其中,
Figure BDA0002168470160000061
S和N均为大于0的正整数。
可选的,若所述N路并行计算结果按照
Figure BDA0002168470160000062
进行拆分的结果不是整数,则选取最接近
Figure BDA0002168470160000063
的正整数S值,并将剩余的并行计算结果作为第S+1个分片。
需要说明的是,由于多路并行计算的电路数并不是固定的值,因此会出现接收到的N路并行计算结果无法正好按照
Figure BDA0002168470160000064
进行拆分的情况,例如N等于18时,即接收到的18路并行计算结果,那么最接近的拆分方式就是S=4,也就是将18路并行计算结果分为4个分片,每个分片4路并行计算结果,还剩下2路并行计算结果,此时,将剩下2路并行计算结果作为第5个分片。在实际应用中,可以根据时序和资源需求,灵活调配N、S二值的具体数据,尽可能实现正好按照
Figure BDA0002168470160000065
进行拆分。
S102、同时分别对每个分片进行初始化,生成每个分片进行过滤计算所需的所有第一有效位置fvp的输入值。
可选的,所述所有第一有效位置fvp的输入值,包括:第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值,第二个分片的第一有效位置fvp的输入值有S种,分别为fvp=S、fvp=S+1、fvp=S+2……fvp=S+S-1、fvp≥S+S,依次类推,第S个分片的第一有效位置fvp的输入值有S种,分别为fvp=SS-S、fvp=SS-S+1……fvp=SS-1、fvp=SS。
需要说明的是,由于第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值,因此第一个分片只有一个已知的输入值。而从第二个分片开始,每个分片都有多种第一有效位置fvp的输入值的可能。
需要说明的是,虽然接收到的并行计算结果有N路,但N路并行计算结果的编号是从0开始的,以S=4,N=16为例,如图2所示,可以看到过滤前的16路并行计算结果的编号为out[0]至out[15]。
因此,本发明中第一个分片的编号就是out[0]至out[S-1],第二个分片的编号就是out[S]至out[2S-1],而以第二个分片为例,fvp=S表示第一个分片没有遮盖第二个分片的数据,有效的并行计算结果从当前分片起始位置out[S]开始;fvp=S+1表示第一个分片遮盖第二个分片数据out[S],有效的并行计算结果从当前分片第二位置,即out[S+1]开始;fvp=S+2表示第一个分片遮盖第二个分片数据out[S]到out[S+1],有效的并行计算结果从当前分片第三位置,即out[S+2]开始;以此类推,直到第二分片的最后一个位置out[S+S-1],而当fvp≥S+S时,表示第一个分片遮盖第二个分片数据out[S]到out[S+S-1],即遮盖了第二个分片的所有位置,当前并行计算结果的所有数据都是无效的,应置0。
有上述内容可知,不同的fvp输入值可以得到不同的结果,本实施例就是将所有可能的fvp输入值列出,都进行超前计算,得到各自的结果,然后由于第一个分片得到的正确唯一的fvp值从第二个分片的所有可能的fvp输入值中选取相同的fvp值,则此时可以直接得到选中的fvp输入值对应的结果。
S103、同时以每一个分片各自对应的第一有效位置fvp输入值进行计算,得到每个第一有效位置fvp的输入值对应的输出结果;所述输出结果包括第一有效位置fvp输出结果和并行计算输出结果。
进一步需要说明的是,可以看到,步骤S102和步骤S103均是每个分片同时进行的,假设原始方式进行N路串行过滤的消耗时间为N*T,则每个分片内计算消耗时间为(N/S)*T,其中统一整合过程所消耗只涉及简单选择操作,时间可忽略不计,那么所有计算过程的时间减少为原始时间的(N/S)*T/(N*T)=1/S倍,提高了对过滤过程的速度,使过滤时间满足并行计算的时序需求。
S104、根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的多个输出结果中的一个作为最终输出结果,并以根据第二个分片的第一有效位置fvp输出结果,选择第三个分片的多个输出结果中的一个作为最终输出结果,最终得到所有分片的最终输出结果。
在步骤S104中,由于所述第一个分片的第一有效位置fvp的输入值是已知的且只有一个输入值,因此所述第一个分片的第一有效位置fvp的输入值对应的输出结果就是所述第一个分片的最终输出结果。
具体的,根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的第一有效位置fvp的输入值中与所述第一个分片的第一有效位置fvp输出结果对应的输入值,并以所述对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第二个分片的最终输出结果;
根据所述第二个分片的最终输出结果中的第一有效位置fvp输出结果,选择第三个分片的第一有效位置fvp的输入值中与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值,并以所述与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第三个分片的最终输出结果,通过同样的方式继续进行下一个分片的计算,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp输出结果和并行计算输出结果就是所述第一个分片的最终输出结果。
S105、将所有分片的最终输出结果中的并行计算输出结果进行组合,得到过滤后的并行计算结果。
需要说明的是,每个分片均得到过滤后的S路的并行计算结果,将所有并行计算结果组合,得到完整的、过滤后的,正确的、长度为N的并行计算结果,作为并行计算的最终结果。
可选的,所述过滤方法,还包括:
将第S个分片的第一有效位置fvp输出结果作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
需要说明的是,在得到并行计算的最终结果后,当前时钟周期的N路并行计算完成,开始下一个时钟周期的N路并行计算,从前述内容已知,当前时钟周期的第一个分片的第一有效位置fvp的输入值是前一个时钟周期的N路并行计算得到的最终第一有效位置fvp输出结果,那么当前时钟周期的N路并行计算的最后一个分片,即第S个分片的第一有效位置fvp输出结果就是当前时钟周期的N路并行计算得到的最终第一有效位置fvp输出结果,继续作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
本实施例公开的并行计算结果的过滤方法,通过同时生成每个分片的第一有效位置fvp的输入值,并同时以每一个分片各自对应的第一有效位置fvp输入值计算得到每个第一有效位置fvp的输入值对应的输出结果,并根据第一个分片的第一有效位置fvp输出结果,依次选择第二到S个分片的输出结果的方式、对并行计算结果进行过滤,最终得到正确的并行计算结果。本发明的采用并行过滤的方式,让本来串行的过滤计算改为S个分片的并行计算,计算时间只有原来的S分之一,提高计算效率的同时能够满足并行计算的时序需求。
基于上述本发明实施例公开的并行计算结果的过滤方法,图3具体公开了应用该并行计算结果的过滤方法的并行计算结果的过滤***。
如图3所示,本发明另一实施例公开了一种并行计算结果的过滤***,该***包括:
分片单元301,用于将接收到的N路并行计算结果分为S个分片,其中,
Figure BDA0002168470160000091
S和N均为大于0的正整数;
生成单元302,用于同时分别对每个分片进行初始化,生成每个分片进行过滤计算所需的所有第一有效位置fvp的输入值;
计算单元303,用于同时以每一个分片各自对应的第一有效位置fvp输入值进行计算,得到每个第一有效位置fvp的输入值对应的输出结果;所述输出结果包括第一有效位置fvp输出结果和并行计算输出结果;
选择单元304,用于根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的多个输出结果中的一个作为最终输出结果,并以根据第二个分片的第一有效位置fvp输出结果,选择第三个分片的多个输出结果中的一个作为最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp的输入值对应的输出结果就是所述第一个分片的最终输出结果;
组合单元305,用于将所有分片的最终输出结果中的并行计算输出结果进行组合,得到过滤后的并行计算结果。
可选的,所述分片单元301,还用于若所述N路并行计算结果按照
Figure BDA0002168470160000092
进行拆分的结果不是整数,则选取最接近
Figure BDA0002168470160000093
的正整数S值,并将剩余的并行计算结果作为第S+1个分片。
可选的,所述所有第一有效位置fvp的输入值,包括:第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值,第二个分片的第一有效位置fvp的输入值有S种,分别为fvp=S、fvp=S+1、fvp=S+2……fvp=S+S-1、fvp≥S+S,……第S个分片的第一有效位置fvp的输入值有S种,分别为fvp=SS-S、fvp=SS-S+1……fvp=SS-1、fvp=SS。
可选的,所述组合单元305,还用于将第S个分片的第一有效位置fvp输出结果作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
可选的,所述选择单元304,用于根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的第一有效位置fvp的输入值中与所述第一个分片的第一有效位置fvp输出结果对应的输入值,并以所述对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第二个分片的最终输出结果;
根据所述第二个分片的最终输出结果中的第一有效位置fvp输出结果,选择第三个分片的第一有效位置fvp的输入值中与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值,并以所述与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第三个分片的最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp输出结果和并行计算输出结果就是所述第一个分片的最终输出结果。
以上本发明实施例公开的并行计算结果的过滤***中的分片单元301、生成单元302、计算单元303、选择单元304和组合单元305的具体工作过程,可参见本发明上述实施例公开的并行计算结果的过滤方法中的对应内容,这里不再进行赘述。
本实施例公开的并行计算结果的过滤***,通过同时生成每个分片的第一有效位置fvp的输入值,并同时以每一个分片各自对应的第一有效位置fvp输入值计算得到每个第一有效位置fvp的输入值对应的输出结果,并根据第一个分片的第一有效位置fvp输出结果,依次选择第二到S个分片的输出结果的方式、对并行计算结果进行过滤,最终得到正确的并行计算结果。本发明的采用并行过滤的方式,让本来串行的过滤计算改为S个分片的并行计算,计算时间只有原来的S分之一,提高计算效率的同时能够满足并行计算的时序需求。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (2)

1.一种并行计算结果的过滤方法,其特征在于,包括:
将接收到的N路并行计算结果分为S个分片,其中,
Figure FDA0002938250850000011
S和N均为大于0的正整数;
若所述N路并行计算结果按照
Figure FDA0002938250850000012
进行拆分的结果不是整数,则选取最接近
Figure FDA0002938250850000013
的正整数S值,并将剩余的并行计算结果作为第S+1个分片,所述选取最接近
Figure FDA0002938250850000014
的正整数S值,具体为对
Figure FDA0002938250850000015
进行四舍五入取整运算得到的值;
同时分别对每个分片进行初始化,生成每个分片进行过滤计算所需的所有第一有效位置fvp的输入值;
同时以每一个分片各自对应的第一有效位置fvp输入值进行计算,得到每个第一有效位置fvp的输入值对应的输出结果;所述输出结果包括第一有效位置fvp输出结果和并行计算输出结果;
所述所有第一有效位置fvp的输入值,包括:第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值;第二个分片的第一有效位置fvp的输入值有S种,分别为fvp=S、fvp=S+1、fvp=S+2……fvp=S+S-1、fvp≥S+S,第S个分片的第一有效位置fvp的输入值有S种,分别为fvp=SS-S、fvp=SS-S+1……fvp=SS-1、fvp=SS;
根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的第一有效位置fvp的输入值中与所述第一个分片的第一有效位置fvp输出结果对应的输入值,并以所述对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第二个分片的最终输出结果;
根据所述第二个分片的最终输出结果中的第一有效位置fvp输出结果,选择第三个分片的第一有效位置fvp的输入值中与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值,并以所述与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第三个分片的最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp输出结果和并行计算输出结果就是所述第一个分片的最终输出结果;
将所有分片的最终输出结果中的并行计算输出结果进行组合,得到过滤后的并行计算结果;
将第S个分片的第一有效位置fvp输出结果作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
2.一种并行计算结果的过滤***,其特征在于,包括:
分片单元,用于将接收到的N路并行计算结果分为S个分片,其中,
Figure FDA0002938250850000021
S和N均为大于0的正整数;
所述分片单元,还用于若所述N路并行计算结果按照
Figure FDA0002938250850000022
进行拆分的结果不是整数,则选取最接近
Figure FDA0002938250850000023
的正整数S值,并将剩余的并行计算结果作为第S+1个分片,所述选取最接近
Figure FDA0002938250850000024
的正整数S值,具体为对
Figure FDA0002938250850000025
进行四舍五入取整运算得到的值;
生成单元,用于同时分别对每个分片进行初始化,生成每个分片进行过滤计算所需的所有第一有效位置fvp的输入值;
所述所有第一有效位置fvp的输入值,包括:第一个分片的第一有效位置fvp的输入值为上一个时钟周期的N路并行计算结果进行过滤后得到的第一有效位置fvp的值;第二个分片的第一有效位置fvp的输入值有S种,分别为fvp=S、fvp=S+1、fvp=S+2……fvp=S+S-1、fvp≥S+S,第S个分片的第一有效位置fvp的输入值有S种,分别为fvp=SS-S、fvp=SS-S+1……fvp=SS-1、fvp=SS;
计算单元,用于同时以每一个分片各自对应的第一有效位置fvp输入值进行计算,得到每个第一有效位置fvp的输入值对应的输出结果;所述输出结果包括第一有效位置fvp输出结果和并行计算输出结果;
选择单元,用于根据第一个分片的第一有效位置fvp输出结果,选择第二个分片的第一有效位置fvp的输入值中与所述第一个分片的第一有效位置fvp输出结果对应的输入值,并以所述对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第二个分片的最终输出结果;
根据所述第二个分片的最终输出结果中的第一有效位置fvp输出结果,选择第三个分片的第一有效位置fvp的输入值中与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值,并以所述与所述第二个分片的最终输出结果中的第一有效位置fvp输出结果对应的输入值计算得到的第一有效位置fvp输出结果和并行计算输出结果作为第三个分片的最终输出结果,最终得到所有分片的最终输出结果,其中,所述第一个分片的第一有效位置fvp输出结果和并行计算输出结果就是所述第一个分片的最终输出结果;
组合单元,用于将所有分片的最终输出结果中的并行计算输出结果进行组合,得到过滤后的并行计算结果;
所述组合单元,还用于将第S个分片的第一有效位置fvp输出结果作为下一个时钟周期的N路并行计算结果过滤时第一个分片的第一有效位置fvp的输入值。
CN201910755046.7A 2019-08-15 2019-08-15 并行计算结果的过滤方法及*** Active CN110516332B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910755046.7A CN110516332B (zh) 2019-08-15 2019-08-15 并行计算结果的过滤方法及***
US17/615,582 US11886534B2 (en) 2019-08-15 2019-09-29 Filtering method and system of parallel computing results
PCT/CN2019/108942 WO2021027037A1 (zh) 2019-08-15 2019-09-29 并行计算结果的过滤方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910755046.7A CN110516332B (zh) 2019-08-15 2019-08-15 并行计算结果的过滤方法及***

Publications (2)

Publication Number Publication Date
CN110516332A CN110516332A (zh) 2019-11-29
CN110516332B true CN110516332B (zh) 2021-06-11

Family

ID=68626223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910755046.7A Active CN110516332B (zh) 2019-08-15 2019-08-15 并行计算结果的过滤方法及***

Country Status (3)

Country Link
US (1) US11886534B2 (zh)
CN (1) CN110516332B (zh)
WO (1) WO2021027037A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102446131A (zh) * 2010-10-14 2012-05-09 无锡江南计算技术研究所 计算节点的定位方法、***及管理节点
CN104283742A (zh) * 2014-11-05 2015-01-14 桂林电子科技大学 基于fpga的网络数据包过滤方法
CN104361110A (zh) * 2014-12-01 2015-02-18 广东电网有限责任公司清远供电局 海量用电数据分析***及其实时计算、数据挖掘方法
CN105808582A (zh) * 2014-12-30 2016-07-27 华为技术有限公司 基于分层策略的决策树并行生成方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988595B (zh) * 2015-02-17 2019-12-06 上海触乐信息科技有限公司 滑行输入方法及装置
KR20140122835A (ko) * 2013-04-11 2014-10-21 삼성전자주식회사 프로세스 병렬 처리 장치 및 방법
CN105049061B (zh) * 2015-04-28 2018-06-01 北京邮电大学 基于超前计算的高维基极化码译码器和极化码译码方法
US10210134B2 (en) * 2015-05-21 2019-02-19 Goldman Sachs & Co. LLC General-purpose parallel computing architecture
JP6816027B2 (ja) * 2015-05-21 2021-01-20 ゴールドマン サックス アンド カンパニー エルエルシー 多目的の並列処理アーキテクチャ
CN107220024B (zh) * 2017-05-19 2021-08-31 郑州云海信息技术有限公司 一种基于fpga的数据处理方法、装置及***
US20190095776A1 (en) 2017-09-27 2019-03-28 Mellanox Technologies, Ltd. Efficient data distribution for parallel processing
CN107807845A (zh) * 2017-10-16 2018-03-16 昆仑智汇数据科技(北京)有限公司 一种增量式数据并行处理装置与方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102446131A (zh) * 2010-10-14 2012-05-09 无锡江南计算技术研究所 计算节点的定位方法、***及管理节点
CN104283742A (zh) * 2014-11-05 2015-01-14 桂林电子科技大学 基于fpga的网络数据包过滤方法
CN104361110A (zh) * 2014-12-01 2015-02-18 广东电网有限责任公司清远供电局 海量用电数据分析***及其实时计算、数据挖掘方法
CN105808582A (zh) * 2014-12-30 2016-07-27 华为技术有限公司 基于分层策略的决策树并行生成方法和装置

Also Published As

Publication number Publication date
US11886534B2 (en) 2024-01-30
US20220236994A1 (en) 2022-07-28
WO2021027037A1 (zh) 2021-02-18
CN110516332A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
Yao et al. Designing hardware-efficient fixed-point FIR filters in an expanding subexpression space
JP5356537B2 (ja) 前置加算器段を備えたデジタル信号処理ブロック
JPH0661792A (ja) デジタル・フィルタ
CN110515584A (zh) 浮点计算方法及***
CN110516332B (zh) 并行计算结果的过滤方法及***
Boyer et al. Optimal design of synchronous circuits using software pipelining techniques
CN107092462B (zh) 一种基于fpga的64位异步乘法器
JP3659320B2 (ja) 乗算モジュール、乗法逆元演算回路、乗法逆元演算制御方式、該乗法逆元演算を用いる装置、暗号装置、誤り訂正復号器
JPH1195982A (ja) 演算処理回路及び演算処理方法並びに演算処理システム
JP2000252795A (ja) 移動平均フィルタ
JP2009122732A (ja) 動作タイミング検証装置及びプログラム
EP4318328A1 (en) Quantum state information processing system, quantum measurement and control system and quantum computer
JP2009245381A (ja) 積和演算回路、その設計装置、プログラム
CN114362722A (zh) 一种对离散信号进行高倍内插的升采样方法及装置
US9244727B2 (en) Method and apparatus for implementing task-process-table based hardware control
JP2611721B2 (ja) イレージャロケーション多項式乗算回路
KR100626669B1 (ko) 펌웨어를 위한 하드웨어 스케쥴링 장치 및 그 방법
US20200081688A1 (en) Speculative calculations in square root operations
CN201887750U (zh) 一种ecc解码器
JPH08278828A (ja) コンピュータシステムのタイマ補正装置
Elloumi et al. Execution time optimization using delayed multidimensional retiming
Ambika et al. Design of Fir Filter Using Area and Power Efficient Truncated Multiplier
CN115549641A (zh) 一种满速率对称多通道fir滤波器的设计方法
JP2001156682A (ja) マッチドフィルタおよびそれを用いた大規模集積回路と通信システム
Lanjewar Design of iterative data flow graph using hierarchical folding

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