JP6188867B2 - パケットを復元するための方法及びシステム - Google Patents

パケットを復元するための方法及びシステム Download PDF

Info

Publication number
JP6188867B2
JP6188867B2 JP2016100971A JP2016100971A JP6188867B2 JP 6188867 B2 JP6188867 B2 JP 6188867B2 JP 2016100971 A JP2016100971 A JP 2016100971A JP 2016100971 A JP2016100971 A JP 2016100971A JP 6188867 B2 JP6188867 B2 JP 6188867B2
Authority
JP
Japan
Prior art keywords
packet
bits
packets
bit
data packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2016100971A
Other languages
English (en)
Other versions
JP2017005692A (ja
Inventor
クマール カッレ リテッシュ
クマール カッレ リテッシュ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2017005692A publication Critical patent/JP2017005692A/ja
Application granted granted Critical
Publication of JP6188867B2 publication Critical patent/JP6188867B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

本主題は、一般に通信ネットワークの分野に関し、より詳細にはネットワーク化プロトコルによって受け取られるデータ・パケットを復元する方法及びシステムに関する。
コンピュータは、人々が自分達の仕事及び個人生活にあらゆる面で使用する重要なツールに成長しているため、場所に関係なくコンピュータをフルに活用するためのコンピュータ・ユーザからの要求が増加している。コンピュータは、移動コンピュータの使用を可能にするために、しばしば無線通信機器を備えており、したがってコンピュータ・ユーザは、自分達の家庭又は事務所から離れている場合であっても情報及びサービスにアクセスすることができる。これらの機能を真に有用なものにするためには、無線通信を高速にし、且つ、その信頼性を高くすることが望ましい。無線通信の速度及び信頼性を改善するために、誤り制御コードが実施されている。誤り制御コードを使用することにより、受信デバイスは、情報のパケットが誤りを伴って受信されたかどうかを決定することができる。誤りは、例えば、通信チャネルの雑音が、受信した信号を送信デバイスによって送られたビットのパターンとは異なるビットのパターンを表すように不正確に受信デバイスに分類させることにより生じる。
誤り制御コードの特性に応じて、受信デバイスは、単純に誤りを検出するだけでなく、誤りの性質を決定し、且つ、それを修正することも可能である。いくつかの誤り制御コードは複数の誤りを修正することができ、修正することができる誤りの数はコードの特性で決まる。修正することができる誤りの数には、誤り制御コードの特性に無関係に限界がある。したがって通信プロトコルは、修正することができる数を超える誤りを有するパケットが受け取られる可能性、或いはパケットが全く受け取られない可能性を考慮している。
パケットが適切に受け取られなかったことを送信デバイスが決定する方法とは無関係に、送信デバイスは、送信デバイスがACKを受け取るか、又は送信デバイスによって使用されるプロトコルによって設定される送信試行回数の限界に到達するまでの間、パケットを再送信することによってこのような決定に応答することができる。受け取ったパケット内の誤りを検出し、且つ、修正する能力は、この能力によってパケットを再送信する必要性が回避されるため、通信の速度及び信頼性を改善することができる。より強力なコードは、パケットを再送信しなければならない事例の数を少なくし、この利点は、より強力なコードが使用される場合、パケット毎により多くのビットを必要とすることによって相殺される。通信システムの設計者は、概ね改善された性能を提供するための送信速度に対する正の影響と負の影響の両方を平衡させる誤り制御コードの強度を選択することができる。
いくつかの例では、入れ子式(nested)誤りコードを使用してより良好な平衡を達成することができる。コードは、パケット内で通信されるビットに第1の誤り制御コードを加えることによって入れ子にされる。次に、第1のコードを使用して修正されたビットに第2のコードを加えることができる。この方式で他のコードを順次加えることにより、所望の総合コード強度を提供することができる。例えば、最初に、送信されるビットに周期冗長検査(CRC:Cyclic Redundancy Check)を加えることが知られている。CRCは、CRCが算術演算でパケット内の他のビットと結合されると既知の結果が生じるように選択される値である。受け取られ、その算術演算が実施されてもその既知の結果が生じない場合、誤りが生じ、送信されたビットと一致しないビットが受け取られたことを推定することができる。例えばCRCは、パケット内のビットをグループ化することによって形成された語が加えられると合計ゼロをもたらす値であってもよい。受け取られ、CRCがパケット内の他のビットと結合されてもその語が合計ゼロにならない場合、誤りが生じたことを推定することができる。しかしながら従来の方法は、受け取ったデータ・パケットのビットの各々に対してCRCを実施している。そのために計算の数が多くなり、したがって消費される時間が長くなり、また、多くのメモリを消費している。また、CRCを使用するとデータ・オーバーフローが増加する。
特許請求される方法及び評価システムにより、従来技術の1つ又は複数の欠点が克服され、また、本開示で特許請求される方法及び評価システムを準備することによって追加利点が提供される。
本開示の技法により追加特徴及び利点が実現される。本開示の他の実施例及び態様は、本明細書において詳細に説明され、特許請求される開示の一部と見なされる。
本開示の一態様では、ネットワーク化プロトコルによって受け取られるデータ・パケットを復元するための方法が提供される。方法は、トランシーバ・システムのパケット・プロセッサによってデータ・パケットの複数のコピーを受け取るステップを含む。方法は、ビット単位多数決票決(bitwise majority voting)を使用して、データ・パケットの複数のコピーから候補パケットを生成するステップであって、候補パケットのすべてのビットが回復済みビット及び未回復ビットのうちの1つとして分類されるステップをさらに含む。さらに、方法は、データ・パケットの複数のコピーの間のハミング距離及びエネルギー・レベルに基づいて、データ・パケットの複数のコピーから少なくとも2つの有望なパケットを選択するステップを含む。その上、方法は、少なくとも2つの有望なパケットの1つ又は複数の未回復ビットの状態を共通ビット及び異なるビットのうちの1つとして識別するステップを含む。また、方法は、少なくとも2つの有望なパケットの確実性(confidence)ファクタを受け取るステップと、回復済みビット及び異なるビットのうちの1つになるよう、パケット・プロセッサによって、少なくとも2つの有望なパケットの確実性ファクタに基づいて1つ又は複数の共通ビットを決定するステップと、候補パケットの未回復ビットの各々を有望なパケットの対応する回復済みビット及び異なるビットのうちの1つに置換するステップとを含む。最後に、方法は、データ・パケットを復元するために、パケット周期冗長検査(CRC:Cyclic Redundancy Check)を使用して候補パケットの未回復ビットを決定するステップを含む。
一態様では、本開示は、データ・パケットを復元するためのトランシーバ・システムを開示する。トランシーバ・システムは、送信機システムから送信されるデータ・パケットの複数のコピーを受け取るステップを含む。トランシーバ・システムは、ビット単位多数決票決に基づいて、データ・パケットの複数のコピーを使用して候補パケットを生成するステップ、データ・パケットの複数のコピーの間のハミング距離及び受け取ったエネルギーに基づいて、データ・パケットの複数のコピーから少なくとも2つの有望なパケットを選択するステップ、1つ又は複数の比較パラメータに基づいて、少なくとも2つの有望なパケットのビットの各々の状態を識別するステップのうちの1つを実施するように構成されたパケット・プロセッサを備えている。また、パケット・プロセッサは、パケット周期冗長検査(CRC)のビットのすべての組合せを評価する。最後に、パケット・プロセッサは、評価されたビットを生成された候補パケット内の対応するビット位置において置換し、したがってデータ・パケットの送信された複数のコピーを復元する。
以上の要約は実例による説明にすぎず、本発明を制限することは何ら意図されていない。図面及び以下の詳細な説明を参照することにより、上で説明した実例態様、実施例及び特徴以外の他の態様、実施例及び特徴が明らかになるであろう。
本開示の新規な特徴及び特性は、添付の特許請求の範囲に示されている。しかしながら、本開示自体並びに好ましい使用モード、他の目的及びその利点は、例証実施例についての以下の詳細な説明を参照し、添付の図に関連して読むことによって最も良好に理解されよう。以下、単なる実例として1つ又は複数の実施例について、同様の参照番号は同様の要素を表す添付の図を参照して説明する。
本開示のいくつかの実施例によるトランシーバ・システムの受信機アーキテクチャを示す図である。 本開示のいくつかの実施例によるトランシーバ・システムの一例示的ブロック図である。 本開示のいくつかの実施例による、受け取ったビット・シーケンスの距離に基づいて2つの最も有望なパケットの復号化確実性のための一例示的グラフである。 本開示のいくつかの実施例による、ネットワーク化プロトコルによって受け取られるデータ・パケットを復元するための一例示的方法を示すフローチャートである。 本開示のいくつかの実施例による、候補パケットを引き出すためのビット単位多数決票決のための例示的方法ステップを示すフローチャートである。 本開示のいくつかの実施例による、データ・パケットの複数のコピーから2つの最も有望なパケットを選択する方法を示すフローチャートである。 本開示のいくつかの実施例による、データ・パケットの複数のコピーからの最も有望なパケットの中に隠れている誤りを分類し、且つ、隔離する方法を示すフローチャートである。 本開示のいくつかの実施例による、パケットを評価して候補パケットを計算するための一例示的方法を示すフローチャートである。 本開示と無矛盾の実施例を実施するための一例示的コンピュータ・システムのブロック図である。
当業者には、本明細書におけるブロック図は、すべて、本主題の原理を使用した実例システムの概念図を表したものであることを理解されたい。同様に、フローチャート、流れ図、状態遷移図、擬似コード等々は、すべて、コンピュータ可読媒体の中に実質的に表すことができ、また、コンピュータ又はプロセッサが明確に示されている、いないにかかわらず、このようなコンピュータ又はプロセッサによって実行することができる様々なプロセスを表していることは理解されよう。
本文書においては、「例示的」という語は、本明細書においては、「実例、例又は例証として作用すること」を意味するべく使用されている。本明細書において「例示的」として説明されている本主題の任意の実施例又は実施態様は、必ずしも他の実施例に優る好ましい実施例又は有利な実施例として解釈されるものではない。
本開示は、様々な修正形態及び代替形態が可能であるが、図面には本開示の特定の実施例が実例として示されており、また、以下で詳細に説明される。しかしながら本開示を開示されている特定の形態に限定することは意図されておらず、それどころか本開示は、本開示の範囲の範疇であるすべての変更態様、等価物及び代替を包含することが意図されていることを理解されたい。
本開示は、様々な修正形態及び代替形態が可能であるが、図面には本開示の特定の実施例が実例として示されており、また、以下で詳細に説明される。しかしながら本開示を開示されている特定の形態に限定することは意図されておらず、それどころか本開示は、本開示の趣旨及び範囲の範疇であるすべての変更態様、等価物及び代替を包含することが意図されていることを理解されたい。
「備える(comprises)」、「備えている(comprising)」という用語、又はそれらの任意の他の変化には、構成要素又はステップのリストを備えたセットアップ、デバイス又は方法がこれらの構成要素又はステップのみを包含するのではなく、明確にリストに挙げられていない他の構成要素又はステップを包含することができ、或いはこのようなセットアップ又はデバイス又は方法に固有の構成要素又はステップを包含することができるよう、非排他的包含を網羅することが意図されている。言い換えると、「〜を備える(comprises...a)」が後に続くシステム又は装置内の1つ又は複数の要素は、それ以上の制約なしに、そのシステム又は装置内における他の要素又は追加要素の存在を排除しない。
本開示の実施例は、トランシーバ・システムによって受け取られるデータ・パケットの複数のコピーを復元する方法及びシステムに関している。
一実施例では、本開示は、データ・パケットを復元するトランシーバ・システム及び方法を提供する。方法は、トランシーバ・システムのパケット・プロセッサによってデータ・パケットの複数のコピーを受け取るステップを含む。方法は、ビット単位多数決票決を使用して、データ・パケットの複数のコピーから候補パケットを生成するステップであって、候補パケットのすべてのビットが回復済みビット及び未回復ビットのうちの1つとして分類されるステップをさらに含む。さらに、方法は、データ・パケットの複数のコピーの間のハミング距離及びエネルギー・レベルに基づいて、データ・パケットの複数のコピーから少なくとも2つの有望なパケットを選択するステップを含む。その上、方法は、少なくとも2つの有望なパケットの1つ又は複数の未回復ビットの状態を共通ビット及び異なるビットのうちの1つとして識別するステップを含む。また、方法は、少なくとも2つの有望なパケットの確実性ファクタを受け取るステップと、回復済みビット及び異なるビットのうちの1つになるよう、パケット・プロセッサによって、少なくとも2つの有望なパケットの確実性ファクタに基づいて1つ又は複数の共通ビットを決定するステップと、候補パケットの未回復ビットの各々を有望なパケットの対応する回復済みビット及び異なるビットのうちの1つに置換するステップとを含む。最後に、方法は、データ・パケットを復元するために、パケット周期冗長検査(CRC)を使用して候補パケットの未回復ビットを決定するステップを含む。このように、本開示は、誤ったパケットの受信機からの明確な再送信要求を伴うことなく、信頼性の高いリンク層パケット復元を達成する方法及びシステムを提供する。
本開示の実施例についての以下の詳細な説明には、本明細書の一部をなし、本開示を実践することができる特定の実施例が例証として示されている添付の図面が参照されている。これらの実施例は、当業者による本開示の実践を可能にするべく十分に詳細に説明されており、他の実施例を実現することができること、及び本開示の範囲を逸脱することなく変更を加えることができることを理解されたい。したがって以下の説明は、本発明を制限する意味で捉えてはならない。
図1は、本開示のいくつかの実施例による、ネットワーク化プロトコルの受信機アーキテクチャ100を示したものである。パケット・プロセッサ102は、ネットワーク化プロトコルのリンク層101の中に存在するように構成されている。一実施例では、パケット・プロセッサ102は、トランシーバ・システムの中に存在するように構成することができる。ネットワーク化プロトコルのリンク層101は、リンク層プロトコル・コントローラ103を備えている。リンク層プロトコル・コントローラ103は、状態遷移、例えば送信、受信、搬送波知覚、肯定応答、等々のための制御論理を実施する。データ・パケットの複数のコピーは、ネットワーク化プロトコルの物理層105からパケット・プロセッサ102によって受け取られる。また、パケット・プロセッサ102は、ネットワーク化プロトコルの物理層105から2つの最も有望なパケットの復号化確実性ファクタ104を受け取る。データ・パケットの複数のコピーはリンク層101によって受け取られ、データ・パケットが復元されると、ネットワーク・プロトコル・エラー・フリーのより高い層に引き渡される。
図2は、本開示のいくつかの実施例によるトランシーバ・システム200の一例示的ブロック図を示したものである。トランシーバ・システム200は、少なくとも1つのパケット・プロセッサ(「CPU」又は「プロセッサ」)102、及び該少なくとも1つのパケット・プロセッサ102によって実行することができる命令を記憶するメモリ202を含むことができる。パケット・プロセッサ102は、ユーザ・リクエスト又はシステム生成リクエストを実行するためのプログラム・コンポーネントを実行するための少なくとも1つのデータ・プロセッサを備えることができる。ユーザは、個人、本開示に含まれているデバイスなどのデバイスを使用している個人、又はこのようなデバイス自体を含むことができる。メモリ202は、パケット・プロセッサ102に通信結合されている。一実施例では、メモリ202は、1つ又は複数のデータ209を記憶する。トランシーバ・システム200は、I/Oインタフェース201をさらに備えている。I/Oインタフェース201はパケット・プロセッサ102と結合されており、このI/Oインタフェース201を介して入力信号及び/又は出力信号が通信される。
一実施例では、メモリ202の中に1つ又は複数のデータ209を記憶することができる。1つ又は複数のデータ209は、トランシーバ・システム又は送信機システムから受け取られるデータ・パケット210の複数のコピーであってもよい。さらに、1つ又は複数のデータ209は、トランシーバ・システム200の物理層105から受け取られる確実性ファクタ211であってもよい。また、1つ又は複数のデータ209は他のデータ212を含むことも可能である。他のデータ212を使用して、トランシーバ・システム200の様々な機能を実施するためのモジュール203によって生成される一時データ及び一時ファイルを含むデータを記憶することができる。
一実施例では、メモリ202内の1つ又は複数のデータ209は、トランシーバ・システム200のモジュール203によって処理される。モジュール203は、メモリ202の中に記憶することができる。一実例では、パケット・プロセッサ102と通信結合された1つ又は複数のモジュール203は、メモリ202の外部に存在させることも可能である。本明細書において使用される場合、モジュールという用語は、特定用途向け集積回路(ASIC:application specific integrated circuit)、電子回路、1つ又は複数のソフトウェア又はファームウェア・プログラムを実行するプロセッサ(共有、専用又はグループ)及びメモリ202、組合せ論理回路、並びに/又は説明されている機能を提供する他の適切な構成要素を意味している。
一実施態様では、モジュールは、例えば候補パケット生成モジュール204、選択モジュール205、誤り分類モジュール206、パケット評価モジュール207及び他のモジュール208を含むことができる。上で言及したこのようなモジュールは、単一のモジュール或いは異なるモジュールの組合せとして表すことができることは理解されよう。
一実施例では、候補パケット生成モジュール204は、データ・パケット210の受け取った複数のコピーから候補パケットを生成する。候補パケットは、ビット単位多数決票決を使用して引き出される。候補パケットはメモリ202に記憶され、パケット・プロセッサ102のパケット評価モジュール207によってさらに利用される。候補パケットは、ビット単位多数決票決を使用して引き出された最後のパケットの予測を保持する。
一実施例では、ビット単位多数決票決の方法は、候補パケットの部分集合を計算する。一実施例では、ビット単位多数決票決は、データ・パケット210の奇数のコピーに対して実施される。これは、偶数のコピーの場合、データ・パケットの複数のコピーにおける特定のビット位置で0の数と1の数が等しいために決定を下すことができないことによるものである。さらに、確定的ビットには「回復済みビット」として印が付けられ、また、非確定的ビットには「未回復ビット」として印が付けられる。
一実例的実施例では、送信されたデータ・パケットがT=11000101のビット・シーケンスを有している場合を考察する。A、B、C及びDが、
A=11001010、
B=10010101、
C=10001101、及び
D=11000010、
のビット・ストリームを有するデータ・パケットの受け取った複数のコピーであると仮定する。
一実施例では、候補パケットは、データ・パケットの受け取った複数のコピーから引き出される。候補パケット生成モジュール204は、受け取ったパケットA、B、C及びDに対する候補パケットを生成する。受け取ったパケットに対して、候補パケットは、
候補パケット=1X00XXXX、
のビット・シーケンスを有することができる。1、0は確定的(conclusive)/回復済みビットを表しており、また、Xは非確定的/未回復ビットを表している。
上記候補パケットから決定されるのは3つのビット位置のみである。決定済みビット位置には「回復済みビット」として印が付けられる。未決定ビットには「未回復データ」として印が付けられる。
一実施例では、選択モジュール205は、データ・パケット210の複数のコピーから2つの最も有望なパケットを選択する。選択は、データ・パケット210の複数のコピーの間のハミング距離及びエネルギー・レベルに基づいている。さらに、選択モジュール205は、2つの最も有望なパケットの未回復ビット位置を「共通ビット」及び「異なるビット」のうちの1つとして識別する。
この実例的実施例では、選択モジュール205は、受け取ったデータ・パケットA、B、C及びDから2つの最も有望なパケットを選択する。一実例的実施態様では、定義済みハミング距離及びエネルギー・レベル関数/受信信号強度指示関数(RSSI関数:Received Signal Strength Indication関数)を有するデータ・パケット210を考察する。以下の表1は、受け取ったデータ・パケットA、B、C及びDに対するハミング距離及びエネルギー・レベル関数(RSSI関数)を示したものである。
選択モジュール205は、エネルギー関数と対応するハミング距離の比率が有望なパケット対の間で最大になるように2つの最も有望なパケットを選択する。表1から、最大比率は6(12/2)である。対応するパケット対は、最も有望なパケットとして考慮される。したがってパケットB及びパケットCは、候補パケットの未回復ビットを決定するための最も有望なパケットとして決定される。
一実施例では、選択モジュール205は、2つの最も有望なパケットの未回復ビット位置を「共通ビット」及び「異なるビット」のうちの1つとして識別する。上記実例的実施例から、最も有望なパケットのビットの各々の識別は、以下の図によって図解される。
上の図から、選択モジュール205は、未回復ビットの各々を共通ビット及び異なるビットのうちの1つに分類する。有望なパケットの各々における定義済みビット位置における同様のビットは、共通ビットとして識別される。有望なパケットの各々における定義済みビット位置における同様ではないビットは、異なるビットとして識別される。候補パケットから、未回復ビット位置は、1、2、3、4及び7である。したがってこれらのビット位置は、選択モジュール205による識別のために考慮される。
ビット位置1、2、3及び7では、パケットB及びCの各々は、同様のビット値を有している。したがってこれらのビット位置は、共通ビットとして識別される。ビット位置4では、パケットB及びCの各々のビット値は同様ではない。したがってこのビット位置は、異なるビットとして識別される。以下の図は、選択モジュール205によるビットの識別を示している。
一実施例では、誤り分類モジュール206は、選択モジュールから2つの最も有望なパケットを受け取り、また、トランシーバ・システム200の物理層105からパケットの対応する確実性ファクタ211を受け取る。誤り分類モジュール206は、少なくとも2つの有望なパケットの確実性ファクタ211に基づいて、2つの最も有望なパケットの共通ビットを回復済みビット及び異なるビットのうちの1つとして分類する。さらに、誤り分類モジュール206は、候補パケットの未回復ビットの各々を2つの最も有望なパケットの対応する回復済みビット及び異なるビットのうちの1つに置換する。
この実例的実施例では、誤り分類モジュール206は、候補パケットの共通ビットを決定するために2つの最も有望なパケットB及びCを受け取る。パケットB及びCのうちの共通ビットは、下に示されているようにビット位置1、2、3及び7に存在している。
また、誤り分類モジュール206は、対応する確実性ファクタ211を受け取る。パケットB及びCのビット位置1、2、3及び7に対する確実性ファクタを、下に示されているようにそれぞれハイ、ハイ、ハイ及びローとする。
これらのビット位置における共通ビットには、回復済みビット及び異なるビットのうちの1つの印が付けられる。最も有望なパケットの各々におけるハイ確実性を有するビット位置は、回復済みビットとして分類される。最も有望なパケットの各々における、ロー確実性及び同様ではない論理状態のうちの1つを有するビット位置は、異なるビットとして分類される。パケットB及びCでは、ビット位置1、2及び3は論理ハイ確実性を有している。したがってこれらのビット位置には回復済みビットとして印が付けられる。パケットB及びCのビット位置7には論理ローの印が付けられる。したがってこのビット位置には異なるビットとして印が付けられる。さらに、誤り分類モジュール206は、候補パケット内の回復済みビット及び異なるビットを対応するビット位置において置換する。置換後の候補パケットは、
候補パケット=1D00D101
になりうる。
本開示においては、パケットの各々のビット位置は、パケットの最も右側のビットから順番に大きくなる方法で指定される。本開示において参照されるビット位置は、すべて、同様の慣例に従う。
一実施例では、パケット評価モジュール207は、データ・パケットを復元するために、パケット周期冗長検査(CRC)を使用して候補パケットの未回復ビットを決定する。CRCは、CRCを満足するまで、候補パケット内の未回復ビット毎にすべての組合せに対して行われる。
この実例的実施例では、パケット評価モジュール207は、パケットCRCを使用して候補パケット内の未回復ビットの各々を決定する。ビット位置4の確実性を論理ハイとする。パケットCRCは、ローの印が付けられたビット位置を候補パケットからのハミング距離が短いものから長いほうへと順に連続的に反転させることにより、異なるビットの各々に対して実施される。さらに、パケットCRCは、ハイの印が付けられたビット位置を候補パケットからのハミング距離が短いものから長いほうへと順に連続的に反転させることにより、異なるビットの各々に対して実施される。データ・パケットに対するパケットCRCは、
試行1=10000101
試行2=11000101
になりうる。
誤り分類モジュール206は、候補パケットのエネルギー・レベルと送信されたパケットのエネルギー・レベルが一致するとパケットCRCを終了する。したがって上記の実例では、試行2パケットが計算されるとCRCが終了する。したがって試行2パケットは送信されたパケットと類似しており、したがってデータ・パケットが首尾よく復元される。
一実施例では、トランシーバ・システム200のパケット・プロセッサ102は、肯定応答メッセージを1つ又は複数のネットワーク化層に送信することができ、それによりデータ・パケット210の複数のコピーの再送信を防止することができる。
本開示の図3は、本開示の他の実施例による、受け取ったビット・シーケンスの距離に基づいて2つの最も有望なパケットの復号化確実性ファクタ211のためのグラフを示したものである。復号化確実性は、送信されたビット・シーケンスに対する受け取ったビット・シーケンスの類似性を示す尺度である。グラフは、送信されたデータ・パケットのビット・シーケンス全体にわたってマップされたデータ210の対応する複数のコピーのビットの各々を示している。データ・パケット210の受け取った複数のコピーは、雑音、妨害、等々のうちの少なくとも1つのため、送信されたデータ・パケットのビット・シーケンスと同じでなくてもよい。したがって2つの最も有望なパケット111の復号化確実性は、最大尤度手法を使用して実施される。この方法は、データ・パケット210の複数のコピーの受け取ったビットを送信されたデータ・パケットの最も近いビット・シーケンスにマップするステップを含む。
一実例的実施例では、最大尤度手法は、データ・パケット210の複数のコピーの受け取ったビット・シーケンスと、送信されたデータ・パケットのビット・シーケンスとの間の距離を考慮することができる。受け取ったビット・シーケンスと送信されたビット・シーケンスの間の距離は、ハミング距離、ユークリッド距離、エネルギー・ベクトル、等々のうちの1つであってもよい。閾値距離は、受け取ったビット・シーケンスと送信されたビット・シーケンスの間の距離が閾値距離より短い場合、そのビットにある定義済み論理レベルの印が付けられるように予め定義される。受け取ったビット・シーケンスと送信されたビット・シーケンスの間の距離が閾値距離より長い場合、そのビットにある定義済み論理レベルの印が付けられる。例えば以下の実施態様は、距離に基づく2つのビット・シーケンスの確実性を表している。
確実性=1、R<R
確実性=0、R>R
は、受け取ったビット・シーケンスと送信されたビット・シーケンスの間の距離であり、Rは定義済み閾値距離である。
図4は、本開示のいくつかの他の実施例による、ネットワーク化プロトコルによって受け取られるデータ・パケットを復元するための方法を示す一例示的フローチャートを示したものである。
図4に示されているように、方法400は、ネットワーク化プロトコルによって受け取られるデータ・パケット210の複数のコピーを復元するための1つ又は複数のブロックを含む。方法400は、一般に、コンピュータ実行可能命令の文脈で説明することができる。通常、コンピュータ実行可能命令は、特定の機能を実施し、又は特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、プロシージャ、モジュール及び機能を含むことができる。
方法400の説明順序には、本発明を制限するものとして解釈すべきことは意図されておらず、この方法は、任意の数の説明される方法ブロックを任意の順序で組み合わせて実施することが可能である。さらに、個々のブロックは、本明細書において説明される主題の趣旨及び範囲を逸脱することなく、この方法から削除することができる。さらに、この方法は、任意の適切なハードウェア、ソフトウェア、ファームウェア又はそれらの組合せで実施することができる。
ステップ401で、トランシーバ・システム200のパケット・プロセッサ102によってデータ・パケット210の複数のコピーを受け取る。トランシーバ・システム200は、送信機システム又はトランシーバ・システムの1つ又は複数の通信チャネルからデータ・パケット210の複数のコピーを受け取る。さらに、トランシーバ・システム200のパケット・プロセッサ102は、トランシーバ・システム200の物理層105からデータ・パケット210の複数のコピーを受け取る。データ・パケット210の受け取られた複数のコピーは、信号処理技法によって処理することができる。データ・パケット210の受け取られた複数のコピーの誤りビットは、無線チャネル特性に基づいて、複数のコピー全体にわたって非一様に分散させることができる。
ステップ402で、ビット単位多数決票決を使用して、データ・パケット210の複数のコピーから候補パケットを生成する。候補パケットはメモリ202に記憶され、パケット・プロセッサ102のパケット評価モジュール207によってさらに利用される。候補パケットは、ビット単位多数決票決を使用して引き出された最後のパケットの予測を保持する。方法は、候補パケットのすべてのビットを回復済みビット及び未回復ビットのうちの1つとして分類するステップをさらに含む。候補パケットを生成する方法は、本開示の図5に示されている。
一実施例では、図5は、本開示の他の実施例による、候補パケットを引き出すためのビット単位多数決票決のための一例示的フローチャートを示している。
ステップ501で、可変インデックスを定義済みの値に初期化し、且つ、長さをリンク層によってサポートされる最大パケット長に初期化する。候補パケット生成モジュール204は、可変インデックスを定義済みの値に初期化し、且つ、パケット長をデータ・パケット210の複数のコピーの最大長に初期化する。
ステップ502で、データ・パケット210の複数のコピー全体にわたる、インデックス位置における1とゼロの数を計算する。方法は、定義済みビット位置における、データ・パケット210の複数のコピーの定義済み2進値、例えば1及び0の数を計算するステップを含む。
ステップ503で、定義済みビット位置における、データ・パケット210の複数のコピーの1及び0の数を比較する。1の数が0の数より多い場合、方法は、「はい」を介してステップ506へ進行する。
ステップ506で、候補パケットのインデックス位置に論理ビット1を割り当てる。方法はステップ509へ進行する。
そうではなく、1の数が0の数より多くない場合、方法は、「いいえ」を介してステップ504へ進行する。ステップ504で1の数が0の数より少ない場合、方法は、「はい」を介してステップ507へ進行する。
ステップ507で、候補パケットのインデックス位置に論理ビット0を割り当てる。方法はステップ509へ進行する。
そうではなく、1の数が0の数より多くもなく、また、少なくもない場合、方法は、「いいえ」を介してステップ505へ進行する。ステップ505で1の数が0の数に等しい場合、方法は、「はい」を介してステップ508へ進行する。
ステップ508で、ビットが隠れた誤りを含んでいるため、候補パケットのインデックス位置に未回復ビットとして印を付ける。方法はステップ509へ進行する。
ステップ509で、インデックスとパケットの長さを比較する。インデックスの値と長さの値が一致しない場合、方法は、「いいえ」を介してステップ510へ進行する。
ステップ510でインデックスの値が増分される。この場合、方法は、インデックスの値と長さの値が一致するまでステップを502から繰り返すステップを含む。
そうではなく、インデックスの値とパケットの長さの値が一致すると、方法は、「はい」を介してステップ511へ進行する。ステップ511で、候補パケットがメモリ202に記憶される。候補パケットは、回復済みビット及び未回復ビットを含む。候補パケットはメモリ202に記憶され、未回復ビットを回復するためにさらに利用される。
もう一度図4を参照すると、ステップ403で、パケット・プロセッサ102の選択モジュール205によって、データ・パケットの複数のコピーの間のハミング距離及びエネルギー・レベルに基づいて、データ・パケットの複数のコピーから少なくとも2つの有望なパケットを選択する。2つの有望なパケットは、候補パケットの1つ又は複数の未回復ビットを回復するために選択される。受け取ったデータ・パケット210から2つの最も有望なパケットを選択するための方法は、本開示の図6に示されている。
一実施例では、図6は、本開示の他の実施例による、データ・パケットの複数のコピーから2つの最も有望なパケットを選択する方法を示している。
ステップ601で、選択モジュール205によって、データ・パケット210の複数のコピーの間のハミング距離を計算する。方法は、受け取ったビット・シーケンスと送信されたビット・シーケンスの間のハミング距離を計算するステップを含む。個々のビット・シーケンスには、受け取ったビット・シーケンスと送信されたビット・シーケンスの類似性に基づいて定義済みの値が割り当てられる。
ステップ602で、選択モジュール205によって、データ・パケット210の複数のコピーの間の対単位エネルギー関数を計算する。方法は、データ・パケット210の受け取った複数のコピーと送信されたデータ・パケットの各々のエネルギー・レベルを比較するステップを含む。
ステップ603で、選択モジュール205によって、データ・パケット210の複数のコピーの間でパケット組合せを分類する。方法は、組合せ毎に、データ・パケット210の複数のコピーの間の2つのデータ・パケット間のエネルギー・レベルと、2つのデータ・パケット間のハミング距離との比率を計算するステップを含む。さらに、方法は、最大比率を有するパケット組合せを2つの最も有望なパケットとして分類するステップを含む。
図4に戻ると、ステップ404で、パケット・プロセッサ102の選択モジュール205によって、少なくとも2つの有望なパケットの1つ又は複数の未回復ビットの状態を、共通ビット及び異なるビットのうちの1つとして識別する。方法は、所与のビット位置に対して、2つの最も有望なパケットのビットを比較するステップを含む。比較されたビットが等しい場合、それらのビットには共通ビットの印が付けられ、また、比較されたビットが等しくない場合、それらのビットには異なるビットの印が付けられる。
ステップ405で、パケット・プロセッサ102の誤り分類モジュール206によって、2つの最も有望なパケットの確実性ファクタ211を受け取る。確実性ファクタ211は、トランシーバ・システム200の物理層204からパケット・プロセッサ102によって受け取られる。確実性ファクタ211は、受け取ったビット・シーケンス及び送信されたビット・シーケンスのハミング距離に基づいて引き出される。
ステップ406で、パケット・プロセッサ102の誤り分類モジュール206によって、回復済みビット及び異なるビットのうちの1つになるように1つ又は複数の共通ビットを決定する。共通ビットの決定は、2つの最も有望なパケットの確実性ファクタ211に基づいている。方法は、最も有望なパケットの各々における所与のビット位置に対する確実性ファクタ211が定義済み論理レベルにある場合、共通ビットを回復済みビットとして分類するステップを含む。また、方法は、最も有望なパケットの各々における所与のビット位置に対する確実性ファクタ211が異なる定義済み論理レベルにある場合、共通ビットを異なるビットとして分類するステップを含む。最も有望なパケット内の共通ビットを決定するための方法は、本開示の図7に示されている。
本開示の一実施例では、図7は、本開示の他の実施例による、最も有望なパケット内の共通ビットを分類し、且つ、隔離する方法を示している。
ステップ701で、誤り分類モジュール206によって、トランシーバ・システム200の物理層204から対応する確実性ファクタ211を受け取る。確実性ファクタ211は、送信されたビット・シーケンスに対する受け取ったビット・シーケンスの類似性を示す尺度である。確実性ファクタ211は、2つの最も有望なパケットのビットの各々に対して決定される。
ステップ702で、誤り分類モジュール206によって、2つの最も有望なパケットの共通ビットの各々に対する確実性ファクタを調べる。方法は、定義済みビット位置に対する最も有望なパケットのビットの各々の確実性ファクタが論理ハイであるかどうかを検証するステップを含む。所与のビット位置における有望なパケットのビットの両方が論理ハイである場合、方法は、「はい」を介してステップ703へ進行する。
ステップ703で、ビットに誤りがないことを示す回復済みビットとして共通ビットを有する決定ベクトルを割り当てる。さらに、方法はステップ705へ進行する。
そうではなく、所与のビット位置における有望なパケットのビットの両方が論理ハイではない場合、方法は、「いいえ」を介してステップ704へ進行する。ステップ704で、共通ビットに、ビット位置が少なくとも1つの誤りを有していることを示す異なるビットの印が付けられる。さらに、方法はステップ707へ進行する。
ステップ705で、誤り分類モジュール206は、決定ベクトル内にまだビットが存在しているかどうか検査する。パケット内にまだビットが存在している場合、方法は、「はい」を介してステップ706へ進行する。
ステップ706でビット位置が増分され、また、決定ベクトルのすべてのビット位置に対してステップ702から705が実施される。
そうではなく、パケット上にもうビットが存在しない場合、方法は、「いいえ」を介してステップ707へ進行する。ステップ707で、誤り分類モジュール206は、確実性ファクタ211に論理ハイの印が付けられたビットの数が最も多いパケットを選択する。
図4に戻ると、ステップ407で、パケット・プロセッサ102の誤り分類モジュール206によって、候補パケットの未回復ビット位置の各々を、最も有望なパケットの対応する異なるビットに置換する。
ステップ408で、データ・パケット210を復元するために、パケット周期冗長検査(CRC)を使用して候補パケットの未回復ビットを決定する。方法は、CRCを満足するまで、候補パケット内の未回復ビット毎にすべての組合せに対してCRCを実施するステップを含む。データ・パケット210は、候補パケットがCRCを満足すると回復される。候補パケットに対してCRCを実施するための方法は、本開示の図8に示されている。
一実施例では、図8は、本開示の他の実施例による、パケットを評価して候補パケットを計算するための一例示的方法を示している。
ステップ801で、パケット評価モジュール207は、評価すべき候補パケットを受け取る。候補パケットは、回復済みビット及び異なるビットのうちの少なくとも1つを含む。方法は、候補パケットのビットの各々を対応するビットに対する確実性ファクタ211と相関させるステップをさらに含む。さらに、方法は、対応するビットに対する関連する復号化確実性ファクタ211の状態に基づいて、候補パケットのビット位置をロー・バケット及びハイ・バケットのうちの1つに分類するステップを含む。
ステップ802で、パケット評価モジュールは、候補パケットのビット位置を識別する。ビット位置にロー・バケットの印が付けられている場合、方法はステップ803へ進行する。
ステップ803で、パケット評価モジュールは、ロー・バケットの印が付けられた異なるビットを、候補パケットからのハミング距離が短いものから長いほうへと順番に連続的に反転させることによってビット組合せを識別する。さらに、方法はステップ804へ進行する。
もう一度ステップ802を参照すると、ビット位置にハイ・バケットの印が付けられている場合、方法はステップ806へ進行する。
ステップ804では、方法は、候補パケットが送信されたデータ・パケットであるかどうかを検証するステップを含む。検証が成功すると、方法はステップ813へ進行する。
そうではなく、検証が成功しない場合、方法はステップ805へ進行する。ステップ805で、方法は、他のビット組合せが存在しているかどうかを検査する。ロー・バケットの印が付けられた他のビット組合せが存在している場合、方法はステップ803へ戻る。そうではなく、他のビット組合せが存在していない場合、方法はステップ806へ進行する。
ステップ806で、パケット評価モジュールは、ハイ・バケットの印が付けられたビット位置を識別する。ビット位置にハイ・バケットの印が付けられている場合、方法はステップ807へ進行する。
そうではなく、ハイ・バケットの印が付けられたビット組合せが存在しない場合、方法はステップ810へジャンプする。
ステップ807で、パケット評価モジュールは、ハイ・バケットの印が付けられた異なるビットを、候補パケットからのハミング距離が短いものから長いほうへと順番に連続的に反転させることによってビット組合せを識別する。さらに、方法はステップ808へ進行する。
ステップ808では、方法は、候補パケットが送信されたデータ・パケットであるかどうかを検証するステップを含む。検証が成功すると、方法はステップ813へ進行する。
そうではなく、ステップ808で検証が成功しない場合、方法はステップ809へ進行する。ステップ809で、方法は、他のビット組合せが存在しているかどうかを検査する。ハイ・バケットの印が付けられた他のビット組合せが存在している場合、方法はステップ807へ戻る。そうではなく、他のビット組合せが存在していない場合、方法はステップ810へ進行する。
ステップ810で、異なるビットを連続的に反転させることによって残りのビット組合せを識別する。さらに、方法はステップ811へ進行する。
ステップ811では、方法は、候補パケットが送信されたデータ・パケットであるかどうかを検証するステップを含む。検証が成功すると、方法はステップ813へ進行する。
そうではなく、ステップ811で検証が成功しない場合、方法はステップ812へ進行する。ステップ812で、方法は、他のビット組合せが存在しているかどうかを検査する。ハイ・バケットの印が付けられた他のビット組合せが存在している場合、方法はステップ810へ戻る。そうではなく、他のビット組合せが存在していない場合、方法はステップ813へ進行する。
ステップ809で、データ・パケットの複数のコピーが回復される。したがって受け取ったデータ・パケットには誤りがない。
本開示の図9は、本開示と無矛盾の実施例を実施するためのコンピュータ・システム900の一例示的ブロック図を示したものである。コンピュータ・システム900は、I/Oインタフェース901、トランシーバ・システム902、プロセッサ903、ネットワーク・インタフェース904、通信ネットワーク909、記憶インタフェース905、RAM906、ROM907及びメモリ908を備えている。
コンピュータ・システム900の変形態様を使用して、本開示の特徴を実施するために利用することができるすべての計算システムを実施することができる。コンピュータ・システム900は、中央処理装置(「CPU(central processing unit)」又は「プロセッサ」)102を備えることができる。プロセッサ903は、ユーザ・リクエスト又はシステム生成リクエストを実行するためのプログラム・コンポーネントを実行するための少なくとも1つのパケット・プロセッサであってもよい。プロセッサ903は、統合システム(バス)コントローラ、メモリ管理制御ユニット、浮動小数点ユニット、グラフィック処理装置、デジタル信号処理装置、等々などの専用処理ユニットを含むことができる。プロセッサ903は、AMD Athlon、Duron又はOpteron、ARMのアプリケーション、組込み型プロセッサ又はセキュア・プロセッサ、IBM PowerPC、IntelのCore、Itanium、Xeon、Celeron又はプロセッサの他のラインナップ、等々のマイクロプロセッサを含むことができる。プロセッサ903は、メインフレーム、分散プロセッサ、マルチ−コア、並列、グリッド又は他のアーキテクチャを使用して実施することができる。いくつかの実施例は、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP:digital signal processor)、フィールド・プログラマブル・ゲート・アレイ(FPGA:field programmable gate array)、等々のような組込み型技術を利用することができる。
プロセッサ903は、I/Oインタフェース901を介して1つ又は複数の入力/出力(I/O:input/output)デバイスと通信するように配置することができる。I/Oインタフェース901は、それらに限定されないが、音声、アナログ、デジタル、モノラル、RCA、ステレオ、IEEE−1394、シリアル・バス、ユニバーサル・シリアル・バス(USB:universal serial bus)、赤外線、PS/2、BNC、同軸、コンポーネント、コンポジット、デジタル視覚インタフェース(DVI:digital visual interface)、高品位マルチメディア・インタフェース(HDMI(登録商標):high−definition multimedia interface)、RFアンテナ、S−Video、VGA、IEEE 802.n /b/g/n/x、Bluetooth(登録商標)、セルラー(例えば符号分割多元接続(CDMA:code−division multiple access)、高速パケット・アクセス(HSPA+:high−speed packet access)、移動通信のための広域システム(GSM(登録商標):global system for mobile communications)、ロング・ターム・エボリューション(LTE:long−term evolution)、WiMax、等々)、等々などの通信プロトコル/方式を使用することができる。
いくつかの実施例では、プロセッサ903は、ネットワーク・インタフェース904を介して通信ネットワーク909と通信するように配置することができる。ネットワーク・インタフェース904は、通信ネットワーク909と通信することができる。ネットワーク・インタフェース904は、それらに限定されないが、直接接続、イーサネット(登録商標)(例えばツイスト・ペア10/40/400 Base T)、伝送制御プロトコル/インターネット・プロトコル(TCP/IP:transmission control protocol/internet protocol)、トークン・リング、IEEE 802.11a/b/g/n/x、等々を始めとする接続プロトコルを使用することができる。通信ネットワーク909は、それらに限定されないが、直接相互接続、ローカル・エリア・ネットワーク(LAN:local area network)、広域ネットワーク(WAN:wide area network)、無線ネットワーク(例えばワイヤレス・アプリケーション・プロトコルを使用した)、インターネット、等々を含むことができる。ネットワーク・インタフェース904及び通信ネットワーク909を使用することにより、コンピュータ・システム900はデバイス910と通信することができる。これらのデバイス910は、それらに限定されないが、パーソナル・コンピュータ、サーバ、ファックス装置、プリンタ、スキャナ、及び、セルラー電話、スマートフォン(例えばApple iPhone(登録商標)、Blackberry、Androidベースの電話、等々)、タブレット・コンピュータ、eBookリーダ(Amazon Kindle、Nook、等々)、ラップトップ・コンピュータ、ノートブック、ゲーミング・コンソール(Microsoft Xbox、Nintendo DS、Sony PlayStation、等々)、等々の様々な移動デバイスを含むことができる。いくつかの実施例では、コンピュータ・システム900は、それ自体がこれらのデバイスのうちの1つ又は複数を具体化することができる。
いくつかの実施例では、プロセッサ903は、記憶インタフェース905を介して1つ又は複数のメモリ・デバイス(例えばRAM906、ROM907、等々)と通信するように配置することができる。記憶インタフェース905は、シリアル・アドバンスト・テクノロジー・アタッチメント(SATA:serial advanced technology attachment)、インテグレーテッド・ドライブ・エレクトロニクス(IDE:integrated drive electronics)、IEEE−1394、ユニバーサル・シリアル・バス(USB)、ファイバ・チャネル、スモール・コンピュータ・システム・インタフェース(SCSI:small computer system interface)、等々などの接続プロトコルを使用して、メモリ・ドライブ、取外し可能ディスク・ドライブ、等々を始めとするメモリ・デバイスに、それらに限定されないが、接続することができる。メモリ・ドライブは、ドラム、磁気ディスク・ドライブ、光磁気ドライブ、光ドライブ、独立ディスクの冗長アレイ(RAID:redundant array of independent discs)、固体メモリ・デバイス、固体ドライブ、等々をさらに含むことができる。
本明細書においては、本開示の実施例の利点が説明されている。
一実施例では、本開示は、ネットワーク化プロトコルによってデータ・パケットの複数のコピーを復元するための方法及びトランシーバ・システムを例証している。
一実施例では、本開示は、誤ったパケットの受信機からの明確な再送信要求を伴うことなく、信頼性の高いリンク層パケット復元を達成する方法及びシステムを提供する。
一実施例では、本開示は、誤りが隠れている場合に、誤ったパケット及び適切なパケットを区別する方法を提供する。
一実施例では、本開示は、通信システムに加えられる何らかの明確な自動反復要求(ARQ:Automatic Repeat Request)及び前方誤り訂正コード(FEC:forward error correction code)のサポートなしに動作することができる方法を提供する。
単数形若しくは複数形で表現されている「実施例」、又は特定の実施例であることが明確に表現されている「実施例」という用語は、他に明確に示されていない限り、「本発明の1つ又は複数(すべてではない)の実施例」を意味している。
「〜を含む(including)」、「〜を備える(comprising)」、「〜有する(having)」という用語及びそれらの変化は、他に明確に示されていない限り、「それらに限定されないが、〜を含む」を意味している。
項目を列挙したリストは、他に明確に示されていない限り、それらの項目のうちの任意又はすべての項目が互いに排他的であることを意味するものではない。「一つの(a、an)」及び「その(the)」という用語は、他に明確に示されていない限り、「1つ又は複数」を意味している。
互いに通信している複数の構成要素を有する一実施例の説明は、すべてのこのような構成要素が必要であることを意味するものではない。それどころか、本発明の広範囲にわたる可能な実施例を例証するために、様々な任意選択の構成要素が説明されている。
単一のデバイス又は物品が本明細書において説明されている場合、単一のデバイス/物品の代わりに複数のデバイス/物品(それらが協同する、しないにかかわらず)を使用することができることは容易に明らかであろう。同様に、複数のデバイス又は物品が本明細書において説明されている場合(それらが協同する、しないにかかわらず)、その複数のデバイス若しくは物品の代わりに単一のデバイス/物品を使用することができ、又は示されている数のデバイス若しくはプログラムの代わりに異なる数のデバイス/物品を使用することができることは容易に明らかであろう。デバイスの機能及び/又は特徴は、別法として、このような機能/特徴を有しているものとして明確に説明されていない1つ又は複数の他のデバイスによって具体化することも可能である。したがって本発明の他の実施例は、そのデバイス自体を含む必要はない。
図解されている図4、図5、図6、図7及び図8の工程は、特定の順序で生じる特定の事象を示している。代替実施例では、特定の工程は、異なる順序で実施することができ、又は修正、又は除去することができる。さらに、上で説明した論理にステップを追加し、依然として説明されている実施例と無矛盾にすることも可能である。さらに、本明細書において説明されている工程は連続的に生じさせることができ、又は特定の工程は同時に処理することも可能である。さらに、工程は、単一の処理ユニットによって、又は分散処理ユニットによって実施することも可能である。
最後に、本明細書において使用されている言語は、可読性及び教育目的のために主として選択されており、本発明の主題を詳細に記述し、又は制限するために選択されたものではない場合がある。したがって本発明の範囲は、この詳細な説明によってではなく、本明細書に基づいた出願において発行されるすべての特許請求の範囲によって制限されることが意図されている。したがって本発明の実施例の開示は、以下の特許請求の範囲に示されている本発明の範囲を制限するのではなく、例証を目的としたものであることが意図されている。
以上、本明細書において様々な態様及び実施例について開示したが、当業者には他の態様及び実施例が明らかであろう。本明細書において開示されている様々な態様及び実施例は、例証を目的としたものであり、以下の特許請求の範囲によって示されている真の範囲及び趣旨を制限することは意図されていない。
100 受信機アーキテクチャ
101 リンク層
102 パケット・プロセッサ
103 リンク層プロトコル・コントローラ
104 復号化確実性
105 物理層
106 ネットワーク層
107 トランスポート層
108 アプリケーション層
200 トランシーバ・システム
201 I/Oインタフェース
202 メモリ
203 モジュール
204 候補パケット生成モジュール
205 選択モジュール
206 誤り分類モジュール
207 パケット評価モジュール
208 他のモジュール
209 データ
210 データ・パケット
211 確実性ファクタ
212 他のデータ
900 コンピュータ・システム
901 I/Oインタフェース
902 トランシーバ・システム
903 プロセッサ
904 ネットワーク・インタフェース
905 記憶インタフェース
906 RAM
907 ROM
908 メモリ
909 通信ネットワーク
910 デバイス

Claims (7)

  1. ネットワーク化プロトコルによって受信したデータ・パケットを復元するための方法であって、
    トランシーバ・システムのパケット・プロセッサによってデータ・パケットの複数のコピーを受け取るステップと、
    前記パケット・プロセッサによって、ビット単位多数決票決を使用して前記データ・パケットの前記複数のコピーから候補パケットを生成するステップであって、前記候補パケットのすべてのビットが回復済みビット及び未回復ビットのうちの1つとして分類されるステップと、
    前記パケット・プロセッサによって、データ・パケットの前記複数のコピーの間のハミング距離及びエネルギー・レベルに基づいて、データ・パケットの前記複数のコピーから少なくとも2つの有望なパケットを選択するステップと、
    前記パケット・プロセッサによって、前記少なくとも2つの有望なパケットの1つ又は複数の未回復ビットの状態を共通ビット及び異なるビットのうちの1つとして識別するステップと、
    前記パケット・プロセッサによって、前記少なくとも2つの有望なパケットの確実性ファクタを受け取るステップと、
    前記パケット・プロセッサによって、前記回復済みビット及び異なるビットのうちの1つになるよう、前記少なくとも2つの有望なパケットの前記確実性ファクタに基づいて前記1つ又は複数の共通ビットを決定するステップと、
    前記パケット・プロセッサによって、前記候補パケットの前記未回復ビットの各々を前記有望なパケットの前記対応する回復済みビット及び異なるビットのうちの1つに置換するステップと、
    前記パケット・プロセッサによって、前記データ・パケットを復元するために、パケット周期冗長検査(CRC)を使用して前記候補パケットの前記未回復ビットを決定するステップと
    を含む方法。
  2. 前記ビット単位多数決票決が、データ・パケットの前記複数のコピーの各々にわたる0及び1の数を予測するステップを含む、請求項1に記載の方法。
  3. 前記確実性ファクタが、前記ハミング距離に基づいて、データ・パケットの前記複数のコピーのビット毎に2進値を含む、請求項1に記載の方法。
  4. ネットワーク化プロトコルによって受信したデータ・パケットを回復するためのトランシーバ・システムのパケット・プロセッサであって、
    データ・パケットの複数のコピーを受け取り、
    ビット単位多数決票決を使用して前記データ・パケットの前記複数のコピーから候補パケットを生成し、前記候補パケットのすべてのビットを回復済みビット及び未回復ビットのうちの1つとして分類し、
    データ・パケットの前記複数のコピーの間のハミング距離及びエネルギー・レベルに基づいて、データ・パケットの前記複数のコピーから少なくとも2つの有望なパケットを選択し、
    前記少なくとも2つの有望なパケットの1つ又は複数の未回復ビットの状態を共通ビット及び異なるビットのうちの1つとして識別し、
    前記少なくとも2つの有望なパケットの確実性ファクタを受け取り、
    前記回復済みビット及び異なるビットのうちの1つになるよう、前記少なくとも2つの有望なパケットの前記確実性ファクタに基づいて前記1つ又は複数の共通ビットを決定し、
    前記候補パケットの前記未回復ビットの各々を前記有望なパケットの前記対応する回復済みビット及び異なるビットのうちの1つに置換し、
    前記データ・パケットを復元するために、パケット周期冗長検査(CRC)を使用して前記候補パケットの前記未回復ビットを決定する
    ように構成されるパケット・プロセッサ。
  5. 前記パケット・プロセッサが前記トランシーバ・システムのリンク層内で構成される、請求項4に記載のパケット・プロセッサ。
  6. 前記パケット・プロセッサによって実施されるビット単位多数決票決が、データ・パケットの前記少なくとも4つのコピーの各々にわたる0及び1の数を予測するステップを含む、請求項4に記載のパケット・プロセッサ。
  7. 前記パケット・プロセッサが、データ・パケットの前記複数のコピーのビット・エネルギー・レベル、データ・パケットの前記複数のコピーの基準エネルギー・レベルとデータ・パケットの前記複数のコピーの間の受け取ったエネルギー・レベルとの間の距離のうちの少なくとも1つに基づいて、データ・パケットの前記複数のコピーのビット毎に2進値を含む前記確実性ファクタを受け取る、請求項4に記載のパケット・プロセッサ。
JP2016100971A 2015-06-12 2016-05-20 パケットを復元するための方法及びシステム Expired - Fee Related JP6188867B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN2964/CHE/2015 2015-06-12
IN2964CH2015 2015-06-12

Publications (2)

Publication Number Publication Date
JP2017005692A JP2017005692A (ja) 2017-01-05
JP6188867B2 true JP6188867B2 (ja) 2017-08-30

Family

ID=57516069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016100971A Expired - Fee Related JP6188867B2 (ja) 2015-06-12 2016-05-20 パケットを復元するための方法及びシステム

Country Status (2)

Country Link
US (1) US20160365948A1 (ja)
JP (1) JP6188867B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10708859B2 (en) * 2016-11-28 2020-07-07 Texas Instruments Incorporated Methods and apparatus for efficient wakeup of wireless device
US10367609B2 (en) 2017-09-20 2019-07-30 Qualcomm Incorporated Error correction for data packets transmitted using an asynchronous connection-less communication link
US10951544B2 (en) * 2019-01-30 2021-03-16 The Boeing Company Apparatus and method of crosschecking data copies using one or more voter elements
US11290209B2 (en) * 2020-07-17 2022-03-29 Audiowise Technology Inc. Wireless communication method and wireless communication device which uses the wireless communication method
CN114765574B (zh) * 2020-12-30 2023-12-05 中盈优创资讯科技有限公司 一种网络异常定界定位方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0865279A (ja) * 1994-08-24 1996-03-08 Nippon Telegr & Teleph Corp <Ntt> 重み付け多数決復号法によるarq通信方法及び装置
US5745502A (en) * 1996-09-27 1998-04-28 Ericsson, Inc. Error detection scheme for ARQ systems
US7349691B2 (en) * 2001-07-03 2008-03-25 Microsoft Corporation System and apparatus for performing broadcast and localcast communications
US20050210179A1 (en) * 2002-12-02 2005-09-22 Walmsley Simon R Integrated circuit having random clock or random delay
GB2504522B (en) * 2012-08-01 2014-12-17 Canon Kk Data processing method and apparatus for processing a plurality of received data copies

Also Published As

Publication number Publication date
JP2017005692A (ja) 2017-01-05
US20160365948A1 (en) 2016-12-15

Similar Documents

Publication Publication Date Title
JP6188867B2 (ja) パケットを復元するための方法及びシステム
US9369255B2 (en) Method and apparatus for reducing feedback and enhancing message dissemination efficiency in a multicast network
US20170230141A1 (en) Packet decoding method and apparatus
US10372527B2 (en) Method of encoding data
JP4771996B2 (ja) 符号誤り検出装置、無線システム、及び誤り検出方法
CN102281123B (zh) 用于检测下行链路控制信息有效性的方法以及用于执行该方法的解码器和基带接收机
US20110225479A1 (en) Fast and reliable wireless communication
WO2022147851A1 (en) A method and device for detecting partial discontinuous transmission (dtx) using soft bits correlation
CN109525367B (zh) 基于LoRa编码和解码机制的检错和自适应纠错方法
US11489623B2 (en) Error correction in network packets
US20150263766A1 (en) Method and apparatus for controlling interleaving depth
JP2005328544A (ja) 自動再送要求を伴うパケット化情報の受信方法
US9686221B2 (en) Error correction for interactive message exchanges using summaries
US10903855B2 (en) Convolutional LDPC decoding method and apparatus, decoder, and system
CN106664599B (zh) 用于由ue传输/接收数据的方法及用于所述方法的ue
CN114710973B (zh) 一种利用软比特相关检测部分非连续传输的方法和装置
WO2015137854A1 (en) Method and devices for providing feedback in a communication system
JP2007104423A (ja) 連送方式による誤り訂正方法、通信システム及び受信装置
US20190392158A1 (en) Message emission method, receiving method, emitting device, receiving device and associated communication system
Wang et al. A comparative study of packet combining based error recovery schemes for wireless networks
Singh et al. Data Link Layer Designing Issues: Error Control-A Roadmap
US7812744B2 (en) Method for error handling
EP3125454A1 (en) Data processing method and device for correcting errors in defective copies of a data packet
CN108322293A (zh) 用于harq的对数似然比确定方法、harq反馈方法及装置
CN108462555B (zh) 发送和接收数据的方法、发送设备和接收设备

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170626

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170706

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170801

R150 Certificate of patent or registration of utility model

Ref document number: 6188867

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees