JP2019533345A - ポーラー符号を使用してデータを符号化するための方法及び装置 - Google Patents

ポーラー符号を使用してデータを符号化するための方法及び装置 Download PDF

Info

Publication number
JP2019533345A
JP2019533345A JP2019514216A JP2019514216A JP2019533345A JP 2019533345 A JP2019533345 A JP 2019533345A JP 2019514216 A JP2019514216 A JP 2019514216A JP 2019514216 A JP2019514216 A JP 2019514216A JP 2019533345 A JP2019533345 A JP 2019533345A
Authority
JP
Japan
Prior art keywords
subchannels
subchannel
bits
weight
row
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.)
Granted
Application number
JP2019514216A
Other languages
English (en)
Other versions
JP6859429B2 (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2019533345A publication Critical patent/JP2019533345A/ja
Application granted granted Critical
Publication of JP6859429B2 publication Critical patent/JP6859429B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • 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
    • 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • 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/11Error 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 using multiple parity bits
    • 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/611Specific encoding aspects, e.g. encoding by means of 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/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/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
    • 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/0041Arrangements at the transmitter end
    • 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/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables
    • 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/0057Block 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/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/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
    • H04L1/0063Single parity check
    • 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/0064Concatenated codes
    • H04L1/0065Serial concatenated codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (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)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

実施例の技術は、サブチャネルにパリティビットをこれらの行重みに基づいてマッピングする。サブチャネルのための行重みは、クロネッカー行列の対応する行の中の「1」の数、又は2の累乗、ただし、指数(すなわち、ハミング重み)がサブチャネルインデックスのバイナリ表現における「1」の数であるもの(更に以下に説明する)として見なされてもよい。一実施例では、特定の行重み値を有する候補サブチャネルがパリティビットのために確保される。その後、K個の情報ビットは、K個の最も信頼性の高い残りのサブチャネルにマッピングされてもよく、複数の凍結ビット(例えば、N-K個)は、最も信頼性の低い残りのサブチャネルにマッピングされてもよい。その後、パリティビットは、候補サブチャネルにマッピングされ、パリティビット値は、情報ビットの関数に基づいて決定される。

Description

[関連出願への相互参照]
この特許出願は、「Method and device for assigning dynamic frozen bits and constructing a Parity Function on them in a Polar code」という名称で2016年9月15日に出願された米国仮特許出願62/395,312、「Method and device for assigning dynamic frozen bits and constructing a Parity Function on them in a Polar code」という名称で2016年9月19日に出願された米国仮特許出願62/396,618、「Method and Device For Parallel Polar Code Encoding/Decoding」という名称で2016年9月30日に出願された米国仮特許出願62/402,862、「Method for Constructing a Parity Check (Pc) Based Polar Code Using a Look-Up-Table」という名称で2016年12月9日に出願された米国仮特許出願62/432,448、「Method and system to parallelize parity check (PC)-Polar-Construction」という名称で2016年12月9日に出願された米国仮特許出願62/434,416、「Method for Constructing a parity check (PC) based Polar Code using a Look-up-Table」という名称で2016年12月13日に出願された米国仮特許出願62/433,127、及び「Method and Apparatus for Encoding Data Using a Polar Code」という名称で2017年9月8日に出願された米国特許出願15/699,976の優先権を主張し、これらの内容が再現されているかのように、これらの全てを参照により援用する。
[技術分野]
本発明は、概してデータ送信のための方法及び装置に関し、特に符号化のための方法及び装置に関する。
ポーラー符号は、全体の送信容量を改善するために通信路分極を利用する線形ブロック誤り訂正符号である。特に、ポーラー符号は、より信頼性の低いサブチャネル(例えば、より雑音のあるサブチャネル)上で固定(又は凍結)ビットを送信する一方で、より信頼性の高いサブチャネル(例えば、より雑音の少ないサブチャネル)上で情報ビットを送信するように設計される。ポーラー符号化は、「Channel Polarization and Polar codes」という名称の学術文献により詳細に記載されており、この内容が再現されているかのように、これを参照により援用する。
分極符号化のための方法及び装置を記載するこの開示の実施例により、技術的利点が概して達成される。
実施例によれば、ポーラー符号でデータを符号化するための方法が提供される。この実施例では、当該方法は、デバイスのエンコーダで符号化データを取得するために、情報ビット及び少なくとも1つのパリティビットをポーラー符号化するステップを含む。少なくとも1つのパリティビットは、重みパラメータに基づいて少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルに配置される。当該方法は、符号化データを他のデバイスに送信するステップを更に含む。一例では、重みパラメータは最小重みを含む。このような例では、少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は最小重みの2倍を有する第2の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、当該方法は、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも1つのサブチャネルを選択するステップを更に含んでもよい。最小重みを有する少なくとも1つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、順序付けされたサブチャネルのセグメント、最小重みを有する少なくとも1つのサブチャネルは、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む。その例又は他の例では、エンコーダは、少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用してもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のうちいずれか又は他の例では、当該方法は、順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされることを更に含む。前述の例のうちいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよい。当該方法は、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する、ステップを更に含んでもよい。このような例では、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するステップは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数が所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するステップを含んでもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、当該方法は、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルをスキップするステップを更に含んでもよい。この方法を実行するための装置も提供される。
更に他の実施例によれば、ポーラー符号でデータを符号化するように構成されたデバイスが提供される。この実施例では、当該デバイスは、符号化データを取得するために、情報ビット及び少なくとも1つのパリティビットをポーラー符号化するように構成されたエンコーダを含む。少なくとも1つのパリティビットは、重みパラメータに基づいて少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルに配置され、符号化データを他のデバイスに送信するように構成されたインタフェースである。前述の符号化の実施例のうちいずれかの一例では、重みパラメータは最小重みを含む。このような例では、少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は最小重みの2倍を有する第2の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも1つのサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最小重みを有する少なくとも1つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、デバイス/エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも1つのサブチャネルを選択し、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数が所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択してもよい。その例又は他の例では、エンコーダは、少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成されてもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のいずれか又は他の例では、当該デバイスの順序付けされたサブチャネルは、信頼性メトリックに基づいて順序付けされてもよい。前述の例のいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよく、エンコーダは、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するように更に構成されてもよい。サブチャネルの行重みは、クロネッカー行列の行の中の1の数である。行はサブチャネルに対応してもよい。このような例では、当該デバイスは、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択してもよい。エンコーダは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数nが所定の数Fpより大きいとき、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、エンコーダは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルをスキップするように更に構成されてもよい。
更に他の実施例によれば、データを符号化するための他の方法が提供される。この実施例では、当該方法は、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、1つ以上のパリティビットのために1つ以上のサブチャネルを配分するステップと、1つ以上のパリティビットのために配分された1つ以上のサブチャネルに情報ビットをマッピングせずに、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルに情報ビットをマッピングするステップとを含む。当該方法は、符号化ビットストリームを取得するために、ポーラー符号を使用して情報ビット及び1つ以上のパリティビットを符号化するステップと、符号化ビットストリームを送信するステップとを更に含んでもよい。前述の符号化の実施例のうちいずれかの一例では、サブチャネルのための行重みは、クロネッカー行列の行の中の1の数を表し、行はサブチャネルに対応する。その例又は他の例では、行重みは、最小行重みを少なくとも含んでもよい。このような例では、当該方法は、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、1つ以上のパリティビットのために1つ以上のサブチャネルを配分するステップと、1つ以上のパリティビットのために、サブチャネルのサブセット内の最小行重みに等しい行重みを有する複数のサブチャネルを配分するステップとを含んでもよい。その同じ例又は他の例では、配分されたサブチャネルの数は1つでもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するようにこれらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内のサブチャネルの最も信頼性の高いサブセットを含む。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネルを含んでもよい。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、K+FP個のサブチャネルを含んでもよく、Kは情報ビットに関連する情報ブロック長であり、Fpは1つ以上のパリティビットの数を示す。その同じ例又は他の例では、サブチャネルのサブセット内で最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、1つ以上のパリティビットのために配分されてもよい。前述の例のうちいずれか又は他の例では、1つ以上のパリティビットは、1つ以上のパリティ検査(parity check, PC)ビットを含んでもよい。このような例では、符号化ビットストリームを取得するために、ポーラー符号を使用して情報ビット及び1つ以上のPCビットを符号化するステップは、情報ビットの値の関数として1つ以上のPCビットのための1つ以上の値を決定するステップと、PCビットのために配分された少なくとも1つ以上のサブチャネルに1つ以上のPCビットをマッピングするステップとを含んでもよい。
更に他の実施例では、ポーラー符号でデータを符号化するためのデバイスが提供される。この実施例では、当該デバイスは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、1つ以上のパリティビットのために1つ以上のサブチャネルを配分し、1つ以上のパリティビットのために配分された1つ以上のサブチャネルに情報ビットをマッピングせずに、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルに情報ビットをマッピングするように構成される。当該デバイスは、符号化ビットストリームを取得するために、ポーラー符号を使用して情報ビット及び1つ以上のパリティビットを符号化し、符号化ビットストリームを送信するように更に構成される。前述の符号化の実施例のうちいずれかの一例では、サブチャネルのための行重みは、クロネッカー行列の行の中の1の数を表し、行はサブチャネルに対応する。その例又は他の例では、行重みは、最小行重みを少なくとも含んでもよい。このような例又は他の例では、当該デバイスは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、1つ以上のパリティビットのために1つ以上のサブチャネルを配分してもよい。当該デバイスは、1つ以上のパリティビットのために、サブチャネルのサブセット内の最小行重みに等しい行重みを有する複数のサブチャネルを配分するように更に構成されてもよい。前述の例のうちいずれか又は他の例では、配分されたサブチャネルの数は1つでもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するようにこれらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内のサブチャネルの最も信頼性の高いサブセットを含む。前述の例のうちいずれか又は他の例では、サブチャネルの最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネルを含んでもよく、サブチャネルの最も信頼性の高いサブセットは、K+FP個のサブチャネルを含み、Kは情報ビットに関連する情報ブロック長であり、Fpは1つ以上のパリティビットの数を示す。その同じ例又は他の例では、サブチャネルのサブセット内で最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、1つ以上のパリティビットのために配分される。その同じ例又は他の例では、1つ以上のパリティビットは、1つ以上のパリティ検査(parity check, PC)ビットを含む。
更に他の実施例によれば、デバイスのための復号化方法が提供される。この実施例では、当該方法は、他のデバイスから、符号化データに基づく信号を受信するステップを含み、符号化データはポーラー符号で情報ビット及び少なくとも1つのパリティビットを符号化することにより生成される。この実施例では、少なくとも1つのパリティビットは、重みパラメータに基づいて選択された少なくとも1つのサブチャネルに配置される。当該方法はまた、デバイスのデコーダで、情報ビットを取得するために、ポーラー符号及び少なくとも1つのパリティビットを使用して信号を復号化するステップを含む。
一例では、重みパラメータは最小重みを含む。このような例では、少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は最小重みの2倍を有する第2の数のサブチャネルに配置されてもよい。その例又は他の例では、選択された少なくとも1つのサブチャネルは最小重みを有し、少なくとも1つのサブチャネルは、順序付けされたサブチャネルのセグメントから選択される。最小重みを有する少なくとも1つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その例又は他の例では、少なくとも1つのパリティビットのそれぞれの値は、パリティ検査関数に基づく。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のうちいずれか又は他の例では、順序付けされたサブチャネルは、信頼性メトリックに基づいて順序付けされる。前述の例のうちいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよく、選択された少なくとも1つのサブチャネルは、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有し、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する。このような例では、その同じ例又は他の例では、最低の行重みを有する少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択される。その例又は他の例では、情報ビットのためのサブチャネルは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルをスキップすることにより、サブチャネルの順序付けされた系列内で選択される。この方法を実行するための装置も提供される。
更に他の実施例によれば、デバイスのための復号化方法が提供される。この実施例では、当該方法は、他のデバイスから、符号化ビットストリームに基づく信号を受信するステップを含み、符号化ビットストリームはポーラー符号で情報ビット及び1つ以上のパリティビットを符号化することにより生成される。1つ以上のパリティビットは、サブチャネルのセットのサブセット内でサブチャネルの行重みに基づいて配分された1つ以上のサブチャネルにマッピングされ、情報ビットは、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルにマッピングされる。当該方法はまた、情報ビットを取得するために、ポーラー符号及び1つ以上のパリティビットを使用して信号を復号化するステップを含む。
前述の復号化の実施例のうちいずれかの一例では、サブチャネルのための行重みは、クロネッカー行列の行の中の1の数を表し、行はサブチャネルに対応する。その例又は他の例では、行重みは、最小行重みを少なくとも含んでもよい。このような例では、1つ以上のサブチャネルは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、1つ以上のパリティビットのために配分される。他の例では、サブチャネルのサブセット内の最小行重みに等しい行重みを有する複数のサブチャネルは、1つ以上のパリティビットのために配分される。その同じ例又は他の例では、配分されたサブチャネルの数は1つでもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するようにこれらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内のサブチャネルの最も信頼性の高いサブセットを含む。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネルを含んでもよい。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、K+FP個のサブチャネルを含んでもよく、Kは情報ビットに関連する情報ブロック長であり、Fpは1つ以上のパリティビットの数を示す。その同じ例又は他の例では、サブチャネルのサブセット内で最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、1つ以上のパリティビットのために配分されてもよい。前述の例のうちいずれか又は他の例では、1つ以上のパリティビットは、1つ以上のパリティ検査(parity check, PC)ビットを含んでもよい。このような例又は他の例では、1つ以上のPCビットのための1つ以上の値は、情報ビットの値の関数である。
本開示及びその利点のより完全な理解のために、ここで、添付図面と共に挙げられる以下の説明に参照が行われる。
どのようにポーラー符号化生成行列がカーネルから生成できるかの一例を示す図である。 コードワードを生成するためのポーラー符号化生成行列の例示的な使用を示す図、及び例示的なポーラーエンコーダの概略図である。 最大の所与のリストサイズにより幅が制限され且つ逐次除去リスト(Successive Cancellation List, SCL)ポーラーデコーダで使用される例示的な決定リスト木の一部を示す図である。 2×2のカーネルに基づくポーラーエンコーダの例を示すブロック図である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのように行重みが計算されて使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 パリティ検査(parity check, PC)ビットのために確保するための候補サブチャネルを選択するために、どのようにハミング重みが使用されるかを説明するための表である。 情報ビットの系列を符号化するための実施例の方法のフローチャートである。 情報ビットの系列を符号化するための実施例の方法のフローチャートである。 情報ビットの系列を符号化するための実施例の方法のフローチャートである。 通信システムのブロック図である。 ポーラー符号化中に凍結ビットを選択するための実施例の方法のフローチャートである。 ポーラーエンコーダ/デコーダにおいて実現されるレジスタのブロック図である。 異なるポーラー符号により達成されるブロック誤り率(block error rate, BLER)のグラフである。 異なるポーラー符号により達成されるブロック誤り率(block error rate, BLER)のグラフである。 異なるポーラー符号により達成されるブロック誤り率(block error rate, BLER)のグラフである。 異なるポーラー符号により達成されるブロック誤り率(block error rate, BLER)のグラフである。 データストリームを符号化するために異なるポーラー符号を使用するときに達成される推定雑音レベルのグラフである。 データストリームを符号化するために異なるポーラー符号を使用するときに達成される推定雑音レベルのグラフである。 実施例の無線デバイスのブロック図である。 PCビットのために確保されるべきサブチャネルを識別するために並列比較操作を使用するための実施例の技術の図である。 情報ビットの系列を符号化するための実施例の方法のフローチャートである。 情報ビットの系列を符号化するための他の実施例の方法のフローチャートである。 情報ビットの系列を符号化するための他の実施例の方法のフローチャートである。 他の実施例のエンコーダの図である。 サブチャネルの順序付けされた系列の図である。 パリティ検査デコーダにより使用される実施例のサイクルシフトレジスタ操作の図である。 パリティ検査関数の図である。 情報ビットの系列を符号化するための実施例の方法のフローチャートである。 実施例の処理システムのブロック図である。 実施例のトランシーバのブロック図である。
実施例の製造及び使用について、以下に詳細に議論する。しかし、本開示は、広範囲の具体的な状況に具現できる多くの適用可能な発明概念を提供することが認識されるべきである。議論される具体的な実施例は、発明を製造及び使用するための具体的な方法の単なる例であり、発明の範囲を限定しない。
パリティビットは、受信機において復号化を補助して誤り検出又は訂正を容易にするために、ポーラー符号化中に情報ビットの列に追加されてもよい。「パリティ検査(parity check, PC)ビット」、「パリティビット」及び動的凍結ビットという用語は、この開示を通じて交換可能なように使用される。この開示の多くがパリティビットに関する発明の実施例を議論するが、パリティビットは特定の種類の補助ビットであり、ここに開示された原理は、他の誤り訂正ビット、又は巡回冗長検査(Cyclic Redundancy Check, CRC)ビット、チェックサムビット、ハッシュ関数ビット、暗号符号、反復符号又は誤り検出ビット若しくは符号等の符号のような、他の種類の補助ビットを使用して適用されてもよいことが認識されるべきである。いくつかの実施例では、パリティビットは、パリティ検査(parity check, PC)凍結ビット(又は略称「PFビット」)と呼ばれる。
ポーラー符号化中に(P個の)パリティビットを挿入するときに生じる1つの問題は、どのように(N個のサブチャネルの中から)パリティビットを送信するサブチャネルを選択するかということである。ポーラー符号化中にパリティビットを扱うための1つの選択肢は、最も信頼性の高いサブチャネルに、符号化されるべき(K個の)情報ビット(他の補助ビットも含んでもよい)をマッピングし、その後、最も信頼性の高いサブチャネルに情報ビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルに、パリティビットをマッピングすることである。他の選択肢は、最も信頼性の高いサブチャネルにパリティビットをマッピングし、その後、最も信頼性の高いサブチャネルにパリティビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルに、情報ビットをマッピングすることである。
シミュレーションは、これらの2つの選択肢が、一般的に、サブチャネルにパリティビットをこれらの行重みに基づいてマッピングする実施例の技術より低いレベルの性能を提供することを示している。サブチャネルのための行重みは、クロネッカー行列の対応する行の中の「1」の数、又は2の累乗、ただし、指数(すなわち、ハミング重み)がサブチャネルインデックスのバイナリ表現における「1」の数であるもの(更に以下に説明する)として見なされてもよい。一実施例では、特定の行重み値(例えば、最小行重みwmin又は最小行重みの2倍2*wmin)を有する候補サブチャネルが取り分けられ、パリティビットのために使用される。以下に提供される行重みを計算するための説明に基づいて認識できるように、パリティビットのために確保された候補サブチャネルは、必ずしも最も信頼性の高いサブチャネルであるとは限らない。候補サブチャネルが識別された後に、K個の情報ビットは、K個の最も信頼性の高い残りのサブチャネルにマッピングされ、複数の凍結ビット(例えば、N-K個)は、最も信頼性の低い残りのサブチャネルにマッピングされる。パリティビットは、候補サブチャネルにマッピングされ、パリティビット値は、情報ビットの関数に基づいて決定される。
サブチャネルのための行重みを決定するための多くの方法が存在する。一実施例では、行重みは、サブチャネルに関連するチャネルインデックスのハミング重みの関数として計算されてもよい。ハミング重みは、チャネルインデックスを表すバイナリ系列内の非ゼロの要素の数である。一例では、サブチャネル(N)は、これらのチャネル信頼性に基づいて順序付けされた系列(Q)にソートされ、それにより、順序付けされた系列(Q)は、これらの信頼性に基づいて昇順(Q0,Q1,…QN)にサブチャネルを列挙する(QNが最も信頼性の高いサブチャネルである)。その後、この開示を通じてwmin又はdminとして交換可能なように記される最小行重み値は、例えば、K個の情報ビットに使用される最も信頼性の高いKサブセット(例えば、Q(N-K+1)…QN)、又はK個の情報ビット及びP個のパリティビットに使用される最も信頼性の高い(K+P)サブセット(例えば、Q(N-K-P)…QN)のように、最も信頼性の高いチャネルのサブセットの行重みに基づいて識別されてもよい。その後、その最も信頼性の高いサブセット内の最小行重み値は、パリティビットのためのサブチャネルを確保するために使用されてもよい。
いくつかの実施例では、wminパラメータを動的に計算するプロセスが符号化操作に待ち時間を追加する場合、wminパラメータを識別するために、ルックアップテーブル(look up table, LUT)が使用できる。
特に、LUTに基づく技術は、ポーラー符号化中に使用され得る情報ブロック長(K)とマザー符号長(M)との潜在的な組み合わせの関数として、可能なwminパラメータを計算することにより、オフラインでルックアップテーブルを生成する。その後、ルックアップテーブルは、オンラインのポーラー符号化中にwminパラメータを決定するために使用される。表1は、符号パラメータを決定するために使用できるルックアップテーブルの例を提供し、これは、wminパラメータと、パリティビットのために確保されるべき候補サブチャネルの数を決定するために使用されるインデックス(f1,f2)とを含む(更に以下に説明する)。
Figure 2019533345
より大きいテーブルは典型的により長い検索時間を必要とするため、オンラインのポーラー符号化中にwminパラメータを識別するために必要な時間は、ルックアップテーブルのサイズに大きく影響される。その結果、エンコーダの待ち時間の要件は、ルックアップテーブルで利用可能な符号化の組み合わせの粒度を抑制してもよく、それにより、符号化性能に影響を与える。
この開示の他の実施例は、最小ハミング重み(umin)パラメータに基づいてパリティビットのためにサブチャネルを確保又は配分し、それにより、行重みの計算を回避する低い待ち時間の技術を提供する。前述のように、行重みは、ハミング重みの関数として計算されてもよい。一例では、式:rw=2hwに基づき、rwは所与のサブチャネルのための行重みであり、hwは所与のサブチャネルのためのチャネルインデックスのバイナリ表現のハミング重みである。記号「hw」及び「u」は、ここではハミング重みを示すように交換可能なように使用される。これから、最低のハミング重みに関連するサブチャネルはまた、最低の行重みを有することは明らかである。したがって、最も信頼性の高いチャネルのサブセット内のサブチャネル(例えば、Q(N-(K+Fp)),…QN)に関連するハミング重みに基づいて、最小ハミング重み(umin)を識別し、その後、パリティビットのためのサブチャネルを確保するために最小ハミング重みを使用することが可能である。
以下に説明するように、最小行重み値の2倍(2*wmin)は、パリティビットのためのサブチャネルを確保するために、wminと共に場合によって使用される。例えば、wminに等しい行重みを有する第1の数(例えば、f1)の最も信頼性の高いサブチャネルはパリティビットのために確保されてもよく、2*wminに等しい行重みを有する第2の数(例えば、f2)の最も信頼性の高いサブチャネルはパリティビットのために確保されてもよい。式:rw=2hwから、2*wminパラメータは、1に最小ハミング重みを加えたものに対応することが明らかである。したがって、この開示の実施例は、パリティビットのために、最小ハミング重みに等しいハミング重みを有する第1の数の最も信頼性の高いサブチャネルを確保し、パリティビットのために、1に最小ハミング重みを加えたものに等しいハミング重みを有する第2の数の最も信頼性の高いサブチャネルを確保してもよい。
以降でより詳細に以下に説明する本開示のこれら及び他の発明態様を理解するのを補助するために、ポーラー符号化の簡単な議論が提供される。図1は、例示的な例によって、どのようにポーラー符号化生成行列がカーネルG2100から生成できるかを示す図である。図1は例である点に留意すべきである。他の形式のカーネルも可能である。生成行列がカーネル(又はカーネルの組み合わせ)から生成される「ネスト型」方法から、分極が生じる。
図1における2倍クロネッカー積行列
Figure 2019533345
102及び3倍クロネッカー積行列
Figure 2019533345
104は、ポーラー符号化生成行列の例である。図1に示す生成行列の手法は、m倍クロネッカー積行列
Figure 2019533345
を生成するように拡張できる。
ポーラー符号は、行列G2100に基づいて、クロネッカー積行列から形成できる。長さN=2mのコードワードを有するポーラー符号について、生成行列は
Figure 2019533345
である。図2は、コードワードを生成するためのポーラー符号化生成行列の例示的な使用を示す図、及び例示的なポーラーエンコーダの概略図である。図2において、生成行列
Figure 2019533345
104は、長さ23=8のコードワードを生成するために使用される。コードワードxは、200で示すように、入力ベクトルu=[0 0 0 u3 0 u5 u6 u7]と生成行列
Figure 2019533345
104との積により形成される。入力ベクトルuは、情報ビットと、固定又は凍結ビットとで構成される。図2に示す具体的な例では、N=8であるので、入力ベクトルuは8ビットのベクトルであり、コードワードxは8ビットのベクトルである。入力ベクトルは、位置0、1、2及び4に凍結ビットを有し、位置3、5、6及び7に情報ビットを有する。コードワードを生成するエンコーダの例示的な実現方式が212で示され、凍結ビットは全て0に設定され、丸で囲まれた「+」の記号はモジュロ2加算を表す。図2の例では、N=8ビットの入力ベクトルは、K=4個の情報ビット及びN-K=4個の凍結ビットから形成される。この形式の符号はポーラー符号と呼ばれ、エンコーダはポーラーエンコーダと呼ばれる。ポーラー符号を復号化するためのデコーダはポーラーデコーダと呼ばれる。凍結ビットは、図2に示す例では0に設定される。しかし、凍結ビットは、エンコーダとデコーダとの双方に既知の他の固定ビット値に設定されてもよい。説明を容易にするために、全てが0の凍結ビットがここで考慮され、一般的には好ましくなり得る。
図3は、最大の所与のリストサイズにより幅が制限され且つSCLポーラーデコーダで使用される例示的な決定リスト木の一部を示す図である。図3において、リストサイズLは4である。5つのレベル302、304、306、308、310の決定木が示される。5つのレベルが示されるが、N個のビットを復号化するための決定木は、N+1個のレベルを有することが理解されるべきである。ルートレベル302の後の各レベルにおいて、4つまでの生き残り復号化経路のそれぞれは、1つのビットだけ拡張される。ルートノード320のリーフ又は子ノードは、第1のビットのための可能な選択肢を表し、以降のリーフノードは、以降のビットのための可能な選択肢を表す。例えば、ルートノード320からリーフノード330aへの復号化経路は、推定コードワードビット系列:0,1,0,0を表す。レベル308において、可能な経路の数はLより大きいので、最高の尤度を有するL個の経路(最善の経路メトリック(path metric)又はPM)が識別され、残りの経路は破棄される。レベル306において経路のソート及び除去の後に生き残った復号化経路が、図3に太線で示される。同様に、レベル310において、可能な経路の数が再びLより大きいので、最高の尤度を有するL個の経路(最善のPM)が識別され、残りの経路は再び破棄される。図示の例では、リーフノード330a、330b、330c及び330dで終端する経路が最高の尤度の経路を表す。リーフノード340a、340b、340c、340dで終端する経路は、破棄されるより低い尤度の経路である。
SCL復号化は、CRC補助リスト復号化と、純粋リスト(pure list)復号化とに更に分割できる。後者では、最高の尤度を有する生き残り経路が選択される。SC復号化は、純粋リスト復号化の特別な場合であり、リストサイズL=1である。CRC検査は、最終的な経路選択においてより良い誤り訂正性能を提供し得るが、SCL復号化において任意選択である。復号化中の最終的な経路選択においてCRCの代わりに及び/又はCRCと一緒に、入力ベクトルに含まれるパリティ又は「PC」ビットに基づくパリティ検査のような他の操作が使用されてもよい。
SCL復号化は、限られた符号サイズについてのポーラー符号の性能を改善し得る。しかし、低密度パリティ検査(Low Density Parity Check, LDPC)符号及びTurbo符号の同様の符号長及び符号レートと比べて、SCL復号化は、うまく設計されたLDPC及びTurbo符号より悪いブロック誤り率(Block Error Rate, BLER)を有し得る。CRC補助SCL(CRC-aided SCL, CA-SCL)復号化は、限られた符号長を有するポーラー符号のBLER性能を改善し得る。例えば、リストサイズL=32を有するCA-SCLデコーダは、同様の計算上の複雑性を有するLDPC及びTurbo符号よりかなり良い性能を提供し得る。
SCタイプのデコーダにより、ポーラー符号は、実際にチャネルをN個のサブチャネルに分割する。Nはマザー符号長と呼ばれ、2×2の行列であるポーラーカーネルに基づくArikanポーラー符号では常に2の累乗である。ポーラー符号のための符号構成への鍵は、ここではサブチャネルとも呼ばれるどのビットチャネルが情報ビットのために選択又は配分されるか、且つどのサブチャネルが凍結ビットのために配分されるかを決定することである。いくつかの実施例では、1つ以上のサブチャネルはまた、ここでは補助ビットと呼ばれる、PC、CRC及び/又は復号化を補助するために使用される他の種類のビットに配分される。分極理論に関して、凍結ビットのために配分されたサブチャネルは凍結サブチャネルと呼ばれ、情報ビットのために配分されたサブチャネルは情報サブチャネルと呼ばれ、更なる補助サブチャネルは、復号化を補助するために使用される補助ビットに配分されてもよい。いくつかの実施例では、補助ビットは、情報ビットの一形式であると考えられ、これらについて、より信頼性の高いサブチャネルが選択又は配分される。
2×2のArikanカーネルG2のクロネッカー積に基づくポーラーエンコーダについて前述した。図4は、2×2のカーネルに基づくポーラーエンコーダの例を示すブロック図である。サブチャネル及び符号化ビットが図4においてラベル付けされており、チャネルは、前述のようにポーラー符号によりN個のサブチャネルに分割される。情報ブロック及び凍結ビットは、N個のサブチャネルに配分され、結果のNサイズのベクトルは、N個の符号化ビットを含むコードワードを生成するために、ポーラーエンコーダによりN×Nのクロネッカー行列と乗算される。情報ブロックは、少なくとも情報ビットを含み、CRCビット又はパリティビットのような補助ビットも含んでもよい。サブチャネルセレクタは、情報ビット及びいすれかの補助ビットのために少なくともサブチャネルを選択するために、ポーラーエンコーダに結合されてもよく、いずれかの残りのサブチャネルは凍結サブチャネルである。
2×2のカーネル及びN×Nのクロネッカー行列に基づくポーラー符号について、Nは2の累乗である。この種類のカーネル及びこのようなカーネルに基づくポーラー符号は、ここでは例示的な例として議論される。素数カーネル(例えば、3×3又は5×5)のような他の形式の分極カーネル、又はより高次のカーネルを生成するための(素数又は非素数)カーネルの組み合わせは、符号サブチャネルの間で分極を生じ得る。パンクチャリング、短縮、ゼロパディング及び/又は反復のような符号化ビット処理が、例えば、レートマッチング又は他の目的のために、2×2のカーネル又は他の種類のカーネルに基づくポーラー符号と共に使用されてもよい点にも留意すべきである。
SC、SCL又はCA-SCL復号化の結果として、分極現象がサブチャネル上に現れる。いくつかのサブチャネルは高い容量を有し、いくつかのサブチャネルは低い容量を有する。言い換えると、いくつかのサブチャネルは同等に高い信号対雑音比(Signal-to-Noise Ratio, SNR)を有し、他のものは低いSNRを有する。これらのメトリックは、サブチャネルの「信頼性」を定量化又は分類するために使用され得る特性の例である。サブチャネル信頼性を示す他のメトリックも使用されてもよい。
符号構成は、符号レート(情報ビットの数K、又は何個のサブチャネルが情報ビットを搬送すべきであるか)を決定し、情報ビットを搬送するためにN個の利用可能なサブチャネルの中の特定のK個のサブチャネルを選択することを伴う。ここでの参照を容易にするため、情報ビットは、符号化されるべき入力ビットと、場合によってはCRCビット、パリティビット及び/又は復号化を補助するために使用される他の補助ビットとを含んでもよい。サブチャネル選択は、サブチャネルの信頼性に基づき、典型的には、最高の信頼性のサブチャネルが、情報ビットを搬送するための情報サブチャネルとして選択される。
サブチャネル信頼性は、例えば、1つ以上の順序付けされた系列において指定されてもよい。サブチャネルの単一のネスト型のSNR独立の順序付けされた系列が符号長Nmaxについて計算されてもよく、より短い符号長Nについての順序付けされた系列は、より長いNmax系列から選択される。異なるマザー符号長Niに関する複数の順序付けされた系列が代わりに計算されてもよく、マザー符号長系列の1つは、好ましい符号長に基づいて特定の符号のために選択されてもよい。他の可能な選択肢は、SNR値に関する複数の順序付けされた系列を計算し、例えば、測定されたSNRに基づいて順序付けされた系列を選択することを伴う。
サブチャネル信頼性を計算するためのいくつかの方法も存在する。例えば、R. Pedarsani, 「Polar Codes: Construction and Performance Analysis」, June 2011, EPFL master projectにおいて提案されているジニーエイデッド(genie-aided)方法によれば、エンコーダは、異なるサブチャネル上でデコーダに既知のトレーニング系列を符号化する。デコーダは、復号化結果をエンコーダにフィードバックし、それにより、エンコーダは、各サブチャネルについての信頼性統計を計算でき、サブチャネル上のうまく適合した信頼性ベクトルが取得される。
「Evaluation and Optimization of Gaussian Approximation for Polar Codes」, May 2016という名称の非特許文献の刊行物において提案されているガウス近似(Gaussian approximation, GA)方法は、各符号化ビットが等しい誤り確率にさらされることを仮定する。誤り確率から、サブチャネル上の信頼性が密度発展(density evolution, DE)アルゴリズムで取得される。符号化ビット上のこの誤り確率は、受信SNRに関係するので、この方法はSNRに関係し、計算上複雑である。
カーネル及びその生成行列から順序付けされた系列を生成するためのいくつかの方法が存在する。全ての方法が必ずしもネスト型の系列をもたらし得るとは限らず、このネスト型の系列は必ずしも一意になり得るとは限らない。ネスト型の順序付けされた系列は、例えば、2016年7月29日に出願された中国特許出願第CN201610619696.5号に開示された分極重みに基づいて、或いは2016年12月23日に出願された米国特許出願第62/438565号に開示されたハミング重みに基づいて生成されてもよく、これらの双方を参照により完全に援用する。他の技術も使用されてもよく、或いは代わりに使用されてもよい。
どのようにハミング重みが補助サブチャネルを選択するための第2のメトリックとして使用できるかの例は、2016年12月12日に出願された米国仮出願第62/433127号に、より詳細に議論されており、これを参照により援用する。ハミング重みは、第2のメトリックとして使用されてもよいメトリックの単なる例である点に留意すべきである。他の例は、ハミング重みの関数を含む(例えば、2016年12月9日に出願され、参照により援用する米国仮出願第62/432448に開示された行重み。一般的に、(分極)信頼性を示す他のメトリックも、第2のメトリックとして使用できる。更なる代案では、第2のメトリックは第1のメトリックと異なるが、分極信頼性にも関係するか、或いは分極信頼性を示す。しかし、更に他の代案では、サブチャネルの自然の順序が第2のメトリックとして使用でき、それにより、例えば、(例えば、自然数の昇順における)情報サブチャネルの終わりのサブチャネルが補助サブチャネルとして選択される。
いくつかの実施例では、2つより多くのメトリックが補助サブチャネルを選択するために使用されてもよい。さらに、前述のメトリックを使用する様々な補助サブチャネル選択アルゴリズムのいずれかが使用されてもよい。補助サブチャネルを選択するための他の可能性も存在する。
前述のように、受信機において誤り訂正又は検出を容易にして復号化を補助するために、CRC又はパリティビットのような補助ビットが、入力ビットストリームに含まれてもよい。ポーラー符号化中に補助ビットを挿入するときに生じる1つの問題は、どのように補助ビットを送信するサブチャネルを選択するかである。特に、ポーラーエンコーダは、一般的には、凍結ビットを、より信頼性の低いサブチャネルにマッピングするか、或いはさもなければより信頼性の低いサブチャネル上で送信する一方で、情報ビットを、最も信頼性の高いサブチャネルにマッピングするか、或いはさもなければ最も信頼性の高いチャネル上で送信する。加えて補助ビットが符号化ビットストリームに取り入れられるとき、問題は、最も信頼性の高いチャネルが、パリティビットに使用されるべきであるか情報ビットに使用されるべきであるかになる。
ポーラー符号化中にパリティビットを扱うための1つの選択肢は、(例えば、順序付けされた系列に基づいて)最も信頼性の高いサブチャネルに情報ビットをマッピングし、その後、最も信頼性の高いサブチャネルに情報ビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルにパリティビットをマッピングすることである。このように、情報ビットは、パリティビットより信頼性の高いチャネル上で送信される。他の選択肢は、最も信頼性の高いサブチャネルにパリティビットをマッピングし、その後、最も信頼性の高いサブチャネルにパリティビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルに情報ビットをマッピングすることである。このように、パリティビットは、情報ビットより信頼性の高いチャネル上で送信される。
シミュレーションは、パリティビット及び情報ビットが最も信頼性の高いチャネル上に散在するハイブリッド手法により、より高いレベルの符号化性能が実際に達成できることを示している。情報ビットのためのサブチャネルの選択は、(例えば、順序付けされた系列により示されるように)サブチャネル分極信頼性に基づいてもよいが、パリティビットのためのサブチャネルの選択は、例えば、これらのパリティサブチャネルの位置が情報サブチャネルの中でよりランダムに或いはより効率的に分散されることを可能にするために、分極信頼性メトリックより多くに基づいてもよい。
いくつかの実施例では、2つの異なるメトリックがパリティ又はPCサブチャネル選択のために使用される。例えば、第1のメトリックは分極信頼性メトリック(例えば、順序付けされた系列)とすることができ、第2のメトリックはサブチャネルのハミング重み(又は行重みのようなハミング重みの関数)のような重みとすることができる。一実施例では、所望の数のパリティビットを搬送するために必要な全てのサブチャネルは、1つより多くのメトリック、例えば、分極信頼性メトリック及びハミング/行重みに基づいて選択され、一方で、他の実施例では、パリティビットのためのサブチャネルのサブセットは、1つより多くのメトリック、例えば、分極信頼性メトリック及びハミング/行重みに基づいて選択され、残りのサブセットは、単一のメトリック、例えば、分極信頼性メトリックに基づいて選択される。
ハミング重みは、一部ではリードマラー(Reed-Muller, RM)符号により使用されるため、且つ一部ではその簡潔さのため、好ましくなり得る。RM符号は、分極信頼性ではなくハミング重みに基づき、最大尤度(Maximum-Likelihood, ML)復号化アルゴリズムを使用する(ハミング重みに基づくRM符号は、符号長が小さい場合、ML性能境界に近づく)が、SC又はSCL復号化で復号化できるという点で、ポーラー符号の特別の例として考えられることができる。
サブチャネルのハミング重みは、ここでは、生成行列の行のハミング重みであると規定される。ポーラー符号では、サブチャネルのハミング重みは、その生成行列内のこのサブチャネルの行重みに関係する(行重み=2^(ハミング重み))。いくつかの実施例では、行重みは、サブチャネルの情報が分布する符号化ビットの数を示す。一般的に言えば、サブチャネルに入力される情報ビットが分布する符号化ビットが多いほど、そのサブチャネルがよりロバストになり、従ってより高い信頼性になる。
どのようにハミング重み又は行重みのようなハミング重みの関数が、パリティビットのためにサブチャネルを選択するための第2のメトリックとして使用できるかの例は、「Method for constructing a Parity Check (PC) Based Polar Code Using a Look-up-Table」という名称で2016年12月12日に出願された米国仮特許出願62/433,127に記載のようにより詳細に議論されており、この内容が再現されているかのように、参照により援用する。これらは第2のメトリックとして使用され得るメトリックの単なる例である点に留意すべきである。一般的には、(分極)信頼性を示す他のメトリックも第2のメトリックとして使用できる。更なる代案では、第2のメトリックは第1のメトリックと異なるが、また、分極信頼性に関係するか、或いは分極信頼性を示す。しかし、更に他の代案では、サブチャネルの自然の順序が第2のメトリックとして使用でき、それにより、例えば、情報サブチャネルの終わりのサブチャネルが補助サブチャネルとして選択される。いくつかの実施例では、2つより多くのメトリックが補助サブチャネルを選択するために使用されてもよい。さらに、前述のメトリックを使用する様々な補助サブチャネル選択アルゴリズムのいずれかが使用されてもよい。補助サブチャネルを選択するための他の可能性も存在する。
米国仮特許出願62/433,127に記載の実施例の技術は、サブチャネルに情報ビットをマッピングする前にパリティビットのための候補サブチャネルを確保及び/又は選択する。候補サブチャネルが確保された後に、情報ビットは、最も信頼性の高い残りのサブチャネルにマッピングされ、複数の凍結ビットは、最も信頼性の低い残りのサブチャネルにマッピングされる。その後、確保されたサブチャネルのためのパリティビット値は、情報ビットの関数に基づいて決定される。特に、パリティビットのために確保された候補サブチャネルは、必ずしも最も信頼性の高いサブチャネルであるとは限らないが、一般的には、情報ビットが送信されるサブチャネルのうち少なくとも1つと同じ信頼性があるか、或いはそれより信頼性の高い少なくともいくつかのサブチャネルを含む。このように、情報ビット及びパリティビットは、復号化確率を改善する方式で、最も信頼性の高いチャネル上に散在する。
前述のように、いくつかのサブチャネルはポーラー符号化中にPCビットのために確保されるか或いは取り分けられてもよい。図5A〜5Gは、4つの情報ビットの系列が16のマザー符号長に符号化されるときに、どのようにその符号化プロセスが生じ得るかの例を示す。図5Aは、16のマザー符号長に対応するサブチャネルu0、u1、u2、u3、u4、u5、u6、u7、u8、u9、u10、u11、u12、u13、u14、u15を列挙した表を示す。表の第2の行は、サブチャネル毎のチャネル分極信頼性を列挙する。その後、サブチャネルは、チャネル信頼性に基づいてソートされてもよい。図5Bは、サブチャネルu0、u1、u2、u4、u8、u3、u5、u6、u9、u10、u12、u7、u11、u13、u14、u15の順序付けされた系列(Q)を列挙した表を示す。その後、チャネル毎の行重みが、チャネルインデックスの関数として計算できる。一例では、行重みは、以下の式:rw=2hwに基づいて計算され、rwは所与のサブチャネルのための行重みであり、hwはチャネルインデックスのバイナリ表現のハミング重みである。図5Cは、サブチャネルの順序系列内の各サブチャネルのバイナリ表現、ハミング重み及び行重みを列挙した表を示す。
次に、パラメータwmin、2*wmin、f1及びf2のセットを決定するために、サブチャネルのサブセットが識別され、これらは、PCビットのためのサブチャネルを確保するために使用される。情報及びパリティビットを搬送するためのサブチャネルのサブセットはK+Fpに等しく、Kは情報ブロック長(例えば、符号化すべき情報ビットの数)であり、Fpはチャネル上で送信すべきパリティビットの数に対応するパラメータである。実施例では、Fpは、以下の関数:Fp=log2N×(α-|α×(K/M-1/2)|2)に従って計算され、Nはマザー符号長であり、Mは(例えば、パンクチャリングの後に)送信されるべきコードワード内の(符号化)ビットの数であり、K/Mは達成される符号レートであり、αは情報ビットに対するパリティビットの比を変化させるために使用される重み係数である。しかし、Fpについて異なる関数が使用されてもよく、例えば、Fp=log2((M-K)/32であり、これは比較的小さい数のパリティビットについてうまく動作するように思われる。代替として、例えば、異なる種類の補助ビット(パリティビット以外)及び/又は異なる種類の検査関数(PC関数以外)が使用される場合に、関数は異なってもよい。一般的に、PCビットの数Fpは、一般的にはK、N(及びM<Nであり短縮又はパンクチャリングが使用される場合にはM)のいずれかの関数でもよい。更に他の実施例では、Fpは、K、N(及び/又はM)と独立した固定値、例えば、3でもよい。更に他の実施例では、Fpは、(最小行重みwminで)候補サブチャネルにマッピングされるべきパリティビットの総数(例えば、3つ)の所望のセット又はサブセット(例えば、1つ)を表してもよく、一方で、残りのパリティビット(例えば、2つ)は異なるメトリックに従って他のサブチャネル(例えば、K(又はK+Fp)個の最も信頼性の高いサブチャネル内で最も信頼性の低いサブチャネル)にマッピングされる。Fpについて他の可能性も存在する。
PCビット及びFpについて前述の関数を使用する実施例では、αパラメータは、1と2との間の値に設定される。他の実施例では、αパラメータは、1と1.5との間の値に設定される。より高いαの値は、一般的には、より高い最小符号距離を生じる。この例ではFpは2に等しい。したがって、情報ビット及びパリティビットを搬送するためのサブチャネルのサブセットは、6個の最も信頼性の高いサブチャネル(すなわち、K+Fp=4+2=6)を含み、これらはサブチャネルu12、u7、u11、u13、u14及びu15である。次に、1つ以上の行重み値が決定される。認識できるように、K+Fpサブセット内の最小行重みwminは4である。この例では、行重み値は、最小行重み(wmin)を含み、サブチャネルu12、u7、u11、u13、u14及びu15のサブセット内の最小行重みの2倍(2*wmin)が決定され、これはそれぞれ4及び8である。第1のインデックス(f1)及び第2のインデックス(f2)もまた決定される。第1のインデックス(f1)は、wminに等しい行重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定し、第2のインデックス(f2)は、2*wminに等しい行重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定する。この例では、f1及びf2はそれぞれ1及び1に等しい。
その後、サブチャネルは、パラメータwmin、2*wmin、f1及びf2に基づいて、PCビットのために確保される。この例では、行重みwmin(すなわち、4に等しい)を有する最も信頼性の高いサブチャネルと、2*wminに等しい(すなわち、8に等しい)行重みを有する最も信頼性の高いサブチャネルとが選択され、これはサブチャネルu12及びu14を含む。図5Dは、PCビットのために確保されたサブチャネルを示す表を示す。その後、情報ビットは、残りの最も信頼性の高いチャネルにマッピングされる。図5Eは、どのようにサブチャネルu15、u13、u11及びu7が4つの情報ビットにマッピングされるかを示す表を示す。この例では、N=4且つN=16である。他の例では、異なる数の情報ビットがサブチャネルにマッピングされてもよい。その後、残りのサブチャネルは凍結ビットにマッピングされる。図5Fは、どのようにサブチャネルu10、u9、u6、u5、u3、u8、u4、u2、u1及びu0が凍結ビットにマッピングされるかを示す表を示す。
いくつかの実施例では、エンコーダは、凍結ビットセットがマッピングされた後に、PCビットを搬送するために凍結ビットセット内のいくつかのサブチャネルを選択する。図5Gは、どのように凍結サブチャネルがPCビットを搬送するために選択できるかを示す表を示す。図示のように、wmin又は2*wminに等しい行重みを有する凍結セット内のサブチャネルが、PCビットを搬送するために選択される。この例では、サブチャネルu10、u9、u6、u5及びu3は更なるPCビットにマッピングされる。いくつかの他の実施例では、全ての凍結サブチャネルが更なるPCビットとして選択されてもよい。
wmin、2*wmin、f1及びf2に基づいてFp個のPCビットのためにFp個のサブチャネルを確保又は選択する代わりに、エンコーダは、これらのパラメータの異なるセット又はサブセットを使用してサブチャネルを確保してもよい。一実施例では、Fp個のサブチャネルは、wmin(のみ)に基づいて、N個のサブチャネル又はM<N個のサブチャネル(パンクチャリング又は短縮が使用される場合)の(K+Fp)個の最も信頼性の高いサブセット内で確保され、例えば、wminの値に等しい行重みを有するFp個のサブチャネル(更に以下に詳述する)が確保される。いくつかの実現方式では、wminに等しい行重みを有する(K+Fp)サブセット内により多くのサブチャネルが存在する場合、最も信頼性の高いFp個のサブチャネルが確保される。いくつかの実現方式では、最も信頼性の高いK+Fp個のサブチャネル内に2*wminに等しい行重みを有するf2個より多いサブチャネルが存在する場合に、同じ選択が当てはまる。他の実現方式では、wmin(又は2*wmin)に等しい行重みを有する(K+Fp)サブセット内の最も信頼性の低いFp個のサブチャネルが確保される。更に他の実現方式では、PCビットの数が増加してもよく、それにより、wminに等しい行重みを有するサブチャネルの全てがPCビットのために確保される。更に他の実現方式では、Fpは、wmin及び/又は2*wminに基づいて確保されるべきPCビットについてのサブチャネルの総数(例えば、3つ)のセット又はサブセット(例えば、1つ)を表し、PCビットについてのサブチャネルの総数の残りのサブセット(例えば、2つ)は、他のメトリック、例えば、K(又はK+Fp)個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて確保される。他の実現方式も可能である。
いくつかの実施例では、(K+Fp)サブセット内のFp個のサブチャネルを確保することに加えて、エンコーダは、更なるPCビットを搬送するために凍結ビットセット(N-K-Fp)内でいくつかのサブチャネルを選択してもよい。他の実施例では、凍結ビットセット内のサブチャネルの全てが、wminに等しい行重みを有する(K+Fp)サブセット内のFp個のサブチャネルに加えて、PCビットを搬送するために選択される。
いくつかの実施例では、PCビットがサブチャネルに関連する行重みに基づいてマッピングされるとき、行重みの計算は、待ち時間を符号化プロセスに取り入れてもよい。この開示の他の実施例は、サブチャネルをこれらのハミング重みに基づいて確保することにより、その待ち時間を軽減し、それにより、行重みを計算する更なるステップを回避する。図6A〜図6Gは、どのようにハミング重みがポーラー符号化プロセス中にPCビットのためのサブチャネルを確保するために使用できるかの例を示す。この例では、4つの情報ビットの系列は、16のマザー符号長に符号化される。図6Aは、16のマザー符号長に対応するサブチャネルu0、u1、u2、u3、u4、u5、u6、u7、u8、u9、u10、u11、u12、u13、u14、u15を列挙した表を示す。表の第2の行は、サブチャネル毎のチャネル分極信頼性を列挙する。サブチャネルは、チャネル信頼性に基づいてソートされてもよい。図6Bは、サブチャネルu0、u1、u2、u4、u8、u3、u5、u6、u9、u10、u12、u7、u11、u13、u14、u15の順序付けされた系列(Q)を列挙した表を示す。各チャネルインデックスのハミング重みが、サブチャネル毎に決定できる。図6Cは、サブチャネルの順序系列内の各サブチャネルのハミング重みを列挙した表を示す。
次に、最小ハミング重み(umin)並びにf1及びf2パラメータを決定するために、サブチャネルのサブセットが識別され、これらは、PCビットのためにサブチャネルを確保するために使用される。情報及びパリティビットを搬送するためのサブチャネルのサブセットはK+Fpに等しく、Kは情報ブロック長であり、Fpは、以下の関数:Fp=log2N×(α-|α×(K/M-1/2)|2)に従って計算されたパラメータであり、Nはマザー符号長であり、Mは(例えば、パンクチャリングの後に)送信されるべきコードワード内の符号化ビットの数であり、K/Mは達成される符号レートであり、αは情報ビットに対するパリティビットの比を変化させるために使用される重み係数である。しかし、実現方式に依存して、Fpについて異なる関数が使用されてもよく、例えば、Fp=log2((M-K)/32であり、これは比較的小さい数のPCビットについてうまく動作するように思われる。代替として、例えば、異なる種類の補助ビット(PCビット以外)及び/又は異なる種類の検査関数(PC関数以外)が使用される場合に、異なる関数が使用されてもよい。一般的に、PCビットの数Fpは、一般的にはK、NだけでなくM(M<Nであり短縮又はパンクチャリングが使用される場合)のいずれかの関数でもよい。更に他の実施例では、Fpは、K、N(及び/又はM)と独立した固定値、例えば、3でもよく、或いは最小行重みwminで候補サブチャネルにマッピングされるべきパリティビットの総数(例えば、3つ)の所望のセット又はサブセット(例えば、1つ)を表してもよく、一方で、残りのパリティビット(例えば、2つ)は異なるメトリックに従って他のサブチャネル(例えば、K(又はK+Fp)個のサブチャネル内で最も信頼性の低いサブチャネル)にマッピングされる。図6A〜6Gの例では、Fpは2に等しく、最も信頼性の高いサブチャネルのサブセットは、6個の最も信頼性の高いサブチャネル(すなわち、K+Fp=4+2=6)を含み、これらはサブチャネルu12、u7、u11、u13、u14及びu15である。次に、サブチャネルのサブセットについて最小ハミング重みが決定される。この例では、最小ハミング重みは、サブチャネルu12のハミング重みに基づいて2である。第1のインデックス(f1)及び第2のインデックス(f2)もまた決定される。第1のインデックス(f1)は、uminに等しいハミング重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定し、第2のインデックス(f2)は、1+uminに等しいハミング重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定する。この例では、f1及びf2はそれぞれ1及び1に等しい。
その後、サブチャネルは、パラメータumin、1+umin、f1及びf2に基づいて、PCビットのために確保される。この例では、uminに等しい(すなわち、2に等しい)ハミング重みを有する最も信頼性の高いサブチャネルと、1+uminに等しい(すなわち、3に等しい)ハミング重みを有する最も信頼性の高いサブチャネルとが選択され、これはサブチャネルu12及びu14を含む。図6Dは、PCビットのために確保されたサブチャネルを示す表を示す。その後、情報ビットは、残りの最も信頼性の高いチャネルにマッピングされる。図6Eは、どのようにサブチャネルu15、u13、u11及びu7が4つの情報ビットにマッピングされるかを示す表を示す。その後、残りのサブチャネルは凍結ビットにマッピングされる。図6Fは、どのようにサブチャネルu10、u9、u6、u5、u3、u8、u4、u2、u1及びu0が凍結ビットにマッピングされるかを示す表を示す。
いくつかの実施例では、エンコーダは、PCビットを搬送するために凍結ビットセットから更なるサブチャネルを選択する。図6Gは、どのようにumin又は1+uminに等しいハミング重みを有する凍結セット内のサブチャネルがPCビットを搬送するために選択されるかを示す表を示す。この例では、サブチャネルu10、u9、u6、u5及びu3は更なるPCビットを搬送するために確保される。いくつかの他の実施例では、全ての凍結サブチャネルが更なるPCビットとして選択されてもよい。
umin、f1及びf2に基づいてFp個のPCビットのためにFp個のサブチャネルを確保又は選択する代わりに、エンコーダは、これらのパラメータの異なるセット又はサブセットを使用してサブチャネルを確保してもよい。一実施例では、Fp個のサブチャネルは、umin(のみ)に基づいて、N(又はパンクチャリング若しくは短縮が使用される場合にはM<N)個のサブチャネルの(K+Fp)個の最も信頼性の高いサブセット内で確保され、例えば、uminの値に等しいハミングを有するFp個のサブチャネル(更に以下に詳述する)が確保される。いくつかの実現方式では、uminに等しいハミング重みを有する(K+Fp)サブセット内により多くのサブチャネルが存在する場合、最も信頼性の高いFp個のサブチャネルが確保される。いくつかの実現方式では、最も信頼性の高いK+Fp個のサブチャネル内に2*wminに等しい行重みを有するf2個より多いサブチャネルが存在する場合に、同じ選択が当てはまる。他の実現方式では、(K+Fp)サブセット内の最も信頼性の低いFp個のサブチャネルが確保される。更に他の実現方式では、PCビットの数が増加してもよく、それにより、uminに等しいハミング重みを有するサブチャネルの全てがPCビットのために確保される。更に他の実現方式では、Fpは、wmin及び/又は2*wminに基づいて確保されるべきPCビットについてのサブチャネルの総数(例えば、3つ)のサブセット(例えば、1つ)を表し、残りのサブセット(例えば、2つ)は、他のメトリック、例えば、K(又はK+Fp)個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて確保される。他の実現方式も可能である。
いくつかの実施例では、(K+Fp)サブセット内のFp個のサブチャネルを確保することに加えて、エンコーダは、更なるPCビットを搬送するために凍結ビットセット(N-K-Fp)内でいくつかのサブチャネルを選択してもよい。他の実施例では、凍結ビットセット内のサブチャネルの全てが、wminに等しい行重みを有する(K+Fp)サブセット内のFp個のサブチャネルに加えて、PCビットを搬送するために選択される。
この開示の実施例は、重みパラメータに基づいてパリティビットのために1つ以上のサブチャネルを選択、確保又は配分する技術を提供する。図7は、無線デバイスにより実行されてもよい、ポーラー符号を使用してデータを符号化するための方法700のフローチャートである。ステップ710において、無線デバイスは、信頼性メトリックに基づいて順序付けされてもよいサブチャネルのセグメントから、重みパラメータに基づいて少なくとも1つのパリティビットを搬送するための少なくとも1つのサブチャネル(例えば、候補サブチャネル)を(予め)選択する。重みパラメータは、最小行重み(例えば、wmin、dmin)パラメータでもよい。一例では、順序付けされたサブチャネルは、K個のサブチャネルのセグメントと、N0-K個のサブチャネルのセグメントとを含み、無線デバイスは、K個のサブチャネルのセグメントから、最小重み(dmin)を有する少なくとも1つの候補サブチャネルを選択する。このような例では、K個のサブチャネルのそれぞれは、N0-K個のサブチャネルの全てより高い信頼性メトリックを有する。この例では、Kは、符号化すべき情報ビットの数、又は他の補助ビット(例えば、CRCビット)を含んでもよく或いは含まなくてもよい情報ブロック長を示し、N0はマザー符号長を示す。他の例では、セグメントK内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、無線デバイスは、信頼性メトリックの降順に(例えば、高い信頼性から低い信頼性へ)最小重みを有するK個のサブチャネルのセグメントからF個のサブチャネルを選択する。他の例では、無線デバイスは、最小重み(dmin)に基づく第1の数のサブチャネル及び/又は最小重みの2倍(2*dmin)に基づく第2の数のサブチャネルを選択する。更に他の例では、無線デバイスは、例えば、ポーラー符号に関連する符号長と、符号化されるべきデータの情報ブロック長との関数に基づいて、少なくとも1つのサブチャネルを選択する。更に他の例では、無線デバイスは、少なくとも1つのパリティビットを搬送するためのサブチャネルとして、通常では凍結ビットに配分される全てのサブチャネルを選択する。
更に他の例では、無線デバイスは、(N個の)サブチャネルの順序付けされた系列のうちK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択する。この例では、サブチャネルの行重みは、サブチャネルに対応する(Nサイズの)クロネッカー行列の行の中の1の数である。更に他の例では、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、無線デバイスは、K個の最も信頼性の高いサブチャネルのサブセット内のn個のサブチャネル(例えば、最低の行重みを有する)の中でFp個のサブチャネルを選択してもよい。更に他の例では、最低の行重みを有する少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択される。言い換えると、選択される少なくとも1つのサブチャネルは、最低の行重みを有するKサブセット内の最も信頼性の高いサブチャネルである。
ステップ720において、無線デバイスは、少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用する。パリティ検査関数は、少なくとも1つのパリティビットのために選択されたサブチャネル上で実行されてもよい。パリティ検査関数は素数パリティ検査関数でもよい。ステップ730において、無線デバイスは、符号化データを取得するために、情報ビットと、選択されたサブチャネルに配置された少なくとも1つのパリティビットとをポーラー符号化する。一例では、少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネル及び/又は最小重みの2倍を有する第2の数のサブチャネルに配置される。図示しないが、無線デバイスはまた、情報ビットのために選択されたサブチャネルの数がK(すなわち、符号化すべき情報ビットの総数)に到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルをスキップしてもよい。ステップ740において、無線デバイスは符号化データを他の無線デバイスに送信する。
図8は、無線デバイスにより実行されてもよい、ポーラー符号を使用してデータを符号化するための実施例の方法800のフローチャートである。ステップ810において、無線デバイスは、例えば、信頼性メトリックに基づいて順序付けされてもよい(N個の)サブチャネルのセット又は系列のサブセット内のサブチャネルのための行重みに基づいて、1つ以上のパリティビットのための1つ以上の(候補)サブチャネルを確保するか、或いはさもなければ配分する。行重みは、最小行重み値(wmin)及び/又は最小行重みパラメータの整数倍(例えば、2*wmin)を含んでもよい。サブチャネルのための行重みは、Nサイズのクロネッカー行列のサブチャネルに対応する行の中の1の数を表してもよい。順序付けされたサブチャネルからパリティビットのための候補サブチャネルを確保(すなわち、配分)するための様々な技術が存在する。例えば、サブチャネルのセットがこれらの信頼性に基づいてソートされた後に、無線デバイスは、最高の信頼性のサブチャネルから始めて、これらの行重みに基づいてセット内のサブチャネルの最も信頼性の高いサブセットから候補サブチャネルを確保してもよい。一例では、最小行重み値に等しい行重みを有する第1の(すなわち、最も信頼性の高い)f1個のサブチャネル(f1は0より大きい整数である)が、パリティビットのために確保される。このような例では、最小行重みは、サブチャネルの順序付けされた系列内の最も信頼性の高いK又はK+FP個のサブチャネルに関連する最低の行重みでもよく、Kは情報ビットの系列に関連する情報ブロック長であり、Fpは符号化ビットストリームにより搬送されるパリティビットの数に対応するパラメータ又は関数である。このような実施例では、Fpは、以下の関数:Fp=log2N×(α-|α×(K/M-1/2)|2)に従って計算されてもよく、Mは送信ブロック長であり、Nはマザー符号長であり、αは情報ビットに対するパリティビットの比を変化させるために使用される重み係数である。Fpの他の値も可能である。他の例では、最小行重み値の2倍に等しい行重みを有する第1のf2個のサブチャネルもまた、パリティビットのために確保されてもよい(f2も0以上の整数である)。f1パラメータは、以下の関数:f1=(Fp+min(Fp,n))/2に従って計算されてもよく、nは、最小行重みに等しい行重みを有するサブチャネルの順序付けされた系列の最も信頼性の高いK+FP個のサブチャネルの中のサブチャネルの数である。f2パラメータは、以下の関数:f2=(Fp-min(Fp,n))/2に従って計算されてもよい。f1及びf2パラメータについて他の値も可能になり得る。
他の実施例では、Fpは、情報ブロックサイズ及び符号長と独立した固定値(例えば、3)でもよい。代替として、Fpは、サブチャネルの最も信頼性の高いサブセット(例えば、K又は(K+Fp))内の最小行重みwminを有する候補サブチャネルにマッピングされるべき、使用されるべきパリティビットの総数(例えば、3つ)の所望のサブセット(例えば、1つ)でもよく、一方で、残りのパリティビット(例えば、2つ)は、異なるメトリックに従って他のサブチャネル(例えば、K(又はK+Fp)個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネル)にマッピングされる。
ステップ820において、無線デバイスは、例えば、1つ以上のパリティビットのために確保された1つ以上の候補サブチャネルに情報ビットをマッピングせずに、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルのサブセットに情報ビットをマッピングする。ステップ830において、無線デバイスは、情報ビットの値の関数として少なくとも1つ以上のパリティビットの値を決定(例えば、計算)し、確保された候補サブチャネルに1つ以上のパリティビットをマッピングする(図示せず)。ステップ840において、無線デバイスは、符号化ビット又は符号化ビットストリームを取得するために、ポーラー符号を使用して、マッピングされた情報ビットと、1つ以上のパリティビットとを符号化する。ステップ850において、無線デバイスは、(物理)チャネル上で符号化ビットを送信する。
この開示の実施例は、符号化の前にパリティ検査関数を実現するための無線デバイスのようなデバイスのための方法を提供する。第1のステップの間に、無線デバイスは、信頼性(Q)の順序付けされた系列を取得又は検査し、符号レート(R)及びマザー符号長(N)に基づいてパンクチャリングされたビットセット(P)を決定する。
第2のステップの間に、デバイスは、順序付けされた系列から、凍結ビットセット、PC凍結ビットセット及び情報ビットセットを決定する。第2のステップは、いくつかのサブステップ2.1〜2.4(d)を含んでもよい。サブステップ2.1において、無線デバイスは、系列Q(左から右に信頼性の昇順により順序付けられる)を3つのサブセット、すなわち、(N-M)サブセット、(M-K)サブセット及び(K)サブセットに分割してもよい。この例が表2に示される。認識できるように、Kサブセットは、系列Q内の最も信頼性の高いビット位置(サブチャネル)を表す。サブステップ2.2の間に、無線デバイスは、(K)サブセット内の最小又は最低の行重みを決定し、これをdminとして記してもよく、サブチャネルのための行重みは、サブチャネルに対応するそのクロネッカー行列の行の中の「1」の数を表す。前述のように、行重みはまた2の累乗でもあり、指数はサブチャネルインデックスのバイナリ表現の「1」の数である。その後、無線デバイスは、dminに等しい行重みを有する(K)サブセット内のビット位置の数(n)を決定してもよい。サブステップ2.3の間に、無線デバイスは、dminに従ってPC凍結ビットのためにKサブセット内のサブチャネルのセットを選択又はフラグ付けする。具体的には、無線デバイスは、ポーラー符号のマザー符号長と、情報ビットの系列内の情報ビットの数との関数に基づいて、パリティ検査(parity check, PC)凍結(PC凍結)ビットの数(FP)を決定してもよい。一例では、Fpは、以下の式:Fp=ceil(Log2(N*K)/2)に従って計算される。その後、無線デバイスは、PC凍結ビットのために複数のサブチャネルを選択及び/又はフラグ付けしてもよい。n<Fpである場合、無線デバイスは、信頼性の降順に従って行重みdminを有する(Fp+n)/2個のサブチャネルをPC凍結ビットとして選択及び/又はフラグ付けするとともに、信頼性の降順に従って行重み2×dminを有する(Fp-n)/2個のサブチャネルを選択及び/又はフラグ付けしてもよい。n≧Fpである場合、無線デバイスは、信頼性の降順に従って行重みdminを有するFp個のサブチャネルをPC凍結ビットとして選択及び/又はフラグ付けしてもよい。他の実施例では、Fpは情報ブロックサイズ及び符号長と独立した固定値、例えば、3でもよい。代替として、Fpは、最小行重み(dmin)又は最小行重みの2倍(2×dmin)を有するサブチャネルにマッピングされるべきパリティビットの総数(例えば、2つ)の所望のセット又はサブセット(例えば、1つ)を表してもよく、一方で、残りのパリティビット(例えば、2つ)は異なるメトリックに従って他のサブチャネル(例えば、Kサブセット又はK+Fpサブセット内で最も信頼性の低いサブチャネル)にマッピングされる。サブステップ2.4(a)〜2.4(d)において、無線デバイスは、情報、PC凍結及び凍結ビットのための位置を決定してもよい。特に、サブステップ2.4(a)において、無線デバイスは、情報ビット位置の数がKに到達するまで、フラグ付きのビット位置をスキップし、最も右から最も左へ(信頼性の降順に)1つずつ情報ビット位置を選択してもよい。サブステップ2.4(b)において、無線デバイスは、凍結ビットになるように残りのビット位置をフラグ付けしてもよい。サブステップ2.4(c)において、無線デバイスは、いくつかの凍結ビット位置、例えば、予め選択されたPC凍結ビットに等しい行重みを有するものを更なるPC凍結ビットとして選択してもよく、或いは全ての凍結ビット位置を更なるPC凍結ビットとして選択してもよい。ステップ2.4(d)において、無線デバイスは、例えば、Arikanカーネルでのポーラー符号化のためのビット系列を準備してもよい。無線デバイスは、K個の情報ビットを挿入し、PC凍結及び凍結ビットをマーキングしてもよい。
ステップ3の間に、無線デバイスは、パリティ検査関数に基づいてPC凍結ビットのための値を設定してもよい。一例では、これは、素数値の長さを有するレジスタ上でサイクリックシフトを適用することにより達成される。
Figure 2019533345
図9は、無線デバイスにより実行されてもよい、ポーラー符号を使用してデータを符号化するための実施例の方法900のフローチャートである。ステップ910において、無線デバイスは、サブチャネルの順序付けされた系列内の最も信頼性の高いK個のサブチャネルの中で、最低の行重み(dmin)を決定する。ステップ920において、無線デバイスは、最低の行重みに従って、パリティ検査(parity check, PC)凍結(PC凍結)ビットのために、最も信頼性の高いK個のサブチャネル内のサブチャネルのセットを選択又はフラグ付けする。選択又はフラグ付けされたサブチャネルのセットは、1つ以上のサブチャネルを含んでもよいことが認識されるべきである。任意選択で、所定の数のPC凍結ビット、例えば、Fpより少ない、最低の行重み(dmin)を有するサブチャネル、例えば、nが存在するとき、無線デバイスは、信頼性の降順に従って順序付けされた系列内の行重みdminを有する(Fp+n)/2個のサブチャネルをPC凍結ビットとして選択又はフラグ付けするとともに、信頼性の降順に従って順序付けされた系列内の行重み2×dminを有する(Fp-n)/2個のサブチャネルをフラグ付けする。任意選択で、最低の行重み(dmin)を有するサブチャネルの数nがFpより大きい場合、無線デバイスは、信頼性の降順に従って順序付けされた系列内の行重みdminを有するFp個のサブチャネルをPC凍結ビットとして選択又はフラグ付けする。ステップ930において、無線デバイスは、PC凍結ビットのためにフラグ付けされたサブチャネルのセットをスキップする一方で、サブチャネルの順序付けされた系列内の最も信頼性の高い残りのサブチャネルに情報ビットの系列Kをマッピングする。ステップ940において、無線デバイスは、PC凍結ビットのためにフラグ付けされた少なくともサブチャネルのセット内でPCビットのための値を設定し、ステップ950において、PC凍結ビットを有するK個の情報ビットをポーラー符号化し、それにより、符号化ビット又は符号化ビットストリームを取得する。ステップ960において、無線デバイスは、符号化ビット/ビットストリームの少なくとも一部を送信する。
図10は、通信システム1000を示す。送信元1010は情報データ(ベアラデータ、情報ブロック、ビット)を提供し、(チャネル)エンコーダ1020は情報データを符号化し、符号化情報データはチャネル1030上で送信され、その後、(チャネル)デコーダ1040において復号化され、それにより、情報データが最終的に宛先1050において受信される。送信元1010及び/又はチャネルエンコーダ1020は、ネットワークコンポーネント又はユーザ装置のような送信ポイント又は無線デバイスに埋め込まれてもよく、或いは含まれてもよい。ネットワークコンポーネントは、進化型ノードB(evolved NodeB, eNodeB)、WiFiアクセスポイント、スモールセル(ピコセル、フェムトセル)アクセスポイント、又はネットワークへのアクセスを提供する他のアクセスポイントのようなアクセスポイントでもよい。チャネルエンコーダ1020は、多くの異なる方法で実現されてもよい。例えば、チャネルエンコーダ1020は、ハードウェアのみにおいて(データを符号化するように及び/又はデバイスのエンコーダ又は他のコンポーネントの操作を制御するように、及び/又はさもなければここに開示された機能及び/又は実施例の実行を制御するように構成された、プロセッサのような回路において)実現されてもよい。エンコーダのプロセッサに基づく実現方式では、ここに記載された符号化操作を実行するためのプロセッサ実行可能命令は、送信ポイント又はデバイスの内部又は外部の非一時的なメモリ又は記憶媒体に記憶される。非一時的な媒体は、例えば、1つ以上のソリッドステートメモリデバイス、及び/又は移動可能且つ場合によっては取り外し可能な記憶媒体を有するメモリデバイスをメモリ内に含んでもよい。エンコーダ1020は、別の(無線周波数(Radio-Frequency, RF))送信モジュールとインタフェース接続するように構成されてもよい。例えば、エンコーダ1020は、別の(RF)ユニットによる送信のために、ここに記載のようにデータを符号化するように、ハードウェア又は回路において(例えば、1つ以上のチップセット、マイクロプロセッサ、特定用途向け集積回路(application-specific integrated circuit, ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array, FPGA)、専用論理回路又はこれらの組み合わせにおいて)実現されてもよい。
(チャネル)デコーダ1040及び宛先1050は、ネットワークコンポーネント又はユーザ装置(user equipment, UE)のような受信ポイント又は他の無線デバイスに含まれてもよく、例えば、復号化操作を実行するための命令を実行するように構成されたチップセット又はプロセッサのようなハードウェア又は回路を含む、ネットワークコンポーネント又はデバイスにおいて多くの異なる方法で同様に実現されてもよい。デコーダ1040のプロセッサに基づく実現方式では、復号化操作を実行するためのプロセッサ実行可能命令は、受信ポイント又はデバイスの内部又は外部の非一時的なメモリ又は記憶媒体に記憶される。非一時的な媒体は、例えば、1つ以上のソリッドステートメモリデバイス、及び/又は移動可能且つ場合によっては取り外し可能な記憶媒体を有するメモリデバイスをメモリ内に含んでもよい。デコーダ1040は、別の(RF)受信モジュールとインタフェース接続するように構成されてもよい。例えば、デコーダ1040は、情報ビットを取得するために、ここに記載のように(例えば、受信モジュール又はユニットを介して)受信した信号を復号化するように、ハードウェア又は回路において(例えば、1つ以上のチップセット、マイクロプロセッサ、ASIC、FPGA、専用論理回路又はこれらの組み合わせにおいて)実現されてもよい。UEは、無線電話、スマートフォン、タブレット、パーソナルアシスタント又は他のモバイルデバイスでもよい。様々な実施例では、送信元1010及びチャネルエンコーダ1020はUEにおいて実現でき、チャネルデコーダ1040及び宛先1050はアクセスポイントにおいて実現されてもよく、或いは逆も同様である。チャネル1030は、エア(air)上のチャネル又はケーブル若しくはバスのような固定回線でもよい。チャネル1030は、無線インタフェースの物理レイヤでもよい。チャネル130は、他の送信媒体でもよい。通信システム1000は、無線データを送信するだけでなく、有線又は他のデータを送信するためにも使用されてもよい。
いくつかの実施例では、デコーダ1040は、チャネル1030上で受信した符号化データに基づいて信号を復号化するように構成されてもよい。一実施例では、デコーダ1040は、ポーラー符号で符号化された情報ビット及び1つ以上のパリティビットを有する、エンコーダ1020で生成された符号化データに基づいて、他のデバイス、例えば、エンコーダ1020から信号を受信するように構成される。前述のように、エンコーダ1040は、適切なインタフェースを介して別の受信ユニットで直接(例えば、内部受信ユニットで)又は間接に信号を受信するように構成されてもよい。この実施例では、パリティビットは、重みパラメータに基づいて選択されたサブチャネルに配置され、デコーダ1040は、情報ビットを取得するために、ポーラー符号及びパリティビットを使用して信号を復号化する。
一例では、重みパラメータは最小重みを含む。このような例では、パリティビットは、最小重み(例えば、dmin)又は最小重みの2倍(2×dmin)を有する複数のサブチャネルに配置されてもよい。選択されたサブチャネルが最小重みをそれぞれ有する例では、サブチャネルは、信頼性メトリックに基づいて順序付けされたN0個のサブチャネルからのK個の最も信頼性の高いサブチャネルのセグメントから選択される。この例では、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのK0-Kセグメントのサブチャネルの信頼性メトリックより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。パリティビットのそれぞれの値を決定するために、素数関数でもよいパリティ検査関数が使用されてもよい。重みパラメータは、dminのような最低の行重みを含んでもよく、選択されたサブチャネルは、Kサブセット内の最低の行重みを有してもよく、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する。最低の行重みを有するサブチャネルは、信頼性の降順に従ってKサブセットから選択されてもよい。情報ビットのためのサブチャネルは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、パリティビットのために選択されたサブチャネルをスキップすることにより、サブチャネルの順序付けされた系列内で選択されてもよい。
他の実施例では、デコーダ1040は、ポーラー符号で符号化された情報ビット及び1つ以上のパリティビットを有する、他のデバイス(例えば、エンコーダ1020)において生成されたビット又はビットストリームに基づいて、信号を受信するように構成される。この実施例では、パリティビットは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて配分されたサブチャネルにマッピングされ、情報ビットは、残りのサブチャネルの信頼性に基づいてサブチャネルのセット内の残りのサブチャネルにマッピングされる。デコーダ1040はまた、情報ビットを取得するために、ポーラー符号及びパリティビットを使用して信号を復号化するように構成される。
一例では、サブチャネルのための行重みは、サブチャネルに対応するクロネッカー行列の行の中の1の数を表す。行重みは最小行重みを含んでもよい。サブチャネルのサブセット内で最小行重み又は最小行重みの2倍に等しい行重みを有する複数のサブチャネルがパリティビットのために配分される。配分されるサブチャネルの数は1でもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するように、これらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内の最も信頼性の高いサブセットを含む。例えば、最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネル又はK+FP個のサブチャネルを含んでもよく、Kは情報ビットに関連する情報ブロック長であり、Fpはパリティビットの数を示す。その例では、(例えば、K又はK+Fp個の)サブチャネルのサブセット内の最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、パリティビットのために配分されてもよい。パリティビットは、パリティ検査(parity check, PC)ビットを含んでもよく、PCビットのための値は、情報ビットの値の関数でもよい。
ポーラー符号は、情報ビットのための比較的信頼性の高いサブチャネルと、0又は他の既知の値でもよい凍結ビットのための比較的信頼性の低いサブチャネルとを使用する線形ブロック誤り訂正符号である。パリティ検査が信頼性の低くない凍結ビットのいくつかで操作され得る場合、最小符号化距離が増加し得る。パリティビットに使用される凍結ビットは、これらのビット値が送信されているデータ情報によって動的に変化するので、動的凍結ビットと呼ばれる。
従来のアプリケーションでは、デコーダは、情報ブロック(情報ビット)を送信するための最善のサブチャネルを識別するために、逐次除去(successive cancellation, SC)法を使用する。性能を改善するために、CRC補助SCリスト復号化アルゴリズムは、複数のSC復号化経路を許容するために使用され、その後、CRCは、最後の段階において正しい経路を選択するために使用される。この方法は、CRCビットの検出容量を消費し、その後、これらはブラインド検出のような他の目的のために使用できない。非CRC補助リストデコーダは、好ましくは、CRCビット以外の送信元に基づいてパリティ検査を実行するいくつかの方法を有する。いくつかのポーラー符号では、パリティビットは、パリティ検査能力を提供するために、凍結ビット(動的凍結セット)の部分に入れられる。しかし、ポーラー符号操作の性能は、動的凍結セットの選択及びこれらの上でのパリティ検査方法に依存し、適切な凍結セット(ビット又はシンボル)を決定論的な方法で選択することは、これらの多すぎるものが存在するので、非常に困難である。
実施例では、動的凍結ビットセットを選択することは、最小符号化距離の関数、又は分極重みのような最小信頼性重みの関数である。他の信頼性メトリックも使用できる。実施例は、良好な信頼性の高いブロック誤り率(block error rate, BLER)性能を示す、適切に選択された動的凍結ビットに基づくポーラー符号を提供する。ポーラー符号は、巡回冗長検査(cyclic redundant check, CRC)のないポーラー符号でもよい。様々な実施例では、全ての凍結ビットは動的凍結ビットとして選択され、素数により導出された検査関数がこれらの全ての上に適用される。
図11は、ポーラー符号のために凍結ビットセットを選択するための実施例の方法1100のフローチャートである。符号化方法は、エンコーダとデコーダとの双方において実現されてもよい。符号化方法は、ステップ1110において、複数の候補凍結セット(又は多数の候補凍結ビットセット)を予め選択し、その後、ステップ1150において、複数の候補ビットセットから、選択された凍結ビットセットを選択することを含む。
ステップ1110は、凍結ビットの予め選択されたサブチャネルを、これらのサブチャネルに適用される信頼性メトリックに従ってソートすることを含む。いくつかの実施例では、ステップ1110は、信頼性メトリック関数に従ってサブチャネルの全てをソートすることを含む。様々な実施例では、分極重みアルゴリズムのような決定論的関数が使用されてもよい。代替として、決定論的関数は分極距離関数でもよい。凍結ビットのサブチャネルは、昇順に、すなわち、低い分極重みから高い分極重みにソートされてもよい(或いはその逆も同様である)。その後、ソートされたチャネルは、2つのセグメントのような複数のセグメントに分割される。次のステップにおいて、上のセグメント内(或いは言い換えると、最も信頼性の高いサブチャネルを有するセグメント内)の最小重みdminが選択又は決定される(以下の例を参照)。一例では、サブチャネルの重みは行重み、すなわち、サブチャネルに対応するポーラー符号生成行列又はクロネッカー行列の行の中の「1」の数、或いは同等に2の累乗でもよく、指数はサブチャネルインデックスのバイナリ表現の「1」の数である。その例では、最小重みdminは最小行重みでもよい。最小重みdminについて、最小重みdminを有するチャネルの数はnでもよい。所定の値Fを規定する。実施例では、FはF=ceil(LOG2(N*K)/2)でもよい。他の実施例では、Fは異なる値を有してもよい。更に他の実施例では、Fは、dmin及び/又は2*dminに基づいて予め選択されるべき動的凍結ビットのためのサブチャネルの総数(例えば、3つ)のセット又はサブセット(例えば、1つ)を表し、動的凍結ビットのためのサブチャネルの総数の残りのサブセット(例えば、2つ)は、他のメトリック、例えば、K個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて予め選択される。n<Fであるとき、重みdminを有する(F-n)/2個のチャネルを予め選択し、重み2×dminを有する(F+n)/2個のチャネルを予め選択する。n≧Fであるとき、重みdminを有するF個のチャネルを予め選択する。予め選択されたチャネルを逆の順序に順序付けする。例えば、チャネルは降順に、すなわち、分極重み値が高いものから低いものへ或いは信頼性の降順に順序付けされる。言い換えると、Kの最も信頼性の高いセグメント内で重みdmin及び/又は2*dminを有する最も信頼性の高いサブチャネルが予め選択される。したがって、ステップ1110は、多数の順序付けされた予め選択されたサブチャネル(候補ビットセット)を提供し、いくつかの実施例では、これらは動的凍結ビットのために使用できる。しかし、一般的には、動的凍結ビットのための予め選択されたサブチャネルの数は小さくてもよく、或いは大きくてもよいことが理解される。
実際の例では、N0はマザー符号長であり、Nはレートマッチング後の符号長であり、Kは情報ブロック長である。実施例では、N0はN0=2^ceil(log2(N))として規定できる。その後、凍結ビットサブチャネルは、2つのセグメントにソート及びセグメント化でき、或いは言い換えると、凍結ビットサブチャネルを含むビットサブチャネルの全ては、表3に示すように2つのセグメントにソート及びセグメント化できる。認識できるように、サブチャネルは昇順にソートされ、すなわち、K個のサブチャネルは最も信頼性が高く、(No-K)個のサブチャネルは最も信頼性が低い。
Figure 2019533345
次のステップでは、ステップ1150において、凍結ビットのセット(又は言い換えると、凍結ビットのためのサブチャネル)は、多数の予め選択された候補ビットセットから、或いはこれらに基づいて選択される。凍結ビットの選択されたセットは、分極重みの昇順に従ってビット単位で選択されてもよい。凍結ビットの選択されたセット又は凍結ビットのためのサブチャネルは、ビットの数がN0-Kであるときに完了してもよい。いくつかの実施例では、凍結ビットのために選択されたサブチャネルのセットは、予め選択されたサブチャネルの一部又は全部を含み、選択されたサブチャネルの一部又は全部は、動的凍結ビットのために使用されてもよい。他の実施例では、凍結ビットのために選択されたサブチャネルのセットは、予め選択されたサブチャネルとは別であり(すなわち、含まない)、サブチャネルの選択されたセットは、サブチャネルの数がN0-K-Fであるときに完了してもよい。残りの(K個の)サブチャネルの全て(すなわち、凍結及び/又は動的凍結ビットのために使用されないもの)は、(K個の)情報ビットのためのサブチャネルである。いくつかの実施例では、選択された凍結サブチャネルのいくつか(例えば、予め選択された候補凍結ビットセット又は全ての凍結サブチャネル)は、動的凍結ビットのために使用されてもよい。
凍結ビットの選択されたセットを選択することは、素数pを決定することを含む。様々な実施例では、一意の素数は5、7又は11でもよい。凍結ビットセットを最終的に選択するために、エンコーダ及びデコーダは、エンコーダ及びデコーダ内に実現されたpの長さのサイクリックシフトレジスタを操作してもよい。サイクリックシフトレジスタは、各ビットを符号化/復号化するときに、左にシフトしてもよい。図12は、エンコーダ及びデコーダのうち少なくとも1つの長さ5(pの長さ)を有するこのようなサイクリックシフトレジスタを示す。レジスタ内でビットが情報ビットである場合、これは無視され(XOR)、ビットが凍結ビットである場合、このビットのビット値が使用及び選択される。様々な実施例では、ビットはレジスタ内で初期化されたときに、0に設定される。いくつかの実施例では、凍結ビットセットは、コードワードによって変化し得る。
他の実施例では、第3のステップは、パリティ検査関数を構成し、動的凍結ビット並びに情報ビット及び(静的)凍結ビットのためのビット値を決定する。素数pが決定される。様々な実施例では、一意の素数は5、7又は11でもよい。パリティ検査関数を構成して動的凍結ビット値を決定するために、pの長さのサイクリックシフトレジスタがエンコーダ(及びデコーダ)において実現されてもよい。サイクリックシフトレジスタは、符号化中に入力ビットベクトルのためのビット値を決定したとき、或いはビット値を復号化したときに、左にシフトしてもよい。図12は、エンコーダ及びデコーダのうち少なくとも1つにおける長さ5(pの長さ)を有するこのようなサイクリックシフトレジスタを示す。前述の2つのステップにより決定されるように、ビットが情報ビットである場合、レジスタ内の第1のビットは現在の情報ビット値とXORされ、その後、サイクリックシフトされる。ビットが(静的)凍結ビットである場合、ビット値は、エンコーダ及びデコーダの双方により既知の固定値(例えば、0)に設定され、その後、サイクリックシフトされ、ビットが動的凍結ビットである場合、レジスタ内の第1のビットの値は、現在の動的凍結ビットの値として割り振られる。様々な実施例では、レジスタ内で初期化されたときに、ビットは0に設定される。いくつかの実施例では、凍結ビットセットは、コードワードによって変化し得る。
方法1100は複数の利点を提供し得る。エンコーダは、パリティ関数のオンライン計算を実行する必要がなくてもよい。エンコーダは、パリティ関数を記憶する必要がなくてもよい。デコーダは、パリティ関数を調べる必要がなくてもよく、したがって、低い複雑性で操作できる。
図13A〜13Dは、実施例に従って選択された凍結ビットの選択されたセットについてのポーラー符号の性能を示す。図13Aは、K=40個の情報ビット及びQPSK変調についての性能を示し、図13Bは、K=60個の情報ビット及びQPSK変調についての性能を示し、図13Cは、K=80個の情報ビット及びQPSK変調についての性能を示し、図13Dは、K=120個の情報ビット及びQPSK変調についての性能を示す。グラフから認識できるように、発明のポーラー符号は、他の符号を表す他のグラフに比べてより良い性能及びより低い複雑性を提供する。
図14A〜Bは、所与のブロック誤り率(block error rate, BLER)についての平均受信Es/N0点を示す。図示のグラフに示すように、(実施例に従って選択された)凍結ビットの選択されたセットを有するポーラー符号は、他のポーラー符号より優れた性能を提供する。
図15は、無線デバイス、送信ポイント又は受信ポイント、例えば、ネットワークコンポーネント又はユーザ装置のようなデバイス1500のブロック図である。デバイス1500は、CPU1502と、大容量記憶コンポーネント1504と、ネットワークインタフェース1506と、エンコーダ/デコーダ1508と、メモリ1510と、ビデオアダプタ1512と、I/Oインタフェース1514とを含む。
デバイス1500は、図示のコンポーネントの全て又はコンポーネントのサブセットのみを利用してもよく、統合のレベルは実現方式に依存して変化してもよい。さらに、デバイス1500は、複数のCPU1502等のようなコンポーネントの複数のインスタンスを含んでもよい。デバイス1500は、ネットワーク1520に接続するためのネットワークインタフェース1506、ディスプレイ1516に接続するためのビデオアダプタ1512、及びスピーカ、マイクロフォン、マウス、タッチスクリーン、キーパッド、キーボード、プリンタ等のような1つ以上の入出力デバイス1518に接続するためのI/Oインタフェース1514を使用してもよい。
いくつかの実施例では、CPU1502は、汎用コンピュータハードウェアプラットフォームのコンポーネントでもよいいずれかのプロセッサでもよい。他の実施例では、CPU1502(プロセッサ)は、特殊目的ハードウェアプラットフォームのコンポーネントでもよい。例えば、CPU1502は埋め込み式プロセッサでもよく、命令はファームウェアとして提供されてもよい。いくつかの実施例は、ハードウェアのみを使用することにより実現されてもよい。いくつかの実施例では、プロセッサによる実行のための命令は、ソフトウェアプロダクトの形式で具現されてもよい。ソフトウェアプロダクトは、不揮発性又は非一時的なメモリ又は記憶媒体に記憶されてもよく、これは、例えば、コンパクトディスク読み取り専用メモリ(compact disc read-only memory, CD-ROM)、ユニバーサルシリアルバス(universal serial bus, USB)フラッシュディスク又は取り外し可能ハードディスクでもよい。
エンコーダ/デコーダ1508は、符号化コンポーネント、復号化コンポーネント又はこれらの双方を含んでもよい。いくつかの実施例では、エンコーダ/デコーダ1508は、ここに開示されたようにデータを符号化するか、或いは選択、マッピング及び/又は符号化操作を実行するように構成されたプロセッサのような回路において実現される。エンコーダ/デコーダ1508のプロセッサに基づく実現方式では、符号化操作を実行するためのプロセッサ実行可能命令は、非一時的なプロセッサ読み取り可能な媒体に記憶される。非一時的な媒体は、例えば、1つ以上のソリッドステートメモリデバイス、及び/又は移動可能且つ場合によっては取り外し可能な記憶媒体を有するメモリデバイスをメモリ1510内に含んでもよい。
バスは、メモリバス又はメモリコントローラ、ペリフェラルバス、ビデオバス等を含むいずれかの種類のいくつかのバスアーキテクチャのうち1つ以上でもよい。CPU1502は、いずれかの種類の電子データプロセッサを含んでもよい。メモリ1510は、スタティックランダムアクセスメモリ(static random access memory, SRAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory, DRAM)、シンクロナスDMRAM(synchronous DRAM, SDRAM)、読み取り専用メモリ(read-only memory, ROM)、これらの組み合わせ等のようないずれかの種類のシステムメモリを含んでもよい。いくつかの実施例では、メモリ1510は、デバイスのエンコーダ/デコーダ1508又は他のコンポーネントの操作を実現及び/又は制御するために、及び/又はさもなければここに記載の機能及び/又は実施例の実行を制御するためにプロセッサにより実行される命令を含む非一時的なコンピュータ読み取り可能媒体である。実施例では、メモリ1510は、ブートアップ時に使用するためのROMと、プログラムを実行する間に使用するプログラム及びデータ記憶のためのDRMAとを含んでもよい。
大容量記憶コンポーネント1504は、データ、プログラム及び他の情報を記憶し、データ、プログラム及び他の情報を、バスを介してアクセス可能にするように構成されたいずれかの種類の記憶デバイスを含んでもよい。大容量記憶コンポーネント1504は、例えば、ソリッドステートドライブ、ハードディスクドライブ、磁気ディスクドライブ、光ディスクドライブ等のうち1つ以上を含んでもよい。
ビデオアダプタ1512及びI/Oインタフェース1514は、外部入出力デバイスを処理ユニットに結合するためのインタフェースを提供する。図示のように、入出力デバイスの例は、ビデオアダプタ1512に結合されたディスプレイ1516と、I/Oインタフェース1514に結合されたマウス/キーボード/プリンタとを含む。他のデバイスが処理ユニットに結合されてもよく、更なる或いはより少ないインタフェースカードが利用されてもよい。例えば、ユニバーサルシリアルバス(Universal Serial Bus, USB)(図示せず)のようなシリアルインタフェースは、プリンタのためのインタフェースを提供するために使用されてもよい。
ネットワークインタフェース1506は、イーサーネットケーブル等のような有線リンク、及び/又はアクセスノード又は異なるネットワークへの無線リンクを含んでもよい。ネットワークインタフェース1506は、デバイス及び/又は処理ユニットが、例えば、符号化データ又はビットを送信及び/又は受信することを含む、ネットワーク1520を介して遠隔ユニットと通信することを可能にするように構成されてもよい。例えば、ネットワークインタフェース1506は、1つ以上の送信機/送信アンテナ及び1つ以上の受信機/受信アンテナを介して無線通信を提供してもよい。実施例では、処理ユニットは、他の処理ユニット、インターネット、遠隔記憶施設等のような遠隔デバイスとのデータ処理及び通信のために、ローカルエリアネットワーク又は広域ネットワークに結合される。
図示しないが、ネットワークインタフェース1506は、変調器、増幅器、アンテナ及び/又は送信チェーンの他のモジュール又はコンポーネントを含んでもよく、更に或いは代替として、復調器、増幅器、アンテナ及び/又は受信チェーンの他のモジュール又はコンポーネントを含んでもよい。代案では、ネットワークインタフェース1506は、別の(RF)送信及び/又は受信モジュールとインタフェース接続するように構成されてもよい。例えば、エンコーダ/デコーダ1508は、別の(RF)送信ユニットによるネットワークインタフェース1506を介した送信のためのデータを符号化(及び/又は復号化)するか、或いはここに記載のように情報ビットを取得するために別の(RF)受信ユニットにより且つネットワークインタフェース1506を介して受信される信号を復号化するように、ハードウェア又は回路において(例えば、1つ以上のチップセット、マイクロプロセッサ、ASIC、FPGA、専用論理回路又はこれらの組み合わせにおいて)実現されてもよい。
前述のように、パリティビットがサブチャネルに関連する行重みに基づいてマッピングされるとき、どのサブチャネルがパリティビットのために確保されるべきかを識別するために、サブチャネルの行重みに対して行重み値(例えば、wmin、2*wmin)を比較することが必要になり得る。この開示の実施例は、複数のサブチャネルの行重みに対して行重み値(例えば、wmin、2*wmin)を並列に比較する。これは、比較操作に関連する待ち時間を低減し、それにより、符号化プロセスがより迅速且つ効率的に実行されることを可能にする。図16は、PCビットのために確保されるべきサブチャネルを識別するための並列比較操作を使用するための技術の図である。この例では、情報ビット1620、PCビット1630及び凍結ビット1640はサブチャネル1611〜1619にマッピングされ、これらはサブチャネル信頼性の昇順にソートされる。サブチャネル1611〜1619のいずれかに情報ビット1620にマッピングする前に、少なくとも2つのサブチャネル1618、1619の行重みは、1つ以上の行重み値(例えば、wmin、2*wmin)と並列に比較され、1つ以上の行重み値に一致する行重みを有する最も信頼性の高いサブチャネルがPCビット1630のために確保される。いくつかの実施例では、第1の行重み値(例えば、wmin)に一致する行重みを有する特定の数(f1)のサブチャネルがPCビットのために確保され、第2の行重み値(例えば、2*wmin)に一致する行重みを有する特定の数(f2)のサブチャネルがPCビットのために確保される。行重み値、及びそれぞれの行重み値のために確保された特定の数のサブチャネルを規定するインデックスのうち1つ以上は、符号レート及び/又はブロック長パラメータに基づいて決定されてもよい。
図17は、情報ビットの系列を符号化するための実施例の方法1700を示す。ステップ1710において、エンコーダは、PCビットのためにサブチャネルを確保するための少なくとも行重み値を決定する。少なくとも1つの行重み値は、チャネルの符号レート及び符号化されるべき情報ビットの系列に関連するブロック長に基づいて決定されてもよい。ステップ1720において、エンコーダは、PCビットのためにサブチャネルのうち1つ以上を確保することを決定するために、2つ以上のサブチャネルの行重みと少なくとも1つの行重み値を並列に比較する。実施例では、エンコーダは、サブチャネルの順序付けされた系列に従って信頼性の降順にサブチャネルを評価してもよく、それにより、より信頼性の高いサブチャネルがより信頼性の低いサブチャネルの前に評価される。代替として、情報又はPCビットにマッピングされるべきサブチャネルのサブセット内の全てのサブチャネル(例えば、K+Fp個のサブチャネル)が並列に評価される。
ステップ1730において、エンコーダは、十分なサブチャネルがPCビットのために確保されているか否かを決定する。例として、エンコーダは、wminに等しい行重みを有する少なくともf1個のサブチャネルが確保されているか否か、及び/又は2*wminに等しい行重みを有する少なくともf2個のサブチャネルが確保されているか否かを決定してもよい。そうでない場合、当該方法1700は、ステップ1720に戻り、エンコーダは、次の2つ以上のサブチャネルを評価する。エンコーダが、十分なサブチャネルがPCビットのために確保されていると決定した場合、当該方法はステップ1740に進み、エンコーダは、最も信頼性の高い残りのサブチャネルに情報ビットをマッピングする。ステップ1750において、エンコーダは、最も信頼性の低い残りのサブチャネルに凍結ビットをマッピングする。いくつかの実施例では、更なるPCビットが凍結ビットセットから選択されてもよい。1つの実現方式では、PCビットのためにサブチャネルを確保するために使用される少なくとも1つの行重みに等しい行重みを有する全ての凍結サブチャネルが選択されてもよく、他の実現方式では、全ての凍結サブチャネルが選択されてもよい。ステップ1760において、エンコーダは、情報ビットのPC関数に基づいて確保されたサブチャネルのためのPCビット値を設定する。ステップ1740、1750及び1760は、如何なる順序で実行されてもよい。また、PCビットのためのサブチャネルの数は、多くの異なる方法で決定されてもよく、前述のように、PCビットのための確保されたサブチャネルの数は固定されてもよく、例えば、3でもよく、及び/又は確保されたサブチャネルの一部又は全部はdminに基づいてもよい。
図18は、エンコーダにより実行されてもよい、ポーラー符号化を実行するためにルックアップテーブルを使用するための方法1800のフローチャートを示す。ステップ1810において、エンコーダは、符号パラメータを決定するために、符号レート及び情報ブロック長に基づいてルックアップテーブルを検索する。ステップ1820において、エンコーダは、情報ビット、パリティビット及び凍結ビットにサブチャネルをマッピングする。ステップ1830において、エンコーダは、情報ビットのパリティ検査関数に基づいてパリティビット値を設定する。
図19は、エンコーダにより実行されてもよい、最小ハミング重み値を決定するための方法1900のフローチャートを示す。ステップ1910において、エンコーダは、昇順(Q0,Q1,…QN)にサブチャネルをこれらの信頼性に基づいて列挙した順序付けされた系列(Q)を取得するために、サブチャネルをこれらのチャネル信頼性に基づいてソートする。ステップ1920において、エンコーダは、最も信頼性の高いサブチャネルのサブセットを識別する。ポーラー符号化ステップの後にパンクチャリングステップが実行される例では、最も信頼性の高いサブチャネルのサブセットは、パンクチャリングされたサブチャネルを除外してもよい。
最も信頼性の高いサブチャネルのセット内のサブチャネルの数は、以下の式:min(length(UM),K+Fp))に従って決定されてもよく、UMはパンクチャリングの後に残るサブチャネルのセットであり、Kは情報ブロックの長さであり、Fp=log2N×(α-|α×(K/M-1/2)|2)であり、Mはマザー符号長であり、αは1より大きい値、例えば、α=1.5に設定される。いくつかの他の実施例では、Fpは固定値、例えば、3でもよい。ステップ1930において、エンコーダは、最も信頼性の高いサブチャネルのサブセット内のサブチャネルの最小ハミング重み(umin)を決定する。
ステップ1940において、最も信頼性の高いサブチャネルのサブセット内で、エンコーダは、PCビットのために最小ハミング重み(umin)に等しいハミング重みを有する第1の数のサブチャネルを確保し、PCビットのために1に最小ハミング重みを加えたもの(1+umin)に等しいハミング重みを有する第2の数のサブチャネルを確保する。エンコーダは、例えば、順次的にサブチャネルの順序付けされた系列をスキャンすることによることを含む、複数の異なる方法でサブチャネルを確保できる。他の実現方式では、Fp個のサブチャネルのサブセットのみがumin及び/又は1+uminに基づいて確保され、Fp個のサブチャネルの残りのサブセットは、他のメトリック、例えば、K+Fp個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて確保される。サブチャネルが確保されるか、或いはPCビットのために配分されると、残りのサブチャネルは、情報及び凍結ビットに配分される。ステップ1950において、エンコーダは、最も信頼性の高い残りのサブチャネルに情報ビットをマッピングし、最も信頼性の低い残りのサブチャネルに凍結ビットをマッピングする。いくつかの実施例では、更なるPCビットは、凍結ビットセットから選択されてもよい。1つの実現方式では、PCビットのための確保されたサブチャネルのものに等しいハミング重みを有する一部又は全部の凍結サブチャネルが選択されてもよい。他の実施例では、全ての凍結サブチャネルは、PCビットとして選択されてもよい。ステップ1960において、エンコーダは、情報ビットのパリティ検査関数に基づいてパリティビット値を設定する。実現方式に依存して、サブチャネルが配分される順序は変化してもよい。同様に、PCビット、情報ビット又は凍結ビットが配分されたサブチャネルにマッピングされる順序も変化してもよいことが理解される。
いくつかの実施例では、Arikanエンコーダは、ポーラー符号化を達成するために使用されてもよい。図20は、実施例のエンコーダ2000の図である。エンコーダは、符号構成器2010と、Arikanエンコーダ2020と、パンクチャリング器2030とを含む。符号構成器2010は、サブチャネルタイプのセットを決定してもよい。各サブチャネルは情報ビット、PCビット又は凍結ビットにマッピングされる(或いは逆も同様である)。分極理論に従って、各サブチャネル上の信頼性(又は相互チャネル容量)は互いに異なる。高い信頼性を有するサブチャネルは、情報ビットを送信するために選択される。これらのサブチャネルの位置のセットは、情報セット(I)と名付けられる。レートマッチングにより引き起こされた信頼性の低いサブチャネルを含む、低い信頼性を有するサブチャネルは0に設定され、これらの位置のセットは凍結セット(F)として記される。いくつかのサブチャネルはPCビットを送信するために選択され、これらの位置のセットはPC凍結セット(PF)として記される。1つのポーラーブロックのサブチャネルの総数(N)は、2の累乗の値でもよく、マザー符号ブロック長(N=I+F+PF)と呼ばれてもよい。符号構成器2010はまた、情報ビット値及びサブチャネルタイプに基づいてサブチャネル値のセットを決定してもよい。特に、情報ビットにマッピングされるサブチャネルは、情報ビットの値に基づいて設定されてもよく、PCビットにマッピングされるサブチャネルは、パリティ検査関数に基づいて設定されてもよく、凍結ビットのためのサブチャネルは、0に設定される。Arikanエンコーダ2020は、Nビットのコードワードを取得するために、Nサイズのサブチャネルブロックをクロネッカー行列で乗算してもよい。Arikanエンコーダ2020は、以下の式:
Figure 2019533345
に従ってその乗算を実行してもよく、最も右の行列は、Arikanポーラー符号のためのN×Nの生成行列である。パンクチャリング器2030は、パンクチャビットセット(P)によりNビットのコードワードをMサイズの符号長にパンクチャリング/短縮してもよい。符号レート(R)と符号長(M)との組み合わせが与えられると、エンコーダとデコーダとの双方は、同じ決定論的なプロトコルを使用して、この凍結セット(F)、PC凍結セット(PF)及び短縮/パンクチャビットセット(P)を計算し得る。
マザー符号長Nを有するポーラー符号は、長さN/2の2つのポーラー符号のネスト型の組み合わせとしてモデル化できる。したがって、長さN/2のポーラー符号のための順序付けされた系列が長さNのポーラー符号のための順序付けされた系列のサブセットであるように、ビット位置の順序付けされた系列(インデックス系列)を構成することが可能である。その場合、Nmaxが2の累乗である場合の最大符号長Nmaxのポーラー符号のためのこのような系列Q0 Nmax-1は、ネスト型の方法でNmaxより小さい符号レートと(2の累乗の)符号長とのいずれかの組み合わせをカバーする。その後、レートマッチングは、低い複雑性で且つ比較的細かい粒度で実行できる。代替として、異なる長さの順序付けされた系列の生成は、オフラインで(例えば、符号化操作の前に)生成されてもよく、各順序付けされた系列に対応するパラメータは、ルックアップテーブルに記憶できる。
信号対雑音比(Signal to noise ratio, SNR)と独立した信頼性の推定は、各サブチャネルの信頼性を計算し、最大符号長Nmaxのポーラー符号のための順序付けされたインデックス系列Q0 Nmax-1を記憶することにより実行されてもよい。サブチャネルの信頼性の順序は、重み系列W0 Nmax-1を通じて推定されてもよく、これは以下のように計算されてもよい。Bj∈{0,1},j=[0,1,…,n-1]で
Figure 2019533345
を仮定すると、
Figure 2019533345
であり、n=log2(N)である。
一例では、Nmax=16のマザー符号長であり、n=log2(16)=4であり、i=3
Figure 2019533345
について、W3はW3=1*2(0*(1/4))+1*2(1*(1/4))+0*2(2*(1/4))+0*2(3*(1/4))=2.1892として計算できる。全重みベクトルは、W0 15=[0 1 1.1892 2.1892 1.4142 2.4142 2.6034 3.6034 1.6818 2.6818 2.8710 3.8710 3.0960 4.0960 4.2852 5.2852]であり、より大きい値はより高い信頼性を示す。W0 Nmax-1が取得されると、サブチャネルは、
Figure 2019533345
のように、分極重みによりソートできる。ソートされるべき結果の系列は、Q0 15=[0 1 2 4 8 3 5 6 9 10 12 7 11 13 14 15]である。Q0 Nmax-1は、進行中に計算されてもよく、或いはエンコーディング及びデコーディングのレートマッチング操作毎にそれを計算する必要がないようにメモリから直接ロードされてもよい点に留意すべきである。
パンクチャリングパターンは、降順のバイナリインデックス[N-1,N-2,…,1,0]をビット反転し、最も高いビット反転された値を有するN-M個のインデックスをパンクチャリングされた位置としてマーキングすることにより、決定論的な方法で計算されてもよい。一例として、Nmax=16のマザー符号長を考慮する。エンコーダとデコーダとの双方は、系列Q0 15=[0 1 2 4 8 3 5 6 9 10 12 7 11 13 14 15]を記憶する。符号長Mを取得し、[12(1100),13(1101),14(1110),15(1111)](=[M,…N-3,N-2,N-1])の系列をP=[3(0011),11(1011),7(0111),15(1111)=[BitRev(M),…,BitRev(N-3),BitRev(N-2),BitRev(N-1)])としてビット反転することにより、4の長さのパンクチャリングパターンPを計算するために、パンクチャリングされるべき4つのビット(4=N-M)が存在する。
PC凍結セット(PF)は、サブチャネルインデックス及び短縮/パンクチャリングパターン(P)に関して分極信頼性、クロネッカーカーネルの行重み及びハミング重みに依存して決定されてもよい。最も信頼性の高いサブチャネルのサブセット内の最小行重み(wmin)及び各PC凍結セット(f1,f2)のサイズは、符号レート及び情報ブロック長に基づいて決定されてもよい。
以下は、情報ビットの系列を符号化するための実施例の5ステップの技術の例である。
第1のステップにおいて、エンコーダは、Fp=log2N×(α-|α×(K/M-1/2)|2)に従って、候補PC凍結サブチャネルの数を計算してもよい。予めフラグ付けされたPC凍結ビットの総数は、N-K以下でもよい(N-Kに等しいとき、全ての凍結ビットがPC凍結ビットとして扱われる)。実際に、Fpは(N-K)/2により上限が決められてもよく、αは1より大きい値に設定され、例えば、α=1.5である。いくつかの他の実施例では、FpはN、M及びKの異なる関数を有してもよく、或いは固定されてもよい。
第2のステップにおいて、エンコーダは、パンクチャリング/短縮されたサブチャネルを最も左に移動し、その後、残りのサブチャネルを信頼性の昇順に2つのサブセットに分割してもよい。この例が図21に示される。
第3のステップにおいて、エンコーダは、サブチャネルの(K+Fp)サブセット内の最小の行重みを見つけ、これをwminとして記し、f1=(Fp+min(Fp,n))/2、f2=(Fp-min(Fp,n))/2を計算してもよい。(K+Fp)サブセット内の重みwminを有するサブチャネルの数がf1未満である場合、f1=nを設定し、f1内の残りの量の半分をf2に追加し、すなわち、f2=f2+(f1-n)/2である。
第4のステップにおいて、エンコーダは、(K+Fp)サブセット内で候補PC凍結サブチャネルを選択してもよい。これを行う際に、エンコーダは、右から左にwminの行重みを有するf1個のサブチャネルを選択し、右から左に2×wminの行重みを有するf2個のサブチャネルを候補PC凍結サブチャネルとして選択してもよい。いくつかの他の実施例では、Fp個のサブチャネルのサブセットは、行重みwminに基づいて決定されてもよく、Fp個のサブチャネルの残りのサブセットは、(K+Fp)サブセット内の最も信頼性の低いサブチャネルのような少なくとも1つの他のメトリックに基づいて決定されてもよい。
第5のステップにおいて、エンコーダは、情報セット、PC凍結セット及び凍結セットを決定してもよい。これを行う際に、エンコーダは、K個のサブチャネルが選択されるまで、最も右から最も左に情報サブチャネルを選択し、候補PC凍結サブチャネルをスキップしてもよい。その後、エンコーダは、残りのサブチャネルを凍結サブチャネルとして選択し、候補PC凍結サブチャネルのものと等しい行重み(すなわち、wmin及び2×wmin)を有する凍結サブチャネル位置から、更なるPC凍結サブチャネルとして選択してもよい。いくつかの他の実施例では、全ての凍結サブチャネルは、更なるPC凍結サブチャネルとして選択されてもよい。PC凍結ビットが第1の情報ビットの前である場合、これは凍結ビットに等しくてもよい。
エンコーダは、レジスタ上でのサイクリックシフトに基づいてパリティ検査関数を実行してもよい。レジスタの長さは素数でもよい。エンコーダは、i=0〜N-1についてpの長さのサイクリックシフトレジスタy[0],…,y[p-1]を0に初期化してもよい。自然数の順序における第1のビットから始めて、エンコーダは第iのビットを読み取り、レジスタをビット単位でサイクリック左シフトしてもよい。aiが情報ビットである場合、ビット値は不変のままであり、エンコーダはy[0]=(ai XOR y[0])を更新する。aiがPCビットである場合、エンコーダはai=y[0]を設定する。aiが凍結ビットである場合、エンコーダはai=0を設定する。
図22は、パリティ検査(parity-check, PC)SCLデコーダにより使用される実施例のサイクルシフトレジスタ操作を示す。PC関数は、PC行列Wにより規定されてもよい。以下の例は、符号ブロック長がM=16であり、情報ビット長がK=8であることを仮定する。これから、サブチャネルの以下の順序付き系列Q:[u0,u1,u2,u4,u8,u3,u5,u6,u9,u10,u12,u7,u11,u13,u14,u15]を取得することが可能である。上記に提供される式(例えば、Fp=log2N×(α-|α×(K/M-1/2)|2)等)に基づいて、Fpは6として計算され、wmin及びnはそれぞれ2及び3である。n<Fpであるので、PC凍結ビットとして、行重みwmin=2を有するf1=3個のサブチャネルであり、行重み2×dmin=4を有するf2=3個のサブチャネルである。信頼性の降順により、これらのPC凍結ビットは[u2,u4,u8,u9,u10,u12]である。情報及び更なる凍結ビットは、Qに従ってチャネル信頼性に基づいてマッピングされる。情報ビットセットは[u3,u5,u6,u7,u11,u13,u14,u15]であり、凍結ビットセットは[u0,u1,u2,u4,u8,u9,u10,u12]である。行重み2及び4を有する凍結ビットを選択することにより、PC凍結ビットセットは[u1,u2,u4,u8,u9,u10,u12]である。最後に、p=5を有する素数の長さのサイクリックレジスタが、[u1,u2,u4,u8,u9,u10,u12]内の各PC凍結ビットのためのパリティ関数を作るために使用される。サイクリックレジスタは、ビットを一定の間隔5で接続する。特に、u1、u2、u4及びu9は、静的凍結ビットと等しい。さらに、u8、u10及びu12は、(それぞれ)[u3,u8]、[u5,u10]及び[u7,u12]のパリティ関数に基づいてPCビットにマッピングされ、u3、u5及びu7は情報ビットである。図23は、この例についてのパリティ検査行列を示す。図示のように、Wは、u0、u1、u2、u4を静的凍結ビットとして設定し、u8=u3、u10=u5、u12=u7のようなセルフパリティ検査(self-parity-check)関数に基づいて、u8、u10及びu12をPCビットとして設定することにより取得される。表1は、この開示を通じて使用される表記を列挙する。
Figure 2019533345
図24は、エンコーダにより実行されてもよい、情報ビットの系列を符号化するための実施例の方法2400を示す。ステップ2410において、エンコーダは、
Figure 2019533345
(iはサブチャネルのインデックスであり、Bjは最も重要でない桁からカウントしてサブチャネルiのバイナリ表現の第(j+1)の桁のビット値{0又は1}である)に従って、重み系列を計算し、Wiを昇順にソートし、順序付けされたインデックス系列Qiを保存する。ステップ2040において、エンコーダは、例えば、P=[BitRev(M),BitRev(M+1),…BitRev(N-1)]に従ってパンクチャリング/短縮パターンを計算する。他のパンクチャリング/短縮パターンも可能になり得る。ステップ2430において、エンコーダは、Fp=log2N×(α-|α×(K/M-1/2)|2)によりFpを計算し、(重み又は信頼性の昇順に)サブチャネルを3つのサブセット:N-M、M-K-Fp、K+Fpに分割し、K+Fpサブセットは、最も信頼性の高いサブチャネルを含む(パンクチャリング/短縮が考慮されるとき)。エンコーダはまた、(K+Fp)サブセット内の最小の行重みとしてwminを見つけ、同じwminを有する(K+Fp)サブセット内のサブチャネルの数としてnを見つけ、f1=(Fp+min(Fp,n))/2を計算し、f2=(Fp-min(Fp,n))/2を計算する。ステップ2440において、エンコーダは、重みwminを有するf1個のサブチャネル及び重み2*wminを有するf2個のサブチャネルを選択することにより、K+Fpサブセット内でPCビットのために候補サブチャネルを確保又はさもなければ配分する。いくつかの実施例では、Fpは固定値、例えば、3でもよい。他の実施例では、PCビットのためのFp個のサブチャネルのサブセットのみが行重みwmin及び/又は2*wminに基づいて選択され、PCビットのためのFp個のサブチャネルの残りのサブセットが他のメトリック、例えば、最も信頼性の高いK+Fp個のサブチャネル内の最も信頼性の低いサブチャネルに少なくとも基づいて選択される。候補PCサブチャネルが配分されると、エンコーダはまた、情報セットIを取得するために、K+Fpサブセット内のK個の(最も信頼性の高い残りの)サブチャネルを配分し(すなわち、確保された候補PCサブチャネルをスキップし)、それに情報ビットをマッピングする。エンコーダはまた、凍結セット(F)を取得するために、残りのサブチャネル(例えば、N-M及び/又はM-K-Fpサブセット)に凍結ビットをマッピングする。他の実施例では、エンコーダは、凍結セットFからPCビットのための更なるサブチャネルを確保又は配分する。凍結セットFから選択された更なるサブチャネルは、wmin及び/又は2*wminに等しい行重みを有してもよく、或いは全ての凍結セットFがPCビットのための更なるサブチャネルとして扱われてもよい。確保されたサブチャネルは、PC凍結セットPFを取得するために、PCビットにマッピングされてもよい。ステップ2450において、エンコーダは、レジスタ内のサイクリックシフトを使用して、パリティ検査関数に基づいてPCビットの値を設定する。レジスタは、素数に等しい長さを有してもよい。実現方式に依存して、サブチャネルが配分される順序は変化してもよい。同様に、PCビット、情報ビット又は凍結ビットが配分されたサブチャネルにマッピングされる順序も変化してもよい。
図25は、ここに記載の符号化方法を実行するための実施例の処理システム2500のブロック図を示し、これはホストデバイスに設置されてもよい。図示のように、処理システム2500は、プロセッサ2504と、メモリ2506と、インタフェース2510〜2514とを含み、これらは図25に示すように配置されてもよい(或いは配置されなくてもよい)。プロセッサ2504は、ここに記載の選択、マッピング及び/又は他の符号化操作若しくは復号化操作のようなタスクに関する計算及び/又は他の処理を実行するように適合されたいずれかのコンポーネント又はコンポーネントの集合でもよく、メモリ2506は、プロセッサ2504による実行のためのプログラミング及び/又は命令を記憶するように適合されたいずれかのコンポーネント又はコンポーネントの集合でもよい。実施例では、メモリ2506は、非一時的なコンピュータ読み取り可能媒体を含む。インタフェース2510、2512、2514は、処理システム2500が符号化データの送信又は符号化データに基づく信号の受信を可能にするように、他のデバイス/コンポーネント及び/又はユーザと通信することを可能にするように構成されたいずれかのコンポーネント又はコンポーネントの集合でもよい。例えば、インタフェース2510、2512、2514のうち1つ以上は、プロセッサ2504からホストデバイス及び/又は遠隔デバイスにインストールされたアプリケーションにデータ、制御又は管理メッセージを通信するように適合されてもよい。他の例として、インタフェース2510、2512、2514のうち1つ以上は、ユーザ又はユーザデバイス(例えば、パーソナルコンピュータ(personal computer, PC)等)が処理システム2500と相互作用/通信することを可能にするように適合されてもよい。処理システム2500は、長期ストレージ(例えば、不揮発性メモリ等)のような図25に図示しない更なるコンポーネントを含んでもよい。
いくつかの実施例では、処理システム2500は、電気通信ネットワークにアクセスするネットワークデバイスに含まれるか、或いはさもなければその一部である。一例では、処理システム2500は、基地局、中継局、スケジューラ、コントローラ、ゲートウェイ、ルータ、アプリケーションサーバ、又は電気通信ネットワーク内の他のデバイスのような、無線又は有線電気通信ネットワーク内のネットワーク側デバイス内にある。他の実施例では、処理システム2500は、移動局、ユーザ装置(user equipment, UE)、無線デバイス、パーソナルコンピュータ(personal computer, PC)、タブレット、ウェアラブル通信デバイス(例えば、スマートウォッチ等)、又は電気通信ネットワークにアクセスするように適合された他のデバイスのような、無線又は有線電気通信ネットワークにアクセスするユーザ側デバイス内にある。
いくつかの実施例では、インタフェース2510、2512、2514のうち1つ以上は、電気通信ネットワーク上でシグナリングを送信及び受信するように適合されたトランシーバに処理システム2500を接続する。図26は、電気通信ネットワーク上でシグナリング又は符号化データを送信及び受信するように適合されたトランシーバ2600のブロック図を示す。トランシーバ2600は、ホストデバイスに設置されてもよい。図示のように、トランシーバ2600は、ネットワーク側インタフェース2602と、カプラ2604と、送信機2606と、受信機2608と、シグナルプロセッサ2610と、デバイス側インタフェース2612とを含む。ネットワーク側インタフェース2602は、無線又は有線電気通信ネットワーク上でシグナリングを送信又は受信するように適合されたいずれかのコンポーネント又はコンポーネントの集合を含んでもよい。カプラ2604は、ネットワーク側インタフェース2602上で双方向通信を容易にするように適合されたいずれかのコンポーネント又はコンポーネントの集合を含んでもよい。送信機2606は、ベースバンド信号を、ネットワーク側インタフェース2602上での送信に適した変調キャリア信号に変換するように適合されたいずれかのコンポーネント又はコンポーネントの集合(例えば、アップコンバータ、電力増幅器等)を含んでもよい。受信機2608は、ネットワーク側インタフェース2602上で受信したキャリア信号をベースバンド信号に変換するように適合されたいずれかのコンポーネント又はコンポーネントの集合(例えば、ダウンコンバータ、低雑音増幅器等)を含んでもよい。シグナルプロセッサ2610は、ベースバンド信号を、デバイス側インタフェース2612上での通信に適したデータ信号に変換し、或いは逆も同様に行うように適合されたいずれかのコンポーネント又はコンポーネントの集合を含んでもよい。デバイス側インタフェース2612は、シグナルプロセッサ2610と、ホストデバイス内のコンポーネント(例えば、処理システム2500、ローカルエリアネットワーク(local area network, LAN)ポート等)との間でデータ信号を通信するように適合されたいずれかのコンポーネント又はコンポーネントの集合を含んでもよい。トランシーバ2600は、いずれかの種類の通信媒体上でシグナリングを送信及び受信してもよい。いくつかの実施例では、トランシーバ2600は、無線媒体上でシグナリングを送信及び受信する。例えば、トランシーバ2600は、セルラプロトコル(例えば、ロングタームエボリューション(long-term evolution, LTE等)、無線ローカルエリアネットワーク(wireless local area network, WLAN)プロトコル(例えば、Wi-Fi等)又は他の種類の無線プロトコル(例えば、ブルートゥース、近距離通信(near field communication, NFC)等)のような無線電気通信プロトコルに従って通信するように適合された無線トランシーバでもよい。このような実施例では、ネットワーク側インタフェース2602は、1つ以上のアンテナ/放射エレメントを含む。例えば、ネットワーク側インタフェース2602は、単一のアンテナ、複数の別々のアンテナ、又はマルチレイヤ通信、例えば、シングル・インプット・マルチプル・アウトプット(single input multiple output, SIMO)、マルチプル・インプット・シングル・アウトプット(multiple input single output, MISO)、マルチプル・インプット・マルチプル・アウトプット(multiple input multiple output, MIMO)等のために構成されたマルチアンテナアレイを含んでもよい。他の実施例では、トランシーバ2600は、有線媒体、例えば、ツイストペアケーブル、同軸ケーブル、光ファイバ等上でシグナリングを送信及び受信する。具体的な処理システム及び/又はトランシーバは、図示のコンポーネントの全て、又はコンポーネントのサブセットのみを利用してもよく、統合のレベルはデバイスによって変化し得る。
実施例によれば、ポーラー符号でデータを符号化するための方法が提供される。この実施例では、当該方法は、デバイスのエンコーダで符号化データを取得するために、情報ビット及び少なくとも1つのパリティビットをポーラー符号化するステップを含む。少なくとも1つのパリティビットは、重みパラメータに基づいて少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルに配置される。当該方法は、符号化データを他のデバイスに送信するステップを更に含む。一例では、重みパラメータは最小重みを含む。このような例では、少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は最小重みの2倍を有する第2の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、当該方法は、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも1つのサブチャネルを選択するステップを更に含んでもよい。最小重みを有する少なくとも1つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、順序付けされたサブチャネルのセグメントから選択するステップは、最小重みを有する少なくとも1つのサブチャネルは、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む。その例又は他の例では、エンコーダは、少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用してもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のうちいずれか又は他の例では、当該方法は、順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされることを更に含む。前述の例のうちいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよい。当該方法は、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する、ステップを更に含んでもよい。このような例では、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するステップは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数が所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するステップを含んでもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、当該方法は、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルをスキップするステップを更に含んでもよい。この方法を実行するための装置も提供される。
更に他の実施例によれば、ポーラー符号でデータを符号化するように構成されたデバイスが提供される。この実施例では、当該デバイスは、符号化データを取得するために、情報ビット及び少なくとも1つのパリティビットをポーラー符号化するように構成されたエンコーダを含む。少なくとも1つのパリティビットは、重みパラメータに基づいて少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルに配置され、デバイスは、符号化データを他のデバイスに送信するように構成されたインタフェースを含む。前述の符号化の実施例のうちいずれかの一例では、重みパラメータは最小重みを含む。このような例では、少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は最小重みの2倍を有する第2の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも1つのサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最小重みを有する少なくとも1つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、デバイス/エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも1つのサブチャネルを選択し、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数が所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択してもよい。その例又は他の例では、エンコーダは、少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成されてもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のいずれか又は他の例では、当該デバイスの順序付けされたサブチャネルは、信頼性メトリックに基づいて順序付けされてもよい。前述の例のいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよく、エンコーダは、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するように更に構成されてもよい。サブチャネルの行重みは、クロネッカー行列の行の中の1の数である。行はサブチャネルに対応してもよい。このような例では、当該デバイスは、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択してもよい。エンコーダは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数nが所定の数Fpより大きいとき、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、エンコーダは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルをスキップするように更に構成されてもよい。
どのようにハミング重みが補助サブチャネルを選択するための第2のメトリックとして使用できるかの例は、2016年12月12日に出願された米国仮出願第62/433127号に、より詳細に議論されており、これを参照により援用する。ハミング重みは、第2のメトリックとして使用されてもよいメトリックの単なる例である点に留意すべきである。他の例は、ハミング重みの関数を含む(例えば、2016年12月9日に出願され、参照により援用する米国仮出願第62/432448に開示された行重み。一般的に、(分極)信頼性を示す他のメトリックも、第2のメトリックとして使用できる。更なる代案では、第2のメトリックは第1のメトリックと異なるが、分極信頼性にも関係するか、或いは分極信頼性を示す。しかし、更に他の代案では、サブチャネルの自然の順序が第2のメトリックとして使用でき、それにより、例えば、(例えば、自然数の昇順における)情報サブチャネルの終わりのサブチャネルが補助サブチャネルとして選択される。

Claims (28)

  1. ポーラー符号でデータを符号化するためのデバイスのための方法であって、
    前記デバイスのエンコーダで、符号化データを取得するために、情報ビット及び少なくとも1つのパリティビットをポーラー符号化するステップであり、前記少なくとも1つのパリティビットは、重みパラメータに基づいて前記少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルに配置される、ステップと、
    前記符号化データを他のデバイスに送信するステップと
    を含む方法。
  2. 前記重みパラメータは最小重みを含む、請求項1に記載の方法。
  3. 前記少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は前記最小重みの2倍を有する第2の数のサブチャネルに配置される、請求項1又は2に記載の方法。
  4. 前記デバイスの前記エンコーダで、順序付けされたサブチャネルのセグメントから、最小重みを有する前記少なくとも1つのサブチャネルを選択するステップを更に含む、請求項1乃至3のうちいずれか1項に記載の方法。
  5. 最小重みを有する前記少なくとも1つのサブチャネルは、前記順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択され、前記K個のサブチャネルのそれぞれは、前記順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である、請求項4に記載の方法。
  6. 順序付けされたサブチャネルの前記セグメントから最小重みを有する前記少なくとも1つのサブチャネルを選択することは、K個のサブチャネルの前記セグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルの前記セグメントから、前記信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む、請求項5に記載の方法。
  7. 前記エンコーダで、前記少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するステップを更に含む、請求項1乃至6のうちいずれか1項に記載の方法。
  8. 前記パリティ検査関数は素数パリティ検査関数である、請求項7に記載の方法。
  9. 前記順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされる、請求項1乃至8のうちいずれか1項に記載の方法。
  10. 前記重みパラメータは最低の行重みを含み、当該方法は、
    サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、前記行は前記サブチャネルに対応する、ステップを更に含む、請求項1乃至9のうちいずれか1項に記載の方法。
  11. K個の最も信頼性の高いサブチャネルの前記サブセット内で最低の行重みを有する前記少なくとも1つのサブチャネルを選択するステップは、前記K個の最も信頼性の高いサブチャネルの中で前記最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルの前記サブセット内で前記最低の行重みを有するFp個のサブチャネルを選択するステップを含む、請求項10に記載の方法。
  12. 最低の行重みを有する前記少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルの前記サブセットから選択される、請求項10に記載の方法。
  13. 前記情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの前記順序付けされた系列内で前記情報ビットのために前記サブチャネルを選択し、前記少なくとも1つのパリティビットのために選択された前記少なくとも1つのサブチャネルをスキップするステップを更に含む、請求項10に記載の方法。
  14. ポーラー符号でデータを符号化するように構成されたデバイスであって、
    符号化データを取得するために、情報ビット及び少なくとも1つのパリティビットをポーラー符号化するように構成されたエンコーダであり、前記少なくとも1つのパリティビットは、重みパラメータに基づいて前記少なくとも1つのパリティビットのために選択された少なくとも1つのサブチャネルに配置される、エンコーダと、
    前記符号化データを他のデバイスに送信するように構成されたインタフェースと
    を含むデバイス。
  15. 前記重みパラメータは最小重みを含む、請求項14に記載のデバイス。
  16. 前記少なくとも1つのパリティビットは、最小重みを有する第1の数のサブチャネルのうち少なくとも1つ又は前記最小重みの2倍を有する第2の数のサブチャネルに配置される、請求項14又は15に記載のデバイス。
  17. 前記エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する前記少なくとも1つのサブチャネルを選択するように更に構成される、請求項14乃至16のうちいずれか1項に記載のデバイス。
  18. 最小重みを有する前記少なくとも1つのサブチャネルは、前記順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択され、前記K個のサブチャネルのそれぞれは、前記順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である、請求項17に記載のデバイス。
  19. 順序付けされたサブチャネルの前記セグメントから最小重みを有する前記少なくとも1つのサブチャネルを選択するために、前記エンコーダは、
    K個のサブチャネルの前記セグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルの前記セグメントから、前記信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択するように更に構成される、請求項18に記載のデバイス。
  20. 前記エンコーダは、前記少なくとも1つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成される、請求項14乃至19のうちいずれか1項に記載のデバイス。
  21. 前記パリティ検査関数は素数パリティ検査関数である、請求項20に記載のデバイス。
  22. 前記順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされる、請求項14乃至21のうちいずれか1項に記載のデバイス。
  23. 前記重みパラメータは最低の行重みを含み、前記エンコーダは、
    サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも1つのサブチャネルを選択するように更に構成され、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、前記行は前記サブチャネルに対応する、請求項14乃至22のうちいずれか1項に記載のデバイス。
  24. K個の最も信頼性の高いサブチャネルの前記サブセット内で最低の行重みを有する前記少なくとも1つのサブチャネルを選択するために、前記エンコーダは、前記K個の最も信頼性の高いサブチャネルの中で前記最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルの前記サブセット内で前記最低の行重みを有するFp個のサブチャネルを選択するように更に構成される、請求項23に記載のデバイス。
  25. 最低の行重みを有する前記少なくとも1つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルの前記サブセットから選択される、請求項23に記載のデバイス。
  26. 前記エンコーダは、前記情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの前記順序付けされた系列内で前記情報ビットのために前記サブチャネルを選択し、前記少なくとも1つのパリティビットのために選択された前記少なくとも1つのサブチャネルをスキップするように更に構成される、請求項23に記載のデバイス。
  27. デバイスのための復号化方法であって、
    他のデバイスから、符号化データに基づく信号を受信するステップであり、前記符号化データはポーラー符号で情報ビット及び少なくとも1つのパリティビットを符号化することにより生成され、前記少なくとも1つのパリティビットは、重みパラメータに基づいて選択された少なくとも1つのサブチャネルに配置される、ステップと、
    前記情報ビットを取得するために、前記ポーラー符号及び前記少なくとも1つのパリティビットを使用して前記信号を復号化するステップと
    を含む方法。
  28. ポーラー符号で復号化するように構成されたデバイスであって、
    他のデバイスから、符号化データに基づく信号を受信するように構成されたインタフェースであり、前記符号化データはポーラー符号で情報ビット及び少なくとも1つのパリティビットを符号化することにより生成され、前記少なくとも1つのパリティビットは、重みパラメータに基づいて選択された少なくとも1つのサブチャネルに配置される、インタフェースと、
    前記情報ビットを取得するために、前記ポーラー符号及び前記少なくとも1つのパリティビットを使用して前記信号を復号化するように構成されたデコーダと
    を含むデバイス。
JP2019514216A 2016-09-15 2017-09-13 ポーラー符号を使用してデータを符号化するための方法及び装置 Active JP6859429B2 (ja)

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US201662395312P 2016-09-15 2016-09-15
US62/395,312 2016-09-15
US201662396618P 2016-09-19 2016-09-19
US62/396,618 2016-09-19
US201662402862P 2016-09-30 2016-09-30
US62/402,862 2016-09-30
US201662432416P 2016-12-09 2016-12-09
US201662432448P 2016-12-09 2016-12-09
US62/432,448 2016-12-09
US62/432,416 2016-12-09
US201662433127P 2016-12-12 2016-12-12
US62/433,127 2016-12-12
US15/699,976 US10644829B2 (en) 2016-09-15 2017-09-08 Method and apparatus for encoding data using a polar code
US15/699,976 2017-09-08
PCT/CN2017/101531 WO2018050063A1 (en) 2016-09-15 2017-09-13 Method and apparatus for encoding data using a polar code

Publications (2)

Publication Number Publication Date
JP2019533345A true JP2019533345A (ja) 2019-11-14
JP6859429B2 JP6859429B2 (ja) 2021-04-14

Family

ID=61560541

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019514216A Active JP6859429B2 (ja) 2016-09-15 2017-09-13 ポーラー符号を使用してデータを符号化するための方法及び装置
JP2019514117A Active JP6881859B2 (ja) 2016-09-15 2017-09-13 Polar符号を用いてデータを符号化する方法及び装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2019514117A Active JP6881859B2 (ja) 2016-09-15 2017-09-13 Polar符号を用いてデータを符号化する方法及び装置

Country Status (11)

Country Link
US (7) US10644829B2 (ja)
EP (3) EP3940961A1 (ja)
JP (2) JP6859429B2 (ja)
KR (2) KR102199298B1 (ja)
CN (4) CN110855299B (ja)
AU (2) AU2017326022B2 (ja)
BR (2) BR112019004937A2 (ja)
CA (2) CA3036759C (ja)
MY (1) MY195393A (ja)
WO (2) WO2018050063A1 (ja)
ZA (2) ZA201901831B (ja)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016110275A1 (zh) * 2015-01-08 2016-07-14 上海交通大学 一种基于媒体内容的fec机制
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US11043966B2 (en) 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
US10644829B2 (en) * 2016-09-15 2020-05-05 Huawei Technologies Co., Ltd. Method and apparatus for encoding data using a polar code
WO2018058352A1 (en) * 2016-09-28 2018-04-05 Qualcomm Incorporated Sub-channel mapping
US10484130B2 (en) 2016-09-30 2019-11-19 Huawei Technologies Co., Ltd. Method and device for parallel polar code encoding/decoding
WO2018107430A1 (en) * 2016-12-15 2018-06-21 Qualcomm Incorporated Crc bits for joint decoding and verification of control information using polar codes
CN117375765A (zh) * 2017-01-05 2024-01-09 华为技术有限公司 速率匹配方法、编码装置和通信装置
CN115720128A (zh) 2017-01-09 2023-02-28 中兴通讯股份有限公司 一种数据处理方法和装置
CN108289010B (zh) * 2017-01-09 2022-04-15 中兴通讯股份有限公司 一种数据处理方法和装置
CN108575116B (zh) * 2017-01-09 2019-09-24 联发科技股份有限公司 比特映射方法及其发送装置
WO2018129695A1 (en) * 2017-01-12 2018-07-19 Qualcomm Incorporated Puncturing and repetition for data encoding
CN108365914B (zh) * 2017-01-26 2023-04-18 华为技术有限公司 Polar码编译码方法及装置
US10608786B2 (en) * 2017-02-24 2020-03-31 Huawei Technologies Co., Ltd. Apparatus and methods of specifying ordered sequences of coding sub-channels
US11070237B2 (en) * 2017-03-23 2021-07-20 Qualcomm Incorporated Parity bit channel assignment for polar coding
CN107342844B (zh) 2017-03-24 2022-09-02 华为技术有限公司 一种编码方法和装置
JP7357541B2 (ja) * 2017-04-20 2023-10-06 クアルコム,インコーポレイテッド ポーラ符号のための動的凍結ビットおよび誤り検出
CN108809486B (zh) * 2017-05-03 2020-09-04 华为技术有限公司 Polar码编译码方法及装置
EP3622646B1 (en) * 2017-05-08 2020-10-21 Coherent Logix, Inc. Enhanced polarization weighting to enable scalability in polar code bit distribution
CN107425857A (zh) 2017-06-19 2017-12-01 华为技术有限公司 一种极化码编译码方法及装置
CN109286402B (zh) * 2017-07-21 2022-01-14 华为技术有限公司 一种Polar码编码方法及装置
WO2019047206A1 (en) * 2017-09-11 2019-03-14 Qualcomm Incorporated PHYSICAL DIFFUSION CHANNEL DESIGN FOR POLAR CODES
CN111434042A (zh) * 2017-11-15 2020-07-17 Idac控股公司 利用极性码进行urllc传输
KR102438982B1 (ko) * 2017-11-16 2022-09-01 삼성전자주식회사 무선 통신 시스템에서 부호화 및 복호화를 위한 방법 및 장치
US10540379B2 (en) * 2017-12-11 2020-01-21 International Business Machines Corporation Searching base encoded text
KR102550075B1 (ko) * 2018-03-23 2023-06-30 삼성전자주식회사 무선 통신 시스템에서 순환 중복 검사를 이용한 복호화를 위한 장치 및 방법
KR102541319B1 (ko) 2018-03-29 2023-06-08 삼성전자주식회사 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법
CN108809329B (zh) * 2018-05-03 2021-09-28 东南大学 一种能同时处理极化码和ldpc码的bp译码器的配置方法
EP3570442A1 (en) * 2018-05-17 2019-11-20 Industrial Technology Research Institute Compact transmission of polar encoded dci with repetition for 5g communication systems
CN110752891B (zh) * 2018-07-24 2022-04-29 中兴通讯股份有限公司 极化码译码方法及装置、存储介质、电子装置
CN109450457B (zh) * 2018-08-09 2022-05-24 山东科技大学 一种码长自由的极化码编码方法
US11050519B2 (en) * 2018-09-14 2021-06-29 Idac Holdings, Inc. Methods, apparatus, systems and procedures for hybrid automatic repeat requests (HARQs) using polar codes
US10644835B1 (en) 2018-10-12 2020-05-05 Samsung Electronics Co., Ltd. System and method for interleaving distributed CRC in polar codes for early termination
KR102632560B1 (ko) * 2018-10-19 2024-02-02 삼성전자주식회사 경로 메트릭을 이용하여 입력 데이터를 디코딩하는 장치 및 이를 이용하는 디코딩 방법
CN114172617A (zh) 2018-11-16 2022-03-11 华为技术有限公司 Polar码编码方法及装置
CN111385059B (zh) * 2018-12-27 2021-08-31 华为技术有限公司 极化编码调制的方法和装置
CN111446969B (zh) * 2019-01-17 2023-10-20 华为技术有限公司 一种级联crc码的极化码编码方法及装置
CN109889307B (zh) * 2019-01-24 2021-06-01 东南大学 一种基于组合极化码的打孔方法
CN111756384B (zh) * 2019-03-28 2022-08-26 华为技术有限公司 译码方法、装置及设备
KR20210006807A (ko) 2019-07-09 2021-01-19 삼성전자주식회사 통신 시스템에서 신호 송수신 장치 및 방법
CN110380737B (zh) * 2019-07-12 2020-10-02 北京邮电大学 一种极化码距离谱分析的方法及装置
EP3813278B1 (en) * 2019-10-22 2023-03-01 Mitsubishi Electric R&D Centre Europe B.V. Multilevel polar-coded modulation transmitting and receiving methods and devices
CN111130566B (zh) * 2019-12-18 2021-05-11 清华大学 Polar码译码器中寻找L个最大路径度量值的电路实现方法
US11418220B2 (en) 2020-03-20 2022-08-16 Huawei Technologies Co., Ltd. Method, system, and apparatus for a segmented polarization-adjusted convolutional (PAC) code
CN113541698B (zh) * 2020-04-22 2022-07-12 华为技术有限公司 编码、译码方法、装置及设备
CN112087285B (zh) * 2020-09-10 2021-07-20 西南交通大学 基于码距与极化信道可靠度的极化码比特反转译码方法
US11515964B2 (en) * 2021-01-29 2022-11-29 Huawei Technologies Co., Ltd. Systems and methods for using not perfectly polarized bit channels in parallel polar codes
CN113438023B (zh) * 2021-06-18 2022-08-05 重庆理工大学 一种自由空间光通信中极化码级联编码方法及装置
US11791844B2 (en) * 2021-12-22 2023-10-17 Huawei Technologies Co., Ltd. Systems and methods for using special nodes for polar encoding in polar codes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140173376A1 (en) * 2012-12-14 2014-06-19 Sungkyunkwan University Research & Business Foundation Encoding method and apparatus using crc code and polar code

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317715A (en) * 1987-12-15 1994-05-31 Advanced Micro Devices, Inc. Reduced instruction set computer system including apparatus and method for coupling a high performance RISC interface to a peripheral bus having different performance characteristics
US6307868B1 (en) * 1995-08-25 2001-10-23 Terayon Communication Systems, Inc. Apparatus and method for SCDMA digital data transmission using orthogonal codes and a head end modem with no tracking loops
US6625219B1 (en) 1999-02-26 2003-09-23 Tioga Technologies, Ltd. Method and apparatus for encoding/framing for modulated signals over impulsive channels
US20020194571A1 (en) 2001-06-13 2002-12-19 Michael Parr System and method of coding cyclic redundancy check bits to enhance frequency reuse in a communications network
US7406647B2 (en) 2001-12-06 2008-07-29 Pulse-Link, Inc. Systems and methods for forward error correction in a wireless communication network
US20040019845A1 (en) * 2002-07-26 2004-01-29 Hughes Electronics Method and system for generating low density parity check codes
US7392464B1 (en) * 2004-04-30 2008-06-24 Marvell International Ltd. Universal parity encoder
KR101102396B1 (ko) 2006-02-08 2012-01-05 엘지전자 주식회사 이동통신 시스템에서의 코드워드 크기 정합 방법 및 송신장치
US8312323B2 (en) * 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
CN101325474B (zh) * 2007-06-12 2012-05-09 中兴通讯股份有限公司 Ldpc码的混合自动请求重传的信道编码及调制映射方法
US8386879B2 (en) * 2007-08-23 2013-02-26 Nec Laboratories America, Inc. GLDPC encoding with Reed-Muller component codes for optical communications
US8233532B2 (en) 2007-09-21 2012-07-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal
US8776161B2 (en) 2008-02-12 2014-07-08 Ciena Corporation Systems and methods for video processing in network edge devices
US20090271686A1 (en) 2008-04-28 2009-10-29 Qualcomm Incorporated Communication signal decoding with iterative cooperation between turbo and reed-solomon decoding
US8327234B2 (en) * 2009-02-27 2012-12-04 Research In Motion Limited Code block reordering prior to forward error correction decoding based on predicted code block reliability
US8352827B2 (en) * 2009-06-25 2013-01-08 Nec Laboratories America, Inc. LDPC hard decision decoder for high-speed wireless data communications
EP2486697B1 (en) 2009-10-06 2013-12-11 Thomson Licensing A method and apparatus for hop-by hop reliable multicast in wireless networks
US9116826B2 (en) 2010-09-10 2015-08-25 Trellis Phase Communications, Lp Encoding and decoding using constrained interleaving
US8879640B2 (en) * 2011-02-15 2014-11-04 Hong Kong Applied Science and Technology Research Institute Company Limited Memory efficient implementation of LDPC decoder
CN102164025B (zh) * 2011-04-15 2013-06-05 北京邮电大学 基于重复编码和信道极化的编码器及其编译码方法
CN102122966B (zh) * 2011-04-15 2012-11-14 北京邮电大学 基于信道极化的交错结构重复码的编码器及其编译码方法
CN102694625B (zh) * 2012-06-15 2014-11-12 北京邮电大学 一种循环冗余校验辅助的极化码译码方法
CN103516476B (zh) 2012-06-29 2016-12-21 华为技术有限公司 编码方法和设备
CN103684477B (zh) * 2012-09-24 2017-02-01 华为技术有限公司 混合极性码的生成方法和生成装置
AU2013234368B2 (en) * 2012-10-01 2016-08-18 Hybrid Electronics Australia Pty. Ltd. Residual current device (rcd) with earth current sensing
CN108650057B (zh) * 2012-10-17 2023-10-13 华为技术有限公司 一种编译码的方法、装置及系统
CN107659384A (zh) 2012-11-16 2018-02-02 华为技术有限公司 数据处理的方法和装置
KR102007770B1 (ko) 2012-12-14 2019-08-06 삼성전자주식회사 패킷의 부호화 방법과 그 복호화 장치 및 방법
US9304859B2 (en) 2012-12-29 2016-04-05 Emc Corporation Polar codes for efficient encoding and decoding in redundant disk arrays
CN103023618B (zh) * 2013-01-11 2015-04-22 北京邮电大学 一种任意码长的极化编码方法
US9362956B2 (en) 2013-01-23 2016-06-07 Samsung Electronics Co., Ltd. Method and system for encoding and decoding data using concatenated polar codes
US9235467B2 (en) * 2013-03-15 2016-01-12 Pmc-Sierra Us, Inc. System and method with reference voltage partitioning for low density parity check decoding
CN104079370B (zh) 2013-03-27 2018-05-04 华为技术有限公司 信道编译码方法及装置
CN103281166B (zh) * 2013-05-15 2016-05-25 北京邮电大学 一种基于极化码的混合自动重传请求传输方法
CN104219019B (zh) * 2013-05-31 2021-06-22 华为技术有限公司 编码方法及编码设备
US9459956B2 (en) * 2013-07-19 2016-10-04 Seagate Technology Llc Data decoder with trapping set flip bit mapper
WO2015053788A1 (en) 2013-10-11 2015-04-16 Hewlett-Packard Development Company, L.P. Utilizing collected data from a software-defined networking network to diagnose a user experience
US9489256B2 (en) * 2013-11-07 2016-11-08 Seagate Technology Llc Device quality metrics using unsatisfied parity checks
KR101496182B1 (ko) * 2013-12-16 2015-03-09 성균관대학교산학협력단 최소거리가 확장된 극 부호 생성 방법 및 장치
JP6184603B2 (ja) 2013-12-24 2017-08-23 華為技術有限公司Huawei Technologies Co.,Ltd. Polarコード復号方法および復号装置
US10193578B2 (en) * 2014-07-10 2019-01-29 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
US9722651B2 (en) * 2015-01-09 2017-08-01 Qualcomm Incorporated Adaptive channel coding using polarization
US10298271B2 (en) 2015-02-03 2019-05-21 Infineon Technologies Ag Method and apparatus for providing a joint error correction code for a combined data frame comprising first data of a first data channel and second data of a second data channel and sensor system
CN105099622B (zh) * 2015-07-01 2018-10-19 北京邮电大学 极化编码调制中信道可靠度的确定方法及装置
CN105680883B (zh) * 2015-12-23 2017-11-14 华中科技大学 一种极化码和多比特奇偶校验码级联的纠错编码方法
CN105656604B (zh) * 2016-01-21 2019-03-26 北京邮电大学 一种比特交织极化编码调制方法及装置
CN105743621B (zh) * 2016-02-02 2019-03-26 北京邮电大学 基于极化码的harq信号发送、接收方法及装置
CN105811998B (zh) 2016-03-04 2019-01-18 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统
US10728080B2 (en) 2016-05-20 2020-07-28 Qualcomm Incorporated Polar codes and modulation mappings
EP3273602B1 (en) 2016-07-19 2022-01-26 MediaTek Inc. Low complexity rate matching design for polar codes
US10389484B2 (en) 2016-07-29 2019-08-20 Lg Electronics Inc. Method for performing polar coding and apparatus therefor
CN107666370B (zh) 2016-07-29 2023-09-22 华为技术有限公司 编码方法和设备
CN109661787A (zh) 2016-08-10 2019-04-19 Idac控股公司 用于控制信息的基于优先级的信道编码
US10644829B2 (en) 2016-09-15 2020-05-05 Huawei Technologies Co., Ltd. Method and apparatus for encoding data using a polar code
WO2018201409A1 (en) 2017-05-04 2018-11-08 Nokia Technologies Oy Coding apparatus for polar codes

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140173376A1 (en) * 2012-12-14 2014-06-19 Sungkyunkwan University Research & Business Foundation Encoding method and apparatus using crc code and polar code

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HUAWEI ET AL.: "Evaluation of polar codes for eMBB scenario[online]", 3GPP TSG-RAN WG1#85, vol. R1-164375, JPN6020027751, 14 May 2016 (2016-05-14), ISSN: 0004316203 *
HUAWEI ET AL.: "Overview of Polar Codes", 3GPP TSG-RAN WG1#84B, vol. R1-162161, JPN6020027753, 2 April 2016 (2016-04-02), ISSN: 0004316204 *
HUAWEI ET AL.: "Polar Code Construction for NR", 3GPP TSG-RAN WG1#86B, vol. R1-1608862, JPN6020027749, 1 October 2016 (2016-10-01), ISSN: 0004316202 *

Also Published As

Publication number Publication date
CA3036916A1 (en) 2018-03-22
CN109716662B (zh) 2024-01-30
EP3510699A1 (en) 2019-07-17
US20180076929A1 (en) 2018-03-15
EP3510699B1 (en) 2021-06-02
JP6881859B2 (ja) 2021-06-02
CN110855299A (zh) 2020-02-28
US10491326B2 (en) 2019-11-26
AU2017326021B2 (en) 2020-09-03
CA3036759C (en) 2022-05-10
WO2018050063A1 (en) 2018-03-22
KR20190052054A (ko) 2019-05-15
AU2017326021A1 (en) 2019-04-11
US20230046507A1 (en) 2023-02-16
CA3036759A1 (en) 2018-03-22
AU2017326022A1 (en) 2019-04-11
EP3510700A4 (en) 2019-09-04
US20200295867A1 (en) 2020-09-17
ZA201901831B (en) 2021-05-26
US11509414B2 (en) 2022-11-22
JP6859429B2 (ja) 2021-04-14
US10637607B2 (en) 2020-04-28
US20190089481A1 (en) 2019-03-21
US10700808B2 (en) 2020-06-30
CN110808813A (zh) 2020-02-18
BR112019004937A2 (pt) 2019-06-25
BR112019005074A2 (pt) 2019-07-09
EP3510700A1 (en) 2019-07-17
US10644829B2 (en) 2020-05-05
US20200092035A1 (en) 2020-03-19
US20190068316A1 (en) 2019-02-28
US11923973B2 (en) 2024-03-05
KR102199298B1 (ko) 2021-01-06
CN110808813B (zh) 2020-12-25
CN109804566A (zh) 2019-05-24
CN110855299B (zh) 2021-02-12
WO2018050062A9 (en) 2018-04-12
JP2019530333A (ja) 2019-10-17
WO2018050062A1 (en) 2018-03-22
EP3510699A4 (en) 2019-09-04
EP3510700B1 (en) 2022-02-23
KR20190053899A (ko) 2019-05-20
MY195393A (en) 2023-01-18
US20180076922A1 (en) 2018-03-15
CA3036916C (en) 2021-08-24
US11374682B2 (en) 2022-06-28
BR112019005074B1 (pt) 2023-02-14
EP3940961A1 (en) 2022-01-19
KR102206307B1 (ko) 2021-01-21
AU2017326022B2 (en) 2020-08-27
CN109716662A (zh) 2019-05-03
ZA201901830B (en) 2021-02-24

Similar Documents

Publication Publication Date Title
JP6859429B2 (ja) ポーラー符号を使用してデータを符号化するための方法及び装置
CN110089037B (zh) 用于极化码构造的装置和方法
CN110326221B (zh) 一种用于为极化码生成有序序列的方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190514

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201102

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210325

R150 Certificate of patent or registration of utility model

Ref document number: 6859429

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250