(57)【特許請求の範囲】
【請求項１】
第１の端子が第１の電源電位に接続され、制御端子に第１の信号が供給される第１のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に第２の信号が供給される第２のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に前記第１の信号の反転信号が供給される第３のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に前記第２の信号の反転信号が供給される第４のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第２の端子及び前記第２のスイッチ手段の第２の端子に接続され、制御端子に第３の信号が供給され、第２の端子がオーバーフロー信号を出力する第５のスイッチ手段と、
第１の端子が前記第３のスイッチ手段の第２の端子及び前記第４のスイッチ手段の第２の端子に接続され、制御端子に前記第３の信号の反転信号が供給される第６のスイッチ手段と、
第１の端子が第２の電源電位に接続され、制御端子に前記第１の信号が供給される第７のスイッチ手段と、
第１の端子が前記第２の電源電位に接続され、制御端子に前記第１の信号の反転信号が供給される第８のスイッチ手段と、
第１の端子が前記第７のスイッチ手段の第２の端子に接続され、制御端子に前記第２の信号が供給される第９のスイッチ手段と、
第１の端子が前記第８のスイッチ手段の第２の端子に接続され、制御端子に前記第２の信号の反転信号が供給される第１０のスイッチ手段と、
第１の端子が前記第９のスイッチ手段の第２の端子に接続され、制御端子に前記第３の信号の反転信号が供給され、第２の端子が前記第５のスイッチ手段の第２の端子に接続される第１１のスイッチ手段と、
第１の端子が前記第１０のスイッチ手段の第２の端子に接続され、制御端子に前記第３の信号が供給され、第２の端子が前記第５のスイッチ手段の第２の端子に接続される第１２のスイッチ手段と
を具備することを特徴とするオーバーフロー検出回路。
【請求項２】
第１の端子が第１の電源電位に接続され、制御端子に第１の信号が供給される第１のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に第２の信号が供給される第２のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に前記第１の信号の反転信号が供給される第３のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に前記第２の信号の反転信号が供給される第４のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第２の端子及び前記第２のスイッチ手段の第２の端子に接続され、制御端子に第３の信号が供給され、第２の端子がオーバーフロー信号を出力する第５のスイッチ手段と、
第１の端子が前記第３のスイッチ手段の第２の端子及び前記第４のスイッチ手段の第２の端子に接続され、制御端子に前記第３の信号の反転信号が供給され、第２の端子が前記第５のスイッチ手段の第２の端子に接続される第６のスイッチ手段と
を具備することを特徴とするオーバーフロー検出回路。
【請求項３】
第１の端子がオーバーフロー信号を出力し、制御端子に第１の信号が供給される第１のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第１の端子に接続され、制御端子に第２の信号が供給される第２のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第１の端子に接続され、制御端子に前記第１の信号の反転信号が供給される第３のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第１の端子に接続され、制御端子に前記第２の信号の反転信号が供給される第４のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第２の端子及び前記第２のスイッチ手段の第２の端子に接続され、制御端子に第３の信号が供給され、第２の端子が第１の電源電位に接続される第５のスイッチ手段と、
第１の端子が前記第３のスイッチ手段の第２の端子及び前記第４のスイッチ手段の第２の端子に接続され、制御端子に前記第３の信号の反転信号が供給され、第２の端子が前記第１の電源電位に接続される第６のスイッチ手段と、
を具備することを特徴とするオーバーフロー検出回路。
【請求項４】
第１の端子が第１の電源電位に接続され、制御端子に第１の信号が供給される第１のスイッチ手段と、
第１の端子が前記第１の電源電位に接続され、制御端子に前記第１の信号の反転信号が供給される第２のスイッチ手段と、
第１の端子が前記第１のスイッチ手段の第２の端子に接続され、制御端子に第２の信号が供給される第３のスイッチ手段と、
第１の端子が前記第２のスイッチ手段の第２の端子に接続され、制御端子に前記第２の信号の反転信号が供給される第４のスイッチ手段と、
第１の端子が前記第３のスイッチ手段の第２の端子に接続され、制御端子に第３の信号の反転信号が供給され、第２の端子がオーバーフロー信号を出力する第５のスイッチ手段と、
第１の端子が前記第４のスイッチ手段の第２の端子に接続され、制御端子に前記第３の信号が供給され、第２の端子が前記第５のスイッチ手段の第２の端子に接続される第６のスイッチ手段と、
を具備することを特徴とするオーバーフロー検出回路。
【請求項５】
前記第１の信号は、２の補数表現された第１の多ビット信号の最上位ビットであり、
前記第２の信号は、２の補数表現された第２の多ビット信号の最上位ビットであり、
前記第３の信号は、前記第１の多ビット信号と前記第２の多ビット信号を加算する加算回路の出力信号の最上位ビットである
ことを特徴とする請求項１ないし４記載のオーバーフロー検出回路。
【請求項６】
前記第１ないし第６のスイッチ手段は、第１導電型のＭＯＳトランジスタであり、
前記第７ないし第１２のスイッチ手段は、第２導電型のＭＯＳトランジスタである
ことを特徴とする請求項１記載のオーバーフロー検出回路。
【請求項７】
前記第１ないし第６のスイッチ手段は、ＭＯＳトランジスタであることを特徴とする請求項２ないし４記載のオーバーフロー検出回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、演算装置のオーバーフロー検出回路に関し、特にマイクロプロセッサ、信号処理プロセッサ、ビットスライスＡＬＵのオーバーフロー検出に使用されるものである。
【０００２】
【従来の技術】
電子計算機内部の算術演算は、複数ビットの二進数を用いて実行される。この際、演算精度が有限のビット長であることから、オーバーフローが発生することがある。オーバーフローは、演算の結果を利用すると比較的簡単に検出することができる。
【０００３】
例えば、２の補数表現で表された４ビットの２進数データの加算演算を行う場合を考える。例えば、＋５＋（−７）の演算を行うと、０１０１＋１００１＝１１１０（＝−２）となり、オーバーフローは起こらない。しかし、例えば−７＋（−６）の演算をすると、１００１＋１０１０＝００１１（＝３）となり、オーバーフローが起こる。例えば＋７＋（＋６）の演算についても、０１１１＋０１１０＝１１０１（＝−３）となり、オーバーフローが発生する。
【０００４】
このように、２つの入力データの符号ビットすなわち最上位ビット（以下ＭＳＢと呼ぶ）が同じであり、かつ出力データのＭＳＢが入力データのＭＳＢと異なる場合に、オーバーフローが生じることが分かる。
【０００５】
図５は、この場合のオーバーフロー検出回路を示す。図示せぬ複数ビット加算回路に入力される２つの入力データのＭＳＢをそれぞれＡ，Ｂとし、加算回路の出力データのＭＳＢをＳと表すことにする。
【０００６】
図５において、エクスクルシブノアゲート１の第１及び第２の入力端子には、それぞれ信号Ａ，Ｂが供給され、エクスクルシブオアゲート２の第１及び第２の入力端子には、それぞれ信号Ｂ、Ｓが供給される。ナンドゲート３の第１及び第２の入力端子には、それぞれエクスクルシブノアゲート１の出力信号とエクスクルシブオアゲート２の出力信号が供給される。ナンドゲート３は、オーバーフロー信号Ｖの反転信号／Ｖ（以下、／は反転信号を表すものとする）を出力する。
【０００７】
【発明が解決しようとする課題】
図５に示した回路には以下の２つの欠点がある。第１の欠点は、素子数が２４素子と比較的多いことである。第２の欠点は、信号が論理ゲートを２段通過するため、オーバーフローの検出時間が大きくなることである。演算結果を利用してオーバーフローか否かを検出するため、検出は高速に行わなければならない。
本発明は、上記課題に鑑みてなされたもので、素子数が少なく検出時間の短いオーバーフロー検出回路を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記課題を解決するため、本発明のオーバーフロー検出回路は、第１の端子が第１の電源電位に接続され、制御端子に第１の信号が供給される第１のスイッチ手段と、第１の端子が第１の電源電位に接続され、制御端子に第２の信号が供給される第２のスイッチ手段と、第１の端子が第１の電源電位に接続され、制御端子に第１の信号の反転信号が供給される第３のスイッチ手段と、第１の端子が第１の電源電位に接続され、制御端子に第２の信号の反転信号が供給される第４のスイッチ手段と、第１の端子が第１のスイッチ手段の第２の端子及び第２のスイッチ手段の第２の端子に接続され、制御端子に第３の信号が供給され、第２の端子がオーバーフロー信号を出力する第５のスイッチ手段と、第１の端子が第３のスイッチ手段の第２の端子及び第４のスイッチ手段の第２の端子に接続され、制御端子に第３の信号の反転信号が供給される第６のスイッチ手段と、第１の端子が第２の電源電位に接続され、制御端子に第１の信号が供給される第７のスイッチ手段と、第１の端子が第２の電源電位に接続され、制御端子に第１の信号の反転信号が供給される第８のスイッチ手段と、第１の端子が第７のスイッチ手段の第２の端子に接続され、制御端子に第２の信号が供給される第９のスイッチ手段と、第１の端子が第８のスイッチ手段の第２の端子に接続され、制御端子に第２の信号の反転信号が供給される第１０のスイッチ手段と、第１の端子が第９のスイッチ手段の第２の端子に接続され、制御端子に第３の信号の反転信号が供給され、第２の端子が第５のスイッチ手段の第２の端子に接続される第１１のスイッチ手段と、第１の端子が第１０のスイッチ手段の第２の端子に接続され、制御端子に第３の信号が供給され、第２の端子が第５のスイッチ手段の第２の端子に接続される第１２のスイッチ手段とを具備する。
【０００９】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
図１は、本発明のオーバーフロー検出回路の第１の実施例を示す。
図１に示すように、信号Ａは第１のトランジスタ１１及び第７のトランジスタ１７のゲートに供給され、信号／Ａは第３のトランジスタ１３及び第１１のトランジスタ２１のゲートに供給される。また、信号Ｂは第２のトランジスタ１２及び第９のトランジスタ１９のゲートに供給され、信号／Ｂは第４のトランジスタ１４及び第１０のトランジスタ２０のゲートに供給される。さらに、信号Ｓは第５のトランジスタ１５及び第１２のトランジスタ２２のゲートに供給され、信号／Ｓは第６のトランジスタ１６及び第１１のトランジスタ２１のゲートに供給される。
【００１０】
第１のトランジスタ１１、第２のトランジスタ１２、第３のトランジスタ１３及び第４のトランジスタ１４の電流経路の第１の端子は、いずれも電源電位に接続される。第１のトランジスタ１１及び第２のトランジスタ１２の電流経路の第２の端子は、第５のトランジスタ１５の電流経路の第１の端子に接続される。第３のトランジスタ１３及び第４のトランジスタ１４の電流経路の第２の端子は、第６のトランジスタ１６の電流経路の第１の端子に接続される。第５のトランジスタ１５の電流経路の第２の端子は、第６のトランジスタ１６の電流経路の第２の端子、第１１のトランジスタ２１及び第１２のトランジスタ２２の電流経路の第２の端子に接続される。
【００１１】
第７のトランジスタ１７の電流経路の第２の端子は、第９のトランジスタ１９の電流経路の第１の端子に接続される。第９のトランジスタ１９の電流経路の第２の端子は、第１１のトランジスタ２１の電流経路の第１の端子に接続される。第７のトランジスタ１７の電流経路の第１の端子は接地される。また、第８のトランジスタ１８の電流経路の第２の端子は、第１０のトランジスタ２０の電流経路の第１の端子に接続される。第１０のトランジスタ２０の電流経路の第２の端子は、第１２のトランジスタ２２の電流経路の第１の端子に接続される。第８のトランジスタ１８の電流経路の第１の端子は接地される。
【００１２】
第５のトランジスタ１５の電流経路の第２の端子、第６のトランジスタ１６の電流経路の第２の端子、第１１のトランジスタ２１の電流経路の第２の端子及び第１２のトランジスタ２２の電流経路の第２の端子の接続点が出力端子となり、オーバーフロー信号／Ｖを出力する。
【００１３】
本実施例では、信号Ａ，Ｂ，Ｓ及びそれらの反転信号／Ａ、／Ｂ、／Ｓを用いている。他の回路で信号／Ａ，／Ｂ，／Ｓが生成されている場合は、それらの信号を本回路の入力信号に用いることができる。その場合、本実施例において、素子数は１２素子であり、ゲート段数は１段となる。よって、素子数と遅延時間を従来例よりも減らすことができる。
【００１４】
また、反転信号／Ａ，／Ｂ，／Ｓが他の回路で生成されていない場合は、信号Ａ，Ｂ，Ｓから２個のトランジスタよりなるインバータを３個用いてこれらの信号を生成しなければならない。この場合、素子数は１８素子となるものの、従来例より素子数を減らすことが可能となる。
【００１５】
なお、図１において、第１ないし第６のトランジスタはＰチャネルトランジスタであり、第７ないし第１２のトランジスタはＮチャネルトランジスタである。
図２は、本発明のオーバーフロー検出回路の第２の実施例を示す。
【００１６】
図２に示すように、信号Ａ，Ｂ，Ｓはそれぞれ第１のトランジスタ３１、第２のトランジスタ３２、第５のトランジスタ３５のゲートに供給される。信号／Ａ，／Ｂ，／Ｓはそれぞれ第３のトランジスタ３３、第４のトランジスタ３４、第６のトランジスタ３６のゲートに供給される。また、クロック信号ＣＫは、第７のトランジスタ３７及び第８のトランジスタ３８のゲートに供給される。
【００１７】
第７のトランジスタ３７の電流経路の第１の端子は、例えば電源電位に接続され、第７のトランジスタ３７の電流経路の第２の端子は、第５のトランジスタ３５及び第６のトランジスタ３６の電流経路の第２の端子に接続される。第５のトランジスタ３５の電流経路の第１の端子は、第１のトランジスタ３１及び第２のトランジスタ３２の電流経路の第２の端子に接続される。第６のトランジスタ３６の電流経路の第１の端子は、第３のトランジスタ３３及び第４のトランジスタ３４の電流経路の第２の端子に接続される。第１ないし第４のトランジスタ３１〜３４の電流経路の第１の端子は、第８のトランジスタ３８の電流経路の第２の端子に接続される。第８のトランジスタ３８の電流経路の第１の端子は、例えば接地される。
【００１８】
また、第７のトランジスタ３７の電流経路の第２の端子、第５のトランジスタ３５の電流経路の第２の端子及び第６のトランジスタ３６の電流経路の第２の端子の接続点は出力端子となり、オーバーフロー信号Ｖを出力する。
【００１９】
また、第７のトランジスタ３７は、ＰチャネルＭＯＳトランジスタであり、第８のトランジスタ３８は、ＮチャネルＭＯＳトランジスタである。第１ないし第６のトランジスタ３１〜３６は、例えばＮチャネルＭＯＳトランジスタである。
【００２０】
この回路は、ダイナミック動作をするオーバーフロー検出回路である。クロック信号ＣＫがローレベルのときは、プリチャージ期間であり、出力信号Ｖは入力信号によらず常にハイレベルである。この後、クロック信号ＣＫがハイレベルになると、オーバーフロー検出回路として動作する。
【００２１】
本実施例では、８素子でオーバーフロー検出回路を構成することができるので、図１に示した実施例よりも素子数をさらに減らすことが可能となる。
図３は、本発明のオーバーフロー検出回路の第３の実施例を示す。
【００２２】
図３に示すように、信号Ａ，Ｂ，Ｓはそれぞれ第１のトランジスタ４１、第２のトランジスタ４２、第５のトランジスタ４５のゲートに供給される。信号／Ａ，／Ｂ，／Ｓはそれぞれ第３のトランジスタ４３、第４のトランジスタ４４、第６のトランジスタ４６のゲートに供給される。また、クロック信号ＣＫは、第７のトランジスタ４７及び第８のトランジスタ４８のゲートに供給される。
【００２３】
第７のトランジスタ４７の電流経路の第１の端子は、例えば電源電位に接続され、第７のトランジスタ４７の電流経路の第２の端子は、第１ないし第４のトランジスタ４１〜４４の電流経路の第１の端子に接続される。第１及び第２のトランジスタ４１、４２の電流経路の第２の端子は、第５のトランジスタ４５の電流経路の第１の端子に接続される。第３及び第４のトランジスタ４３、４４の電流経路の第２の端子は、第６のトランジスタ４６の電流経路の第１の端子に接続される。第５及び第６のトランジスタ４５、４６の電流経路の第２の端子は、第８のトランジスタ４８の電流経路の第１の端子に接続される。第８のトランジスタ４８の電流経路の第２の端子は、例えば接地される。
【００２４】
また、第７のトランジスタ４７の電流経路の第２の端子と、第１ないし第４のトランジスタ４１〜４４の電流経路の第１の端子の接続点は出力端子となり、オーバーフロー信号Ｖを出力する。
【００２５】
また、第７のトランジスタ４７は、ＰチャネルＭＯＳトランジスタであり、第８のトランジスタ４８は、ＮチャネルＭＯＳトランジスタである。第１ないし第６のトランジスタ４１〜４６は、例えばＮチャネルＭＯＳトランジスタである。
【００２６】
この回路は、図２に示した回路と同様に、ダイナミック動作をするオーバーフロー検出回路である。クロック信号ＣＫがローレベルのときは、プリチャージ期間であり、出力信号Ｖは入力信号によらず常にハイレベルである。この後、クロック信号ＣＫがハイレベルになると、オーバーフロー検出回路として動作する。
【００２７】
本実施例では、８素子でオーバーフロー検出回路を構成しているので、従来例よりも素子数を減らすことができる。
図４は、本発明のオーバーフロー検出回路の第４の実施例を示す。
【００２８】
図４に示した実施例において、信号Ａ，Ｂ，Ｓはそれぞれ第１のトランジスタ５１、第３のトランジスタ５３、第６のトランジスタ５６のゲートに供給される。信号／Ａ，／Ｂ，／Ｓはそれぞれ第２のトランジスタ５２、第４のトランジスタ５４、第５のトランジスタ５５のゲートに供給される。また、クロック信号ＣＫは、第７のトランジスタ５７及び第８のトランジスタ５８のゲートに供給される。
【００２９】
また、第７のトランジスタ５７の電流経路の第１の端子は電源電位に接続され、第７のトランジスタ５７の電流経路の第２の端子は第５のトランジスタ５５及び第６のトランジスタ５６の電流経路の第２の端子に接続される。第６のトランジスタ５６の電流経路の第１の端子は第４のトランジスタ５４の電流経路の第２の端子に接続され、第４のトランジスタ５４の電流経路の第１の端子は第２のトランジスタ５２の電流経路の第２の端子に接続される。第２のトランジスタ５２の電流経路の第１の端子は第８のトランジスタ５８の第２の端子に接続される。また、第５のトランジスタ５５の電流経路の第１の端子は第３のトランジスタ５３の電流経路の第２の端子に接続され、第３のトランジスタ５３の電流経路の第１の端子は第１のトランジスタ５１の電流経路の第２の端子に接続される。第１のトランジスタ５１の電流経路の第１の端子は第８のトランジスタ５８の電流経路の第２の端子に接続される。第８のトランジスタ５８の電流経路の第１の端子は接地される。
【００３０】
第７のトランジスタ５７の電流経路の第２の端子と、第５及び第６のトランジスタ５５、５６の電流経路の第２の端子との接続点は出力端子となり、オーバーフロー信号／Ｖを出力する。
【００３１】
また、第７のトランジスタ５７は、ＰチャネルＭＯＳトランジスタであり、第８のトランジスタ５８は、ＮチャネルＭＯＳトランジスタである。第１ないし第６のトランジスタ５１〜５６は、例えばＮチャネルＭＯＳトランジスタである。
【００３２】
この回路は、図２及び図３に示した回路と同様に、ダイナミック動作をするオーバーフロー検出回路である。クロック信号ＣＫがローレベルのときは、プリチャージ期間であり、出力信号／Ｖは入力信号によらず常にハイレベルである。この後、クロック信号ＣＫがハイレベルになると、オーバーフロー検出回路として動作する。
【００３３】
本実施例では、図２及び図３に示した回路と同様に、オーバーフロー検出回路を構成する素子数を従来よりも減らすことができる。
なお、図２ないし図４に示した実施例において、例えば電源電位と出力端子間に第７のトランジスタ３７、４７、５７に代えて抵抗を設けてもよい。また、第８のトランジスタ３８、４８、５８を除去し、トランジスタ３１、３２、３３、３４、４５、４６、５１、５２の電流経路のこれらの除去したトランジスタに接続されていた端子を例えば接地してもよい。この場合も、オーバーフロー検出回路として動作し、素子数を減らすことができる。
【００３４】
また、上述の実施例ではトランジスタを用いているが、これに限られるものではなく、スイッチ手段であればよい。また、上述の実施例で電源電位と接地電位を逆にしてもオーバーフロー検出回路として動作する。
【００３５】
【発明の効果】
以上説明したように、本発明によれば、オーバーフロー検出回路をスイッチ回路網による単一の論理ゲートで構成するため、素子数を減らし検出時間を短くすることが可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施例を示す回路図。
【図２】本発明の第２の実施例を示す回路図。
【図３】本発明の第３の実施例を示す回路図。
【図４】本発明の第４の実施例を示す回路図。
【図５】従来例を示す回路図。
【符号の説明】
１１〜１６…ＰチャネルＭＯＳトランジスタ、
１７〜２２…ＮチャネルＭＯＳトランジスタ、
Ａ…加算回路の第１の入力信号の最上位ビット、
／Ａ…信号Ａの反転信号、
Ｂ…加算回路の第２の入力信号の最上位ビット、
／Ｂ…信号Ｂの反転信号、
Ｓ…加算回路の出力信号の最上位ビット、
／Ｓ…信号Ｓの反転信号。
【図１】
0003561103.tif 000002
【図２】
0003561103.tif 000003
【図３】
0003561103.tif 000004
【図４】
0003561103.tif 000005
【図５】
0003561103.tif 000006