JPH0322025A - Exponential function arithmetic unit - Google Patents

Exponential function arithmetic unit

Info

Publication number
JPH0322025A
JPH0322025A JP15765489A JP15765489A JPH0322025A JP H0322025 A JPH0322025 A JP H0322025A JP 15765489 A JP15765489 A JP 15765489A JP 15765489 A JP15765489 A JP 15765489A JP H0322025 A JPH0322025 A JP H0322025A
Authority
JP
Japan
Prior art keywords
value
register
exponential function
output
memory
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.)
Pending
Application number
JP15765489A
Other languages
Japanese (ja)
Inventor
Takashi Nakayama
貴司 中山
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP15765489A priority Critical patent/JPH0322025A/en
Publication of JPH0322025A publication Critical patent/JPH0322025A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0307Logarithmic or exponential functions

Abstract

PURPOSE:To calculate an exponential function at a high speed with high accuracy by providing the table of the exponential function and respectively one executing the retrieval of the table, multiplication and addition. CONSTITUTION:A register 11 to divid an initial value (x) into a high-order digit H and a low-order digit L (x=H+L), a read only memory 14 to input the high-order digit H from the register 11 and to output the value of eH calcu lated in advance are provided. Then, a multiplier 17 to execute the multiplica tion concerning the output of the memory 14 and the output of the low-order digit L from the register 11 an adder 21 to add the output value of the multi plier 17 to the value of the memory 14 are provided. By the multiplier 17, the eH value of the memory 14 is multiplied with the low-order digit L and the output value of the multiplier 17 is added to the eH value of the memory 14 by the adder 21, then, an exponential function eX is calculated. Thus, arithmetic can be executed by one step and the exponential function eX can be calculated at the high speed with the high accuracy.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は計算機に釦ける指数関数の演算装置に関する。[Detailed description of the invention] [Industrial application field] The present invention relates to an exponential function calculation device that can be pressed in a computer.

〔従来の技術〕[Conventional technology]

一般に、e=Z71828・・・を底とする指数関数e
xは、数値計算を扱う計算機にでは是非とも備えなけれ
ばならない機能の一つである。この指数関数を計算する
場合、引数の全範囲で向じアルゴリズムを適用すること
は1れで、引数にしかるべき変換を行ない、範囲を限定
して計算を行なうのが普通である。
In general, the exponential function e with the base e=Z71828...
x is one of the functions that must be provided in a computer that handles numerical calculations. When calculating this exponential function, it is not possible to apply the same algorithm to the entire range of arguments; instead, it is common to apply appropriate transformations to the arguments and perform calculations by limiting the range.

たとえば、e を演算する場合、iを整数,0≦x<1
とすると t=i+X            ・・・・・・・・
・(1)et= e’ X ex        ・・
・・・・・・・(2)となる。eXがオーバフローやア
ンターフローしないiの範囲は、IEEE754規格の
単精度で−88≦i≦+88程度でろD、e’のテーブ
ルを用意することも可能である。従って、0≦x<1の
範囲でe を求めればよい。
For example, when calculating e, i is an integer, 0≦x<1
Then t=i+X ・・・・・・・・・
・(1) et= e' X ex ・・
......(2). The range of i in which eX does not overflow or underflow is about -88≦i≦+88 in single precision according to the IEEE754 standard.It is also possible to prepare tables for D and e'. Therefore, it is sufficient to find e within the range of 0≦x<1.

従来、指数関数は、次のテイラー多項式近似によって求
めている。
Conventionally, the exponential function is obtained by the following Taylor polynomial approximation.

・・・・・・・・・{3} このとき引数Xが1に近いときは多狽式の次数mが高く
なるため、この引数変換に似た方法でXの軛囲を更に狭
める工夫が必要である。筐た多項式近似では、米算と加
算を繰返し実行するため、演算時間が長くなる欠点があ
った。
・・・・・・・・・{3} In this case, when the argument is necessary. The polynomial approximation described in this paper had the drawback of requiring a long computation time because calculations and additions were repeated.

一方、マイクロプログラム制動の計算機では、指数関数
を8 T L (Sequential Table 
Lockup)法によって求める場合もある。この8T
l,法によると、指数関数は、定数log(1+2  
)のアーブルを用意することにより、以下のように得ら
れる。
On the other hand, in a microprogram brake calculator, the exponential function is expressed as 8 T L (Sequential Table
In some cases, it may be obtained by the Lockup method. This 8T
According to the l, modulus, the exponential function is the constant log(1+2
) can be obtained as follows.

■ Xo=x,yo=1とする。■ Set Xo=x, yo=1.

■ k=0.1,2,・・・,Nについて■■t−実行
する。
■ For k=0.1, 2, ..., N, ■■t-Execute.

■ w=xk−1−log(1+2  )    ・・
・・・・・・・{4}■ W≧Oならば、”k ” ”
 + )’k = Yk−1 + Yk−I X 2 ’  
   ・・・・・・・・・・・・(5)w<0ならば、
Xk = Xk−1 , Yk = yi+−t■ e
” =YNが得られる。
■ w=xk-1-log(1+2)...
・・・・・・{4}■ If W≧O, “k””
+ )'k = Yk-1 + Yk-I X 2'
・・・・・・・・・・・・(5) If w<0,
Xk = Xk-1, Yk = yi+-t ■ e
”=YN is obtained.

S ’1’ L法では、N桁の指数関数を和るために、
上記■■の処理をN回給・返す必要がある。1た、(5
)式の処理にはk桁のシフトが必要なため、バレルシフ
タが必要である。そのためSTL法には演算時間が長く
なるという欠点があシ、あ筺シ用いられていない。
In the S '1' L method, in order to sum the N-digit exponential function,
It is necessary to perform/return the process described in ■■ above N times. 1, (5
) requires a shift of k digits, so a barrel shifter is required. Therefore, the STL method has the drawback of requiring a long calculation time, and is therefore not commonly used.

別の従来例として、テーブルl{OMによる指数関数演
算装置もある。第4図はその構或を示すブロック図であ
る。レジスタ41は引数Xを格納する20ビットのレジ
スタ、凡OM42はXを入力してexを出力する20ビ
ット×2 瞼のメモリ、レジスタ43は出力ext保持
するレジスタである。第1ステップで、レジスタ41に
Xのイ直が入力されると、第2スデップでは}1,OM
42からeX値がレジスタ43に出力されるため、1ス
テップごとにCxの演算が可能である。しかし、2n桁
の鞘度を得るためには、2nビッ}X2  #&のRO
Mが必要である。2n=12ビットならば49,152
ビットのROMでよいが、2 n = 2 4ビットな
らば402,653,184ビットの九〇Mが必要であ
り、実現困難である、そのため、従来の方式はni2n
が12ビット以下の場合しか使用されていない。
Another conventional example is an exponential function calculation device using a table l{OM. FIG. 4 is a block diagram showing the structure. The register 41 is a 20-bit register that stores the argument In the first step, when the value of X is input to the register 41, in the second step, }1, OM
Since the eX value is output from 42 to the register 43, Cx can be calculated for each step. However, in order to obtain a 2n-digit sheath degree, the RO of 2n bits}X2 #&
M is required. 49,152 if 2n=12 bits
A ROM of 402,653,184 bits is required, which is difficult to realize.Therefore, the conventional method is
It is only used when the number is 12 bits or less.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述した従来の指数曲数演算装置には、次の間組点があ
る。
The conventional exponential curve calculation device described above has the following sets of points.

(1)洟算時間が長い。(1) Calculation time is long.

多項式近似の方式では、(3)式を演算するのに、m回
の釆算とm回の加算が必豊であシ、0≦Xく1/4の範
囲で24ビットの’lfi皮の解を褥るためにはm≧6
である必要がある。′)iシ、乗薯.6回分と加算6回
分の演算時間がかかる。
In the polynomial approximation method, to calculate equation (3), m operations and m additions are necessary. In order to solve the problem, m≧6
It must be. ') ishi, ride. It takes 6 calculations and 6 additions.

また、STL法では24ビットの釉慶の解を伸るにはk
=0 . 1 ,・・・,23としで(4),(5)式
を演算する必資があり、つまシ最大で24回のシフト演
算と48回の加減算を行なう必要がある。もし、バレル
シ7夕を1組,加減算器を2組用意すれば(4) , 
(5)式の演算が1ステップで司能であるかにシフトと
加減算が24回分の演算時間がかかる。
In addition, in the STL method, it takes k to extend the 24-bit Glaze solution.
=0. 1, . . . , 23, it is necessary to calculate equations (4) and (5), and it is necessary to perform a maximum of 24 shift operations and 48 additions and subtractions. If we prepare one set of barrels and two sets of adders/subtractors, (4),
Although the calculation of equation (5) is performed in one step, it takes the calculation time for 24 shifts, additions and subtractions.

(2)ハードウェアが大規模である。(2) The hardware is large-scale.

多項式近似の方式では、2nビットの鞘度を祷るために
は、20ビットの精度で乗算Dよび加舞を行なう必要が
める。従って、20ビットX2nビットの乗算器と2n
ビットの加舞器訃よび少量の定数R(JMが必要である
。乗3N.器が大規模であるため、LSl化する上で一
積の増大を1ねく。
In the polynomial approximation method, in order to achieve 2n-bit accuracy, it is necessary to perform multiplication D and addition with 20-bit accuracy. Therefore, a 20 bits x 2n bits multiplier and a 2n
A bit increaser and a small amount of constant R (JM are required. Since the multiplier is large-scale, one product increase is required when converting to LSL.

STL法では、ハードウエアとして、20ヒットのバレ
ルシ7タ,2nビットの加減算器および定数}LOMに
加えて、シーケンサが必要である。第2図の従来例では
、20ビットの鞘度を得るために、2nヒット×2 飴
のi−L(JMが必要である。2n=24ヒットならば
402,653,184ビットのROMが必要であシ、
LSt化は不可能である。
The STL method requires a sequencer as hardware in addition to a 20-hit barrel switch, a 2n-bit adder/subtractor, and a constant LOM. In the conventional example shown in Fig. 2, in order to obtain a 20-bit spread, 2n hits x 2 candy i-L (JM) are required. If 2n = 24 hits, 402,653,184 bits of ROM are required. Adashi,
LSt conversion is not possible.

本発明の目的は、このような欠点を除@ 、e”のテー
ブルを持ち、テーブル検索を1回1乗算を1回,加算を
1回笑行することにより、高速かつ高釉度に指数関数e
 Xを矛めることのできる指数間数演算装置を提供する
ことにある。
The purpose of the present invention is to eliminate such drawbacks by having a table of ``e'' and performing one table search, one multiplication, and one addition, thereby achieving an exponential function at high speed and with a high degree of glaze. e
The object of the present invention is to provide an interexponential arithmetic device that can calculate X.

〔銖題を解決するための手段〕[Means to solve the problem]

本発明の構底は、計算機を用いて指数四数e!を演算す
る指数関数演算装置にかいて、初期値Xを上位桁Hと下
位桁L(x=H+1,)に分割するレジスタと、このレ
ジスタから上位桁■を入力し予めtixaれたe の値
を出力する読出し専用メモリと、このメモリの出力と荊
記レジスタの下位桁Lの出力について乗箕を右なう乗算
器と、この乗舞器の出力値を前記メモリの値に加算する
加算器とを倫え、前記乗算器で前記メモリのC 値と薊
記下位桁Lとを乗算し、前記加算器によって前記来興器
出力値をfrIJ記メモリのe4直に加算することによ
り指数演算e″を行うことt−%像とする。
The basic structure of the present invention is to use a computer to calculate the exponent number e! In the exponential function calculation device that calculates a read-only memory that outputs , a multiplier that multiplies the output of this memory and the output of the lower digit L of the register, and an adder that adds the output value of this multiplier to the value of the memory. The multiplier multiplies the C value in the memory by the lower digit L, and the adder adds the output value directly to e4 in the memory, thereby performing an exponent operation e. '' is taken as a t-% image.

〔実施例〕〔Example〕

次に図面を用いて本発明を詳細に説明する。 Next, the present invention will be explained in detail using the drawings.

第1図は本発明の一実施例の指数曲数e Xを演薯する
装置のブロソク図である。図にかいて、レジスタ11は
変数Xを入力する20ビットのレジスタ、信号l2はレ
ジスタ1lの上位nビットであるHを出力する信号、信
号13はレジスタl1の下位nビントである14−出力
する信号、R,OM14#ie  の1直を記憶する2
0ビットX2”語のROM,信号l5はROM14の2
nビットの出力侶号、信号16はROM14の上位nビ
ットの出力信号、來算器l7は信号13と信号16の積
を演算するnxnビットの乗X器、信号18は乗算器l
7の出力20ビットのうち下位nビット、信号19は乗
舞器17の出力nビットのうち上位nヒット、信号20
はnビットのセロを出力するイ6号、加算器21は上位
桁20および下位桁と信号15の値を加界する20ヒッ
トの加算器、レジスタ22は加算器21の出力を保持す
る20ビットのレジスタである。
FIG. 1 is a block diagram of an apparatus for calculating an exponential number eX according to an embodiment of the present invention. In the figure, register 11 is a 20-bit register that inputs variable Signal, R, OM14#ie 1st shift memorized 2
0 bit x 2” word ROM, signal l5 is 2 of ROM14
The n-bit output signal 16 is the output signal of the upper n bits of the ROM 14, the multiplier 17 is an nxn-bit multiplier that calculates the product of the signal 13 and the signal 16, and the signal 18 is the multiplier 1
7, the lower n bits of the output 20 bits, signal 19, the upper n bits of the output n bits of the rider 17, the higher n hit, signal 20
is No. 6 that outputs n-bit cello, adder 21 is a 20-hit adder that adds the value of signal 15 to the upper digit 20 and lower digit, and register 22 is a 20-bit adder that holds the output of adder 21. This is a register.

次に、本来励例の指数一数演算原理を説明する。Next, the principle of exponent single number calculation, which is originally an excitation example, will be explained.

ここでは、2n桁の2進数で衣現されたx(Q≦X<l
)から、2n桁のe”k求めることを考える。まず、X
をn桁ずつ上位桁Hと下位桁Lに分害;2する。
Here, x (Q≦X<l
), consider finding 2n-digit e”k. First,
Divide n digits into high-order digits H and low-order digits L.

x= I ( xkX2−k)=H+Lk==1 ただし、xh=(1sO) 0≦x<1 ■= 老 { xkX 2−’ } 1.=1 L =,7.. ( XkX 2−’ )・・・・・・
・・・(6) ・・・・・・・・・(7) ・−・・・・・・・(8) ・・・・・・・・・(9) ここで、加法走理 e”b== e” X eb ・・・・・・・・・(IL} と式(61によシ、 ex== eHX e’″           ・・
・・・・・・・αυαυ式の第2項をL=Oを中心にテ
イラー展開すると、次式が礼られる。
x= I (xkX2-k)=H+Lk==1 However, xh=(1sO) 0≦x<1 ■= Old { xkX 2-' } 1. =1 L =,7. .. (XkX 2-')...
・・・(6) ・・・・・・・・・(7) ・−・・・・・・・(8) ・・・・・・・・・(9) Here, the additive motion e” b== e”
......When the second term of the αυαυ equation is expanded by Taylor around L=O, the following equation is obtained.

ここで11< 1 , L< 2−’であるためL の
項以降は無視できる。よってαυ式は次式に近似できる
Here, since 11<1 and L<2-', the term after L can be ignored. Therefore, the αυ formula can be approximated to the following formula.

e” = e” X ( 1+L) =e”+eHXL        ・・・・・・・・・
・・・0αυ式において、Hを入力としe のイ直を出
力とするテーブルROMを用意すると、乗算1回と加算
1回でe8が得られる。H<1 ,L< 2−nなので
、0式の第2項の乗算の精度はn桁でよい。従って、e
″に20桁の精度を得るためには、2n桁×2n語ノe
xノテーブルROM14と、この1{OM14の上位n
桁とLのn桁を來算する乗勢器17と、e アープル出
力2n桁に乗算結果の上位n桁を加算する加1#器21
とかあrLはよい。
e”=e”X (1+L)=e”+eHXL ・・・・・・・・・
...In the 0αυ formula, if a table ROM is prepared that inputs H and outputs the A value of e, e8 can be obtained by one multiplication and one addition. Since H<1 and L<2-n, the precision of the multiplication of the second term of equation 0 may be n digits. Therefore, e
To obtain 20 digits of precision for ``, we need 2n digits x 2n words.
x no table ROM14 and this 1{top n of OM14
A multiplier 17 that adds up the n digits of the digit and L, and an adder 1# unit 21 that adds the upper n digits of the multiplication result to the n digits of the output 2n.
Toka rL is good.

次に、実際の数値を用いて本実施例によって指数関数e
Xを演算する手順を説明する。ここでn=12とし、数
姐は16進数で表現するものとする。
Next, using actual numerical values, the exponential function e is calculated according to this example.
The procedure for calculating X will be explained. Here, n=12, and the number is expressed in hexadecimal.

レジスタ11に入力される{aXは0≦x<1であるた
め、小数点がMOBの上位にある24ビットの固定小数
点数で表現する。筐た、レジスタ22から出力されるl
le”は、0≦e”<eである/ζめ、整数部2ビット
と小数点の下位22ビットの固定小数点数で衆現する。
Since {aX input to the register 11 satisfies 0≦x<1, it is expressed as a 24-bit fixed-point number with the decimal point above the MOB. l output from the register 22
le'' is expressed as a fixed-point number with 2 bits of the integer part and 22 lower bits of the decimal point, such that 0≦e''<e.

まず、レジスタ11にx=Q.AIB345を入力する
と、信号12は}i,=AIBであシ、信号13はL=
345となる。
First, write x=Q in register 11. When AIB345 is input, signal 12 is }i,=AIB, and signal 13 is L=
It becomes 345.

e”””=l.E16FID801−・であるが、小数
点の下位22ビットで丸めを行ない、e   ,1.}
,1 6 i” 2 0とし、ROM14の出力侶号1
5は785BCgとなる。乗算器17では、信号13と
佑号16の米算が行われる。
e"""=l.E16FID801-, but rounding is performed using the lower 22 bits of the decimal point, e,1.}
, 1 6 i" 2 0, and the output number 1 of ROM14
5 is 785 BCg. In the multiplier 17, the signal 13 and the signal 16 are multiplied.

345  X  786  =  785D51この積
のうち下位12ビット(信号18)は住用されず、上位
12ビット(信号19冫が信号20と結合されて加算器
21に出力される。加神器2lでは信号15とイ8号2
0.19の加算が竹われる。
345 x 786 = 785D51 Of this product, the lower 12 bits (signal 18) are not used, and the upper 12 bits (signal 19) are combined with signal 20 and output to adder 21. In adder 2l, signal 15 Toi No. 8 2
The addition of 0.19 is taken.

785B(.:8  +  000785  =  7
851)51この和がレジスタ22に入シ、レジスタ2
2での数イ直衣現は整数部2ビットの固定小数点数であ
るため、これはe”=l,E17544と等しくなる。
785B (.:8 + 000785 = 7
851) 51 This sum is entered in register 22, register 2
Since the direct representation of number 2 in 2 is a fixed point number with 2 bits in the integer part, this is equal to e''=l, E17544.

真のIlkはe” = 1.E 1 7 5 4 3 
9A ・・・−・−テ6ルタめ、演算精度は2n=24
ビットである。
The true Ilk is e” = 1.E 1 7 5 4 3
9A...--te6 ruta, calculation accuracy is 2n=24
It's a bit.

以上のように、レジスタ11上のXから、レジスタ22
上のe Xが得られる。この計算に要する時間は、凡O
M14のアクセス時間,乗算器18の洟算時間シよび加
算器21の演算時間の総和である。
As described above, from X on register 11 to register 22
The above eX is obtained. The time required for this calculation is approximately
This is the sum of the access time of M14, the calculation time of multiplier 18, and the calculation time of adder 21.

24ビソトのf#&(n=12)でe”k求める場合、
ROM14は24ヒットX40961’d1乗算器l8
ほl2ビット×12ピントの乗算器、加算器2lは24
ビットであり、充分LSI化できる大きさである。
When calculating e”k using 24 bits f# & (n=12),
ROM14 has 24 hits x40961'd1 multiplier l8
The multiplier is 2 bits x 12 pins, and the adder 2l is 24
It is a bit, and is large enough to be integrated into an LSI.

第2図は本発明の第2の実施例の指数関数eXを演算す
るパイプライ/型演算装置である。この演算器は、屓算
方式は第1図と同じであるが、演舞器の要所要所にレジ
スタを挿入してバイグライン演算を可能にしている。
FIG. 2 shows a pipeline/type calculation device for calculating an exponential function eX according to a second embodiment of the present invention. This arithmetic unit has the same multiplication method as that shown in FIG. 1, but registers are inserted at important points in the arithmetic unit to enable big-line operations.

図にかいて、第1因と異るものは、レジスタ31がRO
M14の出力faをラッチする20ビントのレジスタ、
レジスタ32は信号3の値をラッチするレジスタ、信号
33はレジスタ31の上位nヒットの出力信号、レジス
タ34は乗算器l7の出力nビットのうち下位nビット
をラッチするレジスタ、レジスタ35はレジスタ31の
1直をラッチするレジスタである。
In the figure, the difference from the first cause is that register 31 is RO
A 20-bit register that latches the output fa of M14,
Register 32 is a register that latches the value of signal 3, signal 33 is an output signal of the upper n hits of register 31, register 34 is a register that latches the lower n bits of the n bits output from multiplier 17, and register 35 is register 31 This is a register that latches the first shift.

次に、第2図の動作について説明する。Next, the operation shown in FIG. 2 will be explained.

第3図は第2図の指数関数演算装置の動作を説明する模
式図である。横411は時刻でちゃ、各ステップでレジ
スタ11,31,32,35,34.22の1直が変化
する様子を示している。
FIG. 3 is a schematic diagram illustrating the operation of the exponential function calculation device shown in FIG. 2. The horizontal line 411 shows time, and shows how one shift of registers 11, 31, 32, 35, 34, and 22 changes at each step.

レジスタ1lには、ステップ11, t2, t3でそ
れぞれflmxl,x2,x3が入力され、その1ステ
ップ後のステップ12,13.14でレジスタ31,レ
ジスタ32にその中間結果が入る。2ステップ後のステ
ップ13, 14, t5で、レジスタ35,レジスタ
34に中間結果が入る。3ステップ後のステップt4,
 15, t6でレジスタ22に演算結果ex1e  
,e  が入る。
flmxl, x2, and x3 are input to the register 1l at steps 11, t2, and t3, respectively, and the intermediate results are input to the registers 31 and 32 at steps 12, 13, and 14 one step later. At steps 13, 14, and t5 two steps later, intermediate results are entered into registers 35 and 34. Step t4 after 3 steps,
15, At t6, the operation result ex1e is stored in the register 22.
, e is entered.

以上述べたように、本実施例でFi.e”を3ステップ
で演算するが、その$算結来は1ステップ毎に得られる
。1ステップの時間は、テーブル検索1回,乗$1回k
よび加箕1回に要する時間の最大値になる。本来施例の
ノ・−ド9ヱア量は、第1の実施例に比べて、レジスタ
31,32,34.35が増加しただけであり充分LS
I化できる大きさである。
As described above, in this embodiment, Fi. e'' is calculated in 3 steps, but its $ calculation result is obtained at each step. The time for 1 step is 1 table search, 1 multiplication $ k
This is the maximum amount of time required for one call. Originally, the amount of node 9 in this embodiment was only increased by registers 31, 32, and 34.35 compared to the first embodiment, and the LS was sufficient.
It is large enough to be converted into an I.

なD1乗算器17を桁上げ保存加算器と桁上げ伝播加算
器で構成する場合は、桁上げ伝播加算器を加算器21で
代用すると、その演算時間が短くなシ、ハードウェア量
も減少する。ただし、加算521は、3nビットの幅が
必要になる。
When the D1 multiplier 17 is configured with a carry save adder and a carry propagation adder, substituting the carry propagation adder with the adder 21 shortens the calculation time and reduces the amount of hardware. . However, addition 521 requires a width of 3n bits.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明による指数関数演算装置は
、次のような効果を有する。
As explained above, the exponential function calculation device according to the present invention has the following effects.

(1)演算時間が短い。(1) Computation time is short.

第1の実施例の指数関数演算装置では、1ステップで演
算を行なうことが出来る。このlステップの処理時間は
、テーブルROMの読み出し時間,乗算時間,加算時間
の総和となる。また、第2の実施例のでは、3ステップ
で演算を行ない、その1ステップの処理時間は、テーフ
ルROMの読出し時間,乗算時間,加算時間のうちの最
大値になる。ステップ毎にデータをパイプライン的に入
出力することができるため、大量のデータに対して演舞
を行なう場合の平均計算時間ほ1ステップになる。
The exponential function calculation device of the first embodiment can perform calculation in one step. The processing time for this l step is the sum of the table ROM read time, multiplication time, and addition time. Furthermore, in the second embodiment, the calculation is performed in three steps, and the processing time for one step is the maximum value of the table read time, multiplication time, and addition time. Since data can be input and output in a pipeline manner for each step, the average calculation time when performing a performance on a large amount of data is one step.

(2)演討ハードウェアが小邦1,模である。(2) The demonstration hardware is Kobuni 1, model.

横葬ハードウエアは、テーブルROM,i算器,7iT
i江算器だけと少い拾成である。
The horizontal hardware is table ROM, i calculator, 7iT
It is a small collection, with only Ie Sanki.

20ビットの演舞f′1′4艮をもるためには、従来の
STL法による指a関数演算装置では、2nヒットのバ
レAシ7夕や2nビット加mR器が必要であり、それら
を制御するシーケンサも必要であった。1た、従来の多
ηノ式近似による演薯袈置では、2nX2n乗舞器と2
nビットの加お器に力{;えて、シーケンサが必要であ
った。
In order to obtain a 20-bit performance f'1'4, a finger function calculation device using the conventional STL method requires a 2n-hit barre A7 and a 2n-bit adder. A sequencer was also required to control it. 1. In addition, in the conventional multi-η equation approximation, the 2n×2n board and 2
In addition, a sequencer was required for the n-bit processor.

従来例の演算袈置では、20ビット×2 語のROMが
必要であったが本発明の演算装置では、20ビットx2
”mのkLt)Mと、nXnk’ットの栄算器と、2n
ビットの加舞器だけでよい。
The conventional arithmetic unit required a 20-bit x 2 word ROM, but the present invention's arithmetic unit requires a 20-bit x 2 word ROM.
``m's kLt)M, nXnk't's calculator, 2n
All you need is a bit accessory.

L81化する場合、nXnビットの末貢器の′@積は、
2 n X 2 nビットの乗算器の約174テアル。
When converting to L81, the '@product of nXn bits' descendant is
Approximately 174 tales of a 2 n x 2 n bit multiplier.

tit、2” #のROMH、2  mOf−LOム▲
に比べてわずかの面積(n=12のとき約9万分の1)
ですむ。
tit, 2” #ROMH, 2 mOf-LO ▲
(approximately 1/90,000 when n=12)
That's fine.

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

第1図,第2幽は本発明O第1むよび第2の火示すブロ
ック図である。 11,22,31,32,34,35,41.43・・
・レジスタ、14.42・・・凡0〜1、17・・・乗
n器、2l・・・加勢器。
FIGS. 1 and 2 are block diagrams showing the first and second parts of the present invention. 11, 22, 31, 32, 34, 35, 41.43...
・Register, 14.42...approximately 0 to 1, 17...n power unit, 2l...assistor.

Claims (1)

【特許請求の範囲】[Claims] 計算機を用いて指数関数e^xを演算する指数関数演算
装置において、初期値xを上位桁Hと下位桁L(x=H
+L)に分割するレジスタと、このレジスタから上位桁
Hを入力し予め計算されたe^Hの値を出力する読出し
専用メモリと、このメモリの出力と前記レジスタの下位
桁Lの出力について乗算を行なう乗算器と、この乗算器
の出力値を前記メモリの値に加算する加算器とを備え、
前記乗算器で前記メモリのe^H値と前記下位桁Lとを
乗算し、前記加算器によって前記乗算器出力値を前記メ
モリのe^H値に加算することにより指数演算e^xを
行うことを特徴とする指数関数演算装置。
In an exponential function calculation device that calculates an exponential function e^x using a calculator, the initial value x is divided into upper digit H and lower digit L (x=H
+L), a read-only memory that inputs the upper digit H from this register and outputs the pre-calculated value of e^H, and multiplies the output of this memory and the output of the lower digit L of the register. and an adder that adds the output value of the multiplier to the value in the memory,
The multiplier multiplies the e^H value in the memory by the lower digit L, and the adder adds the multiplier output value to the e^H value in the memory to perform an exponent operation e^x. An exponential function calculation device characterized by:
JP15765489A 1989-06-19 1989-06-19 Exponential function arithmetic unit Pending JPH0322025A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15765489A JPH0322025A (en) 1989-06-19 1989-06-19 Exponential function arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15765489A JPH0322025A (en) 1989-06-19 1989-06-19 Exponential function arithmetic unit

Publications (1)

Publication Number Publication Date
JPH0322025A true JPH0322025A (en) 1991-01-30

Family

ID=15654453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15765489A Pending JPH0322025A (en) 1989-06-19 1989-06-19 Exponential function arithmetic unit

Country Status (1)

Country Link
JP (1) JPH0322025A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03184258A (en) * 1990-10-22 1991-08-12 Duracell Internatl Inc Manufacture of cathode for nonaqueous chemical cell

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03184258A (en) * 1990-10-22 1991-08-12 Duracell Internatl Inc Manufacture of cathode for nonaqueous chemical cell

Similar Documents

Publication Publication Date Title
Mohan et al. Residue Number Systems
US5042001A (en) Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier
JPH0612229A (en) Multiplication and accumulation circuit
JPS6347874A (en) Arithmetic unit
JP4274633B2 (en) Power arithmetic unit
JP4273071B2 (en) Divide and square root calculator
Teja et al. FPGA implementation of low-area floating point multiplier using Vedic mathematics
US20230086090A1 (en) Methods and Apparatus for Quotient Digit Recoding in a High-Performance Arithmetic Unit
JPH0687218B2 (en) Floating-point arithmetic processing device and divisor multiple generation device
US6598065B1 (en) Method for achieving correctly rounded quotients in algorithms based on fused multiply-accumulate without requiring the intermediate calculation of a correctly rounded reciprocal
JPH04218831A (en) Dividing device
JP3660075B2 (en) Dividing device
JPH0322025A (en) Exponential function arithmetic unit
Vázquez et al. Implementation of the exponential function in a floating-point unit
JPH04172526A (en) Floating point divider
US10353671B2 (en) Circuitry and method for performing division
JPH06105421B2 (en) Inverse trigonometric function calculator
KR20010067226A (en) Interpolation method and apparatus
JP2972326B2 (en) Square root calculator
JP2580413B2 (en) Multiplication processing unit
Villalba-Moreno et al. Floating Point Square Root under HUB Format
JP2508286B2 (en) Square root calculator
JPH04314126A (en) Inverse number generating device
JPS63254525A (en) Dividing device
JP2699658B2 (en) Square root arithmetic unit