JPH05216622A - 比較装置 - Google Patents

比較装置

Info

Publication number
JPH05216622A
JPH05216622A JP1753392A JP1753392A JPH05216622A JP H05216622 A JPH05216622 A JP H05216622A JP 1753392 A JP1753392 A JP 1753392A JP 1753392 A JP1753392 A JP 1753392A JP H05216622 A JPH05216622 A JP H05216622A
Authority
JP
Japan
Prior art keywords
bit
data
adder
output
sign
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
JP1753392A
Other languages
English (en)
Inventor
Mikako Yasutome
美加子 安留
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP1753392A priority Critical patent/JPH05216622A/ja
Publication of JPH05216622A publication Critical patent/JPH05216622A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【目的】 符号付きデータの大小比較処理を小さいハー
ドウエアで高速、かつ従来の約1/2の電力消費でなす
回路を提供する。 【構成】 2つの2進表現のデータA、Bにおいて、
データBの符号ビットを除くビットの1の補数を出力す
る補数器とデータAの符号ビットを除くビットとを加算
し、その最上位ビットのキャリーを出力する(m−1)
ビットの加算器と、データAの符号ビットとデータBの
符号ビットと前記加算器出力を入力とし、データAの符
号とデータBの符号が等しいときは前記加算器出力を判
定結果とし、その他はデータBの符号ビットを判定結果
とする大小判定回路とする。前記入力データの2つの
符号が等しい場合のみ前記加算器で加算を実行する手段
を装備する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は主として2つの数の大小
判定用の比較装置に関する。
【0002】
【従来の技術】従来、2つのデータの大小比較は、比較
をする一方のデータから他方のデータの減算を実行した
結果の符号ビットにより行っていた。その際、そのまま
では演算結果がオーバーフローすることがあるため、m
(ここに、mは正整数)ビットの入力データに対して符
号を1ビット拡張した(m+1)ビットのデータとして
オーバーフローを防止した上で減算を実行し、その結果
の符号ビットを比較結果として出力していた。
【0003】以下図面を基に、従来の比較装置について
具体的に説明する。なお、ここに大小を比較する2つの
データA、Bとしては、理解を容易にするため、後に説
明する2つの実施例も含めて、最上位ビットを符号ビッ
トとする2の補数体系の8ビットデータ(−27 から2
7 −1の範囲のデータで表現される)とする。図4は従
来の比較装置のブロック図である。本図において、1、
2は各々8ビットの入力データA、Bを格納するレジス
タであり、3、4は各々レジスタに格納したデータに対
して上位側に1ビットの符号を拡張する符号拡張器であ
り、5は符号拡張器4出力の1の補数を生成する補数器
であり、6は符号拡張器3と補数器5と最下位ビットへ
のキャリー(Cin)を加算し、演算結果の最上位ビッ
ト(28の重みを持つビット)を出力する加算器であ
る。
【0004】次に、その動作を説明するに先立って、大
小比較の原理について説明する。 (1) A<B、A≧Bの判定 A<Bは、A−B<0と等価である。これは、A−Bの
結果の符号が大小判定結果となることを示す。すなわ
ち、最下位ビットへのキャリー(Cin)を1にして、
Aと、Bの1の補数を加算した結果の符号ビット1(S
out)によって、下記に示す大小判定が可能である。
【0005】(1−1)Sout=1のとき A<B (1−2)Sout=0のとき A≧B (2) A≦B、A>Bの判定 A≦Bは、A<B+1と等価である。さらにA−B−1
<0と等価である。
【0006】これは、A−B−1の結果の符号が大小判
定結果となることを示す。すなわち、Aと、Bの1の補
数とを加算した結果の符号ビットSoutによって、下
記に示す大小判定が可能である。 (2−1)Sout=1のとき A≦B (2−2)Sout=0のとき A>B 以上の構成、原理のもとで、以下に従来の比較装置の動
作を説明する。
【0007】まず、レジスタ1に格納されたデータAと
同じくレジスタ2に格納されたデータBに対して各々符
号拡張器3、符号拡張器4でそれぞれ符号ビットが1の
時には28 の重み持つビットとして1を付加し、符号ビ
ットが0の時には28 の重みを持つビットとして、0を
付加する。このため、符号拡張結果は9ビットのデータ
として出力される。
【0008】補数器5で、符号拡張器4出力の1の補数
を生成する。 (1′)A<B、A≧Bの判定 次に、加算器6で符号拡張器3出力と補数器5出力を、
最下位ビットへのキャリー(Cin)を1にして加算
し、符号ビット(28 の重みを持つビット)を出力す
る。以上のもとで加算器6出力が (1−1′)1の場合には A<B、 (1−2′)0の場合には A≦B と判定する。 (2′)A≦B、A>Bの判定 次に、加算器6で符号拡張器3出力と補数器5出力を、
最下位ビットへのキャリー(Cin)を0にして加算
し、符号ビット(28 の重みを持つビット)を出力す
る。以上のもとで加算器6出力が (2−1′)1の場合には A≦B (2−2′)0の場合には A>B と判定する。
【0009】なお、上記レジスタ、符号拡張器、補数
器、加算器の構造、作動原理そのもの等については単に
従来技術であるだけでなく、例えば渡辺茂他著オーム社
発行「マイクロコンピュータハンドブック」等多数の出
版物に記載されているごとくいわば周知技術であるこ
と、また本願発明の要旨に直結しないことのためその説
明は省略する。
【0010】
【発明が解決しようとする課題】しかしながら上記のよ
うな構成では、第1にmビットの入力データに対して符
号を1ビット拡張した(m+1)ビットの加算を必要と
するため、回路規模が大きくなり、装置の小型化という
要請にそぐわない。第2に完全に加算が終了しないと大
小判定ができず、処理すべきデータの増大のもと、高速
演算という要請にそぐわない。
【0011】第3に加算器において常に加算によって大
小判定を実行するため、加算時に発生する桁上げ伝搬の
ため消費電力が大きくなり、直接的には低電力消費とい
う要請に、間接的には冷却の面から装置の小型化という
要請にも反する。本発明は以上の問題点に鑑み、小型、
高速かつ低消費電力で大小判定を行う比較装置を提供す
ることを目的としてなされたものである。
【0012】
【課題を解決するための手段】上記問題点を解決するた
めに請求項1の発明においては、最上位ビットを符号ビ
ットとするmビットからなる2進表現の2つのデータ
A、Bを入力としその大小を比較する比較装置におい
て、前記入力データBの符号ビットを除く(m−1)ビ
ットのデータの1の補数を出力する補数器と、前記入力
データAの符号ビットを除く(m−1)ビットのデータ
と前記補数器出力を加算した上で、最上位ビットから発
生するキャリーを出力する(m−1)ビットの加算器
と、前記入力データAの符号ビットと前記入力データB
の符号ビットと前記加算器出力とを入力とし、前記入力
データAの符号と前記入力データBの符号が等しい場合
には前記加算器出力を大小判定結果として出力し、その
他の場合にはデータBの符号ビットを大小判定結果とし
て出力する大小判定回路を有することを特徴とする比較
装置としている。
【0013】請求項2の発明においては前記入力データ
A、Bの符号が等しい場合のみ前記加算器での加算を実
行させる加算器制御手段を有することを特徴とする請求
項1記載の比較装置としている。
【0014】
【作用】上記構成により、請求項1の発明においては、
最上位ビットを符号ビットとするmビットからなる2進
表現の2つのデータA、Bを入力としその大小を比較す
る比較装置において、補数器は入力データBの符号ビッ
トを除く(m−1)ビットのデータの1の補数を出力
し、加算器は入力データAの符号ビットを除く(m−
1)ビットのデータと前記補数器出力を加算した上で最
上位ビットから発生するキャリーを出力し、大小判定回
路は前記入力データAの符号ビットと前記入力データB
の符号ビットと前記加算器出力とを入力とし、前記入力
データAの符号と前記入力データBの符号が等しい場合
には前記加算器出力を大小判定結果として出力し、その
他の場合にはデータBの符号ビットを大小判定結果とし
て出力する。
【0015】請求項2の発明においては、請求項1記載
の比較装置において、加算器制御手段は前記入力データ
A、Bの符号が等しい場合のみ前記加算器での加算を実
行させる。
【0016】
【実施例】
(第1実施例)以下に、請求項1の発明を実施例に基づ
いて説明する。図1の(A)、(B)は各々本発明に係
る比較装置の一実施例の構成と入出力の関係を示すもの
である。図1(A)においては図4と同一の構成要素に
ついては同一番号を付すことによりその説明は省略す
る。また、既述のごとく最上位ビットを符号ビットとす
る2の補数体系の8ビットデータ(−27 から27 −1
の範囲のデータで表現される)を例にとって説明する。
【0017】5aは、レジスタ2の符号ビットを除く7
ビットのデータに対して1の補数を生成する補数器であ
り、6aはレジスタ1の符号ビットを除く7ビットのデ
ータと補数器5aの出力と最下位ビットへのキャリー
(Cin)を加算し、演算結果の最上位ビット(26
重みを持つビット)から発生するキャリー(Cout)
を出力する加算器であり、7は図1の(B)に示す入出
力の関係を有し、その結果AとBの大小の比較結果を出
力することとなる大小判定回路である。
【0018】なお、これらの本願発明のいわば要部の構
成要素についても、その構造等については、既述の「マ
イクロコンピュータハンドブック」等に記載のいわば周
知技術にて容易に実現可能であるため、その説明は省略
する。次に従来技術に係る比較装置の場合と同じく、そ
の動作を説明するに先立って、大小比較の原理について
説明する。 (1)符号が一致する場合の判定 実際に減算を実行して大小を比較する必要があるが、符
号が一致する場合の減算はオーバーフローが発生しない
ため、演算結果においても最上位ビット、すなわち27
の重みを持つビットが正確な符号を示す。
【0019】そして、加算器で発生する26 からのキャ
リーをCoutとすると、加算器での符号ビットの演算
は、データAとデータBの符号ビットを各々Sa、Sb
としたときSa=Sbであるため、 Sa+(Sbの反転)+Cout =Sa+(Saの反転)+Cout =1+Cout =Coutの反転 である。従って、符号が一致するCin=1で演算を実
行する場合には Cout=0のとき A<B Cout=1のとき A≧B Cin=0で演算を実行する場合には Cout=0のとき A≦B Cout=0のとき A>B である。 (2)符号ビットが異なる場合の判定 符号のみの情報で大小比較が可能であり、 Sa=1(Sb=0)のとき A<B Sa=0(Sb=0)のとき A>B である。
【0020】以上の構成、原理のもとで以下に本発明に
係る比較装置の動作を説明する。まず補数器5aで、レ
ジスタ2の符号ビットを除く7ビットのデータの1の補
数を生成する。 (1′)A<B、A≧Bの判定 加算器6aでレジスタ1の符号ビットを除く7ビットの
データと補数器5aの出力を、最下位ビットへのキャリ
ー(Cin)を1にして加算し、最上位ビット(26
重みを持つビット)からのキャリー(Cout)を出力
する。
【0021】大小判定回路7では、図1(B)に示す入
出力の関係表にしたがって、大小判定を行う。なお、図
1(B)は、SaとSbが一致する場合には加算器6a
出力のCoutを出力し、SaとSbが一致しない場合
にはSbを出力することを示している。以上のもとで大
小判定回路7出力が (1′−1)0の場合には A<B (1′−2)1の場合には A≧B であると判定する。 (2′)A≦B、A>Bの判定 加算器械6aでレジスタ1の符号ビットを除く7ビット
のデータと補数器5aの出力を、最下位ビットへのキャ
リーCinを1にして加算し、最上位ビットからのキャ
リー(Cout)(26 の重みを持つビット)を出力す
る。
【0022】大小判定回路7では、上記(1′)と同様
に表1に示す入出力の関係表にしたがって、大小判定を
行う。すなわち大小判定回路7出力が (2′−1)0の場合には A≦B (2′−2)1の場合には A>B であると判定する。
【0023】以上のように本実施例によれば、加算器で
符号ビットを除いたデータの演算を行い、符号よりも高
速に生成可能なキャリービットを大小比較結果として出
力するようにし、符号ビットが一致する場合には加算器
の出力を無効にして符号ビットのみで大小判定を行い、
符号ビットのみで大小比較が不可能な場合には加算器の
出力により大小判定を行う大小判定回路を設けることに
より、小さいハードウエアで高速に大小判定結果を得る
ことができる。 (第2実施例)次に請求項2の発明を実施例に基づいて
説明する。
【0024】図2は請求項2の発明に係る比較装置の一
実施例の構成図である。以下、本図を参照しながら説明
する。なお、本図においては先の実施例と同一の構成要
素については図1(A)と同一の番号を付すことにより
説明を省略する。記述のごとく、最上位ビットを符号ビ
ットとする2の補数体系の8ビットデータ(−27 から
7 −1の範囲のデータで表現する)を例に挙げて説明
する。
【0025】本図において、6bは図3に示すように、
レジスタ1の符号ビットを除く7ビットのデータと補数
器5a出力と最下位ビットへのキャリー(Cin)を加
算し、後述の桁上げ禁止回路8出力が1の場合には桁上
げ伝搬を禁止する桁上げ伝搬禁止機能を持ち、演算結果
の最上位ビット(26 の重みを持つビット)から発生す
るキャリー(Cout)を出力する機能を有する加算器
である。8は、レジスタ1のデータの符号ビットSaと
レジスタ2の符号ビットSbが異なる場合には1を出力
し、一致する場合には0を出力する、すなわち加算器制
御手段たる桁上げ禁止回路であり、9は桁上げ禁止回路
8が1を出力した場合にはSbを選択し、0を出力した
場合には上述のキャリー(Cout)を選択するマルチ
プレクサである。
【0026】なお、これらの本願発明のいわば要部の構
成要素の構造等については、先の第1実施例と同じ理由
により、その説明は省略する。次に、以上のように構成
された本第2実施例の比較装置の動作を説明するに先立
って、その回路遅延について説明する。補数器5aの回
路遅延をd1、桁上げ禁止回路8の遅延時間をd2、更
に図3に示す1段目の全加算器のキャリー(Cin)が
入力されてから7段目の全加算器のキャリー(C0)が
出力されるまでの回路遅延をd3とすると、補数器5a
はインバータで構成されており、桁上げ禁止回路8は排
他的論理和ゲートで構成されており、全加算器は排他的
論理和ゲートと論理積ゲート2段で構成されているた
め、d2<d1+d3が成立し、1段目の全加算器のキ
ャリー(C0)は、桁上げ禁止回路8の出力によって伝
播を止めることが可能となる。
【0027】以上のもとで、本第2実施例の比較装置の
動作を説明する。まず、補数器5aで、レジスタ2の符
号ビットを除く7ビットのデータの1の補数を生成す
る。これと同時に桁上げ禁止回路8で、桁上げ禁止信号
(CINH)を生成する。 (1)A<B、A≧Bの判定 (1−1)符号が一致する場合(CINH=0) 加算器6bでは、レジスタ1の符号ビットを除く7ビッ
トのデータと補数器5a出力を、最下位ビットへのキャ
リー(Cin)を1にして加算し、最上位ビットからの
キャリー(Cout)(26 の重みを持つビット)を出
力する。
【0028】マルチプレクサ9は、Coutを選択す
る。マルチプレクサ9出力であるCoutが0の場合に
はA<Bであり、1の場合にはA≧Bである。 (1−2)符号が異なる場合(CINH=1) 加算器6bでは、レジスタ1の符号ビットを除く7ビッ
トのデータと補数器5a出力を、最下位ビットへのキャ
リー(Cin)を1にして加算しているが、図3に示す
ように2ビットめ以降の桁上げ伝搬を禁止し、加算器内
部での不要な状態変化を防止する。
【0029】マルチプレクサ9はSbを選択する。マル
チプレクサ9出力が0の場合にはA<Bであり、1の場
合にはABである。 (2)A≦B、A>Bの判定 (2−1)符号が一致する場合(CINH=0) 加算器6bでレジスタ1の符号ビットを除く7ビットの
データと補数器5a出力を、最下位ビットへのキャリー
(Cin)を0にして加算し、最上位ビットからのキャ
リー(Cout)(26 の重みを持つビット)を出力す
る。
【0030】マルチプレクサ9は加算器6bの出力であ
るCoutを選択する。マルチプレクサ9の出力が0の
場合にはA≦Bであり、1の場合にはA>Bである。 (2−2)符号が異なる場合(CINH=1) 加算器6bでは、レジスタ1の符号ビットを除く7ビッ
トのデータと補数器5a出力を、最下位ビットへのキャ
リー(Cin)を0にして加算しているが、図3に示す
ように2ビットめ以降の桁上げ伝搬を禁止し、加算器内
部での状態変化を抑止する。
【0031】マルチプレクサ9はSbを選択する。マル
チプレクサ9出力が0の場合にはABであり、1の場
合にはA>Bである。以上のように本実施例によれば、
符号ビットを除いたデータの比較の開始と同時に符号ビ
ットの比較を行い、符号ビットが異なる場合には符号を
除くデータの加算時に発生する桁上げを禁止することに
より、正負のデータが同じ確率で入力することがほとん
どであるため、加算動作を1/2の確率で禁止すること
となり、ひいては消費電力を約1/2に削減することが
可能となる。
【0032】なお、第2実施例においては、補数器5a
をインバータとしたが、排他的論理和ゲートとしてもよ
く、また加算器6bをリプル桁上げ加算器としたが、桁
上げ生成・伝搬ユニットと桁上げ先見ユニット(CL
A)を組み合わせたもの等としてもよく、更にまた桁上
げ禁止信号の入力位置も、加算器の構成によって、適宜
相応なものとなしえる。また、桁上げ禁止信号生成に有
する遅延時間をd2、補数器の回路遅延をd1とする
と、d2<d1の場合には、桁上げ禁止信号で加算器の
入力を0にすることによって加算による桁上げという不
要な動作を防止することができる。
【0033】以上、本願発明を実施例に基づき説明して
きたが、本願発明は何も上記2つの実施例に限定される
ものではないのは勿論であり、例えば補数器、加算器の
具体的構造を問わず、用途も計算機のみに限定されずそ
れを包含する機器を含み、またこのためユーザが直接入
力する数値データとしては2進表現に限定されない。
【0034】
【発明の効果】以上説明したように、請求項1の発明に
よれば、小さいハードウエアで高速に大小判定結果を得
ることが可能となる。また、請求項2の発明によれば、
比較演算時の消費電力を削減することが可能となる。
【図面の簡単な説明】
【図1】請求項1の発明に係る比較装置の1実施例であ
り、(A)は構成を、(B)は入出力の関係を示す。
【図2】請求項2の発明に係る比較装置の1実施例の構
成図である。
【図3】上記実施例における加算器の構成図である。
【図4】従来技術に係る比較装置の構成図である。
【符号の説明】
1 レジスタ1 2 レジスタ2 3、4 符号拡張器 5、5a 1の補数器 6、6a、6b 加算器 7 大小判定回路 8 桁上げ禁止回路(加算器制御手段) 9 マルチプレクサ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 最上位ビットを符号ビットとするmビッ
    トからなる2進表現の2つのデータA、Bを入力としそ
    の大小を比較する比較装置において、 前記入力データBの符号ビットを除く(m−1)ビット
    のデータの1の補数を出力する補数器と、 前記入力データAの符号ビットを除く(m−1)ビット
    のデータと前記補数器出力を加算した上で、最上位ビッ
    トから発生するキャリーを出力する(m−1)ビットの
    加算器と、 前記入力データAの符号ビットと前記入力データBの符
    号ビットと前記加算器出力とを入力とし、前記入力デー
    タAの符号と前記入力データBの符号が等しい場合には
    前記加算器出力を大小判定結果として出力し、その他の
    場合にはデータBの符号ビットを大小判定結果として出
    力する大小判定回路とを有することを特徴とする比較装
    置。
  2. 【請求項2】 前記入力データA、Bの符号が等しい場
    合のみ前記加算器での加算を実行させる加算器制御手段
    を有することを特徴とする請求項1記載の比較装置。
JP1753392A 1992-02-03 1992-02-03 比較装置 Pending JPH05216622A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1753392A JPH05216622A (ja) 1992-02-03 1992-02-03 比較装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1753392A JPH05216622A (ja) 1992-02-03 1992-02-03 比較装置

Publications (1)

Publication Number Publication Date
JPH05216622A true JPH05216622A (ja) 1993-08-27

Family

ID=11946567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1753392A Pending JPH05216622A (ja) 1992-02-03 1992-02-03 比較装置

Country Status (1)

Country Link
JP (1) JPH05216622A (ja)

Similar Documents

Publication Publication Date Title
US5373459A (en) Floating point processor with high speed rounding circuit
US5278783A (en) Fast area-efficient multi-bit binary adder with low fan-out signals
US7720899B2 (en) Arithmetic operation unit, information processing apparatus and arithmetic operation method
KR20080055985A (ko) 선택가능 준정밀도를 가진 부동―소수점 프로세서
US6182100B1 (en) Method and system for performing a logarithmic estimation within a data processing system
US9448767B2 (en) Three-term predictive adder and/or subtracter
JP3356613B2 (ja) 加算方法および加算器
US10168993B2 (en) Zero detection of a sum of inputs without performing an addition
US6269385B1 (en) Apparatus and method for performing rounding and addition in parallel in floating point multiplier
JP2894015B2 (ja) 桁あふれ検出方法および回路
JPH05216622A (ja) 比較装置
JPH09114641A (ja) 最上位デジットを決定するための装置と方法
JP2509279B2 (ja) 浮動小数点数一固定小数点数変換装置
US6631393B1 (en) Method and apparatus for speculative addition using a limited carry
US7051062B2 (en) Apparatus and method for adding multiple-bit binary-strings
US6683530B1 (en) Method and apparatus for performing a floating point compare operation
JP3257278B2 (ja) 冗長なシフト数予測とシフト誤り補正を用いた正規化装置
KR100493053B1 (ko) 디지털 데이터의 포화 처리 장치
JP3482102B2 (ja) 絶対値距離演算回路
JP2002366346A (ja) プロセッサ、演算装置及び演算方法
US6148318A (en) Square root extraction circuit and floating-point square root extraction device
JP2555135B2 (ja) 演算回路
JP3229057B2 (ja) 例外処理装置
JPH113210A (ja) 3入力比較器、並びにこれを用いた飽和演算装置およびその演算方法
JP2685466B2 (ja) アドレス演算器