JP6734577B2 - ポーラ符号のためのパンクチャリングパターンの設計 - Google Patents

ポーラ符号のためのパンクチャリングパターンの設計 Download PDF

Info

Publication number
JP6734577B2
JP6734577B2 JP2019520907A JP2019520907A JP6734577B2 JP 6734577 B2 JP6734577 B2 JP 6734577B2 JP 2019520907 A JP2019520907 A JP 2019520907A JP 2019520907 A JP2019520907 A JP 2019520907A JP 6734577 B2 JP6734577 B2 JP 6734577B2
Authority
JP
Japan
Prior art keywords
frozen
puncturing
index
bit
communication device
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
JP2019520907A
Other languages
English (en)
Other versions
JP2019533945A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JP2019533945A publication Critical patent/JP2019533945A/ja
Application granted granted Critical
Publication of JP6734577B2 publication Critical patent/JP6734577B2/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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • H03M13/6368Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
    • 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
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/618Shortening and extension of codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)

Description

本発明はポーラ符号(Polar Codes)を用いた通信装置に係り、特にポーラ符号のためのパンクチャリング(Puncturing)技術に関する。
ポーラ符号は、2元入力離散無記憶対称(Binary-Input Discrete Memoryless Symmetric: BI−DMS)クラスのチャネルにおいて容量達成できる第一等の符号ファミリーである。非特許文献1に紹介されているように、ポーラ符号の重要な原理はポーラ変換と呼ばれる線形変換に基づく。ポーラ変換は、BI−DMSチャネルのN個のコピーに対して実行され、これらのNチャネルコピーを極限チャネル、すなわち完全無雑音ビットチャネル(容量=1)か完全雑音ビットチャネル(容量=0)のいずれかへ転換する。非常に大きなN(漸近的)に対して、無雑音ビットチャネルの割合が潜在的なBI−DMSチャネルの容量に近づくことが証明されうる。したがって、情報ビットを無雑音ビット位置に置き、残りのビット位置を既知のビットパターン(オールゼロパターンのような)で満たし、それに続いて符号化を行うことができる。ポーラ符号の符号長は2のn乗(n =1,2,...)に限られるので、さまざまな長さのポーラ符号を構築することは、多くのアプリケーションにとって重要である。
パンクチャリングメカニズムは、レートおよび長さが可変のポーラ符号語を構築するための例示的な技法である。パンクチャリングは、送信前に符号語から一部のビットを削除することに関する方法である。したがって、符号長Nの符号語からMビットをパンクチャリングすることによって、長さN−Mのパンクチャド符号語が得られ、それが受信機に送信される。受信機は、デパンクチャリング(Depuncturing)と呼ばれる逆演算を実行し、それによって長さNのベクトルを構築し、このベクトルを復号器に供給することができる。
非特許文献2はレートコンパチブルなパンクチャド(punctured)ポーラ符号を導入し、そこではM個のパンクチャリング位置が以下のステップにより選択される。i)長さNのオール1ベクトルが構築され、次いで最初のMビットが0で埋められ、ii)続いて、このベクトルに対してビット反転置換演算が実行され、iii)最後に、0ビットの位置がパンクチャリングに使用される。パンクチャリングの後、長さN−Mのパンクチャド符号語が送信される。
非特許文献3は他のパンクチャリング方法を導入し、そこではパンクチャリングビットがゼロになるようにパンクチャリングパターンが設計される。これは、パンクチャド位置に影響を与えるビットチャネルを凍結することによって達成される。具体的には、ポーラ符号の生成行列の右端M列のインデックスがパンクチャリングされ、それにより最新のM個ビットチャネルが凍結される。
E. Arikan, "Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels", IEEE Transactions of Information Theory, vol. 55, pp. 3051-3073, July 2009.
K. Niu, K. Chen and J.R. Lin, "Beyond Turbo Codes: Rate Compatible punctured Polar Codes", in proceedings of IEEE ICC, Budapest, Hungary Jun 2013, pp. 3423-3427.
R. Wang and R. Liu, "A Novel Puncturing Scheme for Polar Codes", IEEE Communication Letters, VOL. 18, NO. 12, December 2014.
非特許文献2に開示されているパンクチャドポーラ符号によれば、受信機の復号器はパンクチャドビットの値を知らない。したがって、最初の対数尤度比(LLR)値はパンクチャドビットでゼロに設定され、次いでLLRベクトルが逐次除去(Successive Cancellation:SC)または逐次除去リスト(SCL)復号器へ入力する。これは、パンクチャド位置での復号誤り確率を増加させる可能性がある。
非特許文献3に開示されているパンクチャリング方式によれば、一定のパンクチャドビットをもつ凍結集合の選択が、生成行列から全ての利用可能な重み1の列の任意の一つを選択することによって、あるいは生成行列の最も右にある列を選択することによって、のみ実行される。言い換えれば、非特許文献3のパンクチャリング方式は、利用可能な重み1の列のうちの選択された1つが、他のすべての利用可能な重み1の列と比較して高い値の復号誤り確率を有することを保証しない。したがって、非特許文献3のパンクチャリング方式では、M個の最良チャネルインデックス(すなわち、最小の復号誤り確率を有するM個のビットチャネル)を凍結する可能性が残るという問題がある。このことは、情報ビットが不良ビットチャネルで送信される可能性があるという深刻な技術的問題である。
本発明の目的は、復号誤り確率を低減しつつ、長さコンパチブルまたはレートコンパチブルなポーラ符号の設計を実現可能なポーラ符号のパンクチャリング技術を提供することにある。
本発明によれば、通信装置は、入力ベクトルを符号化してポーラ符号の符号語を出力する符号化器と、凍結ビットの位置の凍結集合とパンクチャドビットの位置のパンクチャリング集合とを格納するように構成されたメモリと、一組の命令を実行するように構成された少なくとも一つのプロセッサと、からなり、前記一組の命令が、a)パンクチャドビットが定数値を有するように前記凍結集合を設定し、b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、c)前記ステップa)およびb)に従って選択された複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、ステップからなる、ことを特徴とする。
本発明によれば、通信システムは、上述した通信装置を有する送信装置と、前記送信装置から受信した符号化された符号語を復号する復号器を有する受信装置と、を有し、パンクチャドビットが前記復号器へ通知される定数値を有する、ことを特徴とする。
本発明によれば、ポーラ符号のためのパンクチャリング方法は、a)パンクチャドビットが定数値を有するように凍結集合を設定し、b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、c)前記ステップa)およびb)に従って複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、ステップからなることを特徴とする。
本発明によれば、ポーラ符号のための符号化器を含む送信装置としてコンピュータを機能させるプログラムであって、a)パンクチャドビットが定数値を有するように凍結集合を設定し、b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、c)前記ステップa)およびb)に従って複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、命令からなることを特徴とする
上述したように、本発明によるポーラ符号のパンクチャリング技術は、復号誤り確率を低減しつつ、長さコンパチブルまたはレートコンパチブルなポーラ符号の設計を実現することができる。
したがって、本発明は、いくつかのステップ、およびそのようなステップの1つまたは複数のステップの他のステップの各々に対する関係、ならびにそのようなステップに影響を与える構成、要素の組合せおよび部分の配置を実施する装置からなる。これら全ては以下の詳細な開示に例示されており、本発明の範囲は特許請求の範囲に示されている。 上記目的に加えて、本発明の他の効果は詳細な明細書および図面から明白になる。
図1は本発明の一実施形態による送信装置の機能構成を例示する模式図である。 図2は本実施形態による受信装置の機能構成を例示する模式図である。 図3は本実施形態によるパンクチャリング集合を決定する動作を例示するフローチャートである。 図4は本実施形態による凍結集合を決定する動作を例示するフローチャートである。 図5は本実施形態による送信装置における符号化動作を示すフローチャートである。 図6は本実施形態による受信装置における復号動作を示す模式図である。 図7は本実施形態の一例を説明するための、ポーラ符号の生成行列の一例を用いた行列式を例示する模式図である。 図8は本発明の本実施形態によるパンクチャリング集合および凍結集合を決定する第1ステップを説明するための行列を例示する図である。 図9は図8に示す第1ステップに続くパンクチャリング集合を決定する第2ステップAを説明するための行列を例示する図である。 図10は図9に示す第2ステップAに続く凍結集合を決定する第2ステップBを説明するための行列を例示する図である。 図11は図10に示す第2ステップBに続くパンクチャリング集合を決定する第3ステップAを説明するための行列を例示する図である。 図12は図11に示す第3ステップAに続く凍結集合を決定する第3ステップBを説明するための行列を例示する図である。 図13は図12に示す第3ステップBに続くパンクチャリング集合を決定する第4ステップAを説明するための行列を例示する図である。 図14は図13に示す第4ステップAに続く凍結集合を決定する第4ステップBを説明するための行列を例示する図である。 図15は図14に示す第4ステップBに続くパンクチャリング集合を決定する第5ステップAを説明するための行列を例示する図である。 図16は図15に示す第5ステップAに続く凍結集合を決定する第5ステップBを説明するための行列を例示する図である。 図17は図16に示す第5ステップBに続くパンクチャリング集合を決定する第6ステップAを説明するための行列を例示する図である。 図18は図17に示す第6ステップBに続く凍結集合を決定する第6ステップBを説明するための行列を例示する図である。 図19は本実施形態によるパンクチャリング集合メモリと凍結集合メモリに格納されたデータの例を例示する図である。 図20は本発明の本実施形態の他の例によるパンクチャリング集合と凍結集合とを決定するための別のアルゴリズムを例示する図である。 図21は本発明の本実施形態による組織符号化のステップを示す模式図である。 図22は本発明の本実施形態による組織復号のステップを示す模式図である。 図23は本発明の本実施形態の第2例によるパンクチャリングパターンを生成するステップを示す模式図である。 図24は本発明の本実施形態の第2例によるパンクチャリング配列を生成する方法を説明するための行列を例示する図である。
以下、「例示的」という用語は、本明細書において「例、実例、または例示として」の意味で使用される。本明細書で「例示的」として記載した実施形態は、他の実施形態よりも好ましい、あるいは有利であると解釈される必要は必ずしもない。
1.例示的な実施形態の概要
上述した従来の技術的課題は、本発明の例示的な実施形態の1つまたは複数の変形例によって解決することができる。より具体的には、パンクチャリング位置は、それらが最終的に一定値になるように選択される。このことは、N−K個のビットチャネルが復号器に事前に知られた一定値で凍結設定されるというポーラ符号の特性を使用することによって達成される。パンクチャリング位置の集合が最初に選択され、次にそれらのパンクチャリング位置に影響するビットチャネルが凍結設定される。
通常、パンクチャリング位置の選択は凍結集合とは関係ない。本発明の例示的実施形態によれば、凍結集合とパンクチャリング集合との間の関係が定義される。より具体的には、パンクチャドビットが一定の値を有するように凍結集合が選択される。パンクチャドビットは一定の値を有するので、受信機の復号器にはこの一定の値が前もって知らされる。従って、パンクチャドビットのためのいかなる復号も必要としない。パンクチャドビットは、最小数のインデックス、比較的高い復号誤り確率を有するインデックスが凍結されるように選択される。より詳細な方法は以下の段落で説明する。
1.1)パンクチャリング集合の二段階選択
パンクチャリング位置を選択する方法では、ポーラ符号用の生成行列に基づいて最適なビットチャネルを選択する二段階選択が行われる。第一段階では、重み1を有する生成行列の列がリストアップされる。この操作はパンクチャドビットを定値化するために1つのビットチャンネルのみが凍結されることを保証する。第二段階では、重み1を有する全ての列インデックスのうち、復号誤り確率の値が最も大きいインデックスがパンクチャリング用に選択される。次に、その選択されたインデックス番号を持つ列と行がそれぞれ削除されるか、またはすべてゼロの列と行に置き換えられる。二段階選択プロセスの各ステップの終わりに、定値化された1つのパンクチャリング位置が得られる。
上述した二段階の選択プロセスをM回繰り返すことにより、M個の定値化されたパンクチャリング位置の配列を得ることが可能であり、以下、これをパンクチャリング配列と呼ぶ。出力符号語内でパンクチャリングの必要があるインデックスを含む最終パンクチャリング集合は、パンクチャリング配列に対してビット反転置換演算を実行することによって取得され得る。M個のパンクチャリング位置が一定値になるのは、パンクチャリング位置に対応する行インデックス(ビットチャネル)が凍結されているからである。ポーラ符号では、凍結集合インデックスは、復号器に事前に知られている固定値(例えば、0ビット)を含む。したがって、パンクチャリング位置に固定値を含めることができる。すでに述べたように、これはパンクチャドビットに影響を与えるビットチャネル(すなわち生成行列の行インデックス)を凍結集合に含めることによって行われる。この例示的な実施形態では、凍結集合が修正される。以下、詳細を説明する。
1.2)凍結集合
オリジナルのポーラ符号では、凍結集合は分極ビットチャネルの復号誤り確率に基づいて選択される。これは、バタチャリア(Bhattacharyya)パラメータと呼ばれる、復号誤り確率の上限と見なしうるメトリックによって捉えることができる。分極ビットチャネルのバタチャリヤパラメータ(Zパラメータとも呼ばれる)を見出す方法の一つが、密度進化(Density Evolution)あるいはそのガウス近似であり得る。オリジナルのポーラ符号で凍結集合を決定するために、N個のビットチャネル全てを、それらの分極後のZパラメータ値に従って並べ替えることができる。そして、Zパラメータの最高値を有するN−K個のビットチャネルを選択することで凍結集合を生成し得る。これらのN−K個の位置は非常に高い復号誤り確率を有すると考えられるので、これらの位置に情報を置くことはできない。情報の代わりに、一定の値によりそれらの位置を満たすことができる。この一定値は事前に復号器へ通知されうる。情報ビットは、比較的低いZパラメータ値を有する残りのK個の位置に置くことができる。
本実施形態では、凍結集合は、上述した元の凍結集合から修正される。より具体的には、凍結集合は2つの異なる方法を用いた2つの部分として構築される。凍結集合の第1の部分はパンクチャリング法に基づいて構築される。パンクチャドビットを一定値にするために、パンクチャドビットに影響を与えるビットインデックスは凍結集合に含まれる。したがって、凍結集合に含まれると考えられるすべてのN−KインデックスのうちのMインデックスが定数値パンクチャドビットを達成するために含まれる。凍結集合のN−K−M個の残りのインデックスは、Zパラメータのより高い値に基づくオリジナルの選択アプローチを使用して選択される。こうして、この例示的な実施形態における凍結集合、およびそれに対応する非凍結集合は、オリジナルのポーラ符号におけるそれとは異なり得る。
上述したように、パンクチャリングパターンの決定には2段階選択法が採用される。次に、2段階選択が最適な方法としてどのように機能するかについて詳細を述べる。
第1段階は、一定値パンクチャドビットの目的を達成するために最小数のビットチャネルが凍結されることを保証する。重要なことは、パンクチャリング方法がビットチャネルを過剰に凍結させないことを保証することである。その理由は、凍結集合は理想的には非常に高いZパラメータを有するビットチャネルのみを含むべきであるということである。高Zパラメータ条件以外の何らかのパラメータ(ここでは、一定のパンクチャドビットを達成するために)に基づいて他の何らかのビットチャネルが凍結集合に含まれるとすれば、Zパラメータの値が低いビットチャネルが凍結集合に含まれる可能性がある。それゆえに、パンクチャリング方法により、最小数のビットチャネルの凍結が目的とされる。正確にM個のビットチャネルを凍結することでM個のパンクチャドビットを一定の値で生成するという目的を達成することを保証することができる。凍結集合の残りのN−K−M個の元は、それらが最も高いZパラメータを有するN−K−M個のビットチャネルであるように選択されうる。したがって、パンクチャリングによって凍結されたビットチャネルを最小に制限するという第1の目的は、選択の第1段階によって保証される。
パンクチャリング方法における選択の第2段階は、パンクチャリング方式により凍結集合に含まれるビットチャネルが可能な限り高いZ値を有することを保証する。したがって、第2段階は、一定値化したパンクチャドビットを保証するビットチャネルを選択すると同時に、これらの選択されたビットチャネルが可能な限り高い値のZパラメータを有するようにする役目がある。したがって、選択の第1段階および第2段階の組み合わせは、最適ビットチャネルを凍結することで一定値パンクチャドビットの目的を達成することを保証する。ここで、「最適性」という概念は、第1段階および第2段階の結果として凍結されるビットチャネルが合計Zパラメータ値の可能な最高値を示すことに関する概念であり、当該Zパラメータは、一定値パンクチャドビットの目的に合致し当該目的を満たす最小数のビットチャネルが凍結されるという制約を満たす。
1.3)効果
上述したように、本実施形態では、パンクチャドビットが一定値となる。したがって、パンクチャドビットの値は事前に復号器に通知される。 パンクチャドビットが復号器に通知されないと、復号器はパンクチャド位置における初期LLR値を0に設定する可能性があり、このためにパンクチャド位置における復号誤り確率を増加させる可能性がある。本実施形態によれば、復号器はパンクチャドビットの初期LLR値を正または負の無限大に設定し、次いでSCまたはSCL復号を続行することができる。これによりビットエラーレート(BER)が低下しうる。
さらに、改善されたBER性能を有する様々な長さ(必ずしも2のべき乗だけではない)のポーラ符号の設計が可能となる。さらに、パンクチャドビットは、それらの値が事前情報として復号器に通知され、それにより復号器が復号誤りなしにパンクチャド位置でビットを復号することが可能になるように選択される。
さらに、凍結集合は、パンクチャドビットが一定値になり、同時に可能な限り高い復号誤り確率を有するインデックスからなることを考慮して選択されることで、符号語のビット誤り率が低下しうる。
2.例示的な実施形態
以下、本発明の例示的な実施形態を添付の図面を用いて詳細に説明し、最後に例示的なシナリオを用いて説明する。本明細書に記載の実施形態は、本発明の概念が多種多様な状況で具体化され得るという事実を示すいくつかの特定の表現の例示に過ぎない。したがって、例示的な実施形態は本発明の範囲を限定するものではない。
2.1)システム構成
本発明の実施形態による通信装置を送信機または受信機として説明する。送信機と受信機は単一の通信装置に統合されてもよい。
図1に例示するように、送信機101は、メッセージ源102、ポーラ符号化方式の前方誤り訂正(Forward Error Correction:FEC)符号化器103、パンクチャリング部104、および変調器105を含むデータ送信機能を備えている。これらの機能は、メモリ装置(図示せず)に格納されたそれぞれのプログラムを実行するプロセッサ上で実現されてもよい。本実施形態において、パンクチャリング部104は、凍結集合メモリ106およびパンクチャリング集合メモリ107を使用して、凍結集合およびパンクチャリング集合の決定動作を実行する。
メッセージ源102は、符号化され送信されるべき情報を生成する。FEC符号化器103は、メッセージ源102によって生成された情報を符号化して長さNの符号語を形成する。パンクチャリング部104は、パンクチャリングパターンで指定されたM個の位置で、FEC符号化器103によって生成された符号語をパンクチャリングし、長さN−Mの短いパンクチャド符号語を得る。変調器105はパンクチャド符号語を変調し、それを送信するために無線周波数(RF)ユニット(図示せず)に送る。
パンクチャリング部104は凍結集合の一部を決定して凍結集合メモリ106に格納する。例えば、パンクチャリング部104は、凍結集合のM個の元を決定し、ここでMはパンクチャリングされるべきビット数であり、次にZパラメータあるいは等価的な復調誤り確率に基づいて、凍結集合の残りの部分、すなわち凍結集合の残りのN−K−M個の元を決定する。凍結集合はFEC符号化器103において使用され、パンクチャリング集合は符号語パンクチャリングに使用される。詳細は後述する。
図2に例示するように、受信装置201は、復調器202、デパンクチャリング部203、FEC復調器204、および復号メッセージ処理部205を含むデータ受信機能を備えており、これら機能は、メモリ装置(図示せず)に記憶されているそれぞれのプログラムをプロセッサ上で実行することにより実現することができる。デパンクチャリング部203は、サイズNのLLRベクトルを作成する。パンクチャドビットのLLRは、正または負の無限大に設定することができ、FEC復調器204への入力として供給される。FEC復調器204は、LLRベクトルに対して復号アルゴリズムを実行して復号メッセージを生成し、これが復号メッセージ処理部205に出力される。
2.2)パンクチャリング集合の決定
図3は、本発明の例示的実施形態によるパンクチャリング集合決定方法を説明する概略的フローチャートを示す。上述したように、パンクチャリング位置は二段階選択方法によって決定することができる。選択の第1段階(動作S301)において、チェックすべき条件は、選択されたパンクチャリング位置が最小数のビットチャネルを凍結して定値化される(constant-valued)ことである。これは、重み1を有する生成行列の列インデックスを選択することによって行うことができる(動作S302)。
第1選択段階の後に、第2選択段階(動作S303)が開始されてもよい。ここでチェックすべき条件は、選択の第1段階で得られた全てのインデックスのうち、復号誤り確率が最も高いインデックスを選択することである(動作S304、S305)。ここで、バタチャリアパラメータ(またはZパラメータ)は、復号誤り確率のメトリックと解されうるものであり、インデックス間の比較に使用することができる。そして、選択されたインデックスはパンクチャリング配列に含める(動作S306)。その選択されたインデックスの列と、当該選択されたインデックスの列における値1を有する行と、が削除される(動作S307)。 列の削除はパンクチャリング操作として解釈され、行の削除は凍結操作として解釈される。
動作S307の実行には多くの変形例があり得るが、全ての変形例は本発明の範囲内にあると解釈されるべきである。代替実装例では、選択されたインデックスの列および行を削除するのではなく、すべてゼロの列および行にそれぞれ置き換えることも可能である。
第1段階操作と第2段階操作の組み合わせをM回繰り返して、M個のインデックスを含むパンクチャリング配列を得ることができる。最後に、動作S308に示されるように、出力符号語内でパンクチャリングされるべきインデックスを含むパンクチャリング集合は、S307で得られたパンクチャリング配列のビット反転置換によって得られる。
2.3)凍結集合の決定
図4は、本発明の実施形態による凍結集合決定方法を説明する概略図である。既に説明したように、凍結集合は2つの異なる方法を用いて2つの部分に分けて選択可能である。凍結集合の第1の部分は、パンクチャリング方式に基づいて選択することができる(動作S401)。図3において述べたように、生成行列の列インデックスは動作S305において選択されることができ、そこからパンクチャリング位置を取得することができる。そして、生成行列の(動作S305により取得された)選択インデックス列における値が1の行が選択され凍結集合に含める(動作S402)。一例では、パンクチャリング方式から決定される凍結集合の第1の部分は、動作S301〜S307をM回繰り返すことによって取得され得るパンクチャリング配列全体を含む。したがって、パンクチャリング配列に含まれるM個のインデックスは、凍結集合のM個のインデックスを構成することができる。
凍結集合の残りのN−K−M個のインデックスは、第2の方法によって決定されてもよい(動作S403)。一例として、まだ凍結されていない全てのN−M個の残りのインデックスは、それらの復号エラー確率または等価的なそれらのZパラメータに従ってソートされる(動作404)。次に、最大の復号誤り確率(または等価的なZパラメータ)を有するN−M−K個のインデックスが選択され凍結集合に含める(動作S405)。
2.4)符号語のパンクチャリング
図5を参照して、本発明の例示的な実施形態に従って符号化メカニズムを説明する。まず、変更された凍結集合を図4で説明したように構築し、残りのK個のインデックスを非凍結集合に含める(動作S501)。次に、情報ビットをK個の非凍結位置に、固定値(例えば0ビット)を凍結インデックス位置に、それぞれ入れることによって、「uベクトル」と呼ばれる長さNのベクトルが構成される(動作S502)。そして、uベクトルに対してビット反転置換操作を行う(動作S503)。符号語は、ビット反転置換ベクトルとN×N生成行列とを乗算することによって生成される(動作S504)。最後に、生成された符号語を、動作S308で得られたパンクチャリング集合で指定されたM個の位置でパンクチャリングして、長さN−Mの短い長さのパンクチャド符号語を生成する(動作S505)。
2.5)デパンクチャリング
図6を参照して、本発明の例示的な実施形態に従って復号化メカニズムを説明する。デパンクチャリング部203は、パンクチャドビットのLLR値が正または負の無限大に設定された長さNのLLRベクトルを構築する(動作S601)。例えば、符号化前に凍結インデックスが0ビットで埋められる場合、パンクチャドビットのLLRは正の無限大に設定されうる。そして、復調器204は、この長さNのLLRベクトルを入力として用い復号を行う(動作S602)。ひとつの例示的実施形態では、復調器204は、逐次除去(SC)復号アルゴリズム、逐次除去リスト(SCL)復号アルゴリズム、および巡回冗長検査(Cyclic Redundancy Check:CRC)支援リスト復号アルゴリズムのうちの1つを使用することができる。復調器204は、復号されたメッセージである長さNのベクトルを出力することができる。
3.第1例
本発明の実施形態の一例をポーラ符号の場合について詳細に説明する。
3.1)パンクチャリング方法の概要
図7は、本発明の例示的実施形態によるパンクチャリング方法を更に説明するための例示的な式を示す。まず、符号長Nの符号化メカニズムと、4ビットがそれぞれU0、U1、U2およびU3である符号化されていない入力ベクトル701と、基底行列としての4×4生成行列702と、符号ビットがC0、C1、C2、C3である符号化された符号語703と、を仮定する。4×4生成行列702の各列は、それぞれ参照番号704、705、706および707として別々に示されている。この例から分かるように、符号語703のそれぞれの符号ビットC0−C3は、
C0=U0+U1+U2+U3、
C1=U2+U3、
C2=U1+U3、および
C3=U3
によって表される。
したがって、符号ビットC0をパンクチャリングし、同時にそれを定数値にするためには、4つの入力ビットU0、U1、U2およびU3すべてを凍結する必要がある。したがって、情報ビットを送信することはできない。また、符号ビットC1をパンクチャリングし、それを同時に定数値にするためには、2つの入力ビットU2およびU3を凍結しなければならない。符号ビットC2についても同様に、2つの入力ビットU1およびU3を凍結する必要がある。しかし、符号ビットC3については、1つの入力ビットU3のみが凍結される必要がある。したがって、符号ビットC3は、最小数のインデックスが凍結されるという条件を満たすため、ここではパンクチャリング位置として選択される。これが、図3に示すように、パンクチャリングパターンの選択の第1段階で重み1の列が選択される理由である。この場合、選択の第1段階に適しているのは列707だけである。したがって、選択の第2段階を実行する必要はない。次に、列707と生成行列702の列707における値1を有する最後の行がそれぞれパンクチャリングと凍結のために削除される。もう1ビットをパンクチャリングする必要がある場合、列705および706の両方が重み1を有しているので、選択の第2段階を用いて、復号誤り確率がより高い方を選択する。
3.2)パンクチャリング集合および凍結集合の決定の例
以下、長さN=16のポーラ符号のための生成行列801を基底行列として、図8から図19を順に参照しながら、パンクチャリング方法の一例をさらに説明する。情報長Kとパンクチャリングされる符号ビット数Mは、それぞれK=8、M=6であるとする。
図8に例示するように、最初に、選択の第1段階を使用して、列803が重み1を有する唯一の列であるとして選択される。そのため、列803のインデックスがパンクチャリング配列に含まれる。列803の値1の位置に対応する行802のインデックスは凍結集合に含まれる。
図9に例示するように、図8で説明したパンクチャリング配列内の列803の列インデックスを選択した後、列803および行802は削除されるか、すべてゼロにされる。それに続いて、残りの列から重み1を有する列が、パンクチャリング配列の2番目の元に対する選択の第1段階として、列挙される。ここでは、列804、805、806および807が選択の第1段階に適した列に該当する。次に、列804、805、806および807のインデックスは、パンクチャリング位置の選択の第2段階において、復号誤り確率(または等価的なZパラメータ)に従ってソートされてもよい。列804、805、806および807の復号誤り確率(または等価的なZパラメータ)が比較された結果、列807のインデックスが、それらの中で最も大きいZパラメータを有するものとして選択されたと仮定する。
図10に例示するように、列807は全てゼロで埋められる。列807の値1の位置に対応する行インデックスは図9に示すように行808であるから、行808も全てゼロで埋められる。列807のインデックスはパンクチャリング配列に含められる。行808のインデックスは凍結集合に含められる。
図11に例示するように、パンクチャリング配列内の第3の元を選択するために、選択の第1段階が再び実行され、列重み1を有する列として列804、805および806が得られる。
図12に例示するように、列804、805および806のインデックスの復号誤り確率(または等価的なZパラメータ)を比較した後、列806のインデックスが最も大きなZパラメータを有するものとして選択されたと仮定する。したがって、列806はすべてゼロで埋められる。列806の値1の位置に対応する行インデックスは行809であるので、行809も全てゼロで埋められる。列806のインデックスはパンクチャリング配列に含められる。 行809のインデックスは凍結集合に含められる。
図13に例示するように、パンクチャリング配列内の第4の元を選択するために、選択の第1段階が再び実行され、列重み1を有する列として列804、805および810が得られる。
図14に例示されるように、列804、805および810のインデックスの復号誤り確率(または等価的なZパラメータ)を比較した後、列810のインデックスが最も大きいZパラメータを有するものとして選択されたと仮定する。したがって、列810はすべてゼロで埋められる。 列810の値1の位置に対応する行インデックスtは行811であるから、行811も全てゼロで埋められる。列810のインデックスはパンクチャリング配列に含められ、行811のインデックスは凍結集合に含められる。
図15に例示されるように、パンクチャリング配列内の5番目の元を選択するために、選択の第1段階が再び実行され、列重み1を有する列として列804および805を得る。
図16に例示されるように、列804および列805のインデックスの復号誤り確率(または等価的なZパラメータ)を比較した後、列S805のインデックスがそれらの中で最も大きいZパラメータを有するものとして選択されたと仮定する。したがって、列805はすべてゼロで埋められる。列805の値1の位置に対応する行インデックスは行812であるので、行812も全てゼロで埋められる。列805のインデックスはパンクチャリング配列に含められ、行812のインデックスは凍結集合に含められる。
図17に例示するように、パンクチャリング配列内の6番目の元を選択するために、選択の第1段階が再び実行され、列重み1を有する列として列804、813および814が得られる。
図18に例示するように、列804、813および814のインデックスの復号誤り確率(または等価的なZパラメータ)を比較した後、列814のインデックスが最も大きいZパラメータを有するものとして選択されたと仮定する。したがって、列814はすべてゼロで埋められる。列814の値1の位置に対応する行インデックスは行815であるので、行815も全てゼロで埋められる。列814のインデックスはパンクチャリング配列に含められ、行815のインデックスは凍結集合に含められる。
図19は、図8〜図18に示した上記の例に従って得られたパンクチャリング配列、パンクチャリング集合、凍結集合、および非凍結集合を示す。符号長N=16とすると、全てのビットチャネルまたはインデックスの集合は0〜15で書くことができる。M=6の場合にパンクチャリング方法を使用して、参照符号850によって示されるようにパンクチャリング配列Pが得られる。パンクチャリング集合Ppuncは、パンクチャリング配列Pに対してビット反転演算を実行することによって符号851で示すように得られる。パンクチャリング方式に基づいて、凍結符号F0の一部は符号852で示すように得られる。凍結集合F1の残りのN−K−M=2個のインデックスは、参照番号853によって示されるように、Zパラメータの最高値に従って取得される。合計凍結集合Fは、参照番号854によって示されるように、集合F0およびF1の和集合として取得される。非凍結集合は、全てのビットチャネルまたはインデックスの集合の補集合であり、参照番号855によって示されるように得られる。
図20は、上記と同じパンクチャリング配列を生成するための単純な代替アルゴリズムを示す。当該アルゴリズムは符号長Nを入力とし、その対応するパンクチャリング配列P(N)を出力し得る。図20に示すように、P(N)のi番目の元であるP (N)は、以下の式により計算することができる。
ここで、iは0以上N未満の整数であり、P (N)は符号長N(N>=2)のときのP(N)のi番目の元であり、P (1)=0である。P(N)にビット反転置換演算を実行することでパンクチャリング集合Ppuncを生成することができる。
3.3)組織符号化および復号
上記の符号化および復号化は、非組織符号化/復号に基づく。ここでは、図21および図22を参照して、組織符号化/復号について説明する。
図21は、本発明の一実施形態によるポーラ符号の組織符号化を示すフローチャートである。最初に、パンクチャリング集合は、図3で説明した方法を使用して構築することができる(動作S901)。次に、凍結集合は、図4で説明した方法に従って決定される(動作S902)。変更された非凍結集合は、全インデックスの集合と凍結集合との差分をとることにより決定される(動作S903)。K×K行列G−1 AAは、Kを非凍結集合のサイズとして、非凍結集合に対応する行と列の元を使用して構築される(動作S904)。そして、長さKの情報ベクトルに行列G−1 AAを乗算することで、長さKのベクトルmが構築される(動作S905)。次に、非凍結位置にベクトルmsatの元を、その他の位置に0を入れることによって、長さNの入力ベクトルuが構築される(動作S906)。そして、uベクトルに対してビット反転置換が実行される(動作S907)。最後に、ビット反転置換されたuベクトルが生成行列と乗算されることで符号語を生成する(動作S908)。
図22は、本発明の一実施形態によるポーラ符号の組織復号を例示するフローチャートである。これは、パンクチャドビットの対数尤度比(LLR)値を正または負の無限大にすることによって実行され得る(動作S1001)。例えば、符号器側の符号化されていないベクトルの凍結インデックス位置が0ビットで埋められたならば、復号が開始される前に復号器によってパンクチャド位置のLLRとして正の無限大が使用されうる。
次に、復調器は、長さNのLLRベクトルを入力として使用し、復号アルゴリズムを実行する(動作S1002)。 例えば、復調器は、逐次除去(SC)復号または逐次除去リスト(SCL)復号アルゴリズムを使用することができる。復号アルゴリズムを実行した後、復号器は長さNのベクトルを出力する(動作S1003)。復調器出力の非凍結位置のビットは、長さKのベクトルを構築するために使用される(動作S1004)。続いて、動作S1004で構築したベクトルに行列G−1 AAを乗算して復号メッセージを得る(動作S1005)。
4.第2例
ポーラ符号におけるパンクチャリングパターンを生成するための第2例は、以下のように導入される。この例によれば、生成行列に対する行削除または列削除のような操作なしに、一定値化されたパンクチャドビットを達成するパンクチャリングパターンを生成することが可能である。その代わり、この方法はただ単にインデックスのバイナリ展開を使用する。
図23に例示するように、まず、パンクチャリング配列Qをランダムに選択されたパンクチャリング配列に初期化する(動作S1101)。 あるいは、ランダムに選択されたパンクチャリング配列の代わりに、良好なパンクチャリング配列(例えば、前述の方法によって得られるパンクチャリング配列)もまた、Qにおける初期値として使用され得る。次いで、整数kが、{0、1、・・・、N−1}から選択され得る(動作S1102)。
ここでは、以下の式が採用される。整数a(0=<a<N)に対して、(a、a、・・・、an−1)を次のようにaの二進展開を示すものとする。
ここで、すべてのr=0、1、・・・、n−1であってn=logNに対してa∈{0、1}である。2つの整数aとb(0=<a、b<N)について、すべてのr=0、1、・・・、n−1でa>=bであれば、
と表すものとする。
そして、集合P(k)は次式により算出されうる(動作S1103)。
ここで、uは{0、1、・・・、N−1}における整数である。
は、全てのr=0、1、・・・、n−1に対してu>=kであることを表わす。
動作S1102およびS1103は、和集合UP(k)のサイズがMに等しくなるまで繰り返すことができ、UP(k)は、{0,1, ...,N−1}におけるkのいくつかの選択された値に対応する集合P(k)の和集合を表す(動作S1104)。ここで記号「U」は集合の「和集合」を表す数学的記号である。 動作S1104における|UP(k)|は集合UP(k)のサイズまたは濃度を表す。 続いて、和集合UP(k)をメトリックに関して集合Qと比較して、2つの集合間のより良い集合を見つけることができる(動作S1105)。比較に使用されるメトリックとしては、一般性を失うことなく、和集合UP(k)と集合Qに含まれるインデックスのバタチャリヤパラメータを使用することができる。一例として、和集合UP(k)におけるインデックスのバタチャリヤパラメータの合計を、集合Qにおけるインデックスのバタチャリヤパラメータの合計と比較することができる。どちらがより高い値を示す集合であるかによって、当該対応する集合がより良い集合であると判断することができる。他の任意のメトリックを用いて、いずれがより良い集合であるかを見つけることもでき、そのような任意のメトリックも本発明の範囲内にあると解釈されるべきである。例えば、そのようなメトリックは、前記集合およびパンクチャリング配列にそれぞれ含まれるインデックスの復号誤り確率の合計;パンクチャド分極行列の指数;およびパンクチャド符号の最小距離、のうちの少なくとも1つであり得る。
選択されたメトリックに関してUP(k)がより良い集合であると判明した場合、UP(k)はQに保存される(動作S1106)。 動作S1102〜S1106を所定回数繰り返すことにより、最適集合Qを求めることができる(動作S1107)。あるいは、所定回数繰り返す代わりに、選択されたメトリックに関する最適な集合Qをしらみつぶしで探索するように動作S1102〜S1106を繰り返すことができる。最終反復の終わりに得られた集合Qはパンクチャリング配列として使用されうる。得られたパンクチャリング配列のビット反転置換はパンクチャリング集合として使用されうる。
図24は、N=32の場合に上述した方法に従って集合P(k)を計算する一例を示す。この例では、集合P(13)が次のように示されている:P(13)={13、15、29、31}。この理由は、整数13の2進展開の各ビットが、整数15、29、31および13自体の2進展開の対応するビット以下であるからである。0〜31の範囲でその他のすべての整数に対して、それらの2進展開における少なくともひとつのビットは、整数13の2進展開における対応するビットよりも小さい。インデックス13、15、29および31が凍結設定されるならば、出力符号語において{13、15、29、31}のビット反転置換値に対応する位置で値0の符号ビットを得ることが可能である。したがって、{13、15、29、31}のビット反転置換値に対応する位置が出力符号語においてパンクチャリングされるならば、復調器は依然としてそれらの位置が0ビットの値を有していたことを知ることができる。そして、復調器は、{13、15、29、31}のビット反転置換値に対応する位置にある符号ビットの初期LLRを無限大に設定し、復号を開始することができる。
適用可能であれば、本明細書によって提供される様々な実施形態は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせを用いて実装され得る。また、適用可能であれば、本明細書に記載の様々なハードウェア構成要素および/またはソフトウェア構成要素は、本明細書の精神から逸脱することなく、ソフトウェア、ハードウェア、および/またはその両方を含む複合コンポーネントに組み合わせることができる。適用可能であれば、本明細書に記載の様々なハードウェア構成要素および/またはソフトウェア構成要素は、本発明の精神から逸脱することなく、ソフトウェア、ハードウェア、またはその両方を含むサブコンポーネントに分離することができる。さらに、適用可能であれば、ソフトウェア構成要素をハードウェア構成要素として実装することができ、またその逆も可能であると考えられる。
デバイスによって実行されるコンピュータプログラムなどの本明細書によるアプリケーションソフトウェアは、1つまたは複数のコンピュータ可読媒体に格納することができる。本明細書で特定されるステップは、ネットワーク化された、および/またはその他の、1つまたは複数の汎用または特定用途のコンピュータおよび/またはコンピュータシステムを使用して実施され得る。適用可能であれば、本明細書に記載の特徴を提供するために、本明細書に記載の様々なステップの順序を変更し、複合ステップに結合し、および/またはサブステップに分割することができる。
本明細書の実施形態が記載されたが、これらの実施形態は本発明を例示するものであり限定するものではない。
また、本明細書の実施形態はこれらの実施形態に限定されるべきではなく、本明細書の原理に従って当業者によって数多くの変更および変形がなされてもよく、以下の特許請求の範囲に記載されるように、本明細書の精神および範囲内に含まれることも理解されるべきである。
上記の例示的な実施形態は、無線ピアツーピア(P2P)ネットワークに適用することができる。
5.付記
上記の実施形態の一部又は全部は、以下の付記として記載されうるが、これらに限定されるものではない。
(付記1)
入力ベクトルを符号化してポーラ符号の符号語を出力する符号化器と、
凍結ビットの位置の凍結集合とパンクチャドビットの位置のパンクチャリング集合とを格納するように構成されたメモリと、
一組の命令を実行するように構成された少なくとも一つのプロセッサと、
からなり、前記一組の命令が、
a)パンクチャドビットが定数値を有するように前記凍結集合を設定し、
b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、
c)前記ステップa)およびb)に従って選択された複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、
d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、
e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、
ステップからなる、ことを特徴とする通信装置。
(付記2)
付記1に記載の通信装置であって、
前記ステップb)において、単一のインデックスが前記ステップa)に従って凍結されることを特徴とする通信装置。
(付記3)
付記1または2に記載の通信装置であって、
前記ステップb)において、重み1を有する少なくとも1つの列がポーラ符号のための生成行列から選択されることを特徴とする通信装置。
(付記4)
付記3に記載の通信装置であって、
前記ステップc)が、
重み1を有する複数の列の復号誤り確率を比較し、
前記最も高い復号誤り確率を有する一つの列を選択する、
ことを特徴とする通信装置。
(付記5)
付記3または4に記載の通信装置であって、
前記ステップc)が、更に、
前記一つの列においける値1の位置に対応する行のインデックスを前記凍結集合に含める、
ことを特徴とする通信装置。
(付記6)
付記1−4のいずれか1項に記載の通信装置であって、
前記ステップd)が、更に、
前記インデックス配列を凍結ビットの位置として前記凍結集合に含める、
ことを特徴とする通信装置。
(付記7)
付記1−6のいずれか1項に記載の通信装置であって、
前記ステップd)において、前記ステップb)およびc)がパンクチャリングされるビット数と同じ回数だけ繰り返される、ことを特徴とする通信装置。
(付記8)
付記1−6のいずれか1項に記載の通信装置であって、
前記ステップd)が、更に、
前記ステップc)により得られたインデックスに対応するポーラ符号の生成行列の行および列を、それぞれ全ゼロ行および全ゼロ列に置き換える、
ことを特徴とする通信装置。
(付記8−1)
付記1−6のいずれか1項に記載の通信装置であって、
前記ステップd)が、更に、
前記ステップc)により得られたインデックスに対応するポーラ符号の生成行列の行および列を削除する、
ことを特徴とする通信装置。
(付記9)
付記5または6に記載の通信装置であって、
前記ステップd)が、更に、
前記凍結集合に含まれていない復号誤り確率の最も高い値を有する少なくとも一つのインデックスを、前記凍結集合に含めて前記凍結集合の残りの元を満たすために選択する、
ことを特徴とする通信装置。
(付記10)
付記1−9のいずれか1項に記載の通信装置であって、
前記符号化器により符号化された符号語が、送信前に、前記パンクチャリング集合により特定された位置でパンクチャリングされる、
ことを特徴とする通信装置。
(付記11)
付記1−10のいずれか1項に記載の通信装置であって、
バタチャリヤパラメータが復号誤り確率のためのメトリックとして使用されることを特徴とする通信装置。
(付記12)
付記1−11のいずれか1項に記載の通信装置であって、
前記プロセッサが前記命令を実行して以下の式を計算し、
ここで、Nはポーラ符号の符号長、iは0以上N未満の整数、P (N)は符号長N(N>=2)のときのP(N)のi番目の元、P(N)はポーラ符号のためのパンクチャリング配列、P (1)=0である、
ことを特徴とする通信装置。
(付記13)
付記1−12のいずれか1項に記載の通信装置を有する送信装置と、
前記送信装置から受信した符号化された符号語を復号する復号器を有する受信装置と、
を有し、パンクチャドビットが前記復号器へ通知される定数値を有する、
ことを特徴とする通信システム。
(付記14)
付記13に記載の通信システムであって、
前記復号器が、前記パンクチャドビットの初期対数尤度比の値を正あるいは負の無限大の少なくとも一つに設定する、ことを特徴とする通信システム。
(付記15)
付記13または14に記載の通信システムであって、
逐次除去復号アルゴリズム、逐次除去リスト復号アルゴリズムおよび巡回冗長検査(CRC)支援逐次除去リスト復号アルゴリズムの少なくとも一つが前記復号器の復号に使用される、ことを特徴とする通信システム。
(付記16)
ポーラ符号のためのパンクチャリング方法であって、
a)パンクチャドビットが定数値を有するように凍結集合を設定し、
b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、
c)前記ステップa)およびb)に従って複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、
d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、
e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、
ステップからなることを特徴とするパンクチャリング方法。
(付記17)
付記16に記載のパンクチャリング方法であって、前記ステップc)が、更に、
重み1を有する複数の列の復号誤り確率を比較し、
前記最も高い復号誤り確率を有する一つの列を選択する、
ステップを有することを特徴とするパンクチャリング方法。
(付記18)
付記16に記載のパンクチャリング方法であって、前記ステップd)が、更に、
凍結ビットの位置として前記インデックス配列を前記凍結集合に含めるステップを有することを特徴とするパンクチャリング方法。
(付記19)
付記17に記載のパンクチャリング方法であって、前記ステップc)が、更に、
前記1つの列における値1の位置に対応する行のインデックスを前記凍結集合に含めるステップを有することを特徴とするパンクチャリング方法。
(付記20)
付記18または19に記載のパンクチャリング方法であって、前記ステップd)が、更に、
前記凍結集合に含まれていない復号誤り確率の最も高い値を有する少なくとも一つのインデックスを、前記凍結集合に含めて前記凍結集合の残りの元を満たすために選択するステップを有することを特徴とするパンクチャリング方法。
(付記21)
付記16−20のいずれか1項に記載のパンクチャリング方法であって、
バタチャリヤパラメータが復号誤り確率のためのメトリックとして使用されることを特徴とする通信装置。
(付記22)
付記16−21のいずれか1項に記載のパンクチャリング方法であって、
前記ステップa)〜d)が以下の式を計算することで実行され、
ここで、Nはポーラ符号の符号長、iは0以上N未満の整数、P (N)は符号長N(N>=2)のときのP(N)のi番目の元、P(N)はポーラ符号のためのパンクチャリング配列、P (1)=0である、
ことを特徴とするパンクチャリング方法。
(付記23)
ポーラ符号のための符号化器を含む送信装置としてコンピュータを機能させるプログラムであって、
a)パンクチャドビットが定数値を有するように凍結集合を設定し、
b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、
c)前記ステップa)およびb)に従って複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、
d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、
e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、
命令からなることを特徴とするプログラム。
(付記24)
パンクチャドビットが定数値を有するようにポーラ符号のためのパンクチャリングパターンを設計する方法であって、
パンクチャドビットが定数値を有するように凍結インデックス集合の一部を選択し、
最小数のビットインデックスを凍結し、復号誤り確率が比較的高い値のビットインデックスを凍結するようにパンクチャリング集合を選択する、
ことを特徴とする方法。
(付記25)
付記24に記載の方法であって、パンクチャリング位置が、列重み1を有するポーラ符号の生成行列の列を選択することによって決定される、ことを特徴とする方法。
(付記26)
付記24および25に記載の方法であって、列重み1を有する複数の列に応じて、それらのうちで復号誤り確率が最も高い値を有するインデックスがパンクチャリング用に選択される、ことを特徴とする方法。
(付記27)
付記24−26のいずれか1項に記載の方法であって、パンクチャリング用に選択された前記列インデックスにおいて値1を有する前記生成行列の行が凍結インデックス集合に含められる、ことを特徴とする方法。
(付記28)
付記25に記載の方法であって、前記選択された列に対応するインデックスが凍結ビットの位置の凍結集合に含められる、ことを特徴とする方法。
(付記29)
付記24−28のいずれか1項に記載の方法であって、前記凍結集合が、
前記凍結インデックス集合の部分を、前記パンクチャドビットが前記定数値を有するように決定する第1動作と、
前記凍結インデックス集合の残りの部分を、前記第1動作により凍結集合に含まれない前記残りのインデックスから最も高い復号誤り確率を有するビットインデックスを選択することにより決定する第2動作と、
によって決定される、ことを特徴とする方法。
(付記30)
入力ベクトルを符号化してポーラ符号の符号語を出力する符号化器と、
凍結ビットの位置の凍結集合とパンクチャドビットの位置のパンクチャリング集合とを格納するように構成されたメモリと、
一組の命令を実行するように構成された少なくとも一つのプロセッサと、
からなり、前記一組の命令が、
a)パンクチャリング配列Qを初期化し、
b)0からN−1までの範囲内で整数kを選択し、
c)和集合UP(k)のサイズがMに等しくなるまで前記ステップb)を繰り返し、UP(k)は、{0,1, ...,N−1}におけるkに対する集合P(k)の和集合として計算され、
d)前記集合UP(k)が所定のメトリックに関して前記パンクチャリング配列Qより良くなると判断されると、前記パンクチャリング配列Qを前記集合UP(k)によって更新し、
e)前記所定のメトリックに関して最良のパンクチャリング配列Qが得られるまで前記ステップb)、c)およびd)を繰り返し、
f)前記最良のパンクチャリング配列のビット反転置換を計算して前記パンクチャリング集合におけるパンクチャドビットの位置を生成する、
ステップからなる、ことを特徴とする通信装置。
(付記31)
付記30に記載の通信装置であって、前記ステップa)において、前記パンクチャリング配列が、0からN−1の範囲の元を非反復的に有する長さMのランダム選択配列へ初期化される、ことを特徴とする通信装置。
(付記32)
付記30に記載の通信装置であって、前記ステップa)において、前記パンクチャリング配列が、付記16−22のいずれか1項に記載の方法により生成される良好なパンクチャリング配列へ初期化される、ことを特徴とする通信装置。
(付記33)
付記30−32のいずれか1項に記載の通信装置であって、前記ステップb)において、前記集合P(k)は次式により算出され、
ここで、uは{0、1、・・・、N−1}における整数であり、
は、全てのr=0、1、・・・、n−1に対してu>=kであることを表わし、ここで、uおよびkは、それぞれuおよびkの二進展開のr番目のビットを表す、
ことを特徴とする通信装置。
(付記34)
付記30−33のいずれか1項に記載の通信装置であって、前記ステップd)において、前記所定メトリックが
和集合UP(k)および前記パンクチャリング配列Qにそれぞれ含まれるインデックスの復号誤り確率の合計;
前記パンクチャド分極行列の指数;および
前記パンクチャド符号の最小距離、
の少なくとも一つである、
ことを特徴とする通信装置。
(付記35)
付記30−34のいずれか1項に記載の通信装置であって、前記ステップe)において、前記ステップb)、c)およびd)が所定回数だけ繰り返されることで、選択されたメトリックに関して、前記最良のパンクチャリング配列を生成し、あるいはしらみつぶし探索を実行する回数だけ繰り返されることで、前記最良のパンクチャリング配列を生成する、
ことを特徴とする通信装置。
(付記36)
付記30−35のいずれか1項に記載の通信装置であって、前記ステップe)において、前記最良のパンクチャリング配列のインデックスが凍結設定される、
ことを特徴とする通信装置。
(付記37)
付記30−36のいずれか1項に記載の通信装置であって、前記ステップf)において得られた前記パンクチャリング集合における前記インデックスに対応するビットが、送信前に、前記符号化された符号語でパンクチャリングされる、
ことを特徴とする通信装置。
(付記38)
付記30−37のいずれか1項に記載の前記通信装置を有する送信装置と、
前記送信装置から受信した符号化された符号語を復号する復号器を有する受信装置と、
を有し、パンクチャドビットが前記復号器へ通知される定数値を有する、
ことを特徴とする通信システム。
(付記39)
付記38に記載の通信システムであって、
前記復号器が、前記パンクチャドビットの初期対数尤度比の値を正あるいは負の無限大の少なくとも一つに設定する、ことを特徴とする通信システム。
101 送信機
103 FEC符号化器
104 パンクチャリング部
105 変調器
106 凍結集合メモリ
107 パンクチャリング集合メモリ
201 受信機
202 復調器
203 デパンクチャリング部
204 FEC復調器
205 復号メッセージ処理部

Claims (10)

  1. 入力ベクトルを符号化してポーラ符号の符号語を出力する符号化器と、
    凍結ビットの位置の凍結集合とパンクチャドビットの位置のパンクチャリング集合とを格納するように構成されたメモリと、
    一組の命令を実行するように構成された少なくとも一つのプロセッサと、
    からなり、前記一組の命令が、
    a)パンクチャドビットが定数値を有するように前記凍結集合を設定し、
    b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、
    c)前記ステップa)およびb)に従って選択された複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、
    d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、
    e)前記ステップd)において得られた配列のビット反転置換を実行し前記パンクチャリング集合におけるパンクチャドビットの位置を生成し、前記パンクチャリング集合のインデックスでのポーラ符号の符号ビットが送信されない
    ステップからなる、ことを特徴とする通信装置。
  2. 請求項1に記載の通信装置であって、
    前記ステップb)において、単一のインデックスが前記ステップa)に従って凍結されることを特徴とする通信装置。
  3. 請求項1または2に記載の通信装置であって、
    前記ステップb)において、重み1を有する少なくとも1つの列がポーラ符号のための生成行列から選択され
    重み1を有する複数の列が得られる条件下で、前記ステップc)が、重み1を有する複数の列の復号誤り確率を比較し、前記最も高い復号誤り確率を有する一つの列を選択する、
    ことを特徴とする通信装置。
  4. 請求項に記載の通信装置であって、前記少なくとも一つのプロセッサが更に命令を実行し、前記命令が
    前記ステップc)において、前記一つの列における値1の位置に対応する行のインデックスを前記凍結集合に含めるステップと、
    前記ステップd)における前記インデックス配列を凍結ビットの位置として前記凍結集合に含めるステップと、
    を有することを特徴とする通信装置。
  5. 請求項1−のいずれか1項に記載の通信装置であって、
    前記ステップd)が、更に、
    前記ステップc)により得られたインデックスに対応するポーラ符号の生成行列の行および列を、それぞれ全ゼロ行および全ゼロ列に置き換える、
    ことを特徴とする通信装置。
  6. 請求項に記載の通信装置であって、
    前記ステップd)が、更に、
    前記ステップd)後の凍結集合の元の数が前記凍結集合の所望の元の数より少ない条件下で、前記凍結集合に含まれていない復号誤り確率の最も高い値を有する少なくとも一つのインデックスを前記凍結集合に含めるために選択する、
    ことを特徴とする通信装置。
  7. 請求項1−のいずれか1項に記載の通信装置であって、
    前記プロセッサが前記命令を実行して以下の式を計算し、
    ここで、Nはポーラ符号の符号長、iは0以上N未満の整数、P (N)は符号長N(N>=2)のときのP(N)のi番目の元、P(N)前記ステップd)のインデックス配列、P (1)=0である、
    ことを特徴とする通信装置。
  8. ポーラ符号のための符号化器を含む送信装置としてコンピュータを機能させるプログラムであって、
    a)パンクチャドビットが定数値を有するように凍結集合を設定し、
    b)最小数のインデックスが前記ステップa)に従って凍結されるようにパンクチャドビットの位置を選択し、
    c)前記ステップa)およびb)に従って複数のインデックスのうち最も高い復号誤り確率を有するインデックスを凍結し、
    d)前記ステップb)およびc)を所定回数反復することでインデクス配列を生成し、
    e)前記ステップd)において得られた配列のビット反転置換を実行して前記パンクチャリング集合におけるパンクチャドビットの位置を生成し、前記パンクチャリング集合のインデックスでのポーラ符号の符号ビットが送信されない
    命令からなることを特徴とするプログラム。
  9. パンクチャドビットが定数値を有するようにポーラ符号のためのパンクチャリングパターンを設計する方法であって、
    パンクチャドビットが定数値を有するように凍結インデックス集合の一部を選択し、
    最小数のビットインデックスを凍結するようにパンクチャリング集合を選択する、
    ことを特徴とする方法。
  10. 請求項に記載の方法であって、前記凍結集合が、
    前記凍結インデックス集合の部分を、前記パンクチャドビットが前記定数値を有するように決定する第1動作と、
    前記凍結インデックス集合の残りの部分を、前記第1動作により凍結集合に含まれない前記残りのインデックスから最も高い復号誤り確率を有するビットインデックスを選択することにより決定する第2動作と、
    によって決定される、ことを特徴とする方法。
JP2019520907A 2016-10-21 2016-10-21 ポーラ符号のためのパンクチャリングパターンの設計 Active JP6734577B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/004661 WO2018073850A1 (en) 2016-10-21 2016-10-21 Design of puncturing pattern for polar codes

Publications (2)

Publication Number Publication Date
JP2019533945A JP2019533945A (ja) 2019-11-21
JP6734577B2 true JP6734577B2 (ja) 2020-08-05

Family

ID=62019281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019520907A Active JP6734577B2 (ja) 2016-10-21 2016-10-21 ポーラ符号のためのパンクチャリングパターンの設計

Country Status (3)

Country Link
US (1) US20190260398A1 (ja)
JP (1) JP6734577B2 (ja)
WO (1) WO2018073850A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020005088A1 (en) * 2018-06-25 2020-01-02 Huawei Technologies Co., Ltd Construction of punctured polar code
CN112398484B (zh) * 2019-08-15 2024-04-23 华为技术有限公司 一种编码方法及相关设备
CN111200444A (zh) * 2020-01-16 2020-05-26 西安电子科技大学 基于可靠性的系统极化码删余方法及系统
CN113315600B (zh) * 2020-02-26 2022-07-22 北京大学 一种系统极化码均匀凿孔方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9007241B2 (en) * 2013-09-16 2015-04-14 Seagate Technology Llc Reduced polar codes
WO2017194133A1 (en) * 2016-05-12 2017-11-16 Huawei Technologies Co., Ltd. Puncturing and shortening of polar codes
EP3247042B1 (en) * 2016-05-13 2020-09-30 Mediatek Inc. Bit puncturing for polar codes
US10291264B2 (en) * 2016-06-17 2019-05-14 Huawei Technologies Co., Ltd. Systems and methods for rate matching when using general polar codes
CN109075803B (zh) * 2016-07-27 2020-11-06 华为技术有限公司 具有打孔、缩短和扩展的极化码编码

Also Published As

Publication number Publication date
WO2018073850A1 (en) 2018-04-26
JP2019533945A (ja) 2019-11-21
US20190260398A1 (en) 2019-08-22

Similar Documents

Publication Publication Date Title
US10326478B2 (en) Apparatus and method for encoding and decoding data in twisted polar code
Shin et al. Design of length-compatible polar codes based on the reduction of polarizing matrices
Korada Polar codes for channel and source coding
Niu et al. Beyond turbo codes: Rate-compatible punctured polar codes
JP4425282B2 (ja) 符号化方法および符号化装置
JP6734577B2 (ja) ポーラ符号のためのパンクチャリングパターンの設計
US8245119B2 (en) Source-channel approach to channel coding with side information
US10541710B2 (en) Devices and methods implementing polar codes
CN103746708A (zh) 一种Polar-LDPC级联码的构造方法
Thomas et al. Polar coding for the binary erasure channel with deletions
Trifonov Randomized chained polar subcodes
WO2018179246A1 (en) Check bit concatenated polar codes
KR101327505B1 (ko) 이진 이산 무기억 대칭 채널에서 연속 제거 복호 알고리즘을 이용한 송신기 및 수신기
KR101276845B1 (ko) 복수의 레이어들을 이용하여 ldpc 복호화를 수행하는방법
Hehn et al. Improved iterative decoding of LDPC codes from the IEEE WiMAX standard
Liang et al. Rateless transmission of polar codes with information unequal error protection
Schnelling et al. Rateless codes based on punctured polar codes
Tuntoolavest et al. On adjusting vector symbol decoding for many different nonbinary convolutional codes
Bocharova et al. LDPC codes over the BEC: Bounds and decoding algorithms
WO2019042543A1 (en) DECODING CONVOLUTIVE TURBO-CODES OF LOW DENSITY PARITY CHECK
Trifonov Successive cancellation decoding of Reed-Solomon codes
Doğan An investigation on belief propagation decoding of polar codes
Timmel Polar Coding in Certain New Transmission Environments
Hanif Design of Single Kernel Polar Codes with Exible Lengths
Kang The Advanced Decoding Schemes for Low-density Parity-check Codes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190418

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190418

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200623

R150 Certificate of patent or registration of utility model

Ref document number: 6734577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150