(57)【要約】【課題】  簡単かつ規模のより小さい回路構成のデジタル比較器を実現すること。【解決手段】  デジタル比較器１では、入力Ｄ１，Ｄ２が並列に入力されると、１ビット比較器１１，１２によって、入力されたビットデータがすべて同一であるか否かに応じた１ビット比較フラグＥ１，Ｅ２，Ｆ１，Ｆ２が出力される。すると、２ビット比較器２１，２２によって、１ビット比較フラグＥ１，Ｅ２と入力Ｄ１，Ｄ２の第２ビット、１ビット比較フラグＦ１，Ｆ２と入力Ｄ１，Ｄ２の第０ビットとの演算が行われ、２ビット比較フラグＧ１，Ｇ２，Ｈ１，Ｈ２が出力される。さらに、２ビット比較器２３によって、２ビット比較フラグＧ１，Ｇ２，Ｈ１，Ｈ２の演算が行われ、入力Ｄ１，Ｄ２のうち、最大のものを示す出力が得られる。即ち、デジタル値を直列に入力して比較する場合に比べ、より高速に比較を行うことが可能となる。【選択図】  図１
2005107962.tif 000002
【特許請求の範囲】
【請求項１】
所定のビット幅からなる複数のデジタル信号を比較するデジタル比較器において、
比較対象である前記デジタル信号の個数とそれぞれ同数の上位側および下位側のビット列を入力することが可能であって、前記上位側の入力ビット列と下位側の入力ビット列とにおいて対応している１組のビットデータからなる２ビットの値それぞれの中に、該２ビットのビットデータが示し得る値の最大値若しくは最小値のものが含まれているか否かに応じて、前記デジタル信号それぞれが、比較対象における最大若しくは最小のものとなるか否かを示す２ビット比較フラグを出力する２ビット比較手段を含み、
該２ビット比較手段が、前記ビット幅に応じた段数で多段接続されることによって多段接続部を構成し、
該多段接続部においては、前段の前記２ビット比較手段の出力が上位側の入力であり、該前段の前記２ビット比較手段における下位側の入力ビット列に次ぐ桁を反映させて前記デジタル信号を比較するための次段比較データが下位側の入力とされ、
該多段接続部における初段の前記２ビット比較手段は、比較対象である前記デジタル信号それぞれが、比較対象における最大若しくは最小のものとなるか否かを各デジタル信号の最上位ビットを反映して示す最上位比較フラグが上位側の入力であり、最上位に次ぐ桁を反映させて前記デジタル信号を比較するための初段比較データが下位側の入力とされていることを特徴とするデジタル比較器。
【請求項２】
前記多段接続部の前段に前記２ビット比較手段をさらに備え、該２ビット比較手段において、上位側の入力を全て“１”、下位側の入力を前記デジタル信号それぞれの最上位ビットとすることによって出力された前記２ビット比較フラグが、前記最上位比較フラグとして入力されていることを特徴とする請求項１記載のデジタル比較器。
【請求項３】
比較対象である前記デジタル信号それぞれにおいて所定の１桁を構成するビットデータの列が入力され、該ビットデータの列が全て同一の値であるか否かに応じて、該所定の１桁を構成するビットデータを、前記多段接続部におけるビット演算の結果に影響を与えない値に変換して出力する１ビット比較手段を前記多段接続部の前段に備え、該１ビット比較手段の出力が、前記最上位比較フラグとして入力されていることを特徴とする請求項１記載のデジタル比較器。
【請求項４】
前記多段接続部を構成する前記２ビット比較手段の少なくともいずれかは、該２ビット比較手段の上位側の入力に反映されている桁に次ぐ複数桁を反映させた前記２ビット比較フラグを出力する前記２ビット比較手段を下位側の入力の前段に備えることを特徴とする請求項１から３のいずれかに記載のデジタル比較器。
【請求項５】
前記多段接続部を構成する前記２ビット比較手段の少なくともいずれかは、比較対象である前記デジタル信号それぞれにおいて、該２ビット比較手段の上位側の入力に反映されている桁に次ぐ１桁を構成するビットデータの列が入力され、該ビットデータの列が全て同一の値であるか否かに応じて、該１桁を構成するビットデータを、後段におけるビット演算の結果に影響を与えない値に変換して出力する１ビット比較手段の出力、若しくは該１桁を構成するビットデータが直接に、下位側の入力とされていることを特徴とする請求項１から４のいずれかに記載のデジタル比較器。
【請求項６】
前記２ビット比較手段は、前記上位側および下位側のビット列において対応している１組のビットデータの論理積を取得し、その論理積が全て同一の所定値である場合、上位側に入力されたビット列を前記２ビット比較フラグとして出力し、その論理積の全てが同一の値ではなければ、該論理積を出力することを特徴とする請求項１から５のいずれかに記載のデジタル比較器。
【請求項７】
所定のビット幅からなる複数のデジタル信号を比較するデジタル信号の比較方法であって、
比較対象である前記デジタル信号それぞれにおける所定の１桁を構成する第１のビットデータの列と、該所定の１桁に次ぐ桁を構成する第２のビットデータの列とに対し、第１のビットデータの列が全て同一の所定値である場合、第１のビットデータの列を規定値に変換した上で、第１および第２のビットデータの列を構成する各デジタル信号の１組のビットデータの中に、該１組のビットデータが示し得る値の最大値若しくは最小値のものが含まれているか否かに応じて、比較対象における最大若しくは最小のものとなるか否かを示す２ビット比較フラグを生成し、前記第１および第２のビットデータの列を該２ビット比較フラグで置換するフラグ置換ステップを含み、
前記フラグ置換ステップの処理を、比較対象である前記デジタル信号を構成する各桁のビットデータの列にくまなく施すことにより、前記２ビット比較フラグを更新していき、最終的に取得される前記２ビット比較フラグによって、比較対象における最大あるいは最小の前記デジタル信号を選別することを特徴とする比較方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力されたデジタル信号の値を比較するデジタル比較器およびデジタル信号の比較方法に関する。
【背景技術】
【０００２】
従来、入力された複数のデジタル信号を比較するために、デジタル比較器が用いられている。
デジタル比較器は、デジタル信号として表された複数のデジタル値を比較し、その大小を判定するものであり、例えば、プロセッサに対する割り込み信号の優先順位を判定する場合等に使用される。また、プロセッサ内に、比較するデジタル値を格納可能なレジスタを有するデジタル比較器を備えることによって、ソフトウェアによる比較処理の負担を軽減したシステム等に使用される。
【０００３】
このようなデジタル比較器の例として、例えば、特開平６−２５０８２１号公報および特開平１０−１５４０６６号公報に記載された技術が知られている。
特開平６−２５０８２１号公報には、一方の比較値を補数とする補数回路と、最下位ビットの論理積を演算する第１キャリーロジック回路と、直列に接続され、下位２番目以降の該当するビットの論理積を演算する多数の第２キャリーロジック回路とを備える２入力のデジタル比較器に関する技術が開示されている。
【０００４】
また、特開平１０−１５４０６６号公報には、２つのデジタル信号の各ビットを比較し、比較結果に応じた所定値を出力する複数の１ビット比較手段と、各１ビット比較手段の出力を受け、上位桁から各ビットを比較する最終比較手段とを備えるデジタル比較器に関する技術が開示されている。
【特許文献１】特開平６−２５０８２１号公報
【特許文献２】特開平１０−１５４０６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の公報に記載された技術は、いずれも２つのデジタル信号を比較するものであり、これらの公報に記載された技術を応用して、３つ以上のデジタル信号を比較するデジタル比較器を実現した場合、回路規模が大型化してしまうという問題があった。例えば、複数ｎ個のデジタル信号を入力として比較を行う場合、特開平６−２５０８２１号公報の図３に記載された２入力比較器はｎＣ２個必要となる。
【０００６】
本発明の課題は、簡単かつ規模のより小さい回路構成のデジタル比較器およびそのための比較方法を提供することである。
【課題を解決するための手段】
【０００７】
以上の課題を解決するため、本発明は、
所定のビット幅からなる複数のデジタル信号を比較するデジタル比較器において、比較対象である前記デジタル信号の個数とそれぞれ同数の上位側および下位側のビット列を入力することが可能であって、前記上位側の入力ビット列と下位側の入力ビット列とにおいて対応している１組のビットデータからなる２ビットの値それぞれの中に、該２ビットのビットデータが示し得る値の最大値（即ち“１１”）若しくは最小値（即ち“００”）のものが含まれているか否かに応じて、前記デジタル信号それぞれが、比較対象における最大若しくは最小のものとなるか否かを示す２ビット比較フラグを出力する２ビット比較手段（例えば、図２の２ビット比較器２１〜２３）を含み、該２ビット比較手段が、前記ビット幅に応じた段数で多段接続されることによって多段接続部（例えば、図２の多段接続部１Ａ）を構成し、該多段接続部においては、前段の前記２ビット比較手段の出力が上位側の入力であり、該前段の前記２ビット比較手段における下位側の入力ビット列に次ぐ桁を反映させて前記デジタル信号を比較するための次段比較データ（例えば、図２における２ビット比較器２３の下位側の入力である２ビット比較フラグＨ１，Ｈ２等）が下位側の入力とされ、該多段接続部における初段の前記２ビット比較手段は、比較対象である前記デジタル信号それぞれが、比較対象における最大若しくは最小のものとなるか否かを各デジタル信号の最上位ビットを反映して示す最上位比較フラグ（例えば、図２における２ビット比較器２１の上位側の入力である１ビット比較フラグＥ１，Ｅ２、あるいは、図７における第２段の２ビット比較器の上位側の入力である２ビット比較フラグ）が上位側の入力であり、最上位に次ぐ桁を反映させて前記デジタル信号を比較するための初段比較データ（例えば、図２における２ビット比較器２１の下位側の入力である入力Ｄ１，Ｄ２の第２ビット、あるいは、図７における第２段の２ビット比較器の下位側の入力である入力Ｄ１，Ｄ２、Ｄ３，Ｄ４の第２ビット）が下位側の入力とされていることを特徴としている。
【０００８】
このような構成により、比較対象である任意の個数のデジタル信号の中で、最大若しくは最小のものとなる可能性を示す２ビット比較フラグを、各桁のビットデータによって更新していき、最終的に、比較対象のデジタル信号における最大若しくは最小のものを示す２ビット比較フラグが取得される。
また、このような構成においては、比較対象であるデジタル信号の数が増加しても、２ビット比較手段の個数を変化させることなく対応することが可能であると共に、比較対象であるデジタル信号のビット幅が増加しても、多段接続部の段数の増加をより小さく抑えることが可能である。
【０００９】
したがって、簡単かつ規模のより小さい回路構成のデジタル比較器を実現することが可能となる。
また、前記多段接続部の前段に前記２ビット比較手段（例えば、図７における初段の２ビット比較器）をさらに備え、該２ビット比較手段において、上位側の入力を全て“１”、下位側の入力を前記デジタル信号それぞれの最上位ビットとすることによって出力された前記２ビット比較フラグが、前記最上位比較フラグとして入力されていることを特徴としている。
【００１０】
このような構成により、２ビット比較手段のみによって、デジタル比較器を構成することが可能となる。
また、比較対象である前記デジタル信号それぞれにおいて所定の１桁を構成するビットデータの列が入力され、該ビットデータの列が全て同一の値であるか否かに応じて、該所定の１桁を構成するビットデータを、前記多段接続部におけるビット演算の結果に影響を与えない値に変換して出力する１ビット比較手段（例えば、図２の１ビット比較器１１，１２）を前記多段接続部の前段に備え、該１ビット比較手段の出力が、前記最上位比較フラグとして入力されていることを特徴としている。
【００１１】
このような構成により、多段接続部におけるビット演算をより効率的なものとすることができる。
また、前記多段接続部を構成する前記２ビット比較手段の少なくともいずれかは、該２ビット比較手段の上位側の入力に反映されている桁に次ぐ複数桁を反映させた前記２ビット比較フラグを出力する前記２ビット比較手段（例えば、図２における２ビット比較器２２）を下位側の入力の前段に備えることを特徴としている。
【００１２】
このような構成により、多段接続部の接続段数を低減させることが可能となる。
また、前記多段接続部を構成する前記２ビット比較手段の少なくともいずれかは、比較対象である前記デジタル信号それぞれにおいて、該２ビット比較手段の上位側の入力に反映されている桁に次ぐ１桁を構成するビットデータの列が入力され、該ビットデータの列が全て同一の値であるか否かに応じて、該１桁を構成するビットデータを、後段におけるビット演算の結果に影響を与えない値に変換して出力する１ビット比較手段の出力、若しくは該１桁を構成するビットデータが直接に、下位側の入力とされていることを特徴としている。
【００１３】
また、前記２ビット比較手段は、前記上位側および下位側のビット列において対応している１組のビットデータの論理積を取得し、その論理積が全て同一の所定値である場合、上位側に入力されたビット列を前記２ビット比較フラグとして出力し、その論理積の全てが同一の値ではなければ、該論理積を出力することを特徴としている。
また、本発明は、
所定のビット幅からなる複数のデジタル信号を比較するデジタル信号の比較方法であって、比較対象である前記デジタル信号それぞれにおける所定の１桁を構成する第１のビットデータの列と、該所定の１桁に次ぐ桁を構成する第２のビットデータの列とに対し、第１のビットデータの列が全て同一の所定値である場合、第１のビットデータの列を規定値に変換した上で、第１および第２のビットデータの列を構成する各デジタル信号の１組のビットデータの中に、該１組のビットデータが示し得る値の最大値若しくは最小値のものが含まれているか否かに応じて、比較対象における最大若しくは最小のものとなるか否かを示す２ビット比較フラグを生成し、前記第１および第２のビットデータの列を該２ビット比較フラグで置換するフラグ置換ステップを含み、前記フラグ置換ステップの処理を、比較対象である前記デジタル信号を構成する各桁のビットデータの列にくまなく施すことにより、前記２ビット比較フラグを更新していき、最終的に取得される前記２ビット比較フラグによって、比較対象における最大あるいは最小の前記デジタル信号を選別することを特徴としている。
【００１４】
これにより、簡単かつ規模のより小さい回路構成のデジタル比較器を提供するための方法を実現することが可能となる。
このように、本発明によれば、簡単かつ規模のより小さい回路構成のデジタル比較器およびそのための比較方法を提供することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図を参照して本発明の実施の形態を説明する。
初めに、本発明に係るデジタル比較器において用いられているデジタル値の比較方法について説明する。
図１は、本発明に係るデジタル値の比較方法を示す説明図である。
図１（ａ）において、デジタル値ＩＮ０〜ＩＮ７は、比較対象である４ビットのデジタル値であり、本比較方法は、これらデジタル信号ＩＮ０〜ＩＮ７のうち、最大のもの（ここではデジタル値ＩＮ５の“１００１”）をデジタル比較器によって探索するための方法である。
【００１６】
本発明に係る比較方法においては、まず、比較対象であるデジタル値それぞれの桁ごとに、デジタル値を構成している値が全て同一であるか否かを判定し（図１（ｂ）参照）、値が全て同一である場合、その桁は、デジタル値の大小を比較する上で判断要素とならないため、比較結果に影響を与えないように取り扱う（ステップＳ１）。
例えば、図１（ｃ）においては、後述する論理積の演算に影響を与えないように、その桁のビット列を全て“１”に置換している。
【００１７】
次に、比較対象である各デジタル値において、隣接する所定の複数桁のビット列（例えば、図１（ｃ）においては、上位側および下位側２ビットずつの列）に着目し、着目している複数桁のビット列のうち、各デジタル値を構成している複数桁のビットデータが最大のもの（即ち、全て“１”のもの）を検出する（ステップＳ２）。
例えば、図１（ｃ）においては、複数桁のビット列における各桁のビットデータの論理積を取得することによって、最大のもの（各桁が全て“１”で論理積が“１”となるもの）を検出している。
【００１８】
その結果、図１（ｄ）に示すように、上位２ビットからなるビット列には、最大のものが検出されず（全て“０”となる）、下位２ビットからなるビット列では、デジタル値ＩＮ０，ＩＮ１，ＩＮ４，ＩＮ５が最大のもの（論理積が“１”であるもの）として検出される。
そして、ステップＳ２において、最大のものが検出された場合、上述の複数桁のビット列について、最大のものは“１”、他のものは“０”として１桁のビット列に置換し、最大のものが検出されない場合、その複数桁のうち、最上位のビット列で複数桁全体を１桁のビット列に置換する（ステップＳ３）。
【００１９】
例えば、図１（ｅ）においては、上位２ビットからなるビット列については、最上位ビットによって置換し、下位２ビットからなるビット列については、下位２ビットの論理積であるビット列によって置換している。
さらに、このような処理を上述の置換結果に対して順次施すことにより、最終的に、最大のデジタル値が求められる（ステップＳ４）。
【００２０】
例えば、図１（ｆ）においては、図１（ｅ）における２つのビット列に上述の処理を施す結果、デジタル値ＩＮ５に対応するビットデータのみが“１”となり、デジタル値ＩＮ５（１００１）が最大であると検出される。
なお、図１において、ステップＳ１の処理（デジタル値を構成している値が全て同一の桁は、“１”に置換する処理）は、各桁のビット列に対して施してもよいが、ステップＳ２において着目する複数桁のビット列のうち、その複数桁における下位のビット列（その複数桁における最上位以外のビット列）には、ステップＳ１の処理を施さなくてもよい。
【００２１】
これは、その桁のビット列が全て“０”である場合に有効であり、その桁のビット列が全て“０”である場合において、全て“１”に置換して、上位の桁のビット列と論理積を取得しても、全て“０”の状態のまま、上位の桁のビット列との論理積が“０”になるために、上位の桁のビット列をそのまま用いても、同一のビット列が用いられることとなるからである。
【００２２】
このようにステップＳ１の処理を施さない場合、不要な処理が省略され、より効率的にデジタル値の比較を行うことが可能となる。したがって、以下では、ステップＳ１の処理を施さない方法（以下、適宜「下位側ビットの直接入力による比較方法」と言う。）を例として説明することとする。
なお、ここでは、４ビットのデジタル値を８個入力して比較する例について説明したが、上述の比較方法は、デジタル値のビット幅および比較個数が任意の場合に用いることが可能である。
【００２３】
次に、本発明に係るデジタル比較器について説明する。
まず、構成を説明する。
図２は、本発明を適用したデジタル比較器１の構成を示す図である。
本発明を適用したデジタル比較器１は、任意のビット幅および個数のデジタル値を比較する構成とすることが可能であるが、説明を簡単にするため、ここでは４ビット（第０〜第３ビット）のデジタル値２つが比較対象として入力される場合を例に挙げて説明する。
【００２４】
図２において、デジタル比較器１は、１ビット比較器１１，１２と、２ビット比較器２１〜２３とを含んで構成され、２ビット比較器２１，２３は、多段接続部１Ａを構成している。なお、多段接続部１Ａは、特許請求の範囲における多段接続部に対応する部分であり、以下に示すデジタル比較器の構成図においても同様に示すものとする。
１ビット比較器１１には、比較対象である２つのデジタル値（以下、「入力Ｄ１，Ｄ２と言う。」）それぞれの第３ビットが入力され、それらが全て同一であるか否かに応じたフラグ（以下、「１ビット比較フラグ」と言う。）Ｅ１，Ｅ２を出力する。即ち、１ビット比較器１１は、入力Ｄ１，Ｄ２の第３ビットそれぞれが全て“０”あるいは全て“１”である場合、それぞれのビットを“１”に置換して出力し、入力Ｄ１，Ｄ２の第３ビットそれぞれが全ては“０”あるいは全ては“１”でない場合、それぞれのビットをそのまま出力する。
【００２５】
ここで、１ビット比較器１１は、具体的には、ＮＯＲ回路１１ａと、ＯＲ回路１１ｂ，１１ｃとによって構成される。
ＮＯＲ回路１１ａには、入力Ｄ１，Ｄ２の第３ビットそれぞれが入力され、それらの全てが“０”である場合には“１”を出力し、それらの全ては“０”でない場合には“０”を出力する。
【００２６】
ＯＲ回路１１ｂには、入力Ｄ１の第３ビットと、ＮＯＲ回路１１ａの出力とが入力され、それらのいずれも“０”である場合には“０”を出力し、それらの少なくともいずれかが“０”でない場合には“１”を出力する。
ＯＲ回路１１ｃには、入力Ｄ２の第３ビットと、ＮＯＲ回路１１ａの出力とが入力され、それらのいずれも“０”である場合には“０”を出力し、それらの少なくともいずれかが“０”でない場合には“１”を出力する。
【００２７】
この結果、１ビット比較器１１は、図３に示す真理値表に対応する入出力関係を実現することとなる。
なお、１ビット比較器１２は、入力Ｄ１，Ｄ２の第１ビットが入力されること以外は、１ビット比較器１１と同様の構成であるため、説明を省略する。
１ビット比較器１１，１２がこのような機能を有することにより、１ビット比較器１１，１２においては、入力Ｄ１，Ｄ２の第３および第１ビットの値に応じた１ビット比較フラグＥ１，Ｅ２および１ビット比較フラグＦ１，Ｆ２が生成され、１ビット比較フラグＥ１，Ｅ２が全て“１”である場合あるいは１ビット比較フラグＦ１，Ｆ２が全て“１”である場合には、後段の２ビット比較器２１，２２ににおいて行われる論理席の演算に影響を与えないものとなっている。これは、図１に示す比較方法において、ステップＳ１の処理結果に相当する。
【００２８】
次に、２ビット比較器２１には、入力Ｄ１，Ｄ２それぞれの第２ビットと、１ビット比較器１１の出力である１ビット比較フラグＥ１，Ｅ２が入力される。そして、２ビット比較器２１は、入力Ｄ１の第２ビットと１ビット比較フラグＥ１との論理積と、入力Ｄ２の第２ビットと１ビット比較フラグＥ２との論理積とが、全て“０”であるか否かに応じたフラグ（以下、「２ビット比較フラグ」と言う。）Ｇ１，Ｇ２を出力する。即ち、２ビット比較器２１は、入力Ｄ１の第２ビットと１ビット比較フラグＥ１との論理積と、入力Ｄ２の第２ビットと１ビット比較フラグＥ２との論理積とが、全て“０”である場合、１ビット比較フラグＥ１，Ｅ２を出力し、入力Ｄ１の第２ビットと１ビット比較フラグＥ１との論理積と、入力Ｄ２の第２ビットと１ビット比較フラグＥ２との論理積との全てが、“０”ではない場合、それぞれの論理積を出力する。
【００２９】
ここで、２ビット比較器２１は、具体的には、ＡＮＤ回路２１ａ，２１ｂ，２１ｆ，２１ｇと、ＮＯＲ回路２１ｃと、ＯＲ回路２１ｄ，２１ｅとによって構成される。
ＡＮＤ回路２１ａには、入力Ｄ１の第２ビットと、１ビット比較フラグＥ１とが入力され、それらの全てが“１”である場合には“１”を出力し、それらの全ては“１”でない場合には、“０”を出力する。
【００３０】
ＡＮＤ回路２１ｂには、入力Ｄ２の第２ビットと、１ビット比較フラグＥ２とが入力され、それらの全てが“１”である場合には“１”を出力し、それらの全ては“１”でない場合には、“０”を出力する。
ＮＯＲ回路２１ｃには、ＡＮＤ回路２１ａ，２１ｂそれぞれの出力が入力され、それらの全てが“０”である場合には“１”を出力し、それらの全ては“０”でない場合には“０”を出力する。
【００３１】
ＯＲ回路２１ｄには、ＡＮＤ回路２１ａの出力と、ＮＯＲ回路２１ｃの出力とが入力され、それらのいずれも“０”である場合には“０”を出力し、それらの少なくともいずれかが“０”でない場合には“１”を出力する。
ＯＲ回路２１ｅには、ＡＮＤ回路２１ｂの出力と、ＮＯＲ回路２１ｃの出力とが入力され、それらのいずれも“０”である場合には“０”を出力し、それらの少なくともいずれかが“０”でない場合には“１”を出力する。
【００３２】
ＡＮＤ回路２１ｆには、１ビット比較フラグＥ１と、ＯＲ回路２１ｄの出力とが入力され、それらの全てが“１”である場合には“１”を出力し、それらの全ては“１”でない場合には、“０”を出力する。
ＡＮＤ回路２１ｇには、１ビット比較フラグＥ２と、ＯＲ回路２１ｅの出力とが入力され、それらの全てが“１”である場合には“１”を出力し、それらの全ては“１”でない場合には、“０”を出力する。
【００３３】
この結果、２ビット比較器２１は、図４に示す真理値表に対応する入出力関係を実現することとなる。
なお、２ビット比較器２２，２３は、入力が異なること以外は、２ビット比較器２１と同様の構成であるため、説明を省略する。
２ビット比較器２１，２２がこのような機能を有することにより、２ビット比較器２１，２２においては、１ビット比較フラグＥ１，Ｅ２および１ビット比較フラグＦ１，Ｆ２の値に応じた２ビット比較フラグＧ１，Ｇ２および２ビット比較フラグＨ１，Ｈ２が生成される。そして、ＮＯＲ回路２１ｃの出力が“１”あるいはＮＯＲ回路２２ｃの出力が“１”である場合には、大小を比較する上で、より大きい重みを有する上位のビットに対応する１ビット比較フラグＥ１，Ｅ２あるいは１ビット比較フラグＦ１，Ｆ２が２ビット比較フラグＧ１，Ｇ２あるいは２ビット比較フラグＨ１，Ｈ２として出力される。これは、図１の比較方法におけるステップＳ２，Ｓ３の処理結果に相当する。
【００３４】
また、２ビット比較器２３に２ビット比較フラグＧ１，Ｇ２，Ｈ１，Ｈ２が入力されることにより、２ビット比較フラグＧ１，Ｈ１の演算結果Ｊ１と、２ビット比較フラグＧ２，Ｈ２の演算結果Ｊ２とが算出され、演算結果Ｊ１が“１”であれば入力Ｄ１が最大であり、演算結果Ｊ２が“１”であれば入力Ｄ２が最大であることを示している。これは、図１の比較方法におけるステップＳ４の処理結果に該当する。
【００３５】
次に、動作を説明する。
以下、入力Ｄ１として“００１１”、入力Ｄ２として“０１０１”がデジタル比較器１に入力された場合の動作例について説明する。なお、この場合、入力Ｄ２が最大値として検出されるべきものである。
入力Ｄ１および入力Ｄ２は、各桁のビットデータが並列にデジタル比較器１に入力され、第３ビットは、１ビット比較器１１に、第１ビットは、１ビット比較器１２にそれぞれ入力される。
【００３６】
すると、１ビット比較器１１は、入力が（０，０）であることから１ビット比較フラグＥ１として“１”、１ビット比較フラグＥ２として“１”を出力する（図３参照）。
また、１ビット比較器１２は、入力が（１，０）であることから１ビット比較フラグＦ１として“１”、１ビット比較フラグＦ２として“０”を出力する（図３参照）。
そして、２ビット比較器２１には、１ビット比較フラグＥ１，Ｅ２である（１，１）、および、入力Ｄ１および入力Ｄ２の第２ビットである（０，１）が入力され、２ビット比較フラグＧ１，Ｇ２として（０，１）を出力する（図４参照）。
【００３７】
また、２ビット比較器２２には、１ビット比較フラグＦ１，Ｆ２である（１，０）、および、入力Ｄ１および入力Ｄ２の第０ビットである（１，１）が入力され、２ビット比較フラグＨ１，Ｈ２として（１，０）を出力する（図４参照）。
すると、２ビット比較器２３には、２ビット比較フラグＧ１，Ｇ２，Ｈ１，Ｈ２として（０，１，１，０）が入力され、演算結果Ｊ１，Ｊ２として（０，１）を出力する。
【００３８】
この演算結果（０，１）は、入力Ｄ２が最大であることを示しており、適切な比較結果となっている。
以上のように、本実施の形態に係るデジタル比較器１においては、４ビットのデジタル値である入力Ｄ１，Ｄ２の各ビットデータが並列に入力されると、１ビット比較器１１，１２によって、入力されたビットデータがすべて同一であるか否かに応じた１ビット比較フラグＥ１，Ｅ２，Ｆ１，Ｆ２が出力される。すると、２ビット比較器２１，２２によって、１ビット比較フラグＥ１，Ｅ２と入力Ｄ１，Ｄ２の第２ビット、および、１ビット比較フラグＦ１，Ｆ２と入力Ｄ１，Ｄ２の第０ビットとの演算が行われ、２ビット比較フラグＧ１，Ｇ２，Ｈ１，Ｈ２が出力される。さらに、２ビット比較器２３によって、２ビット比較フラグＧ１，Ｇ２，Ｈ１，Ｈ２の演算が行われ、入力Ｄ１，Ｄ２のうち、最大のものを示す出力が得られる。
【００３９】
したがって、デジタル比較器１によれば、図１に示す比較方法によって、入力Ｄ１，Ｄ２を比較し、それらの中で最大のものを検出することが可能となる。
また、デジタル比較器１においては、入力Ｄ１，Ｄ２の各桁のビットデータが並列に入力され、デジタル値の比較が行われる。
したがって、デジタル値を直列に入力して比較する場合に比べ、より高速に比較を行うことが可能となる。
【００４０】
なお、図２においては、４ビットのデジタル値２つが比較対象として入力される場合の例について説明したが、比較されるデジタル値のビット幅および比較対象の個数が任意の場合に、図１に示す比較方法を適用したデジタル比較器を実現することが可能である。
図５は、一般化したデジタル比較器の構成を示す図であり、ｎビットのデジタル値が比較対象としてｍ個入力される場合の例を示している。なお、“ｍ”，“ｎ”は自然数である。
【００４１】
図５において、１ビット比較器および２ビット比較器それぞれの構成は、図２に示す１ビット比較器１１，１２および２ビット比較器２１〜２３と同様であり、２ビット比較器は、比較対象であるデジタル値のビット幅に応じた段数で階層的に多段接続され、各１ビット比較器には、比較対象であるｍ個のデジタル値において、所定の１桁を構成するビットデータがそれぞれ入力されている。
【００４２】
即ち、図５に示すデジタル比較器においては、比較対象であるデジタル値の個数に応じて、１ビット比較器の入力要素数を変更し、比較対象であるデジタル値のビット幅に応じて、２ビット比較器の接続段数を変更することにより、任意のビット幅および個数のデジタル値を比較することが可能となり、このとき、１ビット比較器はｎ／２個、２ビット比較器は（ｎ−１）個で足りることとなる。
【００４３】
例えば、４ビットのデジタル値３つを比較する場合、図６に示すようなデジタル比較器となる。
そして、図６に示すデジタル比較器では、１ビット比較器が２つ、２ビット比較器が３つ備えられており、４ビットのデジタル値２つを比較する図２の場合に比べ、１ビット比較器および２ビット比較器の数は変化しない。
【００４４】
このように、図５に示す構成のデジタル比較器においては、比較対象の数が増加しても、１ビット比較器および２ビット比較器の数は変化せず、また、比較対象のビット幅が増加した場合にも、従来のデジタル比較器に比べ、ビット間の比較器が増加する割合は小さいものとなる。
したがって、図１に示す比較方法を適用したデジタル比較器においては、簡単かつ規模のより小さい回路構成によって、デジタル値の比較を行うことが可能となる。
【００４５】
また、本実施の形態においては、図１に示す比較方法のステップＳ１の処理を行うために、比較対象であるデジタル値それぞれの桁ごとに、デジタル値を構成している値が全て同一であるか否かを判定し、それに対応する演算を行う１ビット比較器を用いることとして説明したが、１ビット比較器を用いることなく、２ビット比較器のみによってデジタル値の比較を行うことも可能である。
【００４６】
図７は、２ビット比較器のみによって構成されたデジタル比較器２の構成を示す図である。
図７においては、１ビット比較器によって各ビットデータが同一であるか否かを比較する演算を行うことなく、初段の２ビット比較器の上位側の入力を全て“１”とし、下位側の入力を比較対象であるデジタル値それぞれの最上位ビットとしている。
【００４７】
そして、初段の２ビット比較器の出力を、第２段の２ビット比較器の上位側に入力し、比較対象であるデジタル値それぞれの最上位に次ぐ桁のビットデータを、第２段の２ビット比較器の下位側に入力する。以後、同様に、後段の２ビット比較器の上位側に、前段の２ビット比較器の出力を入力し、後段の２ビット比較器の下位側に、比較対象であるデジタル値の未入力のビットデータのうち最上位のものを入力する。
【００４８】
このような構成とした結果、最終段の２ビット比較器の出力は、比較対象であるデジタル値のうち、最大のものを示すこととなる。
なお、各２ビット比較器の下位側には、図１に示す比較方法の説明において、「下位側ビットの直接入力による比較方法」として述べた理由から、入力されるデジタル値の各桁のビットデータをそのまま入力することが許されるものである。
【００４９】
また、図７に示すように、２ビット比較器のみによってデジタル比較器２を構成できるのは、２ビット比較器が、「入力された各デジタル値の２桁のビットデータの論理積が全て同一であれば、より大きい重みを有する上位のビット列を出力し、論理積が異なれば、その論理積を出力する」と言う機能を有することに依拠している。
即ち、初段の２ビット比較器においては、上位側に全て“１”を入力することにより、下位側に入力された最上位ビット列における値の大小を示す出力が得られる。
【００５０】
具体的には、最上位ビット列が“０”と“１”との両方を含む場合には、初段の２ビット比較器によって、最上位ビットが“１”の入力デジタル値を示す出力（ビット列）が得られる。
また、最上位ビット列が全て同一の値（“０”または“１”）である場合には、初段の２ビット比較器によって、全て“１”のビット列が出力される。つまり、入力された各デジタル値は、最上位ビットに差がないことから、最上位に次ぐ桁のビットデータに比較対象が移行する。
【００５１】
そして、後段の２ビット比較器によって、各桁のビットデータを比較していくことにより、値がより小さいデジタル値が順次ふるい落とされ、最終段の２ビット比較器の出力においては、比較対象のデジタル値のうち、最大のものが示されることとなる。
ところで、図７に示す構成は、初段の２ビット比較器の上位側に、全ての比較対象であるデジタル値について、「最大のものとして選択され得ること」を示す“１”からなるフラグ（以下、「最大値可能性フラグ」と言う。）が入力され、各２ビット比較器によって、桁ごとのビットデータを順次演算することにより、最大となり得ないデジタル値をふるい落としていく（即ち、最大値可能性フラグを更新していく）構成ととらえることもできる。
【００５２】
そして、最終段の２ビット比較器における出力は、比較対象のデジタル値のうち、最大のものを示すフラグ（最大値フラグ）であるととらえられる。
ここで、図７に示すデジタル比較器２における最大値可能性フラグを生成するために、初段に１ビット比較器を用いることにより、図７に示すデジタル比較器２と同様の機能を実現することが可能である。
【００５３】
図８は、初段に１ビット比較器を用いる場合のデジタル比較器３の構成を示す図である。
図８のデジタル比較器３では、図７の初段の２ビット比較器に代えて、比較対象であるデジタル値それぞれの最上位ビットが入力される１ビット比較器を備えることとし、その出力を第２段の２ビット比較器に入力する。なお、１ビット比較器の後段以降の２ビット比較器からなる構成は、図７に示すデジタル比較器２における第２段以降の２ビット比較器からなる構成と同様である。
【００５４】
このような構成とする場合、図７に示す第１段の２ビット比較器が１ビット比較器に置換されることとなる。
すると、２ビット比較器に比べ、１ビット比較器の方が、必要となるゲート数が少ないことから、回路規模を縮小することが可能となる。また、ゲート数が少ないことから、回路遅延時間を小さくすることが可能となる。
【００５５】
また、図８の構成の場合、比較対象であるデジタル値のビット幅の増加に比例して、２ビット比較器も増加することとなる。
即ち、比較対象であるデジタル値がｎビットである場合、２ビット比較器は、（ｎ−１）段接続されることになる。
そこで、比較対象であるデジタル値の最上位ビットから１桁おきのビットデータを１ビット比較器に入力することにより、２ビット比較器の接続段数を減少させることも可能である。
【００５６】
図９は、比較対象であるデジタル値の最上位ビットから１桁おきのビットデータを１ビット比較器に入力する場合のデジタル比較器４の構成を示す図である。
図９のデジタル比較器４では、最上位ビットおよび第１ビットのビットデータそれぞれが入力される１ビット比較器を備えることとしている。そして、最上位ビットが入力された１ビット比較器の出力を第２段の一方の２ビット比較器に入力し、第１ビットのビットデータが入力された１ビット比較器の出力を第２段の他方の２ビット比較器に入力する。
【００５７】
なお、図９に示すデジタル比較器４は、図２に示すデジタル比較器１と同等のものである。
図９に示すデジタル比較器４の構成の場合、比較対象であるデジタル値がｎビットであれば、２ビット比較器が（ｌｏｇ２ｎ）段接続されることとなり、比較対象であるデジタル値のビット幅が増加しても、２ビット比較器の接続段数を少なくすることが可能となる。
【００５８】
ここで、上述の構成を適宜組み合わせて変更することにより、比較対象のデジタル値のビット幅や比較個数、あるいは、設計目的に応じて、種々のデジタル比較器を構成することが可能である。
図１０は、６ビットのデジタル値４つを比較する場合のデジタル比較器５の構成例を示す図である。
【００５９】
図１０のデジタル比較器５では、比較対象であるデジタル値の下位側のビットデータを処理する部分において、第３段の２ビット比較器が備えられず、比較対象であるデジタル値の上位側のビットデータを処理する部分において、第３段の２ビット比較器が備えられている。
そして、上位側のビットデータを処理する部分に備えられている第３段の２ビット比較器の出力が、最終段の２ビット比較器の上位側に入力され、下位側のビットデータを処理する部分においては、第２段の２ビット比較器の出力が、最終段の２ビット比較器の下位側に入力される。
【００６０】
また、図１１は、６ビットのデジタル値４つを比較する場合のデジタル比較器５の他の構成を示す図である。
図１１に示すデジタル比較器５では、比較対象であるデジタル値の上位側のビットデータは、１ビット比較器に入力された後、２ビット比較器に入力される構成であり、比較対象であるデジタル値の下位側のビットデータは、２ビット比較器によって処理される構成である。
【００６１】
図１０，１１に示すいずれの構成においても、比較対象であるデジタル値を適切に比較することが可能である。
なお、図２に示すデジタル比較器において、複数桁を構成しているビットデータの論理積を取得し、論理積の判定を行う機能部として、２ビット比較器を例に挙げて説明したが、比較する複数桁は３ビット以上であってもよい。この場合、３ビット以上である複数桁のビットデータの論理積が、全ての比較対象であるデジタル値について“０”であるか否かに応じたフラグが出力されることとなる。
【００６２】
また、本実施の形態においては、比較対象であるデジタル値のうち、最大のものを検出するデジタル比較器について説明したが、図１に示す比較方法は、比較対象であるデジタル値のうち、最小のものを検出する場合にも応用することが可能である。
例えば、デジタル比較器の入力端子それぞれにインバータを備えておき、デジタル比較器に入力する信号を全て反転することにより、最終段の２ビット比較器の出力は、比較対象であるデジタル値のうち、最小のものを示すこととなる。
【００６３】
また、比較対象であるデジタル値が２の補数の場合、デジタル比較器の最上位ビットの入力端子それぞれにインバータを備えておき、デジタル比較器に入力する最上位ビットの信号を全て反転することにより、最終段の２ビット比較器の出力は、比較対象であるデジタル値のうち、最大のものを示すこととなる。
また、比較対象であるデジタル値が２の補数の場合、デジタル比較器の最上位ビット以外の入力端子それぞれにインバータを備えておき、デジタル比較器に入力する最上位ビット以外の信号を全て反転することにより、最終段の２ビット比較器の出力は、比較対象であるデジタル値のうち、最小のものを示すこととなる。
【図面の簡単な説明】
【００６４】
【図１】本発明に係るデジタル値の比較方法を示す説明図である。
【図２】本発明を適用したデジタル比較器１の構成を示す図である。
【図３】１ビット比較器１１の真理値表である。
【図４】２ビット比較器２１の真理値表である。
【図５】一般化したデジタル比較器の構成を示す図である。
【図６】４ビットのデジタル値３つを比較するデジタル比較器の構成を示す図である。
【図７】２ビット比較器のみによって構成されたデジタル比較器２の構成を示す図である。
【図８】初段に１ビット比較器を用いる場合のデジタル比較器３の構成を示す図である。
【図９】比較対象であるデジタル値の最上位ビットから１桁おきのビットデータを１ビット比較器に入力する場合のデジタル比較器４の構成を示す図である。
【図１０】６ビットのデジタル値４つを比較する場合のデジタル比較器５の構成例を示す図である。
【図１１】６ビットのデジタル値４つを比較する場合のデジタル比較器５の他の構成を示す図である。
【符号の説明】
【００６５】
１〜５  デジタル比較器、１１，１２  １ビット比較器、１１ａ,２１ｃ  ＮＯＲ回路、１１ｂ，１１ｃ,２１ｄ，２１ｅ  ＯＲ回路、２１〜２３  ２ビット比較器、２１ａ，２１ｂ，２１ｆ，２１ｇ  ＡＮＤ回路
【図１】
2005107962.tif 000003
【図２】
2005107962.tif 000004
【図３】
2005107962.tif 000005
【図４】
2005107962.tif 000006
【図５】
2005107962.tif 000007
【図６】
2005107962.tif 000008
【図７】
2005107962.tif 000009
【図８】
2005107962.tif 000010
【図９】
2005107962.tif 000011
【図１０】
2005107962.tif 000012
【図１１】
2005107962.tif 000013