説明

nビット比較回路

【課題】総比較結果に遅れが生じると共に、総比較結果にひげ状のノイズが重畳される。
【解決手段】nbit比較回路は、縦続接続された(n−1)個の1bit比較回路10(=10−2〜10−n)と、ラッチ回路20と、選択回路30とを有している。ラッチ回路20は、最終段の1ビット比較回路10−nから出力される最終段比較結果c[n]を、LSBにおけるカウントアップデータb[1]の立ち下がりでラッチして第1の信号q[1]を出力すると共に、カウントアップデータb[1]の立ち上がりでラッチして第2の信号q[2]を出力する。選択回路30は、第1の信号q[1]及び第2の信号q[2]のうちのいずれか1つを、LSBにおけるターゲットデータa[1]の論理レベルにより選択して総比較結果outを出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、nビット(以下「bit」という。)のデジタル値の大小判定を行うnbit比較回路に関するものである。
【背景技術】
【0002】
従来、例えば、下記の特許文献1等に記載されているように、nbitのデジタル信号の大小を判定するnbit比較回路が知られている。
【0003】
図6は、従来のnbit比較回路を示す構成図である。
nbit比較回路は、2進数のnbitのターゲットデータa[1:n](=a[n],a[n−1],・・・,a[1])と、カウントアップしていく2進数のnbitのカウントアップデータb[1:n](=b[n],b[n−1],・・・,b[1])とを比較して大小を判別し、a[1:n]≦b[1:n]の時は総比較結果out=c[n]=“1”、を求め、a[1:n]>b[1:n]の時は総比較結果out=c[n]=“0”を求める回路である。このnbit比較回路は、n個の1bit比較回路1(=1−1〜1−n)を有し、これらが縦続接続されている。各1bit比較回路1は、論理積ゲート(以下「ANDゲート」という。)及び論理和ゲート(以下「ORゲート」という。)を用いた組み合わせ論理回路により構成されている。
【0004】
図7は、従来の図6のnbit比較回路における動作を示す波形図である。
クロックCLKの立ち上がりに同期してカウントアップデータb[1:n]がカウントアップしていくと、1段目の1bit比較回路1−1では、“1”に基づき、最下位bit(以下「LSB」という。)のターゲットデータa[1]とカウントアップデータb[1]との大小を判定して1段目の比較結果c[1]を出力し、2段目の1bit比較回路1−2に入力する。2段目の1bit比較回路1−2では、1段目の比較結果c[1]に基づき、下位bit2のターゲットデータa[2]とカウントアップデータb[2]との大小を判定して2段目の比較結果c[2]を出力する。
【0005】
以下同様に動作し、最終段であるn段目の 1bit比較回路1−nでは、(n−1)段目の比較結果c[n−1]に基づき、最上位bit(以下「MSB」という。)のターゲットデータa[n]とカウントアップデータb[n]との大小を判定して総比較結果outであるn段目の比較結果c[n]を出力する。
【0006】
例えば、カウントアップデータb[1:n]がカウントアップしてデータmの時、ターゲットデータa[1:n]もmであれば、a[1:n]≦b[1:n]となるので、比較結果c[n]は“1”となる。従って、総比較結果outとして以下のような比較結果c[n]が得られる。
a[1:n]≦b[1:n]の時:総比較結果out=比較結果c[n]=“1”
a[1:n]>b[1:n]の時:総比較結果out=c[n]=“0”
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平3−216728号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、従来のnbit比較回路では、各段の1bit比較回路1が、前段の比較結果c[1:n−1]に基づき、大小を判定する構成であるため、図7に示すように、総比較結果outに、
(1bit比較回路1の遅延時間)×n段=全遅延時間T
の遅れが生じると共に、各1bit比較回路1を構成する組み合わせ論理回路におけるゲート遅れ等に起因して総比較結果outにひげ状のノイズPが重畳されることがあった。
【課題を解決するための手段】
【0009】
本発明のnbit比較回路は、2進数のnbit(但し、n;2以上の正の整数)からなる第1の入力信号a[1:n](=a[n],a[n−1],・・・,a[1])と、2進数のnbitからなる第2の入力信号b[1:n](=b[n],b[n−1],・・・,b[1])とを比較して大小を判別し、論理レベル“1”又は“0”の総比較結果を求めるnbit比較回路において、縦続接続された(n−1)個以下の個数の1bit比較回路と、ラッチ回路と、選択回路とを有している。
【0010】
ここで、前記(n−1)個以下の個数の1bit比較回路は、所定の前記下位bitより上位のbitから(n−1)bitまでの各bitにおける前記第1の入力信号a[1:n]と前記第2の入力信号b[1:n]とを比較して大小を判別し、前記各bitの比較結果を順次後段へ入力するための回路である。
【0011】
前記ラッチ回路は、最終段の前記1bit比較回路から出力される最終段比較結果を、前記所定の下位bitにおける前記第2の入力信号b[1:n]の立ち下がりでラッチして第1の信号を出力すると共に、前記所定の下位bitにおける前記第2の入力信号b[1:n]の立ち上がりでラッチして第2の信号を出力する回路である。
【0012】
更に、前記選択回路は、前記第1の信号又は前記第2の信号を、前記所定の下位bitにおける前記第1の入力信号a[1:n]の論理レベルに応じて選択して前記総比較結果を出力する回路である。
【発明の効果】
【0013】
本発明のnbit比較回路によれば、出力される総比較結果の遅延に1bit比較回路での遅延は影響しなくなり、ひげ状のノイズも総比較結果に重畳しなくなる。
【図面の簡単な説明】
【0014】
【図1】図1は本発明の実施例1におけるnbit比較回路を示す構成図である。
【図2】図2は図1中の各1bit比較回路10の構成例を示す回路図である。
【図3】図3は図1のnbit比較回路の動作を示す波形図である。
【図4】図4は本発明の実施例2におけるnbit比較回路を示す構成図である。
【図5】図5は図4のnbit比較回路の動作を示す波形図である。
【図6】図6は従来のnbit比較回路を示す構成図である。
【図7】図7は従来の図6のnbit比較回路における動作を示す波形図である。
【発明を実施するための形態】
【0015】
本発明を実施するための形態は、以下の好ましい実施例の説明を添付図面と照らし合わせて読むと、明らかになるであろう。但し、図面はもっぱら解説のためのものであって、本発明の範囲を限定するものではない。
【実施例1】
【0016】
(実施例1の構成)
図1は、本発明の実施例1におけるnbit比較回路を示す構成図である。
【0017】
nbit比較回路は、2進数のnbit(但し、n;2以上の正の整数)からなる第1の入力信号(例えば、ターゲットデータ)a[1:n](=a[n],a[n−1],・・・,a[1])と、2進数のnbitからなる第2の入力信号(例えば、カウントアップしていくカウントアップデータ)b[1:n](=b[n],b[n−1],・・・,b[1])とを比較して大小を判別し、a[1:n]≦b[1:n]の時は総比較結果out=“1”を求め、a[1:n]>b[1:n]の時は総比較結果out=“0”を求める回路である。
【0018】
このnbit比較回路は、(n−1)個の1bit比較回路10(=10−2〜10−n)を有し、これらが縦続接続されている。各1bit比較回路10は、各前段の比較結果(c[2],c[3],・・・,c[n−1]、但し、1段目の1bit比較回路10−2に対しては“1”)に基づき、各ターゲットデータ(a[2],a[3],・・・,a[n])と各カウントアップデータ(b[2],b[3],・・・,b[n])とを比較して大小を判別し、各bitの比較結果(c[2],c[3],・・・,c[n−1])を順次出力して後段へ入力する回路である。
【0019】
最終段であるnbitにおける1bit比較回路10−nの出力端子には、ラッチ回路20が接続されている。ラッチ回路20は、1bit比較回路10−nから出力される最終段比較結果c[n]を、所定の下位bit(LSB)におけるカウントアップデータb[1]の立ち下がりでラッチして第1の信号q[1]を出力すると共に、カウントアップデータb[1]の立ち上がりでラッチして第2の信号q[2]を出力する回路であり、例えば、縦続接続された2段の遅延型フリップフロップ(以下「DFF」という。)20−1,20−2により構成されている。
【0020】
各DFF20−1,20−2は、同一の回路であり、データの入力端子D、クロック入力端子CK、及びデータの出力端子Qをそれぞれ有している。1段目のDFF20−1は、最終段比較結果c[n]がハイレベル(以下「“H”」という。)になった後に、クロック入力端子CKに反転入力されるカウントアップデータb[1]の立ち下がりで、入力端子Dに入力される最終段比較結果c[n]をラッチし、このラッチした第1の信号q[1]を出力端子Qから出力する回路である。2段目のDFF20−2は、最終段比較結果c[n]が“H”になった後に、クロック入力端子CKに入力されるカウントアップデータb[1]の立ち上がりで、入力端子Dに入力される第1の信号q[1]をラッチし、このラッチした第2の信号q[2]を出力端子Qから出力する回路である。
【0021】
DFF20−1の出力端子Q及び20−2の出力端子Qには、選択回路であるセレクタ30が接続されている。セレクタ30は、第1の信号q[1]又は第2の信号q[2]を、LSBのターゲットデータa[1]の論理レベル(“0”又は“1”)により選択してnbitの総比較結果outを出力する回路であり、例えば、第2の信号q[2]とLSBのターゲットデータa[1]との論理積を求める2入力ANDゲート31と、第1の信号q[1]とLSBのターゲットデータa[1]における反転信号との論理積を求める2入力ANDゲート32と、ANDゲート31及び32の論理和を求めて総比較結果outを出力する2入力ORゲート33とにより構成されている。
【0022】
図2は、図1中の各1bit比較回路10の構成例を示す回路図である。
2進数のターゲットデータa[1:n](=a[n],a[n−1],・・・,a[1])と、2進数のカウントアップデータb[1:n](=b[n],b[n−1],・・・,b[1])とを比較して大小を判別する論理回路の場合、第kbitまでの比較結果をc[k]で表し、
a[k]≦b[k]の時、c[k]=“1”
a[k]>b[k]の時、c[k]=“0”
とすると、第(k−1)bitまでの比較結果c[k−1]を用いて、第kbitまでの比較結果c[n]を表す論理式は、次式(1)で表すことができる。
【0023】
【数1】




【0024】
式(1)を実現するための各1bit比較回路10は、例えば、図2に示すように、kbitのターゲットデータa[k]を反転するインバータ11と、(k−1)bitまでの比較結果c[k−1]とインバータ11の出力信号との論理積を求める2入力ANDゲート12と、kbitのカウントアップデータb[k]とインバータ11の出力信号との論理積を求める2入力ANDゲート13と、(k−1)bitまでの比較結果c[k−1]とカウントアップデータb[k]との論理積を求める2入力ANDゲート14と、ANDゲート13、14及び15の論理和を求めて比較結果c[k]を出力する3入力ORゲート15とにより構成することができる。
【0025】
なお、下位2bitの1段目の1bit比較回路10−2の場合、入力される比較結果を例えばc[k−1]=“1”とすれば、式(1)は次式(2)のようになる。
【0026】
【数2】


【0027】
(実施例1の動作)
図3は、図1のnbit比較回路の動作を示す波形図である。なお、この図3には、比較のために従来の図6のnbit比較回路の総比較結果の波形も図示されている。
【0028】
以下、図3を参照しつつ、図1に示す本実施例1のnbit比較回路における動作を説明する。
【0029】
クロックCLKの立ち上がりに同期してカウントアップデータb[1:n]がカウントアップしていくと、1段目の1bit比較回路10−2では、式(2)に従い、“1”に基づき、最下位2bitのターゲットデータa[2]とカウントアップデータb[2]との大小を判定して下位2bitの比較結果c[2]を出力し、2段目の1bit比較回路10−3に入力する。2段目の1bit比較回路10−3では、式(1)に従い、下位2bitの比較結果c[2]に基づき、下位bit3のターゲットデータa[3]とカウントアップデータb[3]との大小を判定して下位3bitの比較結果c[3]を出力する。
【0030】
以下同様に動作し、最終段の1bit比較回路10−nでは、式(1)に従い、(n−1)bitの比較結果c[n−1]に基づき、MSBのターゲットデータa[n]とカウントアップデータb[n]との大小を判定してMSBの比較結果c[n]を出力する。
【0031】
このように、クロックCLKに同期してカウントアップデータb[1:n]がカウントアップされて行き、(n−1)bitの比較結果c[n]が“H”になった後、カウントアップデータb[1:n]がmの時、ラッチ回路20のDFF20−1により、カウントアップデータb[1]の立ち下がりで比較結果c[n]がラッチされて第1の信号q[1]が生成される。更に、DFF20−2により、カウントアップデータb[1]の立ち上がりで第1の信号q[1]がラッチされて第2の信号q[2]が生成される。
【0032】
すると、セレクタ30により、ターゲットデータa[1:n]のLSBであるa[1]が“0”(ターゲットデータa[1:n]=m)か“1”(ターゲットデータa[1:n]=m+1)かによって第1の信号q[1]か第2の信号q[2]が選択される。例えば、ターゲットデータa[1]が“0”の時は、ANDゲート32及びORゲート33によって第1の信号q[1]が選択され、ターゲットデータa[1]が“1”の時は、ANDゲート31及びORゲート33によって第2の信号q[2]が選択される。これにより、以下のような総比較結果outが得られる。
a[1:n]≦b[1:n]の時:総比較結果out=“1”
a[1:n]>b[1:n]の時:総比較結果out=“0”
【0033】
従来のnbit比較回路では、ターゲットデータa[1]=“0”の場合、及びターゲットデータa[1]=“1”の場合共に、総比較結果outの出力時に全遅延時間Tの遅れが生じると共に、総比較結果outにひげ状のノイズPが重畳されることがあったが、本実施例1では、総比較結果outの出力時の遅延がなく、しかも、ひげ状のノイズPも生じない。
【0034】
(実施例1の効果)
本実施例1によれば、出力される総比較結果outの遅延に1ビット比較回路10(=10−2〜10−n)での遅延は影響しなくなり、ひげ状のノイズPも総比較結果outに重畳しなくなる。
【実施例2】
【0035】
(実施例2の構成)
図4は、本発明の実施例2におけるnbit比較回路を示す構成図であり、実施例1を示す図1中の要素と共通の要素には共通の符号が付されている。
【0036】
本実施例2のnbit比較回路は、実施例1と同様に、ターゲットデータa[1:n]と、カウントアップデータb[1:n]とを比較して大小を判別し、a[1:n]≦b[1:n]の時は総比較結果out=“1”を求め、a[1:n]>b[1:n]の時は総比較結果out=“0”を求める回路であり、実施例1よりも数の少ない(n−2)個の実施例1と同様の1bit比較回路10(=10−3〜10−n)を有し、これらが縦続接続されている。
【0037】
最終段の1bit比較回路10−nの出力端子には、実施例1とは構成の異なるラッチ回路20Aが接続されている。ラッチ回路20Aは、1bit比較回路10−nから出力されるMSBの比較結果c[n]を、所定の下位bit(例えば、下位2bit)におけるカウントアップデータb[2]の立ち上がりでラッチして第1の信号q[1] を出力すると共に、LSBにおけるカウントアップデータb[1]の立ち上がり及び立ち下がりでラッチして複数(例えば、3つ)の第2の信号q[2],q[3],q[4]を出力する回路であり、例えば、縦続接続された4段のDFF20−1〜20−4により構成されている。
【0038】
各DFF20−1〜20−4は、同一の回路であり、データの入力端子D、クロック入力端子CK、及びデータの出力端子Qをそれぞれ有している。1段目のDFF20−1は、MSBの比較結果c[n]が“H”になった後に、クロック入力端子CKに入力されるカウントアップデータb[2]の立ち上がりで、入力端子Dに入力されるMSBの比較結果c[n]をラッチし、このラッチした第1の信号q[1]を出力端子Qから出力する回路である。
【0039】
同様に、MSBの比較結果c[n]が“H”になった後に、2段目のDFF20−2は、クロック入力端子CKに入力されるカウントアップデータb[1]の立ち上がりで、入力端子Dに入力される第1の信号q[1]をラッチし、このラッチした第2の信号q[2]を出力端子Qから出力する回路である。3段目のDFF20−3は、クロック入力端子CKに入力されるカウントアップデータb[1]の立ち下がりで、入力端子Dに入力される第2の信号q[2]をラッチし、このラッチした第2の信号q[3]を出力端子Qから出力し、4段目のDFF20−4は、クロック入力端子CKに入力されるカウントアップデータb[1]の立ち上がりで、入力端子Dに入力される第2の信号q[3]をラッチし、このラッチした第2の信号q[4]を出力端子Qから出力する回路である。
【0040】
各DFF20−1〜20−4の出力端子Qには、実施例1とは異なる構成の選択回路である4入力1出力(4tol)のセレクタ30Aが接続されている。セレクタ30Aは、1つの第1の信号q[1]及び3つの第2の信号q[2],q[3],q[4]のうちのいずれか1つを、LSBにおけるターゲットデータa[1]と下位2ビットのターゲットデータa[2]との論理“0”又は“1”により選択して総比較結果outを出力する回路であり、ANDゲート及びORゲート等により構成されている。
【0041】
(実施例2の動作)
図5は、図4のnbit比較回路の動作を示す波形図であり、実施例1の図3の波形図に対応している。
【0042】
以下、図5を参照しつつ、図4に示す本実施例2のnbit比較回路における動作を説明する。
【0043】
実施例1とほぼ同様に、クロックCLKの立ち上がりに同期してカウントアップデータb[1:n]がカウントアップしていくと、1段目の1bit比較回路10−3では、式(2)に従い、“1”に基づき、最下位3bitのターゲットデータa[3]とカウントアップデータb[3]との大小を判定して下位3bitの比較結果c[3]を出力し、2段目の1bit比較回路10−4に入力する。2段目の1bit比較回路10−4では、式(1)に従い、下位3bitの比較結果c[3]に基づき、下位bit4のターゲットデータa[4]とカウントアップデータb[4]との大小を判定して下位4bitの比較結果c[4]を出力する。
【0044】
以下同様に動作し、最終段の1bit比較回路10−nでは、式(1)に従い、(n−1)bitの比較結果c[n−1]に基づき、MSBのターゲットデータa[n]とカウントアップデータb[n]との大小を判定してMSBの比較結果c[n]を出力する。
【0045】
このように、クロックCLKに同期してカウントアップデータb[1:n]がカウントアップされて行き、(n−2)bitの比較結果c[n]が“H”になった後、カウントアップデータb[1:n]がmの時、ラッチ回路20AのDFF20−1により、カウントアップデータb[2]の立ち上がりで比較結果c[n]がラッチされて第1の信号q[1]が生成される。更に、DFF20−2により、カウントアップデータb[1]の立ち上がりで第1の信号q[1]がラッチされて第2の信号q[2]が生成され、DFF20−3により、カウントアップデータb[1]の立ち下がりで第2の信号q[2]がラッチされて第2の信号q[3]が生成され、その後、DFF20−4により、カウントアップデータb[1]の立ち上がりで第2の信号q[3]がラッチされて第2の信号q[4]が生成される。
【0046】
すると、セレクタ30Aにより、ターゲットデータa[1:n]のLSBであるa[1]と下位2bitのa[2]が“0”か“1”かによって、下記のように、4つの信号q[1]〜q[4]の1つが選択される。
a[1],a[2]=“00”の場合、信号q[1]が選択
a[1],a[2]=“01”の場合、信号q[2]が選択
a[1],a[2]=“10”の場合、信号q[3]が選択
a[1],a[2]=“11”の場合、信号q[4]が選択
【0047】
これにより、以下のような総比較結果outが得られる。
a[1:n]≦b[1:n]の時:総比較結果out=“1”
a[1:n]>b[1:n]の時:総比較結果out=“0”
【0048】
従来のnbit比較回路では、ターゲットデータa[1]=“0”の場合、及びターゲットデータa[1]=“1”の場合共に、総比較結果outの出力時に全遅延時間Tの遅れが生じると共に、総比較結果outにひげ状のノイズPが重畳されることがあったが、本実施例2では、総比較結果outの出力時の遅延がなく、しかも、ひげ状のノイズPも生じない。
【0049】
(実施例2の効果)
本実施例2によれば、実施例1とほぼ同様に、出力される総比較結果outの遅延に1ビット比較回路10(=10−3〜10−n)での遅延は影響しなくなり、ひげ状のノイズPも総比較結果outに重畳しなくなる。
【0050】
(変形例)
本発明は、上記実施例1、2に限定されず、種々の利用形態や変形が可能である。この利用形態や変形例としては、例えば、次の(a)、(b)のようなものがある。
【0051】
(a) 実施例1では(n−1)個の1bit比較回路10(=10−2〜10−n)を使用する場合、実施例2では(n−2)個の1bit比較回路10(=10−3〜10−n)を使用する場合について説明したが、その1bit比較回路10を他の個数(例えば、(n−3)個、(n−4)等)使用しても、上記実施例1、2とほぼ同様の作用効果を奏することができる。
【0052】
(b) 各1bit比較回路10、ラッチ回路20,20A及びセレクタ30,30Aは、図示以外の回路により構成してもよい。
【符号の説明】
【0053】
10,10−2〜10−n 1bit比較回路
20,20A ラッチ回路
20−1〜20−4 DFF
30,30A セレクタ

【特許請求の範囲】
【請求項1】
2進数のnビット(但し、n;2以上の正の整数)からなる第1の入力信号a[1:n](=a[n],a[n−1],・・・,a[1])と、2進数のnビットからなる第2の入力信号b[1:n](=b[n],b[n−1],・・・,b[1])とを比較して大小を判別し、論理レベル“1”又は“0”の総比較結果を求めるnビット比較回路において、
所定の前記下位ビットより上位のビットから(n−1)ビットまでの各ビットにおける前記第1の入力信号a[1:n]と前記第2の入力信号b[1:n]とを比較して大小を判別し、前記各ビットの比較結果を順次後段へ入力するための、縦続接続された(n−1)個以下の個数の1ビット比較回路と、
最終段の前記1ビット比較回路から出力される最終段比較結果を、前記所定の下位ビットにおける前記第2の入力信号b[1:n]の立ち下がりでラッチして第1の信号を出力すると共に、前記所定の下位ビットにおける前記第2の入力信号b[1:n]の立ち上がりでラッチして第2の信号を出力するラッチ回路と、
前記第1の信号又は前記第2の信号を、前記所定の下位ビットにおける前記第1の入力信号a[1:n]の論理レベルに応じて選択して前記総比較結果を出力する選択回路と、
を有することを特徴とするnビット比較回路。
【請求項2】
前記所定の下位ビットは、最下位ビットであり、
前記1ビット比較回路は、(n−1)個有し、
前記ラッチ回路は、
前記最終段の1ビット比較回路から出力される前記最終段比較結果を、前記最下位ビットにおける前記第2の入力信号b[1]の立ち下がりでラッチして前記第1の信号を出力すると共に、前記第2の入力信号b[1]の立ち上がりでラッチして前記第2の信号を出力する回路であり、
前記選択回路は、
前記第1の信号及び前記第2の信号のうちのいずれか1つを、前記最下位ビットにおける前記第1の入力信号a[1]の論理レベルにより選択して前記総比較結果を出力する回路であることを特徴とする請求項1記載のnビット比較回路。
【請求項3】
前記所定の下位ビットは、最下位ビットであり、
前記1ビット比較回路は、(n−2)個有し、
前記ラッチ回路は、
前記最終段の1ビット比較回路から出力される前記最終段比較結果を、前記下位2ビットにおける前記第2の入力信号b[2]の立ち上がりでラッチして前記第1の信号を出力すると共に、前記最下位ビットにおける前記第2の入力信号b[1]の立ち上がり及び立ち下がりでラッチして複数の前記第2の信号を出力する回路であり、
前記選択回路は、
前記第1の信号及び前記複数の第2の信号のうちのいずれか1つを、前記最下位ビットにおける前記第1の入力信号a[1]の論理レベルと前記下位2ビットにおける前記第1の入力信号a[2]の論理レベルとにより選択して前記総比較結果を出力する回路であることを特徴とする請求項1記載のnビット比較回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate