(57)【特許請求の範囲】
【請求項１】
無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＦＥＣ）を行う方法において、
性能交換中に応用階層順方向エラー訂正（Ａｐｐｌｉｃａｔｉｏｎ  Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＡＬ−ＦＥＣ）性能情報を伝送する段階と、
各パリティパケットのヘッダは、パリティパケット指示子を備え、ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、ｋ個の前記ソースパケットの集合に単一パリティ検査（Ｓｉｎｇｌｅ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ：ＳＰＣ）ＡＬ−ＦＥＣコードを適用する段階と、
メディア接続制御（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ：ＭＡＣ）階層及び物理（Ｐｈｙｓｉｃａｌ：ＰＨＹ）階層で、送信のために前記エンコーディングされたパケットを処理する段階と、を含み、
前記ＳＰＣ  ＡＬ−ＦＥＣコードは、非インターリーブされたモード及びインターリーブされたモードのうち一つを含み、
前記非インターリーブされたモードで前記ＳＰＣ  ＡＬ−ＦＥＣコードを適用するとき、前記システマティックパケット及び少なくとも一つのパリティパケットをエンコーディングすることは、
一つのパリティパケットのためにシーケンス番号ｉを生成する段階と、
前記ｋ個のソースパケットのためにシーケンス番号ｉ＋１、ｉ＋２、…、ｉ＋ｋを生成する段階と、
前記シーケンス番号ｉである前記パリティパケットのペイロードを計算するために、短いソースパケットには臨時的に送信されない仮想の０を付け加え、前記ｋ個のソースパケットにビット単位排他的論理和（Ａ  ｂｉｔ−ｗｉｓｅ  ＸＯＲ）を行う段階と、
を含み、
前記インターリーブされたモードで前記ＳＰＣ  ＡＬ−ＦＥＣコードを適用するとき、前記システマティックパケット及び少なくとも一つのパリティパケットをエンコーディングすることは、
各パリティパケットはソースパケットのｘ個の部分集合のうち一つに対応し、ｘ個のパリティパケットのためにシーケンス番号ｉ、ｉ＋１、ｉ＋２、…、ｉ＋ｘ−１を生成する段階と、
前記ｋ個のソースパケットのためにシーケンス番号ｉ＋ｘ、ｉ＋ｘ＋１、ｉ＋ｘ＋２、…、ｉ＋ｘ＋（ｋ−１）を生成する段階と、
連続的なシーケンス番号を持つソースパケットが他の部分集合に割り当てられるように、ｘ個の部分集合にかけて前記ｋ個のソースパケットをインターリーブする段階と、
前記対応するソースパケットの部分集合にビット単位排他的論理和を行うことで各パリティパケットのペイロードを計算する段階を含み、
前記パリティパケットに対するシーケンス番号は、前記対応するパリティパケットに対する前記ヘッダに含まれ、前記ｋ個のソースパケットのための前記シーケンス番号は、対応するシステマティックパケットのためのヘッダ内に含まれている、
ことを特徴とする無線通信デバイスのＦＥＣ実行方法。
【請求項２】
前記単一パリティ検査(Single  Parity  Check：ＳＰＣ)ＡＬ−ＦＥＣコードを適用する段階は、ハミングコーディング方式を使用してエンコーディングされたパリティパケットにＡＬ−ＦＥＣコードを適用することを特徴とする請求項１に記載の無線通信デバイスのＦＥＣ実行方法。
【請求項３】
システマティックパケット及びパリティパケットのうち少なくとも一つを含むパケットブロックを受信する段階と、
前記受信されたパケットブロック内に少なくとも一つのパケットが消失したかどうかを判断する段階と、
少なくとも一つのパケットが消失した場合、各受信されたパケット内の前記パリティパケット指示子を検査することで、前記受信されたパケットがＡＬ−ＦＥＣエンコーディングされたかどうかを判断する段階と、
前記ＡＬ−ＦＥＣコードが感知された場合、前記少なくとも１個の消失したパケットが復旧されるかどうかを判断する段階と、
前記少なくとも１個の消失したパケットが復旧されるかどうかの判断に対する対応として、前記受信されたシステマティック及びパリティパケットを使ってＡＬ−ＦＥＣデコーディングを行う段階と、をさらに含むことを特徴とする請求項１に記載の無線通信デバイスのＦＥＣ実行方法。
【請求項４】
前記受信されたパケットがＡＬ−ＦＥＣエンコーディングされたかどうかを判断する段階は、
受信されたパリティパケットのシーケンス番号に基づいて、前記受信されたパケットがインターリーブされたかどうかを定める段階をさらに含むことを特徴とする請求項３に記載の無線通信デバイスのＦＥＣ実行方法。
【請求項５】
無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正（ＦＥＣ）を行うための装置において、
他の通信デバイスと通信するために設定された送信器と、
性能交換中に、応用階層順方向エラー訂正（ＡＬ−ＦＥＣ）性能情報を伝送し、
ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、ｋ個の前記ソースパケットの集合に単一パリティ検査（ＳＰＣ）ＡＬ−ＦＥＣコードを適用し、各エンコーディングされたパケットのヘッダは、パリティパケット指示子を備え、
メディア接続制御（ＭＡＣ）階層及び物理（ＰＨＹ）階層で、送信のために前記エンコーディングされたパケットを処理するように設定され、前記送信器と結合されたコントローラを備え、
前記ＳＰＣ  ＡＬ−ＦＥＣコードは、非インターリーブされたモード及びインターリーブされたモードのうち一つを含み、
前記非インターリーブされたモードで前記ＳＰＣ  ＡＬ−ＦＥＣコードを適用するとき、前記コントローラは、
一つのパリティパケットのためにシーケンス番号ｉを生成し、
前記ｋ個のソースパケットのためにシーケンス番号ｉ＋１、ｉ＋２、…、ｉ＋ｋを生成し、
前記シーケンス番号ｉである前記パリティパケットのペイロードを計算するために、短いソースパケットには臨時的に送信されない仮想の０を付け加え、前記ｋ個のソースパケットにビット単位排他的論理和を行い、
前記インターリーブされたモードで前記ＳＰＣ  ＡＬ−ＦＥＣコードを適用するとき、前記システマティックパケット及び少なくとも一つのパリティパケットをエンコーディングすることは、
各パリティパケットはソースパケットのｘ個の部分集合のうち一つに対応し、ｘ個のパリティパケットのためにシーケンス番号ｉ、ｉ＋１、ｉ＋２、…、ｉ＋ｘ−１を生成する段階と、
前記ｋ個のソースパケットのためにシーケンス番号ｉ＋ｘ、ｉ＋ｘ＋１、ｉ＋ｘ＋２、…、ｉ＋ｘ＋（ｋ−１）を生成する段階と、
連続的なシーケンス番号を持つソースパケットが他の部分集合に割り当てられるように、ｘ個の部分集合にかけて前記ｋ個のソースパケットをインターリーブする段階と、
前記対応するソースパケットの部分集合にビット単位排他的論理和を行うことで各パリティパケットのペイロードを計算する段階を含み、
前記パリティパケットに対するシーケンス番号は、前記対応するパリティパケットに対する前記ヘッダに含まれ、前記ｋ個のソースパケットのための前記シーケンス番号は、対応するシステマティックパケットのためのヘッダ内に含まれている、
ことを特徴とするＦＥＣを行うための装置。
【請求項６】
前記コントローラは、
ハミングコーディング方式でエンコーディングされたパリティパケットにＡＬ−ＦＥＣコードを適用するようにさらに設定されることを特徴とする請求項５に記載のＦＥＣを行うための装置。
【請求項７】
前記コントローラは、
システマティックパケット及びパリティパケットのうち少なくとも一つを備えるパケットブロックを受信し、
受信されたパケットブロック内に少なくとも一つのパケットが消失したかどうかを判断し、
いずれかのパケットが消失した場合、各受信されたパケット内の前記パリティパケット指示子を検査することで、前記受信されたパケットがＡＬ−ＦＥＣエンコーディングされたかどうかを判断し、
前記ＡＬ−ＦＥＣコードが感知された場合、前記消失したパケットが復旧されるかどうかを判断し、
前記消失したパケットが復旧されるかどうかの判断に対する対応でとして、前記受信されたシステマティック及びパリティパケットを使ってＡＬ−ＦＥＣデコーディングを行うようにさらに設定されたことを特徴とする請求項５に記載のＦＥＣを行うための装置。
【請求項８】
前記コントローラは、
前記受信されたパケットがＡＬ−ＦＥＣエンコーディングされたかどうかを判断するときに受信されたパリティパケットのシーケンス番号に基づいて、前記受信されたパケットがインターリーブされたかどうかを定めるようにさらに設定されることを特徴とする請求項７に記載のＦＥＣを行うための装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的な無線連結を通じて信頼できるデータの伝送に係り、特に、無線ギガビットアライアンス（Ｗｉｒｅｌｅｓｓ  Ｇｉｇａｂｉｔ  Ａｌｌｉａｎｃｅ：ＷｉＧｉｇ、以下、ワイギグ）リンクを通じて通信するための応用階層における順方向エラー訂正（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＦＥＣ）フレームワークを具現するための方法及びシステムに関する。
【背景技術】
【０００２】
無線通信を通じて信頼できるデータの伝送のための多くのニーズが、技術者らに大きい挑戦を提示している。一般的に、ビデオメディアは、遅延の許容されない高い送信率を要求する。さらに、メディアは、ストリーミングＴＶチャネルなどのブロードキャストチャネル、または多いユーザのために大容量ファイルに圧縮されたビデオを送信するマルチキャストチャネルを通じて送信される。かかるチャネルの性格は、遅延が許容されないだけでなく、送信成功を知らせるためのフィードバックチャネルを持つオプションが除外される。結果的に、かかるシナリオで、送信の信頼性を補正するために代案的な技術が要求される。
【０００３】
ワイギグ（ＷｉＧｉｇ）規格は、マルチ・ギガビット速度の無線通信技術を対象とする。このように、ＷｉＧｉｇは、最近の無線ローカル領域ネットワーク（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ：ＬＡＮ）デバイスの性能を補足する高性能無線データ、ディスプレイ及びオーディオアプリケーションを可能にする。ＷｉＧｉｇの技術規格ＴＷＧ−２０１０−０７１６−００−ＷＧＡ−Ｄ１０２及びＰＷＧ−２０１１−００１９−００−ＡＶ  ＰＡＬ  ｓｐｅｃ  Ｄ０．９ｒ０：“ＷｉＧｉｇ  ＷＧＡ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”に開示されており、これは参照として本明細書に含まれる。
【０００４】
しかし、ＷｉＧｉｇ規格は、ブロードキャスト、マルチキャスト中に自動的繰り返し要請（Ａｕｔｏｍａｔｉｃ  Ｒｅｐｅａｔ  Ｒｅｑｕｅｓｔ：ＡＲＱ）方式の使用を許容しない。さらに、時間に敏感なアプリケーション（例えば、マルチメディア、ゲームなど）内で、特に、チャネルの長い中断（Ｏｕｔａｇｅｓ）及び障害（Ｂｌｏｃｋａｇｅ）及び相対的に遅いビームフォーミングアルゴリズムによる高いパケット損失率を経験する時は、ＡＲＱは、最も効果的なエラー制御方式ではない。ＡＲＱフィードバックの不在のため、物理階層順方向エラー訂正（Ｐｈｙｓｉｃａｌ  Ｌａｙｅｒ  Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ：ＰＨＹＦＥＣ）コードは、低いパケット損失率（約１０−５）を得るために十分に保護されない恐れがある。このように、パケット損失率を低減させるために第２のＦＥＣ方式が必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の一実施形態では、無線通信ネットワーク内の無線通信デバイスで順方向エラー訂正を行う方法が提供される。
【課題を解決するための手段】
【０００６】
一実施形態として、無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＦＥＣ）を行う方法が提供される。無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行う方法は、性能交換中に応用階層順方向エラー訂正（Ａｐｐｌｉｃａｔｉｏｎ  Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＡＬ−ＦＥＣ）性能情報を伝送する段階を含む。ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、ｋ個の前記ソースパケットの集合に単一パリティ検査（Ｓｉｎｇｌｅ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ：ＳＰＣ）ＡＬ−ＦＥＣコードを適用する。各パリティパケットのヘッダは、パリティパケット指示子を備る。ディア接続制御（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ：ＭＡＣ）階層及び物理（Ｐｈｙｓｉｃａｌ：ＰＨＹ）階層で、送信のために前記エンコーディングされたパケットを処理する。
【０００７】
他の実施形態として、無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行うための装置が提供される。無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行うための装置は、送信器及び送信器と結合されたコントローラを備える。送信器は、他の通信デバイスと通信する。コントローラは、性能交換中に応用階層順方向エラー訂正（ＡＬ−ＦＥＣ）性能情報を伝送し、ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、ｋ個の前記ソースパケットの集合に単一パリティ検査（ＳＰＣ）ＡＬ−ＦＥＣコードを適用し、エンコーディングされたパケットのヘッダは、パリティパケット指示子を備え、メディア接続制御（ＭＡＣ）階層及び物理（ＰＨＹ）階層で、送信のために前記エンコーディングされたパケットを処理する。
【０００８】
さらに他の実施形態として、無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正（ＦＥＣ）を行う方法が提供される。無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行う方法は、性能交換中に応用階層順方向エラー訂正（ＡＬ−ＦＥＣ）性能情報の伝送を含む。ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、ｋ個の前記ソースパケットの集合に単一パリティ検査（ＳＰＣ）ＡＬ−ＦＥＣコードを適用する。各パリティパケットのヘッダは、パリティパケット指示子を備える。そして、メディア接続制御（ＭＡＣ）階層及び物理（ＰＨＹ）階層で、送信のために前記エンコーディングされたパケットを処理する。
【発明の効果】
【０００９】
本発明の一実施形態によれば、外部（Ｏｕｔｅｒ）ＦＥＣ方式で許容レベルまでパケット損失率を大幅に低減させる。
【図面の簡単な説明】
【００１０】
本発明に開示された内容及び効果についてのさらに完全な理解のために、以下の詳細な説明は以下の図面と共に参照されねばならず、同じ参照番号は同じ構成要素を示す。
【図１】本明細書の原則によってワイギグを支援する無線ネットワーク１００を示す図面である。
【図２Ａ】本明細書の一実施形態による直交周波数分割多重接続送信経路の上位レベルのダイアグラムを示す図面である。
【図２Ｂ】本明細書の一実施形態による直交周波数分割多重接続受信経路の上位レベルのダイアグラムを示す図面である。
【図３】本明細書の一実施形態による応用階層順方向エラー訂正（Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ−Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：ＡＬ−ＦＥＣ）コーディング概念を示す図面である。
【図４】本明細書の一実施形態によるＡＬ−ＦＥＣ方式を示す図面である。
【図５Ａ】本発明の一実施形態による、非インターリーブされた単一パリティ検査（Ｎｏｎ−ｉｎｔｅｒｌｅａｖｅｄ  Ｓｉｎｇｌｅ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ）方式を示す図面である。
【図５Ｂ】本発明の一実施形態による、インターリーブされた単一パリティ検査方式を示す図面である。
【図６】本発明の一実施形態による、削除されたパケットを復旧するための畳み込み符号を示す図面である。
【図７】本発明の一実施形態による、ＡＬ−ＦＥＣを使ってエンコーディングされたパケットのヘッダの内容を示す図面である。
【図８】本発明の一実施形態による、無線通信システム内におけるＡＬ−ＦＥＣの使用のための一般的なプロセスを示す図面である。
【図９】本発明の一実施形態による、ＡＬ−ＦＥＣを使って送信するためのエンコーディングパケットのためのプロセスを示す図面である。
【図１０】本発明の一実施形態による、ＡＬ−ＦＥＣを使うデコーディングパケットのためのプロセスを示す図面である。
【発明を実施するための形態】
【００１１】
下記の発明の詳細な説明を読み取る前に、本特許明細書全般で使われる特定単語及び構文の定義を説明する。用語“備える、含む（Ｉｎｃｌｕｄｅ、Ｃｏｍｐｒｉｓｅ）”及びそれから派生される単語は、制限なしに含まれるという意味であり、用語“または（Ｏｒ）”は、及び／または（Ａｎｄ／Ｏｒ）の意味を含む。“係る（Ａｓｓｏｃｉａｔｅｄｗｉｔｈ）”及び“それに関する（Ａｓｓｏｃｉａｔｅｄ  ｔｈｅｒｅｗｉｔｈ）”及びそれから派生される単語は、含むために（Ｔｏ  ｉｎｃｌｕｄｅ）、含まれた（Ｂｅ  ｉｎｃｌｕｄｅｄ  ｗｉｔｈｉｎ）、係る（Ｉｎｔｅｒｃｏｎｎｅｃｔｗｉｔｈ）、入っている（Ｃｏｎｔａｉｎ）、入っており（ｂｅ  ｃｏｎｔａｉｎｅｄ  ｗｉｔｈｉｎ）、繋がる（Ｃｏｎｎｅｃｔ  ｔｏ  ｏｒ  ｗｉｔｈ）、連結された（Ｃｏｕｐｌｅｄ  ｔｏ  ｏｒ  ｗｉｔｈ）、伝達される（Ｂｅ  ｃｏｍｍｕｎｉｃａｂｌｅ  ｗｉｔｈ）、協力する（Ｃｏｏｐｅｒａｔｅ  ｗｉｔｈ）、インターリーブ（ｉｎｔｅｒｌａｖｅ）、並列する（Ｊｕｘｔａｐｏｓｅ）、近接する（Ｂｅ  Ｐｒｏｘｉｍａｔｅ  ｔｏ）、結合された（Ｂｅ  ｂｏｕｎｄ  ｔｏ  ｏｒ  ｗｉｔｈ）、関係がある（Ｈａｖｅ）、特性を持つ（Ｈａｖｅ  ａ  Ｐｒｏｐｅｒｔｙ  ｏｆ）などの意味でありうる。また用語“コントローラ”は、いずれかのデバイス、システムまたはそれらの部分の少なくとも一つの動作を制御することを意味し、かかるデバイスは、ハードウェア、ファームウエア及びソフトウェアまたは前記のものなどのうち少なくとも２つの組み合わせで具現できる。特定のコントローラと係る機能は、ローカル、遠隔、集中的または分散的であるということに留意せねばならない。当業者ならば、多くまたは大部分の場合で、本特許明細書全体で提供される特定単語及び文言のための定義を理解でき、かかる定義は、以前だけではなく今後の使用で、定義された単語及び文言で適用できる。
【００１２】
以下の図１ないし図１０、及び本特許明細書内の本明細書の原則を述べるために使われる多様な実施形態は、単に例示の方式であり、本明細書の範囲を制限するいかなる方式でも解釈できない。たとえ記述された本発明の実施形態がワイギグを支援する装置を示すとしても、本明細書の原則が無線通信システムの好適な配列によって具現されるということは、当該技術分野で理解できる。
【００１３】
図１は、本明細書の原則によってワイギグ（Ｗｉｒｅｌｅｓｓ  Ｇｉｇａｂｉｔ  Ａｌｌｉａｎｃｅ：ＷｉＧｉｇ）を支援する無線ネットワーク１００を図示する。図示された例で、無線ネットワーク１００は、アクセスノード（Ａｃｃｅｓｓ  Ｎｏｄｅ：ＡＮ）１０２、モバイルノード１０４、ディスプレイデバイス１０６、パソコン（ＰＣ）１０８及びカメラ１１を備える。ＡＮ  １０２は、ルータ、ベースステーション、ケーブルボックス、またはデータサービスを受信するいずれかの装置である。モバイルデバイス１０４は、携帯電話、個人用携帯端末機（ＰＤＡ）、タブレットデバイス、電子リーダーなどのポータブルデバイスである。ディスプレイデバイス１０６は、プロジエクター、テレビ、コンピュータディスプレイ、ステレオ受信機などの出力デバイスでありうる。カメラ１１０は、プリンタ、カムコーダ、ウェブカム、スキャナ、医療用映像装置などの周辺（Ｐｅｒｉｐｈｅｒａｌ）デバイスでありうる。すべてのデバイス１０２ないし１１０がワイギグを支援すると仮定すれば、それぞれのデバイス１０２ないし１１０は、少なくとも一つの他のデバイスとワイギグ連結を形成できる。例えば、ＰＣ  １０８は、オーディオ／ビデオ（Ａｕｄｉｏ／Ｖｉｄｅｏ：Ａ／Ｖ）データをディスプレイデバイス１０６に送信でき、カメラ（または他の周辺デバイス）１１０からデータを受信でき、モバイルデバイス１０４と同期化作業を行い、ＡＮ  １０２を通じてインターネットに接続できる。
【００１４】
図２Ａは、本明細書の一実施形態によって直交周波数分割多重接続（Ｏｒｔｈｏｇｏｎａｌ  Ｆｒｅｑｕｅｎｃｙ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ：ＯＦＤＭＡ）送信経路の上位レベルのダイアグラムを図示する。図２Ａ及び図２Ｂで、ＯＦＤＭＡ送信経路２００及びＯＦＤＭＡ受信経路２５０は、無線通信デバイスの送信器及び受信機内にそれぞれ具現される。一部の実施形態で、送信経路２００及び受信経路２５０の要素は、一つのトランシーバ内で結合される。
【００１５】
送信経路２００は、チャネルコーディング及び変調ブロック２０５、直列−並列変換（Ｓｅｒｉａｌ  ｔｏ  Ｐａｒａｌｌｅｌ：Ｓ−ｔｏ−Ｐ）ブロック２１０、Ｎサイズの逆高速フーリエ変換（Ｉｎｖｅｒｓｅ  Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ：ＩＦＦＴ）ブロック２１５、並列−直列変換（Ｐ−ｔｏ−Ｓ）ブロック２２０、周期的前置符号挿入ブロック２２５、アップコンバータ（Ｕｐ−Ｃｏｎｖｅｒｔｅｒ：ＵＣ）２３０を備える。受信経路２５は、ダウンコンバータ（Ｄｏｗｎ  Ｃｏｎｖｅｒｔｅｒ：ＤＣ）２５５、周期的前置符号除去ブロック２６０、直列−並列変換（Ｓ−ｔｏ−Ｐ）ブロック２６５、Ｎサイズの高速フーリエ変換（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ：ＦＦＴ）２７０、並列−直列変換（Ｐ−ｔｏ−Ｓ）ブロック２７５、チャネルデコーディング及び復調ブロック２８０を備える。
【００１６】
図２Ａ及び図２Ｂ内の構成要素のうち最小限の一部はソフトウェアで構成される一方、他の構成要素は、設定可能なハードウェアまたはソフトウェア及び設定可能なハードウェアの混合で具現される。特に、本明細書に記載したＦＦＴブロック及びＩＦＦＴブロックは、設定可能なソフトウェアアルゴリズムにより具現され、サイズＮは、具現によって修正される。また、無線通信デバイスは、図２Ａ及び図２Ｂ内の経路を具現するように設定された少なくとも一つのコントローラを備える。
【００１７】
さらに、たとえ本明細書はＦＦＴ及びＩＦＦＴを具現する実施形態を対象としているとしても、これは単に例示の方式であり、本明細書の範囲を制限するいかなる方式でも解釈できない。本明細書の代案的な実施形態で、ＦＦＴ関数及びＩＦＦＴ関数は、それぞれ離散フーリエ変換（Ｄｉｓｃｒｅｔｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ：ＤＦＴ）及び逆離散フーリエ変換（Ｉｎｖｅｒｓｅ  Ｄｉｓｃｒｅｔｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ：ＩＤＦＴ）に容易に代替されるということが分かる。ＤＦＴ及びＩＤＦＴ関数のために、Ｎ変数の値は整数（例えば、１、２、３、４など）であり、一方、ＦＦＴ及びＩＦＦＴ関数のために、Ｎ変数の値は２の指数（例えば、１、２、４、８、１６など）になりうるということが分かる。
【００１８】
さらに、他の実施形態で、送信経路及び受信経路は、共通要素（プリアンブル及びチャネルなどの）を共有する変調及びコーディング方式の他のタイプを使える。例えば、一実施形態は、小さくて低電力のポータブル器機のための低電力消耗を引き起こす単一キャリアを支援する。
【００１９】
送信経路２００で、チャネルコーディング及び変調ブロック２０５は、周波数−ドメイン変調シンボルのシーケンスを生産するための入力ビットであるコーディング（すなわち、低密度パリティ検査（Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ：ＬＤＰＣ）コーディング）及び変調（すなわち、ＱＰＳＫ、ＱＡＭ）が適用された情報ビットの集合を受信する。直列−並列変換ブロック２１０は、変調された直列シンボルを、Ｎ個の並列シンボルストリームを生成するために並列データに変換（すなわち、逆多重化）し、Ｎは、無線通信デバイスで使われるＩＦＦＴ／ＦＦＴのサイズである。次いで、ＮサイズのＩＦＦＴブロック２１５は、時間−ドメイン出力信号を生成するために、Ｎ個の並列シンボルストリームにＩＦＦＴ演算を行う。並列−直列変換ブロック２２０は、ＮサイズのＩＦＦＴブロック２１５から直列時間−ドメイン信号を生成するために、並列時間−ドメイン出力シンボルを変換（すなわち、多重化）する。次いで、周期的前置符号挿入ブロック２２５は、時間−ドメイン信号に周期的前置符号を挿入する。最後に無線チャネルを通じて伝送するために、アップコンバータ２３０は、周期的前置符号挿入ブロック２２５の出力をＲＦ周波数に変調（すなわち、アップコンバートする。信号は、ＲＦ周波数に変換される前にベースバンドでフィルタリングされる。
【００２０】
送信されたＲＦ信号は、無線チャネルを通じた後、受信するデバイスの受信経路２５０に到逹する。ダウンコンバータ２５５は、受信された信号をベースバンド周波数にダウンコンバートし、周期的前置符号除去ブロック２６０は、直列時間−ドメインベースバンド信号を生成するために、周期的前置符号を除去する。直列−並列変換ブロック２６５は、時間−ドメインベースバンド信号を並列時間ドメイン信号に変換する。次いで、ＮサイズのＦＦＴブロック２７０は、Ｎ個の並列周波数−ドメイン信号を生成するためにＦＦＴアルゴリズムを行う。並列−直列変換ブロック２７５は、並列周波数−ドメイン信号を、変調されたデータシンボルのシーケンスに変換する。チャネルデコーディング及び復調ブロック２８０は、変調されたシンボルを、原本の入力データストリームを復旧するために復調した後、デコーディングする。
【００２１】
オーディオ及びビデオの送信は、ワイギグのアプリケーションにおいて重要である。しかし、良好なビデオ品質のために、パケット損失率は１０−５より小さくなければならない。時間に敏感なアプリケーション（例えば、マルチメディア、ゲームなど）で、遅延制約はシステムの性能を制約する。時間に敏感なアプリケーションにおいて、再送信のために必要な動的バッファは、具現に相当な複雑度を追加する。そして、前述したように、ワイギグのメディア接続制御（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ：ＭＡＣ）階層は、ブロードキャスト／マルチキャストパケットのための確認（Ａｃｋｎｏｗｌｅｄｇｅｍｅｎｔｓ：ＡＣＫｓ）を許容しない。したがって、少ない損失、固定されたバッファと簡単な方式、再送信なし（Ｎｏ  Ｒｅｔｒａｎｓｍｉｓｓｉｏｎ）及び１０−５より小さなパケット損失率を容認できるアプリケーションが望ましい。
【００２２】
順方向エラー制御（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｎｔｒｏｌ：ＦＥＣ）方式は、かかるシナリオに好適な候補に該当する。実際に、ＦＥＣは、チャネルの通信に使われている。ワイギグ６０ＧＨｚ通信において、低密度パリティ検査（Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ：ＬＤＰＣ）コードＦＥＣ方式は、信頼できる通信を成就するために適用される。ＬＤＰＣコードは、システムの物理階層の部分であり、１／２、５／８、３／４及び１３／１６のコーディングレートを持つ。かかるコードは、ビットレベルにおける保護に良好なレベルを達成でき、一般的に１０−６より低いビットエラー率（Ｂｉｔ  Ｅｒｒｏｒ  Ｒａｔｅ：ＢＥＲ）を獲得できる。しかし、かかるＦＥＣ方式を使って成就可能なパケット損失率は、約０．０１である。結果的に、外部ＦＥＣ方式は、パケット損失率を許容レベル（約１０−５）にだいぶ低減させる。特に、応用階層ＦＥＣ（ＡＬ−ＦＥＣ）コードは、これらの動的速度、低いオーバーヘッド及び具現コスト側面で最も適した候補である。本明細書で、ＡＬ−ＦＥＣは、ＭＡＣ階層上のあらゆる機能的階層上で行われるＦＥＣを参照できる。
【００２３】
図３は、本明細書の一実施形態によってＡＬ−ＦＥＣコーディング概念を図示する。送信器は、送信されるＮ個のパケットのブロックを生成するために、ｋ個のソースパケットにＡＬ−ＦＥＣエンコーディングを行う。Ｎ個のパケットは、ＡＬ−ＦＥＣエンコーディング演算を通じて生成されたｋ個のソースパケット及びｒ個の修理パケットを含む。Ｎ個のパケットが送信された後、受信機はｎパケットのうちｍ個を受信し、ｍはｋとほぼ同じである。受信されたｍ個のパケットは、消失したソースパケットを復旧するためにデコーディングされる。オーバーヘッドはｍ−ｋ＝０であり、生成されたパケットの数字は、式（１）によって計算される。
【００２４】
ｎ＝ｍ／（１ｓｙｍｂｏｌ  ｌｏｓｓ  ｒａｔｅ）      （１）
このように、シンボル削除チャネルキャパシティに近接してシステムが運用されるため、オーバーヘッドが小さい。
【００２５】
理想的に、ＡＬ−ＦＥＣコードは、次のような特徴を持つコードである。
【００２６】
１）レートレスコード（Ｒａｔｅｌｅｓｓ  Ｃｏｄｅｓ）：原本データから無限な数字がエンコーディングされたパケット（シンボルは、一般的にパケットである）を生成できる。
【００２７】
２）オーバーヘッドを入れない（Ｉｎｔｒｏｄｕｃｅ  ｎｏ  Ｏｖｅｒｈｅａｄ）：受信機は、ｋ個のエンコーディングされたパケットが受信された後、ｋパケットを含むメッセージを再構成できる。
【００２８】
３）単純さ（Ｓｉｍｐｌｅ）：エンコーディング／デコーディングは非常に速いべきであり、時間に線形である（Ｌｉｎｅａｒ  ｉｎ  Ｔｉｍｅ）ことが好まれる。
【００２９】
これらのコードの近似的な実現は、マトリックスコード、リード・ソロモンコード（Ｒｅｅｄ  Ｓｏｌｏｍｏｎ  Ｃｏｄｅｓ）、ルヒー・トランスフォーム（Ｌｕｂｙ−Ｔｒａｎｓｆｏｒｍ：ＬＴ）コード及びラプターコード（Ｒａｐｔｏｒ  Ｃｏｄｅｓ）である。ラプターコードは、ＡＬ−ＦＥＣコードの最高の総合的な近似値になる。
【００３０】
ＡＬ−ＦＥＣフレームワークの実施形態は、ワイギグ内のプロトコルオデブション階層（Ｐｒｏｔｏｃｏｌ  Ａｄａｐｔｉｏｎ  Ｌａｙｅｒ：ＰＡＬ）の任意的なフロー（例えば、オーディオ、圧縮されたビデオ、非圧縮されたビデオなど）にパケット・レベル保護を提供する。ＡＬ−ＦＥＣフレームワークは、いずれかのＦＥＣコード（削除コード）と共に動作できるが、削除コードは、システマティックと仮定する。一実施形態で、ＡＬ−ＦＥＣフレームワークは、ラプターコードを支援するために設定される。
【００３１】
図４は、本明細書の一実施形態によってＡＬ−ＦＥＣ方式を図示する。ハイフンで連結された垂直線が、送信デバイス４００及び受信デバイス４５０の機能的階層を分離する。点線は、送信デバイス４００から受信デバイス４５０に送信されるデータを表示する。ＡＬ−ＦＥＣフレームワークに関して、送信デバイス４００は、物理（ＰＨＹ）階層４４０、メディア接続制御（ＭＡＣ）階層４３０、プロトコルオデブション階層（ＰＡＬ）４１０及びＡＬ−ＦＥＣコンポネント４２０を含む。類似して、受信デバイス４５０は、ＰＨＹ階層４９０、ＭＡＣ階層４８０、ＰＡＬ  ４６０及びＡＬ−ＦＥＣコンポネント４７０を含む。送信デバイス４００及び受信デバイス４５０それぞれは、ワイギグの可能なデバイス１０２ないし１１０などの無線通信デバイスのうち一つでありうる。
【００３２】
本明細書の一実施形態による、ＡＬ−ＦＥＣ方式における送信デバイス４００の一般的な演算は、以下の通りである。送信デバイス４００で、共に保護されるべきソースパケットの集合が特定される。ＡＬ−ＦＥＣコードは、修理パケットの集合を生成するためにソースパケットに適用される。修理パケットが生成された後、送信デバイス４００は、ソースパケット及び修理パケットを受信デバイス４５０に送信する。
【００３３】
本明細書の一実施形態による、ＡＬ−ＦＥＣ方式における受信デバイス４５０の一般的な演算は、以下の通りである。もし、すべてのソースパケットが受信デバイス４５０で成功的に受信されれば、受信されたソースパケットはＡＬ−ＦＥＣ復旧なしに処理され、受信された復旧パケットは廃棄される。逆に、もし、消失したパケットがあれば、消失したパケットを復旧するために成功的に受信されたソース及び復旧パケットにＡＬ−ＦＥＣ方式が適用される。
【００３４】
送信デバイス４００のプロトコルオデブション階層（ＰＡＬ）４１０は、上位階層から（図示せず）ソースデータ（すなわち、応用パケット）を受信し、送信されるパケットを用意し、ＭＡＣ階層４３０にパケットを送信する。このために、ＰＡＬ  ４１０は、受信デバイス４５０（Ｔ×ｍバイトのバッファサイズを持つ）ＰＡＬ  ４６０がソースブロックの処理に好適なソースブロックサイズ（ｋ個のパケット）を選択することで、保護されるソースパケットの集合を最初に特定できる。
【００３５】
ＰＡＬ  ４１０はソースブロック数字（Ｓｏｕｒｃｅ  Ｂｌｏｃｋ  Ｎｕｍｂｅｒ：ＳＢＮ）を生成し、ソースブロック、ＳＢＮ、ｋ及びＴをＡＬ−ＦＥＣコンポネント４２０に送信する。ＰＡＬ  ４１０はまた、ソースパケットのペイロードにヘッダ情報を添付することでソースパケットを構成し、ＡＬ−ＦＥＣコンポネント４２０から受信されたソースパケット及び修理パケットをＭＡＣ階層４３０に送信する。ＰＡＬ  ４１０及びＭＡＣ階層４３０の機能は、無線通信デバイスのプロセッサーまたはコントローラによって行われる。
【００３６】
受信デバイス４５０で、ＰＡＬ  ４６０はＭＡＣ階層からパケット（ソースパケット及び修理パケット）を受信し、ソースデータを復旧し、ソースデータを上位機能性階層（図示せず）に送信する。このために、ＰＡＬ  ４６０は、すべてのソースパケットが成功的に受信されたかどうかを判断する。もしすべてのソースパケットが成功的に受信されたならば、ソースパケットはＡＬ−ＦＥＣ復旧なしに処理され、修理パケットは廃棄される。逆に、もし消失したパケットがあるならば、ＰＡＬ  ４６０は、ＡＬ−ＦＥＣコンポネント４７０に、受信されたソース及び受信パケットを送信する。ＰＡＬ  ４６０は、ＡＬ−ＦＥＣコンポネント４７０から複数のソースパケットを獲得する。
【００３７】
一実施形態として、本明細書で述べられたＰＡＬ  ４１０及び４６０のすべての機能は、ＭＡＣ階層４３０及び４８０上の他の階層でそれぞれ行われる。ＰＡＬ  ４１０及び４６０は、ワイギグのために定義されるデータ及びディスプレイ基準などの特定の基準を支援する。例えば、ＰＡＬ  ４１０及び４６０は、高画質マルチメディアインターフェース（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ：ＨＤＭＩ）及びディスプレイポートの支援を定義する。他の実施形態として、ＰＡＬ  ４１０及び４６０は、入／出力（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ：Ｉ／Ｏ）データになり、また、ユニバーサルシリアルバス（ＵＳＢ）を支援でき、ＰＣＩエクスプレス（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ：ＰＣＩｅ）になる。
【００３８】
送信デバイス４００のＡＬ−ＦＥＣコンポネント４２０は、修理パケットを生成するためにソースデータにＡＬ−ＦＥＣコードを適用する。他の代案的な実施形態で、修理パケットはＰＡＬ  ４１０によって生成される。受信デバイス４５０でＡＬ−ＦＥＣコンポネント４７０は、消失したパケットを復旧するために、ＡＬ−ＦＥＣ方式を使ってＰＡＬから受信されたソース及び復旧パケットをデコーディングする。一部の実施形態で、ＡＬ−ＦＥＣコンポネント４２０及び４７０、またはＡＬ−ＦＥＣコンポネント４２０及び４７０の機能は、それぞれＰＡＬ  ４１０及び４６０内に統合される。また一部の実施形態で、送信デバイス４００及び受信デバイス４５０の各ＰＡＬ  ４１０及び４６０、ＡＬ−ＦＥＣコンポネント４２０及び４７０、ＭＡＣ階層４３０及び４８０、及びＰＨＹ階層４４０及び４９０それぞれは、送信及び受信に関する機能を行うために設定される。
【００３９】
ＰＨＹ階層４４０及び４９０は、ハードウェア通信機能を参照する。言い換えれば、ＰＨＹ階層４４０及び４９０は、データのロウ（Ｒａｗ）ビットの送信及び受信の手段を定義する。一実施形態で、ＦＥＣ方式は、送信デバイス４００のＰＨＹ階層４４０によって、送信中の受信デバイス４５０のＰＨＹ階層４６０によって行われる。ＰＨＹ階層のＦＥＣは、低密度パリティ検査（ＬＤＰＣ）コードのＦＥＣ方式でありうる。ＭＡＣ階層４３０及び４８０は、当該技術分野で周知のアドレッシング及びチャネル接続制御機能を行う。
【００４０】
下記の実施形態は、ラプターコードパラメータを説明し、ギガビット無線通信のための実施形態である。ラプターコードパラメータは、ｋ＝‘１０２４’のソースブロックサイズ及びシンボル長Ｔ＝‘４８’バイトを含む。このように、ソースブロック受信のためのバッファの必要条件は、約‘４９’キロバイト（ＫＢ）である。ＡＬ−ＦＥＣ以後のパケット損失率は、下記の式（２）を使って計算される。
【００４１】
ＡＬ−ＦＥＣ以後のパケット損失率＝（ＡＬ−ＦＥＣ以前のパケット損失率）×（ブロック−復旧失敗率）      （２）
１０−３のブロック−復旧失敗率及び１０−３のＡＬ−ＦＥＣ以前のパケット損失率で‘１２’パケットのオーバーヘッドを備える場合、ＡＬ−ＦＥＣ以後のパケット損失率は、１０−５に計算される。失敗する場合にも、正確に受信されたシステマティックパケットは依然として使える。
【００４２】
一部の実施形態によってパケット削除率を低減させるために使われる他のＡＬ−ＦＥＣコーディング技術は、単一パリティ検査（ＳＰＣ）、畳み込み符号化（Ｃｏｎｖｏｌｕｔｉｏｎ  Ｃｏｄｉｎｇ）、ハミングコードを含む。かかる方法は、検索するか、さらにはパケットを訂正するか、または、できる限り性能を劣化させないためには、いかなるパケットが削除されるべきかの先験的な知識を使う方法を採用できる。さらに、前記の方法と共に部分的に訂正されたパケット（部分的なビットが訂正されたが、全体ではなく削除されたパケットで識別された）を使えば、追加的に訂正されたパケット内の残っているビットの修正をさらに手伝うことができ、循環重複検査（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ：ＣＲＣ）または他の正確性検査の通過に役に立つ。
【００４３】
単一パリティ検査技術で、追加的なパリティパケット（すなわち、修理パケット）がパケットの集合に追加され、パケット全体はｎ＝ｋ＋‘１’に作られる。追加されたパケットは、すべてのｋ個のパケットのパリティ検査でありうる。言い替えれば、パリティパケットは、ｋ個のパケットにビット単位排他的論理和（Ａ  ｂｉｔ−ｗｉｓｅ  Ｅｘｃｌｕｓｉｖｅ−ｏｒ：Ｂｉｔ−ｗｉｓｅｒ  ＸＯＲ）を行うことで生成される。ｋ個のパケットは、原本シーケンスまたは実施形態による他の方式によって選択される。この方法は、Ｎ個のパケット内の単一パケット削除の訂正を保証する。一実施形態で、追加されたパケットの高い手順の他の組み合わせは、いかなるパケットが削除されたかの先験的な知識を使うことで、Ｎ個のパケット内のさらに削除されたパケットを修正するために使われうる。Ｎ個のパケット内に一つ以上の削除された（または、消失した）パケットが検索される場合、プロセスは中断されるか、または開始されず、可能な再送信のために、階層構造内の上位階層に削除されたパケットのための報知が送信される。ＳＰＣを使えば、ビットレートは増加する。さらに、簡単なＳＰＣで他のコーディングレートを使えば、要求される性能を容易に回復させることができる。
【００４４】
一部の実施形態で、単一パリティ検査方式は、インターリーブされた、または非インターリーブされた方式である。図５Ａは、本発明の一実施形態によって非インターリーブされた単一パリティ検査方式を図示する。この実施形態で、ｋ＝’２４’ソースパケットである。追加されたパケット（パケット０）は、すべてのｋ個のデータパケット（パケット１…２４）のパリティ検査でありうる。一実施形態でパケット０は、ＰＡＬまたはＭＡＣ階層上の他の階層内の２４個のソースパケットに、ビット間のビット単位排他的論理和を行うことで生成される。この方法は、ｎ＝ｋ＋‘１’＝２５パケット内の単一パケット削除の訂正を保証する。
【００４５】
非インターリーブされたＦＥＣで、Ａ／ＶＰＡＬは、シーケンス番号がｉ＋１、…ｉ＋２４（すなわち、‘１’、…、‘２４’）であるパケットを保護するために、シーケンス番号がｉ（図５Ａ内の‘０’）であるパリティパケットヘッダを生成する。パリティパケット長フィールドは、ｉ＋１、…ｉ＋２４パケットのうち最も大きいパケット長に設定される。ＦＥＣエンコーダは、パケットｉ＋１からｉ＋２４までのビット単位排他的論理和によってパリティパケットのためのペイロードを計算し、さらに短いパケットは、仮想の（送信されていない）ゼロビットを付け加えると仮定される。
【００４６】
一実施形態で、パケットインターリーバは、性能を高めるために追加される。フェーディングチャネルの特性のため、削除されたパケットは順次的であり、これによって、ＳＰＣが非常に低下する。パケット追加インターリーバは、削除されたパケットを分散することでＳＰＣが性能を回復するように大きく役に立つ。図５Ｂは、本発明の一実施形態によってインターリーブされた単一パリティ検査方式を図示する。
【００４７】
図示された実施形態で、ｎ＝‘２５’及びｋ＝‘２４’（一つのＳＰＣ）パケットなどのパケットの各集合のために、パケットの４個の集合を連結させる間に方形インターリーバが使われる。すなわち、ｋデータパケット及び一つのパリティパケットを含む単一ブロックを送信する非インターリーブされたＳＰＣ方式とは異なって、インターリーブされたＳＰＣ方式は、ｋデータパケットの４個のブロック及び４個のパリティパケットを送信する。
【００４８】
インターリーブされたＦＥＣで、Ａ／ＶＰＡＬは、シーケンスナンバーｉ＋４、…ｉ＋９９のパケットを保護するために、シーケンスナンバーｉ、ｉ＋１、ｉ＋２、ｉ＋３（図５Ｂの‘０’、‘１’、‘２’、‘３’）の４個のパリティパケットヘッダを生成する。ＦＥＣエンコーダは、パリティパケットのペイロードを下記のように計算する。パリティパケットのペイロードｉは、パケットｉ＋４、ｉ＋８、ｉ＋１２、…、ｉ＋９６のビット単位排他的論理和であり、パケットｉ＋１のペイロードは、パケットｉ＋５、ｉ＋９、ｉ＋１３…、ｉ＋９７のビット単位排他的論理和であり、パリティパケットｉ＋２のペイロードは、パケットｉ＋６、ｉ＋１０、ｉ＋１４…、ｉ＋９８のビット単位排他的論理和であり、パリティパケットｉ＋３のペイロードは、パケットｉ＋７、ｉ＋１１、ｉ＋１５…、ｉ＋９９のビット単位排他的論理和である。
【００４９】
ブロック当たり一つのパケット以上を復旧できない非インターリーブされたＳＰＣ方式とは異なって、インターリーブされたＳＰＣは、２個ないし４個の連続的な削除されたパケットを復旧できる。パリティパケット及びシステマティックパケットの順序は変更できる。例えば、システマティックパケット（例えば、データパケット）は、パリティパケット以前に送信される。
【００５０】
図６は、本明細書の一実施形態によって削除されたパケットを復旧するための畳み込み符号を図示する。
【００５１】
畳み込み符号（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｃｏｄｅ：ＣＣ）は、隣接しているビットの排他的論理和（Ｅｘｃｌｕｓｉｖｅ  ＯＲ：ＸＯＲ）に基づく。畳み込み符号の高い拘束長（Ｃｏｎｓｔｒａｉｎｔ  Ｌｅｎｇｔｈ：ＣＬ）は、良好な修理性能を持つ。さらに高いＣＬは、さらに高いデコーディング複雑度（ビタビ（Ｖｉｔｅｒｂｉ）／ターボ（Ｔｕｒｂｏ）デコーディング）である。畳み込み符号の短所は、もし削除されたパケットが存在する場合にパケット内のすべてのビットが分からない。同じパケットからの連続的な削除されたビット（ＣＬよりさらに多い）で、ビタビデコーディングはパケットを修理できない可能性がある。これは、パケットがエンコーディングまたは送信される前にインターリーブされねばならないということを意味する。インターリーバの長さは、トレースバック（例えば、５×ＣＬ）または最小限ＣＬより大きいサイズである。削除されたビットがインターリーブされたならば、これらは復旧される可能性が増大する。図６は、‘３９’のシステマティックパケット（すなわち、含まれたデータ）及び一つのパリティパケット（ＣＣは、修理性能を高めるためにすべてのコーディングレートを支援する）が存在するように、‘１０００’バイトのｎ＝‘４０’のパケットのインターリーバサイズ、及びＣＬ＝’７’及び‘３９／４０’（ｎ−１／ｎ）のＣＣコーディングレートを持つインターリーブされた畳み込み符号によってＡＬ−ＦＥＣエンコーディングされたパケットの例を図示する。
【００５２】
Ｐｘ，ｙ表記法は、ビットパケット及びビット位置を示す。例えば“Ｐ０，１”は、パケット‘０’及びビット位置１を示し、“Ｐ１，０”は、パケット‘１’及びビット位置‘０’を表示する。このように、各データのビット及びパリティパケットは図６に垂直的に図示されているように、畳み込み符号は、パリティパケット内の対応するパリティビットを計算するために、同じビット位置にかけてブロック内のｎ−１パケットまで作動する。例えば、パリティパケットｎ−１のビット‘０’（すなわち、“Ｐｎ−１，０”）を計算するため、畳み込み符号は“Ｐ０，０”、“Ｐ１，０”、“Ｐ２，０”…、“Ｐｎ−２，０”にかけて動作する。次いで、パリティパケットのビット‘０’（すなわち、“Ｐｎ−１，１”）を計算するため、このような形でパリティパケットの最後のビットまで計算される。もしデータパケットが異なる長さを持っているならば、パリティパケットは最大のパケット長を持ち、さらに短いパケットは、畳み込み符号を実行するために、これらそれぞれのテール（ｔａｉｌ）に仮想のゼロが付け加えらる。ＳＰＣと同様に、パリティパケット及びシステマティックパケットの順序は変更できる。
【００５３】
またこのケースで、削除されたパケットの先験的知識は、ＣＣＡＬ−ＦＥＣが使われるべきか（例えば、非常に低いＳＮＲでパケット削除率がＳＮＲの減少のように高い修理確率で減少する時）を定められる。
【００５４】
他の実施形態で、ＡＬ−ＦＥＣのためにハミングコーディングが使われうる。ハミングコーディング（Ｈａｍｍｉｎｇ  Ｃｏｄｉｎｇ：ＨＣ）を使ってハミングコーディングの最小限のハミング距離（Ｈａｍｍｉｎｇ  Ｄｉｓｔａｎｃｅ：ｄｍｉｎ）から修理されたパケットのレベル（復旧できる、削除されたビットの数字またはパケット）が誘導される。例えば、ｄｍｉｎ＝‘３’を持つＨマトリックスで修理されたパケットの数字は、ｄｍｉｎ−‘１’＝‘２’の削除されたパケットでありうる。ハミングコードを使う時は、パケットの各集合のために一つ以上のパリティパケットがありうる（コーディングレートを調節することで）。Ｈマトリックスは、ｄｍｉｎ及びコーディングレートを定める。パケットの各集合内のデータパケットの最大数字は、ｍパリティビット（またはパケット）のために、２ｍ−ｍ−１データビット（またはパケット）までエンコーディングされるように、ハミングコドパリティパケットの数字に基づいて定められる。例えば、ハミング（７，４）コードは、すべての４個のデータビットを７個のビットにエンコーディングし、３個のパリティビットを追加する。
【００５５】
一部の実施形態で、インターリーブされた、または非インターリーブされた単一パリティ検査は、ハミングコドと共に結合される。例えば、単一パリティ検査エンコーディング（インターリーブ方式、または非インターリーブ方式）は、さらなるパリティパケットを形成するためにハミングエンコーディングパケットに行われる。
【００５６】
前記実施形態は、ラプターコードに比べてさらに簡単にＡＬ−ＦＥＣを具現する方式を説明する。説明されたすべてのＡＬ−ＦＥＣ方式は、削除されたパケットを修理するために低電力デバイスで好適に使われる。
【００５７】
図７は、本明細書の一実施形態によって、ＡＬ−ＦＥＣを使ってエンコーディングされたパケットのヘッダの内容を図示する。一部の実施形態でパケットヘッダ７００は、ＰＡＬ内のＡＬＦＥＣ方式が行われる特定の機能的階層で生成されかつ添付され、パケットヘッダ７００は、ＰＡＬから出るパケットに生成または添付される。
パケットヘッダ７００内の各列は、少なくとも一つのフィールドと対応する。上段行の各ブロック内のテキストは、パケットヘッダフィールド内に含まれた情報を説明し、下段行内の数字は、それぞれのヘッダフィールドのオクテット長（バイトの数字）を表示する。１オクテットの長さを持つパケットタイプヘッダフィールドは、パケットがシステマティックであるか（例えば、データを含んでいるか）、またはパリティであるかを表示する。
【００５８】
一実施形態で、単一ビット（例えば、最初のビット）は、システマティック（例えば、データ）パケットからパリティパケットを区分するために、パケットタイプフィールド内に割り当てられる。パリティパケットを表示するために単一ビットを使う時、‘０’は、パケットがシステマティックパケットであることを表示するために使われ、‘１’は、パケットがパリティ（または、その逆）であることを表示するために使われる。例えば、“１ｘｘｘｘｘｘｘ”の値を持つパケットタイプヘッダフィールドは、パリティパケットを表示するものであり、逆に“０ｘｘｘｘｘｘｘ”は、システマティックパケットを表示する。一実施形態で単一ビットは、他のパケットヘッダフィールドに割り当てられる。
【００５９】
他の実施形態として、ワイギグ標準でパケットタイプフィールド内の特定の８−ビット値は、パリティパケットを表示するために定義される。例えば‘０×８０’（または“１０００００００”）の値は、パリティパケットを表示できる。他の方式で、特定の値が、システマティックパケットからパリティパケットを区別するために他のヘッダフィールドに使われうる。
【００６０】
ストリーム識別子（Ｉｄｅｎｔｉｆｉｅｒ：ＩＤ）は、パケットが属するデータストリームを識別する。一実施形態として、ストリームＩＤは送信ブロックを参照できる。シーケンス番号（Ｓｅｑｕｅｎｃｅ  Ｎｕｍｂｅｒ：ＳｅｑＮｕｍ）は、ブロック内のパケットの手順を識別する。一実施形態によって、長さフィールドは、ペイロードのサイズまたはブロック内のパケットの総数字を表示する。
【００６１】
送信または受信デバイスがＡＬ−ＦＥＣ性能を持っていない場合がありうる。したがって、本明細書の実施形態によって、デバイスはペイロードを伝送する前に、性能交換期間中にＡＬ−ＦＥＣ性能情報を交換できる。
【００６２】
図８は、本明細書の一実施形態によって、無線通信システム内でＡＬ−ＦＥＣの使用のための一般的なプロセスを図示する。データ通信前に、送信デバイス４００及び受信デバイス４５０は性能情報８１０を交換する。一部の実施形態で、性能交換情報８１０は、ＡＬ−ＦＥＣ性能情報を含む。ブロック８２０で性能交換プロセスが完了した後、送信デバイス４００は、送信のためにＡＬ−ＦＥＣコードを用いてパケットをエンコーディングする。このプロセスは、図９を参照してさらに説明される。一部の実施形態で、送信デバイス４００は、ＡＬ−ＦＥＣエンコーディング以後にＰＨＹ階層内でさらなるＦＥＣコーディングを行える。送信デバイス４００は、以後にエンコーディングされたシステマティックパケット（例えば、データ）及び修理パケット８３０を受信デバイス４５０に送信する。ブロック８４０で、受信デバイス４５０は、ＡＬ−ＦＥＣコードを用いて消失したパケット（または、エラーが発生したパケット）を復旧できる。一部の実施形態で受信デバイスは、ＡＬ−ＦＥＣデコーディングプロセスを使ってパケット復旧を行うかどうかを先ず定める。このプロセスは、図１０を参照してさらに説明される。一部の実施形態で、受信デバイス４５０は、ＡＬ−ＦＥＣデコーディングのために受信されたパケットを伝送する前に、ＰＨＹ階層内でＦＥＣデコーディングを行える。
【００６３】
図９は、本明細書の一実施形態によってＡＬ−ＦＥＣを使って送信するために、エンコーディングパケットのためのプロセスを図示する。ブロック９１０で、送信デバイス（例えば、送信デバイス４００）は、少なくとも一つ以上の受信デバイス（例えば、受信デバイス４５０）にＡＬ−ＦＥＣ性能情報を送信する。
【００６４】
ブロック９３０で、送信デバイスはソースパケットにＡＬ−ＦＥＣコードを使うことで、システマティックパケット及び少なくとも一つの修理パケット（ＡＬ−ＦＥＣコーディング方式に基づいて）を生成する。一実施形態で、ＰＡＬは、ソースブロック（共に保護されねばならないソースパケットの集合）にソースブロック番号（Ｓｏｕｒｃｅ  Ｂｌｏｃｋ  Ｎｕｍｂｅｒ：ＳＢＮ）を割り当て、ソースブロック、ＳＢＮ、Ｔ及びｋをＡＬ−ＦＥＣエンコーダに伝送する。ＡＬ−ＦＥＣエンコーダ（ハードウェアまたはソフトウェアに具現される）は、修理パケットの集合を生成するためにソースパケットにＡＬ−ＦＥＣコードを適用する。
【００６５】
前述したＡＬ−ＦＥＣコーディング方式のうち一つを使うことで、少なくとも一つの修理パケットが生成される。例えば、非インターリーブされたＳＰＣコーディング方式が使われる時、ソースブロック当たり一つの修理（すなわち、パリティ）パケットが生成される。すなわち、ｎ＝‘２５’及びｋ＝‘２４’であると仮定すれば、ＰＡＬは、シーケンス番号ｉであるパリティパケットヘッダを生成し、ｉ＋１、…、ｉ＋２４パケットをＦＥＣエンコーダに伝送する。ＦＥＣエンコーダは、ｉ＋１、…、ｉ＋２４パケットのビット単位排他的論理和によってパリティパケットのペイロードを生成する。４−インターリーブされたＳＰＣコーディング方式が使われる時、データパケットの４個の集合のそれぞれのためにインターリーブされたＳＰＣコーディング方式が使われる時、一つの修理パケットが生成される。すなわち、各集合でｎ＝‘２５’及びｋ＝‘２４’と仮定すれば、ＰＡＬは、シーケンス番号ｉ、ｉ＋１、ｉ＋２、ｉ＋３人４個のパリティパケットヘッダを生成し、ｉ＋４、…、ｉ＋９９パケットをＦＥＣエンコーダに伝送する。ＦＥＣエンコーダは、ｉ＋４、ｉ＋８、…、ｉ＋９６パケットのビット単位排他的論理和によってパリティパケットペイロードを生成する。ＦＥＣエンコーダは、パリティパケットのペイロードを次のように計算する。パリティパケットｉのペイロードは、ｉ＋４、ｉ＋８、ｉ＋１２、…ｉ＋９６のビット単位排他的論理和であり、パリティパケットｉ＋１のペイロードは、ｉ＋５、ｉ＋９、ｉ＋１３、…ｉ＋９７のビット単位排他的論理和であり、パリティパケットｉ＋２のペイロードは、ｉ＋６、ｉ＋１０、ｉ＋１４、…ｉ＋９８のビット単位排他的論理和であり、パリティパケットｉ＋３のペイロードは、ｉ＋７、ｉ＋１１、ｉ＋１５、…ｉ＋９９のビット単位排他的論理和である。一実施形態で、ＡＬ−ＦＥＣ方式が使われ、ブロック単位（Ｂｌｏｃｋ−ｂｙ−Ｂｌｏｃｋ）に基づいて変更される。
【００６６】
ソースブロック内の少なくとも一つのソースパケットはシステマティックパケットを含む。一実施形態で、各システマティックパケットは一つのソースパケットに対応する。システマティックパケットのために修理パケットが生成され、修理パケット長は、パケットのうち最も長いシステマティックパケット長と同一である。ＰＡＬは、システマティック／修理パケットのそれぞれのためのパケットヘッダ（システマティック／パリティパケット、ストリームＩＤ、シーケンス番号などのための指示子を含む）を生成し、パケットヘッダを、対応するシステマティック／修理パケットに添付し、ソースパケットをＭＡＣ階層に伝送する。
【００６７】
一実施形態として、ブロック９３０は、ＰＡＬ及びＡＬ−ＦＥＣエンコーダで行われる。前記で論議されたように、ＰＡＬ及びＡＬ−ＦＥＣエンコーダは、分離されたコンポネントであり、ＰＡＬ内に併合されてもよい。他の実施形態として、ブロック９３０は、ＭＡＣ階層上などの他の上位機能的階層で行われる。
【００６８】
ブロック９４０で、ブロック内のエンコーディングされたシステマティック／修理パケットは、以後に送信のためにＭＡＣ及びＰＨＹ階層で処理される。一実施形態として、ＰＨＹ階層は、要求される性能を達成するために、送信前にＡＬ−ＦＥＣエンコーディングされたパケットにＦＥＣコーディング方式を適用する。
【００６９】
図１０は、本明細書の一実施形態によってＡＬ−ＦＥＣを使うデコーディングパケットのためのプロセスを図示する。プロセス８４０は、１）修理パケットがなければＡＬ−ＦＥＣを使わないオプション；２）各ブロックに２５個のパケット（２４個のシステマティックパケット及び一つの修理パケット）が含まれている非インターリーブされた（２５，２４）−ＳＰＣ  ＡＬ−ＦＥＣオプション；３）各ブロックに２５個のパケットの４個の集合（各集合当たり２４個のシステマティックパケット及び１個の修理パケット）が含まれている４−インターリーブされた（２５，２４）−ＳＰＣ  ＡＬ−ＦＥＣオプションなどの３つのオプションのうち一つで動作できるシステムの一実施形態を示す。
【００７０】
ブロック１０１０で、受信デバイス（例えば、受信デバイス４５０）は、送信デバイス（例えば、送信デバイス４００）から送信ブロックのパケットを受信する。ブロック１０２０で、受信デバイスは修理パケットが受信されたかどうかを判断する。すなわち、受信デバイス内のＰＡＬ（またはＡＬ−ＦＥＣデコーディングを行う責任がある機能的階層）は、ＡＬ−ＦＥＣ指示子（例えば、図７に関して説明されたパケットタイプフィールド）を探すために、各パケットのヘッダを検査する。
【００７１】
もし修理パケットが受信されていなければ、プロセスはブロック１０６０に進み、ＡＬ−ＦＥＣ復旧は行われない。もしＡＬ−ＦＥＣを使わない状態でパケットが送信される場合、該プロレスが発生する。このように、ＰＡＬは、修理パケットと表示される受信されたパケットがないか、ロード内の受信されたすべてのパケットを判断できる。もしＡＬ−ＦＥＣを使わないパケットが消失した場合、受信デバイスは、消失したパケットまたは全ブロックの再送信を要請できる。一実施形態として、修理（例えば、パリティ）パケットが消失した場合にのみ、受信デバイスは、消失した修理パケットの再送信を要請できる。
【００７２】
もし修理パケットが受信されれば、ブロック１０３０で、受信デバイスは、パケットがインターリーブされたかどうかを判断する。例えば、修理パケットが先ず順次化されていると仮定すれば、ロードの最初のパケット（ＳｅｑＮｕｍ  ｉの）が修理パケットである場合にのみ、受信デバイスは、パケットがインターリーブされていないパケットであると判断できる。ブロック内の最初のパケットが、パケットヘッダ内のＡＬ−ＦＥＣビット（例えば、パリティパケット指示子）によって表示される修理パケットでなければならないためである。パケットｉ＋１（ｉ＋１が消失した場合、パケットｉ＋２またはｉ＋３）ｄが受信された後、もしパリティパケット指示子が０に設定されているならば、パケットｉ、ｉ＋１、…、ｉ＋２４はＡＬ−ＦＥＣブロックを形成する。もしソースパケットｉ＋１、…、ｉ＋２４のうち一つが消失した場合、ＡＬ−ＦＥＣブロック内の他のパケットとビット単位排他的論理和動作を通じて復旧される。
【００７３】
例を挙げて調べ続ければ、もし最初の４個のパケット（ＳｅｑＮｕｍ  ｉ、ｉ＋１、ｉ＋２、ｉ＋３の）のうち少なくとも２つがＡＬ−ＦＥＣを使うと表示されて（例えば、パリティパケット指示子が１に設定）受信されたならば、受信デバイスは、インターリーブされたＳＰＣ  ＡＬ−ＦＥＣコーディング方式を使ってパケットが送信されたということが判断できる。すなわち、パケットｉ、ｉ＋４、ｉ＋８…、ｉ＋９６はＡＬ−ＦＥＣ集合（例えば、ブロック）を形成し、パケットｉ＋１、ｉ＋５、ｉ＋９…、ｉ＋９７が集合を形成し、パケットｉ＋２、ｉ＋６、ｉ＋１０…、ｉ＋９８が集合を形成し、パケットｉ＋３、ｉ＋７、ｉ＋１１…、ｉ＋９９が集合を形成する。
【００７４】
前述したすべての場合及びモードで削除された（パリティ／システマティック）パケットは、復旧如何に構わず、送信デバイスのＰＡＬは、ストリームＩＤ及び／またはＳｅｑＮｕｍを知っている点を使って、パケットをどのように修理するかをいつも定められると保証される。
【００７５】
ブロック１０４０で、受信デバイスは、いかなるパケットが消失したかを定める。もし消失したパケットがなければ、（すなわち、すべてのソースパケットが成功的に受信される）、次いで、ソースパケットはＡＬ−ＦＥＣ復旧なしに処理され、修理パケットは廃棄される。プロセスは、ブロック１０６０に進む。
【００７６】
逆にもしソースパケットが消失した場合、ブロック１０５０で、受信デバイスは、ＡＬ−ＦＥＣコーディング方式のタイプに基づいて消失したパケットの数字がしきい値より大きいかどうかについて判断する。図５Ａ及び５Ｂに関して説明したように、非インターリーブされたＳＰＣ方式下では、ただ１個の消失したパケットのみ復旧され、４−インターリーブされたＳＰＣ方式下では、集合当たり連続的な４個の消失したパケットまで、または１個の消失したパケットが復旧される。
【００７７】
このように、ブロック１０３０で、もしＰＡＬがパケットがインターリーブされていないと判断した場合、しきい値は、１個の消失したパケットである。またはブロック１０３０で、もしＰＡＬが、パケットがインターリーブされたと判断した場合、しきい値は、４個の連続的な消失したパケットまたは１個の消失したパケットである。
【００７８】
もし消失したパケットの数字が対応するしきい値より大きい場合、プロレスはブロック１０６０に進み、ＡＬ−ＦＥＣ復旧を行わない。一実施形態として、受信デバイスは、消失したパケットまたは全体ブロックの再送信を要請できる。
【００７９】
逆に、もし消失したパケットの数字が対応するしきい値より大きくない場合、ブロック１０７０で、受信デバイスは、消失したパケットを復旧するためにＡＬ−ＦＥＣデコーディングを行う。すなわち、ＰＡＬは、消失したパケットを復旧するためにブロックをＦＥＣデコーダーに伝送する。
【００８０】
図１０に示したプロセスは、説明のみを目的とするものであり、本明細書の範囲を制限する意味ではない。他の実施形態として、本明細書の範囲を逸脱しない範囲内でブロックの順序では再配列される。例えば、いかなるパケットが消失したかを判断するためのブロック１０４０は、ブロック１０１０でＭＡＣ階層からパケットを受信された後で直ちに行われる。ブロック１０２０は、少なくとも一つのパケットが消失したかを定めた後で行われる。
【００８１】
ＡＬ−ＦＥＣブロック内の各ＡＬ−ＦＥＣパケット長は、最大長さを持つパケットと同一であることに留意せねばならない。これは、同じブロック内のＰＡＬパケットに異なる長さを持たせることを可能にする。例えば、ＰＡＬパケット長がＡＬ−ＦＥＣパケット長より小さい時、ＡＬ−ＦＥＣエンコーダ／デコーダーは、“仮想の”０を付け加えることでかかる差を償える。
【００８２】
たとえ本明細書が典型的な実施形態として説明されたとしても、多様な変更及び修正が当業者により行われうる。本明細書は前述した変更及び修正を含み、これは特許請求の範囲内に含まれる。
【図１】
0005981351.tif 000002
【図２Ａ】
0005981351.tif 000003
【図２Ｂ】
0005981351.tif 000004
【図３】
0005981351.tif 000005
【図４】
0005981351.tif 000006
【図５Ａ】
0005981351.tif 000007
【図５Ｂ】
0005981351.tif 000008
【図６】
0005981351.tif 000009
【図７】
0005981351.tif 000010
【図８】
0005981351.tif 000011
【図９】
0005981351.tif 000012
【図１０】
0005981351.tif 000013