JP2020507250A - ポーラ符号のレートマッチング方法及び装置 - Google Patents

ポーラ符号のレートマッチング方法及び装置 Download PDF

Info

Publication number
JP2020507250A
JP2020507250A JP2019537290A JP2019537290A JP2020507250A JP 2020507250 A JP2020507250 A JP 2020507250A JP 2019537290 A JP2019537290 A JP 2019537290A JP 2019537290 A JP2019537290 A JP 2019537290A JP 2020507250 A JP2020507250 A JP 2020507250A
Authority
JP
Japan
Prior art keywords
bit
circular buffer
bit string
bits
initial
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
JP2019537290A
Other languages
English (en)
Other versions
JP6882490B2 (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.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority claimed from PCT/CN2018/071956 external-priority patent/WO2018127206A1/zh
Publication of JP2020507250A publication Critical patent/JP2020507250A/ja
Priority to JP2021078310A priority Critical patent/JP7321208B2/ja
Application granted granted Critical
Publication of JP6882490B2 publication Critical patent/JP6882490B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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
    • 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/27Coding, 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 using interleaving techniques
    • H03M13/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • 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/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/6591Truncation, saturation and clamping
    • 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/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/0067Rate matching
    • 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/0071Use of interleaving

Landscapes

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

Abstract

ポーラ符号のレートマッチング方法及び装置を提供する。この方法は、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列を符号化して、Nビットの初期ビット列{S0,S1,…,SN−1}を生成することと、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S0,S1,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込むことと、循環バッファ内のビット列の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とすることとを含む。【選択図】図3

Description

本開示は、通信の分野に関し、例えば、ポーラ符号のためのレートマッチング方法及び装置に関する。
関連技術において、ポーラ符号は、チャネル容量を達成できることが厳格に証明される構造を有し、第5世代無線アクセス技術(fifth generation radio access technology:5G RAT)の通信のスループット及びレイテンシについての要件を満たすことができる符号である。ポーラ符号化から得られる符号語は、x=u・Gとして表すことができ、ここで、u=(u,…,u)は、情報ビットと凍結ビットから構成される。情報ビットは、1つ以上のチェックビットを含むことができる。チェックビットは、パリティチェック符号化、巡回冗長検査符号化、RS符号化等により生成される。凍結ビットは、符号化における既知のビットであり、通常、0又は擬似ランダムビットである。
長さNのポーラ符号器の構造は、長さN/2の2つの符号器の再帰(recursion)によって実現できる。図1a及び図1bは、従来のポーラ符号の再帰的構造の模式図である。図2は、従来のポーラ符号の再帰的符号化構造の基本ユニットの構成図である。図1a、図1b、及び図2に示すように、再帰的構造のユニット(N=2)は、図2に示す基本ユニットである。
ポーラ符号化から得られるデータビット列の長さNは、2のべき乗であり、不要なビットをパンクチャリング又は短縮によって破棄して、任意の符号長の伝送へのレートマッチングを行うことができる。異なる符号長及び符号レートは、異なるレートマッチングパターンに対応する。したがって、レートマッチングを実装するためには、異なるハードウェアモジュールが必要であり、したがって、異なるアプリケーションシナリオに対応するために、ポーラ符号ハードウェアが複雑になる。
任意の長さのビット列を伝送するためにポーラ符号ハードウェアが複雑になってしまうという関連技術における問題に対する有効な解決策は、提案されていない。
本開示は、少なくとも、任意の長さのビット列を送信するためにポーラ符号ハードウェアが複雑になってしまうという関連技術における問題を解決するポーラ符号のレートマッチング方法及びデバイスを提供する。
本開示は、ポーラ符号のためのレートマッチング方法を提供し、この方法は、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成することを含む。
q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込む。
循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする。
幾つかの実施形態では、K個の情報ビットは、チェックビットを含んでいてもよい。
幾つかの実施形態では、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数f(n)によって決定され、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスであり、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込むことは、一対一マッピングインターリーブ関数f(n)に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスf(n)を有する位置にマッピングすることを含む。
なお、{n}→{f(n)}のマッピングは、一対一マッピングであるため、{p(n)}→{n}のマッピングを満たすf(n)の逆関数p(n)が存在する。すなわち、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って循環バッファのq個の部分にビットを書き込むことは、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、一対一マッピングインターリーブ関数f(n)は、以下のネスティング特性を有する。マッピング{n}→{f(n)}は、一対一マッピングインターリーブ関数のマッピング{n}→{f(n)}において、ビット列{n}とビット列{f(n)}からNより大きな要素を削除することによって取得でき、ここで、n=0,1,2,…,N−1であり、Nは、N以下の正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込むことは、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスmod(f(n)+m,N)を有する位置にマッピングすることを含む。
幾つかの実施形態では、データ特性は、伝送ブロック長、符号レート、利用可能な物理リソースブロック数、変調及び符号化レベル、ユーザ機器タイプインデクス、及びデータ伝送リンク方向の少なくとも1つを含む。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、ポーラ符号化の符号レートによって決定される。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値以下である場合、Pを循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
なお、所定の開始位置は、ポーラ符号化の符号レートによって決定されるため、ポーラ符号化の符号レートが所定の閾値より高い場合、所定の開始位置は、以下のいずれかの方法で選択される。
循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を、所定の開始位置とする。
循環バッファが第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第7の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第8の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第8の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第9の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、M≦t+tのとき、P=t+t+M−1の位置を所定の開始位置とし、M>t+tのとき、P=M−1−t−tの位置を所定の開始位置とし、ここで、Mは、送信ビット列の長さであり、tは、第6の部分のビット長であり、tは、第7の部分のビット長であり、tは、第8の部分のビット長であり、tは、第9の部分のビット長である。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第6の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、M≦t+tのとき、P=t+t−Mの位置を所定の開始位置とし、M>t+tのとき、P=N+t+t−Mの位置を所定の開始位置とし、ここで、Mは、送信ビット列の長さであり、tは、第6の部分のビット長であり、tは、第7の部分のビット長であり、tは、第8の部分のビット長であり、tは、第9の部分のビット長である。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第9の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第7の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第6の部分の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
幾つかの実施形態においては、ポーラ符号化の母符号の長さは、
を天井関数演算子とし、Rを符号レートとし、mを正の整数として、
である。
初期ビット列{S,S,…,SN−1}にビット逆順(bit reversal order:BRO)インターリーブを施すことにより、循環バッファ内のビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスmod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、循環バッファ内のビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスN−1−mod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、指定された長さのビット列を循環バッファ内のビット列の所定の開始位置から順次選択し、指定された長さのビット列を送信ビット列とすることは、以下を含む。
循環バッファ内のビット列の所定の位置からインデクスの昇順又は降順で、ビットが順次選択され、循環バッファ内のビット列の終端に到達すると、循環バッファ内のビット列の他端から指定された長さのビット列が選択されるまで選択が継続され、指定された長さのビット列が送信ビット列となる。
幾つかの実施形態では、幾つかの実施形態では、ポーラ符号化の符号レートが所定の閾値以下である場合、循環バッファ内のP=N−Mの位置を所定の開始位置として、インデクスの昇順でMビットが順次選択され、選択が循環バッファ内のビット列の終端に達した場合、選択は、循環バッファ内のビット列の他端から継続され、ここで、Pは、循環バッファ内のビット列の位置インデクスを表し、Mは、送信ビット列の長さを表し、Nは、初期ビット列の長さを表す。
幾つかの実施形態では、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置として、インデクスの昇順でMビットが順次選択され、読み出しが循環バッファ内のビット列の終端に達した場合、読み出しは、循環バッファ内のビット列の他端から継続され、ここで、Nは、初期ビット列の長さである。
幾つかの実施形態では、送信ビット列は、循環バッファから読み出される指定された長さのビット列と同じ順序又は逆の順序で配列される。
本開示は、更に、生成モジュール、書込モジュール、選択モジュール、及び判定モジュールを含む、ポーラ符号のためのレートマッチング装置を提供する。生成モジュールは、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列をNビットの初期ビット列{S,S,…,SN−1}を生成するように構成されている。書込モジュールは、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込むように構成されている。選択モジュールは、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択するように構成されている。判定モジュールは、指定された長さのビット列を送信ビット列とする。
幾つかの実施形態では、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数f(n)によって決定され、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスである。書込モジュールは、一対一マッピングインターリーブ関数f(n)に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスf(n)を有する位置にマッピングするように構成されている。
なお、{n}→{f(n)}のマッピングは、一対一マッピングであるため、{p(n)}→{n}のマッピングを満たすf(n)の逆関数p(n)が存在する。すなわち、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って循環バッファのq個の部分にビットを書き込むことは、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、一対一マッピングインターリーブ関数f(n)は、以下のネスティング特性を有する。
マッピング{n}→{f(n)}は、一対一マッピングインターリーブ関数のマッピング{n}→{f(n)}において、ビット列{n}とビット列{f(n)}からNより大きな要素を削除することによって直接取得でき、ここで、n=0,1,2,…,N−1であり、Nは、N以下の正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}のための所定の規則は、ポーラ符号のデータ特性に従って、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスmod(f(n)+m,N)を有する位置にマッピングすることによって実行してもよい。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
本開示は、プロセッサ及びメモリを備える、ポーラ符号のレートマッチング装置を提供する。メモリは、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成し、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込み、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする動作を実行するように構成される。
幾つかの実施形態では、プロセッサは、メモリに格納された命令に基づいて、初期ビット列{S,S,…,SN−1}に対する所定の規則がポーラ符号のデータ特性に従って生成される一対一マッピングインターリーブ関数f(n)によって決定され、ここで、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスであり、一対一マッピングインターリーブ関数に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスf(n)を有する位置にマッピングする動作を実行するように更に構成される。
{n}→{f(n)}のマッピングは、一対一マッピングであるため、{p(n)}→{n}のマッピングを満たすf(n)の逆関数p(n)が存在する。すなわち、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って循環バッファのq個の部分にビットを書き込む動作は、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
本開示は、更に、上記の実施形態におけるポーラ符号のレートマッチング方法を実行するための実行命令を格納するように構成されたコンピュータ記憶媒体を提供する。
本開示が提供するポーラ符号のためのレートマッチング方法及び装置は、ハイブリッド自動反復要求メカニズムにおいて、ポーラ符号ハードウェアが高い複雑性を有し、符号化プロセスが複雑であるという問題を解決し、ポーラ符号ハードウェアの複雑性を大幅に低減し、ハイブリッド自動反復要求メカニズムにおける符号化プロセスを単純化できる。
従来のポーラ符号の再帰的符号化構造の概略図である。 従来のポーラ符号の他の再帰的符号化構造の概略図である。 従来のポーラ符号の再帰的符号化構造の基本ユニットの構成図である。 一実施形態に基づくポーラレートに対するレートマッチング方法のフローチャートである。 一実施形態に基づくポーラレートに対するレートマッチング装置のブロック図である。 一実施形態に基づくポーラレートのための別のレートマッチング装置のブロック図である。
本出願の明細書、特許請求の範囲及び上記図面における用語「第1」、「第2」等は、類似の対象を区別するために使用され、必ずしも特定の序列又は順序を記述するものではない。このように使用されるデータは、本明細書に記載される本開示の実施形態が、本明細書に図示又は説明されていない順序でも実施でき、適切な場合に交換可能であることは当然である。更に、本明細書に記載の用語「備える」、「含む」、又はこれらの他の活用形は、非排他的包含を意図する。例えば、一連のステップ又は要素を含むプロセス、方法、システム、製品又は装置は、明示的に列挙されたステップ又は要素を含むのみでなく、明示的に列挙されていない又はそのようなプロセス、方法、システム、製品又は装置に固有の他のステップ又は要素を含むこともできる。
実施形態1
本実施形態は、ポーラ符号のレートマッチング方法を提供する。添付図面のフローチャートに示すステップは、例えば、コンピュータが実行可能な命令のグループによって、コンピュータシステムで実行できる。フローチャートには、論理順序を示しているが、図示又は説明するステップは、場合によっては、本明細書に記載するものとは異なる順序で実行してもよい。
上記の動作環境において、本開示は、図3に示されるポーラ符号のためのレートマッチング方法を提供する。図3は、本実施形態に基づくポーラ符号のレートマッチング方法のフローチャートである。図3に示すように、この方法は、以下を含む。
302では、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成する。
K個の情報ビットは、ビットチャネルにマッピングしてもよく、チェックビットを含んでもよい。
304では、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込む。
306では、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする。
上記のステップでは、ビット列をポーラ符号器で符号化し、ポーラ符号化後のビット列を所定の規則に従って処理して循環バッファ内のビット列を取得し、所定の開始位置から指定された長さのビット列を順次選択して送信ビット列とする。このように、適切な処理及び選択ルールを使用して、異なるシナリオにおけるデータの送信に適応させることにより、ハイブリッド自動反復要求メカニズムにおいて、ポーラ符号ハードウェアが高い複雑性を有し、符号化プロセスが複雑であるという従来技術の問題を解決し、ポーラ符号ハードウェアの複雑性を大幅に低減し、符号化プロセスを単純化できる。
ここで、循環バッファは、ハードウェア循環バッファであってもよく、仮想デバイスであってもよく、本実施形態ではこれを限定しない。
幾つかの実施形態では、ポーラ符号の母符号は、
の長さを有し、ここで、
は、天井関数演算子を表し、0≦Δ<2であり、Rは、ポーラ符号化のための符号レートである。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}に対する所定の規則は、ポーラ符号のデータ特性に従って生成される一対一マッピングインターリーブ関数f(n)によって決定され、ここで、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスであり、一対一マッピングインターリーブ関数に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスf(n)を有する位置にマッピングする。
幾つかの実施形態では、一対一マッピングインターリーブ関数f(n)は、以下のネスティング特性を有する。マッピング{n}→{f(n)}は、一対一マッピングインターリーブ関数のマッピング{n}→{f(n)}において、ビット列{n}とビット列{f(n)}からNより大きな要素を削除することによって直接取得でき、ここで、n=0,1,2,…,N−1であり、Nは、N以下の正の整数である。
{n}→{f(n)}のマッピングは、一対一マッピングであるため、{p(n)}→{n}のマッピングを満たすf(n)の逆関数p(n)が存在する。すなわち、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込むことは、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}のための所定の規則は、ポーラ符号のデータ特性に従って、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスmod(f(n)+m,N)を有する位置にマッピングすることによって実行してもよい。
幾つかの実施形態では、データ特性は、伝送ブロック長、符号レート、利用可能な物理リソースブロック数、変調及び符号化レベル、ユーザ機器タイプインデクス、及びデータ伝送リンク方向の少なくとも1つを含む。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、ポーラ符号化の符号レートによって決定される。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値以下である場合、Pを循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
なお、所定の開始位置は、ポーラ符号化の符号レートによって決定されるため、ポーラ符号化の符号レートが所定の閾値より高い場合、所定の開始位置は、以下のいずれかの方法で選択される。
循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を、所定の開始位置とする。
循環バッファが第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第7の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第8の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第8の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第9の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、M≦t+tのとき、P=t+t+M−1の位置を所定の開始位置とし、M>t+tのとき、P=M−1−t−tの位置を所定の開始位置とし、ここで、Mは、送信ビット列の長さであり、tは、第6の部分のビット長であり、tは、第7の部分のビット長であり、tは、第8の部分のビット長であり、tは、第9の部分のビット長である。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第6の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、M≦t+tのとき、P=t+t−Mの位置を所定の開始位置とし、M>t+tのとき、P=N+t+t−Mの位置を所定の開始位置とし、ここで、Mは、送信ビット列の長さであり、tは、第6の部分のビット長であり、tは、第7の部分のビット長であり、tは、第8の部分のビット長であり、tは、第9の部分のビット長である。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第9の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第7の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第6の部分の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
幾つかの実施形態では、循環バッファは、第1の部分と第2の部分とを含む。第1の部分は、順次方式又はビット逆順(BRO)インターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、BROインターリーブ方式の初期ビット列における残りのt個のビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列のビット数であり、Nは、0以上の整数である。
あるいは、第1の部分は、BROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、順次方式又はBROインターリーブ方式の初期ビット列における残りのt個のビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列におけるビット数であり、Nは、0以上の整数である。
第1の部分と第2の部分は、循環バッファ内にビット列を構成するように順次配列される。
幾つかの実施形態では、初期ビット列は、{S,S,…,SN−1}として表され、第1の部分は、順次方式又はBROインターリーブ方式の初期ビット列のt個の連続ビット
から構成され、第2の部分は、BROインターリーブ方式の初期ビット列の残りのN−t個の連続ビット
から構成される。
あるいは、第1の部分は、BROインターリーブ方式の初期ビット列におけるN−t個の連続ビット
で構成され、第2の部分は、順次方式又はBROインターリーブ方式の初期ビット列における残りのt個の連続ビット
で構成される。
幾つかの実施形態では、循環バッファは、第3の部分と、第4の部分と、第5の部分とを含む。第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ(row-column interleaving)方式の初期ビット列におけるt個の連続ビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されることにより構成され、第5の部分は、初期ビット列におけるt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
あるいは、第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個のビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されことにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
第3の部分、第4の部分、及び第5の部分は、循環バッファにおいてビット列を構成するように順次配列される。
幾つかの実施形態では、初期ビット列は、{S,S,…,SN−1}として表され、第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式のt個の連続ビット
から構成され、第4の部分は、BROインターリーブ方式、行−列インターリーブ方式又はインタレース方式のt個のビット
及びt個のビット
で構成され、第5の部分は、初期ビット列おける、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の残りのN−t−2×t個のビット
で構成されており、ここで、t=N/4の場合、
であり、t=N/4の場合、
であり、φは、空集合を表す。
あるいは、第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式のN−t−2×t個のビット
で構成され、第4の部分は、BROインターリーブ方式、行−列インターリーブ方式又はインタレース方式のt個のビット
及びt個のビット
で構成され、第5の部分は、順次方式、BROインターリーブ方式又は行−列インターリーブのビット列
で構成され、ここで、t=N/4の場合、
であり、t=N/4の場合、
である。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
幾つかの実施形態では、初期ビット列は、{S,S,…,SN−1}として表され、第6の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,Sa−1}とビット列集合{SBRO(j)}との共通集合を含み、ここでaは、0以上でN以下の整数であり、a=0の場合、{S,S,…,Sa−1}=φであり、j=M,…,N−1であり、Mは、送信ビット列の長さであり、第7の部分は、順次方式又はBROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,Sa−1}とビット列集合{I}の差集合であり、第9の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,SN−1}とビット列集合{SBRO(j)}の共通集合を含み、a=Nの場合、{S,Sa+1,…,SN−1}=φであり、第8の部分は、BROインターリーブ方式のt個のビット{I}で構成され、{I}は、ビット列集合{S,Sa+1,…,SN−1}とビット列集合{I}の差集合である。
あるいは、初期ビット列は、{S,S,…,SN−1}として表され、第6の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{SN−1,SN−2,…,S}とビット列集合{SBRO(j)}との共通集合を含み、ここで、aは、0以上N以下の整数であり、j=N−1,N−2,…,Mであり、Mは、送信ビット列の長さであり、a=Nの場合、{SN−1,SN−2,…,S}=φであり、第7の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{SN−1,SN−2,…,S}とビット列集合{I}の差集合であり、第9の部分は、順次方式又はBROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{Sa−1,Sa−2,…,S}とビット列集合{SBRO(j)}との共通集合を含み、a=0の場合、{S,S,…,Sa−1}=φであり、第8の部分は、順次方式又はBROインターリーブ方式のt個のビット{I}で構成され、{I}は、ビット列集合{Sa−1,Sa−2,…,S}とビット列集合{I}の差集合である。
第6の部分、第7の部分、第8の部分、及び第9の部分は、循環バッファ内にビット列を構成するように順次配列される。
幾つかの実施形態では、所定の開始位置は、ポーラ符号化の符号レートに従って選択される。
幾つかの実施形態では、所定の開始位置は、以下の手法の1つによって選択される。
ポーラ符号化の符号レートが所定の閾値以下の場合、P=N−Mの位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第7の部分の開始ビット位置を所定の開始位置とする。
ポーラ符号化の符号レートが所定の閾値以下である場合、循環バッファ内のビット列の終了ビット位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第8の部分の終了ビット位置を所定の開始位置とする。
ポーラ符号化の符号レートが所定の閾値以下である場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置とし、ポーラ符号化符号の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第7の部分の開始ビット位置を所定の開始位置とする。
ポーラ符号化の符号レートが所定の閾値以下の場合、P=M−1の位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第8の部分の終了ビット位置を所定の開始位置とする。
なお、所定の開始オプションが選択される上記の手法から分かるように、所定の開始位置は、ポーラ符号化の符号レートに従って選択する必要がある。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
幾つかの実施形態では、初期ビット列は、{S,S,…,SN−1}として表され、第7の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,Sa−1}とビット列集合{SBRO(j)}との共通集合を含み、ここで、aは、0以上N以下の整数であり、a=0の場合、{S,S,…,Sa−1}=φであり、j=M,…,N−1であり、Mは、送信ビット列の長さであり、第6の部分は、順次方式又はBROインターリーブ方式のt個のビット{I}であり、ここで、{I}は、ビット列集合{S,S,…,Sa−1}=φ及びビット列集合{I}の差集合であり、第8の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,SN−1}とビット列集合{SBRO(j)}の共通集合を含み、a=Nの場合、{S,Sa+1,…,SN−1}=φであり、第9の部分は、BROインターリーブ方式のt個のビット{I}で構成され、{I}は、ビット列集合{S,Sa+1,…,SN−1}とビット列集合{I}の差集合である。
あるいは、初期ビット列は、{S,S,…,SN−1}として表され、第7の部分は、BROインターリーブ方式のt個のビット{I}で構成され、{I}は、ビット列集合{SN−1,SN−2,…,S}とビット列集合{SBRO(j)}との共通集合を含み、aは、0以上N以下の整数であり、j∈{M,…,N−1}であり、Mは、送信ビット列の長さであり、a=Nの場合、{SN−1,SN−2,…,S}=φであり、第6の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{SN−1,SN−2,…,S}とビット列集合{I}の差集合であり、第8の部分は、BROインターリーブ方式でt個のビット{I}で構成され、ここで、{Si2}は、ビット列集合{Sa−1,Sa−2,…,S}とビット列集合{SBRO(j)}の共通集合を含み、a=0の場合、{Sa−1,Sa−2,…,S}=φであり、第9の部分は、順次方式又はBROインターリーブのt個のビット{I}で構成されており、{Si1}は、ビット列集合{Sa−1,Sa−2,…,S}とビット列集合{I}の差集合である。
第6の部分、第7の部分、第8の部分、及び第9の部分は、循環バッファ内にビット列を構成するように順次配列される。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
ポーラ符号化の符号レートが所定の閾値以下の場合、循環バッファ内のビット列の第8の部分の開始ビット位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第9の部分の開始ビット位置を所定の開始位置とする。
ポーラ符号化の符号レートが所定の閾値以下の場合、M≦t+tのとき、P=t+t+M−1の位置を所定の開始位置とし、M>t+tのとき、P=M−1−t−tの位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第6の部分の終了ビット位置を所定の開始位置とする。
ポーラ符号化の符号レートが所定の閾値以下の場合、M≦t+tのとき、P=t+t−Mの位置を所定の開始位置とし、M>t+tのとき、P=N+t+t−Mの位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第9の部分の開始ビット位置を所定の開始位置とする。
ポーラ符号化の符号レートが所定の閾値以下の場合、循環バッファ内のビット列の第7の部分の終了ビット位置を所定の開始位置とし、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の第6の部分の終了ビット位置を所定の開始位置とする。
なお、所定の開始オプションが選択される上記の手法から分かるように、所定の開始位置は、ポーラ符号化の符号レートに従って選択する必要がある。
幾つかの実施形態において、所定の閾値は、集合{1/3,1/2}から選択され、すなわち、所定の閾値は、1/3又は1/2であってもよい。
幾つかの実施形態では、ポーラ符号の母符号は、
の長さを有し、ここで、
は、天井関数演算子を表し、Rは、符号レートであり、mは、正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、循環バッファ内のビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスmod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、循環バッファ内のビット列は、初期ビット列{S,S,…,SN−1}にBROインターリーブを施すことによって取得され、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスN−1−mod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を、所定の開始位置とする。
幾つかの実施形態では、指定された長さのビット列を循環バッファ内のビット列の所定の開始位置から順次選択し、指定された長さのビット列を送信ビット列とすることは、以下を含む。
循環バッファ内のビット列の所定の位置からインデクスの昇順又は降順で、ビットが順次選択され、循環バッファ内のビット列の終端に到達すると、循環バッファ内のビット列の他端から指定された長さのビット列が選択されるまで選択が継続され、指定された長さのビット列が送信ビット列となる。
例えば、循環バッファ内のビット列の所定の開始位置から終了ビット位置まで、インデクスの昇順でビットを読み出す場合、指定された長さのビット列が読み出されなければ、循環バッファ内のビット列の開始ビット位置から指定された長さのビット列が読み出されるまで読み出しが継続され、指定された長さのビット列を送信ビット列とする。所定の開始位置から循環バッファ内のビット列の開始ビット位置まで、降順でビットを読み出す場合、指定された長さのビット列が読み出されなければ、循環バッファ内のビット列の終了ビット位置から指定された長さのビット列が読み出されるまで読み出しが継続され、指定された長さのビット列を送信ビット列とする。
幾つかの実施形態では、ポーラ符号化の符号レートが所定の閾値以下である場合、循環バッファ内のP=N−Mの位置を所定の開始位置として、インデクスの昇順でMビットが順次選択され、読み出しが循環バッファ内のビット列の終端に達した場合、読み出しは、循環バッファ内のビット列の他端から継続され、ここで、Pは、循環バッファ内のビット列の位置インデクスを表し、Mは、送信ビット列の長さを表し、Nは、初期ビット列の長さを表す。
幾つかの実施形態では、ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置として、インデクスの昇順でMビットが順次選択され、読み出しが循環バッファ内のビット列の終端に達した場合、読み出しは、循環バッファ内のビット列の他端から継続され、ここで、Nは、初期ビット列の長さである。
所定の開始位置を決定する処理は、上記循環バッファを2分割、3分割、4分割した場合のいずれにも適用でき、第1の組み合わせ、第2の組み合わせ、第3の組み合わせ、第4の組み合わせのいずれにも適用でき、これらは、本実施形態において限定されない。
幾つかの実施形態では、送信ビット列は、循環バッファから読み出される指定された長さのビット列と同じ順序又は逆の順序で配列される。
上述の実施形態における方法は、ソフトウェアと必要な汎用ハードウェアプラットフォームとによって実現してもよく、もちろんハードウェアのみによって実現してもよいが、多くの場合、前者が好ましい実施形態である。実質的に本実施形態が提供する技術内容又は既存技術に寄与する部分は、ソフトウェア製品の形式で実現できる。ソフトウェア製品は、記憶媒体(ROM/RAM、磁気ディスク、光ディスク等)に格納され、端末装置(携帯電話機、コンピュータ、サーバ、ネットワーク機器等)が上述の実施形態に基づく方法を実行することを可能にするための幾つかの命令を含む。
実施形態2
本実施形態は、ポーラ符号のためのレートマッチング装置を提供する。この装置は、上述の実施形態に基づく方法を実施できる。これまでに説明したことは、以下では繰り返さない。以下で使用する用語「モジュール」は、所定の機能を実現できるソフトウェア、ハードウェア、又はこれらの組み合わせであってもよい。なお、以下に説明する実施形態における装置は、ソフトウェアにより実現することが好ましいが、ハードウェアによる実現、又はソフトウェアとハードウェアとの組み合わせによる実現も可能である。
図4は、本実施形態に基づくビット列処理装置のブロック図である。図4に示すように、この装置は、生成モジュール40と、書込モジュール42と、読出モジュール44と、判定モジュール46とを含むことができる。
生成モジュール40は、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列をNビットの初期ビット列{S,S,…,SN−1}を生成するように構成されている。
書込モジュール42は、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込むように構成されている。
読出モジュール44は、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択するように構成されている。
判定モジュール46は、指定された長さのビット列を送信ビット列とする。
この装置において、生成モジュール40は、情報ビットとしてのKビットチャネルを(N−K)凍結ビットと連結し、Nビットのビット列を生成し、Nビットのビット列をサイズN×Nの生成行列を有するポーラ符号器によってエンコードして、Nビットの初期ビット列を生成し、書込モジュール41は、循環バッファをq個の部分に分割し、初期ビット列から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込み、読出モジュール44は、循環バッファ内のビット列の所定の開始位置から指定された長さのビット列を順次選択し、判定モジュール46は、指定された長さのビット列を送信ビット列とする。このように、適切な処理及び選択ルールを使用して、異なるシナリオにおけるデータビットの送信に適応させることにより、ハイブリッド自動反復要求メカニズムにおいて、ポーラ符号ハードウェアが高い複雑性を有し、符号化プロセスが複雑であるという従来技術の問題を解決し、ポーラ符号ハードウェアの複雑性を大幅に低減し、符号化プロセスを単純化できる。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}に対する所定の規則は、ポーラ符号のデータ特性に従って生成される一対一マッピングインターリーブ関数f(n)によって決定され、ここで、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスである。書込モジュールは、一対一マッピングインターリーブ関数f(n)に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスf(n)を有する位置にマッピングするように構成されている。
なお、{n}→{f(n)}のマッピングは、一対一マッピングであるため、{p(n)}→{n}のマッピングを満たすf(n)の逆関数p(n)が存在する。すなわち、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って循環バッファのq個の部分にビットを書き込むことは、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、一対一マッピングインターリーブ関数f(n)は、以下のネスティング特性を有する。
マッピング{n}→{f(n)}は、一対一マッピングインターリーブ関数のマッピング{n}→{f(n)}において、ビット列{n}とビット列{f(n)}からNより大きな要素を削除することによって直接取得でき、ここで、n=0,1,2,…,N−1であり、Nは、N以下の正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}のための所定の規則は、ポーラ符号のデータ特性に従って、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスmod(f(n)+m,N)を有する位置にマッピングすることによって実行してもよい。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、ポーラ符号化の符号レートによって決定される。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値以下である場合、Pを循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
なお、所定の開始位置は、ポーラ符号化の符号レートによって選択されるため、ポーラ符号化の符号レートが所定の閾値より高い場合、所定の開始位置は、以下のいずれかの方法で選択される。
循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を、所定の開始位置とする。
循環バッファが第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第7の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第8の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第8の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第9の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、M≦t+tのとき、P=t+t+M−1の位置を所定の開始位置とし、M>t+tのとき、P=M−1−t−tの位置を所定の開始位置とし、ここで、Mは、送信ビット列の長さであり、tは、第6の部分のビット長であり、tは、第7の部分のビット長であり、tは、第8の部分のビット長であり、tは、第9の部分のビット長である。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第6の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、M≦t+tのとき、P=t+t−Mの位置を所定の開始位置とし、M>t+tのとき、P=N+t+t−Mの位置を所定の開始位置とし、ここで、Mは、送信ビット列の長さであり、tは、第6の部分のビット長であり、tは、第7の部分のビット長であり、tは、第8の部分のビット長であり、tは、第9の部分のビット長である。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第9の部分の開始ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第7の部分の終了ビット位置を所定の開始位置とする。
循環バッファが、第6の部分、第7の部分、第8の部分、第9の部分の順に配列されて構成されている場合、循環バッファにおけるビット列の第6の部分の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
幾つかの実施形態では、循環バッファは、第1の部分と第2の部分とを含む。第1の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、BROインターリーブ方式の初期ビット列における残りのtビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列のビット数であり、Nは、0以上の整数である。
あるいは、第1の部分は、BROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、順次方式又はBROインターリーブ方式の初期ビット列における残りのt個のビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列におけるビット数であり、Nは、0以上の整数である。
第1の部分と第2の部分は、循環バッファ内にビット列を構成するように順次配列される。
幾つかの実施形態では、循環バッファは、第3の部分と、第4の部分と、第5の部分とを含む。第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されることにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
あるいは、第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個のビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されことにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
第3の部分、第4の部分、及び第5の部分は、循環バッファにおいてビット列を構成するように順次配列される。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
幾つかの実施形態では、ポーラ符号の母符号は、
の長さを有し、ここで、
は、天井関数演算子を表し、Rは、符号レートであり、mは、正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、循環バッファ内のビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスmod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、循環バッファ内のビット列は、初期ビット列{S,S,…,SN−1}にBROインターリーブを施すことによって取得され、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスN−1−mod(BRO(n)+m,N)を有する位置にマッピングする。
実施形態3
本実施形態は、上述の実施形態における装置が適用されたポーラ符号のためのレートマッチング装置を提供する。このシステムは、上述の実施形態に基づく方法を実施できる。本実施形態の説明では、これまでに説明したことは、以下では繰り返さない。
図5は、本実施形態に基づくビット列処理装置のブロック図である。図5に示すように、この装置は、プロセッサ50及びメモリ52を含むことができる。
メモリ52は、プロセッサによって実行可能な命令を格納するように構成されている。プロセッサ50は、メモリに格納された命令に従って、以下の動作を実行するように構成されている。K及びNを共に正の整数とし、KをN以下として、情報ビットとして使用されるKビットチャネルと(N−K)凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によってNビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成し、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込み、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする。
この装置では、送信ビット列に対してポーラ符号化が実行され、ポーラ符号化の対象となるビット列が所定の規則に従って処理され、所定の開始位置から指定された長さのビット列が順次選択され、送信ビット列とされる。このように、適切な処理及び選択ルールを使用して、異なるシナリオにおけるデータビットの送信に適応させることにより、ハイブリッド自動反復要求メカニズムにおいて、ポーラ符号ハードウェアが高い複雑性を有し、符号化プロセスが複雑であるという従来技術の問題を解決し、ポーラ符号ハードウェアの複雑性を大幅に低減し、符号化プロセスを単純化できる。
幾つかの実施形態では、プロセッサは、メモリに格納された命令に基づいて、初期ビット列{S,S,…,SN−1}に対する所定の規則がポーラ符号のデータ特性に従って生成される一対一マッピングインターリーブ関数f(n)によって決定され、ここで、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスであり、一対一マッピングインターリーブ関数に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスf(n)を有する位置にマッピングする動作を実行するように更に構成される。
なお、{n}→{f(n)}のマッピングは、一対一マッピングであるため、{p(n)}→{n}のマッピングを満たすf(n)の逆関数p(n)が存在する。すなわち、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って循環バッファのq個の部分にビットを書き込む動作は、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、一対一マッピングインターリーブ関数f(n)は、以下のネスティング特性を有する。
マッピング{n}→{f(n)}は、一対一マッピングインターリーブ関数のマッピング{n}→{f(n)}において、ビット列{n}とビット列{f(n)}からNより大きな要素を削除することによって直接取得でき、ここで、n=0,1,2,…,N−1であり、Nは、N以下の正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}のための所定の規則は、ポーラ符号のデータ特性に従って、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスmod(f(n)+m,N)を有する位置にマッピングすることによって実行してもよい。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、ポーラ符号化の符号レートによって決定される。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値以下である場合、Pを循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
幾つかの実施形態では、循環バッファは、第1の部分と第2の部分とを含む。第1の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、BROインターリーブ方式の初期ビット列における残りのtビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列のビット数であり、Nは、0以上の整数である。
あるいは、第1の部分は、BROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、順次方式又はBROインターリーブ方式の初期ビット列における残りのt個のビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列におけるビット数であり、Nは、0以上の整数である。
第1の部分と第2の部分は、循環バッファ内にビット列を構成するように順次配列される。
幾つかの実施形態では、循環バッファは、第3の部分と、第4の部分と、第5の部分とを含む。第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されることにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]及びt∈[(1/16)N,(7/16)N]である。
あるいは、第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個のビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されことにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
第3の部分、第4の部分、及び第5の部分は、循環バッファにおいてビット列を構成するように順次配列される。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
幾つかの実施形態では、ポーラ符号の母符号は、
の長さを有し、ここで、
は、天井関数演算子を表し、Rは、符号レートであり、mは、正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、循環バッファ内のビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスmod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、循環バッファ内のビット列は、初期ビット列{S,S,…,SN−1}にBROインターリーブを施すことによって取得され、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスN−1−mod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、プロセッサは、メモリに格納された命令に基づいて、初期ビット列{S,S,…,SN−1}に対する所定の規則がポーラ符号のデータ特性に従って生成される一対一マッピングインターリーブ関数f(n)によって決定され、ここで、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、初期ビット列のビット位置インデクスであり、f(n)は、循環バッファの位置インデクスであり、一対一マッピングインターリーブ関数に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスf(n)を有する位置にマッピングする動作を実行するように更に構成される。
幾つかの実施形態では、所定の規則は、ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定でき、ここで、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、循環バッファの位置インデクスである。初期ビット列{S,S,…,SN−1}からビットを非反復的に選択し、所定の規則に従って循環バッファのq個の部分にビットを書き込む動作は、一対一マッピングインターリーブ関数p(n)に従って、初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む。
幾つかの実施形態では、一対一マッピングインターリーブ関数f(n)は、以下のネスティング特性を有する。
マッピング{n}→{f(n)}は、一対一マッピングインターリーブ関数のマッピング{n}→{f(n)}において、ビット列{n}とビット列{f(n)}からNより大きな要素を削除することによって直接取得でき、ここで、n=0,1,2,…,N−1であり、Nは、N以下の正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}のための所定の規則は、ポーラ符号のデータ特性に従って、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、初期ビット列におけるビット位置インデクスnを有するビットSを、循環バッファにおける位置インデクスmod(f(n)+m,N)を有する位置にマッピングすることによって実行してもよい。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
幾つかの実施形態では、所定の開始位置は、ポーラ符号化の符号レートによって決定される。
幾つかの実施形態では、所定の開始位置は、以下のように選択できる。
ポーラ符号化の符号レートが所定の閾値以下である場合、Pを循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
所定の開始位置は、以下のように選択してもよい。
ポーラ符号化の符号レートが所定の閾値より高い場合、循環バッファ内のビット列の開始ビット位置を所定の開始位置とする。
幾つかの実施形態では、循環バッファは、第1の部分と第2の部分とを含む。第1の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、BROインターリーブ方式の初期ビット列における残りのtビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列のビット数であり、Nは、0以上の整数である。
あるいは、第1の部分は、BROインターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第2の部分は、順次方式又はBROインターリーブ方式の初期ビット列における残りのt個のビットで構成され、ここで、t及びtは、いずれも0以上の整数であり、t∈[(1/8)N,(7/8)N]、t+t=Nであり、Nは、初期ビット列におけるビット数であり、Nは、0以上の整数である。
第1の部分と第2の部分は、循環バッファ内にビット列を構成するように順次配列される。
幾つかの実施形態では、循環バッファは、第3の部分と、第4の部分と、第5の部分とを含む。第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個の連続ビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されることにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
あるいは、第3の部分は、順次方式、BROインターリーブ方式、又は行−列インターリーブ方式の初期ビット列におけるt個のビットで構成され、第4の部分は、長さtの2つの連続するビット列が、初期ビット列から選択され、BROインターリーブ方式、行−列インターリーブ方式、又はインタレース方式で配列されことにより構成され、第5の部分は、初期ビット列における残りのt個のビットで構成され、ここで、t、t、tは、全て0以上の整数であり、t+2×t+t=N、t∈[(1/8)N,(7/8)N]、及びt∈[(1/16)N,(7/16)N]である。
第3の部分、第4の部分、及び第5の部分は、循環バッファにおいてビット列を構成するように順次配列される。
幾つかの実施形態では、所定の開始位置は、以下の手法のうちの1つによって選択される。
循環バッファにおけるビット列の開始ビット位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとして、循環バッファ内のP=M−1の位置を所定の開始位置とする。
を循環バッファにおけるビット列の位置インデクスとし、Mを送信ビット列の長さとし、Nを初期ビット列の長さとして、循環バッファ内のP=N−Mの位置を所定の開始位置とする。
循環バッファ内のビット列の終了ビット位置を所定の開始位置とする。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
一部の実施形態では、循環バッファは、第6の部分、第7の部分、第8の部分、及び第9の部分を含む。第6の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
あるいは、第6の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第7の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第8の部分は、BROインターリーブ方式の初期ビット列におけるt個のビットで構成され、第9の部分は、順次方式又はBROインターリーブ方式の初期ビット列におけるt個のビットで構成され、ここで、t、t、t、及びtは、全て0以上の整数であり、(t+t)∈[(1/8)N,(7/8)N]であり、t+t+t+t=Nである。
幾つかの実施形態では、ポーラ符号の母符号は、
の長さを有し、ここで、
は、天井関数演算子を表し、Rは、符号レートであり、mは、正の整数である。
幾つかの実施形態では、初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、循環バッファ内のビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスmod(BRO(n)+m,N)を有する位置にマッピングする。
幾つかの実施形態では、循環バッファ内のビット列は、初期ビット列{S,S,…,SN−1}にBROインターリーブを施すことによって取得され、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、BROインタリーバにより、初期ビット列においてビット位置インデクスnを有するビットSを、循環バッファ内の位置インデクスN−1−mod(BRO(n)+m,N)を有する位置にマッピングする。
以下、本実施形態において上述した処理方法及び実装モードの例を示す。
例1
1.符号レートR=2/3を用いて長さK=4の情報ビット列に対してポーラ符号化を行い、これにより、符号化されたビット列の長さは、
となる。
2.BRO演算(これに限定されない)によって初期ビット列をマッピングするためのマッピング関数を決定し、循環バッファ内のビット列{S,S,S,S,S,S,S,S}を取得する。
3.循環バッファの開始位置からインデクスの昇順で6ビット{S,S,S,S,S,S}を読み出す。
4.6個のデータビット{S,S,S,S,S,S}を順次配列し、送信レートマッチデータビット列として送信する。
例2
ステップ1及びステップ2は、例1と同じである。
3.循環バッファ内の位置インデクスP=M−1=5の位置からインデクスの降順で6ビット{S,S,S,S,S,S}を読み出す。
4.6個のデータビット{S,S,S,S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
例3
ステップ1及びステップ2は、例1と同じである。
3.循環バッファ内の位置インデクスP=N−M=2の位置からインデクスの昇順で6ビット{S,S,S,S,S,S}を読み出す。
4.6個のデータビット{S,S,S,S,S,S}を順次配列し、送信レートマッチデータビット列として送信する。
例4
ステップ1及びステップ2は、例1と同じである。
3.循環バッファの終了位置からインデクスの降順で6ビット{S,S,S,S,S,S}を読み出す。
4.6個のデータビット{S,S,S,S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
例5
ステップ1は、例1と同じである。
2.例1で取得した循環バッファのビット列を逆順配列し、{S,S,S,S,S,S,S,S}を取得する。
ステップ3及びステップ4は、例1と同じである。
例6
ステップ1及びステップ2は、例5と同じである。
ステップ3及びステップ4は、例2と同じである。
例7
ステップ1及びステップ2は、例5と同じである。
ステップ3及びステップ4は、例3と同じである。
例8
ステップ1及びステップ2は、例5と同じである。
ステップ3及びステップ4は、例4と同じである。
例9
1.符号レートR=2/3を用いて長さK=2の情報ビット列に対してポーラ符号化を行い、これにより、符号化されたビット列の長さは、
となる。
2.初期ビット列のマッピング関数のBROネスティング特性に基づき、例1における循環バッファ内のビット列から位置インデクスが4以上の要素を直接削除して、循環バッファ内のビット列{S,S,S,S}を取得する。
3.循環バッファの開始位置からインデクスの昇順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を順次配列し、送信レートマッチデータビット列として送信する。
例10
ステップ1及びステップ2は、例9と同じである。
3.循環バッファ内の位置インデクスP=M−1=2の位置からインデクスの降順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
例11
ステップ1及びステップ2は、例9と同じである。
3.循環バッファ内の位置インデクスP=N−M=1の位置からインデクスの昇順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を順次配列し、送信レートマッチデータビット列として送信する。
例12
ステップ1及びステップ2は、例9と同じである。
3.循環バッファの終了位置からインデクスの降順で3ビット{S,S,S}を読み出す。
4.6個のデータビット{S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
例13
ステップ1は、例9と同じである。
2.例9で取得した循環バッファのビット列を逆順配列し、{S,S,S,S}を取得する。
ステップ3及びステップ4は、例9と同じである。
例14
ステップ1及びステップ2は、例13と同じである。
ステップ3及びステップ4は、例10と同じである。
例15
ステップ1及びステップ2は、例13と同じである。
ステップ3及びステップ4は、例11と同じである。
例16
ステップ1及びステップ2は、例13と同じである。
ステップ3及びステップ4は、例12と同じである。
次に、循環バッファ内のビット列を2個の部分に分割する場合について説明する。
例17
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
1.符号レートR=1/3を用いて長さK=8の情報ビット列に対してポーラ符号を行い、これにより、符号化されたビット列の長さは、
となる。
2.循環バッファの部分1は、符号化されたビット列における6個の連続ビット{S,S,…,S}から構成され、循環バッファの部分2は、連続ビット{S,S,…,S31}をBROインターリーブ方式で符号化したビット列で構成され、したがって、部分2のビット列は{S16,S,S24,S20,S12,S28,S18,S10,S26,S,S22,S14,S30,S17,S,S25,S21,S13,S29,S19,S11,S27,S,S23,S15,S31}となる。
3.循環バッファ内の位置インデクスP=N−M=N−K/R=32−24=8のビット位置からインデクスの昇順で24ビットを読み出す。
4.24個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
例18
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
ステップ1及びステップ2は、例117と同じである。
3.循環バッファの終了ビット位置からインデクスの降順で24ビットを読み出す。
4.24個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例19
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
1.符号レートR=1/3を用いて長さK=8の情報ビット列に対してポーラ符号化を行い、これにより、符号化ビット列の長さは、
となる。
2.循環バッファの部分1は、BROインターリーブ方式で符号化されたビット列における26個の連続ビット{S31,S30,…,S}から構成され、循環バッファの部分2は、順次方式で符号化されたビット列の6個の連続ビット{S,S,…,S}から構成される。
3.循環バッファの開始位置からインデクスの昇順で24ビットを読み出す。
4.循環バッファから読み出したビット列の24個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例20
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
ステップ1及びステップ2は、例17と同じである。
3.循環バッファ内の位置インデクスP=M−1=K/R−1=24−1=23のビット位置からインデクスの降順で24ビットを読み出す。
4.循環バッファから読み出されたビット列の24個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
次に、循環バッファ内のビット列を3個の部分に分割する場合について説明する。
例21
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
1.符号レートR=1/3を用いて長さK=64の情報ビット列に対してポーラ符号化を行い、これにより、符号化ビット列の長さは、
となる。
2.循環バッファの部分3は、順次方式で符号化されたビット列が連続した64個の連続ビット{S,S,…,S63}で構成され、循環バッファの部分4は、64ビット{S64,S65,…,S127}と64ビット{S128,S129,…,S191}がインタレース方式で符号化されたビット列で構成されており、これは、部分4がビット{S64,S128,S65,S129,…,S127,S191}で構成されていることを意味し、循環バッファの部分5は、順次方式で符号化されたビット列の連続した64ビット{S192,S193,…,S255}で構成されている。したがって、循環バッファ内のビット列は{S,S,…,S63,S64,S128,S65,S129,…,S127,S191,S192,S193,…,S255}である。
3.循環バッファ内の位置インデクスP=N−M=N−K/R=256−192=64のビット位置からインデクスの昇順で192ビットを読み出す。
4.192ビットのデータを順次配列し、送信レートマッチデータビット列として送信する。
例22
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
ステップ1及びステップ2は、例21と同じである。
3.循環バッファの終了ビット位置からインデクスの降順で192ビットを読み出す。
4.192個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例23
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
1.符号レートR=1/3を用いて長さK=64の情報ビット列に対してポーラ符号化を行い、これにより、符号化されたビット列の長さは、
となる。
2.循環バッファの部分3は、順次方式で符号化されたビット列が連続した64個の連続ビット{S255,S254,…,S192}で構成され、循環バッファの部分4は、64ビット{S191,S190,…,S128}と64ビット{S127,S126,…,S64}がインタレース方式で符号化されたビット列で構成されており、これは、部分4がビット{S191,S127,S190,S126,…,S128,S64}で構成されていることを意味し、循環バッファの部分5は、順次方式で符号化されたビット列の連続した64ビット{S63,S62,…,S}で構成されている。したがって、循環バッファ内のビット列は{S255,S254,…,S192,S191,S127,S190,S126,…,S128,S64,S63,S62,…,S}である。
3.循環バッファの開始位置からインデクスの昇順で192ビットを読み出す。
4.循環バッファから読み出したビット列の192個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例24
ポーラ符号の循環バッファに対するレートマッチング方法は、以下に説明するステップを含む。
ステップ1及びステップ2は、例23と同じである。
3.循環バッファ内の位置インデクスP=M−1=K/R−1=192−1=191のビット位置からインデクスの降順で192ビットを読み出す。
4.循環バッファから読み出されたビット列の192個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
以下、循環バッファ内のビット列を4個の部分に分割する場合について説明する。
例25
1.符号レートR=1/2を用いて長さK=9の情報ビット列に対してポーラ符号化を行い、これにより、符号化されたビット列の長さは、
となる。
2.ビット列集合を{SBRO(j)}={S,S25,S,S21,S13,S29,S,S19,S11,S27,S,S23,S15,S31}として定義する。循環バッファの部分6{I}は、{S,S,…,S}と{SBRO(j)}との共通集合を含み、BROインターリーブ方式で{I}={S,S}として配列され、ここでj=18,…,31である。循環バッファの部分7{I}は、{S,S,…,S}と{I}の差集合であり、順次方式で{I}={S,S,S,S}として配列される。循環バッファの部分9{I}は、{S,S,…,S31}と{SBRO(j)}との共通集合を含み、BROインターリーブ方式で{I}={S,S25,S21,S13,S29,S19,S11,S27,S,S23,S15,S31}として配列される。循環バッファの部分8{Si3}は、{S,S,…,S31}と{Si4}の差集合であり、BROインターリーブ方式で{I}={S16,S,S24,S20,S12,S28,S18,S10,S26,S,S22,S14,S30,S17}として配列される。したがって、循環バッファ内のビット列は{S,S,S,S,S,S,S16,S,S24,S20,S12,S28,S18,S10,S26,S,S22,S14,S30,S17,S,S25,S21,S13,S29,S19,S11,S27,S,S23,S15,S31}である。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分7の開始位置からインデクスの昇順で18ビットを読み出し、R=1/2が所定の閾値より小さい場合、循環バッファ内の位置インデクスP=N−M=14の位置からインデクスの昇順で18ビットを読み出す。
4.循環バッファから読み出されたビット列の18個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
例26
ステップ1及びステップ2は、例25と同じである。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分8の終了位置からインデクスの降順で18ビットを読み出し、R=1/2が所定の閾値より小さい場合、循環バッファ内の終了位置からインデクスの降順で18ビットを読み出す。
4.循環バッファから読み出したビット列の18個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例27
ステップ1は、例25と同じである。
2.例25で取得された循環バッファのビット列を逆順配列して{S31,S15,S23,S,S27,S11,S19,S29,S13,S21,S25,S,S17,S30,S14,S22,S,S26,S10,S18,S28,S12,S20,S24,S,S16,S,S,S,S,S,S}とする。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分7の開始位置からインデクスの昇順で18ビットを読み出し、R=1/2が所定の閾値より小さい場合、循環バッファ内の開始位置からインデクスの昇順で18ビットを読み出す。
4.循環バッファから読み出されたビット列の18個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
例28
ステップ1及びステップ2は、例27と同じである。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分8の終了位置からインデクスの降順で18ビットを読み出し、R=1/2が所定の閾値未満である場合、循環バッファ内の位置インデクスP=M−1=17の位置からインデクスの降順で18ビットを読み出す。
4.循環バッファから読み出したビット列の18個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例29
ステップ1は、例25と同じである。
2.循環バッファの部分6は、{I}={S,S,S,S}、部分7は、{I}={S,S}、部分8は、{I}={S,S25,S21,S13,S29,S19,S11,S27,S,S23,S15,S31}、部分9は、{I}={S16,S,S24,S20,S12,S28,S18,S10,S26,S,S22,S14,S30,S17}である。したがって、循環バッファ内のビット列は、{S,S,S,S,S,S,S,S25,S21,S13,S29,S19,S11,S27,S,S23,S15,S31,S16,S,S24,S20,S12,S28,S18,S10,S26,S,S22,S14,S30,S17}である。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分9の開始位置からインデクスの昇順で18ビットを読み出す。読み出しが循環バッファの終了位置に達した場合、循環バッファの開始位置から18ビットの読み出しが終了するまで読み出しを継続する。R=1/2が所定の閾値より小さい場合、循環バッファ内の部分8の開始位置からインデクスの昇順で18ビットを読み出す。読み出しが循環バッファの終了位置に達した場合、循環バッファの開始位置から18ビットの読み出しが終了するまで読み出しを継続する。
4.循環バッファから読み出されたビット列の18個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
例30
ステップ1及びステップ2は、例29と同じである。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分6の終了位置からインデクスの降順で18ビットを読み出す。読み出しが循環バッファの開始位置に達した場合、循環バッファの終了位置から18ビットの読み出しが完了するまで読み出しを継続する。R=1/2が所定の閾値より小さい場合、循環バッファ内の位置インデクスP=23の位置からインデクスの降順で18ビットを読み出す。
4.循環バッファから読み出したビット列の18個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例31
ステップ1は、例29と同じである。
2.循環バッファのビット列は、例29のビット列を逆順配列することにより取得される。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分9の開始位置からインデクスの昇順で18ビットを読み出す。読み出しが循環バッファの終了位置に達した場合、循環バッファの開始位置から18ビットの読み出しが終了するまで読み出しを継続する。R=1/2が所定の閾値より小さい場合、循環バッファ内の位置インデクスP=8を有する位置からインデクスの昇順で18ビットを読み出す。
4.循環バッファから読み出されたビット列の18個のデータビットを順次配列し、送信レートマッチデータビット列として送信する。
例32
ステップ1及びステップ2は、例31と同じである。
3.R=1/2が所定の閾値より高い場合、循環バッファ内の部分6の終了位置からインデクスの降順で18ビットを読み出す。読み出しが循環バッファの開始位置に達した場合、循環バッファの終了位置から18ビットの読み出しが完了するまで読み出しを継続する。R=1/2が所定の閾値より小さい場合、循環バッファ内の部分7の終了位置からインデクスの降順で18ビットを読み出す。
4.循環バッファから読み出したビット列の18個のデータビットを逆順配列し、送信レートマッチデータビット列として送信する。
例33
1.符号レートR=2/3を用いて長さK=2の情報ビット列に対してポーラ符号化を行い、これにより、符号化されたビット列の長さは、
となる。ここでは、m=1であるが、mは、1に限定されない。
2.初期ビット列に対して、そのマッピング関数に基づいてBROインターリービングを施し、循環バッファ内のビット列{S,S,S,S,S,S,S,S}を取得する。
3.循環バッファの開始位置からインデクスの昇順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を順次配列し、送信レートマッチデータビット列として送信する。
例34
ステップ1及びステップ2は、例33と同じである。
3.循環バッファ内の位置インデクスP=M−1=2の位置からインデクスの降順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
例35
ステップ1及びステップ2は、例33と同じである。
3.循環バッファ内の位置インデクスP=N−M=5の位置からインデクスの昇順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を順次配列し、送信レートマッチデータビット列として送信する。
例36
ステップ1及びステップ2は、例33と同じである。
3.循環バッファの終了位置からインデクスの降順で3ビット{S,S,S}を読み出す。
4.この3個のデータビット{S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
例37
ステップ1は、例33と同じである。
2.例33で取得された循環バッファのビット列を逆順配列し、{S,S,S,S,S,S,S,S}を取得する。
ステップ3及びステップ4は、例33と同じである。
例38
ステップ1及びステップ2は、例37と同じである。
ステップ3及びステップ4は、例34と同じである。
例39
ステップ1及びステップ2は、例37と同じである。
ステップ3及びステップ4は、例35と同じである。
例40
ステップ1及びステップ2は、例37と同じである。
ステップ3及びステップ4は、例36と同じである。
例41
1.符号レートR=1/4を使用して長さK=24の情報ビット列に対してポーラ符号化を行い、これにより、符号化されたビット列の長さは、N=128となる。
2.初期ビット列をマッピングするためのマッピング関数は、p(n)によって決定される。マッピング関数は、例1〜40のいずれかのマッピング関数であってもよく、他の一対一マッピング関数であってもよい。
3.符号レートRが所定の閾値よりも小さい場合、循環バッファ内の位置インデクスP=N−M=32の位置からインデクスの昇順でM=96ビットを読み出す。
例42
1.符号レートR=2/3を使用して長さK=24の情報ビット列に対してポーラ符号化を行い、これにより、符号化ビット列の長さは、N=64となる。
2.初期ビット列をマッピングするためのマッピング関数は、p(n)によって決定される。マッピング関数は、例1〜40のいずれかのマッピング関数であってもよく、他の一対一マッピング関数であってもよい。
3.符号レートRが所定の閾値より高い場合、循環バッファ内の開始位置からインデクスの昇順でM=36ビットを読み出す。
実施形態4
本実施形態は、記憶媒体を提供する。例えば、本実施形態では、記憶媒体は、上記実施形態に係るビット列の処理方法を実行するためのプログラムコードを記憶するように構成してもよい。
他の例として、本実施形態では、記憶媒体は、コンピュータネットワーク内のコンピュータ端末のグループのいずれか1つに配置してもよく、移動端末のグループのいずれか1つに配置してもよい。
他の例として、本実施形態では、記憶媒体は、以下に説明するステップを実行するためのプログラムコードを記憶するように構成される。
において、K及びNを共に正の整数とし、KをN以下として、情報ビットとして使用されるKビットチャネルと(N−K)凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によってNビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成する。
において、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込む。
において、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする。
上記実施形態の通し番号は、単に説明を容易にするためのものであり、実施形態の優劣を示すものではない。
以上の実施形態において、1つ以上の実施形態において詳細に説明されていない部分については、他の実施形態における関連する説明を参照できる。
本出願の実施形態に開示される技術的内容は、他の手法で実施してもよい。上述の装置の実施形態は、単なる例示である。例えば、ユニットの分類は、単に論理的機能の分類であり、実際には、他の手法でユニットを分類してもよい。例えば、複数のユニット又はコンポーネントを組み合わせてよく、別のシステムに統合してもよく、一部の機能を省略し又は実行しなくてもよい。更に、ここに提示又は説明した相互接続、直接接続又は通信接続は、インタフェース、ユニット又はモジュールを介した間接接続又は通信接続であってもよく、あるいは電気的接続又は他の形態の接続であってもよい。
個別の構成要素として上述したユニットは、物理的に分離されていても、分離されていなくてもよい。ユニットとして示される構成要素は、物理的なユニットであっても、物理的なユニットでなくてもよく、すなわち、1つの場所に配置してもよく、複数のネットワークユニットに分散されていてもよい。これらのユニットの一部又は全部は、本開示の実施形態における解決策の目的を達成するための実際の要件に従って選択できる。
更に、各実施形態における複数の機能ユニットは、1つの処理ユニットに統合されてもよく、各ユニットが物理的に存在してもよく、2つ以上のユニットが1つのユニットに統合されてもよい。統合ユニットは、ハードウェア又はソフトウェア機能ユニットによって実施できる。
統合ユニットは、ソフトウェア機能ユニットの形態で実施され、独立した製品として販売又は使用される場合、コンピュータ可読記憶媒体に格納されてもよい。本開示が提供する内容は、実質的に、又は既存技術に寄与する部分、又は技術的解決策の全部又は一部を、ソフトウェア製品の形態で具現化できる。ソフトウェア製品は、記憶媒体に記憶され、コンピュータデバイス(これは、パーソナルコンピュータ、サーバ、ネットワークデバイス等であってもよい)が上述の実施形態による方法におけるステップの全部又は一部を実行することを可能にするための幾つかの命令を含む。この記憶媒体は、Uディスク、読出専用メモリ(read-only memory:ROM)、ランダムアクセスメモリ(random access memory:RAM)、モバイルハードディスク、磁気ディスク、光ディスク、又はその他のプログラムコードを記憶できる媒体を含む。
本開示が提供するポーラ符号のためのレートマッチング方法及び装置は、ハイブリッド自動反復要求メカニズムにおいて、ポーラ符号ハードウェアが高い複雑性を有し、符号化プロセスが複雑であるという問題を解決でき、ポーラ符号ハードウェアの複雑性を大幅に低減し、符号化プロセスを単純化する。
本開示は、プロセッサ及びメモリを備える、ポーラ符号のレートマッチング装置を提供する。プロセッサは、K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成し、q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、循環バッファのq個の部分にビットを書き込み、循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする動作を実行するように構成される。
幾つかの実施形態では、初期ビット列は、{S,S,…,SN−1}として表され、第7の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,Sa−1}とビット列集合{SBRO(j)}との共通集合を含み、ここで、aは、0以上N以下の整数であり、a=0の場合、{S,S,…,Sa−1}=φであり、j=M,…,N−1であり、Mは、送信ビット列の長さであり、第6の部分は、順次方式又はBROインターリーブ方式のt個のビット{I}であり、ここで、{I}は、ビット列集合{S,S,…,Sa−1 }及びビット列集合{I}の差集合であり、第8の部分は、BROインターリーブ方式のt個のビット{I}で構成され、ここで、{I}は、ビット列集合{S,S,…,SN−1}とビット列集合{SBRO(j)}の共通集合を含み、a=Nの場合、{S,Sa+1,…,SN−1}=φであり、第9の部分は、BROインターリーブ方式のt個のビット{I}で構成され、{I}は、ビット列集合{S,Sa+1,…,SN−1}とビット列集合{I}の差集合である。
4.個のデータビット{S,S,S}を逆順配列し、送信レートマッチデータビット列として送信する。
ステップ1及びステップ2は、例17と同じである。

Claims (25)

  1. ポーラ符号のレートマッチング方法であって、
    K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、前記Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成することと、
    q=1、2、3、又は4として、循環バッファをq個の部分に分割し、前記初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、前記循環バッファのq個の部分にビットを書き込むことと、
    前記循環バッファ内のビット列の所定の開始位置から指定された長さのビット列を順次選択し、前記指定された長さのビット列を送信ビット列とする方法。
  2. 請求項1に記載の方法において、前記所定の規則は、前記ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数f(n)によって決定され、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、前記初期ビット列のビット位置インデクスであり、f(n)は、前記循環バッファの位置インデクスであり、
    前記初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、前記循環バッファのq個の部分に前記ビットを書き込むことは、前記一対一マッピングインターリーブ関数f(n)に従って、前記初期ビット列におけるビット位置インデクスnを有するビットSを、前記循環バッファにおける位置インデクスf(n)を有する位置にマッピングすることを含む方法。
  3. 請求項1に記載の方法において、前記所定の規則は、前記ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定され、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、前記循環バッファの位置インデクスであり、
    前記初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、前記循環バッファのq個の部分に前記ビットを書き込むことは、前記一対一マッピングインターリーブ関数p(n)に従って、前記初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、前記循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む方法。
  4. 請求項2又は請求項3に記載の方法において、前記データ特性は、伝送ブロック長、符号レート、利用可能な物理リソースブロック数、変調及び符号化レベル、ユーザ機器タイプインデクス、及びデータ伝送リンク方向の少なくとも1つを含む方法。
  5. 請求項1から請求項4のいずれか一項に記載の方法において、前記所定の開始位置は、
    前記循環バッファ内のビット列の開始ビット位置を所定の開始位置とすること、
    を前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、Nを初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を所定の開始位置とすること
    のうちのいずれかの手法で選択される方法。
  6. 請求項1又は請求項5に記載の方法において、前記所定の開始位置は、前記ポーラ符号化の符号レートに応じて選択される方法。
  7. 請求項1、請求項5、及び請求項6のいずれか一項に記載の方法において、前記所定の開始位置は、
    前記ポーラ符号化の符号レートが所定の閾値以下である場合、Pを前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、Nを前記初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を所定の開始位置とすることによって選択される方法。
  8. 請求項1及び請求項5から請求項7のいずれか一項に記載の方法において、前記所定の開始位置は、
    前記ポーラ符号化の符号レートが所定の閾値より高い場合、前記循環バッファ内のビット列の開始ビット位置を所定の開始位置とすることによって選択される方法。
  9. 請求項1に記載の方法において、前記ポーラ符号化の母符号の長さは、
    を天井関数演算子とし、Rを符号レートとし、mを正の整数として、
    である方法。
  10. 請求項9に記載の方法において、前記初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、前記循環バッファ内の前記ビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、BROインタリーバにより、前記初期ビット列においてビット位置インデクスnを有するビットSを、前記循環バッファ内の位置インデクスmod(BRO(n)+m,N)を有する位置にマッピングする方法。
  11. 請求項9に記載の方法において、前記初期ビット列{S,S,…,SN−1}にビット逆順(BRO)インターリーブを施すことにより、前記循環バッファ内の前記ビット列を取得し、n=0,1,…,N−1とし、m=0,1,…,N−1とし、mをオフセットとし、mod(x1,x2)を除算x1/x2の剰余とし、x1を整数とし、x2を正の整数として、BROインタリーバにより、前記初期ビット列においてビット位置インデクスnを有するビットSを、前記循環バッファ内の位置インデクスN−1−mod(BRO(n)+m,N)を有する位置にマッピングする方法。
  12. 請求項9から請求項11のいずれか一項に記載の方法において、前記所定の開始位置は、
    前記循環バッファ内のビット列の開始ビット位置を前記所定の開始位置とすること、
    を前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとして、前記循環バッファ内のP=M−1の位置を前記所定の開始位置とすること、
    Nを前記初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を前記所定の開始位置とすること、
    前記循環バッファ内のビット列の終了ビット位置を前記所定の開始位置とすること
    のうちのいずれかの手法で選択される方法。
  13. 請求項1、請求項5から請求項8、及び請求項12のいずれか一項に記載の方法において、前記循環バッファ内のビット列の所定の開始位置から前記指定された長さのビット列を順次選択し、前記指定された長さのビット列を前記送信ビット列とすることは、
    前記循環バッファ内のビット列内の所定の位置からインデクスの昇順又は降順で、ビットを順次選択することと、
    前記読み出しが前記循環バッファ内のビット列の終端に達した場合、前記循環バッファ内のビット列の他端から前記指定された長さのビット列が読み出されるまで読み出しを継続することと、
    前記指定された長さのビット列を前記送信ビット列とすることとを含む方法。
  14. 請求項1、請求項7、及び請求項13のいずれか一項に記載の方法において、前記所定の開始位置から前記指定された長さのビット列を順次選択することは、
    前記ポーラ符号化の符号レートが所定の閾値以下の場合、Pを前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、Nを初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を前記所定の開始位置とし、インデクスの昇順でMビットを順次選択し、前記読み出しが、前記循環バッファ内のビット列の終端に達した場合、前記循環バッファ内のビット列の他端からの読み出しを継続することを含む方法。
  15. 請求項1、請求項8、及び請求項13のいずれか一項に記載の方法において、前記所定の開始位置から前記指定された長さのビット列を順次選択することは、
    前記ポーラ符号化の符号レートが所定の閾値より高いとき、前記循環バッファ内のビット列の開始ビット位置を前記所定の開始位置として、インデクスの昇順でMビットを順次選択し、前記読み出しが前記循環バッファ内のビット列の終端に達した場合、Nを前記初期ビット列の長さとして、前記循環バッファ内のビット列の他端からの読み出しを継続することを含む方法。
  16. 請求項1、請求項5から請求項8、及び請求項12から請求項15のいずれか一項に記載の方法において、前記送信ビット列は、前記循環バッファから読み出された前記指定された長さのビット列と同じ順番又は逆の順番で配列される方法。
  17. 請求項1から請求項16のいずれか一項に記載の方法において、前記K個の情報ビットは、チェックビットを含む方法。
  18. ポーラ符号のレートマッチング装置であって、
    K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、前記Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成するように構成された生成モジュールと、
    q=1、2、3、又は4として、循環バッファをq個の部分に分割し、前記初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、前記循環バッファのq個の部分にビットを書き込むように構成された書込モジュールと、
    前記循環バッファ内のビット列の所定の開始位置から指定された長さのビット列を順次選択するように構成された読出モジュールと、
    前記指定された長さのビット列を送信ビット列とするように構成された判定モジュールとを備える装置。
  19. 請求項18記載の装置において、前記所定の規則は、前記ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数f(n)によって決定され、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、前記初期ビット列のビット位置インデクスであり、f(n)は、前記循環バッファの位置インデクスであり、前記書込モジュールは、前記一対一マッピングインターリーブ関数f(n)に従って、前記初期ビット列におけるビット位置インデクスnを有するビットSを、前記循環バッファにおける位置インデクスf(n)を有する位置にマッピングするように構成されている装置。
  20. 請求項18記載の装置において、前記所定の規則は、前記ポーラ符号のデータ特性に従って生成された一対一マッピングインターリーブ関数p(n)によって決定され、n=0,1,…,N−1であり、p(n)=0,1,…,N−1であり、p(n)は、初期ビット列のビット位置インデクスであり、nは、前記循環バッファの位置インデクスであり、
    前記初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、前記循環バッファのq個の部分に前記ビットを書き込む動作は、前記一対一マッピングインターリーブ関数p(n)に従って、前記初期ビット列のビット位置インデクスp(n)を有するビットSp(n)を、前記循環バッファ内の位置インデクスnを有する位置にマッピングすることを含む装置。
  21. 請求項18から請求項20のいずれか一項に記載の装置において、前記所定の開始位置は、
    前記循環バッファ内のビット列の開始ビット位置を所定の開始位置とすること、
    を前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、Nを初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を所定の開始位置とすること、
    を前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、Nを前記初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を前記所定の開始位置とすること、
    前記循環バッファ内のビット列の終了ビット位置を前記所定の開始位置とすること
    のうちのいずれかの手法で選択される装置。
  22. ポーラ符号のレートマッチング装置であって、プロセッサ及びメモリを備え、
    前記メモリは、前記プロセッサによって実行可能な命令を格納するように構成され、
    前記プロセッサは、前記メモリに格納された命令に従って、
    K及びNを共に正の整数とし、KをN以下として、K個の情報ビットと(N−K)個の凍結ビットとを連結してNビットのビット列を生成し、サイズN×Nの生成行列を有するポーラ符号器によって、Nビットのビット列を符号化して、Nビットの初期ビット列{S,S,…,SN−1}を生成し、
    q=1、2、3、又は4として、循環バッファをq個の部分に分割し、初期ビット列{S,S,…,SN−1}から非反復的にビットを選択し、所定の規則に従って、前記循環バッファのq個の部分にビットを書き込み、
    前記循環バッファ内の所定の開始位置から指定された長さのビット列を順次選択し、指定された長さのビット列を送信ビット列とする
    動作を実行するように構成されている装置。
  23. 請求項22記載の装置において、前記プロセッサは、メモリ内に格納された命令に従って、前記初期ビット列{S,S,…,SN−1}に対する所定の規則がポーラ符号のデータ特性に従って生成される一対一マッピングインターリーブ関数f(n)によって決定され、n=0,1,…,N−1であり、f(n)=0,1,…,N−1であり、nは、前記初期ビット列のビット位置インデクスであり、f(n)は、前記循環バッファの位置インデクスであり、一対一マッピングインターリーブ関数に従って、初期ビット列におけるビット位置インデクスnを有するビットSを、前記循環バッファ内の位置インデクスf(n)を有する位置にマッピングする動作を実行するように更に構成されている装置。
  24. 請求項22又は請求項23に記載の装置において、前記所定の開始位置は、
    前記循環バッファ内のビット列の開始ビット位置を所定の開始位置とすること、
    を前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、前記循環バッファ内のP=N−Mの位置を所定の開始位置とすること、
    を前記循環バッファにおけるビット列の位置インデクスとし、Mを前記送信ビット列の長さとし、Nを前記初期ビット列の長さとして、前記循環バッファ内のP=N−Mの位置を前記所定の開始位置とすること、
    前記循環バッファ内のビット列の終了ビット位置を前記所定の開始位置とすること
    のうちのいずれかの手法で選択される装置。
  25. 請求項1から請求項17のいずれか一項に記載の方法を実行するように構成されたコンピュータ実行可能命令を格納するコンピュータ可読記憶媒体。
JP2019537290A 2017-01-09 2018-01-09 ポーラ符号のレートマッチング方法及び装置 Active JP6882490B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021078310A JP7321208B2 (ja) 2017-01-09 2021-05-06 ポーラ符号のレートマッチング方法及び装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201710014289.6 2017-01-09
CN201710014289 2017-01-09
CN201710056532.0 2017-01-25
CN201710056532.0A CN108288966B (zh) 2017-01-09 2017-01-25 极性Polar码的速率匹配处理方法及装置
PCT/CN2018/071956 WO2018127206A1 (zh) 2017-01-09 2018-01-09 极性Polar码的速率匹配处理方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021078310A Division JP7321208B2 (ja) 2017-01-09 2021-05-06 ポーラ符号のレートマッチング方法及び装置

Publications (2)

Publication Number Publication Date
JP2020507250A true JP2020507250A (ja) 2020-03-05
JP6882490B2 JP6882490B2 (ja) 2021-06-02

Family

ID=62831294

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019537290A Active JP6882490B2 (ja) 2017-01-09 2018-01-09 ポーラ符号のレートマッチング方法及び装置
JP2021078310A Active JP7321208B2 (ja) 2017-01-09 2021-05-06 ポーラ符号のレートマッチング方法及び装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021078310A Active JP7321208B2 (ja) 2017-01-09 2021-05-06 ポーラ符号のレートマッチング方法及び装置

Country Status (5)

Country Link
US (3) US11342945B2 (ja)
EP (1) EP3567734B1 (ja)
JP (2) JP6882490B2 (ja)
KR (2) KR102244117B1 (ja)
CN (2) CN116707540B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117500062A (zh) 2016-08-12 2024-02-02 中兴通讯股份有限公司 一种无线通信方法、终端以及非暂时性计算机可读存储介质
CN116707540B (zh) 2017-01-09 2024-04-26 中兴通讯股份有限公司 极性Polar码的速率匹配处理方法及装置
EP3501109B1 (en) * 2017-04-01 2023-12-27 Huawei Technologies Co., Ltd. Polar code transmission method and apparatus
KR20220000707A (ko) * 2020-06-26 2022-01-04 삼성전자주식회사 통신 시스템에서 극 부호의 부호화 또는 복호화를 위한 장치 및 방법
CN114513212A (zh) * 2020-11-16 2022-05-17 华为技术有限公司 一种极化编码方法和装置
US12021548B2 (en) 2022-05-10 2024-06-25 Samsung Display Co., Ltd. System and method for efficient transition encoding for decimation CDR

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160352464A1 (en) * 2014-02-21 2016-12-01 Huawei Technologies Co., Ltd. Rate matching method and apparatus for polar code

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8726121B2 (en) 2007-03-27 2014-05-13 Qualcomm Incorporated Circular buffer based rate matching
US20080301536A1 (en) 2007-05-31 2008-12-04 Interdigital Technology Corporation Channel coding and rate matching for lte control channels
EP2111703B1 (en) * 2007-06-13 2013-01-02 LG Electronics Inc. Method for sub -packet generation with adaptive bit index
US8780930B2 (en) * 2008-08-21 2014-07-15 Telefonaktiebolaget L M Ericsson (Publ) System and method for removing PDCCH detection errors in a telecommunications network
CN103312442B (zh) * 2012-03-15 2017-11-17 中兴通讯股份有限公司 基于有限长度循环缓存速率匹配的数据发送方法及装置
CN103023618B (zh) * 2013-01-11 2015-04-22 北京邮电大学 一种任意码长的极化编码方法
CN103746708A (zh) * 2013-10-25 2014-04-23 中国农业大学 一种Polar-LDPC级联码的构造方法
JP6266802B2 (ja) * 2013-11-13 2018-01-24 エルジー エレクトロニクス インコーポレイティド 放送信号送信装置、放送信号受信装置、放送信号送信方法、及び放送信号受信方法
RU2688751C2 (ru) * 2013-12-30 2019-05-22 Хуавей Текнолоджиз Ко., Лтд. Способ и устройство согласования кодовой скорости полярного кода
EP3113398B1 (en) * 2014-03-19 2020-04-22 Huawei Technologies Co., Ltd. Polar code rate-matching method and rate-matching device
RU2679723C1 (ru) * 2014-03-21 2019-02-12 Хуавэй Текнолоджиз Ко., Лтд. Способ и устройство согласования скорости полярного кода
RU2691885C2 (ru) 2014-03-24 2019-06-18 Хуавэй Текнолоджиз Ко., Лтд. Способ согласования скорости полярного кода и устройство согласования скорости полярного кода
CN104065457B (zh) * 2014-06-27 2017-12-19 京信通信系统(中国)有限公司 一种合并译码的方法及装置
CN106533611A (zh) * 2015-09-14 2017-03-22 中兴通讯股份有限公司 一种卷积码的数据发送方法及装置
CN105811998B (zh) * 2016-03-04 2019-01-18 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统
US10432234B2 (en) * 2016-07-19 2019-10-01 Mediatek Inc. Low complexity rate matching for polar codes
US10389484B2 (en) 2016-07-29 2019-08-20 Lg Electronics Inc. Method for performing polar coding and apparatus therefor
EP3563626B2 (en) 2016-12-30 2024-07-24 Whirlpool Corporation Cost effective hybrid protection for high power amplifier.
CN117375765A (zh) 2017-01-05 2024-01-09 华为技术有限公司 速率匹配方法、编码装置和通信装置
WO2018126476A1 (en) 2017-01-09 2018-07-12 Qualcomm Incorporated Rate-matching scheme for control channels using polar codes
CN116707540B (zh) 2017-01-09 2024-04-26 中兴通讯股份有限公司 极性Polar码的速率匹配处理方法及装置
KR102541319B1 (ko) * 2018-03-29 2023-06-08 삼성전자주식회사 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160352464A1 (en) * 2014-02-21 2016-12-01 Huawei Technologies Co., Ltd. Rate matching method and apparatus for polar code

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ERICSSON: "Considerations of CBRM and HARQ Operations[online]", 3GPP TSG-RAN WG1#49B, vol. R1-073030, JPN6020041421, 2007, ISSN: 0004377452 *
ZTE: "Polar Codes Contruction and Rate Matching Scheme[online]", 3GPP TSG RAN WG1 #89, vol. R1-1707183, JPN6021012056, 7 May 2017 (2017-05-07), ISSN: 0004479347 *

Also Published As

Publication number Publication date
US20240259035A1 (en) 2024-08-01
EP3567734A1 (en) 2019-11-13
JP7321208B2 (ja) 2023-08-04
JP2021119706A (ja) 2021-08-12
CN116707540A (zh) 2023-09-05
CN108288966B (zh) 2022-11-18
CN108288966A (zh) 2018-07-17
KR102244117B1 (ko) 2021-04-27
US20200083912A1 (en) 2020-03-12
KR20210046842A (ko) 2021-04-28
JP6882490B2 (ja) 2021-06-02
US20220399906A1 (en) 2022-12-15
EP3567734B1 (en) 2024-08-07
KR102383593B1 (ko) 2022-04-08
CN116707540B (zh) 2024-04-26
US11955992B2 (en) 2024-04-09
KR20190111991A (ko) 2019-10-02
US11342945B2 (en) 2022-05-24
EP3567734A4 (en) 2020-09-09

Similar Documents

Publication Publication Date Title
JP7321208B2 (ja) ポーラ符号のレートマッチング方法及び装置
US10554224B2 (en) Method and apparatus for processing data with polar encoding
AU2018285297B2 (en) Rate matching method and apparatus, and rate de-matching method and apparatus
CN105453466B (zh) 极化码的速率匹配方法及装置
CN105684316B (zh) 一种Polar码编码方法、装置
JP3958745B2 (ja) 通信システムのインターリービング装置及び方法
RU2679732C1 (ru) Способ и устройство для согласования скорости передачи
US8438448B2 (en) Decoding method and device for low density generator matrix codes
JPWO2019130475A1 (ja) 通信路分極を用いた誤り訂正符号化方法および装置、復号方法および装置
JP2020516111A (ja) ポーラ符号化および復号方法、送信デバイス、ならびに受信デバイス
CN114598331A (zh) Polar码的编码方法、编译码方法及装置
JP2019525630A (ja) 分極化符号のレートマッチング方法および装置
WO2018127206A1 (zh) 极性Polar码的速率匹配处理方法及装置
CN108429553B (zh) 极化码的编码方法、编码装置及设备
CN108628698B (zh) 计算crc编码的方法和装置
KR20060121312A (ko) 컨볼루션 터보 부호 인터리버
US10931303B1 (en) Data processing system
CN109391365B (zh) 一种交织方法及装置
WO2023216850A1 (zh) 编码方法及装置
KR101290472B1 (ko) 이동 통신 시스템에서 병렬 복호 방법 및 장치
KR20040037624A (ko) 인터리빙된 데이터 열의 디인터리빙 방법 및 장치
JP5510189B2 (ja) インタリーブ装置及びインタリーブ方法
CN117200807A (zh) 一种数据处理方法、装置、电子设备及存储介质
WO2019029397A1 (zh) 一种交织方法及装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190905

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210107

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210506

R150 Certificate of patent or registration of utility model

Ref document number: 6882490

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250