(57)【特許請求の範囲】
【請求項１】
入力された情報データと、メモリ内に予め格納されている複数のメモリデータ各々との一致検出を行うデータ一致検出装置であって、
前記メモリから前記メモリデータ各々中の一部のデータビット群を順次読み出してから前記メモリデータ各々中の他のデータビット群を順次読み出すメモリ読出制御手段と、
前記メモリから読み出された前記データビット群と前記メモリデータ中における前記データビット群のビット桁に対応した前記情報データ中のビット群とを比較して両者が一致しているか否かを示す比較結果を得る比較手段と、
前記メモリデータ各々に対応させて前記比較結果を一致フラグ情報として順次記憶するフラグレジスタとを有し、
前記メモリ読出制御手段は、前記一致フラグ情報が一致を示す場合にはこの一致フラグ情報にて示される前記他のデータビット群に対する読み出しを行う一方、前記一致フラグ情報が不一致を示す場合にはこの一致フラグ情報にて示される前記他のデータビット群に対する読み出しは行わないことを特徴とするデータ一致検出装置。
【請求項２】
前記メモリ読出制御手段は、前記メモリデータ各々が格納されているアドレスを所定のカウント周期毎に順次カウントアップして生成するアドレスカウンタを備え、
前記アドレスカウンタは、前記一致フラグ情報が不一致を示す場合にはこの一致フラグ情報に対応したメモリデータの前記アドレスに対するカウント周期を短くすることを特徴とする請求項１記載のデータ一致検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報データ同士を比較して一致検出を行うデータ一致検出装置に関する。
【０００２】
【従来の技術】
かかるデータ一致検出装置として、外部供給された情報データと、メモリ内に予め格納されている複数のメモリデータ各々とのデータ比較を行って一致したものを検出するものがある。
ここで、上記メモリにおけるアクセス単位（例えば、８ビット）は決められている。よって、かかるデータ一致検出装置により、このメモリのアクセス単位よりも長いデータ長のデータ同士を比較対象とするには、複数回に分けた処理を行う必要がある。
【０００３】
例えば、外部供給された１ワード：２９ビットの情報データと、アクセス単位が８ビットのメモリ内に格納されている１ワード：２９ビットのメモリデータとのデータ一致検出を行うには、
先ず、外部供給されてくる１ワード：２９ビットの入力情報データを８ビット毎に取り込む。次に、メモリから、８、８、８、及び５ビットの如く４回に分けて１ワード分（２９ビット）のメモリデータを読み出し、これを上記入力情報データと比較するのである。
【０００４】
このように、上記データ一致検出装置においては、比較対象となるデータの１ワードのビット長がメモリのアクセス単位よりも長くなると、かかるメモリに対するアクセス回数が増えて、データ処理に時間が掛かるという問題があった。
【０００５】
【発明が解決しようとする課題】
本発明は、かかる問題を解決すべくなされたものであり、比較対象となる情報データのビット長がメモリのアクセス単位よりも長い場合においても、高速にデータの一致検出処理を行うことが出来るデータ一致検出装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明によるデータ一致検出装置は、入力された情報データと、メモリ内に予め格納されている複数のメモリデータ各々との一致検出を行うデータ一致検出装置であって、前記メモリから前記メモリデータ各々中の一部のデータビット群を順次読み出してから前記メモリデータ各々中の他のデータビット群を順次読み出すメモリ読出制御手段と、前記メモリから読み出された前記データビット群と前記メモリデータ中における前記データビット群のビット桁に対応した前記情報データ中のビット群とを比較して両者が一致しているか否かを示す比較結果を得る比較手段と、前記メモリデータ各々に対応させて前記比較結果を一致フラグ情報として順次記憶するフラグレジスタとを有し、前記メモリ読出制御手段は、前記一致フラグ情報が一致を示す場合にはこの一致フラグ情報にて示される前記他のデータビット群に対する読み出しを行う一方、前記一致フラグ情報が不一致を示す場合にはこの一致フラグ情報にて示される前記他のデータビット群に対する読み出しは行わない。
【０００７】
【作用】
本発明によるデータ一致検出装置においては、入力された情報データと、メモリ内に予め格納されているメモリデータ各々との一致検出を行うにあたり、各メモリデータ中の一部のデータビット群をメモリから読み出してから各メモリデータ中の他のデータビット群を上記メモリから読み出して上記情報データとの比較を行う。ここで、メモリから読み出された上記一部のデータビット群と上記情報データとを比較した結果、両者が既に不一致であると判定された場合には、このメモリデータ中の他のデータビット群に対する読み出しを行わないようにしている。よって、メモリに対する余分な読み出し動作が省かれるので、高速なデータ一致検出処理が為されるようになるのである。
【０００８】
【発明の実施の形態】
図１は、本発明によるデータ一致検出装置の構成を示す図である。
尚、図１に示されるデータ一致検出装置は、外部供給された１ワード：２９ビットの入力情報データと、メモリに予め格納されている１６ワード分のメモリデータ各々との比較を行い、その一致を検出するものである。
【０００９】
メモリ２１は、例えば８ビット単位にてデータの読み書きが可能なものである。尚、かかるメモリ２１には、図２に示されるが如き形態にて１ワード：２９ビットからなるメモリデータが１６ワード分だけ予め格納されているものとする。例えば、第１ワードとしてのメモリデータＤ０0-28は、８、８、８、５ビットに分割されて夫々アドレス[００h]、[０１h]、[０２h]、[０３h]に格納されている。同様に、第２ワードとしてのメモリデータＤ１0-28も、８、８、８、５ビットに分割されて夫々アドレス[１０h]、[１１h]、[１２h]、[１３h]に格納されている。この際、８ビットアドレスの内の上位４ビット（以下、ハイアドレスと称する）が、１ワード分（２９ビット）の格納アドレスを示すものとなる。一方、８ビットアドレスの内の下位４ビット（以下、ローアドレスと称する）は、１ワード中における第０〜第７ビット、第８〜第１５ビット、第１６〜第２３ビット、第２４〜第２８ビット各々の格納位置を示している。
【００１０】
ハイアドレスカウンタ２７は、インバータ２９によってシステムクロックＳＣＬＫを反転して得られた反転システムクロックＳＣＬＫ’の立ち上がりエッジに応じて"０"、"１"、"２"、・・・"１３"、"１４"、"１５"なるカウント動作を繰り返す、いわゆる１６進カウンタである。かかるハイアドレスカウンタ２７のカウント値は、メモリ２１における８ビットアドレスの内の上位４ビットを示すハイアドレスＨＡ0-3としてメモリ２１及びフラグレジスタ２３に夫々供給される。この際、ハイアドレスカウンタ２７は、そのカウント値が"１５"となる度にキャリーアウト信号ＣＯを発生し、これをローアドレスカウンタ２８に供給する。
【００１１】
ローアドレスカウンタ２８は、かかるキャリーアウト信号ＣＯが供給される度に１カウントアップして"０"、"１"、"２"、"３"なるカウント動作を繰り返す、いわゆる４進カウンタである。ローアドレスカウンタ２８のカウント値は、メモリ２１における８ビットアドレスの内の下位４ビットを示すローアドレスＬＡ4-7として、かかるメモリ２１に供給される。
【００１２】
尚、これらハイアドレスカウンタ２７及びローアドレスカウンタ２８は、後述するリード信号ＲＤの論理レベルが"１"である期間中に限り前述した如きカウント動作を実行する一方、かかるリード信号ＲＤの論理レベルが"０"である期間中はディスエーブル状態となって上記カウント動作を停止する。すなわち、メモリ２１によるデータ読出が為されている期間中は、ハイアドレスカウンタ２７及びローアドレスカウンタ２８のカウント動作は共に停止するのである。
【００１３】
メモリ２１は、論理レベル"０"のリード信号ＲＤに応じて、上記ハイアドレスＨＡ0-3及びローアドレスＬＡ4-7にて示される番地に格納されているメモリデータを８ビット毎に読み出し、これを比較器２２に供給する。
シリアルパラレル変換回路３０は、シリアル形態にて順次外部から供給されてくる１ワード：２９ビットの入力情報データＤＩ0-28を８ビット単位にてパラレルデータに変換し、この際得られた入力情報データＤ0-7、Ｄ8-15、Ｄ16-23、Ｄ24-28を比較器２２に順次供給する。
【００１４】
比較器２２は、この８ビット単位にて供給された入力情報データと、メモリ２１から読み出されたメモリデータとを比較し、両者が一致していれば論理レベル"０"、不一致であれば論理レベル"１"の比較結果信号ＣＭＰを発生し、これをフラグレジスタ２３に供給する。
フラグレジスタ２３は、インプットセレクタＩＳＥＬ、ＲＳフリップフロップＲ１〜Ｒ１６、並びにアウトプットセレクタＯＳＥＬから構成される。
【００１５】
インプットセレクタＩＳＥＬは、ＲＳフリップフロップＲ１〜Ｒ１６の内から、上記ハイアドレスカウンタ２７から供給されたハイアドレスＨＡ0-3にて示されるＲＳフリップフロップを択一的に選択し、この選択したＲＳフリップフロップのリセット端子Ｒにのみ上記比較結果信号ＣＭＰを供給する。
ＲＳフリップフロップＲ１〜Ｒ１６各々は、一旦、フラグ初期セット信号に応じて全て論理レベル"１"にセットされる。その後、これらＲＳフリップフロップＲ１〜Ｒ１６の内で、論理レベル"１"の比較結果信号ＣＭＰが供給されたものは、その記憶内容が論理レベル"０"にリセットされる。
【００１６】
かかる動作により、フラグレジスタ２３におけるＲＳフリップフロップＲ１〜Ｒ１６各々には、外部供給された入力情報データと、メモリ２１に格納されている１６ワード分のメモリデータ各々との一致結果を示す一致フラグｆ１〜ｆ１６が、図２に示されるが如く格納される。
アウトプットセレクタＯＳＥＬは、これら一致フラグｆ１〜ｆ１６の内から、上記ハイアドレスＨＡ0-3にて示される一致フラグのみを択一的に選択し、この選択した一致フラグを一致信号ＥＱとしてアンドゲート２５に供給する。
【００１７】
ＪＫフリップフロップ２６のＪ端子には論理レベル"１"に対応した電圧が固定供給され、そのクロック入力端にはシステムクロックＳＣＬＫが供給される。かかる構成により、ＪＫフリップフロップ２６は、システムクロックＳＣＬＫの立ち上がりエッジに応じて論理レベル"１"及び"０"の状態が交互に反転するリード信号ＲＤを発生し、これを上記メモリ２１、ハイアドレスカウンタ２７、及びローアドレスカウンタ２８の各々に供給する。尚、かかるＪＫフリップフロップ２６のＫ端子には、上記一致信号ＥＱ及びリード信号ＲＤの論理積をとるアンドゲート２５の出力信号が供給されている。よって、一致信号ＥＱの論理レベルが"０"、すなわち、アウトプットセレクタＯＳＥＬにて選択された一致フラグｆが不一致を示す場合には、ＪＫフリップフロップ２６での上記反転動作は実施されず、論理レベル"１"のリード信号ＲＤが出力されつづける。
【００１８】
次に、図１に示されるデータ一致検出装置によるデータ比較動作について、図３に示される概略動作タイムチャートを参照しつつ説明する。
図３に示されるように、比較器２２は、外部から供給された１ワード：２９ビットの入力情報データＤ0-28と、メモリ２１に格納されている１６ワードのメモリデータ各々との比較を、第１〜第４比較サイクルの如き４段階に分けて実施する。
【００１９】
かかる比較サイクルの開始にあたり、先ず、フラグレジスタ２３内のＲＳフリップフロップＲ１〜Ｒ１６の全てはフラグ初期セットされ、夫々一致状態を示す論理レベル"１"の記憶状態となる。
ハイアドレスカウンタ２７は、第１〜第４比較サイクルの各サイクル内において"０"〜"１５"までのカウント動作を実施し、そのカウント値に基づくハイアドレスＨＡ0-3を発生する。一方、ローアドレスカウンタ２８は、第１〜第４比較サイクルが切り替わる度にそのカウント値を１つだけカウントアップする。すなわち、ローアドレスカウンタ２８は、上記第１〜第４比較サイクル期間に亘って"０"〜"３"までのカウント動作を実施し、そのカウント値に基づくローアドレスＬＡ4-7を発生する。
【００２０】
従って、第１比較サイクルでは、図２に示されるが如くメモリ２１に格納されている第１ワード〜第１６ワード各々の第０〜第７ビットのメモリデータＤ０0-7、Ｄ１0-7、Ｄ２0-7、・・・、ＤＦ0-7が順次読み出される。よって、かかる第１比較サイクルにおいて比較器２２は、外部供給されてくる１ワード分の入力情報データＤ0-28の内のＤ0-7と、これらメモリデータＤ０0-7、Ｄ１0-7、Ｄ２0-7、・・・、ＤＦ0-7各々との比較を順次行う。この際、各ワード毎の比較結果は、フラグレジスタ２３内のＲＳフリップフロップＲ１〜Ｒ１６各々の記憶内容に反映される。すなわち、かかる比較結果が不一致を示す場合には、ＲＳフリップフロップの記憶内容が論理レベル"１"から"０"にリセットされるのである。例えば、上記入力情報データＤ0-7と、メモリ２１に格納されている第１ワードのメモリデータＤ０0-7との比較結果が不一致である場合には、ＲＳフリップフロップＲ１〜Ｒ１６の内のＲ１がリセットされ、その記憶内容は論理レベル"１"から"０"に更新される。尚、比較結果が一致を示す場合には、その記憶内容は更新されない。
【００２１】
次に、第２比較サイクルでは、図２に示されるが如くメモリ２１に格納されている第１ワード〜第１６ワード各々の第８〜第１５ビットのメモリデータＤ０8-15、Ｄ１8-15、Ｄ２8-15、・・・、ＤＦ8-15が順次読み出される。よって、かかる第２比較サイクルにおいて比較器２２は、外部供給されてくる入力情報データＤ0-28の内のＤ8-15と、これらメモリデータＤ０8-15、Ｄ１8-15、Ｄ２8-15、・・・、ＤＦ8-15各々との比較を順次行う。この際、各ワード毎の比較結果は、フラグレジスタ２３内のＲＳフリップフロップＲ１〜Ｒ１６に反映される。すなわち、かかる比較結果が不一致を示す場合には、ＲＳフリップフロップの記憶内容が論理レベル"０"にリセットされるのである。尚、ＲＳフリップフロップＲ１〜Ｒ１６の内、既にその記憶内容が不一致を示す論理レベル"０"となっているものに対しては、その記憶内容の更新は生じない。
【００２２】
次に、第３比較サイクルでは、図２に示されるが如くメモリ２１に格納されている第１ワード〜第１６ワード各々の第１６〜第２３ビットのメモリデータＤ０16-23、Ｄ１16-23、Ｄ２16-23、・・・、ＤＦ16-23が順次読み出される。よって、かかる第３比較サイクルにおいて比較器２２は、外部供給されてくる入力情報データＤ0-28の内のＤ16-23と、これらメモリデータＤ０16-23、Ｄ１16-23、Ｄ２16-23、・・・、ＤＦ16-23各々との比較を順次行う。この際、各ワード毎の比較結果は、フラグレジスタ２３内のＲＳフリップフロップＲ１〜Ｒ１６に反映される。すなわち、かかる比較結果が不一致を示す場合には、ＲＳフリップフロップの記憶内容が論理レベル"０"にリセットされるのである。尚、ＲＳフリップフロップＲ１〜Ｒ１６の内、既にその一致フラグの内容が不一致を示す論理レベル"０"となっているものは、その記憶内容は更新されない。
【００２３】
最後に、第４比較サイクルでは、図２に示されるが如くメモリ２１に格納されている第１ワード〜第１６ワード各々の第２４〜第２８ビットのメモリデータＤ０24-28、Ｄ１24-28、Ｄ２24-28、・・・、ＤＦ24-28が順次読み出される。よって、かかる第４比較サイクルにおいて比較器２２は、外部供給されてくる入力情報データＤ0-28の内のＤ24-28と、これらメモリデータＤ０24-28、Ｄ１24-28、Ｄ２24-28、・・・、ＤＦ24-28各々との比較を順次行う。この際、各ワード毎の比較結果は、フラグレジスタ２３内のＲＳフリップフロップＲ１〜Ｒ１６に反映される。すなわち、かかる比較結果が不一致を示す場合には、ＲＳフリップフロップの記憶内容が論理レベル"０"にリセットされるのである。尚、ＲＳフリップフロップＲ１〜Ｒ１６の内、既にその一致フラグの内容が不一致を示す論理レベル"０"となっているものは、その記憶内容は更新されない。
【００２４】
これら第１〜第４比較サイクルの実行が終了した後、ＲＳフリップフロップＲ１〜Ｒ１６各々の記憶内容を一致フラグｆ１〜ｆ１６として読み出す。かかる一致フラグｆ１〜ｆ１６の内容を確認することにより、外部供給された入力情報データＤ0-28が、図２に示されるようにメモリ２１内に格納されている第１ワード〜第１６ワードのいずれと等しいのかが判断出来るのである。
【００２５】
以上の如く、かかるデータ一致検出装置においては、先ず、外部供給された入力情報データをメモリ２１のアクセス単位（８ビット）毎に複数に分割して、分割入力情報データ（Ｄ0-7、Ｄ8-15、Ｄ16-23、Ｄ24-28）を得る。ここで、かかる分割入力情報データの１つと、メモリに格納されている全てのワード中における上記分割入力情報データのビット桁に対応したデータビット群各々との比較を行い、その比較結果をフラグレジスタの記憶内容（一致フラグ）に反映させる。かかる比較動作を、各分割入力情報データ毎に順次実行して（第１〜第４比較サイクル）、上記フラグレジスタの内容を更新して行く。全ての分割入力情報データに対して上記比較動作が終了すると、そのフラグレジスタの内容が最終的な比較結果を示すものとなるのである。
【００２６】
よって、図１に示されるデータ一致検出装置によれば、シリアル形態にて外部から供給されてくる入力情報データを取得しつつ比較動作を行えるので、入力情報データの全ビットを取得した後に比較動作を行うものに比して、高速にデータ一致検出処理が為されるのである。
更に、かかるデータ一致検出装置においては、一旦、上記フラグレジスタの内容が不一致を示すものとなった場合には、この不一致と判断されたワードに対するメモリ読出を停止して、処理時間の短縮を計るようにしている。
【００２７】
以下に、かかる動作について一例をもって説明する。
図４は、図３に示される第１比較サイクルが終了した際に、フラグレジスタ２３のＲＳフリップフロップＲ１〜Ｒ１６に記憶された内容の一例を示す図である。
図４に示されるように、かかる第１比較サイクルでは、入力情報データＤ0-28の内のＤ0-7と、メモリ２１に格納されているメモリデータＤ０0-7、Ｄ１0-7、Ｄ２0-7、・・・、ＤＦ0-7各々とを比較した結果、第２ワードのみが不一致であると判断されている。この第１比較サイクルが終了すると、次の第２比較サイクルが実行される。
【００２８】
図５は、かかる第２比較サイクル中における第１ワードから第３ワード、すなわち、図３に示される区間Ｔe内で上記データ一致検出装置にて実施される詳細動作タイムチャートを示す図である。
先ず、入力情報データＤ8-15と、メモリ２１に格納されている第１ワードのメモリデータＤ０8-15との比較動作を行うにあたり、この第１ワードに対応したフラグレジスタの内容、すなわちＲＳフリップフロップＲ１の記憶内容を確認する。この際、かかるＲＳフリップフロップＲ１の記憶内容は、図４に示されるように論理レベル"１"であるので、アウトプットセレクタＯＳＥＬは、論理レベル"１"の一致信号ＥＱをアンドゲート２５に供給する。これにより、ＪＫフリップフロップ２６のＪ端子及びＫ端子には共に論理レベル"１"が供給されることになるので、リード信号ＲＤの論理レベルは反転する。すなわち、図５に示されるように、システムクロックＳＣＬＫの立ち上がりエッジ毎に、論理レベル"１"〜"０"〜"１"へと推移するリード信号ＲＤが生成されるのである。この際、リード信号ＲＤが論理レベル"０"となっている期間中に、メモリ２１からは第１ワードのメモリデータＤ０8-15が読み出されて入力情報データＤ8-15との比較動作が実施される。かかるメモリ読み出し後、リード信号ＲＤが論理レベル"１"へと推移すると、ハイアドレスカウンタ２７は、反転システムクロックＳＣＬＫ’の立ち上がりエッジタイミングに応じて１カウントアップを行い、次の第２ワードに対応したハイアドレスＨＡ0-3として、"１"をメモリ２１に供給する。この間、システムクロックＳＣＬＫの２周期分（２Ｔ）を要する。
【００２９】
次に、かかる第２ワードにおけるメモリデータＤ１8-15と、入力情報データＤ8-15との比較動作を行うにあたり、この第２ワードに対応したフラグレジスタの内容、すなわちＲＳフリップフロップＲ２の記憶内容を確認する。この際、かかるＲＳフリップフロップＲ２の記憶内容は、図４に示されるように論理レベル"０"であるので、アウトプットセレクタＯＳＥＬは、論理レベル"０"の一致信号ＥＱをアンドゲート２５に供給する。これにより、ＪＫフリップフロップ２６のＫ端子には論理レベル"０"が供給されることになるので、この間、論理レベル"１"のリード信号ＲＤが生成される。つまり、メモリ２１に対する読み出し動作は実施されないのである。更に、リード信号ＲＤの論理レベルが"１"であるので、ハイアドレスカウンタ２７は、反転システムクロックＳＣＬＫ’の立ち上がりエッジに応じて１カウントアップを行い、次の第３ワードに対応したハイアドレスＨＡ0-3として"２"をメモリ２１に供給する。この間、システムクロックＳＣＬＫの１周期分（１Ｔ）を要する。
【００３０】
次に、かかる第３ワードにおけるメモリデータＤ２8-15と、入力情報データＤ8-15との比較動作を行うにあたり、この第３ワードに対応したフラグレジスタの内容、すなわちＲＳフリップフロップＲ３の記憶内容を確認する。この際、かかるＲＳフリップフロップＲ３の記憶内容は、図４に示されるように論理レベル"１"であるので、アウトプットセレクタＯＳＥＬは、論理レベル"１"の一致信号ＥＱをアンドゲート２５に供給する。これにより、ＪＫフリップフロップ２６のＪ端子及びＫ端子には共に論理レベル"１"が供給されることになるので、リード信号ＲＤの論理レベルは反転する。すなわち、図５に示されるように、システムクロックＳＣＬＫの立ち上がりエッジ毎に、論理レベル"１"〜"０"〜"１"へと推移するリード信号ＲＤが生成されるのである。この際、リード信号ＲＤが論理レベル"０"となっている期間中に、メモリ２１からは第３ワードのメモリデータＤ２8-15が読み出されて入力情報データＤ8-15との比較動作が実施される。
【００３１】
以上の如く、図１に示されるデータ一致検出装置においては、フラグレジスタ２３の内容を参照した結果、１ワード中における一部のデータビット群が不一致であると判定されたら、次回からはこのワードの他のデータビット群に対する読出及び比較動作を省略して、その処理時間を図５に示されるように２Ｔから１Ｔへと短縮するのである。すなわち、１ワード中の一部が既に不一致であると判定されているのならば、他の部分に対する比較を行う必要がないという点に鑑みて、このワードに対する読出を実施しないようにしたのである。
【００３２】
図６は、本発明の他の実施例によるデータ一致検出装置の構成を示す図である。
尚、図６において、ハイアドレスカウンタ２７’、開始値エンコーダ３１、終了値エンコーダ３２、及び比較器３３を除く他の構成は、図１に示されるものと同一であるので、この部分に関する説明は省略する。
【００３３】
開始値エンコーダ３１は、フラグレジスタ２３の記憶内容である一致フラグｆ１〜ｆ１６の内で、最も先頭に存在する論理レベル"１"の一致フラグｆを示す４ビット情報を、カウント開始値ＣＳ0-3としてハイアドレスカウンタ２７’に供給する。尚、図７は、かかる動作を実現する為の開始値エンコーダ３１の真理値表の一例を示す図である。
【００３４】
終了値エンコーダ３２は、フラグレジスタ２３の記憶内容である一致フラグｆ１〜ｆ１６の内で、最も後尾に存在する論理レベル"１"の一致フラグｆを示す４ビット情報を、カウント終了値ＣＥ0-3として比較器３３に供給する。尚、図８は、かかる動作を実現する為の終了値エンコーダ３２の真理値表の一例を示す図である。
【００３５】
比較器３３は、かかるカウント終了値ＣＥ0-3と、ハイアドレスカウンタ２７’から出力されたハイアドレスＨＡ0-3とを比較し、両者が一致していれば論理レベル"１"、不一致であるならば論理レベル"０"のキャリアウト信号ＣＯを、ローアドレスカウンタ２８及びハイアドレスカウンタ２７’に夫々供給する。
ハイアドレスカウンタ２７’は、インバータ２９によってシステムクロックＳＣＬＫを反転して得られた反転システムクロックＳＣＬＫ’の立ち上がりエッジに応じて"０"、"１"、"２"、・・・"１３"、"１４"、"１５"なるカウント動作を繰り返す、いわゆる１６進カウンタである。かかるハイアドレスカウンタ２７’のカウント値は、メモリ２１における８ビットアドレスの内の上位４ビットを示すハイアドレスＨＡ0-3としてメモリ２１及びフラグレジスタ２３に夫々供給される。ハイアドレスカウンタ２７’は、比較器３３から論理レベル"１"のキャリアウト信号ＣＯが供給されると、上記開始値エンコーダ３１からのカウント開始値ＣＳ0-3を取り込んで現カウント値の更新を行う。尚、ハイアドレスカウンタ２７’のカウント動作は、ＪＫフリップフロップ２６から論理レベル"１"のリード信号ＲＤが供給されている間に限られる。
【００３６】
次に、かかる図６に示されるデータ一致検出装置において特徴となる動作について説明する。
尚、図３に示されるが如き第１比較サイクルでの動作は、図１に示される構成でのそれと同様であるので、その説明は省略する。
ここで、かかる第１比較サイクルを実行した結果、フラグレジスタ２３の内容が例えば図９に示されるが如き形態となった場合、開始値エンコーダ３１は、図７の真理値表に示されるように"０、０、１、０"なるカウント開始値ＣＳ0-3をハイアドレスカウンタ２７’に供給する。又、終了値エンコーダ３２は、図８の真理値表に示されるように"１、１、０、１"なるカウント終了値ＣＥ0-3を比較器３３に供給する。
【００３７】
従って、次の第２比較サイクルにおいて、ハイアドレスカウンタ２７’は、そのカウント動作を"２"から開始する。この際、比較器３３には、上述した如く、"１、１、０、１"、なるカウント終了値ＣＥ0-3が供給されている。よって、ハイアドレスカウンタ２７’のカウント値が"１３"となり"１、１、０、１"なるハイアドレスＨＡ0-3が比較器３３に供給されると、比較器３３は、論理レベル"１"のキャリアウト信号ＣＯを発生する。ハイアドレスカウンタ２７’は、かかるキャリアウト信号ＣＯに応じて、開始値エンコーダ３１からのカウント開始値ＣＳ0-3を取り込み、現カウント値の更新を行う。この新たなカウント値から第３比較サイクルが開始される。すなわち、ハイアドレスカウンタ２７’は、第２比較サイクル内おいて、"２"から"１３"までのカウント動作を行うことになる。よって、かかる第２比較サイクルでは、メモリ２１からは第３ワード〜第１４ワード各々に対応したメモリデータＤ２8-15〜ＤＤ8-15が順次読み出され、入力情報データＤ8-15との比較が為されるのである。つまり、第１比較サイクルを実行した直後のフラグレジスタ２３の内容を参照することにより、第１、第２、第１５及び第１６ワードでの比較結果が不一致であるとわかっているので、次の第２比較サイクルでは、これら第１、第２、第１５及び第１６ワードに対する読出・比較動作を行わないようにしたのである。
【００３８】
以上の如く、図６に示されるデータ一致検出装置においては、フラグレジスタ２３の内容を参照することにより、前回の比較サイクルで最初に一致のとれたワード、及び最後に一致の取れたワードを夫々検索し、両者の間にあるワード群のみをデータ比較の対象とするのである。
よって、かかる構成によれば、既に不一致であることが確認されているワードに対する不要なアクセスが無くなるので、図１に示されるデータ一致検出装置の如き、各比較サイクル毎に全ワードに対する比較動作を実施するようにしたものに比して、処理時間を短縮することが出来るのである。
【００３９】
尚、上記実施例においては、１ワード：２９ビットの情報データを扱う場合を例にとって説明したが、１ワードのビット長はかかる２９ビットに限定されるものではない。
又、上記実施例においては、１ワード：２９ビットのデータを、８、８、８、５ビットの如く４分割しているが、この分割形態に限定されるものではない。例えば、５、８、８、８ビットの如き４分割や、あるいは、３、８、８、８、２ビットの如き５分割で実現しても同様に処理時間の短縮を計ることが出来るのである。
【００４０】
更に、メモリ２１における各ワードの格納形態を図２に示したが、これに限定されるものではない。例えば、第１ワードに対応したメモリデータを夫々アドレス[００h]、[１０h]、[２０h]、[３０h]に分割して格納し、第２ワードに対応したメモリデータＤ１0-28を、アドレス[４０h]、[５０h]、[６０h]、[７０h]に夫々分割して格納するようにしても良いのである。
【００４１】
【発明の効果】
以上、詳述したように本発明によるデータ一致検出装置は、メモリに格納されているメモリデータ各々中の一部のデータビット群を順次読み出してから他のデータビット群を順次読み出すメモリ読出制御手段と、このメモリから読み出されたデータビット群とこのデータビット群のメモリデータ中におけるビット桁に対応した情報データ中のビット群とを比較して両者が一致しているか否かを示す比較結果を得る比較手段と、上記メモリデータ各々に対応させてこの比較結果を一致フラグ情報として順次記憶するフラグレジスタとを有し、上記メモリ読出制御手段は、かかる一致フラグ情報が不一致を示す場合にはこの一致フラグ情報に対応したメモリデータ中の他のデータビット群に対する読み出しを行わないようにしている。
【００４２】
よって、例え、比較対象となる情報データのビット長がメモリのアクセス単位よりも長い場合においても、高速にデータの一致検出処理を行うことが可能となるのである。
【図面の簡単な説明】
【図１】本発明によるデータ一致検出装置の構成を示す回路図である。
【図２】メモリ２１におけるメモリデータ格納状態の一例を示す図である。
【図３】本発明のデータ一致検出装置による概略動作タイムチャートを示す図である。
【図４】フラグレジスタ２３の記憶内容の一例を示す図である。
【図５】本発明のデータ一致検出装置による詳細動作タイムチャートを示す図である。
【図６】本発明の他の実施例によるデータ一致検出装置の構成を示す回路図である。
【図７】開始値エンコーダ３１の動作を示す真理値表の一例を示す図である。
【図８】終了値エンコーダ３２の動作を示す真理値表の一例を示す図である。
【図９】フラグレジスタ２３の記憶内容の一例を示す図である。
【主要部分の符号の説明】
２１  メモリ
２２  比較器
２３  フラグレジスタ
２７  ハイアドレスカウンタ
２８  ローアドレスカウンタ
【図１】
0003901340.tif 000002
【図２】
0003901340.tif 000003
【図３】
0003901340.tif 000004
【図４】
0003901340.tif 000005
【図５】
0003901340.tif 000006
【図６】
0003901340.tif 000007
【図７】
0003901340.tif 000008
【図８】
0003901340.tif 000009
【図９】
0003901340.tif 000010