角度计算方法及相关电路技术

技术编号:2916436 阅读:1455 留言:0更新日期:2012-04-11 18:40
一种用来计算复数的实部与虚部所夹角度的方法,该方法包含有接收一复数数据;根据该复数数据,产生第一值、第二值及判断结果,其中,该第一值及该第二值分别对应于该复数数据的实部与虚部的绝对值,该判断结果包含该复数数据的实部与虚部的正负符号信息及绝对值大小信息;根据该第一值及该第二值的大小,由该第一值及该第二值选择一除法运算的被除数及除数,以产生一除法结果;根据预存角度表,对该除法结果进行查表,以产生查表结果;以及根据该判断结果,调整该查表结果,以产生对应于该复数数据的角度。

【技术实现步骤摘要】

本专利技术涉及一种角度计算方法及相关电路,特别涉及一种可藉由小范围的反正切表及简单的移位和减法电路,求出复数角度的角度计算方法及相关电路。
技术介绍
在电路设计领域中,坐标旋转计算器(Coordinate Rotation DigitalComputer,CORDIC)是一熟知的电路单元,可用来求出一向量的旋转角度或一复数的实部与虚部之间的夹角,其是利用乘法器及加法器等简单电路实现,因此拥有低耗电及电路成本低的好处。然而,由于采用递归运算的逼近方式,坐标旋转计算器一般会有速度慢的缺点,导致无法应用在高速的电路设计上,例如:超宽带技术(Ultra Wide Band,UWB)等。此外,藉由查表(Table Look-up)求复数的实部与虚部之间夹角亦是一种常见的方式,其是将复数的虚部除以实部后,根据一反正切表(ArctanTable),将所得到的商进行查表,以找出相对应的角度。举例来说,当一输入复数数据IN_COM的实部及虚部分别为X及Y时,亦即IN_COM=X+jY,其所对应的角度ANG将为虚部Y除以实部X所得到的商Y/X的反正切值,亦即ANG=arctan(Y/X)。其中,由于实部X与虚部Y的正负号会决定其所对应的角度的象限,因此在电路设计上只需将商数Y/X所对应的第一象限的角度求出,亦即商数的绝对值|Y/X|所对应的角度,接着再根据实部X与虚部Y的正负号即可找出实部X与虚部Y实际所对应的角度。在此情形下,电路中所需存储的反正切表范围只须在0~∞之间。此外,由于arctan(∞)=π/2,而arctan(32)与π/2只有2%的误差,arctan(64)与π/2只有1%的误差,因此,一般在电路设计上大多会将所存储的反正切表的上限从∞近似到32或64,也就是2^5或2^6。另一方面,当商数Y/X的值很小的时候,例如:Y/X<2^-2或Y/X<2^-3时,商数Y/X的反正切值大致会等于商数Y/X的值,也就是arctan(Y/X)=Y/X。如此一来,藉由上述两种近似的方式,电路中-->所需存储的反正切表的范围可由0~∞缩减至0.25~32之间。尽管如此,现有电路中仍需存储范围在0.25~32之间的反正切表,势必会消耗庞大的电路面积。此外,利用查表的方式虽然可提升计算速度,然而,其需要藉由除法器或是倒数的查表与乘法器电路来实现,导致较高的耗电量。
技术实现思路
因此,本专利技术的主要目的即在于提供一种角度计算方法及相关电路。本专利技术揭露一种用来计算复数的实部与虚部所夹角度的方法。该方法包含有接收一复数数据;根据该复数数据,产生第一值、第二值及判断结果,其中该第一值及该第二值分别对应于该复数数据的实部与虚部的绝对值,该判断结果包含该复数数据的实部与虚部的正负符号信息及绝对值大小信息;根据该第一值及该第二值的大小,由该第一值及该第二值选择一除法运算的被除数及除数,以产生一除法结果;根据一预存角度表,对该除法结果进行查表,以产生一查表结果;以及根据该判断结果,调整该查表结果,以产生一对应于该复数数据的角度。本专利技术另揭露一种用来计算复数的实部与虚部所夹角度的电路。该电路包含有判断单元,耦接于该接收端,用来根据一复数数据,产生第一值、第二值及判断结果,其中,该第一值及该第二值分别对应于该复数数据的实部与虚部的绝对值,该判断结果包含该复数数据的实部与虚部的正负符号信息及绝对值大小信息;除法单元,耦接于该判断单元,用来根据该第一值及该第二值的大小,由该第一值及该第二值选择一除法运算的被除数及除数,以产生一除法结果;查表单元,耦接于该除法单元,用来根据一预存角度表,对该除法结果进行查表,以产生查表结果;以及调整单元,耦接于该查表单元及该判断单元,用来根据该判断结果,调整该查表结果,以产生一对应于该复数数据的角度。附图说明图1为本专利技术实施例一角度计算流程的示意图。图2为图1实施例中一除法运算流程的示意图。图3为本专利技术实施例一角度计算电路的示意图。附图符号说明-->10                           角度计算流程20                           除法运算流程30                           角度计算电路100、110、120、130、140、150、160、170、180、190、200、210、220、230、240                       步骤IN_COM                       复数数据X                            实部Y                            虚部|X|                          实部绝对值|Y|                          虚部绝对值|X/Y|、|Y/X|                 商数ANG                          复数数据的角度31                           判断单元32                           除法单元33                           查表单元34                           角度调整单元。具体实施方式为了清楚说明本专利技术,请先参考下列尤拉公式(Euler Equation):Arctan(a)+Arctan(b)=Arctan((a+b)/(1-a*b)),其中,a*b<1。仔细观察上式,当b趋近于1/a时,上式可改写成:Arctan(a)+Arctan(1/a)=π/2。也就是说,任一值的反正切值与其倒数的反正切值之和将会等于π/2,或是说等于90度。如此一来,本专利技术可据此大幅缩减电路中所需存储的反正切表(Arctan Table)的范围。举例来说,当一输入复数数据IN_COM的实部及虚部分别为X及Y时,亦即IN_COM=X+jY,其所对应的角度ANG将为虚部Y除以实部X所得到的商Y/X的反正切值,亦即ANG=arctan(Y/X)。其中,由于实部X与虚部Y的正负号会决定其所对应的角度的象限,因此在电路设计上只需将商数Y/X所对应的第一象限的角度求出,亦即商数的绝对值|Y/X|所对应的角度,接着再根据实部X与虚部Y的正负号即可找出实部X与虚部Y实际所对应的角度。在此情形下,电路中所需存储的反正切表范围只须在0.25~32之间。因此,-->若实部X的大小大于或等于虚部Y的大小时,亦即|X|≧|Y|或|Y/X|≦1时,此时本专利技术只需藉由范围在0.25~1之间的反正切表,即可查表得到商数Y/X所对应的第一象限的角度(亦即商数的绝对值|Y/X|所对应的角度),进而根据实部X与虚部Y的正负号求出输入复数数据IN_COM所对应的角度。相反地,若实部X的大小小于虚部Y的大小时,亦即|X|<|Y|或|X/Y|<1时,由上述可知,由于商数|Y/X|的反正切值与商数|X/Y|的反正切值之和将会等于π/2,因此本专利技术可先藉由范围在0.25~1之间的反正切表,查表得到商数|X/Y|的反正切值,本文档来自技高网
...

【技术保护点】
一种用来计算复数的实部与虚部所夹角度的方法,包含有: 接收一复数数据; 根据该复数数据,产生第一值、第二值及判断结果,其中,该第一值及该第二值分别对应于该复数数据的实部与虚部的绝对值,该判断结果包含该复数数据的实部与虚部的正负符号信息及绝对值大小信息; 根据该第一值及该第二值的大小,由该第一值及该第二值选择一除法运算的被除数及除数,以产生一除法结果; 根据一预存角度表,对该除法结果进行查表,以产生一查表结果;以及 根据该判断结果,调整该查表结果,以产生一对应于该复数数据的角度。

【技术特征摘要】
1.一种用来计算复数的实部与虚部所夹角度的方法,包含有:接收一复数数据;根据该复数数据,产生第一值、第二值及判断结果,其中,该第一值及该第二值分别对应于该复数数据的实部与虚部的绝对值,该判断结果包含该复数数据的实部与虚部的正负符号信息及绝对值大小信息;根据该第一值及该第二值的大小,由该第一值及该第二值选择一除法运算的被除数及除数,以产生一除法结果;根据一预存角度表,对该除法结果进行查表,以产生一查表结果;以及根据该判断结果,调整该查表结果,以产生一对应于该复数数据的角度。2.如权利要求1所述的方法,其中,根据该第一值及该第二值的大小,由该第一值及该第二值选择该除法运算的被除数及除数,以产生该除法结果,是当该第一值大于该第二值时,选择该第一值为该除法运算的除数,该第二值为该除法运算的被除数,以产生该除法结果。3.如权利要求1所述的方法,其中,根据该第一值及该第二值的大小,由该第一值及该第二值选择该除法运算的被除数及除数,以产生该除法结果,是当该第一值小于该第二值时,选择该第一值为该除法运算的被除数,该第二值为该除法运算的除数,以产生该除法结果。4.如权利要求1所述的方法,其中,该除法运算是以移位与减法实现。5.如权利要求1所述的方法,其中,该预存角度表是一反正切表,其范围小于1。6.如权利要求5所述的方法,其中,该预存角度表的范围是在0.25到1之间。7.如权利要求1所述的方法,其中,根据该判断结果,调整该查表结果,以产生该对应于该复数数据的角度包含:根据该第一值及该第二值的大小,处理该查表结果,以产生一第一角度;以及根据该复数数据的实部与虚部的正负符号信息,调整该第一角度至一相对应象限,以产生该对应于该复数数据的角度。8.如权利要求7所述的方法,其中,根据该第一值及该第二值的大小,处理该查表结果,以产生该第一角度,是当该第一值大于该第二值时,将该查表结果输出为该第一角度。9.如权利要求7所述的方法,其中,根据该第一值及该第二值的大小,处理该查表结果,以产生该第一角度,是当该第一值小于该第二值时,将该查表结果调整至一相对应的余角,并将该相对应的余角输出为该第一角度。10.如权利要求7所述的方法,其中,根据该复数数据的实部与虚部的正负符号信息,调整该第一角度至该相对应象限,以产生该对应于该复数数据的角度,是当该复数数据的实部与虚部皆为正数时,将该第一角度输出为该对应于该复数数据的角度。11.如权利要求7所述的方法,其中,根据该复数数据的实部与虚部的正负符号信息,调整该第一角度至该相对应象限,以产生该对应于该复数数据的角度,是当该复数数据的实部与虚部分别为负数及正数时,将该第一角度调整为一相对应的补角,并输出为该对应于该复数数据的角度。12.如权利要求7所述的方法,其中,根据该复数数据的实部与虚部的正负符号信息,调整该第一角度至该相对应象限,以产生该对应于该复数数据的角度,是当该复数数据的实部与虚部分别为正数及负数时,将该第一角度调整为一相对应补角的负值,并输出为该对应于该复数数据的角度。13.如权利要求7所述的方法,其中,根据该复数数据的实部与虚部的正负符号信息,调整该第一角度至该相对应象限,以产生该对应于该复数数据的角度,是当该复数数据的实部与虚部皆为负数时,将该第一角度调整为该第一角度的负值,并输出为该对应于该复数数据的角度。14.一种用来计算复数的实部与虚部所夹角度的电路,包含有:判断单元,用来根据一复数数据,产生第一值、第二值及判断结果,其中,该第一值及该第二...

【专利技术属性】
技术研发人员:张琦栋李华翰陈毓麟
申请(专利权)人:安国国际科技股份有限公司
类型:发明
国别省市:71[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1