説明

比較方法、および、比較回路

【課題】0と1を含む2つの数列間のハミング重みを比較する方法及びその回路、また、2つのデジタル数間の大きさを比較する方法及びその回路が簡単に実現する。
【解決手段】第1数列に含まれる1の数を計数し、第2数列に含まれる1の数を計数して、前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率を出力する回路と、前記比率を予め設定した閾値で前記第1数列と前期第2数列間のハミング重みの大小を判別可能とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、0と1を含む2つの数列間のハミング重みを比較する方法及びその回路、また、2つのデジタル数間の大きさを比較する方法及びその回路に関する。
【背景技術】
【0002】
ハミング重み(ハミングおもみ、Hamming weight)とは、シンボル列中の``0'0以外のシンボルの個数である。典型的には,ビット列中の1の個数として使われる。nビット列A:{A1,A2,… ,An}のハミング重みはHAとして定義され、A1,A2,… ,Anは0または1の値を有する数である。
【0003】
ハミング重み比較方法、ハミング重み比較回路とは2つのビット列Aのハミング重みHAとビット列Bのハミング重みHBを比較する方法、回路である。ハミング重み比較回路は、メディアンフィルタ、ランクオーダーフィルタ、ベクトル量子化やデジタルニューラルネットワークによく用いられている回路である。
【0004】
デジタル比較方法、デジタル比較回路とは2つデジタル数間を比較する方法、回路である。デジタル比較回路は、中央演算装置やALUなどによく用いられている回路である。
【発明の開示】
【発明が解決しようとする課題】
【0005】
文献1と文献2に述べられているように、従来ハミング比較回路はフールデジタル回路タイプとpseudo‐CMOSゲートを用いたタイプが知られている。フールデジタル回路タイプで8ビットのハミング重み比較回路を実装した場合やく200トランジスタ以上の規模で13.4nsの遅延を要する。このとき、AMIS社の0.8μmCMOSプロセスが使用された。また、pseudo‐CMOSゲートを用いた場合やく70トランジスタの規模で16nsの遅延という結果が示された。このように、従来回路の欠点は回路規模及び遅延であり、長いビット列の構成には向いていない。
【0006】
本発明は、簡単構成で小規模かつ高速のハミング重み比較回路及びデジタル比較回路を提案する。
【非特許文献1】V.A. Pedroni, ``Compact fixed-threshold and two-vector Hamming comparators,'' Electronics Letters, vol.39, no.27, pp.1705-1706, November 2003.
【非特許文献2】V.A. Pedroni, ``Compact Hamming-Comparator-based rank order filter for digital VLSI and FPGA implementations,'' Proceedings of the 2004 International Symposium on Circuits and Systems (ISCAS'04), vol.2, pp.II-585-II-588, May 2004.
【課題を解決するための手段】
【0007】
上述した課題を解決するために、本発明によれば、第1数列に含まれる1の数を計数し、第2数列に含まれる1の数を計数して、前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率を出力する回路と、前記比率を予め設定した閾値で前記第1数列と前期第2数列間のハミング重みの大小を判別する回路とを具備したことを特徴とする。
【0008】
このことにより、2つの数列のハミング重みの比率が簡単に求むことができ、その比率を予め設定した閾値を用いて比較することによって2つの数列間のハミング重みの大小判別が求めることができる。
【0009】
また、本発明の一態様によれば、第1デジタル数の大きさ算出し、第2デジタル数の大きさ算出し、前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率を出力する回路と、前記比率を予め設定した閾値で前記第1デジタル数と前記第2デジタル数間の大きさの大小を判別する回路と具備したことを特徴とする。
【0010】
このことにより、2つのデジタル数の大きさの比率が簡単に求むことができ、その比率を予め設定した閾値を用いて比較することによって2つのデジタル数間の大きさの大小判別が求めることができる。
【発明の効果】
【0011】
以上説明したように本発明によれば、0と1を含む2つの数列間のハミング重みを比較する方法及びその回路、また、2つのデジタル数間の大きさを比較する方法及びその回路が簡単に実現可能であり、メディアンフィルタ、ランクオーダーフィルタ、ベクトル量子化やデジタルニューラルネットワーク、中央演算装置やALUなどの発展に寄与するところが大きい。
【発明を実施するための最良の形態】
【0012】
図1は本発明の一実施例に係るハミング重み比較回路の回路構成図である。図1に示したように、任意のビット数nに対するハミング重み比較回路は分圧回路とアナログ比較回路より構成される。
【0013】
分圧回路は下記の通りに構成される。
● ドレイン端子を共通接続端子Voutとする並列接続されたn個のプルアップPMO
Sトランジスタと並列接続されたn個のプルダウンNMOSトランジスタ。
● ドレイン端子を共通接続端子Voutとする常にオン状態のプルアップPMOSトラ
ンジスタと常にオン状態プルダウンNMOSトランジスタ。
● 片方のビット列の入力を反転するn個のCMOSインバータ。それぞれのインバータ
の出力が並列接続されたn個のプルアップPMOSトランジスタのそれぞれのゲート 端子に入力される。
なお、分圧回路を構成するすべてのPMOSトランジスタのβ値とNMOSトランジスタのβ値は同値として設計される。
【0014】
アナログ比較回路は分圧回路の共通接続端子Voutを1つの入力とする通常の高増幅率の差動増幅型アナログ電圧比較回路と出力バッファ用の2個CMOSインバータからなる。なお、この構成に限らず、アナログ電圧を比較できる他の回路構成でもよい。
【0015】
ビット列Aに属するA1,A2,…,Anの各ビットは分圧回路の入力反転用CMOSインバータを介して、それぞれ対応する並列接続されたn個のプルアップPMOSトランジスタに入力される。これは、PMOSトランジスタは負論理でオンするからである。
【0016】
ビット列Bに属するB1,B2,…,Bnの各ビットはそれぞれ対応する並列接続されたn個のプルダウンNMOSトランジスタに入力される。これは,NMOSトランジスタは正論理でオンするからである。なお、0は接地電圧(GND)、1は電源電圧(Vdd)に対応させている。
【0017】
常にオン状態のプルアップPMOSトランジスタと常にオン状態プルダウンNMOSトランジスタは、並列接続されたn個のプルアップPMOSトランジスタと並列接続されたnのプルダウンNMOSトランジスタがすべてオフ状態のときに、共通接続端子Voutを電源電圧の半分のレベルに保つように導入されたものである。HA及びHBが共に0の値を持つとき、つまり、A1,A2,…,An及びB1,B2,…,Bnが0の値を持つとき、並列接続されたnのプルアップPMOSトランジスタと並列接続されたn個のプルダウンNMOSトランジスタはすべてオフ状態となり、共通接続端子Voutがフローティングになってしまう状態を防ぐためである。
【0018】
通常,MOSトランジスタの相互コンダクタンス gm はオン抵抗値の逆数として定義され、β値にとって計算される。このとき、Voutの電圧レベルは次式によって求められる。
【0019】
【数1】

【0020】
Vdd=5[V]のAMIS社0.8μmCMOSプロセスを使用したn=4ときの分圧回路の結果を図2に示す。横軸にAビット列及びBビット列に与えた1の数、つまり、与えたハミング重みHA及びHB、縦軸はそれぞれの与えたハミング重みHA及びHBに対応する共通接続端子Voutの電圧レベルを示す。この結果により、与えたハミング重みHA及びHBに対応して、前後することなくユニークな値を持つVoutが得られることが分かる。
【0021】
図2において,HA > HBに対応するVoutはVbig以上の値をとり、HA = HBに対応するVoutはVeqの値をとり、HA < HBに対応するVoutの値はVle以下の値をとることがわかる。このことから、図3に示すように、VoutをVbigとVeq間の値を持つVrefで比較することによってHA≧HBという比較結果Beqが得られ、VoutをVeqとVle間の値を持つVrefで比較することによってHA < HBという比較結果Leが得られることが分かる。また、BeqとLeの反転信号との論理積によりHA = HBに対応する比較結果Eq得られる。
【0022】
HA/HBの値が0/nからn/nに変化するときに最大遅延が観測される。これは、Voutが最小電圧レベルから電源電圧Vddの半分の電圧レベルに遷移するのに長時間が必要するからである。n=4,8,16,32,64の最大遅延はそれぞれ2ns,2ns,2.2ns,5.1ns,5.8nsである。
【0023】
全体回路の規模は主に分圧回路の規模によって決まる。nビットに対して、分圧回路は2(2n+1)個のトランジスタで構成できる。64ビットの場合分圧回路は258個のトランジスタで構成でき、アナログ比較回路と合わせても全体回路は266個のトランジスタで構成可能で、極めてコンパクトな回路となる。
【0024】
並列接続されたn個のプルアップPMOSトランジスタと並列接続されたn個のプルダウンNMOSトランジスタに対して、2進数の桁に対応するノンオーバーラップの2n-1の関係をもつ重み値を持たせることで2進数表示のデジタル値の大小を比較する回路を構成できる。これらの重みはトランジスタのチャンネル形状(W/L)を変えることで対応できる。図4に2ビットの場合のデジタル比較回路の結果を示す。ハミング比較回路と同様の比較方法で、それぞれ、2つのデジタル数間の以上、以下、同等という比較結果が得られる。
【図面の簡単な説明】
【0025】
【図1】本発明のハミング比較回路の回路構成図である。
【図2】分圧回路の動作結果。
【図3】ハミング比較回路の動作結果。
【図4】デジタル比較回路の比較結果。

【特許請求の範囲】
【請求項1】
0と1を含む第1数列と第2数列間のハミング重みを比較する方法であって、
前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率と予め設定した閾値で前記第1数列と前期第2数列間のハミング重みの大小を判別する
ことを特徴とするハミング重み比較方法。
【請求項2】
第1デジタル数と第2デジタル数間の大きさを比較する方法であって、
前記第1デジタル数の大きさと前記第2デジタル数の大きさとの比率と予め設定した閾値で前記第1デジタル数と前記第2デジタル数間の大きさの大小を判別する
ことを特徴とするデジタル比較方法。
【請求項3】
0と1を含む第1数列と第2数列間のハミング重みを比較する回路であって
前記第1数列に含まれる1の数を計数し、前記第2数列に含まれる1の数を計数して、前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率を出力する回路と、
前記比率を予め設定した閾値で前記第1数列と前期第2数列間のハミング重みの大小を判別する回路とを含む
ことを特徴とするハミング重み比較回路。
【請求項4】
第1デジタル数と第2デジタル数間の大きさを比較する回路であって
前記第1デジタル数の大きさ算出し、前記第2デジタル数の大きさ算出し、前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率を出力する回路と、
前記比率を予め設定した閾値で前記第1デジタル数と前記第2デジタル数間の大きさの大小を判別する回路とを含む
ことを特徴とするデジタル比較回路。
【請求項5】
0と1を含む第1数列と第2数列間のハミング重みを比較する回路であって
前記第1数列のビット数に対応する数の並列接続されたプルアップPMOSトランジスタの共通接続端子を前記第2数列のビット数に対応する数の並列接続されたプルダウンNMOSトランジスタの共通接続端子に接続し、前記第1数列の各々のビットの反転の値を前記並列接続されたプルアップPMOSトランジスタの各々のゲート端子に入力し、前記第2数列の各々のビットの値を前記並列接続されたプルダウンNMOSトランジスタの各々のゲート端子に入力し、前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率に対応する電圧を出力する回路と、
前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率に対応する電圧を予め設定した閾値電圧で前記第1数列と前期第2数列間のハミング重みの大小を判別するアナログ電圧比較回路とを含む
ことを特徴とするハミング重み比較回路。
【請求項6】
0と1を含む第1数列と第2数列間のハミング重みを比較する回路であって
前記第1数列のビット数に対応する数の並列接続されたプルアップPMOSトランジスタの共通接続端子を前記第2数列のビット数に対応する数の並列接続されたプルダウンNMOSトランジスタの共通接続端子に接続し、前記第1数列の各々のビットの反転の値を前記並列接続されたプルアップPMOSトランジスタの各々のゲート端子に入力し、前記第2数列の各々のビットの値を前記並列接続されたプルダウンNMOSトランジスタの各々のゲート端子に入力し、前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率に対応する電圧を出力する回路と、
前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率に対応する電圧を予め設定した閾値電圧を論理閾値として有するCMOSインバータで前記第1数列と前期第2数列間のハミング重みの大小を判別するCMOSインバータとを含む
ことを特徴とするハミング重み比較回路。
【請求項7】
前記第1数列に含まれる1の数と前記第2数列に含まれる1の数との比率が1の時に対応する電圧を出力するバイアス回路を更に含むことを特徴とする請求項5又は6記載のハミング重み比較回路。
【請求項8】
第1デジタル数と第2デジタル数間の大きさを比較する回路であって
前記第1デジタル数のビット数に対応する数の並列接続されたプルアップPMOSトランジスタの共通接続端子を前記第2デジタル数のビット数に対応する数の並列接続されたプルダウンNMOSトランジスタの共通接続端子に接続し、前記第1デジタル数の各々のビットの反転の値を前記並列接続されたプルアップPMOSトランジスタの各々のゲート端子に入力し、前記第2デジタル数の各々のビットの値を前記並列接続されたプルダウンNMOSトランジスタの各々のゲート端子に入力し、前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率に対応する電圧を出力する回路と、
前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率に対応する電圧を予め設定した閾値電圧で前記第1デジタル数と前記第2デジタル数間の大きさの大小を判別するアナログ電圧比較回路とを含む
ことを特徴とするデジタル比較回路。
【請求項9】
第1デジタル数と第2デジタル数間の大きさを比較する回路であって
前記第1デジタル数のビット数に対応する数の並列接続されたプルアップPMOSトランジスタの共通接続端子を前記第2デジタル数のビット数に対応する数の並列接続されたプルダウンNMOSトランジスタの共通接続端子に接続し、前記第1デジタル数の各々のビットの反転の値を前記並列接続されたプルアップPMOSトランジスタの各々のゲート端子に入力し、前記第2デジタル数の各々のビットの値を前記並列接続されたプルダウンNMOSトランジスタの各々のゲート端子に入力し、前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率に対応する電圧を出力する回路と、
前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率に対応する電圧を予め設定した閾値電圧を論理閾値として有するCMOSインバータで前記第1デジタル数と前記第2デジタル数間の大きさの大小を判別するアナログ電圧比較回路とを含む
ことを特徴とするデジタル比較回路。
【請求項10】
前記第1デジタル数の大きさと前記第デジタル数の大きさとの比率が1の時に対応する電圧を出力するバイアス回路を更に含むことを特徴とする請求項8又は9記載のデジタル比較回路。
【請求項11】
前記プルアップPMOSトランジスタのチャンネルサイズは該プルアップPMOSトランジスタのゲート端子に入力される前記第1デジタル数のビット位に対応する2のべき乗で決められ、
前記プルダウンNMOSトランジスタのチャンネルサイズは該プルダウンNMOSトランジスタのゲート端子に入力される前記第2デジタル数のビット位に対応する2のべき乗で決められることを特徴とする請求項8又は9記載のデジタル比較回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate