TW201907671A - Shift coefficient table design for QC-LDPC codes for large block size in mobile communication - Google Patents

Shift coefficient table design for QC-LDPC codes for large block size in mobile communication Download PDF

Info

Publication number
TW201907671A
TW201907671A TW107122310A TW107122310A TW201907671A TW 201907671 A TW201907671 A TW 201907671A TW 107122310 A TW107122310 A TW 107122310A TW 107122310 A TW107122310 A TW 107122310A TW 201907671 A TW201907671 A TW 201907671A
Authority
TW
Taiwan
Prior art keywords
shift coefficient
coefficient table
processor
codebook
shift
Prior art date
Application number
TW107122310A
Other languages
Chinese (zh)
Other versions
TWI690169B (en
Inventor
傑費斯 提摩西 培林 費雪
李重佑
邱茂清
陳威任
陳儒雅
Original Assignee
聯發科技股份有限公司
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 聯發科技股份有限公司 filed Critical 聯發科技股份有限公司
Publication of TW201907671A publication Critical patent/TW201907671A/en
Application granted granted Critical
Publication of TWI690169B publication Critical patent/TWI690169B/en

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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6306Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • HELECTRICITY
    • 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/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • 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
    • H04L1/0068Rate matching by puncturing

Abstract

A processor of an apparatus establishes a wireless communication link with at least one other apparatus via a transceiver of the apparatus. The processor wirelessly communicates with the other apparatus via the wireless communication link by: selecting a first shift-coefficient table from a plurality of shift-coefficient tables; generating a QC-LDPC code using a base matrix and at least a portion of the first shift-coefficient table; selecting a codebook from a plurality of codebooks embedded in the QC-LDPC code; storing the selected codebook in a memory associated with the processor; encoding data using the selected codebook to generate a plurality of modulation symbols of the data; and controlling the transceiver to multiplex, convert, filter, amplify and radiate the modulation symbols as electromagnetic waves through one or more antennas of the apparatus to transmit the modulation symbols of the data to the other apparatus via the wireless communication link.

Description

在移動通信中用於大碼塊尺寸的QC-LDPC碼的移位係數表設計Design of shift coefficient table for QC-LDPC codes for large code block sizes in mobile communications

本發明整體關於移動通信,尤其涉及在移動通信中用於較大碼塊尺寸的准迴圈低密度奇偶校驗(quasi-cyclic low-density parity-check,QC-LDPC)碼的移位係數表設計。The present invention relates generally to mobile communications, and in particular, to a shift coefficient table for quasi-cyclic low-density parity-check (QC-LDPC) codes used in mobile communications for larger code block sizes. design.

除非本文另有說明,否則本部分中描述的方法不是下面列出的請求項的先前技術,並且不能由於包含在本部分中而作為先前技術。Unless otherwise stated in this article, the methods described in this section are not prior art to the claims listed below, and should not be considered as prior art by inclusion in this section.

第三代合作夥伴計畫(3GPP)已經批准了加速第五代(5G)新無線電(NR)規範的開發的計畫,因此可以預期基於標準的5G NR無線通訊服務可以在不久的將來推出。3GPP還同意QC-LDPC將用於5G NR資料通道。然而,尚未定義關於如何可以實現基於QC-LDPC的編碼(例如,編碼和解碼)的細節。The 3rd Generation Partnership Project (3GPP) has approved plans to accelerate the development of 5th Generation (5G) new radio (NR) specifications, so it is expected that standards-based 5G NR wireless communication services may be launched in the near future. 3GPP also agreed that QC-LDPC will be used for the 5G NR data channel. However, details on how QC-LDPC-based encoding (eg, encoding and decoding) can be implemented have not been defined.

以下概述僅是說明性的,並不旨在以任何方式進行限制。 也就是說,提供以下概述以介紹本文描述的新穎和非顯而易見的技術的概念,要點,益處和優點。下面在詳細描述中進一步描述選擇實現。 因此,以下概述並非旨在標識所要求保護的主題的必要特徵,也不旨在用於確定所要求保護的主題的範圍。The following overview is illustrative only and is not intended to be limiting in any way. That is, the following overview is provided to introduce the concepts, gist, benefits, and advantages of the novel and non-obvious technologies described herein. The selection implementation is further described in the detailed description below. Therefore, the following summary is not intended to identify essential features of the claimed subject matter, nor is it intended to be used to determine the scope of the claimed subject matter.

在一個方面,無線通訊的方法可以涉及裝置的處理器經由該裝置的收發器與至少一個其他裝置建立無線通訊鏈路。該方法也可以涉及處理器通過如下方式經由該無線通訊鏈路與其他裝置進行無線通訊:(a)從複數個移位係數表中選擇第一移位係數表;(b)使用基本矩陣和第一移位係數表的至少一部分產生QC-LDPC碼;(c)從嵌入在QC-LDPC碼的複數個碼本中選擇碼本;(d)存儲所選擇的碼本至與所述處理器相關的記憶體;(e)使用所選擇的碼本對資料編碼以產生所述資料的複數個調製符號;以及(f)控制收發器對調製符號進行複用,轉換,濾波,放大和通過裝置的一個或者複數個天線輻射所述調製符號作為電磁波,以便經由無線通訊鏈路發射所述資料的調製符號到所述其他裝置。在從所述複數個移位係數表中選擇第一移位係數表時,該方法進一步涉及處理器根據與碼塊尺寸和資料的碼率中的任一個或者兩個相關的一個或者複數個規則,選擇用於相對較大碼塊尺寸的所述第一移位係數表。In one aspect, a method of wireless communication may involve a processor of a device establishing a wireless communication link with at least one other device via a transceiver of the device. The method may also involve the processor performing wireless communication with other devices via the wireless communication link by: (a) selecting a first shift coefficient table from a plurality of shift coefficient tables; (b) using a basic matrix and a first At least a part of a shift coefficient table generates QC-LDPC codes; (c) selecting a codebook from a plurality of codebooks embedded in the QC-LDPC code; (d) storing the selected codebook to be relevant to the processor (E) encode the data using the selected codebook to generate a plurality of modulation symbols for the data; and (f) control the transceiver to multiplex, convert, filter, amplify, and pass the modulation symbols of the device One or more antennas radiate the modulation symbols as electromagnetic waves, so as to transmit the modulation symbols of the data to the other devices via a wireless communication link. When the first shift coefficient table is selected from the plurality of shift coefficient tables, the method further involves the processor according to one or a plurality of rules related to any one or two of the code block size and the code rate of the data. , Selecting the first shift coefficient table for a relatively large code block size.

值得注意的是,儘管下面在5G NR無線通訊的環境中提供了對所提出的方案和各種示例的描述,但是根據實施所適用的其他協定,標準和規範,所提出的概念,方案及其任何變形/衍生物可以在通信中實施。因此,所提出的方案的範圍不限於本文提供的描述。It is worth noting that although the descriptions of the proposed schemes and various examples are provided below in the context of 5G NR wireless communications, according to other agreements, standards and specifications applicable to the implementation, the proposed concepts, schemes and any of them Variations / derivatives can be implemented in communication. Therefore, the scope of the proposed scheme is not limited to the description provided herein.

本文公開了所要求保護的主題的詳細實施例和實施方式。 然而,應該理解的是,所公開的實施例和實施方式僅僅是對要求保護的主題的說明,其可以以各種形式體現。 然而,本公開可以以許多不同的形式實施,並且不應該被解釋為限於這裡闡述的示例性實施例和實施方式。 而是,提供這些示例性實施例和實現方式,使得本公開的描述是徹底和完整的,並且將向所屬領域具有通常知識者充分傳達本公開的範圍。 在以下描述中,可以省略公知特徵和技術的細節以避免不必要地模糊所呈現的實施例和實施方式。Detailed examples and implementations of the claimed subject matter are disclosed herein. It should be understood, however, that the disclosed embodiments and implementations are merely illustrative of the claimed subject matter and may be embodied in various forms. This disclosure may, however, be embodied in many different forms and should not be construed as limited to the exemplary embodiments and implementations set forth herein. Rather, these exemplary embodiments and implementations are provided so that the description of this disclosure is thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. In the following description, details of well-known features and techniques may be omitted to avoid unnecessarily obscuring the embodiments and implementations presented.

概述Overview

所提出的概念和方案一般涉及以下領域:多碼本嵌入式LDPC碼設計,混合正交LDPC層設計,極低碼率(CR)的QC-LDPC支持,核心(kernel)矩陣設計和移位係數設計。 混合正交LDPC層設計的領域包括准列(quasi-row)正交層設計和混合正交層設計的新概念和方案。 下面參考第1圖至第9圖提供對所提出的概念和方案的描述。The proposed concepts and solutions generally involve the following areas: multi-codebook embedded LDPC code design, mixed orthogonal LDPC layer design, extremely low code rate (CR) QC-LDPC support, kernel matrix design, and shift coefficients design. The areas of hybrid orthogonal LDPC layer design include new concepts and solutions for quasi-row orthogonal layer design and hybrid orthogonal layer design. A description of the proposed concepts and solutions is provided below with reference to FIGS. 1 to 9.

第1圖示出了根據本發明實施方式的示例性多碼本嵌入式LDPC碼設計。 參考第1圖,根據本發明的QC-LDPC碼的基本奇偶校驗矩陣(在本文中可互換地稱為“基本矩陣”)100可以具有嵌入其中的複數個碼本。FIG. 1 illustrates an exemplary multi-codebook embedded LDPC code design according to an embodiment of the present invention. Referring to FIG. 1, a basic parity check matrix of a QC-LDPC code (interchangeably referred to herein as a “base matrix”) 100 according to the present invention may have a plurality of codebooks embedded therein.

如第1圖所示,基本矩陣100可以包括:複數個奇偶位元的奇偶矩陣和複數個資訊位元的資訊矩陣。換句話說,基本矩陣100可以由奇偶矩陣和資訊矩陣定義,其中奇偶矩陣具有相對較少的非零/非空位元(每個在第1圖中由“1”表示)和大部分零/空位元(每個在第1圖中用“0”表示)。奇偶矩陣還可以在碼位元上定義一組線性約束。因此,嵌入在基本矩陣100的QC-LDPC碼中的複數個碼本中的每個碼本可以包括奇偶矩陣和相應尺寸的資訊矩陣的相應部分,使得複數個碼本的尺寸彼此不同。因此,無論尺寸如何,每個碼本可以構成基本矩陣的至少一部分。在第1圖所示的例子中,碼本可以由如下表示: 碼本= (I1 或者 I2 或者 I3) + PAs shown in FIG. 1, the basic matrix 100 may include a parity matrix of a plurality of parity bits and an information matrix of a plurality of information bits. In other words, the basic matrix 100 can be defined by a parity matrix and an information matrix, where the parity matrix has relatively few non-zero / non-empty bits (each represented by "1" in Figure 1) and most of the zero / empty bits Yuan (each represented by "0" in Figure 1). The parity matrix can also define a set of linear constraints on the code bits. Therefore, each of the plurality of codebooks embedded in the QC-LDPC code of the basic matrix 100 may include a parity matrix and a corresponding portion of a correspondingly sized information matrix, so that the sizes of the plurality of codebooks are different from each other. Therefore, regardless of the size, each codebook can constitute at least a part of the basic matrix. In the example shown in Figure 1, the codebook can be represented as follows: Codebook = (I1 or I2 or I3) + P

標記“I1”表示資訊矩陣的第一部分,標記“I2”表示資訊矩陣的第二部分,標記“I3”表示資訊矩陣的第三部分,標記“P” 表示奇偶矩陣。 這裡,I1的尺寸(例如,就位元的數目和/或記憶體的尺寸而言)大於I2的尺寸,I2的尺寸大於 I3的尺寸。The mark "I1" represents the first part of the information matrix, the mark "I2" represents the second part of the information matrix, the mark "I3" represents the third part of the information matrix, and the mark "P" represents the parity matrix. Here, the size of I1 (for example, in terms of the number of bits and / or the size of the memory) is larger than the size of I2, and the size of I2 is larger than the size of I3.

所得到的碼本的尺寸可以依據與奇偶矩陣一起形成碼本的部分資訊矩陣的尺寸而變化。值得注意的是,雖然第1圖所示實施例描述了由於I1 + P, I2 + P和 I3 + P的組合而形成的不同尺寸的三個碼本,但是根據本發明各種實施方式,不同尺寸的碼本的數目並不限於三個(可能少於三個或者多於三個)。The size of the obtained codebook can be changed according to the size of a part of the information matrix that forms the codebook together with the parity matrix. It is worth noting that although the embodiment shown in FIG. 1 describes three codebooks of different sizes due to the combination of I1 + P, I2 + P, and I3 + P, according to various embodiments of the present invention, different sizes The number of codebooks is not limited to three (may be less than three or more than three).

在一些實施方式中,複數個碼本中的每一個碼本可以對應複數個混合自動重傳請求(automatic repeat request,HARQ)線程(thread)中的相應HARQ線程,其中複數個HARQ線程彼此不同。例如,第一碼本可以對應第一HARQ線程,該第一碼本的取值範圍為0.33~0.89。第二碼本可以對應第二HARQ線程,該第二碼本的取值範圍為0.2 ~ 0.66。第三碼本可以對應第三HARQ線程,第三碼本具有少於400的小碼塊尺寸。所以,在兩個通信設備之間的基於HARQ的通信中,複數個HARQ線程中的每一個HARQ線程可以與複數個碼本的相應碼本相關或者以其他方式相關聯。所以,可以識別出在基於HARQ的通信中當前所使用的HARQ線程。相應的,可以選擇出複數個碼本中的一個碼本,該複數個碼本中的一個碼本對應識別出的HARQ線程,以用於對資料進行編碼,以用於發送。In some implementations, each of the plurality of codebooks may correspond to a corresponding HARQ thread in a plurality of hybrid automatic repeat request (HARQ) threads, where the plurality of HARQ threads are different from each other. For example, the first codebook may correspond to the first HARQ thread, and the value of the first codebook ranges from 0.33 to 0.89. The second codebook can correspond to a second HARQ thread, and the value of the second codebook ranges from 0.2 to 0.66. The third codebook may correspond to a third HARQ thread, and the third codebook has a small code block size of less than 400. Therefore, in the HARQ-based communication between two communication devices, each HARQ thread of the plurality of HARQ threads may be related to or corresponding to the corresponding codebook of the plurality of codebooks. Therefore, the HARQ thread currently used in HARQ-based communication can be identified. Correspondingly, a codebook among a plurality of codebooks may be selected, and a codebook in the plurality of codebooks corresponds to the identified HARQ thread for encoding the data for transmission.

在一些實施方式中,複數個碼本中的每個碼本對應一個或者複數個寄存器,一個或者複數個緩衝器,一個或者複數個緩存(Cache),和/或一個或者複數個記憶體單元中相應的存儲(memory)尺寸(Kb)。例如,第一碼本可以對應第一存儲尺寸Kb = 16。第二碼本可以對應第二存儲尺寸Kb = 12。第三碼本可以對應第三存儲尺寸Kb =5。在根據本發明提出的方案中,如果對應大存儲(memory)尺寸的大碼本(例如,由於將被編碼的資料的碼塊尺寸相對較大,或者由於初始碼率相對較高)對於編碼不是必須的,可以選擇對應於小存儲尺寸的小碼本,以用於編碼。所以,可以避免使用大於所需的存儲空間(由於大於所需的碼本正被選擇出),所以縮短編碼的處理延遲。In some embodiments, each codebook of the plurality of codebooks corresponds to one or more registers, one or more buffers, one or more caches, and / or one or more memory units. The corresponding memory size (Kb). For example, the first codebook may correspond to the first storage size Kb = 16. The second codebook may correspond to the second storage size Kb = 12. The third codebook may correspond to the third storage size Kb = 5. In the solution proposed according to the present invention, if a large codebook corresponding to a large memory size (for example, because the code block size of the material to be encoded is relatively large, or because the initial code rate is relatively high) is not suitable for encoding It is necessary to select a small codebook corresponding to a small storage size for encoding. Therefore, it is possible to avoid using a storage space larger than required (because a codebook larger than required is being selected), thereby shortening the processing delay of the encoding.

在一些實施方式中,所有碼本可以共用一個基本矩陣,採用不同填零(zero-padding)尺寸。在一些實施方式中,不同碼本可以對應不同的移位係數設計或者共用一個移位係數設計。In some implementations, all codebooks can share a basic matrix and use different zero-padding sizes. In some embodiments, different codebooks may correspond to different shift coefficient designs or share a single shift coefficient design.

在一些實施方式中,根據用於傳輸資料的初始碼率,資料的碼塊尺寸,或者兩者,選擇將使用複數個碼本中的哪個碼本。在一些實施方式中,如果對應大量編碼處理延遲的大碼本對於編碼不是必須的,為了在通信設備中縮短編碼的處理延遲,選擇碼本以使得需要少量編碼處理延遲的小碼本來編碼。In some implementations, which one of the plurality of codebooks will be selected based on the initial code rate used to transmit the data, the code block size of the data, or both. In some embodiments, if a large codebook corresponding to a large number of encoding processing delays is not necessary for encoding, in order to shorten the encoding processing delay in the communication device, the codebook is selected such that a small codebook requiring a small amount of encoding processing delay is encoded.

第2圖示出基於本發明實施方式的與多碼本嵌入式LDPC碼設計相關的示例邏輯流程200。邏輯流程200可以在編碼器或者處理器中實施,或者被編碼器或者處理器實施,以實現本發明所提出的概念和/或方案的各種特徵和/或方面。更具體的,邏輯流程200可以涉及在從複數個嵌入在QC-LDPC碼的基本矩陣的複數個碼本中選擇碼本所使用的一個或者複數個規則,使得如果對應編碼的處理延遲量大的大碼本對於編碼不是必須的,選擇需要編碼的處理延遲量少的小碼本來編碼。邏輯流程200可以包括由塊210,220,230,240和250中的一個或複數個表示的一個或複數個操作,動作或功能。雖然被示為離散塊,但是依賴於想要的實施方式,邏輯流程200的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。邏輯流程200可以被如下描述的第一裝置1005和第二裝置1050中的每一個實施。僅出於說明性目的而不限於範圍,邏輯流程200的描述被以在第二裝置1050的環境中提供。邏輯流程200可以開始於210。FIG. 2 illustrates an example logic flow 200 related to the design of a multi-codebook embedded LDPC code based on an embodiment of the present invention. The logic flow 200 may be implemented in or by an encoder or processor to implement various features and / or aspects of the concepts and / or solutions proposed by the present invention. More specifically, the logic flow 200 may involve selecting one or a plurality of rules used in a codebook from a plurality of codebooks embedded in a basic matrix of a QC-LDPC code, so that if the processing delay of the corresponding encoding is large, A large codebook is not necessary for encoding, and a small codebook with a small amount of processing delay to be encoded is selected for encoding. The logic flow 200 may include one or more operations, actions, or functions represented by one or more of the blocks 210, 220, 230, 240, and 250. Although shown as discrete blocks, depending on the desired implementation, the various blocks of the logic flow 200 can be divided into additional blocks, merged into fewer blocks, or deleted. The logic flow 200 may be implemented by each of the first device 1005 and the second device 1050 described below. For illustrative purposes only and not limited in scope, the description of the logic flow 200 is provided in the context of the second device 1050. The logic flow 200 may begin at 210.

在210,邏輯流程200可以涉及第二裝置1050確定將被編碼的資料的碼塊尺寸是否小於閾值碼塊尺寸。在確定資料的碼塊尺寸小於閾值碼塊尺寸的情況下,邏輯流程200可以從210執行到220。在確定資料的碼塊尺寸不小於閾值碼塊尺寸的情況下,邏輯流程200可以從210執行到230。At 210, the logic flow 200 may involve the second device 1050 determining whether a code block size of the material to be encoded is smaller than a threshold code block size. When it is determined that the code block size of the data is smaller than the threshold code block size, the logic flow 200 may be executed from 210 to 220. When it is determined that the code block size of the data is not less than the threshold code block size, the logic flow 200 may be executed from 210 to 230.

在220,邏輯流程200可以涉及第二裝置1050選擇複數個碼本中的第一碼本。At 220, the logic flow 200 may involve the second device 1050 selecting a first codebook among the plurality of codebooks.

在230,邏輯流程200可以涉及第二裝置1050確定用於傳輸資料的初始碼率是否比閾值碼率大。在確定初始碼率不大於閾值碼率的情況下,邏輯流程200可以從230執行到240。在確定初始碼率大於閾值碼率的情況下,邏輯流程200可以從230執行到250。At 230, the logic flow 200 may involve the second device 1050 determining whether the initial code rate for transmitting data is greater than a threshold code rate. When it is determined that the initial code rate is not greater than the threshold code rate, the logic flow 200 may be executed from 230 to 240. In the case where it is determined that the initial code rate is greater than the threshold code rate, the logic flow 200 may be executed from 230 to 250.

在240,邏輯流程200可以涉及第二裝置1050選擇複數個碼本中的第二碼本。At 240, the logic flow 200 may involve the second device 1050 selecting a second codebook among the plurality of codebooks.

在250,邏輯流程200可以涉及第二裝置1050選擇複數個碼本中的第三碼本。At 250, the logic flow 200 may involve the second device 1050 selecting a third codebook among the plurality of codebooks.

在此處,第三碼本的尺寸比第二碼本的尺寸大。另外,第二碼本的尺寸比第一碼本的尺寸大。所以,如果對應大存儲尺寸的大碼本(例如,碼塊尺寸大於閾值碼塊尺寸或者初始碼率大於閾值碼率)對於編碼不是必須的,邏輯流程200將選擇對應於小存儲尺寸的小碼本,由此最小化用於存儲所選碼本的存儲量或者存儲尺寸。也就是說,邏輯流程200可以幫忙縮短編碼的處理延遲。Here, the size of the third codebook is larger than that of the second codebook. In addition, the size of the second codebook is larger than that of the first codebook. Therefore, if a large codebook corresponding to a large storage size (for example, a code block size larger than a threshold code block size or an initial code rate larger than a threshold code rate) is not necessary for encoding, the logic flow 200 will select a small code corresponding to a small storage size This reduces the amount of storage or storage size used to store the selected codebook. That is, the logic flow 200 can help reduce the processing delay of the encoding.

第3圖示出基於本發明實施方式的示例性准列(quasi-row)正交層設計300。正交性(Orthogonality)有利於LDPC解碼器的輸送量(throughput)效率。在LDPC碼中,幾個列(row)可以被分組到一起,以形成一層,並且在該層中的每一行(column)的度數可以是1或者0(即,正交性)。在此情形下,該層被稱為純列正交層(pure row orthogonal layer)。FIG. 3 illustrates an exemplary quasi-row orthogonal layer design 300 based on an embodiment of the present invention. Orthogonality is beneficial to the throughput efficiency of the LDPC decoder. In the LDPC code, several rows can be grouped together to form a layer, and the degree of each column in the layer can be 1 or 0 (that is, orthogonality). In this case, this layer is called a pure row orthogonal layer.

參閱第3圖,在准列正交層設計300中,幾個列可以被分組在一起以形成准列(quasi-row)正交層,例如第3圖所示的層1,層2,層3和層4。在這個例子中,除了一個或者複數個打孔行(punctured column)之外,在層1,層2,層3和層4中每一個層中的每一行(column)可以是度數1或者0(即,正交性)。在第3圖的(A) 部分所示的例子中,兩個最左側行(column)是打孔行。在層1,層2,層3和層4的每一個層中其他行(column)中的每一個是度數1或者0(即,具有一個或者0個非零/非空(non-null)位元,用“1”表示,並且其他位元是零/空,用“0”表示)。有利的是,准列正交層設計300提供正交性,幫助改善解碼器輸送量中的效率。Referring to FIG. 3, in the quasi-column orthogonal layer design 300, several columns can be grouped together to form a quasi-row orthogonal layer, such as layer 1, layer 2, and layer shown in FIG. 3 3 and layer 4. In this example, in addition to one or more punctured columns, each column in each of the layers 1, 2, 3, and 4 can be a degree of 1 or 0 ( (Ie, orthogonality). In the example shown in part (A) of Figure 3, the two leftmost rows (column) are the punched rows. Each of the other columns in each of layers 1, 2, 3, and 4 is a degree 1 or 0 (that is, has one or zero non-null bits (1), and the other bits are zero / empty, represented by "0"). Advantageously, the quasi-column orthogonal layer design 300 provides orthogonality, helping to improve efficiency in decoder throughput.

而且,在准列正交層設計300,在准列正交層中的打孔行中沒有環(circle)。在第3圖的(B) 部分所示的例子中,根據本發明,由於在兩個打孔行(column)中存在環,相應的層不被認為是准列正交層。Moreover, in the quasi-column orthogonal layer design 300, there are no circles in the perforated rows in the quasi-column orthogonal layer. In the example shown in part (B) of FIG. 3, according to the present invention, the corresponding layer is not considered to be a quasi-column orthogonal layer due to the presence of a ring in two perforated rows.

第4圖是基於本發明實施方式示出的示例性混合正交層設計400。在混合正交層設計400中,QC-LDPC碼可以包括不同度數正交性的複數個部分(portions)。在第4圖所示例子中,較暗色塊代表位元1,較淺色塊代表位元0。例如,複數個部分中的第一部分可以是低度數正交並且可以對應高碼率。相似的,複數個部分的第二部分可以是中等度數正交,並且可以對應中等碼率。相似的,複數個部分的第三部分可以是高度數正交,並且可以對應低碼率。FIG. 4 is an exemplary hybrid orthogonal layer design 400 shown based on an embodiment of the present invention. In the hybrid orthogonal layer design 400, the QC-LDPC code may include a plurality of ports with different degrees of orthogonality. In the example shown in Figure 4, the darker blocks represent bit 1 and the lighter blocks represent bit 0. For example, the first part of the plurality of parts may be low degree orthogonal and may correspond to a high code rate. Similarly, the second part of the plurality of parts may be medium degree orthogonal and may correspond to a medium code rate. Similarly, the third part of the plurality of parts may be orthogonal in height and may correspond to a low bit rate.

在第4圖所示例子中,不同正交度數的複數個部分包括如下:(1)非列(non-row)正交部分,其包括複數個行和複數個列,該複數個行和複數個列形成對應相對較高碼率的至少一個非列(non-row)正交層;(2)准列正交部分,其包括複數個行和複數個列,該複數個行和複數個列形成對應中等碼率的至少一個准列正交層;(3)純列(pure-row)正交部分,其包括複數個行和複數個列,該複數個行和複數個列形成對應相對較低碼率的至少一個純列正交層。此處,非列(non-row)正交部分中的複數個行(column)中的每一個行是度數為2或者更高的行。此外,准列正交部分的複數個行中的一個或者多個行包括度數為2或者更高的打孔行。而且,准列正交部分的複數個行中的剩餘行可以包括度數為1或者0的非打孔行。而且,純列正交部分的複數個行中的每一個行包括度數為1或者0的行。In the example shown in Figure 4, the plural parts of different degrees of orthogonality include the following: (1) non-row orthogonal parts, which include plural rows and plural columns, the plural rows and plural numbers The columns form at least one non-row orthogonal layer corresponding to a relatively high code rate; (2) a quasi-column orthogonal portion including a plurality of rows and a plurality of columns, the plurality of rows and the plurality of columns Forming at least one quasi-column orthogonal layer corresponding to a medium code rate; (3) a pure-row orthogonal portion, which includes a plurality of rows and a plurality of columns, and the plurality of rows and the plurality of columns form a corresponding comparison Low bit rate of at least one pure column orthogonal layer. Here, each of a plurality of columns in a non-row orthogonal portion is a row having a degree of 2 or higher. In addition, one or more of the plurality of rows of the quasi-column orthogonal portion include perforated rows having a degree of 2 or higher. Moreover, the remaining rows of the plurality of rows of the quasi-column orthogonal portion may include non-punctured rows having a degree of 1 or 0. Moreover, each of the plurality of rows of the pure column orthogonal portion includes rows having a degree of 1 or 0.

第5圖示出基於本發明實施方式的支援極低碼率的示例QC-LDPC碼500。參考第5圖,QC-LDPC碼500可以包括複數個奇偶位元的奇偶矩陣和複數個資訊位元的資訊矩陣。資訊矩陣可以包括每一列位元度數為2的一個或者複數個列(row) 的位元。而且,度數為2的一個或者複數個列(row) 位元中度數為2的位元中的每一個位元可以是之前使用的奇偶位元或者之前傳輸的資訊位元。而且,對於極低碼率,一個或者複數個之前的傳輸可以被重傳。相應的,擴展列(row)可以具有權重2。檢查節點分裂以用於具有大權重的列(row)。FIG. 5 illustrates an example QC-LDPC code 500 supporting an extremely low code rate based on an embodiment of the present invention. Referring to FIG. 5, the QC-LDPC code 500 may include a parity matrix of a plurality of parity bits and an information matrix of a plurality of information bits. The information matrix may include bits of one or a plurality of rows with a bit degree of 2 in each column. Moreover, each of the bits of degree 2 in one or a plurality of row bits of degree 2 may be a previously used parity bit or a previously transmitted information bit. Moreover, for very low bit rates, one or more previous transmissions can be retransmitted. Accordingly, an extended row can have a weight of 2. Check node splitting for rows with large weights.

第6圖示出根據本發明一實施方式的示例核心矩陣設計600。請參考第6圖,在核心矩陣設計600中,QC-LDPC碼可以包含一基本矩陣,該基本矩陣的一部分形成對應於至少一閾值的碼率的核心矩陣。例如,在第6圖所示的示例中,該核心矩陣支持碼率0.89。FIG. 6 illustrates an example core matrix design 600 according to an embodiment of the invention. Please refer to FIG. 6. In the core matrix design 600, the QC-LDPC code may include a basic matrix, and a part of the basic matrix forms a core matrix corresponding to at least a threshold code rate. For example, in the example shown in Figure 6, the core matrix supports a code rate of 0.89.

第7圖示出根據本發明一實施方式的核心基本矩陣的示例概念700。請參考第7圖,該核心矩陣可以包含複數個位元的複數個列和複數個行,其中有兩個或更多個行(column)為打孔行,該複數個打孔行具有特定的位元樣式(例如,一個或複數個位元0)。在一些實施方式中,複數個打孔行中的特定的位元樣式可以包含複數個位元0所形成的等腰(isosceles)直角三角形,該三角形的直角對應於該複數個打孔行的左上角處的位元0。FIG. 7 illustrates an example concept 700 of a core basic matrix according to an embodiment of the present invention. Please refer to FIG. 7, the core matrix may include a plurality of bits, a plurality of columns, and a plurality of rows. Among them, two or more rows are perforated rows, and the plurality of perforated rows have a specific Bit style (for example, one or more bits 0). In some embodiments, the specific bit pattern in the plurality of punched rows may include an isosceles right-angled triangle formed by the plurality of bit 0, and the right angle of the triangle corresponds to the upper left of the plurality of punched rows. Bit 0 in the corner.

核心矩陣可以包括奇偶矩陣,該奇偶矩陣包括複數個行和複數個列的複數個位元。該核心矩陣也可以包括資訊矩陣,該資訊矩陣包括複數個行和複數個列的複數個位元。奇偶矩陣可以包括具有Wi-Fi樣式的矩陣(例如,類似Wi-Fi的奇偶矩陣)。而且,資訊矩陣的多於一個列(row)的複數個位元可以包括具有高密度的位元1而沒有或者具有一個位元0的複數個列(row)。該複數個列的底部列的位元可以包括第一數量的位元1。第一數量可以等於打孔行的數量或者比打孔行(column)的數量大1。The core matrix may include a parity matrix including a plurality of bits of a plurality of rows and a plurality of columns. The core matrix may also include an information matrix including a plurality of bits of a plurality of rows and a plurality of columns. The parity matrix may include a Wi-Fi-like matrix (for example, a Wi-Fi-like parity matrix). Moreover, the plurality of bits of more than one column of the information matrix may include bit 1 having a high density without or having a plurality of rows of one bit 0. The bits in the bottom column of the plurality of columns may include a first number of bits 1. The first number may be equal to the number of perforated rows or greater than the number of perforated rows.

在第7圖的部分(A)所示出的例子中,最初幾列(row)(例如3個列)由類似Wi-Fi的奇偶矩陣組成,並且資訊矩陣具有超高密度的位元1。特別的,在資訊矩陣中的每一個列所包括的位元,如果不是全部為位元1,則大部分為位元1,不具有0或者具有1個0。在任意次數之列置換(permutation)及/或行置換(例如,至少一列置換、至少一行置換、或其組合)後,打孔行包括一個或複數個位元0的特定樣式。底部列(row)可以具有3或者4個邊緣塊,一個邊緣塊(edge block)可以對應於奇偶(parity)變量節點(Variable Node, VN)塊。兩個邊緣塊可以對應於兩個打孔行(例如,VN0和VN1)。在存在四個邊緣塊的情形下,第四個邊緣塊可以被加入以增加最短距離。In the example shown in part (A) of FIG. 7, the first few rows (for example, three columns) are composed of Wi-Fi-like parity matrices, and the information matrix has bit 1 of ultra-high density. In particular, if not all the bits included in each column in the information matrix are bit 1, most of them are bit 1, and do not have 0 or have 1 0. After any number of column permutations and / or row permutations (for example, at least one column permutation, at least one row permutation, or a combination thereof), the perforated row includes a specific pattern of one or more bits 0. The bottom row can have 3 or 4 edge blocks, and an edge block can correspond to a parity variable node (VN) block. Two edge blocks may correspond to two punched rows (for example, VN0 and VN1). Where there are four edge blocks, a fourth edge block can be added to increase the shortest distance.

在第7圖的部分(B)所示的例子中,顯示了打孔行的一示例樣式。對於尺寸為m x n(m列乘n行)的基本矩陣,並假設p行被打孔,使用複數個位元0的等腰直角三角形來構建一m x p矩陣,該三角形的直角對應於該複數個打孔行的一左上角處的位元0。該打孔行中的其它位元可以被隨機選擇為0或1。由於可能執行行置換和/或列置換,因此,特定樣式的實際位置有可能與該打孔行的左上角不同。In the example shown in part (B) of FIG. 7, an example pattern of a punch line is shown. For a basic matrix of size mxn (m columns by n rows), and assuming that p rows are perforated, use an isosceles right-angled triangle with bit 0 to build an mxp matrix whose right angles correspond to the plural Bit 0 at the top left corner of the hole row. The other bits in the punctured row can be randomly selected as 0 or 1. Since row and / or column replacement may be performed, the actual position of a particular pattern may be different from the upper left corner of the punched row.

第8圖是基於本發明另一實施方式示出核心基本矩陣的示例概念800。在概念800,核心基本矩陣包括Wi-Fi樣式(或者類似Wi-Fi樣式的奇偶矩陣),打孔行(column),和資訊矩陣的剩餘部分。資訊矩陣的剩餘部分可以使用多個度數分佈(degree distributions)中的一個來設計。例如,核心矩陣可以包括5列(row)位元和20行(column)位元。20行位元的變數節點(VN)度數可以包括如下中一個:[2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], 和 [2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]。5列(row)位元的檢驗節點(CN)度數可以包括如下中一個:[13, 10, 14, 17, 2], [13, 10, 13, 17, 2], [13, 10, 13, 18, 3], [13, 11, 13, 18, 2], [13, 10, 14, 18, 2], [13, 10, 13, 19, 2], [14, 10, 13, 18, 1], [13, 11, 13, 18, 1], [13, 10, 14, 18, 1], [13, 11, 13, 19, 1], [13, 10, 13, 18, 2], 和[13, 10, 13, 18, 1]。FIG. 8 is an example concept 800 showing a core basic matrix based on another embodiment of the present invention. In Concept 800, the core basic matrix includes a Wi-Fi style (or a Wi-Fi-like parity matrix), a punctured column, and the rest of the information matrix. The remainder of the information matrix can be designed using one of a number of degree distributions. For example, the core matrix may include 5 row bits and 20 column bits. The 20-bit variable node (VN) degree can include one of the following: [2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3] , [2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], and [2, 2, 3 , 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]. The test node (CN) degree of 5 rows can include one of the following: [13, 10, 14, 17, 2], [13, 10, 13, 17, 2], [13, 10, 13 18, 3], [13, 11, 13, 18, 2], [13, 10, 14, 18, 2], [13, 10, 13, 19, 2], [14, 10, 13, 18 , 1], [13, 11, 13, 18, 1], [13, 10, 14, 18, 1], [13, 11, 13, 19, 1], [13, 10, 13, 18, 2 ], And [13, 10, 13, 18, 1].

第9圖是基於本發明實施方式示出移位係數設計900。對每一個提升因子(lifting factor),存在相應移位值的表。不同提升因子中的表可以被嵌套設計(nested design)。在移位係數設計900中,提升因子的有效集合可以被定義,以用於在LDPC編碼中使用。在第9圖所示出的例子中,提升因子的有效集合包括:如下不同值的提升因子:Z = 16, Z = 24, Z = 32, Z = 48, Z = 64, Z = 96, Z = 128, Z = 192, Z = 256 和Z = 384。在移位係數設計900中,提升因子的有效集合可以被優化來獲得提升因子的優化集合。在優化集合中的提升因子的數目是小於在有效集合中的提升因子的數目的。優化集合之移位係數表可以被使用為最接近且小於或等於提升因子之移位係數表。例如,被設計用於提升因子Z = 32的移位值的表可以被提升因子Z =48共用。相似的,被設計用於提升因子Z = 128的移位值的表可以被提升因子Z = 192共用。FIG. 9 shows a shift coefficient design 900 based on an embodiment of the present invention. For each lifting factor, there is a table of corresponding shift values. Tables in different boosting factors can be nested design. In the shift coefficient design 900, an effective set of boost factors may be defined for use in LDPC encoding. In the example shown in Figure 9, the effective set of boost factors includes: boost factors with different values: Z = 16, Z = 24, Z = 32, Z = 48, Z = 64, Z = 96, Z = 128, Z = 192, Z = 256 and Z = 384. In the shift coefficient design 900, the effective set of boost factors can be optimized to obtain an optimized set of boost factors. The number of boost factors in the optimized set is less than the number of boost factors in the effective set. The shift coefficient table of the optimized set can be used as the shift coefficient table that is closest to and less than or equal to the boost factor. For example, a table designed for shift values of the boosting factor Z = 32 may be shared by the boosting factor Z = 48. Similarly, tables designed for shift values of boost factor Z = 128 can be shared by boost factor Z = 192.

為了說明目的而不是限制,在基於本發明的LDPC碼本中,使用ZҲ = { a x 2j }a{9, 11, 13, 15}, j{0, 1, 2, 3, 4, 5},提升因子的優化集合(Z)可以被定義為4組。使用Zφ = { a x 2j }a{9, 10, 11, 12, 13, 14, 15, 16}, j{0, 1, 2, 3, 4, 5},提升因子的有效集合可以被定義為8組。相應的移位值可以由4個移位係數表代表,該4個移位係數表代表可以對應到移位係數{288, 352, 416, 480}。對於有效集合φ中的任何提升因子Z = a x 2j ,相應的移位係數可以通過pz m,n = (pm,n mod Ẑ) + f(Z)獲得,其中,pm,n 是â x 25 的移位係數表中第(m,n)個元素的移位係數,其中â是{9, 11, 13, 15}中的最大值且â小於或者等於a,並且Ẑ = â x 2j 。而且,f(Z)為擾動(perturbation),是Z的函數,並可使用一表來表示。For the purpose of illustration and not limitation, in the LDPC codebook based on the present invention, Z is used Ҳ = {ax 2 j } a {9, 11, 13, 15}, j {0, 1, 2, 3, 4, 5}, the optimization set (Z) of the lifting factors can be defined as 4 groups. Use Z φ = {ax 2 j } a {9, 10, 11, 12, 13, 14, 15, 16}, j {0, 1, 2, 3, 4, 5}, the effective set of boost factors can be defined as 8 groups. The corresponding shift values can be represented by four shift coefficient tables, which represent the corresponding shift coefficients {288, 352, 416, 480}. For any lifting factor Z = ax 2 j in the effective set φ, the corresponding shift coefficient can be obtained by p z m, n = (p m, n mod Ẑ) + f (Z), where p m, n is The shift coefficient of the (m, n) th element in the shift coefficient table of â x 2 5 where â is the maximum value of {9, 11, 13, 15} and â is less than or equal to a, and Ẑ = â x 2 j . Moreover, f (Z) is a perturbation, a function of Z, and can be expressed using a table.

提升因子的使用允許使用相對小的基本矩陣集合(set)和相對小的提升因子集合,編碼各種尺寸的封包。例如,基本矩陣尺寸m x n可以被用於編碼多達k = n – m資訊位元的封包,以獲得n個碼位元的編碼封包或者碼字。使用提升因子Z,基本矩陣可以被擴展(lift),以產生擴展的維度為Z·m x Z·n的奇偶校驗矩陣。擴展的奇偶校驗矩陣然後可以被利用來編碼多達Z·k資訊位元的封包,以獲得Z·n碼位元的碼字。而且,使用提升因子也可以允許有效的平行編碼和解碼,由此改善性能,以及減少用於大尺寸的LDPC碼的描述複雜性。The use of boost factors allows encoding of packets of various sizes using a relatively small set of basic matrices and a relatively small set of boost factors. For example, the basic matrix size m x n can be used to encode packets of up to k = n-m information bits to obtain an encoded packet or codeword of n code bits. Using the lifting factor Z, the basic matrix can be lifted to generate a parity check matrix with an expanded dimension Z · m x Z · n. The extended parity check matrix can then be utilized to encode packets of up to Z · k information bits to obtain a codeword of Z · n code bits. Moreover, using a boost factor can also allow efficient parallel encoding and decoding, thereby improving performance, and reducing the description complexity for large-sized LDPC codes.

用於較大碼塊尺寸的移位係數表設計Design of shift coefficient table for larger code block sizes

為了說明目的,第15(A)圖-第22(B)圖示出用於相對較大的碼塊尺寸的複數個示例性移位係數表。For illustrative purposes, Figures 15 (A)-22 (B) illustrate a plurality of exemplary shift coefficient tables for relatively large code block sizes.

第15(A)圖-第15(B)圖中的每一個是基於本發明實施方式的示例性移位係數表1500的一部分的示意圖。特別的,移位係數表1500由第15A圖中的(A)部分和第15B圖中的(B)部分組成。而且,移位係數表1500可以對應基礎圖表1(BG1),該基礎圖表1(BG1)具有原始(primitive)元素7(a = 7)和提升因子224。Each of FIGS. 15 (A) to 15 (B) is a schematic diagram of a part of an exemplary shift coefficient table 1500 based on an embodiment of the present invention. Specifically, the shift coefficient table 1500 is composed of part (A) in FIG. 15A and part (B) in FIG. 15B. Moreover, the shift coefficient table 1500 may correspond to a base chart 1 (BG1), which has a primitive element 7 (a = 7) and a boosting factor 224.

第16(A)圖-第16(B)圖中的每一個是基於本發明實施方式的示例性移位係數表1600的一部分的示意圖。特別的,移位係數表1600由第16A圖中的(A)部分和第16B圖中的(B)部分組成。而且,移位係數表1600可以對應具有原始元素15(a = 15)和提升因子240的BG1。Each of FIGS. 16 (A) to 16 (B) is a schematic diagram of a part of an exemplary shift coefficient table 1600 based on an embodiment of the present invention. Specifically, the shift coefficient table 1600 is composed of part (A) in FIG. 16A and part (B) in FIG. 16B. Moreover, the shift coefficient table 1600 may correspond to BG1 having an original element 15 (a = 15) and a boosting factor 240.

第17(A)圖-第17(B)圖中的每一個是基於本發明實施方式的示例性移位係數表1700的一部分的示意圖。特別的,移位係數表1700由第17A圖中的(A)部分和第17B圖中的(B)部分組成。而且,移位係數表1700可以對應具有原始元素9(a = 9)和提升因子288的BG1。Each of FIGS. 17 (A) to 17 (B) is a schematic diagram of a part of an exemplary shift coefficient table 1700 based on an embodiment of the present invention. Specifically, the shift coefficient table 1700 is composed of part (A) in FIG. 17A and part (B) in FIG. 17B. Moreover, the shift coefficient table 1700 may correspond to BG1 having an original element 9 (a = 9) and a boosting factor 288.

第18(A)圖-第18(B)圖中的每一個是基於本發明實施方式的示例性移位係數表1800的一部分的示意圖。特別的,移位係數表1800由第18A圖中的(A)部分和第18B圖中的(B)部分組成。而且,移位係數表1800可以對應具有原始元素5(a = 5)和提升因子320的BG1。Each of FIGS. 18 (A) to 18 (B) is a schematic diagram of a portion of an exemplary shift coefficient table 1800 based on an embodiment of the present invention. Specifically, the shift coefficient table 1800 is composed of part (A) in FIG. 18A and part (B) in FIG. 18B. Moreover, the shift coefficient table 1800 may correspond to BG1 having an original element 5 (a = 5) and a boosting factor 320.

第19(A)圖-第19(B)圖中的每一個是基於本發明實施方式的示例性移位係數表1900的一部分的示意圖。特別的,移位係數表1900由第19A圖中的(A)部分和第19B圖中的(B)部分組成。而且,移位係數表1900可以對應具有原始元素11(a =11)和提升因子352的 BG1。Each of FIGS. 19 (A) to 19 (B) is a schematic diagram of a part of an exemplary shift coefficient table 1900 based on an embodiment of the present invention. Specifically, the shift coefficient table 1900 is composed of part (A) in FIG. 19A and part (B) in FIG. 19B. Moreover, the shift coefficient table 1900 may correspond to BG1 having an original element 11 (a = 11) and a boosting factor 352.

第20(A)圖-第20(B)圖中的每一個是基於本發明實施方式的示例性移位係數表2000的一部分的示意圖。特別的,移位係數表2000由第20A圖中的(A)部分和第20B圖中的(B)部分組成。而且,移位係數表2000可以對應具有原始元素3(a =3)和提升因子384的 BG1。Each of FIGS. 20 (A) to 20 (B) is a schematic diagram of a part of an exemplary shift coefficient table 2000 based on an embodiment of the present invention. Specifically, the shift coefficient table 2000 is composed of part (A) in FIG. 20A and part (B) in FIG. 20B. Moreover, the shift coefficient table 2000 may correspond to BG1 having an original element 3 (a = 3) and a boosting factor 384.

第21(A)圖-第21(B)圖中的每一個是基於本發明實施方式的示例性移位係數表2100的一部分的示意圖。特別的,移位係數表2100由第21A圖中的(A)部分和第21B圖中的(B)部分組成。而且,移位係數表2100可以對應具有原始元素13(a =13)和提升因子208的 BG1。Each of FIGS. 21 (A) to 21 (B) is a schematic diagram of a part of an exemplary shift coefficient table 2100 based on an embodiment of the present invention. In particular, the shift coefficient table 2100 is composed of part (A) in FIG. 21A and part (B) in FIG. 21B. Moreover, the shift coefficient table 2100 may correspond to BG1 having an original element 13 (a = 13) and a boosting factor 208.

第22(A)圖-第22 (B)圖中的每一個是基於本發明實施方式的示例性移位係數表2200的一部分的示意圖。特別的,移位係數表2200由第22A圖中的(A)部分和第22B圖中的(B)部分組成。而且,移位係數表2200可以對應具有原始元素2(a =2)和提升因子256的 BG1。Each of FIGS. 22 (A) to 22 (B) is a schematic diagram of a part of an exemplary shift coefficient table 2200 based on an embodiment of the present invention. Specifically, the shift coefficient table 2200 is composed of part (A) in FIG. 22A and part (B) in FIG. 22B. Moreover, the shift coefficient table 2200 may correspond to BG1 having an original element 2 (a = 2) and a boost factor of 256.

第23圖示出基於本發明實施方式的與選擇移位係數表相關的示例性邏輯流程2300。邏輯流程2300可以在編碼器或者處理器中實施,或者被編碼器或者處理器實施,以實現本發明所提出的概念和方案中各種特徵和/或方面。特別的,邏輯流程2300可以涉及從複數個移位係數表中選擇移位係數表所使用的一個或者複數個規則,使得選擇出適用於相對大碼塊尺寸的資料的移位係數表。邏輯流程2300可以包括由塊2310,2320,2330,和2340中的一個或複數個表示的一個或複數個操作,動作或功能。雖然被示為離散塊,但是依賴於想要的實施方式,邏輯流程2300的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。邏輯流程2300可以被如下描述的第一裝置1005和第二裝置1050中的每一個實施。僅出於說明性目的而不限於範圍,邏輯流程2300的描述被以在第一裝置1005的環境中提供。邏輯流程2300可以開始於2310。FIG. 23 illustrates an exemplary logic flow 2300 related to selecting a shift coefficient table according to an embodiment of the present invention. The logic flow 2300 may be implemented in an encoder or a processor, or implemented by an encoder or a processor, to implement various features and / or aspects in the concepts and solutions proposed by the present invention. In particular, the logic flow 2300 may involve selecting one or a plurality of rules used in the shift coefficient table from the plurality of shift coefficient tables, so that a shift coefficient table suitable for data having a relatively large code block size is selected. Logic flow 2300 may include one or more operations, actions, or functions represented by one or more of blocks 2310, 2320, 2330, and 2340. Although shown as discrete blocks, depending on the desired implementation, the various blocks of the logic flow 2300 can be divided into additional blocks, merged into fewer blocks, or deleted. The logic flow 2300 may be implemented by each of the first device 1005 and the second device 1050 described below. For illustrative purposes only and not limited in scope, the description of the logic flow 2300 is provided in the context of the first device 1005. The logic flow 2300 may begin at 2310.

在2310,邏輯流程2300可以涉及第一裝置1005的處理器確定將被編碼的資料的碼塊尺寸是否小於或者等於閾值碼塊尺寸。在確定資料的碼塊尺寸小於或者等於閾值碼塊尺寸的情況下,邏輯流程2300可以從2310執行到2320。在處理器1010確定資料的碼塊尺寸大於閾值碼塊尺寸的情況下,邏輯流程2300可以從2310執行到2330。At 2310, the logic flow 2300 may involve the processor of the first device 1005 determining whether the code block size of the material to be encoded is less than or equal to a threshold code block size. When it is determined that the code block size of the data is less than or equal to the threshold code block size, the logic flow 2300 may be executed from 2310 to 2320. When the processor 1010 determines that the code block size of the data is larger than the threshold code block size, the logic flow 2300 may be executed from 2310 to 2330.

在2320,邏輯流程2300可以涉及處理器1010確定將被編碼的資料的碼率是否小於或者等於閾值碼率。在處理器1010確定資料的碼率小於或者等於閾值碼率的情況下,邏輯流程2300可以從2320執行到2340。否則,在處理器1010確定出資料的碼率被確定大於閾值碼率,邏輯流程2300可以從2320執行到2330。At 2320, the logic flow 2300 may involve the processor 1010 determining whether the code rate of the material to be encoded is less than or equal to a threshold code rate. When the processor 1010 determines that the bit rate of the data is less than or equal to the threshold bit rate, the logic flow 2300 may be executed from 2320 to 2340. Otherwise, the processor 1010 determines that the bit rate of the data is determined to be greater than the threshold bit rate, and the logic flow 2300 may be executed from 2320 to 2330.

在2330,邏輯流程2300可以涉及處理器1010選擇或者以其他方式使用對應基本圖表1(BG1)的移位係數表。At 2330, the logic flow 2300 may involve the processor 1010 selecting or otherwise using a shift coefficient table corresponding to the base chart 1 (BG1).

在2340,邏輯流程2300可以涉及處理器1010選擇或者以其他方式使用對應基本圖表2(BG2)的移位係數表。At 2340, the logic flow 2300 may involve the processor 1010 selecting or otherwise using a shift coefficient table corresponding to the basic graph 2 (BG2).

在基於本發明提出的方案中,不管選擇哪個移位係數表,所選擇的移位係數表的部分或者全部(整體)可以在編碼中使用。而且,所選擇或者以其他方式使用的移位係數表的值對一個或者複數個提升因子的取模(mod)與第15(A)圖-第22(B)圖所示出的任何移位係數表的取模結果相同,無論是部分還是從整體上。In the solution proposed based on the present invention, no matter which shift coefficient table is selected, part or all (whole) of the selected shift coefficient table may be used in encoding. Furthermore, the value of the shift coefficient table selected or otherwise used is modulo (mod) one or more boost factors and any shift shown in Figures 15 (A)-22 (B) The result of the modulus table is the same, both in part and in the whole.

說明性實施方式Illustrative implementation

第10圖示出基於本發明實施方式的示例性通信系統1000。通信系統可以包括第一裝置1005和第二裝置1050,第一裝置1005和第二裝置1050可以經由通信鏈路彼此通信。通信鏈路1040在一些實施方式中可以是無線鏈路。可替換的,通信鏈路1040在一些其他實施方式中可以是有線鏈路。在5G NR通信的環境中,通信鏈路1040是無線通訊鏈路,例如,多用戶多輸入多輸出(multi-user multiple-input-and-multiple-output,MU-MIMO)通信鏈路。第一裝置1005和第二裝置1050中的每一個可以執行作為通信設備的各種功能,以實施關於QC-LDPC編碼的此處所描述的概念,方案,技術,過程和方法,包括關於第1圖-第9圖的部分或者全部以及如下描述的過程1100,1200,1300,1400的那些描述。更具體的,第一裝置1005和第二裝置1050中的每一個可以實施所提出的關於多碼本嵌入式LDPC碼設計,混合正交LDPC層設計,極低碼率的QC-LDPC支持,基本矩陣設計,核心矩陣設計以及移位係數設計的概念以及方案的各個方面。FIG. 10 illustrates an exemplary communication system 1000 according to an embodiment of the present invention. The communication system may include a first device 1005 and a second device 1050, and the first device 1005 and the second device 1050 may communicate with each other via a communication link. The communication link 1040 may be a wireless link in some embodiments. Alternatively, the communication link 1040 may be a wired link in some other implementations. In the environment of 5G NR communication, the communication link 1040 is a wireless communication link, for example, a multi-user multiple-input-and-multiple-output (MU-MIMO) communication link. Each of the first device 1005 and the second device 1050 may perform various functions as a communication device to implement the concepts, schemes, techniques, processes, and methods described herein with regard to QC-LDPC encoding, including with respect to FIG. 1- Part or all of FIG. 9 and those of the processes 1100, 1200, 1300, 1400 described below. More specifically, each of the first device 1005 and the second device 1050 can implement the proposed multi-codebook embedded LDPC code design, mixed orthogonal LDPC layer design, QC-LDPC support with extremely low bit rate, and basic Matrix design, core matrix design and shift coefficient design concepts and aspects of the solution.

第一裝置1005和第二裝置1050中的每一個可以是電子設備的一部分,該電子設備可以是通信設備,計算設備,可擕式或移動設備或可穿戴設備。例如,第一裝置1005可以在Wi-Fi接入點,智慧手機,智能手錶,智慧手環,智慧項鍊,個人數位助理或諸如平板電腦,膝上型電腦,筆記型電腦,臺式電腦或伺服器之類的計算設備中實現。同樣地,第二裝置1050可以在Wi-Fi移動用戶端或站點,智慧手機,智慧手錶,智慧手環,智慧項鍊,個人數位助理或諸如平板電腦,膝上型電腦,臺式電腦或伺服器之類的計算設備中實現。或者,第一裝置1005和第二裝置1050中的每一個可以以一個或複數個積體電路(IC)晶片的形式實施,例如但不限於,一個或複數個單核處理器,一個或複數個多核處理器,或一個或複數個複雜指令集計算(complex-instruction-set-computing ,CISC)處理器。Each of the first device 1005 and the second device 1050 may be part of an electronic device, which may be a communication device, a computing device, a portable or mobile device, or a wearable device. For example, the first device 1005 may be a Wi-Fi access point, a smart phone, a smart watch, a smart bracelet, a smart necklace, a personal digital assistant or such as a tablet, laptop, laptop, desktop computer or servo In computing devices such as processors. Similarly, the second device 1050 can be on a Wi-Fi mobile client or site, smartphone, smart watch, smart bracelet, smart necklace, personal digital assistant or such as a tablet, laptop, desktop computer or servo In computing devices such as processors. Alternatively, each of the first device 1005 and the second device 1050 may be implemented in the form of one or more integrated circuit (IC) chips, such as, but not limited to, one or more single-core processors, one or more A multi-core processor, or one or more complex-instruction-set-computing (CISC) processors.

第一裝置1005和第二裝置1050中的每一個可以分別包括第10圖中所示出的那些元件中至少一部分。例如,第一裝置1005可以至少包括處理器1010,第二裝置1050可以至少包括處理器1060。此外,第一裝置可以包括記憶體1020,收發器1030和一個或者複數個天線(由天線1036表示),收發器1030被配置為無線的發送和接收資料(例如遵循一個或者複數個3GPP標準,協定,規範,和/或任何可應用的無線協議和標準,例如5G NR)。記憶體1020和收發器1030中的每一個可以通信的或者可操作的與處理器1010耦接。相似的,第二裝置1050也可以包括記憶體1070,收發器1080和一個或者複數個天線(由天線1086表示),收發器1080被配置為無線的發送和接收資料(例如遵循一個或者複數個3GPP標準,協定,規範,和/或任何可應用的無線協議和標準,例如5G NR)。記憶體1070和收發器1080中的每一個可通信的或者可操作的耦接到處理器1060。第一裝置1005和第二裝置1050中的每一個可以進一步包括其他元件(例如,功率系統,顯示裝置和使用者接口設備)其與本發明提出的方案不相關,所以為了簡單和簡潔,沒有在第10圖中示出也沒有描述。Each of the first device 1005 and the second device 1050 may include at least a part of those elements shown in FIG. 10, respectively. For example, the first device 1005 may include at least a processor 1010, and the second device 1050 may include at least a processor 1060. In addition, the first device may include a memory 1020, a transceiver 1030, and one or more antennas (represented by antennas 1036). The transceiver 1030 is configured to wirelessly transmit and receive data (for example, following one or more 3GPP standards, protocols , Specifications, and / or any applicable wireless protocols and standards, such as 5G NR). Each of the memory 1020 and the transceiver 1030 may be communicatively or operatively coupled with the processor 1010. Similarly, the second device 1050 may also include a memory 1070, a transceiver 1080, and one or more antennas (represented by the antenna 1086). The transceiver 1080 is configured to send and receive data wirelessly (for example, following one or more 3GPP) Standards, protocols, specifications, and / or any applicable wireless protocols and standards, such as 5G NR). Each of the memory 1070 and the transceiver 1080 is communicatively or operatively coupled to the processor 1060. Each of the first device 1005 and the second device 1050 may further include other components (for example, a power system, a display device, and a user interface device) which are not related to the solution proposed by the present invention, so for simplicity and brevity, there is no It is shown in Fig. 10 and not described.

收發器1030可以被配置為以單頻帶或者複數個頻帶的方式無線通訊。收發器1030可以包括能夠無線發送資料的發送器1032和能夠無線接收資料的接收器1034。在一些實施方式中,收發器1030能夠發送/調製(經由發送器1032)和接收/解調(經由接收器1034)作為通過天線1036輻射的正交頻分複用(orthogonal frequency-division multiplexed,OFDM)符號的資料符號。同樣的,收發器1080可以被配置為以單個頻帶或者複數個頻帶無線通訊。收發器1080可以包括能夠發送/調製(經由發送器1082)和接收/解調(經由接收器1084)作為通過天線1086輻射的OFDM符號的資料符號。The transceiver 1030 may be configured to wirelessly communicate in a single frequency band or a plurality of frequency bands. The transceiver 1030 may include a transmitter 1032 capable of transmitting data wirelessly and a receiver 1034 capable of receiving data wirelessly. In some embodiments, the transceiver 1030 is capable of transmitting / modulating (via the transmitter 1032) and receiving / demodulating (via the receiver 1034) as orthogonal frequency-division multiplexed (OFDM) radiated through the antenna 1036 ) Information symbol. Similarly, the transceiver 1080 can be configured to wirelessly communicate in a single frequency band or a plurality of frequency bands. The transceiver 1080 may include data symbols capable of transmitting / modulating (via the transmitter 1082) and receiving / demodulating (via the receiver 1084) as OFDM symbols radiated through the antenna 1086.

記憶體1020和記憶體1070中的每一個可以是被配置為在其中存儲一組或多組代碼,程式和/或指令和/或資料的存儲裝置。在第10圖所示的示例中,記憶體1020在其中存儲一組或多組處理器可執行指令1022和資料1024,並且記憶體1070在其中存儲一組或多組處理器可執行指令1072和資料1074。記憶體1020和記憶體1070中的每一個可以通過任何合適的技術實施,並且可以包括易失性記憶體和/或非易失性記憶體。例如,記憶體1020和記憶體1070中的每一個可以包括一種類型的隨機存取記憶體(RAM),例如動態RAM(DRAM),靜態RAM(SRAM),晶閘管RAM(T-RAM)和/或零電容器RAM( Z-RAM)。可替代地或另外地,記憶體520可以包括一種唯讀記憶體(ROM),例如掩模ROM,可程式設計ROM(PROM),可擦除可程式設計ROM(EPROM)和/或可擦除可程式設計ROM(erasable programmable ROM ,EEPROM)。可選地或另外地,記憶體1020和記憶體1070中的每一個可以包括一種類型的非易失性隨機存取記憶體(non-volatile random-access memory ,NVRAM),例如快閃記憶體,固態記憶體,鐵電RAM(ferroelectric RAM,FeRAM),磁阻RAM(magnetoresistive RAM,MRAM)和/或相變(phase-change)記憶體。Each of the memory 1020 and the memory 1070 may be a storage device configured to store one or more sets of codes, programs and / or instructions and / or information therein. In the example shown in FIG. 10, the memory 1020 stores therein one or more sets of processor-executable instructions 1022 and data 1024, and the memory 1070 stores therein one or more sets of processor-executable instructions 1072 and Information 1074. Each of the memory 1020 and the memory 1070 may be implemented by any suitable technique, and may include volatile memory and / or non-volatile memory. For example, each of the memory 1020 and the memory 1070 may include one type of random access memory (RAM), such as dynamic RAM (DRAM), static RAM (SRAM), thyristor RAM (T-RAM), and / or Zero-capacitor RAM (Z-RAM). Alternatively or in addition, the memory 520 may include a read-only memory (ROM), such as a mask ROM, a programmable ROM (PROM), an erasable programmable ROM (EPROM), and / or an erasable Programmable ROM (erasable programmable ROM, EEPROM). Alternatively or additionally, each of the memory 1020 and the memory 1070 may include a type of non-volatile random-access memory (NVRAM), such as a flash memory, Solid-state memory, ferroelectric RAM (FeRAM), magnetoresistive RAM (MRAM), and / or phase-change memory.

在一個方面,處理器1010和處理器1060中的每一個可以以一個或複數個單核處理器,一個或複數個多核處理器或一個或複數個CISC處理器的形式實施。也就是說,根據本發明,即使這裡使用單數術語“處理器”來指代處理器1010和處理器1060中的每一個,根據本發明,處理器1010和處理器1060中的每一個在一些實施中可以包括複數個處理器而在其他實施中可以包括單個處理器。在另一方面,處理器1010和處理器1060中的每一個可以以具有電子元件的硬體(以及可選地,固件)的形式實現,所述電子元件包括例如但不限於一個或複數個電晶體,一個或複數個二極體,一個或複數個電容器,一個或複數個電阻器,一個或複數個電感器,一個或複數個憶阻器(memristor)和/或一個或複數個變容二極體(varactor),根據本發明其被配置和佈置成以實現特定的目的。換句話說,在至少一些實施方式中,處理器1010和處理器1060中的每一個是專用目的處理器,其被特別設計,安排和配置以執行特定任務,根據本發明的各種實施方式,該特定任務包括用於移動通信中較大碼塊尺寸的QC-LDPC碼的移位係數表設計。In one aspect, each of the processors 1010 and 1060 may be implemented in the form of one or more single-core processors, one or more multi-core processors, or one or more CISC processors. That is, according to the present invention, even if the singular term "processor" is used herein to refer to each of the processor 1010 and the processor 1060, according to the present invention, each of the processor 1010 and the processor 1060 is implemented in some implementations. A plurality of processors may be included therein and a single processor may be included in other implementations. In another aspect, each of the processor 1010 and the processor 1060 may be implemented in the form of hardware (and optionally, firmware) with electronic components including, for example, but not limited to, one or more electrical components. Crystal, one or more diodes, one or more capacitors, one or more resistors, one or more inductors, one or more memristors, and / or one or more varactors A varactor, which is configured and arranged according to the invention to achieve a specific purpose. In other words, in at least some embodiments, each of the processor 1010 and the processor 1060 is a special purpose processor that is specifically designed, arranged, and configured to perform a specific task. According to various embodiments of the present invention, the Specific tasks include the design of shift coefficient tables for QC-LDPC codes for larger code block sizes in mobile communications.

根據本發明的各種實施方式,作為專用機器的處理器1010可以包括非通用且專門設計的硬體電路,其被設計,佈置和配置以在移動通信中執行與用於較大碼塊尺寸的QC-LDPC碼的移位係數表設計有關的特定任務。在一個方面,根據本發明的各種實施方式,處理器1010可以執行存儲在記憶體1020中的一組或多組代碼,程式和/或指令1022以執行各種操作以在移動通信中提供(render)用於較大碼塊尺寸的QC-LDPC碼的移位係數表設計。在另一方面,根據本發明的各種實施方式,處理器1010可以包括編碼器1012和解碼器1014,編碼器1012和解碼器1014一起執行特定任務和功能,來提供(render)QC-LDPC碼。例如,根據本發明的各種概念和方案,編碼器1012可被配置為編碼資料。相似的,根據本發明的各種概念和方案,解碼器1014可被配置為解碼資料。According to various embodiments of the present invention, the processor 1010 as a dedicated machine may include non-universal and specially designed hardware circuits that are designed, arranged, and configured to perform in mobile communications with QC for larger code block sizes. -Specific tasks related to the design of shift coefficient tables for LDPC codes. In one aspect, in accordance with various embodiments of the present invention, the processor 1010 may execute one or more sets of code, programs and / or instructions 1022 stored in the memory 1020 to perform various operations to render in mobile communications. Design of shift coefficient table for QC-LDPC codes with larger code block sizes. In another aspect, according to various embodiments of the present invention, the processor 1010 may include an encoder 1012 and a decoder 1014, and the encoder 1012 and the decoder 1014 perform specific tasks and functions together to render a QC-LDPC code. For example, the encoder 1012 may be configured to encode data according to various concepts and schemes of the present invention. Similarly, according to various concepts and solutions of the present invention, the decoder 1014 may be configured to decode data.

在一些實施中,處理器1010還可以包括記憶體1016,其可以包括一個或複數個寄存器(register),一個或複數個緩衝器和/或一個或複數個快取記憶體(cache)。在一些實現中,處理器1016可以利用記憶體1016來存儲QC-LDPC碼的基本矩陣,所選擇的碼本,提升因子和/或一個或複數個移位係數矩陣。例如,處理器1010可以生成基本矩陣並將其存儲在記憶體1020中,並且在從嵌入在基本矩陣中的複數個碼本中選擇碼本時,處理器1010可以將所選擇的碼本存儲在記憶體1016中。因此,根據邏輯流程200的一個或複數個規則,通過從嵌入在基本矩陣中的複數個碼本中選擇碼本,可以縮短編碼的處理延遲。因此,通過根據本發明實施各種方案(例如,通過從嵌入在QC-LDPC碼中的複數個碼本中選擇碼本來編碼資料,以用於發送),不僅改善了處理器1010的功能(例如,處理延遲更短)而且也改進了資料編碼的底層(underlying)技術(例如,處理延遲更短和改進解碼器輸送量效率)。In some implementations, the processor 1010 may further include a memory 1016, which may include one or more registers, one or more buffers, and / or one or more cache memories. In some implementations, the processor 1016 may utilize the memory 1016 to store a basic matrix of the QC-LDPC code, a selected codebook, a boost factor, and / or one or a plurality of shift coefficient matrices. For example, the processor 1010 may generate a basic matrix and store it in the memory 1020, and when selecting a codebook from a plurality of codebooks embedded in the basic matrix, the processor 1010 may store the selected codebook in In memory 1016. Therefore, according to one or a plurality of rules of the logic flow 200, by selecting a codebook from a plurality of codebooks embedded in the basic matrix, the processing delay of encoding can be shortened. Therefore, by implementing various solutions according to the present invention (for example, by selecting a codebook from a plurality of codebooks embedded in a QC-LDPC code to encode data for transmission), not only the function of the processor 1010 is improved (for example, Shorter processing delays) and also improved underlying technologies for data encoding (for example, shorter processing delays and improved decoder throughput efficiency).

根據本發明各種實施方式,作為專用機器的處理器1060可以包括非通用且專門設計的硬體電路,其被設計,佈置和配置以執行與QC-LDPC編碼有關的特定任務。在一個方面,根據本發明的各種實施方式,處理器1060可以執行存儲在記憶體1070中的一組或多組代碼,程式和/或指令1072以執行與QC-LDPC編碼有關的各種操作。在另一方面,根據本發明的各種實施方式,處理器1060可以包括編碼器1062和解碼器1064,其執行特定任務和功能,來提供(render)QC-LDPC編碼。例如,根據本發明的各種概念和方案,編碼器1062可被配置為編碼資料。相似的,根據本發明的各種概念和方案,解碼器1064可被配置為解碼資料。According to various embodiments of the present invention, the processor 1060 as a dedicated machine may include non-generic and specially designed hardware circuits that are designed, arranged, and configured to perform specific tasks related to QC-LDPC encoding. In one aspect, according to various embodiments of the present invention, the processor 1060 may execute one or more sets of codes, programs and / or instructions 1072 stored in the memory 1070 to perform various operations related to QC-LDPC encoding. In another aspect, according to various embodiments of the present invention, the processor 1060 may include an encoder 1062 and a decoder 1064 that perform specific tasks and functions to render QC-LDPC encoding. For example, the encoder 1062 may be configured to encode data according to various concepts and schemes of the present invention. Similarly, according to various concepts and solutions of the present invention, the decoder 1064 may be configured to decode data.

在一些實施中,處理器1060還可以包括記憶體1066,其可以包括一個或複數個寄存器,一個或複數個緩衝器和/或一個或複數個快取記憶體。 在一些實施方案中,處理器1060可利用記憶體1066來存儲QC-LDPC碼的基本矩陣,所選的碼本,提升因子和/或移位係數矩陣。 例如,處理器1060可以生成基本矩陣並將其存儲在記憶體1070中,並且在從嵌入在基本矩陣中的複數個碼本中選擇碼本時,處理器1060可以將所選擇的碼本存儲在記憶體1066中。因此,通過根據邏輯流程200的一個或複數個規則從嵌入在基本矩陣中的複數個碼本中選擇碼本 ,可以縮短編碼的處理延遲。In some implementations, the processor 1060 may also include a memory 1066, which may include one or more registers, one or more buffers, and / or one or more cache memories. In some implementations, the processor 1060 may utilize the memory 1066 to store a basic matrix of the QC-LDPC code, a selected codebook, a boost factor, and / or a shift coefficient matrix. For example, the processor 1060 may generate a basic matrix and store it in the memory 1070, and when selecting a codebook from a plurality of codebooks embedded in the basic matrix, the processor 1060 may store the selected codebook in In memory 1066. Therefore, by selecting a codebook from a plurality of codebooks embedded in the basic matrix according to one or more rules of the logic flow 200, the processing delay of encoding can be shortened.

編碼器1012和編碼器1062中的每一個可以被配置具有複數個電子元件,複數個電子元件作為編碼鏈操作以執行與編碼有關的複數個操作。例如,在編碼器1012和編碼器1062中的每一個中的編碼鏈可以執行如下:位元重新排序(bit reordering),音調交織(tone interleaving),混合冗餘版本(redundancy version,RV)設計,自我調整HARQ緩衝,和碼塊分組。解碼器1014和解碼器1064中的每一個可以被配置為支援碼本的各種碼率。解碼器1014和解碼器1064中的每一個所支持的碼本的最低碼率可以依賴於相應的提升因子的尺寸。在所提出的方案中,可以設置對數似然比(log-likelihood ratio ,LLR)記憶體的尺寸的上限。提升因子可以被存儲在LLR記憶體中,LLR記憶體的尺寸可以定義或者以其他方式限定提升因子的尺寸能有多大。相應的,通過設置LLR記憶體尺寸的上限,可以設置從基本矩陣中產生的擴展的奇偶校驗(parity check)矩陣的最大尺寸,由此設置需要存儲擴展的奇偶校驗矩陣的記憶體尺寸的上限。在第一裝置1005中,可以通過使用一個或者複數個寄存器,一個或者複數個緩衝器,一個或者複數個快取記憶體,和/或在處理器1010(例如記憶體1016)或者在記憶體1020中的一個或者複數個記憶體單元來實現LLR記憶體。在第二裝置1050中,通過使用一個或者複數個寄存器,一個或者複數個緩衝器,一個或者複數個快取記憶體,和/或在處理器1060(例如記憶體1066)或者在記憶體1070中的一個或者複數個記憶體單元來實現LLR記憶體。Each of the encoder 1012 and the encoder 1062 may be configured to have a plurality of electronic components that operate as a coding chain to perform a plurality of operations related to coding. For example, the encoding chain in each of the encoder 1012 and the encoder 1062 may be performed as follows: bit reordering, tone interleaving, mixed redundancy version (RV) design, Self-adjusting HARQ buffer, and code block grouping. Each of the decoder 1014 and the decoder 1064 may be configured to support various code rates of a codebook. The minimum code rate of the codebook supported by each of the decoder 1014 and the decoder 1064 may depend on the size of the corresponding boost factor. In the proposed scheme, an upper limit on the size of a log-likelihood ratio (LLR) memory can be set. The boost factor can be stored in LLR memory, and the size of the LLR memory can define or otherwise limit how large the boost factor size can be. Correspondingly, by setting the upper limit of the LLR memory size, the maximum size of the extended parity check matrix generated from the basic matrix can be set, thereby setting the memory size of the memory that needs to store the extended parity check matrix. Ceiling. In the first device 1005, by using one or more registers, one or more buffers, one or more cache memories, and / or in the processor 1010 (such as the memory 1016) or in the memory 1020 One or more memory units are used to implement LLR memory. In the second device 1050, by using one or more registers, one or more buffers, one or more cache memories, and / or in the processor 1060 (eg, the memory 1066) or in the memory 1070 One or more memory units to implement LLR memory.

在操作中,對於發送側的前向連結(forward link),編碼器1012可以從資料來源接收資料包,通過對資料執行編碼,交織和符號映射來處理資料,並且提供編碼的資料的調製符號。發送器1032可以將調製符號與導頻符號複用,執行空間處理,並提供一個或者複數個輸出符號流。發送器1032(其可以包括一個或者複數個發送器)可以通過執行數位至類比轉換,濾波,放大和上轉換來調節(condition)一個或者複數個輸出符號流,以產生一個或者複數個前向鏈路信號,通過天線1036的一個或者複數個天線該一個或者複數個前向鏈路信號作為電磁波被輻射出去。在接收(RX)側,接收器1084(其可以包括一個或者複數個接收器)可以經由天線1086的一個或者複數個天線,接收作為電磁波的一個或者複數個前向鏈路信號。接收器1084也可以通過執行濾波,放大,下轉換和類比到數位轉換來處理接收的信號,以獲得複數個採樣。接收器1084也可以處理複數個採樣以獲得接收的符號,並且在接收的符號上執行多輸入多輸出(MIMO)檢測,以提供檢測到的符號。解碼器1064可以通過執行符號解映射,解交織和解碼來處理檢測到的符號,以提供解碼的資料給資料池(sink)。In operation, for a forward link on the transmitting side, the encoder 1012 may receive a data packet from a data source, process the data by performing encoding, interleaving, and symbol mapping on the data, and provide modulation symbols for the encoded data. The transmitter 1032 may multiplex modulation symbols with pilot symbols, perform spatial processing, and provide one or a plurality of output symbol streams. The transmitter 1032 (which may include one or more transmitters) may condition one or more output symbol streams by performing digital-to-analog conversion, filtering, amplification, and up-conversion to generate one or more forward chains Signals, the one or more forward link signals passing through the antenna 1036 are radiated as electromagnetic waves. On the receiving (RX) side, the receiver 1084 (which may include one or a plurality of receivers) may receive one or a plurality of forward link signals as electromagnetic waves via one or a plurality of antennas of the antenna 1086. The receiver 1084 may also process the received signal by performing filtering, amplification, down conversion, and analog-to-digital conversion to obtain a plurality of samples. The receiver 1084 may also process a plurality of samples to obtain received symbols and perform multiple-input multiple-output (MIMO) detection on the received symbols to provide the detected symbols. The decoder 1064 may process the detected symbols by performing symbol demapping, deinterleaving, and decoding to provide decoded data to a sink.

相似的,在反向(reverse)鏈路上,編碼器1062可以從資料來源接收資料包,並且通過解碼,交織和符號映射來處理資料,以提供編碼的資料的調製符號。發送器1082可以將調製符號與導頻符號進行複用,執行空間處理,以及提供一個或者複數個輸出符號流。發送器1082(其可以包括一個或者複數個發送器)可以通過執行數位至類比轉換,濾波,放大和上轉換來調節(condition)一個或者複數個輸出符號流,以產生一個或者複數個反向鏈路信號,該一個或者複數個反向鏈路信號作為電磁波通過天線1086的一個或者複數個天線輻射出去。在接收(RX)側,接收器1034(其可以包括一個或者複數個接收器)可以經由天線1036的一個或者複數個天線,接收作為電磁波的一個或者複數個反向鏈路信號。接收器1034可以通過執行濾波,放大,下轉換和類比至數位轉換來處理接收的信號,以獲得複數個採樣。接收器1034也可以處理複數個採樣以獲得接收的符號,並且在接收的符號上執行MIMO檢測,以提供檢測到的符號。解碼器1014可以通過執行符號解映射,解交織和解碼來處理檢測到的符號,以恢復第二裝置1050發出的資料。Similarly, on the reverse link, the encoder 1062 can receive data packets from the data source and process the data through decoding, interleaving, and symbol mapping to provide modulation symbols for the encoded data. The transmitter 1082 may multiplex modulation symbols with pilot symbols, perform spatial processing, and provide one or more output symbol streams. The transmitter 1082 (which may include one or more transmitters) may condition one or more output symbol streams by performing digital-to-analog conversion, filtering, amplification, and up-conversion to generate one or more backlinks Signal, the one or more reverse link signals are radiated as electromagnetic waves through one or more antennas of the antenna 1086. On the receiving (RX) side, the receiver 1034 (which may include one or a plurality of receivers) may receive one or a plurality of reverse link signals as electromagnetic waves via one or a plurality of antennas of the antenna 1036. The receiver 1034 may process the received signal by performing filtering, amplification, down conversion, and analog-to-digital conversion to obtain a plurality of samples. The receiver 1034 may also process a plurality of samples to obtain the received symbols, and perform MIMO detection on the received symbols to provide the detected symbols. The decoder 1014 may process the detected symbols by performing symbol demapping, deinterleaving, and decoding to recover the data sent by the second device 1050.

處理器1010可以被配置控制或者以其他方式指導第一裝置1005的操作。處理器1060可以被配置控制或者以其他方式指導第一裝置1050的操作。根據本申請的方案和概念,處理器1010能夠確定將要發送和/或接收的封包的尺寸,以及,相應的,分別控制由編碼器1012的編碼和由解碼器1014的解碼。同樣的,根據本申請的方案和概念,處理器1060能夠確定將要發送和/或接收的封包的尺寸,以及,相應的,分別控制由編碼器1062的編碼和由解碼器1064的解碼。例如,處理器1010和處理器1060中的每一個可以被配置從嵌入到QC-LDPC碼的基本矩陣中的複數個碼本中選擇碼本,以用於編碼,使得如果對應于大量編碼處理延遲的大碼本對編碼來說不是必須的,需要選擇出少量編碼處理延遲的小碼本,以用於編碼。The processor 1010 may be configured to control or otherwise direct the operation of the first device 1005. The processor 1060 may be configured to control or otherwise direct the operation of the first device 1050. According to the scheme and concept of the present application, the processor 1010 can determine the size of a packet to be transmitted and / or received, and, accordingly, respectively control the encoding by the encoder 1012 and the decoding by the decoder 1014. Similarly, according to the scheme and concept of the present application, the processor 1060 can determine the size of a packet to be transmitted and / or received, and correspondingly, control the encoding by the encoder 1062 and the decoding by the decoder 1064, respectively. For example, each of the processor 1010 and the processor 1060 may be configured to select a codebook from a plurality of codebooks embedded in a basic matrix of a QC-LDPC code for encoding, so that if corresponding to a large number of encoding processing delays A large codebook is not necessary for encoding, and a small codebook with a small amount of encoding processing delay needs to be selected for encoding.

第一裝置1005和第二裝置1050中的每一個可以被配置來執行如下描述的過程1100,1200,1300,1400和2400中的每一個。所以,為了避免冗餘和為了簡潔,第一裝置1005和第二裝置1050的操作,以及處理器1010和處理器1060的操作在如下過程1100,1200,1300,1400和2400的環境中描述。值得注意的是,雖然在第一裝置1005的環境中提供如下描述,如下描述也適用於第二裝置1050。Each of the first device 1005 and the second device 1050 may be configured to perform each of the processes 1100, 1200, 1300, 1400, and 2400 described below. Therefore, in order to avoid redundancy and for brevity, the operations of the first device 1005 and the second device 1050, and the operations of the processor 1010 and the processor 1060 are described in the environment of the following processes 1100, 1200, 1300, 1400, and 2400. It is worth noting that although the following description is provided in the environment of the first device 1005, the following description also applies to the second device 1050.

關於在移動通信中用於大碼塊尺寸的QC-LDPC碼的移位係數表設計,第一裝置1005的處理器1010可以經由裝置1005的收發器1030與第二裝置1050建立無線通訊鏈路。處理器1010可以經由收發器1030過有無線通訊鏈路與第二裝置1050無線通訊。在與第二裝置1050的無線通訊中,處理器1010可以執行複數個操作。例如,處理器1010可以執行如下:(1)從複數個移位係數表中選擇第一移位係數表;(2)使用第一移位係數表的至少一部分和基本矩陣產生QC-LDPC碼;(3) 從嵌入到QC-LDPC碼的複數個碼本中選擇碼本;(4)存儲所選擇的碼本到與處理器相關的記憶體;(5)使用選擇的碼本編碼資料,以產生資料的複數個調製符號;以及(6)控制收發器1030來複用,轉換,濾波,放大調製符號,併通過第一裝置的一個或者複數個天線1036輻射調製符號作為電磁波,以經由無線通訊鏈路向第二裝置1050發送資料的調製符號。Regarding the design of the shift coefficient table for QC-LDPC codes for large code block sizes in mobile communications, the processor 1010 of the first device 1005 can establish a wireless communication link with the second device 1050 via the transceiver 1030 of the device 1005. The processor 1010 can wirelessly communicate with the second device 1050 via the wireless communication link of the transceiver 1030. In wireless communication with the second device 1050, the processor 1010 may perform a plurality of operations. For example, the processor 1010 may execute the following: (1) selecting a first shift coefficient table from a plurality of shift coefficient tables; (2) generating a QC-LDPC code using at least a part of the first shift coefficient table and a basic matrix; (3) Select the codebook from the plurality of codebooks embedded in the QC-LDPC code; (4) Store the selected codebook to the processor-related memory; (5) Use the selected codebook to encode the data to Generate a plurality of modulation symbols of the data; and (6) control the transceiver 1030 to multiplex, convert, filter, and amplify the modulation symbols, and radiate the modulation symbols as electromagnetic waves through one or more antennas 1036 of the first device for wireless communication The link sends a modulation symbol of the data to the second device 1050.

在一些實施方式中,第一移位係數表可以包括基本的移位係數表,該基本的移位係數表以如下樣式被佈置為4列(row)26行(column): In some embodiments, the first shift coefficient table may include a basic shift coefficient table, which is arranged into 4 rows and 26 columns in the following style:

在一些實施方式中,第一移位係數表可以包括如第18A圖和第18B圖所示出的移位係數表。In some embodiments, the first shift coefficient table may include a shift coefficient table as shown in FIGS. 18A and 18B.

在一些實施方式中,第一移位係數表可以包括對應於具有原始元素5 (a = 5)和提升因子320的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素7 (a = 7)和提升因子224的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素15 (a =15)和提升因子240的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素9 (a = 9)和提升因子288的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素11 (a =11)和提升因子352的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素3 (a = 3)和提升因子384的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素13 (a = 13)和提升因子208的BG1的移位係數表。可替換的,第一移位係數表可以包括對應於具有原始元素2 (a = 2)和提升因子256的BG1的移位係數表。In some embodiments, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element of 5 (a = 5) and a boost factor of 320. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 7 (a = 7) and a boosting factor 224. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 15 (a = 15) and a boosting factor 240. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 9 (a = 9) and a boosting factor 288. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 11 (a = 11) and a boosting factor 352. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 3 (a = 3) and a boosting factor 384. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 13 (a = 13) and a boosting factor 208. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 2 (a = 2) and a boost factor of 256.

在一些實施方式中,在從複數個移位係數表中選擇第一移位係數表時,處理器1010可以根據與資料的碼塊尺寸和碼率中任一者或者兩者相關的一個或者複數個規則,選擇第一移位係數表,以用於相對較大的碼塊尺寸。In some implementations, when selecting the first shift coefficient table from the plurality of shift coefficient tables, the processor 1010 may be based on one or a complex number related to any one or both of the code block size and code rate of the data. As a rule, a first shift coefficient table is selected for a relatively large code block size.

在一些實施方式中,在使用第一移位係數表至少一部分和基本矩陣來產生QC-LDPC碼時,處理器1010可以使用第一移位係數表的全部(full portion)和基本矩陣,產生QC-LDPC碼。In some embodiments, when using at least a part of the first shift coefficient table and the basic matrix to generate the QC-LDPC code, the processor 1010 may use the full portion of the first shift coefficient table and the basic matrix to generate the QC. -LDPC code.

在一些實施方式中,在使用第一移位係數表至少一部分和基本矩陣來產生QC-LDPC碼時,處理器1010可以使用第一移位係數表的一部分(partial portion)和基本矩陣,產生QC-LDPC碼。In some embodiments, when using at least a part of the first shift coefficient table and a basic matrix to generate a QC-LDPC code, the processor 1010 may use a partial portion of the first shift coefficient table and a basic matrix to generate a QC. -LDPC code.

在一些實施方式中,在從複數個移位係數表中選擇第一移位係數表時,處理器1010可以選擇第二移位係數表,該第二移位係數表的值對一個或者複數個提升因子的取模(modulo)與至少該第一移位係數表的取模結果相同。In some embodiments, when a first shift coefficient table is selected from a plurality of shift coefficient tables, the processor 1010 may select a second shift coefficient table, and the value of the second shift coefficient table is for one or a plurality of shift coefficient tables. The modulo of the lifting factor is the same as the modulo result of at least the first shift coefficient table.

在一些實施方式中,在使用第一移位係數表至少一部分和基本矩陣來產生QC-LDPC碼時,處理器1010可以使用第二移位係數表的全部(full portion)和基本矩陣,產生QC-LDPC碼。In some embodiments, when using at least a part of the first shift coefficient table and the basic matrix to generate the QC-LDPC code, the processor 1010 may use the full portion of the second shift coefficient table and the basic matrix to generate the QC -LDPC code.

在一些實施方式中,在使用第一移位係數表至少一部分和基本矩陣來產生QC-LDPC碼時,處理器1010可以使用第二移位係數表的一部分(partial portion)和基本矩陣,產生QC-LDPC碼。In some embodiments, when using at least a part of the first shift coefficient table and a basic matrix to generate a QC-LDPC code, the processor 1010 may use a partial portion of the second shift coefficient table and a basic matrix to generate a QC. -LDPC code.

在一些實施方式中,在在從複數個移位係數表中選擇第一移位係數表時,處理器1010可以執行複數個操作(例如,關於邏輯流程2300)。例如,處理器1010可以確定碼塊尺寸是否小於或者等於閾值碼塊尺寸。此外,處理器1010可以確定碼率是否小於或者等於閾值碼率。而且,回應於確定出碼塊尺寸大於閾值碼塊尺寸或者回應於確定出碼率大於閾值碼率,處理器1010可以選擇對應於基本圖表1(BG1)的第一移位係數表。可替換的,回應於確定出碼塊尺寸小於或者等於閾值碼塊尺寸和回應於確定出碼率小於或者等於閾值碼率,處理器1010可以選擇對應於基本圖表2 (BG2)的第一移位係數表。In some embodiments, when selecting the first shift coefficient table from the plurality of shift coefficient tables, the processor 1010 may perform a plurality of operations (eg, regarding the logic flow 2300). For example, the processor 1010 may determine whether a code block size is less than or equal to a threshold code block size. In addition, the processor 1010 may determine whether the code rate is less than or equal to a threshold code rate. Moreover, in response to determining that the code block size is greater than the threshold code block size or in response to determining that the code rate is greater than the threshold code rate, the processor 1010 may select a first shift coefficient table corresponding to the basic graph 1 (BG1). Alternatively, in response to determining that the code block size is less than or equal to the threshold code block size and in response to determining that the code rate is less than or equal to the threshold code rate, the processor 1010 may select a first shift corresponding to the basic graph 2 (BG2) Coefficient table.

在一些實施方式中,複數個碼本中的每一個碼本可以對應複數個混合自動重傳請求HARQ線程中各自的HARQ線程,複數個HARQ線程彼此不同。In some embodiments, each codebook in the plurality of codebooks may correspond to a respective HARQ thread in the plurality of hybrid automatic repeat request HARQ threads, and the plurality of HARQ threads are different from each other.

在一些實施方式中,在從複數個碼本中選擇碼本時,處理器1010可以執行複數個操作。例如,處理器1010可以確定資料的碼塊尺寸是否小於閾值碼塊尺寸。此外,回應於資料的碼塊尺寸小於閾值碼塊尺寸,處理器1010可以選擇複數個碼本中的第三碼本。而且,回應於資料的碼塊尺寸不小於閾值碼塊尺寸,處理器1010可以確定用於傳輸資料的初始碼率是否大於閾值碼率。而且,回應於初始碼率不大於閾值碼率,處理器1010可以選擇複數個碼本中的第二碼本。而且,回應於初始碼率大於閾值碼率,處理器1010可以選擇複數個碼本中的第一碼本。第一碼本的尺寸可以大於第二碼本的尺寸,並且第二碼本的尺寸可以大於第三碼本的尺寸。In some embodiments, when selecting a codebook from a plurality of codebooks, the processor 1010 may perform a plurality of operations. For example, the processor 1010 may determine whether a code block size of the material is smaller than a threshold code block size. In addition, in response to the code block size of the data being smaller than the threshold code block size, the processor 1010 may select a third codebook among the plurality of codebooks. Moreover, in response to the code block size of the data being not less than the threshold code block size, the processor 1010 may determine whether the initial code rate used to transmit the data is greater than the threshold code rate. Moreover, in response to the initial code rate being not greater than the threshold code rate, the processor 1010 may select a second codebook among the plurality of codebooks. Moreover, in response to the initial code rate being greater than the threshold code rate, the processor 1010 may select a first codebook among the plurality of codebooks. The size of the first codebook may be larger than the size of the second codebook, and the size of the second codebook may be larger than the size of the third codebook.

在一些實施方式中,在從複數個碼本中選擇碼本時,處理器1010可以執行複數個操作。例如,處理器1010可以確定資料的碼塊尺寸。此外,處理器1010可以通過如下方式選擇碼本:(1)回應於確定出的碼塊尺寸大於第一閾值碼塊尺寸,選擇複數個碼本中的第一碼本;(2)回應於確定出的碼塊尺寸大於第二閾值碼塊尺寸,選擇複數個碼本中的第二碼本;(3)回應於確定出的碼塊尺寸大於第三閾值碼塊尺寸,選擇複數個碼本中的第三碼本。第一閾值碼塊尺寸可以大於第二閾值碼塊尺寸。第二閾值碼塊尺寸可以大於第三閾值碼塊尺寸。第一碼本的尺寸可以大於第二碼本的尺寸,並且第二碼本的尺寸可以大於第三碼本的尺寸。In some embodiments, when selecting a codebook from a plurality of codebooks, the processor 1010 may perform a plurality of operations. For example, the processor 1010 may determine a code block size of the material. In addition, the processor 1010 may select a codebook in the following ways: (1) in response to the determined code block size being larger than the first threshold code block size, selecting the first codebook among the plurality of codebooks; (2) in response to the determination The output code block size is larger than the second threshold code block size, and the second codebook in the plurality of codebooks is selected. (3) In response to the determined code block size being greater than the third threshold code block size, the plurality of codebooks are selected. Third codebook. The first threshold code block size may be larger than the second threshold code block size. The second threshold code block size may be larger than the third threshold code block size. The size of the first codebook may be larger than the size of the second codebook, and the size of the second codebook may be larger than the size of the third codebook.

說明性過程Illustrative process

第11圖示出基於本申請實施方式的示例性過程1100。過程1100可以表示實施所提出的概念和方案的方面,所提出的概念和方案可以例如關於第1圖-第10圖中部分或者全部的描述。特別的,過程1100可以表示與QC-LDPC編碼有關的所提出的概念和方案的方面。過程1100可以包括塊1110,1120,1130和1140中的一個或者多個所示出的一個或者複數個操作,動作或者功能。雖然被示為離散塊,但是依賴於想要的實施方式,過程1100的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。而且,過程1100的塊/子塊可以以第11圖示出的順序執行,或者以不同的順序執行。過程1100可以被通信系統1000及其任何變形實施。例如,過程1100可以在第一裝置1005和/或第二裝置1050中實施,或者被第一裝置1005和/或第二裝置1050實施。僅出於說明性目的而不限於範圍,如下在第一裝置1005的環境中描述過程1100。過程1100可以開始於塊1110。FIG. 11 illustrates an exemplary process 1100 based on an embodiment of the present application. The process 1100 may represent aspects of implementing the proposed concepts and solutions, and the proposed concepts and solutions may be described, for example, with respect to some or all of FIGS. 1-10. In particular, the process 1100 may represent aspects of the proposed concepts and schemes related to QC-LDPC coding. Process 1100 may include one or more of the operations, actions, or functions shown in one or more of blocks 1110, 1120, 1130, and 1140. Although shown as discrete blocks, depending on the desired implementation, the various blocks of process 1100 may be divided into additional blocks, merged into fewer blocks, or deleted. Moreover, the blocks / sub-blocks of the process 1100 may be performed in the order shown in FIG. 11 or in a different order. Process 1100 may be implemented by communication system 1000 and any variations thereof. For example, the process 1100 may be implemented in the first device 1005 and / or the second device 1050, or performed by the first device 1005 and / or the second device 1050. For illustrative purposes only and not limited in scope, the process 1100 is described in the context of the first device 1005 as follows. Process 1100 may begin at block 1110.

在1110,過程1100可以涉及第一裝置1005的處理器1010產生QC-LDPC碼,所述QC-LDPC碼具有嵌入到其中的複數個碼本。過程1100從1110執行到1120。At 1110, the process 1100 may involve the processor 1010 of the first device 1005 generating a QC-LDPC code, the QC-LDPC code having a plurality of codebooks embedded therein. Process 1100 is executed from 1110 to 1120.

在1120,過程1100可以涉及處理器1010從複數個碼本中選擇碼本。處理器1010可以從1120執行到1130。At 1120, the process 1100 may involve the processor 1010 selecting a codebook from a plurality of codebooks. The processor 1010 may execute from 1120 to 1130.

在1130,過程1100可以涉及處理器1010使用選擇的碼本編碼資料。過程1100從1130執行到1140。At 1130, the process 1100 may involve the processor 1010 encoding the data using the selected codebook. Process 1100 is performed from 1130 to 1140.

在1140,過程1100可以涉及處理器1010經由收發器1030發送編碼的資料(例如,到第二裝置1050)。At 1140, the process 1100 may involve the processor 1010 sending encoded material (eg, to the second device 1050) via the transceiver 1030.

在一些實施方式中,複數個碼本中的每一個碼本可以對應複數個HARQ線程中各自的HARQ線程,該複數個HARQ線程彼此不同。例如,過程1100可以涉及處理器1010使用HARQ與第二裝置1050的處理器1060通信。在從複數個碼本中選擇碼本時,過程1100可以涉及處理器1010執行:(1)將複數個HARQ線程中的每一個HARQ線程關聯或者以其他方式關聯到複數個碼本中的相應碼本;(2)識別當前用於與第二裝置1050通信的HARQ線程;以及(3)選擇複數個碼本中的一個碼本,該複數個碼本中的一個碼本與識別出的HARQ線程對應。可以在編碼將發送到第二裝置1050的資料中使用選擇的碼本。In some implementations, each of the plurality of codebooks may correspond to a respective HARQ thread in the plurality of HARQ threads, and the plurality of HARQ threads are different from each other. For example, the process 1100 may involve the processor 1010 using HARQ to communicate with the processor 1060 of the second device 1050. When selecting a codebook from a plurality of codebooks, the process 1100 may involve the processor 1010 executing: (1) associating or otherwise associating each HARQ thread of the plurality of HARQ threads with the corresponding code in the plurality of codebooks (2) identifying the HARQ thread currently used to communicate with the second device 1050; and (3) selecting one of the plurality of codebooks, one of the plurality of codebooks and the identified HARQ thread correspond. The selected codebook may be used in encoding the material to be sent to the second device 1050.

在一些實施方式中,在產生具有嵌入到其中的複數個碼本的QC-LDPC碼時,過程1100可以涉及處理器1010產生由基本矩陣和一個或者複數個移位係數矩陣組成的QC-LDPC碼。基本矩陣可以包括複數個奇偶位元的奇偶矩陣和複數個資訊位元的資訊矩陣。複數個碼本中的每個碼本可以包括奇偶矩陣和相應尺寸的資訊矩陣的相應部分,使得複數個碼本的尺寸彼此不同。In some embodiments, when generating a QC-LDPC code having a plurality of codebooks embedded therein, the process 1100 may involve the processor 1010 generating a QC-LDPC code composed of a basic matrix and one or a plurality of shift coefficient matrices. . The basic matrix may include a parity matrix of a plurality of parity bits and an information matrix of a plurality of information bits. Each codebook in the plurality of codebooks may include a parity matrix and a corresponding portion of an information matrix of a corresponding size, so that the sizes of the plurality of codebooks are different from each other.

在一些實施方式中,複數個碼本中的每個碼本可以對應移位係數矩陣的複數個設計中的相應設計。In some embodiments, each codebook in the plurality of codebooks may correspond to a corresponding design in the plurality of designs of the shift coefficient matrix.

在一些實施方式中,在產生具有嵌入到其中的複數個碼本的QC-LDPC碼時,過程1100可以涉及處理器1010產生各移位值表,以用於第一集合提升因子中的每一個提升因子。而且,過程1100可以涉及處理器1010優化第一集合提升因子,以產生第二集合提升因子。第一集合提升因子的數量可以大於第二集合提升因子的數量。第一提升因子可以共用第二提升因子的相應移位值表,其中第一提升因子在第一集合中但不在第二集合中,第二提升因子在第一集合和第二集合兩者中。第二提升因子的值可以小於第一提升因子的值,並且第二提升因子比第一集合中其他提升因子更接近第一提升因子。In some embodiments, when generating a QC-LDPC code with a plurality of codebooks embedded therein, the process 1100 may involve the processor 1010 generating each shift value table for each of the first set of boost factors Boost factor. Moreover, the process 1100 may involve the processor 1010 optimizing the first set of boost factors to generate a second set of boost factors. The number of boost factors in the first set may be greater than the number of boost factors in the second set. The first boosting factor may share the corresponding shift value table of the second boosting factor, where the first boosting factor is in the first set but not in the second set, and the second boosting factor is in both the first set and the second set. The value of the second boosting factor may be smaller than the value of the first boosting factor, and the second boosting factor is closer to the first boosting factor than other boosting factors in the first set.

在一些實施方式中,在從複數個碼本中選擇碼本時,過程1100可以涉及處理器1010根據用於傳輸資料的初始碼率和/或資料的碼塊尺寸,從複數個碼本中選擇碼本。In some embodiments, when selecting a codebook from a plurality of codebooks, the process 1100 may involve the processor 1010 selecting from the plurality of codebooks according to an initial code rate for transmitting data and / or a code block size of the data Codebook.

在一些實施方式中,在從複數個碼本中選擇碼本時,過程1100可以涉及處理器1010執行複數個操作(例如,與邏輯流程200中涉及的那些相似)。例如,過程1100可以涉及處理器1010確定資料的碼塊尺寸是否小於閾值碼塊尺寸。回應於資料的碼塊尺寸小於閾值碼塊尺寸,過程1100可以涉及處理器1010選擇複數個碼本中的第三碼本。回應於資料的碼塊尺寸不小於閾值碼塊尺寸,過程1100可以涉及處理器1010確定用於傳輸資料的初始碼率是否大於閾值碼率。回應於初始碼率不大於閾值碼率,過程1100可以涉及處理器1010選擇複數個碼本中的第二碼本。回應於初始碼率大於閾值碼率,過程1100可以涉及處理器1010選擇複數個碼本中的第一碼本。第一碼本的尺寸可以大於第二碼本的尺寸。第二碼本的尺寸可以大於第三碼本的尺寸。In some embodiments, when selecting a codebook from a plurality of codebooks, the process 1100 may involve the processor 1010 performing a plurality of operations (eg, similar to those involved in the logic flow 200). For example, the process 1100 may involve the processor 1010 determining whether the code block size of the material is less than a threshold code block size. In response to the code block size of the data being smaller than the threshold code block size, the process 1100 may involve the processor 1010 selecting a third codebook among the plurality of codebooks. In response to the code block size of the data being not less than the threshold code block size, the process 1100 may involve the processor 1010 determining whether the initial code rate used to transmit the data is greater than the threshold code rate. In response to the initial code rate being not greater than the threshold code rate, the process 1100 may involve the processor 1010 selecting a second codebook among the plurality of codebooks. In response to the initial code rate being greater than the threshold code rate, the process 1100 may involve the processor 1010 selecting a first codebook among the plurality of codebooks. The size of the first codebook may be larger than the size of the second codebook. The size of the second codebook may be larger than the size of the third codebook.

可替換的或者附加的,在從複數個碼本中選擇碼本時,過程1100可以涉及處理器1010執行複數個操作。例如,過程1100可以涉及處理器1010確定資料的碼塊尺寸。基於確定的結果,回應於確定出碼塊尺寸大於第一閾值碼塊尺寸,過程1100可以涉及處理器1010選擇複數個碼本中的第一碼本。而且,回應於確定出碼塊尺寸大於第二閾值碼塊尺寸,過程1100可以涉及處理器1010選擇複數個碼本中的第二碼本。而且,回應於確定出碼塊尺寸大於第三閾值碼塊尺寸,過程1100可以涉及處理器1010選擇複數個碼本中的第三碼本。第一閾值碼塊尺寸可以大於第二閾值碼塊尺寸。第二閾值碼塊尺寸可以大於第三閾值碼塊尺寸。第一碼本的尺寸可以大於第二碼本的尺寸。第二碼本的尺寸可以大於第三碼本的尺寸。Alternatively or additionally, when selecting a codebook from a plurality of codebooks, the process 1100 may involve the processor 1010 performing a plurality of operations. For example, the process 1100 may involve the processor 1010 determining a code block size of the material. Based on the determined result, in response to determining that the code block size is greater than the first threshold code block size, the process 1100 may involve the processor 1010 selecting the first codebook among the plurality of codebooks. Moreover, in response to determining that the code block size is greater than the second threshold code block size, the process 1100 may involve the processor 1010 selecting a second codebook among the plurality of codebooks. Moreover, in response to determining that the code block size is greater than the third threshold code block size, the process 1100 may involve the processor 1010 selecting a third codebook among the plurality of codebooks. The first threshold code block size may be larger than the second threshold code block size. The second threshold code block size may be larger than the third threshold code block size. The size of the first codebook may be larger than the size of the second codebook. The size of the second codebook may be larger than the size of the third codebook.

第12圖示出基於本發明實施方式的示例性過程1200。過程1200可以表示實施所提出的概念和方案的方面,所提出的概念和方案可以例如關於第1圖-第10圖中部分或者全部的描述。而且,過程1200可以表示與混合正交(hybrid orthogonal)LDPC層設計和極低碼率的QC-LDPC支持有關的所提出的概念和方案的方面。過程1200可以包括塊1210,1220和1230中的一個塊或者複數個塊所示出的一個或者複數個操作,動作和功能。雖然被示為離散塊,但是依賴於想要的實施方式,過程1200的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。而且,過程1200的塊/子塊可以以第12圖示出的順序執行,或者以不同的順序執行。過程1200可以被通信系統1000及其任何變形實施。例如,過程1200可以在第一裝置1005和/或第二裝置1050中實施,或者被第一裝置1005和/或第二裝置1050實施。僅出於說明性目的而不限於範圍,如下在第一裝置1005的環境中描述過程1200。過程1200可以開始於塊1210。FIG. 12 illustrates an exemplary process 1200 based on an embodiment of the invention. The process 1200 may represent aspects of implementing the proposed concepts and solutions, and the proposed concepts and solutions may be described, for example, with respect to some or all of FIGS. 1-10. Moreover, the process 1200 may represent aspects of the proposed concepts and solutions related to hybrid orthogonal LDPC layer design and QC-LDPC support for very low code rates. Process 1200 may include one or more of the operations, actions, and functions shown in one of the blocks 1210, 1220, and 1230 or a plurality of blocks. Although shown as discrete blocks, depending on the desired implementation, the various blocks of process 1200 may be divided into additional blocks, merged into fewer blocks, or deleted. Moreover, the blocks / sub-blocks of the process 1200 may be performed in the order shown in FIG. 12, or in a different order. Process 1200 may be implemented by communication system 1000 and any variations thereof. For example, the process 1200 may be implemented in the first device 1005 and / or the second device 1050, or performed by the first device 1005 and / or the second device 1050. For illustrative purposes only and not limited in scope, the process 1200 is described in the context of the first device 1005 as follows. Process 1200 may begin at block 1210.

在1210,過程1200可以是涉及第一裝置1005的處理器1010產生QC-LDPC碼,該QC-LDPC碼至少包括准列(quasi-row)正交層。過程1200可以從1210執行到1220。At 1210, the process 1200 may be a processor 1010 involving the first device 1005 to generate a QC-LDPC code, the QC-LDPC code including at least a quasi-row orthogonal layer. Process 1200 may be performed from 1210 to 1220.

在1220,過程1200可以涉及處理器1010使用QC-LDPC碼編碼資料。過程1200可以從1220執行到1230。At 1220, the process 1200 may involve the processor 1010 encoding data using a QC-LDPC code. Process 1200 may be performed from 1220 to 1230.

在1230,過程1200可以涉及處理器1010經由收發器1030發送編碼的資料(到第二裝置1050)。At 1230, the process 1200 may involve the processor 1010 sending encoded data (to the second device 1050) via the transceiver 1030.

在一些實施方式中,至少一個准列正交層可以包括複數個行和複數個列的位元。至少一個准列正交層的複數個行(column)中的一個或者複數個行可以包括度數為2或者更多的至少一個打孔行。至少一個准列正交層的複數個行中的剩餘行可以包括度數為1或者0的非打孔行。In some embodiments, the at least one quasi-column orthogonal layer may include bits of a plurality of rows and a plurality of columns. One or a plurality of rows of the at least one quasi-column orthogonal layer may include at least one punctured row with a degree of 2 or more. The remaining rows of the plurality of rows of the at least one quasi-column orthogonal layer may include non-perforated rows with a degree of 1 or 0.

在一些實施方式中,在打孔行中可能沒有環(cycle)。In some embodiments, there may be no cycles in the punched rows.

在一些實施方式中,QC-LDPC碼可以包括具有不同度數正交性的複數個部分的混合正交性設計。低度數正交性的複數個部分中第一部分可以對應高碼率,並且高度數正交性的複數個部分中第二部分可以對應低碼率。In some embodiments, the QC-LDPC code may include a hybrid orthogonality design with a plurality of parts having different degrees of orthogonality. The first part of the plurality of parts with low degree of orthogonality may correspond to a high code rate, and the second part of the plurality of parts with high degree of orthogonality may correspond to a low code rate.

在一些實施方式中,不同度數正交性的複數個部分包括以下情況:(1)一非列正交部分,包括複數個列與複數個行,該複數個列與該複數個行形成至少一非列正交層;(2)一準列正交部分,包括複數個列與複數個行,該複數個列與該複數個行形成至少一準列正交層;以及(3)一純列正交層,包括複數個列與複數個行,該複數個列與該複數個行形成至少一純列正交層。在此,非列正交部分的複數個行可以包括至少一個度數為2或者更多的打孔行和度數為1或者0的非打孔行。准列正交部分的複數個行的一個或者複數個行可以包括至少一個度數為2或者更高的打孔行。准列正交部分的複數個行的剩餘行可以包括度數為1或者0的非打孔行。純列正交部分的複數個行的每一個行可以包括度數為1或者0的行。In some embodiments, the plurality of parts with different degrees of orthogonality include the following cases: (1) A non-column orthogonal part includes a plurality of columns and a plurality of rows, and the plurality of columns and the plurality of rows form at least one Non-column orthogonal layer; (2) a quasi-column orthogonal portion including a plurality of columns and a plurality of rows, the plurality of columns and the plurality of rows forming at least one quasi-column orthogonal layer; and (3) a pure column The orthogonal layer includes a plurality of columns and a plurality of rows, and the plurality of columns and the plurality of rows form at least one pure column orthogonal layer. Here, the plurality of rows of the non-column orthogonal portion may include at least one punctured row with a degree of 2 or more and a non-punched row with a degree of 1 or 0. One or a plurality of rows of the quasi-column orthogonal portion may include at least one punched row having a degree of 2 or higher. The remaining rows of the plurality of rows of the quasi-column orthogonal portion may include non-perforated rows with a degree of 1 or 0. Each of the plurality of rows of the pure column orthogonal portion may include rows having a degree of 1 or 0.

在一些實施方式中,QC-LDPC碼可以包括複數個奇偶位元的奇偶矩陣,和複數個資訊位元的資訊矩陣。通過資訊矩陣和奇偶矩陣的一個或者複數個列(row)位元可以包括每列位元度數為2的一個或者複數個列(row)位元 。In some implementations, the QC-LDPC code may include a parity matrix of a plurality of parity bits, and an information matrix of a plurality of information bits. One or a plurality of row bits through the information matrix and the parity matrix may include one or a plurality of row bits having a degree of 2 in each column.

在一些實施方式中,度數為2的複數個位元的一個或者複數個列的度數為2的複數個位元中的每一個位元可以包括之前使用的奇偶位元或者之前發送的資訊位元。In some embodiments, each of the plurality of bits having a degree of two or the plurality of columns of a plurality of bits having a degree of two may each include a previously used parity bit or a previously transmitted information bit. .

第13圖示出基於本申請實施方式的示例性過程1300。過程1300可以表示實施所提出的概念和方案的方面,例如關於第1圖-第10圖中的一些或者全部的描述的概念和方案。更具體的,過程1300可以表示關於核心矩陣設計的所提出的概念和方案的方面。過程1300可以包括塊1310,1320和1330中的一個塊或者複數個塊所示出的一個或者複數個操作,動作和功能。雖然被示為離散塊,但是依賴於想要的實施方式,過程1200的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。而且,過程1300的塊/子塊可以以第13圖所示出的順序執行,或者以不同的順序執行。過程1300可以被通信系統1000及其任何變形實施。例如,過程1300可以在第一裝置1005和/或第二裝置1050中實施,或者被第一裝置1005和/或第二裝置1050實施。僅出於說明性目的而不限於範圍,如下在第一裝置1005的環境中描述過程1300。過程1300可以開始於塊1310。FIG. 13 illustrates an exemplary process 1300 based on an embodiment of the present application. Process 1300 may represent aspects of implementing the proposed concepts and solutions, such as the concepts and solutions described with respect to some or all of Figures 1-10. More specifically, the process 1300 may represent aspects of the proposed concepts and solutions regarding core matrix design. Process 1300 may include one or more of the operations, actions, and functions shown in one of the blocks 1310, 1320, and 1330 or a plurality of blocks. Although shown as discrete blocks, depending on the desired implementation, the various blocks of process 1200 may be divided into additional blocks, merged into fewer blocks, or deleted. Moreover, the blocks / sub-blocks of process 1300 may be performed in the order shown in FIG. 13 or in a different order. Process 1300 may be implemented by communication system 1000 and any variations thereof. For example, the process 1300 may be implemented in the first device 1005 and / or the second device 1050, or performed by the first device 1005 and / or the second device 1050. For illustrative purposes only and not limited in scope, the process 1300 is described in the context of the first device 1005 as follows. Process 1300 may begin at block 1310.

在1310,過程1300可以涉及第一裝置1005的處理器1010產生QC-LDPC碼,該QC-LDPC碼包括基本矩陣,該基本矩陣的一部分形成對應於至少一閾值的碼率的核心矩陣。過程1300可以從1310執行到1320。At 1310, process 1300 may involve the processor 1010 of the first device 1005 generating a QC-LDPC code, the QC-LDPC code including a basic matrix, a portion of which forms a core matrix corresponding to at least a threshold code rate. Process 1300 may be performed from 1310 to 1320.

在1320,過程1300可以涉及處理器1010使用QC-LDPC碼編碼資料。過程1300可以從1320執行到1330。At 1320, the process 1300 may involve the processor 1010 encoding data using QC-LDPC codes. Process 1300 may be performed from 1320 to 1330.

在1330,過程1300可以涉及處理器1010經由收發器1030發送編碼的資料(到第二裝置1050)。At 1330, process 1300 may involve the processor 1010 sending encoded data (to the second device 1050) via the transceiver 1030.

在一些實施方式中,碼率可以是0.89。In some embodiments, the code rate may be 0.89.

在一些實施方式中,核心矩陣可以包括複數個行和複數個列的位元,該複數個行中兩個行或者更多行可以包括具有特定位元樣式的打孔行。In some embodiments, the core matrix may include bits of a plurality of rows and columns, and two or more of the plurality of rows may include perforated rows having a specific bit pattern.

在一些實施方式中,在經過任意次數的行置換(permutation)和/或列置換(例如,至少一次行置換,至少一次列置換,或二者之任意組合)之後,在複數個打孔行中特定位元樣式可以包括:在複數個打孔行中的一個或者複數個位元0。在行置換和/或列置換之後,包括一個或者複數個位元0的特定樣式的兩個例子在第7圖部分(A)示出。在一些實施方式中,在打孔行中的特定位元樣式可以包括位元0的等腰直角三角形,三角形的直角對應于打孔行中的左上角處的位元0。這種等腰直角三角形的位元0的例子示出在第7圖的部分(B)。In some embodiments, after undergoing any number of row permutations and / or column permutations (eg, at least one row permutation, at least one column permutation, or any combination of the two), in a plurality of perforated rows The specific bit pattern may include one of a plurality of punctured rows or a plurality of bits 0. After row permutation and / or column permutation, two examples of a specific pattern including one or a plurality of bits 0 are shown in FIG. 7 (A). In some embodiments, the specific bit pattern in the punched row may include an isosceles right-angled triangle of bit 0, and the right angle of the triangle corresponds to bit 0 at the upper left corner in the punched row. An example of bit 0 of this isosceles right triangle is shown in part (B) of FIG. 7.

在一些實施方式中,核心矩陣可以包括複數個行和複數個列的位元的奇偶矩陣。核心矩陣也可以包括複數個行和複數個列的位元的資訊矩陣。奇偶矩陣可以包括具有Wi-Fi樣式的矩陣。除了核心矩陣的打孔行之外,資訊矩陣的多於一列(row)位元可以包括具有高密度位元1而沒有或只有一個位元0的列(row)。高密度位元的列(row)可以對應Wi-Fi樣式的列(row)。In some embodiments, the core matrix may include a parity matrix of bits in a plurality of rows and a plurality of columns. The core matrix may also include an information matrix of bits in a plurality of rows and a plurality of columns. The parity matrix may include a matrix having a Wi-Fi style. In addition to the perforated rows of the core matrix, more than one row of bits of the information matrix may include rows with high density bit 1 without or only one bit 0. The rows of high-density bits may correspond to Wi-Fi-style rows.

在一些實施方式中,複數個列的底部列的位元可以包括第一數目的位元1。第一數目可以是等於打孔行的數目,或者比打孔行的數目大0,1,2或者3(例如,大一些)。在一些實施方式中,在底部列中第一數目的位元1的一部分可以對應打孔行和核心矩陣的最右側行(column) ,其中該核心矩陣的最右側行(column)在Wi-Fi樣式的右側的邊上。In some embodiments, the bits in the bottom column of the plurality of columns may include a first number of bits 1. The first number may be equal to the number of punched rows, or 0, 1, 2, or 3 (for example, larger) than the number of punched rows. In some embodiments, a portion of the first number of bits 1 in the bottom column may correspond to the punched row and the rightmost row of the core matrix, where the rightmost row of the core matrix is on Wi-Fi On the right side of the style.

在一些實施方式中,核心矩陣可以包括5列位元和20行位元。20行位元的變數節點的度數可以包括如下中一個:[2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], 和 [2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]。5列位元的校驗節點的度數可以包括如下中一個:[13, 10, 14, 17, 2], [13, 10, 13, 17, 2], [13, 10, 13, 18, 3], [13, 11, 13, 18, 2], [13, 10, 14, 18, 2], [13, 10, 13, 19, 2], [14, 10, 13, 18, 1], [13, 11, 13, 18, 1], [13, 10, 14, 18, 1], [13, 11, 13, 19, 1], [13, 10, 13, 18, 2], 和 [13, 10, 13, 18, 1]。In some embodiments, the core matrix may include 5 columns of bits and 20 rows of bits. The degree of a 20-bit variable node can include one of the following: [2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], [ 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3], and [2, 2, 3, 3 , 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]. The degree of the check node of the 5 columns of bits can include one of the following: [13, 10, 14, 17, 2], [13, 10, 13, 17, 2], [13, 10, 13, 18, 3 ], [13, 11, 13, 18, 2], [13, 10, 14, 18, 2], [13, 10, 13, 19, 2], [14, 10, 13, 18, 1], [13, 11, 13, 18, 1], [13, 10, 14, 18, 1], [13, 11, 13, 19, 1], [13, 10, 13, 18, 2], and [ 13, 10, 13, 18, 1].

第14圖示出基於本發明實施方式的示例性過程1400。過程1400可以表示實施所提出的概念和方案的方面,所提出的概念和方案可以例如關於第9圖的描述。更具體的,過程1300可以表示與移位係數設計有關的所提出的概念和方案的方面。過程1400可以包括塊1410,1420和1430中的一個塊或者複數個塊所示出的一個或者複數個操作,動作或者功能。雖然被示為離散塊,但是依賴於想要的實施方式,過程1400的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。而且,過程1400的塊/子塊可以以第14圖所示出的順序執行,或者以不同的順序執行。過程1400可以被通信系統1000及其任何變形實施。例如,過程1400可以在第一裝置1005和/或第二裝置1050中實施,或者被第一裝置1005和/或第二裝置1050實施。僅出於說明性目的而不限於範圍,如下在第一裝置1005的環境中描述過程1400。過程1400可以開始於塊1410。FIG. 14 illustrates an exemplary process 1400 based on an embodiment of the invention. Process 1400 may represent aspects of implementing the proposed concepts and solutions, which may be described, for example, with respect to FIG. 9. More specifically, the process 1300 may represent aspects of the proposed concepts and schemes related to shift coefficient design. Process 1400 may include one or more of the operations, actions, or functions shown in one of the blocks 1410, 1420, and 1430 or a plurality of blocks. Although shown as discrete blocks, depending on the desired implementation, the various blocks of process 1400 may be divided into additional blocks, merged into fewer blocks, or deleted. Moreover, the blocks / sub-blocks of process 1400 may be performed in the order shown in FIG. 14 or in a different order. Process 1400 may be implemented by communication system 1000 and any variations thereof. For example, the process 1400 may be implemented in the first device 1005 and / or the second device 1050, or performed by the first device 1005 and / or the second device 1050. For illustrative purposes only and not limited in scope, the process 1400 is described in the context of the first device 1005 as follows. Process 1400 may begin at block 1410.

在1410,過程1400可以是涉及第一裝置1005的處理器1010產生QC-LDPC碼。過程1400可以從1410執行到1420。At 1410, the process 1400 may be a processor 1010 involving the first device 1005 to generate a QC-LDPC code. Process 1400 may be performed from 1410 to 1420.

在1420,過程1400可以涉及處理器1010使用QC-LDPC碼編碼資料。過程1400可以從1420執行到1430。At 1420, the process 1400 may involve the processor 1010 encoding data using QC-LDPC codes. Process 1400 may be performed from 1420 to 1430.

在1430,過程1400可以涉及處理器1010經由收發器1030發送編碼的資料(例如,到第二裝置1050)。At 1430, the process 1400 may involve the processor 1010 sending encoded material (eg, to the second device 1050) via the transceiver 1030.

在產生QC-LDPC碼時,過程1400可以涉及處理器1010執行由子塊1412-1414表示的複數個操作。When generating the QC-LDPC code, the process 1400 may involve the processor 1010 performing a plurality of operations represented by sub-blocks 1412-1414.

在1412中,過程1400可以涉及處理器1010為第一集合提升因子中每一個提升因子產生相應的移位值表。過程1400可以從1412執行到1414。In 1412, the process 1400 may involve the processor 1010 generating a corresponding shift value table for each of the first set of boosting factors. Process 1400 may be performed from 1412 to 1414.

在1414中,過程1400可以涉及處理器1010優化第一集合提升因子,以產生第二集合提升因子。In 1414, the process 1400 may involve the processor 1010 optimizing the first set of boost factors to generate a second set of boost factors.

第一集合的提升因子的數目可以大於第二集合的提升因子的數目。第一提升因子可以共用第二提升因子的相應移位值表,其中第一提升因子是位於第一集合中而不位於第二集合中,第二提升因子位於第一集合和第二集合中。第二提升因子的值可以比第一提升因子的值小,並且比第一集合中的其他提升因子更接近第一提升因子。The number of boost factors of the first set may be greater than the number of boost factors of the second set. The first boosting factor may share the corresponding shift value table of the second boosting factor, where the first boosting factor is located in the first set and not in the second set, and the second boosting factor is located in the first set and the second set. The value of the second boosting factor may be smaller than the value of the first boosting factor and closer to the first boosting factor than other boosting factors in the first set.

第24圖示出基於本發明實施方式的無線通訊的示例性過程2400。過程2400可以表示實施所提出的概念和方案的方面,所提出的概念和方案可以例如關於第1圖-第10圖和第15(A)圖-第23圖的部分或者全部的描述。更具體的,過程2400可以表示與用於移動通信中大碼塊尺寸的QC-LDPC碼的移位係數表設計有關的所提出的概念和方案的方面。過程2400可以包括塊2410和2420和子塊24202,24204,24206,24208,24210和24212中的一個或者複數個所示出的一個或者複數個操作,動作和功能。雖然被示為離散塊,但是依賴於想要的實施方式,過程2400的各種塊可以被劃分為附加塊,被合併成更少塊,或者刪除。而且,過程2400的塊/子塊可以以第24圖所示出的順序執行,或者以不同的順序執行。過程2400可以被通信系統1000及其任何變形實施。例如,過程2400可以在第一裝置1005和/或第二裝置1050中實施,或者被第一裝置1005和/或第二裝置1050實施。僅出於說明性目的而不限於範圍,如下在第一裝置1005的環境中描述過程1400,但是同樣也可以應用到裝置1050。過程2400可以開始於塊2410。FIG. 24 illustrates an exemplary process 2400 of wireless communication based on an embodiment of the present invention. Process 2400 may represent aspects of implementing the proposed concepts and solutions, which may be described, for example, with respect to some or all of FIGS. 1-10, and 15 (A) -23. More specifically, the process 2400 may represent aspects of the proposed concepts and schemes related to the design of shift coefficient tables for QC-LDPC codes for large code block sizes in mobile communications. Process 2400 may include one or a plurality of one or more of the operations, actions, and functions shown in blocks 2410 and 2420 and sub-blocks 24202, 24204, 24206, 24208, 24210, and 24212. Although shown as discrete blocks, depending on the desired implementation, the various blocks of process 2400 may be divided into additional blocks, merged into fewer blocks, or deleted. Moreover, the blocks / sub-blocks of process 2400 may be performed in the order shown in FIG. 24, or in a different order. Process 2400 may be implemented by communication system 1000 and any variations thereof. For example, the process 2400 may be implemented in the first device 1005 and / or the second device 1050, or performed by the first device 1005 and / or the second device 1050. For illustrative purposes only and not limited in scope, the process 1400 is described in the environment of the first device 1005 as follows, but the same can be applied to the device 1050 as well. Process 2400 may begin at block 2410.

在2410,過程2400可以涉及第一裝置1005的處理器1010經由裝置1005的收發器1030,與至少一個其他裝置(例如,第二裝置1050)建立無線通訊鏈路。過程2400可以從2410執行到2420。At 2410, process 2400 may involve the processor 1010 of the first device 1005 establishing a wireless communication link with at least one other device (eg, the second device 1050) via the transceiver 1030 of the device 1005. Process 2400 may be performed from 2410 to 2420.

在2420,過程2400可以涉及處理器1010經由收發器1030通過無線通訊鏈路與其他裝置無線通訊。在與其他裝置的無線通訊中,過程2400可以涉及處理器1010執行24202, 24204, 24206, 24208, 24210和 24212表示的複數個操作。At 2420, process 2400 may involve the processor 1010 wirelessly communicating with other devices via the wireless communication link via the transceiver 1030. In wireless communication with other devices, the process 2400 may involve the processor 1010 performing a plurality of operations represented by 24202, 24204, 24206, 24208, 24210, and 24212.

在24202,過程2400可以涉及處理器1010從複數個移位係數表中選擇第一移位係數表。過程2400可以從24202執行到24204。At 24202, process 2400 may involve the processor 1010 selecting a first shift coefficient table from a plurality of shift coefficient tables. Process 2400 can be performed from 24202 to 24204.

在24204,過程2400可以涉及處理器1010使用第一移位係數表的至少一部分和基本矩陣,產生QC-LDPC碼。過程2400可以從24204執行到24206。At 24204, the process 2400 may involve the processor 1010 using at least a portion of the first shift coefficient table and a basic matrix to generate a QC-LDPC code. Process 2400 may be performed from 24204 to 24206.

在24206,過程2400可以涉及處理器1010從嵌入到QC-LDPC碼的複數個碼本中選擇碼本。過程2400可以從24206執行到24208。At 24206, the process 2400 may involve the processor 1010 selecting a codebook from a plurality of codebooks embedded in the QC-LDPC code. Process 2400 can be performed from 24206 to 24208.

在24208,過程2400可以涉及處理器1010存儲選擇的碼本到與處理器相關的記憶體。過程2400可以從24208執行到24210。At 24208, process 2400 may involve the processor 1010 storing the selected codebook into processor-related memory. Process 2400 can be performed from 24208 to 24210.

在24210,過程2400可以涉及處理器1010使用選擇的碼本編碼資料,以產生資料的複數個調製符號。過程2400可以從24210執行到24212。At 24210, process 2400 may involve processor 1010 encoding the data using the selected codebook to generate a plurality of modulation symbols for the data. Process 2400 may be performed from 24210 to 24212.

在24212,過程2400可以涉及處理器1010控制收發器1030複用,轉換,濾波,放大調製符號,和通過第一裝置1005的一個或者複數個天線程1036輻射調製符號作為電磁波,以經由無線通訊鏈路發送資料的調製符號到其他裝置。At 24212, process 2400 may involve the processor 1010 controlling the transceiver 1030 to multiplex, convert, filter, and amplify the modulation symbols, and radiate the modulation symbols as electromagnetic waves through one or more of the sky threads 1036 of the first device 1005 to pass the wireless communication chain It sends the modulation symbols of the data to other devices.

在一些實施方式中,第一移位係數表可以包括以如下形式佈置為4列和26行的基本移位係數表: In some embodiments, the first shift coefficient table may include a basic shift coefficient table arranged in 4 columns and 26 rows in the following form:

在一些實施方式中,第一移位係數表可以包括如第18A圖-第18B圖所示出的移位係數表。In some embodiments, the first shift coefficient table may include a shift coefficient table as shown in FIGS. 18A to 18B.

在一些實施方式中,第一移位係數表可以包括對應於具有原始元素5(a=5)和提升因子320的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素7 (a = 7)和提升因子224的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素15 (a = 15)和提升因子240的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素9 (a = 9)和提升因子288的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素11 (a = 11)和提升因子352的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素3 (a = 3)和提升因子384的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素13 (a = 13)和提升因子208的BG1的移位係數表。或者,第一移位係數表可以包括對應於具有原始元素2 (a = 2)和提升因子256的BG1的移位係數表。In some embodiments, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 5 (a = 5) and a boost factor 320. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 7 (a = 7) and a boosting factor 224. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 15 (a = 15) and a boosting factor 240. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 9 (a = 9) and a boosting factor 288. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 11 (a = 11) and a boosting factor 352. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 3 (a = 3) and a boosting factor 384. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 13 (a = 13) and a boosting factor 208. Alternatively, the first shift coefficient table may include a shift coefficient table corresponding to BG1 having an original element 2 (a = 2) and a boost factor of 256.

在一些實施方式中,在從複數個移位係數表中選擇第一移位係數表時,過程2400可以涉及處理器1010根據一個或者複數個規則,選擇用於相對較大的碼塊尺寸的第一移位係數表,其中該一個或者複數個規則與碼塊尺寸和資料的碼率中任一者或者兩者相關。In some embodiments, when selecting a first shift coefficient table from a plurality of shift coefficient tables, the process 2400 may involve the processor 1010 selecting a first shift coefficient table for a relatively large code block size according to one or a plurality of rules. A shift coefficient table, wherein the one or more rules are related to either or both of a code block size and a code rate of data.

在一些實施方式中,在使用第一移位係數表的至少一部分和基本矩陣產生QC-LDPC碼時,過程2400可以涉及處理器1010使用第一移位係數表的全部(full portion) 和基本矩陣產生QC-LDPC碼。In some embodiments, when using at least a part of the first shift coefficient table and the basic matrix to generate a QC-LDPC code, the process 2400 may involve the processor 1010 using the full portion of the first shift coefficient table and the basic matrix. Generate QC-LDPC codes.

在一些實施方式中,在使用第一移位係數表的至少一部分和基本矩陣產生QC-LDPC碼時,過程2400可以涉及處理器1010使用第一移位係數表的一部分(partial portion)和基本矩陣產生QC-LDPC碼。In some implementations, when using at least a portion of the first shift coefficient table and a basic matrix to generate a QC-LDPC code, the process 2400 may involve the processor 1010 using a partial portion of the first shift coefficient table and a basic matrix. Generate QC-LDPC codes.

在一些實施方式中,在從複數個移位係數表中選擇第一移位係數表時,過程2400可以涉及處理器1010選擇第二移位係數表,該第二移位係數表中的值對一個或者複數個提升因子的取模結果與至少第一移位係數表中的取模結果相同。In some embodiments, when selecting a first shift coefficient table from a plurality of shift coefficient tables, the process 2400 may involve the processor 1010 selecting a second shift coefficient table, and the pair of values in the second shift coefficient table The modulo result of the one or more boosting factors is the same as the modulo result in at least the first shift coefficient table.

在一些實施方式中,在使用第一移位係數表的至少一部分和基本矩陣產生QC-LDPC碼時,過程2400可以涉及處理器1010使用第二移位係數表的(full portion)全部和基本矩陣產生QC-LDPC碼。In some embodiments, when using at least a part of the first shift coefficient table and the basic matrix to generate a QC-LDPC code, the process 2400 may involve the processor 1010 using the full portion of the second shift coefficient table and the basic matrix. Generate QC-LDPC codes.

在一些實施方式中,在使用第一移位係數表的至少一部分和基本矩陣產生QC-LDPC碼時,過程2400可以涉及處理器1010使用第二移位係數表的一部分(partial portion)和基本矩陣產生QC-LDPC碼。In some implementations, when using at least a part of the first shift coefficient table and a basic matrix to generate a QC-LDPC code, the process 2400 may involve the processor 1010 using a part of the second shift coefficient table and a basic matrix. Generate QC-LDPC codes.

在一些實施方式中,在從複數個移位係數表中選擇第一移位係數表時,處理器2400可以涉及處理器1010執行複數個操作。例如,處理器2400可以涉及處理器1010確定碼塊尺寸是否小於或者等於閾值碼塊尺寸。此外,過程2400可以涉及處理器1010確定碼率是否小於或者等於閾值碼率。而且,過程2400可以涉及處理器1010回應於確定碼塊尺寸大於閾值碼塊尺寸或者回應於確定碼率大於閾值碼率,選擇對應於基礎圖表BG1的第一移位係數表。或者,過程2400可以涉及處理器1010回應於確定碼塊尺寸小於或者等於閾值碼塊尺寸或者回應於確定碼率小於或者等於閾值碼率,選擇對應於基礎圖表BG2的第一移位係數表。In some embodiments, when selecting the first shift coefficient table from the plurality of shift coefficient tables, the processor 2400 may involve the processor 1010 to perform a plurality of operations. For example, the processor 2400 may involve the processor 1010 determining whether a code block size is less than or equal to a threshold code block size. Further, the process 2400 may involve the processor 1010 determining whether the code rate is less than or equal to a threshold code rate. Moreover, the process 2400 may involve the processor 1010 selecting a first shift coefficient table corresponding to the basic graph BG1 in response to determining that the code block size is greater than a threshold code block size or in response to determining that the code rate is greater than a threshold code rate. Alternatively, the process 2400 may involve the processor 1010 selecting a first shift coefficient table corresponding to the basic graph BG2 in response to determining that the code block size is less than or equal to the threshold code block size or in response to determining that the code rate is less than or equal to the threshold code rate.

在一些實施方式中,複數個碼本中的每一個碼本可以對應於複數個HARQ線程中的相應的HARQ線程,其中複數個HARQ線程彼此不同。In some embodiments, each of the plurality of codebooks may correspond to a corresponding HARQ thread of the plurality of HARQ threads, where the plurality of HARQ threads are different from each other.

在一些實施方式中,在從複數個碼本中選擇碼本時,過程2400可以涉及處理器1010執行複數個操作。例如,過程2400可以涉及處理器1010執行複數個操作。例如,過程2400可以涉及處理器1010確定資料的碼塊尺寸是否小於閾值碼塊尺寸。另外,過程2400可以涉及處理器1010回應於資料的碼塊尺寸小於閾值碼塊尺寸,選擇複數個碼本中的第三碼本。而且,回應於資料的碼塊尺寸不小於閾值碼塊尺寸,過程2400可以涉及處理器1010確定用於傳輸資料的初始碼率是否大於閾值碼率。而且,回應於初始碼率不大於閾值碼率,過程2400可以涉及處理器1010選擇複數個碼本中的第二碼本。而且,回應於初始碼率大於閾值碼率,過程2400可以涉及處理器1010選擇複數個碼本中的第一碼本。第一碼本的尺寸可以大於第二碼本的尺寸,並且第二碼本的尺寸可以大於第三碼本的尺寸。In some embodiments, when selecting a codebook from a plurality of codebooks, the process 2400 may involve the processor 1010 performing a plurality of operations. For example, the process 2400 may involve the processor 1010 performing a plurality of operations. For example, the process 2400 may involve the processor 1010 determining whether the code block size of the material is less than a threshold code block size. In addition, the process 2400 may involve the processor 1010 selecting a third codebook among the plurality of codebooks in response to the code block size of the data being smaller than the threshold code block size. Moreover, in response to the code block size of the data being not less than the threshold code block size, the process 2400 may involve the processor 1010 determining whether the initial code rate used to transmit the data is greater than the threshold code rate. Moreover, in response to the initial code rate being not greater than the threshold code rate, the process 2400 may involve the processor 1010 selecting a second codebook among the plurality of codebooks. Moreover, in response to the initial code rate being greater than the threshold code rate, the process 2400 may involve the processor 1010 selecting a first codebook among the plurality of codebooks. The size of the first codebook may be larger than the size of the second codebook, and the size of the second codebook may be larger than the size of the third codebook.

在一些實施方式中,在從複數個碼本中選擇碼本時,過程2400可以涉及處理器1010執行複數個操作。例如,過程2400可以涉及處理器1010確定資料的碼塊尺寸。此外,過程2400可以涉及處理器1010通過如下選擇碼本:(1)回應於確定碼塊尺寸大於第一閾值碼塊尺寸,選擇複數個碼本中的第一碼本;(2)回應於確定碼塊尺寸大於第二閾值碼塊尺寸,選擇複數個碼本中的第二碼本;(3)回應於確定碼塊尺寸大於第三閾值碼塊尺寸,選擇複數個碼本中的第三碼本。第一閾值碼塊尺寸可以大於第二閾值碼塊尺寸。第二閾值碼塊尺寸可以大於第三閾值碼塊尺寸。第一碼本的尺寸可以大於第二碼本的尺寸,並且第二碼本的尺寸可以大於第三碼本的尺寸。In some embodiments, when selecting a codebook from a plurality of codebooks, the process 2400 may involve the processor 1010 performing a plurality of operations. For example, the process 2400 may involve the processor 1010 determining a code block size of the material. In addition, the process 2400 may involve the processor 1010 selecting a codebook by: (1) in response to determining that the code block size is greater than the first threshold code block size, selecting the first codebook among the plurality of codebooks; (2) responding to the determination The code block size is larger than the second threshold code block size, and the second codebook in the plurality of codebooks is selected; (3) in response to determining that the code block size is greater than the third threshold code block size, the third code in the plurality of codebooks is selected this. The first threshold code block size may be larger than the second threshold code block size. The second threshold code block size may be larger than the third threshold code block size. The size of the first codebook may be larger than the size of the second codebook, and the size of the second codebook may be larger than the size of the third codebook.

附加說明Additional information

本文描述的主題有時示出包含在其他不同元件內或與其他不同元件連接的不同元件。需要理解的是,這樣描繪的架構僅僅是示例,並且實際上可以實施許多其他架構,以實現相同的功能。在概念意義上,實現相同功能的任何組件佈置有效地“關聯”,以使得實現期望的功能。因此,這裡組合以實現特定功能的任何兩個元件可以被視為彼此“關聯”,使得實現期望的功能,而不管架構或中間組件。同樣地,如此關聯的任何兩個元件也可以被視為彼此“可操作地連接”或“可操作地耦合”以實現期望的功能,並且能夠如此關聯的任何兩個元件也可以被視為“可操作地可耦合的”,以實現所需的功能。可操作可耦合的具體示例包括但不限於物理上可配對和/或物理上相互作用的元件和/或可無線交互和/或無線交互的元件和/或邏輯上相互作用和/或邏輯上可交互的元件。The subject matter described herein sometimes illustrates different elements contained within or connected to other different elements. It needs to be understood that the architecture depicted in this way is only an example, and many other architectures can actually be implemented to achieve the same functionality. In a conceptual sense, any component arrangement that achieves the same function is effectively "associated" such that the desired function is achieved. Thus, any two elements combined here to achieve a particular function may be considered to be "associated" with each other such that the desired function is achieved, regardless of architecture or intermediate components. Likewise, any two elements so associated can also be considered as "operably connected" or "operably coupled" to each other to achieve the desired function, and any two elements that can be so associated can also be considered as " Operable and Coupling "to achieve the required functionality. Specific examples of operable and coupleable include, but are not limited to, physically pairable and / or physically interacting elements and / or wirelessly interacting and / or wirelessly interacting elements and / or logically interacting and / or logically interacting Interactive components.

此外,關於本文中任何複數和/或單數術語的使用,所屬領域具有通常知識者可以根據上下文和/或申請從複數轉換為單數和/或從單數轉換為複數。為清楚起見,這裡可以明確地闡述各種單數/複數排列(permutation)。In addition, regarding the use of any plural and / or singular terminology herein, those having ordinary knowledge in the art can convert from plural to singular and / or from singular to plural according to the context and / or application. For the sake of clarity, various singular / plural permutations can be explicitly explained here.

此外,所屬領域具有通常知識者將理解,一般來說,本文所使用的術語,特別是所附申請專利範圍中所使用的術語,例如所附申請專利範圍的主體,通常旨在作為“開放”術語,例如,術語“包括”應被解讀成“包括但不限於”, 術語“具有” 應被解讀成“至少具有”, 術語“包含”應被解讀成“包含但不限於”,等等。所屬領域具有通常知識者應進一步理解如果意圖要求一定數目的申請專利範圍記載,這個意圖應該在申請專利範圍中明確記載,如果沒有這個記載就沒有這個意圖。例如,作為對理解的幫助,以下所附申請專利範圍可以包含介紹性詞語的使用“至少一個”和“一個或複數個”以引進申請專利範圍的記載。然而,這些詞語的使用不應被解釋為由不定冠詞“a”或者“an”引入的申請專利範圍記載限定了任何包括此被引入的申請專利範圍記載的任何特定申請專利範圍的實施僅僅包括一個這樣的記載,甚至當相同的申請專利範圍包括介紹性詞語“一個或者複數個”或者“至少一個”,以及非限定冠詞例如“a”或者“an” ,例如“a”和/或者“an”, 應當被解讀出意味著“至少一個”或者“一個或者複數個”;同樣適用於用於引入申請專利範圍記載的限定性冠詞的使用。此外,即使明確地敘述了所引入的申請專利範圍記載的具體數量,所屬領域具有通常知識者將認識到,這種記載應被解釋為至少表示所記載的數量,例如,只有“兩個記載”而沒有其他修飾語,指至少兩個記載,或兩個或複數個記載。此外,在使用類似於“A,B和C”中的至少一個等等的慣例的情況下,通常這種構造意圖在所屬領域具有通常知識者將理解慣例的意義上,例如“具有A,B和C中的至少一個的系統”將包括但不限於僅具有A,僅具有B,僅具有C,A和B一起的,A和C一起的, B和C一起的系統,和/或A,B和C一起的系統等。在使用類似於“A,B或C”中的至少一個等等的慣例的那些情況下,通常這種結構意圖在某種意義上所屬領域具有通常知識者將理解慣例,例如,“具有A,B或C中的至少一個的系統”將包括但不限於僅具有A,僅具有B,僅具有C,A和B在一起的系統,A和C一起的系統,B和C在一起的系統,和/或A,B和C在一起等。所屬領域具有通常知識者將進一步理解,實際上無論在實施方式,申請專利範圍或附圖中,表示兩個或者複數個替換條件的任何分離詞和/或術語都應被理解成考慮包括複數個條件之一,任何一個條件或兩個條件的可能性。例如,短語“A或B”將被理解為包括“A”或“B”或“A和B”的可能性。In addition, those with ordinary knowledge in the art will understand that, in general, the terms used herein, especially those used in the scope of the attached patent application, such as the subject of the scope of the attached patent application, are generally intended to be "open" Terms, for example, the term "including" should be read as "including but not limited to", the term "having" should be read as "having at least", the term "including" should be read as "including but not limited to", and so on. Those with ordinary knowledge in the field should further understand that if the intention requires a certain number of patent application scope records, this intention should be clearly stated in the patent application scope, if there is no such record, there is no such intention. For example, as an aid to understanding, the scope of the attached patent application below may include introductory terms using "at least one" and "one or more" to introduce records of the scope of the patent application. However, the use of these words should not be construed as the application of the patent scope record introduced by the indefinite article "a" or "an" defines any implementation of the patent scope of any particular application that includes this introduced patent scope record including only one Such records, even when the same patent application scope includes introductory words "one or more" or "at least one", and non-limiting articles such as "a" or "an", such as "a" and / or "an" , Should be interpreted to mean "at least one" or "one or more"; the same applies to the use of restrictive articles used to introduce the scope of the patent application. In addition, even if the specific number of records of the scope of the patent application introduced is clearly stated, those skilled in the art will recognize that such records should be interpreted to indicate at least the number of records, for example, only "two records" Without other modifiers, it means at least two records, or two or more records. In addition, in the case of using a convention similar to at least one of "A, B, and C", etc., generally, this configuration is intended in the sense that a person having ordinary knowledge in the art will understand the convention, such as "having A, B "A system with at least one of C" will include, but is not limited to, a system with only A, only B, only C, A and B together, A and C together, B and C together, and / or A, B and C systems together, etc. In those cases that use conventions like at least one of "A, B or C", etc., usually this structure is intended in a sense that a person with ordinary knowledge in the field will understand the conventions, for example, "having A, "A system of at least one of B or C" will include, but is not limited to, a system with only A, only B, with only C, A and B together, a system with A and C together, a system with B and C together, And / or A, B and C together, etc. Those with ordinary knowledge in the art will further understand that, in fact, any separated word and / or term indicating two or more replacement conditions should be considered to include a plurality of One of the conditions, the possibility of either or both conditions. For example, the phrase "A or B" will be understood to include the possibility of "A" or "B" or "A and B".

由上可知,可以理解的是,為了說明目的本文已經描述了本申請公開的各種實施方式,並且可以做出各種修改而不脫離本發明申請的範圍和精神。因此,本文所公開的各種實施方式並不意味著是限制性的,真正的範圍和精神由所附專利申請範圍確定。From the above, it can be understood that, for the purpose of illustration, various embodiments disclosed in the present application have been described herein, and various modifications can be made without departing from the scope and spirit of the present application. Therefore, the various embodiments disclosed herein are not meant to be limiting, and the true scope and spirit are determined by the scope of the attached patent application.

100‧‧‧基本矩陣100‧‧‧ Basic Matrix

I1‧‧‧資訊矩陣的第一部分I1‧‧‧ the first part of the information matrix

I2‧‧‧資訊矩陣的第二部分I2‧‧‧ Part Two of the Information Matrix

I3‧‧‧資訊矩陣的第三部分I3‧‧‧ Part Three of the Information Matrix

200‧‧‧流程200‧‧‧ flow

210,220,230,240,250‧‧‧塊210, 220, 230, 240, 250 ‧ ‧ ‧ blocks

300‧‧‧准列正交層設計300‧‧‧ Quasi-column orthogonal layer design

400‧‧‧混合正交層設計400‧‧‧ mixed orthogonal layer design

500‧‧‧QC-LDPC500‧‧‧QC-LDPC

600‧‧‧核心矩陣600‧‧‧ Core Matrix

700‧‧‧核心基本矩陣700‧‧‧ Core Basic Matrix

800‧‧‧核心基本矩陣800‧‧‧ Core Basic Matrix

900‧‧‧移位係數設計900‧‧‧ shift coefficient design

1000‧‧‧通信系統1000‧‧‧communication system

1005‧‧‧第一裝置1005‧‧‧First device

1050‧‧‧第二裝置1050‧‧‧Second Device

1036, 1086‧‧‧天線1036, 1086‧‧‧ Antenna

1030,1080‧‧‧收發器1030, 1080‧‧‧‧ Transceiver

1032,1082‧‧‧發送器1032, 1082 ‧‧‧ transmitter

1034,1084‧‧‧接收器1034, 1084 ‧‧‧ receiver

1010,1060‧‧‧處理器1010, 1060‧‧‧ processor

1012,1062‧‧‧編碼器1012, 1062‧‧‧ Encoder

1014,1064‧‧‧解碼器1014, 1064‧‧‧ decoder

1016,1066‧‧‧記憶體1016, 1066‧‧‧Memory

1020,1070‧‧‧記憶體1020, 1070‧‧‧Memory

1022,1072‧‧‧指令1022, 1072 ‧ ‧ ‧ instructions

1024,1074‧‧‧資料1024, 1074 ‧ ‧ ‧ data

1040‧‧‧通信鏈路1040‧‧‧communication link

1100‧‧‧過程1100‧‧‧process

1110,1120,1130,1140‧‧‧塊1110, 1120, 1130, 1140 ‧‧‧ blocks

1200‧‧‧過程1200‧‧‧process

1210,1220,1230‧‧‧塊1210, 1220, 1230 ‧‧‧ blocks

1300‧‧‧過程1300‧‧‧process

1310,1320,1330‧‧‧塊1310, 1320, 1330 ‧‧‧ blocks

1400‧‧‧過程1400‧‧‧process

1410,1420,1430,1412,1414‧‧‧塊1410, 1420, 1430, 1412, 1414 ‧‧‧ blocks

1500‧‧‧移位係數表1500‧‧‧ shift coefficient table

1600‧‧‧移位係數表1600‧‧‧Shift coefficient table

1700‧‧‧移位係數表1700‧‧‧Shift coefficient table

1800‧‧‧移位係數表1800‧‧‧ shift coefficient table

1900‧‧‧移位係數表1900‧‧‧ shift coefficient table

2000‧‧‧移位係數表2000‧‧‧ shift coefficient table

2100‧‧‧移位係數表2100‧‧‧Shift coefficient table

2200‧‧‧移位係數表2200‧‧‧Shift coefficient table

2300‧‧‧過程2300‧‧‧process

2310,2320,2330,2340‧‧‧塊2310, 2320, 2330, 2340 ‧‧‧ blocks

2400‧‧‧過程2400‧‧‧process

2410,2420‧‧‧塊2410, 2420 ‧ ‧ ‧ blocks

24202,24204,24206,24208,24210,24212‧‧‧子塊24202, 24204, 24206, 24208, 24210, 24212, ‧‧‧ subblocks

附圖被包含以提供對本申請的進一步理解,並且附圖被併入並構成本申請的一部分。附圖示出了本申請的實施方式,並且與說明書一起用於解釋本申請的原理。可以理解的是,附圖不一定按比例繪製,一些部件與實際實施中的尺寸不成比例的示出以清楚地說明本申請的概念。 第1圖是基於本申請的實施方式的示例性多碼本嵌入的LDPC碼設計的示意圖; 第2圖是基於本申請的實施方式的與多碼本嵌入的LDPC碼相關的示例邏輯流程的示意圖; 第3圖是基於本申請的實施方式的示例性准列(quasi-row)正交層設計的示意圖; 第4圖是基於本申請的實施方式的示例性混合(hybrid)正交性層設計的示意圖; 第5圖是基於本申請的實施方式的支援極低碼率的示例性QC-LDPC碼的示意圖; 第6圖是基於本申請的實施方式的示例性核心(kernel)矩陣設計; 第7圖是基於本申請的實施方式的核心基本矩陣的示例性概念的示意圖; 第8圖是基於本申請的另一實施方式的核心基本矩陣的示例性概念的示意圖; 第9圖是基於本申請的實施方式的示例性移位係數設計的示意圖; 第10圖是基於本申請的實施方式的示例性通信系統的框圖; 第11圖是基於本申請的實施方式的示例性過程的流程圖; 第12圖是基於本申請的另一實施方式的示例性過程的流程圖; 第13圖是基於本申請的另一實施方式的示例性過程的流程圖; 第14圖是基於本申請的另一實施方式的示例性過程的流程圖; 第15(A)圖和第15(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第16(A)圖和第16(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第17(A)圖和第17(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第18(A)圖和第18(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第19(A)圖和第19(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第20(A)圖和第20(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第21(A)圖和第21(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第22(A)圖和第22(B)圖中每一個是基於本申請實施方式的部分示例性移位係數表的示意圖; 第23圖是基於本申請的實施方式的關於選擇移位係數表的示例性邏輯流程的示意圖; 第24圖是基於本申請的另一實施方式的示例性過程的流程圖。The accompanying drawings are included to provide a further understanding of the application, and the drawings are incorporated in and constitute a part of this application. The drawings illustrate embodiments of the present application and, together with the description, serve to explain principles of the application. It can be understood that the drawings are not necessarily drawn to scale, and some components are shown disproportionate to the dimensions in actual implementation to clearly illustrate the concept of the present application. FIG. 1 is a schematic diagram of an exemplary multi-codebook embedded LDPC code design based on an embodiment of the present application; FIG. 2 is a schematic diagram of an example logic flow related to a multi-codebook embedded LDPC code based on an embodiment of the present application; Figure 3 is a schematic diagram of an exemplary quasi-row orthogonal layer design based on an embodiment of the present application; Figure 4 is an exemplary hybrid orthogonal layer design based on an embodiment of the present application; Figure 5 is a schematic diagram of an exemplary QC-LDPC code supporting an extremely low code rate based on an embodiment of the present application; Figure 6 is an exemplary kernel matrix design based on an embodiment of the present application; FIG. 7 is a schematic diagram of an exemplary concept of a core basic matrix based on an embodiment of the present application; FIG. 8 is a schematic diagram of an exemplary concept of a core basic matrix based on another embodiment of the present application; FIG. 9 is based on the present application FIG. 10 is a block diagram of an exemplary communication system based on an embodiment of the present application; FIG. 10 is a block diagram of an exemplary communication system based on an embodiment of the present application; FIG. 11 is a diagram based on an embodiment of the present application A flowchart of an exemplary process; FIG. 12 is a flowchart of an exemplary process based on another embodiment of the present application; FIG. 13 is a flowchart of an exemplary process based on another embodiment of the present application; FIG. 14 Is a flowchart of an exemplary process based on another embodiment of the present application; each of FIG. 15 (A) and FIG. 15 (B) is a schematic diagram of an exemplary shift coefficient table based on an embodiment of the present application; Each of FIGS. 16 (A) and 16 (B) is a schematic diagram of some exemplary shift coefficient tables based on the embodiment of the present application; each of FIGS. 17 (A) and 17 (B) is FIG. 18 (A) and FIG. 18 (B) are schematic diagrams of some exemplary shift coefficient tables based on the embodiments of the present application; Each of FIG. 19 (A) and FIG. 19 (B) is a schematic diagram of some exemplary shift coefficient tables based on the embodiment of the present application; each of FIG. 20 (A) and FIG. 20 (B) is based on Schematic diagram of some exemplary shift coefficient tables in the embodiments of the present application; each of FIGS. 21 (A) and 21 (B) Each is a schematic diagram of a partial exemplary shift coefficient table based on an embodiment of the present application; each of FIG. 22 (A) and FIG. 22 (B) is a schematic diagram of a partial exemplary shift coefficient table based on an embodiment of the present application FIG. 23 is a schematic diagram of an exemplary logical flow for selecting a shift coefficient table based on an embodiment of the present application; FIG. 24 is a flowchart of an exemplary process based on another embodiment of the present application.

Claims (20)

一種無線通訊的方法,包括: 裝置的處理器經由裝置的收發器與至少一個其他裝置建立無線通訊鏈路;以及 所述處理器經由所述無線通訊鏈路通過如下方式與所述其他裝置無線通訊: 從複數個移位係數表中選擇第一移位係數表; 使用基本矩陣和至少一部分的第一移位係數表,產生准迴圈低密度奇偶校驗(QC-LDPC)碼; 從嵌入到所述QC-LDPC碼中的複數個碼本中選擇碼本; 存儲所選擇的碼本到與所述處理器相關的記憶體; 使用所選擇的碼本對資料進行編碼,以產生所述資料的複數個調製符號;以及 控制所述收發器複用,轉換,濾波,放大所述調製符號和通過所述裝置的一個或者複數個天線輻射所述調製符號作為電磁波,以便經由無線通訊鏈路發送所述資料的調製符號到所述其他裝置, 其中,所述從複數個移位係數表中選擇第一移位係數表包括:根據與資料的碼塊尺寸和資料的碼率中的任一個或者兩個相關的一個或者複數個規則,選擇用於相對較大碼塊尺寸的所述第一移位係數表。A method for wireless communication includes: a processor of a device establishes a wireless communication link with at least one other device via a transceiver of the device; and the processor wirelessly communicates with the other device via the wireless communication link in the following manner : Selecting a first shift coefficient table from a plurality of shift coefficient tables; using a basic matrix and at least a part of the first shift coefficient table to generate a quasi-loop low-density parity check (QC-LDPC) code; Selecting a codebook from a plurality of codebooks in the QC-LDPC code; storing the selected codebook in a memory related to the processor; encoding the data using the selected codebook to generate the data A plurality of modulation symbols; and controlling the transceiver to multiplex, convert, filter, amplify the modulation symbols and radiate the modulation symbols as electromagnetic waves through one or more antennas of the device for transmission via a wireless communication link Modulating symbols of the data to the other device, wherein the selecting a first shift coefficient table from a plurality of shift coefficient tables includes: Either one of the code block size of the data and the code rate of the data, or one or two related rules, select the first shift coefficient table for a relatively large code block size. 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括:以如下樣式佈置為4列和26行的基本移位係數表: The method according to item 1 of the patent application scope, wherein the first shift coefficient table includes: a basic shift coefficient table arranged in 4 columns and 26 rows in the following pattern: 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括如第18A圖和第18B圖所示的移位係數表。The method according to item 1 of the scope of patent application, wherein the first shift coefficient table includes shift coefficient tables as shown in FIGS. 18A and 18B. 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素5 (a = 5)和提升因子320的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element of 5 (a = 5) and a boost factor of 320 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素7 (a = 7)和提升因子224的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element of 7 (a = 7) and a boost factor of 224 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素15 (a = 15)和提升因子240的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element of 15 (a = 15) and a boost factor of 240 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素9 (a = 9)和提升因子288的基本圖表1(BG1)的移位係數表。The method according to item 1 of the scope of patent application, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element 9 (a = 9) and a boost factor 288 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素11 (a = 11)和提升因子352的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element 11 (a = 11) and a boost factor 352 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素3 (a = 3)和提升因子384的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element of 3 (a = 3) and a boost factor of 384 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素13 (a = 13)和提升因子208的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element of 13 (a = 13) and a boost factor of 208 . 如申請專利範圍第1項所述的方法,其中,所述第一移位係數表包括對應於具有原始元素2 (a = 2)和提升因子256的基本圖表1(BG1)的移位係數表。The method of claim 1, wherein the first shift coefficient table includes a shift coefficient table corresponding to a basic chart 1 (BG1) having an original element 2 (a = 2) and a boost factor of 256 . 如申請專利範圍第1項所述的方法,其中,所述使用基本矩陣和至少一部分的第一移位係數表,產生QC-LDPC碼包括:使用所述第一移位係數表的全部和所述基本矩陣產生所述QC-LDPC碼。The method according to item 1 of the scope of patent application, wherein the generating a QC-LDPC code using a basic matrix and at least a part of a first shift coefficient table includes: using all sums of the first shift coefficient table. The basic matrix generates the QC-LDPC code. 如申請專利範圍第1項所述的方法,其中,所述使用基本矩陣和至少一部分的第一移位係數表,產生QC-LDPC碼包括:使用所述第一移位係數表的一部分和所述基本矩陣產生所述QC-LDPC碼。The method according to item 1 of the scope of patent application, wherein the generating a QC-LDPC code using a basic matrix and at least a part of a first shift coefficient table includes: using a part of the first shift coefficient table and all The basic matrix generates the QC-LDPC code. 如申請專利範圍第1項所述的方法,其中,所述從複數個移位係數表中選擇第一移位係數表包括:選擇第二移位係數表,所述第二移位係數表中的值對一個或者複數個提升因子取模結果與所述至少第一移位係數表中的取模結果相同。The method according to item 1 of the scope of patent application, wherein the selecting a first shift coefficient table from a plurality of shift coefficient tables comprises: selecting a second shift coefficient table, and the second shift coefficient table The value of modulo the value of the one or a plurality of lifting factors is the same as the modulo result in the at least first shift coefficient table. 如申請專利範圍第14項所述的方法,其中,使用基本矩陣和至少一部分的第一移位係數表,產生QC-LDPC碼包括:使用所述第二移位係數表的全部和所述基本矩陣,產生QC-LDPC碼。The method according to item 14 of the scope of patent application, wherein generating a QC-LDPC code using a basic matrix and at least a part of a first shift coefficient table includes: using all of the second shift coefficient table and the basic Matrix, generating QC-LDPC codes. 如申請專利範圍第14項所述的方法,其中,使用基本矩陣和至少一部分的第一移位係數表,產生QC-LDPC碼包括:使用所述第二移位係數表的一部分和所述基本矩陣,產生QC-LDPC碼。The method according to item 14 of the patent application scope, wherein generating a QC-LDPC code using a basic matrix and at least a part of a first shift coefficient table includes: using a part of the second shift coefficient table and the basic Matrix, generating QC-LDPC codes. 如申請專利範圍第1項所述的方法,其中,從複數個移位係數表中選擇第一移位係數表包括: 確定所述碼塊尺寸是否小於或者等於閾值碼塊尺寸;以及 確定所述碼率是否小於或者等於閾值碼率。The method according to item 1 of the scope of patent application, wherein selecting a first shift coefficient table from a plurality of shift coefficient tables includes: determining whether the code block size is less than or equal to a threshold code block size; and determining the Whether the code rate is less than or equal to the threshold code rate. 如申請專利範圍第17項所述的方法,其中,從複數個移位係數表中選擇第一移位係數表進一步包括:回應於確定所述碼塊尺寸大於閾值碼塊尺寸或者回應於確定碼率大於閾值碼率,選擇對應於基本圖表1(BG1)的第一移位係數表。The method according to item 17 of the patent application scope, wherein selecting the first shift coefficient table from the plurality of shift coefficient tables further includes: responding to determining that the code block size is greater than a threshold code block size or responding to a determination code If the rate is greater than the threshold code rate, the first shift coefficient table corresponding to the basic graph 1 (BG1) is selected. 如申請專利範圍第17項所述的方法,其中,從複數個移位係數表中選擇第一移位係數表進一步包括:回應於確定所述碼塊尺寸小於或者等於閾值碼塊尺寸或者回應於確定碼率小於或者等於閾值碼率,選擇對應於基本圖表2(BG2)的第一移位係數表。The method according to item 17 of the scope of patent application, wherein selecting the first shift coefficient table from the plurality of shift coefficient tables further includes: responding to determining that the code block size is less than or equal to a threshold code block size or responding to It is determined that the code rate is less than or equal to the threshold code rate, and a first shift coefficient table corresponding to the basic graph 2 (BG2) is selected. 如申請專利範圍第1項所述的方法,其中,所述複數個碼本中的每一個碼本對應於複數個混合自動重傳請求(HARQ)線程中相應HARQ線程,其中,所述複數個HARQ線程彼此不同。The method according to item 1 of the scope of patent application, wherein each of the plurality of codebooks corresponds to a corresponding HARQ thread in a plurality of hybrid automatic repeat request (HARQ) threads, wherein the plurality of codebooks HARQ threads are different from each other.
TW107122310A 2017-06-28 2018-06-28 Method of shift-coefficient table design of qc-ldpc code for larger code block sizes in mobile communications TWI690169B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762525797P 2017-06-28 2017-06-28
US62/525,797 2017-06-28

Publications (2)

Publication Number Publication Date
TW201907671A true TW201907671A (en) 2019-02-16
TWI690169B TWI690169B (en) 2020-04-01

Family

ID=64741132

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107122310A TWI690169B (en) 2017-06-28 2018-06-28 Method of shift-coefficient table design of qc-ldpc code for larger code block sizes in mobile communications

Country Status (3)

Country Link
CN (1) CN110741554B (en)
TW (1) TWI690169B (en)
WO (1) WO2019001515A1 (en)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8225173B2 (en) * 2004-06-25 2012-07-17 Runcom Technologies Ltd Multi-rate LDPC code system and method
CA2674719A1 (en) * 2007-01-24 2008-07-31 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes
KR101455978B1 (en) * 2007-03-27 2014-11-04 엘지전자 주식회사 Method for encoding data using a Low Density Parity Check code
US8510358B2 (en) * 2008-12-29 2013-08-13 Intel Corporation Partially random permutation sequence generator
US9634693B2 (en) * 2010-08-12 2017-04-25 Samsung Electronics Co., Ltd Apparatus and method for decoding LDPC codes in a communications system
US8627166B2 (en) * 2011-03-16 2014-01-07 Samsung Electronics Co., Ltd. LDPC code family for millimeter-wave band communications in a wireless network
US8832520B2 (en) * 2011-11-29 2014-09-09 California Institute Of Technology High order modulation protograph codes
WO2014117836A1 (en) * 2013-01-31 2014-08-07 Intracom S.A. Telecom Solutions Ldpc code design and encoding apparatus enabling the adjustment of code rate and codelength
US9692451B2 (en) * 2014-09-30 2017-06-27 Avago Technologies General Ip (Singapore) Pte. Ltd Non-binary low density parity check (NB-LDPC) codes for communication systems
US10313054B2 (en) * 2015-01-07 2019-06-04 Avago Technologies International Sales Pte. Limited Low density parity check (LDPC) codes for communication devices and systems
US10523364B2 (en) * 2015-11-06 2019-12-31 Samsung Electronics Co., Ltd. Channel coding framework for 802.11AY and larger block-length LDPC codes for 11AY with 2-step lifting matrices and in-place property

Also Published As

Publication number Publication date
CN110741554B (en) 2023-11-24
TWI690169B (en) 2020-04-01
WO2019001515A1 (en) 2019-01-03
CN110741554A (en) 2020-01-31

Similar Documents

Publication Publication Date Title
US10790853B2 (en) QC-LDPC coding methods and apparatus
US10567116B2 (en) Wireless communication using codebooks from a QC-LDPC code for shorter processing latency and improved decoder throughput efficiency
US10484011B2 (en) Shift-coefficient table design of QC-LDPC code for larger code block sizes in mobile communications
CN110535474B (en) Information processing method and communication device
JP2024029096A (en) Method and apparatus for processing LDPC encoded data
WO2018228514A1 (en) Method for information processing and communication device
WO2018127196A1 (en) Shift coefficient and lifting factor design for nr ldpc code
US10581457B2 (en) Shift coefficient and lifting factor design for NR LDPC code
US10484013B2 (en) Shift-coefficient table design of QC-LDPC code for smaller code block sizes in mobile communications
TWI653839B (en) Method and apparatus for using and generating a vector-based LDPC base matrix
WO2018218692A1 (en) Information processing method and communication device
TWI690169B (en) Method of shift-coefficient table design of qc-ldpc code for larger code block sizes in mobile communications
TWI690166B (en) Method of shift-coefficient table design of qc-ldpc code for smaller code block sizes in mobile communications
WO2018218471A1 (en) Information processing method and communication apparatus
WO2018201554A1 (en) Information processing method and communication apparatus
TWI669915B (en) Coding methods
CN108809328B (en) Information processing method and communication device
WO2018201540A1 (en) Information processing method and communication apparatus
WO2018201547A1 (en) Information processing method and communication apparatus
TW202408185A (en) Bcc low coding rate designs for next-generation wlan
WO2018201609A1 (en) Information processing method and communication apparatus