JP5895238B2 - 通信装置、通信方法、及び通信プログラム - Google Patents

通信装置、通信方法、及び通信プログラム Download PDF

Info

Publication number
JP5895238B2
JP5895238B2 JP2011263958A JP2011263958A JP5895238B2 JP 5895238 B2 JP5895238 B2 JP 5895238B2 JP 2011263958 A JP2011263958 A JP 2011263958A JP 2011263958 A JP2011263958 A JP 2011263958A JP 5895238 B2 JP5895238 B2 JP 5895238B2
Authority
JP
Japan
Prior art keywords
packet
error
fec
error correction
symbols
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.)
Active
Application number
JP2011263958A
Other languages
English (en)
Other versions
JP2013118445A (ja
JP2013118445A5 (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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co 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 Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2011263958A priority Critical patent/JP5895238B2/ja
Priority to PCT/JP2012/007412 priority patent/WO2013080481A1/ja
Publication of JP2013118445A publication Critical patent/JP2013118445A/ja
Priority to US14/292,410 priority patent/US9319074B2/en
Publication of JP2013118445A5 publication Critical patent/JP2013118445A5/ja
Application granted granted Critical
Publication of JP5895238B2 publication Critical patent/JP5895238B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/451Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
    • H03M13/453Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD] wherein the candidate code words are obtained by an algebraic decoder, e.g. Chase decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
    • H03M13/3715Adaptation to the number of estimated errors or to the channel state
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/373Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/451Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)

Description

本発明は、通信装置、通信方法、及びプログラムに関する。
従来の電子機器では、外部の通信装置との間で行われるデジタル通信処理、デジタル通信により得られたデータや記憶装置に記憶されたデータに施される信号処理において、データの信頼性を確保するために、誤り検出や誤り訂正が一般的に行われる。誤り検出では、データに誤りが発生しているか否かを識別することができる。また、誤り訂正では、データに誤りが発生しているか否かを識別し、さらに誤りのあるデータを訂正することができる。
誤り検出又は誤り訂正では、k単位長(kビット等)の符号を、n=m+k単位長の符号語に変換するブロック符号と呼ばれる種類のものがある。これを(n、k)符号などと記載する。符号語は、最小ハミング距離がd>1、つまり互いに少なくともd単位異なっている。この冗長性を利用して、誤り検出や誤り訂正が成される。
誤り検出では、符号語あたりd−1単位の誤りを検出することができ、誤り訂正では、符号語あたり[(d−1)/2]単位の誤りを訂正することができる([]は床関数)。
誤り訂正に用いられる符号の1つとして、前方誤り訂正符号(以下、「FEC(Forward Error Correction)符号」ともいう)があり、その1つとして、リード・ソロモン符号(以下、「RS符号」という)が知られている。RS符号は、生成と復号が複雑であるので、処理にある程度の時間を要する反面、誤り訂正能力が高く、地上デジタル放送、衛星通信、ADSL、CD、DVD、QRコード等の誤り訂正に応用されている。また、RS符号では、符号語をシンボルの集まりで表し、各シンボル単位で誤り検出と誤り訂正とを行う。そして、RS符号は、1つのシンボル内のビットにどれだけ誤りを含んでいても、全体として1シンボルの誤りと認識されるので、連続して起こるビット誤りであるバースト誤りに強いという特性がある。RS符号の符号語は、例えばRS(n、k)符号又は単にRS(n、k)と表される。
また、RS符号の誤り訂正において、誤り位置があらかじめ特定されている場合の誤り訂正を消失訂正というが、消失訂正では符号語あたりn−kシンボル以下の誤りまでは正しく誤り訂正できる。
FEC符号を用いた技術の例として、FEC符号を用いることで、映像データの映像品質を推定することができる映像品質推定装置が知られている(例えば、特許文献1参照)。
また、情報パケット数k、検査パケット数m、送信パケット数n=k+mの場合には、n個中任意のn−k=m(個)のパケット損失まで回復可能(誤り訂正可能)である。
特開2010−187097号公報
しかしながら、従来のFEC符号を用いた誤り訂正では、nパケット中、正常に受信された正常受信パケットのパケット数がkパケット以上でないと、k個の情報パケットを復元できなかった。
本発明は、上記事情に鑑みてなされたものであって、誤り訂正能力を向上させることが可能な通信装置、通信方法、及び通信プログラムを提供することを目的とする。
本発明の通信装置は、他の通信装置との間で通信を行う通信装置であって、FEC符号を構成する情報シンボルを含む情報パケットおよび検査シンボルを含む検査パケットを含む受信パケットを受信し、各々のパケットを複数のシンボルに分割する受信部と、前記受信パケットの各パケットが正常受信パケットであるか非正常受信パケットであるかを検出する第1誤り検出部と、前記FEC符号毎に、前記正常受信パケットに含まれる正常シンボルと前記非正常受信パケットに含まれる不確定シンボルとで構成されるFEC復号候補を、前記不確定シンボルが異なるように複数生成し、第1の誤り訂正を行う第1誤り訂正部と、前記第1誤り訂正部による複数の前記FEC復号候補に対する複数の前記第1の誤り訂正の結果のうち、一致した前記第1の誤り訂正の結果に基づいて、前記FEC符号を修正する第2誤り訂正部と、を備える。
この通信装置によれば、複数のFEC復号候補に対する複数の誤り訂正(第1の誤り訂正)の結果の一致度に基づいて、誤り訂正(第2の誤り訂正)が困難であったFEC符号についても復元をすることができる。このとき、比較的下層(DLC層など)で通常破棄されるパケットを利用して、誤り訂正を行うことができる。したがって、誤り訂正能力を向上させることが可能である。
本発明の通信装置は、前記第1誤り訂正部が、前記第1誤り検出部により誤りが検出されなかった正常受信パケットの数が前記情報パケットの数未満であり、前記受信パケットの数が前記情報パケットの数以上である場合、前記FEC符号毎に、前記正常受信パケットに含まれるシンボルである正常シンボルの全てと、前記第1誤り検出部により誤りが検出された非正常受信パケットに含まれるシンボルである不確定シンボルの一部と、により構成される前記FEC復号候補を、前記不確定シンボルが異なるように複数生成する。
この通信装置によれば、複数のFEC復号候補に対する複数の誤り訂正(第1の誤り訂正)の結果の一致度に基づいて、誤り訂正(第2の誤り訂正)が困難であったFEC符号についても復元をすることができる。したがって、誤り訂正能力を向上させることが可能である。
また、本発明の通信装置は、前記FEC復号候補のシンボルの数が、前記情報シンボルの数と同数である。
この通信装置によれば、誤り訂正を行うための必要最低限の数のFEC復号候補のシンボルを用いて、誤り訂正を行うことができる。
本発明の通信装置は、前記第2誤り訂正部が、前記FEC符号毎に、前記非正常受信パケットに含まれる前記不確定シンボルの値と、前記一致した前記第1の誤り訂正の結果により得られた前記非正常受信パケットに含まれるエラーシンボルの値と、に基づいて、前記他の通信装置により送信された送信パケットに含まれる送信シンボルを算出する。
この通信装置によれば、一般的な誤り訂正の演算式を用いながら、誤り訂正が困難であったFEC符号についても復元することができる。
また、本発明の通信装置は、前記第2の誤り訂正部により修正されたパケットである修正パケットに対して、第2の誤り検出を行う第2誤り検出部を備え、前記第2誤り訂正部が、前記第2誤り検出部により誤りが検出されなかった場合、前記修正パケットを前記非正常受信パケットから前記正常受信パケットに変更する。
この通信装置によれば、第2の誤り訂正により確実にFEC符号が修正されたことを検証することができる。また、同一パケット内の後続のFEC符号についてはエラーシンボルが含まれていないことを確認することができる。
また、本発明の通信装置は、前記第1誤り訂正部が、前記FEC符号修正部により前記FEC符号が修正された結果、前記正常受信パケットの数が前記情報パケットの数以上となった場合、後続のFEC符号の前記FEC復号候補に対する前記第1の誤り訂正を中止し、前記後続のFEC符号に対する前記第1の誤り訂正を行う。
この通信装置によれば、第1の誤り訂正の結果、正常受信パケット数が増加して情報パケット数以上となった場合、一般的な誤り訂正(第2の誤り訂正)を行うことができるようになるので、誤り訂正の処理を容易化して演算量を少なくすることができる。
また、本発明の通信方法は、複数のパケットを受信し、各々のパケットを複数のシンボルに分割するステップと、前記分割されたシンボルに含まれる正常シンボルと不確定シンボルとで構成されるFEC復号候補を用いて、第1の誤り訂正を行うステップと、複数の前記第1の誤り訂正の結果のうち、一致した結果を用いて、第2の誤り訂正を行うステップと、を有する。
この通信方法によれば、複数のFEC復号候補に対する複数の誤り訂正の結果の一致度に基づいて、誤り訂正が困難であったFEC符号についても復元をすることができる。このとき、比較的下層(DLC層など)で通常破棄されるパケットを利用して、誤り訂正を行うことができる。したがって、誤り訂正能力を向上させることが可能である。
また、本発明の通信プログラムは、上記通信方法の各ステップをコンピュータに実行させるためのプログラムである。
この通信プログラムによれば、複数のFEC候補に対する複数の誤り訂正の結果の一致度に基づいて、誤り訂正が困難であったFEC符号についても復元をすることができる。したがって、誤り訂正能力を向上させることが可能である。
本発明によれば、誤り訂正能力を向上させることが可能である。
本発明の第1の実施形態における通信システムの構成例を示す図 本発明の第1の実施形態におけるRS符号の構成例を示す図 本発明の第1の実施形態におけるFEC符号化を説明するための図 本発明の第1の実施形態におけるFEC復号化を説明するための図 本発明の第1の実施形態における受信処理部およびFEC復号化部の動作例を示すフローチャート 本発明の第1の実施形態における受信処理部およびFEC復号化部の動作例を示すフローチャート(図5の続き) 本発明の第2の実施形態における通信システムの構成例を示す図 本発明の第2の実施形態におけるFEC符号化を説明するための図 本発明の第2の実施形態におけるFEC復号化を説明するための図 本発明の第2の実施形態における受信処理部およびFEC復号化部の動作例を示すフローチャート 本発明の第2の実施形態における受信処理部およびFEC復号化部の動作例を示すフローチャート(図10の続き)
以下、本発明の実施形態について、図面を用いて説明する。
本実施形態の通信装置としては、有線LAN、同軸ケーブル、電力線等の有線を介して通信を行う通信装置、セルラー通信、無線LANやBluetooth(登録商標)等の無線を介して通信を行う通信装置、などが考えられる。
また、本実施形態の通信装置は、パケット伝送を行う通信装置であり、テレビ会議システム、監視カメラ映像伝送システム、映像データのダウンロード/アップロードを行うシステム、遠隔授業システム、等における通信装置がある。また、無線通信路のような、パケットエラー率が比較的高い通信路を用いて通信を行う通信装置に、非常に適している。
(誤り訂正、消失訂正の具体的な演算)
本実施形態の通信装置は、誤り訂正、特に消失訂正を行う。各実施形態について説明する前に、まずは誤り訂正、消失訂正の具体的な演算の方法について説明する。
ここでは、通信装置の1つである送信装置から通信装置の1つである受信装置へデータを送信することを想定し、RS(15,7)つまりk=7、m=8、n=15の場合を例示する。また、1シンボルを8ビットとする。RS(15,7)のデータには、実際に送るべき情報データD〜Dと、検査を行うためのパリティデータP〜Pと、が含まれる。
まず、送信装置及び受信装置は、以下の8次の生成多項式G(x)を用意し、保持しておく。
送信装置は、情報データD〜Dに基づいて、以下の式が成り立つようにパリティデータP〜Pを決定する。
次に、D=W14、D=W13、・・・、D=W、P=W、P=W、・・・、P=W、とする。W〜W14は送信シンボルである。(数式2)の式から、W(x)を以下のように定義すると、W(x)は、G(x)で割り切れる。
したがって、W(x)=G(x)・A(x)+B(x)と表すと、B(x)=0となる。(数式3)の式の両辺に、x=α、x=α、x=α、・・・、x=αを代入すると、以下の式を導くことができる。
このように、送信装置が送信する送信シンボル(W〜W14)には、満足すべき方程式が存在する(送信装置の制約条件)。
一方、受信装置は、受信シンボル(R〜R14)を送信装置から受信する。送信シンボルと受信シンボルとの間には、以下のような関係がある。
つまり、
は、通信路上の各送信シンボルに重畳されたエラーシンボルを示している。
ここで、
と定義すると、(数式6)は、以下のように表せる。
W(x)+E(x)=R(x)
(数式7)の式の両辺、x=α、x=α、x=α、・・・、x=αを代入すると、シンドロームSiを用いて、以下の式を導くことができる。
すなわち、受信装置は、通信路上で送信シンボルに重畳されたエラーシンボル(E(x))に基づいて、8個のシンドロームを一意に決定することができる。
また、(数式7)及び(数式8)より、E(x)に、x=α、x=α、x=α、・・・、x=αを代入すると、以下の結果となる。
各エラーシンボルEのうち、E≠0(非零)であるEの個数をPとし、i=L(0)、L(1)、・・・L(P−1)とすると、(数式9)より、以下の式が成り立つ。なお、アスタリスク「*」は乗算を示す。
RS(15,7)の場合には、P=0〜8の場合、つまり最大エラーシンボル数が8個の場合まで消失訂正を行うことが可能である。一方、P≧9の場合、つまりエラーシンボル数が9個以上の場合には、消失訂正を行うことはできない。
例えば、エラー(誤り)がi=5、8、13の位置で発生しているとすると、以下の式が成り立つ。
受信装置は、受信シンボルによりシンドロームS、S、Sの値を認識することができ、αの値についても生成多項式G(x)の定義式から認識することができる。したがって、エラーが発生している位置である消失シンボル位置(iの値)を認識することができれば、各エラーシンボルE、E、E13の値を算出することができ、消失訂正を行うことができる。
(第1の実施形態)
図1は、本発明の第1の実施形態における通信システムの構成例を示す図である。図1に示す通信システムでは、通信装置100と通信装置200とが通信路300を介して接続されている。
通信路300は、電力線や有線LANなどの有線回線、セルラー通信、無線LANなどの無線回線などの通信回線を広く含む。また、基地局、コアネットワーク、インターネットなどを含むものも考えられる。また、通信路300は、通信装置100から通信装置200に向かう方向(第1方向)にデータが伝送される第1通信路310と、通信装置200から通信装置100に向かう方向(第2方向)にデータが伝送される第2通信路320と、を含む。
通信装置100は、映像符号化部101、パケット生成部102、FEC符号化部103、送信処理部104、受信処理部105、FEC復号化部106、映像復号化部107、を有して構成される。
映像符号化部101は、外部装置から受信した映像信号や図示しないメモリから出力した映像信号を符号化し、映像符号を生成する。映像符号は情報シンボルの一例である。ここでは、映像信号の符号化方式として既知の方式を用いる。なお、映像信号の符号化を可変レートで行う場合には、一定時間に生成される情報パケットの数は可変となる。
パケット生成部102は、映像符号としての情報シンボルを含むパケット(情報パケット)を生成する(後述の図3参照)。
FEC符号化部103は、パケット生成部102からの情報パケットを構成する情報シンボルをFECにより符号化(FEC符号化)し、固定長のFEC符号を生成する。FEC符号化を行う際には、先に説明した(数式1)〜(数式4)を考慮する。FEC符号は、情報シンボルと検査シンボルとからなり、RS符号などがある。FEC符号化の詳細については後述する。以降、FEC符号化部103により符号化されたパケットを生成パケットとも呼ぶ(後述の図3参照)。生成パケットの先頭には、生成パケットを識別するための識別情報、その他生成パケットに関する情報が記述されたヘッダが含まれている。
なお、FEC符号化部103で生成される生成パケットは、OSI参照モデルの第7層(アプリケーション層、以下、単に「アプリ層」ともいう)におけるパケットである(後述の図3参照)。
送信処理部104は、FEC符号化部103からの生成パケットに含まれる各シンボル(情報シンボル、検査シンボル等)に基づいて、CRC(Cyclic Redundancy Check:巡回冗長検査)を付与する。CRCは、誤り検出符号の1つである。以降、生成パケットとCRCとを含むパケットを送信パケットとも呼ぶ(後述の図3参照)。送信パケットの先頭には、送信パケットを識別するための識別情報、その他送信パケットに関する情報が記述されたヘッダが含まれている。送信処理部104は、生成された送信パケットを第1通信路310へ送信する。
なお、送信処理部104により生成される送信パケットは、OSI参照モデルの第2層(データリンク制御層、以下、「DLC(Data Link Control)層」、「レイヤ2」ともいう)におけるパケットである(後述の図3参照)。なお、無線プロトコルの場合には、DLCをRLC(Radio Link Control)ともいう。したがって、送信処理部104により付与されたCRCは、DLC層における誤り検出を行うためのCRC(DLC層のCRC)である。DLC層のCRCは、通信によりパケット内のシンボルにエラーが発生したか否かを判断するためのデータである。
受信処理部105は、第2通信路320からのパケットを受信する。以降、受信処理部105により受信されたパケットを受信パケットとも呼ぶ(後述の図3参照)。受信パケットには、情報パケットおよび検査パケットにより構成されるFEC符号が含まれる。受信パケットは、通信装置200からのパケットを受信する場合には、通信路300において回線エラーが重畳しないような理想的な場合には通信装置200の送信パケットと同じである。受信パケットは、DLC層におけるパケットである(後述の図3参照)。このように、受信処理部105は、受信パケットを受信する受信部としての機能を有する。この受信パケットは、受信処理部105により複数のシンボルに分割される。
また、受信処理部105は、受信パケットに対して、DLC層のCRCを用いた誤り検出(第1の誤り検出)を行う。誤り検出の結果、受信処理部105は、受信パケットが正常(OK)であった場合には、その受信パケットを正常受信パケット(P)として、正常受信パケットの数(a)をカウントする。一方、受信パケットが非正常(NG)であった場合には、その受信パケットを非正常受信パケット(P)として、非正常受信パケットの数(b)をカウントする。このように、受信処理部105は、受信パケットに対して第1の誤り検出を行う第1誤り検出部としての機能を有する。
また、受信処理部105は、通信装置100から送信されたが通信装置200により受信されなかった損失パケット(P)を認識し、損失パケットの数(c)をカウントする。損失パケットについては、例えば受信パケットのヘッダに含まれる送信パケットの識別情報(例えば送信パケット番号)から認識できる。
受信処理部105は、受信パケット(正常受信パケット(P)および非正常受信パケット(P))、正常受信パケット数(a)、非正常受信パケット数(b)、損失パケット数(c)の情報を、FEC復号化部106へ出力する。
なお、正常受信パケット(P)に含まれる各シンボルは、正常シンボルである。非正常受信パケット(P)に含まれる各シンボルは、不確定シンボルである。損失パケット(P)に含まれる各シンボルは、損失シンボルである。さらに、エラーシンボルには、損失シンボルと、不確定シンボルの一部である送信時のデータと異なるシンボルと、が含まれる。
FEC復号化部106は、受信処理部105からの受信パケットをFECにより復号化(FEC復号化)する。FEC復号化を行う際には、先に説明した(数式5)〜(数式11)を考慮する。以降、FEC復号化部106によりFEC復号化されたパケットを復号化パケットとも呼ぶ(後述の図3参照)。復号化パケットは、アプリ層のパケットである(後述の図3参照)。
FEC復号化の詳細については後述するが、FEC復号化部106は、FEC符号毎に、正常シンボルの全てと不確定シンボルの一部とで構成されるFEC復号候補を、不確定シンボルが異なるように複数生成するFEC復号候補生成部としての機能を有する。
なお、ここで、FEC符号候補とは、FEC復号処理を行う場合に消失していないシンボルと見なすシンボルの組合せのことであり、具体的には上述したように正常シンボルと不確定シンボルとの組み合わせのことである。
また、FEC復号化部106は、FEC復号候補に対して誤り訂正(第1の誤り訂正)を行う第1誤り訂正部としての機能を有する。
また、FEC復号化部106は、複数のFEC復号候補に対する複数の誤り訂正(第1の誤り訂正)の結果のうち、一致した誤り訂正(第1の誤り訂正)の結果に基づいてFEC符号を修正(第2の誤り訂正)する第2誤り訂正部としての機能を有する。
映像復号化部107は、FEC復号化部106からの情報パケットに含まれる情報シンボルとしての映像符号を復号化し、映像信号を得る。ここでは、映像信号の復号化方式として既知の方式を用いる。なお、ユーザデータとして映像データを想定しているが、音声データなどの他のデータであってもよい。
通信装置200は、映像符号化部201、パケット生成部202、FEC符号化部203、送信処理部204、受信処理部205、FEC復号化部206、映像復号化部207、を有して構成される。
通信装置200は、通信装置100における同名の構成部と同様の機能を有するので、ここでは説明を省略する。ただし、送信および受信における通信路300(第1通信路310および第2通信路320)の向きは逆となる。
以下の説明では、通信装置100の動作と通信装置200の動作とは同じであるので、送信に関する動作については通信装置100の動作を例として、受信に関する動作については通信装置200の動作を例として、説明する。また、FEC符号としてRS符号を用いることを主に想定する。
また、本実施形態では、情報シンボル数が4個、検査シンボル数が3個のRS(7,4)符号の1種類のみを用いることを想定する。つまり、k=4、m=3、n=7であり、図2に示すようなRS符号を用いることを想定する。なお、通信装置100および200は、通信相手である通信装置200および100の送信パケットに含まれる情報シンボルの数(k)、送信パケットのシンボルの数(n)の情報を各々あらかじめ保持している。なお、検査シンボルの数は、n−kとなる。
次に、FEC符号化について詳細に説明する。
図3は、FEC符号化を説明するための図である。
映像符号化部101は、映像信号を符号化し、パケット生成部102は、符号化された映像信号を情報パケットに変換する。ここでは、図3の1pktは1パケット分の情報パケットを示しており、例えば情報シンボル1000シンボル(8000ビット)分に相当する。ここでは4パケット分の情報パケットで区切られている。また、8ビットが1シンボル分に相当するものとする。なお、本実施形態では、1パケットのデータサイズが大きいため、1000シンボルに分割しているが、本実施形態における誤り訂正は、1パケットが2シンボル以上に分割されていれば適用することができる。
続いて、FEC符号化部103は、RS(7,4)となるように、情報パケット4パケットにつき、検査パケットを3パケット分付加することで、FEC符号化する。ここでは、7パケット分のパケット(情報パケット4パケット分と検査パケット3パケット分)で区切られており、7パケットは1000個のRS(7,4)符号に相当する。
また、FEC符号化部103は、図3に示すように、生成パケットにおいて、各情報パケットおよび各検査パケットの先頭に、ヘッダを付与する。
続いて、送信処理部104は、生成パケットから決定されるCRCを付与し、送信パケットを生成する。また、図3に示すように、送信パケットにおいて、各情報パケットおよび各検査パケットの先頭に、ヘッダを付与する。送信処理部104は、この送信パケットを第1通信路310を介して通信装置200へ送信する。
次に、FEC復号化について詳細に説明する。
本実施形態では、誤り訂正として主に消失訂正を行う。以下、主に消失訂正について説明する。
図4は、FEC復号化を説明するための図である。
なお、送信されたパケットは、第1通信路310の伝送途中で、当該データが変更されたり欠損したりして、エラー(ビットエラー)が発生することがある。この場合、エラーが発生した非正常受信パケットには何れかのシンボルに誤りがあるが、通常判別することができないため、図4では、便宜上「×」のシンボルを間違っているシンボルとしている。
受信処理部205は、受信パケットを受信する。受信パケットには、FEC符号を構成する情報シンボルを含む情報パケットや検査シンボルを含む検査パケットが含まれるが、第1通信路310の通信環境によっては、一部のシンボルにエラーが発生したり、パケットが欠損したりする。
図4の例では、通信装置100により送信された情報シンボルDを含む第1情報パケットの一部および情報シンボルDを含む第3情報パケットの一部にエラーが発生し、情報シンボルDを含む第2情報パケットが全て欠損(パケット損失)している。同様に、通信装置100により送信された検査シンボルPを含む第1検査パケットの一部にエラーが発生している。図4では、左側から順に、第1情報パケットから第4情報パケット、第1検査パケットから第3検査パケットが配列された状態を想定している。
また、受信処理部205は、受信された第1情報パケット、第3情報パケット、第4情報パケット、および第1検査パケット〜第3検査パケットに対して、DLC層のCRCを用いて誤り検出を行う。誤り検出では、エラーのない第4情報パケット、第2検査パケット、および第3検査パケットは正常に受信された(OK)と判定され、エラーが存在する第1情報パケット、第3情報パケット、および第1検査パケットは非正常に受信された(NG)と判定される。一方、受信されなかった第2情報パケットについては、この誤り検出を行うことができない。
受信処理部205は、受信パケットのヘッダを参照して、受信パケットに含まれる生成パケットに対応するパケット(情報シンボルまたは検査シンボル、および生成パケットのヘッダで構成されるパケット)を、FEC復号化部206へ出力する。
続いて、FEC復号化部206は、受信処理部205からパケットを受け取り、消失訂正を行う。なお、FEC復号化部206は、受信処理部205からの受信パケットの情報に基づいて、どのパケット位置のパケットが、正常受信パケット、非正常受信パケット、または損失パケットであるかを判別することができるので、消失訂正を行うことが可能である。
また、図4では、正常受信パケット数a=3、非正常受信パケット数b=3、損失パケット数c=1であるので、受け取ったパケットに対して単純に消失訂正を行っただけでは、RS符号を復元することはできない。詳細については後述するが、FEC復号化部206は、正常受信パケットと非正常受信パケットの一部とを組み合わせてFEC復号候補を生成し、このFEC復号候補に対する消失訂正の結果に基づいて、FEC符号を復元する。所定の条件を満たす場合には、上記消失訂正によって、図4に示す復号化パケットのように、元のデータを正確に復元することができる。
なお、図4の例とは異なり、例えばFEC符号に含まれる情報パケット数k=4であり、正常受信パケット数a=4である場合には、上記のようなFEC復号候補に対する消失訂正を考慮する必要はなく、一般的な消失訂正により、元データを復元することができる。
次に、受信処理部205およびFEC復号化部206の動作について説明する。
図5および図6は、受信処理部205およびFEC復号化部206の動作例を示すフローチャートである。この動作を行う通信プログラムは、通信装置200内のROMに格納され、通信装置200内のCPUによって実行される。
まず、受信処理部205が、第1通信路310を介して伝送されたパケット(受信パケット)を受信する(図5のステップS101)。
受信処理部205は、DLC層のCRCを用いて受信パケットの誤り検出を行う。そして、誤り検出の結果に応じて、正常受信パケット(P)、非正常受信パケット(P)、損失パケット(P)、を認識し、正常受信パケット数(a)、非正常受信パケット数(b)、損失パケット数(c)をカウントする(ステップS102)。受信処理部205は、P、P、P、a、b、c、の情報をFEC復号化部206へ出力する。つまり、本実施形態では、正常受信パケット(P)だけでなく、非正常受信パケット(P)についても廃棄せずに、FEC復号化部206(上位層であるアプリ層)へ送られる。なお、a+b+c=nである。
FEC復号化部206は、受信処理部205から取得した情報に基づいて、a≧kを満たすか否かを判定する(ステップS103)。なお、値kは、通信装置100により送信されたFEC符号の情報シンボル数を示す。
a≧kの場合、FEC復号化部206は、受信パケットに含まれる各FEC符号に対して消失訂正を行い、各FEC符号の元のデータを復元する。そして、生成パケットのヘッダを参照して、復元されたFEC符号を含むパケットを映像復号化部207へ出力する(ステップS104)。
一方、a<kの場合、FEC復号化部206は、a+b≧k+1を満たすか否かを判定する(ステップS105)。
a+b<k+1の場合、FEC復号化部206は、受信パケットに含まれる各FEC符号に対して消失訂正を実行せずに、生成パケットのヘッダを参照して、受信パケットを映像復号化部207へ出力する(ステップS106)。
一方、a+b≧k+1の場合、以下の処理を、受信パケットに含まれるFEC符号毎に行う。なお、ここでのFEC符号は、シンボルエラーの発生やパケット損失により、一部消失していることがある。
FEC復号化部206は、同一FEC符号のa個の正常シンボルと、上記同一FEC符号のb個中の任意の(k−a)個の不確定シンボルと、の組み合わせであるFEC復号候補を全て生成する(図6のステップS107)。ここで、正常シンボルは、正常受信パケット(P)のに含まれるシンボルであり、エラーを含まないシンボルである。不確定シンボルは、非正常受信パケット(P)に含まれるシンボルであり、エラーを含むか否か不明であるシンボルである。したがって、FEC復号候補のシンボル数は、情報シンボル数kと同数である。また、b個中の任意の(k−a)個の組み合わせは、全部でk−a通りである。したがって、FEC復号候補は、k−a個生成される。なお、図4に示した受信パケットの場合、a=3、b=3、k=4、であるので、ステップS107の処理が実行されることになる。
続いて、FEC復号化部206は、生成された複数のFEC復号候補の各々に対して、消失訂正を行う(ステップS108)。
続いて、FEC復号化部206は、複数の消失訂正の結果のうち、消失訂正の結果が一致する(同一である)ものが少なくとも1つ存在するか否かを判定する(ステップS109)。
消失訂正の結果が一致するものがある場合、FEC復号化部206は、この一致した消失訂正の結果で、受信パケットに含まれるFEC符号を修正する(ステップS110)。
2つのFEC復号候補において、その中に含まれるシンボルの1ビットでも異なる場合、2つのFEC復号候補を用いて消失訂正を行った結果は異なってくる。このような消失訂正(誤り訂正も同様)の特性を考慮すると、FEC復号候補に対する消失訂正の結果が一致するということは、FEC復号候補に含まれる不確定パケットに誤りがないと推定され、正常なFEC符号が復元できた可能性が非常に高いことになる。そこで、一致する消失訂正の結果を、正常シンボルのみを用いて行う通常の消失訂正の結果と同等に扱い、
送信パケットに含まれていたと推定されるFEC符号を一致する消失訂正の結果を用いて再現する。
具体的には、FEC復号化部206は、先に説明した(数式11)により、誤り訂正の結果として、エラーや損失を含むパケット位置のFEC復号の値を算出する。FEC復号の値がk−a通りの組合せの内、2通り以上の組合せで一致した場合、FEC復号の値は元々送信側で生成された正しいシンボルであると推定できる。
一方、全てのFEC候補に対する消失訂正の結果が一致しない場合、FEC復号化部206は、消失訂正の結果によるFEC符号の修正を断念する(ステップS109のNo)。
FEC符号の修正後またはFEC符号の修正の断念後、通信装置200は、全てのFEC符号に対して、消失訂正の結果を用いたFEC符号の修正の可否について判断したか否かを判定する(ステップS111)。全てのFEC符号の数は、図4の例では1000個である。
FEC符号の修正の可否について判断していないFEC符号が存在する場合、ステップS107に進み、後続のFEC符号について同様の処理を行う。
一方、全てのFEC符号について修正可否の判断を行った場合には、FEC復号化部206は、生成パケットのヘッダを参照して、FEC符号の修正を反映したパケットを映像復号化部207へ出力する(ステップS106)。FEC符号の修正の可否は、受信パケットに含まれるFEC符号毎に異なる。したがって、出力されたパケットに含まれるFEC符号については、修正できたFECが存在することも、修正できなかったFECが存在することも想定される。
このような受信処理部205およびFEC復号化部206の処理によれば、一般的に消失訂正を適用可能なa≧kの条件を満たさない場合であっても、受信パケットから仮のFEC符号(FEC復号候補)を用いて、正しく復号されるFEC符号を復元できることがある。このように正しいFEC符号が増加することで、例えば映像や音声の品質が向上する。
なお、ステップS108において、全てのFEC復号候補に対して消失訂正を行ってから、全ての消失訂正の結果のうちの少なくとも1つの結果が一致するか否かを判定してもよいが、消失訂正の結果が一致するものがあった時点で当該判定を終了してもよい。これより、演算処理量および演算処理時間を低減させることができる。
また、ステップS107において、FEC符号毎に、最初にFEC復号候補を生成するのではなく、まずは2つのFEC復号候補を生成し、この2つのFEC復号候補に対する消失訂正の結果が一致するかどうかを判定してもよい。そして、一致しない場合には、新たにFEC復号候補を生成し、そのFEC復号候補に対する消失訂正の結果が一致するかどうかを判定する、という処理を繰り返すようにしてもよい。これにより、演算処理量および演算処理時間を低減させることができる。
このような本実施形態の通信装置によれば、従来は廃棄していた非正常受信パケットも考慮して、非正常受信パケットの組み合わせを生成し、複数のFEC復号候補を生成する。そして、複数のFEC復号候補に対する複数の誤り訂正(消失訂正)の結果の一致度に基づいて、誤り訂正が困難であったFEC符号についても復元をすることができる。
つまり、通常、OSI参照モデルにおける下の層で廃棄するパケットから得られる正常なシンボルであるか否かの判断不可能な不確定シンボルを活用して、複数のFEC復号候補を作り、複数のFEC復号候補による消失訂正の結果が一致したときの消失訂正の結果を、消失訂正の結果として利用することで、誤り訂正を行うことが可能であり、誤り訂正能力を向上させることが可能である。
(第2の実施形態)
本実施形態では、パケット生成部が生成する生成パケットについても、送信処理部が生成する送信パケットと同様に、CRCを有するようにする。ただし、送信パケットのCRCはDLC層のCRCであり、生成パケットのCRCはアプリ層のCRCである。
図7は、本発明の第2の実施形態における通信システムの構成例を示す図である。図7に示す通信システムでは、通信装置100Bと通信装置200Bとが通信路300を介して接続されている。図7に示す通信システムにおいて、図1に示した通信システムと同様の構成部については、同一の符号を付し、説明を省略または簡略化する。
通信装置100Bは、FEC符号化部103の代わりにFEC符号化部103Bを備え、FEC復号化部106の代わりにFEC復号化部106Bを備える。同様に、通信装置200Bは、FEC符号化部203の代わりにFEC符号化部203Bを備え、FEC復号化部106の代わりにFEC復号化部106Bを備える。
FEC符号化部103Bは、FEC符号化部103と同様の機能に加え、生成された生成パケットに含まれる情報シンボルまたは検査シンボルに基づいて、CRCを付与する(後述する図8参照)。このCRCは、生成パケットに含まれており、アプリ層における誤り検出を行うためのCRC(アプリ層のCRC)である。アプリ層のCRCは、修正されたFEC符号が正しく修正されているか否かを検証するためのデータである。
FEC復号化部106Bは、FEC復号化部106と同様の機能に加え、生成パケットに含まれるアプリ層のCRCを用いた誤り検出の結果を考慮して、FEC復号化を行う。FEC復号化の詳細については後述する。
FEC符号化部203Bは、FEC符号化部103Bと同様の機能を有するので、説明を省略する。同様に、FEC復号化部206Bは、FEC復号化部106Bと同様の機能を有するので、説明を省略する。
本実施形態では、第1の実施形態と同様に、送信に関する動作については通信装置100Bの動作を例として、受信に関する動作については通信装置200Bの動作を例として、説明する。また、FEC符号としてRS符号を用いることを想定する。また、情報シンボル数が4個、検査シンボル数が3個のRS(7,4)符号の1種類のみを用いることを想定する。
次に、FEC符号化について詳細に説明する。
図8は、FEC符号化を説明するための図である。ここでは、図3と異なる点を主に説明する。
FEC符号化部103Bは、生成パケットのパケット単位でCRC符号化を施す。つまり、生成パケットに含まれる1000個のシンボルの値に基づいてアプリ層のCRCを付与する。図8の例では、生成パケットには、ヘッダ、1000個のシンボル、アプリ層のCRCが含まれている。
次に、FEC復号化について詳細に説明する。
本実施形態では、誤り訂正として主に消失訂正を行う。以下、主に消失訂正について説明する。
図9は、FEC復号化を説明するための図である。ここでは、図4と異なる点を主に説明する。図9では、図4と同様のパケット位置にエラーやパケット損失が生じている場合を想定している。
FEC復号化部206Bは、受信処理部205からのパケットを受け取り、消失訂正を行う。このとき、第1の実施形態と同様に、FEC復号候補を生成し、このFEC復号候補に対する誤り訂正の結果に基づいて、FEC符号を復元する。所定の条件を満たす場合には、上記誤り訂正によって、図9に示す復号化パケットのように、元のデータを正確に復元することができる。
さらに、FEC復号化部206Bは、エラーシンボルが修正されたパケットについては、そのパケットに付与されたアプリ層のCRCを用いて誤り検出(第2の誤り検出)を行う。つまり、FEC復号化部206Bは、修正パケットに対して第2の誤り検出を行う第2誤り検出部としての機能を有する。詳細については後述するが、この誤り検出を行うことで、消失訂正が正確に行われたかどうかを検証することができ、FEC符号化処理をさらに改善することができる。
次に、受信処理部205BおよびFEC復号化部206Bの動作について説明する。
図10および図11は、受信処理部205BおよびFEC復号化部206Bの動作例を示すフローチャートである。この動作を行う通信プログラムは、通信装置200B内のROMに格納され、通信装置200B内のCPUによって実行される。なお、図10および図11において、図5および図6と同様のステップについては、説明を省略または簡略化する。
図11のステップS110の処理後、FEC復号化部206Bは、ステップS110において修正されたシンボルを含むパケットに対して、当該パケットに含まれるアプリ層のCRCを用いて誤り検出を行う(ステップS201)。
FEC復号化部206Bは、アプリ層のCRCによる誤り検出の結果、誤り検出対象のパケットにエラーシンボルが含まれない(CRC=OK)か否かを判定する(ステップS202)。誤り検出対象のパケットにエラーシンボルが含まれている場合(CRC=NG)、ステップS111に進む。
誤り検出対象のパケットにエラーシンボルが含まれていないと判定された場合、つまり、通信時に発生したエラーシンボルが正確に修正されている場合、FEC復号化部206Bは、当該パケットを、非正常受信パケットPから正常受信パケットPに変更(昇格)させる。また、FEC復号化部206Bは、正常受信パケット数(a)に1加算し(a←a+1)、非正常受信パケット数(b)から1減算する(b←b−1)(ステップS203)。
続いて、FEC復号化部206Bは、上記のパケットの昇格を考慮して、a≧kを満たすか否かを判定する(ステップS204)。a≧kを満たさない場合、つまりa<kの場合、ステップS111に進む。
a≧kを満たす場合、図10のステップS104に進む。つまり、非正常受信パケットが正常受信パケットに昇格した結果、そのパケットのエラーシンボルが全て修正された場合には、他の(後続の)FEC符号における当該パケットのシンボルはエラーシンボルではないものと推定される。また、昇格の結果、正常受信パケット数(a)が情報パケット数(k)以上である場合には、FEC復号候補に対する消失訂正を行うまでもなく、一般的なFEC符号に対する消失訂正によりFEC符号を復元できる。したがって、以降のFEC符号に対するステップS107〜S111、S201〜S204の処理を省略することができ、演算量を小さくすることができるので、通信装置200Bの処理負荷を軽減させることができる。
このように、FEC復号化部206Bは、FEC符号修正された結果、正常受信パケット数(a)が情報パケット数(k)以上である場合には、後続のFEC符号のFEC復号候補に対する誤り訂正を中止し、受信パケットに含まれる後続のFEC符号に対する誤り訂正を行うようにしてもよい。
なお、ステップS202におけるアプリ層のCRCによる誤り検出は、1つのFEC符号に対する処理毎に行われてもよいし、いくつかのFEC符号に対する処理毎につまり処理頻度を低下させて行われてもよい。
本実施形態の通信装置200Bによれば、アプリ層のCRCを用いた誤り検出を行うことで、エラーシンボルが確実に修正されたかどうかを検証することができる。例えば、あるFEC符号においては、FEC復号候補に対する誤り訂正の結果で一致するものがなく、FEC符号を修正されなかったものが含まれる可能性もある。このような場合であっても、アプリ層のCRCを用いた誤り検出を行うことで、信頼性を向上できる。
また、エラーシンボルが修正されて、一般的な消失訂正が行うことができるようになった場合には、以降の消失訂正を容易に行うことができ、通信装置200Bの処理負荷を軽減させることができる。
本発明は、上記実施形態の構成に限られるものではなく、特許請求の範囲で示した機能、または本実施形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
上記実施形態では、通信装置が、図5、図6、図10、図11等に示したような受信処理部やFEC復号化部による処理を行うことを説明したが、例えば通信された映像データを含む受信パケットをケーブルやメディア等を介して外部装置へ出力し、当該外部装置において受信処理部やFEC復号化部による処理を行うようにしてもよい。
上記実施形態では、エラーやパケット損失が発生したパケット位置を把握している消失訂正を例に説明したが、誤り訂正を行うための受信パケット数は消失訂正を行うための受信パケット数よりも多く必要であるという条件さえ満たしていれば、上記パケット位置を把握していない誤り訂正についても、当然適用可能である。
上記実施形態では、アプリ層のCRCとともに、DLC層のCRCを用いていることを説明したが、これに限らず、アプリ層よりも下位層における他のCRC(例えば、トランスポート層のCRC)を用いるようにしてもよい。
上記実施形態では、消失訂正において全ての正常シンボルを利用することが最良であるが、全ての正常シンボルの一部を利用せず、その代わりに不確定シンボルを利用して消失訂正を行うようにしてもよい。
上記実施形態では、FEC復号候補のシンボル数が情報シンボル数と同数であることを説明したが、これに限られず、FEC復号候補のシンボル数が情報シンボル数以上であってもよい。FEC復号候補のシンボル数が情報シンボル数と同数である場合には、不確定シンボルを消失訂正の演算に利用する数が少なくなるので、消失訂正の演算結果の一致度を得る確率を大きくすることができる。一方、FEC復号候補のシンボル数が情報シンボル数以上である場合には、消失訂正の演算量を低減させることができる。
また、本発明は、上記実施形態の機能を実現する通信プログラムを、ネットワークあるいは各種記憶媒体を介して通信装置に供給し、この通信装置内のコンピュータ(CPU)が読み出して実行するプログラムも適用範囲である。
本発明は、誤り訂正能力を向上させることが可能な通信装置、通信プログラム等に有用である。
100、200、100B、200B 通信装置
101、201 映像符号化部
102、202 パケット生成部
103、203、103B、203B FEC符号化部
104、204 送信処理部
105、205 受信処理部
106、206、106B、206B FEC復号化部
107、207 映像復号化部
300 通信路
310 第1通信路
320 第2通信路

Claims (8)

  1. 他の通信装置との間で通信を行う通信装置であって、
    FEC符号を構成する情報シンボルを含む情報パケットおよび検査シンボルを含む検査パケットを含む受信パケットを受信し、各々のパケットを複数のシンボルに分割する受信部と、
    前記受信パケットの各パケットが正常受信パケットであるか非正常受信パケットであるかを検出する第1誤り検出部と、
    前記FEC符号毎に、前記正常受信パケットに含まれる正常シンボルと前記非正常受信パケットに含まれる不確定シンボルとで構成されるFEC復号候補を、前記不確定シンボルが異なるように複数生成し、第1の誤り訂正を行う第1誤り訂正部と、
    前記第1誤り訂正部による複数の前記FEC復号候補に対する複数の前記第1の誤り訂正の結果のうち、一致した前記第1の誤り訂正の結果に基づいて、前記FEC符号を修正する第2誤り訂正部と、を備える通信装置。
  2. 請求項1に記載の通信装置であって、
    前記第1誤り訂正部は、前記第1誤り検出部により誤りが検出されなかった正常受信パケットの数が前記情報パケットの数未満であり、前記受信パケットの数が前記情報パケットの数よりも大きい場合、前記FEC符号毎に、前記正常受信パケットに含まれるシンボルである正常シンボルの全てと、前記第1誤り検出部により誤りが検出された非正常受信パケットに含まれるシンボルである不確定シンボルの一部と、により構成される前記FEC復号候補を、前記不確定シンボルが異なるように複数生成する、通信装置。
  3. 請求項2に記載の通信装置であって、
    前記FEC復号候補のシンボルの数は、前記情報シンボルの数と同数である通信装置。
  4. 請求項2または3に記載の通信装置であって、
    前記第2誤り訂正部は、前記FEC符号毎に、前記非正常受信パケットに含まれる前記不確定シンボルの値と、前記一致した前記第1の誤り訂正の結果により得られた前記非正常受信パケットに含まれるエラーシンボルの値と、に基づいて、前記他の通信装置により送信された送信パケットに含まれる送信シンボルを算出する通信装置。
  5. 請求項2ないし4のいずれか1項に記載の通信装置であって、更に、
    前記第2誤り訂正部により修正されたパケットである修正パケットに対して、第2の誤り検出を行う第2誤り検出部と、
    前記第2誤り訂正部は、前記第2誤り検出部により誤りが検出されなかった場合、前記修正パケットを前記非正常受信パケットから前記正常受信パケットに変更する通信装置。
  6. 請求項5に記載の通信装置であって、
    前記第1誤り訂正部は、前記第2誤り訂正部により前記FEC符号が修正された結果、前記正常受信パケットの数が前記情報パケットの数以上となった場合、後続のFEC符号の前記FEC復号候補に対する前記第1の誤り訂正を中止し、前記後続のFEC符号に対する前記第1の誤り訂正を行う通信装置
  7. FEC符号を構成する情報シンボルを含む情報パケットおよび検査シンボルを含む検査パケットを含む受信パケットを受信し、各々のパケットを複数のシンボルに分割するステップと、
    前記受信パケットの各パケットが正常受信パケットであるか非正常受信パケットであるかを検出するステップと、
    前記FEC符号毎に、前記正常受信パケットに含まれる正常シンボルと前記非正常受信パケットに含まれる不確定シンボルとで構成されるFEC復号候補を、前記不確定シンボルが異なるように複数生成し、第1の誤り訂正を行うステップと、
    前記第1の誤り訂正による複数の前記FEC復号候補に対する複数の前記第1の誤り訂正の結果のうち、一致した前記第1の誤り訂正の結果に基づいて、前記FEC符号を修正して第2の誤り訂正を行うステップと、
    を有する通信方法。
  8. 請求項7に記載の通信方法の各ステップをコンピュータに実行させるための通信プログラム。
JP2011263958A 2011-12-01 2011-12-01 通信装置、通信方法、及び通信プログラム Active JP5895238B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011263958A JP5895238B2 (ja) 2011-12-01 2011-12-01 通信装置、通信方法、及び通信プログラム
PCT/JP2012/007412 WO2013080481A1 (ja) 2011-12-01 2012-11-19 通信装置、通信方法、及び通信プログラム
US14/292,410 US9319074B2 (en) 2011-12-01 2014-05-30 Communication device, communication method, and communication program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011263958A JP5895238B2 (ja) 2011-12-01 2011-12-01 通信装置、通信方法、及び通信プログラム

Publications (3)

Publication Number Publication Date
JP2013118445A JP2013118445A (ja) 2013-06-13
JP2013118445A5 JP2013118445A5 (ja) 2014-12-25
JP5895238B2 true JP5895238B2 (ja) 2016-03-30

Family

ID=48534980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011263958A Active JP5895238B2 (ja) 2011-12-01 2011-12-01 通信装置、通信方法、及び通信プログラム

Country Status (3)

Country Link
US (1) US9319074B2 (ja)
JP (1) JP5895238B2 (ja)
WO (1) WO2013080481A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7069542B2 (ja) * 2016-12-16 2022-05-18 ソニーグループ株式会社 送信装置、及び、送信方法
US11165443B2 (en) 2018-10-01 2021-11-02 Microchip Technology Incorporated Burst error tolerant decoder and related systems, methods, and devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0897730A (ja) * 1994-09-29 1996-04-12 Canon Inc 誤り訂正装置及び方法
US5600663A (en) * 1994-11-16 1997-02-04 Lucent Technologies Inc. Adaptive forward error correction system
JP3322561B2 (ja) * 1996-04-12 2002-09-09 シャープ株式会社 Fm文字多重放送用受信機
JP2001060880A (ja) * 1999-08-20 2001-03-06 Sony Corp ディジタル信号の誤り訂正回路
US6634007B1 (en) * 1999-11-08 2003-10-14 Codevector Technology Algebraic soft decoding of reed-solomon codes
KR100539864B1 (ko) * 2001-07-25 2005-12-28 삼성전자주식회사 부호분할다중접속 이동통신시스템에서 고속 데이터의 재전송장치 및 방법
US6847760B2 (en) * 2001-10-23 2005-01-25 Georgia Tech Research Corporation Spatially resolved equalization and forward error correction for multimode fiber links
US7904781B2 (en) * 2004-12-09 2011-03-08 Mitsubishi Electric Corporation Data transmitting device, data receiving device, and data distribution system
US20090016469A1 (en) * 2007-07-11 2009-01-15 The Hong Kong University Of Science And Technology Robust joint erasure marking and list viterbi algorithm decoder
US9276787B2 (en) * 2008-03-28 2016-03-01 Qualcomm Incorporated Transmission of signaling messages using beacon signals
JP4544435B2 (ja) 2009-02-10 2010-09-15 日本電気株式会社 映像品質推定装置、映像品質推定方法およびプログラム
JP2011193434A (ja) * 2009-10-28 2011-09-29 Panasonic Corp パリティパケットを用いた通信方法、通信装置及び中継器
JP2012147197A (ja) 2011-01-11 2012-08-02 Panasonic Corp 通信装置、通信方法、及び通信プログラム

Also Published As

Publication number Publication date
JP2013118445A (ja) 2013-06-13
WO2013080481A1 (ja) 2013-06-06
US20140317466A1 (en) 2014-10-23
US9319074B2 (en) 2016-04-19

Similar Documents

Publication Publication Date Title
CN108650057B (zh) 一种编译码的方法、装置及系统
US8683301B2 (en) Error correction coding for recovering multiple packets in a group in view of limited bandwidth
US20110209029A1 (en) Low complexity error correction using cyclic redundancy check (CRC)
US20140068357A1 (en) Assessment and Correction of Transmitted Data
US11088780B2 (en) Low complexity blind detection of code rate
WO1998058468A1 (fr) Systeme de transmission avec multiplexage de donnees d'information, multiplexeur et demultiplexeur utilises a cet effet et codeur et decodeur pour correction d'erreurs
JP2012147197A (ja) 通信装置、通信方法、及び通信プログラム
JP2009171539A (ja) 送信装置および方法、受信装置および方法、並びにプログラム
US8433969B1 (en) Forward error correction (FEC) auto negotiation for an optical transport network (OTN)
US20040107398A1 (en) Error detection in received data transmissions
US8996962B2 (en) Chase coding for error correction of encrypted packets with parity
US8136013B2 (en) Burst error correction based on fire code
EP2264930A1 (en) Distributed code generation method and device
JP5600774B1 (ja) データ伝送装置及び方法
Luyi et al. Forward error correction
JP5895238B2 (ja) 通信装置、通信方法、及び通信プログラム
JP2012170062A (ja) 通信システムにおいてデータパケット内の検出不可能な誤りを最小にする方法
Cabrera et al. Taking the trash back in: practical joint channel and network coding for improving ieee 802.11 networks
US20080082896A1 (en) Burst error correction with offset for correction vector based on fire code
JP4379329B2 (ja) Crc生成多項式の選択方法、crc符号化方法およびcrc符号化回路
KR100916702B1 (ko) 전송 스트림 패킷의 채널 디코딩 장치 및 그 방법
US7313748B2 (en) FEC decoder and method
EP2075918A2 (en) Transmission apparatus and method, reception apparatus and method, and program
Kahkeshan et al. Enhancement of Voice Quality and System Capacity by Error Detection and Correction Method in Wireless Digital Communication
US11876620B1 (en) Error correction for decoding frames

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20131225

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20141003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141107

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141107

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151008

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: 20151110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151204

R151 Written notification of patent or utility model registration

Ref document number: 5895238

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151