JPH03288927A - 平方根演算装置 - Google Patents
平方根演算装置Info
- Publication number
- JPH03288927A JPH03288927A JP9148090A JP9148090A JPH03288927A JP H03288927 A JPH03288927 A JP H03288927A JP 9148090 A JP9148090 A JP 9148090A JP 9148090 A JP9148090 A JP 9148090A JP H03288927 A JPH03288927 A JP H03288927A
- Authority
- JP
- Japan
- Prior art keywords
- data
- square root
- input data
- converted
- converter
- 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.)
- Granted
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 25
- 230000008878 coupling Effects 0.000 abstract 2
- 238000010168 coupling process Methods 0.000 abstract 2
- 238000005859 coupling reaction Methods 0.000 abstract 2
- 239000000284 extract Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 7
- 238000000034 method Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Landscapes
- Complex Calculations (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
「産業上の利用分野」
この発明は、平方根の近似値を高速に求めることができ
る平方根演算装置に関する。
る平方根演算装置に関する。
「従来の技術」
従来、平方根演算を行う装置として、■算術論理演算の
組み合わせにより平方根を算出するものや、■ROM(
リードオンリメモリ)にデータテーブルを設けて平方根
を算出するもの等が各種開発されている。これらの−例
として、上述の■項に対応する特開昭62−13892
8号にあっては、ビット取り出しと加減算およびビット
シフトを組み合わせた2進法の整数計算により平方根近
似値を算出するものが示されている。また、上述の■項
に対応する特願昭62−182841にあっては、仮の
平方根値が記憶されたデータテーブルから入力データに
対応する近似値を索引し、この近似値を漸化式により収
束させて真の平方根を算出するものが示されている。
組み合わせにより平方根を算出するものや、■ROM(
リードオンリメモリ)にデータテーブルを設けて平方根
を算出するもの等が各種開発されている。これらの−例
として、上述の■項に対応する特開昭62−13892
8号にあっては、ビット取り出しと加減算およびビット
シフトを組み合わせた2進法の整数計算により平方根近
似値を算出するものが示されている。また、上述の■項
に対応する特願昭62−182841にあっては、仮の
平方根値が記憶されたデータテーブルから入力データに
対応する近似値を索引し、この近似値を漸化式により収
束させて真の平方根を算出するものが示されている。
「発明が解決しようとする課題」
ところで、上述した■項の装置においては、2進法の整
数計算を各種紐み合わせて演算するため、高速な演算を
行うことができないという欠点がある。また、上述した
■項の装置にあっては、近似値を記憶するデータテーブ
ルを具備しなければならず、このために回路規模が大き
くなり、LSI化する際に不利になるという欠点がある
。
数計算を各種紐み合わせて演算するため、高速な演算を
行うことができないという欠点がある。また、上述した
■項の装置にあっては、近似値を記憶するデータテーブ
ルを具備しなければならず、このために回路規模が大き
くなり、LSI化する際に不利になるという欠点がある
。
この発明は上述した事情に鑑みてなされたもので、回路
規模が小さい上に、高速な演算を行うことができる平方
根演算装置を提供することを目的としている。
規模が小さい上に、高速な演算を行うことができる平方
根演算装置を提供することを目的としている。
「課題を解決するための手段」
この発明は、指数部と仮数部とで構成される2進数の入
力データを開平し、これを平方根データとして出力する
平方根演算装置において、前記入力データの指数部を0
.25以上1未満の値をとる第1の変換データに変換す
る第1の変換手段と、025以上1未満の範囲で定義さ
れた所定の近似式に前記第1の変換データを代入させて
開平し、これを第2の変換データとして出力する演算手
段と、前記入力データの指数部を前記平方根データの指
数部に変換し、これを前記第2の変換データの仮数部に
結合させて前記平方根データを形式する第2の変換手段
とを具備することを特徴としている。
力データを開平し、これを平方根データとして出力する
平方根演算装置において、前記入力データの指数部を0
.25以上1未満の値をとる第1の変換データに変換す
る第1の変換手段と、025以上1未満の範囲で定義さ
れた所定の近似式に前記第1の変換データを代入させて
開平し、これを第2の変換データとして出力する演算手
段と、前記入力データの指数部を前記平方根データの指
数部に変換し、これを前記第2の変換データの仮数部に
結合させて前記平方根データを形式する第2の変換手段
とを具備することを特徴としている。
「作用」
この発明によれば、入力データの指数部と仮数部とかそ
れぞれ個別にデータ変換され、これらを再び結合させて
平方根近似値を得る。これにより、高速な平方根演算が
実現される。
れぞれ個別にデータ変換され、これらを再び結合させて
平方根近似値を得る。これにより、高速な平方根演算が
実現される。
「実施例」
以下、図面を参照してこの発明の実施例について説明す
る。第1図はこの発明の一実施例である平方根演算装置
の構成を示すブロック図である。
る。第1図はこの発明の一実施例である平方根演算装置
の構成を示すブロック図である。
この図において、lはレジスタR1〜R4から構成され
るレジスタファイルである。レジスタR1は、平方根計
算に供せられる入力データa0を一時記憶する。2は入
力データa。を第1変換データalにデータ変換して出
力する第1変換器である。この第1変換器2は、入力デ
ータa。の内容がビット落ちしないよう該データa。を
0.25≦a、< 1なる範囲の第1変換データa、に
変換するものである。
るレジスタファイルである。レジスタR1は、平方根計
算に供せられる入力データa0を一時記憶する。2は入
力データa。を第1変換データalにデータ変換して出
力する第1変換器である。この第1変換器2は、入力デ
ータa。の内容がビット落ちしないよう該データa。を
0.25≦a、< 1なる範囲の第1変換データa、に
変換するものである。
レジスタR2は第1変換データa1を一時記憶する。
3は加減乗除算器である。この加減乗除算器3は、第1
変換データa、の平方根値を近似計算(後述する)によ
り求め、この結果を中間データa、として出力する。レ
ジスタR3は中間データa、を−時記憶する。4は第2
変換器である。この第2変換器4は、入力データa0と
中間データa、とを受けて後述のデータ変換を行い、こ
れにより得られる平方根データa3を出力する。レジス
タR4は平方根データa、を−時記憶する。以上の各部
は、図示されていない制御回路から供給されるタイミン
グクロックにより各動作が制御されるようになっている
。
変換データa、の平方根値を近似計算(後述する)によ
り求め、この結果を中間データa、として出力する。レ
ジスタR3は中間データa、を−時記憶する。4は第2
変換器である。この第2変換器4は、入力データa0と
中間データa、とを受けて後述のデータ変換を行い、こ
れにより得られる平方根データa3を出力する。レジス
タR4は平方根データa、を−時記憶する。以上の各部
は、図示されていない制御回路から供給されるタイミン
グクロックにより各動作が制御されるようになっている
。
次に、第2図を参照して入力データa。のデータフォー
マットについて説明する。この入力データaoは、2進
数で指数表示されており、その形式が第2図に示す浮動
小数点フォーマットで規定されている。この図に示すフ
ォーマット例は、ANSI/r EEE仕様の32ビッ
ト単精度データフォーマットである。この図において、
Sは入力データa。の極性を示す符号であり、“0”で
正を表し、“1”て負を表す。eoは指数部(30〜2
3ビツトの8ヒツト長)、roは仮数部(22〜0ビツ
トの23ビツト長)である。このようなデータフォーマ
ットで表現される入力データa。の値は、以下の一般式
(1)て定義される。
マットについて説明する。この入力データaoは、2進
数で指数表示されており、その形式が第2図に示す浮動
小数点フォーマットで規定されている。この図に示すフ
ォーマット例は、ANSI/r EEE仕様の32ビッ
ト単精度データフォーマットである。この図において、
Sは入力データa。の極性を示す符号であり、“0”で
正を表し、“1”て負を表す。eoは指数部(30〜2
3ビツトの8ヒツト長)、roは仮数部(22〜0ビツ
トの23ビツト長)である。このようなデータフォーマ
ットで表現される入力データa。の値は、以下の一般式
(1)て定義される。
すなわち、
ao−(1)52 ”−127(1・f) −・−・
(1)ここで、eは指数部の値(0<e<255)、f
は小数点以下を2進数表示したビット列の仮数部である
。
(1)ここで、eは指数部の値(0<e<255)、f
は小数点以下を2進数表示したビット列の仮数部である
。
この浮動小数点フォーマットにおいて、例えば入力デー
タa。が「I 3、5J(10進数)である場合、上記
(1)式により表示すると、次のように表される。
タa。が「I 3、5J(10進数)である場合、上記
(1)式により表示すると、次のように表される。
ao=(−1)’2”(1−1011)=1101.1
・・・・・・2進数表示次に、上述した入力データa。
・・・・・・2進数表示次に、上述した入力データa。
の開平法について説明を加える。さて、平方根は正の値
に対して定義されるから、上述の符号Sが“O”である
データを扱う。また、入力データa。の指数部e。が偶
数の場合と、奇数の場合とに分けて(1)式を変形する
と、各場合の平方根は、次の(2)、(3)式によって
表すことができる。
に対して定義されるから、上述の符号Sが“O”である
データを扱う。また、入力データa。の指数部e。が偶
数の場合と、奇数の場合とに分けて(1)式を変形する
と、各場合の平方根は、次の(2)、(3)式によって
表すことができる。
eoが偶数の時:凡−2LLI〜127(l−ro)・
・・・・・(2)eoが奇数の時:ふ= 21−127
(t・r”)・・・(3)ここで、m= (ea+1
26)/2、n = (e o + 127 ) /
2、f’、f”はそれぞれ各平方根の値を表す仮数部で
ある。
・・・・・(2)eoが奇数の時:ふ= 21−127
(t・r”)・・・(3)ここで、m= (ea+1
26)/2、n = (e o + 127 ) /
2、f’、f”はそれぞれ各平方根の値を表す仮数部で
ある。
ところで、eo+126の最下位ビットはe。が偶数で
あれば必ず“0”であり、(e、+126)/2は、(
eo+127)/2の最下位ビットを無視したものと同
等である。
あれば必ず“0”であり、(e、+126)/2は、(
eo+127)/2の最下位ビットを無視したものと同
等である。
そこで、指数部nを求めれば、これが共通化した指数部
として扱うことができる。このように、入力データa。
として扱うことができる。このように、入力データa。
の平方根を求めるには、指数部nと、開平した仮数部r
゛またはf”とを結合させれば良い。
゛またはf”とを結合させれば良い。
次に、第3図を参照して第1変換器2の構成について説
明する。この図において、2aはセレクタである。この
セレクタ2aは、入力データa。の23ビツト目、すな
わち、指数部e。の最下位ビットが“0”である場合に
プリセット値r126Jを出力し、“l”である場合に
プリセット値r125jを出力する。すなわち、第1変
換器2は、入力データa。の指数部e。か偶数であれば
、第1変換データa1の指数部e1をr126Jに設定
する。また、入力データa。の指数部e。が奇数であれ
ば、第1変換データa1の指数部e、をN25Jに設定
する。この変換により求められる第1変換データa、は
、次の(4)、(5)式で表される。
明する。この図において、2aはセレクタである。この
セレクタ2aは、入力データa。の23ビツト目、すな
わち、指数部e。の最下位ビットが“0”である場合に
プリセット値r126Jを出力し、“l”である場合に
プリセット値r125jを出力する。すなわち、第1変
換器2は、入力データa。の指数部e。か偶数であれば
、第1変換データa1の指数部e1をr126Jに設定
する。また、入力データa。の指数部e。が奇数であれ
ば、第1変換データa1の指数部e、をN25Jに設定
する。この変換により求められる第1変換データa、は
、次の(4)、(5)式で表される。
指数部eoが偶数:a、−2−’(1−fo) ・=−
(4)但し、0.5≦a、〈1 指数部eoが奇数:a1= 2−”(1−ro) −−
(5)但し、0.25≦a+< 0.5 このような変換によれば、第1変換データa1の仮数部
r。(0〜22ビツト)は、入力データa。の仮数部r
0そのままになるから、仮数部のビット落ちが起こらな
い。
(4)但し、0.5≦a、〈1 指数部eoが奇数:a1= 2−”(1−ro) −−
(5)但し、0.25≦a+< 0.5 このような変換によれば、第1変換データa1の仮数部
r。(0〜22ビツト)は、入力データa。の仮数部r
0そのままになるから、仮数部のビット落ちが起こらな
い。
次に、第4図は加減乗除算器3の機能を説明するための
図である。この図に示す加減乗除算器3は、予め与えら
れている近似計算式に第1変換データa、を代入して浮
動小数点演算を行い、これによって得られた平方根且を
中間データa2として出力するものである。この演算は
、例えば、上述した第1変換データa1の値が0.5≦
a、< 1の範囲にある場合には、(6)式を用いて行
われる。
図である。この図に示す加減乗除算器3は、予め与えら
れている近似計算式に第1変換データa、を代入して浮
動小数点演算を行い、これによって得られた平方根且を
中間データa2として出力するものである。この演算は
、例えば、上述した第1変換データa1の値が0.5≦
a、< 1の範囲にある場合には、(6)式を用いて行
われる。
(但し、0.5≦a、<1)
また、第1変換データa、の値が0.25≦81≦0゜
5の範囲にある場合には、(7)式を用いて行われる。
5の範囲にある場合には、(7)式を用いて行われる。
547 B、+ 9 ・−・(7)8
32 (但し、0.25≦8+≦0.5) 上記(6)、(7’)式の各定数は、2進数で表現でき
る有限小数であり、しかも、それを乗する演算も容易に
行う°ことができるよう考慮されている。従って、この
加減乗除算器3は、これら各定数が予め内部に設定され
ており、極めて速く近似計算するように構成されている
。
32 (但し、0.25≦8+≦0.5) 上記(6)、(7’)式の各定数は、2進数で表現でき
る有限小数であり、しかも、それを乗する演算も容易に
行う°ことができるよう考慮されている。従って、この
加減乗除算器3は、これら各定数が予め内部に設定され
ており、極めて速く近似計算するように構成されている
。
次に、第5図を参照して第2変換器4の構成について説
明する。この図において、4aは加算器であり、プリセ
ット値r127Jと入力データa。の指数部e。とを加
算して出力する。4bはノフタであり、加算器4aから
出力されるデータをLSB側へ1ビツトシフトさせて出
力する。このような構成によれば、入力データa。の指
数部e。を(eo +127)/2に変換し、これと中
間データa、の仮数部r1とを結合させた平方根データ
a3を出力する。
明する。この図において、4aは加算器であり、プリセ
ット値r127Jと入力データa。の指数部e。とを加
算して出力する。4bはノフタであり、加算器4aから
出力されるデータをLSB側へ1ビツトシフトさせて出
力する。このような構成によれば、入力データa。の指
数部e。を(eo +127)/2に変換し、これと中
間データa、の仮数部r1とを結合させた平方根データ
a3を出力する。
上記構成による平方根演算装置は、まず、レジスタR1
に入力データa。がセットされる。次に、レジスタR1
に一時記憶されている入力データa。
に入力データa。がセットされる。次に、レジスタR1
に一時記憶されている入力データa。
が読み出され、第1変換器2および第2変換器4に供給
される。第1変換器2に供給された入力データa。は、
0.25≦a、< 1なる範囲の第1変換データa1に
データ変換され、レジスタR2にセットされる。次に、
レジスタR2から読み出された第1変換データa1は、
加減乗除算器3に供給される。そして、この加減乗除算
器3に入力された第1変換データa、は、上述した演算
が施されて中間データatとなり、レジスタR3にセッ
トされる。
される。第1変換器2に供給された入力データa。は、
0.25≦a、< 1なる範囲の第1変換データa1に
データ変換され、レジスタR2にセットされる。次に、
レジスタR2から読み出された第1変換データa1は、
加減乗除算器3に供給される。そして、この加減乗除算
器3に入力された第1変換データa、は、上述した演算
が施されて中間データatとなり、レジスタR3にセッ
トされる。
次いで、レジスタR3から読み出された中間データa、
は、第2変換器4に供給される。第2変換器4は、入力
データa。と中間データa、とを受け、上述したデータ
変換によって得られる平方根データa、をレジスタR4
にセットする。そして、レジスタR4から最終的に求め
る平方根データa3が読み出される。
は、第2変換器4に供給される。第2変換器4は、入力
データa。と中間データa、とを受け、上述したデータ
変換によって得られる平方根データa、をレジスタR4
にセットする。そして、レジスタR4から最終的に求め
る平方根データa3が読み出される。
なお、上述した平方根データa3をニュートン・ラブラ
ン近似法のシード(出発値)として用いれば、より精度
の高い平方根近似値を求めることも可能になる。
ン近似法のシード(出発値)として用いれば、より精度
の高い平方根近似値を求めることも可能になる。
「発明の効果」
以上説明したように、この発明によれば、入力データの
指数部を0.25以上1未満の値をとる第1の変換デー
タに変換する第1の変換手段と、0.25以上1未満の
範囲で定義された所定の近似式に前記第1の変換データ
を代入させて開平し、これを第2の変換データとして出
力する演算手段と、前記入力データの指数部を前記平方
根データの指数部に変換し、これを前記第2の変換デー
タの仮数部に結合させて前記平方根データを形成する第
2の変換手段とを設けたので、簡易な構成で回路規模が
小さく、かつ、高速な平方根演算を行うことができる。
指数部を0.25以上1未満の値をとる第1の変換デー
タに変換する第1の変換手段と、0.25以上1未満の
範囲で定義された所定の近似式に前記第1の変換データ
を代入させて開平し、これを第2の変換データとして出
力する演算手段と、前記入力データの指数部を前記平方
根データの指数部に変換し、これを前記第2の変換デー
タの仮数部に結合させて前記平方根データを形成する第
2の変換手段とを設けたので、簡易な構成で回路規模が
小さく、かつ、高速な平方根演算を行うことができる。
第1図はこの発明の一実施例による平方根演算装置の構
成を示すブロック図、第2図は同実施例における入力デ
ータa0の構成を示す図、第3図は同実施例における第
1変換器2の構成を説明するための図、第4図は同実施
例における加減乗除算器3の機能を説明するための図、
第5図は同実施例における第2変換器4の構成を説明す
るための図である。 2・・・・・・第1変換器、3・・・・・・加減乗除算
器、4・・・・・・第2変換器。
成を示すブロック図、第2図は同実施例における入力デ
ータa0の構成を示す図、第3図は同実施例における第
1変換器2の構成を説明するための図、第4図は同実施
例における加減乗除算器3の機能を説明するための図、
第5図は同実施例における第2変換器4の構成を説明す
るための図である。 2・・・・・・第1変換器、3・・・・・・加減乗除算
器、4・・・・・・第2変換器。
Claims (1)
- 【特許請求の範囲】 指数部と仮数部とで構成される2進数の入力データを開
平し、これを平方根データとして出力する平方根演算装
置において、 前記入力データの指数部を0.25以上1未満の値をと
る第1の変換データに変換する第1の変換手段と、 0.25以上1未満の範囲で定義された所定の近似式に
前記第1の変換データを代入させて開平し、これを第2
の変換データとして出力する演算手段と、 前記入力データの指数部を前記平方根データの指数部に
変換し、これを前記第2の変換データの仮数部に結合さ
せて前記平方根データを形成する第2の変換手段とを具
備することを特徴とする平方根演算装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9148090A JP2822577B2 (ja) | 1990-04-06 | 1990-04-06 | 平方根演算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9148090A JP2822577B2 (ja) | 1990-04-06 | 1990-04-06 | 平方根演算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03288927A true JPH03288927A (ja) | 1991-12-19 |
JP2822577B2 JP2822577B2 (ja) | 1998-11-11 |
Family
ID=14027568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9148090A Expired - Fee Related JP2822577B2 (ja) | 1990-04-06 | 1990-04-06 | 平方根演算装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2822577B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009259142A (ja) * | 2008-04-21 | 2009-11-05 | Mitsubishi Electric Corp | 演算装置 |
-
1990
- 1990-04-06 JP JP9148090A patent/JP2822577B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009259142A (ja) * | 2008-04-21 | 2009-11-05 | Mitsubishi Electric Corp | 演算装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2822577B2 (ja) | 1998-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8639737B2 (en) | Method to compute an approximation to the reciprocal of the square root of a floating point number in IEEE format | |
JPS59149539A (ja) | 固定小数点−浮動小数点変換装置 | |
JPH0749771A (ja) | 近似値を丸める方法 | |
KR950006580B1 (ko) | 나눗셈연산장치 | |
JPH03171324A (ja) | オペランドの平方根を計算する回路及び方法 | |
EP0416308A2 (en) | Rectangular array signed digit multiplier | |
JPH05250146A (ja) | 整数累乗処理を行なうための回路及び方法 | |
US5825681A (en) | Divider/multiplier circuit having high precision mode | |
JP2511527B2 (ja) | 浮動小数点演算器 | |
JP6646350B2 (ja) | 様々な数値フォーマットのデータを用いてデータに基づく関数モデルを計算するためのモデル計算ユニット、および制御装置 | |
JPH03288927A (ja) | 平方根演算装置 | |
JPH0540605A (ja) | 浮動小数点乗算装置 | |
JP2645422B2 (ja) | 浮動小数点演算処理装置 | |
JPH0831024B2 (ja) | 演算プロセッサ | |
JPH0772860B2 (ja) | 演算方式 | |
JP4163967B2 (ja) | 浮動小数点演算装置 | |
JPH0251732A (ja) | 浮動小数点演算器 | |
JP2508286B2 (ja) | 平方根演算装置 | |
JP4428778B2 (ja) | 演算装置及び演算方法並びに計算装置 | |
JPS6126135A (ja) | 浮動小数点デ−タ変換回路 | |
JP3201097B2 (ja) | 乗算器における乗算処方方法 | |
JPS59136849A (ja) | 除算装置 | |
JPS63254525A (ja) | 除算装置 | |
JPH06195206A (ja) | 除算器 | |
JPS59140560A (ja) | 浮動小数点乗算器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070904 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080904 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |