(57)【要約】  実施例の技術は、サブチャネルにパリティビットをこれらの行重みに基づいてマッピングする。サブチャネルのための行重みは、クロネッカー行列の対応する行の中の「1」の数、又は2の累乗、ただし、指数（すなわち、ハミング重み）がサブチャネルインデックスのバイナリ表現における「1」の数であるもの（更に以下に説明する）として見なされてもよい。一実施例では、特定の行重み値を有する候補サブチャネルがパリティビットのために確保される。その後、K個の情報ビットは、K個の最も信頼性の高い残りのサブチャネルにマッピングされてもよく、複数の凍結ビット（例えば、N-K個）は、最も信頼性の低い残りのサブチャネルにマッピングされてもよい。その後、パリティビットは、候補サブチャネルにマッピングされ、パリティビット値は、情報ビットの関数に基づいて決定される。
2019533345.tif 000002
【特許請求の範囲】
【請求項１】
ポーラー符号でデータを符号化するためのデバイスのための方法であって、
前記デバイスのエンコーダで、符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するステップであり、前記少なくとも１つのパリティビットは、重みパラメータに基づいて前記少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置される、ステップと、
前記符号化データを他のデバイスに送信するステップと
を含む方法。
【請求項２】
前記重みパラメータは最小重みを含む、請求項１に記載の方法。
【請求項３】
前記少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は前記最小重みの２倍を有する第２の数のサブチャネルに配置される、請求項１又は２に記載の方法。
【請求項４】
前記デバイスの前記エンコーダで、順序付けされたサブチャネルのセグメントから、最小重みを有する前記少なくとも１つのサブチャネルを選択するステップを更に含む、請求項１乃至３のうちいずれか１項に記載の方法。
【請求項５】
最小重みを有する前記少なくとも１つのサブチャネルは、前記順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択され、前記K個のサブチャネルのそれぞれは、前記順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である、請求項４に記載の方法。
【請求項６】
順序付けされたサブチャネルの前記セグメントから最小重みを有する前記少なくとも１つのサブチャネルを選択することは、K個のサブチャネルの前記セグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルの前記セグメントから、前記信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む、請求項５に記載の方法。
【請求項７】
前記エンコーダで、前記少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するステップを更に含む、請求項１乃至６のうちいずれか１項に記載の方法。
【請求項８】
前記パリティ検査関数は素数パリティ検査関数である、請求項７に記載の方法。
【請求項９】
前記順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされる、請求項１乃至８のうちいずれか１項に記載の方法。
【請求項１０】
前記重みパラメータは最低の行重みを含み、当該方法は、
サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、前記行は前記サブチャネルに対応する、ステップを更に含む、請求項１乃至９のうちいずれか１項に記載の方法。
【請求項１１】
K個の最も信頼性の高いサブチャネルの前記サブセット内で最低の行重みを有する前記少なくとも１つのサブチャネルを選択するステップは、前記K個の最も信頼性の高いサブチャネルの中で前記最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルの前記サブセット内で前記最低の行重みを有するFp個のサブチャネルを選択するステップを含む、請求項１０に記載の方法。
【請求項１２】
最低の行重みを有する前記少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルの前記サブセットから選択される、請求項１０に記載の方法。
【請求項１３】
前記情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの前記順序付けされた系列内で前記情報ビットのために前記サブチャネルを選択し、前記少なくとも１つのパリティビットのために選択された前記少なくとも１つのサブチャネルをスキップするステップを更に含む、請求項１０に記載の方法。
【請求項１４】
ポーラー符号でデータを符号化するように構成されたデバイスであって、
符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するように構成されたエンコーダであり、前記少なくとも１つのパリティビットは、重みパラメータに基づいて前記少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置される、エンコーダと、
前記符号化データを他のデバイスに送信するように構成されたインタフェースと
を含むデバイス。
【請求項１５】
前記重みパラメータは最小重みを含む、請求項１４に記載のデバイス。
【請求項１６】
前記少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は前記最小重みの２倍を有する第２の数のサブチャネルに配置される、請求項１４又は１５に記載のデバイス。
【請求項１７】
前記エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する前記少なくとも１つのサブチャネルを選択するように更に構成される、請求項１４乃至１６のうちいずれか１項に記載のデバイス。
【請求項１８】
最小重みを有する前記少なくとも１つのサブチャネルは、前記順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択され、前記K個のサブチャネルのそれぞれは、前記順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である、請求項１７に記載のデバイス。
【請求項１９】
順序付けされたサブチャネルの前記セグメントから最小重みを有する前記少なくとも１つのサブチャネルを選択するために、前記エンコーダは、
K個のサブチャネルの前記セグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルの前記セグメントから、前記信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択するように更に構成される、請求項１８に記載のデバイス。
【請求項２０】
前記エンコーダは、前記少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成される、請求項１４乃至１９のうちいずれか１項に記載のデバイス。
【請求項２１】
前記パリティ検査関数は素数パリティ検査関数である、請求項２０に記載のデバイス。
【請求項２２】
前記順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされる、請求項１４乃至２１のうちいずれか１項に記載のデバイス。
【請求項２３】
前記重みパラメータは最低の行重みを含み、前記エンコーダは、
サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するように更に構成され、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、前記行は前記サブチャネルに対応する、請求項１４乃至２２のうちいずれか１項に記載のデバイス。
【請求項２４】
K個の最も信頼性の高いサブチャネルの前記サブセット内で最低の行重みを有する前記少なくとも１つのサブチャネルを選択するために、前記エンコーダは、前記K個の最も信頼性の高いサブチャネルの中で前記最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルの前記サブセット内で前記最低の行重みを有するFp個のサブチャネルを選択するように更に構成される、請求項２３に記載のデバイス。
【請求項２５】
最低の行重みを有する前記少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルの前記サブセットから選択される、請求項２３に記載のデバイス。
【請求項２６】
前記エンコーダは、前記情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの前記順序付けされた系列内で前記情報ビットのために前記サブチャネルを選択し、前記少なくとも１つのパリティビットのために選択された前記少なくとも１つのサブチャネルをスキップするように更に構成される、請求項２３に記載のデバイス。
【請求項２７】
デバイスのための復号化方法であって、
他のデバイスから、符号化データに基づく信号を受信するステップであり、前記符号化データはポーラー符号で情報ビット及び少なくとも１つのパリティビットを符号化することにより生成され、前記少なくとも１つのパリティビットは、重みパラメータに基づいて選択された少なくとも１つのサブチャネルに配置される、ステップと、
前記情報ビットを取得するために、前記ポーラー符号及び前記少なくとも１つのパリティビットを使用して前記信号を復号化するステップと
を含む方法。
【請求項２８】
ポーラー符号で復号化するように構成されたデバイスであって、
他のデバイスから、符号化データに基づく信号を受信するように構成されたインタフェースであり、前記符号化データはポーラー符号で情報ビット及び少なくとも１つのパリティビットを符号化することにより生成され、前記少なくとも１つのパリティビットは、重みパラメータに基づいて選択された少なくとも１つのサブチャネルに配置される、インタフェースと、
前記情報ビットを取得するために、前記ポーラー符号及び前記少なくとも１つのパリティビットを使用して前記信号を復号化するように構成されたデコーダと
を含むデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願への相互参照］
この特許出願は、「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」という名称の学術文献により詳細に記載されており、この内容が再現されているかのように、これを参照により援用する。
【発明の概要】
【０００４】
分極符号化のための方法及び装置を記載するこの開示の実施例により、技術的利点が概して達成される。
【０００５】
実施例によれば、ポーラー符号でデータを符号化するための方法が提供される。この実施例では、当該方法は、デバイスのエンコーダで符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するステップを含む。少なくとも１つのパリティビットは、重みパラメータに基づいて少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置される。当該方法は、符号化データを他のデバイスに送信するステップを更に含む。一例では、重みパラメータは最小重みを含む。このような例では、少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は最小重みの２倍を有する第２の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、当該方法は、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも１つのサブチャネルを選択するステップを更に含んでもよい。最小重みを有する少なくとも１つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、順序付けされたサブチャネルのセグメント、最小重みを有する少なくとも１つのサブチャネルは、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む。その例又は他の例では、エンコーダは、少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用してもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のうちいずれか又は他の例では、当該方法は、順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされることを更に含む。前述の例のうちいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよい。当該方法は、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する、ステップを更に含んでもよい。このような例では、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するステップは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数が所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するステップを含んでもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、当該方法は、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルをスキップするステップを更に含んでもよい。この方法を実行するための装置も提供される。
【０００６】
更に他の実施例によれば、ポーラー符号でデータを符号化するように構成されたデバイスが提供される。この実施例では、当該デバイスは、符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するように構成されたエンコーダを含む。少なくとも１つのパリティビットは、重みパラメータに基づいて少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置され、符号化データを他のデバイスに送信するように構成されたインタフェースである。前述の符号化の実施例のうちいずれかの一例では、重みパラメータは最小重みを含む。このような例では、少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は最小重みの２倍を有する第２の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも１つのサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最小重みを有する少なくとも１つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、デバイス／エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも１つのサブチャネルを選択し、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数が所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択してもよい。その例又は他の例では、エンコーダは、少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成されてもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のいずれか又は他の例では、当該デバイスの順序付けされたサブチャネルは、信頼性メトリックに基づいて順序付けされてもよい。前述の例のいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよく、エンコーダは、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するように更に構成されてもよい。サブチャネルの行重みは、クロネッカー行列の行の中の1の数である。行はサブチャネルに対応してもよい。このような例では、当該デバイスは、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択してもよい。エンコーダは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数nが所定の数Fpより大きいとき、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも１つのサブチャネ���は、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、エンコーダは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルをスキップするように更に構成されてもよい。
【０００７】
更に他の実施例によれば、データを符号化するための他の方法が提供される。この実施例では、当該方法は、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、１つ以上のパリティビットのために１つ以上のサブチャネルを配分するステップと、１つ以上のパリティビットのために配分された１つ以上のサブチャネルに情報ビットをマッピングせずに、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルに情報ビットをマッピングするステップとを含む。当該方法は、符号化ビットストリームを取得するために、ポーラー符号を使用して情報ビット及び１つ以上のパリティビットを符号化するステップと、符号化ビットストリームを送信するステップとを更に含んでもよい。前述の符号化の実施例のうちいずれかの一例では、サブチャネルのための行重みは、クロネッカー行列の行の中の1の数を表し、行はサブチャネルに対応する。その例又は他の例では、行重みは、最小行重みを少なくとも含んでもよい。このような例では、当該方法は、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、１つ以上のパリティビットのために１つ以上のサブチャネルを配分するステップと、１つ以上のパリティビットのために、サブチャネルのサブセット内の最小行重みに等しい行重みを有する複数のサブチャネルを配分するステップとを含んでもよい。その同じ例又は他の例では、配分されたサブチャネルの数は１つでもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するようにこれらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内のサブチャネルの最も信頼性の高いサブセットを含む。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネルを含んでもよい。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、K+FP個のサブチャネルを含んでもよく、Kは情報ビットに関連する情報ブロック長であり、Fpは１つ以上のパリティビットの数を示す。その同じ例又は他の例では、サブチャネルのサブセット内で最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、１つ以上のパリティビットのために配分されてもよい。前述の例のうちいずれか又は他の例では、１つ以上のパリティビットは、１つ以上のパリティ検査（parity  check,  PC）ビットを含んでもよい。このような例では、符号化ビットストリームを取得するために、ポーラー符号を使用して情報ビット及び１つ以上のPCビットを符号化するステップは、情報ビットの値の関数として１つ以上のPCビットのための１つ以上の値を決定するステップと、PCビットのために配分された少なくとも１つ以上のサブチャネルに１つ以上のPCビットをマッピングするステップとを含んでもよい。
【０００８】
更に他の実施例では、ポーラー符号でデータを符号化するためのデバイスが提供される。この実施例では、当該デバイスは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、１つ以上のパリティビットのために１つ以上のサブチャネルを配分し、１つ以上のパリティビットのために配分された１つ以上のサブチャネルに情報ビットをマッピングせずに、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルに情報ビットをマッピングするように構成される。当該デバイスは、符号化ビットストリームを取得するために、ポーラー符号を使用して情報ビット及び１つ以上のパリティビットを符号化し、符号化ビットストリームを送信するように更に構成される。前述の符号化の実施例のうちいずれかの一例では、サブチャネルのための行重みは、クロネッカー行列の行の中の1の数を表し、行はサブチャネルに対応する。その例又は他の例では、行重みは、最小行重みを少なくとも含んでもよい。このような例又は他の例では、当該デバイスは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、１つ以上のパリティビットのために１つ以上のサブチャネルを配分してもよい。当該デバイスは、１つ以上のパリティビットのために、サブチャネルのサブセット内の最小行重みに等しい行重みを有する複数のサブチャネルを配分するように更に構成されてもよい。前述の例のうちいずれか又は他の例では、配分されたサブチャネルの数は１つでもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するようにこれらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内のサブチャネルの最も信頼性の高いサブセットを含む。前述の例のうちいずれか又は他の例では、サブチャネルの最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネルを含んでもよく、サブチャネルの最も信頼性の高いサブセットは、K+FP個のサブチャネルを含み、Kは情報ビットに関連する情報ブロック長であり、Fpは１つ以上のパリティビットの数を示す。その同じ例又は他の例では、サブチャネルのサブセット内で最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、１つ以上のパリティビットのために配分される。その同じ例又は他の例では、１つ以上のパリティビットは、１つ以上のパリティ検査（parity  check,  PC）ビットを含む。
【０００９】
更に他の実施例によれば、デバイスのための復号化方法が提供される。この実施例では、当該方法は、他のデバイスから、符号化データに基づく信号を受信するステップを含み、符号化データはポーラー符号で情報ビット及び少なくとも１つのパリティビットを符号化することにより生成される。この実施例では、少なくとも１つのパリティビットは、重みパラメータに基づいて選択された少なくとも１つのサブチャネルに配置される。当該方法はまた、デバイスのデコーダで、情報ビットを取得するために、ポーラー符号及び少なくとも１つのパリティビットを使用して信号を復号化するステップを含む。
【００１０】
一例では、重みパラメータは最小重みを含む。このような例では、少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は最小重みの２倍を有する第２の数のサブチャネルに配置されてもよい。その例又は他の例では、選択された少なくとも１つのサブチャネルは最小重みを有し、少なくとも１つのサブチャネルは、順序付けされたサブチャネルのセグメントから選択される。最小重みを有する少なくとも１つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その例又は他の例では、少なくとも１つのパリティビットのそれぞれの値は、パリティ検査関数に基づく。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のうちいずれか又は他の例では、順序付けされたサブチャネルは、信頼性メトリックに基づいて順序付けされる。前述の例のうちいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよく、選択された少なくとも１つのサブチャネルは、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有し、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する。このような例では、その同じ例又は他の例では、最低の行重みを有する少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択される。その例又は他の例では、情報ビットのためのサブチャネルは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルをスキップすることにより、サブチャネルの順序付けされた系列内で選択される。この方法を実行するための装置も提供される。
【００１１】
更に他の実施例によれば、デバイスのための復号化方法が提供される。この実施例では、当該方法は、他のデバイスから、符号化ビットストリームに基づく信号を受信するステップを含み、符号化ビットストリームはポーラー符号で情報ビット及び１つ以上のパリティビットを符号化することにより生成される。１つ以上のパリティビットは、サブチャネルのセットのサブセット内でサブチャネルの行重みに基づいて配分された１つ以上のサブチャネルにマッピングされ、情報ビットは、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルにマッピングされる。当該方法はまた、情報ビットを取得するために、ポーラー符号及び１つ以上のパリティビットを使用して信号を復号化するステップを含む。
【００１２】
前述の復号化の実施例のうちいずれかの一例では、サブチャネルのための行重みは、クロネッカー行列の行の中の1の数を表し、行はサブチャネルに対応する。その例又は他の例では、行重みは、最小行重みを少なくとも含んでもよい。このような例では、１つ以上のサブチャネルは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて、１つ以上のパリティビットのために配分される。他の例では、サブチャネルのサブセット内の最小行重みに等しい行重みを有する複数のサブチャネルは、１つ以上のパリティビットのために配分される。その同じ例又は他の例では、配分されたサブチャネルの数は１つでもよく、セット内のサブチャネルは、サブチャネルの順序付けされた系列を形成するようにこれらの信頼性に基づいて順序付けされてもよく、サブチャネルのサブセットは、順序付けされた系列内のサブチャネルの最も信頼性の高いサブセットを含む。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、情報ビットを搬送するためのK個のサブチャネルを含んでもよい。その同じ例又は他の例では、サブチャネルの最も信頼性の高いサブセットは、K+FP個のサブチャネルを含んでもよく、Kは情報ビットに関連する情報ブロック長であり、Fpは１つ以上のパリティビットの数を示す。その同じ例又は他の例では、サブチャネルのサブセット内で最小行重みに等しい行重みを有する最も信頼性の高いサブチャネルは、１つ以上のパリティビットのために配分されてもよい。前述の例のうちいずれか又は他の例では、１つ以上のパリティビットは、１つ以上のパリティ検査（parity  check,  PC）ビットを含んでもよい。このような例又は他の例では、１つ以上のPCビットのための１つ以上の値は、情報ビットの値の関数である。
【図面の簡単な説明】
【００１３】
本開示及びその利点のより完全な理解のために、ここで、添付図面と共に挙げられる以下の説明に参照が行われる。
【図１】どのようにポーラー符号化生成行列がカーネルから生成できるかの一例を示す図である。
【図２】コードワードを生成するためのポーラー符号化生成行列の例示的な使用を示す図、及び例示的なポーラーエンコーダの概略図である。
【図３】最大の所与のリストサイズにより幅が制限され且つ逐次除去リスト（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個の）パリティビットを挿入するときに生じる１つの問題は、どのように（N個のサブチャネルの中から）パリティビットを送信するサブチャネルを選択するかということである。ポーラー符号化中にパリティビットを扱うための１つの選択肢は、最も信頼性の高いサブチャネルに、符号化されるべき（K個の）情報ビット（他の補助ビットも含んでもよい）をマッピングし、その後、最も信頼性の高いサブチャネルに情報ビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルに、パリティビットをマッピングすることである。他の選択肢は、最も信頼性の高いサブチャネルにパリティビットをマッピングし、その後、最も信頼性の高いサブチャネルにパリティビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルに、情報ビットをマッピングすることである。
【００１７】
シミュレーションは、これらの２つの選択肢が、一般的に、サブチャネルにパリティビットをこれらの行重みに基づいてマッピングする実施例の技術より低いレベルの性能を提供することを示している。サブチャネルのための行重みは、クロネッカー行列の対応する行の中の「1」の数、又は2の累乗、ただし、指数（すなわち、ハミング重み）がサブチャネルインデックスのバイナリ表現における「1」の数であるもの（更に以下に説明する）として見なされてもよい。一実施例では、特定の行重み値（例えば、最小行重みwmin又は最小行重みの２倍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パラメータを決定するために使用される。表１は、符号パラメータを決定するために使用できるルックアップテーブルの例を提供し、これは、wminパラメータと、パリティビットのために確保されるべき候補サブチャネルの数を決定するために使用されるインデックス（f1,f2）とを含む（更に以下に説明する）。
【表１】
2019533345.tif 000003
【００２１】
より大きいテーブルは典型的により長い検索時間を必要とするため、オンラインのポーラー符号化中にwminパラメータを識別するために必要な時間は、ルックアップテーブルのサイズに大きく影響される。その結果、エンコーダの待ち時間の要件は、ルックアップテーブルで利用可能な符号化の組み合わせの粒度を抑制してもよく、それにより、符号化性能に影響を与える。
【００２２】
この開示の他の実施例は、最小ハミング重み（umin）パラメータに基づいてパリティビットのためにサブチャネルを確保又は配分し、それにより、行重みの計算を回避する低い待ち時間の技術を提供する。前述のように、行重みは、ハミング重みの関数として計算されてもよい。一例では、式：rw=2hwに基づき、rwは所与のサブチャネルのための行重みであり、hwは所与のサブチャネルのためのチャネルインデックスのバイナリ表現のハミング重みである。記号「hw」及び「u」は、ここではハミング重みを示すように交換可能なように使用される。これから、最低のハミング重みに関連するサブチャネルはまた、最低の行重みを有することは明らかである。したがって、最も信頼性の高いチャネルのサブセット内のサブチャネル（例えば、Q(N-(K+Fp)),…QN）に関連するハミング重みに基づいて、最小ハミング重み（umin）を識別し、その後、パリティビットのためのサブチャネルを確保するために最小ハミング重みを使用することが可能である。
【００２３】
以下に説明するように、最小行重み値の２倍（2*wmin）は、パリティビットのためのサブチャネルを確保するために、wminと共に場合によって使用される。例えば、wminに等しい行重みを有する第１の数（例えば、f1）の最も信頼性の高いサブチャネルはパリティビットのために確保されてもよく、2*wminに等しい行重みを有する第２の数（例えば、f2）の最も信頼性の高いサブチャネルはパリティビットのために確保されてもよい。式：rw=2hwから、2*wminパラメータは、1に最小ハミング重みを加えたものに対応することが明らかである。したがって、この開示の実施例は、パリティビットのために、最小ハミング重みに等しいハミング重みを有する第１の数の最も信頼性の高いサブチャネルを確保し、パリティビットのために、1に最小ハミング重みを加えたものに等しいハミング重みを有する第２の数の最も信頼性の高いサブチャネルを確保してもよい。
【００２４】
以降でより詳細に以下に説明する本開示のこれら及び他の発明態様を理解するのを補助するために、ポーラー符号化の簡単な議論が提供される。図１は、例示的な例によって、どのようにポーラー符号化生成行列がカーネルG2100から生成できるかを示す図である。図１は例である点に留意すべきである。他の形式のカーネルも可能である。生成行列がカーネル（又はカーネルの組み合わせ）から生成される「ネスト型」方法から、分極が生じる。
【００２５】
図１における２倍クロネッカー積行列
【数１】
2019533345.tif 000004
102及び３倍クロネッカー積行列
【数２】
2019533345.tif 000005
104は、ポーラー符号化生成行列の例である。図１に示す生成行列の手法は、m倍クロネッカー積行列
【数３】
2019533345.tif 000006
を生成するように拡張できる。
【００２６】
ポーラー符号は、行列G2100に基づいて、クロネッカー積行列から形成できる。長さN=2mのコードワードを有するポーラー符号について、生成行列は
【数４】
2019533345.tif 000007
である。図２は、コードワードを生成するためのポーラー符号化生成行列の例示的な使用を示す図、及び例示的なポーラーエンコーダの概略図である。図２において、生成行列
【数５】
2019533345.tif 000008
104は、長さ23=8のコードワードを生成するために使用される。コードワードxは、200で示すように、入力ベクトルu=[0  0  0  u3  0  u5  u6  u7]と生成行列
【数６】
2019533345.tif 000009
104との積により形成される。入力ベクトルuは、情報ビットと、固定又は凍結ビットとで構成される。図２に示す具体的な例では、N=8であるので、入力ベクトルuは8ビットのベクトルであり、コードワードxは8ビットのベクトルである。入力ベクトルは、位置0、1、2及び4に凍結ビットを有し、位置3、5、6及び7に情報ビットを有する。コードワードを生成するエンコーダの例示的な実現方式が212で示され、凍結ビットは全て0に設定され、丸で囲まれた「+」の記号はモジュロ2加算を表す。図２の例では、N=8ビットの入力ベクトルは、K=4個の情報ビット及びN-K=4個の凍結ビットから形成される。この形式の符号はポーラー符号と呼ばれ、エンコーダはポーラーエンコーダと呼ばれる。ポーラー符号を復号化するためのデコーダはポーラーデコーダと呼ばれる。凍結ビットは、図２に示す例では0に設定される。しかし、凍結ビットは、エンコーダとデコーダとの双方に既知の他の固定ビット値に設定されてもよい。説明を容易にするために、全てが0の凍結ビットがここで考慮され、一般的には好ましくなり得る。
【００２７】
図３は、最大の所与のリストサイズにより幅が制限され且つSCLポーラーデコーダで使用される例示的な決定リスト木の一部を示す図である。図３において、リストサイズLは4である。５つのレベル302、304、306、308、310の決定木が示される。５つのレベルが示されるが、N個のビットを復号化するための決定木は、N+1個のレベルを有することが理解されるべきである。ルートレベル302の後の各レベルにおいて、４つまでの生き残り復号化経路のそれぞれは、１つのビットだけ拡張される。ルートノード320のリーフ又は子ノードは、第１のビットのための可能な選択肢を表し、以降のリーフノードは、以降のビットのための可能な選択肢を表す。例えば、ルートノード320からリーフノード330aへの復号化経路は、推定コードワードビット系列：0,1,0,0を表す。レベル308において、可能な経路の数はLより大きいので、最高の尤度を有するL個の経路（最善の経路メトリック（path  metric）又はPM）が識別され、残りの経路は破棄される。レベル306において経路のソート及び除去の後に生き残った復号化経路が、図３に太線で示される。同様に、レベル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の累乗である。ポーラー符号のための符号構成への鍵は、ここではサブチャネルとも呼ばれるどのビットチャネルが情報ビットのために選択又は配分されるか、且つどのサブチャネルが凍結ビットのために配分されるかを決定することである。いくつかの実施例では、１つ以上のサブチャネルはまた、ここでは補助ビットと呼ばれる、PC、CRC及び／又は復号化を補助するために使用される他の種類のビットに配分される。分極理論に関して、凍結ビットのために配分されたサブチャネルは凍結サブチャネルと呼ばれ、情報ビットのために配分されたサブチャネルは情報サブチャネルと呼ばれ、更なる補助サブチャネルは、復号化を補助するために使用される補助ビットに配分されてもよい。いくつかの実施例では、補助ビットは、情報ビットの一形式であると考えられ、これらについて、より信頼性の高いサブチャネルが選択又は配分される。
【００３１】
2×2のArikanカーネルG2のクロネッカー積に基づくポーラーエンコーダについて前述した。図４は、2×2のカーネルに基づくポーラーエンコーダの例を示すブロック図である。サブチャネル及び符号化ビットが図４においてラベル付けされており、チャネルは、前述のようにポーラー符号により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ビット、パリティビット及び／又は復号化を補助するために使用される他の補助ビットとを含んでもよい。サブチャネル選択は、サブチャネルの信頼性に基づき、典型的には、最高の信頼性のサブチャネルが、情報ビットを搬送するための情報サブチャネルとして選択される。
【００３５】
サブチャネル信頼性は、例えば、１つ以上の順序付けされた系列において指定されてもよい。サブチャネルの単一のネスト型のSNR独立の順序付けされた系列が符号長Nmaxについて計算されてもよく、より短い符号長Nについての順序付けされた系列は、より長いNmax系列から選択される。異なるマザー符号長Niに関する複数の順序付けされた系列が代わりに計算されてもよく、マザー符号長系列の１つは、好ましい符号長に基づいて特定の符号のために選択されてもよい。他の可能な選択肢は、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号に開示されたハミング重みに基づいて生成されてもよく、これらの双方を参照により完全に援用する。他の技術も使用されてもよく、或いは代わりに使用されてもよい。
【００３９】
どのようにハミング重みが補助サブチャネルを選択するための第２のメトリックとして使用できるかの例は、2016年12月12日に出願された米国仮出願第62/433127号に、より詳細に議論されており、これを参照により援用する。ハミング重みは、第２のメトリックとして使用されてもよいメトリックの単なる例である点に留意すべきである。他の例は、ハミング重みの関数を含む（例えば、2016年12月9日に出願され、参照により援用する米国仮出願第62/432448に開示された行重み。一般的に、（分極）信頼性を示す他のメトリックも、第２のメトリックとして使用できる。更なる代案では、第２のメトリックは第１のメトリックと異なるが、分極信頼性にも関係するか、或いは分極信頼性を示す。しかし、更に他の代案では、サブチャネルの自然の順序が第２のメトリックとして使用でき、それにより、例えば、（例えば、自然数の昇順における）情報サブチャネルの終わりのサブチャネルが補助サブチャネルとして選択される。
【００４０】
いくつかの実施例では、２つより多くのメトリックが補助サブチャネルを選択するために使用されてもよい。さらに、前述のメトリックを使用する様々な補助サブチャネル選択アルゴリズムのいずれかが使用されてもよい。補助サブチャネルを選択するための他の可能性も存在する。
【００４１】
前述のように、受信機において誤り訂正又は検出を容易にして復号化を補助するために、CRC又はパリティビットのような補助ビットが、入力ビットストリームに含まれてもよい。ポーラー符号化中に補助ビットを挿入するときに生じる１つの問題は、どのように補助ビットを送信するサブチャネルを選択するかである。特に、ポーラーエンコーダは、一般的には、凍結ビットを、より信頼性の低いサブチャネルにマッピングするか、或いはさもなければより信頼性の低いサブチャネル上で送信する一方で、情報ビットを、最も信頼性の高いサブチャネルにマッピングするか、或いはさもなければ最も信頼性の高いチャネル上で送信する。加えて補助ビットが符号化ビットストリームに取り入れられるとき、問題は、最も信頼性の高いチャネルが、パリティビットに使用されるべきであるか情報ビットに使用されるべきであるかになる。
【００４２】
ポーラー符号化中にパリティビットを扱うための１つの選択肢は、（例えば、順序付けされた系列に基づいて）最も信頼性の高いサブチャネルに情報ビットをマッピングし、その後、最も信頼性の高いサブチャネルに情報ビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルにパリティビットをマッピングすることである。このように、情報ビットは、パリティビットより信頼性の高いチャネル上で送信される。他の選択肢は、最も信頼性の高いサブチャネルにパリティビットをマッピングし、その後、最も信頼性の高いサブチャネルにパリティビットをマッピングした後に利用可能な次に最も信頼性の高いサブチャネルに情報ビットをマッピングすることである。このように、パリティビットは、情報ビットより信頼性の高いチャネル上で送信される。
【００４３】
シミュレーションは、パリティビット及び情報ビットが最も信頼性の高いチャネル上に散在するハイブリッド手法により、より高いレベルの符号化性能が実際に達成できることを示している。情報ビットのためのサブチャネルの選択は、（例えば、順序付けされた系列により示されるように）サブチャネル分極信頼性に基づいてもよいが、パリティビットのためのサブチャネルの選択は、例えば、これらのパリティサブチャネルの位置が情報サブチャネルの中でよりランダムに或いはより効率的に分散されることを可能にするために、分極信頼性メトリックより多くに基づいてもよい。
【００４４】
いくつかの実施例では、２つの異なるメトリックがパリティ又はPCサブチャネル選択のために使用される。例えば、第１のメトリックは分極信頼性メトリック（例えば、順序付けされた系列）とすることができ、第２のメトリックはサブチャネルのハミング重み（又は行重みのようなハミング重みの関数）のような重みとすることができる。一実施例では、所望の数のパリティビットを搬送するために必要な全てのサブチャネルは、１つより多くのメトリック、例えば、分極信頼性メトリック及びハミング／行重みに基づいて選択され、一方で、他の実施例では、パリティビットのためのサブチャネルのサブセットは、１つより多くのメトリック、例えば、分極信頼性メトリック及びハミング／行重みに基づいて選択され、残りのサブセットは、単一のメトリック、例えば、分極信頼性メトリックに基づいて選択される。
【００４５】
ハミング重みは、一部ではリードマラー（Reed-Muller,  RM）符号により使用されるため、且つ一部ではその簡潔さのため、好ましくなり得る。RM符号は、分極信頼性ではなくハミング重みに基づき、最大尤度（Maximum-Likelihood,  ML）復号化アルゴリズムを使用する（ハミング重みに基づくRM符号は、符号長が小さい場合、ML性能境界に近づく）が、SC又はSCL復号化で復号化できるという点で、ポーラー符号の特別の例として考えられることができる。
【００４６】
サブチャネルのハミング重みは、ここでは、生成行列の行のハミング重みであると規定される。ポーラー符号では、サブチャネルのハミング重みは、その生成行列内のこのサブチャネルの行重みに関係する（行重み=2^(ハミング重み)）。いくつかの実施例では、行重みは、サブチャネルの情報が分布する符号化ビットの数を示す。一般的に言えば、サブチャネルに入力される情報ビットが分布する符号化ビットが多いほど、そのサブチャネルがよりロバストになり、従ってより高い信頼性になる。
【００４７】
どのようにハミング重み又は行重みのようなハミング重みの関数が、パリティビットのためにサブチャネルを選択するための第２のメトリックとして使用できるかの例は、「Method  for  constructing  a  Parity  Check  (PC)  Based  Polar  Code  Using  a  Look-up-Table」という名称で2016年12月12日に出願された米国仮特許出願62/433,127に記載のようにより詳細に議論されており、この内容が再現されているかのように、参照により援用する。これらは第２のメトリックとして使用され得るメトリックの単なる例である点に留意すべきである。一般的には、（分極）信頼性を示す他のメトリックも第２のメトリックとして使用できる。更なる代案では、第２のメトリックは第１のメトリックと異なるが、また、分極信頼性に関係するか、或いは分極信頼性を示す。しかし、更に他の代案では、サブチャネルの自然の順序が第２のメトリックとして使用でき、それにより、例えば、情報サブチャネルの終わりのサブチャネルが補助サブチャネルとして選択される。いくつかの実施例では、２つより多くのメトリックが補助サブチャネルを選択するために使用されてもよい。さらに、前述のメトリックを使用する様々な補助サブチャネル選択アルゴリズムのいずれかが使用されてもよい。補助サブチャネルを選択するための他の可能性も存在する。
【００４８】
米国仮特許出願62/433,127に記載の実施例の技術は、サブチャネルに情報ビットをマッピングする前にパリティビットのための候補サブチャネルを確保及び／又は選択する。候補サブチャネルが確保された後に、情報ビットは、最も信頼性の高い残りのサブチャネルにマッピングされ、複数の凍結ビットは、最も信頼性の低い残りのサブチャネルにマッピングされる。その後、確保されたサブチャネルのためのパリティビット値は、情報ビットの関数に基づいて決定される。特に、パリティビットのために確保された候補サブチャネルは、必ずしも最も信頼性の高いサブチャネルであるとは限らないが、一般的には、情報ビットが送信されるサブチャネルのうち少なくとも１つと同じ信頼性があるか、或いはそれより信頼性の高い少なくともいくつかのサブチャネルを含む。このように、情報ビット及びパリティビットは、復号化確率を改善する方式で、最も信頼性の高いチャネル上に散在する。
【００４９】
前述のように、いくつかのサブチャネルはポーラー符号化中にPCビットのために確保されるか或いは取り分けられてもよい。図５Ａ〜５Ｇは、４つの情報ビットの系列が16のマザー符号長に符号化されるときに、どのようにその符号化プロセスが生じ得るかの例を示す。図５Ａは、16のマザー符号長に対応するサブチャネルu0、u1、u2、u3、u4、u5、u6、u7、u8、u9、u10、u11、u12、u13、u14、u15を列挙した表を示す。表の第２の行は、サブチャネル毎のチャネル分極信頼性を列挙する。その後、サブチャネルは、チャネル信頼性に基づいてソートされてもよい。図５Ｂは、サブチャネルu0、u1、u2、u4、u8、u3、u5、u6、u9、u10、u12、u7、u11、u13、u14、u15の順序付けされた系列（Q）を列挙した表を示す。その後、チャネル毎の行重みが、チャネルインデックスの関数として計算できる。一例では、行重みは、以下の式：rw=2hwに基づいて計算され、rwは所与のサブチャネルのための行重みであり、hwはチャネルインデックスのバイナリ表現のハミング重みである。図５Ｃは、サブチャネルの順序系列内の各サブチャネルのバイナリ表現、ハミング重み及び行重みを列挙した表を示す。
【００５０】
次に、パラメータ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で）候補サブチャネルにマッピングされるべきパリティビットの総数（例えば、３つ）の所望のセット又はサブセット（例えば、１つ）を表してもよく、一方で、残りのパリティビット（例えば、２つ）は異なるメトリックに従って他のサブチャネル（例えば、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である。次に、１つ以上の行重み値が決定される。認識できるように、K+Fpサブセット内の最小行重みwminは4である。この例では、行重み値は、最小行重み（wmin）を含み、サブチャネルu12、u7、u11、u13、u14及びu15のサブセット内の最小行重みの２倍（2*wmin）が決定され、これはそれぞれ4及び8である。第１のインデックス（f1）及び第２のインデックス（f2）もまた決定される。第１のインデックス（f1）は、wminに等しい行重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定し、第２のインデックス（f2）は、2*wminに等しい行重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定する。この例では、f1及びf2はそれぞれ1及び1に等しい。
【００５２】
その後、サブチャネルは、パラメータwmin、2*wmin、f1及びf2に基づいて、PCビットのために確保される。この例では、行重みwmin（すなわち、4に等しい）を有する最も信頼性の高いサブチャネルと、2*wminに等しい（すなわち、8に等しい）行重みを有する最も信頼性の高いサブチャネルとが選択され、これはサブチャネルu12及びu14を含む。図５Ｄは、PCビットのために確保されたサブチャネルを示す表を示す。その後、情報ビットは、残りの最も信頼性の高いチャネルにマッピングされる。図５Ｅは、どのようにサブチャネルu15、u13、u11及びu7が４つの情報ビットにマッピングされるかを示す表を示す。この例では、N=4且つN=16である。他の例では、異なる数の情報ビットがサブチャネルにマッピングされてもよい。その後、残りのサブチャネルは凍結ビットにマッピングされる。図５Ｆは、どのようにサブチャネルu10、u9、u6、u5、u3、u8、u4、u2、u1及びu0が凍結ビットにマッピングされるかを示す表を示す。
【００５３】
いくつかの実施例では、エンコーダは、凍結ビットセットがマッピングされた後に、PCビットを搬送するために凍結ビットセット内のいくつかのサブチャネルを選択する。図５Ｇは、どのように凍結サブチャネルが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ビットについてのサブチャネルの総数（例えば、３つ）のセット又はサブセット（例えば、１つ）を表し、PCビットについてのサブチャネルの総数の残りのサブセット（例えば、２つ）は、他のメトリック、例えば、K（又はK+Fp）個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて確保される。他の実現方式も可能である。
【００５５】
いくつかの実施例では、（K+Fp）サブセット内のFp個のサブチャネルを確保することに加えて、エンコーダは、更なるPCビットを搬送するために凍結ビットセット（N-K-Fp）内でいくつかのサブチャネルを選択してもよい。他の実施例では、凍結ビットセット内のサブチャネルの全てが、wminに等しい行重みを有する（K+Fp）サブセット内のFp個のサブチャネルに加えて、PCビットを搬送するために選択される。
【００５６】
いくつかの実施例では、PCビットがサブチャネルに関連する行重みに基づいてマッピングされるとき、行重みの計算は、待ち時間を符号化プロセスに取り入れてもよい。この開示の他の実施例は、サブチャネルをこれらのハミング重みに基づいて確保することにより、その待ち時間を軽減し、それにより、行重みを計算する更なるステップを回避する。図６Ａ〜図６Ｇは、どのようにハミング重みがポーラー符号化プロセス中にPCビットのためのサブチャネルを確保するために使用できるかの例を示す。この例では、４つの情報ビットの系列は、16のマザー符号長に符号化される。図６Ａは、16のマザー符号長に対応するサブチャネルu0、u1、u2、u3、u4、u5、u6、u7、u8、u9、u10、u11、u12、u13、u14、u15を列挙した表を示す。表の第２の行は、サブチャネル毎のチャネル分極信頼性を列挙する。サブチャネルは、チャネル信頼性に基づいてソートされてもよい。図６Ｂは、サブチャネルu0、u1、u2、u4、u8、u3、u5、u6、u9、u10、u12、u7、u11、u13、u14、u15の順序付けされた系列（Q）を列挙した表を示す。各チャネルインデックスのハミング重みが、サブチャネル毎に決定できる。図６Ｃは、サブチャネルの順序系列内の各サブチャネルのハミング重みを列挙した表を示す。
【００５７】
次に、最小ハミング重み（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で候補サブチャネルにマッピングされるべきパリティビットの総数（例えば、３つ）の所望のセット又はサブセット（例えば、１つ）を表してもよく、一方で、残りのパリティビット（例えば、２つ）は異なるメトリックに従って他のサブチャネル（例えば、K（又はK+Fp）個のサブチャネル内で最も信頼性の低いサブチャネル）にマッピングされる。図６Ａ〜６Ｇの例では、Fpは2に等しく、最も信頼性の高いサブチャネルのサブセットは、6個の最も信頼性の高いサブチャネル（すなわち、K+Fp=4+2=6）を含み、これらはサブチャネルu12、u7、u11、u13、u14及びu15である。次に、サブチャネルのサブセットについて最小ハミング重みが決定される。この例では、最小ハミング重みは、サブチャネルu12のハミング重みに基づいて2である。第１のインデックス（f1）及び第２のインデックス（f2）もまた決定される。第１のインデックス（f1）は、uminに等しいハミング重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定し、第２のインデックス（f2）は、1+uminに等しいハミング重みを有する何個のサブチャネルがPCビットのために確保されるべきかを決定する。この例では、f1及びf2はそれぞれ1及び1に等しい。
【００５８】
その後、サブチャネルは、パラメータumin、1+umin、f1及びf2に基づいて、PCビットのために確保される。この例では、uminに等しい（すなわち、2に等しい）ハミング重みを有する最も信頼性の高いサブチャネルと、1+uminに等しい（すなわち、3に等しい）ハミング重みを有する最も信頼性の高いサブチャネルとが選択され、これはサブチャネルu12及びu14を含む。図６Ｄは、PCビットのために確保されたサブチャネルを示す表を示す。その後、情報ビットは、残りの最も信頼性の高いチャネルにマッピングされる。図６Ｅは、どのようにサブチャネルu15、u13、u11及びu7が４つの情報ビットにマッピングされるかを示す表を示す。その後、残りのサブチャネルは凍結ビットにマッピングされる。図６Ｆは、どのようにサブチャネルu10、u9、u6、u5、u3、u8、u4、u2、u1及びu0が凍結ビットにマッピングされるかを示す表を示す。
【００５９】
いくつかの実施例では、エンコーダは、PCビットを搬送するために凍結ビットセットから更なるサブチャネルを選択する。図６Ｇは、どのように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ビットについてのサブチャネルの総数（例えば、３つ）のサブセット（例えば、１つ）を表し、残りのサブセット（例えば、２つ）は、他のメトリック、例えば、K（又はK+Fp）個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて確保される。他の実現方式も可能である。
【００６１】
いくつかの実施例では、（K+Fp）サブセット内のFp個のサブチャネルを確保することに加えて、エンコーダは、更なるPCビットを搬送するために凍結ビットセット（N-K-Fp）内でいくつかのサブチャネルを選択してもよい。他の実施例では、凍結ビットセット内のサブチャネルの全てが、wminに等しい行重みを有する（K+Fp）サブセット内のFp個のサブチャネルに加えて、PCビットを搬送するために選択される。
【００６２】
この開示の実施例は、重みパラメータに基づいてパリティビットのために１つ以上のサブチャネルを選択、確保又は配分する技術を提供する。図７は、無線デバイスにより実行されてもよい、ポーラー符号を使用してデータを符号化するための方法700のフローチャートである。ステップ710において、無線デバイスは、信頼性メトリックに基づいて順序付けされてもよいサブチャネルのセグメントから、重みパラメータに基づいて少なくとも１つのパリティビットを搬送するための少なくとも１つのサブチャネル（例えば、候補サブチャネル）を（予め）選択する。重みパラメータは、最小行重み（例えば、wmin、dmin）パラメータでもよい。一例では、順序付けされたサブチャネルは、K個のサブチャネルのセグメントと、N0-K個のサブチャネルのセグメントとを含み、無線デバイスは、K個のサブチャネルのセグメントから、最小重み（dmin）を有する少なくとも１つの候補サブチャネルを選択する。このような例では、K個のサブチャネルのそれぞれは、N0-K個のサブチャネルの全てより高い信頼性メトリックを有する。この例では、Kは、符号化すべき情報ビットの数、又は他の補助ビット（例えば、CRCビット）を含んでもよく或いは含まなくてもよい情報ブロック長を示し、N0はマザー符号長を示す。他の例では、セグメントK内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、無線デバイスは、信頼性メトリックの降順に（例えば、高い信頼性から低い信頼性へ）最小重みを有するK個のサブチャネルのセグメントからF個のサブチャネルを選択する。他の例では、無線デバイスは、最小重み（dmin）に基づく第１の数のサブチャネル及び／又は最小重みの２倍（2*dmin）に基づく第２の数のサブチャネルを選択する。更に他の例では、無線デバイスは、例えば、ポーラー符号に関連する符号長と、符号化されるべきデータの情報ブロック長との関数に基づいて、少なくとも１つのサブチャネルを選択する。更に他の例では、無線デバイスは、少なくとも１つのパリティビットを搬送するためのサブチャネルとして、通常では凍結ビットに配分される全てのサブチャネルを選択する。
【００６３】
更に他の例では、無線デバイスは、（N個の）サブチャネルの順序付けされた系列のうちK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択する。この例では、サブチャネルの行重みは、サブチャネルに対応する（Nサイズの）クロネッカー行列の行の中の1の数である。更に他の例では、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、無線デバイスは、K個の最も信頼性の高いサブチャネルのサブセット内のn個のサブチャネル（例えば、最低の行重みを有する）の中でFp個のサブチャネルを選択してもよい。更に他の例では、最低の行重みを有する少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択される。言い換えると、選択される少なくとも１つのサブチャネルは、最低の行重みを有するKサブセット内の最も信頼性の高いサブチャネルである。
【００６４】
ステップ720において、無線デバイスは、少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用する。パリティ検査関数は、少なくとも１つのパリティビットのために選択されたサブチャネル上で実行されてもよい。パリティ検査関数は素数パリティ検査関数でもよい。ステップ730において、無線デバイスは、符号化データを取得するために、情報ビットと、選択されたサブチャネルに配置された少なくとも１つのパリティビットとをポーラー符号化する。一例では、少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネル及び／又は最小重みの２倍を有する第２の数のサブチャネルに配置される。図示しないが、無線デバイスはまた、情報ビットのために選択されたサブチャネルの数がK（すなわち、符号化すべき情報ビットの総数）に到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルをスキップしてもよい。ステップ740において、無線デバイスは符号化データを他の無線デバイスに送信する。
【００６５】
図８は、無線デバイスにより実行されてもよい、ポーラー符号を使用してデータを符号化するための実施例の方法800のフローチャートである。ステップ810において、無線デバイスは、例えば、信頼性メトリックに基づいて順序付けされてもよい（N個の）サブチャネルのセット又は系列のサブセット内のサブチャネルのための行重みに基づいて、１つ以上のパリティビットのための１つ以上の（候補）サブチャネルを確保するか、或いはさもなければ配分する。行重みは、最小行重み値（wmin）及び／又は最小行重みパラメータの整数倍（例えば、2*wmin）を含んでもよい。サブチャネルのための行重みは、Nサイズのクロネッカー行列のサブチャネルに対応する行の中の1の数を表してもよい。順序付けされたサブチャネルからパリティビットのための候補サブチャネルを確保（すなわち、配分）するための様々な技術が存在する。例えば、サブチャネルのセットがこれらの信頼性に基づいてソートされた後に、無線デバイスは、最高の信頼性のサブチャネルから始めて、これらの行重みに基づいてセット内のサブチャネルの最も信頼性の高いサブセットから候補サブチャネルを確保してもよい。一例では、最小行重み値に等しい行重みを有する第１の（すなわち、最も信頼性の高い）f1個のサブチャネル（f1は0より大きい整数である）が、パリティビットのために確保される。このような例では、最小行重みは、サブチャネルの順序付けされた系列内の最も信頼性の高いK又はK+FP個のサブチャネルに関連する最低の行重みでもよく、Kは情報ビットの系列に関連する情報ブロック長であり、Fpは符号化ビットストリームにより搬送されるパリティビットの数に対応するパラメータ又は関数である。このような実施例では、Fpは、以下の関数：Fp=log2N×(α-|α×(K/M-1/2)|2)に従って計算されてもよく、Mは送信ブロック長であり、Nはマザー符号長であり、αは情報ビットに対するパリティビットの比を変化させるために使用される重み係数である。Fpの他の値も可能である。他の例では、最小行重み値の２倍に等しい行重みを有する第１の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を有する候補サブチャネルにマッピングされるべき、使用されるべきパリティビットの総数（例えば、３つ）の所望のサブセット（例えば、１つ）でもよく、一方で、残りのパリティビット（例えば、２つ）は、異なるメトリックに従って他のサブチャネル（例えば、K（又はK+Fp）個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネル）にマッピングされる。
【００６７】
ステップ820において、無線デバイスは、例えば、１つ以上のパリティビットのために確保された１つ以上の候補サブチャネルに情報ビットをマッピングせずに、残りのサブチャネルの信頼性に基づいて、サブチャネルのセット内の残りのサブチャネルのサブセットに情報ビットをマッピングする。ステップ830において、無線デバイスは、情報ビットの値の関数として少なくとも１つ以上のパリティビットの値を決定（例えば、計算）し、確保された候補サブチャネルに１つ以上のパリティビットをマッピングする（図示せず）。ステップ840において、無線デバイスは、符号化ビット又は符号化ビットストリームを取得するために、ポーラー符号を使用して、マッピングされた情報ビットと、１つ以上のパリティビットとを符号化する。ステップ850において、無線デバイスは、（物理）チャネル上で符号化ビットを送信する。
【００６８】
この開示の実施例は、符号化の前にパリティ検査関数を実現するための無線デバイスのようなデバイスのための方法を提供する。第１のステップの間に、無線デバイスは、信頼性（Q）の順序付けされた系列を取得又は検査し、符号レート（R）及びマザー符号長（N）に基づいてパンクチャリングされたビットセット（P）を決定する。
【００６９】
第２のステップの間に、デバイスは、順序付けされた系列から、凍結ビットセット、PC凍結ビットセット及び情報ビットセットを決定する。第２のステップは、いくつかのサブステップ2.1〜2.4(d)を含んでもよい。サブステップ2.1において、無線デバイスは、系列Q（左から右に信頼性の昇順により順序付けられる）を３つのサブセット、すなわち、（N-M）サブセット、（M-K）サブセット及び（K）サブセットに分割してもよい。この例が表２に示される。認識できるように、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×dmin）を有するサブチャネルにマッピングされるべきパリティビットの総数（例えば、２つ）の所望のセット又はサブセット（例えば、１つ）を表してもよく、一方で、残りのパリティビット（例えば、２つ）は異なるメトリックに従って他のサブチャネル（例えば、Kサブセット又はK+Fpサブセット内で最も信頼性の低いサブチャネル）にマッピングされる。サブステップ2.4(a)〜2.4(d)において、無線デバイスは、情報、PC凍結及び凍結ビットのための位置を決定してもよい。特に、サブステップ2.4(a)において、無線デバイスは、情報ビット位置の数がKに到達するまで、フラグ付きのビット位置をスキップし、最も右から最も左へ（信頼性の降順に）１つずつ情報ビット位置を選択してもよい。サブステップ2.4(b)において、無線デバイスは、凍結ビットになるように残りのビット位置をフラグ付けしてもよい。サブステップ2.4(c)において、無線デバイスは、いくつかの凍結ビット位置、例えば、予め選択されたPC凍結ビットに等しい行重みを有するものを更なるPC凍結ビットとして選択してもよく、或いは全ての凍結ビット位置を更なるPC凍結ビットとして選択してもよい。ステップ2.4(d)において、無線デバイスは、例えば、Arikanカーネルでのポーラー符号化のためのビット系列を準備してもよい。無線デバイスは、K個の情報ビットを挿入し、PC凍結及び凍結ビットをマーキングしてもよい。
【００７０】
ステップ3の間に、無線デバイスは、パリティ検査関数に基づいてPC凍結ビットのための値を設定してもよい。一例では、これは、素数値の長さを有するレジスタ上でサイクリックシフトを適用することにより達成される。
【表２】
2019533345.tif 000010
【００７１】
図９は、無線デバイスにより実行されてもよい、ポーラー符号を使用してデータを符号化するための実施例の方法900のフローチャートである。ステップ910において、無線デバイスは、サブチャネルの順序付けされた系列内の最も信頼性の高いK個のサブチャネルの中で、最低の行重み（dmin）を決定する。ステップ920において、無線デバイスは、最低の行重みに従って、パリティ検査（parity  check,  PC）凍結（PC凍結）ビットのために、最も信頼性の高いK個のサブチャネル内のサブチャネルのセットを選択又はフラグ付けする。選択又はフラグ付けされたサブチャネルのセットは、１つ以上のサブチャネルを含んでもよいことが認識されるべきである。任意選択で、所定の数の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において、無線デバイスは、符号化ビット／ビットストリームの少なくとも一部を送信する。
【００７２】
図１０は、通信システム1000を示す。送信元1010は情報データ（ベアラデータ、情報ブロック、ビット）を提供し、（チャネル）エンコーダ1020は情報データを符号化し、符号化情報データはチャネル1030上で送信され、その後、（チャネル）デコーダ1040において復号化され、それにより、情報データが最終的に宛先1050において受信される。送信元1010及び／又はチャネルエンコーダ1020は、ネットワークコンポーネント又はユーザ装置のような送信ポイント又は無線デバイスに埋め込まれてもよく、或いは含まれてもよい。ネットワークコンポーネントは、進化型ノードB（evolved  NodeB,  eNodeB）、WiFiアクセスポイント、スモールセル（ピコセル、フェムトセル）アクセスポイント、又はネットワークへのアクセスを提供する他のアクセスポイントのようなアクセスポイントでもよい。チャネルエンコーダ1020は、多くの異なる方法で実現されてもよい。例えば、チャネルエンコーダ1020は、ハードウェアのみにおいて（データを符号化するように及び／又はデバイスのエンコーダ又は他のコンポーネントの操作を制御するように、及び／又はさもなければここに開示された機能及び／又は実施例の実行を制御するように構成された、プロセッサのような回路において）実現されてもよい。エンコーダのプロセッサに基づく実現方式では、ここに記載された符号化操作を実行するためのプロセッサ実行可能命令は、送信ポイント又はデバイスの内部又は外部の非一時的なメモリ又は記憶媒体に記憶される。非一時的な媒体は、例えば、１つ以上のソリッドステートメモリデバイス、及び／又は移動可能且つ場合によっては取り外し可能な記憶媒体を有するメモリデバイスをメモリ内に含んでもよい。エンコーダ1020は、別の（無線周波数（Radio-Frequency,  RF））送信モジュールとインタフェース接続するように構成されてもよい。例えば、エンコーダ1020は、別の（RF）ユニットによる送信のために、ここに記載のようにデータを符号化するように、ハードウェア又は回路において（例えば、１つ以上のチップセット、マイクロプロセッサ、特定用途向け集積回路（application-specific  integrated  circuit,  ASIC）、フィールドプログラマブルゲートアレイ（field-programmable  gate  array,  FPGA）、専用論理回路又はこれらの組み合わせにおいて）実現されてもよい。
【００７３】
（チャネル）デコーダ1040及び宛先1050は、ネットワークコンポーネント又はユーザ装置（user  equipment,  UE）のような受信ポイント又は他の無線デバイスに含まれてもよく、例えば、復号化操作を実行するための命令を実行するように構成されたチップセット又はプロセッサのようなハードウェア又は回路を含む、ネットワークコンポーネント又はデバイスにおいて多くの異なる方法で同様に実現されてもよい。デコーダ1040のプロセッサに基づく実現方式では、復号化操作を実行するためのプロセッサ実行可能命令は、受信ポイント又はデバイスの内部又は外部の非一時的なメモリ又は記憶媒体に記憶される。非一時的な媒体は、例えば、１つ以上のソリッドステートメモリデバイス、及び／又は移動可能且つ場合によっては取り外し可能な記憶媒体を有するメモリデバイスをメモリ内に含んでもよい。デコーダ1040は、別の（RF）受信モジュールとインタフェース接続するように構成されてもよい。例えば、デコーダ1040は、情報ビットを取得するために、ここに記載のように（例えば、受信モジュール又はユニットを介して）受信した信号を復号化するように、ハードウェア又は回路において（例えば、１つ以上のチップセット、マイクロプロセッサ、ASIC、FPGA、専用論理回路又はこれらの組み合わせにおいて）実現されてもよい。UEは、無線電話、スマートフォン、タブレット、パーソナルアシスタント又は他のモバイルデバイスでもよい。様々な実施例では、送信元1010及びチャネルエンコーダ1020はUEにおいて実現でき、チャネルデコーダ1040及び宛先1050はアクセスポイントにおいて実現されてもよく、或いは逆も同様である。チャネル1030は、エア（air）上のチャネル又はケーブル若しくはバスのような固定回線でもよい。チャネル1030は、無線インタフェースの物理レイヤでもよい。チャネル130は、他の送信媒体でもよい。通信システム1000は、無線データを送信するだけでなく、有線又は他のデータを送信するためにも使用されてもよい。
【００７４】
いくつかの実施例では、デコーダ1040は、チャネル1030上で受信した符号化データに基づいて信号を復号化するように構成されてもよい。一実施例では、デコーダ1040は、ポーラー符号で符号化された情報ビット及び１つ以上のパリティビットを有する、エンコーダ1020で生成された符号化データに基づいて、他のデバイス、例えば、エンコーダ1020から信号を受信するように構成される。前述のように、エンコーダ1040は、適切なインタフェースを介して別の受信ユニットで直接（例えば、内部受信ユニットで）又は間接に信号を受信するように構成されてもよい。この実施例では、パリティビットは、重みパラメータに基づいて選択されたサブチャネルに配置され、デコーダ1040は、情報ビットを取得するために、ポーラー符号及びパリティビットを使用して信号を復号化する。
【００７５】
一例では、重みパラメータは最小重みを含む。このような例では、パリティビットは、最小重み（例えば、dmin）又は最小重みの２倍（2×dmin）を有する複数のサブチャネルに配置されてもよい。選択されたサブチャネルが最小重みをそれぞれ有する例では、サブチャネルは、信頼性メトリックに基づいて順序付けされたN0個のサブチャネルからのK個の最も信頼性の高いサブチャネルのセグメントから選択される。この例では、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのK0-Kセグメントのサブチャネルの信頼性メトリックより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。パリティビットのそれぞれの値を決定するために、素数関数でもよいパリティ検査関数が使用されてもよい。重みパラメータは、dminのような最低の行重みを含んでもよく、選択されたサブチャネルは、Kサブセット内の最低の行重みを有してもよく、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する。最低の行重みを有するサブチャネルは、信頼性の降順に従ってKサブセットから選択されてもよい。情報ビットのためのサブチャネルは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、パリティビットのために選択されたサブチャネルをスキップすることにより、サブチャネルの順序付けされた系列内で選択されてもよい。
【００７６】
他の実施例では、デコーダ1040は、ポーラー符号で符号化された情報ビット及び１つ以上のパリティビットを有する、他のデバイス（例えば、エンコーダ1020）において生成されたビット又はビットストリームに基づいて、信号を受信するように構成される。この実施例では、パリティビットは、サブチャネルのセットのサブセット内のサブチャネルのための行重みに基づいて配分されたサブチャネルにマッピングされ、情報ビットは、残りのサブチャネルの信頼性に基づいてサブチャネルのセット内の残りのサブチャネルにマッピングされる。デコーダ1040はまた、情報ビットを取得するために、ポーラー符号及びパリティビットを使用して信号を復号化するように構成される。
【００７７】
一例では、サブチャネルのための行重みは、サブチャネルに対応するクロネッカー行列の行の中の1の数を表す。行重みは最小行重みを含んでもよい。サブチャネルのサブセット内で最小行重み又は最小行重みの２倍に等しい行重みを有する複数のサブチャネルがパリティビットのために配分される。配分されるサブチャネルの数は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）のないポーラー符号でもよい。様々な実施例では、全ての凍結ビットは動的凍結ビットとして選択され、素数により導出された検査関数がこれらの全ての上に適用される。
【００８１】
図１１は、ポーラー符号のために凍結ビットセットを選択するための実施例の方法1100のフローチャートである。符号化方法は、エンコーダとデコーダとの双方において実現されてもよい。符号化方法は、ステップ1110において、複数の候補凍結セット（又は多数の候補凍結ビットセット）を予め選択し、その後、ステップ1150において、複数の候補ビットセットから、選択された凍結ビットセットを選択することを含む。
【００８２】
ステップ1110は、凍結ビットの予め選択されたサブチャネルを、これらのサブチャネルに適用される信頼性メトリックに従ってソートすることを含む。いくつかの実施例では、ステップ1110は、信頼性メトリック関数に従ってサブチャネルの全てをソートすることを含む。様々な実施例では、分極重みアルゴリズムのような決定論的関数が使用されてもよい。代替として、決定論的関数は分極距離関数でもよい。凍結ビットのサブチャネルは、昇順に、すなわち、低い分極重みから高い分極重みにソートされてもよい（或いはその逆も同様である）。その後、ソートされたチャネルは、２つのセグメントのような複数のセグメントに分割される。次のステップにおいて、上のセグメント内（或いは言い換えると、最も信頼性の高いサブチャネルを有するセグメント内）の最小重みdminが選択又は決定される（以下の例を参照）。一例では、サブチャネルの重みは行重み、すなわち、サブチャネルに対応するポーラー符号生成行列又はクロネッカー行列の行の中の「1」の数、或いは同等に2の累乗でもよく、指数はサブチャネルインデックスのバイナリ表現の「1」の数である。その例では、最小重みdminは最小行重みでもよい。最小重みdminについて、最小重みdminを有するチャネルの数はnでもよい。所定の値Fを規定する。実施例では、FはF=ceil(LOG2(N*K)/2)でもよい。他の実施例では、Fは異なる値を有してもよい。更に他の実施例では、Fは、dmin及び／又は2*dminに基づいて予め選択されるべき動的凍結ビットのためのサブチャネルの総数（例えば、３つ）のセット又はサブセット（例えば、１つ）を表し、動的凍結ビットのためのサブチャネルの総数の残りのサブセット（例えば、２つ）は、他のメトリック、例えば、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))として規定できる。その後、凍結ビットサブチャネルは、２つのセグメントにソート及びセグメント化でき、或いは言い換えると、凍結ビットサブチャネルを含むビットサブチャネルの全ては、表３に示すように２つのセグメントにソート及びセグメント化できる。認識できるように、サブチャネルは昇順にソートされ、すなわち、K個のサブチャネルは最も信頼性が高く、(No-K)個のサブチャネルは最も信頼性が低い。
【表３】
2019533345.tif 000011
【００８４】
次のステップでは、ステップ1150において、凍結ビットのセット（又は言い換えると、凍結ビットのためのサブチャネル）は、多数の予め選択された候補ビットセットから、或いはこれらに基づいて選択される。凍結ビットの選択されたセットは、分極重みの昇順に従ってビット単位で選択されてもよい。凍結ビットの選択されたセット又は凍結ビットのためのサブチャネルは、ビットの数がN0-Kであるときに完了してもよい。いくつかの実施例では、凍結ビットのために選択されたサブチャネルのセットは、予め選択されたサブチャネルの一部又は全部を含み、選択されたサブチャネルの一部又は全部は、動的凍結ビットのために使用されてもよい。他の実施例では、凍結ビットのために選択されたサブチャネルのセットは、予め選択されたサブチャネルとは別であり（すなわち、含まない）、サブチャネルの選択されたセットは、サブチャネルの数がN0-K-Fであるときに完了してもよい。残りの（K個の）サブチャネルの全て（すなわち、凍結及び／又は動的凍結ビットのために使用されないもの）は、（K個の）情報ビットのためのサブチャネルである。いくつかの実施例では、選択された凍結サブチャネルのいくつか（例えば、予め選択された候補凍結ビットセット又は全ての凍結サブチャネル）は、動的凍結ビットのために使用されてもよい。
【００８５】
凍結ビットの選択されたセットを選択することは、素数pを決定することを含む。様々な実施例では、一意の素数は5、7又は11でもよい。凍結ビットセットを最終的に選択するために、エンコーダ及びデコーダは、エンコーダ及びデコーダ内に実現されたpの長さのサイクリックシフトレジスタを操作してもよい。サイクリックシフトレジスタは、各ビットを符号化／復号化するときに、左にシフトしてもよい。図１２は、エンコーダ及びデコーダのうち少なくとも１つの長さ5（pの長さ）を有するこのようなサイクリックシフトレジスタを示す。レジスタ内でビットが情報ビットである場合、これは無視され（XOR）、ビットが凍結ビットである場合、このビットのビット値が使用及び選択される。様々な実施例では、ビットはレジスタ内で初期化されたときに、0に設定される。いくつかの実施例では、凍結ビットセットは、コードワードによって変化し得る。
【００８６】
他の実施例では、第３のステップは、パリティ検査関数を構成し、動的凍結ビット並びに情報ビット及び（静的）凍結ビットのためのビット値を決定する。素数pが決定される。様々な実施例では、一意の素数は5、7又は11でもよい。パリティ検査関数を構成して動的凍結ビット値を決定するために、pの長さのサイクリックシフトレジスタがエンコーダ（及びデコーダ）において実現されてもよい。サイクリックシフトレジスタは、符号化中に入力ビットベクトルのためのビット値を決定したとき、或いはビット値を復号化したときに、左にシフトしてもよい。図１２は、エンコーダ及びデコーダのうち少なくとも１つにおける長さ5（pの長さ）を有するこのようなサイクリックシフトレジスタを示す。前述の２つのステップにより決定されるように、ビットが情報ビットである場合、レジスタ内の第１のビットは現在の情報ビット値とXORされ、その後、サイクリックシフトされる。ビットが（静的）凍結ビットである場合、ビット値は、エンコーダ及びデコーダの双方により既知の固定値（例えば、0）に設定され、その後、サイクリックシフトされ、ビットが動的凍結ビットである場合、レジスタ内の第１のビットの値は、現在の動的凍結ビットの値として割り振られる。様々な実施例では、レジスタ内で初期化されたときに、ビットは0に設定される。いくつかの実施例では、凍結ビットセットは、コードワードによって変化し得る。
【００８７】
方法1100は複数の利点を提供し得る。エンコーダは、パリティ関数のオンライン計算を実行する必要がなくてもよい。エンコーダは、パリティ関数を記憶する必要がなくてもよい。デコーダは、パリティ関数を調べる必要がなくてもよく、したがって、低い複雑性で操作できる。
【００８８】
図１３Ａ〜１３Ｄは、実施例に従って選択された凍結ビットの選択されたセットについてのポーラー符号の性能を示す。図１３Ａは、K=40個の情報ビット及びQPSK変調についての性能を示し、図１３Ｂは、K=60個の情報ビット及びQPSK変調についての性能を示し、図１３Ｃは、K=80個の情報ビット及びQPSK変調についての性能を示し、図１３Ｄは、K=120個の情報ビット及びQPSK変調についての性能を示す。グラフから認識できるように、発明のポーラー符号は、他の符号を表す他のグラフに比べてより良い性能及びより低い複雑性を提供する。
【００８９】
図１４Ａ〜Ｂは、所与のブロック誤り率（block  error  rate,  BLER）についての平均受信Es/N0点を示す。図示のグラフに示すように、（実施例に従って選択された）凍結ビットの選択されたセットを有するポーラー符号は、他のポーラー符号より優れた性能を提供する。
【００９０】
図１５は、無線デバイス、送信ポイント又は受信ポイント、例えば、ネットワークコンポーネント又はユーザ装置のようなデバイス1500のブロック図である。デバイス1500は、CPU1502と、大容量記憶コンポーネント1504と、ネットワークインタフェース1506と、エンコーダ／デコーダ1508と、メモリ1510と、ビデオアダプタ1512と、I/Oインタフェース1514とを含む。
【００９１】
デバイス1500は、図示のコンポーネントの全て又はコンポーネントのサブセットのみを利用してもよく、統合のレベルは実現方式に依存して変化してもよい。さらに、デバイス1500は、複数のCPU1502等のようなコンポーネントの複数のインスタンスを含んでもよい。デバイス1500は、ネットワーク1520に接続するためのネットワークインタフェース1506、ディスプレイ1516に接続するためのビデオアダプタ1512、及びスピーカ、マイクロフォン、マウス、タッチスクリーン、キーパッド、キーボード、プリンタ等のような１つ以上の入出力デバイス1518に接続するためのI/Oインタフェース1514を使用してもよい。
【００９２】
いくつかの実施例では、CPU1502は、汎用コンピュータハードウェアプラットフォームのコンポーネントでもよいいずれかのプロセッサでもよい。他の実施例では、CPU1502（プロセッサ）は、特殊目的ハードウェアプラットフォームのコンポーネントでもよい。例えば、CPU1502は埋め込み式プロセッサでもよく、命令はファームウェアとして提供されてもよい。いくつかの実施例は、ハードウェアのみを使用することにより実現されてもよい。いくつかの実施例では、プロセッサによる実行のための命令は、ソフトウェアプロダクトの形式で具現されてもよい。ソフトウェアプロダクトは、不揮発性又は非一時的なメモリ又は記憶媒体に記憶されてもよく、これは、例えば、コンパクトディスク読み取り専用メモリ（compact  disc  read-only  memory,  CD-ROM）、ユニバーサルシリアルバス（universal  serial  bus,  USB）フラッシュディスク又は取り外し可能ハードディスクでもよい。
【００９３】
エンコーダ／デコーダ1508は、符号化コンポーネント、復号化コンポーネント又はこれらの双方を含んでもよい。いくつかの実施例では、エンコーダ／デコーダ1508は、ここに開示されたようにデータを符号化するか、或いは選択、マッピング及び／又は符号化操作を実行するように構成されたプロセッサのような回路において実現される。エンコーダ／デコーダ1508のプロセッサに基づく実現方式では、符号化操作を実行するためのプロセッサ実行可能命令は、非一時的なプロセッサ読み取り可能な媒体に記憶される。非一時的な媒体は、例えば、１つ以上のソリッドステートメモリデバイス、及び／又は移動可能且つ場合によっては取り外し可能な記憶媒体を有するメモリデバイスをメモリ1510内に含んでもよい。
【００９４】
バスは、メモリバス又はメモリコントローラ、ペリフェラルバス、ビデオバス等を含むいずれかの種類のいくつかのバスアーキテクチャのうち１つ以上でもよい。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は、例えば、ソリッドステートドライブ、ハードディスクドライブ、磁気ディスクドライブ、光ディスクドライブ等のうち１つ以上を含んでもよい。
【００９６】
ビデオアダプタ1512及びI/Oインタフェース1514は、外部入出力デバイスを処理ユニットに結合するためのインタフェースを提供する。図示のように、入出力デバイスの例は、ビデオアダプタ1512に結合されたディスプレイ1516と、I/Oインタフェース1514に結合されたマウス／キーボード／プリンタとを含む。他のデバイスが処理ユニットに結合されてもよく、更なる或いはより少ないインタフェースカードが利用されてもよい。例えば、ユニバーサルシリアルバス（Universal  Serial  Bus,  USB）（図示せず）のようなシリアルインタフェースは、プリンタのためのインタフェースを提供するために使用されてもよい。
【００９７】
ネットワークインタフェース1506は、イーサーネットケーブル等のような有線リンク、及び／又はアクセスノード又は異なるネットワークへの無線リンクを含んでもよい。ネットワークインタフェース1506は、デバイス及び／又は処理ユニットが、例えば、符号化データ又はビットを送信及び／又は受信することを含む、ネットワーク1520を介して遠隔ユニットと通信することを可能にするように構成されてもよい。例えば、ネットワークインタフェース1506は、１つ以上の送信機／送信アンテナ及び１つ以上の受信機／受信アンテナを介して無線通信を提供してもよい。実施例では、処理ユニットは、他の処理ユニット、インターネット、遠隔記憶施設等のような遠隔デバイスとのデータ処理及び通信のために、ローカルエリアネットワーク又は広域ネットワークに結合される。
【００９８】
図示しないが、ネットワークインタフェース1506は、変調器、増幅器、アンテナ及び／又は送信チェーンの他のモジュール又はコンポーネントを含んでもよく、更に或いは代替として、復調器、増幅器、アンテナ及び／又は受信チェーンの他のモジュール又はコンポーネントを含んでもよい。代案では、ネットワークインタフェース1506は、別の（RF）送信及び／又は受信モジュールとインタフェース接続するように構成されてもよい。例えば、エンコーダ／デコーダ1508は、別の（RF）送信ユニットによるネットワークインタフェース1506を介した送信のためのデータを符号化（及び／又は復号化）するか、或いはここに記載のように情報ビットを取得するために別の（RF）受信ユニットにより且つネットワークインタフェース1506を介して受信される信号を復号化するように、ハードウェア又は回路において（例えば、１つ以上のチップセット、マイクロプロセッサ、ASIC、FPGA、専用論理回路又はこれらの組み合わせにおいて）実現されてもよい。
【００９９】
前述のように、パリティビットがサブチャネルに関連する行重みに基づいてマッピングされるとき、どのサブチャネルがパリティビットのために確保されるべきかを識別するために、サブチャネルの行重みに対して行重み値（例えば、wmin、2*wmin）を比較することが必要になり得る。この開示の実施例は、複数のサブチャネルの行重みに対して行重み値（例えば、wmin、2*wmin）を並列に比較する。これは、比較操作に関連する待ち時間を低減し、それにより、符号化プロセスがより迅速且つ効率的に実行されることを可能にする。図１６は、PCビットのために確保されるべきサブチャネルを識別するための並列比較操作を使用するための技術の図である。この例では、情報ビット1620、PCビット1630及び凍結ビット1640はサブチャネル1611〜1619にマッピングされ、これらはサブチャネル信頼性の昇順にソートされる。サブチャネル1611〜1619のいずれかに情報ビット1620にマッピングする前に、少なくとも２つのサブチャネル1618、1619の行重みは、１つ以上の行重み値（例えば、wmin、2*wmin）と並列に比較され、１つ以上の行重み値に一致する行重みを有する最も信頼性の高いサブチャネルがPCビット1630のために確保される。いくつかの実施例では、第１の行重み値（例えば、wmin）に一致する行重みを有する特定の数（f1）のサブチャネルがPCビットのために確保され、第２の行重み値（例えば、2*wmin）に一致する行重みを有する特定の数（f2）のサブチャネルがPCビットのために確保される。行重み値、及びそれぞれの行重み値のために確保された特定の数のサブチャネルを規定するインデックスのうち１つ以上は、符号レート及び／又はブロック長パラメータに基づいて決定されてもよい。
【０１００】
図１７は、情報ビットの系列を符号化するための実施例の方法1700を示す。ステップ1710において、エンコーダは、PCビットのためにサブチャネルを確保するための少なくとも行重み値を決定する。少なくとも１つの行重み値は、チャネルの符号レート及び符号化されるべき情報ビットの系列に関連するブロック長に基づいて決定されてもよい。ステップ1720において、エンコーダは、PCビットのためにサブチャネルのうち１つ以上を確保することを決定するために、２つ以上のサブチャネルの行重みと少なくとも１つの行重み値を並列に比較する。実施例では、エンコーダは、サブチャネルの順序付けされた系列に従って信頼性の降順にサブチャネルを評価してもよく、それにより、より信頼性の高いサブチャネルがより信頼性の低いサブチャネルの前に評価される。代替として、情報又はPCビットにマッピングされるべきサブチャネルのサブセット内の全てのサブチャネル（例えば、K+Fp個のサブチャネル）が並列に評価される。
【０１０１】
ステップ1730において、エンコーダは、十分なサブチャネルがPCビットのために確保されているか否かを決定する。例として、エンコーダは、wminに等しい行重みを有する少なくともf1個のサブチャネルが確保されているか否か、及び／又は2*wminに等しい行重みを有する少なくともf2個のサブチャネルが確保されているか否かを決定してもよい。そうでない場合、当該方法1700は、ステップ1720に戻り、エンコーダは、次の２つ以上のサブチャネルを評価する。エンコーダが、十分なサブチャネルがPCビットのために確保されていると決定した場合、当該方法はステップ1740に進み、エンコーダは、最も信頼性の高い残りのサブチャネルに情報ビットをマッピングする。ステップ1750において、エンコーダは、最も信頼性の低い残りのサブチャネルに凍結ビットをマッピングする。いくつかの実施例では、更なるPCビットが凍結ビットセットから選択されてもよい。１つの実現方式では、PCビットのためにサブチャネルを確保するために使用される少なくとも１つの行重みに等しい行重みを有する全ての凍結サブチャネルが選択されてもよく、他の実現方式では、全ての凍結サブチャネルが選択されてもよい。ステップ1760において、エンコーダは、情報ビットのPC関数に基づいて確保されたサブチャネルのためのPCビット値を設定する。ステップ1740、1750及び1760は、如何なる順序で実行されてもよい。また、PCビットのためのサブチャネルの数は、多くの異なる方法で決定されてもよく、前述のように、PCビットのための確保されたサブチャネルの数は固定されてもよく、例えば、3でもよく、及び／又は確保されたサブチャネルの一部又は全部はdminに基づいてもよい。
【０１０２】
図１８は、エンコーダにより実行されてもよい、ポーラー符号化を実行するためにルックアップテーブルを使用するための方法1800のフローチャートを示す。ステップ1810において、エンコーダは、符号パラメータを決定するために、符号レート及び情報ブロック長に基づいてルックアップテーブルを検索する。ステップ1820において、エンコーダは、情報ビット、パリティビット及び凍結ビットにサブチャネルをマッピングする。ステップ1830において、エンコーダは、情報ビットのパリティ検査関数に基づいてパリティビット値を設定する。
【０１０３】
図１９は、エンコーダにより実行されてもよい、最小ハミング重み値を決定するための方法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）に等しいハミング重みを有する第１の数のサブチャネルを確保し、PCビットのために1に最小ハミング重みを加えたもの（1+umin）に等しいハミング重みを有する第２の数のサブチャネルを確保する。エンコーダは、例えば、順次的にサブチャネルの順序付けされた系列をスキャンすることによることを含む、複数の異なる方法でサブチャネルを確保できる。他の実現方式では、Fp個のサブチャネルのサブセットのみがumin及び／又は1+uminに基づいて確保され、Fp個のサブチャネルの残りのサブセットは、他のメトリック、例えば、K+Fp個の最も信頼性の高いサブチャネル内の最も信頼性の低いサブチャネルに基づいて確保される。サブチャネルが確保されるか、或いはPCビットのために配分されると、残りのサブチャネルは、情報及び凍結ビットに配分される。ステップ1950において、エンコーダは、最も信頼性の高い残りのサブチャネルに情報ビットをマッピングし、最も信頼性の低い残りのサブチャネルに凍結ビットをマッピングする。いくつかの実施例では、更なるPCビットは、凍結ビットセットから選択されてもよい。１つの実現方式では、PCビットのための確保されたサブチャネルのものに等しいハミング重みを有する一部又は全部の凍結サブチャネルが選択されてもよい。他の実施例では、全ての凍結サブチャネルは、PCビットとして選択されてもよい。ステップ1960において、エンコーダは、情報ビットのパリティ検査関数に基づいてパリティビット値を設定する。実現方式に依存して、サブチャネルが配分される順序は変化してもよい。同様に、PCビット、情報ビット又は凍結ビットが配分されたサブチャネルにマッピングされる順序も変化してもよいことが理解される。
【０１０６】
いくつかの実施例では、Arikanエンコーダは、ポーラー符号化を達成するために使用されてもよい。図２０は、実施例のエンコーダ2000の図である。エンコーダは、符号構成器2010と、Arikanエンコーダ2020と、パンクチャリング器2030とを含む。符号構成器2010は、サブチャネルタイプのセットを決定してもよい。各サブチャネルは情報ビット、PCビット又は凍結ビットにマッピングされる（或いは逆も同様である）。分極理論に従って、各サブチャネル上の信頼性（又は相互チャネル容量）は互いに異なる。高い信頼性を有するサブチャネルは、情報ビットを送信するために選択される。これらのサブチャネルの位置のセットは、情報セット（I）と名付けられる。レートマッチングにより引き起こされた信頼性の低いサブチャネルを含む、低い信頼性を有するサブチャネルは0に設定され、これらの位置のセットは凍結セット（F）として記される。いくつかのサブチャネルはPCビットを送信するために選択され、これらの位置のセットはPC凍結セット（PF）として記される。１つのポーラーブロックのサブチャネルの総数（N）は、2の累乗の値でもよく、マザー符号ブロック長（N=I+F+PF）と呼ばれてもよい。符号構成器2010はまた、情報ビット値及びサブチャネルタイプに基づいてサブチャネル値のセットを決定してもよい。特に、情報ビットにマッピングされるサブチャネルは、情報ビットの値に基づいて設定されてもよく、PCビットにマッピングされるサブチャネルは、パリティ検査関数に基づいて設定されてもよく、凍結ビットのためのサブチャネルは、0に設定される。Arikanエンコーダ2020は、Nビットのコードワードを取得するために、Nサイズのサブチャネルブロックをクロネッカー行列で乗算してもよい。Arikanエンコーダ2020は、以下の式：
【数７】
2019533345.tif 000012
に従ってその乗算を実行してもよく、最も右の行列は、Arikanポーラー符号のためのN×Nの生成行列である。パンクチャリング器2030は、パンクチャビットセット（P）によりNビットのコードワードをMサイズの符号長にパンクチャリング／短縮してもよい。符号レート（R）と符号長（M）との組み合わせが与えられると、エンコーダとデコーダとの双方は、同じ決定論的なプロトコルを使用して、この凍結セット（F）、PC凍結セット（PF）及び短縮／パンクチャビットセット（P）を計算し得る。
【０１０７】
マザー符号長Nを有するポーラー符号は、長さN/2の２つのポーラー符号のネスト型の組み合わせとしてモデル化できる。したがって、長さN/2のポーラー符号のための順序付けされた系列が長さNのポーラー符号のための順序付けされた系列のサブセットであるように、ビット位置の順序付けされた系列（インデックス系列）を構成することが可能である。その場合、Nmaxが2の累乗である場合の最大符号長Nmaxのポーラー符号のためのこのような系列Q0Nmax-1は、ネスト型の方法でNmaxより小さい符号レートと（2の累乗の）符号長とのいずれかの組み合わせをカバーする。その後、レートマッチングは、低い複雑性で且つ比較的細かい粒度で実行できる。代替として、異なる長さの順序付けされた系列の生成は、オフラインで（例えば、符号化操作の前に）生成されてもよく、各順序付けされた系列に対応するパラメータは、ルックアップテーブルに記憶できる。
【０１０８】
信号対雑音比（Signal  to  noise  ratio,  SNR）と独立した信頼性の推定は、各サブチャネルの信頼性を計算し、最大符号長Nmaxのポーラー符号のための順序付けされたインデックス系列Q0Nmax-1を記憶することにより実行されてもよい。サブチャネルの信頼性の順序は、重み系列W0Nmax-1を通じて推定されてもよく、これは以下のように計算されてもよい。Bj∈{0,1},j=[0,1,…,n-1]で
【数８】
2019533345.tif 000013
を仮定すると、
【数９】
2019533345.tif 000014
であり、n=log2(N)である。
【０１０９】
一例では、Nmax=16のマザー符号長であり、n=log2(16)=4であり、i=3
【数１０】
2019533345.tif 000015
について、W3はW3=1*2(0*(1/4))+1*2(1*(1/4))+0*2(2*(1/4))+0*2(3*(1/4))=2.1892として計算できる。全重みベクトルは、W015=[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]であり、より大きい値はより高い信頼性を示す。W0Nmax-1が取得されると、サブチャネルは、
【数１１】
2019533345.tif 000016
のように、分極重みによりソートできる。ソートされるべき結果の系列は、Q015=[0  1  2  4  8  3  5  6  9  10  12  7  11  13  14  15]である。Q0Nmax-1は、進行中に計算されてもよく、或いはエンコーディング及びデコーディングのレートマッチング操作毎にそれを計算する必要がないようにメモリから直接ロードされてもよい点に留意すべきである。
【０１１０】
パンクチャリングパターンは、降順のバイナリインデックス[N-1,N-2,…,1,0]をビット反転し、最も高いビット反転された値を有するN-M個のインデックスをパンクチャリングされた位置としてマーキングすることにより、決定論的な方法で計算されてもよい。一例として、Nmax=16のマザー符号長を考慮する。エンコーダとデコーダとの双方は、系列Q015=[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=N-M）が存在する。
【０１１１】
PC凍結セット（PF）は、サブチャネルインデックス及び短縮／パンクチャリングパターン（P）に関して分極信頼性、クロネッカーカーネルの行重み及びハミング重みに依存して決定されてもよい。最も信頼性の高いサブチャネルのサブセット内の最小行重み（wmin）及び各PC凍結セット（f1,f2）のサイズは、符号レート及び情報ブロック長に基づいて決定されてもよい。
【０１１２】
以下は、情報ビットの系列を符号化するための実施例の５ステップの技術の例である。
【０１１３】
第１のステップにおいて、エンコーダは、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の異なる関数を有してもよく、或いは固定されてもよい。
【０１１４】
第２のステップにおいて、エンコーダは、パンクチャリング／短縮されたサブチャネルを最も左に移動し、その後、残りのサブチャネルを信頼性の昇順に２つのサブセットに分割してもよい。この例が図２１に示される。
【０１１５】
第３のステップにおいて、エンコーダは、サブチャネルの（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である。
【０１１６】
第４のステップにおいて、エンコーダは、（K+Fp）サブセット内で候補PC凍結サブチャネルを選択してもよい。これを行う際に、エンコーダは、右から左にwminの行重みを有するf1個のサブチャネルを選択し、右から左に2×wminの行重みを有するf2個のサブチャネルを候補PC凍結サブチャネルとして選択してもよい。いくつかの他の実施例では、Fp個のサブチャネルのサブセットは、行重みwminに基づいて決定されてもよく、Fp個のサブチャネルの残りのサブセットは、（K+Fp）サブセット内の最も信頼性の低いサブチャネルのような少なくとも１つの他のメトリックに基づいて決定されてもよい。
【０１１７】
第５のステップにおいて、エンコーダは、情報セット、PC凍結セット及び凍結セットを決定してもよい。これを行う際に、エンコーダは、K個のサブチャネルが選択されるまで、最も右から最も左に情報サブチャネルを選択し、候補PC凍結サブチャネルをスキップしてもよい。その後、エンコーダは、残りのサブチャネルを凍結サブチャネルとして選択し、候補PC凍結サブチャネルのものと等しい行重み（すなわち、wmin及び2×wmin）を有する凍結サブチャネル位置から、更なるPC凍結サブチャネルとして選択してもよい。いくつかの他の実施例では、全ての凍結サブチャネルは、更なるPC凍結サブチャネルとして選択されてもよい。PC凍結ビットが第１の情報ビットの前である場合、これは凍結ビットに等しくてもよい。
【０１１８】
エンコーダは、レジスタ上でのサイクリックシフトに基づいてパリティ検査関数を実行してもよい。レジスタの長さは素数でもよい。エンコーダは、i=0〜N-1についてpの長さのサイクリックシフトレジスタy[0],…,y[p-1]を0に初期化してもよい。自然数の順序における第１のビットから始めて、エンコーダは第iのビットを読み取り、レジスタをビット単位でサイクリック左シフトしてもよい。aiが情報ビットである場合、ビット値は不変のままであり、エンコーダはy[0]=(ai  XOR  y[0])を更新する。aiがPCビットである場合、エンコーダはai=y[0]を設定する。aiが凍結ビットである場合、エンコーダはai=0を設定する。
【０１１９】
図２２は、パリティ検査（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は情報ビットである。図２３は、この例についてのパリティ検査行列を示す。図示のように、Wは、u0、u1、u2、u4を静的凍結ビットとして設定し、u8=u3、u10=u5、u12=u7のようなセルフパリティ検査（self-parity-check）関数に基づいて、u8、u10及びu12をPCビットとして設定することにより取得される。表１は、この開示を通じて使用される表記を列挙する。
【表４】
2019533345.tif 000017
【０１２０】
図２４は、エンコーダにより実行されてもよい、情報ビットの系列を符号化するための実施例の方法2400を示す。ステップ2410において、エンコーダは、
【数１２】
2019533345.tif 000018
（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を計算し、（重み又は信頼性の昇順に）サブチャネルを３つのサブセット：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ビット、情報ビット又は凍結ビットが配分されたサブチャネルにマッピングされる順序も変化してもよい。
【０１２１】
図２５は、ここに記載の符号化方法を実行するための実施例の処理システム2500のブロック図を示し、これはホストデバイスに設置されてもよい。図示のように、処理システム2500は、プロセッサ2504と、メモリ2506と、インタフェース2510〜2514とを含み、これらは図２５に示すように配置されてもよい（或いは配置されなくてもよい）。プロセッサ2504は、ここに記載の選択、マッピング及び／又は他の符号化操作若しくは復号化操作のようなタスクに関する計算及び／又は他の処理を実行するように適合されたいずれかのコンポーネント又はコンポーネントの集合でもよく、メモリ2506は、プロセッサ2504による実行のためのプログラミング及び／又は命令を記憶するように適合されたいずれかのコンポーネント又はコンポーネントの集合でもよい。実施例では、メモリ2506は、非一時的なコンピュータ読み取り可能媒体を含む。インタフェース2510、2512、2514は、処理システム2500が符号化データの送信又は符号化データに基づく信号の受信を可能にするように、他のデバイス／コンポーネント及び／又はユーザと通信することを可能にするように構成されたいずれかのコンポーネント又はコンポーネントの集合でもよい。例えば、インタフェース2510、2512、2514のうち１つ以上は、プロセッサ2504からホストデバイス及び／又は遠隔デバイスにインストールされたアプリケーションにデータ、制御又は管理メッセージを通信するように適合されてもよい。他の例として、インタフェース2510、2512、2514のうち１つ以上は、ユーザ又はユーザデバイス（例えば、パーソナルコンピュータ（personal  computer,  PC）等）が処理システム2500と相互作用／通信することを可能にするように適合されてもよい。処理システム2500は、長期ストレージ（例えば、不揮発性メモリ等）のような図２５に図示しない更なるコンポーネントを含んでもよい。
【０１２２】
いくつかの実施例では、処理システム2500は、電気通信ネットワークにアクセスするネットワークデバイスに含まれるか、或いはさもなければその一部である。一例では、処理システム2500は、基地局、中継局、スケジューラ、コントローラ、ゲートウェイ、ルータ、アプリケーションサーバ、又は電気通信ネットワーク内の他のデバイスのような、無線又は有線電気通信ネットワーク内のネットワーク側デバイス内にある。他の実施例では、処理システム2500は、移動局、ユーザ装置（user  equipment,  UE）、無線デバイス、パーソナルコンピュータ（personal  computer,  PC）、タブレット、ウェアラブル通信デバイス（例えば、スマートウォッチ等）、又は電気通信ネットワークにアクセスするように適合された他のデバイスのような、無線又は有線電気通信ネットワークにアクセスするユーザ側デバイス内にある。
【０１２３】
いくつかの実施例では、インタフェース2510、2512、2514のうち１つ以上は、電気通信ネットワーク上でシグナリングを送信及び受信するように適合されたトランシーバに処理システム2500を接続する。図２６は、電気通信ネットワーク上でシグナリング又は符号化データを送信及び受信するように適合されたトランシーバ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は、１つ以上のアンテナ／放射エレメントを含む。例えば、ネットワーク側インタフェース2602は、単一のアンテナ、複数の別々のアンテナ、又はマルチレイヤ通信、例えば、シングル・インプット・マルチプル・アウトプット（single  input  multiple  output,  SIMO）、マルチプル・インプット・シングル・アウトプット（multiple  input  single  output,  MISO）、マルチプル・インプット・マル��プル・アウトプット（multiple  input  multiple  output,  MIMO）等のために構成されたマルチアンテナアレイを含んでもよい。他の実施例では、トランシーバ2600は、有線媒体、例えば、ツイストペアケーブル、同軸ケーブル、光ファイバ等上でシグナリングを送信及び受信する。具体的な処理システム及び／又はトランシーバは、図示のコンポーネントの全て、又はコンポーネントのサブセットのみを利用してもよく、統合のレベルはデバイスによって変化し得る。
【図１】
2019533345.tif 000019
【図２】
2019533345.tif 000020
【図３】
2019533345.tif 000021
【図４】
2019533345.tif 000022
【図５Ａ】
2019533345.tif 000023
【図５Ｂ】
2019533345.tif 000024
【図５Ｃ】
2019533345.tif 000025
【図５Ｄ】
2019533345.tif 000026
【図５Ｅ】
2019533345.tif 000027
【図５Ｆ】
2019533345.tif 000028
【図５Ｇ】
2019533345.tif 000029
【図６Ａ】
2019533345.tif 000030
【図６Ｂ】
2019533345.tif 000031
【図６Ｃ】
2019533345.tif 000032
【図６Ｄ】
2019533345.tif 000033
【図６Ｅ】
2019533345.tif 000034
【図６Ｆ】
2019533345.tif 000035
【図６Ｇ】
2019533345.tif 000036
【図７】
2019533345.tif 000037
【図８】
2019533345.tif 000038
【図９】
2019533345.tif 000039
【図１０】
2019533345.tif 000040
【図１１】
2019533345.tif 000041
【図１２】
2019533345.tif 000042
【図１３Ａ】
2019533345.tif 000043
【図１３Ｂ】
2019533345.tif 000044
【図１３Ｃ】
2019533345.tif 000045
【図１３Ｄ】
2019533345.tif 000046
【図１４Ａ】
2019533345.tif 000047
【図１４Ｂ】
2019533345.tif 000048
【図１５】
2019533345.tif 000049
【図１６】
2019533345.tif 000050
【図１７】
2019533345.tif 000051
【図１８】
2019533345.tif 000052
【図１９】
2019533345.tif 000053
【図２０】
2019533345.tif 000054
【図２１】
2019533345.tif 000055
【図２２】
2019533345.tif 000056
【図２３】
2019533345.tif 000057
【図２４】
2019533345.tif 000058
【図２５】
2019533345.tif 000059
【図２６】
2019533345.tif 000060
【手続補正書】
【提出日】令和1年5月14日(2019.5.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ポーラー符号でデータを符号化するためのデバイスのための方法であって、
前記デバイスのエンコーダで、符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するステップであり、前記少なくとも１つのパリティビットは、重みパラメータに基づいて前記少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置される、ステップと、
前記符号化データを他のデバイスに送信するステップと
を含む方法。
【請求項２】
前記重みパラメータは最小重みを含む、請求項１に記載の方法。
【請求項３】
前記少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は前記最小重みの２倍を有する第２の数のサブチャネルに配置される、請求項１又は２に記載の方法。
【請求項４】
前記デバイスの前記エンコーダで、順序付けされたサブチャネルのセグメントから、最小重みを有する前記少なくとも１つのサブチャネルを選択するステップを更に含む、請求項１乃至３のうちいずれか１項に記載の方法。
【請求項５】
最小重みを有する前記少なくとも１つのサブチャネルは、前記順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択され、前記K個のサブチャネルのそれぞれは、前記順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である、請求項４に記載の方法。
【請求項６】
順序付けされたサブチャネルの前記セグメントから最小重みを有する前記少なくとも１つのサブチャネルを選択することは、K個のサブチャネルの前記セグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルの前記セグメントから、前記信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む、請求項５に記載の方法。
【請求項７】
前記エンコーダで、前記少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するステップを更に含む、請求項１乃至６のうちいずれか１項に記載の方法。
【請求項８】
前記パリティ検査関数は素数パリティ検査関数である、請求項７に記載の方法。
【請求項９】
前記順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされる、請求項１乃至８のうちいずれか１項に記載の方法。
【請求項１０】
前記重みパラメータは最低の行重みを含み、当該方法は、
サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、前記行は前記サブチャネルに対応する、ステップを更に含む、請求項１乃至９のうちいずれか１項に記載の方法。
【請求項１１】
K個の最も信頼性の高いサブチャネルの前記サブセット内で最低の行重みを有する前記少なくとも１つのサブチャネルを選択するステップは、前記K個の最も信頼性の高いサブチャネルの中で前記最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルの前記サブセット内で前記最低の行重みを有するFp個のサブチャネルを選択するステップを含む、請求項１０に記載の方法。
【請求項１２】
最低の行重みを有する前記少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルの前記サブセットから選択される、請求項１０に記載の方法。
【請求項１３】
前記情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの前記順序付けされた系列内で前記情報ビットのために前記サブチャネルを選択し、前記少なくとも１つのパリティビットのために選択された前記少なくとも１つのサブチャネルをスキップするステップを更に含む、請求項１０に記載の方法。
【請求項１４】
ポーラー符号でデータを符号化するように構成されたデバイスであって、
符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するように構成されたエンコーダであり、前記少なくとも１つのパリティビットは、重みパラメータに基づいて前記少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置される、エンコーダと、
前記符号化データを他のデバイスに送信するように構成されたインタフェースと
を含むデバイス。
【請求項１５】
前記重みパラメータは最小重みを含む、請求項１４に記載のデバイス。
【請求項１６】
前記少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は前記最小重みの２倍を有する第２の数のサブチャネルに配置される、請求項１４又は１５に記載のデバイス。
【請求項１７】
前記エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する前記少なくとも１つのサブチャネルを選択するように更に構成される、請求項１４乃至１６のうちいずれか１項に記載のデバイス。
【請求項１８】
最小重みを有する前記少なくとも１つのサブチャネルは、前記順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択され、前記K個のサブチャネルのそれぞれは、前記順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である、請求項１７に記載のデバイス。
【請求項１９】
順序付けされたサブチャネルの前記セグメントから最小重みを有する前記少なくとも１つのサブチャネルを選択するために、前記エンコーダは、
K個のサブチャネルの前記セグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルの前記セグメントから、前記信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択するように更に構成される、請求項１８に記載のデバイス。
【請求項２０】
前記エンコーダは、前記少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成される、請求項１４乃至１９のうちいずれか１項に記載のデバイス。
【請求項２１】
前記パリティ検査関数は素数パリティ検査関数である、請求項２０に記載のデバイス。
【請求項２２】
前記順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされる、請求項１４乃至２１のうちいずれか１項に記載のデバイス。
【請求項２３】
前記重みパラメータは最低の行重みを含み、前記エンコーダは、
サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するように更に構成され、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、前記行は前記サブチャネルに対応する、請求項１４乃至２２のうちいずれか１項に記載のデバイス。
【請求項２４】
K個の最も信頼性の高いサブチャネルの前記サブセット内で最低の行重みを有する前記少なくとも１つのサブチャネルを選択するために、前記エンコーダは、前記K個の最も信頼性の高いサブチャネルの中で前記最低の行重みを有するサブチャネルの数nが所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルの前記サブセット内で前記最低の行重みを有するFp個のサブチャネルを選択するように更に構成される、請求項２３に記載のデバイス。
【請求項２５】
最低の行重みを有する前記少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルの前記サブセットから選択される、請求項２３に記載のデバイス。
【請求項２６】
前記エンコーダは、前記情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの前記順序付けされた系列内で前記情報ビットのために前記サブチャネルを選択し、前記少なくとも１つのパリティビットのために選択された前記少なくとも１つのサブチャネルをスキップするように更に構成される、請求項２３に記載のデバイス。
【請求項２７】
デバイスのための復号化方法であって、
他のデバイスから、符号化データに基づく信号を受信するステップであり、前記符号化データはポーラー符号で情報ビット及び少なくとも１つのパリティビットを符号化することにより生成され、前記少なくとも１つのパリティビットは、重みパラメータに基づいて選択された少なくとも１つのサブチャネルに配置される、ステップと、
前記情報ビットを取得するために、前記ポーラー符号及び前記少なくとも１つのパリティビットを使用して前記信号を復号化するステップと
を含む方法。
【請求項２８】
ポーラー符号で復号化するためのデバイスであって、
他のデバイスから、符号化データに基づく信号を受信し、前記符号化データはポーラー符号で情報ビット及び少なくとも１つのパリティビットを符号化することにより生成され、前記少なくとも１つのパリティビットは、重みパラメータに基づいて選択された少なくとも１つのサブチャネルに配置され、
前記情報ビットを取得するために、前記ポーラー符号及び前記少なくとも１つのパリティビットを使用して前記信号を復号化する
ように構成されるデバイス。
【請求項２９】
ポーラー符号でデータを符号化するように構成された通信デバイスであって、
請求項１乃至１３のうちいずれか１項に記載の方法におけるステップを実現するように構成されるデバイス。
【請求項３０】
命令を含むコンピュータプログラムであって、
前記命令が実行されたとき、デバイスに請求項１乃至１３のうちいずれか１項に記載の方法を実行させる、コンピュータプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
実施例によれば、ポーラー符号でデータを符号化するための方法が提供される。この実施例では、当該方法は、デバイスのエンコーダで符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するステップを含む。少なくとも１つのパリティビットは、重みパラメータに基づいて少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置される。当該方法は、符号化データを他のデバイスに送信するステップを更に含む。一例では、重みパラメータは最小重みを含む。このような例では、少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は最小重みの２倍を有する第２の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、当該方法は、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも１つのサブチャネルを選択するステップを更に含んでもよい。最小重みを有する少なくとも１つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、順序付けされたサブチャネルのセグメントから選択するステップは、最小重みを有する少なくとも１つのサブチャネルは、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数nが所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択することを含む。その例又は他の例では、エンコーダは、少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用してもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のうちいずれか又は他の例では、当該方法は、順序付けされたサブチャネルが信頼性メトリックに基づいて順序付けされることを更に含む。前述の例のうちいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよい。当該方法は、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するステップであり、サブチャネルの行重みは、クロネッカー行列の行の中の1の数であり、行はサブチャネルに対応する、ステップを更に含んでもよい。このような例では、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するステップは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数が所定の数Fpより大きい場合、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するステップを含んでもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも１つのサブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、当該方法は、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルをスキップするステップを更に含んでもよい。この方法を実行するための装置も提供される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
更に他の実施例によれば、ポーラー符号でデータを符号化するように構成されたデバイスが提供される。この実施例では、当該デバイスは、符号化データを取得するために、情報ビット及び少なくとも１つのパリティビットをポーラー符号化するように構成されたエンコーダを含む。少なくとも１つのパリティビットは、重みパラメータに基づいて少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルに配置され、デバイスは、符号化データを他のデバイスに送信するように構成されたインタフェースを含む。前述の符号化の実施例のうちいずれかの一例では、重みパラメータは最小重みを含む。このような例では、少なくとも１つのパリティビットは、最小重みを有する第１の数のサブチャネルのうち少なくとも１つ又は最小重みの２倍を有する第２の数のサブチャネルに配置されてもよい。その同じ例又は他の例では、エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも１つのサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最小重みを有する少なくとも１つのサブチャネルは、順序付けされたサブチャネルのうちK個のサブチャネルのセグメントから選択されてもよく、K個のサブチャネルのそれぞれは、順序付けされたサブチャネルのN0-Kセグメントのサブチャネルより高い信頼性メトリックを有し、Kは情報ブロック長であり、N0はマザー符号長である。その同じ例又は他の例では、デバイス／エンコーダは、順序付けされたサブチャネルのセグメントから、最小重みを有する少なくとも１つのサブチャネルを選択し、K個のサブチャネルのセグメント内の最小重みを有するサブチャネルの数が所定の値Fより大きい場合、K個のサブチャネルのセグメントから、信頼性メトリックの降順に最小重みを有するF個のサブチャネルを選択してもよい。その例又は他の例では、エンコーダは、少なくとも１つのパリティビットのそれぞれの値を決定するために、パリティ検査関数を適用するように更に構成されてもよい。このような例では、パリティ検査関数は素数パリティ検査関数でもよい。前述の例のいずれか又は他の例では、当該デバイスの順序付けされたサブチャネルは、信頼性メトリックに基づいて順序付けされてもよい。前述の例のいずれか又は他の例では、重みパラメータは最低の行重みを含んでもよく、エンコーダは、サブチャネルの順序付けされた系列のK個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択するように更に構成されてもよい。サブチャネルの行重みは、クロネッカー行列の行の中の1の数である。行はサブチャネルに対応してもよい。このような例では、当該デバイスは、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有する少なくとも１つのサブチャネルを選択してもよい。エンコーダは、K個の最も信頼性の高いサブチャネルの中で最低の行重みを有するサブチャネルの数nが所定の数Fpより大きいとき、K個の最も信頼性の高いサブチャネルのサブセット内で最低の行重みを有するFp個のサブチャネルを選択するように更に構成されてもよい。その同じ例又は他の例では、最低の行重みを有する少なくとも１つ���サブチャネルは、信頼性の降順に従ってK個の最も信頼性の高いサブチャネルのサブセットから選択されてもよい。その同じ例又は他の例では、エンコーダは、情報ビットのために選択されたサブチャネルの数がKに到達するまで、サブチャネルの順序付けされた系列内で情報ビットのためにサブチャネルを選択し、少なくとも１つのパリティビットのために選択された少なくとも１つのサブチャネルをスキップするように更に構成されてもよい。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
どのようにハミング重みが補助サブチャネルを選択するための第２のメトリックとして使用できるかの例は、2016年12月12日に出願された米国仮出願第62/433127号に、より詳細に議論されており、これを参照により援用する。ハミング重みは、第２のメトリックとして使用されてもよいメトリックの単なる例である点に留意すべきである。他の例は、ハミング重みの関数を含む（例えば、2016年12月9日に出願され、参照により援用する米国仮出願第62/432448に開示された行重み）。一般的に、（分極）信頼性を示す他のメトリックも、第２のメトリックとして使用できる。更なる代案では、第２のメトリックは第１のメトリックと異なるが、分極信頼性にも関係するか、或いは分極信頼性を示す。しかし、更に他の代案では、サブチャネルの自然の順序が第２のメトリックとして使用でき、それにより、例えば、（例えば、自然数の昇順における）情報サブチャネルの終わりのサブチャネルが補助サブチャネルとして選択される。
【国際調査報告】
2019533345.tif 000061
2019533345.tif 000062