(57)【特許請求の範囲】
【請求項１】
複数のデコーダであって、各々のデコーダは、パケット・グループの１又は複数のサブパケットのシーケンスをデコードするタスクを割り当てられることができ、該各々のデコーダは、該デコーダが一つのパケットのすべてのサブパケットをデコードする前記割り当てられたタスクをすべて完了した場合には、パケット完了インジケーションを生成する、複数のデコーダと、
前記複数のデコーダの各々から前記パケット完了インジケーションを受信し、前記パケット完了インジケーションに少なくとも部分的に基づいて、インターラプト信号をアサートする制御回路であって、該インターラプト信号は、いずれかのデコーダが前記パケットのサブパケットをデコードしている時間の間はアサートされず、むしろ、前記パケットのいずれかのサブパケットをデコードしたあらゆるデコーダからパケット完了インジケーションが受信された後にのみアサートされる、制御回路と、
を含む回路。
【請求項２】
前記パケット完了インジケーションは、完了信号及びエンドオブパケット信号を含み、
前記完了信号は、デコーダから前記制御回路に伸びる第１の導線上に存在し
前記エンドオブパケット信号は、前記デコーダから前記制御回路に伸びる第２の導線上に存在する、請求項１の回路。
【請求項３】
前記デコーダが前記パケット・グループのすべてのサブパケットをデコードする前記割り当てられたタスクをすべて完了した場合に、前記各々のデコーダは、グループ完了インジケーションを供給し、
前記制御回路は、前記複数のデコーダの各々からグループ完了インジケーションを受信する、請求項１の回路。
【請求項４】
前記制御回路は、複数の停止信号を生成し、
前記複数の停止信号のうちの一つは、前記複数のデコーダのうちの対応するそれぞれの一つに供給される、請求項１の回路。
【請求項５】
前記制御回路は、前記複数のデコーダが前記グループのサブパケットをデコードするそれらに割り当てられたタスクをすべてデコードすることを完了すると、前記複数のデコーダうちの個々のものを停止させるために前記停止信号を使用する、請求項４の回路。
【請求項６】
前記制御回路は、前記パケットのサブパケットをデコードしたあらゆるデコーダから受信されたパケット完了インジケーションに応答して前記インターラプト信号をアサートするように設定可能であり、
前記制御回路はまた、一つのパケット完了インジケーションを受信することに応答して該制御回路が前記インターラプト信号をアサートしないように設定可能である、請求項１の回路。
【請求項７】
前記インターラプト信号は、エンドオブパケット（ＥＯＰ）インターラプト信号であり、
前記制御回路はまた、該制御回路が前記ＥＯＰインターラプト信号をアサートしないように設定可能である、請求項１の回路。
【請求項８】
前記回路は、前記複数のデコーダのうちの一つが第１のパケットのサブパケットのシーケンスをデコードし、前記制御回路にパケット完了インジケーションを供給し、その後、停止されることなく第２のパケットのサブパケットのシーケンスのデコードを開始するように動作可能であり、
前記第１及び第２のパケットは、前記グループのパケットであり、
前記制御回路は、該制御回路が前記一つのデコーダから前記パケット完了インジケーションを受信した時点では前記インターラプト信号をアサートせず、むしろ、パケット完了インジケーションが、前記パケットのいずれかのサブパケットをデコードしたあらゆるデコーダから受信された後で、前記インターラプト信号をアサートする、請求項１の回路。
【請求項９】
デコーダにより供給される前記パケット完了インジケーションは、サブパケット・インデックスとともに前記制御回路により受信され、
前記サブパケット・インデックスは、前記デコーダがデコードした前記パケットの最後のサブパケットを識別する、請求項１の回路。
【請求項１０】
デコーダにより供給される前記パケット完了インジケーションは、パケット・インデックスとともに前記制御回路により受信され、
前記パケット・インデックスは、前記パケット完了インジケーションが関係する前記パケットを識別する、請求項１の回路。
【請求項１１】
タスク・インストラクションを生成することによって、サブパケットをデコードするタスクを、前記複数のデコーダのうちの一つに割り当てることができるプロセッサを更に含み、
前記タスク・インストラクションは、前記サブパケットがバッファ中のどこに位置するかを示す情報を含む、請求項１の回路。
【請求項１２】
タスク・インストラクションを生成することによって、サブパケットをデコードするタスクを、前記複数のデコーダのうちの一つに割り当てることができるプロセッサを更に含み、
前記タスク・インストラクションは、前記サブパケットが、パケットのサブパケットのシーケンスの最後のサブパケットであるかどうかのインジケーションを含み、
前記サブパケットのシーケンスは、前記一つのデコーダによりデコードされる、請求項１の回路。
【請求項１３】
タスク・インストラクションを生成することによって、サブパケットをデコードするタスクを、前記複数のデコーダのうちの一つに割り当てることができるプロセッサを更に含み、
前記タスク・インストラクションは、前記サブパケットが、パケット・グループのサブパケットのシーケンスの最後のサブパケットであるかどうかのインジケーションを含み、
前記サブパケットのシーケンスは、前記一つのデコーダによりデコードされる、請求項１の回路。
【請求項１４】
前記複数のデコーダのうちの一つは、タスク・インストラクションに応答してサブパケットをデコードし、
前記タスク・インストラクションは、前記サブパケットを識別し、及び、エンドオブパケット・ビットを含むフィールドを含み、
前記デコーダは、前記エンドオブパケット・ビットが予め定められたバイナリの値を持つ場合に、前記サブパケットのデコードの完了に応じて、そのパケット完了インジケーションをアサートする、請求項１の回路。
【請求項１５】
第１のサブパケットのシーケンスを、該第１のサブパケットのうちの最後の一つがデコードされるまで停止することなく、デコードするように構成された第１のターボ・デコーダであって、該第1のサブパケットの一部のものは第１のパケットからのものであり、該第１のサブパケットの他のものは第２のパケットからのものである、第１のターボ・デコーダと、
第２のサブパケットのシーケンスを、該第２のサブパケットのうちの最後の一つがデコードされるまで停止することなく、デコードするように構成された第２のターボ・デコーダであって、該第２のサブパケットの一部のものは前記第１のパケットからのものであり、該第２のサブパケットの他のものは前記第２のパケットからのものである、第２のターボ・デコーダと、
処理回路と、
前記第１および第２のターボ・デコーダの各々から前記パケット完了インジケーションを受信し、前記パケット完了インジケーションに少なくとも部分的に基づいて、インターラプト信号をアサートする制御回路であって、前記第１のパケットのすべてのサブパケットがデコードされたとき、インターラプト信号をアサートするように設定可能な制御回路と、
を含む回路。
【請求項１６】
前記第１のサブパケットは、パケット・グループのサブパケットであり、
前記第２のサブパケットは、同一のパケット・グループのサブパケットであり、
前記第１のターボ・デコーダは、前記第２のターボ・デコーダが前記グループの前記第２のサブパケットのすべてのデコードを完了する前に、それが前記グループの前記第１のサブパケットのすべてのデコードを完了した場合に、サブパケットのデコードを停止し、
前記第２のターボ・デコーダは、前記第１のターボ・デコーダが前記グループの前記第１のサブパケットのすべてのデコードを完了する前に、それが前記グループの前記第２のサブパケットのすべてのデコードを完了した場合に、サブパケットのデコードを停止する、請求項１５の回路。
【請求項１７】
パケット・グループの複数のサブパケットをデコードするために複数のデコーダを使用することであって、該サブパケットの一部のものは、第１のパケットからのものであり、該サブパケットの他のものは、第２のパケットからのものであり、該パケット・グループは、前記第１及び第２のパケットを含む、使用することと、
前記第１のパケットのサブパケットが前記複数のデコーダによりデコードされている時間の間中、アンアサートされたステータスにおいて、インターラプト信号を維持することと、
前記複数のデコーダの各々からパケット完了インジケーションを受信することと、
前記複数のデコーダから受信された前記パケット完了インジケーションを、前記インターラプト信号をいつアサートするべきかについて判定するために使用することと、
前記第１のパケットのサブパケットのすべてがデコードされた場合に、前記インターラプト信号をアサートすることと、
を含む方法。
【請求項１８】
前記複数のデコーダのうちの第１のデコーダは、前記第１のパケットのサブパケットをデコードし、その後、停止せずに前記第２のパケットのサブパケットをデコードし、
前記複数のデコーダのうちの第２のデコーダは、前記第１のパケットのサブパケットをデコードし、その後、停止せずに前記第２のパケットのサブパケットをデコードする、請求項１７の方法。
【請求項１９】
前記第１のパケットのサブパケットの一部のものは、前記複数のデコーダのうちの第１のデコーダによりデコードされ、
前記第１のパケットのサブパケットの他のものは、前記複数のデコーダのうちの第２のデコーダによりデコードされる、請求項１７の方法。
【請求項２０】
前記複数のデコーダのうちの他のデコーダが前記グループのサブパケットのデコードを完了する前に前記グループのサブパケットのデコードを完了した、前記複数のデコーダのうちのいかなるデコーダをも停止させることを更に含む請求項１７の方法。
【請求項２１】
第１のデコーダにおいて第１のタスク・インストラクションを受信することであって、該第１のタスク・インストラクションは、第１のサブパケットを識別する識別情報を含み、該第１のタスク・インストラクションは、更に、第１のマーカーを含み、および、該第１のサブパケットの一部のものは第１のパケットからのものであり、該第１のサブパケットの他のものは第２のパケットからのものである、第１のタスク・インストラクションを受信することと、
前記第１のタスク・インストラクションにおける前記識別情報により指示される前記第１のサブパケットをデコードし、前記第１のマーカーがセットされた場合に、前記第１のサブパケットの該デコードの完了に応じて、制御回路における第１のビットをセットすることと、
第２のデコーダにおいて第２のタスク・インストラクションを受信することであって、該第２のタスク・インストラクションは、第２のサブパケットを識別する識別情報を含み、該第２のタスク・インストラクションは、更に、第２のマーカーを含み、前記第１及び第２のサブパケットは、一つのパケットのサブパケットであり、および、該第２のサブパケットの一部のものは前記第１のパケットからのものであり、該第２のサブパケットの他のものは前記第２のパケットからのものである、第２のタスク・インストラクションを受信することと、
前記第２のタスク・インストラクションにおける前記識別情報により指示される前記第２のサブパケットをデコードし、前記第２のマーカーがセットされた場合に、前記第２のサブパケットの該デコードの完了に応じて、前記制御回路における第２のビットをセットすることと、
前記第１のビットと前記第２のビットに少なくとも部分的に基づいてインターラプト信号をアサートするために、前記制御回路において前記第１のビット及び前記第２のビットを使用することと、
を含む方法。
【請求項２２】
前記第１のタスク・インストラクションの前記第１のマーカーは、エンドオブパケット（ＥＯＰ）マーカー・ビットである、請求項２１の方法。
【請求項２３】
前記第１のタスク・インストラクションの前記第１のマーカーは、エンドオブグループ（ＥＯＧ）マーカー・ビットであり、
前記パケットは、グループの複数のパケットのうちの一つのパケットである、請求項２１の方法。
【請求項２４】
第１のサブパケットのシーケンスをデコードするように構成された第１のターボ・デコーダであって、該第1のサブパケットの一部のものは第１のパケットからのものであり、該第１のサブパケットの他のものは第２のパケットからのものである、第１のターボ・デコーダと、
第２のサブパケットのシーケンスをデコードするように構成された第２のターボ・デコーダであって、該第２のサブパケットの一部のものは前記第１のパケットからのものであり、該第２のサブパケットの他のものは前記第２のパケットからのものである、第２のターボ・デコーダと、
前記第１のターボ・デコーダからパケット完了インジケーションを受信するためと、前記第２のターボ・デコーダからパケット完了インジケーションを受信するための手段と、
を含み、
前記手段は、また、前記第１のパケットのサブパケットが前記第１及び第２のターボ・デコーダによりデコードされている時間の間中、アンアサートされたステータスにおいて、パケット完了インターラプト信号を維持するためと、前記第１のターボ・デコーダと前記第２のターボ・デコーダからのパケット完了インジケーションに少なくとも部分的に基づいて、前記第１のパケットの前記サブパケットのすべてがデコードされた場合に、前記パケット完了インターラプト信号をアサートするためのものである、装置。
【請求項２５】
前記装置は、複数のモードのうちの選択可能な一つに設定可能であり、
一つのモードにおいて、前記手段は、パケット完了インターラプト信号をアサートしないように設定される、請求項２４の装置。
【請求項２６】
前記装置は、複数のモードのうちの選択可能な一つに設定可能であり、
一つのモードにおいて、前記手段は、グループ完了インターラプト信号をアサートせず、他のモードにおいて、前記手段は、前記グループ完了インターラプト信号をアサートする、請求項２４の装置。
【請求項２７】
第３のパケットのサブパケットが前記第２のターボ・デコーダによりデコードされないように、該第３のパケットのサブパケットのすべてが前記第１のターボ・デコーダによりデコードされることができる、請求項２４の装置。
【請求項２８】
前記手段はまた、前記第１のパケットの各々のサブパケット及び前記第２のパケットの各々のサブパケットについて巡回冗長検査（ＣＲＣ）パス／フェイル・ビットを格納するためのものである、請求項２４の装置。
【請求項２９】
コードを記録したコンピュータ読み取り可能な記録媒体であって、前記コードは、
コンピュータに、第１のデコーダが第１のサブパケットのシーケンスをデコードするように、該第１のデコーダを制御させ、ここにおいて、該第１のサブパケットのうちの一部のものは第１のパケットからのものであり、該第１のサブパケットのうちの他のものは第２のパケットからのものであり、及び、該第１のデコーダが該第１のパケットの第１のサブパケットのすべてのデコードを完了することに応じて、該第１のデコーダが第１のパケット完了インジケーションを生成するように、該第１のデコーダを制御させるための、コードと、
前記コンピュータに、第２のデコーダが第２のサブパケットのシーケンスをデコードするように、該第２のデコーダを制御させ、ここにおいて、該第２のサブパケットのうちの一部のものは第１のパケットからのものであり、該第２のサブパケットのうちの他のものは第２のパケットからのものであり、及び、該第２のデコーダが該第１のパケットの第２のサブパケットのすべてのデコードを完了することに応じて、該第２のデコーダが第２のパケット完了インジケーションを生成するように、該第２のデコーダを制御させるための、コードと、
前記コンピュータに、制御回路がパケット完了インターラプト信号を生成するために、前記第１及び第２のパケット完了インジケーションを使用するように、該制御回路を制御させるためのコードであって、前記パケット完了インターラプト信号は、前記第１又は前記第２のデコーダのいずれかが前記パケットのサブパケットをデコードしている時間の間は生成されず、むしろ、前記第１のデコーダから前記第１のパケット完了インジケーションが受信され且つ前記第２のデコーダから前記第２のパケット完了インジケーションが受信された後でのみ生成される、コードと、
を含むコンピュータ読み取り可能な記録媒体。
【請求項３０】
前記第１のデコーダは、停止せずに前記第１のパケットの前記第１のサブパケット及び前記第２のパケットの前記第１のサブパケットをデコードし、
前記第２のデコーダは、停止せずに前記第１のパケットの前記第２のサブパケット及び前記第２のパケットの前記第２のサブパケットをデコードする、請求項２９のコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
この出願は、２００８年４月１日付け提出された米国仮出願第６１／０４１，５５８号の35 U.S.C. §119の下の優先権を主張する。上記仮出願は、参照によって本明細書に組み込まれる。
【０００２】
（技術分野）
本開示は、無線通信システムにおけるデコーディングに関係する。
【背景技術】
【０００３】
図１（従来技術）は、パケットを通信する従来の無線通信システムの一つのタイプの図である。複数のデータ・パケット １は、第１の無線通信デバイス２から第２の無線通信デバイス３へ通信されることができる。通信デバイス３は、アンテナ４、ＲＦトランシーバ集積回路５及びデジタル・ベースバンド集積回路６を含む。デジタル・ベースバンド集積回路６は、アナログ・デジタル変換器（ＡＤＣ）７、受信経路８、デジタル・アナログ変換器（ＤＡＣ）９、送信経路１０、インターラプト・コントローラ・メカニズム１１及びプロセッサ１２を含む複数の部分を含む。到着（incoming）パケット１は、アンテナ４上で受信され、ＲＦトランシーバ５及びＡＤＣ７を通過して、受信経路８に入る。受信経路８内で、高速フーリエ変換（ＦＦＴ）処理ブロック１３、復調器ブロック１４及びデコーダ・ブロック１５を含む複数の処理ブロックを通過する。パケットは、しばしば、完全なパケットとして伝えられるのではなく、むしろ、パケットのペイロードが、複数の部分に分けられる。各々の部分は、“サブパケット”と呼ばれることがある。各々のサブパケットは、そのサブパケットのデータ・ペイロードが正しく受信されたかどうかを判定するために使用可能なそれ自身の巡回冗長検査（ＣＲＣ）値をもつことがある。すべてのサブパケットのデータ・ペイロードは、順番に組み立てられることがあり（assembled）、該組み立てられたペイロードは、他のＣＲＣ値を用いてチェックされることがある。図１の例において、ＣＲＣ値のチェックは、デコーダ・ブロック１５で起こる。
【０００４】
図２（従来技術）は、図１のデコーダ・ブロック１５において、そのようなサブパケットＳＰ１−ＳＰ５のセットを処理するタイムラインを示す。図示されるように、各々のサブパケットは、それ自身のＣＲＣ値を持つ。ＣＲＣ値を用いてデコーダ・ブロック１５において判定されるものとして、すべてのサブパケットが正しく（properly）受信されるならば、また、全部のパケット・データ・ペイロードがデコーダ・ブロック１５により正しく受信されたと判定されるならば、デコーダ・ブロック１５は、プロセッサ１２をインターラプトする。そのようなインターラプトは、例えば、信号線（signal conductor）１６を介してインターラプト・コントローラ１１に伝えられ、次に、それが従来の方法でプロセッサ１２をインターラプトすることがある。一旦、インターラプトされると、プロセッサ１２は、必要に応じて、受信データ・パケットを処理する（handles）。プロセッサをインターラプトすると、該プロセッサの他のタスクの実行を減速させることになるので、プロセッサを頻繁にインターラプトすることは、一般に、望ましくない。従って、図２は、サブパケットＳＰ１−ＳＰ５のシーケンスが受信された場合であっても、一つのインターラプトだけが生成されていることを示す。インターラプトは、垂直の矢印１７で表される。時がたつにつれ、無線通信システムにおいて、より高いデータ・スループット・レートが要求された。そのようなより高いデータ・スループット・レートをサポートすることは、無線通信デバイス（例えば、デバイス２及び３のような）の回路の様々な部分の処理能力に負担をかけた。解決策が望まれる。
【発明の概要】
【０００５】
受信機の中の（例えば、無線通信デバイスの受信機の中の）設定可能な（configurable）デコーダ・ブロックは、複数のデコーダを含む。該複数のデコーダは、例えば、複数のターボ・デコーダ（turbo decoders）であっても良い。一つのコンフィギュレーション・モードにおいて、複数のデコーダは、最初のパケットの異なる複数のサブパケットをデコードするために使用される。複数のデコーダのうちで該最初のパケットの最後のサブパケットに割り当てられたものが、該最後のサブパケットのデコードを完了するとき、そのデコーダは、パケット完了インジケーション（packet done indication）を生成するが、停止（halting）せずにそれに続くパケットの他の複数のサブパケットのデコードを継続する。複数のデコーダは、このように、いずれのデコーダも停止されることなく、最初のパケットの異なるサブパケットのデコードを協調して行う。制御回路は、第１のパケットに対して働いているそれぞれのデコーダからパケット完了インジケーションを受信する。そして、すべてのデコーダがパケット完了インジケーションを生成した後でのみ、該制御回路は、アクションを開始する。一つの例において、上記アクションは、プロセッサに供給されるインターラプト信号をアサートすることである。プロセッサは、制御回路からステータス情報（例えば、第１のパケットの各々のサブパケットに対する巡回冗長検査（ＣＲＣ）パス／フェイル情報（pass/fail information））をリード（reading）することによって、対応（responds）する。他の状態をプロセッサにアラートするための他のインターラプト信号を制御回路が生成することができるように、該リーディングは、そのアンアサートされたステータス（unasserted state）に対するインターラプト信号をリセットする。
【０００６】
デコーダ・ブロックの中で、個々のデコーダは、タスク・インストラクションの各種のフィールド中のソース情報を用いて、ＬＬＲバッファにおける特定のソース位置に格納される情報のサブパケットをデコードするように構成されることができる。タスク・インストラクションはまた、デコード・オペレーションの結果がライト（written）されるべきデコード出力バッファにおけるデスティネーション位置を指定する。タスク・インストラクションはまた、関連するサブパケットがパケットの最後のサブパケット（指定されたデコーダによりデコードされるべき特定のパケットの複数のサブパケットのうちの最後のもの）であるか否かについて示すエンドオブパケット（end-of-packet）（ＥＯＰ）マーカーを含んでも良い。タスク・インストラクションはまた、関連するサブパケットがグループの最後のサブパケット（指定されたデコーダによりデコードされるべき複数のパケットからなるグループの複数のサブパケットのうちの最後のもの）であるか否かについて示すエンドオブグループ（end-of-group）（ＥＯＧ）マーカーを含んでも良い。一般的に、対応するサブパケットのシーケンスが、タスク・インストラクションにより指定されるデコーダによりデコードされるように、デコーダは、そのようなタスク・インストラクションのシーケンスを実行する。デコーダは、パケット完了インジケーション及び／又はグループ完了インジケーション（group done indications）を制御回路に供給するために、ＥＯＰマーカー及び／又はＥＯＧマーカーを使用する。次に、制御回路は、インターラプト信号を生成し、デコーダ・ブロックのコンフィギュレーション・モードにより判定される他のアクションをとるために、ＥＯＰインジケーション及び／又はＥＯＧインジケーションを使用する。デコーダ・ブロックは、タスク・インストラクションの使用を通して、プロセッサによって、デコーダ・ブロックがシングル・デコーダを利用して又は複数のデコーダを利用して一つのパケットの複数のサブパケットを処理するように、設定可能である。一つの例において、デコーダは、各々のサブパケットのデコードの終わりにおいてインターラプト信号を生成するように、及び／又は、特定のパケットのデコードの終わりにおいてインターラプト信号を生成するように、及び／又は、パケットの全体のグループのデコードの終わりにおいてインターラプト信号を生成するように、設定可能である。
【０００７】
前述は概要であり、それゆえ、必然的に、詳細の簡略化、一般化及び省略を含む;従って、概要は単に実例であり、どのような形であれ制限することを意味しないことを当業者は理解するであろう。もっぱらクレームにより定義されるような、本明細書で説明されるデバイス及び／又はプロセスの他の態様、発明の特徴及び利点は、本明細書で説明される非限定的な詳細な説明で明らかになるであろう。
【図面の簡単な説明】
【０００８】
【図１】図１（従来技術）は、無線通信デバイスの受信機において実行されるデコーディング・オペレーションを示す簡略化されたブロック図である。
【図２】図２（従来技術）は、図１の受信機によりデコードされるサブパケットのシーケンスを示す図である。
【図３】図３は、一つの新規な態様に従うモバイル通信デバイスの非常に簡略化されたハイレベル・ブロック図である。
【図４】図４は、図３のモバイル通信デバイスのＲＦトランシーバ集積回路１０２のより詳細なブロック図である。
【図５】図５は、図３のモバイル通信デバイスのデジタル・ベースバンド集積回路１０３のより詳細な図である。
【図６】図６は、図５のデマップ／デインターリーブ／デコード（ＤＤＥ）無線通信システム・モデム・サブサーキット（ＷＣＳＭＳＣ）１２５のより詳細な図である。
【図７】図７は、図６のＤＤＥ ＷＣＳＭＳＣ １２５のデコーダ・ブロック２０２のより詳細な図である。
【図８】図８は、ＤＤＥ実行タスク・インストラクションの図である。
【図９】図９は、図８のＤＤＥ実行タスク・インストラクションのフィールドが図６のＬＬＲバッファ１２９中のサブパケットの位置をどのようにして識別するかを示す図である。
【図１０】図１０は、パケットのグループを示す図である（グループの各々のパケットは、複数のサブパケットを含む）。
【図１１】図１１は、第１のデコーダ（デコーダ＃１）がグループのその割り当てられたサブパケットをデコードし終わる前に、第２のデコーダ（デコーダ＃２）が図１０のグループのその割り当てられたサブパケットをデコードし終わる第１のシナリオを説明する図である。
【図１２】図１２は、第２のデコーダ（デコーダ＃２）がグループのその割り当てられたサブパケットをデコードし終わる前に、第１のデコーダ（デコーダ＃１）が図１０のグループのその割り当てられたサブパケットをデコードし終わる第２のシナリオを説明する図である。
【図１３】図１３は、二つの協力しているデコーダのいずれも停止させることなく、第１のパケットの終わりに二つのＥＯＰインターラプトを生成することなく、且つ、グループの終わりに二つのＥＯＧインターラプトを生成することなく、図５の処理回路１１５に対するエンドオブパケット（end-of-packet）インターラプト信号を生成するためのタスク・インストラクションにおいて、新しいＥＯＰマーカー及びＥＯＧマーカーがどのようにして使用されるかを説明する図である。エンドオブグループで、単一のＥＯＧインターラプトが生成されるが、グループのその割り当てられたサブパケットを処理し終わる第１のデコーダは停止する。
【図１４】図１４は、第１のデコーダ（デコーダ＃１）が最初に終了する上記第２のシナリオにおいて、要求されたＥＯＰインターラプト及びＥＯＧインターラプトを生成するために、新しいＥＯＰマーカー及びＥＯＧマーカー並びにタスク・インストラクションが使用される方法を説明する図である。
【図１５】図１５は、一つの新規な態様に従う方法の単純化されたフローチャートである。
【詳細な説明】
【０００９】
図３は、無線通信デバイス１００の例の簡略化されたハイレベル・ブロック図である。無線通信デバイス１００は、図示されない他の部分に混じって、アンテナ１０１、無線周波数（ＲＦ）集積回路１０２とデジタル・ベースバンド集積回路１０３を含む。
【００１０】
図４は、図３のアンテナ１０１及びＲＦトランシーバ集積回路１０２のより詳細なブロック図である。ＲＦトランシーバ集積回路１０２は、受信チェーン１０４及び送信チェーン１０５を含む。到着トランスミッション１０６は、アンテナ１０１上で受信され、デュプレクサ１０７及びマッチング・ネットワーク１０８を通して、受信チェーン１０４に渡される。受信信号は、受信チェーン１０４において周波数をダウンコンバートされた後に、更なる処理のために、デジタル・ベースバンド集積回路１０３中のアナログ−デジタル変換器（ＡＤＣ）１０９に渡る。無線通信デバイス１００がトランスミッションをもたらす場合には、デジタル情報は、デジタル・ベースバンド集積回路１０３中のＤＡコンバータ（ＤＡＣ）１１０によりアナログ・フォームに変換される。その結果として生じるアナログ信号は、それから、ＲＦトランシーバ集積回路１０２の送信チェーン１０５により周波数をアップコンバートされ、そして、その結果として生じるＲＦ信号は、パワーアンプＰＡ・１１１により増幅される。増幅された信号は、デュプレクサ１０７を通して、送出（outgoing）トランスミッション１１２としてトランスミッションのためにアンテナ１０１に渡る。
【００１１】
図５は、図３のデジタル・ベースバンド集積回路１０３のより詳細なブロック図である。デジタル・ベースバンド集積回路１０３は、図示されない他の部分に混じって、ＡＤＣ１０９、受信チャネル１１３、送信チャネル１１４、ＤＡＣ１１０、処理回路１１５、ある量のメモリ１１６、ある量の高速メモリ１１７、データ・ムーバ・エンジン１１８、第１のバス１１９、第２のバス１２０、及び、ウォール・クロック・タイマー１２１を含む。受信チャネル１１３は、無線通信システム・モデム・サブサーキット群（ＷＣＳＭＳＣ群）とここで呼ばれる１セットの処理ブロック１２２−１２５を順番に含む。ＷＣＳＭＳＣ群は、到着データのストリームを処理するために、チェーンで構成される。これらＷＣＳＭＳＣ群は、フロントエンドＷＣＳＭＳＣ １２２、高速フーリエ変換（ＦＦＴ）ＷＣＳＭＳＣ １２３、復調ＷＣＳＭＳＣ １２４、及び、デマップ／デインターリーブ／デコード（ＤＤＥ）ＷＣＳＭＳＣ １２５を含む。更に詳細に下で説明されるように、ＤＤＥ ＷＣＳＭＳＣ １２５は、順番に、デマッパー部、ＬＬＲバッファ１２９、及び、デコーダ・ブロックを含む。受信チャネル１１３の各種のＷＣＳＭＳＣ群を通過するデータ・フローは、バッファ群１２６−１３０によりバッファされる。受信チャネル・データの一般的な経路は、図５における左から右へ、回路１０９，１２２，１２６，１２３，１２７，１２４，１２８，１２５，１３０を経て第２のバス１２０までである。同様に、送信チャネル１１４は、対応する１セットのＷＣＳＭＳＣ群１３１−１３４及びバッファ群１３５−１３８を含む。送信チャネル・データの一般的な経路は、図５における右から左へ、第２のバス１２０から、１３５，１３１，１３６，１３２，１３７，１３３，１３８，１３４及び１１０までである。
【００１２】
処理回路１１５は、複数のプロセッサを含んでも良い。処理回路１１５は、メモリ１１６に格納されるプロセッサ実行可能なインストラクションのプログラム１３９を実行する。高速メモリ１１７、第１のバス１１９及び処理回路１１５は、合わせて、密結合メモリ（ＴＣＭ）システムを形成する。処理回路１１５は、第１のバス１１９を介して、高速メモリ１１７からの読み出すをすることができ、及び、高速メモリ１１７への書き込みをすることができる。
【００１３】
この例において、処理回路１１５は、いわゆる“タスク・リスト”を使用して、受信チャネル及び送信チャネルの各種のサブサーキット群１２２−１２５及び１３１−１３４を制御する。タスク・リストは、１又は複数のタスク・インストラクションを含む。説明図において、メモリ１１７に格納された４つのタスク・リストＴＬ１，ＴＬ２，ＴＬ３及びＴＬ４が示される。タスク・リストＴＬ１は、送信チャネル１１４のためのタスク・インストラクションを含む。タスク・リストＴＬ２は、ＦＦＴ ＷＣＳＭＳＣ １２３のためのタスク・インストラクションを含む。タスク・リストＴＬ３は、ＤＥＭＯＤ ＷＣＳＭＳＣ １２４のためのタスク・インストラクションを含む。タスク・リストＴＬ４は、ＤＤＥ ＷＣＳＭＳＣ １２５のためのタスク・インストラクションを含む。各々のタスク・リストは、関連するサブサーキットによる実行のためのタスク・インストラクションのシーケンスを含む。サブサーキットは、そのサーキットのデータ処理オペレーションを実行するためのある量の専用の機能回路に加えて、第２のバス１２０に接続されるタスク・マネージャ回路を含む。タスク・マネージャは、その関連するタスク・リストからタスク・インストラクションを読み出し、該タスク・インストラクションのオペレーションコード及び各種のフィールドを解釈し、その後、該タスク・インストラクションにより示されるオペレーションを実行するために、専用の機能回路の関連するハードウェアを制御する。特定のサブサーキットのための適当なタスク・インストラクションをタスク・リストに入れることによって、処理回路１１５は、特定のサブサーキットの専用の機能回路に、該処理回路により特定される特定のオペレーションを実行させることができる。処理回路１１５は、第１のバス１１９を介して、要求通り、これらタスク・リストにタスク・インストラクションを書き込み、これらタスク・リストを修正し、タスク・リストを削除し、さもなければ、タスク・リストを維持することができる。各々のタスク・リストは、循環バッファで、メモリ１１７中に維持される。図３中のＤＤＥ ＷＣＳＭＳＣ １２５のタスク・マネージャは、参照番号１４０により識別される。タスク・マネージャ１４０により制御される関連する専用の機能回路は、デマッパー・ブロック及びデコーダ・ブロックを含む。
【００１４】
図６は、図４のＤＤＥ ＷＣＳＭＳＣ １２５のより詳細なブロック図である。ＤＤＥ ＷＣＳＭＳＣ １２５のデマッパー・ブロックは、実際に、二つのデマップ回路２００及び２０１を含む。ＤＤＥ ＷＣＳＭＳＣ １２５のデコーダ・ブロック２０２は、二つのビタビ・デコーダ２０３及び２０４、二つのターボ・デコーダ２０５及び２０６、設定可能な（configurable）フロー制御回路２０７及びメモリ・インタフェース回路２０８を含む。デマップ・ブロック及びデコーダ・ブロックに加えて、ＤＤＥ ＷＣＳＭＳＣ １２５は、プッシュ・エンジン２０９、第２のバス１２０とのインターフェースのためのバスインタフェース２１０、１セットのコンフィギュレーションとステータスとポインタのレジスタ２１１、及び、メモリ・インタフェース２１２を含む。図５のタスク・マネージャ１４０は、タスク・マネージャ・ブロック２１３及び２１４並びにレジスタ２１１に区分される。タスク・マネージャ機能性が全体として、タスク・インストラクションを受信する。これらのタスク・インストラクションの幾つかは、デマップ回路２００を制御するためのフィールドを含み、それらのフィールドが解釈されて、タスク・マネージャ部２１３により使用される、一方、他のフィールドは、デマップ回路２０１を制御するためにあり、それらのフィールドが解釈されて、タスク・マネージャ部２１４により使用される。図５の処理回路１１５は、一般に、ＤＤＥ ＷＣＳＭＳＣ １２５のためのタスク・リストＴＬ４の上へタスク・インストラクションをライトし、そして、ブロック２１１に格納されるＷＲ＿ＰＴＲポインタ値を更新するために、第２のバス１２０及びＡＨＢバスインタフェース２１０を通して、レジスタ・ブロック２１１へのシングル・ライトを実行する。タスク・マネージャ部２１３及び２１４は、ブロック２１１のレジスタ中のＷＲ＿ＰＴＲポインタ値が、現在、最後のタスク・インストラクションが実行された後のメモリ１１７（図５を参照）中のＴＬ４循環バッファにおける位置を指すことを検出する。タスク・マネージャ部は、したがって、第２のバス１２０を通してＴＬ４の次のタスク・インストラクションをリードし、そして、該タスク・インストラクションを解釈し実行する。ＤＤＥ ＷＣＳＭＳＣ １２５のタスク・マネージャ部は、レジスタ・ブロック２１１中の他のレジスタにおいて、ＥＸＥＣ＿ＰＴＲポインタを維持する。ＥＸＥＣ＿ＰＴＲポインタの値は、実行されたタスク・リストＴＬ４における最後のタスク・インストラクションを示す。
【００１５】
図６のデマップ部２００は、制御パケットのために使用される比較的低いスループットのデマップ回路であるが、デマップ部２０１は、データ・パケットのために使用される較的高いスループットのデマップ回路である。デマップ部２００は、以下の機能ブロックを含む：アンペイント・ブロック（unpaint block）２１５、対数尤度比（Log-Likelihood Ratio）（ＬＬＲ）生成器ブロック２１６、デスクランブル・ブロック２１７及びデインターリーバ・ブロック２１８。デマップ部２００は、ＬＬＲバッファとの間で２つのパラレル・リード／ライト・チャネルを提供する導線（conductor）２１９を介して、ＬＬＲバッファ１２９に対してインターフェースする。より高いスループットのデマップ部２０１は、以下の機能的なブロックを含む：アンペイント・ブロック２２０、ＬＬＲ生成器ブロック２２１、デスクランブル・ブロック２２２及びデインターリーバ・ブロック２２３。デマップ部２０１は、ＬＬＲバッファ１２９との間で６つのパラレル・リード／ライト・チャネルを提供する導線２４４を介して、ＬＬＲバッファ１２９に対してインターフェースする。ＬＬＲバッファ１２９は、デマップ２０１からの６つのＬＬＲ値及びデマップ２００からの２つのＬＬＲ値を同時に受信することができるマルチバンク・メモリである。デコーダ・ブロック２０２は、導線２３３を介してデインターリーブされた順序でＬＬＲバッファ１２９からＬＬＲ値をリードし、タスク・インストラクションにより指定されるように、デコードを実行し、そして、結果として生じるデコード・データを、導線２３４を介して出力バッファ１３０にライトする。
【００１６】
一旦、デマップ／デインターリーブ／デコード・オペレーションが開始されると、処理は、常に、各々の連続するステップを通して、アンペイント・ステップから、ＬＬＲ生成へ、デスクランブルへ、デインターリーブへ、デコードへ、進む。したがって、処理のデマップ、デインターリーブ及びデコードの態様を制御するために、これらのステップの各々のための独立したタスク・インストラクションは必要でない。むしろ、単一のタスク・インストラクションが、これらのステップを通して、処理の全体のシーケンスを制御するために使用される。一旦、デマップ・ブロック２００又は２０１がサブパケットに対する処理のその部分を完了するならば、該サブパケットは、デマップ・ブロックにより、該サブパケットに関連するステータス情報とともにデコーダ・ブロックにフォワードされる。デコーダ・ブロック２０２は、それから、できるだけ早く受信されたサブパケットを処理する。デマップ・ブロック２００及び２０１のうちの一つは、最初にＬＬＲ値のサブパケットをＬＬＲバッファ１２９の部分にライトし、そして、ＬＬＲバッファ１２９中のサブパケットの位置及びデコーダ・ブロック２０２がデコードの結果をデコード出力バッファ１３０中にライトするべき場所を、導線２２５又は２２６を介してデコーダ・ブロック２０２に知らせることによって、サブパケットをデコーダ・ブロック２０２にフォワードする。フォワーディングはまた、デマップ・ブロックが、導線２２５又は２２６を介して、サブパケットに関連するステータス情報を、直接、デコーダ・ブロック２０２にフォワードすることを含む。
【００１７】
図７は、図６のデコーダ・ブロック２０２の一部のより詳細なブロック図である。図６のビタビ・デコーダ２０３及び２０４は、図７では描かれていない。図６のメモリ・インタフェース回路２０８の機能性は、図７中で、メモリ・インタフェース回路２０８Ａ,２０８Ｂ及び２０８Ｃにおいて、更に詳細に示される。データ・トラフィック・サブパケットの処理のデコード・スループット・レートを増加させるために、二つのターボ・デコーダ２０５及び２０６が提供され、そして、これらの二つのデコーダは、サブパケットに対して並列にオペレートするように制御される。一つのパケットを作る１又は複数のサブパケットのストリームが存在する。ブロードキャスト・パケットは、例えば、単一のサブパケットを含む。ＤＣＨパケットは、例えば、多くのサブパケットを含むことができる。パケットのグループを作る１又は複数のパケットのストリームがまた存在する。一つのグループは、ブロードキャスト・パケット及びデータ・パケットの両方を含むパケットを含むことができる。時々、“グループ”という用語よりもむしろ“フレーム”という用語が、複数のパケットを指し示すのに用いられるが、この文書においては用語“グループ”が使用される。ここで“サブパケット”と呼ばれるものは、時々、他では“パケット”という用語を使用して指し示される。
【００１８】
ＤＤＥ実行タスク・インストラクションの発行を通した処理回路１１５の制御の下で、サブパケットの個々の一つは、デコーダ２０５及び２０６のうちの選択された一つによって処理される。したがって、該パケット及び該グループの複数のサブパケットの全体のストリームがデコードされることをもたらす、ＤＤＥ実行タスク・インストラクションのシーケンスが存在する。パケットの一部のサブパケットは、一つのデコーダによって処理されることができ、一方、パケットのサブパケットの他のものは、他のデコーダによって処理されることができる。あるいは、パケットのすべてのサブパケットは、一つのデコーダによってデコードされることができる。一つのパケットをデコードするためのシングル・デコーダの使用又は一つのパケットをデコードするための二つのデコーダの使用は、パケットのグループ内で、パケットによって（from packet to packet)変更されることができる。
【００１９】
設定可能なフロー制御ロジック２０７は、ＤＤＥ ＷＣＳＭＳＣ １２５によりデコードされているパケットのグループの各々のサブパケットについて、ＣＲＣ（巡回冗長検査）パス／フェイル情報を格納するための一つのシーケンシャル・ストレージ・ビットを含む。図７の示された例においては、一つのグループは、多くて２個のパケットを含むことができ、一つのパケットは、多くて３２個のサブパケットを含むことができる。したがって、６４個のＣＲＣストレージ・ビット２２７が存在する。サブパケットをデコードするデコーダ２０５及び２０６のうちの一つが、ＣＲＣフェイルがあったと判定するならば、ビット２２７のうちの対応する一つが、論理状態“０”をもつようにリセットされるが、判定が、ＣＲＣパスがあったことであるならば、対応するビットは、論理状態“１”をもつようにセットされる。
【００２０】
そのうえ、設定可能なフロー制御ロジック２０７は、コンフィギュレーション情報を格納するための４ビット２２８を含む：DEC_INT_ENABLE1ビット、DEC_INT_ENABLE2ビット、DEC_RESOURCE_USE1ビット及びDEC_RESOURCE_USE2ビット。DEC_RESOURCE_USE1/2ビットが、２ビットの値“００”をもつようにセットされているならば、デコーダ・ブロック２０２は、シングル・デコーダ・モードでオペレートするようにセットされる。二つのデコーダのうちの唯一つが、パケットの複数のサブパケットを処理する。DEC_RESOURCE_USE1/2ビットが、２ビットの値“０１”をもつようにセットされているならば、デコーダ・ブロック２０２は、処理されている複数のサブパケットからなるグループのうちの複数のサブパケットが二つのデコーダ２０５及び２０６の組み合せによって処理されるデュアル・デコーダ・グループ・モードでオペレートするようにセットされる。DEC_RESOURCE_USE1/2ビットが２ビットの値“１０”をもつようにセットされているならば、デコーダ・ブロック２０２は、処理されている一つのパケットのうちの複数のサブパケットが二つのデコーダ２０５及び２０６の組み合せによって処理されるデュアル・デコーダ・パケット・モードでオペレートするようにセットされる。これらのビットがセットされ使用される方法は、下で更に詳細に説明される。DEC_INT_ENABLE1/2ビットが、２ビットの値“００”をもつようにセットされているならば、インターラプト生成器２２９は、導線２３１上にインターラプト信号をアサートしないように、第１のインターラプト生成モードで設定される。信号線２３１は、インターラプト・コントローラ（図示せず）まで延びる。次に、インターラプト・コントローラは、図５の処理回路１１５にインターラプト信号をアサートする。DEC_INT_ENABLE1/2ビットが２ビットの値“０１”をもつようにセットされているならば、インターラプト生成器２２９は、現在のサブパケットのデコードに応じて直ちにインターラプトがアサートされる即時（IMMEDIATE）インターラプト生成モードに設定される。DEC_INT_ENABLE1/2ビットが、２ビットの値“１０”をもつようにセットされているならば、インターラプト生成器２２９は、処理されている現在のパケットのデコードの完了に応じてインターラプトがアサートされるパケット（PACKET）インターラプト生成モードに設定される。DEC_INT_ENABLE1/2ビットが、２ビットの値“１１”をもつようにセットされているならば、インターラプト生成器２２９は、処理されている現在のグループのデコードの完了に応じてインターラプトがアサートされるグループ（GROUP）インターラプト生成モードに設定される。
【００２１】
そのうえ、設定可能なフロー制御ロジック２０７は、情報の６つの“完了（done）”ビット２３０を含む：デコーダ＃１がその割り当てられたパケット＃１の複数のサブパケットのすべてのデコードを完了したことを示すインジケーションを格納するビット、デコーダ＃２がその割り当てられたパケット＃１の複数のサブパケットのすべてのデコードを完了したことを示すインジケーションを格納するビット、デコーダ＃１がその割り当てられたパケット＃２の複数のサブパケットのすべてのデコードを完了したことを示すインジケーションを格納するビット、デコーダ＃２がその割り当てられたパケット＃２の複数のサブパケットのすべてのデコードを完了したことを示すインジケーションを格納するビット、デコーダ＃１がその割り当てられたグループの複数のサブパケットのすべてのデコードを完了したことを示すインジケーションを格納するビット、及び、デコーダ＃２がその割り当てられたグループの複数のサブパケットのすべてのデコードを完了したことを示すインジケーションを格納するビット。これらのビットがセットされ使用される方法は、下で更に詳細に説明される。
【００２２】
図８は、ＤＤＥ ＷＣＳＭＳＣ １２５に個々のサブパケットを処理させるＤＤＥ実行タスク・インストラクションの簡略化された図である。タスク・インストラクションの最初の６４ビットは、演算コード（opcode）ＯＰを含む共通ヘッダである。タスク・インストラクションをリードするタスク・マネージャは、タスク・インストラクションがどの種類のタスク・インストラクションかを判定するための演算コードを、解釈する。共通ヘッダはまた、タスク・インストラクションにおけるワードの数を示す長さフィールドを含む。タスク・インストラクションをメモリ１１７からリードするタスク・マネージャは、リードするワードの数を判定するために、この長さフィールドを使用する。ＤＤＥ実行タスク・インストラクションの他のフィールドの幾つかは、特に、デコーダ・ブロック２０２に関係する。これらのフィールドは、ＬＬＲバッファの８つのセグメントのうちのいずれが、デコードされるＬＬＲ値を保持するかについて示す、３ビットのDEC_LLR_SEGフィールドを含む。図９は、ＬＬＲバッファの８つのセグメントを説明する。デコーダ・ブロックに関係するＤＤＥ実行タスク・インストラクションのフィールドはまた、示されたセグメントの始まりから、サブパケット・データが始まる位置までのオフセットを指示する１１ビットのDEC_LLR_SEG_OFFSETフィールドを含む。図９は、このオフセットを示す。ＤＤＥ実行タスク・インストラクションはまた、ＬＬＲバッファ中に格納されたサブパケットの長さを示す１６ビットのDEC_SUBPKT_SIZEフィールドを含む。図９は、このサイズを示す。DEC_LLR_SEGフィールド、DEC_LLR_SEG_OFFSETフィールド及びDEC_SUBPKT_SIZEフィールドは、合わせて、デコーダ・ブロック２０２により処理されるべきソース・サブパケット・データを識別する。ＤＤＥ実行タスク・インストラクションはまた、デコード・オペレーションの結果をどの場所の上に格納するかの情報を含む。１６ビットのDEC_OB_DEST_ADDRフィールドは、デコード出力がライトされるべきデコード出力バッファ１３０中の開始アドレスを指示する。そのうえ、ＤＤＥ実行タスク・インストラクションは、そのストリームの他のサブパケットから処理されるべきサブパケッ
トを識別する番号（サブパケット・インデックス）を示す６ビットのDEC_SUBPKT_INDEXフィールド含む。前述の通り、処理されているパケット・グループ中に２つのパケットが存在しても良く、それで、ＤＤＥ実行タスク・インストラクションは、サブパケットが属するパケットが、グループの第１のパケットであるか又は第２のパケットであるかを識別する、１ビットのDEC_PKT_NUMBERフィールドを含む。ＤＤＥ実行タスク・インストラクションはまた、識別されたサブパケットを処理する際にデコーダ・ブロックがもつべきコンフィギュレーションを指定する他のビット・フィールド（上で示されるように（DEC_RESOURCE_USE及びDEC_INT_ENABLE））を含む。現在のパケットについて、特定のデコーダによって処理されるべきサブパケットが、デコーダに割り当てられるべき最後のサブパケットであるならば、関連するサブパケットをマークするために、１ビットのＥＯＰフィールド（エンドオブパケット）がセットされる。現在のグループについて、特定のデコーダによって処理されるサブパケットが、デコーダに割り当てられるべき最後のサブパケットであるならば、関連するサブパケットをマークするために、１ビットのＥＯＧフィールド（エンドオブグループ）がセットされる。３ビットのDEC_SELフィールド中の値は、二つのデコーダのうちのいずれがサブパケットを処理するべきか、又は、二つのデコーダのいずれもサブパケットを処理してはならないかを、判定する。処理回路１１５は、複数のデコーダのうちのいずれがサブパケットに対してデコードを実行するべきか又はテストモードにおいて該複数のデコーダのいずれも使用されてはならないかを指定するために、このフィールドにおいてその値をセットすることができる。
【００２３】
DEC_GEN_TX_ACKフィールドは、ＤＤＥ ＷＣＳＭＳＣ １２５が、送信チャネル１１４（図５を参照）へのポイント・ツー・ポイントの導線２３７上へ、ハードウェア・イベント・トリガー信号をアサートするべきかどうかを示す。処理回路１１５は、送信チャネルに提供されるタスク・インストラクションを介して、送信チャネル１１４におけるトランスミッションをセットアップする。ここで、該トランスミッションは、デコーダ・ブロック２０２による処理の結果に応じて、承認（acknowledgement）（ＡＣＫ）トランスミッションであるか、あるいは、否定的な承認（negative acknowledgement）（ＮＡＣＫ）トランスミッションであろう。このトリガー信号がデコーディング・オペレーションの結果をチャネル１１４（図５を参照）に供給し、それによってトランスミッションがＡＣＫであるか又はＮＡＣＫであるかを判定するように、処理回路１１５はまた、フロー制御ロジック２０７に、導線２３７上へ、ハードウェア・イベント・トリガー信号をアサートさせる。この方法におけるハードウェア・イベント・トリガー信号の使用は、送信デバイスにＡＣＫ／ＮＡＣＫを返す際におけるレイテンシーを低減する。
【００２４】
図１０は、下で説明されるオペレーション例においてＤＤＥ ＷＣＳＭＳＣ １２５により処理されるサブパケットのグループ３００のダイアグラムである。グループ３００は、２つのパケットを含む：パケット＃１及びパケット＃２。図中の個々のサブパケットは、第１の数字、そしてコロンが続き、そして第２の数字が続く形の表記法によって識別される。第２の数字は、パケット番号を示す。第１の数字は、そのパケット中でのサブパケットの番号を示す。図示されるように、各々のサブパケットは、ＣＲＣ値を含む。
【００２５】
図１１は、デコーダ２０５及び２０６により図１０のサブパケットをデコードする第１のシナリオを説明する図である。各々のサブパケットは、関連するタスク・インストラクションによって、二つのデコーダのうちで選択された一つによりデコードされるように割り当てられる。第１のパケットのサブパケット１：１及び２：１が、デコーダ＃１（デコーダ２０５）によりデコードされることになっており、一方、サブパケット３：１、４：１及び５：１がデコーダ＃２によりデコードされることになっている。デコーダ＃１が第１のパケットについてそれに割り当てられたすべてのサブパケットをデコードした後に、それは第２のパケットのサブパケット６：２、７：２及び８：２をデコードすることになっている。デコーダ＃２が第１のパケットについてそれに割り当てられたすべてのサブパケットをデコードした後に、それは第２のパケットのサブパケット９：２と及び０：２をデコードすることになっている。図１１のダイアグラムにおいて、時間は左から右に広がる。図１１のダイアグラム中の各々のサブパケットの処理の継続時間（duration）は、サブパケットを表しているブロックの長さによって示される。様々なサブパケットをデコードする際に消費される時間のために、デコーダ＃１が第２のパケットのサブパケットをデコードし終わる前に、デコーダ＃２は、矢印３０１により示される時点で第２のパケットのサブパケットをデコードし終わる。
【００２６】
図１２は、デコーダ２０５及び２０６により図１０のサブパケットをデコードする第２のシナリオを説明する図である。図１２のシナリオにおいて、様々なサブパケットをデコードする際に消費される時間のために、デコーダ＃２が第２のパケットのサブパケットをデコードし終わる前に、デコーダ＃１は、矢印３０２で示される時点で第２のパケットのサブパケットをデコードし終わる。いずれのシナリオが起こるかにかかわらず、処理が完了されたことを示すただ一つのインターラプトが、処理回路１１５に送信されることが望まれる。処理回路１１５によりＤＤＥ ＷＣＳＭＳＣ １２５がどのように設定されるかに応じて、第１のパケットのすべてのサブパケットが処理された後に、更なるインターラプトが処理回路１１５に送信されることが要求されても良い。下で説明されるように、新しいＤＤＥ ＷＣＳＭＳＣ １２５は、これらの機能を実行するように設定可能である。
【００２７】
図１３は、新たなＤＤＥ ＷＣＳＭＳＣ １２５が、第１のパケットの最後のパケットのデコードの完了に応じて、唯一の（one and only one）インターラプトを生成する方法、及び、該ＤＤＥ ＷＣＳＭＳＣ １２５が、グループの最後のパケットのデコードの完了に応じて、唯一のインターラプトを生成する方法を示す図である。一つの新しい態様において、処理回路１１５は、デコードのためにデコーダに割り当てられているパケットの最後のサブパケットをマークする。例えば、デコードのためにデコーダ＃１に割り当てられている第１のパケットの最後のサブパケットは、サブパケット２：１である。このサブパケット２：１は、したがって、サブパケット２：１のためのＤＤＥ実行タスク・インストラクションにおけるＥＯＰビットをセットすることによって、第１のパケットの最後のサブパケットであることを示される。このマーキングは、図１３中でクロスハッチングされたマーク３０３により図式的に示される。同様に、デコードのためにデコード＃２に割り当てられている第１のパケットの最後のサブパケットは、サブパケット５：１である。このサブパケットは、したがって、サブパケット５：１のためのＤＤＥ実行タスク・インストラクションにおけるＥＯＰビットをセットすることによって、第１のパケットの最後のサブパケットであることを示される。このマーキングは、図１３中でクロスハッチングされたマーク３０４により図式的に示される。
【００２８】
複数のデコーダのうちの一つが、セットされているＥＯＰマーカーでマークされたサブパケットのデコードを完了するとき、そのデコーダは、ちょうどデコードされたサブパケットのDEC_PKT_NUMBERにより判定されるそのパケット＃１完了（PACKET#1 DONE）ビット及びパケット＃２完了（PACKET#2 DONE）ビットのうちの適切な一つをセットすることによって、パケット完了インジケーション（packet done indication）を生成する。パケット＃１完了ビット及びパケット＃２完了ビットは、フロー制御ロジック２０７中に位置する。フロー制御ロジック２０７中のパケット＃１完了ビット及びパケット＃２完了ビットの両方がセットされていることが検出された場合に、インターラプト生成器２２９は、インターラプト導線２３１上でインターラプト信号をアサートする。これは、図１３中に矢印３０５で示される。デコーダが各々のサブパケットのデコードを完了するにつれて、デコーダは、ＣＲＣパス／フェイル・ビット２２７中の対応するビットを、サブパケットに対して実行されるＣＲＣチェックがパスされたか又はフェイルされたかに応じてセット又はリセットされるようにする。パス／フェイル・ビットのパケット番号は、デコードされているサブパケットのDEC_PKT_NUMBER値によって与えられる。パス／フェイル・ビットのサブパケット番号は、デコードされているサブパケットのDEC_SUBPKT_INDEX値によって与えられる。これらのDEC_PKT_NUMBER（ＰＫＴ＃）値及びDEC_SUBPKT_INDEX（ＳＵＢＰＫＴ＃）値は、導線２３２によって、デコードをしているデコーダから、図７のフロー制御論理２０７に供給される。
【００２９】
導線２３１上でインターラプト信号がアサートされるとき、インターラプト信号は、インターラプト・コントローラ（図示せず）の入力リード線（input lead）に供給される。次に、インターラプト・コントローラは、処理回路１１５に供給されるインターラプト信号をアサートする。このインターラプトは、第１のパケットのすべてのサブパケットがデコードされたことを示す。インターラプト信号のアサートの結果、処理回路１１５は、インターラプトされて、インターラプト処理ルーチンへジャンプする。インターラプト処理ルーチンを実行する際に、処理回路１１５は、何がインターラプトを引き起こしたかについて判定するために、様々なリード（reads）を実行する。処理回路１１５は、ＡＨＢバスインタフェース２１０及び第２のバス１２０を介して、フロー制御ロジック２０７により収集されるＣＲＣビット２２７及び他のステータス情報をリードする。ステータス情報は、どのような状態が、インターラプト生成器２２９がインターラプト信号をアサートする原因になったかについて示す。処理回路１１５によるＣＲＣ値及びステータス情報をリードすることは、導線２３１上でのインターラプト信号がもはやアサートされないように、インターラプト生成器２２９がリセットされることをもたらす。インターラプトをクリアさせることは、図７中でCLEARとラベル付けされた信号により示される。ＣＲＣビット値及びステータス情報のリードバックは、図７において、STATUSとラベル付けされた信号により示される。一旦、導線２３１上でのインターラプト信号が、そのアンアサートされたステータスに戻されたならば、インターラプト信号は、他の状態を示すように再度アサートされることができる。
【００３０】
図１３に戻って、ＤＤＥ ＷＣＳＭＳＣ １２５は、グループのデコードの終わりにおいてインターラプトをアサートするように設定される。唯一のインターラプトは、この時刻３０６において生成されることになる。一つの新しい態様において、処理回路１１５は、デコードのために各々のデコーダに割り当てられているグループの最後のサブパケットをマークする。例えば、デコードのためにデコーダ＃１に割り当てられているグループの最後のサブパケットは、サブパケット８：２である。サブパケット８：２は、したがって、サブパケット８：２のためのＤＤＥ実行タスク・インストラクションにおけるＥＯＧビットをセットすることによって、グループの最後のサブパケットであることを示される。このマーキングは、図１３中でソリッドブラックのマーク３０７により示される。デコードのためにデコード＃２に割り当てられているグループの最後のサブパケットは、サブパケット１０：２である。サブパケット１０：２は、したがって、サブパケット１０：２のためのＤＤＥ実行タスク・インストラクションにおけるＥＯＧビットをセットすることによって、グループの最後のサブパケットであることを示される。このマーキングは、図１３中でソリッドブラックのマーク３０８により示される。複数のデコーダのうちの一つが、セットされているＥＯＧビットでマークされたサブパケットのデコードを完了するとき、そのデコーダは、そのグループ完了（GROUP DONE）ビットをセットすることによって、グループ完了インジケーション（group done indication）を生成する。グループ完了（GROUP DONE）ビットの両方ともセットされるとき、インターラプト生成器２２９は、インターラプト・導線２３１上でインターラプト信号をアサートする。これは、図１３中に矢印３０６で示される。時刻３０５においてＥＯＰ状態により生成されるインターラプトの場合のように、処理回路１１５はインターラプトされる。処理回路１１５は、インターラプト処理ルーチンを実行することによって対応する。そして、それの実行は、処理回路１１５が、フロー制御ロジック２０７からＣＲＣ値及び他のステータス情報をリードすることをもたらす。ステータス情報リード（read）は、エンドオブグループ（ＥＯＧ）状態のためにインターラプト信号がアサートされたことを示す。ＣＲＣ値及びステータス情報をリードすることは、他の状態の発生をシグナルするためにそれが再度アサートされることができるように、インターラプト信号がそのアンアサートされたステータスに戻すことをもたらす。図１３の例において、たとえ複数のデコーダが第１のパケットの複数のサブパケットを処理する際に使用されるとしても、信号をアサートするＥＯＰがただ一度だけ起こることは、留意されるべきである。図１３の例において、たとえ複数のデコーダがグループの最後のパケットをデコードする際に使用されるとしても、信号をアサートするＥＯＧがただ一度だけ起こることもまた、留意されるべきである。第１のパケットについて複数のサブパケットをデコードすることを完了した後に、複数のデコーダのいずれも停止されず、むしろ、すべてのデコーダは、タスク・インストラクションによりインストラクトされるように、サブパケットをデ���ードすることを継続する。図７の実施態様において、デコーダは、ＥＯＧマークにより示されるように、グループのためにそれに割り当てられた最後のサブパケットをデコードすることを完了するとき、フロー制御ロジック２０７は、そのデコーダのオペレーションを停止させるためにもとのデコーダへ送信される停止信号をアサートする。図７において、これら停止信号は、導線２３５及び２３６を横切って通信される。したがって、図１３のシナリオにおいて、時刻３０９において、最初に処理を完了する第２のデコーダ＃２は、停止する。停止状態は、処理回路１１５によるインターラプトのクリアに応じて、取り除かれる。
【００３１】
図１４は、デコーダ＃１がデコーダ＃２の前にグループの複数のサブパケットをデコードし終わる第２のシナリオにおいて、新しいＤＤＥ ＷＣＳＭＳＣ １２５がオペレートする方法を示すダイアグラムである。デコーダ＃１がサブパケット２：１をデコードすることを完了するとき、それは、デコーダ＃１のためのパケット＃１完了ビットが、フロー制御ロジック２０７においてセットされることをもたらす。これは、導線２３２を横切って適切なステータス信号を送信することによって達成される。適切なステータス信号は、完了（DONE）信号、パケット・インデックスＰＫＴ＃、及び、エンドオブパケット（ＥＯＰ）信号を含む。たとえデコーダ＃１が第１のパケットのためにそれに割り当てられたすべてのサブパケットをデコードすることを完了したとしても、そして、たとえ第１のパケットのより多くのサブパケットが他のデコーダ（デコーダ＃２）によりデコードされないままであるとしても、デコーダ＃１はそれでも遅延なしにサブパケットをデコードし続ける。デコーダ＃１は、直ちにサブパケット６：２をデコードし始める。デコーダ＃２は第１のパケットのサブパケットをまだデコードしているので、デコーダ＃２のためのパケット＃２完了ビットは、この時点では、セットされない。デコーダ＃２が第１のパケットのためにそれに割り当てられた最後のサブパケット（サブパケット５：１）をデコードし終わるとき、デコーダ＃２は、フロー制御ロジック２０７においてデコーダ＃２のためのパケット＃１完了ビットをセットすることによって、パケット完了インジケーションを生成する。両方のパケット完了ビットがセットされるので、インターラプト・コントローラ２２９は、時刻３１０において、導線２３１上でインターラプト信号をアサートする。同様に、インターラプト信号は、グループのためにすべてのそれらの割り当てられたサブパケットをデコードすることを完了した両方のデコーダに応答して、時刻３１１において一度アサートされるだけである。第１のデコーダ（デコーダ＃１）は、時刻３１２において、グループのその最後の割り当てられたサブパケットをデコードすることを完了した。フロー制御ロジック２０７にグループ完了インジケーションを供給している第１のデコーダのために、フロー制御ロジック２０７は、この状態を知っている。フロー制御ロジック２０７は、導線２３５上でもとのデコーダ＃１へ供給される停止信号をアサートすることによって対応し、それによって、デコーダ＃１を停止させる。一旦、ＥＯＧインターラプトに応答して処理回路１１５がＣＲＣ情報及び他のステータス情報をリードしたならば、停止状態は取り除かれる。
【００３２】
図１５は、複数のデコーダがパケットの様々なサブパケットをデコードするために共に働く（ステップ４０１）方法４００のフローチャートである。特定のデコーダによりデコードされるサブパケットの一部は、複数のパケットのうちの特定のパケット（“ＰＫＴ”としてここで示される。）からである。特定のパケットＰＫＴは、パケット・グループ中のいずれのパケットであることもできる。例えば、図１３で示すように、第１のパケット（“ＰＫＴ”パケット）のサブパケット１：１及び２：１は、第１のデコーダによりデコードされ、一方、第１のパケットのサブパケット３：１,４：１及び５：１は、第２のデコーダによりデコードされる。そのデコーダが、該デコーダがデコードするために割り当てられていたパケットＰＫＴの最後のサブパケットをデコードしたとき、パケット完了インジケーションが、デコーダから受信される（ステップ４０２）。例えば、図１３で示すように、第１のデコーダは、第１のパケット（“ＰＫＴ”パケット）のサブパケット１：１及び２：１をデコードするように割り当てられた。そして、第１のデコーダが、サブパケット２：１（それは、第１のデコーダがデコードすることになっている第１のパケットの最後のサブパケットである）をデコードすることを完了するとき、第１のデコーダは、第１のパケット完了インジケーションを生成する。第１のパケット完了インジケーションは、図７のフロー制御論理２０７により受信され、そして、その結果、第１のデコーダのためのパケット＃１完了ビットがセットされる。同様に、第２のデコーダは、第１のパケットのサブパケット３：１,４：１及び５：１をデコードするように割り当てられた。第２のデコーダが、サブパケット５：１（それは、第２のデコーダがデコードすることになっている第１のパケットの最後のサブパケットである）をデコードすることを完了したとき、第２のデコーダは、第２のパケット完了インジケーションを生成する。第２のパケット完了インジケーションは、図７のフロー制御論理２０７により受信され、そして、その結果、第２のデコーダのためのパケット＃１完了ビットがセットされる。パケット完了インジケーションが、特定のパケットＰＫＴのサブパケットをデコードしているすべてのデコーダから受信されたならば（ステップ４０３）、アクションが開始される（ステップ４０４）。一つの例において、開始されるアクションは、フロー制御ロジック２０７による導線２３１上のインターラプト信号のアサートである。処理回路１１５は、それから、フロー制御ロジック２０７から情報を読み込むことによって、対応しても良い。そして、それによって、インターラプト信号をリセットする。
【００３３】
本明細書で説明される技術は、様々な手段により実装されても良い。一つ又は複数の例示的な実施形態において、説明される機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせにより実行されても良い。ソフトウェアで実装される場合には、機能は、コンピュータ読み取り可能な媒体に、１又は複数のインストラクション又はコードとして、格納され又は伝送されても良い。コンピュータ読み取り可能な媒体は、或る場所から他の場所へのコンピュータ・プログラムの転送を容易にする任意の媒体を含むコンピュータ記憶媒体及び通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスできる任意の利用可能な媒体であっても良い。制限ではなく、例として、上記コンピュータ読み取り可能な媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、他の光ディスク記憶装置、磁気ディスク記憶装置若しくは他の磁気記憶装置、又は、インストラクション若しくはデータ構造の形で所望のプログラムコード手段を伝えるかか若しくは記憶するのに使用でき、且つ、コンピュータによってアクセスできる任意の他の媒体を含むことができる。また、任意のコネクション（connection）は、適切にコンピュータ読み取り可能な媒体と呼ばれる。例えば、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者線（ＤＳＬ）、又は、例えば赤外線、無線、マイクロ波のような無線技術を使用することによって、ウェブサイト、サーバ、又は他のリモートソースからソフトウェアが送信される場合に、その同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、又は、例えば赤外線、無線、マイクロ波のような無線技術は、媒体の定義に含まれる。本明細書で用いられるディスク（Disk）及びディスク（disc）は、コンパクトディスク（ＣＤ）、レーザーディスク（登録商標）、光ディスク、デジタルバーサタイルディスク（ＤＶＤ）、フロッピー（登録商標）ディスク及びブルーレイディスク（登録商標）を含む。ここで、ディスク（disks）は、通常、磁気的にデータを複製（reproduce）し、一方、ディスク（discs）は、レーザーを使って光学的にデータをさせる。上記の組み合わせはまた、コンピュータ読み取り可能な媒体の範囲の中に含まれるべきである。
【００３４】
ある特定の実施態様がインストラクションの目的のために上で説明されるが、この特許文献の教示は一般的な適用性をもち、上で説明される特定の実施態様に制限されない。したがって、説明された特定の実施態様の様々な修正、適応及び様々な特徴の組み合わせは、下で説明されるクレームの要旨を逸脱しない範囲で施されることができる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］  複数のデコーダ（各々のデコーダは、パケット・グループの１又は複数のサブパケットのシーケンスをデコードするタスクを割り当てられることができる）（該各々のデコーダは、該デコーダが、一つのパケットのすべてのサブパケットのデコードのうちの割り当てられたタスクをすべて完了した場合には、パケット完了インジケーションを生成する）と、
前記複数のデコーダの各々から前記パケット完了インジケーションを受信し、それらパケット完了インジケーションに少なくとも部分的に基づいて、インターラプト信号をアサートする（該インターラプト信号は、いずれかのデコーダが前記パケットのサブパケットをデコードしている時間の間はアサートされず、むしろ、前記パケットのいずれかのサブパケットをデコードしたあらゆるデコーダからパケット完了インジケーションが受信された後にのみアサートされる）制御回路とを含む回路。
［Ｃ２］  前記パケット完了インジケーションは、完了信号及びエンドオブパケット信号を含み、  前記完了信号は、デコーダから前記制御回路に伸びる第１の導線上に存在し
前記エンドオブパケット信号は、前記デコーダから前記制御回路に伸びる第２の導線上に存在するＣ１の回路。
［Ｃ３］  前記デコーダが前記パケット・グループのすべてのサブパケットのデコードのうちの前記割り当てられたタスクをすべて完了した場合に、前記各々のデコーダは、グループ完了インジケーションを供給し、
前記制御回路は、前記複数のデコーダの各々からグループ完了インジケーションを受信するＣ１の回路。
［Ｃ４］  前記制御回路は、複数の停止信号を生成し、
前記複数の停止信号のうちの一つは、前記複数のデコーダのうちの対応するそれぞれの一つに供給されるＣ１の回路。
［Ｃ５］  前記制御回路は、前記複数のデコーダが前記グループのサブパケットのデコードのうちのそれらに割り当てられたタスクをすべて完了すると、前記複数のデコーダうちの個々のものを停止させるために前記停止信号を使用するＣ４の回路。
［Ｃ６］  前記制御回路は、前記パケットのサブパケットをデコードしたあらゆるデコーダから受信されたパケット完了インジケーションに応答して前記インターラプト信号をアサートするように設定可能であり、
前記制御回路はまた、一つのパケット完了インジケーションの受信に応答して該制御回路が前記インターラプト信号をアサートしないように設定可能であるＣ１の回路。
［Ｃ７］  前記インターラプト信号は、エンドオブパケット（ＥＯＰ）インターラプト信号であり、
前記制御回路はまた、前記ＥＯＰインターラプト信号をアサートしないように設定可能であるＣ１の回路。
［Ｃ８］  前記回路は、前記複数のデコーダのうちの一つが第１のパケットのサブパケットのシーケンスをデコードし、前記制御回路にパケット完了インジケーションを供給し、停止されることなく第２のパケットのサブパケットのシーケンスのデコードを開始するように動作可能であり、
前記第１及び第２のパケットは、前記グループのパケットであり、
前記制御回路は、該制御回路が前記一つのデコーダから前記パケット完了インジケーションを受信した時点では前記インターラプト信号をアサートせず、むしろ、パケット完了インジケーションが、前記パケットのいずれかのサブパケットをデコードしたあらゆるデコーダから受信された後でのみ、前記インターラプト信号をアサートするＣ１の回路。
［Ｃ９］  デコーダにより供給される前記パケット完了インジケーションは、サブパケット・インデックスとともに前記制御回路により受信され、
前記サブパケット・インデックスは、前記デコーダがデコードした前記パケットの最後のサブパケットを識別するＣ１の回路。
［Ｃ１０］  デコーダにより供給される前記パケット完了インジケーションは、パケット・インデックスとともに前記制御回路により受信され、
前記パケット・インデックスは、前記パケット完了インジケーションが関係する前記パケットを識別するＣ１の回路。
［Ｃ１１］  タスク・インストラクションを生成することによって、サブパケットをデコードするタスクを、前記複数のデコーダのうちの一つに割り当てることができるプロセッサを更に含み、
前記タスク・インストラクションは、前記サブパケットがバッファ中のどこに位置するかを示す情報を含むＣ１の回路。
［Ｃ１２］  タスク・インストラクションを生成することによって、サブパケットをデコードするタスクを、前記複数のデコーダのうちの一つに割り当てることができるプロセッサを更に含み、
前記タスク・インストラクションは、前記サブパケットが、パケットのサブパケットのシーケンスの最後のサブパケットであるかどうかのインジケーションを含み、
前記サブパケットのシーケンスは、前記一つのデコーダによりデコードされるＣ１の回路。
［Ｃ１３］  タスク・インストラクションを生成することによって、サブパケットをデコードするタスクを、前記複数のデコーダのうちの一つに割り当てることができるプロセッサを更に含み、
前記タスク・インストラクションは、前記サブパケットが、パケット・グループのサブパケットのシーケンスの最後のサブパケットであるかどうかのインジケーションを含み、  前記サブパケットのシーケンスは、前記一つのデコーダによりデコードされるＣ１の回路。
［Ｃ１４］  前記複数のデコーダのうちの一つは、タスク・インストラクションに応答してサブパケットをデコードし、
前記タスク・インストラクションは、サブパケットを識別し、及び、エンドオブパケット・ビットを含むフィールドを含み、
前記デコーダは、前記エンドオブパケット・ビットが予め定められたバイナリの値を持つ場合に、前記サブパケットのデコードの完了に応じて、そのパケット完了インジケーションをアサートするＣ１の回路。
［Ｃ１５］  第１のサブパケットのシーケンス（該第1のサブパケットの一部は第１のパケットからのものであり、該第１のサブパケットの他のものは第２のパケットからのものである）を、該第１のサブパケットのうちの最後の一つがデコードされるまで停止することなく、デコードするように構成された第１のターボ・デコーダと、
第２のサブパケットのシーケンス（該第２のサブパケットの一部のものは第１のパケットからのものであり、該第２のサブパケットの他のものは第２のパケットからのものである）を、該第２のサブパケットのうちの最後の一つがデコードされるまで停止することなく、デコードするように構成された第２のターボ・デコーダと、
処理回路と、
前記第１のパケットのすべてのサブパケットがデコードされたとき、前記処理回路に対してアラートするように設定可能な制御回路とを含む回路。
［Ｃ１６］  前記第１のサブパケットは、パケット・グループのサブパケットであり、
前記第２のサブパケットは、同一のパケット・グループのサブパケットであり、
前記第１のターボ・デコーダは、前記第２のターボ・デコーダが前記グループの前記第２のサブパケットのすべての復号化を完了する前に、それが前記グループの前記第１のサブパケットのすべての復号化を完了する場合に、サブパケットの復号化を停止し、
前記第２のターボ・デコーダは、前記第１のターボ・デコーダが前記グループの前記第１のサブパケットのすべての復号化を完了する前に、それが前記グループの前記第２のサブパケットのすべての復号化を完了する場合に、サブパケットの復号化を停止するＣ１５の回路。
［Ｃ１７］  パケット・グループの複数のサブパケット（該サブパケットの一部のものは、第１のパケットからであり、該サブパケットの他のものは、第２のパケットからであり、該パケット・グループは、第１及び第２パケットを含む）をデコードするために複数のデコーダを使用することと、
前記第１のパケットのサブパケットが前記複数のデコーダによりデコードされている時間の間中、アンアサートされたステータスにおいて、インターラプト信号を維持することと、
前記第１のパケットのサブパケットのすべてがデコードされた場合に、前記インターラプト信号をアサートすることを含む方法。。
［Ｃ１８］  前記複数のデコーダのうちの第１のデコーダは、前記第１のパケットのサブパケットをデコードし、停止せずに前記第２のパケットのサブパケットをデコードし、
前記複数のデコーダのうちの第２のデコーダは、前記第１のパケットのサブパケットをデコードし、停止せずに前記第２のパケットのサブパケットをデコードするＣ１７の方法。
［Ｃ１９］  前記第１のパケットのサブパケットの一部のものは、前記複数のデコーダのうちの第１のデコーダによりデコードされ、
前記第１のパケットのサブパケットの他のものは、前記複数のデコーダのうちの第２のデコーダによりデコードされるＣ１７の方法。
［Ｃ２０］  前記複数のデコーダの各々からパケット完了インジケーションを受信することと、
前記複数のデコーダから受信された前記パケット完了インジケーションを、前記インターラプト信号をいつアサートするべきかについて判定するために使用することを更に含むＣ１７の方法。
［Ｃ２１］  前記複数のデコーダのうちの他のデコーダが前記グループのサブパケットのデコードを完了する前に前記グループのサブパケットのデコードを完了した、前記複数のデコーダのうちのいかなるデコーダをも停止させることを更に含むＣ１７の方法。
［Ｃ２２］  第１のタスク・インストラクション（該第１のタスク・インストラクションは、第１のサブパケットを識別する識別情報を含み、該第１のタスク・インストラクションは、更に、マーカーを含む）を受信することと、
前記第１のタスク・インストラクションにおける前記識別情報によりに指示される前記第１のサブパケットをデコードし、前記第１のタスク・インストラクションの前記マーカーがセットされた場合に、該デコードの完了に応じて、制御回路における第１のビットをセットすることと、
第２のタスク・インストラクション（該第２のタスク・インストラクションは、第２のサブパケットを識別する識別情報を含み、該第２のタスク・インストラクションは、更に、マーカーを含み、前記第１及び第２のサブパケットは、一つのパケットのサブパケットである）を受信することと、
前記第２のタスク・インストラクションにおける前記識別情報によりに指示される前記第２のサブパケットをデコードし、前記第２のタスク・インストラクションの前記マーカーがセットされた場合に、該デコードの完了に応じて、前記制御回路における第２のビットをセットすることと、
アクションを開始するために前記制御回路において前記第１及び第２のマーカーを使用することを含む方法。
［Ｃ２３］  前記開始されるアクションは、前記制御回路から出力されたインターラプト信号のアサートであるＣ２２の方法。
［Ｃ２４］  前記開始されるアクションは、承認（ＡＣＫ）トランスミッションを送信することであるＣ２２の方法。
［Ｃ２５］  前記第１のタスク・インストラクションの前記マーカーは、エンドオブパケット（ＥＯＰ）マーカー・ビットであるＣ２２の方法。
［Ｃ２６］  前記第１のタスク・インストラクションのマーカーは、エンドオブグループ（ＥＯＧ）マーカー・ビットであり、
前記パケットは、前記グループの複数のパケットのうちの一つのパケットであるＣ２２の方法。
［Ｃ２７］  第１のサブパケットのシーケンス（該第1のサブパケットの一部は第１のパケットからのものであり、該第１のサブパケットの他のものは第２のパケットからのものである）をデコードするように構成された第１のターボ・デコーダと、
第２のサブパケットのシーケンス（該第２のサブパケットの一部のものは第１のパケットからのものであり、該第２のサブパケットの他のものは第２のパケットからのものである）をデコードするように構成された第２のターボ・デコーダと、
前記第１のターボ・デコーダからパケット完了インジケーションを受信するための及び前記第２のターボ・デコーダからパケット完了インジケーションを受信するための手段と含み、
前記手段は、更に、前記第１のパケットのサブパケットが前記第１及び第２のデコーダによりデコードされている時間の間中、アンアサートされたステータスにおいて、パケット完了インジケーション信号を維持するための、及び、前記第１のパケットのサブパケットのすべてがデコードされた場合に、前記パケット完了インジケーション信号をアサートするためのものである装置。
［Ｃ２８］  前記装置は、複数のモードのうちの選択可能な一つに設定可能であり、
一つのモードにおいて、前記手段は、パケット完了インターラプト信号をアサートしないように設定されるＣ２７の装置。
［Ｃ２９］  前記装置は、複数のモードのうちの選択可能な一つに設定可能であり、
一つのモードにおいて、前記手段は、グループ完了インターラプト信号をアサートせず、他のモードにおいて、前記手段は、グループ完了インターラプト信号をアサートするＣ２７の装置。
［Ｃ３０］  第３のパケットのサブパケットが前記第２のターボ・デコーダによりデコードされないように、該第３のパケットのサブパケットのすべてが前記第１のターボ・デコーダによりデコードされることができるＣ２７の装置。
［Ｃ３１］  前記手段は、前記第１のパケットの各々のサブパケット及び前記第２のパケットの各々のサブパケットについて巡回冗長検査（ＣＲＣ）パス／フェイル・ビットを格納するためのものであるＣ２７の装置。
［Ｃ３２］  コンピュータ・プログラム製品において、
コンピュータに、第１のデコーダが第１のサブパケット（第１のサブパケットのうちの一部のものは、第１のパケットからであり、第１のサブパケットのうちの他のものは、第２のパケットからである）のシーケンスをデコードするように、該第１のデコーダを制御させるための、及び、該第１のデコーダが該第１のパケットの第１のサブパケットのすべてのデコードの完了に応じて、該第１のデコーダが第１のパケット完了インジケーションを生成するように、該第１のデコーダを制御させるための、コードと、
前記コンピュータに、第２のデコーダが第２のサブパケット（第２のサブパケットのうちの一部のものは、第１のパケットからであり、第２のサブパケットのうちの他のものは、第２のパケットからである）のシーケンスをデコードするように、該第２のデコーダを制御させるための、及び、該第２のデコーダが該第１のパケットの第２のサブパケットのすべてのデコードの完了に応じて、該第２のデコーダが第２のパケット完了インジケーションを生成するように、該第２のデコーダを制御させるための、コードと、
前記コンピュータに、制御回路がパケット完了インジケーションを生成するために、前記第１及び第２のパケット完了インジケーションを使用するように（前記パケット完了インジケーション信号は、前記第１又は前記第２のデコーダのいずれかが前記パケットのサブパケットをデコードしている時間の間は生成されず、むしろ、前記第１のデコーダから前記第１のパケット完了インジケーションが受信され且つ前記第２のデコーダから前記第２のパケット完了インジケーションが受信された後でのみ生成される）、該制御回路を制御させるためのコードとを含むコンピュータ読み取り可能な媒体を含むコンピュータ・プログラム製品。
［Ｃ３３］  前記第１のデコーダは、停止せずに前記第１のパケットの前記第１のサブパケット及び前記第２のパケットの第１のサブパケットをデコードし、
前記第２のデコーダは、停止せずに前記第１のパケットの前記第２のサブパケット及び前記第２のパケットの第２のサブパケットをデコードするＣ３２のコンピュータ・プログラム製品。
【図１】
0005474928.tif 000002
【図２】
0005474928.tif 000003
【図３】
0005474928.tif 000004
【図４】
0005474928.tif 000005
【図５】
0005474928.tif 000006
【図６】
0005474928.tif 000007
【図７】
0005474928.tif 000008
【図８】
0005474928.tif 000009
【図９】
0005474928.tif 000010
【図１０】
0005474928.tif 000011
【図１１】
0005474928.tif 000012
【図１２】
0005474928.tif 000013
【図１３】
0005474928.tif 000014
【図１４】
0005474928.tif 000015
【図１５】
0005474928.tif 000016