特許第5981351号(P5981351)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サムスン エレクトロニクス カンパニー リミテッドの特許一覧

特許5981351ワイギグ用の応用階層順方向エラー訂正フレームワーク
<>
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000002
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000003
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000004
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000005
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000006
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000007
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000008
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000009
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000010
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000011
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000012
  • 特許5981351-ワイギグ用の応用階層順方向エラー訂正フレームワーク 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5981351
(24)【登録日】2016年8月5日
(45)【発行日】2016年8月31日
(54)【発明の名称】ワイギグ用の応用階層順方向エラー訂正フレームワーク
(51)【国際特許分類】
   H04L 1/00 20060101AFI20160818BHJP
【FI】
   H04L1/00 B
【請求項の数】8
【全頁数】21
(21)【出願番号】特願2012-556027(P2012-556027)
(86)(22)【出願日】2011年3月7日
(65)【公表番号】特表2013-521695(P2013-521695A)
(43)【公表日】2013年6月10日
(86)【国際出願番号】KR2011001543
(87)【国際公開番号】WO2011108904
(87)【国際公開日】20110909
【審査請求日】2014年3月7日
(31)【優先権主張番号】13/038,938
(32)【優先日】2011年3月2日
(33)【優先権主張国】US
(31)【優先権主張番号】61/332,581
(32)【優先日】2010年5月7日
(33)【優先権主張国】US
(31)【優先権主張番号】61/311,133
(32)【優先日】2010年3月5日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】503447036
【氏名又は名称】サムスン エレクトロニクス カンパニー リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】アブ−スーラ,シャーディ
(72)【発明者】
【氏名】ピセク,エラン
(72)【発明者】
【氏名】カーン,ファルーク ユー
【審査官】 谷岡 佳彦
(56)【参考文献】
【文献】 特表2007−503174(JP,A)
【文献】 国際公開第2009/054822(WO,A1)
【文献】 国際公開第2008/139882(WO,A1)
【文献】 特開平02−295246(JP,A)
【文献】 特開2002−141964(JP,A)
【文献】 特開2010−034898(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 1/00
(57)【特許請求の範囲】
【請求項1】
無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正(Forward Error Correction:FEC)を行う方法において、
性能交換中に応用階層順方向エラー訂正(Application Forward Error Correction:AL−FEC)性能情報を伝送する段階と、
各パリティパケットのヘッダは、パリティパケット指示子を備え、ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、k個の前記ソースパケットの集合に単一パリティ検査(Single Parity Check:SPC)AL−FECコードを適用する段階と、
メディア接続制御(Media Access Control:MAC)階層及び物理(Physical:PHY)階層で、送信のために前記エンコーディングされたパケットを処理する段階と、を含み、
前記SPC AL−FECコードは、非インターリーブされたモード及びインターリーブされたモードのうち一つを含み、
前記非インターリーブされたモードで前記SPC AL−FECコードを適用するとき、前記システマティックパケット及び少なくとも一つのパリティパケットをエンコーディングすることは、
一つのパリティパケットのためにシーケンス番号iを生成する段階と、
前記k個のソースパケットのためにシーケンス番号i+1、i+2、…、i+kを生成する段階と、
前記シーケンス番号iである前記パリティパケットのペイロードを計算するために、短いソースパケットには臨時的に送信されない仮想の0を付け加え、前記k個のソースパケットにビット単位排他的論理和(A bit−wise XOR)を行う段階と、
を含み、
前記インターリーブされたモードで前記SPC AL−FECコードを適用するとき、前記システマティックパケット及び少なくとも一つのパリティパケットをエンコーディングすることは、
各パリティパケットはソースパケットのx個の部分集合のうち一つに対応し、x個のパリティパケットのためにシーケンス番号i、i+1、i+2、…、i+x−1を生成する段階と、
前記k個のソースパケットのためにシーケンス番号i+x、i+x+1、i+x+2、…、i+x+(k−1)を生成する段階と、
連続的なシーケンス番号を持つソースパケットが他の部分集合に割り当てられるように、x個の部分集合にかけて前記k個のソースパケットをインターリーブする段階と、
前記対応するソースパケットの部分集合にビット単位排他的論理和を行うことで各パリティパケットのペイロードを計算する段階を含み、
前記パリティパケットに対するシーケンス番号は、前記対応するパリティパケットに対する前記ヘッダに含まれ、前記k個のソースパケットのための前記シーケンス番号は、対応するシステマティックパケットのためのヘッダ内に含まれている、
ことを特徴とする無線通信デバイスのFEC実行方法。
【請求項2】
前記単一パリティ検査(Single Parity Check:SPC)AL−FECコードを適用する段階は、ハミングコーディング方式を使用してエンコーディングされたパリティパケットにAL−FECコードを適用することを特徴とする請求項1に記載の無線通信デバイスのFEC実行方法。
【請求項3】
システマティックパケット及びパリティパケットのうち少なくとも一つを含むパケットブロックを受信する段階と、
前記受信されたパケットブロック内に少なくとも一つのパケットが消失したかどうかを判断する段階と、
少なくとも一つのパケットが消失した場合、各受信されたパケット内の前記パリティパケット指示子を検査することで、前記受信されたパケットがAL−FECエンコーディングされたかどうかを判断する段階と、
前記AL−FECコードが感知された場合、前記少なくとも1個の消失したパケットが復旧されるかどうかを判断する段階と、
前記少なくとも1個の消失したパケットが復旧されるかどうかの判断に対する対応として、前記受信されたシステマティック及びパリティパケットを使ってAL−FECデコーディングを行う段階と、をさらに含むことを特徴とする請求項1に記載の無線通信デバイスのFEC実行方法。
【請求項4】
前記受信されたパケットがAL−FECエンコーディングされたかどうかを判断する段階は、
受信されたパリティパケットのシーケンス番号に基づいて、前記受信されたパケットがインターリーブされたかどうかを定める段階をさらに含むことを特徴とする請求項3に記載の無線通信デバイスのFEC実行方法。
【請求項5】
無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正(FEC)を行うための装置において、
他の通信デバイスと通信するために設定された送信器と、
性能交換中に、応用階層順方向エラー訂正(AL−FEC)性能情報を伝送し、
ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、k個の前記ソースパケットの集合に単一パリティ検査(SPC)AL−FECコードを適用し、各エンコーディングされたパケットのヘッダは、パリティパケット指示子を備え、
メディア接続制御(MAC)階層及び物理(PHY)階層で、送信のために前記エンコーディングされたパケットを処理するように設定され、前記送信器と結合されたコントローラを備え、
前記SPC AL−FECコードは、非インターリーブされたモード及びインターリーブされたモードのうち一つを含み、
前記非インターリーブされたモードで前記SPC AL−FECコードを適用するとき、前記コントローラは、
一つのパリティパケットのためにシーケンス番号iを生成し、
前記k個のソースパケットのためにシーケンス番号i+1、i+2、…、i+kを生成し、
前記シーケンス番号iである前記パリティパケットのペイロードを計算するために、短いソースパケットには臨時的に送信されない仮想の0を付け加え、前記k個のソースパケットにビット単位排他的論理和を行い、
前記インターリーブされたモードで前記SPC AL−FECコードを適用するとき、前記システマティックパケット及び少なくとも一つのパリティパケットをエンコーディングすることは、
各パリティパケットはソースパケットのx個の部分集合のうち一つに対応し、x個のパリティパケットのためにシーケンス番号i、i+1、i+2、…、i+x−1を生成する段階と、
前記k個のソースパケットのためにシーケンス番号i+x、i+x+1、i+x+2、…、i+x+(k−1)を生成する段階と、
連続的なシーケンス番号を持つソースパケットが他の部分集合に割り当てられるように、x個の部分集合にかけて前記k個のソースパケットをインターリーブする段階と、
前記対応するソースパケットの部分集合にビット単位排他的論理和を行うことで各パリティパケットのペイロードを計算する段階を含み、
前記パリティパケットに対するシーケンス番号は、前記対応するパリティパケットに対する前記ヘッダに含まれ、前記k個のソースパケットのための前記シーケンス番号は、対応するシステマティックパケットのためのヘッダ内に含まれている、
ことを特徴とするFECを行うための装置。
【請求項6】
前記コントローラは、
ハミングコーディング方式でエンコーディングされたパリティパケットにAL−FECコードを適用するようにさらに設定されることを特徴とする請求項5に記載のFECを行うための装置。
【請求項7】
前記コントローラは、
システマティックパケット及びパリティパケットのうち少なくとも一つを備えるパケットブロックを受信し、
受信されたパケットブロック内に少なくとも一つのパケットが消失したかどうかを判断し、
いずれかのパケットが消失した場合、各受信されたパケット内の前記パリティパケット指示子を検査することで、前記受信されたパケットがAL−FECエンコーディングされたかどうかを判断し、
前記AL−FECコードが感知された場合、前記消失したパケットが復旧されるかどうかを判断し、
前記消失したパケットが復旧されるかどうかの判断に対する対応でとして、前記受信されたシステマティック及びパリティパケットを使ってAL−FECデコーディングを行うようにさらに設定されたことを特徴とする請求項5に記載のFECを行うための装置。
【請求項8】
前記コントローラは、
前記受信されたパケットがAL−FECエンコーディングされたかどうかを判断するときに受信されたパリティパケットのシーケンス番号に基づいて、前記受信されたパケットがインターリーブされたかどうかを定めるようにさらに設定されることを特徴とする請求項7に記載のFECを行うための装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般的な無線連結を通じて信頼できるデータの伝送に係り、特に、無線ギガビットアライアンス(Wireless Gigabit Alliance:WiGig、以下、ワイギグ)リンクを通じて通信するための応用階層における順方向エラー訂正(Forward Error Correction:FEC)フレームワークを具現するための方法及びシステムに関する。
【背景技術】
【0002】
無線通信を通じて信頼できるデータの伝送のための多くのニーズが、技術者らに大きい挑戦を提示している。一般的に、ビデオメディアは、遅延の許容されない高い送信率を要求する。さらに、メディアは、ストリーミングTVチャネルなどのブロードキャストチャネル、または多いユーザのために大容量ファイルに圧縮されたビデオを送信するマルチキャストチャネルを通じて送信される。かかるチャネルの性格は、遅延が許容されないだけでなく、送信成功を知らせるためのフィードバックチャネルを持つオプションが除外される。結果的に、かかるシナリオで、送信の信頼性を補正するために代案的な技術が要求される。
【0003】
ワイギグ(WiGig)規格は、マルチ・ギガビット速度の無線通信技術を対象とする。このように、WiGigは、最近の無線ローカル領域ネットワーク(Local Area Network:LAN)デバイスの性能を補足する高性能無線データ、ディスプレイ及びオーディオアプリケーションを可能にする。WiGigの技術規格TWG−2010−0716−00−WGA−D102及びPWG−2011−0019−00−AV PAL spec D0.9r0:“WiGig WGA Specification”に開示されており、これは参照として本明細書に含まれる。
【0004】
しかし、WiGig規格は、ブロードキャスト、マルチキャスト中に自動的繰り返し要請(Automatic Repeat Request:ARQ)方式の使用を許容しない。さらに、時間に敏感なアプリケーション(例えば、マルチメディア、ゲームなど)内で、特に、チャネルの長い中断(Outages)及び障害(Blockage)及び相対的に遅いビームフォーミングアルゴリズムによる高いパケット損失率を経験する時は、ARQは、最も効果的なエラー制御方式ではない。ARQフィードバックの不在のため、物理階層順方向エラー訂正(Physical Layer Forward Error Correcting:PHYFEC)コードは、低いパケット損失率(約10−5)を得るために十分に保護されない恐れがある。このように、パケット損失率を低減させるために第2のFEC方式が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の一実施形態では、無線通信ネットワーク内の無線通信デバイスで順方向エラー訂正を行う方法が提供される。
【課題を解決するための手段】
【0006】
一実施形態として、無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正(Forward Error Correction:FEC)を行う方法が提供される。無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行う方法は、性能交換中に応用階層順方向エラー訂正(Application Forward Error Correction:AL−FEC)性能情報を伝送する段階を含む。ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、k個の前記ソースパケットの集合に単一パリティ検査(Single Parity Check:SPC)AL−FECコードを適用する。各パリティパケットのヘッダは、パリティパケット指示子を備る。ディア接続制御(Media Access Control:MAC)階層及び物理(Physical:PHY)階層で、送信のために前記エンコーディングされたパケットを処理する。
【0007】
他の実施形態として、無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行うための装置が提供される。無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行うための装置は、送信器及び送信器と結合されたコントローラを備える。送信器は、他の通信デバイスと通信する。コントローラは、性能交換中に応用階層順方向エラー訂正(AL−FEC)性能情報を伝送し、ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、k個の前記ソースパケットの集合に単一パリティ検査(SPC)AL−FECコードを適用し、エンコーディングされたパケットのヘッダは、パリティパケット指示子を備え、メディア接続制御(MAC)階層及び物理(PHY)階層で、送信のために前記エンコーディングされたパケットを処理する。
【0008】
さらに他の実施形態として、無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正(FEC)を行う方法が提供される。無線通信ネットワーク内の無線通信デバイスの順方向エラー訂正を行う方法は、性能交換中に応用階層順方向エラー訂正(AL−FEC)性能情報の伝送を含む。ソースパケット及び少なくとも一つのパリティパケットのためにシステマティックパケットをエンコーディングするために、k個の前記ソースパケットの集合に単一パリティ検査(SPC)AL−FECコードを適用する。各パリティパケットのヘッダは、パリティパケット指示子を備える。そして、メディア接続制御(MAC)階層及び物理(PHY)階層で、送信のために前記エンコーディングされたパケットを処理する。
【発明の効果】
【0009】
本発明の一実施形態によれば、外部(Outer)FEC方式で許容レベルまでパケット損失率を大幅に低減させる。
【図面の簡単な説明】
【0010】
本発明に開示された内容及び効果についてのさらに完全な理解のために、以下の詳細な説明は以下の図面と共に参照されねばならず、同じ参照番号は同じ構成要素を示す。
図1】本明細書の原則によってワイギグを支援する無線ネットワーク100を示す図面である。
図2A】本明細書の一実施形態による直交周波数分割多重接続送信経路の上位レベルのダイアグラムを示す図面である。
図2B】本明細書の一実施形態による直交周波数分割多重接続受信経路の上位レベルのダイアグラムを示す図面である。
図3】本明細書の一実施形態による応用階層順方向エラー訂正(Application Layer−Forward Error Correction:AL−FEC)コーディング概念を示す図面である。
図4】本明細書の一実施形態によるAL−FEC方式を示す図面である。
図5A】本発明の一実施形態による、非インターリーブされた単一パリティ検査(Non−interleaved Single Parity Check)方式を示す図面である。
図5B】本発明の一実施形態による、インターリーブされた単一パリティ検査方式を示す図面である。
図6】本発明の一実施形態による、削除されたパケットを復旧するための畳み込み符号を示す図面である。
図7】本発明の一実施形態による、AL−FECを使ってエンコーディングされたパケットのヘッダの内容を示す図面である。
図8】本発明の一実施形態による、無線通信システム内におけるAL−FECの使用のための一般的なプロセスを示す図面である。
図9】本発明の一実施形態による、AL−FECを使って送信するためのエンコーディングパケットのためのプロセスを示す図面である。
図10】本発明の一実施形態による、AL−FECを使うデコーディングパケットのためのプロセスを示す図面である。
【発明を実施するための形態】
【0011】
下記の発明の詳細な説明を読み取る前に、本特許明細書全般で使われる特定単語及び構文の定義を説明する。用語“備える、含む(Include、Comprise)”及びそれから派生される単語は、制限なしに含まれるという意味であり、用語“または(Or)”は、及び/または(And/Or)の意味を含む。“係る(Associatedwith)”及び“それに関する(Associated therewith)”及びそれから派生される単語は、含むために(To include)、含まれた(Be included within)、係る(Interconnectwith)、入っている(Contain)、入っており(be contained within)、繋がる(Connect to or with)、連結された(Coupled to or with)、伝達される(Be communicable with)、協力する(Cooperate with)、インターリーブ(interlave)、並列する(Juxtapose)、近接する(Be Proximate to)、結合された(Be bound to or with)、関係がある(Have)、特性を持つ(Have a Property of)などの意味でありうる。また用語“コントローラ”は、いずれかのデバイス、システムまたはそれらの部分の少なくとも一つの動作を制御することを意味し、かかるデバイスは、ハードウェア、ファームウエア及びソフトウェアまたは前記のものなどのうち少なくとも2つの組み合わせで具現できる。特定のコントローラと係る機能は、ローカル、遠隔、集中的または分散的であるということに留意せねばならない。当業者ならば、多くまたは大部分の場合で、本特許明細書全体で提供される特定単語及び文言のための定義を理解でき、かかる定義は、以前だけではなく今後の使用で、定義された単語及び文言で適用できる。
【0012】
以下の図1ないし図10、及び本特許明細書内の本明細書の原則を述べるために使われる多様な実施形態は、単に例示の方式であり、本明細書の範囲を制限するいかなる方式でも解釈できない。たとえ記述された本発明の実施形態がワイギグを支援する装置を示すとしても、本明細書の原則が無線通信システムの好適な配列によって具現されるということは、当該技術分野で理解できる。
【0013】
図1は、本明細書の原則によってワイギグ(Wireless Gigabit Alliance:WiGig)を支援する無線ネットワーク100を図示する。図示された例で、無線ネットワーク100は、アクセスノード(Access Node:AN)102、モバイルノード104、ディスプレイデバイス106、パソコン(PC)108及びカメラ11を備える。AN 102は、ルータ、ベースステーション、ケーブルボックス、またはデータサービスを受信するいずれかの装置である。モバイルデバイス104は、携帯電話、個人用携帯端末機(PDA)、タブレットデバイス、電子リーダーなどのポータブルデバイスである。ディスプレイデバイス106は、プロジエクター、テレビ、コンピュータディスプレイ、ステレオ受信機などの出力デバイスでありうる。カメラ110は、プリンタ、カムコーダ、ウェブカム、スキャナ、医療用映像装置などの周辺(Peripheral)デバイスでありうる。すべてのデバイス102ないし110がワイギグを支援すると仮定すれば、それぞれのデバイス102ないし110は、少なくとも一つの他のデバイスとワイギグ連結を形成できる。例えば、PC 108は、オーディオ/ビデオ(Audio/Video:A/V)データをディスプレイデバイス106に送信でき、カメラ(または他の周辺デバイス)110からデータを受信でき、モバイルデバイス104と同期化作業を行い、AN 102を通じてインターネットに接続できる。
【0014】
図2Aは、本明細書の一実施形態によって直交周波数分割多重接続(Orthogonal Frequency Multiple Access:OFDMA)送信経路の上位レベルのダイアグラムを図示する。図2A及び図2Bで、OFDMA送信経路200及びOFDMA受信経路250は、無線通信デバイスの送信器及び受信機内にそれぞれ具現される。一部の実施形態で、送信経路200及び受信経路250の要素は、一つのトランシーバ内で結合される。
【0015】
送信経路200は、チャネルコーディング及び変調ブロック205、直列−並列変換(Serial to Parallel:S−to−P)ブロック210、Nサイズの逆高速フーリエ変換(Inverse Fast Fourier Transform:IFFT)ブロック215、並列−直列変換(P−to−S)ブロック220、周期的前置符号挿入ブロック225、アップコンバータ(Up−Converter:UC)230を備える。受信経路25は、ダウンコンバータ(Down Converter:DC)255、周期的前置符号除去ブロック260、直列−並列変換(S−to−P)ブロック265、Nサイズの高速フーリエ変換(Fast Fourier Transform:FFT)270、並列−直列変換(P−to−S)ブロック275、チャネルデコーディング及び復調ブロック280を備える。
【0016】
図2A及び図2B内の構成要素のうち最小限の一部はソフトウェアで構成される一方、他の構成要素は、設定可能なハードウェアまたはソフトウェア及び設定可能なハードウェアの混合で具現される。特に、本明細書に記載したFFTブロック及びIFFTブロックは、設定可能なソフトウェアアルゴリズムにより具現され、サイズNは、具現によって修正される。また、無線通信デバイスは、図2A及び図2B内の経路を具現するように設定された少なくとも一つのコントローラを備える。
【0017】
さらに、たとえ本明細書はFFT及びIFFTを具現する実施形態を対象としているとしても、これは単に例示の方式であり、本明細書の範囲を制限するいかなる方式でも解釈できない。本明細書の代案的な実施形態で、FFT関数及びIFFT関数は、それぞれ離散フーリエ変換(Discrete Fourier Transform:DFT)及び逆離散フーリエ変換(Inverse Discrete Fourier Transform:IDFT)に容易に代替されるということが分かる。DFT及びIDFT関数のために、N変数の値は整数(例えば、1、2、3、4など)であり、一方、FFT及びIFFT関数のために、N変数の値は2の指数(例えば、1、2、4、8、16など)になりうるということが分かる。
【0018】
さらに、他の実施形態で、送信経路及び受信経路は、共通要素(プリアンブル及びチャネルなどの)を共有する変調及びコーディング方式の他のタイプを使える。例えば、一実施形態は、小さくて低電力のポータブル器機のための低電力消耗を引き起こす単一キャリアを支援する。
【0019】
送信経路200で、チャネルコーディング及び変調ブロック205は、周波数−ドメイン変調シンボルのシーケンスを生産するための入力ビットであるコーディング(すなわち、低密度パリティ検査(Low Density Parity Check:LDPC)コーディング)及び変調(すなわち、QPSK、QAM)が適用された情報ビットの集合を受信する。直列−並列変換ブロック210は、変調された直列シンボルを、N個の並列シンボルストリームを生成するために並列データに変換(すなわち、逆多重化)し、Nは、無線通信デバイスで使われるIFFT/FFTのサイズである。次いで、NサイズのIFFTブロック215は、時間−ドメイン出力信号を生成するために、N個の並列シンボルストリームにIFFT演算を行う。並列−直列変換ブロック220は、NサイズのIFFTブロック215から直列時間−ドメイン信号を生成するために、並列時間−ドメイン出力シンボルを変換(すなわち、多重化)する。次いで、周期的前置符号挿入ブロック225は、時間−ドメイン信号に周期的前置符号を挿入する。最後に無線チャネルを通じて伝送するために、アップコンバータ230は、周期的前置符号挿入ブロック225の出力をRF周波数に変調(すなわち、アップコンバートする。信号は、RF周波数に変換される前にベースバンドでフィルタリングされる。
【0020】
送信されたRF信号は、無線チャネルを通じた後、受信するデバイスの受信経路250に到逹する。ダウンコンバータ255は、受信された信号をベースバンド周波数にダウンコンバートし、周期的前置符号除去ブロック260は、直列時間−ドメインベースバンド信号を生成するために、周期的前置符号を除去する。直列−並列変換ブロック265は、時間−ドメインベースバンド信号を並列時間ドメイン信号に変換する。次いで、NサイズのFFTブロック270は、N個の並列周波数−ドメイン信号を生成するためにFFTアルゴリズムを行う。並列−直列変換ブロック275は、並列周波数−ドメイン信号を、変調されたデータシンボルのシーケンスに変換する。チャネルデコーディング及び復調ブロック280は、変調されたシンボルを、原本の入力データストリームを復旧するために復調した後、デコーディングする。
【0021】
オーディオ及びビデオの送信は、ワイギグのアプリケーションにおいて重要である。しかし、良好なビデオ品質のために、パケット損失率は10−5より小さくなければならない。時間に敏感なアプリケーション(例えば、マルチメディア、ゲームなど)で、遅延制約はシステムの性能を制約する。時間に敏感なアプリケーションにおいて、再送信のために必要な動的バッファは、具現に相当な複雑度を追加する。そして、前述したように、ワイギグのメディア接続制御(Media Access Control:MAC)階層は、ブロードキャスト/マルチキャストパケットのための確認(Acknowledgements:ACKs)を許容しない。したがって、少ない損失、固定されたバッファと簡単な方式、再送信なし(No Retransmission)及び10−5より小さなパケット損失率を容認できるアプリケーションが望ましい。
【0022】
順方向エラー制御(Forward Error Control:FEC)方式は、かかるシナリオに好適な候補に該当する。実際に、FECは、チャネルの通信に使われている。ワイギグ60GHz通信において、低密度パリティ検査(Low−Density Parity Check:LDPC)コードFEC方式は、信頼できる通信を成就するために適用される。LDPCコードは、システムの物理階層の部分であり、1/2、5/8、3/4及び13/16のコーディングレートを持つ。かかるコードは、ビットレベルにおける保護に良好なレベルを達成でき、一般的に10−6より低いビットエラー率(Bit Error Rate:BER)を獲得できる。しかし、かかるFEC方式を使って成就可能なパケット損失率は、約0.01である。結果的に、外部FEC方式は、パケット損失率を許容レベル(約10−5)にだいぶ低減させる。特に、応用階層FEC(AL−FEC)コードは、これらの動的速度、低いオーバーヘッド及び具現コスト側面で最も適した候補である。本明細書で、AL−FECは、MAC階層上のあらゆる機能的階層上で行われるFECを参照できる。
【0023】
図3は、本明細書の一実施形態によってAL−FECコーディング概念を図示する。送信器は、送信されるN個のパケットのブロックを生成するために、k個のソースパケットにAL−FECエンコーディングを行う。N個のパケットは、AL−FECエンコーディング演算を通じて生成されたk個のソースパケット及びr個の修理パケットを含む。N個のパケットが送信された後、受信機はnパケットのうちm個を受信し、mはkとほぼ同じである。受信されたm個のパケットは、消失したソースパケットを復旧するためにデコーディングされる。オーバーヘッドはm−k=0であり、生成されたパケットの数字は、式(1)によって計算される。
【0024】
n=m/(1symbol loss rate) (1)
このように、シンボル削除チャネルキャパシティに近接してシステムが運用されるため、オーバーヘッドが小さい。
【0025】
理想的に、AL−FECコードは、次のような特徴を持つコードである。
【0026】
1)レートレスコード(Rateless Codes):原本データから無限な数字がエンコーディングされたパケット(シンボルは、一般的にパケットである)を生成できる。
【0027】
2)オーバーヘッドを入れない(Introduce no Overhead):受信機は、k個のエンコーディングされたパケットが受信された後、kパケットを含むメッセージを再構成できる。
【0028】
3)単純さ(Simple):エンコーディング/デコーディングは非常に速いべきであり、時間に線形である(Linear in Time)ことが好まれる。
【0029】
これらのコードの近似的な実現は、マトリックスコード、リード・ソロモンコード(Reed Solomon Codes)、ルヒー・トランスフォーム(Luby−Transform:LT)コード及びラプターコード(Raptor Codes)である。ラプターコードは、AL−FECコードの最高の総合的な近似値になる。
【0030】
AL−FECフレームワークの実施形態は、ワイギグ内のプロトコルオデブション階層(Protocol Adaption Layer:PAL)の任意的なフロー(例えば、オーディオ、圧縮されたビデオ、非圧縮されたビデオなど)にパケット・レベル保護を提供する。AL−FECフレームワークは、いずれかのFECコード(削除コード)と共に動作できるが、削除コードは、システマティックと仮定する。一実施形態で、AL−FECフレームワークは、ラプターコードを支援するために設定される。
【0031】
図4は、本明細書の一実施形態によってAL−FEC方式を図示する。ハイフンで連結された垂直線が、送信デバイス400及び受信デバイス450の機能的階層を分離する。点線は、送信デバイス400から受信デバイス450に送信されるデータを表示する。AL−FECフレームワークに関して、送信デバイス400は、物理(PHY)階層440、メディア接続制御(MAC)階層430、プロトコルオデブション階層(PAL)410及びAL−FECコンポネント420を含む。類似して、受信デバイス450は、PHY階層490、MAC階層480、PAL 460及びAL−FECコンポネント470を含む。送信デバイス400及び受信デバイス450それぞれは、ワイギグの可能なデバイス102ないし110などの無線通信デバイスのうち一つでありうる。
【0032】
本明細書の一実施形態による、AL−FEC方式における送信デバイス400の一般的な演算は、以下の通りである。送信デバイス400で、共に保護されるべきソースパケットの集合が特定される。AL−FECコードは、修理パケットの集合を生成するためにソースパケットに適用される。修理パケットが生成された後、送信デバイス400は、ソースパケット及び修理パケットを受信デバイス450に送信する。
【0033】
本明細書の一実施形態による、AL−FEC方式における受信デバイス450の一般的な演算は、以下の通りである。もし、すべてのソースパケットが受信デバイス450で成功的に受信されれば、受信されたソースパケットはAL−FEC復旧なしに処理され、受信された復旧パケットは廃棄される。逆に、もし、消失したパケットがあれば、消失したパケットを復旧するために成功的に受信されたソース及び復旧パケットにAL−FEC方式が適用される。
【0034】
送信デバイス400のプロトコルオデブション階層(PAL)410は、上位階層から(図示せず)ソースデータ(すなわち、応用パケット)を受信し、送信されるパケットを用意し、MAC階層430にパケットを送信する。このために、PAL 410は、受信デバイス450(T×mバイトのバッファサイズを持つ)PAL 460がソースブロックの処理に好適なソースブロックサイズ(k個のパケット)を選択することで、保護されるソースパケットの集合を最初に特定できる。
【0035】
PAL 410はソースブロック数字(Source Block Number:SBN)を生成し、ソースブロック、SBN、k及びTをAL−FECコンポネント420に送信する。PAL 410はまた、ソースパケットのペイロードにヘッダ情報を添付することでソースパケットを構成し、AL−FECコンポネント420から受信されたソースパケット及び修理パケットをMAC階層430に送信する。PAL 410及びMAC階層430の機能は、無線通信デバイスのプロセッサーまたはコントローラによって行われる。
【0036】
受信デバイス450で、PAL 460はMAC階層からパケット(ソースパケット及び修理パケット)を受信し、ソースデータを復旧し、ソースデータを上位機能性階層(図示せず)に送信する。このために、PAL 460は、すべてのソースパケットが成功的に受信されたかどうかを判断する。もしすべてのソースパケットが成功的に受信されたならば、ソースパケットはAL−FEC復旧なしに処理され、修理パケットは廃棄される。逆に、もし消失したパケットがあるならば、PAL 460は、AL−FECコンポネント470に、受信されたソース及び受信パケットを送信する。PAL 460は、AL−FECコンポネント470から複数のソースパケットを獲得する。
【0037】
一実施形態として、本明細書で述べられたPAL 410及び460のすべての機能は、MAC階層430及び480上の他の階層でそれぞれ行われる。PAL 410及び460は、ワイギグのために定義されるデータ及びディスプレイ基準などの特定の基準を支援する。例えば、PAL 410及び460は、高画質マルチメディアインターフェース(High−Definition Multimedia Interface:HDMI)及びディスプレイポートの支援を定義する。他の実施形態として、PAL 410及び460は、入/出力(Input/Output:I/O)データになり、また、ユニバーサルシリアルバス(USB)を支援でき、PCIエクスプレス(Peripheral Component Interconnect Express:PCIe)になる。
【0038】
送信デバイス400のAL−FECコンポネント420は、修理パケットを生成するためにソースデータにAL−FECコードを適用する。他の代案的な実施形態で、修理パケットはPAL 410によって生成される。受信デバイス450でAL−FECコンポネント470は、消失したパケットを復旧するために、AL−FEC方式を使ってPALから受信されたソース及び復旧パケットをデコーディングする。一部の実施形態で、AL−FECコンポネント420及び470、またはAL−FECコンポネント420及び470の機能は、それぞれPAL 410及び460内に統合される。また一部の実施形態で、送信デバイス400及び受信デバイス450の各PAL 410及び460、AL−FECコンポネント420及び470、MAC階層430及び480、及びPHY階層440及び490それぞれは、送信及び受信に関する機能を行うために設定される。
【0039】
PHY階層440及び490は、ハードウェア通信機能を参照する。言い換えれば、PHY階層440及び490は、データのロウ(Raw)ビットの送信及び受信の手段を定義する。一実施形態で、FEC方式は、送信デバイス400のPHY階層440によって、送信中の受信デバイス450のPHY階層460によって行われる。PHY階層のFECは、低密度パリティ検査(LDPC)コードのFEC方式でありうる。MAC階層430及び480は、当該技術分野で周知のアドレッシング及びチャネル接続制御機能を行う。
【0040】
下記の実施形態は、ラプターコードパラメータを説明し、ギガビット無線通信のための実施形態である。ラプターコードパラメータは、k=‘1024’のソースブロックサイズ及びシンボル長T=‘48’バイトを含む。このように、ソースブロック受信のためのバッファの必要条件は、約‘49’キロバイト(KB)である。AL−FEC以後のパケット損失率は、下記の式(2)を使って計算される。
【0041】
AL−FEC以後のパケット損失率=(AL−FEC以前のパケット損失率)×(ブロック−復旧失敗率) (2)
10−3のブロック−復旧失敗率及び10−3のAL−FEC以前のパケット損失率で‘12’パケットのオーバーヘッドを備える場合、AL−FEC以後のパケット損失率は、10−5に計算される。失敗する場合にも、正確に受信されたシステマティックパケットは依然として使える。
【0042】
一部の実施形態によってパケット削除率を低減させるために使われる他のAL−FECコーディング技術は、単一パリティ検査(SPC)、畳み込み符号化(Convolution Coding)、ハミングコードを含む。かかる方法は、検索するか、さらにはパケットを訂正するか、または、できる限り性能を劣化させないためには、いかなるパケットが削除されるべきかの先験的な知識を使う方法を採用できる。さらに、前記の方法と共に部分的に訂正されたパケット(部分的なビットが訂正されたが、全体ではなく削除されたパケットで識別された)を使えば、追加的に訂正されたパケット内の残っているビットの修正をさらに手伝うことができ、循環重複検査(Cyclic Redundancy Check:CRC)または他の正確性検査の通過に役に立つ。
【0043】
単一パリティ検査技術で、追加的なパリティパケット(すなわち、修理パケット)がパケットの集合に追加され、パケット全体はn=k+‘1’に作られる。追加されたパケットは、すべてのk個のパケットのパリティ検査でありうる。言い替えれば、パリティパケットは、k個のパケットにビット単位排他的論理和(A bit−wise Exclusive−or:Bit−wiser XOR)を行うことで生成される。k個のパケットは、原本シーケンスまたは実施形態による他の方式によって選択される。この方法は、N個のパケット内の単一パケット削除の訂正を保証する。一実施形態で、追加されたパケットの高い手順の他の組み合わせは、いかなるパケットが削除されたかの先験的な知識を使うことで、N個のパケット内のさらに削除されたパケットを修正するために使われうる。N個のパケット内に一つ以上の削除された(または、消失した)パケットが検索される場合、プロセスは中断されるか、または開始されず、可能な再送信のために、階層構造内の上位階層に削除されたパケットのための報知が送信される。SPCを使えば、ビットレートは増加する。さらに、簡単なSPCで他のコーディングレートを使えば、要求される性能を容易に回復させることができる。
【0044】
一部の実施形態で、単一パリティ検査方式は、インターリーブされた、または非インターリーブされた方式である。図5Aは、本発明の一実施形態によって非インターリーブされた単一パリティ検査方式を図示する。この実施形態で、k=’24’ソースパケットである。追加されたパケット(パケット0)は、すべてのk個のデータパケット(パケット1…24)のパリティ検査でありうる。一実施形態でパケット0は、PALまたはMAC階層上の他の階層内の24個のソースパケットに、ビット間のビット単位排他的論理和を行うことで生成される。この方法は、n=k+‘1’=25パケット内の単一パケット削除の訂正を保証する。
【0045】
非インターリーブされたFECで、A/VPALは、シーケンス番号がi+1、…i+24(すなわち、‘1’、…、‘24’)であるパケットを保護するために、シーケンス番号がi(図5A内の‘0’)であるパリティパケットヘッダを生成する。パリティパケット長フィールドは、i+1、…i+24パケットのうち最も大きいパケット長に設定される。FECエンコーダは、パケットi+1からi+24までのビット単位排他的論理和によってパリティパケットのためのペイロードを計算し、さらに短いパケットは、仮想の(送信されていない)ゼロビットを付け加えると仮定される。
【0046】
一実施形態で、パケットインターリーバは、性能を高めるために追加される。フェーディングチャネルの特性のため、削除されたパケットは順次的であり、これによって、SPCが非常に低下する。パケット追加インターリーバは、削除されたパケットを分散することでSPCが性能を回復するように大きく役に立つ。図5Bは、本発明の一実施形態によってインターリーブされた単一パリティ検査方式を図示する。
【0047】
図示された実施形態で、n=‘25’及びk=‘24’(一つのSPC)パケットなどのパケットの各集合のために、パケットの4個の集合を連結させる間に方形インターリーバが使われる。すなわち、kデータパケット及び一つのパリティパケットを含む単一ブロックを送信する非インターリーブされたSPC方式とは異なって、インターリーブされたSPC方式は、kデータパケットの4個のブロック及び4個のパリティパケットを送信する。
【0048】
インターリーブされたFECで、A/VPALは、シーケンスナンバーi+4、…i+99のパケットを保護するために、シーケンスナンバーi、i+1、i+2、i+3(図5Bの‘0’、‘1’、‘2’、‘3’)の4個のパリティパケットヘッダを生成する。FECエンコーダは、パリティパケットのペイロードを下記のように計算する。パリティパケットのペイロードiは、パケットi+4、i+8、i+12、…、i+96のビット単位排他的論理和であり、パケットi+1のペイロードは、パケットi+5、i+9、i+13…、i+97のビット単位排他的論理和であり、パリティパケットi+2のペイロードは、パケットi+6、i+10、i+14…、i+98のビット単位排他的論理和であり、パリティパケットi+3のペイロードは、パケットi+7、i+11、i+15…、i+99のビット単位排他的論理和である。
【0049】
ブロック当たり一つのパケット以上を復旧できない非インターリーブされたSPC方式とは異なって、インターリーブされたSPCは、2個ないし4個の連続的な削除されたパケットを復旧できる。パリティパケット及びシステマティックパケットの順序は変更できる。例えば、システマティックパケット(例えば、データパケット)は、パリティパケット以前に送信される。
【0050】
図6は、本明細書の一実施形態によって削除されたパケットを復旧するための畳み込み符号を図示する。
【0051】
畳み込み符号(Convolutional Code:CC)は、隣接しているビットの排他的論理和(Exclusive OR:XOR)に基づく。畳み込み符号の高い拘束長(Constraint Length:CL)は、良好な修理性能を持つ。さらに高いCLは、さらに高いデコーディング複雑度(ビタビ(Viterbi)/ターボ(Turbo)デコーディング)である。畳み込み符号の短所は、もし削除されたパケットが存在する場合にパケット内のすべてのビットが分からない。同じパケットからの連続的な削除されたビット(CLよりさらに多い)で、ビタビデコーディングはパケットを修理できない可能性がある。これは、パケットがエンコーディングまたは送信される前にインターリーブされねばならないということを意味する。インターリーバの長さは、トレースバック(例えば、5×CL)または最小限CLより大きいサイズである。削除されたビットがインターリーブされたならば、これらは復旧される可能性が増大する。図6は、‘39’のシステマティックパケット(すなわち、含まれたデータ)及び一つのパリティパケット(CCは、修理性能を高めるためにすべてのコーディングレートを支援する)が存在するように、‘1000’バイトのn=‘40’のパケットのインターリーバサイズ、及びCL=’7’及び‘39/40’(n−1/n)のCCコーディングレートを持つインターリーブされた畳み込み符号によってAL−FECエンコーディングされたパケットの例を図示する。
【0052】
Px,y表記法は、ビットパケット及びビット位置を示す。例えば“P0,1”は、パケット‘0’及びビット位置1を示し、“P1,0”は、パケット‘1’及びビット位置‘0’を表示する。このように、各データのビット及びパリティパケットは図6に垂直的に図示されているように、畳み込み符号は、パリティパケット内の対応するパリティビットを計算するために、同じビット位置にかけてブロック内のn−1パケットまで作動する。例えば、パリティパケットn−1のビット‘0’(すなわち、“Pn−1,0”)を計算するため、畳み込み符号は“P0,0”、“P1,0”、“P2,0”…、“Pn−2,0”にかけて動作する。次いで、パリティパケットのビット‘0’(すなわち、“Pn−1,1”)を計算するため、このような形でパリティパケットの最後のビットまで計算される。もしデータパケットが異なる長さを持っているならば、パリティパケットは最大のパケット長を持ち、さらに短いパケットは、畳み込み符号を実行するために、これらそれぞれのテール(tail)に仮想のゼロが付け加えらる。SPCと同様に、パリティパケット及びシステマティックパケットの順序は変更できる。
【0053】
またこのケースで、削除されたパケットの先験的知識は、CCAL−FECが使われるべきか(例えば、非常に低いSNRでパケット削除率がSNRの減少のように高い修理確率で減少する時)を定められる。
【0054】
他の実施形態で、AL−FECのためにハミングコーディングが使われうる。ハミングコーディング(Hamming Coding:HC)を使ってハミングコーディングの最小限のハミング距離(Hamming Distance:dmin)から修理されたパケットのレベル(復旧できる、削除されたビットの数字またはパケット)が誘導される。例えば、dmin=‘3’を持つHマトリックスで修理されたパケットの数字は、dmin−‘1’=‘2’の削除されたパケットでありうる。ハミングコードを使う時は、パケットの各集合のために一つ以上のパリティパケットがありうる(コーディングレートを調節することで)。Hマトリックスは、dmin及びコーディングレートを定める。パケットの各集合内のデータパケットの最大数字は、mパリティビット(またはパケット)のために、2m−m−1データビット(またはパケット)までエンコーディングされるように、ハミングコドパリティパケットの数字に基づいて定められる。例えば、ハミング(7,4)コードは、すべての4個のデータビットを7個のビットにエンコーディングし、3個のパリティビットを追加する。
【0055】
一部の実施形態で、インターリーブされた、または非インターリーブされた単一パリティ検査は、ハミングコドと共に結合される。例えば、単一パリティ検査エンコーディング(インターリーブ方式、または非インターリーブ方式)は、さらなるパリティパケットを形成するためにハミングエンコーディングパケットに行われる。
【0056】
前記実施形態は、ラプターコードに比べてさらに簡単にAL−FECを具現する方式を説明する。説明されたすべてのAL−FEC方式は、削除されたパケットを修理するために低電力デバイスで好適に使われる。
【0057】
図7は、本明細書の一実施形態によって、AL−FECを使ってエンコーディングされたパケットのヘッダの内容を図示する。一部の実施形態でパケットヘッダ700は、PAL内のALFEC方式が行われる特定の機能的階層で生成されかつ添付され、パケットヘッダ700は、PALから出るパケットに生成または添付される。
パケットヘッダ700内の各列は、少なくとも一つのフィールドと対応する。上段行の各ブロック内のテキストは、パケットヘッダフィールド内に含まれた情報を説明し、下段行内の数字は、それぞれのヘッダフィールドのオクテット長(バイトの数字)を表示する。1オクテットの長さを持つパケットタイプヘッダフィールドは、パケットがシステマティックであるか(例えば、データを含んでいるか)、またはパリティであるかを表示する。
【0058】
一実施形態で、単一ビット(例えば、最初のビット)は、システマティック(例えば、データ)パケットからパリティパケットを区分するために、パケットタイプフィールド内に割り当てられる。パリティパケットを表示するために単一ビットを使う時、‘0’は、パケットがシステマティックパケットであることを表示するために使われ、‘1’は、パケットがパリティ(または、その逆)であることを表示するために使われる。例えば、“1xxxxxxx”の値を持つパケットタイプヘッダフィールドは、パリティパケットを表示するものであり、逆に“0xxxxxxx”は、システマティックパケットを表示する。一実施形態で単一ビットは、他のパケットヘッダフィールドに割り当てられる。
【0059】
他の実施形態として、ワイギグ標準でパケットタイプフィールド内の特定の8−ビット値は、パリティパケットを表示するために定義される。例えば‘0×80’(または“10000000”)の値は、パリティパケットを表示できる。他の方式で、特定の値が、システマティックパケットからパリティパケットを区別するために他のヘッダフィールドに使われうる。
【0060】
ストリーム識別子(Identifier:ID)は、パケットが属するデータストリームを識別する。一実施形態として、ストリームIDは送信ブロックを参照できる。シーケンス番号(Sequence Number:SeqNum)は、ブロック内のパケットの手順を識別する。一実施形態によって、長さフィールドは、ペイロードのサイズまたはブロック内のパケットの総数字を表示する。
【0061】
送信または受信デバイスがAL−FEC性能を持っていない場合がありうる。したがって、本明細書の実施形態によって、デバイスはペイロードを伝送する前に、性能交換期間中にAL−FEC性能情報を交換できる。
【0062】
図8は、本明細書の一実施形態によって、無線通信システム内でAL−FECの使用のための一般的なプロセスを図示する。データ通信前に、送信デバイス400及び受信デバイス450は性能情報810を交換する。一部の実施形態で、性能交換情報810は、AL−FEC性能情報を含む。ブロック820で性能交換プロセスが完了した後、送信デバイス400は、送信のためにAL−FECコードを用いてパケットをエンコーディングする。このプロセスは、図9を参照してさらに説明される。一部の実施形態で、送信デバイス400は、AL−FECエンコーディング以後にPHY階層内でさらなるFECコーディングを行える。送信デバイス400は、以後にエンコーディングされたシステマティックパケット(例えば、データ)及び修理パケット830を受信デバイス450に送信する。ブロック840で、受信デバイス450は、AL−FECコードを用いて消失したパケット(または、エラーが発生したパケット)を復旧できる。一部の実施形態で受信デバイスは、AL−FECデコーディングプロセスを使ってパケット復旧を行うかどうかを先ず定める。このプロセスは、図10を参照してさらに説明される。一部の実施形態で、受信デバイス450は、AL−FECデコーディングのために受信されたパケットを伝送する前に、PHY階層内でFECデコーディングを行える。
【0063】
図9は、本明細書の一実施形態によってAL−FECを使って送信するために、エンコーディングパケットのためのプロセスを図示する。ブロック910で、送信デバイス(例えば、送信デバイス400)は、少なくとも一つ以上の受信デバイス(例えば、受信デバイス450)にAL−FEC性能情報を送信する。
【0064】
ブロック930で、送信デバイスはソースパケットにAL−FECコードを使うことで、システマティックパケット及び少なくとも一つの修理パケット(AL−FECコーディング方式に基づいて)を生成する。一実施形態で、PALは、ソースブロック(共に保護されねばならないソースパケットの集合)にソースブロック番号(Source Block Number:SBN)を割り当て、ソースブロック、SBN、T及びkをAL−FECエンコーダに伝送する。AL−FECエンコーダ(ハードウェアまたはソフトウェアに具現される)は、修理パケットの集合を生成するためにソースパケットにAL−FECコードを適用する。
【0065】
前述したAL−FECコーディング方式のうち一つを使うことで、少なくとも一つの修理パケットが生成される。例えば、非インターリーブされたSPCコーディング方式が使われる時、ソースブロック当たり一つの修理(すなわち、パリティ)パケットが生成される。すなわち、n=‘25’及びk=‘24’であると仮定すれば、PALは、シーケンス番号iであるパリティパケットヘッダを生成し、i+1、…、i+24パケットをFECエンコーダに伝送する。FECエンコーダは、i+1、…、i+24パケットのビット単位排他的論理和によってパリティパケットのペイロードを生成する。4−インターリーブされたSPCコーディング方式が使われる時、データパケットの4個の集合のそれぞれのためにインターリーブされたSPCコーディング方式が使われる時、一つの修理パケットが生成される。すなわち、各集合でn=‘25’及びk=‘24’と仮定すれば、PALは、シーケンス番号i、i+1、i+2、i+3人4個のパリティパケットヘッダを生成し、i+4、…、i+99パケットをFECエンコーダに伝送する。FECエンコーダは、i+4、i+8、…、i+96パケットのビット単位排他的論理和によってパリティパケットペイロードを生成する。FECエンコーダは、パリティパケットのペイロードを次のように計算する。パリティパケットiのペイロードは、i+4、i+8、i+12、…i+96のビット単位排他的論理和であり、パリティパケットi+1のペイロードは、i+5、i+9、i+13、…i+97のビット単位排他的論理和であり、パリティパケットi+2のペイロードは、i+6、i+10、i+14、…i+98のビット単位排他的論理和であり、パリティパケットi+3のペイロードは、i+7、i+11、i+15、…i+99のビット単位排他的論理和である。一実施形態で、AL−FEC方式が使われ、ブロック単位(Block−by−Block)に基づいて変更される。
【0066】
ソースブロック内の少なくとも一つのソースパケットはシステマティックパケットを含む。一実施形態で、各システマティックパケットは一つのソースパケットに対応する。システマティックパケットのために修理パケットが生成され、修理パケット長は、パケットのうち最も長いシステマティックパケット長と同一である。PALは、システマティック/修理パケットのそれぞれのためのパケットヘッダ(システマティック/パリティパケット、ストリームID、シーケンス番号などのための指示子を含む)を生成し、パケットヘッダを、対応するシステマティック/修理パケットに添付し、ソースパケットをMAC階層に伝送する。
【0067】
一実施形態として、ブロック930は、PAL及びAL−FECエンコーダで行われる。前記で論議されたように、PAL及びAL−FECエンコーダは、分離されたコンポネントであり、PAL内に併合されてもよい。他の実施形態として、ブロック930は、MAC階層上などの他の上位機能的階層で行われる。
【0068】
ブロック940で、ブロック内のエンコーディングされたシステマティック/修理パケットは、以後に送信のためにMAC及びPHY階層で処理される。一実施形態として、PHY階層は、要求される性能を達成するために、送信前にAL−FECエンコーディングされたパケットにFECコーディング方式を適用する。
【0069】
図10は、本明細書の一実施形態によってAL−FECを使うデコーディングパケットのためのプロセスを図示する。プロセス840は、1)修理パケットがなければAL−FECを使わないオプション;2)各ブロックに25個のパケット(24個のシステマティックパケット及び一つの修理パケット)が含まれている非インターリーブされた(25,24)−SPC AL−FECオプション;3)各ブロックに25個のパケットの4個の集合(各集合当たり24個のシステマティックパケット及び1個の修理パケット)が含まれている4−インターリーブされた(25,24)−SPC AL−FECオプションなどの3つのオプションのうち一つで動作できるシステムの一実施形態を示す。
【0070】
ブロック1010で、受信デバイス(例えば、受信デバイス450)は、送信デバイス(例えば、送信デバイス400)から送信ブロックのパケットを受信する。ブロック1020で、受信デバイスは修理パケットが受信されたかどうかを判断する。すなわち、受信デバイス内のPAL(またはAL−FECデコーディングを行う責任がある機能的階層)は、AL−FEC指示子(例えば、図7に関して説明されたパケットタイプフィールド)を探すために、各パケットのヘッダを検査する。
【0071】
もし修理パケットが受信されていなければ、プロセスはブロック1060に進み、AL−FEC復旧は行われない。もしAL−FECを使わない状態でパケットが送信される場合、該プロレスが発生する。このように、PALは、修理パケットと表示される受信されたパケットがないか、ロード内の受信されたすべてのパケットを判断できる。もしAL−FECを使わないパケットが消失した場合、受信デバイスは、消失したパケットまたは全ブロックの再送信を要請できる。一実施形態として、修理(例えば、パリティ)パケットが消失した場合にのみ、受信デバイスは、消失した修理パケットの再送信を要請できる。
【0072】
もし修理パケットが受信されれば、ブロック1030で、受信デバイスは、パケットがインターリーブされたかどうかを判断する。例えば、修理パケットが先ず順次化されていると仮定すれば、ロードの最初のパケット(SeqNum iの)が修理パケットである場合にのみ、受信デバイスは、パケットがインターリーブされていないパケットであると判断できる。ブロック内の最初のパケットが、パケットヘッダ内のAL−FECビット(例えば、パリティパケット指示子)によって表示される修理パケットでなければならないためである。パケットi+1(i+1が消失した場合、パケットi+2またはi+3)dが受信された後、もしパリティパケット指示子が0に設定されているならば、パケットi、i+1、…、i+24はAL−FECブロックを形成する。もしソースパケットi+1、…、i+24のうち一つが消失した場合、AL−FECブロック内の他のパケットとビット単位排他的論理和動作を通じて復旧される。
【0073】
例を挙げて調べ続ければ、もし最初の4個のパケット(SeqNum i、i+1、i+2、i+3の)のうち少なくとも2つがAL−FECを使うと表示されて(例えば、パリティパケット指示子が1に設定)受信されたならば、受信デバイスは、インターリーブされたSPC AL−FECコーディング方式を使ってパケットが送信されたということが判断できる。すなわち、パケットi、i+4、i+8…、i+96はAL−FEC集合(例えば、ブロック)を形成し、パケットi+1、i+5、i+9…、i+97が集合を形成し、パケットi+2、i+6、i+10…、i+98が集合を形成し、パケットi+3、i+7、i+11…、i+99が集合を形成する。
【0074】
前述したすべての場合及びモードで削除された(パリティ/システマティック)パケットは、復旧如何に構わず、送信デバイスのPALは、ストリームID及び/またはSeqNumを知っている点を使って、パケットをどのように修理するかをいつも定められると保証される。
【0075】
ブロック1040で、受信デバイスは、いかなるパケットが消失したかを定める。もし消失したパケットがなければ、(すなわち、すべてのソースパケットが成功的に受信される)、次いで、ソースパケットはAL−FEC復旧なしに処理され、修理パケットは廃棄される。プロセスは、ブロック1060に進む。
【0076】
逆にもしソースパケットが消失した場合、ブロック1050で、受信デバイスは、AL−FECコーディング方式のタイプに基づいて消失したパケットの数字がしきい値より大きいかどうかについて判断する。図5A及び5Bに関して説明したように、非インターリーブされたSPC方式下では、ただ1個の消失したパケットのみ復旧され、4−インターリーブされたSPC方式下では、集合当たり連続的な4個の消失したパケットまで、または1個の消失したパケットが復旧される。
【0077】
このように、ブロック1030で、もしPALがパケットがインターリーブされていないと判断した場合、しきい値は、1個の消失したパケットである。またはブロック1030で、もしPALが、パケットがインターリーブされたと判断した場合、しきい値は、4個の連続的な消失したパケットまたは1個の消失したパケットである。
【0078】
もし消失したパケットの数字が対応するしきい値より大きい場合、プロレスはブロック1060に進み、AL−FEC復旧を行わない。一実施形態として、受信デバイスは、消失したパケットまたは全体ブロックの再送信を要請できる。
【0079】
逆に、もし消失したパケットの数字が対応するしきい値より大きくない場合、ブロック1070で、受信デバイスは、消失したパケットを復旧するためにAL−FECデコーディングを行う。すなわち、PALは、消失したパケットを復旧するためにブロックをFECデコーダーに伝送する。
【0080】
図10に示したプロセスは、説明のみを目的とするものであり、本明細書の範囲を制限する意味ではない。他の実施形態として、本明細書の範囲を逸脱しない範囲内でブロックの順序では再配列される。例えば、いかなるパケットが消失したかを判断するためのブロック1040は、ブロック1010でMAC階層からパケットを受信された後で直ちに行われる。ブロック1020は、少なくとも一つのパケットが消失したかを定めた後で行われる。
【0081】
AL−FECブロック内の各AL−FECパケット長は、最大長さを持つパケットと同一であることに留意せねばならない。これは、同じブロック内のPALパケットに異なる長さを持たせることを可能にする。例えば、PALパケット長がAL−FECパケット長より小さい時、AL−FECエンコーダ/デコーダーは、“仮想の”0を付け加えることでかかる差を償える。
【0082】
たとえ本明細書が典型的な実施形態として説明されたとしても、多様な変更及び修正が当業者により行われうる。本明細書は前述した変更及び修正を含み、これは特許請求の範囲内に含まれる。
図1
図2A
図2B
図3
図4
図5A
図5B
図6
図7
図8
図9
図10