(57)【要約】  本開示の様々な態様は、ブロック符号化のためのレートマッチング技法に関する。いくつかの態様では、繰返しベースのレートマッチングそれともパンクチャベースのレートマッチングを使うかに関する決定は、符号化される情報のブロックサイズに基づいて行われる。いくつかの態様では、繰返しベースのレートマッチングはビット反転置換技法を使う。
2019527978.tif 000002
【特許請求の範囲】
【請求項１】
通信の方法であって、
符号化されるべき情報を受信するステップと、
前記受信された情報についてのコードブロックサイズを判断するステップと、
前記受信された情報を符号化するためのレートマッチングを選択するステップであって、前記選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、前記選択は前記コードブロックサイズに基づく、ステップと、
前記選択されたレートマッチングを使って、前記受信された情報をブロック符号化するステップとを含む方法。
【請求項２】
前記コードブロックサイズ未満である、最も大きい2の累乗整数に対応する2の累乗ブロックサイズを判断するステップと、
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の差分を判断するステップとをさらに含み、
前記レートマッチングの前記選択は前記差分にさらに基づく、請求項1に記載の方法。
【請求項３】
前記2の累乗ブロックサイズの分数を算出するステップと、
前記差分を前記分数と比較するステップとをさらに含み、
前記レートマッチングの前記選択は前記比較にさらに基づく、請求項2に記載の方法。
【請求項４】
前記レートマッチングの前記選択は、
前記差分が前記分数未満であることを前記比較が示す場合、繰返しベースのレートマッチングを選択すること、または
前記差分が前記分数以上であることを前記比較が示す場合、パンクチャベースのレートマッチングを選択することを含む、請求項3に記載の方法。
【請求項５】
前記選択されたレートマッチングは、前記パンクチャベースのレートマッチングであり、前記ブロック符号化は、
前記2の累乗ブロックサイズの2倍に基づいてブロックコード化データを生成すること、および
前記生成されたブロックコード化データのビットをパンクチャすることを含む、請求項2に記載の方法。
【請求項６】
前記生成されたブロックコード化データのビットをパンクチャすることは、前記2の累乗ブロックサイズの2倍と前記コードブロックサイズとの間の差分に等しい量のビットをパンクチャすることを含む、請求項5に記載の方法。
【請求項７】
前記ブロック符号化はポーラーコーディングを含む、請求項1に記載の方法。
【請求項８】
通信のための装置であって、
メモリと、
前記メモリに結合されたプロセッサとを備え、
前記プロセッサおよび前記メモリは、
符号化されるべき情報を受信することと、
前記受信された情報についてのコードブロックサイズを判断することと、
前記受信された情報を符号化するためのレートマッチングを選択することであって、前記選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、前記選択は前記コードブロックサイズに基づく、選択することと、
前記選択されたレートマッチングを使って、前記受信された情報をブロック符号化することとを行うように構成される、装置。
【請求項９】
前記プロセッサおよび前記メモリはさらに、
前記コードブロックサイズ未満である、最も大きい2の累乗整数に対応する2の累乗ブロックサイズを判断し、
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の差分を判断するように構成され、
前記レートマッチングの前記選択は前記差分にさらに基づく、請求項8に記載の装置。
【請求項１０】
前記プロセッサおよび前記メモリはさらに、
前記2の累乗ブロックサイズの分数を算出し、
前記差分を前記分数と比較するように構成され、
前記レートマッチングの前記選択は前記比較にさらに基づく、請求項9に記載の装置。
【請求項１１】
前記レートマッチングの前記選択は、
前記差分が前記分数未満であることを前記比較が示す場合、繰返しベースのレートマッチングの選択、または
前記差分が前記分数以上であることを前記比較が示す場合、パンクチャベースのレートマッチングの選択を含む、請求項10に記載の装置。
【請求項１２】
前記選択されたレートマッチングは前記パンクチャベースのレートマッチングであり、前記ブロック符号化は、
前記2の累乗ブロックサイズの2倍に基づく、ブロックコード化データの生成と、
前記生成されたブロックコード化データのビットのパンクチャとを含む、請求項9に記載の装置。
【請求項１３】
前記生成されたブロックコード化データのビットの前記パンクチャは、前記2の累乗ブロックサイズの2倍と前記コードブロックサイズとの間の差分に等しい量のビットのパンクチャを含む、請求項12に記載の装置。
【請求項１４】
前記ブロック符号化はポーラーコーディングを含む、請求項8に記載の装置。
【請求項１５】
通信のための装置であって、
符号化されるべき情報を受信するための手段と、
前記受信された情報についてのコードブロックサイズを判断するための手段と、
前記受信された情報を符号化するためのレートマッチングを選択するための手段であって、前記選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、前記選択は前記コードブロックサイズに基づく、手段と、
前記選択されたレートマッチングを使って、前記受信された情報をブロック符号化するための手段とを備える装置。
【請求項１６】
前記コードブロックサイズ未満である、最も大きい2の累乗整数に対応する2の累乗ブロックサイズを判断するための手段と、
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の差分を判断するための手段とをさらに備え、
前記レートマッチングの前記選択は前記差分にさらに基づく、請求項15に記載の装置。
【請求項１７】
前記2の累乗ブロックサイズの分数を算出するための手段と、
前記差分を前記分数と比較するための手段とをさらに備え、
前記レートマッチングの前記選択は前記比較にさらに基づく、請求項16に記載の装置。
【請求項１８】
前記レートマッチングの前記選択は、
前記差分が前記分数未満であることを前記比較が示す場合、繰返しベースのレートマッチングの選択、または
前記差分が前記分数以上であることを前記比較が示す場合、パンクチャベースのレートマッチングの選択を含む、請求項17に記載の装置。
【請求項１９】
前記選択されたレートマッチングは前記パンクチャベースのレートマッチングであり、前記ブロック符号化は、
前記2の累乗ブロックサイズの2倍に基づく、ブロックコード化データの生成と、
前記生成されたブロックコード化データのビットのパンクチャとを含む、請求項16に記載の装置。
【請求項２０】
前記2の累乗ブロックサイズの2倍と前記コードブロックサイズとの間の差分に等しい量のビットが、前記生成されたブロックコード化データ中でパンクチャされる、請求項19に記載の装置。
【請求項２１】
前記ブロック符号化はポーラーコーディングを含む、請求項15に記載の装置。
【請求項２２】
コンピュータ実行可能コードを記憶する非一時的コンピュータ可読媒体であって、
符号化されるべき情報を受信することと、
前記受信された情報についてのコードブロックサイズを判断することと、
前記受信された情報を符号化するためのレートマッチングを選択することであって、前記選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、前記選択は前記コードブロックサイズに基づく、選択することと、
前記選択されたレートマッチングを使って、前記受信された情報をブロック符号化することとを行うためのコードを含む、非一時的コンピュータ可読媒体。
【請求項２３】
通信の方法であって、
符号化されるべき情報を受信するステップと、
前記受信された情報をブロック符号化して、第1のブロックコード化データを生成するステップと、
繰返しパターンを生成するステップと、
前記繰返しパターンに基づいてコード化ビットを取得するステップと、
前記第1のブロックコード化データに前記コード化ビットを追加することによって、第2のブロックコード化データを生成するステップとを含む方法。
【請求項２４】
前記繰返しパターンの前記生成は、
第1の繰返しパターンを生成することと、
前記第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成することとを含む、請求項23に記載の方法。
【請求項２５】
前記コード化ビットは、前記第2の繰返しパターンによって示されるロケーションから取得される、請求項24に記載の方法。
【請求項２６】
前記受信された情報についてのコードブロックサイズを判断するステップと、
前記コードブロックサイズ未満である、最も大きい2の累乗整数を識別することによって、2の累乗ブロックサイズを判断するステップとをさらに含む、請求項23に記載の方法。
【請求項２７】
前記ブロック符号化は、前記2の累乗ブロックサイズをもつ前記第1のブロックコード化データを生成する、請求項26に記載の方法。
【請求項２８】
前記繰返しパターンは、前記コードブロックサイズに対応する量のビットからなる、請求項26に記載の方法。
【請求項２９】
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の差分を判断するステップをさらに含み、
前記繰返しパターンの前記生成は、前記繰返しパターン中に、前記コードブロックサイズと前記2の累乗ブロックサイズとの間の前記差分に等しい量の1を含めることを含む、請求項26に記載の方法。
【請求項３０】
前記繰返しパターンに基づく、前記コード化ビットの前記取得は、
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の前記差分に基づく量のコード化ビットを取得することを含む、請求項29に記載の方法。
【請求項３１】
前記ブロック符号化はポーラーコーディングを含む、請求項23に記載の方法。
【請求項３２】
通信のための装置であって、
メモリと、
前記メモリに結合されたプロセッサとを備え、
前記プロセッサおよび前記メモリは、
符号化されるべき情報を受信することと、
前記受信された情報をブロック符号化して、第1のブロックコード化データを生成し、
繰返しパターンを生成し、
前記繰返しパターンに基づいてコード化ビットを取得し、
前記第1のブロックコード化データに前記コード化ビットを追加することによって、第2のブロックコード化データを生成するように構成される、装置。
【請求項３３】
前記繰返しパターンの前記生成は、
第1の繰返しパターンの生成と、
前記第1の繰返しパターンのビット反転置換に基づく、第2の繰返しパターンの生成とを含む、請求項32に記載の装置。
【請求項３４】
前記コード化ビットは、前記第2の繰返しパターンによって示されるロケーションから取得される、請求項33に記載の装置。
【請求項３５】
前記プロセッサおよび前記メモリはさらに、
前記受信された情報についてのコードブロックサイズを判断し、
前記コードブロックサイズ未満である、最も大きい2の累乗整数を識別することによって、2の累乗ブロックサイズを判断するように構成される、請求項32に記載の装置。
【請求項３６】
前記ブロック符号化は、前記2の累乗ブロックサイズをもつ前記第1のブロックコード化データを生成する、請求項35に記載の装置。
【請求項３７】
前記繰返しパターンは、前記コードブロックサイズに対応する量のビットからなる、請求項35に記載の装置。
【請求項３８】
前記プロセッサおよび前記メモリは、前記コードブロックサイズと前記2の累乗ブロックサイズとの間の差分を判断するようにさらに構成され、
前記繰返しパターンの前記生成は、前記繰返しパターン中に、前記コードブロックサイズと前記2の累乗ブロックサイズとの間の前記差分に等しい量の1を含めることを含む、請求項35に記載の装置。
【請求項３９】
前記繰返しパターンに基づいて前記コード化ビットを取得するために、前記プロセッサおよび前記メモリは、
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の前記差分に基づく量のコード化ビットを取得するようにさらに構成される、請求項38に記載の装置。
【請求項４０】
前記ブロック符号化はポーラーコーディングを含む、請求項32に記載の装置。
【請求項４１】
通信のための装置であって、
符号化されるべき情報を受信するための手段と、
前記受信された情報をブロック符号化して、第1のブロックコード化データを生成するための手段と、
繰返しパターンを生成するための手段と、
前記繰返しパターンに基づいてコード化ビットを取得するための手段と、
前記第1のブロックコード化データに前記コード化ビットを追加することによって、第2のブロックコード化データを生成するための手段とを備える装置。
【請求項４２】
前記繰返しパターンの前記生成は、
第1の繰返しパターンの生成と、
前記第1の繰返しパターンのビット反転置換に基づく、第2の繰返しパターンの生成とを含む、請求項41に記載の装置。
【請求項４３】
前記コード化ビットは、前記第2の繰返しパターンによって示されるロケーションから取得される、請求項42に記載の装置。
【請求項４４】
前記受信された情報についてのコードブロックサイズを判断するための手段と、
前記コードブロックサイズ未満である、最も大きい2の累乗整数を識別することによって、2の累乗ブロックサイズを判断するための手段とをさらに備える、請求項41に記載の装置。
【請求項４５】
前記ブロック符号化は、前記2の累乗ブロックサイズをもつ前記第1のブロックコード化データを生成する、請求項44に記載の装置。
【請求項４６】
前記繰返しパターンは、前記コードブロックサイズに対応する量のビットからなる、請求項44に記載の装置。
【請求項４７】
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の差分を判断するための手段をさらに備え、
前記繰返しパターンの前記生成は、前記繰返しパターン中に、前記コードブロックサイズと前記2の累乗ブロックサイズとの間の前記差分に等しい量の1を含めることを含む、請求項44に記載の装置。
【請求項４８】
前記繰返しパターンに基づいて前記コード化ビットを取得するために、取得するための前記手段は、
前記コードブロックサイズと前記2の累乗ブロックサイズとの間の前記差分に基づく量のコード化ビットを取得するように構成される、請求項47に記載の装置。
【請求項４９】
前記ブロック符号化はポーラーコーディングを含む、請求項41に記載の装置。
【請求項５０】
コンピュータ実行可能コードを記憶する非一時的コンピュータ可読媒体であって、
符号化されるべき情報を受信し、
前記受信された情報をブロック符号化して、第1のブロックコード化データを生成し、
繰返しパターンを生成し、
前記繰返しパターンに基づいてコード化ビットを取得し、
前記第1のブロックコード化データに前記コード化ビットを追加することによって、第2のブロックコード化データを生成するためのコードを含む、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、その内容全体が参照により本明細書に組み込まれている、2016年8月10日に出願した特許協力条約出願第PCT/CN2016/094374号の優先権および利益を主張する。
【０００２】
本明細書で説明する様々な態様は、ワイヤレス通信に関し、より詳細には、限定はしないが、ブロック符号化のためのレートマッチング技法に関する。
【背景技術】
【０００３】
ワイヤレス通信システムは、ノイズのあるチャネルを介して、デジタルメッセージの信頼できる送信を容易にするために、エラー訂正コードを使うことができる。ブロックコードは、エラー訂正コードの1つのタイプである。典型的なブロックコードでは、情報メッセージまたはシーケンスはブロックに分割され、送信デバイスにおけるエンコーダは、情報メッセージに冗長性を数学的に追加する。符号化された情報メッセージにおけるこの冗長性の活用は、メッセージの信頼性を向上し、ノイズにより起こり得るビットエラーの訂正を可能にする。すなわち、部分的にはチャネルによるノイズの追加によりビットエラーが起こり得るとしても、受信デバイスにおけるデコーダが、情報メッセージを確実に復元するために、冗長性を利用し得る。
【０００４】
エラー訂正ブロックコードの例は、特に、ハミングコード、Bose-Chaudhuri-Hocquenghem(BCH)コード、およびターボコードを含む。ターボコードを利用する3GPP LTEネットワーク、およびIEEE802.11n Wi-Fiネットワークなど、多くの既存のワイヤレス通信ネットワークが、そのようなブロックコードを利用する。
【０００５】
実際、符号化データを伝える(たとえば、送信する)のに使われるリソース要素のサイズは、ブロックコードのブロックサイズと一致しない場合もある。このことは、復号複雑度および/または性能に悪影響を与える可能性がある。したがって、情報をブロックコーディングするための効率的技法が必要である。
【発明の概要】
【課題を解決するための手段】
【０００６】
以下は、本開示のいくつかの態様の基本的な理解をもたらすように、そのような態様の簡略化された概要を提示する。この概要は、本開示のすべての企図された特徴の広範な概要ではなく、本開示のすべての態様の主要な要素または重要な要素を特定するものでもなく、本開示のいずれかまたはすべての態様の範囲を定めるものでもない。その唯一の目的は、後で提示されるより詳細な説明の前置きとして、本開示のいくつかの態様の様々な概念を簡略化された形態で提示することである。
【０００７】
一態様では、本開示は、メモリと、メモリに結合されたプロセッサとを含む、通信のために構成された装置を提供する。プロセッサおよびメモリは、符号化されるべき情報を受信することと、受信された情報についてのコードブロックサイズを判断することと、受信された情報を符号化するためのレートマッチングを選択することであって、選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、選択はコードブロックサイズに基づく、選択することと、選択されたレートマッチングを使って、受信された情報をブロック符号化することとを行うように構成される。
【０００８】
本開示の別の態様は、符号化されるべき情報を受信するステップと、受信された情報についてのコードブロックサイズを判断するステップと、受信された情報を符号化するためのレートマッチングを選択するステップであって、選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、選択はコードブロックサイズに基づく、ステップと、選択されたレートマッチングを使って、受信された情報をブロック符号化するステップとを含む、通信のための方法を提供する。
【０００９】
本開示の別の態様は、通信のために構成された装置を提供する。装置は、符号化されるべき情報を受信するための手段と、受信された情報についてのコードブロックサイズを判断するための手段と、受信された情報を符号化するためのレートマッチングを選択するための手段であって、選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、選択はコードブロックサイズに基づく、手段と、選択されたレートマッチングを使って、受信された情報をブロック符号化するための手段とを含む。
【００１０】
本開示の別の態様は、コンピュータ実行可能コードを記憶する非一時的コンピュータ可読媒体を提供し、符号化されるべき情報を受信することと、受信された情報についてのコードブロックサイズを判断することと、受信された情報を符号化するためのレートマッチングを選択することであって、選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ、選択はコードブロックサイズに基づく、選択することと、選択されたレートマッチングを使って、受信された情報をブロック符号化することとを行うためのコードを含む。
【００１１】
一態様では、本開示は、メモリと、メモリに結合されたプロセッサとを含む、通信のために構成された装置を提供する。プロセッサおよびメモリは、符号化されるべき情報を受信することと、受信された情報をブロック符号化して、第1のブロックコード化データを生成することと、繰返しパターンを生成することと、繰返しパターンに基づいてコード化ビットを取得することと、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成することとを行うように構成される。
【００１２】
本開示の別の態様は、符号化されるべき情報を受信するステップと、受信された情報をブロック符号化して、第1のブロックコード化データを生成するステップと、繰返しパターンを生成するステップと、繰返しパターンに基づいてコード化ビットを取得するステップと、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成するステップとを含む、通信のための方法を提供する。
【００１３】
本開示の別の態様は、通信のために構成された装置を提供する。装置は、符号化されるべき情報を受信するための手段と、受信された情報をブロック符号化して、第1のブロックコード化データを生成するための手段と、繰返しパターンを生成するための手段と、繰返しパターンに基づいてコード化ビットを取得するための手段と、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成するための手段とを含む。
【００１４】
本開示の別の態様は、符号化されるべき情報を受信することと、受信された情報をブロック符号化して、第1のブロックコード化データを生成することと、繰返しパターンを生成することと、繰返しパターンに基づいてコード化ビットを取得することと、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成することとを行うためのコードを含むコンピュータ実行可能コードを記憶する非一時的コンピュータ可読媒体を提供する。
【００１５】
本開示のこれらの態様および他の態様は、以下の詳細な説明を検討することにより、より完全に理解されるであろう。本開示の他の態様、特徴、および実装形態は、添付の図とともに本開示の特定の実装形態の以下の説明を検討すれば、当業者に明らかになろう。本開示の特徴が以下のいくつかの実装形態および図に対して説明され得るが、本開示のすべての実装形態が、本明細書で説明する有利な特徴のうちの1つまたは複数を含むことができる。言い換えれば、1つまたは複数の実装形態が、いくつかの有利な特徴を有するものとして説明され得るが、そのような特徴のうちの1つまたは複数はまた、本明細書で説明する本開示の様々な実装形態に従って使用され得る。同様に、いくつかの実装形態が、デバイス、システム、または方法の実装形態として以下で説明され得るが、そのような実装形態が様々なデバイス、システム、および方法において実施され得ることを理解されたい。
【００１６】
添付の図面は、本開示の態様の説明を助けるために提示され、態様の限定ではなく、態様の例示のためにのみ提供されている。
【図面の簡単な説明】
【００１７】
【図１】本開示の態様が使われ得る例示的通信システムのブロック図である。
【図２】本開示の態様が使われ得る例示的通信デバイスのブロック図である。
【図３】本開示のいくつかの態様による、例示的エンコーダのブロック図である。
【図４】本開示のいくつかの態様による、例示的コーディングプロセスのフロー図である。
【図５】本開示のいくつかの態様による、例示的繰返しベースプロセスのフロー図である。
【図６】本開示のいくつかの態様による、第1の例示的シミュレーションのグラフである。
【図７】本開示のいくつかの態様による、第2の例示的シミュレーションのグラフである。
【図８】本開示のいくつかの態様による、第3の例示的シミュレーションのグラフである。
【図９】本開示のいくつかの態様による、符号化をサポートし得る装置(たとえば、電子デバイス)のための例示的ハードウェア実装形態を示すブロック図である。
【図１０】本開示のいくつかの態様による、レートマッチングを用いる符号化プロセスの例を示すフローチャートである。
【図１１】本開示のいくつかの態様による、レートマッチングプロセスの例を示すフローチャートである。
【図１２】本開示のいくつかの態様による、レートマッチングプロセスの例を示すフローチャートである。
【図１３】本開示のいくつかの態様による、符号化をサポートし得る別の装置(たとえば、電子デバイス)のための例示的ハードウェア実装形態を示すブロック図である。
【図１４】本開示のいくつかの態様による、繰返しベース符号化プロセスの例を示すフロー図である。
【図１５】本開示のいくつかの態様による、別の繰返しベース符号化プロセスの例を示すフロー図である。
【図１６】本開示のいくつかの態様による、繰返しパターンを生成するためのプロセスの例を示すフロー図である。
【発明を実施するための形態】
【００１８】
本開示の様々な態様は、ブロックエンコーダのためのレートマッチング技法に関する。いくつかの態様では、繰返しベースのレートマッチングそれともパンクチャベースのレートマッチングを符号化に使うかに関する決定は、符号化される情報のブロックサイズに基づいて行われる。たとえば、繰返しベースのレートマッチングは、繰返しビットの数が比較的小さい場合に使われ得る。そうでない場合、パンクチャベースのレートマッチングが使われ得る。また、いくつかの態様では、符号化のための繰返しベースのレートマッチングは、ビット反転置換技法を使うことができる。
【００１９】
いくつかの実装形態では、本明細書において教示されるブロックエンコーダは、ポーラーコードを使い得る。たとえば、ポーラーコードは、5Gチャネルコーディング用に使われ得る。
【００２０】
添付の図面に関して以下に記載する詳細な説明は、様々な構成の説明として意図されており、本明細書で説明する概念が実践される場合がある唯一の構成を表すことは意図されていない。詳細な説明は、様々な概念の完全な理解を提供する目的のための具体的な詳細を含む。しかしながら、これらの概念がこれらの具体的な詳細なしに実践されてもよいことが、当業者には明らかであろう。さらに、本開示の範囲から逸脱することなく、代替構成が考案されてよい。加えて、本開示の関連する詳細を不明瞭にしないように、よく知られている要素は詳細に説明されず、または省略される。
【００２１】
本開示全体にわたって提示される様々な概念は、幅広い種類の電気通信システム、ネットワークアーキテクチャ、および通信規格にわたって実装され得る。たとえば、第3世代パートナーシッププロジェクト(3GPP)は、しばしば、ロングタームエボリューション(LTE)ネットワークと呼ばれる、発展型パケットシステム(EPS)を伴うネットワーク用のいくつかのワイヤレス通信規格を定義する標準化団体である。第5世代(5G)ネットワークなどのLTEネットワークの発展型バージョンは、限定はしないが、ウェブブラウジング、ビデオストリーミング、VoIP、ミッションクリティカルアプリケーション、マルチホップネットワーク、リアルタイムのフィードバックを伴うリモート操作(たとえば、遠隔手術)などを含む、多くの異なるタイプのサービスまたはアプリケーションを提供し得る。このように、本明細書における教示は、限定はしないが、5G技術、第4世代(4G)技術、第3世代(3G)技術、および他のネットワークアーキテクチャを含む様々なネットワーク技術に従って実装され得る。また、本明細書で説明する技法は、ダウンリンク、アップリンク、ピアツーピアリンク、または何らかの他のタイプのリンク用に使われ得る。
【００２２】
使われる実際の電気通信規格、ネットワークアーキテクチャ、および/または通信規格は、特定の適用例およびシステムに課される全体的な設計制約に依存する。例示のために、以下では、5Gシステムおよび/またはLTEシステムのコンテキストにおける様々な態様について説明する場合がある。しかしながら、本明細書における教示は、他のシステムにおいても使われ得ることを諒解されたい。したがって、5Gのコンテキストにおける機能性および/またはLTE用語の参照は、他のタイプの技術、ネットワーク、構成要素、シグナリングなどに等しく適用可能であると理解されるべきである。
【００２３】
例示的通信システム
図1は、ユーザ機器(UE)がワイヤレス通信シグナリングにより他のデバイスと通信することができるワイヤレス通信システム100の例を示す。たとえば、第1のUE102および第2のUE104が、送受信ポイント(TRP)106および/または他のネットワーク構成要素(たとえば、コアネットワーク108、インターネットサービスプロバイダ(ISP)110など)によって管理されるワイヤレス通信リソースを使って、TRP106と通信し得る。いくつかの実装形態では、システム100の構成要素のうちの1つまたは複数は、デバイス間(D2D)リンク112または何らかの他の同様のタイプの直接リンクを介して、互いと直接通信し得る。
【００２４】
システム100の構成要素のうちの2つ以上の間での情報の通信は、情報を符号化することを伴い得る。たとえば、TRP106は、TRP106がUE102またはUE104に送るデータまたは制御情報を符号化する場合がある。別の例として、UE102は、UE102がTRP106またはUE104に送るデータまたは制御情報を符号化し得る。符号化は、ポーラーコーディングなどのブロックコーディングを伴い得る。本明細書における教示によると、UE102、UE104、TRP106、またはシステム100の何らかの他の構成要素のうちの1つまたは複数は、レートマッチングおよび/または繰返しを用いるブロックエンコーダ114を含み得る。
【００２５】
ワイヤレス通信システム100の構成要素およびリンクは、異なる実装形態において異なる形をとり得る。たとえば、限定はしないが、UEは、セルラーデバイス、モノのインターネット(IoT)デバイス、セルラーIoT(CIoT)デバイス、LTEワイヤレスセルラーデバイス、マシンタイプ通信(MTC)セルラーデバイス、スマートアラーム、リモートセンサ、スマートフォン、モバイルフォン、スマートメータ、携帯情報端末(PDA)、パーソナルコンピュータ、メッシュノード、およびタブレットコンピュータであってよい。
【００２６】
いくつかの態様では、TRPは、特定の物理セル向けの無線ヘッド(radio head)機能性を組み込む物理エンティティを指し得る。いくつかの態様では、TRPは、直交周波数分割多重化(OFDM)に基づくエアインターフェースを用いる5G新規無線(NR)機能性を含み得る。NRは、限定ではなく例として、拡張モバイルブロードバンド(eMBB)、ミッションクリティカルサービス、およびIoTデバイスの大規模展開をサポートすることができる。TRPの機能性は、1つもしくは複数の態様では、CIoT基地局(C-BS)、ノードB、発展型ノードB(eノードB)、無線アクセスネットワーク(RAN)アクセスノード、無線ネットワークコントローラ(RNC)、基地局(BS)、無線基地局(RBS)、基地局コントローラ(BSC)、トランシーバ基地局(BTS)、トランシーバ機能(TF)、無線トランシーバ、無線ルータ、基本サービスセット(BSS)、拡張サービスセット(ESS)、マクロセル、マクロノード、ホームeNB(HeNB)、フェムトセル、フェムトノード、ピコノード、または何らかの他の適切なエンティティの機能性と同様であって(またはそれらに組み込まれて)よい。異なるシナリオ(たとえば、NR、LTEなど)では、TRPは、gノードB(gNB)、eNB、基地局と呼ばれるか、または他の用語を使って参照される場合がある。
【００２７】
様々なタイプのネットワークツーデバイスリンクおよびD2Dリンクが、ワイヤレス通信システム100においてサポートされ得る。たとえば、D2Dリンクは、限定なしで、マシン間(M2M)リンク、MTCリンク、車両間(V2V)リンク、および車両事物間(V2X)リンクを含み得る。ネットワークツーデバイスリンクは、限定なしで、アップリンク(または逆方向リンク)、ダウンリンク(または順方向リンク)、および車両ツーネットワーク(V2N)リンクを含み得る。
【００２８】
例示的通信構成要素
図2は、本明細書における教示を使うことができる第1のワイヤレス通信デバイス202および第2のワイヤレス通信デバイス204を含むワイヤレス通信システム200の概略図である。いくつかの実装形態では、第1のワイヤレス通信デバイス202または第2のワイヤレス通信デバイス204は、図1のUE102、UE104、またはTRP106に対応し得る。
【００２９】
図示される例では、第1のワイヤレス通信デバイス202は、通信チャネル206(たとえば、ワイヤレスチャネル)を介して、第2のワイヤレス通信デバイス204にメッセージを送信する。デジタルメッセージの信頼できる通信を提供するために対処されなければならない、そのような方式における1つの問題は、通信チャネル206に影響するノイズ208を考慮に入れることである。
【００３０】
ブロックコードまたはエラー訂正コードはしばしば、ノイズのあるチャネルを介して、メッセージの信頼できる送信を行うのに使われる。典型的なブロックコード中では、第1の(送信)ワイヤレス通信デバイス202における情報ソース210からの情報メッセージまたはシーケンスがブロックに分割され、各ブロックは、Kビットの長さを有する。エンコーダ212が、情報メッセージに数学的に冗長性を加え、Nの長さを有するコードワードを生じ、ここでN>Kである。ここで、コードレートRは、メッセージ長とブロック長との間の比である(すなわち、R=K/N)。符号化情報メッセージ中でのこの冗長性の活用が、送信されるメッセージを、第2の(受信)ワイヤレス通信デバイス204において確実に受信するための鍵であり、送信されるメッセージに対して分与されるノイズ208により起こり得るビットエラーの訂正が、冗長性により可能になる。すなわち、第2の(受信)ワイヤレス通信デバイス204におけるデコーダ214は、部分的には、チャネル206へのノイズ208の追加によりビットエラーが起こり得るとしても、情報シンク216に与えられる情報メッセージを確実に復元するのに、冗長性を利用することができる。
【００３１】
特に、ハミングコード、Bose-Chaudhuri-Hocquenghem(BCH)コード、およびターボコードを含む、そのようなエラー訂正ブロックコードの多くの例が、当業者には知られている。いくつかの既存のワイヤレス通信ネットワークが、そのようなブロックコードを利用する。たとえば、3GPP LTEネットワークはターボコードを使い得る。ただし、将来のネットワーク向けに、ポーラーコードと呼ばれる、新たなカテゴリのブロックコードが、信頼できるとともに効率的な情報転送の起こり得る機会に、他のコードと比較して向上した性能を与える。
【００３２】
ポーラーコードは、ポーラーコードを定義する再帰アルゴリズムを用いてチャネル偏光が生成される線形ブロックエラー訂正コードである。ポーラーコードは、対称バイナリ入力離散無記憶チャネルのチャネル容量を達成する第1の明示的コードである。すなわち、ポーラーコードは、ノイズが存在するときに所与の帯域幅の離散無記憶チャネル上で送信され得るエラーなし情報の量に対するチャネル容量(シャノン限界)または理論的上限を達成する。この容量は、単純な逐次消去(SC)デコーダを用いて達成され得る。
【００３３】
ポーラーコードは、ブロックコード(N,K)と見なされる場合があり、Nはコードブロックサイズであり、Kは情報ビットの数である。情報ビットの数Kは、可変である。エンコーダ212が、ポーラーコードを用いて、情報ビットの数Kを選択することができることは柔軟であろうが、偏光行列の元の構築は、
【００３４】
【数１】
2019527978.tif 000003
【００３５】
のクロネッカー積に基づくので、コードワード長Nは、2の累乗(たとえば、256、512、1024など)である。
【００３６】
本開示は、いくつかの態様では、ポーラーコードが、入力データの可変ブロックサイズと、ポーラーコーディングのための2の累乗ブロックサイズとをサポートするためのレートマッチングに関する。言い換えると、実用的システムにおける可変サイズのリソースをサポートするために、ポーラーコーディングとともに使われるブロックサイズは、リソースサイズに適合され得る。
【００３７】
パンクチャ化は、2の累乗であるブロックサイズを有するコードワードから、2の累乗ではないブロックサイズを有するコードワードを取得するのに使われ得る一技法である。本明細書で使用するパンクチャ化という用語は、たとえば、元のブロックのビットのうちのいくつかを省く(たとえば、排除する)ことによって、ブロックのサイズを低減することを指す場合があり、繰返しという用語は、たとえば、元のブロックのビットのうちのいくつかを繰り返す(たとえば、追加する)ことによって、ブロックのサイズを増大することを指す場合がある。実際、最適パンクチャパターンについての全数探索を行うことは、そのような探索に伴う計算複雑度が比較的大きいことにより、非実用的であり得る。したがって、均一なパンクチャ化が代わりに使われ得る。
【００３８】
ポーラーコードの場合、コード化ビットの半分をパンクチャ化することに伴う性能は、元のコード化ビットの長さの半分をもつコードに対する性能と同じである。ただし、後者は、前者の復号複雑度の半分を有する。このことは、パンクチャビットの数が元のコード化ビットの半分に近いとき、パンクチャ方式が効率的でないことを含意する。この場合、パンクチャ化の復号複雑度は、性能向上が非常に小さい元のコードと同じである。
【００３９】
本明細書における教示によると、2の累乗であるブロックサイズを有するコードワードから、2の累乗ではないブロックサイズを有するコードワードを取得するために、パンクチャ化の代わりに繰返しが使われ得る。いくつかの態様では、繰返しは、パンクチャビットの数が元のビットの半分に近い(またはそれ未満である)とき、復号複雑度と性能との間の所望のトレードオフを与え得る。この場合、繰返しの復号複雑度は、均一なパンクチャ方式と比較して、まさに限界の性能低下を伴う元のコードの半分である。
【００４０】
再度図2を参照すると、第1の送信用の符号化データを生成するために、エンコーダ212は、レートマッチングを選択するための機能性218およびデータを符号化するための(たとえば、コードワードを生成するための)機能性220を含み得る。いくつかの態様では、レートマッチングを選択するための機能性218は、符号化によって使われるブロックサイズに依存して、使われるべきレートマッチングのタイプ(たとえば、繰返しまたはパンクチャ化)を選択する。この目的のために、レートマッチングを選択するための機能性218は、コードブロックサイズを判断するための機能性228およびコードブロックサイズに基づいてレートマッチングのタイプを選択するための機能性を含み得る。
【００４１】
エンコーダ212は、パンクチャパターンまたは繰返しパターンをそれぞれ使って、符号化データ(たとえば、コードワード)をパンクチャし、または繰り返し、生じたデータを、通信チャネル206を介して送る。この目的のために、エンコーダ212は、符号化データをパンクチャし、または繰り返すための機能性222を含み得る。繰返し動作のために、符号化データをパンクチャし、または繰り返すための機能性222は、繰返しパターンを生成するための機能性232、繰返しパターンに基づいてコード化ビットを取得するための機能性234、およびブロックコード化データにコード化ビットを追加するための機能性236を含み得る。
【００４２】
パンクチャされた、または繰り返された符号化データ226を受信すると、第2のワイヤレス通信デバイス204のデコーダ214はデータ226を復号する。たとえば、デコーダ214は、SC復号または何らかの他の適切なタイプの復号などの復号224を使うことができる。
【００４３】
レートマッチング選択
本開示は、いくつかの態様では、復号複雑度と性能との間の受容可能なトレードオフを与える効率的レートマッチングプロセスに関する。図3を参照すると、ブロックエンコーダ302(たとえば、ポーラーコーディングを使うエンコーダ)が、データ304を符号化して符号化データ306を生成する。本明細書における教示によると、レートマッチングセレクタ308が、データ304を符号化するのに使われるべきレートマッチング方式を選択する。いくつかの態様では、この選択は、(たとえば、符号化データ306を通信するのに使われることになるリソースの特性に基づいて)データ304に関連付けられたコードブロックサイズに基づき得る。以下でより詳しく論じるように、いくつかのケースでは(たとえば、繰返しビットの数が比較的小さいとき)、繰返しベースのレートマッチング310が符号化に使われ、他のケースでは、パンクチャベースのレートマッチング312が符号化に使われる。
【００４４】
いくつかの実装形態では、エンコーダ302は、インターフェース314、インターフェース316、または両方を含み得る。インターフェースは、たとえば、インターフェースバス、バスドライバ、バス受信機、他の適切な回路機構、またはそれらの組合せを含み得る。たとえば、インターフェース314は、受信機デバイス、バッファ、または信号を受信するための他の回路機構を含み得る。別の例として、インターフェース316は、出力デバイス、ドライバ、または信号を送るための他の回路機構を含み得る。いくつかの実装形態では、インターフェース314および316は、エンコーダ302の1つまたは複数の他の構成要素(図3に示さない他の構成要素)とインターフェースするように構成され得る。
【００４５】
エンコーダ302は、異なる実装形態において異なる形をとり得る。いくつかのケースでは、エンコーダ302は集積回路であってよい。いくつかのケースでは、エンコーダ302は、他の回路機構(たとえば、プロセッサおよび関連回路機構)を含む集積回路中に含められ得る。
【００４６】
ポーラーコード用の例示的レートマッチング方式
例示のために、本明細書における教示によるレートマッチング方式の例について、ポーラーコードのコンテキストにおいてここで説明する。しかしながら、本明細書で説明する技法は、他のタイプのコーディングにも適用可能であり得ることを諒解されたい。
【００４７】
図4は、ポーラーコード用のレートマッチングプロセス400の例を示す。プロセス400は、たとえば、図3のエンコーダ302または図9の装置900によって実施され得る。
【００４８】
ブロック402において、コーディングされるべきデータについての所望のコード化ブロックサイズ(M)および情報ビットの数(K)が判断される。ブロック404において、パラメータ(N)が判断される。Nは、M未満である、最も大きい2の累乗整数であり、すなわち、N≦M≦2Nである。この算出は、パラメータm=floor(log2 M)およびN=2mに基づき得る。
【００４９】
いくつかの態様では、ブロックサイズが2の累乗でないケースのために、ポーラーコード(M,K)を構築するための2つのやり方があり得る。第1の技法は、ポーラーコード(2N,K)から2N-Mビットをパンクチャすることを伴う。第2の技法は、ポーラーコード(N,K)用にM-Nビットを繰り返すことを伴う。前者の復号複雑度は、後者の2倍である。さらに、性能向上は、パンクチャビットの数の増加とともに低減する。たとえば、N個のパンクチャビットをもつポーラーコード(2N,K)の性能は、ポーラーコード(N,K)のものと同じであるが、パンクチャを用いる復号複雑度は2倍である。復号複雑度と性能向上との間の所望のトレードオフを取得するために、パンクチャビットの数(2N-M)がNに近い場合、繰返しが好ましい選択である。別の言い方をすると、M-Nの繰返しビットが小さい場合、繰返しが好ましい選択である。
【００５０】
いくつかの実装形態では、パンクチャそれとも繰返しを使うかを決定するのに、閾値が使われ得る。パラメータβ(たとえば、分数)が、そのような閾値を表すのに使われ得る。図4のブロック406において、M-N<βN(たとえば、β<0.5である)の場合、繰返しベースのレートマッチングが選択される(ブロック408および410)。そうでない場合、パンクチャベースのレートマッチングが選択される(ブロック412および414)。
【００５１】
βの値は、シミュレーション、実験的試験、または他の適切な技法を使って最適化され得る。ポーラーコード(2N,K)からのパンクチャとポーラーコード(N,K)のための繰返しとの間の性能ギャップは、βの増加とともに大きくなる。図6〜図8の例示的シミュレーション結果は、βの値が1/8未満であるとき、優れたトレードオフが取得され得ることを示す。βの値は、所与の実装形態の必要に依存して、設計選択として選択され得る。たとえば、性能と回路複雑度との間に、トレードオフが存在し得る。したがって、いくつかのケースでは、高性能をもたらすために、より低い値のβが選択されてよく、他のケースでは、エンコーダ回路機構の複雑度を低減するために、より高い値のβが選択されてよい。
【００５２】
例示的繰返し方式
例示のために、本明細書における教示による繰返し方式の例について、ポーラーコードのコンテキストにおいてここで説明する。しかしながら、本明細書で説明する技法は、他のタイプのコーディングにも適用可能であり得ることを諒解されたい。
【００５３】
図5は、ポーラーコード用の繰返しプロセス500の例を示す。プロセス500は、たとえば、図3のエンコーダ302または図13の装置1300によって実施され得る。
【００５４】
ブロック502において、ポーラーコード(N,K)が構築され、そうすることによって、N個のコード化ビットを取得する。ブロック504において、繰返しパターンPP=(0,0,0,...,1,1,1)Mが生成される。このパターンの最後のM-Nビットは1である。ブロック506において、最終繰返しパターンPは、PPのビット反転置換になる。最終繰返しパターンPは、均一の繰返しに近くなり得る。ブロック508において、パターンP中の1にロケーションが対応するビットを収集することによって、繰返しビットが取得される。ブロック510において、ポーラーコード(N,K)の末尾においてM-N個のコード化ビットを付加することによって、ポーラーコード(M,K)が生成される。
【００５５】
例示的パンクチャ方式
上述したように、ブロック長が2の累乗でないコードワードを有する長さ互換性(length-compatible)ポーラーコードを取得するのに、パンクチャ化が使われ得る。たとえば、1000ビットのコードワード長を取得するために、1024ビットのコードワードから24ビットがパンクチャされ得る。本開示の様々な態様によると、パンクチャ化は、任意の長さ(たとえば、必ずしも2の累乗でない長さ)のコードワードを取得するために利用され得る。したがって、概して、本明細書で使用するパンクチャ化という用語は、少なくともいくつかの態様では、コード化ビットのセット(たとえば、コードワード)から1つまたは複数のコード化ビットを削除することを指し得る。
【００５６】
コードワードパンクチャ化を実施するとき、どのビットをパンクチャするかという選択(パンクチャ化パターン)は、重要な問題であり、アルゴリズムの効率に影響し得る。可能な場合であっても、最適パンクチャパターンを見つけるために、すべてのパンクチャパターンの全数探索を実施することは、要求されるであろう多大な計算複雑度により、望ましくない場合がある。
【００５７】
パンクチャ化方式は、様々なパンクチャ化パターンを使い得る。知られているパンクチャ化パターンの中で、均一パンクチャ化パターンが、比較的優れた性能をもたらす。ただし、本明細書における教示とともに、非均一(たとえば、ランダム)パンクチャ化が使われてよいことを諒解されたい。
【００５８】
復号
受信デバイスにおいて、たとえば、逐次消去復号アルゴリズムに基づくデコーダを使って、コード化情報が復号され得る。いくつかの態様では、デコーダは、デコーダの入力および出力において、低密度パリティチェック(LDPC)コードまたはターボコード用に使われるデコーダに基づいて(たとえば、それと同様であって)よいであろう。
【００５９】
例示的シミュレーション
図6、図7、および図8は、それぞれ、βについての異なる値をもつポーラーコードのためのシミュレーション600、700、および800を示す。これらのシミュレーションでは、ガウス近似(GA)アルゴリズムが、ポーラーコードを構築するのに使われる。情報ビットの数Kは128であり、Nは256ビットである。ブロックサイズMは、320、288および272ビットである。これらのサイズは、それぞれ、βについての1/4、1/8、および1/16に対応する。CRC支援リスト逐次消去復号アルゴリズムが、32というリストサイズとともに使われる。
【００６０】
ポーラーコード(320,128)の性能が、図6に示されている。ビット反転置換を用いるパンクチャアルゴリズムが、ポーラーコードの構築に適用される。「元の」という凡例(曲線602)は、ポーラーコード(256,128)の性能を表す。2つの繰返し方式が評価され、すなわち、ビット反転置換に基づく方式(曲線604)およびブロック繰返しに基づく方式(曲線606)である。後者では、ブロックの第1の4分の1が繰り返される。繰返しのための、ブロックの第2の4分の1、第3の4分の1および最後の4分の1は、同様の性能を有し得る。したがって、ここではただ1つの曲線が示されている。示されるように、パンクチャを伴う性能(曲線608)が、複雑度が他の方式の2倍だとしても、最良である。2つの繰返し方式は、64個のコード化ビットが繰り返されるので、元のケースをしのぐ。ビット反転置換を用いる繰返しは、ブロック繰返しをしのぐ。繰返しを上回る約0.4dBの利得を検討すると、βが1/4よりも大きいとき、パンクチャは、依然として優れた選択であり得る。
【００６１】
ポーラーコード(288,128)および(272,128)の性能が、それぞれ、図7および図8に示されている。示されるように、パンクチャ(図7の曲線702および図8の曲線802)とビット反転置換を用いる繰返し(図7の曲線704および図8の曲線804)との間の性能ギャップは、βが減少すると、より小さくなる。この例ではβが1/8に等しいとき、ギャップは、0.2dB未満である。この例においてβが1/16に等しいとき、限界利得がある。したがって、βが1/8未満のとき、復号複雑度と性能との間の優れたトレードオフが取得され得る。
【００６２】
第1の例示的装置
図9は、本開示の1つまたは複数の態様による符号化を使うように構成された装置900の例示的ハードウェア実装形態のブロック図を示す。装置900は、UE、送受信ポイント(TRP)、基地局、または本明細書において教示される符号化をサポートする何らかの他のタイプのデバイス内で、具現化し、または実装され得る。様々な実装形態では、装置900は、アクセス端末、アクセスポイント、または何らかの他のタイプのデバイス内で具現化し、または実装され得る。様々な実装形態では、装置900は、モバイルフォン、スマートフォン、タブレット、ポータブルコンピュータ、サーバ、ネットワークエンティティ、パーソナルコンピュータ、センサ、アラーム、ビークル、マシン、エンターテインメントデバイス、医療デバイス、または回路機構を有する任意の他の電子デバイス内で具現化し、または実装され得る。
【００６３】
装置900は、通信インターフェース902(たとえば、少なくとも1つのトランシーバ)と、記憶媒体904と、ユーザインターフェース906と、メモリデバイス908と、処理回路910(たとえば、少なくとも1つのプロセッサ)とを含む。これらの構成要素は、図9において接続線によって概略的に表される、シグナリングバスまたは他の適切な構成要素を介して互いに結合され、かつ/または互いに電気通信するように配置され得る。シグナリングバスは、処理回路910の特定の適用例、および全体的な設計制約に応じて、任意の数の相互接続バスおよびブリッジを含み得る。シグナリングバスは、通信インターフェース902、記憶媒体904、ユーザインターフェース906、およびメモリデバイス908の各々が処理回路910に結合され、かつ/または処理回路910と電気通信するように、様々な回路を互いにリンクさせる。シグナリングバスはまた、タイミングソース、周辺装置、電圧調整器、および電力管理回路などの様々な他の回路(図示せず)をリンクさせ得るが、これらの回路は当技術分野でよく知られており、したがって、これ以上は説明しない。
【００６４】
通信インターフェース902は、装置900のワイヤレス通信を促すように適合され得る。たとえば、通信インターフェース902は、ネットワークの中の1つまたは複数の通信デバイスに関して双方向への情報の通信を容易にするように適合された回路機構および/またはプログラミングを含み得る。したがって、いくつかの実装形態では、通信インターフェース902は、ワイヤレス通信システム内でのワイヤレス通信のための1つまたは複数のアンテナ912に結合され得る。いくつかの実装形態では、通信インターフェース902は、ワイヤベースの通信のために構成され得る。たとえば、通信インターフェース902は、バスインターフェース、送付/受信インターフェース、あるいはドライバ、バッファ、または信号を出力および/もしくは取得する(たとえば、集積回路から信号を出力し、かつ/もしくはそこへの信号を受信する)ための他の回路機構を含む何らかの他のタイプの信号インターフェースであってよいであろう。通信インターフェース902は、1つまたは複数のスタンドアロンの受信機および/または送信機、ならびに1つまたは複数のトランシーバを用いて構成され得る。示される例では、通信インターフェース902は、送信機914および受信機916を含む。
【００６５】
メモリデバイス908は、1つまたは複数のメモリデバイスを表し得る。示すように、メモリデバイス908は、符号化関連の情報918を、装置900によって使われる他の情報とともに維持し得る。いくつかの実装形態では、メモリデバイス908および記憶媒体904は、共通メモリ構成要素として実装される。メモリデバイス908はまた、処理回路910、または装置900の何らかの他の構成要素によって操作されるデータを記憶するのに使われ得る。
【００６６】
記憶媒体904は、プロセッサ実行可能コードもしくは命令(たとえば、ソフトウェア、ファームウェア)などのプログラミング、電子的なデータ、データベース、または他のデジタル情報を記憶するための1つまたは複数のコンピュータ可読、機械可読、および/またはプロセッサ可読デバイスを表し得る。記憶媒体904はまた、プログラミングを実行するときに処理回路910によって操作されるデータを記憶するのに使われ得る。記憶媒体904は、ポータブル記憶デバイスまたは固定記憶デバイス、光記憶デバイス、およびプログラミングを記憶、収容、または搬送することが可能な様々な他の媒体を含む、汎用プロセッサまたは専用プロセッサによってアクセスされ得る任意の利用可能な媒体であってよい。
【００６７】
限定ではなく例として、記憶媒体904は、磁気記憶デバイス(たとえば、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ)、光ディスク(たとえば、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD))、スマートカード、フラッシュメモリデバイス(たとえば、カード、スティック、またはキードライブ)、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、レジスタ、リムーバブルディスク、およびコンピュータによってアクセスされ得るとともに読み取られ得るソフトウェアおよび/または命令を記憶するための任意の他の好適な媒体を含み得る。記憶媒体904は、製造品(たとえば、コンピュータプログラム製品)において具現化され得る。例として、コンピュータプログラム製品は、パッケージング材料の中のコンピュータ可読媒体を含み得る。上記のことに鑑みて、いくつかの実装形態では、記憶媒体904は、非一時的な(たとえば、有形の)記憶媒体であり得る。
【００６８】
記憶媒体904は、処理回路910が記憶媒体904から情報を読み取り、記憶媒体904に情報を書き込むことができるように、処理回路910に結合され得る。すなわち、記憶媒体904は、少なくとも1つの記憶媒体が処理回路910と一体である例および/または少なくとも1つの記憶媒体が処理回路910から分離されている例を含め、記憶媒体904が少なくとも処理回路910によってアクセス可能であるように処理回路910に結合され得る(たとえば、装置900内に存在する、装置900の外部にある、複数のエンティティにわたって分散されるなど)。
【００６９】
記憶媒体904によって記憶されているプログラミングは、処理回路910によって実行されると、処理回路910に、本明細書で説明する様々な機能および/またはプロセス動作のうちの1つまたは複数を実施させる。たとえば、記憶媒体904は、処理回路910の1つまたは複数のハードウェアブロックにおける動作を調整するように、ならびにそれらのそれぞれの通信プロトコルを利用するワイヤレス通信のための通信インターフェース902を利用するように構成された動作を含み得る。
【００７０】
処理回路910は、一般に、記憶媒体904上に記憶されたそのようなプログラミングの実行を含む処理のために適合される。本明細書で使用する「コード」または「プログラミング」という用語は、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるのか、それともそれ以外で呼ばれるのかにかかわらず、限定はしないが、命令、命令セット、データ、コード、コードセグメント、プログラムコード、プログラム、プログラミング、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行ファイル、実行スレッド、プロシージャ、関数などを含むように広く解釈されなければならない。
【００７１】
処理回路910は、データを取得し、処理し、かつ/または送り、データのアクセスおよび記憶を制御し、コマンドを出し、かつ他の所望の動作を制御するように構成される。処理回路910は、少なくとも1つの例において適切な媒体によって与えられる所望のプログラミングを実装するように構成された回路機構を含み得る。たとえば、処理回路910は、1つもしくは複数のプロセッサ、1つもしくは複数のコントローラ、および/または実行可能プログラミングを実行するように構成された他の構造として実装され得る。処理回路910の例は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理構成要素、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実施するように設計されたそれらの任意の組合せを含み得る。汎用プロセッサは、マイクロプロセッサ、ならびに任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械を含み得る。処理回路910はまた、DSPおよびマイクロプロセッサの組合せ、いくつかのマイクロプロセッサ、DSPコアと連携する1つもしくは複数のマイクロプロセッサ、ASICおよびマイクロプロセッサ、または任意の他の数の様々な構成などのコンピューティング構成要素の組合せとして実装され得る。処理回路910のこれらの例は例示のためのものであり、本開示の範囲内の他の適切な構成も企図される。
【００７２】
本開示の1つまたは複数の態様によると、処理回路910は、本明細書で説明する装置のいずれかまたはすべてのための特徴、プロセス、機能、動作および/またはルーチンのいずれかまたはすべてを実施するように適合され得る。たとえば、処理回路910は、図1〜図5および図10〜図12に関して説明されるステップ、機能、および/または処理のいずれかを実施するように構成され得る。本明細書で使用する、処理回路910に関する「適合される」という用語は、処理回路910が、本明細書で説明する様々な特徴に従って、特定のプロセス、機能、動作および/またはルーチンを実施するように構成されること、使われること、実装されること、および/またはプログラムされることのうちの1つまたは複数を指し得る。
【００７３】
処理回路910は、図1〜図5および図10〜図12とともに説明される動作のいずれか1つを実施するための手段(たとえば、そのための構造)として機能する特定用途向け集積回路(ASIC)など、特別なプロセッサであり得る。処理回路910は、送信するための手段および/または受信するための手段の一例として働き得る。様々な実装形態では、処理回路910は、図2の第1のワイヤレス通信デバイス202(たとえば、エンコーダ212)または図3のエンコーダ302の機能性を提供し、かつ/または組み込むことができる。
【００７４】
装置900の少なくとも1つの例によると、処理回路910は、受信するための回路/モジュール920、コードブロックサイズを判断するための回路/モジュール922、レートマッチングを選択するための回路/モジュール924、ブロック符号化するための回路/モジュール926、2の累乗ブロックサイズを判断するための回路/モジュール928、差分を判断するための回路/モジュール930、算出するための回路/モジュール932、または比較するための回路/モジュール934のうちの1つまたは複数を含み得る。様々な実装形態では、受信するための回路/モジュール920、コードブロックサイズを判断するための回路/モジュール922、レートマッチングを選択するための回路/モジュール924、ブロック符号化するための回路/モジュール926、2の累乗ブロックサイズを判断するための回路/モジュール928、差分を判断するための回路/モジュール930、算出するための回路/モジュール932、または比較するための回路/モジュール934は、図2の第1のワイヤレス通信デバイス202(たとえば、エンコーダ212)または図3のエンコーダ302のための、上述した機能性を少なくとも部分的に提供し、かつ/または組み込むことができる。
【００７５】
上述のように、記憶媒体904によって記憶されているプログラミングは、処理回路910によって実行されると、処理回路910に、本明細書で説明する様々な機能および/またはプロセス動作のうちの1つまたは複数を実施させる。たとえば、プログラミングは、処理回路910に、様々な実装形態では、図1〜図5および図10〜図12に関して本明細書で説明する様々な機能、ステップ、および/またはプロセスを実施させることができる。図9に示すように、記憶媒体904は、受信するためのコード936、コードブロックサイズを判断するためのコード938、レートマッチングを選択するためのコード940、ブロック符号化するためのコード942、2の累乗ブロックサイズを判断するためのコード944、差分を判断するためのコード946、算出するためのコード948、または比較するためのコード950のうちの1つまたは複数を含み得る。様々な実装形態では、受信するためのコード936、コードブロックサイズを判断するためのコード938、レートマッチングを選択するためのコード940、ブロック符号化するためのコード942、2の累乗ブロックサイズを判断するためのコード944、差分を判断するためのコード946、算出するためのコード948、または比較するためのコード950は、受信するための回路/モジュール920、コードブロックサイズを判断するための回路/モジュール922、レートマッチングを選択するための回路/モジュール924、ブロック符号化するための回路/モジュール926、2の累乗ブロックサイズを判断するための回路/モジュール928、差分を判断するための回路/モジュール930、算出するための回路/モジュール932、または比較するための回路/モジュール934のための、本明細書で説明する機能性を提供するように実行されるか、またはそうでなければそうするのに使われ得る。
【００７６】
受信するための回路/モジュール920は、たとえば、情報を受信することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、受信するためのコード936)を含み得る。いくつかのシナリオでは、受信するための回路/モジュール920は、(たとえば、通信インターフェース902、メモリデバイス、または装置900の何らかの他の構成要素から)情報を取得することができ、情報を処理(たとえば、復号)する。いくつかのシナリオでは(たとえば、受信するための回路/モジュール920がRF受信機である場合、またはそれを含む場合)、受信するための回路/モジュール920は、情報を送信したデバイスから直接情報を受信し得る。いずれの場合でも、受信するための回路/モジュール920は、取得された情報を装置900の別の構成要素(たとえば、コードブロックサイズを判断するための回路/モジュール922、ブロック符号化するための回路/モジュール926、メモリデバイス908、または他の何らかの構成要素)に出力し得る。
【００７７】
受信するための回路/モジュール920(たとえば、受信するための手段)は様々な形をとり得る。いくつかの態様では、受信するための回路/モジュール920は、たとえば、インターフェース(たとえば、バスインターフェース、送信/受信インターフェース、もしくは何らかの他のタイプの信号インターフェース)、通信デバイス、トランシーバ、受信機、または本明細書で説明するような何らかの他の同様の構成要素に相当し得る。いくつかの実装形態では、通信インターフェース902は、受信するための回路/モジュール920および/または受信するためのコード936を含む。いくつかの実装形態では、受信するための回路/モジュール920および/または受信するためのコード936は、情報を受信するように通信インターフェース902(たとえば、トランシーバまたは受信機)を制御するように構成される。
【００７８】
コードブロックサイズを判断するための回路/モジュール922は、たとえば、受信された情報に関するコードブロックサイズを判断することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、コードブロックサイズを判断するためのコード938)を含み得る。いくつかの態様では、コードブロックサイズを判断するための回路/モジュール922(たとえば、コードブロックサイズを判断するための手段)は、たとえば処理回路に相当し得る。
【００７９】
いくつかのシナリオでは、コードブロックサイズを判断するための回路/モジュール922は、エンコーダ(たとえば、符号化アルゴリズム)によってサポートされるブロックサイズを示す情報(たとえば、構成情報)を取得し得る。いくつかのシナリオでは、コードブロックサイズを判断するための回路/モジュール922は、(たとえば、特定の時間周波数リソースを介して)情報を送るのに使われるべきリソースサイズを示す情報を取得し得る。いくつかのシナリオでは、コードブロックサイズを判断するための回路/モジュール922は、リソースサイズと最良一致するブロックサイズを選択し得る。コードブロックサイズを判断するための回路/モジュール922は次いで、コードブロックサイズの指示を(たとえば、レートマッチングを選択するための回路/モジュール924、2の累乗ブロックサイズを判断するための回路/モジュール928、差分を判断するための回路/モジュール930、メモリデバイス908、または何らかの他の構成要素に)出力し得る。
【００８０】
レートマッチングを選択するための回路/モジュール924は、たとえば、レートマッチングを選択することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、レートマッチングを選択するためのコード940)を含み得る。いくつかの態様では、レートマッチングを選択するための回路/モジュール924(たとえば、レートマッチングを選択するための手段)は、たとえば処理回路に相当し得る。
【００８１】
いくつかのシナリオでは、レートマッチングを選択するための回路/モジュール924は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で選択をし得る。いくつかのシナリオでは、選択は、コードブロックサイズに基づく。この場合、レートマッチングを選択するための回路/モジュール924は、コードブロックサイズ情報を(たとえば、コードブロックサイズを判断するための回路/モジュール922、メモリデバイス、または装置900の何らかの他の構成要素から)取得し得る。レートマッチングを選択するための回路/モジュール924は、たとえば、コードブロックサイズに基づいて、どのレートマッチング方式を使うかを決定する(たとえば、図2〜図4とともに上述したように)。レートマッチングを選択するための回路/モジュール924は次いで、選択の指示を(たとえば、ブロック符号化するための回路/モジュール926、メモリデバイス908、エンコーダ、または何らかの他の構成要素に)出力し得る。
【００８２】
ブロック符号化するための回路/モジュール926は、たとえば、情報を符号化することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、ブロック符号化するためのコード942)を含み得る。いくつかの態様では、ブロック符号化するための回路/モジュール926(たとえば、ブロック符号化するための手段)は、たとえば処理回路に相当し得る。
【００８３】
いくつかの態様では、ブロック符号化するための回路/モジュール926は、符号化アルゴリズムを実行し得る。たとえば、ブロック符号化するための回路/モジュール926は、ブロックコーディングアルゴリズムまたはポーラーコーディングアルゴリズムを実施し得る。ブロック符号化するための回路/モジュール926は次いで、得られた符号化情報を(たとえば、通信インターフェース902、メモリデバイス908、または何らかの他の構成要素に)出力し得る。
【００８４】
2の累乗ブロックサイズを判断するための回路/モジュール928は、たとえば、コードブロックサイズ未満である、最も大きい2の累乗整数に対応する、2の累乗ブロックサイズを判断することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、2の累乗ブロックサイズを判断するためのコード944)を含み得る。いくつかの態様では、2の累乗ブロックサイズを判断するための回路/モジュール928(たとえば、2の累乗ブロックサイズを判断するための手段)は、たとえば処理回路に相当し得る。
【００８５】
いくつかのシナリオでは、2の累乗ブロックサイズを判断するための回路/モジュール928は、コードブロックサイズ情報を(たとえば、コードブロックサイズを判断するための回路/モジュール922、メモリデバイス、または装置900の何らかの他の構成要素から)取得し得る。2の累乗ブロックサイズを判断するための回路/モジュール928は、コードブロックサイズに基づいて特定の2の累乗ブロックサイズを識別する(たとえば、図2〜図4とともに上述したように)。2の累乗ブロックサイズを判断するための回路/モジュール928は次いで、2の累乗ブロックサイズの指示を(たとえば、差分を判断するための回路/モジュール930、メモリデバイス908、または何らかの他の構成要素に)出力し得る。
【００８６】
差分を判断するための回路/モジュール930は、たとえば、コードブロックサイズと2の累乗ブロックサイズとの間の差分を判断することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、差分を判断するためのコード946)を含み得る。いくつかの態様では、差分を判断するための回路/モジュール930(たとえば、差分を判断するための手段)は、たとえば処理回路に相当し得る。
【００８７】
差分を判断するための回路/モジュール930は、コードブロックサイズ情報を(たとえば、コードブロックサイズを判断するための回路/モジュール922、メモリデバイス、または装置900の何らかの他の構成要素から)取得する。差分を判断するための回路/モジュール930はまた、2の累乗ブロックサイズを(たとえば、2の累乗ブロックサイズを判断するための回路/モジュール928、メモリデバイス、または装置900の何らかの他の構成要素から)取得する。差分を判断するための回路/モジュール930は、これらの値のうちの1つを、これらの値のうちの他の1つから減算する。差分を判断するための回路/モジュール930は次いで、減算の結果を(たとえば、レートマッチングを選択するための回路/モジュール924、比較するための回路/モジュール934、メモリデバイス908、または何らかの他の構成要素に)出力し得る。
【００８８】
算出するための回路/モジュール932は、たとえば、分数を算出することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、算出するためのコード948)を含み得る。いくつかの態様では、算出するための回路/モジュール932(たとえば、算出するための手段)は、たとえば処理回路に相当し得る。
【００８９】
いくつかのシナリオでは、算出するための回路/モジュール932は、2の累乗ブロックサイズを(たとえば、2の累乗ブロックサイズを判断するための回路/モジュール928、メモリデバイス、または装置900の何らかの他の構成要素から)取得し得る。算出するための回路/モジュール932は次いで、2の累乗ブロックサイズに対して算術演算を実施して、この値の分数を判断し得る(たとえば、図2〜図4とともに上述したように)。算出するための回路/モジュール932は次いで、算出の指示を(たとえば、比較するための回路/モジュール934、メモリデバイス908、または何らかの他の構成要素に)出力し得る。
【００９０】
比較するための回路/モジュール934は、たとえば、2つの値を比較することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体904上に記憶された、比較するためのコード950)を含み得る。いくつかの態様では、比較するための回路/モジュール934(たとえば、比較するための手段)は、たとえば処理回路に相当し得る。
【００９１】
1つのシナリオでは、比較するための回路/モジュール934は、差分値を(たとえば、差分を判断するための回路/モジュール930、メモリデバイス、または装置900の何らかの他の構成要素から)取得する。さらに、比較するための回路/モジュール934は、分数値を(たとえば、算出するための回路/モジュール932、メモリデバイス、または装置900の何らかの他の構成要素から)取得する。比較するための回路/モジュール934は、これらの値のうちのどの1つが、これらの値のうちの他の1つよりも大きいかを(たとえば、減算演算を実施することによって)判断する。比較するための回路/モジュール934は次いで、この判断の結果を(たとえば、レートマッチングを選択するための回路/モジュール924、メモリデバイス908、または何らかの他の構成要素に)出力し得る。
【００９２】
第1の例示的プロセス
図10は、本開示のいくつかの態様による、通信のためのプロセス1000を示す。プロセス1000の1つまたは複数の態様は、図10のプロセス1000とともに(たとえば、それに加えて、またはその一部として)使われ得る。当然、本開示の範囲内の様々な態様では、プロセス1000は、シグナリング関連の動作をサポートすることが可能な任意の適切な装置によって実装され得る。
【００９３】
ブロック1002において、装置(たとえば、エンコーダを含むデバイス)が、符号化されるべき情報を受信する。
【００９４】
いくつかの実装形態では、図9の受信するための回路/モジュール920がブロック1002の動作を実施する。いくつかの実装形態では、図9の受信するためのコード936が、ブロック1002の動作を実施するために実行される。
【００９５】
ブロック1004において、装置は、受信された情報についてのコードブロックサイズを判断する。
【００９６】
いくつかの実装形態では、図9の、コードブロックサイズを判断するための回路/モジュール922がブロック1004の動作を実施する。いくつかの実装形態では、図9の、コードブロックサイズを判断するためのコード938が、ブロック1004の動作を実施するために実行される。
【００９７】
ブロック1006において、装置は、受信された情報を符号化するためのレートマッチングを選択する。いくつかの態様では、選択は、繰返しベースのレートマッチングとパンクチャベースのレートマッチングとの間で行われ得る。いくつかの態様では、選択はコードブロックサイズに基づき得る。
【００９８】
いくつかの態様では、レートマッチングの選択は、繰返しベースのレートマッチングまたはパンクチャベースのレートマッチングを選択することを含み得る。たとえば、ブロック1006におけるレートマッチングの選択は、差分が分数未満であることを比較が示す場合、繰返しベースのレートマッチングを選択することを伴い得る。逆に、ブロック1006におけるレートマッチングの選択は、差分が分数以上であることを比較が示す場合、パンクチャベースのレートマッチングを選択することを伴い得る。
【００９９】
いくつかの実装形態では、図9の、レートマッチングを選択するための回路/モジュール924がブロック1006の動作を実施する。いくつかの実装形態では、図9の、レートマッチングを選択するためのコード940が、ブロック1006の動作を実施するために実行される。
【０１００】
ブロック1008において、装置は、選択されたレートマッチングを使って、受信された情報をブロック符号化する。いくつかの態様では、ブロック符号化はポーラーコーディングであってよい。
【０１０１】
ブロック符号化が繰返しベースのレートマッチングを使う(たとえば、ブロック1006において選択されたレートマッチングが繰返しベースのレートマッチングである)ケースでは、ブロック符号化は、2の累乗ブロックサイズに基づいてブロックコード化データを生成することと、生成されたブロックコード化データに繰返しビットを追加することとを含み得る。この場合、生成されたブロックコード化データへの繰返しビットの追加は、コードブロックサイズと2の累乗ブロックサイズとの間の差分に等しい量のビットを、生成されたブロックコード化データに追加することを伴い得る。
【０１０２】
ブロック符号化がパンクチャベースのレートマッチングを使う(たとえば、ブロック1006において選択されたレートマッチングがパンクチャベースのレートマッチングである)ケースでは、ブロック符号化は、2の累乗ブロックサイズの2倍に基づいてブロックコード化データを生成することと、生成されたブロックコード化データのビットをパンクチャすることとを含み得る。この場合、生成されたブロックコード化データのビットのパンクチャ化は、2の累乗ブロックサイズの2倍とコードブロックサイズとの間の差分に等しい量のビットをパンクチャすることを伴い得る。
【０１０３】
いくつかの実装形態では、図9の、ブロック符号化するための回路/モジュール926がブロック1008の動作を実施する。いくつかの実装形態では、図9の、ブロック符号化するためのコード942がブロック1008の動作を実施するために実行される。
【０１０４】
いくつかの態様では、プロセス1000は、上記特徴のうちの2つ以上からなるどの組合せも含み得る。
【０１０５】
第2の例示的プロセス
図11は、本開示のいくつかの態様による、通信のためのプロセス1100を示す。プロセス1100の1つまたは複数の態様は、図10のプロセス1000とともに(たとえば、それに加えて、またはその一部として)使われ得る。プロセス1100は、アクセス端末、基地局、または他の何らかの適切な装置の中に位置する場合がある処理回路(たとえば、図9の処理回路910)内で行われてもよい。当然、本開示の範囲内の様々な態様では、プロセス1100は、シグナリング関連の動作をサポートすることが可能な任意の適切な装置によって実装され得る。
【０１０６】
ブロック1102において、装置(たとえば、エンコーダを含むデバイス)が、コードブロックサイズ(たとえば、図10のブロック1004において判断されたコードブロックサイズ)未満である、最も大きい2の累乗整数に対応する2の累乗ブロックサイズを判断する。
【０１０７】
いくつかの実装形態では、図9の、2の累乗ブロックサイズを判断するための回路/モジュール928がブロック1102の動作を実施する。いくつかの実装形態では、図9の、2の累乗ブロックサイズを判断するためのコード944が、ブロック1102の動作を実施するために実行される。
【０１０８】
ブロック1104において、装置は、ブロック1102のコードブロックサイズと2の累乗ブロックサイズとの間の差分を判断する。
【０１０９】
いくつかの実装形態では、図9の、差分を判断するための回路/モジュール930がブロック1104の動作を実施する。いくつかの実装形態では、図9の、差分を判断するためのコード946が、ブロック1104の動作を実施するために実行される。
【０１１０】
ブロック1106において、装置は、受信された情報(たとえば、図10のブロック1002において受信された情報)を符号化するためのレートマッチングを選択する。いくつかの態様では、この選択は、ブロック1104において判断された差分に基づき得る。
【０１１１】
いくつかの実装形態では、図9の、レートマッチングを選択するための回路/モジュール924がブロック1106の動作を実施する。いくつかの実装形態では、図9の、レートマッチングを選択するためのコード940が、ブロック1106の動作を実施するために実行される。
【０１１２】
いくつかの態様では、プロセス1100は、上記特徴のうちの2つ以上からなるどの組合せも含み得る。
【０１１３】
第3の例示的プロセス
図12は、本開示のいくつかの態様による、通信のためのプロセス1200を示す。プロセス1200の1つまたは複数の態様は、図10のプロセス1000とともに(たとえば、それに加えて、またはその一部として)使われ得る。プロセス1200は、アクセス端末、基地局、または他の何らかの適切な装置の中に位置する場合がある処理回路(たとえば、図9の処理回路910)内で行われてもよい。当然、本開示の範囲内の様々な態様では、プロセス1200は、シグナリング関連の動作をサポートすることが可能な任意の適切な装置によって実装され得る。
【０１１４】
ブロック1202において、装置(たとえば、エンコーダを含むデバイス)が、コードブロックサイズ(たとえば、図10のブロック1004において判断されたコードブロックサイズ)未満である、最も大きい2の累乗整数に対応する2の累乗ブロックサイズを判断する。
【０１１５】
いくつかの実装形態では、図9の、2の累乗ブロックサイズを判断するための回路/モジュール928がブロック1202の動作を実施する。いくつかの実装形態では、図9の、2の累乗ブロックサイズを判断するためのコード944が、ブロック1202の動作を実施するために実行される。
【０１１６】
ブロック1204において、装置は、ブロック1202のコードブロックサイズと2の累乗ブロックサイズとの間の差分を判断する。
【０１１７】
いくつかの実装形態では、図9の、差分を判断するための回路/モジュール930がブロック1204の動作を実施する。いくつかの実装形態では、図9の、差分を判断するためのコード946が、ブロック1204の動作を実施するために実行される。
【０１１８】
ブロック1206において、装置は、ブロック1202において判断された2の累乗ブロックサイズの分数を算出する。
【０１１９】
いくつかの実装形態では、図9の算出するための回路/モジュール932がブロック1206の動作を実施する。いくつかの実装形態では、図9の算出するためのコード948が、ブロック1206の動作を実施するために実行される。
【０１２０】
ブロック1208において、装置は、ブロック1204において判断された差分を、ブロック1206において算出された分数と比較する。
【０１２１】
いくつかの実装形態では、図9の比較するための回路/モジュール934がブロック1208の動作を実施する。いくつかの実装形態では、図9の比較するためのコード950が、ブロック1208の動作を実施するために実行される。
【０１２２】
ブロック1210において、装置は、受信された情報(たとえば、図10のブロック1002において受信された情報)を符号化するためのレートマッチングを選択する。いくつかの態様では、この選択は、ブロック1208の比較に基づき得る。
【０１２３】
いくつかの実装形態では、図9の、レートマッチングを選択するための回路/モジュール924がブロック1210の動作を実施する。いくつかの実装形態では、図9の、レートマッチングを選択するためのコード940が、ブロック1210の動作を実施するために実行される。
【０１２４】
いくつかの態様では、プロセス1200は、上記特徴のうちの2つ以上からなるどの組合せも含み得る。
【０１２５】
第2の例示的装置
図13は、本開示の1つまたは複数の態様による符号化を使うように構成された装置1300の例示的ハードウェア実装形態のブロック図を示す。装置1300は、UE、送受信ポイント(TRP)、基地局、または本明細書において教示される符号化をサポートする何らかの他のタイプのデバイス内で、具現化し、または実装され得る。様々な実装形態では、装置1300は、アクセス端末、アクセスポイント、または何らかの他のタイプのデバイス内で具現化し、または実装され得る。様々な実装形態では、装置1300は、モバイルフォン、スマートフォン、タブレット、ポータブルコンピュータ、サーバ、ネットワークエンティティ、パーソナルコンピュータ、センサ、アラーム、ビークル、マシン、エンターテインメントデバイス、医療デバイス、または回路機構を有する任意の他の電子デバイス内で具現化し、または実装され得る。
【０１２６】
装置1300は、通信インターフェース1302(たとえば、少なくとも1つのトランシーバ)、記憶媒体1304、ユーザインターフェース1306、メモリデバイス1308(たとえば、コーディング関連の情報1318を記憶する)、および処理回路1310(たとえば、少なくとも1つのプロセッサ)を含む。様々な実装形態では、ユーザインターフェース1306は、キーパッド、ディスプレイ、スピーカー、マイクロフォン、タッチスクリーンディスプレイ、またはユーザから入力を受け取り、もしくは出力をユーザへ送るための、何らかの他の回路機構のうちの1つまたは複数を含み得る。通信インターフェース1302は、1つまたは複数のアンテナ1312に結合されてよく、送信機1314および受信機1316に結合され得る。一般に、図13の構成要素は、図9の装置900の対応する構成要素と同様であってよい。
【０１２７】
本開示の1つまたは複数の態様によると、処理回路1310は、本明細書で説明する装置のいずれかまたはすべてのための特徴、プロセス、機能、動作および/またはルーチンのいずれかまたはすべてを実施するように適合され得る。たとえば、処理回路1310は、図1〜図5および図14〜図16に関して説明されるステップ、機能、および/または処理のいずれかを実施するように構成され得る。本明細書で使用する、処理回路1310に関する「適合される」という用語は、処理回路1310が、本明細書で説明する様々な特徴に従って、特定のプロセス、機能、動作および/またはルーチンを実施するように構成されること、使われること、実装されること、および/またはプログラムされることのうちの1つまたは複数を指し得る。
【０１２８】
処理回路1310は、図1〜図5および図14〜図16とともに説明される動作のいずれか1つを実施するための手段(たとえば、そのための構造)として機能する特定用途向け集積回路(ASIC)など、特別なプロセッサであり得る。処理回路1310は、送信するための手段および/または受信するための手段の一例として働き得る。様々な実装形態では、処理回路1310は、図2の第1のワイヤレス通信デバイス202(たとえば、エンコーダ212)または図3のエンコーダ302の機能性を提供し、かつ/または組み込むことができる。
【０１２９】
装置1300の少なくとも1つの例によると、処理回路1310は、受信するための回路/モジュール1320、ブロック符号化するための回路/モジュール1322、繰返しパターンを生成するための回路/モジュール1324、コード化ビットを取得するための回路/モジュール1326、コード化ブロックデータを生成するための回路/モジュール1328、コードブロックサイズを判断するための回路/モジュール1330、2の累乗ブロックサイズを判断するための回路/モジュール1332、または差分を判断するための回路/モジュール1334のうちの1つまたは複数を含み得る。
【０１３０】
上述のように、記憶媒体1304によって記憶されるプログラミングは、処理回路1310によって実行されると、図1〜図5および図14〜図16に関して本明細書で説明する様々な機能および/またはプロセス動作のうちの1つまたは複数を処理回路1310に実施させる。たとえば、記憶媒体1304は、受信するためのコード1336、ブロック符号化するためのコード1338、繰返しパターンを生成するためのコード1340、コード化ビットを取得するためのコード1342、コード化ブロックデータを生成するためのコード1344、コードブロックサイズを判断するためのコード1346、2の累乗ブロックサイズを判断するためのコード1348、または差分を判断するためのコード1350のうちの1つまたは複数を含み得る。様々な実装形態では、受信するためのコード1336、ブロック符号化のためのコード1338、繰返しパターンを生成するためのコード1340、コード化ビットを取得するためのコード1342、コード化ブロックデータを生成するためのコード1344、コードブロックサイズを判断するためのコード1346、2の累乗ブロックサイズを判断するためのコード1348、または差分を判断するためのコード1350は、受信するための回路/モジュール1320、ブロック符号化するための回路/モジュール1322、繰返しパターンを生成するための回路/モジュール1324、コード化ビットを取得するための回路/モジュール1326、コード化ブロックデータを生成するための回路/モジュール1328、コードブロックサイズを判断するための回路/モジュール1330、2の累乗ブロックサイズを判断するための回路/モジュール1332、または差分を判断するための回路/モジュール1334のための、本明細書で説明する機能性を提供するように実行されるか、またはそうでなければそうするのに使われ得る。
【０１３１】
受信するための回路/モジュール1320は、たとえば、情報を受信することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、受信するためのコード1336)を含み得る。いくつかのシナリオでは、受信するための回路/モジュール1320は、(たとえば、通信インターフェース1302、メモリデバイス、または装置1300の何らかの他の構成要素から)情報を取得することができ、情報を処理(たとえば、復号)する。いくつかのシナリオでは(たとえば、受信するための回路/モジュール1320がRF受信機である場合、またはそれを含む場合)、受信するための回路/モジュール1320は、情報を送信したデバイスから直接情報を受信し得る。いずれの場合でも、受信するための回路/モジュール1320は、取得された情報を装置1300の別の構成要素(たとえば、ブロック符号化するための回路/モジュール1322、ブロックサイズを判断するための回路/モジュール1330、メモリデバイス1308、または他の何らかの構成要素)に出力し得る。
【０１３２】
受信するための回路/モジュール1320(たとえば、受信するための手段)は様々な形をとり得る。いくつかの態様では、受信するための回路/モジュール1320は、たとえば、インターフェース(たとえば、バスインターフェース、送信/受信インターフェース、または何らかの他のタイプの信号インターフェース)、通信デバイス、トランシーバ、受信機、または本明細書で説明するような何らかの他の同様の構成要素に相当し得る。いくつかの実装形態では、通信インターフェース1302は、受信するための回路/モジュール1320および/または受信するためのコード1336を含む。いくつかの実装形態では、受信するための回路/モジュール1320および/または受信するためのコード1336は、情報を受信するように通信インターフェース1302(たとえば、トランシーバまたは受信機)を制御するように構成される。
【０１３３】
ブロック符号化するための回路/モジュール1322は、たとえば、情報を符号化することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、ブロック符号化するためのコード1338)を含み得る。いくつかの態様では、ブロック符号化するための回路/モジュール1322(たとえば、ブロック符号化するための手段)は、たとえば処理回路に相当し得る。
【０１３４】
いくつかの態様では、ブロック符号化するための回路/モジュール1322は、符号化アルゴリズムを実行し得る。たとえば、ブロック符号化するための回路/モジュール1322は、ブロックコーディングアルゴリズムまたはポーラーコーディングアルゴリズムを実施し得る。ブロック符号化するための回路/モジュール1322は次いで、得られた符号化情報を(たとえば、通信インターフェース1302、メモリデバイス1308、または何らかの他の構成要素に)出力し得る。
【０１３５】
繰返しパターンを生成するための回路/モジュール1324は、たとえば、符号化された情報用の繰返しパターンを生成することに関するいくつかの機能を実行するように適合された回路および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、繰返しパターンを生成するためのコード1340)を含み得る。いくつかの態様では、繰返しパターンを生成するための回路/モジュール1324(たとえば、繰返しパターンを生成するための手段)は、たとえば処理回路に相当し得る。
【０１３６】
いくつかの態様では、繰返しパターンを生成するための回路/モジュール1324は、たとえば、図2および図5とともに上述したように、繰返しパターンを生成し得る。繰返しパターンを生成するための回路/モジュール1324は次いで、得られた繰返しパターンを(たとえば、コード化ビットを取得するための回路/モジュール1326、メモリデバイス1308、または何らかの他の構成要素に)出力し得る。
【０１３７】
コード化ビットを取得するための回路/モジュール1326は、たとえば、コード化データに追加されるべきコード化ビットを取得することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、コード化ビットを取得するためのコード1342)を含み得る。いくつかの態様では、コード化ビットを取得するための回路/モジュール1326(たとえば、コード化ビットを取得するための手段)は、たとえば処理回路に相当し得る。
【０１３８】
いくつかのシナリオでは、コード化ビットを取得するための回路/モジュール1326は、繰返しパターンを(たとえば、繰返しパターンを生成するための回路/モジュール1324、メモリデバイス、または装置1300の何らかの他の構成要素から)取得し得る。コード化ビットを取得するための回路/モジュール1326は次いで、繰返しパターンからビットを抽出し得る(たとえば、図5とともに上述したように)。いくつかの態様では、取得されるべきコード化ビットの数は、コードブロックサイズと2の累乗ブロックサイズとの間の差分に基づき得る。コード化ビットを取得するための回路/モジュール1326は次いで、コード化ビットを(たとえば、コード化ブロックデータを生成するための回路/モジュール1328、メモリデバイス1308、または何らかの他の構成要素に)出力する。
【０１３９】
コード化ブロックデータを生成するための回路/モジュール1328は、たとえば、コード化情報を生成することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、コード化ブロックデータを生成するためのコード1344)を含み得る。いくつかの態様では、コード化ブロックデータを生成するための回路/モジュール1328(たとえば、コード化ブロックデータを生成するための手段)は、たとえば処理回路に相当し得る。
【０１４０】
いくつかの態様では、コード化ブロックデータを生成するための回路/モジュール1328は、ブロックコード化データにコード化ビットを追加し得る。この目的のために、コード化ブロックデータを生成するための回路/モジュール1328は、コード化ビットを(たとえば、コード化ビットを取得するための回路/モジュール1326、メモリデバイス、または装置1300の何らかの他の構成要素から)取得し得る。さらに、コード化ブロックデータを生成するための回路/モジュール1328は、ブロックコード化データを(たとえば、ブロック符号化するための回路/モジュール1322、メモリデバイス、または装置1300の何らかの他の構成要素から)取得し得る。コード化ブロックデータを生成するための回路/モジュール1328は次いで、コード化ビットとブロックコード化データを組み合わせる(たとえば、図5とともに上述したように)。コード化ブロックデータを生成するための回路/モジュール1328は次いで、得られたブロックコード化データを(たとえば、通信インターフェース1302、メモリデバイス1308、または何らかの他の構成要素に)出力し得る。
【０１４１】
コードブロックサイズを判断するための回路/モジュール1330は、たとえば、受信された情報に関するコードブロックサイズを判断することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、コードブロックサイズを判断するためのコード1346)を含み得る。いくつかの態様では、コードブロックサイズを判断するための回路/モジュール1330(たとえば、コードブロックサイズを判断するための手段)は、たとえば処理回路に相当し得る。
【０１４２】
いくつかのシナリオでは、コードブロックサイズを判断するための回路/モジュール1330は、エンコーダ(たとえば、符号化アルゴリズム)によってサポートされるブロックサイズを示す情報(たとえば、構成情報)を取得し得る。いくつかのシナリオでは、コードブロックサイズを判断するための回路/モジュール1330は、(たとえば、特定の時間周波数リソースを介して)情報を送るのに使われるべきリソースサイズを示す情報を取得し得る。いくつかのシナリオでは、コードブロックサイズを判断するための回路/モジュール1330は、リソースサイズと最良一致するブロックサイズを選択し得る。コードブロックサイズを判断するための回路/モジュール1330は次いで、コードブロックサイズの指示を(たとえば、2の累乗ブロックサイズを判断するための回路/モジュール1332、差分を判断するための回路/モジュール1334、メモリデバイス1308、または何らかの他の構成要素に)出力し得る。
【０１４３】
2の累乗ブロックサイズを判断するための回路/モジュール1332は、たとえば、コードブロックサイズ未満である、最も大きい2の累乗整数に対応する、2の累乗ブロックサイズを判断することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、2の累乗ブロックサイズを判断するためのコード1348)を含み得る。いくつかの態様では、2の累乗ブロックサイズを判断するための回路/モジュール1332(たとえば、2の累乗ブロックサイズを判断するための手段)は、たとえば処理回路に相当し得る。
【０１４４】
いくつかのシナリオでは、2の累乗ブロックサイズを判断するための回路/モジュール1332は、コードブロックサイズ情報を(たとえば、コードブロックサイズを判断するための回路/モジュール1330、メモリデバイス、または装置1300の何らかの他の構成要素から)取得し得る。2の累乗ブロックサイズを判断するための回路/モジュール1332は、コードブロックサイズに基づいて特定の2の累乗ブロックサイズを識別する(たとえば、図2〜図4とともに上述したように)。2の累乗ブロックサイズを判断するための回路/モジュール1332は次いで、2の累乗ブロックサイズの指示を(たとえば、差分を判断するための回路/モジュール1334、メモリデバイス1308、または何らかの他の構成要素に)出力し得る。
【０１４５】
差分を判断するための回路/モジュール1334は、たとえば、コードブロックサイズと2の累乗ブロックサイズとの間の差分を判断することに関するいくつかの機能を実施するように適合された回路機構および/またはプログラミング(たとえば、記憶媒体1304上に記憶された、差分を判断するためのコード1350)を含み得る。いくつかの態様では、差分を判断するための回路/モジュール1334(たとえば、差分を判断するための手段)は、たとえば処理回路に相当し得る。
【０１４６】
差分を判断するための回路/モジュール1334は、コードブロックサイズ情報を(たとえば、コードブロックサイズを判断するための回路/モジュール1330、メモリデバイス、または装置1300の何らかの他の構成要素から)取得する。差分を判断するための回路/モジュール1334はまた、2の累乗ブロックサイズを(たとえば、2の累乗ブロックサイズを判断するための回路/モジュール1332、メモリデバイス、または装置1300の何らかの他の構成要素から)取得する。差分を判断するための回路/モジュール1334は、これらの値のうちの1つを、これらの値のうちの他の1つから減算する。差分を判断するための回路/モジュール1334は次いで、減算の結果を(たとえば、繰返しパターンを生成するための回路/モジュール1324、メモリデバイス1308、または何らかの他の構成要素に)出力し得る。
【０１４７】
第4の例示的プロセス
図14は、本開示のいくつかの態様による、通信のためのプロセス1400を示す。プロセス1400は、アクセス端末、基地局、または何らかの他の適切な装置の中に位置し得る処理回路(たとえば、図13の処理回路1310)内で行われ得る。当然、本開示の範囲内の様々な態様では、プロセス1400は、シグナリング関連の動作をサポートすることが可能な任意の適切な装置によって実装され得る。
【０１４８】
ブロック1402において、装置(たとえば、エンコーダを含むデバイス)が、符号化されるべき情報を受信する。
【０１４９】
いくつかの実装形態では、図13の受信するための回路/モジュール1320がブロック1402の動作を実施する。いくつかの実装形態では、図13の受信するためのコード1336が、ブロック1402の動作を実施するために実行される。
【０１５０】
ブロック1404において、装置は、受信された情報をブロック符号化して、第1のブロックコード化データを生成する。いくつかの態様では、ブロック符号化はポーラーコーディングを含み得る。
【０１５１】
いくつかの実装形態では、図13の、ブロック符号化するための回路/モジュール1322がブロック1404の動作を実施する。いくつかの実装形態では、図13の、ブロック符号化するためのコード1338がブロック1404の動作を実施するために実行される。
【０１５２】
ブロック1406において、装置は繰返しパターンを生成する。いくつかの態様では、繰返しパターンは、受信された情報についてのコードブロックサイズに対応する量のビットからなり得る。
【０１５３】
いくつかの態様では、繰返しパターンの生成は、第1の繰返しパターンを生成することと、第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成することとを含み得る。この場合、コード化ビットは、第2の繰返しパターンによって示されるロケーションから取得され得る。
【０１５４】
いくつかの態様では、ブロック符号化は、2の累乗ブロックサイズをもつ第1のブロックコード化データを生成し得る。したがって、プロセス1400は、受信された情報についてのコードブロックサイズを判断することと、コードブロックサイズ未満である、最も大きい2の累乗整数を識別することによって、2の累乗ブロックサイズを判断することとを含み得る。さらに、繰返しパターンは、コードブロックサイズに対応する量のビットからなり得る。
【０１５５】
いくつかの態様では、プロセス1400は、コードブロックサイズと2の累乗ブロックサイズとの間の差分を判断することを含み得る。この場合、繰返しパターンの生成は、繰返しパターン中に、コードブロックサイズと2の累乗ブロックサイズとの間の差分に等しい量の1を含めることを伴い得る。いくつかの態様では、繰返しパターンの生成は、差分に等しい量の1を、繰返しパターンの末尾に含めることを伴い得る。
【０１５６】
いくつかの態様では、第1のブロックコード化データは、2の累乗ブロックサイズを有し得る。いくつかの態様では、プロセス1400は、コードブロックサイズと2の累乗ブロックサイズとの間の差分を判断することを含み得る。ここで、第1の繰返しパターンの生成は、繰返しパターン中に、コードブロックサイズと2の累乗ブロックサイズとの間の差分に等しい量の1を含めることを伴い得る。
【０１５７】
いくつかの実装形態では、図13の、繰返しパターンを生成するための回路/モジュール1324がブロック1406の動作を実施する。いくつかの実装形態では、図13の、繰返しパターンを生成するためのコード1340が、ブロック1406の動作を実施するために実行される。
【０１５８】
ブロック1408において、装置は、繰返しパターンに基づいてコード化ビットを取得する。いくつかの態様では、繰返しパターンに基づく、コード化ビットの取得は、コードブロックサイズと2の累乗ブロックサイズとの間の差分に基づく量のコード化ビットを取得することを含み得る。いくつかの態様では、繰返しパターンに基づく、コード化ビットの取得は、コードブロックサイズと2の累乗ブロックサイズとの間の差分に等しい量のコード化ビットを取得することを含んでよく、コード化ビットは、繰返しパターンによって示されるロケーションから取得される。
【０１５９】
いくつかの実装形態では、図13の、コード化ビットを取得するための回路/モジュール1326がブロック1408の動作を実施する。いくつかの実装形態では、図13の、コード化ビットを取得するためのコード1342が、ブロック1408の動作を実施するために実行される。
【０１６０】
ブロック1410において、装置は、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成する。いくつかの態様では、第1のブロックコード化データへのコード化ビットの追加は、第1のブロックコード化データの末尾にコード化ビットを付加することを含み得る。
【０１６１】
いくつかの実装形態では、図13の、コード化ブロックデータを生成するための回路/モジュール1328がブロック1410の動作を実施する。いくつかの実装形態では、図13の、コード化ブロックデータを生成するためのコード1344が、ブロック1410の動作を実施するために実行される。
【０１６２】
いくつかの態様では、プロセス1400は、上記特徴のうちの2つ以上からなるどの組合せも含み得る。
【０１６３】
第5の例示的プロセス
図15は、本開示のいくつかの態様による、通信のためのプロセス1500を示す。プロセス1500は、アクセス端末、基地局、または何らかの他の適切な装置の中に位置し得る処理回路(たとえば、図13の処理回路1310)内で行われ得る。当然、本開示の範囲内の様々な態様では、プロセス1500は、シグナリング関連の動作をサポートすることが可能な任意の適切な装置によって実装され得る。
【０１６４】
ブロック1502において、装置(たとえば、エンコーダを含むデバイス)が、符号化されるべき情報を受信する。
【０１６５】
いくつかの実装形態では、図13の受信するための回路/モジュール1320がブロック1502の動作を実施する。いくつかの実装形態では、図13の受信するためのコード1336が、ブロック1502の動作を実施するために実行される。
【０１６６】
ブロック1504において、装置は、受信された情報を、2の累乗ブロックサイズに従ってブロック符号化して、第1のブロックコード化データを生成する。いくつかの態様では、ブロック符号化はポーラーコーディングを含み得る。
【０１６７】
いくつかの実装形態では、図13の、ブロック符号化するための回路/モジュール1322がブロック1504の動作を実施する。いくつかの実装形態では、図13の、ブロック符号化するためのコード1338がブロック1504の動作を実施するために実行される。
【０１６８】
ブロック1506において、装置は第1の繰返しパターンを生成する。いくつかの態様では、プロセス1500は、受信された情報についてのコードブロックサイズを判断することと、コードブロックサイズ未満である、最も大きい2の累乗整数を識別することによって、2の累乗ブロックサイズを判断することと、コードブロックサイズと2の累乗ブロックサイズとの間の差分を判断することとを含み得る。ここで、第1の繰返しパターンの生成は、差分に等しい量の1を、第1の繰返しパターンの末尾に含めることを伴い得る。
【０１６９】
いくつかの実装形態では、図13の、繰返しパターンを生成するための回路/モジュール1324がブロック1506の動作を実施する。いくつかの実装形態では、図13の、繰返しパターンを生成するためのコード1340が、ブロック1506の動作を実施するために実行される。
【０１７０】
ブロック1508において、装置は、第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成する。
【０１７１】
いくつかの実装形態では、図13の、繰返しパターンを生成するための回路/モジュール1324がブロック1508の動作を実施する。いくつかの実装形態では、図13の、繰返しパターンを生成するためのコード1340が、ブロック1508の動作を実施するために実行される。
【０１７２】
ブロック1510において、装置は、第2の繰返しパターンに基づいてコード化ビットを取得する。いくつかの態様では、第2の繰返しパターンに基づく、コード化ビットの取得は、コードブロックサイズと2の累乗ブロックサイズとの間の差分に等しい量のコード化ビットを取得することを含んでよく、コード化ビットは、第2の繰返しパターンによって示されるロケーションから取得される。
【０１７３】
いくつかの実装形態では、図13の、コード化ビットを取得するための回路/モジュール1326がブロック1510の動作を実施する。いくつかの実装形態では、図13の、コード化ビットを取得するためのコード1342が、ブロック1510の動作を実施するために実行される。
【０１７４】
ブロック1512において、装置は、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成する。いくつかの態様では、第1のブロックコード化データへのコード化ビットの追加は、第1のブロックコード化データの末尾にコード化ビットを付加することを含み得る。
【０１７５】
いくつかの実装形態では、図13の、コード化ブロックデータを生成するための回路/モジュール1328がブロック1512の動作を実施する。いくつかの実装形態では、図13の、コード化ブロックデータを生成するためのコード1344が、ブロック1512の動作を実施するために実行される。
【０１７６】
いくつかの態様では、プロセス1500は、上記特徴のうちの2つ以上からなるどの組合せも含み得る。
【０１７７】
第6の例示的プロセス
図16は、本開示のいくつかの態様による、通信のためのプロセス1600を示す。プロセス1600の1つまたは複数の態様は、図14のプロセス1400または図15のプロセス1500とともに(たとえば、それに加えて、またはその一部として)使用され得る。プロセス1600は、アクセス端末、基地局、または他の何らかの適切な装置の中に位置する場合がある処理回路(たとえば、図13の処理回路1310)内で行われてもよい。当然、本開示の範囲内の様々な態様では、プロセス1600は、シグナリング関連の動作をサポートすることが可能な任意の適切な装置によって実装され得る。
【０１７８】
ブロック1602において、装置(たとえば、エンコーダを含むデバイス)が、受信された情報(たとえば、図14のブロック1402または図15のブロック1502において受信された情報)についてのコードブロックサイズを判断する。
【０１７９】
いくつかの実装形態では、図13の、コードブロックサイズを判断するための回路/モジュール1330がブロック1602の動作を実施する。いくつかの実装形態では、図13の、コードブロックサイズを判断するためのコード1346が、ブロック1602の動作を実施するために実行される。
【０１８０】
ブロック1604において、装置は、ブロック1602において判断されたコードブロックサイズ未満である、最も大きい2の累乗整数を識別することによって、2の累乗ブロックサイズを判断する。
【０１８１】
いくつかの実装形態では、図13の、2の累乗ブロックサイズを判断するための回路/モジュール1332がブロック1604の動作を実施する。いくつかの実装形態では、図13の、2の累乗ブロックサイズを判断するためのコード1348が、ブロック1604の動作を実施するために実行される。
【０１８２】
ブロック1606において、装置は、ブロック1602において判断されたコードブロックサイズと、ブロック1604において判断された2の累乗ブロックサイズとの間の差分を判断する。
【０１８３】
いくつかの実装形態では、図13の、差分を判断するための回路/モジュール1334がブロック1606の動作を実施する。いくつかの実装形態では、図13の、差分を判断するためのコード1350が、ブロック1606の動作を実施するために実行される。
【０１８４】
ブロック1608において、装置は、ブロック1606の差分に等しい量の1を第1の繰返しパターン(たとえば、図15のブロック1506の第1の繰返しパターン)の末尾に含めることによって、繰返しパターンを生成する。
【０１８５】
いくつかの実装形態では、図13の、繰返しパターンを生成するための回路/モジュール1324がブロック1608の動作を実施する。いくつかの実装形態では、図13の、繰返しパターンを生成するためのコード1340が、ブロック1608の動作を実施するために実行される。
【０１８６】
いくつかの態様では、プロセス1600は、上記特徴のうちの2つ以上からなるどの組合せも含み得る。
【０１８７】
他の態様
一態様では、本開示は、メモリと、メモリに結合されたプロセッサとを含む、通信のために構成された装置を提供する。プロセッサおよびメモリは、符号化されるべき情報を受信することと、受信された情報を、2の累乗ブロックサイズに従ってブロック符号化して、第1のブロックコード化データを生成することと、第1の繰返しパターンを生成することと、第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成することと、第2の繰返しパターンに基づいてコード化ビットを取得することと、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成することとを行うように構成される。
【０１８８】
本開示の別の態様は、符号化されるべき情報を受信するステップと、受信された情報を、2の累乗ブロックサイズに従ってブロック符号化して、第1のブロックコード化データを生成するステップと、第1の繰返しパターンを生成するステップと、第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成するステップと、第2の繰返しパターンに基づいてコード化ビットを取得するステップと、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成するステップとを含む、通信のための方法を提供する。
【０１８９】
本開示の別の態様は、通信のために構成された装置を提供する。装置は、符号化されるべき情報を受信するための手段と、受信された情報を、2の累乗ブロックサイズに従ってブロック符号化して、第1のブロックコード化データを生成するための手段と、第1の繰返しパターンを生成するための手段と、第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成するための手段と、第2の繰返しパターンに基づいてコード化ビットを取得するための手段と、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成するための手段とを含む。
【０１９０】
本開示の別の態様は、符号化されるべき情報を受信することと、受信された情報を、2の累乗ブロックサイズに従ってブロック符号化して、第1のブロックコード化データを生成することと、第1の繰返しパターンを生成することと、第1の繰返しパターンのビット反転置換に基づいて、第2の繰返しパターンを生成することと、第2の繰返しパターンに基づいてコード化ビットを取得することと、第1のブロックコード化データにコード化ビットを追加することによって、第2のブロックコード化データを生成することとを行うためのコードを含むコンピュータ実行可能コードを記憶する非一時的コンピュータ可読媒体を提供する。
【０１９１】
追加態様
本明細書に記載する例は、本開示のいくつかの概念を例示するために提供される。これらは本質的に例示にすぎず、他の例が本開示および添付の請求項の範囲内に収まることがあることを当業者は理解するであろう。本明細書の教示に基づいて、本明細書で開示する態様は他の任意の態様から独立して実装されることがあり、これらの態様のうちの2つ以上は様々な方法で結合されることがあることを、当業者は諒解されたい。たとえば、本明細書に記載する任意の数の態様を使用して、装置が実装されてよく、または方法が実践されてよい。さらに、本明細書に記載する態様のうちの1つもしくは複数に加えて、または、それら以外の他の構造、機能性、もしくは構造および機能性を使用して、そのような装置を実装し、またはそのような方法を実践することができる。
【０１９２】
当業者は容易に諒解するであろうが、本開示全体にわたって説明された様々な態様は、任意の適切な電気通信システム、ネットワークアーキテクチャ、および通信規格に拡張され得る。例として、様々な態様は、まだ定義されていない規格により記述されるものを含めて、ワイドエリアネットワーク、ピアツーピアネットワーク、ローカルエリアネットワーク、他の適切なシステム、またはこれらの任意の組合せに適用され得る。様々な態様は、3GPP 5Gシステムおよび/またはまだ定義されていないワイドエリアネットワーク規格によって記述されるものを含む、他の適切なシステムに適用され得る。様々な態様は、(FDD、TDD、もしくは両方のモードの)LTE、(FDDモード、TDDモード、もしくは両方のモードの)LTE-アドバンスト(LTE-A)、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、モバイル通信用グローバルシステム(GSM(登録商標))、符号分割多元接続(CDMA)、CDMA2000、エボリューションデータオプティマイズド(EV-DO)、ウルトラモバイルブロードバンド(UMB)、IEEE802.11(Wi-Fi)、IEEE802.16(WiMAX)、IEEE802.20、ウルトラワイドバンド(UWB)、Bluetooth(登録商標)を使うシステム、および/または他の適切なシステムにも適用され得る。様々な態様は、W-CDMA、TD-SCDMA、およびTD-CDMAなどのUMTSシステムにも適用され得る。使われる実際の電気通信規格、ネットワークアーキテクチャ、および/または通信規格は、特定の適用例およびシステムに課される全体的な設計制約に依存する。
【０１９３】
多くの態様について、たとえばコンピューティングデバイスの要素によって実施されるべき、動作のシーケンスに関して説明している。本明細書で説明する様々なアクションは、特定の回路、たとえば中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または様々な他のタイプの汎用もしくは専用のプロセッサもしくは回路によって、1つまたは複数のプロセッサによって実行されるプログラム命令によって、あるいは両方の組合せによって実施され得ることが認識されよう。加えて、本明細書で説明するこれらの動作のシーケンスは、実行の際に関連するプロセッサに本明細書で説明する機能性を実施させることになる、コンピュータ命令の対応するセットをその中に記憶させた、コンピュータ可読記憶媒体の任意の形で完全に具現化されると考えることができる。したがって、本開示の様々な態様は、そのすべてが特許請求される主題の範囲内に入ることが企図されているいくつかの異なる形で具現され得る。加えて、本明細書で説明する態様ごとに、任意のそのような態様の対応する形態について、たとえば、説明するアクションを実施する「ように構成された論理」として本明細書で説明する場合がある。
【０１９４】
情報および信号は、多種多様な技術および技法のいずれかを使用して表され得ることを当業者は諒解されよう。たとえば、上記の説明全体にわたって言及されることがあるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表される場合がある。
【０１９５】
さらに、当業者は、本明細書で開示する態様に関連して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装されてよいことを諒解されよう。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップは、一般的にそれらの機能性に関してこれまで説明されてきた。そのような機能性がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の用途およびシステム全体に課される設計の制約によって決まる。当業者は、説明した機能性を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本開示の範囲からの逸脱を生じるものと解釈すべきではない。
【０１９６】
上で示された構成要素、ステップ、特徴、および/もしくは機能のうちの1つまたは複数は、単一の構成要素、ステップ、特徴もしくは機能として再構成され、および/もしくは結合されることがあり、またはいくつかの構成要素、ステップ、もしくは機能において具現化されることがある。本明細書で開示する新規の特徴から逸脱することなく、追加の要素、構成要素、ステップ、および/または機能が追加され得る。上で示された装置、デバイス、および/または構成要素は、本明細書で説明する方法、特徴、またはステップの1つまたは複数を実施するように構成され得る。また、本明細書で説明する新規のアルゴリズムは、ソフトウェアに効率的に実装されることがあり、および/またはハードウェアに組み込まれることがある。
【０１９７】
開示された方法におけるステップの特定の順序または階層は、例示的なプロセスの例示であることを理解されたい。設計上の選好に基づいて、方法におけるステップの特定の順序または階層が再構成されてよいことが理解される。添付の方法の請求項は、様々なステップの要素を例示的な順序で提示したものであり、請求項において特に記載されていない限り、提示された特定の順序または階層に限定されることを意図するものではない。
【０１９８】
本明細書で開示する態様に関連して説明した方法、シーケンス、またはアルゴリズムは、直接ハードウェアにおいて、プロセッサによって実行されるソフトウェアモジュールにおいて、またはそれら2つの組合せにおいて具現化され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野で既知の任意の他の形の記憶媒体内に存在することができる。記憶媒体の例は、プロセッサが記憶媒体から情報を読み取ることができ、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体は、プロセッサと一体化してよい。
【０１９９】
「例示的」という言葉は、本明細書では、「例、事例、または例示として役立つ」ことを意味するように使用される。本明細書で「例示的」と説明する任意の態様は、必ずしも他の態様よりも好ましいまたは有利であると解釈されるべきではない。同様に、「態様」という用語は、すべての態様が論じられた特徴、利点、または動作モードを含むことを必要としない。
【０２００】
本明細書で使用する用語は、特定の態様のみを説明することを目的としており、態様を限定するものではない。本明細書で使用する単数形「a」、「an」、および「the」は、文脈が別段明確に示さない限り、複数形も含むものとする。「備える(comprises、comprising)」、または「含む(includes、including)」という用語は、本明細書で使用されるとき、述べられた特徴、整数、ステップ、動作、要素、または構成要素の存在を明示するが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、またはそれらのグループの存在または追加を除外しないことがさらに理解されよう。さらに、「または」という用語は、ブール演算子「OR」と同じ意味を有し、すなわち、「いずれか」および「両方」の可能性を含み、別段に明記されていない限り、「排他的論理和」(「XOR」)に限定されないことを理解されたい。2つの隣接する語の間の記号「/」は、別段に明記されていない限り、「または」と同じ意味を有することも理解されたい。さらに、「〜に接続される」、「〜に結合される」、または「〜と通信している」などの句は、別段に明記されていない限り、直接の接続に限定されない。
【０２０１】
本明細書において「第1の」、「第2の」などの呼称を使用する、要素へのいかなる言及も、一般に、それらの要素の数量または順序を限定しない。むしろ、これらの呼称は、本明細書では、2つ以上の要素または要素の例を区別する好都合な方法として使用され得る。したがって、第1の要素および第2の要素への言及は、そこで2つの要素だけが使用され得ること、または第1の要素が何らかの形で第2の要素に先行しなければならないことを意味しない。また、別段に記載されていない限り、要素のセットは1つまたは複数の要素を備え得る。加えて、説明または請求項において使用される「a、b、またはcのうちの少なくとも1つ」または「a、b、c、またはこれらの任意の組合せ」という形態の用語は、「aまたはbまたはcまたはこれらの要素の任意の組合せ」を意味する。たとえば、この用語は、a、またはb、またはc、またはaおよびb、またはaおよびc、またはaおよびbおよびc、または2a、または2b、または2c、または2aおよびbなどを含み得る。
【０２０２】
本明細書で使用する「判断すること」という用語は、多種多様なアクションを包含する。たとえば、「判断すること」は、算出すること、計算すること、処理すること、導出すること、調査すること、検索すること(たとえば、テーブル、データベース、または別のデータ構造を検索すること)、確認することなどを含み得る。また、「判断すること」は、受信すること(たとえば、情報を受信すること)、アクセスすること(たとえば、メモリ内のデータにアクセスすること)などを含み得る。また、「判断すること」は、解決すること、選択すること、選出すること、確立することなどを含み得る。
【０２０３】
上記の開示は例示的な態様を示すが、添付の特許請求の範囲から逸脱することなく、本明細書において様々な変更および修正が行われ得ることに留意されたい。本明細書で説明する態様による方法クレームの機能、ステップまたはアクションは、別段に明記されていない限り、特定の順序で実施される必要はない。さらに、要素は、単数形で説明または請求される場合があるが、単数形への限定が明示的に述べられていない限り、複数形が企図される。
【符号の説明】
【０２０４】
100  ワイヤレス通信システム、システム
102  第1のUE、UE
104  第2のUE、UE
106  送受信ポイント(TRP)
108  コアネットワーク
110  インターネットサービスプロバイダ(ISP)
112  デバイス間(D2D)リンク
114  ブロックエンコーダ
200  ワイヤレス通信システム
202  第1のワイヤレス通信デバイス、第1の(送信)ワイヤレス通信デバイス
204  第2のワイヤレス通信デバイス、第2の(受信)ワイヤレス通信デバイス
206  通信チャネル、チャネル
210  情報ソース
212  エンコーダ
214  デコーダ
216  情報シンク
218  レートマッチングを選択するための機能性、機能性
220  データを符号化するための機能性
222  符号化データをパンクチャし、または繰り返すための機能性
228  コードブロックサイズを判断するための機能性
232  繰返しパターンを生成するための機能性
234  繰返しパターンに基づいてコード化ビットを取得するための機能性
236  ブロックコード化データにコード化ビットを追加するための機能性
302  ブロックエンコーダ、エンコーダ
308  レートマッチングセレクタ
314  インターフェース
316  インターフェース
900  装置
902  通信インターフェース
904  記憶媒体
906  ユーザインターフェース
908  メモリデバイス
910  処理回路
912  アンテナ
914  送信機
916  受信機
920  受信するための回路/モジュール
922  コードブロックサイズを判断するための回路/モジュール
924  レートマッチングを選択するための回路/モジュール
926  ブロック符号化するための回路/モジュール
928  2の累乗ブロックサイズを判断するための回路/モジュール
930  差分を判断するための回路/モジュール
932  算出するための回路/モジュール
934  比較するための回路/モジュール
936  受信するためのコード
938  コードブロックサイズを判断するためのコード
940  レートマッチングを選択するためのコード
942  ブロック符号化するためのコード
944  2の累乗ブロックサイズを判断するためのコード
946  差分を判断するためのコード
948  算出するためのコード
950  比較するためのコード
1300  装置
1302  通信インターフェース
1304  記憶媒体
1306  ユーザインターフェース
1308  メモリデバイス
1310  処理回路
1312  アンテナ
1314  送信機
1316  受信機
1320  受信するための回路/モジュール
1322  ブロック符号化するための回路/モジュール
1324  繰返しパターンを生成するための回路/モジュール
1326  コード化ビットを取得するための回路/モジュール
1328  コード化ブロックデータを生成するための回路/モジュール
1330  コードブロックサイズを判断するための回路/モジュール
1332  2の累乗ブロックサイズを判断するための回路/モジュール
1334  差分を判断するための回路/モジュール
1336  受信するためのコード
1338  ブロック符号化するためのコード
1340  繰返しパターンを生成するためのコード
1342  コード化ビットを取得するためのコード
1344  コード化ブロックデータを生成するためのコード
1346  コードブロックサイズを判断するためのコード
1348  2の累乗ブロックサイズを判断するためのコード
1350  差分を判断するためのコード
【図１】
2019527978.tif 000004
【図２】
2019527978.tif 000005
【図３】
2019527978.tif 000006
【図４】
2019527978.tif 000007
【図５】
2019527978.tif 000008
【図６】
2019527978.tif 000009
【図７】
2019527978.tif 000010
【図８】
2019527978.tif 000011
【図９】
2019527978.tif 000012
【図１０】
2019527978.tif 000013
【図１１】
2019527978.tif 000014
【図１２】
2019527978.tif 000015
【図１３】
2019527978.tif 000016
【図１４】
2019527978.tif 000017
【図１５】
2019527978.tif 000018
【図１６】
2019527978.tif 000019
【国際調査報告】
2019527978.tif 000020
2019527978.tif 000021