(57)【要約】この発明は、電気通信データセル内部のビットストリングを分析及び確認するのに適した集積回路を生成するためのモジュール（１０）、このようなモジュール及び生成し得る集積回路の構造及び特性を規定するための方法、並びにこのようなモジュール（１０）により得ることができる集積回路に関する。パーサーと称するモジュール（１０）はパラメトリックであり、その特性ゆえに多くのプロトコルに対してパーサー回路を生成することを可能にする。また、このモジュール（１０）は、モジュールＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）によりプログラマブルパーサー回路を生成すること、及びいくつかの分析及び確認デバイスを生成できるモジュールＬＯＧＩＣ＿ＯＰＥＲ（２２）により電気通信データセル内部のビットストリング分析を並列に実行することをも可能にする。
2004505381.tif 000002
【特許請求の範囲】
【請求項１】
データセル内部のビットストリングを分析するための回路を生成し且つコンピュータによりシリコン上でコンパイル可能なモジュール（１０）であって、
−　データセルの管理手段（１５、１６）であって、可変幅のデータセルを管理すべくパラメトリックに構成可能であり、かつ、電気通信データセルストリームを管理するのに適する管理回路要素を代表した前記手段（１５、１６）、
−　パラメトリックに構成可能であり、かつ、少なくとも１つのプログラマブル命令を記憶するのに適した記憶回路要素を代表したメモリ手段（１２）であって、前記プログラマブル命令は、前記管理回路要素により管理されるデータセル内部のビットストリングの前記分析を調節する前記メモリ手段（１２）、及び
−　所定のパラメータのシナリオにより前記管理手段（１５、１６）及びメモリ手段（１２）を構成するのに適したシナリオ手段、
を含み、これにより、シリコン上でコンパイルされる前記モジュールが、プログラマブルな仕方にて電気通信データセル内部のビットストリングを分析するための回路を生成するのに適している上記モジュール（１０）。
【請求項２】
パラメトリックに構成可能であり且つ１とプリセット数ｎの間の最大数の分析回路要素を代表した分析手段（２２）であって、前記分析回路要素は、同時に起動できかつ少なくとも一つのプログラマブル命令により調節できる前記分析手段（２２）をさらに含む、請求項１記載のモジュール。
【請求項３】
前記メモリ手段（１２）が、前記記憶回路要素の幅を規定するのに適した幅パラメータを含むことを特徴とする請求項１又は２に記載のモジュール。
【請求項４】
前記メモリ手段（１２）が、記憶回路要素の最大数を規定するのに適した深さパラメータを含み、該記憶回路要素は、対応する最大数のプログラマブル命令を記憶するのに適することを特徴とする請求項１、２又は３に記載のモジュール。
【請求項５】
データセル内部のビットストリングを分析するのに適した回路を実現する方法であって、
Ａ］−　コンピュータにより翻訳可能なプログラミング言語により、可変幅のデータセルを管理する命令ブロック（１５、１６）を開発及び記述する工程（３００）であって、前記命令ブロックは、パラメトリックであり、かつ、電気通信データセルストリームを管理するのに適した回路要素を代表する前記工程（３００）、
Ｂ］−　命令を記憶する命令ブロック（１２）を前記言語により開発及び記述する工程（３００）であって、前記命令ブロックは、パラメトリックであり、かつ、データセル内の前記ビットストリング分析を調節する少なくとも１つのプログラマブル命令を記憶するのに適した記憶回路要素を代表する前記工程（３００）、
Ｃ］−　所定のパラメータのシナリオを前記ブロックの属性とすることにより、開発及び記述された前記ブロックを特化する工程（４００）、
Ｄ］−　プログラマブルな仕方にて電気通信データセル内部のビットストリングを分析するのに適した所定回路を得るために、前記コンピュータにより前記特化されたブロックをシリコン上でコンパイルする工程（６００、７００）、
を含む上記方法。
【請求項６】
Ｅ］　分析するための命令ブロック（２２）を前記言語により開発及び記述する工程（３００）であって、前記命令ブロック（２２）は、パラメトリックであり、かつ、１とプリセット数ｎとの間に含まれる最大数の分析回路要素を代表し、該分析回路要素は、同時に起動できかつ少なくとも一つのプログラマブル命令により調節できてデータセル内部のビットストリングを分析する前記工程（３００）
をさらに含むことを特徴とする請求項５記載の方法。
【請求項７】
前記工程Ｂ］が、
−　プリセット値の範囲内で可変の幅により前記プログラマブル命令の大きさを定める工程、
をさらに含むことを特徴とする請求項５又は６に記載の方法。
【請求項８】
前記工程Ｂ］が、
−　対応するプログラマブル命令を記憶するのに適した回路要素の最大数の大きさを定める工程、
をさらに含むことを特徴とする請求項５、６又は７に記載の方法。
【請求項９】
データセル内部のビットストリングを分析するための集積回路であって、
−　電気通信データセルの入力ストリームを管理するのに適した管理回路要素、−　前記入力データセル内部のビットストリングを選択的に分析するのに適した分析回路要素、
を含み、
−　前記分析要素を調節する少なくとも一つのプログラミング命令を記憶するのに適した記憶回路要素、及び
−　前記回路と共働して少なくとも一つのプログラミング命令を選択的に決めて前記記憶回路要素中に記憶する手段を設けること、
を特徴とする上記集積回路。
【請求項１０】
前記分析回路要素が、前記データセル内部のいくつかのビットストリングを同時に分析するのに適していることを特徴とする請求項９記載の集積回路。
【請求項１１】
プログラマブル型の集積装置に構成されることを特徴とする請求項９又は１０に記載の集積回路。
【発明の詳細な説明】
【０００１】
技術分野
この発明は、データセル内部のビットストリングを分析するための回路を生成するモジュール、この種の回路を生成する方法、及びその関連回路に関する。特に、本発明は、電気通信データセル内部のビットストリングを分析及び確認するのに適した集積回路を生成するためのモジュール、このようなモジュール及び生成し得る回路の構造及び特性を規定するための方法、並びにこのようなモジュールにより得ることができる集積回路に関する。
【０００２】
背景技術
例えば超高速集積回路ハードウエア記述言語（Ｖｅｒｙ Ｈｉｇｈ Ｓｐｅｅｄ Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ Ｈａｒｄｗａｒｅ Ｄｅｓｃｒｉｐｔｉｏｎ Ｌａｎｇｕａｇｅ）（ＶＨＤＬ）のような高水準記述言語を用いることによる集積回路の設計は、公知の技術である。高水準言語により定められた特性を有する集積コンポーネントは、このような設計技術によるＶＨＤＬ記述から適当なシリコンコンパイラーを用いることにより得ることができる。
【０００３】
また、事前に規定された機能のＶＨＤＬ記述はモジュールライブラリ（知的財産又はＩＰライブラリという。）を生成できることも知られている。これにより、例えばシステム・オン・チップ（ＳＯＣ）のような非常に複雑な電子回路の実現が可能になる。
【０００４】
ＩＰライブラリモジュールは、いくつかの電子回路の設計に使用するのに適しているという特殊な特徴を有する。というのは、それらは、シリコン上でのコンパイルの前に、設計段階中に事前規定された変数又はパラメータに所与の値を付与することにより、インターフェースパラメータに関して他の電子装置又はモジュールで「特化」し得るからである。
【０００５】
データセル内部の１以上のビットストリングの存在を分析するための電気通信ＩＰモジュール及び対応回路について、本発明の目的のため参考として考える。この種類のモジュール及び対応する回路（以下「パーサー」という。）は、確認情報を個々のセルに関連付けることによりデータセルを確認するのに適し、また、出力データが入力データと同一であるという意味において、データセルストリームに対してトランスペアレントである。
【０００６】
一般に、モジュール及びそれらに対応するパーサー回路は、ＭＰＥＧＩＩ、ＤＥＣＴなどのような種々の電気通信プロトコルに対する分析及び確認ツールとして使用される。ＭＰＥＧＩＩトランスポートストリームプロトコルのデータセルは、例えば以下の情報を含まなければならない。すなわち、
−　第１バイト（位置０）にてバイナリストリング　０１００　０１１１　（ＨＥＸ４７）；
−　第２バイト（位置１）の最後の５ビットにおいてパケット識別子（ＰＩＤ）の第１部分；及び
−　第３バイト（位置２）においてＰＩＤの第２部分。
【０００７】
ＭＰＥＧＩＩトランスポートストリームプロトコルに対するパーサー回路の機能は、データセル内部で、
−　第１コントロールで第１バイト上すなわち位置０上での値ＨＥＸ４７；
−　第２コントロールで第２バイトの最後の５ビットにおけるＰＩＤの第１部分の内容；及び
−　第３コントロールで第３バイト上又は位置２上でのＰＩＤの第２部分の内容；
を識別することであり得る。
【０００８】
もちろん、上述の動作シーケンスは、同じプロトコル内部の他の情報、又は異なるプロトコル内の同様の情報を識別するのに要するものとは異なる。従って、公知のパーサーモジュールは、一種類のみのプロトコルを分析しかつ事前規定された１つの機能のみを実行するのに適した回路を得るべくシリコン上で特化されるように一般的に記述される。
【０００９】
換言すれば、公知のパーサーモジュールは、機能及びプロトコルに対して堅固に接続する（又は「配線する」）のに適する。シリコン上でのコンパイル後、公知のパーサーモジュールは、例えば所定のプロトコルのデータセルのうちの事前規定されたワードの中の明確に規定されたフィールドについて等価物により一つの制御のみを実行するのに適した回路を実現可能にできる。
【００１０】
本質的に、公知のパーサーモジュールは、特に電気通信分野に対して厳しい制限を課する。というのは、
−　　それらは、一種類のみの機能を実行するのに適した回路を得るためにシリコン上でコンパイルされ得ること、及び
−　一種類のみのプロトコルを管理するのに適した回路を得るためにシリコン上でコンパイルされ得ること、
からである。
【００１１】
複数の確認機能に対して同じプロトコルで使用できるパーサー回路を生成するためのモジュールの入手可能性は、もちろん有益である。これらの確認機能は、仕様の変更又はメンテナンスの理由ゆえに異なるか又は変えられ得るものである。
【００１２】
また、異なる種類のプロトコルに対して同じパーサー回路を使用できることも非常に重要となる。
【００１３】
しかしながら、上述の制限は、公知のパーサーモジュールにより克服できるが、同じプロトコルで異なる機能を実行するには、又は異なるプロトコルで同じ機能を実行するには、電子システムにおいて様々な種類のパーサー回路を使用する必要がある。
【００１４】
発明の開示
本発明の目的は、異なる機能及びプロトコルで使用するのに適した柔軟なパーサー集積回路を得るような、柔軟なパーサーモジュールを記述するための方法論を示すことである。
【００１５】
この目的に従い、本発明は、請求項１に記載のようなパーサーモジュール、請求項５に記載のようなこのような回路を生成するための方法及び請求項９に記載のようなパーサー回路を提案する。
【００１６】
本発明によるパーサーモジュールは、パラメトリックであること、及び様々な種類のプロトコルに適応できるプログラマブル回路を生成させ得ることの利点を有する。
【００１７】
本発明による方法の利点は、広範囲の電気通信パーサーを本質的に生成できること、及び従ってＳＯＣ又は電子回路を作るためのＩＰライブラリにおいてこの種類のモジュールを規定するための理想的なツールを与えることにある。
【００１８】
本発明によるパーサー回路は、制御ユニットにより時々プログラマブルであること、及び従って同じプロトコルで異なる機能を、又は異なるプロトコルで同様の機能を選択的に管理するのに適していることの利点を有する。
【００１９】
本発明のこの特徴及び他の特徴は、添付図面の支持のもと非制限的な例として与えられている好ましい実施態様についての以下の記載により明瞭にされる。
【００２０】
発明を実施するための最良モード
図１は、本発明によるパラメトリックなパーサーモジュール及び関連のプログラマブルパーサー回路についての設計のフロー図を示す。
【００２１】
第１の工程１００では、パーサー回路の一般的な仕様を規定し、特に、例えば様々な電気通信プロトコル及びこのようなプロトコルのデータストリングについて可能な分析の様々な種類を調べる。
【００２２】
工程１００が完了すると、パーサーモジュール１０の一般的なアーキテクチャーが本発明により生成される（図１及び図２）。このモジュールのアーキテクチャーについては後に説明する。このようなアーキテクチャーにより、パーサーモジュール１０は、プログラマブルモジュール（ＲＥＧＦＩＬＥ＿２ＯＵＴ）１２及び第１インターフェースモジュール（ＭＰＩ＿ＭＥＭ＿ＡＤＡＰＴ）１１を含む。この第１インターフェースモジュール（ＭＰＩ＿ＭＥＭ＿ＡＤＡＰＴ）１１は、公知の種類のものであり、プログラミング命令チャネル（バス３１ｂ）によりＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）に接続し、公知の種類の外部の中央演算装置（ＣＰＵ）３０とＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）自体との間のデータ交換を適合化するのに適する。
【００２３】
後に詳細に説明するように、ＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）は、バス３１ｂと同じ幅のバス３１ａを介してＣＰＵ３０により転送されたプログラミング命令をいくつかのレジスタに記憶し、記憶後にこれらのプログラミング命令をＣＰＵ３０に再転送して受信した命令と記憶したものとの一貫性を検査するのに適する。
【００２４】
また、パーサーモジュール１０は、公知の種類の入力データモジュール（ＤＡＴＡ＿ＣＯＵＮＴ）１６と第２インターフェースモジュール（ＳＰＥＥＤ＿ＤＥＣＯＵＰＬＥＲ）１５も含む。この第２インターフェースモジュール（ＳＰＥＥＤ＿ＤＥＣＯＵＰＬＥＲ）１５は、公知の種類のものであり、入力データ周波数の少なくとも２倍の周波数を有する同期信号又はクロックを用いることにより、バス３５上の入力データストリームとＤＡＴＡ＿ＣＯＵＮＴ（１６）の同期を維持するのに適する。
【００２５】
公知の種類のＤＡＴＡ＿ＣＯＵＮＴ（１６）は、入力データセルのストリームを制御下に保つこと、及びアドレスチャネル３６によりアドレスをＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）のレジスタに伝送することの両方に適し、それにより、ＤＡＴＡ＿ＣＯＵＮＴ（１６）によりＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）に伝送されたアドレス（ＡＤＤＲＥＳＳ）に基づいて、ＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）のレジスタ内部に記憶されたプログラミング命令が、所与のデータセルのビットストリングに実行される。
【００２６】
さらに説明すると、ＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）上へのＣＰＵ３０による書き込みは、プログラミングバス３１ｂの幅を考慮した初期アドレス指定を用いることにより実行され、一方、ＤＡＴＡ＿ＣＯＵＮＴは、一般にプログラミングバス３１ｂよりも広い幅の全体のプログラミング命令を考慮した第２アドレス指定を用いる。
【００２７】
従って、ＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）は、２つのアドレス指定モードを特徴とするモジュールである。すなわち、最初のものは、プログラミングバス３１ｂに一致しており、第２のものは、後に詳しく説明するように完全なプログラミング命令の幅に一致したものである。
【００２８】
また、パーサーモジュール１０の一般的なアーキテクチャーは、１以上の分析モジュール（ＬＯＧＩＣ＿ＯＰＥＲ）２２をも含み、そのうちの３つ、すなわちＤＡＴＡ＿ＣＯＵＮＴ（１６）とＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）に接続したＬＯＧＩＣ＿ＯＰＥＲ１（２２ａ）、ＬＯＧＩＣ＿ＯＰＥＲ２（２２ｂ）及びＬＯＧＩＣ＿ＯＰＥＲ３（２２ｃ）が例において示される。
【００２９】
後に詳細に説明するように、各ＬＯＧＩＣ＿ＯＰＥＲ１−３（２２ａ、２２ｂ、２２ｃ）は、ＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）に記憶したプログラミング命令に基づいてＤＡＴＡ＿ＣＯＵＮＴ（１６）から入力したデータストリングの分析を行うのに適する。
【００３０】
また、パーサーモジュール１０は、ＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）とＬＯＧＩＣ＿ＯＰＥＲ（２２）モジュールの間に挿入した公知の種類の命令スプリッターモジュール（ＩＮＳＴ＿ＳＰＬＩＴＴＥＲ）１８をも含む。この命令スプリッターモジュール（ＩＮＳＴ＿ＳＰＬＩＴＴＥＲ）１８は、後に詳しく説明するように、データセルのビットストリングに適用される対応するプログラミング命令をＬＯＧＩＣ＿ＯＰＥＲ（２２）に分配するのに適する。
【００３１】
また、ＩＮＳＴＲ＿ＳＰＬＩＴＴＥＲ（１８）は、ビットストリング位置を指すデータチャネル（位置バス）３８によりＤＡＴＡ＿ＣＯＵＮＴ（１６）にも接続されており、位置バス３８を用いてデータセルのビットストリング位置（ＰＯＳＩＴＩＯＮ）を伝送して分析するのに適する。
【００３２】
最後に、パーサーモジュール１０は、状態機械ユニットとして動作する公知の種類の状態機械モジュール（ＰＡＲＳＥＲ＿ＣＴＲＬ）２８を含む。この状態機械モジュール（ＰＡＲＳＥＲ＿ＣＴＲＬ）２８は、ＤＡＴＡ＿ＣＯＵＮＴ（１６）からデータ、及び対応するＬＯＧＩＣ＿ＯＰＥＲ１（２２ａ）、ＬＯＧＩＣ＿ＯＰＥＲ２（２２ｂ）、ＬＯＧＩＣ＿ＯＰＥＲ３（２２ｃ）から制御信号グループ（それぞれＯＰＥＲ＿ＯＵＴ１、ＯＰＥＲ＿ＯＵＴ２、ＯＰＥＲ＿ＯＵＴ３）の両方を入力にて受けること、並びに上記データ及びデータセルストリングに行った分析結果を示すＳＥＴ＿ＯＵＴ信号グループを該データに同期してトランスペアレントに出力することに適する。
【００３３】
パーサーモジュール１０のアーキテクチャーを定めた後、第２工程では、プログラム可能性（ｐｒｏｇｒａｍｍａｂｉｌｉｔｙ）の程度を定める（図１及び図２）。この工程２００は、本発明の特徴的な要素の一つであり、いわゆる包括的パラメータ（ｇｅｎｅｒｉｃ ｐａｒａｍｅｔｅｒｓ）を識別及び規定することを目標とする。このようなパラメータは、１つのパーサーモジュール１０からいくつかのパーサー回路を得ることを可能にし、また、本発明によりパーサーモジュール１０から得られた１つのパーサー回路が同一又は異なるプロトコルについて異なる分析を行うことを可能にする。
【００３４】
本質的に、工程２００では、包括的パラメータ（ジェネリックス（ｇｅｎｅｒｉｃｓ））及びこのようなジェネリックスが有し得る可能な値を定める。従って、いくつかのパーサー回路が、例えばＶＨＤＬ言語での１つの記述から得ることができる。この工程は、ＩＰライブラリにおける使用のためにパーサーモジュール１０の全体の柔軟性を規定することを目標とするので、本発明には不可欠である。
【００３５】
下の第１表は、上述した本発明に重要な柔軟性を規定するジェネリックスを列挙したものである。
2004505381.tif 000003
第１表
【００３６】
さらに説明すると、プログラミング命令の幅（ビット数）は包括的パラメータにより規定されないことが強調されるべきである。というのは、ＭＡＸ＿ＰＲＯＧ＿ＷＯＲＤＳと同様に、それが前記数及びプログラミング命令を確立するパラメータのサイズ（ビット数）に依存するからである。
【００３７】
本発明のさらなる特徴的要素である第３工程３００において、パーサーモジュール１０を作る個々のモジュールが、例えばＶＨＤＬ言語にて開発及び記述される。完全のため、この記述は、本発明を実現するのに重要なモジュールのソース、及び一般に公知な種類のモジュールのリストを含む。特に、重要なモジュールのソースであるいわゆる「ＥＮＴＩＴＹ」、「ＡＲＣＨＩＴＥＣＴＵＲＥ」及び「ＩＮＳＴＡＮＴＩＡＴＥＤ」が与えられているが、これらの用語は、ＶＨＤＬ言語でモジュールを記述するのに用いる形式を知っている技術者には確実に知られている。
【００３８】
【表１】
2004505381.tif 000004
【表２】
2004505381.tif 000005
【表３】
2004505381.tif 000006
【表４】
2004505381.tif 000007
【表５】
2004505381.tif 000008
【００３９】
当該分野の専門家なら上記リストアップしたＲＥＧＦＩＬＥ＿２ＯＵＴのソースから容易に分かるように、３つの「ＩＮＳＴＡＮＴＩＡＴＥＤ」、「ＥＮＴＩＴＹ」及び「ＡＲＣＨＩＴＥＣＴＵＲＥ」モジュールは、太字で書いたコメントにより示されているように、包括的パラメータ、離散的な論理関数、接続、プログラマブルレジスタブロック、及びＤＡＴＡ＿ＣＯＵＮＴ（１６）によりアドレス指定されるときＩＮＳＴＲ＿ＳＰＬＩＴＴＥＲ（１８）にレジスタ内容を書き込むため、又はＣＰＵ３０がＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）上に書き込んだ内容をチェックするためにＭＰＩ＿ＭＥＭ＿ＡＤＡＰＴ（１１）によりＣＰＵ３０上に書き込むためのＲＥＧＦＩＬＥ＿２ＯＵＴ（１２）の代替の読み出し／書き込み機能（マルチプレクサー）の規定を可能にする。
【００４０】
【表６】
2004505381.tif 000009
【表７】
2004505381.tif 000010
【表８】
2004505381.tif 000011
【表９】
2004505381.tif 000012
【００４１】
当該分野の専門家ならば上記リストアップしたＬＯＧＩＣ＿ＯＰＥＲのソースから容易に分かるように、３つの「ＩＮＳＴＡＮＴＩＡＴＥＤ」、「ＥＮＴＩＴＹ」及び「ＡＲＣＨＩＴＥＣＴＵＲＥ」モジュールは、太字で書いたコメントにより示されるように、包括的パラメータ、論理関数及び接続の規定を可能にする。特に、「ＬＯＧＩＣ＿ＯＰＥＲ　ＩＮＳＴＡＮＴＩＡＴＥＤ」は、合成により得ることができるＬＯＧＩＣ＿ＯＰＥＲ（２２）モジュールに対応する回路要素の数をＭＡＸ＿ＯＰＥＲパラメータにより規定することを可能にする。加えて、「ＬＯＧＩＣ＿ＯＰＥＲ　ＡＲＣＨＩＴＥＣＴＵＲＥ」は、セクション「ＤＥＳＣＲＩＰＴＩＯＮ ＯＦ ＣＯＭＢＩＮＡＴＯＲＹ ＦＵＮＣＴＩＯＮＳ ＡＮＤ ＡＳＳＯＣＩＡＴＩＯＮＳ ＯＦ ＳＩＧＮＡＬＳ ＴＨＡＴ ＷＩＬＬ ＢＥ ＩＭＰＬＥＭＥＮＴＥＤ ＷＩＴＨ ＤＩＳＣＲＥＴＥ ＬＯＧＩＣ ＯＲ ＤＩＲＥＣＴ ＣＯＮＮＥＣＴＩＯＮ」においてＬＯＧＩＣ＿ＯＰＥＲ（２２）モジュールがデータセルのビットストリングについて完了するのに適しているようなプログラマブル論理関数の規定を可能にする。このような関数を下の第２表に例としてリストアップする。
【００４２】
2004505381.tif 000013
第２表
【００４３】
モジュールＭＰＩ＿ＭＥＭ＿ＡＤＡＰＴ（１１）、ＳＰＥＥＤ＿ＤＥＣＯＵＰＬＥＲ（１５）、ＤＡＴＡ＿ＣＯＵＮＴ（１６）、ＩＮＳＴＲ＿ＳＰＬＩＴＴＥＲ（１８）及びＰＡＲＳＥＲ＿ＣＴＲＬ（２８）についてのソースは、本発明の特徴を表さない一般に公知のモジュールであり、当該分野の専門家の知識に基づいて容易に実現できるので記載していない。
【００４４】
パーサーモジュール１０の種々のモジュールは、例えば第１表に挙げた値に従って所与のパラメータグループ（パラメータのシナリオ（ｓｃｅｎａｒｉｏ））により第４工程４００において特化する。このようなシナリオを反復して変え、可能なシナリオの数と同数の論理シミュレーションを実行する。
【００４５】
第５工程５００では、前に定めた各シナリオに対してゼロ（０）遅延の論理シミュレーションを実行する。この論理シミュレーションは、例えばＳＹＮＯＰＳＩＳ　ＶＳＳのような市販のプログラムにより実行できる。モジュール及び／若しくはパラメータ又は一定のエラーを補正するために、この工程５００中ではリサイクリングが可能である。肯定的な工程完了にて、パーサーモジュール１０に対して全ての可能なパラメータシナリオについての０遅延論理シミュレーションが終わる。
【００４６】
第６工程６００では、所与のパーサー回路を実現することを目的とするようなパラメータの所定のシナリオを用いて、例えばＳＹＮＯＰＳＹＳデザインアナライザープログラムにより、初期コンパイルを実行する。当該分野の専門家ならば容易に理解できるように、工程６００ではリサイクリングも可能であり、なんらかのモジュール及び／若しくはパラメータ又は一定の補正を要する場合がある。
【００４７】
第７工程７００中、例えばＳＹＮＯＰＳＹＳデザインアナライザープログラムをさらに使用して論理最適化を行う。また、パーサー回路の物理レイアウトを定めるのに適した実際の合成コンパイルを得るべくコンパイルされたモジュールに対して、物理コンポーネントのライブラリが「マップ」される。当該分野の専門家なら知っているように、工程７００の出力は、コンパイルされたモジュールに「マップ」された物理ライブラリのベンダーにて当然入手可能ないわゆるフル・カスタム集積回路を物理的に実現する（工程８００）のに必要な情報、又は別法として、例えばフィールドプログラマブルゲートアレイ（ＦＰＧＡ）型コンポーネントのようなプログラマブルコンポーネントを物理的にプログラミングする（工程９００）のに必要な情報であり得る。
【００４８】
従って、１以上のプロトコルに異なる分析機能を実行するのに適したいくつかのプログラマブルパーサー回路が、記載したフロー図により、記載したアーキテクチャーによるパーサー１０モジュールを用いかつ所与のパラメータのシナリオでモジュールを特化することにより、本発明にて得ることができる。
【００４９】
記載したフローによって得られるパーサー回路の動作を後で例として説明するが、これは、ＭＰＥＧトランスポートストリームセルを分析して、交互に、
−　ＰＩＤを制御及び識別し、これらのプロトコルに対するさらに重要なパラメータたるプログラム・クロック・レファレンス（ＰＣＲ）を抽出し；
−　ＰＩＤを制御及び識別する。
【００５０】
ＭＰＥＧＩＩトランスポートストリームセルは、最初の３ビットストリング中に有意なＰＩＤ認識データを含み、第４から第１２までのビットストリングに有意なＰＣＲ認識データを含むことを特徴とする（図３ａ）。特に、ストリング０は固定したコード４７ＨＥＸを、ストリング１及び２はＰＩＤを、ストリング３〜１１はＰＣＲを含む。ＰＩＤとＰＣＲの両方を識別及び確認するために、記載のフローに従いかつＭＰＥＧＩＩトランスポートストリームセルを分析すべく所与のパラメータシナリオを適用することにより得られたパーサー回路は、ＭＰＥＧＩＩトランスポートストリームセルの最初の１２個の８ビットストリングを分析しなければならず、従って、１２のプログラミング命令を含まなければならず（図３ａ及び図３ｂ）、その幅は後に詳細に説明するように３２ビットである。このような命令の幅は、プロトコルに対して認識されたパラメータシナリオに依存し、もちろん、適用されるシナリオ及び合成により得られるパーサー回路に従って変わり得る。
【００５１】
ＭＰＥＧＩＩトランスポートストリームの分析のためのパーサー回路の場合、各プログラミング命令は、左から右に以下の有意なフィールドを含む。すなわち、
ＤＡＴＡ：　検索するデータ、又は論理関数が実行されるデータを含む。
ＭＡＳＫ：　１まで増加したビットにより、ビットストリング中でＤＡＴＡを検索する位置であって、それから又はそれに対して論理関数を実行する該位置を示す。
ＰＯＳ［ＩＴＩＯＮ］：　データセル中のストリングの位置を示す。既に述べたように、ＩＮＳＴ＿ＳＰＬＩＴＴＥＲ（１８）（図１、図２、図３ａ及び図３ｂ）によりＤＡＴＡ＿ＣＯＵＮＴ（１６）に伝送される情報に対応する。第１の動作例では、最初の１２のビットストリング全てがこのような例では制御されなければならないので、ＰＯＳは０から１１までのプログレッシブ（ｐｒｏｇｒｅｓｓｉｖｅ）値を有する。
ＯＰＥＲ：　ＤＡＴＡ及びＭＡＳＫを考慮してビットストリングに対して実行される分析の種類を示し、第２表に示される値に対応する。
ＴＹＰＥ：　３つのビットにより実行する操作の種類を示す。第１のビットは、もし立っているなら、操作は強制的であることを示す。第２のビットは、もし立っているなら、第１ビットが０ならば操作が実行されることを示す。第３のビットは、もし立っているなら、分析されるデータも検索されなければならないことを示す。いずれにしても、関数ＴＹＰＥは、明細書にリストアップしたＶＨＤＬソースに基づいて得ることができる。
ＳＥＴ０：　その意味をビットストリングについて行われる分析の種類に帰する。特に、制御の種類がＰＩＤ調査に帰されるならば、このビットは当該例では１である。
ＳＥＴ１：　その意味をビットストリングについて行われる分析の種類に帰する。特に、制御の種類がＰＣＲ調査に帰されるならば、このビットは当該例では１である。この例では、第１ビットストリング（ストリング０）の場合における制御は必要であり、ＰＩＤ及びＰＣＲの両方の調査に論理的には帰せられるべきこと、及び従ってＳＥＴ０とＳＥＴ１の両方のビットは１であることに留意すべきである。
【００５２】
ＭＰＥＧＩＩトランスポートストリームセルのビットストリングを上から下へ、左から右に検査しかつプログラミングされた対応する命令（図３ａ及び図３ｂ）を調べると、当該例によるパーサー回路の動作が理解できる。
【００５３】
第１命令では、値４７ＨＥＸがＤＡＴＡフィールドにプログラミングされる。ＭＡＳＫフィールドでは、全ての１ビットが全体ストリングについての制御を意味する。ＰＯＳ“００００”は、それが第１セルのビットストリングの分析であることを示す。ＯＰＥＲ“００”は、分析が等価物により行われていることを示す。ＴＹＰＥ“１００”は、強制的な分析を示し、その負の結果はデータセルの拒絶を意味する。ＳＥＴ０及びＳＥＴ１の“１１”は、分析がＰＩＤ及びＰＣＲ探索に対してファンクショナルであることを示す。
【００５４】
第２命令では、ＤＡＴＡフィールドは、任意の値がこのストリングに存在し得るとき、０に設定される。ＭＡＳＫフィールドでは、ＰＩＤが第３〜第７ビット上で探索されるとき、これらのビットが立っている。ＰＯＳ“０００１”は、第２ビットストリングの分析を示す。ＯＰＥＲ“０１”は、ＤＡＴＡの値以上（＝＜）の値が探索されなければならないことを示す。ＴＹＰＥ“１０１”は、分析が強制的であること、及び既に述べたようにトランスペアレント出力として伝送されるストリングでは、確認ビットやＭＡＳＫのような信号のグループもこのビットストリングに同期して出力として伝送されることを示す。１のＳＥＴ０と０のＳＥＴ１は、この分析がＰＩＤに対してのみ有意であることを示す。以下の命令は同じ論理に基づくので、詳細な説明は必要ないであろう。
【００５５】
従って、プログラミングされた命令により、パーサー回路は、分析されたビットストリングを出力として供給できると共に、ＴＹＰＥ関数によりそのように要求されると、実行した分析を示す信号グループを伝送できる。また、この例は、ＰＩＤのみが分析されるならば、１２のプログラミング命令は要求されず、最初の３つで十分であること、及びこの場合にはパーサー回路はこれらの命令のみでプログラミングできることをも明瞭に示す。容易に分かるように、この特徴により、本発明によるパーサー回路は、特に該回路を実現するのに使用されるパラメータシナリオが許容すれば、同じプロトコルを用いて多様な分析を行うこと、及び異なるプロトコルを用いて多様な分析を行うことの両方が可能になる。
【００５６】
本明細書に記述されているように、本発明によるパーサーモジュールはパラメトリックであり、一般に分析されるセル中のデータの幅に独立であり、プログラマブルであり、いくつかの分析を並列に実行でき、実行した分析を示す信号グループをデータに関連付ける。
【００５７】
回路の詳細、記載した構成及び操作方法のみならず、上記説明、サイズ、形状、物質、コンポーネント、回路要素、接続及び接点に関し、請求した本発明の原理から逸脱することなく明らかな修正又は変更が可能である。
【図面の簡単な説明】
【図１】図１は本発明によるモジュール及び回路の生成のためのフロー図を表す。
【図２】図２は図２のフロー図により得ることができるモジュール及び回路のアーキテクチャーを表す。
【図３】図３ａは、ＭＰＥＧＩＩトランスポートストリームプロトコルによるセル内部のビットストリングの例を表し、図３ｂは、図１のフロー図により得られたパーサー回路について図３ａのビットストリングを分析するようにプログラミングするための命令の例を表す。
【符号の説明】
１０　　パーサーモジュール
１１　　第１インターフェースモジュール
１２　　プログラマブルモジュール
１５　　第２インターフェースモジュール
１６　　入力データモジュール
１８　　命令スプリッターモジュール
２２　　分析モジュール
２８　　状態機械モジュール
３０　　中央演算装置
【図１】
2004505381.tif 000014
【図２】
2004505381.tif 000015
【図３】
2004505381.tif 000016
【国際公開パンフレット】
2004505381.tif 000017
2004505381.tif 000018
2004505381.tif 000019
2004505381.tif 000020
2004505381.tif 000021
2004505381.tif 000022
2004505381.tif 000023
2004505381.tif 000024
2004505381.tif 000025
2004505381.tif 000026
2004505381.tif 000027
2004505381.tif 000028
2004505381.tif 000029
2004505381.tif 000030
2004505381.tif 000031
2004505381.tif 000032
2004505381.tif 000033
2004505381.tif 000034
2004505381.tif 000035
2004505381.tif 000036
2004505381.tif 000037
2004505381.tif 000038
2004505381.tif 000039
2004505381.tif 000040
2004505381.tif 000041
2004505381.tif 000042
2004505381.tif 000043
2004505381.tif 000044
2004505381.tif 000045
【国際公開パンフレット（コレクトバージョン）】
2004505381.tif 000046
2004505381.tif 000047
【国際調査報告】
2004505381.tif 000048
2004505381.tif 000049
2004505381.tif 000050