使用一个乘法器实现复数乘法的方法和装置的制作方法

文档序号:6396945阅读:280来源:国知局
专利名称:使用一个乘法器实现复数乘法的方法和装置的制作方法
技术领域
本发明涉及数字信号处理技术,尤其涉及一种使用一个乘法器实现复数乘法的方法和装置,属于通信技术领域。
背景技术
在通信技术领域的数字信号处理过程中,经常需要对大量的复数信号进行乘法运算,上述复数乘法运算可以通过乘法器实现。例如在计算如下的复数乘法(a+ci) · (b+di) = (ab-cd) + (ad+bc) i
按照现有技术的方案,需要四个乘法器分别计算ab、cd、ad和be的值,然后再计算ab-cd和ad+bc的值,得出最终结果。随着计算机和信息技术的快速发展,需要处理的信息量越来越大,在进行复数乘法运算时,需要使用大量的乘法器,而通常在数据信号的处理设备中,例如现场可编程门阵列(Field-Programmable Gate Array,以下简称FPGA),其中乘法器的数量都有限,而进行一次复数乘法却需使用多达四个乘法器。由此可见,现有技术中进行复数乘法运算时,普遍存在乘法器利用效率低的缺陷。

发明内容
本发明提供一种使用一个乘法器实现复数乘法的方法和装置,用于解决现有技术中存在的乘法器利用效率低的缺陷。本发明提供了一种使用一个乘法器实现复数乘法的方法,包括接收第一复数信号a+ci和第二复数信号b+di,所述第一复数信号和第二复数信号都是通信数字信号;根据所述第一复数信号的第一实部a和第一虚部c进行移位处理获取第一变换值S,以及根据所述第二复数信号的第二实部b和第二虚部d进行移位处理获取第二变换值t ;根据所述第一变换值s和所述第二变换值t,利用乘法器进行计算获取第一参考
it W1 = St ;根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部。本发明还提供了一种用一个乘法器实现复数乘法的装置,包括第一接收模块,用于接收第一复数信号a+ci和第二复数信号b+di,所述第一复数信号和第二复数信号都是通信数字信号;第一获取模块,用于根据所述第一复数信号的第一实部a和第一虚部c进行移位处理获取第一变换值S,以及根据所述第二复数信号的第二实部b和第二虚部d进行移位处理获取第二变换值t ;第一计算模块,用于根据所述第一变换值s和所述第二变换值t,利用乘法器进行计算获取第一参考值W1 = St ;第二获取模块,用于根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部。本发明实施例提供的使用一个乘法器实现复数乘法的方法和装置,通过在进行复数乘法时, 根据复数信号获取第一变换值和第二变换值,然后利用乘法器进行计算获取第一参考值,并可以进一步的根据第一参考值获取第一复数和第二复数的乘积的实部ab-cd,以及第一复数和第二复数的乘积的虚部ad+bc,该技术方案中只需要在计算第一参考值时使用乘法器,整个复数乘法计算过程中只需要一个乘法器即可实现,因此,本发明的技术方案能够有效地节约乘法器资源。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本发明实施例中使用一个乘法器实现复数乘法的方法的流程示意图;图2为本发明具体实施例中进行复数乘法的流程示意图一;图3为本发明具体实施例中进行复数乘法的流程示意图二 ;图4为本发明具体实施例中进行复数乘法的流程示意图三;图5为图3所示的复数乘法计算步骤另一实现方式的流程示意图;图6为本发明另一个具体实施例中第一参考值Wl的数据结构图;图7为本发明另一个具体实施例中Wi+(22h)的数据结构图;图8为本发明具体实施例中进行复数乘法的流程示意图四;图9为本发明具体实施例中进行复数乘法的流程示意图五;图10为本发明具体实施例中进行复数乘法的流程示意图六;图11为本发明具体实施例中进行复数乘法的流程示意图七;图12为本发明具体实施例中进行复数乘法的流程示意图八;图13为本发明具体实施例中进行复数乘法的流程示意图九;图14为本发明具体实施例中进行复数乘法的流程示意图十;图15为本发明具体实施例中进行复数乘法的流程示意图十一;图16为本发明具体实施例中进行复数乘法的流程示意图十二 ;图17为本发明具体实施例中进行复数乘法的流程示意图十三;图18为本发明具体实施例中进行复数乘法的流程示意图十四;图19为本发明具体实施例中进行复数乘法的流程示意图十五;图20为本发明具体实施例中进行复数乘法的流程示意图十六;图21为本发明具体实施例中进行复数乘法的流程示意图十七;图22为本发明具体实施例中进行复数乘法的流程示意图十八;图23为本发明具体实施例中进行复数乘法的流程示意图十九;图24为本发明具体实施例中进行复数乘法的流程示意图二十;
图25为本发明具体实施例中进行复数乘法的流程示意图二十一;图26为本发明具体实施例中进行复数乘法的流程示意图二十二 ;图27为本发明具体实施例中进行复数乘法的流程示意图二十三;
图28为本发明实施例中使用一个乘法器实现复数乘法的装置的结构示意图一;图29为本发明实施例中使用一个乘法器实现复数乘法的装置的结构示意图二 ;图30为本发明实施例中使用一个乘法器实现复数乘法的装置的结构示意图三;图31为本发明实施例中使用一个乘法器实现复数乘法的装置的结构示意图四。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。针对现有技术中,针对复数信号进行乘法计算时,需要使用大量的乘法器造成乘法器利用率低的缺陷,本发明提供了一种技术方案,其中仅使用一个乘法器便可以实现复数信号的乘法。图I为本发明实施例中使用一个乘法器实现复数乘法的方法的流程示意图,如图I所示,该方法包括如下的步骤步骤101、接收第一复数信号a+ci和第二复数信号b+di ;其中第一实部a、第一虚部C、第二实部b和第二虚部d的绝对值均小于或等于2H-1,其中k为正整数,所述第一复数信号和第二复数信号都是通信数字信号;步骤102、根据所述第一复数信号的第一实部a和第一虚部c进行移位处理获取第一变换值S,以及根据所述第二复数信号的第二实部b和第二虚部d进行移位处理获取第二变换值t ;步骤103、根据所述第一变换值s和所述第二变换值t,通过乘法器进行计算获取第一考值W1 = St ;步骤104、根据第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部。本发明上述实施例提供的技术方案,其中在进行复数乘法时,根据复数信号获取第一变换值和第二变换值,然后利用乘法器进行计算获取第一参考值,并可以进一步的根据第一参考值获取第一复数和第二复数的乘积的实部,以及第一复数和第二复数的乘积的虚部,该技术方案中只需要在计算第一参考值时使用乘法器,整个复数乘法计算过程中只需要一个乘法器即可实现,因此,本发明的技术方案能够有效地节约乘法器资源。本发明上述实施例中,其中对于第一复数信号的第一实部a、第一虚部C,以及所述第二复数信号的第二实部b和第二虚部d的绝对值均小于或等于2H-1,其中k为正整数;而其中根据第一复数信号获取的第一变换值s = a ·221 +(3,所述根据第二复数信号获取的第二变换值 t = b · 22k+d ;以及第一参考值 W1 = st = ab · 24k+ (ab+bc) · 22k+cd。在上述情况下,可以根据具体情况的需要,进一步的计算第二参考值W1
2 fk和/或第三参考值
权利要求
1.一种使用一个乘法器实现复数乘法的方法,其特征在于,包括 接收第一复数信号a+ci和第二复数信号b+di,所述第一复数信号和第二复数信号都是通信数字信号; 根据所述第一复数信号的第一实部a和第一虚部c进行移位处理获取第一变换值S,以及根据所述第二复数信号的第二实部b和第二虚部d进行移位处理获取第二变换值t ;根据所述第一变换值s和所述第二变换值t,利用乘法器进行计算获取第一参考值W1=St ; 根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部。
2.根据权利要求I所述的使用一个乘法器实现复数乘法的方法,其特征在于,所述第一复数信号的第一实部a和第一虚部C,以及所述第二复数信号的第二实部b和第二虚部d的绝对值均小于或等于2H-1,其中k为正整数;所述根据第一复数信号获取的第一变换值s = a · 22k+c,所述根据第二复数信号获取的第二变换值t = b · 22k+d ;以及所述第一参考值 W1 = st = ab · 24k+ (ad+bc) · 22k+cd。
3.根据权利要求2所述的使用一个乘法器实现复数乘法的方法,其特征在于,根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部包括 根据所述第一参考值W1获取第二参考值
4.根据权利要求2所述的使用一个乘法器实现复数乘法的方法,其特征在于,根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及第一复数和第二复数的乘积的虚部包括 根据所述第一参考值《I获取第二参考值W,= Ζ^1和第三参考值
5.根据权利要求2所述的使用一个乘法器实现复数乘法的方法,其特征在于,根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部包括 根据所述第一参考值W1获取第二参考值叫=^~f);
6.根据权利要求I所述的使用一个乘法器实现复数乘法的方法,其特征在于,在第一实部a、第一虚部C、第二实部b和第二虚部d的值均为大于或等于O且小于等于
7.一种使用一个乘法器实现复数乘法的装置,其特征在于,包括 第一接收模块,用于接收第一复数信号a+ci和第二复数信号b+di,所述第一复数信号和第二复数信号都是通信数字信号; 第一获取模块,用于根据所述第一复数信号的第一实部a和第一虚部c进行移位处理获取第一变换值S,以及根据所述第二复数信号的第二实部b和第二虚部d进行移位处理获取第二变换值t ; 第一计算模块,用于根据所述第一变换值s和所述第二变换值t,利用乘法器进行计算获取第一参考值W1 = St ; 第二获取模块,用于根据所述第一参考值W1获取所述第一复数和第二复数的乘积的实部,以及所述第一复数和第二复数的乘积的虚部。
8.根据权利要求7所述的使用一个乘法器实现复数乘法的装置,其特征在于,所述第一接收模块接收到的第一复数信号的第一实部a和第一虚部C,以及所述第二复数信号的第二实部b和第二虚部d的绝对值均小于或等于2H-1,其中k为正整数;所述第一获取模块根据第一复数信号获取的第一变换值s = a · 22k+c,所述根据第二复数信号获取的第二变换值t = b · 22k+d ;所述第一计算模块计算得到的第一参考值W1 = St =ab · 24k+ (ad+bc) · 22k+cd。
9.根据权利要求8所述的使用一个乘法器实现复数乘法的装置,其特征在于,所述第二获取模块包括 第一参考值获取单元,用于根据所述第一参考值W1获取第二参考值%
10.根据权利要求8所述的使用一个乘法器实现复数乘法的装置,其特征在于,所述第二获取模块包括 第一参考值获取单元,用于根据所述第一参考值W1获取第二参考值
11.根据权利要求8所述的使用一个乘法器实现复数乘法的装置,其特征在于,所述第二获取模块包括
12.根据权利要求7所述的使用一个乘法器实现复数乘法的装置,其特征在于,所述第一接收模块接收到的第一复数信号的第一实部a、第一虚部c、第二复数信号的第二实部b和第二虚部d的值均为大于或等于O的整数,所述第一获取模块根据第一复数信号获取的第一变换值s = a · 22k+c,所述根据第二复数信号获取的第二变换值t = b · 22k+d,以及所述第一计算模块计算得到的第一参考值W1 = st = ab ·24k+ (ab+bc) ·221 +ο(1,其中k为正整数; 所述第二获取模块具体用于获取W1的第O到2k_l比特位的值构成的非负整数为Cd的值,获取W1的第2k到4k-l比特位的值构成的非负整数作为所述第一复数和第二复数的乘积的虚部,获取W1的第4k到6k_l比特位的值构成的非负整数为ab的值;获取ab-cd的值作为所述第一复数和第二复数的乘积的实部。
全文摘要
本发明提供一种使用一个乘法器实现复数乘法的方法和装置,其中方法包括接收第一复数信号a+ci和第二复数信号b+di,所述第一复数信号和第二复数信号都是通信数字信号;根据第一复数信号的第一实部a和第一虚部c进行移位处理获取第一变换值s,以及根据第二复数信号的第二实部b和第二虚部d进行移位处理获取第二变换值t;根据第一变换值s和第二变换值t,利用乘法器进行计算获取第一参考值w1=st;根据第一参考值w1获取第一复数和第二复数的乘积的实部,以及第一复数和第二复数的乘积的虚部。本发明还提供了相应的装置。本发明的技术方案能够解决现有技术中存在的乘法器利用效率低的缺陷。
文档编号G06F7/52GK102741805SQ201280000316
公开日2012年10月17日 申请日期2012年3月30日 优先权日2012年3月30日
发明者付饶, 王祥 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1