一种数字信号的处理系统转让专利

申请号 : CN202211493946.7

文献号 : CN115905791B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 许大鹏

申请人 : 湖南胜云光电科技有限公司

摘要 :

本发明涉及数字信号处理领域,提供一种数字信号的处理系统,系统包括:数据库、若干个寄存器、处理器、存储有计算机程序的第一存储器和第二存储器,当计算机程序被处理器执行时,实现以下步骤:获取初始信号向量对应的初始函数标识列表;获取初始信号向量对应的非关联信号向量集;获取第一中间信号向量集及第一信号向量;获取第二中间信号向量集及第二信号向量;获取目标信号向量集;可知,本发明一方面在寄存器中存储多个数据并对寄存器中的多个数据同时进行处理;另一方面在多线程并行计算的过程中,对每个线程中不存在函数关系的数据存在的多个寄存器同时进行处理,在计算量相同的情况下,减少任务运行的总时长,提高了整体的运算效率。

权利要求 :

1.一种数字信号的处理系统,其特征在于,所述系统包括:数据库、若干个寄存器、处理器、存储有计算机程序的第一存储器和第二存储器,其中,所述数据库包括预设函数标识列表和初始信号向量集A={A1,……,Ai,……,Am},其中,Ai为第i个目标数字信号对应的初始信号向量,i=1……m,m为目标数字信号的数量,所述第二存储器中存储通过任一所述寄存器处理的信号值,当所述计算机程序被处理器执行时,实现以下步骤:S100、根据接收到第一处理指令,从预设函数标识列表中获取Ai对应的初始函数标识列表Ui;

i i i i i

S200、根据Ui,从A中获取Ai对应的非关联信号向量集B={B1,……,Bx,……,Bpi},B x为Ai对应的第x个非关联信号向量,x=1……pi,pi为Ai对应的非关联信号向量的数量;

S300、根据Ai,获取Ai对应的第一中间信号向量集A'i;

S400、将A'i输入至第一寄存器列表中任一第一寄存器中,获取到Ai对应的第一信号向量Ci且将Ci存储至所述第二存储器中,其中,所述第一寄存器列表中的第一寄存器为若干个寄存器中任一寄存器;

i i

S500、根据接收到第二处理指令,获取Bx对应的第二中间信号向量集B'x;

i i i i

S600、将B'x输入至第二寄存器中,获取到Bx对应的第二信号向量D x且将D x存储至所述第二存储器中,其中,所述第二寄存器为所有的寄存器中除所述第一寄存器之外的任一寄存器;

i

S700、根据Ci和Dx,获取到目标信号向量集。

2.根据权利要求1所述的数字信号的处理系统,其特征在于,在S200步骤中还包括如下步骤:

S201、获取Ui={Ui1,……,Uit,……,Uih},Uit为Ai对应的第t个初始函数标识,t=1……h,h为Ai对应的初始函数标识数量;

S203、获取Ai=(Ai1,……,Aij,……,Aini),Aij为Ai中第j个初始信号值,j=1……ni,ni为Ai中初始信号值数量;

i i i i i i

S205、根据Ai和Ui,获取Bx=(Bx1,……,Bxy,……,Bxqx),其中,Bxy为Bx中第y个非关联i信号值,y=1……qx,qx为Bx中非关联信号值数量。

3.根据权利要求2所述的数字信号的处理系统,其特征在于,在S205步骤中还包括如下步骤:

i i i i i

S2051、根据Ai,获取Ai对应的指定信号向量集G ={G 1,……,G e,……,G f},G e=i i i i(G e1,……,Gev,……,G ew),G ev为Ai对应的第e个指定信号向量中第v个指定信号值,e=

1……f,f为Ai对应的指定信号向量的数量,v=1……w,w为第e个指定信号向量中指定信号值数量;

i i i

S2053、当Gev与Aij之间不满足Uit对应的函数关系时,将Gev=Bxy。

4.根据权利要求3所述的数字信号的处理系统,其特征在于,Ai对应的指定信号向量为所述初始信号向量中除Ai之外的任一初始信号向量。

5.根据权利要求3所述的数字信号的处理系统,其特征在于,f符合如下条件:f=m‑1。

6.根据权利要求1所述的数字信号的处理系统,其特征在于,在S300步骤中还包括如下步骤:

S301、获取Ai对应的bit位数α和每一所述寄存器中可存储数据的bit位数β;

S303、根据α和β,获取Ai对应的第一中间信号向量集A'i={A'i1,……,A'ir,……,A'iS1},A'ir为Ai对应的第r个第一中间信号向量,r=1……S1,S1为Ai对应的第一中间信号向量数量,其中,S1符合如下条件:

7.根据权利要求6所述的数字信号的处理系统,其特征在于,在S303步骤中,A'ir=(Aiδ1,……,Aiδ0,……,Aiδ2),Aiδ0为A'ir中第δ0的初始信号值,δ0=δ1……δ2,其中,δ1符合如下条件:δ1=(r×β‑α)/α,

其中,δ2符合如下条件:

δ2=r×β/α。

8.根据权利要求1所述的数字信号的处理系统,其特征在于,在S400步骤中还通过如下步骤获取第一寄存器列表中第一寄存器数量NA:S1、获取Ai对应的寄存器的第一预估数量K;

0

S3、当且K<K时,确定NA=K,K符合如下条件:0

K=ni×α/β,其中,K为预设的第一寄存器数量阈值;

0 0 0

S5、当K≥K时,获取Aij对应的目标bit位占比值n,n符合如下条件:

0 0

n=ni×α/(ni×α‑K×β);

0

S7、根据n,获取NA。

9.根据权利要求8所述的数字信号的处理系统,其特征在于,在S7步骤中还包括如下步骤:

0 0

S71、当n≥L时,则NA=K,其中,L为预设的bit位占比阈值;

0 0

S73、当n<L时,则NA=(ni×α‑K×β)/β。

10.根据权利要求1所述的数字信号的处理系统,其特征在于,所述第一处理指令和所述第二处理指令可同时执行。

说明书 :

一种数字信号的处理系统

技术领域

[0001] 本发明涉及数字信号处理领域,特别是涉及一种数字信号的处理系统。

背景技术

[0002] 现有的数字信号的处理方法,大多是通过多核多线程的CPU架构或由大量CPU组成的集群式的计算中心,将大量的向量及矩阵运算拆分为相对独立的计算过程,并将其分配到不同的CPU核心中,对每个CPU核心中的向量和矩阵中的元素逐个进行计算,达到并行计算的效果来进行处理的。
[0003] 但上述方法也存在以下技术问题:
[0004] 在对CPU核心中的向量和矩阵中的元素进行处理的过程中,只能在寄存器中存储一个数据,每次只能对寄存器中的一个数据进行处理,不能同时处理多个数据,在多线程并行计算的过程中,只采用了任务分摊的原理,减少了任务运行的总时长,但增加了额外的计算量,整体的运算效率较低。

发明内容

[0005] 针对上述技术问题,本发明采用的技术方案为:
[0006] 一种数字信号的处理系统,系统包括:数据库、若干个寄存器、处理器、存储有计算机程序的第一存储器和第二存储器,其中,数据库包括预设函数标识列表和初始信号向量集A={A1,……,Ai,……,Am},其中,Ai为第i个目标数字信号对应的初始信号向量,i=1……m,m为目标数字信号的数量,第二存储器中存储通过任一所述寄存器处理的信号值,当计算机程序被处理器执行时,实现以下步骤:
[0007] S100、根据接收到第一目标数据处理指令,从预设函数标识列表中获取Ai对应的初始函数标识列表Ui。
[0008] S200、根据Ui,从A中获取Ai对应的非关联信号向量集Bi={Bi1,……,Bix,……,i iBpi},B x为Ai对应的第x个非关联信号向量,x=1……pi,pi为Ai对应的非关联信号向量的数量。
[0009] S300、根据Ai,获取Ai对应的第一中间信号向量集A'i。
[0010] S400、将A'i输入至第一寄存器列表中任一第一寄存器中,获取到Ai对应的第一信号向量Ci且将Ci存储至第二存储器中,其中,第一寄存器列表中的第一寄存器为若干个寄存器中任一寄存器。
[0011] S500、根据接收到第二目标数据处理指令,获取Bix对应的第二中间信号向量集Bi'x。
[0012] S600、将B'ix输入至第二寄存器中,获取到Bix对应的第二信号向量Dix且将Dix存储至第二存储器中,其中,第二寄存器为所有的寄存器中除第一寄存器之外的任一寄存器。
[0013] S700、根据Ci和Dix,获取到目标信号向量集。
[0014] 本发明至少具有以下有益效果:
[0015] 本发明提供了一种数字信号的处理系统,系统包括:数据库、若干个寄存器、处理器、存储有计算机程序的第一存储器和第二存储器,当计算机程序被处理器执行时,实现以下步骤:获取初始信号向量对应的初始函数标识列表;获取初始信号向量对应的非关联信号向量集;获取第一中间信号向量集及第一信号向量;获取第二中间信号向量集及第二信号向量;获取目标信号向量集;可知,本发明一方面可以在寄存器中存储多个数据,能够对寄存器中的多个数据同时进行处理;另一方面在多线程并行计算的过程中,对于每个线程,可以对不存在函数关系的数据存在的多个寄存器同时进行处理,在计算量相同的情况下,减少了任务运行的总时长,提高了整体的运算效率。

附图说明

[0016] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017] 图1为本发明实施例提供的一种数字信号的处理系统执行计算机程序的流程图。

具体实施方式

[0018] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0019] 需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0020] 本实施例提供了一种数字信号的处理系统,所述系统包括:数据库、若干个寄存器、处理器、存储有计算机程序的第一存储器和第二存储器,其中,所述数据库包括预设函数标识列表和初始信号向量集A={A1,……,Ai,……,Am},其中,Ai为第i个目标数字信号对应的初始信号向量,i=1……m,m为目标数字信号的数量,本领域技术人员知晓,现有技术中数字信号转化为信号向量的方法均属于本实施例的保护范围,在此不再赘述,所述第二存储器中存储通过任一所述寄存器处理的信号值,当所述计算机程序被处理器执行时,实现以下步骤,如图1所示:
[0021] S100、根据接收到第一处理指令,从预设函数标识列表中获取Ai对应的初始函数标识列表Ui。
[0022] S200、根据Ui,从A中获取Ai对应的非关联信号向量集Bi={Bi1,……,Bix,……,i iBpi},B x为Ai对应的第x个非关联信号向量,x=1……pi,pi为Ai对应的非关联信号向量的数量。
[0023] 具体地,在S200步骤中还包括如下步骤:
[0024] S201、获取Ui={Ui1,……,Uit,……,Uih},Uit为Ai对应的第t个初始函数标识,t=1……h,h为Ai对应的初始函数标识数量。
[0025] S203、获取Ai=(Ai1,……,Aij,……,Aini),Aij为Ai中第j个初始信号值,j=1……ni,ni为Ai中初始信号值数量,其中,Ai的排序方法为按照Ai对应的目标信号的位置进行排序。
[0026] S205、根据Ai和Ui,获取Bix=(Bix1,……,Bixy,……,Bixqx),其中,Bixy为Bix中第y个i非关联信号值,y=1……qx,qx为Bx中非关联信号值数量。
[0027] 进一步地,在S205步骤中还包括如下步骤:
[0028] S2051、根据Ai,获取Ai对应的指定信号向量集Gi={Gi1,……,Gie,……,Gif},Gie=i i i i(G e1,……,Gev,……,G ew),G ev为Ai对应的第e个指定信号向量中第v个指定信号值,e=
1……f,f为Ai对应的指定信号向量的数量,v=1……w,w为第e个指定信号向量中指定信号值数量。
[0029] 具体地,Ai对应的指定信号向量为所述初始信号向量中除Ai之外的任一初始信号向量。
[0030] S2053、当Giev与Aij之间不满足Uit对应的函数关系时,将Giev=Bixy。
[0031] 进一步地,f符合如下条件:
[0032] f=m‑1。
[0033] 本实施例中,对于每个初始信号向量,取出除它本身以外的其他向量,并根据初始信号向量的初始信号值与其他向量的初始信号值做函数匹配,获取与初始信号向量以及初始信号值无函数关系的向量及信号值,有利于对多组无函数关系的向量及信号值同时进行处理,避免处理工程中出现因向量或信号值具有关联性而导致处理中断的现象,减少了运算时间。
[0034] S300、根据Ai,获取Ai对应的第一中间信号向量集A'i。
[0035] 具体地,在S300步骤中还包括如下步骤:
[0036] S301、获取Ai对应的bit位数α和每一所述寄存器中可存储数据的bit位数β。
[0037] S303、根据α和β,获取Ai对应的第一中间信号向量集A'i={A'i1,……,A'ir,……,A'iS1},A'ir为Ai对应的第r个第一中间信号向量,r=1……S1,S1为Ai对应的第一中间信号向量数量,其中,S1符合如下条件:
[0038]
[0039] 具体地,A'ir=(Aiδ1,……,Aiδ0,……,Aiδ2),Aiδ0为A'ir中第δ0的初始信号值,δ0=δ1……δ2。
[0040] 进一步地,δ1符合如下条件:
[0041] δ1=(r×β‑α)/α。
[0042] 进一步地,δ2符合如下条件:
[0043] δ2=r×β/α。
[0044] 在本实施例中,对第一中间信号向量的数量进行向上取整处理,避免因缺少第一中间信号导致遗漏初始信号值,进而得到错误的目标信号值;将初始信号值按照顺序依次连续的排列在第一信号向量中,避免出现初始信号值重复或者存储混乱的现象,有利于提高运算效率。
[0045] S400、将A'i输入至第一寄存器列表中任一第一寄存器中,获取到Ai对应的第一信号向量Ci且将Ci存储至所述第二存储器中。
[0046] 具体地,所述第一寄存器列表中的第一寄存器为若干个寄存器中任一寄存器。
[0047] 具体地,在S400步骤中还包括如下步骤:
[0048] S401、根据Uit和A'ir,获取C'ir=(Ciδ1,……,Ciδ0,……,Ciδ2),Ciδ0符合如下条件:
[0049] Ciδ0=Fit(Aiδ0),其中,Fit()为Uit对应的函数。
[0050] S403、将C'ir按照Ai对应的排序,生成Ci。
[0051] 在本实施例中,对得到的Ai对应的第一信号向量值按照Ai的顺序进行对应的排序,有利于对第一信号向量值进行进一步处理获得Ai对应的目标向量及目标数字信号,防止因排序混乱而得到错误的目标向量及目标数字信号。
[0052] 在一个具体的实施例中,在S400步骤中还通过如下步骤获取第一寄存器列表中第一寄存器数量NA:
[0053] S1、获取Ai对应的寄存器的第一预估数量K。
[0054] S3、当且K<K0时,确定NA=K,K符合如下条件:
[0055] K=ni×α/β,其中,K0为预设的第一寄存器数量阈值。
[0056] S5、当K≥K0时,获取Aij对应的目标bit位占比值n0,n0符合如下条件:
[0057] n0=ni×α/(ni×α‑K0×β)。
[0058] S7、根据n0,获取NA。
[0059] 进一步地,在S7步骤中还包括如下步骤:
[0060] S71、当n0≥L时,则NA=K0,其中,L为预设的bit位占比阈值。
[0061] S73、当n0<L时,则NA=(ni×α‑K0×β)/β。
[0062] 在本实施例中,根据Ai对应的目标bit位和寄存器可存储数据的bit位,获取Ai需要的最优的寄存器的数量,避免因寄存器数量不足而导致运算时间过长,效率过低的现象出现,或因寄存器数量过多造成资源浪费的现象出现。
[0063] S500、根据接收到第二目标数据处理指令,获取Bix对应的第二中间信号向量集Bi'x。
[0064] 具体地,所述第一处理指令和所述第二处理指令可同时执行。
[0065] 具体地,在S500步骤中还包括如下步骤:
[0066] S501、获取Bix对应的bit位数γ。
[0067] S503、根据γ和β,获取Bix对应的第二中间信号向量集B'ix={B'ix1,……,Bi i i i i'xg,……,B'xS2},B'xg为Bx对应的第g个第二中间信号向量,g=1……S2,S2为Bx对应的第二中间信号向量数量,其中,S2符合如下条件:
[0068]
[0069] 在本实施例中,对第二中间信号向量的数量进行向上取整处理,避免因缺少第二中间信号导致遗漏初始信号值,进而得到错误的目标信号值。
[0070] S600、将B'ix输入至第二寄存器中,获取到Bix对应的第二信号向量Dix且将Dix存储至所述第二存储器中。
[0071] 具体地,所述第二寄存器为所有的寄存器中除所述第一寄存器之外的任一寄存器。
[0072] 具体地,在S600步骤中还包括如下步骤:
[0073] S601、从预设函数标识列表中获取Bix对应的初始函数标识列表Hix={Hix1,……,i i i i iHxa,……,H xz},Hxa为Bx对应的第a个初始函数标识,a=1……z,z为Bx对应的初始函数标识数量。
[0074] S603、获取B'ixg=(Bixφ1,……,Bixφ0,……,Bixφ2),Bixφ0为B'ixg中第φ0的初始信号值,φ0=φ1……φ2。
[0075] 据Hixa和B'ixg,获取D'ixg=(Dixφ1,……,Dixφ0,……,Dixφ2),Dixφ0符合以下条件:
[0076] Dixφ0=Fixa(Bixφ0),其中,Fixa()为Hixa对应的函数。
[0077] S605、将D'ixg按照Bix对应的排序,生成Dix。
[0078] 在本实施例中,对得到的Bix对应的第二信号向量值按照Bix的顺序进行对应的排i序,有利于对第二信号向量值进行进一步处理获得Bx对应的目标向量及目标数字信号,防止因排序混乱而得到错误的目标向量及目标数字信号。
[0079] 进一步地,φ1符合以下条件:
[0080] φ1=(g×β‑η)/η。
[0081] 进一步地,φ2符合以下条件:
[0082] φ2=g×β/η。
[0083] 在本实施例中,将初始信号值按照顺序依次连续的排列在第二中间向量中,避免出现初始信号值重复或者存储混乱的现象,有利于提高运算效率。
[0084] 在一个具体的实施例中,在S600步骤中还通过如下步骤获取第二寄存器列表中第二寄存器数量NB:
[0085] S10、获取Bix对应的寄存器的第二预估数量K'。
[0086] S20、当K'<K'0时,确定NB=K',K符合如下条件:
[0087] K'=pi×η/β,其中,K'0为预设的第二寄存器数量阈值。
[0088] S30、当K'≥K'0时,确定NB=K'0。
[0089] 进一步地,K'0符合如下条件:
[0090] K'0=N0‑NA。
[0091] 在本实施例中,根据Bix对应的目标bit位和寄存器可存储数据的bit位,获取Bix需要的最优的寄存器的数量,并且第一寄存器和第二寄存器的总数量是固定的,避免因寄存器数量不足而导致运算时间过长,效率过低的现象出现,或因寄存器数量过多造成资源浪费的现象出现。
[0092] S700、根据Ci和Dix,获取到目标信号向量集。
[0093] S701、当Ci和Dix为目标信号向量时,获取到目标信号向量集,其中,本领域技术人员知晓,现有技术中任一通过信号向量获取信号向量集的方法均属于本实施例的保护范围,在此不再赘述。
[0094] S703、当Ci和Dix为非目标信号值时,将Ci和Dix作为初始信号向量集中的初始信号向量,存入数据库中,重复S100步骤‑S700步骤。
[0095] 上述实施例,在对CPU核心中的向量和矩阵中的元素进行处理的过程中,可以在寄存器中存储多个数据,并对寄存器中的所有数据同时进行处理,在多线程并行的处理过程中,对于每个线程中,对毫无函数关系的数据存在的多个寄存器可以同时进行处理,在计算量相同的情况下,减少了任务运行的总时长,提高了整体的运算效率。
[0096] 具体地,所述目标信号向量集中的目标信号值为对初始信号向量集中的初始信号值进行处理后生成的无需继续处理的信号值。
[0097] 具体地,所述非目标信号值为对初始信号向量集中的初始信号值进行处理后生成的待继续处理的信号值。
[0098] 本发明提供了一种数字信号的处理系统,系统包括:数据库、若干个寄存器、处理器、存储有计算机程序的第一存储器和第二存储器,当计算机程序被处理器执行时,实现以下步骤:获取初始信号向量对应的初始函数标识列表;获取初始信号向量对应的非关联信号向量集;获取第一中间信号向量集及第一信号向量;获取第二中间信号向量集及第二信号向量;获取目标信号向量集;可知,本发明一方面可以在寄存器中存储多个数据,能够对寄存器中的多个数据同时进行处理;另一方面在多线程并行计算的过程中,对于每个线程,可以对不存在函数关系的数据存在的多个寄存器同时进行处理,在计算量相同的情况下,减少了任务运行的总时长,提高了整体的运算效率。
[0099] 虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明开的范围由所附权利要求来限定。