Trigonometric function operation device
By combining the address generator and the correction unit, the problem of increased circuit size in the prior art is solved, and the effect of improving the accuracy and processing speed of trigonometric function calculations is achieved without increasing the circuit size.
Patent Information
- Application Number
- CN202010609183.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-07-01
- Filing Date
- 2020-06-29
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2040-06-29
AI Technical Summary
In order to improve the accuracy of generating sine waves, existing technologies require increasing the size of the computational circuit, which leads to the problem of increased circuit size.
An address generator is used to generate address signals of multiple bit strings. The calculation is performed using a separately stored trigonometric function table and a correction unit. The calculation results are corrected by the correction value to ensure the accuracy of the trigonometric function calculation without increasing the circuit size.
Without increasing the size of the arithmetic circuit, the accuracy of trigonometric function calculations was ensured, the data length was shortened, the processing speed was improved, and the storage capacity was reduced.
Smart Images

Figure CN112181359B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to a trigonometric function operation device. BACKGROUND
[0002] As a technique of generating a sine wave, the following technique is known. For example, in "Making of Sin wave - Technique of reference table by audio signal processing (7th time) DSP to be learned" written by Seiichi Horie, Interface, CQ Publishing, October 2007, p. 166-174 (Non-Patent Literature 1), it is described that, in a case where a sine wave is generated by calculation of a trigonometric function based on a reference table, by using an addition theorem of a trigonometric function represented by the following formula (1), it is possible to suppress the data amount of the table. Specifically, it is described that, in a case where a circumference is expressed with 16 bits, a table in which the circumference is divided into 256 parts and a table in which the circumference is divided into 65536 parts are prepared, the 16-bit index representing the circumference is divided into each 8 bits of high and low, each table is referred to with the divided index, and by synthesizing the values using the formula (1), it is possible to generate a trigonometric function after dividing the circumference with 16-bit precision.
[0003] [Formula 1]
[0004] sin (a + b) = sin a cos b + cos a sin b... Formula (1) SUMMARY
[0005] PROBLEMS TO BE SOLVED BY THE INVENTION
[0006] However, even in a case where a sine wave is generated using the addition theorem as described above, in order to improve the precision of the sine wave, it is necessary to increase the data length of the data recorded in the table. For example, in a case where a sine wave is generated without error with precision of the 8th digit after the decimal point, it is necessary to record the values of sin a, cos a, sin b, and cos b represented with precision of the 10th digit after the decimal point in the table in advance. In this way, when the data length of the data recorded in the table increases, the circuit scale of the operation circuit such as a multiplication circuit and an addition circuit, which perform operation processing using the values recorded in the table, increases.
[0007] The present disclosure was completed in view of the above, and aims to provide a trigonometric function operation device capable of ensuring the precision of the trigonometric function operation without accompanying an increase in the circuit scale of the operation circuit.
[0008] MEANS FOR SOLVING THE PROBLEM
[0009] To achieve the above object, a trigonometric function operation device of the present disclosure has: an address generator that generates an address signal composed of a plurality of bit strings corresponding to phases; a trigonometric function table that stores a first sine and a first cosine corresponding to phases indicated by high-order bits of the address signal, respectively, and a second sine and a second cosine corresponding to phases indicated by low-order bits of the address signal, respectively; an operation circuit that outputs a sine corresponding to the address signal as an operation value through operation processing using the first sine, the first cosine, the second sine, and the second cosine corresponding to the address signal extracted with reference to the trigonometric function table; and a correction unit that corrects the operation value according to a correction value corresponding to the address signal.
[0010] Effects of the Invention
[0011] According to the present disclosure, it is possible to ensure the accuracy of the trigonometric function operation without accompanying an increase in the circuit scale of the operation circuit. BRIEF DESCRIPTION OF DRAWINGS
[0012] Figure 1 is a diagram showing an example of a storage unit of an embodiment of the present disclosure.
[0013] Figure 2 is a diagram showing an example of a first trigonometric function table of an embodiment of the present disclosure.
[0014] Figure 3 is a diagram showing an example of a second trigonometric function table of an embodiment of the present disclosure.
[0015] Figure 4 is a block diagram showing an example of a correction value table according to an embodiment of the present disclosure.
[0016] Figure 5 is a block diagram showing an example of a functional structure of a trigonometric function operation device of an embodiment of the present disclosure.
[0017] Figure 6 is a block diagram showing an example of a functional structure of a trigonometric function operation device of a comparative example. DETAILED DESCRIPTION
[0018] Hereinafter, embodiments for carrying out the present disclosure will be explained in detail with reference to the drawings.
[0019] First, reference will be made to Figure 1The storage section 12 according to the present embodiment will be described. The storage section 12 is realized by a volatile or non-volatile storage medium such as a ROM (Read Only Memory), a RAM (Random Access Memory), a register, a HDD (Hard Disk Drive), a SSD (Solid State Drive), and a flash memory. In the storage section 12 as the storage medium, the first trigonometric function table 21, the second trigonometric function table 22, and the correction value table 41 are stored.
[0020] Figure 2 An example of the first trigonometric function table 21 will be described. The first trigonometric function table 21 is a table in which a first sine and a first cosine corresponding to a phase indicated by a high-order bit of an address signal are stored, respectively. As shown in FIG. 2, as an example, in the first trigonometric function table 21, a first sine sin a and a first cosine cos a corresponding to a phase a (0°≤a≤90°) indicated by a high-order bit of an address signal are stored at every 10°. In the present embodiment, the first sine sin a and the first cosine cos a are stored in the first trigonometric function table 21 with a precision of the eighth digit after the decimal point. Figure 2
[0021] Figure 3 An example of the second trigonometric function table 22 will be described. The second trigonometric function table 22 is a table in which a second sine and a second cosine corresponding to a phase indicated by a low-order bit of an address signal are stored, respectively. As shown in FIG. 3, as an example, in the second trigonometric function table 22, a second sine sin b and a second cosine cos b corresponding to a phase b (0°≤b≤9°) indicated by a low-order bit of an address signal are stored at every 1°. In the present embodiment, the second sine sin b and the second cosine cos b are stored in the second trigonometric function table 22 with a precision of the eighth digit after the decimal point. Figure 3
[0022] Figure 4 An example of the correction value table 41 will be described. The correction value table 41 is a table in which a correction value corresponding to a phase indicated by an address signal is stored. As shown in FIG. 4, as an example, in the correction value table 41, a correction value e corresponding to a phase (a+b) (0°≤(a+b)≤90°) indicated by an address signal is stored at every 1°. Figure 4
[0023] The correction value ε corresponds to a difference (i.e., an error) between an operation value of the operation circuit 30 included in the trigonometric function operation device 10 of the embodiment described later, which is indicated by formula (1) using the trigonometric functions of sin a, sin β, cos a, and cos β having the precision of the 8th digit after the decimal point, respectively, and a real value of sin (a + β). That is, in a case where a difference (Q - P) between the operation value P of the operation circuit 30 corresponding to the phase (a + β) indicated by the address signal and the real value Q is εl, εl is stored in the correction value table 41 as the correction value ε corresponding to the phase (a + β) indicated by the address signal. In a case where sin a, sin β, cos a, and cos β have the precision of the 8th digit after the decimal point, respectively, as shown in Table 1, the error converges to -0.00000001 to 0.00000001. Figure 4
[0024] Next, the structure of the trigonometric function operation device 10 of the embodiment will be described with reference to Figure 5 . As shown in Figure 5 , the trigonometric function operation device 10 includes an address generator 11, a trigonometric function table 20, an operation circuit 30, and a correction section 40.
[0025] The address generator 11 generates an address signal composed of a plurality of bit strings corresponding to the phase (a + β). The trigonometric function table 20 is a table in which the 1st sine sin a and the 1st cosine cos a corresponding to the phase a indicated by the high-order bits of the address signal, and the 2nd sine sin β and the 2nd cosine cos β corresponding to the phase β indicated by the low-order bits of the address signal are stored, respectively. That is, the trigonometric function table 20 includes a 1st trigonometric function table 21 and a 2nd trigonometric function table 22.
[0026] The operation circuit 30 outputs the sine corresponding to the address signal as an operation value by using the 1st sine sin a, the 1st cosine cos β, the 2nd sine sin β, and the 2nd cosine cos β corresponding to the address signal, which are extracted by referring to the trigonometric function table 20. Specifically, the operation circuit 30 includes a 1st multiplication circuit 31 which outputs the product sin a x cos β of the 1st sine sin a and the 2nd cosine cos β, a 2nd multiplication circuit 32 which outputs the product sin β x cos a of the 2nd sine sin β and the 1st cosine cos a, and an addition circuit 33 which adds the output value of the 1st multiplication circuit 31 and the output value of the 2nd multiplication circuit 32, and outputs sin a x cos β + sin β x cos a as the operation value of the operation circuit 30.
[0027] The correction section 40 corrects the operation value sinαx cosβ + sinβx cosα output from the operation circuit 30 based on the correction value ε corresponding to the address signal. Specifically, the correction section 40 includes a correction value table 41 and an adder circuit 42. The adder circuit 42 adds the correction value ε corresponding to the address signal extracted by referring to the correction value table 41 to the operation value sinαx cosβ + sinβx cosα output from the operation circuit 30.
[0028] Next, the operation of the trigonometric function operation device 10 of the present embodiment will be described.
[0029] First, the address generator 11 generates an address signal composed of a plurality of bit strings corresponding to the phase (α + β) and outputs it to the trigonometric function table 20 and the correction section 40. Then, the 1st trigonometric function table 21 extracts the 1st sine sinα and the 1st cosine cosα corresponding to the phase α indicated by the high-order bits in the address signal and outputs the 1st sine sinα to the 1st multiplication circuit 31 and the 1st cosine cosα to the 2nd multiplication circuit 32, respectively. Further, the 2nd trigonometric function table 22 extracts the 2nd sine sinβ and the 2nd cosine cosβ corresponding to the phase β indicated by the low-order bits in the address signal and outputs the 2nd sine sinβ to the 2nd multiplication circuit 32 and the 2nd cosine cosβ to the 1st multiplication circuit 31, respectively.
[0030] Next, the 1st multiplication circuit 31 operates the product of the 1st sine sinα and the 2nd cosine cosβ and outputs the operation result sinαx cosβ to the adder circuit 33. Further, the 2nd multiplication circuit 32 operates the product of the 2nd sine sinβ and the 1st cosine cosα and outputs the operation result sinβx cosα to the adder circuit 33. Then, the adder circuit 33 adds the output value sinαx cosβ of the 1st multiplication circuit 31 to the output value cosαx sinβ of the 2nd multiplication circuit 32 and outputs the operation result sinαx cosβ + sinβx cosα as the operation value of the operation circuit 30 to the correction section 40.
[0031] The correction section 40, after acquiring the address signal, refers to the correction value table 41 and extracts the correction value ε corresponding to the phase (α + β) indicated by the address signal. Then, the correction section 40 adds the operation value sinαx cosβ + cosαx sinβ of the operation circuit 30 to the correction value ε by the adder circuit 42 and outputs sinαx cosβ + cosαx sinβ + ε as a value corresponding to the sine sin(α + β) corresponding to the address signal.
[0032] As a specific example, the case where the address generator 11 generates an address signal corresponding to a phase of 12° will be described. The 1st trigonometric function table 21 extracts a 1st sine of 0.17364818 and a 1st cosine of 0.98480775 corresponding to a phase of 10° indicated by the high-order bits of the address signal, and outputs the 1st sine of 0.17364818 to the 1st multiplication circuit 31 and the 1st cosine of 0.98480775 to the 2nd multiplication circuit 32, respectively. In addition, the 2nd trigonometric function table 22 extracts a 2nd sine of 0.03489950 and a 2nd cosine of 0.99939083 corresponding to a phase of 2° indicated by the low-order bits of the address signal, and outputs the 2nd sine of 0.03489950 to the 2nd multiplication circuit 32 and the 2nd cosine of 0.99939083 to the 1st multiplication circuit 31, respectively.
[0033] Next, the 1st multiplication circuit 31 operates the product of the 1st sine of 0.17364818 and the 2nd cosine of 0.99939083, and outputs the operation result of 0.173542398738189 to the adder circuit 33. The 2nd multiplication circuit 32 operates the product of the 1st cosine of 0.98480775 and the 2nd sine of 0.03489950, and outputs the operation result of 0.034369298071125 to the adder circuit 33. The adder circuit 33 outputs 0.20791170 rounded to 8 bits after the decimal point from 0.207911696809314 obtained by adding the output value of the 1st multiplication circuit 31 of 0.173542398738189 and the output value of the 2nd multiplication circuit 32 of 0.034369298071125 as the operation value of the operation circuit 30 to the correction section 40.
[0034] The correction section 40, after obtaining the address signal corresponding to the phase of 12°, refers to the correction value table 41, and extracts -0.00000001 as the correction value corresponding to the phase of 12° indicated by the address signal. Then, the correction section 40 adds the operation value of the operation circuit 30 of 0.20791170 and the correction value of -0.00000001 extracted from the correction value table 41 by the adder circuit 42, and outputs 0.20791169 as the value corresponding to the sine sin(12°) corresponding to the phase of 12°.
[0035] As described above, the trigonometric function operation device 10 outputs the sine corresponding to the phase indicated by the address signal. In addition, in the case where the address generator 11 sequentially outputs the address signal in such a manner that the phase is continuously increased and decreased, a sine wave is output from the trigonometric function operation device 10. That is, the trigonometric function operation device 10 can also function as a sine wave generation device.
[0036] [Comparative Example]
[0037] Next, the trigonometric function operation device 50 of the comparative example will be described with reference to the drawings and tables, and a comparison with the trigonometric function operation device 10 of the present embodiment will be described. Figure 6 The trigonometric function operation device 50 of the comparative example is shown in FIG. 8. The trigonometric function operation device 50 of the comparative example differs from the trigonometric function operation device 10 of the present embodiment in that the operation value of the operation circuit 30 is set to a value corresponding to the sine sin(α+β) corresponding to the address signal. In addition, the address generator 11, the trigonometric function table 20, and the operation circuit 30 in the trigonometric function operation device 50 of the comparative example have the same functions as those of the trigonometric function operation device 10 of the present embodiment, and therefore the description thereof will be omitted, and the same reference numerals will be attached to the same structural elements.
[0038] First, as one example, the value output from the trigonometric function operation device 50 in the case where the address generator 11 generates an address signal corresponding to a phase of 33° will be described. In Table 1, the error between the operation value and the real value in the case where the sine sin(33°) is calculated with 8 bits after the decimal point, and the number of bits after the decimal point of the 1st sine, the 1st cosine, the 2nd sine, and the 2nd cosine is changed.
[0039] As shown in Table 1, the number of bits after the decimal point of the 1st sine, the 1st cosine, the 2nd sine, and the 2nd cosine required to calculate the sine sin(33°) with the precision of the 8th bit after the decimal point is 10 bits. In the case where the number of bits after the decimal point of the 1st sine, the 1st cosine, the 2nd sine, and the 2nd cosine is 9 bits or less, an error occurs between the operation value and the real value.
[0040] [Table 1]
[0041]
[0042] With reference to Tables 2 and 3, the precision of the operation value corresponding to the sine sin(α+β) output from the trigonometric function operation device 50 in the case where the address signal generated by the address generator 11 is changed with a step corresponding to a phase of 1° in a range corresponding to a phase of 0 to 90° will be described. In Tables 2 and 3, the error between the operation value and the real value in the case where the sine sin(α+β) is calculated with the precision of the 8th bit after the decimal point, and the number of bits after the decimal point of the 1st sine sinα, the 1st cosine cosα, the 2nd sine sinβ, and the 2nd cosine cosβ is changed. The number of bits after the decimal point of the 1st sine sinα, the 1st cosine cosα, the 2nd sine sinβ, and the 2nd cosine cosβ is 10 bits in Table 2 and 8 bits in Table 3.
[0043] As shown in Table 2 and Table 3, in order to obtain the operation value corresponding to the sine sin(a+β) with no error in the accuracy of the 8th digit after the decimal point, the number of digits after the decimal point of the 1st sine sin a, the 1st cosine cos a, the 2nd sine sin β, and the 2nd cosine cos β needs to be 10 digits, respectively.
[0044] [Table 2]
[0045]
[0046] [Table 3]
[0047]
[0048] Thus, according to the trigonometric function operation device 50 of the comparative example, in order to obtain the operation value of the sine sin(a+β) with a prescribed accuracy, the data length of the 1st sine sin a, the 1st cosine cos a, the 2nd sine sin β, and the 2nd cosine cos β stored in the trigonometric function table 20 needs to be increased in consideration of the error of the operation based on the addition theorem of the trigonometric function. When the data length of the 1st sine sin a, the 1st cosine cos a, the 2nd sine sin β, and the 2nd cosine cos β is increased, the circuit scale of the operation circuit such as the 1st multiplication circuit 31, the 2nd multiplication circuit 32, and the addition circuit 33 which perform operation processing using these data becomes large.
[0049] Specifically, according to the trigonometric function operation device 50 of the comparative example, for example, in the case where the sine sin(a+β) is obtained with no error in the accuracy of the 8th digit after the decimal point, the data needs to be stored in the 1st trigonometric function table 21 and the 2nd trigonometric function table 22 with the accuracy of the 10th digit after the decimal point, respectively. That is, 34 bits are needed in the expression of each data.
[0050] On the other hand, as described above, according to the trigonometric function operation device 10 of the present embodiment, for example, in the case where the sine sin(a+β) is obtained with no error in the accuracy of the 8th digit after the decimal point, the data stored in the 1st trigonometric function table 21 and the 2nd trigonometric function table 22 is sufficient with the accuracy of the 8th digit after the decimal point, respectively. That is, the expression of each data can have only 27 bits. Thus, according to the trigonometric function operation device 10 of the present embodiment, since the number of bits of the data stored in the 1st trigonometric function table 21 and the 2nd trigonometric function table 22 can be reduced compared to the trigonometric function operation device 50 of the comparative example, the accuracy of the trigonometric function operation can be ensured without accompanying an increase in the circuit scale of the operation circuit.
[0051] As explained above, according to the trigonometric function operation device 10 of the present embodiment, even if the data length of the first sine, the first cosine, the second sine, and the second cosine stored in the first trigonometric function table 21 and the second trigonometric function table 22 indicates the value up to the eighth digit after the decimal point, it is possible to make the value of the derived sine have the precision of the eighth digit after the decimal point by correcting the operation value of the operation circuit 30 by the correction section 40. That is, it is possible to ensure the precision of the trigonometric function operation without accompanying the increase in the circuit scale of the operation circuit.
[0052] Further, according to the trigonometric function operation device 10 of the present embodiment, since it is possible to shorten the data length of the data stored in the first trigonometric function table 21 and the second trigonometric function table 22, it is possible to improve the processing speed of the operation circuit.
[0053] Further, according to the trigonometric function operation device 10 of the present embodiment, since it is possible to shorten the data length of the data stored in the first trigonometric function table 21 and the second trigonometric function table 22, it is possible to reduce the capacity of the storage section 12 that stores each table.
[0054] In addition, in the above-described embodiment, the method of separately storing the first sine, the first cosine, the second sine, and the second cosine used when calculating the operation value in the first trigonometric function table 21 and the second trigonometric function table 22 is adopted, but it is not limited thereto. The method of storing the first sine, the first cosine, the second sine, and the second cosine in one table uniformly can be adopted.
[0055] In addition, in the above-described embodiment, the method of using the formula (1) as the addition theorem of the trigonometric function and outputting the sine corresponding to the address signal as the operation value is assumed, but the present disclosure is not limited to this method. The method of using the formula (2) as the addition theorem of the trigonometric function and outputting the cosine corresponding to the address signal as the operation value can be assumed. In this case, the first multiplication circuit 31 outputs the product cosα x cosβ of the first cosine cosα and the second cosine cosβ extracted from the trigonometric function table 20. The second multiplication circuit 32 outputs the product sinα x sinβ of the first sine sinα and the second sine sinβ extracted from the trigonometric function table 20. A subtraction circuit (not shown) provided instead of the addition circuit 33 subtracts the output value sinα x sinβ of the second multiplication circuit 32 from the output value cosα x cosβ of the first multiplication circuit 31, and outputs the operation result cosα x cosβ - sinα x sinβ as the operation value of the operation circuit 30.
[0056] [Formula 2]
[0057] cos(α + β) = cosαcosβ - sinαsinβ... Formula (2)
[0058] Further, in the above-described embodiments, for example, as a hardware structure of a processing unit (processing unit) that performs various processes such as the address generator 11, the trigonometric function table 20, the operation circuit 30, and the correction section 40, various processors shown below can be used. Among the above-described various processors, in addition to a general-purpose processor, that is, a CPU that functions as a processing unit by executing software (program), a processor that has a circuit structure that can be changed after manufacture, that is, a programmable logic device (PLD) such as an FPGA, an ASIC (Application Specific Integrated Circuit), and a dedicated circuit structure that is designed specifically for performing a specific process, that is, a dedicated electric circuit, and the like are included.
[0059] One processing unit can be constituted by one processor among the above-described various processors, or can be constituted by a combination of two or more processors of the same kind or different kinds (for example, a combination of a plurality of FPGAs, a combination of a CPU and an FPGA). Further, a plurality of processing units can be constituted by one processor. As an example in which a plurality of processing units is constituted by one processor, first, as represented by computers such as clients and servers, there is a mode in which one processor is constituted by a combination of one or more CPUs and software, and the processor functions as a plurality of processing units. Second, as represented by a system on chip (SoC) and the like, there is a mode in which a processor that realizes the functions of the entire system including a plurality of processing units by one IC (integrated circuit) chip is used. In this way, the above-described various processing units are constituted by using one or more of the above-described various processors as a hardware structure.
[0060] Further, as a hardware structure of the above-described various processors, more specifically, a circuit (circuitry) in which circuit elements such as semiconductor elements are combined can be used.
[0061] Label Explanation
[0062] 10, 50 Trigonometric function operation device
[0063] 11 Address generator
[0064] 12 Storage section
[0065] 20 Trigonometric function table
[0066] 21 First trigonometric function table
[0067] 22 Second trigonometric function table
[0068] 30 Operation circuit
[0069] 31 first multiplication circuit
[0070] 32 second multiplication circuit
[0071] 33, 42 addition circuit
[0072] 40 correction unit
[0073] 41 correction value table
Claims
1. A trigonometric function operation device, comprising: an address generator that generates an address signal composed of a plurality of bit strings corresponding to phases; a trigonometric function table that stores a first sine and a first cosine corresponding to phases indicated by high-order bits of the address signal, respectively, and a second sine and a second cosine corresponding to phases indicated by low-order bits of the address signal, respectively, with a prescribed accuracy; an operation circuit that extracts the first sine, the first cosine, the second sine, and the second cosine corresponding to the address signal by referring to the trigonometric function table, and outputs a sine corresponding to the address signal as an operation value based on a trigonometric function addition theorem by an operation process using the first sine, the first cosine, the second sine, and the second cosine with the prescribed accuracy; and a correction section that corrects the operation value based on three correction values of 0, a minimum positive value, and a minimum negative value with the prescribed accuracy, to correct an error between an operation value obtained by the trigonometric function addition theorem using the first sine, the first cosine, the second sine, and the second cosine with the prescribed accuracy and a true value of a trigonometric function corresponding to a phase indicated by the address signal.
2. The trigonometric function operation device according to claim 1, wherein the correction section includes a correction value table that stores correction values corresponding to phases indicated by the address signal, respectively, and corrects the operation value based on a correction value corresponding to the address signal extracted by referring to the correction value table.
3. The trigonometric function operation device according to claim 2, wherein a level of accuracy of the first sine, the first cosine, the second sine, and the second cosine stored in the trigonometric function table is the same as a level of accuracy of the correction values stored in the correction value table of the correction section.
4. The trigonometric function operation device according to claim 1, wherein the trigonometric function table includes: a first trigonometric function table that stores the first sine and the first cosine corresponding to phases indicated by high-order bits of the address signal, respectively, and a second trigonometric function table that stores the second sine and the second cosine corresponding to phases indicated by low-order bits of the address signal, respectively.
5. The trigonometric function operation device according to claim 2, wherein the trigonometric function table includes: a first trigonometric function table that stores the first sine and the first cosine corresponding to phases indicated by high-order bits of the address signal, respectively, and a second trigonometric function table that stores the second sine and the second cosine corresponding to phases indicated by low-order bits of the address signal, respectively.
6. The trigonometric function operation device according to any one of claims 1 to 5, wherein the operation circuit includes: a first multiplication circuit that outputs a product of the first sine and the second cosine; a second multiplication circuit that outputs a product of the second sine and the first cosine; and an addition circuit that adds an output value of the first multiplication circuit and an output value of the second multiplication circuit. 7. A trigonometric function operation device having: an address generator that generates an address signal composed of a plurality of bit strings corresponding to phases; a trigonometric function table that stores a first sine and a first cosine corresponding to the phases indicated by high-order bits of the address signal with a prescribed accuracy, and a second sine and a second cosine corresponding to the phases indicated by low-order bits of the address signal with the prescribed accuracy; an operation circuit that extracts the first sine, the first cosine, the second sine, and the second cosine corresponding to the address signal by referring to the trigonometric function table, and outputs a cosine corresponding to the address signal as an operation value based on the addition theorem of trigonometric functions by an operation process using the first sine, the first cosine, the second sine, and the second cosine with the prescribed accuracy; and a correction section that corrects the operation value based on three correction values of 0, a minimum positive value, and a minimum negative value with the prescribed accuracy, to correct an error between an operation value obtained by the addition theorem of trigonometric functions using the first sine, the first cosine, the second sine, and the second cosine with the prescribed accuracy and a true value of a trigonometric function corresponding to a phase indicated by the address signal.
Citation Information
Patent Citations
Method and digital control oscillator for sinusoidal and cosine signal generator
CN101335509A
Digital method for generating local oscillation signals and its numerically controlled oscillator
CN1355609A