JPS59170942A - 関数演算回路 - Google Patents

関数演算回路

Info

Publication number
JPS59170942A
JPS59170942A JP4471683A JP4471683A JPS59170942A JP S59170942 A JPS59170942 A JP S59170942A JP 4471683 A JP4471683 A JP 4471683A JP 4471683 A JP4471683 A JP 4471683A JP S59170942 A JPS59170942 A JP S59170942A
Authority
JP
Japan
Prior art keywords
circuit
data
stage
input
control signal
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
JP4471683A
Other languages
English (en)
Inventor
Kenichi Kanehara
健一 金原
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP4471683A priority Critical patent/JPS59170942A/ja
Publication of JPS59170942A publication Critical patent/JPS59170942A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Logic Circuits (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の技術分野〕 この発明は、三角関数、対数関数、指数関数等、収束算
法を用いて実行可能な初等関数の値を計算する関数演算
回路に関する。
〔発明の技術的背景とその問題点〕 対数関数、指数関数、平方根、三角関数、逆三角関数、
双曲線関数を含む初等関数を計算す法、COR,DIC
法として知られているテーブル定数比較、加減算、シフ
トを用いて行々うものとの2つがある。そして従来、後
者の計算方法を用いて実際に計算を行なう場合には、1
つのALU(Alithmetlc Logic Un
it)をプログラムの制御の下に繰り返し用いることに
よ2−:C行なっている。とのように従来では、初等関
数を計算する場合に1つのALU金繰り返して用いるよ
うにしているので、ALUでの1回の計算毎に値をラツ
応した遅延時間よシもはるかに多くの計算時間が必要で
ある。また1つの関数を計算する場合、従来では極めて
多くのプログラムステップを必要としている。このため
に、プログラムメモリからプログラムを読み出し、これ
を命令デコーダで解読するための多くの時間を要し、こ
のことが計算時間をより長くしている。
〔発明の目的〕
この発明は上記のような事情を考慮してなされたもので
あり、その目的は初等関数を短時間で計算することがで
きる関数演算回路を提供することにある。
〔発明の概要〕
この発明では、2つの入力1ビツトデータどうしの加算
、減算および一方の入力データの通過の3g類の機能を
持ち、これら3種類の機能が2ビツトの制御信号に基づ
いて選択される基本セルを計算したいビット数分だけ1
列に配列し5て1段分を構成しかつとれを計4に必要な
精度に相当する段数だけ設けてアレイ回路を構成し、さ
らに上記2ビツトの制御信号の値の設定を変えることに
よって上記アレ・「回路で初等関数のうちから任意のも
のを計算させるようにしている。
〔発明の実施例〕
以下図面を参照してこの発明の一実施例を説明する。
第1図は後述するアレイ回路を構成する基本セルの回路
図である。この基本セルにおいて、一方の入力1ビツト
データXは全加算回路(F、A)11の一方入力端に供
給される。また他方の入力1ビツトデータyは1ビツト
の制8 信号A ト算回路11は上記データ又と、排他
的論理和回路12からの出力データおよび他の基本セル
からの桁上げ入力データCtとの加算を行なって加算デ
ータSおよび桁上げ出力データcoを出力する。そして
桁上げ出力データcoは他の基本セルに供給されるとと
もに、加算データSはNAND P−ト13の一方入力
端に供給される。またこのNANDゲート13の他方入
力端には、インバータ14を介して1ビツトの制御信号
Tが供給される。一方、前記一方の入力1ビツトデータ
Xはもう1つのNAND )f−ト15の一方入力端に
供給され、その他方入力端には上記制御信号Tがそのま
ま供給される。さらに上記2つのNAND r −ト1
3.15(D出力データはNAND r−ト16に並列
的に供給され、このNAND r −ト16からデータ
忽が出力される。
このような構成の基本セルにおいて、一方の制御信号X
は加算指令信号として用いられ、X二″0“レベルで入
力X %  ys  C1の加算が全加算回路11で行
なわれ、さらにに−”1“レベルでMayの反転データ
y + CIの加算が行なわれる。すなわち、K−=−
”0”レベルでは桁上げを考慮した入力1ビットデータ
X、yの加算が行なわれ、またA−二″1nレベルでは
入力1ビットデータx、yの減算が行なわれる。また、
基本セルにおいて、他方の制御信号Tは通過指令信号と
して用いられ、T−11″レベルでばNAND r−ト
15が開いて入力データXがそのit通過してデータY
として出力され、T−′O”レベルではNAND r−
ト13が開いて全加算回路11からの加算出力データS
がデータYとして出力される。このようにこの基本セル
、2つの入力1ビツトデータX a 7どうしの加算、
減算および入力データXの通過の3種類の機能を持ち、
これら3種類の機能はそれぞれ1ビツトの制御信号A、
Tに基づいて選択されるようになっている。
ところで初等関数の収束算法としてはC0RDIC法、
 STL法等があり、このうちのC0RDIC法は座標
軸の階段的な回転により、加減算、シフト、定数読出し
の操作で初等関数を計算する)J法である。他方のST
L法で(は、対数関数と指数関数については逐次、表金
参照しながら可算するものであシ、さらに必要な桁をさ
がして計算全行なうことによって指数、対数、平方根の
計算を行なうことができる。上記収束算法を用いて実行
される関数としては、対数、指数、平方根、三角、逆三
角、双曲線の6種類があり、対数と指数関数はSTL法
、これ以外の関数はC0RDIC法を使用するものとす
る。そしてこれらの関数の引算法’ttとめたのが第2
図である。なお、第2図中のCは であり、さらに117−刀根へ4および双曲線関数mn
 h t 。
cmhtそれぞれの漸化式中のkの値は、k=(3’辻
−1)/2のときは2回繰り返す(i;1,2.・・・
)。
第2図かられかるように、各関数の漸化式に基づいてi
t算を行なう場合の演算操作は、正負または大小の判断
、kビットのシフトc2−にの乗3“ン)および力(j
減算の繰り返したけで、後はtn(lL+−2)、ja
n”−’2−に、tanh−22−に等ノ外′数さえ用
意しておけはよい。すなわぢ、上記6仔穎の関数は、1
べ、−C117)演算操作が共通なので、回−何1路を
用いて制御信号を変えるだけで計算が可能である。した
がって、6棟類の関数を計重ニー、するM作をまとめる
と、3つの変数のに回目の演算給米であるxk、yk、
vkに対して次の操作がでへればよめ。
Q)  ykをにビットジットしてXkと加算または減
算 し、゛て Xk+、 と−す る。
■ Xk金にビットシノトレcykと加算−または減曾
してyl(−Hとづる。
■ 定数をvkと加n兼たは減算してvk++とする。
■ xklyk−vkをそのままXk+1 、  )’
に+1 、 vk+1とする。
■ Vk −Vk+1−7にの正負% Xk+1と1の
大小をそれぞれ判断する。
そしてこれらの操作は上記第1図に示を基本セルを複数
個用いることにより実現さり、る。すなわち、■には定
数との加減算、Xkとykは互い(〆Cシフトして加減
算を施こすことにより上記操作が実現される。
第3図は上記各操作を行なって実際に関数を計算するこ
の発明に係る関数演算回路の全体的なブロック構成図で
ある。上記第2図に承りように各関数を81算する場合
に3つの変fix、y。
■が用いられており、この3つの変数X + 3’ n
Vに対応して3つのアレイ回路20,30.40が設け
られる。これら3つの7174回路20゜30 、40
のそれぞれは、前記第1図に示す基本セルを討嘗ニジた
いビット数分だけ1列に配列して1段分が構成され、か
つとれが引算に必要な精度に相当する段数だけ設けられ
ている。そしてこれら3つのアレイ回路2θ、 、30
 、40それぞれにおいて前段の各基本セルからの出力
データ文は後段の対応する各ビットの基本セルへの一方
の入力データ又として供給されている。
また1つのアレイ回路2θの各段の各基本セルへの他方
入力データyとして、アレイ回路30の対応する段より
も1つ前段の各基本セルからノ出力データYがビットシ
フトされた状態で選択的に供給されている。同様にアレ
イ回路30の各段の各基本セルへの他方入力データyと
して、アレイ回路20の対応する段よりも1つ前段の各
基本セルからの出力データヤがビットシフトされた状態
で選択的に供給されている。また残りのアレイ回路40
の各段の各基本セルへの他方入力データyとしては、予
め各種定数を記憶しているメモリ50から読出される定
数データが供給される。上記各アレイ回路2θ、30゜
40の初段の各基本セルには入力データX * 7 m
V(初期データ)が供給される。また、上記3つのアレ
イ回路20,3θ、4θにおいて、各段に配列されてい
る複数の基本セルの前記信号A、Tの供給ラインは互い
釦共通接続され、これら各供給ラインには制御信号発生
回路60から出力される信号A、Tが供給される□また
、上記アレイ回路20,30.40のうち少なくとも1
つのものの終段の各基本セルからの出力データ゛yは関
数の計算結果となシ、さらにアレイ回路、30 、40
の各段の各基本セルからの加算データSは制御信号とし
て上記制御信号発生回路60に供給される。
いま第3図回路において取扱うデータを単精度(32ビ
ツト)と倍精度(64ビツト)の浮動小数点表示の実数
に限定する場合、各アレイ回路2o、3o、4oで関数
値を計算するために、X h y* ’Vの各計算につ
いて単精度ではたとえば仮数部23ビツトの場合に30
ビット×27段、倍精度ではたとえば仮数部52ビツト
の場合に60ビット×57段の基本セルがそれぞれ必要
である。倍精度時に必要とするセルの数は単精度時のほ
ぼ4倍であり、各アレイ回路20゜30.40です及て
の基本セルを設けるのは無駄である。とのため第4図(
船に示すように基本セルは60ピツ) X 15段分の
みを設け、単精度で計算を行なう場合には第4図FB)
に示すように30ビット×30段として用い、また倍精
度で計算を行なう場合には第4図法)(て示す60げツ
) X ]、 5段の構成を4回縁シ返して使用するこ
とによって第4図(C)に示すように60ビット×60
段と等価な構成を持たせるようにする。
いま、第3図におしてX用のアレイ回路20を(X)、
y用のプレイ回路30を[Y]、y用のアレイ回路30
を〔V〕とそれぞれ表現し、さらに〔X〕のi段、jビ
ット目のセルをXi j(+=1〜15゜j=1〜60
 ) 、[Y]の1段、jビット目のセルをYij 、
 〔V〕(7) i段、jビット目ノセルをVBとそれ
ぞれ規定する。また、Xij 、Yij 、Vijの入
出力データをそれぞれXx(i)、 Xy(、i) 、
 Xz ji) 。
Yxj、YyS′)、Yz(l′)、■xへ1)、■y
Sffi)、■昌%規定する。
(1) たとえばXz(1s) 、 Y;(1s)はそれぞれ[
X] 、 CYIの15段jビット目のセルからの出力
データとなる。また[X]・〔Y〕の入力データをxq
t l Yqj(j−1へ−60)と規定する。
いま第3図中の[X](アレイ回路20)および〔Y〕
(7174回路30)がそれぞれ前記第4図〔Nに示す
ように構成されているとすると、cx〕。
[Y]の使込力には次の6通シがある。
■ 単精度演算で30ビット×30段として使う。
■ 倍精度演算で60ビット×60段のうち1段目から
15段目として使う。
■ 倍精度演算で60ビット×60段のうち16段目か
ら30段目として使う。
■ 倍精度演算で60ビット×60段のうち31段目か
ら45段目として使う。
■ 倍精度演算で60ビット×60段のうち46段目か
ら60段目として使う。
■ 算出すべき関数値(入力データ)をC0RDIC法
、STL法で計算できる範囲の内に変換するための乗算
器として使う。
そして、〔Xqおよび[Y)]を上記のから■の目的に
使う際に使用される制御信号をそれぞれGs 、 G4
 、 GR,GTri、 GIとする。またそれぞれの
場合に最終結果を丸めるので、このときに使用される制
御信号をGRとする。さらに上記Φの目的に使う場合に
はGR−”0”レベルとしてのから■のいずれかと同様
の使す方をする。なお、上記各制御信号Gs 、 G1
 、 G1 、 GIlI、 Gy 、 Gnは図示し
ない制御回路から出力される。
第3図中の〔Xqでは、次のようにして各基本セルの入
出力データ間が相互接続される。すなわち、まず〔Xq
における一方入力データXの接(1) 続論理式は次のようになる。始めに、Xxjは前段の出
力X(7−1)がそのまま接続される。ただ(−〇、−
″1”レベルのときには、155段目上位30ビツトを
1段目の下位30ビツトに接続する(第4図FB) )
 e (11i=1 、1<j<30のとき、(1) Xxj=Xqj +2)  j=1 、31<j<:60のとき、Xxj
=”CW ・Xq j+ Gs −Xz’1’!20(
1) (312くt(15,1<:jく60のとき、it) 
   (,1−1) Xxj  ””XzJ (1) 次に〔Xqにおける他方入力データXyjについ(1) てみると、〔Xqの1段目の入力データXyjとしては
、iの値に応じて〔YJの(i−1)段目の出力f −
タVz”)がビットシフトされて選択的に接続される。
いま、制御信号Gl 、G1 、Gl 、GIがそれぞ
れ1”しくルの場合につきシフトさせるべき量をI(i
> 、 II(i) 、 ITI(1) 、 IV(i
)とすると、これらの値は第5図にまとめて示すように
なる。なお、G8=″′rレベルのときのj=1〜30
の値は%GI−”1”しくルの時と同じ値であり、j=
31〜60の値はGn−=“1”レベルの時と同じ値で
ある。また、第5図中、「4」、「13」、「40」の
値がそれぞれ2回あるのは、双曲線関数と平方根の計算
の際に加算を繰シ返し行なう必要があるからである。次
に上記第5図に基づいて[Xqにおけるi=1の他方入
力データyの接続論理式を求めると以下のようになる。
fil  i=1 、1<j<:14のとき、Xy′;
)= (Gs + Gr ) ” Yqj+ (G■+
 G■十Gy )・Yql(2)i=1 、15<j<
;29のとき、Xy[jI)−(Gs十GI)・Yqj
+G■・Yqj−15−1−(G11+GF/)・Yq
l (31i=1.j=30のとき、 Xy’;)= (Gs +Gi ) ・Yqj+G1 
・Yq j−1s十Gl[[” YQj−28+GR/
 ’ yqj(4)  i=1 、31<j<43のと
き、(15) Xyi =Gs −Yzl  +G1−Yqj+Gr1
ΦYqj−15+Gl・yqJ−28+G■・Yq1 t51  i=1.44くjく60のとき、Xy’j1
)=Gs −Yz(I”i3+GI ’ Y、qj+G
n °Yqj−H+G11−Yqj−26−1−G■゛
Yq1同じ(2くi<:14’!での他方入力データy
の接続論理式は次のようになる。
(112<t<14 、1<j<Hi)+1のとき、X
青)=Yz(11−1) +2)  2<i<14、I (i)+ 2<j<U(
i)4−1のとき、X訝= (G8+G、 )・y、(
、i : +0゜+ (G1 +GIIl +GF/ 
) ・Yzl(3)  2<i≦14 、 n(t) 
+2:S;i< 30のとき、Xy(¥−(G B +
 GI ) ’ Yz(jに1&。
+G、・’ j−11(1) +(GIIll +G■
)・Yzl(4)  2<i<14.31<j≦旧)+
1(ただしi=2を除く)のとき、 (i)      (j−D Xyj −GSo Yz51   +G■ ・YJ)’
Ift)十Gn ’Yzj−11(i)+(GIIl+
G■)・y。
(5)  2りi:<14 、 I[1(1)+2<j
≦IV(i)−1−1のとき、Xy(j)=GS−Yz
x1  +GI’YzJ−1(i)十G、・Yz(j 
−11t’(1) 十Gm  ・Y昌−%)(i)→(
ジ■・Y↓七1)(6)  2<i:S;14 、 I
V(i)+2<j≦60のとき、(i)− Xyj −qI ・Yzj =1’(i)+(G8千G
I+) ”z’シ1B)(i)+0m ” Yz j 
−m (i) ”IV °Yz j−fV(i)また、
155段目L=15)は、単精度演算で小数点以下25
ビツト目(基本セルでみると57ビツト目)を24ビツ
ト目にカロえて丸めることに用い、倍精度では56ビツ
ト目を55ビツト目に加えることに用いるとすると、l
’15の接続論理式td次のようになる。
(1)  i = 15 、1<;: j<:14のと
き、(is)  □ Xyj−=(Gy・GR)・、、(+4)(2)  i
 = 15 、15<j<:28のとき、(15シ x、  ((Gs + Gr) ・Yz(]14)13
 + (GII+G■+G■)・YS4))・(Gy・
GR)(3)  i、=15,29くjく30のとき、
(15) Xy j = ((Gs +GN ) ’ Yz(jl
′2B 十GII ’ YzT’−27+(Gm + 
GIV )YZ24)) ([□)(4)  1=15
.31<j<:42のとき、(15)     (14
) Xyj = (cl・Yz j −13十GIt・7片
)−27+(G++++G+v) ・Yz、+Gs−y
、5胃)(14) ・(G8+GIV)・GR (5)  1=15.42<:jく57(j二55.5
6を除く)のとき、 (+5)     (14) Xyj −(Gr ” YZj −1!++Gll ’
 Yz’j4)−27(+4)     (14) 十G[−Y2j−4,+G■−Y、、1+Gs−Y、”
、’%))−(Gs十Gy) −G。
(6)  i =15 、 j=55のとき、(+5)
      (14) Xy55 ”” G■’ GR’ zs6(+5)− Xy56 −Gs・GR’ 75(714)(8)  
1=15.58<j<60のとき、dj15)= (G
l ・Yz(j乏’1s+(Gs」GB )・Yz(当
y+GIIl−Yz j−41+ Gy ・Yjj:5
6 )(14) !−光1FGR 一方、第3図中の〔Y〕では、y、;x)とyy(、x
)はそ(i)     (i) れぞれ[X]のXxjとXyjのXとyをそれぞれ入れ
かえたものであるために、上記Cxl Kついての接続
論理式がすべて適用される。
第3図中の〔V〕ではデータをシフトする代りに、メモ
リ5θから読出される定数データとの加減算が各段で行
なわれる。したがって、まず、(i) Vx jK ij: 前段ノ出力Vz′Ji−’ %”
 ソO’J ”!接続され、(i) VyjにはメモIJ 50からの定数データが接続され
る。ただし15段目(i = 1.5 )では次式のよ
うになる。
fl)  1くjく30のとき、 晴5)−69,4j15)+G8.嶋15)f2)  
31<K:60 (j=55.56は除く)のとき、晴
5)−(産前)・−(ji5) (31j=55のとき、 Vys(s”)= (GA詳司り0m5(−5)十GI
v、25()4)(4)   j=56のとき、 なお、上記(1)から(4)において青)はメモIJ 
50から読出される定数データを示す。なお、メモリ5
0から各段へどのデータを読み出すかの選択は計算する
関数に応じて予め決まるので、メモリへのアクセス時間
によって、計算時間が遅くなるということはない。
次に基本セルXij 、 Yij 、 Vijの制御信
号A。
T、(信号Aは実際には反転されて各セルに供給される
)加算データS1桁上げ入力および出力データC1*C
□をそれぞれα(7)、α♀)、α5())。
α自(j)、αcoL、i) cαはx、y、vのいず
れか1つ)とする。なお、〔X:) 、 [Y:] 、
 cv〕の各一段では、すべての基本セルは加算、減算
、通過のいずれか1つの機能操作を選択するもので、制
御信号課とαすゝにおいてビットjの指定は省略しであ
る。そして前記制御信号発生回路6θけ、各関数および
計算範囲の変換時の乗算に応じて、第6図に示すような
値の制御信号α)t+1)α9)をそれぞれ発生する。
たとえば対数関数tnを計算する場合に制御信号発生回
路60は、〔X〕の(1−4−1)段目への制御信号x
f l−H)として11″′しくルを設定出力し、ある
いは平方根1/?を計算する場合にはXJi+1)とし
て[Y]の1段1ビツト目からの加算データ5(YS(
1N))と等しく設定することを意味する。たとえば、
この制御信号発生回路jtJ’−において式ゝを設定す
る回路部分の論理式は次のようになる。
(Il  1くt<Isのとき、 XAAi)=FL十FE+FR’YS(1’−1)+F
B −VS賢1)十FA−Y話’−1)+ F’、、−
v鱈ト1)(21t=1のとき、 XA’N ’= Gr、 (F L十F7に+FR−Y
S’115)−4−F s −VS’+” )+FA・
YSI”5)+FH−Vi15))−)Gs(FL+F
E十Fn−YS’1”十FB −VS’1”+FA −
Yl? ’+FB ・Vlp’)+3+  2くi/1
5のとき、 XA’j)= G、 (F、+FE+F’R−YS3(
1’−’+F’、 −vs3(と1)−1−FA−VS
59−”+F、・VS3(+’−1))司11(Fl。
十F z+FB −ys’、’−”+F’s * VS
(1’ −”+FA −YS P−リ+FH−都t−1
)) ここでXA!、I)、 XA9) 、、単精度計算で6
0ビツトを上位と下位に分割したときの上位30ビツト
と下位30ビツトの共通制御信号Aを意味する。また、
第6図中に示す各制御信号F1. * FE +FB 
、 FB 、 F)、 、 FHは、計算する関数に対
応していずれか1つが図示しない制御回路で″′1#レ
ベルに設定される。
また〔X〕、 [Yl] 、 (V:]において各基本
セル相互の(1) 桁上げ入力データαC1jおよび桁上げ出力データαc
o(7)の接続論理式は次のように表わされる。
(1)  1<1<15 、1<j<160 (ただし
j(30,60)のとき、 (i)   fi) αCIj−αCOj+1 !21 1<i<15 、 j=30のとき、αCI3
’(り一αAj)−G B−+−dC官’51 ・GB
(3)  1<1m”iく15.j=60のとき、この
ような構成によれば、計算すべき関数の種類に応じて前
記第6図中の制御信号FL s Fy2 eFR* F
s* FA h FHを、また基本セルの使い方に対応
して前記制御信号G8h Gl s Gll # cl
+I s GIV s GRをそれぞれ設定し、さらに
[X] 、 [Y] 、 [V]にそれぞれ入力データ
を供給し、かつメモリ50から必要な定数データを読出
して00の各段に供給する。これKより、前記第2図中
の各漸化式に基づき各関数値が[X] 、 CYI 、
 CV〕で算出されることになる。なお、第4図(0に
示すように倍精度で計算を行なう場合には、1回毎の計
算結果をいったんラッチでラッチしておき、再び(X]
、[Y) 。
[V’llの1段目に供給して次の計算を行なうことに
なる。
第3図に示すような構成の関数演算回路を用いて任意デ
〜りの演算が可能な関数演算回路を構成したものが第7
図に示す回路である。仁の関数演算回路は、入出力レジ
スタRX、BY。
演算数変換/正規化回路J 00.前記第3図に示すよ
うな関数演算回路200、信号処理回路SIG、入出力
/?スBUSA、 BUSB 、 BUScおよび図示
しない制御回路を備えている。
入出力レジスタRX、RYは倍長浮動小数点数を入れる
レジスタであシ、それぞれ符号、指数、仮数の3部分よ
りなっている。−゛そして上記両しゾスタRX 、RY
の仮数部の内容には、ビット追加回路APをそれぞれ通
して、符号(”0”レベル)、1の桁(”0”レベル)
および暗黙の小数点第1位(1,)の3ビツトがその上
位につけ加えられる。演算数変換/正規化回路1θOは
加算器ADD 、シフタ別(F 、レジスタD1.D2
゜As 、 RC、R8、デコーダ(図示せず)および
桁計数回路MSDなどで構成されている。そしてこの演
算数変換/正規化回路10θでは、入カレゾスタRX、
RYからのデータが関数演算回路200で計算可能な値
の範囲に変換される。
この変換には加算、シフトの他に乗算が必要であるが、
乗算は関数演算回路200で行なっている。そしてこの
演算数変換/正規化回路100で変換されたデータの仮
数部が関数演算回路200に供給される。関数演算回路
200は前記のように3つのアレイ回路20.30,4
0゜((X〕、 [Y) 、 〔V) )を備え、繰り
返し使用のために入出力側にラッチLがそれぞれ設けら
れる。関数演算回路200からの計算結果は、上記演算
数変換/正規化回路1θ0内のし・ゾスタDI。
D2に入れられ、桁計数回路MSDで最上位の1の位置
が調べられて正規化され、出力のために再び入出力レジ
スタRX 、RYに入れられる。
一方、符号部は符号処理回路SIGで処理され、さらK
まだ指数部は演算数変換/正規化回路1θ0で計算され
る。そしてこれらの動作は制御回路のマイクロ命令によ
って制御される。上記関数演算回路2θ0以外の操作で
使用されるマイクロ命令のステップ数は11(単精度逆
三角関数)〜29(倍精度指数関数)であシ、また関数
演算回路200の使用回数は単精度では1〜2回、倍精
度では60段として1〜5回である。
第8図は第7図回路におhて、入出力レシフスタRX、
RYに入力データが与えられてから結NANDゲート1
段分の遅延時間がIns、1マイクロ命令ザイクルが5
Onllsであるとしている。
] また第8図中のカッ湧内は関数演算回路2θ0の正味の
計算時間である。基本セルを規則的に配列しただけの桁
上げ伝搬形とした場合と、別に桁上げ先見回路を設は桁
上げ先見形とした場合とをくらべると、先見形の方が計
算時間は約1/2〜115になるが、回路の規則性が若
干悪くなるために素子数は9%程度増加する。一方、こ
の計算時間を従来のものと比較すると、従来のALUを
繰勺返し用いて計算を行なう場合のマイクロステップ数
は、対数関数では165ステツプ、指数関数では318
ステツプ、三角関数、逆三角関数および双曲線関数が6
10〜662ステツプとなっており、仮に1マイクロ命
令サイクルを50nssとすると、それぞれ8.3μs
1数値を単純に比較することはできないが、これらの値
と第8図に示した値とを検討すると、桁上げ先見形加算
をするアレイ回路2θ、30゜40では少なくとも従来
よシも数倍ないし1桁程度の速度向上が可能であること
がわかる。
〔発明の効果〕
このようにこの発明によれば、初等関数を短時間で計算
することができる関数演算回路を提供することができる
【図面の簡単な説明】
第1図はこの発明回路で用いられる基本セルの回路図、
第2図は各初等関数の計算法をまとめて示す図、第3図
はこの発明に係る関数演算回路の一実施例のブロック構
成図、第4図は第3図中のアレイ回路の構成例を示す図
、第5図はアレイ回路〔X〕におけるデータのシフト−
賢をまとめて示す図、第6図は第3図中の制御信号発生
回路から出力される制御信号をまとめて示す図、第7図
は第3図に示す回路を用いて構成される任意データの演
算が可能な関数演算回路のブロック図、第8図は第7図
回路における演算時間をまとめて示す図である。 11・・・全加算回路(F、A) 、72・・・排他的
論理和回路、1 s 、 Z s 、 16−NAMD
’y”−ト、14−・・イアA−タ、zohso、4o
・・・アレイ回路ITX)、[:Y″1.cV])、5
0−、j モIJ、60−・・制御信号発生回路、10
0・・・演算数変換/正規化回路、200・−・関数演
算回路、RX、RY・・・入出力レジスタ、AP・・・
ピント追加回路、ADD・・・加算器、SHF・・・シ
フタ、DI 、D、?、AS、RC,RC・・・レジス
タ、MSD・・・桁計数回路、S工G・・・符号処理回
路、L・・・ラッチ。 出願人代理人  弁理士 鈴 江 武 彦第1図 x 第3図 k   、、、、   −一、、、、−、−、、−、、
−−−ノ出力′7′−72 第4図 (A) (B)      (C) 第5図 第6図

Claims (4)

    【特許請求の範囲】
  1. (1)2つの入力1ビツトデータどうしの加算。 減算および一方の入力データの通過の3種類の機能を持
    ち、これら3種類の機能が2ビツトの制御信号に基づい
    て選択される基本セルを複数個用いて少なくとも1つの
    アレイ回路を構成し、上記2ビツトの制御信号の値の設
    定を変えるこ値 とによシ、収束算法を用いて実行可能な初等関数の値を
    上記アレイ回路で算出するように構成したことを特徴と
    する関数演算回路。
  2. (2)2つの入力1ビツトデータどうしの加算。 減算および一方の入力データの通過の3種類の機能を持
    ち、これら3種類の機能が2ビツトの制御信号に基づい
    て選択される基本セルを複数個1列に配列して1段分を
    構成しかつこれを複数段分設けてそれぞれ構成される第
    1、第2、\第3のプレイ回路と、上記第1、第2、第
    3のアレイ回路に初期データを入力する手段と、上記第
    1のプレイ回路内の各段に配列された基本セルからの出
    力データを上記第2のアレイ回路内の対応する段よりも
    1段後段に配列された基本セルに1つの入力データとし
    て選択供給する手段と、上記第2のアレイ回路内の各段
    に配列された基本セルからの出力データを上記第1のア
    レイ回路内の対応する段よシも1段後段に配列された基
    本セルに1つの入力データとして選択供給する手段と、
    収束算法を用いて実行可能な初等関数の種類に応じて、
    上記第1、第2、第3の7174回路内の各段の基本セ
    ルに供給すべき前記2ビツトの制御信号の値を設定する
    手段とを具備し、第1、第2、第3のアレイ回路のうち
    少なくとも1つの回路の最終段からの出力データを算出
    すべき関数の値とするようにしたことを特徴とする関数
    演算回路。
  3. (3)前記収束算法を用いて実行可能な初等関数が、対
    数、指数、平方根、三角、逆三角および双曲線のうちの
    いずれか1つである特許請求の範囲第1項あるいは第2
    項いずれかに記載の関数演算回路。
  4. (4)  前記基本セルは、2つの入力1ビツトデータ
    の一方と2ビツトの制御信号の一方との排他的論理和を
    得る排他的論理和回路と、この排他的論理和回路の出力
    および入力ビットデータの他方との加算を行なう全加算
    回路と、他方の制御信号に応じて入力ビットデータの他
    方および上記全加算回路の出力のいずれか一方を出力デ
    ータとして選択出力するデート回路とを備えてbる特許
    請求の範囲第1項あるいは第2項いずれかに記載の関数
    演算回路。
JP4471683A 1983-03-17 1983-03-17 関数演算回路 Pending JPS59170942A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4471683A JPS59170942A (ja) 1983-03-17 1983-03-17 関数演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4471683A JPS59170942A (ja) 1983-03-17 1983-03-17 関数演算回路

Publications (1)

Publication Number Publication Date
JPS59170942A true JPS59170942A (ja) 1984-09-27

Family

ID=12699137

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4471683A Pending JPS59170942A (ja) 1983-03-17 1983-03-17 関数演算回路

Country Status (1)

Country Link
JP (1) JPS59170942A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0292854A2 (en) * 1987-05-27 1988-11-30 CSELT Centro Studi e Laboratori Telecomunicazioni S.p.A. C-MOS arithmetic-logic unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0292854A2 (en) * 1987-05-27 1988-11-30 CSELT Centro Studi e Laboratori Telecomunicazioni S.p.A. C-MOS arithmetic-logic unit

Similar Documents

Publication Publication Date Title
US5590365A (en) Pipeline information processing circuit for floating point operations
CN107077417A (zh) 有效性配准
US6138135A (en) Propagating NaNs during high precision calculations using lesser precision hardware
CN104011665B (zh) 超级乘加(超级madd)指令
CN107273090A (zh) 面向神经网络处理器的近似浮点乘法器及浮点数乘法
EP0158530A2 (en) Nonrestoring divider
JPH09269891A (ja) 部分積加算方法および装置、浮動小数点乗算方法および装置、浮動小数点積和演算方法および装置
CN101685383A (zh) 计算器、基于直接对阶的自由精度浮点数的运算电路
US7219117B2 (en) Methods and systems for computing floating-point intervals
JPH0250492B2 (ja)
US5339267A (en) Preprocessor of division device employing high radix division system
JPS59170942A (ja) 関数演算回路
US7236999B2 (en) Methods and systems for computing the quotient of floating-point intervals
US6202078B1 (en) Arithmetic circuit using a booth algorithm
US8316067B2 (en) Decimal computing apparatus, electronic device connectable decimal computing apparatus, arithmetic operation apparatus, arithmetic operation control apparatus, and program-recorded recording medium
JPH0322024A (ja) 乗算器
US3757097A (en) Ediate arithmetic results extra bit for floating decimal control and correction of false interm
JP4483491B2 (ja) 十進計算装置
Ehrman “Logical” arithmetic on computers with two's complement binary arithmetic
JPS6086671A (ja) 除算回路
JP2003216410A (ja) べき数エンコーダ回路及びマスク回路
US3813623A (en) Serial bcd adder
JPS60263230A (ja) 多重精度浮動小数点加算回路
JPH01128129A (ja) 浮動小数点加減算装置
JPS62209621A (ja) 乗算装置