(57)【要約】【課題】単精度演算を行う回路で切り捨てられるガードビットを有効に利用して、ゲート数が少なく、コスト面、高速性に優れ、また、特に累算において精度の高い浮動小数点数演算回路を提供する。【解決手段】仮数演算部４に付加ビット列を生成する付加ビット生成器９を備え、余りビット列から余り仮数と指数調整値を生成する余り仮数生成部１２と、指数と指数調整値から余りビット列の余り指数を生成する余り指数生成部１１とを有する余り正規化部７と、余り正規化部７で生成された余り指数と余り仮数を用いて余りの丸めを行い余り出力を生成する余り丸め部８とを浮動小数点演算部１に備えると共に、余り出力を記憶する余り記憶部１３を備える。【選択図】図１
2010102431.tif 000002
【特許請求の範囲】
【請求項１】
ＩＥＥＥ７５４に準拠する２つの浮動小数点数の演算を行うために、
前記各入力の符号を演算する符号演算部と、
指数を演算する指数演算部と、
仮数演算器により仮数を演算する仮数演算部と、
前記指数演算部と前記仮数演算部で演算された結果を正規化する正規化部と、
前記符号演算部と前記正規化部で演算された結果を丸める丸め部を備えた浮動小数点演算部を有する浮動小数点演算回路において、
前記仮数演算部に、入力された浮動小数点数のラウンドビットの下位に、必要な精度の余りを生成するために必要なビット数の付加ビット列を生成する付加ビット生成器を備え、
前記正規化部で正規化の際に生成された余りの２３ビット以降のビットである余りビット列から余り仮数と指数調整値を生成する余り仮数生成部と、
前記正規化部で正規化の際に生成された指数と前記指数調整値から余りビット列の余り指数を生成する余り指数生成部とを有する余り正規化部と、
該余り正規化部で生成された前記余り指数と前記余り仮数を用いて余りの丸めを行い余り出力を生成する余り丸め部とを前記浮動小数点演算部に備えると共に、
前記余り出力を記憶する余り記憶部を備えることを特徴とする浮動小数点数演算回路。
【請求項２】
前記余り仮数は前記余りビット列の１の場所をＭＳＢから走査して最初に１が出現するまでのビット数ｎを検出し、１をＭＳＢとしてｎビット目以降に必要な０が追加されたものとすることを特徴とする請求項１記載の浮動小数点演算回路。
【請求項３】
前記指数調整値は１のＭＳＢ側のビット数ｎ−１とすることを特徴とする請求項２記載の浮動小数点演算回路。
【請求項４】
前記余り指数は前記指数演算部で演算された指数から、前記指数調整値と単精度浮動小数点数の仮数部のビット数である２３との加算結果を引いたものとすることを特徴とする請求項３記載の浮動小数点演算回路。
【請求項５】
前記余り記憶部の前段に置かれ、余り出力と余り記憶部の出力の２つを入力とし、出力を余り記憶部へ出力する浮動小数点数加算器をさらに備えることを特徴とする請求項1乃至４いずれかに記載の浮動小数点数演算回路。
【請求項６】
ＩＥＥＥ７５４に準拠する２つの浮動小数点数の演算を行うために、
前記各入力の符号を演算する符号演算部と、
指数を演算する指数演算部と、
仮数演算器により仮数を演算する仮数演算部と、
前記指数演算部と前記仮数演算部で演算された結果を正規化する正規化部と、
前記符号演算部と前記正規化部で演算された結果を丸める丸め部を備えた浮動小数点演算部を有する浮動小数点演算回路の浮動小数点演算方法において、
入力された浮動小数点数のラウンドビットの下位に、必要な精度の余りを生成するために必要なビット数の付加ビット列を生成するステップと、
前記正規化部で正規化の際に生成された余りの２３ビット以降のビットである余りビット列から余り仮数と指数調整値を生成するステップと、
前記正規化部で正規化の際に生成された指数と前記指数調整値から余りビット列の余り指数を生成するステップと、
前記余り指数と前記余り仮数を用いて余りの丸めを行い余り出力を生成するステップと、
前記余り出力を記憶するステップを備えることを特徴とする浮動小数点数演算方法。
【請求項７】
前記余り仮数は前記余りビット列の１の場所をＭＳＢから走査して最初に１が出現するまでのビット数ｎを検出し、１をＭＳＢとしてｎビット目以降に必要な０が追加されたものとすることを特徴とする請求項６記載の浮動小数点演算方法。
【請求項８】
前記指数調整値は１のＭＳＢ側のビット数ｎ−１とすることを特徴とする請求項７記載の浮動小数点演算方法。
【請求項９】
前記余り指数は前記指数演算部で演算された指数から、前記指数調整値と単精度浮動小数点数の仮数部のビット数である２３との加算結果を引いたものとすることを特徴とする請求項８記載の浮動小数点演算方法。
【請求項１０】
前記余り指数と前記余り仮数を用いて余りの丸めを行い余り出力を生成するステップと、前記余り出力を記憶するステップの間に、
今回出力した前記余り出力に前回記憶した余り出力を加算して新しい余り出力とするステップを追加することを特徴とする請求項６乃至９いずれかに記載の浮動小数点演算方法。
【請求項１１】
請求項１乃至５いずれかに記載の浮動小数点数演算回路を、サーボ制御装置のＣＰＵもしくはＤＳＰの演算処理部として利用することを特徴とするサーボ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、浮動小数点数を用いて実行される制御演算で利用される浮動小数点数演算回路と浮動小数点演算方法及び浮動小数点数演算回路を搭載したサーボ制御装置に関する。
【背景技術】
【０００２】
サーボモータを制御するサーボ制御装置のような制御演算を行う装置では、低コストで高速で精度の良い演算が求められる。このため、浮動少数点数を用いて演算する場合がある。
一般に浮動小数点数は指数を利用して広いダイナミックレンジを扱うことが出来る。そのため、比例処理のようにデータにゲインを掛け合わせる処理で、整数のようなオーバフローを心配することなく、単精度浮動小数点数でも演算を行なことができる。制御演算で利用される処理には比例処理のほかにも、ディジタルフィルタや積分処理等がある。例えば、ディジタルフィルタではタップ数に相当するデータが累算され、また、積分処理では最初からのデータが累算される。浮動小数点数の精度は仮数＋１ビット分である。そのため、従来の浮動小数点数演算回路は、積分処理のように過去からのデータが累算される処理においては、仮数の演算結果のオーバフローが生じやすく、単精度演算では演算精度が低下するという問題があった。
また、精度を確保するため、倍精度浮動小数点数で演算をすることも考えられるが、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）で実現する場合ゲート数が増大してしまうという問題がある。
これに対し、浮動小数点演算の加算に関する桁合わせシフト時のｋビット生成回路を倍精度のみとし、ハードウエアの量を減少したものが提案されている。（例えば特許文献１参照）
図８は特許文献１に示される従来の浮動小数点演算回路の例を示すブロック図である。図８の浮動小数点数演算回路は、単精度データの有効ビット以降に０を必要数付加して、擬似的に倍精度データを生成するシフト量生成回路１００と、加算すべき２つの倍精度の浮動小数点データの指数部の値に応じて、一方の浮動小数点データの仮数部をシフトして桁合せを行う桁合せシフタ１０１、１０３と、上記桁合せシフタにより仮数部のデータをシフトした場合に、充溢したビットからＫビットを生成する倍精度用ｋビット生成回路１０２、１０４と、桁合せを行った仮数部のデータを加算する加算器１０５と、上記加算器により加算した後のデータから、単精度用のＫビットを生成する単精度用ｋビット生成回路１０６とを具備することにより構成されている。
【特許文献１】特開平２−８５９２２号公報（４頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の浮動小数点数の演算では、単精度での演算では積分処理のように過去からのデータが累算される処理においては、仮数の演算結果のオーバフローが生じやすく、演算精度が低下するという問題があった。
また、倍精度演算を使用すると、精度面では問題ないが、ゲート数が増加し、コスト面、高速性で問題がある。特許文献１の提案を使用しても、倍精度演算で対応するため、単精度演算に比べるとゲート数が増加してしまう。
本発明はこのような問題点に鑑みてなされたものであり、単精度演算を行う回路で切り捨てられるガードビットを有効に利用して、ゲート数が少なく、コスト面、高速性に優れ、また、特に累算において精度の高い浮動小数点数演算回路を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、本発明は次のようにしたのである。
請求項１に記載の発明は、ＩＥＥＥ７５４に準拠する２つの浮動小数点数の演算を行うために、前記各入力の符号を演算する符号演算部と、指数を演算する指数演算部と、仮数演算器により仮数を演算する仮数演算部と、前記指数演算部と前記仮数演算部で演算された結果を正規化する正規化部と、前記符号演算部と前記正規化部で演算された結果を丸める丸め部を備えた浮動小数点演算部を有する浮動小数点演算回路において、前記仮数演算部に、入力された浮動小数点数のラウンドビットの下位に、必要な精度の余りを生成するために必要なビット数の付加ビット列を生成する付加ビット生成器を備え、前記正規化部で正規化の際に生成された余りの２３ビット以降のビットである余りビット列から余り仮数と指数調整値を生成する余り仮数生成部と、前記正規化部で正規化の際に生成された指数と前記指数調整値から余りビット列の余り指数を生成する余り指数生成部とを有する余り正規化部と、該余り正規化部で生成された前記余り指数と前記余り仮数を用いて余りの丸めを行い余り出力を生成する余り丸め部とを前記浮動小数点演算部に備えると共に、前記余り出力を記憶する余り記憶部を備えるものである。
また、請求項２に記載の発明は、請求項１記載の浮動小数点演算回路において、前記余り仮数は前記余りビット列の１の場所をＭＳＢから走査して最初に１が出現するまでのビット数ｎを検出し、１をＭＳＢとしてｎビット目以降に必要な０が追加されたものとするものである。
また、請求項３に記載の発明は、請求項２記載の浮動小数点演算回路において、前記指数調整値は１のＭＳＢ側のビット数ｎ−１とするものである。
また、請求項４に記載の発明は、請求項３記載の浮動小数点演算回路において、前記余り指数は前記指数演算部で演算された指数から、前記指数調整値と単精度浮動小数点数の仮数部のビット数である２３との加算結果を引いたものとするものである。
また、請求項５に記載の発明は、請求項１乃至４いずれかに記載の浮動小数点演算回路において、前記余り記憶部の前段に置かれ、余り出力と余り記憶部の出力の２つを入力とし、出力を余り記憶部へ出力する浮動小数点数加算器をさらに備えるものである。
【発明の効果】
【０００５】
請求項１〜４、６〜９に記載の発明によると、単精度浮動小数点数演算では有効に利用されなかったガードビットから単精度浮動小数点数の余りを生成できるため、単精度浮動小数点数演算でありながら倍精度浮動小数点数演算の精度を得ることができる。また、単精度浮動小数点数演算のため、倍精度浮動小数点数演算に比べ、ゲート数を減らし、演算処理も高速にできるようになる。
また、請求項５、１０に記載の発明によると、余りを単精度浮動小数点数演算で累算して余りの精度を低下させないため、累算を必要とする演算の精度を向上することができる。
また、請求項１１に記載の発明によると、サーボ制御装置のシステムの性能を向上できることから、システムへ与えるクロック周波数を低減することができるため、システムの消費電力を低減することができる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【０００７】
図１は、本発明の浮動小数点数演算回路のブロック図である。図１において、１は浮動小数点の演算を行う浮動小数点演算部であり、浮動小数点数である２つの入力、入力１と入力２をオペコードの内容で浮動小数点数演算を行う。浮動小数点数演算は符号Ｓ１、Ｓ２と指数Ｅ１、Ｅ２、仮数Ｍ１、Ｍ２のフィールドに分けられ、符号は符号演算部２で、指数は指数演算部３で、仮数は仮数演算部４でそれぞれ演算が行われる。
指数演算部３と仮数演算部４の結果は正規化部５で正規化が行われる。正規化部５の結果と符号演算部２の結果は丸め部６に入力される。算術演算で余り出力Ｏ２を生成する場合には丸めは実行せずに、浮動小数点数である出力Ｏ１を生成する。比較演算や、算術演算でも余りを必要としない場合等余りを生成しない場合には、あらかじめ設定された丸めモードに従って丸め部６で丸めを行う。
仮数演算部４ではＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）の下位にガードビットｂ５、ｂ６、ラウンドビットｂ７、ｂ８と、付加ビット列生成器９により付加ビット列ｂ９、ｂ１０が付加される。
付加ビット列生成器９はオペコードを検査して、ラウンドビットｂ７、ｂ８の下位に必要な精度の余りを生成するために必要なビット数の付加ビット列を生成する。同じく、仮数のＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）の上位にもけちビットｂ３、ｂ４とガードビットｂ１、ｂ２が付加される。ＩＥＥＥ７５４では正規化された仮数は（１．ｂ１ｂ２‥‥ｂ２３）の形をしている。この１はあるものとして省略されて浮動小数点数にエンコードされる。この１をけちビットという。なお、一般的には、演算精度確保のため仮数の下位に追加する３ビットをそれぞれガードビット、ラウンドビット、スティッキービットと呼ぶ。スティッキービットはラウンドビット以降の論理和であるが、ここでは、論理和をとる前の状態のビット列を付加ビット列と呼ぶ。また、ＭＳＢ側のけちビットの上位に付加されるビットもガードビットと呼ぶ。
このＭＳＢの上位にはガードビットの０とけちビットの１の２ビットが付加される。ＬＳＢの下位に付加される付加ビット列ｂ９、ｂ１０の個数はオペコードの種類により異なるが、必要な精度が得られる個数のビットが付加される。ガードビットや付加ビット列が付加された仮数は仮数演算器１０で演算が行われる。仮数演算器１０の演算結果は正規化部５に入力され正規化される。余りを生成しない場合は、ＭＳＢ側とＬＳＢ側にそれぞれ２ビットを付加した２７ビットの仮数の生成後、丸め部６で丸め処理の後に単精度浮動小数点数としてＯ１として出力される。余りを生成する場合には、仮数として利用される２３ビットが生成される。仮数の２３ビット以降のビットは２６ビットの余りビット列ｂ１１として生成される。正規化部で生成された余りビット列ｂ１１は余り正規化部７の余り仮数生成部１２に入力される。
【０００８】
余り正規化部７の余り仮数生成部１２では、余りビット列ｂ１１に対する仮数を演算する。具体的には、余りビット列の１の場所をＭＳＢから走査して、１が出現するビット数ｎを検出する。１をＭＳＢとして、ｎビット目以降に必要な０が付加されたものを余り仮数Ｍ４とする。また、１のＭＳＢ側のビット数ｎ−１を指数調整値Ｅ５とする。正規化部５で生成された指数Ｅ３と指数調整値Ｅ５が余り正規化部７の余り指数生成部１１に入力される。余り指数生成部１１では正規化部５で生成された指数Ｅ３から、指数調整値Ｅ５と浮動小数点数の仮数部のビット数（単精度の場合２３ビット）が引かれて、余り指数Ｅ４が生成される。余り丸め部８では、符号演算部３で演算された符号と余り正規化部７で生成された余り指数Ｅ４と余り仮数Ｍ４を用いて余りの丸めが行われて、浮動小数点数の余り出力Ｏ２が生成される。余り丸め部８では丸め検出部１４で丸めが発生するかどうかを検出し、あらかじめ設定された丸めモードに従って丸めが行われる。ＩＥＥＥ７５４では丸めモードは、最近値丸め、＋∞方向丸め、０方向丸め、−∞方向丸めの４つのモードが定義されている。余り出力Ｏ２は余り記憶部１３に記憶され、これ以降の演算で利用できる。
【０００９】
実施例１が図８の従来技術と異なる点は、付加ビット列生成器９によりＬＳＢ側に付加される付加ビット列のビット長と、仮数演算部４で生成された演算結果の余りビット列ｂ１１を利用する余り正規化部７、そして余り丸め部８と余り記憶部１３を構成要素として含む点である。さらに、作用として単精度の浮動小数点数から、演算結果と余りの２つの単精度の浮動小数点数を同時に生成する点である。
【００１０】
次に、本発明による加算の演算例を説明する。
図２は本発明の浮動小数点数演算回路の加算の演算例である。
仮数Ｍ１、Ｍ２のＭＳＢ上位にはガードビットｂ１、ｂ２とけちビットｂ３、ｂ４が、ＬＳＢの下位にはガードビットとラウンドビットと２４ビットの付加ビット列ｂ９、ｂ１０が付加される。付加されるビット列の内容はＭＳＢ側には０１（２進表示）、ＬＳＢ側には００００００００００００００００００００００００００（２進表示）である。ビット列が付加された２つの仮数を仮数演算器１０で加算する。この加算の結果は５１ビットの演算結果が生成され、その演算結果が正規化部５に入力される。正規化部５では、この演算結果を基に正規化された仮数を生成し、小数点の位置を基に指数が調整される。正規化された仮数のＬＳＢの２６ビットは余り正規化部７で利用される余りビット列ｂ１１となる。加算の場合には指数を等しくして演算をする必要があるので、どちらか一方の仮数が右シフトされる。、余りの仮数精度はけちビットにする１の場所に依存するため、余りビット列を２６ビットにする場合、付加ビット列の個数を２４ビット必要とする。また、減算の場合も同様に付加ビット列の個数を２４ビット必要とする。正規化部５で生成される余りビット列ｂ１１は余り正規化部７で正規化される。
しかし、この演算をもし倍精度で行う場合は、倍精度は仮数が５３ビットのためガードビットをＬＳＢ、ＭＳＢとも２ビットつけて演算を実行すると演算結果は５７ビット必要である。
このように、本発明による演算は、倍精度で演算するよりゲート数が少なくなる。
【００１１】
次に、本発明による乗算の演算例を示す。
図３は本発明の浮動小数点数演算回路の乗算の演算例である。仮数Ｍ１、Ｍ２のＭＳＢ上位にはガードビットｂ１、ｂ２とけちビットｂ３、ｂ４が、ＬＳＢの下位には１ビットのガードビットｂ１２、ｂ１３が付加される。付加されるビット列の内容はＭＳＢ側には０１（２進表示）で、ＬＳＢ側には０（２進表示）である。ビット列が付加された２つの仮数を乗算する。この乗算の結果は５２ビットの演算結果が生成され、その演算結果が正規化部５に入力される。この演算結果を基に正規化された仮数を生成し、小数点の位置を基に指数が調整される。正規化された仮数のＬＳＢの２７ビットは余り正規化部７で利用される余りビット列ｂ１１となる。
Ｎビット×Ｎビットの演算結果は２Ｎビットになり、１≦仮数＜２のため、乗算の結果は１≦仮数＜４になる。乗算の場合には、余りビット列を２７ビットにするには、付加するビットをガードビットの１ビットで済ますことができる。また、この２７ビットの余りビット列のＬＳＢの１ビットを使用しなくとも演算精度には影響がないので、加算時と合わせるため余りビット列は２６ビットとする。
しかし、この演算をもし倍精度で行う場合は、仮数が５３ビットのためガードビットをＬＳＢに２ビットとＭＳＢに１ビットつけて演算を実行すると演算結果は１０２ビット必要である。
このように、本発明による演算は、倍精度で演算するよりゲート数が少なくなる。
【００１２】
次に、本発明による余りに対する正規化と丸めの演算例を示す。
図４は本発明の浮動小数点数演算回路の加算後の余りに対する正規化と丸めの演算例である。余りビット列ｂ１１は余り正規化部７の余り仮数生成部１２に入力され正規化が行なわれる。ＩＥＥＥ７５４の正規化とは（１．ｂ１ｂ２‥‥ｂ２３）のフォーマットにすることで小数点の次のビットｂ１が仮数のＭＳＢになる。余り仮数生成部１２では余りビット列ｂ１１の１の場所をＭＳＢ側から走査して、１が出現するビット数ｎを検出する。１をＭＳＢとして、ｎビット目以降に必要な０が付加された２６ビットの余り仮数Ｍ４が生成される。１のＭＳＢ側のビット数ｎ−１は指数調整値Ｅ５として、余り指数生成部１１に入力される。余り指数生成部１１には指数Ｅ３と指数調整値Ｅ５が入力される。余り指数生成部１１は、指数Ｅ３から、指数調整値Ｅ５と単精度浮動小数点数の仮数部のビット数である２３との加算結果を引くことで余り指数Ｅ４を生成する。
余り丸め部８は符号と余り指数Ｅ４、余り仮数Ｍ４を入力として単精度浮動小数点数である余り出力Ｏ２を生成する。余り仮数Ｍ４のＭＳＢから２５ビット目と２６ビット目の２ビットが丸め検出部１４に入力される。丸め検出部１４ではこの２ビットと丸めモードを利用して丸めが発生するか検出し、発生する場合は１を、しない場合は０を生成する。ＭＳＢから２４ビットの余り仮数は、ＭＳＢの上位に１ビットのガードビットｂ１４が付加され、丸め検出部１４の結果が足される。ガードビットｂ１５に１が立った場合はガードビットｂ１５以降の２３ビットが仮数に、０の時にはガードビットｂ１５の次のビットは無視し、その次のビットから２３ビットを仮数とする。ガードビットｂ１５は余り指数Ｅ４と加算され指数となる。符号をＭＳＢに、その次に指数の８ビット、その次に仮数の２３ビットをエンコードすることで３２ビットの単精度浮動少数点数である余り出力Ｏ２が生成される。
次に、本発明の浮動小数点演算回路により浮動小数点演算を行うときの浮動小数点演算方法の余りの処理について説明する。
図５は本発明の浮動小数点演算方法の余りに関する処理手順を示すフローチャートである。ステップＳ１で入力された浮動小数点数のラウンドビットの下位に、必要な精度の余りを生成するために必要なビット数の付加ビット列を生成する。ステップＳ２で正規化部で正規化の際に生成された余りの２３ビット以降のビットである余りビット列から余り仮数と指数調整値を生成する。ステップＳ３で正規化部で正規化の際に生成された指数と指数調整値から余りビット列の余り指数を生成する。ステップＳ４で余り指数と余り仮数を用いて余りの丸めを行い余り出力を生成する。ステップＳ５とステップＳ６は後述する余りを累積させる場合の処理であるので、余りを累積させない場合はステップＳ７に進み余り出力を記憶する。
【実施例２】
【００１３】
次に、余り出力を累積させる場合について説明する。
図６は、本発明の実施例２の浮動小数点数演算回路のブロック図である。実施例１と異なるのは、浮動小数点数演算部１と余り記憶部１３の間に浮動小数点数加算器１５が追加されている点である。浮動小数点数演算部１で生成された余り出力Ｏ２と余り記憶部１３の出力は浮動小数点数加算器１５に入力され、その加算結果が余り記憶部１３に記憶される。これにより、浮動小数点数加算器１５はアキュムレータとして動作し、精度を落とすことなく余り出力の累算を実行する。
なお、この場合の浮動小数点演算方法は図５のステップＳ５の判断でＹＥＳ側となり、ステップＳ６で今回出力した前記余り出力に前回記憶した余り出力を加算して新しい余り出力とする処理を行う。
【実施例３】
【００１４】
次に、本発明の浮動小数点演算回路をサーボ制御装置に組み込む場合について説明する。
図７は、本発明の浮動小数点数演算回路を搭載したサーボ制御装置のブロック図である。サーボ制御装置２０は制御ソフトウェアを実行するためにＣＰＵ２１を備える。ＣＰＵ２１内の演算処理部の一つとして浮動小数点数演算部１を利用した浮動小数点演算回路を備え、浮動小数点数演算を行う。余り処理を単精度浮動小数点数で行えるため、低コストで高速に精度の高い制御を行うことが出来る。なお、ＣＰＵ２１に代えてＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）で実現することも可能である。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施例の浮動小数点数演算回路のブロック図
【図２】本発明の第１実施例の浮動小数点数演算回路の加算の演算例
【図３】本発明の第１実施例の浮動小数点数演算回路の乗算の演算例
【図４】本発明の第１実施例の浮動小数点数演算回路の加算後の余りに対する正規化と丸めの演算例
【図５】本発明の浮動小数点演算方法の余りに関する処理手順を示すフローチャート
【図６】本発明の第２実施例の浮動小数点数演算回路のブロック図
【図７】本発明の第３実施例の浮動小数点数演算回路を搭載したサーボ制御装置のブロック図
【図８】従来の浮動小数点数演算回路の例を示すブロック図
【符号の説明】
【００１６】
１  浮動小数点数演算部
２  符号演算部
３  指数演算部
４  仮数演算部
５  正規化部
６  丸め部
７  余り正規化部
８  余り丸め部
９  付加ビット列生成器
１０  仮数演算部
１１  余り指数生成部
１２  余り仮数生成部
１３  余り記憶部
１４  丸め検出部
１５  浮動小数点加算器
２０  サーボ制御装置
２１  ＣＰＵ
１００  シフト量生成回路
１０１、１０３  桁合せシフタ
１０２、１０４  倍精度用ｋビット生成回路
１０５  加算器
１０６  単精度用ｋビット生成回路
【図１】
2010102431.tif 000003
【図２】
2010102431.tif 000004
【図３】
2010102431.tif 000005
【図４】
2010102431.tif 000006
【図５】
2010102431.tif 000007
【図６】
2010102431.tif 000008
【図７】
2010102431.tif 000009
【図８】
2010102431.tif 000010