Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS633331B2 - - Google Patents
[go: Go Back, main page]

JPS633331B2 - - Google Patents

Info

Publication number
JPS633331B2
JPS633331B2 JP54117567A JP11756779A JPS633331B2 JP S633331 B2 JPS633331 B2 JP S633331B2 JP 54117567 A JP54117567 A JP 54117567A JP 11756779 A JP11756779 A JP 11756779A JP S633331 B2 JPS633331 B2 JP S633331B2
Authority
JP
Japan
Prior art keywords
function value
function
value
circuit
signal line
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
Application number
JP54117567A
Other languages
Japanese (ja)
Other versions
JPS5640932A (en
Inventor
Yoshihiro Kasuya
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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP11756779A priority Critical patent/JPS5640932A/en
Publication of JPS5640932A publication Critical patent/JPS5640932A/en
Publication of JPS633331B2 publication Critical patent/JPS633331B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/03Digital function generators working, at least partly, by table look-up
    • G06F1/035Reduction of table size
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2101/00Indexing scheme relating to the type of digital function generated
    • G06F2101/04Trigonometric functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 本発明は符号化された変数に対する関数の値を
求める関数値発生装置に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a function value generation device for determining the value of a function for an encoded variable.

特定の関数、例えば三角関数あるいは双曲線関
数等に関する数値計算は、電子計算機等による算
術演算に欠くことのできない基本機能の一つであ
る。またミニコンピユータ、マイクロコンピユー
タ等で制御された数値制御装置あるいはグラフイ
ツクデイスプレイ装置等でも、幾何座標を扱うこ
とにおいて上記関数を含んだ演算が度々実施され
るところである。
Numerical calculations regarding specific functions, such as trigonometric functions or hyperbolic functions, are one of the basic functions essential for arithmetic operations by electronic computers and the like. In addition, calculations involving the above-mentioned functions are often performed in numerical control devices or graphic display devices controlled by minicomputers, microcomputers, etc. when handling geometric coordinates.

このため、関数値発生即ちある与られた数値に
対し関数の値を求めるための手順および処理機構
の簡素化、高速化が重要である。
Therefore, it is important to simplify and speed up the procedure and processing mechanism for generating a function value, that is, finding the value of a function for a given numerical value.

従来から行なわれている関数値発生の方法に
は、ソフトウエア的な手法に良く適合することか
ら比較的多く採用されているものに、関数を入力
変数に関する多項式に展開して数値計算するもの
がある。この方法は、予じめ記憶しておくべきデ
ータが少量であるという利点があるものの、近似
計算であるため精度の高い解を得るためには高次
の項にまで亘つて繰返し計算を行なう必要があ
り、それだけ処理時間が長くかかり高速性に欠け
るものである。また初等関数を求める方法として
良く知られたCORDICアルゴリズムによれば、
フアームウエア、ハードウエア化に良く適合する
が、解の収束性等の問題もあり処理時間が長くか
かり、やはり高速性を要求される装置に用いるに
は不向きである。
Among the conventional methods of generating function values, one that is relatively widely adopted because it is well suited to software methods is to expand the function into a polynomial regarding input variables and perform numerical calculations. be. Although this method has the advantage of requiring only a small amount of data to be memorized in advance, since it is an approximate calculation, it is necessary to repeatedly calculate even high-order terms in order to obtain a highly accurate solution. However, it takes a long processing time and lacks high speed. Also, according to the CORDIC algorithm, which is a well-known method for finding elementary functions,
Although it is well suited to firmware and hardware implementation, it also has problems with solution convergence and requires a long processing time, making it unsuitable for use in devices that require high speed.

一方LSI技術の進歩によりROM等の記憶装置
で大容量かつ安価なものが提供されるようになつ
たため、入力の数が比較的少ない場合には、必要
とされる関数値の全てを予じめROM等に記憶さ
せておくことも行なわれる。しかしこの方法では
入力の数が多い場合、例えば入力変数が16ビツト
の2進符号の精度で表わされるとすれば、必要と
する全ての関数値を記憶するのにほぼ65Kワード
もの大記憶容量のROM等が必要で経済的にも実
用に供することは困難である。
On the other hand, advances in LSI technology have made it possible to provide large-capacity and inexpensive storage devices such as ROM, so when the number of inputs is relatively small, all required function values can be stored in advance. It may also be stored in a ROM or the like. However, if the number of inputs is large, for example if the input variables are represented with 16-bit binary precision, this method requires approximately 65K words of memory to store all the required function values. It requires ROM, etc., and is economically difficult to put into practical use.

本発明の目的は、上記事情に鑑み、精度の高い
入力変数に対する精度の高い関数値発生を高速に
行なわしめ、かつ必要な記憶装置の容量を軽減せ
しめる関数値発生装置を提供することである。
SUMMARY OF THE INVENTION In view of the above circumstances, it is an object of the present invention to provide a function value generating device that can quickly generate highly accurate function values for highly accurate input variables and reduce the required storage capacity.

本発明によれば、二値符号化された入力変数を
予じめ決められた定数で除して得られる商の整数
部分と前記定数より小さい部分乗余とを出力する
手段と、前記整数部分の可能な全ての数値に対応
する関数値を予じめ記憶し、前記整数部分で番地
付けして前記記憶された関数値を読出すことがで
きる関数値記憶装置と、前記部分乗余を入力して
関数の予じめ決められた次数までの多項式近似に
より前記部分乗余に対する関数値を算出する第一
の演算装置と、前記関数値記憶装置から読出され
る関数値と前記第一の演算装置から算出される関
数値とを入力して前記入力変数に対する関数値を
算出する第二の演算装置とを具備することを特徴
とする関数値発生装置が得られる。
According to the present invention, there is provided a means for outputting an integer part of a quotient obtained by dividing a binary encoded input variable by a predetermined constant and a partial remainder smaller than the constant, and the integer part a function value storage device in which function values corresponding to all possible numerical values of are stored in advance, and the stored function values can be read out by addressing with the integer part; and inputting the partial multiplication remainder. a first arithmetic unit that calculates a function value for the partial product by polynomial approximation up to a predetermined degree of the function; and a function value read from the function value storage device and the first arithmetic operation. There is obtained a function value generating device characterized in that it comprises a second arithmetic device which inputs a function value calculated from the device and calculates a function value for the input variable.

本発明は、少量の記憶された関数値とより低い
次数の関数多項式近似で算出される関数値とから
求めるべき関数値を得ることにより、簡単な装置
構成して高速に精度の高い関数値を発生できるこ
とを特徴とする。
The present invention obtains a function value to be determined from a small amount of stored function values and a function value calculated by approximating a function polynomial of a lower order, thereby obtaining highly accurate function values at high speed with a simple device configuration. It is characterized by the fact that it can occur.

さらに具体的に本発明の原理および効果を説明
するため、三角関数の正弦関数を一例として考え
る。
In order to more specifically explain the principles and effects of the present invention, a sine function of trigonometric functions will be considered as an example.

入力変数Θ(単位はラジアン)を Θ=αN+β β<α ……(1) と表き表わす。ここでαは定数、Nは整数であ
り、βはαより小さい部分の部分乗余である。三
角関数の加法定理によれば、 SinΘ=Sin(αN+β) =SinαNcosβ+cosαNsinβ ……(2) なる関係が成立する。また三角関数を多項式展開
すれば sinβ=β−β3/6+…… cosβ=1−β3/2+…… ……(3) と表わされ、βが十分小さければ低い次数までで
十分良い近似式を与える。
The input variable Θ (unit: radian) is expressed as Θ=αN+β β<α ……(1). Here, α is a constant, N is an integer, and β is a partial multiplication remainder of the part smaller than α. According to the addition theorem of trigonometric functions, the following relationship holds true: SinΘ=Sin(αN+β)=SinαNcosβ+cosαNsinβ...(2) Moreover, if the trigonometric function is expanded into a polynomial, it can be expressed as sinβ=β− β3 /6+…… cosβ=1− β3 /2+……(3), and if β is sufficiently small, a sufficiently good approximation can be obtained up to a low order. Give the formula.

即ち、(2)式では、入力変数Θに対する正弦関数
の値が、変数Nおよび変数βそれぞれに関する正
弦・余弦関数値から求まることが示されている。
また定数αを適当に選ぶことによつて、変数Nの
最大値を小さく、かつ変数βを十分小さな値とす
ることができるため、変数Nに関する前記関数値
は変数Nのとり得る全ての数値につき小容量の
ROM等の記憶装置に予じめ記憶させておくこと
により得られ、変数βに関する前記関数値は(3)式
の低い次数までの近似式従つて簡単な演算手段に
よつて得られる。
That is, equation (2) shows that the value of the sine function for the input variable Θ is determined from the sine and cosine function values for the variable N and the variable β, respectively.
Furthermore, by appropriately selecting the constant α, the maximum value of the variable N can be made small, and the variable β can be made a sufficiently small value. small capacity
It can be obtained by storing it in advance in a storage device such as a ROM, and the function value regarding the variable β can be obtained by an approximation of equation (3) up to a low order, that is, by a simple arithmetic means.

以上説明された原理は、他の三角関数あるいは
双曲線関数あるいは指数関数等、即ち複数個の変
数の和に対する関数値がそれぞれの変化に対する
関数値の演算により表わされるような関数族につ
いても適用されるものである。
The principles explained above are also applicable to other trigonometric functions, hyperbolic functions, exponential functions, etc., i.e., a family of functions in which the function value for the sum of multiple variables is expressed by calculating the function value for each change. It is something.

次に図面を参照して本発明を詳細に説明する。 Next, the present invention will be explained in detail with reference to the drawings.

第1図は本発明の第一の実施例を説明するため
の、三角関数の正弦関数値発生装置の構成を示す
ブロツク図である。
FIG. 1 is a block diagram showing the configuration of a trigonometric sine function value generator for explaining a first embodiment of the present invention.

1は第(1)式によるところの入力Θから整数Nお
よび部分乗余βを取出す手段即ち除算装置、2は
部分乗余βに対する正弦・余弦関数値を第(3)式に
よるところの多項式近似より算出する第一の演算
装置、3は整数Nに対応する正弦・余弦関数
sinαN,cosαNを予じめ記憶しておく関数値記憶
装置、4は第(2)式により前記整数Nおよび部分乗
余βに対する関数値から入力Θに関する正弦関数
値を算出する第二の演算装置である。101は入
力Θを供給する出力信号線であり、除算装置1へ
入力される。102および103は除算装置1の
出力信号線である。出力信号線102へは部分乗
余βが出力され第一の演算装置2へ供給される。
出力信号線103へは整数Nが出力され関数値記
憶装置3へ供給される。201および202は第
一の演算装置の出力信号線であり、それぞれに算
出されるsinβ,cosβの値を伝えて第二の演算装置
4へ供給する。301および302は関数値記憶
装置3の出力信号線であり、それぞれに読出され
るsinαN cosαNの値を伝えて第二の演算装置4
へ供給する。401は第二の演算装置4の出力信
号線であると同時に、本正弦関数値発生装置の出
力信号線である。
1 is a means for extracting an integer N and a partial multiplier β from an input Θ according to equation (1), that is, a division device; 2 is a polynomial approximation of the sine/cosine function value for the partial multiplier β according to equation (3) 3 is the sine/cosine function corresponding to the integer N.
A function value storage device that stores sinαN and cosαN in advance, and 4 a second arithmetic unit that calculates the sine function value regarding the input Θ from the function value for the integer N and the partial product β using equation (2). It is. Reference numeral 101 is an output signal line that supplies input Θ, which is input to division device 1 . 102 and 103 are output signal lines of the division device 1. The partial product remainder β is outputted to the output signal line 102 and supplied to the first arithmetic unit 2 .
An integer N is output to the output signal line 103 and supplied to the function value storage device 3. Reference numerals 201 and 202 are output signal lines of the first arithmetic unit, which transmit the calculated values of sin β and cos β, respectively, and supply them to the second arithmetic unit 4. 301 and 302 are output signal lines of the function value storage device 3, and transmit the values of sinαN cosαN read to each of them to be sent to the second arithmetic device 4.
supply to Reference numeral 401 is an output signal line of the second arithmetic unit 4, and is also an output signal line of the present sine function value generation device.

今、OΘ<πなる範囲の入力Θに対する正弦
関数値を発生するものとする。一例として入力Θ
はmビツトの固定小数点型式のデータで、(1)式に
おいて定数α=π/2n(n<m)と決めれば、N
はnビツトの整数、βはπ/2nより小さい値とな
る。
Now, assume that a sine function value is generated for an input Θ in the range OΘ<π. As an example, input Θ
is m-bit fixed-point format data, and if we set the constant α=π/2 n (n<m) in equation (1), then N
is an n-bit integer, and β is a value smaller than π/2 n .

第2図は除算装置1の具体的な一実施例を示す
ブロツク図である。11はセレクタ、12はシフ
トレジスタ、13は固定レジスタ、14は減算回
路を含む判定回路、15はシフトレジスタであ
り、これらは除算回路を構成する。この構成は良
く知られたものであるので、図において制御信号
等細部は省略した。シフトレジスタにはmビツト
であり、複除数即ち先ず入力信号線101へ供給
される入力Θがセレクタ11を介してセツトされ
る。固定レジスタ13へは除数即ち定数α(=
π/2n)が適当な有効数字の固定小数点形式でセ
ツトされている。判定回路14はシフトレジスタ
12から固定レジスタ13の内容を最上位桁を合
せて減算し、その値が正ならばセレクタ11を介
してシフトレジスタ12へセツトし、かつシフト
レジスタ15へ“1”の値をシフトインする。も
し前記値が負であればシフトレジスタ15へ
“0”の値をシフトインするのみである。次にシ
フトレジスタ12を上位へ1ビツトシフトして以
上の動作を繰返す。n回繰返したところでシフト
レジスタ15へnビツトの商即ち整数Nが、シフ
トレジスタ12へはその部分乗余即ちβが得ら
れ、それぞれ出力信号線103および102を通
じて出力される。
FIG. 2 is a block diagram showing a specific embodiment of the division device 1. As shown in FIG. 11 is a selector, 12 is a shift register, 13 is a fixed register, 14 is a determination circuit including a subtraction circuit, and 15 is a shift register, which constitute a division circuit. Since this configuration is well known, details such as control signals are omitted in the figure. The shift register has m bits, and a multiple divisor, ie, an input Θ which is first supplied to the input signal line 101, is set via the selector 11. A divisor, that is, a constant α (=
π/2 n ) is set in fixed point format with appropriate significant digits. The determination circuit 14 subtracts the contents of the fixed register 13 from the shift register 12, including the most significant digit, and if the value is positive, sets it in the shift register 12 via the selector 11, and also writes "1" to the shift register 15. Shift in a value. If the value is negative, only a value of "0" is shifted into the shift register 15. Next, the shift register 12 is shifted 1 bit upwards and the above operation is repeated. After repeating n times, the n-bit quotient, ie, the integer N, is delivered to the shift register 15, and its partial product, ie, β, is obtained to the shift register 12, and these are outputted through output signal lines 103 and 102, respectively.

第3図は第一の演算装置2の具体的な一実施例
を示す回路図である。一例として第(3)式の二次の
項きでの近似値を得るものとする。21は乗算回
路、22は固定レジスタ、23は減算回路、24
および25は正規化回路である。信号線102へ
供給された固定小数点形式の部分乗余βは、一方
に正規回路24を介して浮動小数点形式に変換さ
れ出力される。即ち出力信号線201へ得られる
値はsinβ=βである。また他方部分乗余βは乗算
回路21にてβ2として算出され、その出力信号線
の下位方向へ1ビツトずらせて取出されるので
β2/2の値が得られる。また固定レジスタ22へ
は値1がセツトされており、減算回路23にて前
記二つの値より1−β2/2が算出され、さらに正
規化回路25を介して浮動小数点形式に変換され
て出力される。即ち出力信号線202へはcosβ
=1−β2/2なる値が得られる。再び第1図で、
関数値記憶装置3は整数Nによつて番地付けられ
た2nワードのROMであり、一例として各ワード
の上位半分にsinαN、下位半分にcosαNの記憶さ
れている。sinαN,cosαNの値は予じめ他の計算
手段により求められ、一例として浮動小数点形式
で表わされたものである。関数値記憶装置3の出
力信号線301へは各ワードの上位半分の内容即
ちsinαNの値が、出力信号線302へは各ワード
の下位半分の内容即ちcosαNの値がそれぞれ読出
される。
FIG. 3 is a circuit diagram showing a specific embodiment of the first arithmetic unit 2. In FIG. As an example, let us obtain an approximate value using the quadratic term of equation (3). 21 is a multiplication circuit, 22 is a fixed register, 23 is a subtraction circuit, 24
and 25 is a normalization circuit. The fixed-point format partial product remainder β supplied to the signal line 102 is converted into a floating-point format via the normal circuit 24 and output. That is, the value obtained on the output signal line 201 is sinβ=β. The other partial multiplier β is calculated as β 2 by the multiplier circuit 21, and is extracted by shifting the output signal line by one bit in the lower direction, so that a value of β 2 /2 is obtained. Further, the value 1 is set in the fixed register 22, and the subtraction circuit 23 calculates 1-β 2 /2 from the above two values, which is further converted into floating point format via the normalization circuit 25 and output. be done. In other words, cos β to the output signal line 202
A value of =1-β 2 /2 is obtained. Again in Figure 1,
The function value storage device 3 is a ROM of 2 n words addressed by an integer N, and for example, sin αN is stored in the upper half of each word, and cos αN is stored in the lower half of each word. The values of sinαN and cosαN are obtained in advance by other calculation means, and are expressed in floating point format as an example. The content of the upper half of each word, ie, the value of sinαN, is read out to the output signal line 301 of the function value storage device 3, and the content of the lower half of each word, ie, the value of cosαN, is read out to the output signal line 302, respectively.

第4図は第二の演算装置4の具体的な一実施例
を示す回路図である。41および42は乗算回
路、43は加算回路であり、それぞれ浮動小数点
演算を行なうものである。乗算回路41は信号線
301上のsinαNの値および信号線202上の
cosβの値を受けてsinαNcosβの値を算出し、乗算
回路42は信号線302上のcosαNの値および信
号線201上のsinβの値を受けてcosαN sinβの
値を算出し、さらに加算回路43は前記再出力値
を受けてこれを加算し出力する。即ち第二の演算
装置4は、第(2)式の右辺に従つた演算を行ない、
その出力信号線401へはsinΘの値が得られる。
FIG. 4 is a circuit diagram showing a specific embodiment of the second arithmetic unit 4. In FIG. 41 and 42 are multiplication circuits, and 43 is an addition circuit, each of which performs floating point operations. The multiplication circuit 41 calculates the value of sinαN on the signal line 301 and the value of sinαN on the signal line 202.
The multiplier circuit 42 receives the value of cosβ and calculates the value of sinαNcosβ, the multiplier circuit 42 receives the value of cosαN on the signal line 302 and the value of sinβ on the signal line 201 and calculates the value of cosαN sinβ, and the adder circuit 43 calculates the value of cosαN sinβ. The re-output value is received, added, and output. That is, the second calculation device 4 performs calculation according to the right side of equation (2),
The value of sinΘ is obtained on the output signal line 401.

なお、上記説明において関数値記憶装置3に記
憶された正弦・余弦関数値が固定小数点形式であ
り、従つて第二の演算装置4が固定小数点演算を
行なう乗算加算回路により構成されるものとすれ
ば、第一の演算装置2の正規化回路24,25は
不要のものである。
In the above description, it is assumed that the sine/cosine function values stored in the function value storage device 3 are in fixed-point format, and therefore the second arithmetic unit 4 is constituted by a multiplication and addition circuit that performs fixed-point arithmetic. For example, the normalization circuits 24 and 25 of the first arithmetic unit 2 are unnecessary.

第5図は除算装置1の第二の実施例を示す回路
図である。16は入力Θを記憶するmビツトのレ
ジスタ、103はレジスタ16の上位nビツトの
出力信号線、102はレジスタ16の下位m−n
ビツトの出力信号線である。本実施例は(1)式にお
いて定数α=22-nとして決められ、2ビツトの整
数部分を含むmビツトの固定小数点形式の入力Θ
から、nビツトの整数Nおよびm−nビツトの
22-nより小さい部分乗余βを取出すものである。
即ち出力信号線103へは整数Nが、出力信号線
102へは部分乗余βが出力される。このとき第
1図における他の構成要素は第一の実施例の場合
と全く同様に構成されるが、関数値記憶装置3へ
記憶された正弦・余弦関数値はNが0からπ/4
×2nを越えない整数の範囲に対応するものであ
る。
FIG. 5 is a circuit diagram showing a second embodiment of the division device 1. 16 is an m-bit register that stores the input Θ, 103 is the output signal line of the upper n bits of register 16, and 102 is the lower m-n bits of register 16.
This is a bit output signal line. In this embodiment, the constant α=2 2-n is determined in equation (1), and the input Θ is in m-bit fixed-point format including a 2-bit integer part.
, the n-bit integer N and m−n bits
2 This is to extract the partial power β smaller than 2-n .
That is, the integer N is output to the output signal line 103, and the partial product remainder β is output to the output signal line 102. At this time, the other components in FIG. 1 are configured in exactly the same way as in the first embodiment, but the sine/cosine function values stored in the function value storage device 3 are such that N is 0 to π/4.
×2 It corresponds to the range of integers not exceeding n .

本実施例によれば、複雑な除算回路を必要とせ
ず(1)式によるところの除算装置1が実施される。
According to this embodiment, the division device 1 based on equation (1) can be implemented without requiring a complicated division circuit.

第6図は本発明の第三実施例を説明する正弦関
数値発生装置の構成を示すブロツク図である。
FIG. 6 is a block diagram showing the configuration of a sine function value generator for explaining a third embodiment of the present invention.

本実施例は第(3)式によるところの多項式近似を
一次の項までとするもので、従つて第(2)式は sinΘ=sinαN+βcosαN ……(2)′ と表わされる。このとき、多項式近似の演算を行
なう第一の演算装置2は特に必要とされず、除算
装置1の部分乗余βを伝える出力信号線102は
直接第二の演算装置4へ入力される。第(2)′式を
実施する第二の演算装置4は第7図のよう構成さ
れる。他の構成要素は第一あるいは第二の実施例
の場合と全く同様である。
In this embodiment, the polynomial approximation according to equation (3) is limited to first-order terms, and therefore equation (2) is expressed as sinΘ=sinαN+βcosαN . . . (2)′. At this time, the first arithmetic unit 2 that performs polynomial approximation calculations is not particularly required, and the output signal line 102 that conveys the partial product β of the division device 1 is directly input to the second arithmetic unit 4. The second arithmetic unit 4 that implements equation (2)' is constructed as shown in FIG. The other components are exactly the same as in the first or second embodiment.

本実施例によればさらに簡略化された回路構成
により本発明を実施できる。
According to this embodiment, the present invention can be implemented with a further simplified circuit configuration.

以上の説明から類推して本発明は他の三角関数
あるいは双曲線関数あるいは指数関数等について
も同様に実施される。
By analogy with the above explanation, the present invention can be implemented in the same way with other trigonometric functions, hyperbolic functions, exponential functions, etc.

本発明の効果を具体的に数値を用いて説明すれ
ば、入力Θが16ビツトの精度で表わされるとき、
sinΘの全ての値を記憶するとすれば65536ワード
のROMが必要であるが、本発明で一例としてn
=8とすれば関数値記憶装置の容量は正弦・余弦
関数値を別々のROMに記憶するとしても512ワ
ードと大巾に軽減され、部分乗余βも0.016より
も小さい値となり多項式近似も一次または二次の
項までで十分良く近似された関数値を得ることが
できるため演算回路が簡単となる。
To specifically explain the effects of the present invention using numerical values, when input Θ is expressed with 16-bit precision,
If we were to store all the values of sinΘ, a ROM of 65536 words would be required, but in this invention, as an example,
= 8, the capacity of the function value storage device will be greatly reduced to 512 words even if the sine and cosine function values are stored in separate ROMs, and the partial product β will also be smaller than 0.016, making polynomial approximation linear. Alternatively, a sufficiently well approximated function value can be obtained up to the quadratic term, which simplifies the arithmetic circuit.

以上要約すれば、本発明の効果は簡単な装置構
成かつ小容量の記憶装置により精度の高い入力変
数に対し精度の高い関数値の発生が高速に行なえ
ることである。
In summary, the effect of the present invention is that highly accurate function values can be generated quickly for highly accurate input variables using a simple device configuration and a small capacity storage device.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の第一の実施例を説明するため
の三角関数の正弦関数値発生装置の構成を示すブ
ロツク図、第2図は除算装置1の具体的な構成を
示す回路図、第3図は第一の演算装置2の具体的
な構成を示す回路図、第4図は第二の演算装置4
の具体的な構成を示す回路図、第5図は除算装置
1の第二の実施例を示す回路図、第6図は本発明
の第三の実施例を説明するための三角関数の正弦
関数値発生装置の構成を示すブロツク図、第7図
は第三の実施例による第二の演算装置4の構成を
示す回路図である。図において、 1……入力Θから整数Nおよび部分乗余βを取
出す手段即ち除算装置、2……第一の演算装置、
3……関数値記憶装置、4……第二の演算装置、
11……セレクタ、12……シフトレジスタ、1
3……固定メモリ、14……判定回路、15……
シフトレジスタ、16……レジスタ、21……乗
算回路、22……固定レジスタ、23……減算回
路、24,25……正規化回路、41,42……
乗算回路、43……加算回路である。
FIG. 1 is a block diagram showing the configuration of a trigonometric sine function value generator for explaining the first embodiment of the present invention, FIG. 2 is a circuit diagram showing the specific configuration of the division device 1, and FIG. 3 is a circuit diagram showing the specific configuration of the first arithmetic device 2, and FIG. 4 is a circuit diagram showing the specific configuration of the first arithmetic device 2.
5 is a circuit diagram showing a second embodiment of the division device 1, and FIG. 6 is a sine function of a trigonometric function for explaining a third embodiment of the present invention. FIG. 7 is a block diagram showing the structure of the value generating device. FIG. 7 is a circuit diagram showing the structure of the second arithmetic device 4 according to the third embodiment. In the figure, 1...means for extracting an integer N and a partial multiplier β from an input Θ, that is, a division device, 2...a first arithmetic device,
3...Function value storage device, 4...Second arithmetic device,
11...Selector, 12...Shift register, 1
3... Fixed memory, 14... Judgment circuit, 15...
Shift register, 16...Register, 21...Multiplication circuit, 22...Fixed register, 23...Subtraction circuit, 24, 25...Normalization circuit, 41, 42...
A multiplication circuit, 43...an addition circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 二進符号化された入力変数に対する関数値を
求める装置にして、前記入力変数を予じめ決めら
れた定数で除して得られる商の整数部分と前記定
数より小さい部分乗余とを取出す手段と、前記整
数部分の可能な全ての数値に対応する関数値を予
じめ記憶し、前記整数部分で番地付けして前記記
憶された関数値を読出すことができる関数値記憶
装置と、前記部分乗余を入力して予じめ決められ
た次数までの関数の多項式近似により前記部分乗
余に対する関数値を算出する第一の演算装置と、
前記関数値記憶装置から読出される関数値と前記
第一の演算装置から算出される関数値とを入力し
て前記入力変数に対する関数値を算出する第二の
演算装置とを具備することを特徴とする関数値発
生装置。
1. A device for calculating a function value for a binary-encoded input variable, and extracting an integer part of a quotient obtained by dividing the input variable by a predetermined constant and a partial remainder smaller than the constant. means, a function value storage device in which function values corresponding to all possible numerical values of the integer part are stored in advance and the stored function values can be read out by addressing with the integer part; a first arithmetic device that inputs the partial remainder and calculates a function value for the partial remainder by polynomial approximation of a function up to a predetermined degree;
A second arithmetic device that calculates a function value for the input variable by inputting the function value read from the function value storage device and the function value calculated from the first arithmetic device. Function value generator.
JP11756779A 1979-09-13 1979-09-13 Function value generator Granted JPS5640932A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11756779A JPS5640932A (en) 1979-09-13 1979-09-13 Function value generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11756779A JPS5640932A (en) 1979-09-13 1979-09-13 Function value generator

Publications (2)

Publication Number Publication Date
JPS5640932A JPS5640932A (en) 1981-04-17
JPS633331B2 true JPS633331B2 (en) 1988-01-22

Family

ID=14715003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11756779A Granted JPS5640932A (en) 1979-09-13 1979-09-13 Function value generator

Country Status (1)

Country Link
JP (1) JPS5640932A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63240626A (en) * 1987-03-27 1988-10-06 Nec Corp Function computing element
JP2003099244A (en) * 2001-09-26 2003-04-04 Sony Corp Arithmetic device and arithmetic method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4942253A (en) * 1972-03-06 1974-04-20
JPS4977546A (en) * 1972-11-27 1974-07-26
JPS5434579B2 (en) * 1974-06-25 1979-10-27

Also Published As

Publication number Publication date
JPS5640932A (en) 1981-04-17

Similar Documents

Publication Publication Date Title
US3871578A (en) Data processing system for multiplying and intergerizing floating point numbers
US5737253A (en) Method and apparatus for direct digital frequency synthesizer
US5185713A (en) Product adder for perfoming multiplication of floating point data and addition of fixed point data
EP0149248A2 (en) Method and apparatus for division using interpolation approximation
CN107305484B (en) Nonlinear function operation device and method
KR20110015026A (en) Sine and Cosine Generators
CN112651496A (en) Hardware circuit and chip for processing activation function
WO2022052625A1 (en) Fixed-point and floating-point converter, processor, method, and storage medium
JPH03204720A (en) Elementary function arithmetic unit
CN113296732A (en) Data processing method and device, processor and data searching method and device
US4956799A (en) Trigonometric function arithmetic processor using pseudo-division
JPS648856B2 (en)
CA2329104C (en) Method and apparatus for calculating a reciprocal
KR20060067874A (en) Division and square root calculation units
JPS633331B2 (en)
EP0268123B1 (en) Processor for the calculation of transcendental functions
JPH0114610B2 (en)
CN115483934A (en) Data conversion method and device for multi-party secure computing
CN117573069A (en) CORDIC algorithm chip
JPH086766A (en) Sine cosine calculator
JPH0585924B2 (en)
CN115034163A (en) Floating point number multiply-add computing device supporting two data format switching
JPS633330B2 (en)
GB2372353A (en) Method and apparatus for calculating a reciprocal
JPH0314128A (en) Arithmetic unit utilizing logarithmic expression numerical value