CN102073472B - Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof - Google Patents

Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof Download PDF

Info

Publication number
CN102073472B
CN102073472B CN201110001029A CN201110001029A CN102073472B CN 102073472 B CN102073472 B CN 102073472B CN 201110001029 A CN201110001029 A CN 201110001029A CN 201110001029 A CN201110001029 A CN 201110001029A CN 102073472 B CN102073472 B CN 102073472B
Authority
CN
China
Prior art keywords
cordic
result
trigonometric function
unit
coprocessor
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.)
Expired - Fee Related
Application number
CN201110001029A
Other languages
Chinese (zh)
Other versions
CN102073472A (en
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.)
Techtotop Microelectronics Co Ltd
Original Assignee
Dongguan Techtop Microelectronics 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 Dongguan Techtop Microelectronics Co Ltd filed Critical Dongguan Techtop Microelectronics Co Ltd
Priority to CN201110001029A priority Critical patent/CN102073472B/en
Publication of CN102073472A publication Critical patent/CN102073472A/en
Application granted granted Critical
Publication of CN102073472B publication Critical patent/CN102073472B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

一种三角函数CORDIC迭代运算协处理器,所述协处理器包括,CORDIC迭代运算单元以及运算结果输出单元,所述CORDIC迭代运算单元根据输入角度执行CORDIC迭代运算并将运算结果输出到所述运算结果输出单元,所述协处理器还包括,角度范围转换单元,所述角度范围转换单元在CORDIC迭代运算单元将所述输入角度执行除以π/2运算,得到并将其商分解为m,n,p三部分,所述商等于4*m+n+p,其中m,n为整数,且0<=n<=3,p为小于1的浮点数,所述CORDIC迭代运算单元对p*π/2的值执行CORDIC三角函数迭代运算。采用本发明的技术方案后,三角函数CORDIC迭代运算协处理器支持支持全角度的三角函数运算,并且运算效率更高。

Figure 201110001029

A trigonometric function CORDIC iterative operation coprocessor, the coprocessor includes, a CORDIC iterative operation unit and an operation result output unit, and the CORDIC iterative operation unit performs a CORDIC iterative operation according to an input angle and outputs the operation result to the operation The result output unit, the coprocessor also includes an angle range conversion unit, and the angle range conversion unit divides the input angle by π/2 in the CORDIC iterative operation unit, obtains and decomposes its quotient into m, n, p three parts, the quotient is equal to 4*m+n+p, wherein m, n are integers, and 0<=n<=3, p is a floating point number less than 1, and the CORDIC iterative operation unit is for p *The value of π/2 performs iterative operation of CORDIC trigonometric functions. After adopting the technical solution of the present invention, the trigonometric function CORDIC iterative operation coprocessor supports the trigonometric function operation of all angles, and the operation efficiency is higher.

Figure 201110001029

Description

A kind of trigonometric function CORDIC interative computation coprocessor and arithmetic processing method
Technical field
The present invention relates to a kind of trigonometric function CORDIC interative computation coprocessor and arithmetic processing method, particularly comprise the wireless communication signals floating-point coprocessor of trigonometric function operation.
Background technology
Widely used floating-point coprocessor generally all can be supported trigonometric function operations such as sine, cosine, tangent in wireless communication signals is handled at present, generally uses the Cordic algorithm to carry out the coprocessor design.The Cordic algorithm is by J.E Volder exploitation and called after Coordinate Rotation Digital Computer, and come the computing of multiplication and division, logarithm and index perfect through expanded to right angle and hyperbolic coordinates by the circumference rotation.The Cordic algorithm provides a kind of uniform way to realize various basic functions, has therefore obtained in fields such as computing machine and communications using widely.
The Cordic algorithm comprises three kinds of coordinate systems, if the vector (X under rectangular coordinate system 0, Y 0) obtain vector (X according to following direction anglec of rotation θ shown in Figure 1 1, Y 1), the relation of two coordinates can be expressed as so:
X 1?=?X 0*cosθ?–?Y 0*sinθ
Y 1?=?Y 0*cosθ?+?X 0*sinθ
Also can be expressed as through conversion:
X 1?=?cosθ*?(X 0?–?Y 0*tanθ)
Y 1?=?cosθ*?(Y 0?+?X 0*tanθ)
And, if we remove the influence of cos θ, can obtain pseudo-rotation equation:
X 1?=?X 0?–?Y 0*tanθ
Y 1?=?Y 0?+?X 0*tanθ
In order to be beneficial to the realization of scale-of-two hardware circuit, we let tan θ=2 -iAnd we define d iThe direction of expression rotation, angle accumulator Z is used for following the trail of the angle stack of iteration rotation.Computing in the so above-mentioned formula just can realize with the mode of displacement, and is as follows:
X 1?=?cosθ*?(X 0?–?d i*Y 0*2 -i)
Y 1?=?cosθ*?(Y 0?+?d i*X 0*2 -i)
Z 1?=?Z 0?–?d ii
Cordic can also use other coordinate system to carry out the angle rotation, and general the application is linear coordinate system and hyperbolic coordinate system more widely.The Cordic algorithm is for hard-wired convenience, and is the computing in three coordinate systems is all unified in a standardized system of equations, as follows:
X n+1?=?X n?–?u*d n*Y n*2 -n
Y n+1?=?Y n?+?d n*X n*2 -n
Z n+1?=?Z n?–?d n*e i
Wherein u is following with the difference of e under three kinds of coordinate systems:
Circumferential coordinates: u=1; e i=tan -12 -i
Linear coordinate: u=0; e i=2 -i
Hyperbolic coordinate: u=-1; e i=tanh -12 -i
For above-mentioned trigonometric function operation, sinusoidal computing adopts the rotary mode of circumferential coordinates to realize, rotates to 0 through making angle accumulator, draws the result of sin functional operation; The same computing of cosine adopts the rotary mode of circumferential coordinates to realize, rotates to 0 through making angle accumulator, draws the result of cos functional operation; The tangent computing need be carried out the computing of secondary Cordic engine, is respectively sine, the computing of cosine and the computing of division.At first carry out the computing of sin and cos function through the rotary mode of circumferential coordinates, the result's through sin and cos division arithmetic draws the value of tan functional operation then.Wherein division arithmetic can adopt the arrow pattern of rectangular coordinate to carry out computing, moves closer in 0 through making the Y path components, finally draws the result of division arithmetic at the Z path direction.
Use shown in Cordic engine such as the following table 1:
Table 1
Figure 32452DEST_PATH_IMAGE001
Computing for above-mentioned trigonometric function; The input data of computing can receive the restriction of Cordic algorithm input angle; According to analysis to the Cordic algorithm, be the angular range between-99.7-99.7 in the input angle, the interative computation under the circumferential coordinates all can be restrained; Therefore general design all can limit the input angle within this scope, and is very big for the operational limits of trigonometric function.
Summary of the invention
The purpose of this invention is to provide a kind of trigonometric function CORDIC interative computation coprocessor and arithmetic processing method ,Input translation circuit through trigonometric function transforms within the input range of Cordic algorithm permission input parameter, thereby reaches the trigonometric function operation of supporting full angle, and does not have the restriction of input range.
The present invention is achieved in that a kind of trigonometric function CORDIC interative computation coprocessor, and said coprocessor comprises, CORDIC interative computation unit and operation result output unit; Said CORDIC interative computation unit is carried out the CORDIC interative computation and operation result is outputed to said operation result output unit according to the input angle, and said coprocessor also comprises, the angular range converting unit; Said angular range converting unit is carried out said input angle divided by the pi/2 computing in CORDIC interative computation unit, obtains and its merchant is decomposed into m, n; P three parts, said merchant equals 4*m+n+p, wherein m; N is an integer; And 0 ≤n ≤3, p is the floating number less than 1, and CORDIC trigonometric function interative computation is carried out to the value of p* pi/2 in said CORDIC interative computation unit.
Further; Said coprocessor also comprises the input pretreatment unit; The value and 1023 that said input pretreatment unit will be imported 11 exponent bits of data compares; If the value of input data exponent bits is greater than 1023, then said input data are carried out angle through said angular range converting unit earlier and are transformed; If the value of input data exponent bits is less than 1023, then said input data are directly carried out said CORDIC trigonometric function interative computation.
Further, said coprocessor also comprises displacement matching treatment unit, is used for the mantissa of input data is carried out shifting processing.
Further; Said coprocessor also comprises trigonometric function converting unit as a result, said trigonometric function as a result converting unit select sin (p* pi/2) and cos (p* pi/2) according to the value of sign bit and the n of input data value as a result of and the sign bit that draws operation result.
Further, said CORDIC interative computation unit carries out the directions X path of computing and the bit wide in Y direction path is 108, and the bit wide in Z direction path is 56.
Further, after the accomplishing divided by the pi/2 computing of said angular range converting unit, operation result is exported from Z direction path.
Further, said coprocessor also comprises the standardization and the processing unit that rounds off, and makes the output result meet the IEEE-754 standard through standard with rounding off to handle.
The present invention also provides a kind of trigonometric function operation disposal route of CORDIC interative computation coprocessor, and said method comprises,
The first step, said coprocessor are carried out exponent arithmetic and pre-service and displacement matching treatment in the same clock period, accomplish Cordic interative computation operand and prepare;
In second step, said coprocessor carries out the Cordic division iterations computing divided by pi/2 of said operand;
In the 3rd step, the next cycle after said division iterations computing is accomplished carries out pi/2 shift operation and angular transition;
In the 4th step, use Cordic interative computation unit to carry out trigonometric function operation;
In the 5th step, in a clock period, carry out the trigonometric function operation conversion after trigonometric function operation is accomplished and round off and format processing.
After adopting technical scheme of the present invention, the trigonometric function operation of full angle is supported in the support of trigonometric function CORDIC interative computation coprocessor, and operation efficiency is higher.
Description of drawings
Fig. 1 is a Cordic circumference rotation synoptic diagram;
Fig. 2 is arbitrarily angled conversion synoptic diagram;
Fig. 3 is a floating-point trigonometric function operation structural drawing;
Fig. 4 is a Cordic interative computation input data layout synoptic diagram;
Fig. 5 is mantissa's displacement matching treatment synoptic diagram;
Fig. 6 is that the shift operation of pi/2 multiple is handled;
Fig. 7 is trigonometric function operation and selection figure as a result;
Fig. 8 is a floating-point triangulo operation sequential chart of the present invention.
Embodiment
In order to make the object of the invention, technical scheme and advantage clearer,, the present invention is further elaborated below in conjunction with accompanying drawing and embodiment.Should be appreciated that specific embodiment described herein only in order to explanation the present invention, and be not used in qualification the present invention.
For trigonometric function operation, be periodic function, therefore, can carry out computing through the triangular equation conversion so if the Cordic algorithm can carry out the trigonometric function operation of angle between 0 ~ pi/2.Above-mentioned trigonometric function all is to be 2 π in the cycle; And pi/2 ~ 2 π all can obtain through the triangular equation conversion through the angle of 0 ~ pi/2; In like manner, the angle between pi/2 ~ 2 π can be the angle of 0 ~ pi/2 through angular transformation also, and is as shown in Figure 2.
If 0 ~ 2 π is divided into 0 ~ pi/2, pi/2 ~ π, π ~ 3 pi/2s, 3 pi/2s ~ four intervals of 2 π, carry out the angle θ of trigonometric function operation for needs so and the angle a of 0 ~ pi/2 has:
If θ belongs to 0 ~ pi/2, so: θ=a;
If θ belongs to pi/2 ~ π, so: θ=pi/2+a;
If θ belongs to π ~ 3 pi/2s, so: θ=π+a;
If θ belongs to 3 pi/2s ~ 2 π, so: θ=3 pi/2s+a;
If the value of θ is greater than 2 π, so according to the periodicity of trigonometric function, can with θ convert into 2n π and above-mentioned four intervals angle with.Wherein n is the integer quotient of θ divided by 2 π.The synoptic diagram of arbitrarily angled conversion is as shown in Figure 2.
According to foregoing description,, just can draw the trigonometric function operation result of θ through the functional operation result conversion of a if draw the trigonometric function operation of the angle a between 0 ~ pi/2 through the computing of Cordic algorithm.Concrete conversion is as shown in table 2.
Table 2
Trigonometric function θ = 2nπ+a θ = 2nπ+π/2+a θ = 2nπ+π+a θ = 2nπ+3π/2+a
Sinusoidal sin sin(θ) = sin(a) sin(θ) = cos(a) sin(θ) = -sin(a) sin(θ) = -cos(a)
Cosine cos cos(θ) = cos(a) cos(θ) = -sin(a) cos(θ) = -cos(a) cos(θ) = sin(a)
Tangent tan tan(θ) = tan(a) tan(θ) = -1/ tan(a) tan(θ) = tan(a) tan(θ) = -1/ tan(a)
According to the characteristic of above-mentioned Cordic algorithm and trigonometric function operation, operation that the trigonometric function operation of supporting the full angle floating-point to import need carry out and computing comprise exponent arithmetic and processing, Cordic input data processing, division and trigonometric function operation, angle and operation result conversion and floating number standardization processing.The present invention has designed a kind of trigonometric function operation of floating-point efficiently device, and structural drawing is as shown in Figure 3, in floating-point trigonometric function operation device 101; Comprise exponent arithmetic and pretreatment unit 102; Be used to prepare the displacement matching treatment unit 103 of Cordic computing input data, Cordic interative computation unit 104, pi/2 shift operation treatment circuit 105; Angular transition arithmetic element 106, trigonometric function operation be translation operation 107 and the standardization and the processing unit 108 that rounds off as a result.
In design of the present invention, do not carry out of the computing of trigonometric function operation input data, but carry out computing divided by pi/2 divided by 2 π.Before carrying out division arithmetic, need to import data and carry out the processing of exponential sum mantissa so that the floating number of the double precision of input converts the form that can carry out the Cordic interative computation to.Among the present invention for more effective completion functional operation; Definition is input to that Cordic iteration unit 107 is carried out the directions X path of computing and the bit wide in Y direction path is 108; Wherein high 4 is the signed integer position; Low 104 is decimal place, that is to say between high 4 and low 104 to have hidden radix point.The bit wide in definition Z direction path is 56, and wherein high 4 is the signed integer position, and low 52 is decimal place.Data layout as shown in Figure 4.
In exponent arithmetic and pretreatment unit 102, with the value and 1023 (2 of 11 exponent bits importing data 10-1) compare, and draw the input data index be littler or bigger than 1023 than 1023.Can know that by double-precision floating points index decoding definition 1023 expression indexes are+0.If the exponent e xpn of input data is less than 1023, the value that calculates 1023-expn so is as difference; If expn is greater than 1023, the value that calculates expn-1023 so is as difference.
That need handle simultaneously also has the exponent arithmetic result, is certain to less than pi/2 if expn, that is to say the data of input less than 1023, therefore need not carry out division arithmetic and can directly carry out trigonometric function operation.If expn is greater than 1023, and because pi/2=1.570796326794896619231 use double-precision floating point to represent that the index frameshit is 1023, therefore the exponent arithmetic result for the division arithmetic of importing data and pi/2 is the difference of expn and 1023.
In displacement matching treatment unit 103, the mantissa that imports data is carried out shifting processing then.For index less than 1023 input data, 104 of the lowest orders of integer-bit in the 1 corresponding Cordic input data layout of hiding in the mantissa, mantissa from left to right is 52 since 103.Therefore 1 and the mantissa that needs the to hide expn-1023 position that moves to right is carried out trigonometric function operation then, and the displacement synoptic diagram is as shown in Figure 5., need not be shifted greater than 1023 input data for index.
After displacement was accomplished, data layout had met the requirement of Cordic interative computation, therefore began the Cordic function iteration; According to the judgement in exponent arithmetic and the pretreatment unit 102; If the exponent e xpn of input data so at first need import the computing of data divided by pi/2, in Cordic interative computation unit 104 greater than 1023; After division arithmetic was accomplished, operation result was exported from Z direction path.Corresponding index is the value of expn-1023 in exponent arithmetic and the pretreatment unit 102.
Pi/2 shift operation treatment circuit 105 carries out the conversion of angle through the multiple relation.In order to represent to import the multiple relation of data and pi/2 more intuitively; The result that the computing of Z direction is drawn according to exponent arithmetic as a result the value of expn-1023 be shifted; Because the input data of the directions X of above-mentioned division and Y direction are all between 1 ~ 2, so the result of Z direction is also inevitable between 1 ~ 2, in shifting process; The operation result of Z direction is carried out shifting left of expn-1023 size; 56 results after the displacement are exactly the merchant's of input data and pi/2 partial results, wherein high 4 be integral part hang down 4, hanging down 52 is fraction part.Value in the invention after the definition displacement is quotient [55:0].
Because quotient [55:0] is the merchant of input data divided by pi/2, if definition:
m?=?quotient[55:54]
n?=?quotient?[53:52]
p?=?quotient?[51:0]
Have input data datain to be expressed as so:
datain?=?quotient*π/2?=?m*4*π/2?+?n*π/2?+?p*π/2?=?m*2π+?n*π/2?+?p*π/2。
M wherein, n is an integer, and wherein n is 0,1,2,3, and p is the floating number less than 1.
According to the trigonometric function characteristic in aforesaid Cordic computing input range and the table 2, the trigonometric function operation of input data datain can be drawn through conversion by the trigonometric function operation result of p* pi/2.With sinusoidal computing is example:
sin(datain)?=?sin(m*2π+?n*π/2?+?p*π/2)
=?sin(n*π/2?+?p*π/2)
According to the sinuso sine protractor in the table 2, above-mentioned computing can draw through the result of sin (p* pi/2) or cos (p* pi/2).In order to carry out the computing of sin (p* pi/2) or cos (p* pi/2), in angular transition unit 106, carry out the multiplying of p* pi/2, circuit structure is one 54 a multiplier.In addition, the value that in angular transition unit 106, also need preserve n is to select the result of sinusoidal or cosine after the Cordic trigonometric function operation is accomplished.
After angular transition is accomplished, in Cordic interative computation unit 107, carry out trigonometric function operation, through the rotary mode computing under the circumferential coordinates, can be through drawing the value of sin (p* pi/2) and cos (p* pi/2).After computing was accomplished, at trigonometric function as a result in the converting unit 108, the value of selecting sin (p* pi/2) and cos (p* pi/2) according to the value of the sign bit of input data and n as a result of and the sign bit that draws operation result.
Table 3
The result need round off and standardization processing to the result after selecting to accomplish, with the operation result of output double-precision floating point number format.In the standardization and the processing unit 109 that rounds off; The result of computing is carried out leading 0 counting,, therefore leading 0 calculate 0 the number that occurs first front of 1 among the result because mantissa's integer-bit of the floating number of formative double precision is 1; Be shifted according to count results then; First 1 is displaced to the lowest order of integer-bit and aligns, and according to the figure place of displacement index is adjusted, final output meets the operation result of IEEE-754 standard.Whole trigonometric function operation and result treatment synoptic diagram are as shown in Figure 7.
The circuit sequence aspect, for the path delay and the computing of each unit of balance, exponent arithmetic and pretreatment unit and displacement matching treatment unit carried out in the same clock period.Accomplish Cordic interative computation operand and prepare to carry out afterwards the computing of Cordic division iterations, the next cycle after interative computation is accomplished carries out pi/2 shift operation and angular transition.Use Cordic interative computation unit to carry out trigonometric function operation then, in a clock period, carry out the trigonometric function operation conversion after computing is accomplished and round off and format processing.As shown in Figure 8, begin to start and carry out exponential sum displacement matching treatment in the computing next cycle 201 afterwards, carry out division arithmetic at Cordic iteration cycle 202 then, the division arithmetic iteration needs 18 clock period.Accomplish after the division, the result according to the merchant who obtains in the next clock period 203 draws the value of m, n and p, and carries out angular transition to carry out trigonometric function operation.Value pppid2 according to the p* pi/2 after converting carries out trigonometric function operation in second interative computation cycle 204.In the clock period 205, carry out result's conversion with the symbol of importing data after iteration is accomplished, and round off and standardization processing according to n, at next cycle output operation result dataout, and the computing of set simultaneously complement mark done.
The above is merely preferred embodiment of the present invention, not in order to restriction the present invention, all any modifications of within spirit of the present invention and principle, being done, is equal to and replaces and improvement etc., all should be included within protection scope of the present invention.

Claims (5)

1.一种三角函数CORDIC迭代运算协处理器,所述协处理器包括, CORDIC迭代运算单元以及运算结果输出单元,所述CORDIC迭代运算单元根据输入角度执行CORDIC迭代运算并将运算结果输出到所述运算结果输出单元,其特征在于,所述输入角度是双精度浮点数,所述协处理器还包括输入预处理单元、角度范围转换单元和三角函数结果转换单元以及规范化及舍入处理单元,所述输入预处理单元将输入角度的11位指数位的值与1023进行比较,如果输入角度指数位的值小于1023,则所述输入角度直接进行CORDIC三角函数迭代运算;如果输入角度指数位的值大于1023,则所述输入角度先通过所述角度范围转换单元进行角度转化;所述角度范围转换单元将所述输入角度执行除以π/2运算,得到并将其商分解为m,n,p三部分,所述商等于4*m+n+p,其中m,n为整数,且0<=n<=3, p为小于1的浮点数,然后在所述CORDIC迭代运算单元进行p*π/2乘法运算,所述CORDIC迭代运算单元对p*π/2的值执行CORDIC三角函数sin(p*π/2)和cos(p*π/2)迭代运算,所述三角函数结果转换单元根据n的值选择sin(p*π/2)或cos(p*π/2)的值作为结果,以及根据输入角度的符号位得出运算结果的符号位,所述三角函数结果转换单元的运算结果再经过所述规范化及舍入处理单元进行舍入和规范化处理,最终结果由所述运算结果输出单元输出。 1. a trigonometric function CORDIC iterative operation coprocessor, described coprocessor comprises, CORDIC iterative operation unit and operation result output unit, described CORDIC iterative operation unit carries out CORDIC iterative operation according to input angle and operation result is exported to institute The operation result output unit is characterized in that the input angle is a double-precision floating-point number, and the coprocessor also includes an input preprocessing unit, an angle range conversion unit and a trigonometric function result conversion unit and normalization and rounding processing units, The input preprocessing unit compares the value of the 11-bit index position of the input angle with 1023, if the value of the input angle index position is less than 1023, the input angle directly performs the CORDIC trigonometric function iterative operation; If the value is greater than 1023, then the input angle is first converted into an angle through the angle range conversion unit; the angle range conversion unit divides the input angle by π/2 to obtain and decompose the quotient into m, n , p three parts, the quotient is equal to 4*m+n+p, wherein m, n are integers, and 0<=n<=3, p is a floating point number less than 1, and then performed in the CORDIC iterative operation unit p*π/2 multiplication operation, the CORDIC iterative operation unit performs the CORDIC trigonometric function sin(p*π/2) and cos(p*π/2) iterative operation on the value of p*π/2, the trigonometric function The result conversion unit selects the value of sin (p*π/2) or cos (p*π/2) as a result according to the value of n, and obtains the sign bit of the operation result according to the sign bit of the input angle, and the trigonometric function result The operation result of the conversion unit is rounded and normalized by the normalization and rounding processing unit, and the final result is output by the operation result output unit. 2.如权利要求1所述的协处理器,其特征在于,所述协处理器还包括移位匹配处理单元,用于对输入角度的尾数进行移位处理。 2. The coprocessor according to claim 1, further comprising a shift matching processing unit for performing shift processing on the mantissa of the input angle. 3.如权利要求1所述的协处理器,其特征在于,所述角度范围转换单元的除以π/2运算完成之后,输出运算结果。 3. The coprocessor according to claim 1, characterized in that, after the division by π/2 operation of the angle range conversion unit is completed, the operation result is output. 4.如权利要求1至3所述的协处理器,其特征在于,所述规范化及舍入处理单元使所述角度范围转换单元的输出结果符合IEEE-754标准。 4. The coprocessor according to claims 1 to 3, wherein the normalization and rounding processing unit makes the output result of the angle range conversion unit comply with the IEEE-754 standard. 5.一种CORDIC迭代运算协处理器的三角函数运算处理方法,其特征在于,所述方法处理的输入角度是双精度浮点数,所述方法包括, 5. a trigonometric function operation processing method of CORDIC iterative operation coprocessor, it is characterized in that, the input angle of described method processing is a double-precision floating-point number, and described method comprises, 第一步,所述协处理器将输入的角度进行指数运算及预处理以及移位匹配处理,完成CORDIC迭代运算操作数准备,当输入角度小于π/2时,直接进行CORDIC三角函数迭代运算,否则转入第二步; In the first step, the coprocessor performs exponential operation, preprocessing and shift matching processing on the input angle, and completes the CORDIC iterative operation operand preparation. When the input angle is less than π/2, it directly performs the CORDIC trigonometric function iterative operation, Otherwise go to the second step; 第二步,所述协处理器进行所述操作数的除以π/2的CORDIC除法迭代运算,输出运算结果; In the second step, the coprocessor performs the iterative operation of the CORDIC division of the operand divided by π/2, and outputs the result of the operation; 第三步,对第二步的输出结果进行移位,分解商为m,n,p三部分,所述商等于4*m+n+p,其中m,n为整数,且0<=n<=3, p为小于1的浮点数; The third step is to shift the output result of the second step, decompose the quotient into m, n, p three parts, the quotient is equal to 4*m+n+p, where m, n are integers, and 0<=n <=3, p is a floating point number less than 1; 第四步,使用CORDIC乘法运算进行p*π/2运算; The fourth step is to use CORDIC multiplication to perform p*π/2 operation; 第五步,对第四步运算结果进行CORDIC三角函数sin(p*π/2)和cos(p*π/2)迭代运算,根据n的值选择sin(p*π/2)或cos(p*π/2)的值作为结果,以及根据输入角度的符号位得出运算结果的符号位; The fifth step is to perform the iterative operation of the CORDIC trigonometric functions sin(p*π/2) and cos(p*π/2) on the results of the fourth step, and select sin(p*π/2) or cos( The value of p*π/2) is used as the result, and the sign bit of the operation result is obtained according to the sign bit of the input angle; 第六步,对结果进行舍入和规范化处理使输出结果符合IEEE-754标准。 In the sixth step, the result is rounded and normalized so that the output result conforms to the IEEE-754 standard.
CN201110001029A 2011-01-05 2011-01-05 Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof Expired - Fee Related CN102073472B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110001029A CN102073472B (en) 2011-01-05 2011-01-05 Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110001029A CN102073472B (en) 2011-01-05 2011-01-05 Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof

Publications (2)

Publication Number Publication Date
CN102073472A CN102073472A (en) 2011-05-25
CN102073472B true CN102073472B (en) 2012-10-03

Family

ID=44032024

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110001029A Expired - Fee Related CN102073472B (en) 2011-01-05 2011-01-05 Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof

Country Status (1)

Country Link
CN (1) CN102073472B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799412A (en) * 2012-07-09 2012-11-28 上海大学 CORDIC (coordinate rotation digital computer) accelerator based on parallel pipeline design
CN107329732B (en) * 2016-04-29 2021-07-16 中科寒武纪科技股份有限公司 Device and method for executing multiple transcendental function operations
US10168992B1 (en) * 2017-08-08 2019-01-01 Texas Instruments Incorporated Interruptible trigonometric operations
CN108196822B (en) * 2017-12-24 2021-12-17 北京卫星信息工程研究所 Double-precision floating point evolution operation method and system
CN108733349B (en) * 2018-07-27 2023-05-05 珠海一微半导体股份有限公司 Trigonometric function operation circuit based on fixed point number
KR20210134915A (en) * 2019-02-20 2021-11-11 옵티멈 세미컨덕터 테크놀로지스 인코포레이티드 Apparatus and method for hardware-efficient adaptive computation of floating-point trigonometric functions using a coordinate rotation digital computer (CORDIC)
CN110147218B (en) * 2019-04-09 2021-05-11 珠海市杰理科技股份有限公司 Operation circuit and method based on Cordic algorithm
CN110187866B (en) * 2019-06-03 2021-06-25 南京宁麒智能计算芯片研究院有限公司 Hyperbolic CORDIC-based logarithmic multiplication computing system and method
CN111752532B (en) * 2020-06-24 2021-03-26 上海擎昆信息科技有限公司 Method, system and device for realizing 32-bit integer division with high precision
CN114879933A (en) * 2021-07-27 2022-08-09 苏州联芯威电子有限公司 Motor control-oriented trigonometric function coprocessor based on RISC-V architecture

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101630243A (en) * 2009-08-14 2010-01-20 西北工业大学 Transcendental function device and method for realizing transcendental function utilizing same
CN101751065A (en) * 2008-12-02 2010-06-23 无锡华润矽科微电子有限公司 Phase computation method for DSP decode

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751065A (en) * 2008-12-02 2010-06-23 无锡华润矽科微电子有限公司 Phase computation method for DSP decode
CN101630243A (en) * 2009-08-14 2010-01-20 西北工业大学 Transcendental function device and method for realizing transcendental function utilizing same

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李全等.用FPGA实现CORDIC算法的32位浮点三角超越函数之正余弦函数.《电子产品世界》.2006,150-151. *
车力等.基于CORDIC算法的正余弦函数FPGA实现.《西安工程大学学报》.2010,第24卷(第06期),805-809. *

Also Published As

Publication number Publication date
CN102073472A (en) 2011-05-25

Similar Documents

Publication Publication Date Title
CN102073472B (en) Trigonometric function CORDIC iteration operation coprocessor and operation processing method thereof
CN109062540B (en) Reconfigurable floating point operation device based on CORDIC algorithm
CN103677738B (en) Low delay based on mixed mode cordic algorithm surmounts function implementation method and device substantially
CN110765709B (en) A hardware design method of radix-2-2 fast Fourier transform based on FPGA
CN102722469A (en) Elementary transcendental function operation method based on floating point arithmetic unit and coprocessor for method
CN109739470B (en) A Calculation System Based on Arbitrary Exponential Function of Type 2 Hyperbolic CORDIC
CN101630243B (en) Transcendental function device and method for realizing transcendental function utilizing same
CN108021781A (en) The FFT IP core designs and optimization method of a kind of parameterisable
US7546330B2 (en) Systems for performing multiply-accumulate operations on operands representing complex numbers
CN104536720B (en) The measuring method and system of angle measurement trigonometric function value based on FPGA
CN108733349A (en) A kind of trigonometric computing circuit based on fixed-point number
CN104133656A (en) Floating point number divider adopting shift and subtraction operation by tail codes and floating point number division operation method adopting shift and subtraction operation by tail codes
CN104166535B (en) Fixed-point processor and its overflow prevention method
CN103809931A (en) Design of dedicated high-speed floating point index arithmetic unit
CN107423026B (en) A kind of realization method and device of sine and cosine function calculation
CN107608656A (en) A kind of design method of four-quadrant trigonometric function solver
CN104657334B (en) A kind of base 2-4-8 mixed base butterfly of fast Fourier variation calculates device and its application
CN111078187A (en) A method for solving arbitrary power roots of single-precision floating-point numbers and its solver
Chaudhry Alternative numerical solutions of stationary queueing-time distributions in discrete-time queues: GI/G/1
CN111984226B (en) Cube root solving device and solving method based on hyperbolic CORDIC
CN208834289U (en) A kind of trigonometric computing circuit
Bansal et al. Memory-efficient Radix-2 FFT processor using CORDIC algorithm
CN107203491A (en) A kind of triangle systolic array architecture QR decomposers for FPGA
CN103713878A (en) Method for implementing sine and cosine CORDIC algorithm using complement method on FPGA
US9619205B1 (en) System and method for performing floating point operations in a processor that includes fixed point operations

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: TAIDOU MICROELECTRONICS TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: DONGGUAN TECHTOP MICROELECTRONICS CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 523070 Dongguan City, Guangdong province south of the New District of the United States on the eastern side of the road east of Dongguan city commercial center, block C, 1212

Patentee after: TECHTOTOP MICROELECTRONICS Co.,Ltd.

Address before: 523070 Dongguan City, Guangdong province south of the New District of the United States on the eastern side of the road east of Dongguan city commercial center, block C, 1212

Patentee before: TECHTOTOP MICROELECTRICS Co.,Ltd. DONGGUAN CITY

C56 Change in the name or address of the patentee
CP02 Change in the address of a patent holder

Address after: 510663 Guangzhou science and Technology Development Zone, Guangdong, Cai Cai Cai road, room A701, No. 11

Patentee after: TECHTOTOP MICROELECTRONICS Co.,Ltd.

Address before: 523070 Dongguan City, Guangdong province south of the New District of the United States on the eastern side of the road east of Dongguan city commercial center, block C, 1212

Patentee before: TECHTOTOP MICROELECTRONICS Co.,Ltd.

CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Li Song

Inventor after: Gao Feng

Inventor after: Xu Xiangbin

Inventor before: Li Song

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 510530 Room 301 and 401, Building 42, Dongzhong Road, East District, Guangzhou Economic and Technological Development Zone, Guangdong Province

Patentee after: TECHTOTOP MICROELECTRONICS Co.,Ltd.

Address before: 510663 Guangzhou science and Technology Development Zone, Guangdong, Cai Cai Cai road, room A701, No. 11

Patentee before: TECHTOTOP MICROELECTRONICS Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121003