CN111651138B - 一种集成电路、信号处理方法及装置、存储介质 - Google Patents
一种集成电路、信号处理方法及装置、存储介质 Download PDFInfo
- Publication number
- CN111651138B CN111651138B CN202010469417.8A CN202010469417A CN111651138B CN 111651138 B CN111651138 B CN 111651138B CN 202010469417 A CN202010469417 A CN 202010469417A CN 111651138 B CN111651138 B CN 111651138B
- Authority
- CN
- China
- Prior art keywords
- matrix
- signal
- triangular
- determining
- vector
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 239000011159 matrix material Substances 0.000 claims abstract description 298
- 239000013598 vector Substances 0.000 claims abstract description 147
- 238000000034 method Methods 0.000 claims description 68
- 238000004590 computer program Methods 0.000 claims description 5
- 239000000654 additive Substances 0.000 claims description 2
- 230000000996 additive effect Effects 0.000 claims description 2
- 238000007792 addition Methods 0.000 description 40
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 238000009825 accumulation Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011049 filling Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
Abstract
本申请一示例性实施例公开了一种集成电路,包括:乘法阵列,用于将表征待处理信号不同属性信息的正方形矩阵与表征所述待处理信号的信号强度的向量相乘;加法阵列,与所述乘法阵列相连,用于对所述向量与所述正方形矩阵相乘的乘积进行处理,以得到处理结果;本申请一示例性实施例还同时提供了一种信号处理方法及装置、存储介质。
Description
技术领域
本申请涉及集成电路,涉及但不限于一种集成电路、信号处理方法及装置、存储介质。
背景技术
在通信系统中,经常出现三角矩阵与向量相乘的情况。基于三角矩阵的固有特性,乘法操作和加法操作具有不固定的数据依赖性,因此乘法操作必须等待累加选项的结果,不能在每个时钟都处于活动状态,因此乘法器不能持续工作,导致了低能效比,进而导致高成本芯片。
发明内容
本申请一示例性实施例为解决相关技术中存在的至少一个问题而提供一种集成电路、信号处理方法及装置、存储介质。
本申请一示例性实施例的技术方案是这样实现的:
本申请一示例性实施例提供了一种集成电路,所述集成电路至少包括:
乘法阵列,用于将表征待处理信号不同属性信息的正方形矩阵与表征所述待处理信号的信号强度的向量相乘;
加法阵列,与所述乘法阵列相连,用于对所述向量与所述正方形矩阵相乘的乘积进行处理,以得到处理结果。
本申请一示例性实施例提供了一种信号处理方法,所述方法包括:
获取待处理信号;
确定用于表征所述待处理信号不同属性信息的至少两个三角矩阵和用于表征所述待处理信号的信号强度的向量;
根据所述至少两个三角矩阵,建立正方形矩阵;
根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的专用集成电路中运算器的目标数量;
将所述专用集成电路中的运算器的数量设定为所述目标数量,并采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果。
本申请一示例性实施例提供了一种信号处理装置,所述装置包括:
第一确定单元,用于确定获取的待处理信号的至少两个三角矩阵和用于表征所述待处理信号的信号强度的向量;
第一建立单元,根据所述至少两个三角矩阵,建立正方形矩阵;
第二确定单元,用于根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的专用集成电路中运算器的目标数量;
第一设定单元,用于将所述专用集成电路中的运算器的数量设定为所述目标数量,并采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果。
对应地,本申请一示例性实施例提供一种信号处理设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述信号处理方法中的步骤。
本申请一示例性实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述信号处理方法中的步骤。
本申请一示例性实施例一示例性提供了一种集成电路、信号处理方法及装置、存储介质,其中,首先,将表征待处理信号的不同属性信息的矩阵拼接成行数和列数相同的正方形矩阵,然后,采用正方形矩阵和向量进行运算,以实现信号的处理过程;这样,将多个三角矩阵拼接成正方形矩阵进行运算,对于每一行,运算的次数都是一个确定的数,那么在对正方形矩阵和向量运算过程中涉及到的运算器之间就是解耦的,即运算器之间不会相互依赖,从而既可以提高运算的效率,还可以减少专用集成电路中运算器的数量,进而以减少芯片中运算器占据的面积。
附图说明
图1A为本申请一示例性实施例集成电路的组成结构示意图;
图1B为本申请一示例性实施例集成电路的另一组成结构示意图;
图1C为本申请一示例性实施例集成电路的又一组成结构示意图;
图1D为本申请一示例性实施例集成电路的再一组成结构示意图;
图1E为本申请一示例性实施例集成电路的另一组成结构示意图;
图1F为本申请一示例性实施例信号处理方法实现流程示意图;
图2A为本申请一示例性实施例信号处理方法实现流程示意图;
图2B为本申请一示例性实施例信号处理方法的另一实现流程示意图;
图3为本申请一示例性实施例专用集成电路的逻辑实现示意图;
图4为本申请一示例性实施例专用集成电路的另一逻辑实现示意图;
图5为本申请一示例性实施例信号处理装置的组成结构示意图;
图6为本申请一示例性实施例的一种设备硬件实体示意图。
具体实施方式
下面将结合本申请一示例性实施例中的附图,对本申请一示例性实施例中的技术方案进行清楚、完整地描述。
本申请一示例性实施例提出一种信号处理方法,该方法应用于通信设备,另外,该方法所实现的功能可以通过设备的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该设备还包括处理器和存储介质。
对本申请一示例性实施例进行进一步详细说明之前,对本申请一示例性实施例中涉及的名词和术语进行说明,本申请一示例性实施例中涉及的名词和术语适用于如下的解释。
1)专用集成电路(Application Specific Integrated Circuit,ASIC),是为特定用户或特定电子系统制作的集成电路。数字集成电路的通用性和大批量生产,使电子产品成本大幅度下降,推进了计算机通信和电子产品的普及,但同时也产生了通用与专用的矛盾,以及系统设计与电路制作脱节的问题。同时,集成电路规模越大,组建系统时就越难以针对特殊要求加以改变。
2)三角矩阵,三角矩阵分上三角矩阵和下三角矩阵两种。上三角矩阵的对角线左下方的系数全部为零,下三角矩阵的对角线右上方的系数全部为零。三角矩阵可以看作是一般正方形矩阵的一种简化情形。比如,由于带三角矩阵的矩阵方程容易求解,在解多元线性方程组时,总是将其系数矩阵通过初等变换化为三角矩阵来求解;又如三角矩阵的行列式就是其对角线上元素的乘积,很容易计算。有鉴于此,在数值分析等分支中三角矩阵十分重要。一个所有顺序主子式不为零的可逆矩阵A可以通过LU分解变成一个单位下三角矩阵L与一个上三角矩阵U的乘积。
本申请实施例提供一种集成电路,图1A为本申请一示例性实施例集成电路的组成结构示意图,如图1A所示,集成电路10包括:
乘法阵列11,用于将表征待处理信号不同属性信息的正方形矩阵与表征所述待处理信号的信号强度的向量相乘。
在一些实施例中,待处理信号可以是通信系统中任意类型的信号,比如,由任意类型的发射天线发射的信号。在一些可能的实现方式中,乘法阵列11的组成结构如图1B所示,包括:
第一电路子阵列121,用于确定表征待处理信号不同属性信息的正方形矩阵;
这里,待处理信号的属性信息包括:该信号所占据的频段、该信号的接收天线的参数和发射天线的参数等,其中,天线的参数包括天线的位置、工作频段、输入阻抗和电压驻波比等。在一些可能的实现方式中,第一电路子阵列121的组成结构如图1C所示,包括:
第一确定模块131,用于确定用于表征所述待处理信号不同属性信息的至少两个三角矩阵;其中,所述至少两个三角矩阵,包括:第一三角矩阵和第二三角矩阵;比如,采用两种不同的处理方式对待处理信号进行处理,得到处理后的两种信号,分别确定这两种信号的三角矩阵。比如,先确定这两种信号的信号矩阵,然后,对信号矩阵求逆矩阵,得到这两种信号的三角矩阵。在三角矩阵中,每一行表示信号的接收天线和发射天线之间的相互关系,比如,同属于一个信号的接收天线和发射天线之间的对应关系,或者接收天线和发射天线之间的位置关系等。表征所述待处理信号的信号强度的向量中的元素可以是基于信号的强弱来确定的,还可以理解为是该信号经过的信道的信号强度。
第一翻转模块132,与第一确定模块相连,用于将所述第一三角矩阵沿着对角线翻转180度,得到第三三角矩阵。比如,如果第一三角矩阵是下三角矩阵,那么翻转180度之后,变成上三角矩阵,即第三三角矩阵,即第一三角矩阵和第三三角矩阵是元素相同,且元素位置对称的两个三角矩阵。
第一拼接模块133,与第一翻转模块相连,用于将所述第三三角矩阵的对角线与所述第二三角矩阵的对角线进行重叠,拼接形成所述正方形矩阵,并将所述正方形矩阵输出至所述第二电路子阵列。
这里,第一拼接模块133与第二电路子阵列相连,用于将所述正方形矩阵输出至所述第二电路子阵列。由于第一三角矩阵与第二三角矩阵是对同一信号进行不同方式的处理得到的,因此,第一三角矩阵和第二三角矩阵是三角位置相同的三角矩阵。所以,将其中一个三角矩阵沿着对角线翻转180度之后,通过拼接两个矩阵即可得到正方形矩阵。
第二电路子阵列122与所述第一电路子阵列121相连,用于确定表征所述待处理信号的信号强度的向量,将所述向量与所述正方形矩阵相乘,并将乘积输出至所述加法阵列。
在一些可能的实现方式中,第二电路子阵列122的组成结构如图1D所示,包括:
第一乘积模块141与所述第一拼接模块133相连,用于确定第一三角矩阵中的元素与向量之间的乘积,得到第一元素乘积集合;当完成第一三角矩阵中的元素与所述向量之间的乘积时,确定第二三角矩阵中的元素与所述向量之间的乘积,得到第二元素乘积集合。
比如,当需要将第一三角矩阵和第二三角矩阵进行相乘时,首先将这两个三角矩阵拼接成正方形矩阵,然后,第一乘积模块可以先计算第一三角矩阵中的元素与向量之间的乘积,不需要等待加法阵列对第一三角矩阵中每一行的加法项全部相加完成,即可在第一乘积模块完成所述第一三角矩阵中的元素与所述向量之间的乘积时,进行第二三角矩阵中的元素与所述向量相乘;从而提高了乘法器的运算效率。
第一输出模块142,与加法子阵列相连,用于确定所述第一元素乘积集合和所述第二元素乘积集合中处于同一行的元素乘积,并将所述同一行的元素乘积输出至所述加法阵列12。
这里,第一输出模块142的执行过程可以发生在第一乘积模块141的执行过程之前,也可以发生在第一乘积模块141的执行过程之后。
加法阵列12,与所述乘法阵列相连,用于对所述向量与所述正方形矩阵相乘的乘积进行处理,以得到处理结果。
在一些可能的实现方式中,加法阵列12的组成结构如图1B所示,包括:
加法子阵列123,与所述第二电路子阵列122相连,还用于对所述第一元素乘积集合中的元素乘积和所述第二元素乘积集合中的元素乘积逐行进行求和,得到所述处理结果。
在一些实施例中,加法子阵列123的组成结构如图1E所示,包括:
第一求和模块151与所述第一输出模块相连,用于当所述第一元素乘积集合中同一行的元素乘积的个数大于等于2时,对所述第一元素乘积集合中同一行的元素乘积进行求和,得到每一行的第一求和结果。
这里,首先将第一三角矩阵中第一行的元素与向量相乘,当元素乘积的个数等于2时,第一求和模块151开始计算这两个元素之和,直到对第一行的所有元素乘积项求和完毕,开始对第二行的元素乘积项进行求和,这样以此类推,得到第一三角矩阵中每一行的求和结果。
第二求和模块152与所述第一输出模块相连,用于当所述第二元素乘积集合中同一行的元素乘积的个数大于等于2时,对所述第二元素乘积集合中同一行的元素乘积进行求和,得到每一行的第二求和结果。
比如,对第一三角矩阵中的元素与向量之间相乘完成时,首先将第二三角矩阵中第一行的元素与向量相乘,当元素乘积的个数等于2时,第二求和模块152开始计算这两个元素之和,直到对第一行的所有元素乘积项求和完毕,开始对第二行的元素乘积项进行求和,这样以此类推,得到第二三角矩阵中每一行的求和结果。
第一处理模块153,分别与第一求和模块和第二求和模块相连,用于根据所述第一求和结果和所述第二求和结果,得到所述处理结果。
这里,参考需要对该待处理信号进行的操作,对第一求和结果和第二求和结果进行处理,得到处理结果。比如,对第一求和结果和第二求和结果进行滤波处理,得到处理结果。
在本申请实施例中,通过将两个三角形矩阵的元素巧妙地排列为一个正方形矩阵,优化了逻辑实现,减少了集成电路中加法器和乘法器的数量,从而节省了整个集成电路占据的芯片面积。
本申请实施例提供一种信号处理方法,图1F为本申请一示例性实施例信号处理方法实现流程示意图,如图1F所示,所述方法包括以下步骤:
步骤S101,获取待处理信号。
这里,待处理信号可以是通信系统中任意类型的信号,比如,由任意类型的发射天线发射的信号。
步骤S102,确定用于表征待处理信号不同属性信息的至少两个三角矩阵和用于表征所述待处理信号的信号强度的向量。
这里,在三角矩阵中,对角线上的元素为实数,其余的元素是由实部和虚部构成的。在一些可能的实现方式中,待处理信号的至少两个三角矩阵,可以理解为是通过不同的处理方式对待处理信号进行处理后得到的。比如,采用两种不同的处理方式对待处理信号进行处理,得到处理后的两种信号,分别确定这两种信号的三角矩阵。比如,先确定这两种信号的信号矩阵,然后,对信号矩阵求逆矩阵,得到这两种信号的三角矩阵。在三角矩阵中,每一行表示信号的接收天线和发射天线之间的相互关系,比如,同属于一个信号的接收天线和发射天线之间的对应关系,或者接收天线和发射天线之间的位置关系等。表征所述待处理信号的信号强度的向量中的元素可以是基于信号的强弱来确定的,还可以理解为是该信号经过的信道的信号强度。在一个具体例子中,在通信系统中,当出现需要将待处理信号的两个三角矩阵与向量相乘的情况时,通过两种不同的处理方式对待处理信号进行处理,并且通过信号中接收天线和发射天线之间的相互关系,确定出两个三角矩阵;另,基于待处理信号的信号强度得到该向量。由于该至少两个三角矩阵是针对同一信号进行不同的处理后得到的,所以这两个三角矩阵的行数和列数相同。
步骤S103,根据所述至少两个三角矩阵,建立正方形矩阵。
这里,将两个三角矩阵沿着对角线拼接成正方形矩阵,这样对角线上就有了两组元素,即同一个位置包括两个元素,可以将其看作是一个元素的“实部”和“虚部”。根据至少两个三角矩阵中的偶数个三角矩阵,建立正方形矩阵。正方形矩阵中包含拼接该正方形矩阵的三角矩阵的所有元素;比如,采用至少两个三角矩阵拼接成该正方形矩阵,那么该正方形矩阵中包含这至少两个三角矩阵中的所有元素,且正方形矩阵的行数为三角矩阵的最大行数,列数也是三角矩阵的最大列数。在一些可能的实现方式中,可以将这至少两个三角矩阵划分为数量相同且为偶数的多组,基于每一组中三角矩阵拼接成正方形矩阵,将划分之后剩余的三角矩阵,通过补零的方式补成正方形矩阵;或者,如果这至少两个三角矩阵的数量为偶数,则直接将这偶数个三角矩阵拼接为正方形矩阵;如果这至少两个三角矩阵的数量为奇数,则直接其中最大偶数个三角矩阵拼接为正方形矩阵,将剩余的一个三角矩阵通过补零的方式补成正方形矩阵。总是,将待处理信号的多个三角矩阵通过旋转等方式,创建包含三角矩阵中所有元素的正方形矩阵。在一个具体例子中,如果该至少两个三角矩阵的数量为2,比如,三角矩阵A和B,将三角形矩阵B的元素放在三角形矩阵A的空白部分上;这样,通过将两个三角形矩阵的元素巧妙地排列为一个正方形矩阵,使得三角矩阵与向量相乘时,每一行乘法和加法的数量是固定的,从而优化了实现信号处理的专用集成电路中的逻辑实现。
步骤S104,根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的运算器的目标数量。
这里,根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的集成电路中所需的运算器的目标数量,首先确定对正方形矩阵和向量要进行的处理方式,基于该处理方式,确定对所述待处理信号进行处理的运算器的目标数量;其中,处理方式可以理解为是基于待处理信号要进行的处理过程确定的,比如,在对信号进行处理过程中的运算方式或操作类型(比如,滤波操作、信号加强或者减弱等)等。在一个具体例子中,如果是对正方形矩阵和该向量进行相乘,那么通过确定相乘过程中涉及到的运算器的类型以及每一种运算类型的运算次数,确定运算器的目标数量。比如,由于对正方形矩阵和该向量进行相乘涉及到加法器和乘法器,那么可以基于乘法运算的次数和加法运算的次数,设定ASIC中所需的加法器和乘法的数量;或者,由于每一行的乘法运算和加法运算的次数都是相同的,所以可以在ASIC中设计一个加法器一个乘法器;这样就减少了ASIC中运算器的占用的芯片的面积,从而可以减小芯片的整体面积。
步骤S105,将所述专用集成电路中的运算器的数量设定为所述目标数量,以采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果。
这里,将目标数量的运算器设计在该ASIC中,采用这些目标数量的运算器对待处理信号进行处理,得到处理结果。在一个具体例子中,当对两个三角矩阵和向量进行相乘时,将这两个三角矩阵拼接成正方形矩阵,这样乘法项和加法项的数量在每一行中都是固定的,所有可以在ASIC中通过设计一个乘法器和一个加法器来实现不间断的将两个三角矩阵与向量相乘的过程,即,在对两个三角矩阵与向量相乘的过程中,不需要是将一个三角矩阵与向量相乘完成再进行另一个矩阵与向量相乘,在本申请实施例中,采用正方形矩阵与向量相乘,可以是采用乘法器将第一个三角矩阵中的元素与向量之间的乘法项计算完成之后,即刻可采用乘法器计算另一个三角矩阵中的元素与向量之间的乘法项;不需要等一个三角矩阵与向量相乘中的所有计算完成之后,再开始另一个三角矩阵与向量的乘法。而且在采用乘法器将第一个三角矩阵中的元素与向量之间的乘法项计算完成之后,可及时开始采用加法器计算第一个三角矩阵中的元素与向量之间的加法项。这样,在整个相乘的过程中,乘法器和加法器不会出现由于数据依赖而处于空闲状态的情况,使得乘法器和加法器的组合逻辑资源始终处于活动状态,因此提高了系统的能效比(Energy EfficiencyRatio,EER)。
在本申请实施例中,首先,将两个三角矩阵拼接成行数和列数相同的正方形矩阵,然后,确定对正方形矩阵和向量进行运算的过程中需要用到的运算器,进一步确定出运算器的目标数量;最后,采用这些运算器完成对待处理信号的处理过程;这样,将多个三角矩阵拼接成正方形矩阵进行运算,对于每一行,运算的次数都是一个确定的数,那么在对正方形矩阵和向量运算过程中涉及到的运算器之间就是解耦的,即运算器之间不会相互依赖,从而既可以提高运算的效率,还可以减少专用集成电路中运算器的数量,进而以减少芯片中运算器占据的面积。
在一些实施例中,信号的三角矩阵中每一行的元素表示接收天线和发射天线之间的对应关系,信号的三角矩阵以及表征信号强度的向量,可以通过以下方式确定,即步骤S102可以通过以下步骤实现:
步骤S111,获取所述待处理信号的属性信息。
这里,待处理信号的属性信息包括:该信号所占据的频段、该信号的接收天线的参数和发射天线的参数等,其中,天线的参数包括天线的位置、工作频段、输入阻抗和电压驻波比等。
步骤S112,采用至少两个预设处理参数对所述属性信息进行调整,得到至少两个调整后的属性信息。
这里,至少两个预设处理参数可以理解为是两种不同的信号处理方式中的处理参数,比如,信号增强处理中的增益因子,滤波处理中的滤波器参数等。步骤S112可以理解为是通过多种不同的处理方式对待处理信息进行处理,得到至少两种调整后的信号,每一中调整后的信号对应一个调整后的属性信息。
步骤S113,根据每一调整后的属性信息,确定对应的信号矩阵。
这里,根据每一个调整后的信号的属性信息,即调整后的属性信息,基于这些调整后的属性信息,得到能够表征这些属性信息的元素值,利用这些元素值形成信号矩阵。
步骤S114,确定每一信号矩阵的逆矩阵,得到所述至少两个三角矩阵。
这里,对每一个信号矩阵进行求逆,得到每一个信号矩阵的逆矩阵,即得到了每一个信号矩阵对应的三角矩阵。因为是针对一个待处理信号进行处理得到的多个三角矩阵,所以这多个三角矩阵的行列数相同,所以通过多个三角矩阵拼接成正方形矩阵。
上述步骤S111至步骤S114提供了一种实现“确定所述待处理信号的至少两个三角矩阵”的方式,在该方式中,通过首先,确定待处理信号经过至少两种不同的处理下分别对应的信号矩阵,然后,对每一个信号矩阵求逆,即可得到信号矩阵对应的三角矩阵。
步骤S115,确定所述待处理信号需要经过的至少一个信道,得到信道集合。
这里,确定该待处理信号需要经过的多个信道,比如,信道1至信道8中的一个或多个。在不同信道中,信号强度相同或不同。在其他实施例中,还信道集合中可以包括待处理信号未来要经过的信道和已经经过的信道。
步骤S116,确定所述待处理信号在所述信道集合中的每一信道中的信号强度,形成所述向量。
这里,由于待处理信号在每一个信道中的信号强度不同,将每一个信号强度作为该向量中的一个元素,得到一个一列n行的向量(n为大于1的整数)。
上述步骤S115和步骤S116提供了一种实现“确定用于表征所述待处理信号的信号强度的向量”的方式,在该方式中,通过确定待处理信号需要经过的信道,然后分析每一个信道中的信号强度,将这些信号强度用向量中的元素来表示,即可得到表征信号强度的向量。
在一些实施例中,当需要将待处理信号的两个三角矩阵与向量相乘时,通过将一个三角矩阵沿着对角线进行180度翻转,然后,将翻转后的三角矩阵与另一三角矩阵沿着对角线进行拼接,即可得到包含两个三角矩阵中所有元素的正方形矩阵,即当所述至少两个三角矩阵包括第一三角矩阵和第二三角矩阵时,步骤S103可以通过以下步骤实现,参见图2A,图2A为本申请一示例性实施例信号处理方法实现流程示意图,结合图1F和2A进行以下说明:
步骤S201,将所述第一三角矩阵沿着对角线翻转180度,得到第三三角矩阵。
在一些可能的实现方式中,如果第一三角矩阵是下三角矩阵,那么翻转180度之后,变成上三角矩阵,即第三三角矩阵,即第一三角矩阵和第三三角矩阵是元素相同,且元素位置对称的两个三角矩阵。由于第一三角矩阵与第二三角矩阵是对同一信号进行不同方式的处理得到的,因此,第一三角矩阵和第二三角矩阵是三角位置相同的三角矩阵。所以,将其中一个三角矩阵沿着对角线翻转180度之后,通过拼接两个矩阵即可得到正方形矩阵。
步骤S202,将所述第三三角矩阵的对角线与所述第二三角矩阵的对角线进行重叠,拼接形成所述正方形矩阵。
比如,第一三角矩阵和第二三角矩阵均为下三角矩阵,那么通过将第一三角矩阵沿着对角线翻转180度,得到为上三角矩阵的第三三角矩阵,然后,将上三角矩阵的第三三角矩阵和下三角矩阵的第二三角矩阵,沿着对角线进行拼接,即可得到包含两个三角矩阵中所有元素的正方形矩阵,而且在该正方形矩阵中,两个三角矩阵的对角线上的元素重叠在正方形矩阵的同一条对角线上,为了便于方便正方形矩阵与向量之间的运算,可以将这一条对角线上的重叠的两个元素看成是一个“复数”,即把两个元素一个看成该“复数”的实部,另一个看成该“复数”的虚部;由于在三角矩阵中对角线上的元素为实数,其余元素均为复数,所以这样将两个三角矩阵拼接成正方形矩阵之后,整个正方形矩阵中的元素均可看作是复数,即每一个元素均是由实部和虚部构成。
在本申请实施例中,将两个三角形矩阵的元素巧妙地排序为一个正方形矩阵。这样,当将不同的三角矩阵与向量进行运算时,由于正方形矩阵中每一行的元素个数相同,所以专用集成电路中各个运算器之间是不需要相互等待的;因此,各个运算操作之间是解耦的,可以互不影响,提高了专用集成电路中的运算效率。
在一些实施例中,对于专用集成电路中运算器的目标数量的确定方式如下所示,参见图2B,图2B为本申请一示例性实施例信号处理方法的另一实现流程示意图,结合图1F和图2B进行以下说明:即步骤S104可以通过以下步骤实现:
步骤S211,确定对所述正方形矩阵与向量进行运算所需的运算类型。
在专用集成电路中,首先要确定对多个三角矩阵与向量进行的处理方式,进而确定对正方形矩阵和向量进行运算所需的运算类型。在一些可能的实现方式中,如果将所述正方形矩阵和所述向量相乘,确定所需的加法运算类和乘法运算类;也就是说,如果在专用集成电路中,需要对多个三角矩阵与向量相乘,那么先将这些三角矩阵拼接成正方形矩阵,然后,确定三角矩阵和向量相乘的过程中需要的运算类型,即加法运算类和乘法运算类,那么说明在运算的过程中,需要采用专用集成电路中的加法器和乘法器。
步骤S212,根据所述运算类型,确定所述专用集成电路中运算器的目标数量。
在专用集成电路中,可以参考运算类型,设定需要在该电路中设计的运算器的数量。比如,对于乘法器和加法器,因为事先将多个三角矩阵拼接为正方形矩阵,所以将正方形矩阵和向量相乘时,由于每一个矩阵中的每一行与矩阵相乘的乘法项的数量都是固定的,所以可以通过在专用集成电路中设计一个加法器一个乘法器,无间断地完成对多个三角矩阵与向量的相乘。而且由于每一个矩阵中的每一行与矩阵相乘的乘法项的数量都是固定的,所以乘法操作和加法操作之间是解耦的,使得乘法器和加法器的组合逻辑资源始终处于活动状态,因此具有更高的EER。
在一些可能的实现方式中,首先,根据所述加法运算类,确定对所述正方形矩阵和所述向量相乘中进行元素求和的加法器的第一目标数量。比如,可以根据加法运算类中需要计算的加法项的数量,来确定加法器的第一目标数量;在一个具体例子中,如果加法项的数量小于第一阈值(比如,20项),则将加法器的第一目标数量设定为1,即在专用集成电路中设计一个加法器即可;如果加法项的数量大于第一阈值小于第二阈值(比如,50),则将加法器的第一目标数量设定为2,即在专用集成电路中设计两个加法器即可。还可以是按照一定的第一目标数量与加法项的数量之间的比例,来设定加法器的第一目标数量。
然后,根据所述乘法运算类,确定对所述正方形矩阵和所述向量相乘中进行元素乘积的乘法器的第二目标数量。比如,可以根据乘法运算类中需要计算的乘法项的数量,来确定乘法器的第二目标数量;在一个具体例子中,如果乘法项的数量小于第三阈值(比如,25项),则将乘法器的第二目标数量设定为1,即在专用集成电路中设计一个乘法器即可;如果乘法项的数量大于第三阈值小于第四阈值(比如,100),则将乘法器的第二目标数量设定为2,即在专用集成电路中设计两个乘法器即可。还可以是按照第二目标数量与乘法项的数量之间一定的比例,来设定乘法器的第二目标数量。
上述步骤S211和步骤S212提供了一种实现“根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的专用集成电路中运算器的目标数量”的方式,在该方式中通过判断对正方形矩阵和向量要进行的运算类型,来确定每一个运算类型对应的运算器的数量,这样,不会设计过多或者过少的运算器数量,所以既可以保证专用集成电路中运算器的运算速率,还可以减少运算器在电路中占据的面积。
在一些实施例中,当需要对多个三角矩阵和向量进行相乘时,可以通过第一目标数量设计加法器的数量,通过第二目标数量设计乘法器的数量,过程如下:
当将所述正方形矩阵和所述向量相乘时,将所述专用集成电路中的加法器的数量设定为所述第一目标数量,并将所述专用集成电路中的乘法器的数量设定为所述第二目标数量。
这里,当将所述正方形矩阵和所述向量相乘时,在专用集成电路中设计第一目标数量的加法器,设计第二目标数量的乘法器,这样既可以保证在电路中能够对高效的对待处理信号进行处理,还可以节省加法器和乘法器在电路中占据的芯片的面积。
在一些实施例中,在需要对待处理信号的多个三角矩阵和向量相乘的情况下,步骤S105中“采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果”,可以通过以下步骤实现:
第一步,当将所述正方形矩阵和所述向量相乘时,采用所述乘法器确定所述第一三角矩阵中的元素与所述向量之间的乘积,得到第一元素乘积集合。
比如,至少两个三角矩阵包括第一三角矩阵和第二三角矩阵,当需要将第一三角矩阵和第二三角矩阵进行相乘时,首先将这两个三角矩阵拼接成正方形矩阵,然后,可以采用乘法器先计算第一三角矩阵中的元素与向量之间的乘积,不需要等待加法器对第一三角矩阵中每一行的加法项全部相加完成,即可在乘法器完成所述第一三角矩阵中的元素与所述向量之间的乘积时,进行第二三角矩阵中的元素与所述向量相乘;从而提高了乘法器的运算效率。
第二步,当所述乘法器完成所述第一三角矩阵中的元素与所述向量之间的乘积时,采用所述乘法器确定第二三角矩阵中的元素与所述向量之间的乘积,得到第二元素乘积集合。
这里,可以是当所述乘法器完成所述第一三角矩阵中的元素与所述向量之间的乘积时,即可开始计算第二三角矩阵中的元素与所述向量之间的乘积,不需要等待第一三角矩阵与向量相乘的过程全部完成。
第三步,确定所述第一元素乘积集合和所述第二元素乘积集合中处于同一行的元素乘积。
这里,第三步可以是发生第二步之后,还可以是发生在第二步之前。
比如,第三步可以是发生第二步之后,过程如下:首先,确定所述第一元素乘积集合处于同一行的元素乘积;也就是说,将第一三角矩阵与向量的元素乘积是处于同一行的元素先确定出来;然后,采用所述加法器对所述同一行的元素乘积进行求和,得到所述处理结果。这样,就求和了整个第一三角矩阵与向量相乘后每一行的结果;同理,当加法器将第一三角矩阵中的元素与向量的乘法项相加完成之后,开始将第二三角矩阵中的元素与向量的乘法项相加,从而计算完成第二三角矩阵与向量的相乘。
如果是第三步可以是发生第二步之前,过程如下:
首先,当所述第一元素乘积集合中同一行的元素乘积的个数大于等于2时,采用所述加法器对所述第一元素乘积集合中同一行的元素乘积进行求和,得到每一行的第一求和结果。
比如,首先将第一三角矩阵中第一行的元素与向量相乘,当元素乘积的个数等于2时,加法器开始计算这两个元素之和,直到对第一行的所有元素乘积项求和完毕,开始对第二行的元素乘积项进行求和,这样以此类推,得到第一三角矩阵中每一行的求和结果。
其次,当所述第二元素乘积集合中同一行的元素乘积的个数大于等于2时,采用所述加法器对所述第二元素乘积集合中同一行的元素乘积进行求和,得到每一行的第二求和结果。
比如,当对第一三角矩阵中的元素与向量之间相乘完成时,首先将第二三角矩阵中第一行的元素与向量相乘,当元素乘积的个数等于2时,加法器开始计算这两个元素之和,直到对第一行的所有元素乘积项求和完毕,开始对第二行的元素乘积项进行求和,这样以此类推,得到第二三角矩阵中每一行的求和结果。
再次,根据所述第一求和结果和所述第二求和结果,得到所述处理结果。
这里,参考需要对该待处理信号进行的操作,对第一求和结果和第二求和结果进行处理,得到处理结果。比如,对第一求和结果和第二求和结果进行滤波处理,得到处理结果。
在一些实施例中,通信系统中,经常出现三角矩阵与向量相乘的情况。这里,三角矩阵通常为信号矩阵的逆矩阵,并且每一行表示天线对之间的相互关系。向量是增强元素的集合。当三角矩阵与向量相乘时,三角矩阵被增强。在一个具体例子中,如公式(1)和(2)所示,三角矩阵A和B是通过不同的处理得到的信号,矩阵A和B的主要对角线元素都是实数,其他都是复数,这两个矩阵都需要与向量C相乘。但对应于矩阵A和B的向量C因其元素的顺序不同而不同。对于矩阵A,序列为“C0,C1,C2,C3”,而对于矩阵B,序列为“C3,C2,C1,C0”。相关技术中是直接分别对三角矩阵A和B进行两次矩阵乘法,如公式(1)和(2)所示:
在公式(1)中,Ann表示三角矩阵A中不同的元素,Dn表示三角矩阵A中第n行与向量C的求和结果,Cn表示向量C中的元素值。在公式(2)中,Bnn表示三角矩阵B中不同的元素,En表示三角矩阵B中第n行与向量C的求和结果。
在实现公式(1)和(2)的原理代码中,乘法操作和加法操作耦合在一起,必须在同一个for循环中。
对于逻辑实现的图形,实施集成电路的综合工具只能把乘法器和加法器作为一个整体,尽管组合逻辑资源乘法器和加法器由于数据依赖而处于空闲状态,如图3所示,在将三角矩阵A和B与向量C相乘的过程中,首先,采用乘法器301先计算三角矩阵A与向量C相乘过程中的第一行的乘法项,然后,采用加法器302计算A与向量C相乘过程中的第一行的加法项,当逐行计算完成后,才利用乘法器303和加法器304开始执行三角矩阵A和B与向量C相乘的过程。也就是说,当采用乘法器301和加法器302完成三角矩阵A与向量C相乘的整个过程之后,乘法器303和加法器304才开始进行三角矩阵B与向量C相乘的过程,即操作E[i]=E[i]+B[i][j]*C[3-i]必须晚于操作D[i]=D[i]+a[i][j]*C[i]。
从图3可以看出,当将两个矩阵直接相乘时,乘法操作和加法操作捆绑在一起,而且每行累加操作的长度不同,所以乘法操作和加法操作之间的关系是动态的。
当综合工具实施集成电路时,乘法器(选项)由于不固定的数据依赖性(等待加法操作累加的结果),不能很好地流水线工作,但它是主要的组合逻辑资源,通常占用片上很大的面积。
这样,作为主要的组合逻辑资源,乘法器的利用系数取决于EER。在相关技术中由于乘法项和加法项没有固定的长度,将导致乘法器使用效率如EER低下。基于三角矩阵的固有特性,乘法操作和加法操作具有不固定的数据依赖性,因此乘法操作必须等待累加选项的结果,不能在每个时钟都处于活动状态,因此乘法器不能持续工作,导致了低能效比,进而导致高成本芯片。
基于此,本申请实施例提供一种信号处理方法,通过将两个三角形矩阵的元素巧妙地排列为一个正方形矩阵,优化了逻辑实现。如公式(3)所示,将三角形矩阵B的元素放在三角形矩阵A的空白部分上,例如第一行。由于矩阵A和B的主对角元素(例如A00,B33)都是实数,而其他元素是复数(例如B32),因此将矩阵B的主对角元素与矩阵A结合(例如(A00,B33)),得到正方形矩阵,这样正方形矩阵中的对角线元素看起来像是复数,包括实部和虚部,与其他元素相同。而且与加法操作的数量相关的乘法操作的数量是固定的。对于正方形矩阵中的每一行,始终具有四个乘法操作。因此,乘法操作和加法操作可以解耦,硬件描述语言可以划分为不同的for循环,一个仅具有乘法操作,另一个仅具有加法操作。这样一来,实现集成电路的综合工具就无需将它们作为一个整体,而可以采取更高级的措施来改善流水线。
在实现公式(3)的原理代码中,乘法操作和加法操作不在同一个for循环中,乘法操作和加法操作是未耦合。这样在逻辑实现的图形中,由于将两个三角形矩阵的元素巧妙地排序为一个正方形矩阵,与加法操作的数量相关的乘法操作的数量是固定的,因此乘法操作和加法操作之间是解耦的。
当综合工具实施集成电路时,可以采取更高级的措施来形成更好的流水线。如图4所示,在将三角矩阵A和B与向量C相乘的过程中,首先,采用乘法器401先计算三角矩阵A与向量C相乘过程中的第一行的乘法项,当完成三角矩阵A中与向量C相乘过程中的所有乘法项时,即可采用乘法器401三角矩阵B与向量C相乘过程中的乘法项。在执行乘法器401计算三角矩阵B与向量C相乘的过程中,当同一行的乘法项大于等于2时,加法器402开始将同一行的乘法项相加。比如,组合逻辑资源乘法器401可以在当前时刻执行A[i][j]*C[i],并且可以在执行完成A[i][j]*C[i]之后,即刻开始执行B[i][j]*C[3-i],而不是等待三角矩阵A与向量C相乘过程中加法项的累积操作的结果。那么,在专用集成电路中,因为执行B[i][j]*C[3-i]的结果已提前完成,加法器402可以在当前时刻上执行D[i]+=D[i],并且可以在下一时刻上执行E[i]+=E[i]。该方案使得乘法器和加法器的组合逻辑资源始终处于活动状态,因此与以前的方案相比具有更高的EER。
在本申请实施例中,由于逻辑资源的浪费通常是由数据相关性引起的,如何提高算法操作的并行性依赖于最终的芯片面积,在这种情况下,通过解开乘法器和加法器的数据相关性来简化乘法器附近的逻辑,从而降低了逻辑实现的成本。这样,将两个三角形矩阵的元素重新排序为方形矩阵,当进行矩阵乘法时,对于每一行,乘法的次数固定为一个确定的数。因此,乘法操作和加法操作彼此独立。当综合工具实现集成电路时,可以采取更先进的措施来制造更好的流水线,从而减少了芯片的总实施面积。而且在一个具体例子中,当固定总算法选项和吞吐量时,由于组合逻辑资源的可用性更高,逻辑实现(区域)的成本降低了30%。
本申请一示例性实施例提供一种信号处理装置,该装置包括所包括的各模块、以及各模块所包括的各单元,可以通过计算机设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等。
图5为本申请一示例性实施例信号处理装置的组成结构示意图,如图5所示,所述装置50包括:
第一获取单元500,用于获取待处理信号;
第一确定单元501,用于确定用于表征所述待处理信号不同属性信息的至少两个三角矩阵和用于表征所述待处理信号的信号强度的向量;
第一建立单元502,用于根据所述至少两个三角矩阵,建立正方形矩阵;
第二确定单元503,用于根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的专用集成电路中运算器的目标数量;
第一设定单元504,用于将所述专用集成电路中的运算器的数量设定为所述目标数量,并采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果。
在上述装置中,所述第一建立单元502,包括:
第一获取模块,用于获取所述待处理信号的属性信息;
第一调整模块,用于采用至少两个预设处理参数对所述属性信息进行调整,得到至少两个调整后的属性信息;
第一确定模块,用于根据每一调整后的属性信息,确定对应的信号矩阵;
第二确定模块,用于确定每一信号矩阵的逆矩阵,得到所述至少两个三角矩阵。
在上述装置中,第一确定单元501,包括:
第三确定模块,用于确定所述待处理信号需要经过的至少一个信道,得到信道集合;
第四确定模块,用于确定所述信道集合中信道的信号强度,形成所述向量。
在上述装置中,当所述至少两个三角矩阵包括第一三角矩阵和第二三角矩阵时,所述第一建立单元502,包括:
第一翻转模块,用于将所述第一三角矩阵沿着对角线翻转180度,得到第三三角矩阵;
第一拼接模块,用于将所述第三三角矩阵的对角线与所述第二三角矩阵的对角线进行重叠,拼接形成所述正方形矩阵。
在上述装置中,所述第二确定单元503,包括:
第五确定模块,用于确定对所述正方形矩阵与所述向量进行运算所需的运算类型;
第六确定模块,用于根据所述运算类型,确定所述专用集成电路中运算器的目标数量。
在上述装置中,所述第五确定模块,还用于:如果将所述正方形矩阵和所述向量相乘,确定所需的加法运算类和乘法运算类;
对应地,所述第六确定模块,还用于:根据所述加法运算类,确定对所述正方形矩阵和所述向量相乘中进行元素求和的加法器的第一目标数量;根据所述乘法运算类,确定对所述正方形矩阵和所述向量相乘中进行元素乘积的乘法器的第二目标数量。
在上述装置中,所述第一设定单元504,还用于当将所述正方形矩阵和所述向量相乘时,在所述专用集成电路中设计所述第一目标数量的加法器和所述第二目标数量的乘法器。
在上述装置中,所述第一设定单元504,包括:
第一乘积模块,用于当将所述正方形矩阵和所述向量相乘时,采用所述乘法器确定所述第一三角矩阵中的元素与所述向量之间的乘积,得到第一元素乘积集合;
第二乘积模块,用于当所述乘法器完成所述第一三角矩阵中的元素与所述向量之间的乘积时,采用所述乘法器确定第二三角矩阵中的元素与所述向量之间的乘积,得到第二元素乘积集合;
第七确定模块,用于确定所述第一元素乘积集合和所述第二元素乘积集合中处于同一行的元素乘积;
第一求和模块,用于采用所述加法器对所述第一元素乘积集合中的元素乘积和所述第二元素乘积集合中的元素乘积逐行进行求和,得到所述处理结果。
在上述装置中,所述第一求和模块,包括:
第一求和子模块,用于当所述第一元素乘积集合中同一行的元素乘积的个数大于等于2时,采用所述加法器对所述第一元素乘积集合中同一行的元素乘积进行求和,得到每一行的第一求和结果;
第二求和子模块,用于当所述第二元素乘积集合中同一行的元素乘积的个数大于等于2时,采用所述加法器对所述第二元素乘积集合中同一行的元素乘积进行求和,得到每一行的第二求和结果;
第一确定子模块,用于根据所述第一求和结果和所述第二求和结果,得到所述处理结果。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请一示例性实施例中,如果以软件功能模块的形式实现上述的信号处理方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请一示例性实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请一示例性实施例不限制于任何特定的硬件和软件结合。
图6为本申请一示例性实施例的一种设备硬件实体示意图,如图6所示,本申请一示例性实施例提供了一种设备600,包括:
处理器61以及存储有所述处理器61可执行指令的存储介质62,所述存储介质62通过通信总线63依赖所述处理器61执行操作,当所述指令被所述处理器61执行时,执行上述实施例一所述的信号处理方法。
需要说明的是,实际应用时,设备中的各个组件通过通信总线63耦合在一起。可理解,通信总线63用于实现这些组件之间的连接通信。通信总线63除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为通信总线63。
这里,需要说明的是,所述设备通常为具有前置双摄或者后置双摄功能的移动设备,所述移动设备可以以各种形式来实施。例如,本申请一示例性实施例中所描述的移动设备可以包括手机、平板电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)等。
对应地,本申请一示例性实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供的信号处理方法中的步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请一示例性实施例的实施过程构成任何限定。上述本申请一示例性实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本申请一示例性实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请一示例性实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得设备执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种集成电路,其特征在于,所述集成电路至少包括:
乘法阵列,用于将表征待处理信号不同属性信息的正方形矩阵与表征所述待处理信号的信号强度的向量相乘;
加法阵列,与所述乘法阵列相连,用于对所述向量与所述正方形矩阵相乘的乘积进行处理,以得到处理结果;
所述乘法阵列,包括:
第一电路子阵列,用于确定表征所述待处理信号不同属性信息的正方形矩阵;
第二电路子阵列与所述第一电路子阵列相连,用于确定表征所述待处理信号的信号强度的向量,将所述向量与所述正方形矩阵相乘,并将乘积输出至所述加法阵列;
所述第一电路子阵列,包括:
第一确定模块,用于确定用于表征所述待处理信号不同属性信息的至少两个三角矩阵;其中,所述至少两个三角矩阵,包括:第一三角矩阵和第二三角矩阵;
第一翻转模块,用于将所述第一三角矩阵沿着对角线翻转180度,得到第三三角矩阵;
第一拼接模块,用于将所述第三三角矩阵的对角线与所述第二三角矩阵的对角线进行重叠,拼接形成所述正方形矩阵,并将所述正方形矩阵输出至所述第二电路子阵列。
2.根据权利要求1所述的集成电路,其特征在于,所述第二电路子阵列,包括:
第一乘积模块与所述第一拼接模块相连,用于确定所述第一三角矩阵中的元素与所述向量之间的乘积,得到第一元素乘积集合;当完成所述第一三角矩阵中的元素与所述向量之间的乘积时,确定第二三角矩阵中的元素与所述向量之间的乘积,得到第二元素乘积集合;
第一输出模块,用于确定所述第一元素乘积集合和所述第二元素乘积集合中处于同一行的元素乘积,并将所述同一行的元素乘积输出至所述加法阵列。
3.根据权利要求2所述的集成电路,其特征在于,所述加法阵列包括:
加法子阵列,与所述第二电路子阵列相连,还用于对所述第一元素乘积集合中的元素乘积和所述第二元素乘积集合中的元素乘积逐行进行求和,得到所述处理结果。
4.根据权利要求3所述的集成电路,其特征在于,所述加法子阵列,包括:
第一求和模块与所述第一输出模块相连,用于当所述第一元素乘积集合中同一行的元素乘积的个数大于等于2时,对所述第一元素乘积集合中同一行的元素乘积进行求和,得到每一行的第一求和结果;
第二求和模块与所述第一输出模块相连,用于当所述第二元素乘积集合中同一行的元素乘积的个数大于等于2时,对所述第二元素乘积集合中同一行的元素乘积进行求和,得到每一行的第二求和结果;
第一处理模块,用于根据所述第一求和结果和所述第二求和结果,得到所述处理结果。
5.一种信号处理方法,其特征在于,所述方法包括:
获取待处理信号;
确定用于表征所述待处理信号不同属性信息的至少两个三角矩阵和用于表征所述待处理信号的信号强度的向量;
根据所述至少两个三角矩阵,建立正方形矩阵;
根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的集成电路中运算器的目标数量;
将所述集成电路中的运算器的数量设定为所述目标数量,并采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果;
所述确定用于表征所述待处理信号不同属性信息的至少两个三角矩阵,包括:
获取所述待处理信号的属性信息;
采用至少两个预设处理参数对所述属性信息进行调整,得到至少两个调整后的属性信息;
根据每一调整后的属性信息,确定对应的信号矩阵;
确定每一信号矩阵的逆矩阵,得到所述至少两个三角矩阵;
当所述至少两个三角矩阵包括第一三角矩阵和第二三角矩阵时,所述根据所述至少两个三角矩阵,建立正方形矩阵,包括:
将所述第一三角矩阵沿着对角线翻转180度,得到第三三角矩阵;
将所述第三三角矩阵的对角线与所述第二三角矩阵的对角线进行重叠,拼接形成所述正方形矩阵。
6.根据权利要求5所述的方法,其特征在于,所述根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的专用集成电路中运算器的目标数量,包括:
确定对所述正方形矩阵与所述向量进行运算所需的运算类型;
根据所述运算类型,确定所述集成电路中运算器的目标数量。
7.根据权利要求6所述的方法,其特征在于,所述确定对所述正方形矩阵与所述向量进行运算所需的运算类型,包括:
如果将所述正方形矩阵和所述向量相乘,确定所需的加法运算类和乘法运算类;
对应地,所述根据所述运算类型,确定所述集成电路中的运算器的目标数量,包括:根据所述加法运算类,确定对所述正方形矩阵和所述向量相乘中进行元素求和的加法器的第一目标数量;
根据所述乘法运算类,确定对所述正方形矩阵和所述向量相乘中进行元素乘积的乘法器的第二目标数量。
8.根据权利要求7所述的方法,其特征在于,所述采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果,包括:
当将所述正方形矩阵和所述向量相乘时,采用所述乘法器确定所述第一三角矩阵中的元素与所述向量之间的乘积,得到第一元素乘积集合;
当所述乘法器完成所述第一三角矩阵中的元素与所述向量之间的乘积时,采用所述乘法器确定第二三角矩阵中的元素与所述向量之间的乘积,得到第二元素乘积集合;
确定所述第一元素乘积集合和所述第二元素乘积集合中处于同一行的元素乘积;
采用所述加法器对所述第一元素乘积集合中的元素乘积和所述第二元素乘积集合中的元素乘积逐行进行求和,得到所述处理结果。
9.根据权利要求8所述的方法,其特征在于,所述采用所述加法器对所述第一元素乘积集合中的元素乘积和所述第二元素乘积集合中的元素乘积逐行进行求和,得到所述处理结果,包括:
当所述第一元素乘积集合中同一行的元素乘积的个数大于等于2时,采用所述加法器对所述第一元素乘积集合中同一行的元素乘积进行求和,得到每一行的第一求和结果;
当所述第二元素乘积集合中同一行的元素乘积的个数大于等于2时,采用所述加法器对所述第二元素乘积集合中同一行的元素乘积进行求和,得到每一行的第二求和结果;
根据所述第一求和结果和所述第二求和结果,得到所述处理结果。
10.一种信号处理装置,其特征在于,所述装置包括:
第一确定单元,用于确定获取的待处理信号的至少两个三角矩阵和用于表征所述待处理信号的信号强度的向量;
第一建立单元,根据所述至少两个三角矩阵,建立正方形矩阵;
第二确定单元,用于根据所述正方形矩阵和所述向量,确定对所述待处理信号进行处理的专用集成电路中运算器的目标数量;
第一设定单元,用于将所述专用集成电路中的运算器的数量设定为所述目标数量,并采用所述目标数量的运算器对所述待处理信号进行处理,得到处理结果;
所述第一建立单元,包括:
第一获取模块,用于获取所述待处理信号的属性信息;
第一调整模块,用于采用至少两个预设处理参数对所述属性信息进行调整,得到至少两个调整后的属性信息;
第一确定模块,用于根据每一调整后的属性信息,确定对应的信号矩阵;
第二确定模块,用于确定每一信号矩阵的逆矩阵,得到所述至少两个三角矩阵;
第三确定模块,用于确定所述待处理信号需要经过的至少一个信道,得到信道集合;
第四确定模块,用于确定所述信道集合中信道的信号强度,形成所述向量;
当所述至少两个三角矩阵包括第一三角矩阵和第二三角矩阵时,所述第一建立单元,包括:
第一翻转模块,用于将所述第一三角矩阵沿着对角线翻转180度,得到第三三角矩阵;
第一拼接模块,用于将所述第三三角矩阵的对角线与所述第二三角矩阵的对角线进行重叠,拼接形成所述正方形矩阵。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求5至9任一项所述信号处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010469417.8A CN111651138B (zh) | 2020-05-28 | 2020-05-28 | 一种集成电路、信号处理方法及装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010469417.8A CN111651138B (zh) | 2020-05-28 | 2020-05-28 | 一种集成电路、信号处理方法及装置、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111651138A CN111651138A (zh) | 2020-09-11 |
CN111651138B true CN111651138B (zh) | 2023-11-03 |
Family
ID=72349749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010469417.8A Active CN111651138B (zh) | 2020-05-28 | 2020-05-28 | 一种集成电路、信号处理方法及装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111651138B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5187795A (en) * | 1989-01-27 | 1993-02-16 | Hughes Aircraft Company | Pipelined signal processor having a plurality of bidirectional configurable parallel ports that are configurable as individual ports or as coupled pair of ports |
CN1234947A (zh) * | 1996-10-23 | 1999-11-10 | 埃瑞康姆公司 | 具有时空处理的频谱高效率高容量无线通信系统 |
JP2008129861A (ja) * | 2006-11-21 | 2008-06-05 | Nippon Telegr & Teleph Corp <Ntt> | 行列における数値分解方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7158559B2 (en) * | 2002-01-15 | 2007-01-02 | Tensor Comm, Inc. | Serial cancellation receiver design for a coded signal processing engine |
US7711765B2 (en) * | 2006-02-17 | 2010-05-04 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus to perform multiply-and-accumulate operations |
US10630410B2 (en) * | 2016-05-13 | 2020-04-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Network architecture, methods, and devices for a wireless communications network |
US10338919B2 (en) * | 2017-05-08 | 2019-07-02 | Nvidia Corporation | Generalized acceleration of matrix multiply accumulate operations |
-
2020
- 2020-05-28 CN CN202010469417.8A patent/CN111651138B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5187795A (en) * | 1989-01-27 | 1993-02-16 | Hughes Aircraft Company | Pipelined signal processor having a plurality of bidirectional configurable parallel ports that are configurable as individual ports or as coupled pair of ports |
CN1234947A (zh) * | 1996-10-23 | 1999-11-10 | 埃瑞康姆公司 | 具有时空处理的频谱高效率高容量无线通信系统 |
JP2008129861A (ja) * | 2006-11-21 | 2008-06-05 | Nippon Telegr & Teleph Corp <Ntt> | 行列における数値分解方法 |
Non-Patent Citations (1)
Title |
---|
数字信号处理器中阵列乘法器的研究与实现;向淑兰等;《微电子学与计算机》;20051120(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111651138A (zh) | 2020-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20170135752A (ko) | 효율적인 스파스 병렬 위노그래드 기반 컨볼루션 체계 | |
US9880845B2 (en) | Vector processing engines (VPEs) employing format conversion circuitry in data flow paths between vector data memory and execution units to provide in-flight format-converting of input vector data to execution units for vector processing operations, and related vector processor systems and methods | |
Yu et al. | Uni-OPU: An FPGA-based uniform accelerator for convolutional and transposed convolutional networks | |
Kruse et al. | Optimal regularity for semilinear stochastic partial differential equations with multiplicative noise | |
WO2023065983A1 (zh) | 计算装置、神经网络处理设备、芯片及处理数据的方法 | |
Mao et al. | F-DNA: Fast convolution architecture for deconvolutional network acceleration | |
Haridas et al. | Area efficient low power modified booth multiplier for FIR filter | |
CN111651138B (zh) | 一种集成电路、信号处理方法及装置、存储介质 | |
Meher et al. | High-throughput memory-based architecture for DHT using a new convolutional formulation | |
Lang et al. | Very high radix square root with prescaling and rounding and a combined division/square root unit | |
Ben Atitallah et al. | A new hardware architecture of the adaptive vector median filter and validation in a hardware/software environment | |
Liu et al. | An FPGA-based MVDR beamformer using dichotomous coordinate descent iterations | |
US7847349B2 (en) | Single-cycle FFT butterfly calculator | |
Cintra et al. | The arithmetic cosine transform: Exact and approximate algorithms | |
Balakrishnan et al. | Area Reduction in Field Programmable Gate Array with Convolutional Neural Network | |
CN110209373A (zh) | 实现复数乘法的方法及装置 | |
He et al. | Efficient FPGA design for Convolutions in CNN based on FFT-pruning | |
Mao et al. | A Unified Acceleration Solution Based on Deformable Network for Image Pixel Processing | |
CN116700670B (zh) | 乘累加电路、包含该乘累加电路的处理器和计算装置 | |
CN116774966B (zh) | 乘法器、乘累加电路、运算电路、处理器和计算装置 | |
JP2822684B2 (ja) | 離散コサイン変換装置および逆離散コサイン変換装置 | |
CN117648958A (zh) | 一种卷积神经网络加速器、数据处理方法及电子设备 | |
Devaraddi et al. | An FPGA based tiled systolic array generator to accelerate CNNs | |
Ge et al. | Efficient algorithm for 2-D arithmetic Fourier transform | |
CN116108902B (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 |