JP2011009895A - 一致判定装置、一致判定方法および一致判定プログラム - Google Patents

一致判定装置、一致判定方法および一致判定プログラム Download PDF

Info

Publication number
JP2011009895A
JP2011009895A JP2009149417A JP2009149417A JP2011009895A JP 2011009895 A JP2011009895 A JP 2011009895A JP 2009149417 A JP2009149417 A JP 2009149417A JP 2009149417 A JP2009149417 A JP 2009149417A JP 2011009895 A JP2011009895 A JP 2011009895A
Authority
JP
Japan
Prior art keywords
match
signal
depth
matching
determination
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.)
Withdrawn
Application number
JP2009149417A
Other languages
English (en)
Inventor
Naoki Miura
直樹 三浦
Tomoshi Shigematsu
智志 重松
Takahiro Hatano
孝裕 羽田野
Mamoru Nakanishi
衛 中西
Masami Urano
正美 浦野
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009149417A priority Critical patent/JP2011009895A/ja
Publication of JP2011009895A publication Critical patent/JP2011009895A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】同時に複数の被判定データに対する判定処理を行うことによりスループットを高める。
【解決手段】一致条件を階層化し、深さ0〜n(nは1以上の整数)の一致条件を少なくとも1階層ごとに記憶する複数の記憶手段と、複数の記憶手段から深さ0〜nの一致条件をそれぞれ入力し、被判定データと当該一致条件を比較して一致の場合に一致判定信号を出力し、被判定データと当該一致条件を比較して不一致の場合にその大小関係を示す大小信号を出力するパイプライン接続の複数段の比較手段と、比較手段から大小信号を入力し、大小信号に応じて次の深さの一致条件を指定し、当該一致条件を対応する記憶手段から比較手段に出力させる指定手段とを備える。
【選択図】図7

Description

本発明は、ネットワークに接続された通信機器に搭載され、入力する被判定データ(IPアドレス値など)が事前に登録された一致条件(登録データ)と一致するか否かを判定してフィルタリングする一致判定装置、一致判定方法および一致判定プログラムに関する。
ネットワークの大容量化に伴い、通信機器が送受信するパケット数が増加すると、一致判定装置でフィルタリングするパケット数も増加する。このため、一致判定装置には、多量のパケットに対して高速に一致/不一致の判定を行うこと、すなわち高スループット化が求められる。
一致判定装置において、被判定データと一致条件との一致/不一致を判定する方式として2分探索方式がある。2分探索方式は、互いに値が異なる一致条件を昇順または降順に並べ、並べた一致条件の中央条件と被判定データの値を比較し、被判定データと一致する可能性の有る一致条件(比較対象の条件)を半分に絞りこんでいく方式である。たとえば、図11のように、互いに値が異なる3種の一致条件a,b,c(a<b<c)を有する2分探索方式では、はじめに被判定データと中央条件のbを比較し、被判定データがbよりも小さい場合は、次にbよりも小さいaとの比較を行う。逆に、被判定データがbよりも大きい場合は、次にbよりも大きいcとの比較を行う。以下、N番目に被判定データと比較を行う一致条件を「深さN−1に属する一致条件」という。
図12は、2分探索方式に対応する従来の一致判定装置の代表的な構成例を示す。
図12において、従来の一致判定装置は、比較部10と、記憶部20と、指定部30から構成される。比較部10は、入力された被判定データと記憶部20から出力された一致条件とを比較し、被判定データと一致条件が一致した場合には一致判定信号を出力する。逆に、一致しなかった場合には、被判定データの値が一致条件の値よりも大きいか小さいかを示す大小信号を指定部30に出力する。指定部30は、この大小信号から次に比較すべき一致条件を決定し、指定信号を記憶部20に出力する。記憶部20は、この指定信号に従って次の一致条件を比較部10に出力する。比較部10では、入力された次の一致条件と被判定データとを比較する。ここで、被判定データと一致条件が一致した場合には一致判定信号を出力し、一致しなかった場合に当該一致条件が最後でなければ大小信号を出力して同様の処理を繰り返し、当該一致条件が最後であれば不一致判定信号を出力する。
本装置の記憶部20は、一致条件を昇順または降順で記憶したメモリで構成される。ここで、図13および図14を参照し、互いに値が異なる7種類の一致条件a,b,c,d,e,f,gを有する2分探索方式について説明する(特許文献1)。この7種類の一致条件a〜gには、図14に示すのように、降順でアドレス0(0000)からアドレス6(0110)が割り当てられ、記憶部20のメモリに記憶される。記憶部20は、指定部30から入力された指定信号をメモリの読み出しアドレスとし、読み出した一致条件を比較部10に出力する。指定部30は、比較対象となっている一致条件が記憶されたアドレスの中央値を算出し、算出した中央アドレスを指定信号とする。
例えば、fの値を持つ被判定データが入力される場合、深さ0の段階では、a〜gが比較対象となる。指定部30は、aを記憶したアドレス0(0000)と、gを記憶したアドレス6(0110) の中央アドレス3(0011)を算出して指定信号とすると、記憶部20はアドレス3(0011)に記憶されたdを比較部10に出力する。入力した被判定データfはdよりも大きいため、深さ1においては比較対象がe,f,gとなる。そのため、比較部10から大小信号として大が示された指定部30は、eを記憶したアドレス4(0100)と、gを記憶したアドレス6(0110)の中央アドレス5(0101)を算出して指定信号とすると、記憶部20はアドレス5(0101)に記憶されたfを比較部10に出力する。ここで比較部10は、被判定データfが一致条件fに一致したことを示す一致判定信号を出力する。
特開平10−126442号公報
ところで、図13および図14において、被判定データの値が一致条件fより大きい値の場合には、比較部10は一致条件fより大きいことを示す大小信号を指定部30に出力し、指定部30は残された深さ2のアドレス6(0110)を算出して指定信号とすると、記憶部20はアドレス6(0110)に記憶された一致条件gを比較部10に出力する。そして、比較部10では、再度被判定データと一致条件gを比較し、最終的に一致判定信号または不一致判定信号を出力する。
このように、従来の一致判定装置では、入力された被判定データに対して一致判定信号または不一致判定信号が出力されるまで、次の被判定データに対する判定処理を開始できない構成になっている。そのため、一致条件が多くなるほど比較部10における比較回数が多くなり、一致判定装置のスループットが低下する要因になる。
本発明は、従来技術の課題を解決し、同時に複数の被判定データに対する判定処理を行うことによりスループットを高めることができる一致判定装置、一致判定方法および一致判定プログラムを提供することを目的とする。
第1の発明は、入力された被判定データが登録されている一致条件と一致するか否かを判定する一致判定装置において、一致条件を階層化し、深さ0〜n(nは1以上の整数)の一致条件を少なくとも1階層ごとに記憶する複数の記憶手段と、複数の記憶手段から深さ0〜nの一致条件をそれぞれ入力し、被判定データと当該一致条件を比較して一致の場合に一致判定信号を出力し、被判定データと当該一致条件を比較して不一致の場合にその大小関係を示す大小信号を出力するパイプライン接続の複数段の比較手段と、比較手段から大小信号を入力し、大小信号に応じて次の深さの一致条件を指定し、当該一致条件を対応する記憶手段から比較手段に出力させる指定手段とを備える。
ここで、一致条件の階層化とは、各一致条件を示すノード(節点、頂点)と、ノード間を結ぶエッジ(枝)で構成したデータ構造をいう。一致条件の深さとは、根ノード(初期値)から当該ノードに至るまでのエッジ数をいう。
第1の発明の一致判定装置において、深さ0〜nの一致条件に対して、深さの小さい順に、同一深さでは値の小さい順に固有のインデックスを付与し、記憶手段は、一致条件をインデックスの順番に記憶する構成であり、指定手段は、比較手段で判定に用いた一致条件のインデックスと当該一致条件に対応する大小信号から、次の深さの一致条件を示すインデックスを生成し、記憶手段に当該一致条件の読み出しアドレスとして出力する構成である。
また、大小信号は、被判定データと一致条件の大小関係を1または0で表記し、指定手段は、一致条件のインデックスの最下位ビットに大小信号を挿入するようにビットシフトして次の深さの一致条件を示すインデックスを生成する構成としてもよい。
第1の発明の一致判定装置において、複数の記憶手段は、深さ0〜nの一致条件を階層ごとに記憶する構成であり、複数段の比較手段はパイプライン接続であり、初段の比較手段は、被判定データと深さ0の一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力し、第2段以降、最終段を除く各比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと各深さの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力し、最終段の比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと深さnの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する構成である。
第1の発明の一致判定装置において、複数の記憶手段は、深さ0〜nの一致条件を複数の階層ごとに記憶する構成であり、複数段の比較手段はパイプライン接続であり、初段の比較手段は、被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力し、第2段以降、最終段を除く各比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力し、最終段の比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する構成である。
第2の発明は、入力された被判定データが登録されている一致条件と一致するか否かを判定する一致判定方法において、一致条件を階層化し、深さ0〜n(nは1以上の整数)の一致条件を少なくとも1階層ごとに複数の記憶手段に記憶させ、パイプライン接続の複数段の比較手段は、複数の記憶手段から深さ0〜nの一致条件をそれぞれ入力し、被判定データと当該一致条件を比較して一致の場合に一致判定信号を出力し、被判定データと当該一致条件を比較して不一致の場合にその大小関係を示す大小信号を出力し、比較手段から大小信号を入力する指定手段は、大小信号に応じて次の深さの一致条件を指定し、当該一致条件を対応する記憶手段から比較手段に出力させることを特徴とする。
第2の発明の一致判定方法において、深さ0〜nの一致条件に対して、深さの小さい順に、同一深さでは値の小さい順に固有のインデックスを付与し、記憶手段は、一致条件をインデックスの順番に記憶し、指定手段は、比較手段で判定に用いた一致条件のインデックスと当該一致条件に対応する大小信号から、次の深さの一致条件を示すインデックスを生成し、記憶手段に当該一致条件の読み出しアドレスとして出力する処理を行うことを特徴とする。
また、大小信号は、被判定データと一致条件の大小関係を1または0で表記し、指定手段は、一致条件のインデックスの最下位ビットに大小信号を挿入するようにビットシフトして次の深さの一致条件を示すインデックスを生成する処理を行うようにしてもよい。
第2の発明の一致判定方法において、複数の記憶手段は、深さ0〜nの一致条件を階層ごとに記憶し、複数段の比較手段はパイプライン接続であり、初段の比較手段は、被判定データと深さ0の一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力する処理を行い、第2段以降、最終段を除く各比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと各深さの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力する処理を行い、最終段の比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと深さnの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する処理を行うことを特徴とする。
第2の発明の一致判定方法において、複数の記憶手段は、深さ0〜nの一致条件を複数の階層ごとに記憶し、複数段の比較手段はパイプライン接続であり、初段の比較手段は、被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力する処理を行い、第2段以降、最終段を除く各比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に大小信号と被判定データを次段の比較手段に出力する処理を行い、最終段の比較手段は、前段の比較手段から一致判定信号を入力すればそのまま出力し、一致判定信号を入力しなければ被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する処理を行うことを特徴とする。
第3の発明は、第1の発明の一致判定装置の各手段を、コンピュータで実行するプログラムで実現したことを特徴とする。
本発明は、一致条件の数が多く、2分探索方式または多分探索方式でも多くの比較回数が必要になる場合に、パイプライン処理によってスループットを高めることができる。
また、従来の一致判定装置の構成において、本発明と同等のスループットを実現するためには、複数の一致判定装置を用いて並列に処理する必要がある。その場合、従来構成における各一致判定装置には、全一致条件を格納した記憶部がそれぞれ必要で、トータルの記憶容量は並列数に応じて大きくなる。一方、本発明の一致判定装置では、パイプライン接続される各比較部に対応する記憶部で全一致条件を分散して格納できればよいので、トータルの記憶容量は並列処理構成に比べて大幅に削減することができる。これにより、例えば一致条件として数万や数十万以上の規模になると、回路規模の削減効果が顕著になり、装置の低コスト化、低消費電力化および動作速度の向上が可能になる。
また、各深さの一致条件に対する判定結果(大小信号)に応じて、次の深さの一致条件を検出する方法として、一致条件の深さに応じて割り当てたインデックスを利用することにより、ビットシフト等の簡単な回路またはプログラムで対応することができる。これにより、装置の小型化を実現することができ、さらに低コスト化、低電力化、動作速度の向上を図ることができる。
本発明の一致判定装置の実施例1の構成例を示す図である。 3種の一致条件をもつ2分探索方式を説明する図である。 実施例1の指定部30の構成例を示す図である。 本発明の一致判定装置の実施例2の構成例を示す図である。 7種の一致条件をもつ2分探索方式を説明する図である。 実施例2の指定部30,31の構成例を示す図である。 本発明の一致判定装置の実施例3の構成例を示す図である。 15種の一致条件をもつ2分探索方式を説明する図である。 実施例3の指定部32,33の構成例を示す図である。 4分探索方式への本発明の適用例を説明する図である。 2分探索方式の例を説明する図である。 2分探索方式に対応する従来の一致判定装置の代表的な構成例を示す図である。 7種の一致条件をもつ2分探索方式を説明する図である。 記憶部20の構成例を示す図である。
図1は、本発明の一致判定装置の実施例1の構成例を示す。本実施例では、互いに値が異なる3種の一致条件a,b,c(a<b<c)が与えられているものとする。この3種の一致条件をもつ2分探索方式は、図2に示すように深さが最大で1となり、本実施例では2段のパイプラインで処理する。すなわち、深さ0の比較処理を1段目のパイプラインで行い、深さ1の比較処理を2段目のパイプラインで行う。
図1において、本実施例の一致判定装置は、比較部10および比較部11をパイプライン接続し、比較部10に深さ0の一致条件bを与える記憶部20を接続し、比較部11に深さ1の一致条件aまたはcを与える記憶部21を接続する。
比較部10は、大小比較器で構成され、被判定データ1を入力して一致条件bと比較し、一致する場合に一致判定信号51を比較部11に出力し、不一致の場合にその大小に応じた大小信号71を指定部30に出力するとともに、被判定データ1を被判定データ61として比較部11に出力する。指定部30は、大小信号71に応じた指定信号81を記憶部21に出力し、記憶部21が指定信号81に応じた一致条件aまたはcを出力する。比較部11は、比較部10と同様に大小比較器で構成されるが、一致判定信号51を入力する場合はそのまま一致判定信号2として出力し、一致判定信号51を入力しない場合は、入力する被判定データ61と一致条件aまたはcとを比較し、一致判定信号2または不一致判定信号3を出力する。
記憶部20は、例えばレジスタ201で構成される。レジスタ201は記憶した一致条件bを比較部10に出力する。比較部10は、被判定データ1と一致条件bとを比較し、被判定データ1が一致条件bよりも小さい場合には "0" 、大きい場合には "1" を大小信号71として指定部30に出力する。このとき、比較部10は、被判定データ1を被判定データ61として比較部11に出力する。被判定データ1と一致条件bが等しい場合は、比較部10は大小信号71を出力せず、一致判定信号51を比較部11に出力する。
記憶部21は、例えばメモリ211で構成される。メモリ211は、アドレス0に一致条件aを記憶し、アドレス1に一致条件cを記憶する。記憶部21は、指定部30から入力する指定信号81をメモリ211の読み出しアドレスとし、読み出した一致条件aまたはcを比較部11に出力する。比較部11は、比較部10から一致判定信号51を入力しない場合、被判定データ61と一致条件aまたはcとを比較し、一致した場合には一致判定信号2を出力し、一致しなかった場合には不一致判定信号3を出力する。また、比較部11は、比較部10から一致判定信号51を入力した場合は、そのまま一致判定信号2として外部に出力する。
本実施例の特徴は、1段目の比較部10で被判定データ1と一致条件bが不一致となったときの大小信号71から、記憶部21が2段目の比較部11に与える一致条件aまたはcを選択するための指定信号81を生成する指定部30にある。以下、図2および図3を参照して指定部30の構成および機能について説明する。
本発明では、一致条件それぞれに固有のインデックスを付与し、本インデックスによりパイプラインの各段で比較を行う一致条件を決定する。図2では、インデックスMを#Mと表記する。インデックスは、深さ番号の小さい一致条件から順に付与し、同一深さに属する一致条件には、値の小さいものから順に付与する。本実施例の場合は図2に示すように、深さ0に属する一致条件bにはインデックス#1(0001)を付与し、深さ1に属する一致条件aにはインデックス#2(0010)を付与し、一致条件cにはインデックス#3(0011)を付与する。なお、カッコ内はインデックスの値を二進数で表記したものである。
指定部30は、図3に示すように、インデックス生成部301とアドレス生成部302で構成される。インデックス生成部301は大小信号71を入力し、アドレス生成部302に与えるインデックスを生成する。アドレス生成部302は、入力するインデックスから記憶部21のメモリ211のアドレスを示す指定信号81を生成し、記憶部21に出力する。
指定部30のインデックス生成部301は、大小信号71に応じて、2段目の比較部11で比較を行う一致条件aまたはcを選択するためのインデックスを生成する。なお、インデックス生成部301には初期値として、1段目の一致条件bのインデックス#1(0001)が与えられている。1段目の比較部10において、被判定データ1が一致条件bよりも小さい場合は大小信号71が "0" であり、図3に示すように、初期値(0001) を左に1bit シフトして、最下位bit に大小信号71の "0" を挿入する。このような処理は、例えばシフトレジスタで実現できる。これにより、2段目の比較部11で被判定データ61と比較を行う一致条件aのインデックス#2(0010)を得ることができる。また、1段目の比較部10において、被判定データ1が一致条件bよりも大きい場合は大小信号71が "1" であり、図3に示すように、初期値#1(0001)を左に1bit シフトして、最下位bit に大小信号71の "1" を挿入する。これにより、2段目の比較部11で被判定データ61と比較を行う一致条件cのインデックス#3(0011)を得ることができる。
アドレス生成部302は、このように生成されたインデックスから、深さ0に属する一致条件数1に1を足した値2(0010)を引くことにより、一致条件aまたはcに対応するアドレスを生成する。すなわち、インデックス#2(0010)から一致条件aに対応するアドレス0(0000)が得られ、インデックス#3(0011)から一致条件cに対応するアドレス1(0001)が得られる。図2では、インデックス#*に対応するメモリ211のアドレスを <****> で表記している。
なお、本実施例の場合は、アドレス生成部302に入力する二進数表記したインデックスの最下位bit は大小信号71に対応するので、大小信号71の "0" または "1" をそのまま記憶部21のメモリ211の読み出しアドレス(指定信号81)にしてもよい。
以上説明したように、実施例1では、比較部10で深さ0に属する一致条件bで比較処理を行い、比較部11で深さ1に属する一致条件aまたはcで比較処理を行う構成である。したがって、比較部10で深さ0における比較処理が終了すると、当該被判定データは比較部11で深さ1における比較処理に移るので、比較部10では次の被判定データに対する比較処理が可能となり、スループットを向上させることができる。
図4は、本発明の一致判定装置の実施例2の構成例を示す。本実施例では、互いに値が異なる7種の一致条件a,b,c,d,e,f,g(a<b<c<d<e<f<g)が与えられているものとする。この7種の一致条件をもつ2分探索方式は、図5に示すように深さが最大で2となり、本実施例では3段のパイプラインで処理する。すなわち、深さ0の比較処理を1段目のパイプラインで行い、深さ1の比較処理を2段目のパイプラインで行い、深さ2の比較処理を3段目のパイプラインで行う。
図4において、本実施例の一致判定装置は、比較部10,比較部11および比較部12をパイプライン接続し、比較部10に深さ0の一致条件dを与える記憶部20を接続し、比較部11に深さ1の一致条件bまたはfを与える記憶部21を接続し、比較部12に深さ2の一致条件a,c,e,gのいずれか1つを与える記憶部22を接続する。
比較部10は、実施例1と同様に大小比較器で構成され、被判定データ1を入力して一致条件dと比較し、一致する場合に一致判定信号51を比較部11に出力する。また、被判定データ1が一致条件dよりも小さい場合には "0" 、大きい場合には "1" を大小信号71として指定部30に出力するとともに、被判定データ1を被判定データ61として比較部11に出力する。指定部30は、大小信号71に応じた指定信号81を記憶部21に出力し、記憶部21が指定信号81に応じた一致条件bまたはfを出力する。また、指定部30は、内部処理に用いたインデックス91を指定部31に出力する。
比較部11は、比較部10と同様に大小比較器で構成されるが、一致判定信号51を入力する場合はそのまま一致判定信号52として出力し、一致判定信号51を入力しない場合は、入力する被判定データ61と一致条件bまたはfとを比較し、一致する場合に一致判定信号52を比較部12に出力する。また、被判定データ61が一致条件bまたはfよりも小さい場合には "0" 、大きい場合には "1" を大小信号72として指定部31に出力するとともに、被判定データ61を被判定データ62として比較部12に出力する。指定部31は、大小信号72に応じた指定信号82を記憶部22に出力し、記憶部22が指定信号82に応じた一致条件a,c,e,gのいずれか1つを出力する。
比較部12は、比較部11と同様に大小比較器で構成され、一致判定信号52を入力する場合はそのまま一致判定信号2として出力し、一致判定信号52を入力しない場合は、入力する被判定データ62と一致条件a,c,e,gのいずれか1つとを比較し、一致判定信号2または不一致判定信号3を出力する。
記憶部20は、実施例1と同様にレジスタ201で構成され、一致条件dを比較部10に出力する。
記憶部21は、実施例1と同様にメモリ211で構成される。メモリ211は、アドレス0に一致条件bを記憶し、アドレス1に一致条件fを記憶する。記憶部21は、指定部30から入力する指定信号81をメモリ211の読み出しアドレスとし、読み出した一致条件bまたはfを比較部11に出力する。
記憶部22は、記憶部21と同様にメモリ221で構成される。メモリ221は、アドレス00,01,10,11に一致条件a,c,e,gを記憶する。記憶部22は、指定部31から入力する指定信号82をメモリ221の読み出しアドレスとし、読み出した一致条件a,c,e,gのいずれか1つを比較部12に出力する。
本実施例の特徴は、1段目の比較部10で被判定データ1と一致条件dが不一致となったときの大小信号71から、記憶部21が2段目の比較部11に与える一致条件bまたはfを選択するための指定信号81を生成する指定部30、さらに2段目の比較部11で被判定データ61と一致条件bまたはfが不一致となったときの大小信号72から、記憶部22が3段目の比較部12に与える一致条件a,c,e,gのいずれか1つを選択するための指定信号82を生成する指定部31にある。
以下、図5および図6を参照して指定部30,31の詳細な構成および機能について説明する。なお、ここでは指定部30,31を個別の構成として示すが、一体の構成であってもよい。
本実施例では、図5に示すように、深さ0に属する一致条件dにはインデックス#1(0001)を付与し、深さ1に属する一致条件b,fにはインデックス#2(0010),#3(0011)を付与し、深さ2に属する一致条件a,c,e,gにはインデックス#4(0100),#5(0101),#6(0110),#7(0111)を付与する。図5の表記法は、実施例1の図2と同様である。
図6において、指定部30は、インデックス生成部301とアドレス生成部302で構成される。インデックス生成部301は大小信号71を入力し、アドレス生成部302および指定部31に与えるインデックス91を生成する。アドレス生成部302は、入力するインデックス91から記憶部21のメモリ211のアドレスを示す指定信号81を生成し、記憶部21に出力する。指定部31は、インデックス生成部311とアドレス生成部312で構成される。インデックス生成部311は大小信号72および指定部30のインデックス生成部301からインデックス91を入力し、アドレス生成部312に与えるインデックス92を生成する。アドレス生成部312は、入力するインデックス92から記憶部22のメモリ221のアドレスを示す指定信号82を生成し、記憶部22に出力する。
1段目の比較部10は、被判定データ1と深さ0の一致条件dとを比較し、被判定データ1が一致条件dよりも小さい場合は "0" の大小信号71を出力し、被判定データ1が一致条件dよりも大きい場合は "1”の大小信号71を出力する。指定部30のインデックス生成部301は、 "0" または "1”の大小信号71に応じて、実施例1と同様に初期値#1(0001)からインデックス#2(0010)またはインデックス#3(0011)を生成し、インデックス91として出力する。アドレス生成部302は、このインデックス91から、実施例1と同様に2(0010)を引くことにより、深さ1の一致条件bに対応するアドレス0(0000)または一致条件fに対応するアドレス1(0001)を生成し、指定信号81として記憶部21に出力する。
指定部31のインデックス生成部311は、指定部30からインデックス91を入力し、インデックスの初期値#2(0010)または#3(0011)として設定する。一方、2段目の比較部11は、被判定データ61と深さ1の一致条件bまたはfとを比較し、被判定データ61が一致条件bまたはfよりも小さい場合は "0" の大小信号72を出力し、被判定データ61が一致条件bまたはfよりも大きい場合は "1”の大小信号72を出力する。インデックス生成部311は、 "0" の大小信号72に応じて、インデックス生成部301と同様に、インデックスの初期値#2(0010)または#3(0011)からインデックス#4(0100)またはインデックス#6(0110)を生成し、インデックス92として出力する。また、インデックス生成部311は、 "1" の大小信号72に応じて、インデックスの初期値#2(0010)または#3(0011)からインデックス#5(0101)またはインデックス#7(0111)を生成し、インデックス92として出力する。
アドレス生成部312は、このインデックス92から、深さ0,1に属する一致条件数3に1を足した値4(0100)を引くことにより、深さ2の一致条件a,c,e,gのいずれか1つに対応するアドレスを生成する。すなわち、インデックス#4(0100),#5(0101),#6(0110),#7(0111)から、一致条件a,c,e,gに対応するアドレス00(0000),01(0001),10(0010),11(0011)を生成し、指定信号82として記憶部22に出力する。図5および図6では、インデックス#*に対応するメモリ211,221のアドレスを <****> で表記している。
なお、アドレス生成部302ではインデックス91から2を引いて指定信号81を生成し、アドレス生成部312ではインデックス92から4を引いて指定信号82を生成しているが、これは記憶部21のメモリ211、記憶部22のメモリ221のアドレスと一致条件に付与されたインデックスにずれがあるためである。したがって、図4(2) に示すように、メモリアドレスと一致条件のインデックスを対応させることにより、インデックス91,92をそのまま指定信号81,82とすることが可能である。
また、実施例1と同様に、アドレス生成部302に入力する二進数表記したインデックス91の最下位bit は大小信号71に対応するので、大小信号71の "0" または "1" をそのまま記憶部21のメモリ211の読み出しアドレス(指定信号81)にしてもよい。また、アドレス生成部312に入力する二進数表記したインデックス92の下位2bit は、大小信号71,72の履歴に対応するので、これを記憶部21のメモリ221の読み出しアドレスとしてもよい。
以上説明したように、実施例2では、比較部10で深さ0に属する一致条件dで比較処理を行い、比較部11で深さ1に属する一致条件bまたはfで比較処理を行い、比較部12で深さ2に属する一致条件a,c,e,gの1つで比較処理を行う構成である。したがって、比較部10で深さ0における比較処理が終了すると、当該被判定データは比較部11で深さ1における比較処理に移るので、比較部10では次の被判定データに対する比較処理が可能となり、スループットを向上させることができる。
なお、一致条件が4〜6種であっても図4の一致判定装置で同様に対応することができる。また、一致条件が8〜15種の場合には、4段のパイプラインで同様に処理することができるが、各段のパイプラインで深さ2つ分の比較処理を行うことにより2段のパイプラインで処理することも可能である。後者の場合について、実施例3として以下に説明する。
図7は、本発明の一致判定装置の実施例3の構成例を示す。本実施例では、互いに値が異なる15種の一致条件a,b,c,d,e,f,g,h,i,j,k,l,m,n,o(a<b<c<d<e<f<g<h<i<j<k<l<m<n<o)が与えられているものとする。この15種の一致条件をもつ2分探索方式は、図8に示すように深さが最大で3となり、本実施例では2段のパイプラインで処理する。すなわち、深さ0,1の比較処理を1段目のパイプラインで行い、深さ2,3の比較処理を2段目のパイプラインで行う。
図7において、本実施例の一致判定装置は、比較部10および比較部11をパイプライン接続し、比較部10に深さ0の一致条件hまたは深さ1の一致条件dまたはlを与える記憶部23を接続し、比較部11に深さ2の一致条件b,f,j,nのいずれか1つ、または深さ3の一致条件a,c,e,g,i,k,m,oのいずれか1つを与える記憶部24を接続する。比較部10に与える一致条件を指定する指定部32は、比較部10および記憶部23に接続される。比較部11に与える一致条件を指定する指定部33は、指定部32、比較部11および記憶部24に接続される。
ここで、比較部10および指定部32は、深さ0の比較処理と深さ1の比較処理に対して異なる動作をする。比較部11および指定部33は、深さ2の比較処理と深さ3の比較処理に対して異なる動作をする。
記憶部23は、指定部32の指定信号83に応じて深さ0の一致条件hを比較部10に出力する。比較部10は、実施例1と同様に大小比較器で構成され、被判定データ1を入力して一致条件hと比較し、一致する場合に一致判定信号51を比較部11に出力する。また、被判定データ1が一致条件hよりも小さい場合には "0" 、大きい場合には "1" の大小信号71を指定部32に出力する。指定部32は、大小信号71に応じた指定信号83を記憶部23に出力し、記憶部23が指定信号83に応じた深さ1の一致条件dまたはlを出力する。
比較部10は、被判定データ1と一致条件dまたはlとを比較し、一致する場合に一致判定信号51を比較部11に出力する。また、被判定データ1が一致条件dまたはlよりも小さい場合には "0" 、大きい場合には "1" の大小信号71を指定部32に出力するとともに、被判定データ1を被判定データ61として比較部11に出力する。指定部32は、大小信号71および大小信号71に応じたインデックス93を指定部33に出力する。指定部33は、大小信号71およびインデックス93に応じた指定信号84を記憶部24に出力し、記憶部24が指定信号84に応じた深さ2の一致条件b,f,j,nのいずれか1つを比較部11に出力する。
比較部11は、比較部10と同様に大小比較器で構成されるが、一致判定信号51を入力する場合はそのまま一致判定信号2として出力し、一致判定信号51を入力しない場合は、入力する被判定データ61と深さ2の一致条件b,f,j,nのいずれか1つとを比較し、一致する場合に一致判定信号2を出力する。また、被判定データ61が当該一致条件よりも小さい場合には "0" 、大きい場合には "1" の大小信号72を指定部33に出力する。指定部33は、大小信号72に応じた指定信号84を記憶部24に出力し、記憶部24が指定信号84に応じた深さ3の一致条件a,c,e,g,i,k,m,oのいずれか1つを出力する。比較部11は、被判定データ61と当該一致条件とを比較し、一致判定信号2または不一致判定信号3を出力する。
記憶部23は、例えばメモリ231で構成される。メモリ231は、アドレス0000に深さ0の一致条件hを記憶し、アドレス0001,0010に深さ1の一致条件d,lを記憶する。記憶部23は、指定部32から入力する指定信号83をメモリ231の読み出しアドレスとし、読み出した深さ0の一致条件h、または深さ1の一致条件dまたはlを比較部10に出力する。
記憶部24は、例えばメモリ241で構成される。メモリ241は、アドレス0000〜0011に深さ2の一致条件b,f,j,nを記憶し、アドレス0100〜1011に深さ3の一致条件a,c,e,g,i,k,m,oを記憶する。記憶部24は、指定部33から入力する指定信号84をメモリ241の読み出しアドレスとし、読み出した深さ2の一致条件b,f,j,nのいずれか1つ、または深さ3の一致条件a,c,e,g,i,k,m,oのいずれか1つを比較部11に出力する。
本実施例の指定部32は、比較部10に深さ0の一致条件hを設定するための指定信号83を記憶部23に出力し、比較部10で被判定データ1と一致条件hが不一致となったときの大小信号71から、記憶部23が比較部10に与える深さ1の一致条件dまたはlを選択するための指定信号83を生成し、さらに比較部10で被判定データ1と深さ1の一致条件dまたはlが不一致となったときの大小信号71から、記憶部24が比較部11に与える深さ2の一致条件b,f,j,nのいずれか1つを選択するためのインデックス93を生成する。
本実施例の指定部33は、比較部10で被判定データ1と深さ1の一致条件dまたはlが不一致となったときの大小信号71とインデックス93から、記憶部24から比較部11に与える深さ2の一致条件b,f,j,nのいずれか1つを選択するための指定信号84を生成し、さらに比較部11で被判定データ61と一致条件b,f,j,nのいずれか1つが不一致となったときの大小信号72から、記憶部24が比較部11に与える深さ3の一致条件a,c,e,g,i,k,m,oのいずれか1つを選択するための指定信号84を生成する。
以下、図8および図9を参照して指定部32,33の詳細な構成および機能について説明する。なお、ここでは指定部32,33を個別の構成として示すが、一体の構成であってもよい。
本実施例では、図8に示すように、深さ0に属する一致条件hにはインデックス#1(0001)を付与し、深さ1に属する一致条件d,lにはインデックス#2(0010),#3(0011)を付与し、深さ2に属する一致条件b,f,j,nにはインデックス#4(0100)〜#7(0111)を付与し、深さ3に属する一致条件a,c,e,g,i,k,m,oにはインデックス#8(1000)〜#15(1111)を付与する。図8の表記法は、実施例1の図2と同様である。
図9において、指定部32は、制御カウンタ321、レジスタ322、インデックス生成部323およびアドレス生成部324で構成される。制御カウンタ321は、1と2のカウンタ信号121を繰り返し出力する。レジスタ322は、インデックスの初期値#1(0001)を保持し、初期値122を出力する。インデックス生成部323は、カウンタ信号121、初期値122および大小信号71を入力し、アドレス生成部324および指定部33に出力するインデックス93を生成する。アドレス生成部324は、入力するインデックス93から記憶部23のメモリ231のアドレスを示す指定信号83を生成し、記憶部23に出力する。また、大小信号71はそのまま指定部33に出力される。
指定部33は、制御カウンタ331、レジスタ332、インデックス生成部333およびアドレス生成部334で構成される。制御カウンタ331は、1と2のカウント信号131を繰り返し出力する。レジスタ332は、指定部32から入力するインデックス93を保持し、初期値132として出力する。インデックス生成部333は、カウンタ信号131、初期値132、大小信号71および大小信号72を入力し、アドレス生成部334に出力するインデックス94を生成する。アドレス生成部334は、入力するインデックス94から記憶部24のメモリ241のアドレスを示す指定信号84を生成し、記憶部24に出力する。
指定部32のインデックス生成部323は、カウンタ信号121が1のときに、レジスタ322の初期値122を設定し、インデックス#1(0001)としてアドレス生成部324に出力する。アドレス生成部324は、このインデックス#1(0001)から1を引くことにより、深さ0の一致条件hに対応するアドレス0000を生成し、指定信号83として記憶部23に出力する。1段目の比較部10は、被判定データ1と記憶部23から入力する一致条件hとを比較し、被判定データ1が一致条件hよりも小さい場合は "0" (大きい場合は "1" )の大小信号71を出力する。インデックス生成部323は例えばシフトレジスタで構成され、カウンタ信号121が2のときに、例えば "0" の大小信号71に応じて、初期値のインデックス#1(0001)からインデックス#2(0010)を生成し、アドレス生成部324に出力する。アドレス生成部324は、このインデックス#2(0010)から1を引くことにより、深さ1の一致条件dに対応するアドレス0001を生成し、指定信号83として記憶部23に出力する。また、このインデックス#2(0010)はインデックス93として指定部33に出力され、レジスタ332に初期値として設定される。
指定部33のインデックス生成部333は、カウンタ信号131が1のときに、レジスタ332の初期値132をインデックスの初期値#2(0010)として設定する。一方、1段目の比較部10は、被判定データ1と深さ1の一致条件dとを比較し、被判定データ1が一致条件dよりも大きい場合は "1" (小さい場合は "0" )の大小信号71を出力する。インデックス生成部333は、例えば "1" の大小信号71に応じて、インデックス#2(0010)からインデックス#5(0101)を生成する。アドレス生成部334は、このインデックス#5(0101)から、深さ0,1に属する一致条件数3に1を足した4(0100)を引くことにより、深さ2の一致条件fに対応するアドレス0001を生成し、指定信号84として記憶部24に出力する。
2段目の比較部11は、被判定データ61と記憶部24から入力する深さ2の一致条件fとを比較し、被判定データ1が一致条件fよりも大きい場合は "1" (小さい場合は "0" )の大小信号72を出力し、一致すれば一致判定信号2を出力する。インデックス生成部333は、例えば "1" の大小信号72に応じて、インデックス#5(0101)からインデックス#11(1011)を生成する。アドレス生成部334は、このインデックス#11(1011)から、同様に4(0100)を引くことにより、深さ3の一致条件gに対応するアドレス0111を生成し、指定信号84として記憶部24に出力する。比較部11は、被判定データ61と記憶部24から入力する一致条件gとを比較し、一致すれば一致判定信号2を出力し、一致しなければ不一致信号3を出力する。
なお、アドレス生成部324ではインデックス93から1を引いて指定信号83を生成し、アドレス生成部334ではインデックス94から4を引いて指定信号84を生成しているが、これは記憶部23のメモリ231のアドレス、記憶部24のメモリ241のアドレスと一致条件に付与されたインデックスにずれがあるためである。したがって、メモリ231,241において、メモリアドレスと一致条件のインデックスを対応させることにより、インデックス93,94をそのまま指定信号83,84とすることが可能である。
以上説明したように、実施例3では、比較部10で深さ0に属する一致条件hで比較処理を行い、さらに深さ1に属する一致条件dまたはlで比較処理を行い、比較部11で深さ2に属する一致条件b,f,j,nのいずれか1つで比較処理を行い、さらに深さ3に属する一致条件a,c,e,g,i,k,m,oのいずれか1つで比較処理を行う構成である。したがって、比較部10で深さ0,1における比較処理が終了すると、当該被判定データは比較部11で深さ2,3における比較処理に移るので、比較部10では次の被判定データに対する比較処理が可能となり、スループットを向上させることができる。
なお、実施例3の構成において、例えば一致条件が4以上15未満の場合は、存在しない一致条件について、図7に示す記憶部24のメモリ241の対応するアドレスに「一致条件なし」を示す情報を記憶する。指定部33により当該アドレスが指定された場合に、この「一致条件なし」を示す情報を比較部11に出力し、比較部11では直ちに不一致を判定するようにしてもよい。実施例1および実施例2においても同様である。
一致条件が15種を超える場合には、実施例2に示す一致条件の各階層ごとにパイプライン処理を行う構成、実施例3に示す一致条件の複数階層ごとにパイプライン処理を行う構成、またそれらを組み合わせることにより対応可能である。
実施例1,2の記憶部20は、1つの一致条件を記憶して出力するものとして、レジスタを用いる例を示したが、例えばROMやRAMで構成してもよい。また、実施例1,2,3の記憶部21,22,23,24はメモリを用いる例を示したが、例えばレジスタやROMで構成してもよい。
また、実施例1〜3では2分探索方式に基づいて説明したが、本発明は2分探索方式に限るものではなく、木構造を有した多分探索方式において、インデックスを利用して次に被判定データと比較する一致条件を指定できる構成に適用可能である。例えば、被判定データと3種の一致条件を同時に比較する4分探索方式では、図10に示すように、大小信号が4種の値を示せればよい(図10では00と01と10と11)。さらに、本発明は、B木や2.3.4 木など、木構造に対して特定の一致条件の格納方法を有する探索方式に利用してもよい。
以上説明した実施例1〜実施例4の構成および機能はハードウェアで実現するだけでなく、プログラム言語で記述したソフトウェアとコンピュータで実現することもできる。また、当該プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
本発明は、一致条件の数が多く、2分探索方式または多分探索方式でも多くの比較回数が必要になる場合に、パイプライン処理によってスループットを高めることができるので、特に一致条件数が多い場合の一致判定装置、一致判定方法および一致判定プログラムとして有用である。
10,11,12 比較部
20,21,22,23,24 記憶部
201 レジスタ
211,221,231,241 メモリ
30,31,32,33 指定部
301,311,323,333 インデックス生成部
302,312,324,334 アドレス生成部
321,331 制御カウンタ
322,332 レジスタ

Claims (11)

  1. 入力された被判定データが登録されている一致条件と一致するか否かを判定する一致判定装置において、
    前記一致条件を階層化し、深さ0〜n(nは1以上の整数)の一致条件を少なくとも1階層ごとに記憶する複数の記憶手段と、
    前記複数の記憶手段から深さ0〜nの一致条件をそれぞれ入力し、前記被判定データと当該一致条件を比較して一致の場合に一致判定信号を出力し、前記被判定データと当該一致条件を比較して不一致の場合にその大小関係を示す大小信号を出力するパイプライン接続の複数段の比較手段と、
    前記比較手段から前記大小信号を入力し、前記大小信号に応じて次の深さの一致条件を指定し、当該一致条件を対応する前記記憶手段から前記比較手段に出力させる指定手段と
    を備えたことを特徴とする一致判定装置。
  2. 請求項1に記載の一致判定装置において、
    前記深さ0〜nの一致条件に対して、深さの小さい順に、同一深さでは値の小さい順に固有のインデックスを付与し、
    前記記憶手段は、前記一致条件を前記インデックスの順番に記憶する構成であり、
    前記指定手段は、前記比較手段で判定に用いた一致条件のインデックスと当該一致条件に対応する大小信号から、次の深さの一致条件を示すインデックスを生成し、前記記憶手段に当該一致条件の読み出しアドレスとして出力する構成である
    ことを特徴とする一致判定装置。
  3. 請求項2に記載の一致判定装置において、
    前記大小信号は、前記被判定データと前記一致条件の大小関係を1または0で表記し、
    前記指定手段は、前記一致条件のインデックスの最下位ビットに前記大小信号を挿入するようにビットシフトして次の深さの一致条件を示すインデックスを生成する構成である
    ことを特徴とする一致判定装置。
  4. 請求項1に記載の一致判定装置において、
    前記複数の記憶手段は、深さ0〜nの一致条件を階層ごとに記憶する構成であり、
    前記複数段の比較手段はパイプライン接続であり、
    初段の比較手段は、前記被判定データと深さ0の一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力し、
    第2段以降、最終段を除く各比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと各深さの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力し、
    最終段の比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと深さnの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する構成である
    ことを特徴とする一致判定装置。
  5. 請求項1に記載の一致判定装置において、
    前記複数の記憶手段は、深さ0〜nの一致条件を複数の階層ごとに記憶する構成であり、
    前記複数段の比較手段はパイプライン接続であり、
    初段の比較手段は、前記被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力し、
    第2段以降、最終段を除く各比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力し、
    最終段の比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する構成である
    ことを特徴とする一致判定装置。
  6. 入力された被判定データが登録されている一致条件と一致するか否かを判定する一致判定方法において、
    前記一致条件を階層化し、深さ0〜n(nは1以上の整数)の一致条件を少なくとも1階層ごとに複数の記憶手段に記憶させ、
    パイプライン接続の複数段の比較手段は、前記複数の記憶手段から深さ0〜nの一致条件をそれぞれ入力し、前記被判定データと当該一致条件を比較して一致の場合に一致判定信号を出力し、前記被判定データと当該一致条件を比較して不一致の場合にその大小関係を示す大小信号を出力し、
    前記比較手段から前記大小信号を入力する指定手段は、前記大小信号に応じて次の深さの一致条件を指定し、当該一致条件を対応する前記記憶手段から前記比較手段に出力させる
    ことを特徴とする一致判定方法。
  7. 請求項6に記載の一致判定方法において、
    前記深さ0〜nの一致条件に対して、深さの小さい順に、同一深さでは値の小さい順に固有のインデックスを付与し、
    前記記憶手段は、前記一致条件を前記インデックスの順番に記憶し、
    前記指定手段は、前記比較手段で判定に用いた一致条件のインデックスと当該一致条件に対応する大小信号から、次の深さの一致条件を示すインデックスを生成し、前記記憶手段に当該一致条件の読み出しアドレスとして出力する処理を行う
    ことを特徴とする一致判定方法。
  8. 請求項7に記載の一致判定方法において、
    前記大小信号は、前記被判定データと前記一致条件の大小関係を1または0で表記し、
    前記指定手段は、前記一致条件のインデックスの最下位ビットに前記大小信号を挿入するようにビットシフトして次の深さの一致条件を示すインデックスを生成する処理を行う
    ことを特徴とする一致判定方法。
  9. 請求項6に記載の一致判定方法において、
    前記複数の記憶手段は、深さ0〜nの一致条件を階層ごとに記憶し、
    前記複数段の比較手段はパイプライン接続であり、
    初段の比較手段は、前記被判定データと深さ0の一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力する処理を行い、
    第2段以降、最終段を除く各比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと各深さの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力する処理を行い、
    最終段の比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと深さnの一致条件を比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する処理を行う
    ことを特徴とする一致判定方法。
  10. 請求項6に記載の一致判定方法において、
    前記複数の記憶手段は、深さ0〜nの一致条件を複数の階層ごとに記憶し、
    前記複数段の比較手段はパイプライン接続であり、
    初段の比較手段は、前記被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力する処理を行い、
    第2段以降、最終段を除く各比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に前記大小信号と前記被判定データを次段の比較手段に出力する処理を行い、
    最終段の比較手段は、前段の比較手段から前記一致判定信号を入力すればそのまま出力し、前記一致判定信号を入力しなければ前記被判定データと複数の深さの一致条件を順次比較して一致の場合に一致判定信号を出力し、不一致の場合に不一致判定信号を出力する処理を行う
    ことを特徴とする一致判定方法。
  11. 請求項1〜請求項5のいずれかに記載の一致判定装置の各手段を、コンピュータで実行するプログラムで実現したことを特徴とする一致判定プログラム。
JP2009149417A 2009-06-24 2009-06-24 一致判定装置、一致判定方法および一致判定プログラム Withdrawn JP2011009895A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009149417A JP2011009895A (ja) 2009-06-24 2009-06-24 一致判定装置、一致判定方法および一致判定プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009149417A JP2011009895A (ja) 2009-06-24 2009-06-24 一致判定装置、一致判定方法および一致判定プログラム

Publications (1)

Publication Number Publication Date
JP2011009895A true JP2011009895A (ja) 2011-01-13

Family

ID=43566072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009149417A Withdrawn JP2011009895A (ja) 2009-06-24 2009-06-24 一致判定装置、一致判定方法および一致判定プログラム

Country Status (1)

Country Link
JP (1) JP2011009895A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011123632A (ja) * 2009-12-10 2011-06-23 Toyota Motor Corp 制御システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011123632A (ja) * 2009-12-10 2011-06-23 Toyota Motor Corp 制御システム

Similar Documents

Publication Publication Date Title
CN101853190B (zh) 一种适用于嵌入式处理器的数据完整性验证方法
US11372929B2 (en) Sorting an array consisting of a large number of elements
US9240237B2 (en) Semiconductor device and method of writing/reading entry address into/from semiconductor device
CN113033811A (zh) 两量子比特逻辑门的处理方法及装置
Lemane et al. Kmtricks: efficient and flexible construction of bloom filters for large sequencing data collections
US20130117264A1 (en) Object arrangement apparatus, method therefor and computer program
CN103283149B (zh) 用于处理数据元素序列的装置和方法
CN102207935A (zh) 用于创建索引的方法和系统
JP2017532658A (ja) 効率的な1対1結合のための方法
US10175950B2 (en) Montgomery modular multiplication device and embedded security chip with same
US9865350B2 (en) Content addressable memory, an index generator, and a registered information update method
JP2011009895A (ja) 一致判定装置、一致判定方法および一致判定プログラム
JP2007233554A (ja) 高速パターンマッチング装置の探索方法
JP5120263B2 (ja) パターンマッチング装置及び方法
JP2012003733A (ja) 論理式変換プログラム、及びsat解法プログラム
CN111341374A (zh) 存储器的测试方法、装置及可读存储器
JP7399797B2 (ja) 異常度算出システムおよび方法
JP2008072247A (ja) Ldpc復号器の演算制御データ生成方法及びldpc復号器
CN102222204A (zh) 基于容错的md5全流水硬件加密方法
WO2011021347A1 (ja) ビット列データソート装置、ソート方法及びプログラム
TWI511072B (zh) 病理資料處理裝置以及方法
KR102271489B1 (ko) 정규표현식 패턴의 탐지를 위한 아호코라식 오토마타 구축 장치 및 방법
JP5330720B2 (ja) 和音同定方法、和音同定装置、及び学習装置
CN110830938B (zh) 一种针对室内信号源部署方案筛选的指纹定位快速实现方法
US9405508B2 (en) Sorting with key modification

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20120904