(57)【特許請求の範囲】
【請求項１】
データストリームをフィルタリングする装置であって、
パターンフィールドを格納する第一のメモリバンクと、
イネーブルフィールドを格納する第二のメモリバンクと、
前記イネーブルフィールドの対応する単位に応じて前記パターンフィールドの同じサイズの単位と入力データストリームの単位を比較するコンパレータと、
前記パターンフィールドの対応する単位で前記入力データストリームの一致する単位を前記第一のメモリバンクに書き込む、前記コンパレータと前記第一のメモリバンクとに接続された入力コントローラと、
前記コンパレータと、前記パターンフィールドの単位が全て一致している場合に前記第一のメモリバンクの内容を出力する前記第一のメモリバンクとに接続された出力コントローラと
を備えた、データストリームをフィルタリングする装置。
【請求項２】
前記データストリームは、システム情報テーブルを含む、請求項１記載の装置。
【請求項３】
前記パターンフィールドと前記イネーブルフィールドは、ホストコンピュータによって前記第一のメモリバンクと前記第二のメモリバンクとにそれぞれ書き込まれる、請求項１記載の装置。
【請求項４】
前記単位はビットである、請求項１記載の装置。
【請求項５】
前記単位はバイトである、請求項１記載の装置。
【請求項６】
前記単位はあらゆるサイズのワードである、請求項１記載の装置。
【請求項７】
一致していないさらなる単位は前記入力コントローラによって破棄される、請求項１記載の装置。
【請求項８】
データストリームをフィルタリングする方法であって、
第一のメモリバンクにパターンフィールドを書き込むステップと、
第二のメモリバンクにイネーブルフィールドを書き込むステップと、
前記イネーブルフィールドの対応する単位に応じて前記パターンフィールドの同じサイズの単位と入力データストリームの単位を比較するステップと、
前記パターンフィールドの対応する単位で前記入力データストリームの一致する単位を前記第一のメモリバンクに書き込むステップと、
前記パターンフィールドの単位が全て一致する場合に、前記第一のメモリバンクの内容を出力するステップと
を含む、データストリームをフィルタリングする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、概して情報フィルタに関し、より詳細には、ＨＤＴＶトランスポートデータストリームからシステム情報を抽出するためのフィルタに関するものである。
【０００２】
【従来の技術】
情報フィルタは、データストリームから情報を選択および抽出する必要がある多くの用途で用いられている。抽出された情報は所定のパターンに適合していなければならない。たとえば、情報フィルタは、ＨＤＴＶ（ＭＰＥＧ）データストリームのトランスポートデータストリーム（ＴＳ）からシステム情報を選択および抽出するのに使用される。
【０００３】
図２に、従来技術による典型的な情報フィルタ１００を示す。このフィルタには、三つのメモリバンクが必要である。第一のバンク１１０は、パターンフィールド１１１としてプログラム可能な値を格納する。このパターンフィールドは、ホストコンピュータによって第一のバンクへ書き込むことができる。第二のバンク１２０は、やはりホストによって書き込まれるイネーブルフィールド１２１を格納する。このイネーブルフィールドは、パターンフィールドのイネーブルなビット位置を示す。第三のバンク１３０は、データストリーム１４０からのビットとイネーブルフィールド１２１で選択されたパターンフィールド１１１のビットとが一致する場合に出力されるデータストリーム１４０からのビットを格納する。
【０００４】
イネーブルフィールドで指定されるビットのみを、パターンフィールドのビットと一致させなければならない。全ての入力ビットは第三のメモリバンクに格納され、一致条件を満たす場合に、こうした入力ビットを全て出力することができる。
【０００５】
こうしたマッチングは、イネーブルフィールド１２１に従って、ビットパターン１１１とデータストリーム１４０のビットを比較するコンパレータ１５０によって行われる。比較論理のサイズを最小にし、フィルタ１００の動作速度を上げるために、入力データストリームは、通常、パターンフィールドに対しシリアルにまたは適宜シリアル／パラレルのフォーマットで比較される。すなわち、一度に８ビット（１バイト）単位で比較が行われる。
【０００６】
【発明が解決しようとする課題】
データストリームが一致パターンを含む場合、ライン１５１における一致された信号によって、出力コントローラ１６０は、第三のメモリバンクの内容を出力する。この出力１６１とは、抽出されたシステム情報である。フィルタ１００のパターンフィールドが１ビットの最低単位（resolution）で十分にプログラム可能である場合、三つのメモリバンクは全て、少なくともパターンフィールドのサイズと等しくなくてはならない。これにより、こうしたタイプのフィルタリングはメモリ要求の大きいアプリケーションとなってしまう。データストリームのフィルタリング中に使われるメモリ量を低減することが望まれている。
【０００７】
【課題を解決するための手段】
本発明は、データストリームフィルタを提供する。このフィルタは、パターンフィールドを格納する第一のメモリバンクと、イネーブルフィールドを格納する第二のメモリバンクとを含む。
【０００８】
コンパレータは、イネーブルフィールドの対応する単位によって、パターンフィールドの同一の大きさの単位と入力データストリームの単位を比較する。
【０００９】
コンパレータと第一のメモリバンクとに結合された入力コントローラは、パターンフィールドの対応する単位で入力データストリームの一致する単位を書き込む。
【００１０】
入力コントローラは、コンパレータと第一のメモリバンクとに結合され、パターンフィールドの全ての単位が一致した場合に第一のメモリの内容を出力する。
【００１１】
本発明の一態様において、データストリームはシステムテーブルを含み、単位は８ビットである。
【００１２】
【発明の実施の形態】
実施の形態１．
図１は、本発明による情報フィルタ２００を示している。第一のメモリバンク２１０は、パターンフィールド２１１としてプログラム可能な値を格納する。このパターンフィールドは、ホストコンピュータによって第一のメモリバンクへ書き込むことができる。第二のメモリバンク２２０は、やはりホストによって書き込まれるイネーブルフィールド２２１を格納する。このイネーブルフィールドは、パターンフィールドのイネーブルなビット位置を示す。データストリーム２４０のビットは、ビットパターンおよびイネーブルフィールドによってコンパレータ２５０によってマッチングが行われる。この比較はあらゆるサイズのビット、バイト、またはワード毎に行うことができる。
【００１３】
本発明のフィルタ２００は、二つしかメモリバンクを必要としない。これにより、比較対象となる従来技術による情報フィルタ１００と比較して三分の一のメモリを節約することができる。このメモリの節約は次のようにして行われる。
【００１４】
入力データストリーム２４０の各単位、たとえば、ビット、バイト、またはワードは、イネーブルフィールドに従って、パターンフィールドの対応する単位と比較される。必要なフィールドが全て一致した場合、データストリームのこの単位は、入力コントローラ２７０によって第一のメモリバンクのパターンフィールドの対応する単位で上書きされる。こうした上書きは、プログラムされたビットが全てすでに一致しており同じであるため、プログラムされたパターンフィールドに変更を生じさせない。一致していない単位は、フィルタリング条件に適合していないために破棄することができる。
【００１５】
データストリーム２４０が全パターンフィールドの一致ビットを含む場合、ライン２５１上の一致された信号により、出力コントローラ２６０は第一のメモリバンクの内容を出力する。出力２６１は抽出されたシステム情報である。
【００１６】
応用例
ＭＰＥＧ２−７データストリームでは、システム情報（ＳＩ）テーブルのヘッダーは１１２ビット（１４バイト）でエンコードされ、プログラム可能なパターンでこのセクションをテストすることが望ましい。したがって、イネーブルフィールドおよびパターンフィールドも１１２ビットである。バイト長コンパレータ２５０で実行される上述した技術を利用して、データストリームのバイトを、マッチ上の第一のメモリバンクのパターンフィールドの対応する単位に書き込まれる。フィルタリングサイクル中のビットが全て一致する場合、第一のメモリバンク２１０の全内容は１フィルタにつき１４バイトをセーブする一致データ２６１として出力される。一致したＳＩテーブルの次のデータは、フィルタリングせずに出力されるよう、受け渡しが行われる。
【００１７】
様々なその他の適用例および修正例を本発明の精神および範囲内で行うことが可能であることを理解すべきである。したがって、添付されている特許請求の範囲の目的は、本発明の真の精神および範囲内において実施されるこのような変形例および修正例を網羅することである。
【図面の簡単な説明】
【図１】  本発明によるデータフィルタのブロック図である。
【図２】  従来技術によるデータストリームフィルタのブロック図である。
【符号の説明】
２１０  第一のメモリバンク、２２１  イネーブルフィールド、２２０  第二のメモリバンク、２１１  パターンフィールド、２４０  データストリーム、２５０  ビット長コンパレータ、２６０  出力コントローラ、２６１  データ出力、２７０  入力コントローラ。
【図１】
0004517213.tif 000002
【図２】
0004517213.tif 000003