BR112019027876A2 - método de codificação, método de decodificação, codificador, decodificador, meio de armazenagem legível por computador, produto de programa de computador, e sistema e aparelho de comunicação - Google Patents

método de codificação, método de decodificação, codificador, decodificador, meio de armazenagem legível por computador, produto de programa de computador, e sistema e aparelho de comunicação Download PDF

Info

Publication number
BR112019027876A2
BR112019027876A2 BR112019027876-1A BR112019027876A BR112019027876A2 BR 112019027876 A2 BR112019027876 A2 BR 112019027876A2 BR 112019027876 A BR112019027876 A BR 112019027876A BR 112019027876 A2 BR112019027876 A2 BR 112019027876A2
Authority
BR
Brazil
Prior art keywords
matrix
base
base matrix
column
sequence
Prior art date
Application number
BR112019027876-1A
Other languages
English (en)
Inventor
Jie Jin
Ivan Leonidovich Mazurenko
Aleksandr Aleksandrovich Petiushko
Chaolong Zhang
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from PCT/CN2018/082851 external-priority patent/WO2019001090A1/zh
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of BR112019027876A2 publication Critical patent/BR112019027876A2/pt

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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking codes
    • H03M13/036Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/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/1174Parity-check or generator matrices built from sub-matrices representing known block codes such as, e.g. Hamming codes, e.g. generalized LDPC codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1185Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/618Shortening and extension of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/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
    • 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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A presente invenção refere-se a um método de codificação, um dispositivo, um dispositivo de comunicação, e um sistema de comunicação. Método compreende: codificar uma sequência de bits de entrada pelo uso de uma matriz de verificação de paridade de baixa densidade ((LDPC), onde a matriz de LDPC é obtida baseada em um fator de elevação Z e em uma matriz de base. A matriz de base inclui linhas 0 a 6 e colunas 0 a 16 de uma das matrizes mostradas na FIG. 3b-1 a FIG. 3b-8. Alternativamente, a matriz de base inclui linhas 0 a 6 e al-gumas das colunas 0 a 16 em qualquer matriz mostrada na FIG. 3b-1 a FIG. 3b-8. Método de codificação, o dispositivo, o dispositivo de comunicação, e o sistema de comunicação neste pedido podem suportar requisitos de codificação para sequências de bits de informação com uma pluralidade de comprimentos.

Description

Relatório Descritivo da Patente de Invenção para "MÉTODO DE CODIFICAÇÃO, MÉTODO DE DECODIFICAÇÃO, CODIFICADOR, DECODIFICADOR, MEIO DE ARMAZENAGEM LEGÍVEL POR COMPUTADOR, PRODUTO DE PROGRAMA DE COMPUTADOR, E SISTEMA E APARELHO DE COMUNICAÇÃO".
CAMPO TÉCNICO
[0001] As concretizações do presente pedido referem-se ao campo de comunicações, e, em particular, a um método de processamento de informação e um aparelho de comunicação.
ANTECEDENTES
[0002] Um código de verificação de paridade de baixa densidade (LDPC) é um tipo de código de bloco linear caracterizado por uma matriz de verificação esparsa, e tem uma estrutura flexível e baixa complexidade de decodificação. Devido ao algoritmo de decodificação iterativo parcialmente paralelo poder ser usado na decodificação de uma palavra de código codificada de LDPC, o código de LDPC tem uma produção mais alta do que um código de Turbo convencional. O código de LDPC pode ser usado como um código de correção de erro em um sistema de comunicação, de modo a aperfeiçoar a confiabilidade e utilização de energia em transmissão à base de canal. O código de LDPC pode também ser amplamente usado em comunicações espaciais, comunicações de fibra ótica, sistemas de comunicação pessoais, ciclo do assinante digital assimétrico (ADSL), dispositivos de registro magnéticos, e similares. Atualmente, o código de LDPC tem sido considerado como um dos esquemas de codificação de canal nos sistemas de comunicação móvel de quinta geração (5G).
[0003] Em aplicações atuais, matrizes de LDPC tendo estruturas especiais diferentes podem ser usadas. Uma matriz de LDPC H, tendo uma estrutura especial, pode ser obtida por expansão (também denominada elevação) de uma matriz de base de LDPC tendo uma estrutura de quase ciclo (QC). Um esquema de codificação usando matrizes de QC- LDPC é adequado para hardware com um alto grau de parale-
lismo, e proporciona um rendimento mais alto. A matriz de LDPC- QC pode ser designada para ser adequada para codificação de canal.
[0004] Um esquema de codificação usando matrizes de QC-LDPC é adequado para hardware com um alto grau de paralelismo, e propor- ciona um rendimento mais alto. As matrizes de LDPC-QC podem ser designadas para ser adequadas para codificação de canal.
SUMÁRIO
[0005] As concretizações do presente pedido proporcionam um método de processamento de informação, e um aparelho de comuni- cação e sistema, de modo a suportar codificação e decodificação de sequências de bit de informação com uma pluralidade de comprimen- tos.
[0006] De acordo com um primeiro aspecto, um método de codifi- cação e um codificador são proporcionados. O codificador codifica uma sequência de entrada pelo uso de uma matriz de verificação de paridade de baixa densidade ((LDPC).
[0007] De acordo com um segundo aspecto, um método de deco- dificação e um decodificador são proporcionados. O decodificador de- codifica uma sequência de entrada pelo uso de uma matriz de LDPC.
[0008] Em uma primeira implementação do primeiro aspecto ou do segundo aspecto, a matriz de LDPC é obtida baseado em um fator de elevação Z e uma matriz de base.
[0009] Baseado na implementação precedente, uma matriz de ba- se de um gráfico de base inclui um dos seguintes: a matriz de base inclui linha 0 a linha 6, coluna 0 a coluna 16 de uma das matrizes mostradas nas Figuras 3b-1 a 3b-8, ou a matriz de base inclui linha 0 a linha 6, algumas colunas de coluna 0 a coluna 16 em uma das matrizes mostradas nas Figuras 3b- 1 a 3b-8, ou a matriz de base é uma matriz obtida por realização de transformação de linha/transformação de coluna na linha 0 a linha 6 coluna 0 a coluna 16 em uma das matrizes mostradas nas Figuras 3b- 1 a 3b-8, ou a matriz de base é uma matriz obtida por realização de transformação de linha/transformação de coluna na linha 0 a linha 6, algumas colunas de coluna 0 a coluna 16 em uma das matrizes mos- tradas nas Figuras 3b-1 a 3b-8.
[0010] Para suportar comprimentos de bloco de código diferentes, fatores de elevação diferentes Z são necessários para um código de LDPC. Basado nas implementações precedentes, matrizes de base correspondentes a fatores de elevação diferentes Z são usadas base- ado nos fatores de elevação diferentes Z. Em algumas implementa- ções, Z=a×2j, onde 0≤j<7, e a ∈ {2,3,5,7,9,11,13,15}.
[0011] Adicionalmente, baseado nas implementações preceden- tes, a matriz de LDPC pode ser obtida baseado em um fator de eleva- ção Z e uma matriz Hs que é obtida por compensação da matriz de base precedente. Alternativamente, a matriz de LDPC pode ser obtida baseado em um fator de elevação Z e uma matriz que é obtida por realização de transformação de linha/transformação de coluna em uma matriz Hs, e Hs é obtido por compensação da matriz de base prece- dente. A compensação da matriz de base precedente pode estar au- mentando ou diminuindo um valor de mudança maior do que ou igual a 0 em uma ou mais colunas por uma compensação.
[0012] O gráfico de base e a matriz de base da matriz de LDPC nas implementações precedentes podem satisfazer uma requisição de desempenho de blocos de código de uma pluralidade de comprimen- tos de bloco.
[0013] O fator de elevação Z pode ser determinado pelo codifica- dor ou o decodificador baseado em um comprimento K da sequência de entrada, ou pode ser determinado por outro dispositivo, e proporci-
onado ao codificador ou ao decodificador como um parâmetro de en- trada. Opcionalmente, a matriz de LDPC pode ser obtida baseado no fator de elevação Z obtido e uma matriz de base correspondente ao fator de elevação Z.
[0014] Em uma segunda implementação do primeiro aspecto ou do segundo aspecto, a matriz de LDPC é obtida baseado no fator de elevação Z e parâmetro(s) da matriz de LDPC.
[0015] Os parâmetros da matriz de LDPC podem incluir um índice de linha, um índice de coluna de uma coluna em que um elemento de não zero está localizado, e um valor de mudança do elemento de não zero. Os parâmetros são armazenados em maneiras similares a linha 0 a linha 6 em uma Tabela 2 e Tabela 3b-1 a Tabela 3b-8. Os parâme- tros da matriz de LDPC podem incluir adicionalmente um peso de li- nha. As localizações dos elementos de não zero nas colunas são em uma correspondência um-para-um com valores de mudança dos ele- mentos de não zero.
[0016] Para um dispositivo de comunicação em um lado de trans- missão, a codificação de uma sequência de entrada pelo uso de uma matriz de LDPC pode incluir: codificação da sequência de entrada pelo uso de uma matriz de LDPC correspondente ao fator de elevação Z; ou codificação de uma sequência de entrada pelo uso de uma matriz que é obtida por realização de transformação de linha/transformação de coluna em uma matriz de LDPC correspondente ao fator de eleva- ção Z. A transformação de linha/transformação de coluna nesta aplica- ção significa transformação de linha, transformação de coluna, ou transformação de linha e transformação de coluna.
[0017] Para um dispositivo de comunicação em um lado receptor, A decodificação de uma sequência de entrada pelo uso de uma matriz de LDPC pode incluir: decodificar a sequência de entrada pelo uso de uma matriz de LDPC correspondente ao fator de elevação Z; ou deco-
dificar a sequência de entrada pelo uso de uma matriz que é obtida por realização de transformação de linha/transformação de coluna em uma matriz de LDPC correspondente ao fator de elevação Z. A transforma- ção de linha/transformação de coluna nesta aplicação significa trans- formação de linha, transformação de coluna, ou transformação de li- nha e transformação de coluna.
[0018] Em uma implementação possível, uma matriz de LDPC po- de ser armazenada, e a matriz de LDPC é usada para codificar a se- quência de entrada, ou uma matriz de LDPC que pode ser usada para codificação é obtida por realização de transformação (transformação de linha/transformação de coluna), ou elevação baseada na matriz de LDPC.
[0019] Em outra implementação possível, um parâmetro ou parâ- metros podem ser armazenados, e uma matriz de LDPC usada para codificação ou decodificação pode ser obtida baseado no parâmetro, de modo que a sequência de entrada pode ser codificada ou decodifi- cada baseado na matriz de LDPC. O parâmetro ou parâmetros inclu- em pelo menos um dos seguintes: um gráfico de base, uma matriz de base, uma matriz transformada obtida por realização de transformação de linha/transformação de coluna em um gráfico de base ou uma ma- triz de base, uma matriz de elevação baseada em um gráfico de base ou uma matriz de base, um valor de mudança de um elemento de não zero em uma matriz de base, ou qualquer parâmetro usado para obter a matriz de LDPC.
[0020] Em ainda outra implementação possível, a matriz de base da matriz de LDPC pode ser armazenada em uma memória.
[0021] Em ainda outra implementação possível, o gráfico de base da matriz de LDPC pode ser armazenado em uma memória, e o valor de mudança do elemento de não zero na matriz de base da matriz de LDPC pode ser armazenado na memória.
[0022] Em ainda outra implementação possível, o parâmetro da matriz de LDPC é armazenado em uma memória em meneiras conhe- cidas semilares à Tabela 2 ou Tabela 3b-1 a Tabela 3b-8, ou alguns elementos de grupo do parâmetro podem ser armazenados.
[0023] Baseado nas implementações possíveis precedentes, em um desenho possível, pelo menos um de um gráfico de base e uma matriz de base usada para codificação ou decodificação de LDPC é obtido para realização de transformação de linha, ou transformação de coluna, ou transformação de linha e transformação de coluna em pelo menos um do gráfico de base e a matriz de base da matriz de LDPC.
[0024] De acordo com um terceiro aspecto, um aparelho de comu- nicação é proporcionado. O aparelho de comunicação pode incluir módulos de software e/ou componentes de hardware configurados pa- ra realizar os desenhos de método precedentes.
[0025] Em um desenho possível, o aparelho de comunicação pro- porcionado no terceiro aspecto inclui um processador e um componen- te de transceptor. O processador e o componente de transceptor po- dem ser configurados para realizar qualquer uma das implementações possíveis do método de codificação ou do método de decodificação. O aparelho de comunicação pode ser um terminal, uma estação de base, ou outro dispositivo de rede, e o componente de transceptor do apare- lho de comunicação pode ser um transceptor. O aparelho de comuni- cação pode ser um chip de banda base ou uma placa de banda base, e o componente de transceptor do aparelho de comunicação pode ser um circuito de entrada/saída do chip de banda base ou da placa de banda base, e é configurado para receber/enviar um sinal de entra- da/saída. Opcionalmente, o aparelho de comunicação pode incluir ain- da uma memória, configurada para armazenar dados e/ou instruções.
[0026] Em uma implementação, o processador pode incluir o codi- ficador de acordo com o primeiro aspecto e uma unidade de determi-
nação. A unidade de determinação é configurada para determinar um fator de elevação Z requerido para codificar uma sequência de entra- da. O codificador é configurado para codificar a sequência de entrada pelo uso de uma matriz de LDPC correspondente ao fator de elevação Z.
[0027] Em outra implementação, o processador pode incluir o de- codificador de acordo com o segundo aspecto e uma unidade de ob- tenção. A unidade de obtenção é configurada para obter um valor sua- ve de um código de LDPC, e um fator de elevação Z. O decodificador é configurado para decodificar o valor suave do código de LDPC ba- seado em uma matriz de base HB correspondente ao fator de elevação Z, para obter uma sequência de bit de informação.
[0028] De acordo com um quarto aspecto, um aparelho de comu- nicação é proporcionado. O aparelho de comunicação inclui um ou mais processadores. Em um desenho possível, o um ou mais proces- sadores configurados para realizar qualquer uma das implementações possíveis do codificador de acordo com o primeiro aspecto. Em outro desenho possível, o codificador de acordo com o primeiro aspecto po- de ser uma parte do processador. Em adição à funções do codificador de acordo com o primeiro aspecto, o processador pode ainda imple- mentar outras funções. Em um desenho possível, o um ou mais pro- cessadores pode implementar funções do decodificador de acordo com o segundo aspecto. Em outro desenho possível, o decodificador de acordo com o segundo aspecto pode ser uma parte do processa- dor.
[0029] Opcionalmente, o aparelho de comunicação pode ainda in- cluir um transceptor e uma antena. Opcionalmente, o aparelho de co- municação pode ainda incluir um componente para verificação de re- dundância cíclica de bloco de transporte (CRC), um componente para segmentação de bloco de código e verificação de CRC, um intercala-
dor para intercalação, um modulador para processamento de modula- ção, ou similares. Em um desenho possível, funções destes compo- nentes podem ser implementadas pelo uso do um ou mais processa- dores.
[0030] Opcionalmente, o aparelho de comunicação pode ainda in- cluir um desmodulador para uma operação de desmodulação, um de- sintercalador para desintercalação, um componente para não corres- pondência de taxa, ou similares. Funções destes dispositivos podem ser implementadas pelo uso de um ou mais processadores.
[0031] De acordo com um quinto aspecto, uma concretização do presente pedido proporciona um sistema de comunicação. O sistema inclui o aparelho de comunicação de acordo com o terceiro aspecto.
[0032] De acordo com um sexto aspecto, uma concretização do presente pedido proporciona um sistema de comunicação. O sistema inclui um ou mais aparelhos de comunicação de acordo com o quarto aspecto.
[0033] De acordo com ainda outro aspecto, uma concretização do presente pedido proporciona um meio de armazenagem de computa- dor. O meio de armazenagem de computador armazena um programa, e quando o programa está funcionando, um computador é impelido a realizar os métodos descritos nos aspectos precedentes.
[0034] Ainda outro aspecto deste pedido proporciona um produto de programa de computador incluindo uma ou mais instruções, que quando executadas pelo computador, faz com que o computador reali- ze os métodos de acordo com os aspectos precedentes.
[0035] De acordo com o método de processamento de informação, o aparelho, o dispositivo de comunicação, e o sistema de comunicação nas concretizações do presente pedido, comprimento de código flexí- vel, e requisições de taxa de código de um sistema, podem ser encon- trados em termos de desempenho de codificação e uma base de erro.
BREVE DESCRIÇÃO DOS DESENHOS
[0036] A FIG. 1 mostra exemplos de um gráfico de base, uma ma- triz de base, e matrizes de permutação circulares que são usados no código de LDPC;
[0037] FIG. 2 é um diagrama estrutural esquemático de um gráfi- co de base que é usado no código de LDPC;
[0038] FIG. 3a é um diagrama esquemático de um gráfico de base que é usado no código de LDPC de acordo com uma concretização do presente pedido;
[0039] FIG. 3b-1 é um diagrama esquemático de uma matriz de base de acordo com uma concretização do presente pedido;
[0040] FIG. 3b-2 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0041] FIG. 3b-3 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0042] FIG. 3b-4 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0043] FIG. 3b-5 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0044] FIG. 3b-6 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0045] FIG. 3b-7 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0046] FIG. 3b-8 é um diagrama esquemático de outra matriz de base de acordo com uma concretização do presente pedido;
[0047] FIG. 4 é um diagrama de desempenho provido por uma concretização do presente pedido;
[0048] FIG. 5 é um fluxograma de um procedimento de proces- samento de informação de acordo com uma concretização do presente pedido;
[0049] FIG. 6 é um fluxograma de um procedimento de proces- samento de informação de acordo com uma concretização do presente pedido;
[0050] FIG. 7 é um diagrama de blocos simplificado de um apare- lho de comunicação de acordo com uma concretização do presente pedido; e
[0051] FIG. 8 é um diagrama de blocos de um sistema de comu- nicação de acordo com uma concretização do presente pedido.
DESCRIÇÃO DETALHADA DAS CONCRETIZAÇÕES
[0052] Para facilidade de compreensão, o seguinte descreve al- guns termos usados neste pedido.
[0053] Neste pedido, termos "rede" e "sistema" são frequentemen- te indistintamente usados, "aparelho" e "dispositivo" são frequente- mente indistintamente usados, e "informação" e "dados" são também frequentemente indistintamente usados. Significados destes termos são convencionalmente compreendidos. Um "aparelho de comunica- ção" pode se referir a um (por exemplo, um chip de banda base, um chip de processamento digital, ou um chip de proposta geral), um ter- minal, uma estação de base, ou outros dispositivos de rede. Um termi- nal é um dispositivo tendo funções de comunicação. Um terminal pode ser um dispositivo mantido pela mão, um dispositivo em veículo, um dispositivo utilizável, ou outros tipos de dispositivos que têm funções de comunicação sem fio. Um terminal pode ser denominado por no- mes diferentes em redes diferentes, tal como equipamento do usuário, estação móvel, unidade subscritora, estação, telefone celular, assis- tente digital pessoal, modem sem fio, dispositivo de comunicação sem fio, dispositivo portátil, computador laptop, aparelho de telefone sem fio, ou estação de ligação local sem fio. Para facilidade de descrição, estes dispositivos são coletivamente referidos como um terminal neste pedido. Uma estação base (estação de base, BS), ou referida como um dispositivo de estação base é um dispositivo desdobrado em uma rede de acesso de rádio para proporcionar funções de comunicação sem fio. A estação base pode ser denominada por nomes diferentes em sistemas de acesso sem fio diferentes. Por exemplo, uma estação base em uma rede de Sistema de Telecomunicação Móvel Universal (UMTS) é referida como um NodeB. Uma estação base em uma rede de evolução de longo prazo (LTE) é referida como um NodeB evoluído (eNB ou eNodeB). Uma estação base em uma nova rede de rádio (NR) é referida como um ponto de recepção de transmissão (TRP), ou um NodeB de próxima geração (gNB). As estações de base em outras redes podem ser denominadas por outros nomes. Isto não é limitado no presente pedido.
[0054] As soluções técnicas nas concretizações do presente pedi- do são descritas abaixo com referência aos desenhos acompanhantes.
[0055] Um código de LDPC pode ser definido por uma matriz de verificação de paridade H. Em uma implementação, a matriz de verifi- cação de paridade H para código de LDPC, também referida como uma matriz de LDPC, é representada por uma matriz denominada um gráfico de base, e cada elemento no gráfico de base representa uma matriz de difusão Z×Z (elevação). Z é um número inteiro positivo, e é referido como um fator de elevação. Z pode também ser referido como um tamanho de elevação ou similares. O gráfico de base é usado para indicar localizações de elementos zero e elementos de não zero. Cada elemento de não zero no gráfico de base corresponde a um valor de mudança. A matriz de verificação de paridade H para o código de LDPC pode ser obtida baseado no gráfico de base e valores de mu- dança. Usualmente, um gráfico de base inclui elementos de matriz m×n (entradas ou elementos), e é representado por uma matriz de m linhas e n colunas. Um valor de cada elemento de matriz é ou 0 ou 1. Um elemento cujo valor é 0 é denominado um elemento zero, que cor-
responde a uma coluna Z × linha matriz todo zero. Um elemento cujo valor é 1 é denominado um elemento de não zero, que corresponde a uma coluna Z × Z linha matriz de permutação circular. Em outras pala- vras, cada elemento do gráfico de base representa ou uma matriz todo zero ou uma matriz de permutação circular. No exemplo de gráfico de base 10a mostrado na FIG. 1, m=7 e n=17, e o gráfico de base 10a tem uma estrutura QC. Deve ser notado que, através de todo este pe- dido, índices de linhas e índices de coluna de gráficos de base e ma- trizes de base são numerados começando de 0, e isto é meramente para facilidade de descrição. Por exemplo, o índice de coluna 0 repre- senta uma primeira coluna em um gráfico de base ou uma matriz de base, índice de coluna 1 representa uma segunda coluna no gráfico de base ou a matriz de base, índice de linha 0 representa uma primeira linha no gráfico de base ou a matriz de base, índice de linha 1 repre- senta uma segunda linha no gráfico de base ou a matriz de base, e assim por diante.
[0056] Pode ser compreendido que as linhas e as colunas podem alternativamente ser numeradas começando de 1. Neste caso, os índi- ces de linha e os índices de coluna mostrados neste relatório descriti- vo são aumentados por 1 consequentemente. Por exemplo, se os índi- ces de linha e os índices de coluna são numerados começando de 1, a coluna 1 representa uma primeira coluna no gráfico de base e a ma- triz, a coluna 2 representa uma segunda coluna no gráfico de base e a matriz, a linha 1 representa uma primeira linha no gráfico de base e a matriz, a linha 2 representa uma segunda linha no gráfico de base e a matriz, e assim por diante.
[0057] Em outra implementação, uma matriz de base de m linhas e n colunas pode ser definida, e é, às vezes, referida como uma PCM (matriz de verificação de paridade). Por exemplo, qualquer matriz pro- vida na FIG. 3b-1 a FIG. 3b-8 ou uma matriz incluindo algumas linhas e colunas em qualquer matriz na FIG. 3b-1 a FIG. 3b-8, é definida. Elementos na matriz de base estão em uma correspondência um para um com elementos no gráfico de base. Um elemento zero no gráfico de base tem uma mesma posição na matriz de base. Na matriz de ba- se, um elemento zero pode ser representado por –1 ou "nulo". Uma localização de um elemento de não zero na linha i e coluna j, cujo va- lor é 1 no gráfico de base tem a mesma posição na matriz de base, e o elemento de não zero é representado como Vi,j. Um valor de Vi,j na ma- triz de base pode ser definido por um sistema, ou pode ser pré- definido, ou Vi,j pode ser obtido baseado em um valor de mudança Pi,j de um elemento de não zero no gráfico de base e um fator de eleva- ção Z. Pi,j é um valor de mudança correspondente a um fator de eleva- ção Z predeterminado ou particular. Pi,j pode ser obtido baseado em Z e Vi,j. Em uma implementação, Pi,j e Vi,j satisfazem o seguinte relacio- namento: Pi,j=mod(Vi,j, Z) onde i e j representam um índice de linha e um índice de coluna do elemento não zero, e indica uma localização do elemento na matriz de base.
[0058] Nas concretizações deste pedido, às vezes a matriz de ba- se é também referida como uma matriz de mudança do gráfico de ba- se. A matriz de base pode ser obtida de acordo com o gráfico de base e o valor de mudança. Se um elemento na linha i e coluna j do gráfico de base tem um valor 1, e um valor de mudança do elemento é Pi,j, onde Pi,j é um número inteiro maior do que ou igual a 0, ele indica que o elemento pode ser substituído por uma matriz de permutação circu- lar Z×Z correspondente a Pi,j. A matriz de permutação circular pode também ser referida como uma matriz de mudança. A matriz de per- mutação circular pode ser obtida por mudança circularmente de uma matriz de identidade Z×Z para a direita ou a esquerda para P i,j vezes.
Em uma implementação, Pi,j=mod(Vi,j, Z) onde Vi,j é um valor na matriz de base, que é correspondente a um elemento de não zero no gráfico de base. Às vezes, Vi,j pode também ser referido como um valor de mudança, um valor de mudança cíclico, ou um coeficiente de mudança. Vi,j pode ser, por exemplo, um valor de mudança correspondente a um fator de elevação máximo Zmáx. Zmáx é um valor máximo em um valor ajustado de Z. Se um valor de um ele- mento na linha i e coluna j no gráfico de base é 0, o elemento pode ser substituído com uma matriz todo zero Z×Z. Se um valor de um elemen- to na linha i e coluna j no gráfico de base é 1, o elemento pode ser substituído com uma matriz de permutação circular Z×Z tendo o valor de mudança of Pi,j. Desse modo, uma matriz de verificação de parida- de H para o código de LDPC é obtida. Z é um número inteiro positivo, e pode ser referido como um fator de elevação, um tamanho de eleva- ção, ou similares. Z pode ser determinado baseado em um tamanho de bloco de código e um tamanho de dados de informação que são suportados por um sistema. Pode ser visto que para um gráfico de ba- se de m linhas × n colunas, um tamanho da matriz de verificação de paridade H para o código de LDPC é (m×Z) linhas ×(n×Z) colunas. Por exemplo, se o fator de elevação Z é 4, cada elemento zero é substituí- do com uma matriz todo zero de tamanho 4×4 (ver 11a da FIG. 1). Se P2,3=2, um elemento de não zero na linha 2 e coluna 3 da matriz de base é substituído com uma matriz de permutação circular 4×4 11d da FIG. 1. A matriz 11d é obtida por mudança circularmente de uma ma- triz de identidade 4×4 11b para direita duas vezes. Se P2,4=0, um ele- mento de não zero na linha 2 e coluna 4 é substituído com a matriz de identidade 11b. Deve ser notado que este exemplo é meramente para ilustração, e não é previsto para impor uma limitação.
[0059] O valor de Pi,j pode depender do fator de elevação Z. Para um elemento de 1 no gráfico de base, Pi,j pode ser diferente para fato- res de elevação diferentes Z. Uma matriz de base correspondente ao gráfico de base 10a é mostrada por 10b na FIG. 1. Por exemplo, para um valor de 1 na linha 1 e coluna 3 no gráfico de base 10a, um valor de mudança correspondente Vi,j na linha 1 e coluna 3 na matriz de ba- se 10b é 27. O valor of Pi,j pode ser obtido de acordo com Pi,j=mod(Vi,j, Z). Desse modo, um elemento na linha 1 e coluna 3 pode ser substitu- ído com uma matriz de permutação circular que é obtida por mudança circularmente de uma matriz de identidade de tamanho Z×Z à direita ou à esquerda para Pi,j vezes.
[0060] Usualmente, o gráfico de base ou a matriz de base para o código de LDPC pode ainda incluir p colunas de coluna de perfuração, onde p pode ser um número inteiro de 0 a 2. Estas colunas podem ser usada na codificação, mas os bits do sistema correspondentes à colu- na de perfuraçãos não são enviados. Neste caso, uma taxa de código da matriz de base para o código de LDPC satisfaz R=(n-m)/(n-p). Usando o gráfico de base 10a como um exemplo, se existem duas co- lunas de perfuração, a taxa de código é (17–7)/(17–2)=0,667, que é aproximadamente 2/3.
[0061] Um código de LDPC usado em um sistema de comunica- ção sem fio é um QC-código de LDPC. Uma parte de bit de paridade do QC-código de LDPC tem uma estrutura bidiagonalou uma estrutura similar a raptor. Isto pode simplificar a codificação e suportar repetição híbrida de redundância adicional. Um decodificador para o QC-código de LDPC usualmente usa uma QC-rede de mudança de LDPC (QSN), uma rede Banyan, ou uma rede Benes, para informação de mudança circular.
[0062] Um gráfico de base 200 para o QC-código de LDPC, que tem uma estrutura similar a raptor, é uma matriz de m linhas e n colu- nas. O gráfico de base 200 pode incluir cinco submatrizes A, B, C, D, e
E. Um peso de uma linha ou de uma coluna da matriz é determinado pela quantidade de elementos de não zero na linha ou na coluna. Um peso de uma linha (peso de linha) significa uma quantidade de ele- mentos de não zero em uma linha, e um peso de uma coluna (peso de coluna) significa uma quantidade de elementos de não zero em uma coluna. O seguinte é mostrado no gráfico de base 200 da FIG. 2:
[0063] A submatriz A é uma matriz de mA linhas e nA colunas, e um tamanho da submatriz A é mA×nA. Cada coluna corresponde a bits de sistema Z no código de LDPC, e um bit de sistema é, às vezes, referi- do como um bit de informação.
[0064] A submatriz B é uma matriz de mA linhas e mA colunas, e um tamanho da submatriz B é mA×mA. Cada coluna corresponde a bits de paridade Z no código de LDPC. A submatriz B inclui uma submatriz B' tendo uma estrutura bidiagonal e uma coluna de matriz cujo peso de coluna é 3 (peso de coluna 3 para resumo). O peso de coluna 3 pode estar localizado no lado esquerdo da submatriz B', conforme mostrado por 20a na FIG. 2. A submatriz B pode incluem adicionalmente uma ou mais colunas de matriz cujos pesos de coluna são 1 (coluna de peso 1 para resumo). 20b e 20c da FIG. 2 são exemplos de localizações pos- síveis dos pesos de coluna 1.
[0065] Usualmente, uma matriz gerada baseada nas submatrizes A e B pode ser referida como uma matriz de núcleo, que pode ser usada para suportar codificação de alta taxa de código.
[0066] A submatriz C é uma matriz toda zero, e um tamanho da submatriz C é mA×mD.
[0067] A submatriz E é uma matriz de identidade, e um tamanho da submatriz E é mD×mD, onde mD=m-mA.
[0068] Um tamanho da submatriz D é mD×(nA+mA), e pode usual- mente ser usado para gerar bits de paridade de taxa de código baixos.
[0069] Devido às submatrizes C e E terem estruturas relativamen-
te definitivas, estruturas das três submatrizes A, B, e D são alguns dos fatores que afetam o desempenho de codificação/decodificação do có- digo de LDPC.
[0070] Pode ser compreendido que o precedente descreve a estru- tura do gráfico de base/a matriz de base de uma perspectiva de princí- pios. A divisão das submatrizes A, B, C, D, e E é meramente para faci- litar a compreensão da perspectiva de princípios. Pode ser compreen- dido que a divisão das submatrizes A, B, C, D, e E não é limitada à maneira de divisão precedente. Em uma implementação, C é uma ma- triz toda zero, E é uma matriz de identidade, e estruturas de C e E são conhecidas. Portanto, uma matriz de LDPC pode ser representada em uma forma simplificada sem usar tidas das submatrizes A, B, C, D, e E. Por exemplo, a matriz de LDPC pode ser representada em uma forma simplificada pelas submatrizes A, B, e D, pelas submatrizes A, B, C, e D, ou pelas submatrizes A, B, D, e E. Em outra implementação, devido à submatriz B incluir um ou mais pesos de coluna 1, para o um ou mais pesos de coluna 1 na submatriz B, uma estrutura é relativa- mente definitiva. Portanto, o um ou mais pesos de coluna 1 pode não ser usado para representar a matriz de LDPC. Por exemplo, a subma- triz A, algumas colunas na submatriz B, e correspondents colunas na submatriz D podem ser usadas para representar a matriz de LDPC. Quando uma matriz de LDPC tendo a estrutura similar a raptor é usa- da para codificação, uma possível implementação é que a parte da matriz incluindo as submatrizes A e B, a saber, uma matriz de núcleo, pode primeiro ser usada na codificação para obter um ou mais bits de paridade correspondentes à submatriz B. Em seguida, a matriz de LDPC total é usada na codificação para obter um ou mais bits de pari- dade correspondentes à submatriz E. Devido à submatriz B poder in- cluir uma submatriz B' com estrutura bidiagonale um ou mais pesos de coluna 1, durante codificação, bits de paridade correspondentes à submatriz B' podem ser primeiro obtidos, e bits de paridade corres- pondentes aos pesos de coluna 1 podem ser, em seguida, obtidos.
[0071] Um exemplo de um esquema de codificação é proporciona- do abaixo. Assumindo que a matriz de núcleo incluindo as submatrizes A e B é Hnúcleo. Uma última linha e uma última coluna do Hnúcleo são removidas. Em outras palavras, uma coluna de peso 1 e uma linha em que o elemento de não zero no coluna de peso 1 está localizado são removidos do Hnúcleo para obter uma matriz Hnúcleo-dual. A parte de bits de paridade do Hnúcleo-dual é representada como He=[He1 He2], onde He1 é um peso de coluna 3, e He2 tem uma estrutura bidiagonal. De acordo com uma definição da matriz de LDPC, Hnúcleo-dual∙[S Pe]T=0, onde S é uma sequência de entrada, e é representado por um vetor de bits de informação, Pe é um vetor de bits de paridade, e [S Pe]T representa uma matriz transposta formada pela sequência de entrada S e Pe. Por- tanto, bits de paridade correspondentes a Hnúcleo-dual podem ser primei- ro calculados baseado na sequência de entrada S e Hnúcleo-dual, onde a sequência de entrada S inclui todos os bits de informação. Em segui- da, bits de paridade correspondentes aos um ou mais pesos de coluna 1 na submatriz B são calculados baseados nos bits de paridade cor- respondentes a Hnúcleo-dual e a sequência de entrada S. Neste caso, to- dos os bits de paridade correspondentes à submatriz B podem ser ob- tidos. Bits de paridade correspondentes à submatriz E são obtidos por codificação da submatriz D baseado na sequência de entrada S e aos bits de paridade correspondentes à submatriz B, para obter todos os bits de informação e todos os bits de paridade. Estes bits constituem uma sequência codificada, a saber, uma palavra de código de LDPC.
[0072] O código de LDPC pode incluir adicionalmente uma opera- ção de encurtamento (encurtamento) ou uma operação de perfuração na sequência codificada. Os bits encurtados ou perfurados não são enviados.
[0073] O encurtamento é usualmente realizado partindo do último bit do bit de informaçãos, e pode ser realizado em maneiras diferentes. Por exemplo, se uma quantidade de bits encurtados é s 0, os últimos s0 bits na sequência de entrada S podem ser ajustados como bits conhe- cidos, por exemplo, ajustados a 0, nulo, ou outro valor, para obter uma sequência de entrada S'. Em seguida, a sequência de entrada S' é co- dificada pelo uso de uma matriz de LDPC. Para outro exemplo, os úl- timos (s0 mod Z) bits na sequência de entrada S podem alternativa- mente ser ajustados como bits conhecidos, por exemplo, ajustados como zero, nulo, ou algum outro valor, para obter uma sequência de entrada S'. As últimas ⌊s0/Z⌋ colunas na submatriz A são anuladas para obter uma matriz de LDPC H', e a sequência de entrada S' é codifica- da pelo uso da matriz de LDPC H'; ou as últimas ⌊s0/Z⌋ colunas na submatriz A não participam na codificação da sequência de entrada S'. Após a codificação, os bits encurtados não são enviados.
[0074] O puncionamento pode ser realizado em bit(s) de punção ou bit(s) de paridade na sequência de entrada. O(s) bit(s) de paridade de puncionamento é/são usualmente realizado(s) partindo do último bit nos bits de paridade. Alternativamente, o(s) bit(s) de paridade de pun- cionamento pode(m) ser realizado(s) de acordo com uma ordem de puncionamento pré-ajustada do sistema. Uma implementação possível é conforme segue: A sequência de entrada é primeiro codificada, e, em seguida, últimos p bits nos bits de paridade é/são selecionado(s) baseado em uma quantidade p de bits que necessitam serem puncio- nados, ou p bits é/são selecionado(s) baseado na ordem de puncio- namento pré-ajustada do sistema. Os p bits não é/são enviados. Em outra implementação possível, alternativamente, as p colunas em uma matriz que corresponde aos bits puncionados, e p linhas em que ele- mentos de não zero nas colunas estão localizados podem ser determi- nadas. Estas linhas e colunas não participam na codificação, e não correspondentes bits de paridade são gerados.
[0075] Deve ser notado que a implementação de codificação aqui descrita é meramente um exemplo, e outras implementações de codi- ficação conhecidas a um técnico no assunto podem alternativamente ser usadas baseado no gráfico de base e/ou a matriz de base provida nas concretizações deste pedido. Isto não é limitado neste pedido. A decodificação neste pedido pode ser realizada em uma pluralidade de métodos de decodificação, por exemplo, um (MS) método de decodifi- cação de min-sum, ou um método de decodificação de propagação acreditado, podem ser usados. O MS método de decodificação é, às vezes, referido como um método de decodificação Flood MS. Por exemplo, a sequência de entrada é inicializada e, em seguida, proces- samento de iteração é realizado. Detecção de decisão difícil é realiza- da após a iteração, e uma verificação é realizada on um resultado de decisão difícil. Se um resultado de codificação satisfaz uma equação de verificação, a decodificação sucede, a iteração termina, e o resulta- do de decisão é retirado. Se o resultado de decodificação não satisfaz a equação de verificação, processamento de iteração é realizado no- vamente dentro de uma quantidade máxima de iterações. Se uma veri- ficação ainda não passa quando a quantidade máxima de iterações é alcançada, a decodificação falha. Um princípio da codificação de MS é compreendido por um técnico no assunto, e detalhes não são aqui descritos.
[0076] Deve ser notado que o método de decodificação aqui des- crito é meramente um exemplo, e outros métodos de decodificação conhecidos por um técnico no assunto podem alternativamente ser usados baseado no gráfico de base e/ou a matriz de base provida nes- te pedido. O método de decodificação não é limitado neste pedido.
[0077] Uma palavra de código de LDPC é obtida dependendo do desenho de um gráfico de base ou uma matriz de base. Por exemplo,
um limite superior de desempenho de um código de LDPC pode ser determinado por realização de evolução de densidade no gráfico de base ou a matriz de base. Uma base de erro do código de LDPC é de- terminada baseada em um valor de mudança na matriz de base. O de- sempenho de codificação ou decodificação pode ser aperfeiçoado e a base de erro pode ser abaixada por desenho corretamente do gráfico de base ou a matriz de base. Nos sistemas de comunicação sem fio, o comprimento do código é flexível, por exemplo, 2560 bits ou 38400 bits. A FIG. 3a mostra um exemplo de um gráfico de base para um có- digo de LDPC. As Figuras 3b-1 a 3b-8 mostram exemplos de matrizes de base correspondentes ao gráfico de base na FIG. 3a. As matrizes de base pode satisfazem requisições de desempenho de uma plurali- dade de comprimentos de bloco. Para facilidade de descrição e com- preensão, índices de coluna e índices de linha são respectivamente mostrados no lado mais superior e no lado mais à esquerda na Fig. 3a e Figuras 3b-1 a 3b-8.
[0078] A FIG. 4 é um diagrama de desempenho esquemático de um código de LDPC mostrado na FIG. 3a. No diagrama de desempe- nho mostrado na FIG. 4, curvas de desempenho de codificação usan- do qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8 são mostradas. A coordenada horizontal representa um comprimento de uma sequência de bit de informação em unidades de bits, e a coorde- nada vertical é uma proporção de sinal para ruído (Es/N0) para um símbolo requerido para alcançar uma correspondente taxa de erro de bloco (BLER). Duas linhas de cada taxa de código corresponde a dois BLERs 0,01 e 0,0001. Para uma mesma taxa de código, 0,01 é cor- respondente a uma curva superior, e 0,0001 é correspondente a uma curva inferior. Se as curvas são suaves, elas indicam que a matriz tem desempenho relativamente alto em casos de comprimentos de bloco diferentes.
[0079] A FIG. 3a mostra um exemplo de um gráfico de base de um código de LDPC. No gráfico de base da FIG. 3a, números 0 a 51 na linha mais superior são índices de coluna, e correspondem a coluna 0 a coluna 51 do gráfico de base, respectivamente. Números 0 a 41 na coluna mais à esquerda são índices de linha, e correspondem a linha 0 a linha 41 do gráfico de base, respectivamente. Isto é, o gráfico de ba- se tem um tamanho de 42 linhas e 52 colunas.
[0080] Em uma implementação, uma combinação da submatriz A e da submatriz B pode ser considerada como uma matriz de núcleo do gráfico de base para o código de LDPC, e a matriz de núcleo pode ser usada para codificação de alta taxa de código. Conforme mostrado na FIG. 3a, uma matriz de 7 linhas e 17 colunas no canto superior do grá- fico de base pode ser considerada como a matriz de núcleo do gráfico de base. A matriz de núcleo inclui a submatriz A e a submatriz B. A submatriz A é uma matriz de 7 linhas e 10 colunas, e é constituída por linha 0 a linha 6 e coluna 0 a coluna 9 da matriz de base na FIG. 3a. A submatriz B é uma matriz de 7 linhas e 7 colunas, e é constituída por linha 0 a linha 6 e coluna 10 a coluna 16 da matriz de base na FIG. 3a.
[0081] Em outra implementação, uma matriz constituída por 7 li- nhas e 14 colunas, ou uma matriz constituída por 7 linhas e 15 colu- nas, ou uma matriz constituída por 7 linhas e 16 colunas, em um canto esquerdo superior no gráfico de base mostrado na FIG. 3a, pode ser considerada como a parte de núcleo. Em outras palavras, no gráfico de base mostrado na FIG. 3a, uma matriz constituída por linha 0 a li- nha 6 e coluna 0 a coluna 13, ou uma matriz constituída por linha 0 a linha 6 e coluna 0 a coluna 14, ou uma matriz constituída por linha 0 a linha 6 e coluna 0 a coluna 15, pode ser considerada como a parte de núcleo. Correspondentemente, uma parte em qualquer uma das matri- zes mostrada nas Figuras 3b-1 a 3b-8 that corresponde a uma parte de núcleo no gráfico de base da FIG. 3a pode alternativamente ser considerada como uma parte de núcleo.
[0082] Em uma implementação, a submatriz A pode incluir uma ou mais colunas de perfuração. Por exemplo, a submatriz A pode incluir duas colunas de perfuração. Neste caso, após a punção, uma taxa de código que pode ser suportada pela matriz de núcleo é 2/3. A subma- triz B pode incluir uma coluna de peso 1. Para ser específico, um peso de coluna da primeira coluna na submatriz B é 3 (coluna 10 na matriz de núcleo). Um peso de coluna da segunda coluna na submatriz B é 5 (coluna 11 na matriz de núcleo). A segunda coluna para a quarta colu- na (coluna 11 a coluna 13 na matriz de núcleo) e linha 0 a linha 3 na submatriz B são de uma estrutura bidiagonal, onde os pesos de colu- na da terceira coluna e da quarta coluna (coluna 12 e coluna 13 na matriz de núcleo) são 2. A submatriz B inclui adicionalmente três pe- sos de coluna 1 (coluna 14 a coluna 16 na matriz de núcleo).
[0083] Em uma implementação, a submatriz A pode corresponder a bits de sistema, às vezes é também referida como bits de informa- ção, e tem um tamanho de mA linhas e 10 colunas, onde mA=5. A submatriz A é constituída por elementos na linha 0 a linha 4 e coluna 0 a coluna 9 em um gráfico de base 30a na FIG. 3a.
[0084] Em uma implementação, a submatriz B pode corresponder a bits de paridade, e tem um tamanho de mA linhas e mA colunas. A submatriz B é constituída por elementos na linha 0 a linha 6 e coluna 10 a coluna 16 no gráfico de base 30a na FIG. 3a.
[0085] Para obter uma taxa de código flexível, a submatriz C, a submatriz D, e a submatriz E de correspondentes tamanhos, pode ser adicionada baseado na matriz de núcleo, para obter taxas de código diferentes. Devido à submatriz C ser uma matriz zero, a submatriz E é uma matriz de identidade, e tamanhos das submatrizes são principal- mente determinados baseado nas taxas de código, as estruturas são relativamente fixas. O desempenho de codificação/decodificação é principalmente afetado pela matriz de núcleo e a submatriz D. Linhas e colunas são adicionadas baseado na matriz de núcleo, para formar correspondentes partes C, D, e E, desse modo, obtendo taxas de có- digo diferentes.
[0086] Uma quantidade mD de colunas na submatriz D é uma so- ma de quantidades de colunas na submatriz A e na submatriz B. Uma quantidade de linhas na submatriz D está principalmente relacionada a uma taxa de código. Usando o gráfico de base 30a na FIG. 3a como um exemplo, a submatriz D tem 17 colunas. Se uma taxa de código suportada pelo código de LDPC é Rm, o gráfico de base ou a matriz de base para o código de LDPC tem m linhas e n colunas, onde n=nA/Rm+p, m=n-nA=nA/Rm+p-nA, e p é a quantidade de colunas de perfuração. A taxa de código suportada pelo código de LDPC pode ser obtuda baseada na fórmula. Se uma taxa de código mais baixa é Rm=1/3 e a quantidade p de colunas de perfuração é 2, no exemplo do gráfico de base 30a na FIG. 3a como um exemplo, n=52, m=42, e uma quantidade mD de linhas na submatriz D pode ser até m–mA=42–7=35, de modo que 0≤mD≤35.
[0087] Usando o gráfico de base 30a na FIG. 3a como um exem- plo, a submatriz D pode incluir mD linhas na linha 7 a linha 41.
[0088] Neste pedido, se existe no máximo um elemento de não zero em cada coluna para duas linhas adjacentes no gráfico de base, as duas linhas são ortogonais. Em outras colunas diferentes de algu- mas colunas para duas linhas adjacentes no gráfico de base, se existe no máximo um elemento de não zero em cada coluna das outras colu- nas para duas linhas adjacentes, as duas linhas adjacentes são qua- se-ortogonais. Por exemplo, para duas linhas adjacentes, em cada co- luna outra do que as colunas de perfuração, se existe somente um elemento de não zero, pode ser considerado que as duas linhas adja- centes são quase-ortogonais.
[0089] A linha 7 a linha 41 no gráfico de base 30a na FIG. 3a pode incluir uma pluralidade de linhas em uma estrutura quase-ortogonal e pelo menos duas linhas em uma estrutura ortogonal. Por exemplo, a linha 32 e linha 33 no gráfico de base 30a na FIG. 3a são ortogonais, a linha 34 e linha 35 são ortogonais, e as linhas 36, 37, e 38 são ortogo- nais. Para qualquer duas linhas adjacentes, em outras colunas diferen- tes da coluna de perfuração, se existe no máximo um elemento de não zero em cada coluna, as duas linhas adjacentes satisfazem uma estru- tura quase-ortogonal. Se as colunas de perfuração são incluídas, exis- te no máximo um elemento de não zero em qualquer uma das colunas, as duas linhas adjacentes satisfazem uma estrutura ortogonal.
[0090] Se mD=15, a submatriz D no gráfico de base do código de LDPC tem 15 linhas e 17 colunas, e pode ser uma matriz constituída por linha 7 a linha 21 e coluna 0 a coluna 16 no gráfico de base 30a na FIG. 3a. Uma correspondente taxa de código suportada pelo código de LDPC pode ser obtida baseado na fórmula de cálculo precedente.
[0091] A submatriz E é uma matriz de identidade de 15 linhas e 15 colunas, e a submatriz C é uma matriz toda zero de 7 linhas e 15 colu- nas.
[0092] Se mD=19, a submatriz D no gráfico de base do código de LDPC tem 19 linhas e 17 colunas, e pode ser uma matriz constituída por linha 7 a linha 25 e coluna 0 a coluna 16 no gráfico de base 30a na FIG. 3a. Uma correspondente taxa de código suportada pelo código de LDPC pode ser obtida baseado na fórmula de cálculo precedente. Nesta taxa de código, o gráfico de base do código de LDPC é corres- pondente a uma matriz constituída por linha 0 a linha 25 e coluna 0 a coluna 16 no gráfico de base 30a na FIG. 3a. A submatriz E é uma matriz de identidade de 16 linhas e 16 colunas, e a submatriz C é uma matriz toda zero de 7 linhas e 16 colunas. O mesmo é verdadeiro se mD é outro valor, detalhes não são descritos.
[0093] Em um desenho, permutação de linha/coluna pode ser rea- lizada no gráfico de base e/ou na matriz de base. A permitação de li- nha/coluna pode ser permutação de linha, permutação de coluna, ou permutação de linha e permutação de coluna. A permutação de per- mutação de linha/permutação de coluna não muda um peso de linha ou um peso de coluna, e não muda uma quantidade de elementos de não zero. Portanto, um gráfico de base e/ou uma matriz de base ob- ttdos por realização de permitação de permutação de li- nha/permutação de coluna têm/tem impacto limitado no desempenho do sistema. Como um todo, o impacto no desempenho do sistema de- vido á permutação de linha/permutação de coluna é aceitável e está dentro de uma faixa de tolerância. Por exemplo, o desempenho dimi- nui dentro de uma faixa de tolerância em alguns cenários, ou em al- gumas faixas, enquanto que em alguns cenários ou em algumas fai- xas, o desempenho aperfeiçoa a alguma extensão, e o desempenho total não é grandemente afetado.
[0094] Por exemplo, a linha 34 e linha 36 do gráfico de base 30a na FIG. 3a podem ser trocadas, e a coluna 44 e coluna 45 podem ser trocadas. Para outro exemplo, a submatriz D inclui mD linhas em uma matriz F. A troca da linha pode não ser realizada nas mD linhas, ou a troca da linha pode ser realizada em uma ou mais das mD linhas. A submatriz E é ainda uma estrutura diagonal, e nenhuma troca de linha ou troca de coluna é realizada na submatriz E. Por exemplo, a troca de linha é realizada na linha 27 e linha 29 na matriz F. A submatriz D in- clui as mD linhas na matriz F, e a submatriz E é ainda uma estrutura diagonal. Pode ser compreendido que se o gráfico de base ou a matriz de base inclui a submatriz D, quando a troca de coluna é realizada na matriz de núcleo, a troca de coluna necessira ser realizada correspon- dentemente na submatriz D.
[0095] As matrizes mostradas nas Figuras 3b-1 to 3b-8 são exem-
plos das matrizes de base correspondentes ao gráfico de base 30a na FIG. 3a. Uma localização de um elemento de não zero na linha i e co- luna j no gráfico de base 30a na FIG. 3a é a mesma conforme aquela nas matrizes mostradas nas Figuras 3b-1 a 3b-8. Um valor de mudan- ça do elemento de não zero é Vi,j. Um elemento zero é representado como um valor –1 ou nulo na matriz de base. Uma correspondente parte da submatriz D na matriz de base pode incluir mD linhas na linha 7 a linha 41 em qualquer uma das matrizes de base, e valores de mD podem ser selecionados baseado em taxas de código diferentes. Pode ser compreendido que se o gráfico de base é uma matriz obtida por realização de transformação de linha/transformação de coluna no grá- fico de base 30a na FIG. 3a, consequentemente, a matriz de base é uma correspondente matriz obtida por realização de transformação de linha/transformação de coluna.
[0096] Em um desenho possível, devido às estruturas das subma- trizes C e E serem relativamente fixas, o gráfico de base/a matriz de base do código de LDPC podem ser representados pelo uso das sub- matrizes A, B, e D, isto é, linha 0 a linha 41 e coluna 0 a coluna 16 em qualquer da matriz mostrada na FIG. 3a ou Figuras 3b-1 a 3b-8.
[0097] Em um desenho possível, devido à coluna 14 a coluna 51 terem estrutura relativamente definitiva, o gráfico de base/a matriz de base do código de LDPC podem ser representadas em uma forma simplificada pelo uso de linha 0 a linha 41 e coluna 0 a coluna 13 em qualquer da matriz mostrada na FIG. 3a ou Figuras 3b-1 a 3b-8.
[0098] Em um desenho possível, o gráfico de base/a matriz de ba- se do código de LDPC podem ser representados pelo uso de linha 0 a linha 41 e coluna 0 a coluna 13, mais algumas da coluna 14 a coluna 51 em qualquer da matriz mostrada na FIG. 3a ou Figuras 3b-1 a 3b-8. Por exemplo, o gráfico de base/a matriz de base do código de LDPC podem ser representados pelo uso da linha 0 a linha 41 e coluna 0 a coluna 15 ou linha 0 a linha 41 e coluna 0 a coluna 14 em qualquer das matrizes mostradas na FIG. 3a ou Figuras 3b-1 a 3b-8.
[0099] Em um desenho possível, a matriz de base do código de LDPC pode incluir linha 0 a linha 6 e coluna 0 a coluna 16 em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8. Neste caso, uma matriz constituída por linha 0 a linha 6 e coluna 0 a coluna 16 em qualquer uma das matrizes mostradas nas Figuras 3b-1 to 3b-8 pode ser usada como uma parte de núcleo da matriz de base. Neste dese- nho, uma estrutura de outra parte, por exemplo, submatrizes C, D, e E, da matriz de base do código de LDPC, não é limitada. Por exemplo, qualquer estrutura mostrada nas Figuras 3b-1 a 3b-8 ou outro desenho de matriz, podem ser usados. Em outro desenho possível, a matriz de base do código de LDPC pode incluir uma matriz constituída por linha 0 a linha m–1 e coluna 0 a coluna n–1 em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8, onde 7≤m≤42, m é um número inteiro, 18≤n≤52, e n é um número inteiro.
[00100] Neste desenho, uma estrutura de outra parte da matriz de base do código de LDPC não é limitada. Por exemplo, qualquer estru- tura mostrada nas Figuras 3b-1 a 3b-8 ou outro desenho de matriz po- de ser usado.
[00101] Em ainda outro desenho possível, a matriz de base do có- digo de LDPC pode incluir linha 0 a linha 6 e algumas colunas de colu- na 0 a coluna 16 em qualquer uma das matrizes 3b-1 a 3b-8 mostra- das nas Figuras 3b-1 a 3b-8. Por exemplo, a parte de núcleo (linha 0 a linha 6 e coluna 0 a coluna 16) das matrizes mostradas nas Figuras 3b-1 a 3b-8 pode ser encurtada e/ou puncionada. Em uma implemen- tação, a matriz de base do código de LDPC pode não incluir coluna(s) correspondentes a bit(s) encurtado(s) e/ou puncionado(s).
[00102] Neste desenho, outra parte da matriz de base do código de LDPC não é limitada. Por exemplo, uma estrutura mostrada nas Figu-
ras 3b-1 a 3b-8 pode ser usada, e outras estruturas podem ser usadas também.
[00103] Em ainda outro desenho possível, a matriz de base do có- digo de LDPC pode incluir uma matriz constituída por linha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8, onde 7≤m≤42, m é um número inteiro, 18≤n≤52, e n é um número inteiro. Por exemplo, a operação de encurtamento e/ou operação de puncionamento pode ser realizada na linha 0 a linha m–1 e coluna 0 a coluna n–1 de qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8. Em uma imple- mentação, a matriz de base do código de LDPC pode não incluir a(s) coluna(s) correspondente(s) aos bit(s) encurtado(s) e/ou punciona- do(s). Neste desenho, outra parte da matriz de base do código de LDPC não é limitada. Por exemplo, uma estrutura mostrada em qual- quer das Figuras 3b-1 a 3b-8 pode ser usada, e outras estruturas po- dem ser usadas também.
[00104] Em uma implementação, a operação de encurtamento pode ser o encurtamento dos bits de informação. Usando qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8 como um exemplo, uma ou mais colunas de coluna 0 a coluna 9 são encurtadas. Neste caso, a matriz de base do código de LDPC pode não incluir a uma ou mais co- lunas encurtadas em qualquer uma das matrizes mostradas nas Figu- ras 3b-1 a 3b-8. Por exemplo, se a coluna 9 é encurtada, a matriz de base do código de LDPC pode incluir coluna 0 a coluna 8 e coluna 10 a coluna 16 em qualquer uma das matrizes nas Figuras 3b-1 a 3b-8.
[00105] Em outra implementação, a operação de puncionamento pode ser puncionar bits de paridade. Usando qualquer uma das matri- zes mostradas nas Figuras 3b-1 a 3b-8 como um exemplo, uma ou mais colunas da coluna 10 a coluna 16 são puncionadas. Neste caso, a matriz de base do código de LDPC pode não incluir a uma ou mais colunas puncionadas em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8. Por exemplo, se a coluna 16 é puncionada, a ma- triz de base do código de LDPC pode incluir coluna 0 a coluna 15 em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8.
[00106] Para suportar comprimentos de bloco diferentes, o código de LDPC necessita de fatores de elevação diferentes Z. Em um dese- nho possível, matrizes de base diferentes podem ser usadas para fato- res de elevação diferentes, para alcançar desempenho relativamente alto. Por exemplo, o fator de elevação é Z=a×2j, onde 0≤j<7 e a ∈ {2,3,5,7,9,11,13,15}. A Tabela 1 mostra um fator de elevação ajustado possivelmente suportado {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}. Cada das células exceto para a linha mais superi- or e a coluna mais à esquerda representam um valor de Z correspon- dente a valores de correspondentes a e j. Por exemplo, para uma co- luna a=2 e uma linha j=1, Z é 4. Para outro exemplo, para a=11 e j=3, Z é 88. Por analogia, detalhes não são descritos. Tabela 1 Z a=2 a=3 a=5 a=7 a=9 a=11 a=13 a=15 j=0 2 3 5 7 9 11 13 15 j=1 4 6 10 14 18 22 26 30 j=2 8 12 20 28 36 44 52 60 j=3 16 24 40 56 72 88 104 120 j=4 32 48 80 112 144 176 208 240 j=5 64 96 160 224 288 352 j=6 128 192 320 j=7 256 384
[00107] Pode ser compreendido que a Tabela 1 meramente mostra uma forma de descrever um fator de elevação ajustado. A implemen- tação do produto atual não é limitada à forma na Tabela 1, e os fatores de elevação podem ter outra forma de representação.
[00108] Por exemplo, cada um valor é correspondente a um conjun- to de fatores de elevação. O fator de elevação ajustado pode ser iden- tificado por um índice de grupo. Por exemplo, a Tabela 1' mostra outra forma de representação de fator de elevação ajustado. Pode ser com- preendido que na Tabela 1', o índice de grupo do fator de elevação é descrito tomando-se 1,2,3,4,5,6,7,8 como exemplos. O valor do índice de grupo de cada conjunto neste pedido não é limitado a estes valo- res. Por exemplo, 0,1,2,3,4,5,6,7 pode ser usado para para indicar os oito fatores de elevação ajustados, ou usar outros índices identificáveis para indicar os oito fatores de elevação ajustados. Cada índice de gru- po corresponde a uma matriz de base. Tomando a Tabela 1' como um exemplo, os valores dos fatores de elevação Z em conjuntos de fato- res de elevação diferentes são diferentes. Z é determinado, de modo que a matriz de base correspondente a Z é também determinada. Portanto, Z corresponde à matriz de base. Tabela 1' Conjunto de fatores de eleva- Índice de grupo(Índice ção (Conjunto de tamanhos de grupo) de elevação) 1 {2, 4, 8, 16, 32, 64, 128, 256} 2 {3, 6, 12, 24, 48, 96, 192, 384} 3 {5, 10, 20, 40, 80, 160, 320} 4 {7, 14, 28, 56, 112, 224} 5 {9, 18, 36, 72, 144, 288} 6 {11, 22, 44, 88, 176, 352} 7 {13, 26, 52, 104, 208} 8 {15, 30, 60, 120, 240}
[00109] O fator de elevação ajustado suportado pelo gráfico de ba- se pode incluir todos os fatores de elevação ou alguns fatores de ele-
vação na Tabela 1 ou Tabela 1'. Por exemplo, o fator de elevação ajustado pode ser {24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}. Em outras palavras, Z é maior do que ou igual a 24. Para outro exemplo, o fator de elevação ajustado pode ser um grupo de união de {24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}, e um ou mais de {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22}. Deve ser notado que este é me- ramente um exemplo aqui. O fator de elevação ajustado suportado pe- lo gráfico de base pode ser dividido em subconjuntos diferentes base- ados em um valor de a. Por exemplo, se a=2, um subconjunto de fato- res de elevação Z pode incluir um ou mais de {2, 4, 8, 16, 32, 64, 128, 256}; para outro exemplo, se a=3, um subconjunto de fatores de ele- vação Z pode incluir um ou mais de {3, 6, 12, 24, 48, 96, 192, 384}; e assim por diante.
[00110] O fator de elevação ajustado suportado pelo gráfico de ba- se pode ser dividido baseado em valores diferentes de a, e uma cor- respondente matriz de base é determinada.
[00111] Se a=2 ou um valor do fator de elevação Z é um de {2, 4, 8, 16, 32, 64, 128, 256}, a matriz de base pode incluir a linha 0 a linha 6 e coluna 0 a coluna 16 em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8; ou a matriz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz mostradas na FIG. 3b-1, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui linha 0 a linha m–1 e algumas colunas de colu- na 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-1, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00112] Se a=3 ou um valor do fator de elevação Z é um de {3, 6, 12, 24, 48, 96, 192, 384}, a matriz de base pode incluir linha 0 a linha 6 e coluna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-2; ou a matriz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-2, onde 7≤m≤42, m é um número in- teiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui li- nha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-2, onde 7≤m≤42, m é um número in- teiro, 17≤n≤52, e n é um número inteiro.
[00113] Por exemplo, uma matriz de base PCM inclui linha 0 a linha 41 e coluna 0 a coluna 13, ou coluna 0 a coluna 14, ou coluna 0 a co- luna 15 na FIG. 3b-2.
[00114] Se a=5 ou um valor do fator de elevação Z é um de {5, 10, 20, 40, 80, 160, 320}, a matriz de base pode incluir linha 0 a linha 6 e coluna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-3; ou a ma- triz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-3, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui linha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-3, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00115] Se a=7 ou um valor do fator de elevação Z é um de {7, 14, 28, 56, 112, 224}, a matriz de base pode incluir linha 0 a linha 6 e co- luna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-4; ou a matriz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma ma- triz mostrada na FIG. 3b-4, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui linha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-4, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00116] Se a=9 ou um valor do fator de elevação Z é um de {9, 18, 36, 72, 144, 288}, a matriz de base pode incluir linha 0 a linha 6 e co-
luna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-5; ou a matriz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma ma- triz mostrada na FIG. 3b-5, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui linha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-5, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00117] Se a=11 ou um valor do fator de elevação Z é um de {11, 22, 44, 88, 176, 352}, a matriz de base pode incluir linha 0 a linha 6 e coluna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-6; ou a ma- triz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-6, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui linha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-6, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00118] Se a=13 ou um valor do fator de elevação Z é um de {13, 26, 52, 104, 208}, a matriz de base pode incluir linha 0 a linha 6 e co- luna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-7; ou a matriz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma ma- triz mostrada na FIG. 3b-7, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui linha 0 a linha m–1 e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-7, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00119] Se a=15 ou um valor do fator de elevação Z é um de {15, 30, 60, 120, 240}, a matriz de base pode incluir linha 0 a linha 6 e co- luna 0 a coluna 16 em uma matriz 3b-8; ou a matriz de base inclui li- nha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-8, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro; ou a matriz de base inclui e algumas colunas de coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-8, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro.
[00120] Opcionalmente, para uma matriz de base para um código de LDPC, valores de mudança de elementos de não zero em uma ou mais colunas podem ser aumentados ou diminuídos por um valor de compensação Offsets, sem grandemente afetar o desempenho do sis- tema. Os valores de compensação de elementos de não zero em co- lunas diferentes podem ser os mesmos ou diferentes. Por exemplo, para compensar uma ou mais colunas em uma matriz, valores de compensação para colunas diferentes podem ser os mesmos ou dife- rentes. Isto não é limitado neste pedido.
[00121] Não grandemente afetando o desempenho do sistema sig- nifica que o impacto no desempenho do sistema é aceitável e está dentro de uma faixa de tolerância. Por exemplo, o desempenho dimi- nui dentro de uma faixa de tolerância em alguns cenários ou em algu- mas faixas. Contudo, em alguns cenários ou em algumas faixas, o de- sempenho aperfeiçoa a alguma extensão. O desempenho total não é grandemente afetado.
[00122] Por exemplo, o valor de compensação Offsets é adicionado a ou subtraído de cada valor de mudança maior do que ou igual a 0 na coluna s em qualquer uma das matrizes mostradas nas Figuras 3b-1 a 3b-8, para obter uma matriz compensada Hs, onde Offsets é um núme- ro inteiro maior do que ou igual a 0, e s é um número inteiro maior do que ou igual a 0 e menos do que 11. Os valores de compensação Offsets para uma ou mais colunas podem ser os mesmos ou diferen- tes.
[00123] No diagrama de desempenho mostrado na FIG. 4, baseado nas curvas de desempenho de codificação de matrizes mostradas na FIG. 3b-1 e FIG. 3b-2, uma coordenada horizontal representa um comprimento de uma sequência de bit de informação, e uma unidade do comprimento é bit, e uma coordenada vertical é um símbolo de proporção de sinal para ruído (Es/N0) requerida para alcançar um cor- respondente BLER. Duas linhas de cada taxa de código são corres- pondentes a dois casos de BLERs 0,01 e 0,0001. A uma mesma taxa de código, 0,01 é correspondente a uma curva superior, e 0,0001 é correspondente a uma curva inferior. Se as curvas são suaves, elas indicam que a matriz tem desempenho relativamente alto em casos de comprimentos de bloco diferentes.
[00124] A FIG. 1 a FIG. 3a e Figuras 3b-1 a 3b-8 mostram estrutu- ras do gráfico de base e a matriz de base que são relacionadas ao có- digo de LDPC. Para descrever suficientemente os desenhos do gráfico de base e/ou da matriz de base nas implementações do presente pe- dido, a estrutura da matriz de base pode ser representada em outra forma que pode ser identificada pelo sistema, por exemplo, em uma forma tabular.
[00125] Em um desenho, o gráfico de base mostrado por 10a na FIG. 1 é uma matriz de 7 linhas e 10 colunas, e parâmetros relaciona- dos podem ser representados na Tabela 2. Tabela 2 Peso de linha Índice de coluna de elemento não Número de linha (grau de linha/peso zero(Posição da coluna de elemen- (índice de linha) de linha) to não zero em linha) 0 8 0,1,2,3,6,9,10,11 1 10 0,3,4,5,6,7,8,9,11,12 2 8 0,1,3,4,8,10,12,13 3 10 1,2,4,5,6,7,8,9,10,13 4 4 0,1,11,14 5 6 0,1,5,7,11,15 6 6 0,5,7,9,11,16
[00126] Pode ser compreendido que devido à coluna 14 a coluna 16 no gráfico de base 10a serem colunas cujo peso de coluna é 1, e loca-
lizações das colunas serem relativamente fixadas ou facilmente de- terminados, as localizações de elementos de não zero na coluna 14 a coluna 16 podem não ser registradas na Tabela 2, mas são registra- das em outra forma.
[00127] Em um desenho, usando as matrizes de base mostradas nas Figuras 3b-1 a 3b-8 como exemplos, parâmetros relacionados às matrizes de base podem ser respectivamente representados na Tabe- la 3b-1 a Tabela 3b-8. Tabela 3b-1 Número Peso de linha Índice de coluna de Valor de mudança de elemento de (índice elemento não zero não zero linha de linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 183,27,0,0,222,0,0,204,0,0 2 8 0,1,3,4,8,10,12,13 162,164,117,44,159,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 168,22,57,188,173,110,85,223,0,0 4 4 0,1,11,14 0,44,70,0 5 6 0,1,5,7,11,15 0,221,215,45,171,0 6 6 0,5,7,9,11,16 0,170,23,60,241,0 7 6 1,5,7,11,13,17 0,27,36,157,153,0 8 4 0,1,12,18 0,126,16,0 9 5 1,8,10,11,19 0,126,251,76,0 10 5 0,1,6,7,20 0,49,162,248,0 11 5 0,7,9,13,21 0,4,143,236,0 12 4 1,3,11,22 0,4,151,0 13 5 0,1,8,13,23 0,235,95,173,0 14 5 1,6,11,13,24 0,51,177,63,0 15 4 0,10,11,25 0,69,63,0 16 5 1,9,11,12,26 0,106,117,67,0 17 5 1,5,11,12,27 0,239,82,222,0 18 4 0,6,7,28 0,41,214,0 19 4 0,1,10,29 0,71,123,0 20 4 1,4,11,30 0,228,3,0 21 4 0,8,13,31 0,155,240,0 22 3 1,2,32 0,75,0 23 4 0,3,5,33 0,247,96,0
Número Peso de linha Índice de coluna de Valor de mudança de elemento de (índice elemento não zero não zero linha de linha) 24 4 1,2,9,34 0,71,227,0 25 3 0,5,35 0,83,0 26 5 2,7,12,13,36 0,12,126,152,0 27 3 0,6,37 0,220,0 28 4 1,2,5,38 0,98,70,0 29 3 0,4,39 0,13,0 30 5 2,5,7,9,40 0,120,87,230,0 31 3 1,13,41 0,110,0 32 4 0,5,12,42 0,5,115,0 33 4 2,7,10,43 0,210,110,0 34 4 0,12,13,44 0,84,57,0 35 4 1,5,11,45 0,224,137,0 36 4 0,2,7,46 0,29,3,0 37 3 10,13,47 0,129,0 38 4 1,5,11,48 0,125,123,0 39 4 0,7,12,49 0,154,247,0 40 4 2,10,13,50 0,85,113,0 41 4 1,5,11,51 0,97,230,0
Tabela 3b-2 Número Peso de linha Índice de coluna de Valor de mudança de elemento de (índice de elemento não zero não zero linha linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 187,56,0,0,45,0,0,18,0,0 2 8 0,1,3,4,8,10,12,13 179,171,54,158,116,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 106,62,52,185,80,81,66,163,0,0 4 4 0,1,11,14 0,89,43,0 5 6 0,1,5,7,11,15 0,109,191,42,142,0 6 6 0,5,7,9,11,16 0,163,112,100,131,0 7 6 1,5,7,11,13,17 0,60,78,92,183,0 8 4 0,1,12,18 0,123,58,0 9 5 1,8,10,11,19 0,180,55,49,0 10 5 0,1,6,7,20 0,134,184,158,0
Número Peso de linha Índice de coluna de Valor de mudança de elemento de (índice de elemento não zero não zero linha linha) 11 5 0,7,9,13,21 0,153,164,189,0 12 4 1,3,11,22 0,167,154,0 13 5 0,1,8,13,23 0,187,166,67,0 14 5 1,6,11,13,24 0,29,67,145,0 15 4 0,10,11,25 0,21,16,0 16 5 1,9,11,12,26 0,122,113,98,0 17 5 1,5,11,12,27 0,99,112,70,0 18 4 0,6,7,28 0,135,164,0 19 4 0,1,10,29 0,94,90,0 20 4 1,4,11,30 0,173,59,0 21 4 0,8,13,31 0,8,143,0 22 3 1,2,32 0,42,0 23 4 0,3,5,33 0,190,72,0 24 4 1,2,9,34 0,73,111,0 25 3 0,5,35 0,188,0 26 5 2,7,12,13,36 0,0,1,113,0 27 3 0,6,37 0,185,0 28 4 1,2,5,38 0,41,89,0 29 3 0,4,39 0,36,0 30 5 2,5,7,9,40 0,141,35,124,0 31 3 1,13,41 0,152,0 32 4 0,5,12,42 0,145,117,0 33 4 2,7,10,43 0,68,176,0 34 4 0,12,13,44 0,92,75,0 35 4 1,5,11,45 0,189,18,0 36 4 0,2,7,46 0,140,179,0 37 3 10,13,47 0,19,0 38 4 1,5,11,48 0,44,3,0 39 4 0,7,12,49 0,111,167,0 40 4 2,10,13,50 0,27,92,0 41 4 1,5,11,51 0,158,156,0
Tabela 3b-3 Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice de elemento não zero não zero ha linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 137,124,0,0,88,0,0,55,0,0 2 8 0,1,3,4,8,10,12,13 20,94,99,9,108,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 38,15,102,146,12,57,53,46,0,0 4 4 0,1,11,14 0,136,157,0 5 6 0,1,5,7,11,15 0,131,142,141,64,0 6 6 0,5,7,9,11,16 0,124,99,45,148,0 7 6 1,5,7,11,13,17 0,45,148,96,78,0 8 4 0,1,12,18 0,65,87,0 9 5 1,8,10,11,19 0,97,51,85,0 10 5 0,1,6,7,20 0,17,156,20,0 11 5 0,7,9,13,21 0,7,4,2,0 12 4 1,3,11,22 0,113,48,0 13 5 0,1,8,13,23 0,112,102,26,0 14 5 1,6,11,13,24 0,138,57,27,0 15 4 0,10,11,25 0,73,99,0 16 5 1,9,11,12,26 0,79,111,143,0 17 5 1,5,11,12,27 0,24,109,18,0 18 4 0,6,7,28 0,18,86,0 19 4 0,1,10,29 0,158,154,0 20 4 1,4,11,30 0,148,104,0 21 4 0,8,13,31 0,17,33,0 22 3 1,2,32 0,4,0 23 4 0,3,5,33 0,75,158,0 24 4 1,2,9,34 0,69,87,0 25 3 0,5,35 0,65,0 26 5 2,7,12,13,36 0,100,13,7,0 27 3 0,6,37 0,32,0 28 4 1,2,5,38 0,126,110,0 29 3 0,4,39 0,154,0 30 5 2,5,7,9,40 0,35,51,134,0 31 3 1,13,41 0,20,0 32 4 0,5,12,42 0,20,122,0 33 4 2,7,10,43 0,88,13,0 34 4 0,12,13,44 0,19,78,0
Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice de elemento não zero não zero ha linha) 35 4 1,5,11,45 0,157,6,0 36 4 0,2,7,46 0,63,82,0 37 3 10,13,47 0,144,0 38 4 1,5,11,48 0,93,19,0 39 4 0,7,12,49 0,24,138,0 40 4 2,10,13,50 0,36,143,0 41 4 1,5,11,51 0,2,55,0
Tabela 3b-4 Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice elemento não zero não zero ha de linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 152,115,0,0,163,0,0,186,0,0 2 8 0,1,3,4,8,10,12,13 52,149,95,136,30,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 3,41,145,171,2,188,4,180,0,0 4 4 0,1,11,14 0,178,36,0 5 6 0,1,5,7,11,15 0,116,118,213,54,0 6 6 0,5,7,9,11,16 0,121,215,86,220,0 7 6 1,5,7,11,13,17 0,188,88,155,135,0 8 4 0,1,12,18 0,100,136,0 9 5 1,8,10,11,19 0,157,3,195,0 10 5 0,1,6,7,20 0,20,92,134,0 11 5 0,7,9,13,21 0,66,194,133,0 12 4 1,3,11,22 0,15,59,0 13 5 0,1,8,13,23 0,49,74,187,0 14 5 1,6,11,13,24 0,60,151,154,0 15 4 0,10,11,25 0,122,55,0 16 5 1,9,11,12,26 0,128,147,14,0 17 5 1,5,11,12,27 0,141,131,122,0 18 4 0,6,7,28 0,52,160,0 19 4 0,1,10,29 0,8,223,0 20 4 1,4,11,30 0,65,104,0 21 4 0,8,13,31 0,77,93,0 22 3 1,2,32 0,133,0
Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice elemento não zero não zero ha de linha) 23 4 0,3,5,33 0,18,214,0 24 4 1,2,9,34 0,78,43,0 25 3 0,5,35 0,106,0 26 5 2,7,12,13,36 0,191,142,47,0 27 3 0,6,37 0,166,0 28 4 1,2,5,38 0,123,150,0 29 3 0,4,39 0,177,0 30 5 2,5,7,9,40 0,51,140,159,0 31 3 1,13,41 0,119,0 32 4 0,5,12,42 0,81,89,0 33 4 2,7,10,43 0,100,134,0 34 4 0,12,13,44 0,138,34,0 35 4 1,5,11,45 0,46,212,0 36 4 0,2,7,46 0,189,165,0 37 3 10,13,47 0,106,0 38 4 1,5,11,48 0,176,144,0 39 4 0,7,12,49 0,88,141,0 40 4 2,10,13,50 0,150,6,0 41 4 1,5,11,51 0,131,52,0
Tabela 3b-5 Número de Peso de Índice de coluna de Valor de mudança de ele- linha (índice linha elemento não zero mento não zero de linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 57,6,0,0,16,0,0,95,0,0 2 8 0,1,3,4,8,10,12,13 141,25,53,132,8,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 77,8,117,3,119,55,86,21,0,0 4 4 0,1,11,14 0,70,71,0 5 6 0,1,5,7,11,15 0,113,8,79,37,0 6 6 0,5,7,9,11,16 0,34,136,127,83,0 7 6 1,5,7,11,13,17 0,13,63,142,114,0 8 4 0,1,12,18 0,35,67,0 9 5 1,8,10,11,19 0,16,15,21,0
Número de Peso de Índice de coluna de Valor de mudança de ele- linha (índice linha elemento não zero mento não zero de linha) 10 5 0,1,6,7,20 0,13,114,21,0 11 5 0,7,9,13,21 0,0,96,86,0 12 4 1,3,11,22 0,106,20,0 13 5 0,1,8,13,23 0,84,113,47,0 14 5 1,6,11,13,24 0,122,51,90,0 15 4 0,10,11,25 0,62,57,0 16 5 1,9,11,12,26 0,37,139,33,0 17 5 1,5,11,12,27 0,10,134,108,0 18 4 0,6,7,28 0,5,95,0 19 4 0,1,10,29 0,74,7,0 20 4 1,4,11,30 0,123,35,0 21 4 0,8,13,31 0,10,36,0 22 3 1,2,32 0,130,0 23 4 0,3,5,33 0,58,102,0 24 4 1,2,9,34 0,17,49,0 25 3 0,5,35 0,2,0 26 5 2,7,12,13,36 0,103,14,132,0 27 3 0,6,37 0,1,0 28 4 1,2,5,38 0,47,99,0 29 3 0,4,39 0,80,0 30 5 2,5,7,9,40 0,72,141,124,0 31 3 1,13,41 0,50,0 32 4 0,5,12,42 0,23,28,0 33 4 2,7,10,43 0,26,22,0 34 4 0,12,13,44 0,65,76,0 35 4 1,5,11,45 0,50,96,0 36 4 0,2,7,46 0,19,107,0 37 3 10,13,47 0,88,0 38 4 1,5,11,48 0,74,10,0 39 4 0,7,12,49 0,119,97,0 40 4 2,10,13,50 0,114,21,0 41 4 1,5,11,51 0,105,66,0
Tabela 3b-6 Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice de elemento não zero não zero ha linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 173,54,0,0,168,0,0,160,0,0 2 8 0,1,3,4,8,10,12,13 97,47,149,159,32,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 166,21,118,83,125,106,58,129,0,0 4 4 0,1,11,14 0,64,76,0 5 6 0,1,5,7,11,15 0,48,21,156,173,0 6 6 0,5,7,9,11,16 0,147,88,169,95,0 7 6 1,5,7,11,13,17 0,103,10,140,116,0 8 4 0,1,12,18 0,1,70,0 9 5 1,8,10,11,19 0,76,71,80,0 10 5 0,1,6,7,20 0,127,67,29,0 11 5 0,7,9,13,21 0,109,50,19,0 12 4 1,3,11,22 0,81,138,0 13 5 0,1,8,13,23 0,47,11,161,0 14 5 1,6,11,13,24 0,1,24,93,0 15 4 0,10,11,25 0,117,134,0 16 5 1,9,11,12,26 0,58,119,50,0 17 5 1,5,11,12,27 0,56,29,77,0 18 4 0,6,7,28 0,42,130,0 19 4 0,1,10,29 0,164,49,0 20 4 1,4,11,30 0,171,164,0 21 4 0,8,13,31 0,159,125,0 22 3 1,2,32 0,79,0 23 4 0,3,5,33 0,27,140,0 24 4 1,2,9,34 0,84,13,0 25 3 0,5,35 0,94,0 26 5 2,7,12,13,36 0,14,28,151,0 27 3 0,6,37 0,40,0 28 4 1,2,5,38 0,67,110,0 29 3 0,4,39 0,82,0 30 5 2,5,7,9,40 0,129,87,123,0 31 3 1,13,41 0,117,0 32 4 0,5,12,42 0,60,41,0 33 4 2,7,10,43 0,92,103,0 34 4 0,12,13,44 0,89,83,0
Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice de elemento não zero não zero ha linha) 35 4 1,5,11,45 0,86,49,0 36 4 0,2,7,46 0,125,138,0 37 3 10,13,47 0,130,0 38 4 1,5,11,48 0,63,43,0 39 4 0,7,12,49 0,34,21,0 40 4 2,10,13,50 0,118,86,0 41 4 1,5,11,51 0,65,18,0
Tabela 3b-7 Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice elemento não zero não zero ha de linha) 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 113,122,0,0,23,0,0,137,0,0 2 8 0,1,3,4,8,10,12,13 103,141,93,12,154,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 19,163,39,158,173,35,83,203,0,0 4 4 0,1,11,14 0,59,200,0 5 6 0,1,5,7,11,15 0,190,135,15,111,0 6 6 0,5,7,9,11,16 0,23,115,163,40,0 7 6 1,5,7,11,13,17 0,78,73,46,134,0 8 4 0,1,12,18 0,193,54,0 9 5 1,8,10,11,19 0,166,151,19,0 10 5 0,1,6,7,20 0,1,72,182,0 11 5 0,7,9,13,21 0,131,174,138,0 12 4 1,3,11,22 0,174,43,0 13 5 0,1,8,13,23 0,30,167,94,0 14 5 1,6,11,13,24 0,119,203,159,0 15 4 0,10,11,25 0,141,55,0 16 5 1,9,11,12,26 0,120,27,135,0 17 5 1,5,11,12,27 0,30,109,23,0 18 4 0,6,7,28 0,64,55,0 19 4 0,1,10,29 0,2,79,0 20 4 1,4,11,30 0,100,41,0 21 4 0,8,13,31 0,201,130,0 22 3 1,2,32 0,11,0
Número Peso de linha Índice de coluna de Valor de mudança de elemento de lin- (índice elemento não zero não zero ha de linha) 23 4 0,3,5,33 0,101,79,0 24 4 1,2,9,34 0,88,126,0 25 3 0,5,35 0,116,0 26 5 2,7,12,13,36 0,52,192,112,0 27 3 0,6,37 0,188,0 28 4 1,2,5,38 0,152,148,0 29 3 0,4,39 0,87,0 30 5 2,5,7,9,40 0,25,66,37,0 31 3 1,13,41 0,78,0 32 4 0,5,12,42 0,111,172,0 33 4 2,7,10,43 0,31,119,0 34 4 0,12,13,44 0,38,100,0 35 4 1,5,11,45 0,201,159,0 36 4 0,2,7,46 0,161,129,0 37 3 10,13,47 0,99,0 38 4 1,5,11,48 0,184,140,0 39 4 0,7,12,49 0,85,110,0 40 4 2,10,13,50 0,59,36,0 41 4 1,5,11,51 0,118,117,0
Tabela 3b-8 Número de Peso Índice de coluna de Valor de mudança de ele- linha (índice de lin- elemento não zero mento não zero de linha) ha 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 1 10 0,3,4,5,6,7,8,9,11,12 63,126,0,0,229,0,0,98,0,0 2 8 0,1,3,4,8,10,12,13 100,137,42,209,50,1,0,0 3 10 1,2,4,5,6,7,8,9,10,13 7,83,3,133,207,226,32,153,0,0 4 4 0,1,11,14 0,175,53,0 5 6 0,1,5,7,11,15 0,71,139,28,138,0 6 6 0,5,7,9,11,16 0,90,52,64,125,0 7 6 1,5,7,11,13,17 0,209,206,237,167,0 8 4 0,1,12,18 0,139,184,0 9 5 1,8,10,11,19 0,201,126,8,0 10 5 0,1,6,7,20 0,43,145,10,0 11 5 0,7,9,13,21 0,33,61,116,0
Número de Peso Índice de coluna de Valor de mudança de ele- linha (índice de lin- elemento não zero mento não zero de linha) ha 12 4 1,3,11,22 0,236,31,0 13 5 0,1,8,13,23 0,159,141,220,0 14 5 1,6,11,13,24 0,112,32,41,0 15 4 0,10,11,25 0,11,152,0 16 5 1,9,11,12,26 0,118,25,92,0 17 5 1,5,11,12,27 0,55,213,218,0 18 4 0,6,7,28 0,86,53,0 19 4 0,1,10,29 0,57,143,0 20 4 1,4,11,30 0,228,50,0 21 4 0,8,13,31 0,58,168,0 22 3 1,2,32 0,231,0 23 4 0,3,5,33 0,74,80,0 24 4 1,2,9,34 0,163,144,0 25 3 0,5,35 0,198,0 26 5 2,7,12,13,36 0,20,211,234,0 27 3 0,6,37 0,84,0 28 4 1,2,5,38 0,155,137,0 29 3 0,4,39 0,195,0 30 5 2,5,7,9,40 0,227,88,91,0 31 3 1,13,41 0,21,0 32 4 0,5,12,42 0,37,194,0 33 4 2,7,10,43 0,132,156,0 34 4 0,12,13,44 0,55,204,0 35 4 1,5,11,45 0,195,139,0 36 4 0,2,7,46 0,178,15,0 37 3 10,13,47 0,206,0 38 4 1,5,11,48 0,76,56,0 39 4 0,7,12,49 0,197,232,0 40 4 2,10,13,50 0,14,45,0 41 4 1,5,11,51 0,189,216,0
[00128] Pode ser compreendido que a FIG. 3a, Figuras 3b-1 a 3b-8, Tabela 2, e Tabelas 3b-1 a 3b-8 são previstas pata ajudarem na com- preensão dos desenhos dos gráficos de base e das matrizes de base, e formas de representação destas não são limitadas a estas. Outras variações possíveis podem também ser incluídas. Por exemplo, para variações da Tabela 3b-1 e Tabela 3b-3 a Tabela 3b-8, referência po- de ser feita a uma forma de Tabela 3b-2'. Informação sobre elementos em colunas, tal como coluna 14 a coluna 51, que têm estruturas relati- vamente definitivas e que são correspondentes a um valor de mudan- ça 0 podem ser seletivamente incluídas na tabela, ou podem não ser incluídas na tabela, para economizar espaço de armazenagem.
[00129] Em um desenho, para uma parte tendo uma estrutura rela- tivamente definitiva no gráfico de base ou na matriz de base, localiza- ções de elementos de não zero do gráfico de base ou da matriz de ba- se podem ser obtidas através de cálculo baseado em uma localização de linha/coluna, e as localizações dos elementos de não zero não po- dem ser armazenadas. Usando a FIG. 3b-2 e Tabela 3b-2 como um exemplo, localizações de coluna 14 a coluna 51 na matriz mostradas na FIG. 3b-2 são relativamente definitivas, e valores de mudança Vi,j são todos 0. Localizações de elementos de não zero podem ser calcu- ladas baseado nos elementos de não zero conhecidos. Na Tabela 3b- 2, informação sobre a coluna 14 a coluna 51 pode não ser incluída, ou informação sobre algumas colunas de coluna 14 a coluna 51 pode não ser incluída. Por exemplo, elementos não zero na coluna 16 a coluna 51 e correspondentes valores de mudança dos elementos de não zero podem não ser incluídos. Por exemplo, a matriz mostrada na FIG. 3b-2 pode alternativamente ser representada na Tabela 3b-2'. Tabela 3b-2' Número de Índice de coluna Peso de Valor de mudança de elemen- linha (índice de elemento não linha to não zero de linha) zero 0 8 0,1,2,3,6,9,10,11 0,0,0,0,0,0,0,0 0,3,4,5,6,7,8,9,11,1 1 10 187,56,0,0,45,0,0,18,0,0 2 2 8 0,1,3,4,8,10,12,13 179,171,54,158,116,1,0,0 1,2,4,5,6,7,8,9,10,1 3 10 106,62,52,185,80,81,66,163,0,0 3 4 3 0,1,11 0,89,43
Número de Índice de coluna Peso de Valor de mudança de elemen- linha (índice de elemento não linha to não zero de linha) zero 5 5 0,1,5,7,11 0,109,191,42,142 6 5 0,5,7,9,11 0,163,112,100,131 7 5 1,5,7,11,13 0,60,78,92,183 8 3 0,1,12 0,123,58 9 4 1,8,10,11 0,180,55,49 10 4 0,1,6,7 0,134,184,158 11 4 0,7,9,13 0,153,164,189 12 3 1,3,11 0,167,154 13 4 0,1,8,13 0,187,166,67 14 4 1,6,11,13 0,29,67,145 15 3 0,10,11 0,21,16 16 4 1,9,11,12 0,122,113,98 17 4 1,5,11,12 0,99,112,70 18 3 0,6,7 0,135,164 19 3 0,1,10 0,94,90 20 3 1,4,11 0,173,59 21 3 0,8,13 0,8,143 22 2 1,2 0,42 23 3 0,3,5 0,190,72 24 3 1,2,9 0,73,111 25 2 0,5 0,188 26 4 2,7,12,13 0,0,1,113 27 2 0,6 0,185 28 3 1,2,5 0,41,89 29 2 0,4 0,36 30 4 2,5,7,9 0,141,35,124 31 2 1,13 0,152 32 3 0,5,12 0,145,117 33 3 2,7,10 0,68,176 34 3 0,12,13 0,92,75 35 3 1,5,11 0,189,18 36 3 0,2,7 0,140,179 37 2 10,13 0,19 38 3 1,5,11 0,44,3 39 3 0,7,12 0,111,167 40 3 2,10,13 0,27,92 41 3 1,5,11 0,158,156
[00130] Para outro exemplo, usando a FIG. 3b-2 como um exemplo, valores de mudança Vi,j na linha 0 são também 0, e informação sobre a linha 0 pode não ser armazenada, mas é obtida através de cálculo.
[00131] Em uma implementação, o parâmetro "peso de linha" na Tabela 2, Tabelas 3b-1 a 3b-8, e Tabela 3b-2' pode alternativamente ser omitido. Uma quantidade de elementos de não zero em uma linha pode ser aprendida baseado em uma coluna em que os elementos de não zero na linha estão localizados. Portanto, o peso de linha é tam- bém aprendido.
[00132] Em uma implementação, valores de parâmetro na "coluna em que um elemento de não zero está localizado" na Tabela 2, Tabela 3b-1 a Tabela 3b-8, e Tabela 3b-2', podem não ser dispostos em or- dem ascendente, provido que os valores de parâmetro são indexados às colunas em que elementos de não zero estão localizados. Além disso, valores de parâmetro no "valor de mudança de um elemento de não zero" na Tabela 2 e Tabela 3b-1 a Tabela 3b-8 podem não ser dispostos em uma ordem de coluna, provido que os valores de parâ- metro no "valor de mudança de elemento de não zero" estão em cor- respondência um para um com os valores de parâmetro no "índice de coluna de elemento de não zero".
[00133] Em uma implementação, as matrizes de base diferentes precedentes podem ser combinadas em uma ou mais tabelas para re- presentação. Por exemplo, elementos de não zero correspondentes à matrizes de base diferentes têm uma mesma localização e um mesmo número de linha, mas têm valores de mudança diferentes Vi,j. Portanto, uma pluralidade de matrizes de base podem ser representadas pelo uso de uma tabela por listagem do número de linhas, índice de colu- nas em que elementos de não zero estão localizados, e valores de mudança de uma pluralidade de grupos de elementos de não zero. Por exemplo, valores de mudança de dois grupos de elementos de não zero podem ser listados em diferentes colunas, e são indicados pelo uso de índices.
[00134] Em uma implementação, o gráfico de base pode ser usado para indicar localizações de elementos de não zero. O parâmetro "Ín- dice de coluna de elemento de não zero" nas tabelas precedentes po- de alternativamente ser opcional.
[00135] Em uma implementação, as matrizes mostradas na FIG. 3a e Figuras 3b-1 a 3b-8 podem alternativamente ser representadas por uso de números de coluna (índices de coluna), linhas em que elemen- tos de não zero estão localizados, e valores de mudança dos elemen- tos de não zero. Opcionalmente, peso de coluna pode ser incluído.
[00136] Em outra implementação, 1 e 0 em cada linha ou cada co- luna no gráfico de base, ou a matriz de base pode ser considerada como numerais binários, e armazenagem dos numerais binários em numerais decimais ou numerais hexadecimais podem economizar es- paço de armazenagem. Usando qualquer gráfico de base precedente ou matriz de base como um exemplo, localizações de elementos de não zero nas primeiras 14 colunas ou primeiras 17 colunas podem ser armazenadas pelo de numerais hexadecimais. Por exemplo, se as primeiras 14 colunas na linha 0 são 11110010011100, as localizações dos elementos de não zero na linha 0 podem ser registradas como 0xF2 e 0x70. Isto é, todas 8 colunas formam um numeral hexadecimal. Para as últimas duas colunas, correspondentes numerais hexadeci- mais podem ser obtidos por enchimento de zeros para alcançar um múltiplo inteiro de 8 bits. Alternativamente, um correspondente número hexadecimal pode ser obtido por enchimento de zeros nas primeiras duas colunas para alcançar um múltiplo inteiro de 8 bits. O mesmo é verdadeiro de outras linhas e detalhes não são aqui descritos.
[00137] A FIG. 5 mostra um fluxograma de um processo de proces- samento de dados. O processo de processamento de dados pode ser implementado pelo uso de um aparelho de comunicação. O aparelho de comunicação pode ser uma estação de base, um terminal, ou outra entidade tal como um chip de comunicação, ou um codificador/um de- codificador, etc.
[00138] Bloco 501: Obter uma sequência de entrada. Em uma im- plementação, uma sequência de entrada para codificação pode ser uma sequência de bit de informação, uma sequência de bit de infor- mação cheia, ou uma sequência obtida pela adição de uma sequência de bit de CRC a uma sequência de bit de informação. Às vezes a se- quência de bit de informação é também referida como um bloco de có- digo, por exemplo, pode ser uma sequência de saída obtida por reali- zação da segmentação de bloco de código em um bloco de transporte. Em uma implementação, uma sequência de entrada para decodifica- ção pode ser uma sequência de valor suave de um código de LDPC. Neste pedido, uma sequência pode, às vezes, ser referida como uma sequência de bit, por exemplo, uma sequência de entrada pode tam- bém ser referida como uma sequência de bit de entrada, ou uma se- quência de bit a ser codificada. A sequência de saída pode também ser referida como uma sequência de bit de saída, uma sequência codi- ficada, ou uma sequência de bit codificada. A sequência de verificação pode também ser referida como uma sequência de bit de verificação, e assim por diante.
[00139] Bloco 502: Codificar/decodificar a sequência de entrada ba- seado em uma matriz de LDPC. Uma matriz de base da matriz de LDPC pode ser qualquer matriz de base mostrada nos exemplos pre- cedentes.
[00140] Em uma implementação, a matriz de LDPC pode ser obtida baseado em um fator de elevação Z e a matriz de base.
[00141] Em uma implementação, parâmetros relacionados à matriz de LDPC podem ser armazenados. Os parâmetros incluem um ou mais dos seguintes: (a) Parâmetros usados para obter qualquer matriz de base listada nas implementações precedentes.
A matriz de base pode ser obtida baseado nos parâmetros.
Por exemplo, os parâmetros podem ser um ou mais dos seguintes: índice de linha, peso de linha, índice de coluna, peso de coluna; localizações de elementos de não zero (tal como índices de linha dos elementos de não zero, ou índices de colu- na dos elementos de não zero), valores de mudança na matriz de ba- se, valores de mudança de elementos de não zero, e correspondentes localizações dos elementos de não zero, um valor de compensação, um fator de elevação Z, um gráfico de base, uma taxa de código, e si- milares; (b) Uma matriz de base, que é uma de quaisquer matrizes de base listadas nas implementações precedentes; (c) Uma matriz de compensação Hs, obtida por compensa- ção de pelo menos uma coluna para qualquer matriz de base listada nas implementações precedentes; (d) Uma matriz obtida por elevação (expansão) da matriz de base ou elevada a partir da matriz de compensação Hs da matriz de base; (e) Uma matriz de base obtida por realização de uma trans- formação de linha/transformação de coluna em qualquer matriz de ba- se ou a matriz de compensação Hs da matriz de base listada nas im- plementações precedentes; (f) Uma matriz obtida por elevação de uma matriz de base transformada de linha/coluna ou uma matriz de compensação trans- formada de linha/coluna Hs da matriz de base; e (g) Uma matriz de base obtida por realização de uma ope- ração de encurtamento ou puncionamento em qualquer matriz de base ou a matriz de compensação Hs da matriz de base listada nas imple-
mentações precedentes.
[00142] Em uma implementação possível, codificação/decodificação de uma sequência de entrada baseada em uma matriz de verificação de paridade de baixa densidade ((LDPC) pode ser realizada em um processo de codificação/decodificação em uma ou mais das seguintes maneiras: i. obtenção de uma matriz de base baseado em alguns ou todos dos parâmetros listados no ítem precedente (a), e, em seguida: codificação/decodificação de informação baseado na matriz de base obtida; ou realização de uma transformação de li- nha/transformação de coluna na matriz de base obtida, e codifica- ção/decodificação de informação baseada na matriz de base transfor- mada de linha/coluna; ou codificação/decodificação de informação baseada em uma matriz de compensação Hs da matriz de base obtida; ou codificação/decodificação de informação baseada em uma matriz, que é obtida por realização de uma transformação de li- nha/transformação de coluna em uma matriz de compensação Hs da matriz de base. Alternativamente, a codificação/decodificação da in- formação baseada na matriz de base ou na matriz de compensação Hs pode incluir adicionalmente: codificação/decodificação da informação baseada em uma matriz de base elevada a partir da matriz de base ou da matriz de compensação Hs da matriz de base; ou codificação/decodificação de informação baseada em uma matriz obtida por realização de um operação de encurtamento ou de puncionamento na matriz de base ou na matriz de compensação Hs. ii. Codificação/decodificação de informação baseada em uma matriz armazenada de acordo com o ítem precedente (b), (c), (d),
ou (e). A matriz pode ser uma matriz de base armazenada, uma matriz de compensação Hs da matriz de base, uma matriz obtida por realiza- ção de uma transformação de linha/transformação de coluna na matriz de base, ou uma matriz obtida por realização de uma transformação de linha/transformação de coluna na matriz de compensação Hs. Alter- nativamente, uma transformação de linha/transformação de coluna é realizada na matriz de base armazenada, e codificação/decodificação é realizada baseada em uma matriz obtida por realização da transfor- mação de linha/transformação de coluna. Aqui, opcionalmente, a codi- ficação/decodificação baseada na matriz de base ou na matriz de compensação Hs pode incluir adicionalmente: realizar codifica- ção/decodificação baseada em uma matriz de difusão da matriz de ba- se, ou uma matriz de difusão da matriz de compensação Hs; ou reali- zar codificação/decodificação baseada em uma matriz obtida após rea- lização da operação de encurtamento ou de puncionamento na matriz de base, ou na matriz de compensação Hs. iii. Codificação/decodificação de informação baseada em uma matriz descrita nos precedentes (d), (f), ou (g).
[00143] Bloco 503: Saída de uma sequência de bit codifica- da/decodificada. Em um desenho, uma sequência de entrada c={c0,c1,c2, ..., cK-1} pode ser codificada para obter uma sequência de saída d={d0,d1,d2, ..., dN-1}, onde K e N são inteiros maiores do que 0. A sequência de saída d inclui K0 bits na sequência de entrada c e bits de paridade em uma sequência de verificação de paridade w, onde K0 é um número inteiro, e 0<K0≤K. A sequência de paridade w e a sequên- cia de entrada c satisfazem a fórmula  cT  H   T   0T w  , onde cT=[c0,c1,c2, ..., cK-1]T é um vetor transposto de um ve- tor formado por bits na sequência de entrada c, wT=[w0,w1,w2, ..., wN-K0-
T 1] é um vetor transposto de um vetor formado por bits na sequência de paridade w; 0T é um vetor de coluna, e valores de todos os elemen- tos em 0T são 0; e H é uma matriz de verificação de paridade de baixa densidade ((LDPC). Um gráfico de base de H inclui HBG e HBG,EXT:  0 mc nc  H BG , EXT     I nc nc  , 0mc nc onde representa uma matriz toda zero de tamanho I nc nc mc×nc, e representa uma matriz de identidade de tamanho nc×nc; e HBG inclui colunas correspondentes a Kb colunas de bits de informa- ção em HBG2 e coluna 10 a coluna 10+mA–1 em HBG2, onde uma quan- tidade de colunas em HBG2 é 10+mA, 4≤mA≤7, onde Kb∈{6,8,9,10}. Para mc=7, e 0≤nc≤35, uma quantidade de colunas em HBG2 é igual a 17; ou para mc=6, e 0≤nc≤36, uma quantidade de colunas em HBG2 é igual a 16; ou para mc=5, e 0≤nc≤37, uma quantidade de colunas em HBG2 é igual a 15; ou para mc=4, e 0≤nc≤38, uma quantidade de colunas em HBG2 é igual a 14.
[00144] A FIG. 6 mostra um fluxograma de um processo de proces- samento de dados, que pode ser aplicado ao bloco 502 na FIG. 5.
[00145] Bloco 601: Obter um fator de elevação Z. Em um desenho possível, enchimento pode ser realizado em uma sequência de bit de informação para obter uma sequência de entrada. Um comprimento da sequência de entrada é K=Kb∙Z, e Z=K/Kb. Em outro desenho possível, bits que necessitam ser puncionados ou encurtados em uma sequên- cia de bit de informação podem ser enchidos. Em outras palavras, bits de enchimento são usados para substituir os bits que necessitam se- rem puncionados ou encurtados, de modo que após codificação, os bits de enchimento podem ser identificados e não são enviados. Por exemplo, um valor nulo, um valor 0, um valor de acordo em um siste- ma, ou um valor pré-definido pode ser usado como um valor de um bit de enchimento. Em um desenho, os bits que necessitam serem punci- onados são puncionados sem enchimento. Os bits puncionados po- dem também ser enchidos com enchimento nulo durante codificação. Em um desenho possível, bits de enchimento são enchidos após a se- quência de bit de informação.
[00146] Em uma implementação, o fator de elevação Z pode ser determinado baseado no comprimento K da sequência de entrada. Por exemplo, um Z0 mínimo que encontra Kb∙Z0≥K pode ser determinado de uma pluralidade de fatores de elevação em um fator de elevação suportado ajustado e pode ser usado como um valor do fator de eleva- ção Z. Em um desenho possível, Kb pode ser uma quantidade de colu- nas de bits de informação em uma matriz de base de um código de LDPC. Para um gráfico de base 30a na FIG. 3a, uma quantidade de colunas de bits de informação é Kbmax=10. É assumido que um fator de elevação ajustado suportado pelo gráfico de base 30a na FIG. 3a é {24, 26, 28, 30, 32, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 88, 96, 104, 112, 120, 128, 144, 160, 176, 192, 208, 224, 240, 256, 288, 320, 352, 384}. Se o comprimento da sequência de entrada é K=529 bits, Z é igual a 26. Se o comprimento da sequência de entrada é K=5000 bits, Z é igual a 240. Deve ser notado que isto é meramente um exemplo aqui, que não é limitado a este.
[00147] Para outro exemplo, um valor de Kb pode variar com o valor de, mas não excede a quantidade de colunas de bits de informação na matriz de base do código de LDPC. Por exemplo, limites diferentes podem ser ajustados para Kb.
[00148] Em um desenho, deve ser notado que limites 640, 560, e 192 aqui são meramente exemplos. Alternativamente, outro valor pode ser designado dependendo de uma requisição de desenho de sistema. se (K>640), Kb=10;
senão se (K>560), Kb=9; senão se (K>192), Kb=8; senão Kb=6; e
[00149] O fator de elevação Z pode ser determinado por um apare- lho de comunicação baseado no comprimento K da sequência de en- trada, ou pode ser obtido pelo aparelho de comunicação de outra enti- dade (por exemplo, um processador).
[00150] Bloco 602: Obter uma matriz de LDPC baseado no fator de elevação e uma matriz de base. A matriz de base é qualquer matriz de base listada nas implementações precedentes, uma matriz de com- pensação obtida por compensação pelo menos de uma coluna em qualquer matriz de base listada acima, ou uma matriz de base obtida após transformação ser realizada em uma ordem de linha, uma ordem de coluna, ou uma ordem de linha e uma ordem de coluna de qualquer matriz de base listada acima, ou uma matriz de compensação. Um gráfico de base da matriz de base inclui pelo menos uma submatriz A e uma submatriz B. Opcionalmente, o gráfico de base pode incluir adi- cionalmente uma submatriz C, uma submatriz D, e uma submatriz E. Para descrições das submatrizes, referência pode ser feita às descri- ções nas concretizações precedentes. Detalhes não são descritos aqui novamente. A matriz de base pode ser obtida baseado no gráfico de base e um valor de mudança, pode ser qualquer matriz de base arma- zenada listada nas implementações precedentes, ou pode ser obtida através de variação de qualquer matriz de base listada nas implemen- tações precedentes.
[00151] Em uma implementação possível, a correspondente matriz de base é determinada baseada no fator de elevação Z, e a matriz de base é permutada baseada no fator de elevação Z para obter a matriz de LDPC.
[00152] Em uma implementação, a matriz de LDPC H pode ser ob-
tida baseado em uma correspondência entre o fator de elevação e a matriz de base. Por exemplo, a correspondente matriz de base é de- terminada baseada no fator de elevação Z obtido no bloco 601.
[00153] Por exemplo, se Z é igual a 26, e a é igual a 13, uma matriz de base pode incluir linha 0 a linha 6 e a coluna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-7, ou a matriz de base inclui linha 0 a linha 6 e algumas colunas de coluna 0 a coluna 16 em uma matriz mostrada na FIG. 3b-7. Adicionalmente, alternativamente, a matriz de base inclui adicionalmente linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um nú- mero inteiro; ou a matriz de base inclui linha 0 a linha m–1 e coluna 0 a coluna n–1 em uma matriz mostrada na FIG. 3b-7, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro. A matriz de ba- se é permutada baseado no fator de elevação Z para obter a matriz de LDPC. Deve ser notado que aqui, Z=26, a=13, e as matrizes mostra- das na FIG. 3b-7 são somente usadas como um exemplo para descri- ção. Isto é meramente um exemplo aqui, e o presente pedido não é limitado a este. Pode ser compreendido que fatores de elevação dife- rentes conduzem a matrizes de base diferentes.
[00154] Em uma implementação possível, a correspondência entre o fator de elevação e a matriz de base pode ser listada na Tabela 4, e um índice de matriz de base correspondente ao fator de elevação é determinado baseado na Tabela 4. Em um desenho possível, PCM1 pode ser a matriz mostrada na FIG. 3b-1, PCM2 pode ser a matriz mostrada na FIG. 3b-2, PCM3 pode ser a matriz mostrada na FIG. 3b- 3, PCM4 pode ser a matriz mostrada na FIG. 3b-4, PCM5 pode ser a matriz mostrada na FIG. 3b-5, PCM6 pode ser a matriz mostrada na FIG. 3b-6, PCM7 pode ser a matriz mostrada na FIG. 3b-7, e PCM8 pode ser a matriz mostrada na FIG. 3b-8. Isto é meramente um exem- plo aqui, que não é limitado a este.
Tabela 4 Índice de matriz Fator de elevação Z base PCM1 2 4 8 16 32 64 128 256 PCM2 3 6 12 24 48 96 192 384 PCM3 5 10 20 40 80 160 320 PCM4 7 14 28 56 112 224 PCM5 9 18 36 72 144 288 PCM6 11 22 44 88 176 352 PCM7 13 26 52 104 208 PCM8 15 30 60 120 240
[00155] Em outro desenho, a seguinte maneira pode alternativa- mente ser usada: Tabela 4A Índice de matriz Fator de elevação Z base PCM1 2 4 8 16 32 64 128 256 PCM2 3 6 12 24 48 96 192 PCM3 5 10 20 40 80 160 PCM4 7 14 28 56 112 224 PCM5 9 18 36 72 144 PCM6 11 22 44 88 176 PCM7 13 26 52 104 208 PCM8 15 30 60 120 240
[00156] Adicionalmente, em um desenho possível, para o fator de elevação Z, um elemento Pi,j na linha i e coluna j na matriz de base pode satisfazer o seguinte relacionamento:  1 Vi , j  1 Pi , j   mod(Vi , j , Z ) Vi , j  0 onde Vi,j pode ser um valor de mudança de um elemento na linha i e coluna j em uma matriz de base para um conjunto ao qual o fator de elevação Z pertence, ou um valor de mudança de um elemen- to de não zero na linha i e coluna j em uma matriz de base correspon- dente a um fator de elevação máximo em um conjunto que o fator de elevação Z pertence.
[00157] Por exemplo, Z é igual a 13. Um elemento Pi,j na linha i e coluna j em uma matriz de base correspondente a Z satisfaz:  1 Vi , j  1 Pi , j   mod(Vi , j , Z ) Vi , j  0 onde Vi,j é um valor de mudança de um elemento de não zero na linha i e coluna j em PCM7, isto é, uma matriz mostrada na FIG. 3b-7. Para Z=13, realizar operação de módulo de Vi,j módulo 13, onde Vi,j é um valor de mudança do elemento de não zero na linha i e coluna j na ma- triz mostrada na FIG. 3b-7. Deve ser notado que isto é meramente um exemplo aqui, e o presente pedido não é limitado a este.
[00158] Bloco 603: Codificar/decodificar a sequência de entrada ba- seada na matriz de LDPC.
[00159] Em uma implementação, a sequência de entrada para codi- ficação pode ser uma sequência de bit de informação. Em outra im- plementação, a sequência de entrada para decodificação pode ser uma sequência de valor suave do código de LDPC, e referência pode ser feita às descrições relacionadas na FIG. 5. Quando da codifica- ção/decodificação da sequência de entrada, a matriz de LDPC H pode ser obtida por elevação da matriz de base baseada em Z. Para cada elemento de não zero Pi,j na matriz de base, determinar uma matriz de permutação circular hi,j de tamanho Z×Z, onde hi,j é uma matriz de permutação circular obtida por mudança circularmente de uma matriz de identidade para Pi,j vezes. Um elemento de não zero Pi,j é substituí- do com hi,j, e elemento zeros na matriz de base HB são substituídos com uma matriz toda zero de tamanho Z×Z, de modo a obter a matriz de verificação de paridade H.
[00160] Em uma implementação possível, a matriz de base do có- digo de LDPC pode ser armazenada em uma memória. O aparelho de comunicação obtém a matriz de LDPC correspondente ao fator de ele- vação Z, para codificar/decodificar a sequência de entrada.
[00161] Em uma implementação possível, devido à existirem uma pluralidade de matrizes de base do código de LDPC, espaço de arma- zenagem relativamente grande é ocupado se as matrizes de base são armazenadas baseado em uma estrutura de matriz. Alternativamente, o gráfico de base do código de LDPC pode ser armazenado na memó- ria, e valores de mudança de elementos de não zero em cada matriz de base são armazenados linha por linha ou coluna por coluna, e, em seguida, a matriz de LDPC é obtida baseado no gráfico de base e um valor de mudança na matriz de base associada com o fator de eleva- ção Z.
[00162] Em uma implementação possível, os valores de mudança dos elementos de não zero em cada matriz de base podem ser arma- zenados de acordo com a Tabela 2 e Tabela 3b-1 a Tabela 3b-8. Co- mo um parâmetro da matriz de LDPC, Parâmetro "peso de linha" da matriz de LDPC é opcional. Em outras palavras, parâmetro "peso de linha" pode ser ou pode não ser armazenado. Uma quantidade de elementos de não zero em uma linha é aprendida baseado em uma coluna em que os elementos de não zero na linha estão localizados. Portanto, o peso de linha é também aprendido. Em uma implementa- ção possível, valores de parâmetro no "índice de coluna de elemento de não zero" na Tabela 2 e Tabela 3b-1 a Tabela 3b-8 pode alternati- vamente não ser disposto em ordem ascendente, considerando-se que os valores de parâmetro são indexados ao índice de coluna em que os elementos de não zero estão localizados. Além disso, valores de pa-
râmetro no "valor de mudança de elemento de não zero" na Tabela 2 e Tabela 3b-1 a Tabela 3b-8 podem alternativamente não ser dispostos em uma ordem de índice de coluna, considerando-se que os valores de parâmetro no "valor de mudança de elemento de não zero" estão em uma correspondência um para um com os valores de parâmetro no "índice de coluna de elemento de não zero", e o aparelho de comuni- cação pode aprender um valor de mudança de um elemento de não zero em qual linha e qual coluna. Por exemplo, em uma implementa- ção, o valor de mudança de elementos de não zero pode ser aprendi- do de acordo com os valores de parâmetro de índice de coluna, peso de coluna, e índice de linha de elemento de não zero, ou índice de li- nha de elemento zero. Isto é similar à forma na Tabela 2 e Tabela 3b-1 a Tabela 3b-8, e detalhes não são descritos aqui novamente.
[00163] Em uma implementação possível, parâmetros da matriz de LDPC relacionados podem ser armazenados com referência às des- crições relacionadas na FIG. 5.
[00164] Em uma implementação possível, quando os parâmetros da matriz de LDPC relacionados são armazenados, nem todas as linhas nas matrizes na FIG. 3a e Figuras 3b-1 a 3b-8 ou nem todas as linhas nas matrizes na Tabela 2 e Tabela 3b-1 a Tabela 3b-8 são armazena- das, e parâmetros indicados pelas correspondentes linhas nas tabelas podem ser armazenados baseado em linhas incluídas na matriz de base. Por exemplo, uma matriz constituída por linhas e colunas incluí- da na matriz de base da matriz de LDPC descrita nas concretizações precedentes, ou parâmetros relacionados da matriz constituída pelas linhas e as colunas podem ser armazenados.
[00165] Por exemplo, para linha 0 a linha 6 e coluna 0 a coluna 16 em qualquer matriz nas Figuras 3b-1 a 3b-8, uma matriz constituída por linha 0 a linha 6 e coluna 0 a coluna 16 e/ou parâmetros relaciona- dos de uma matriz constituída por linha 0 a linha 6 e coluna 0 a coluna
16 podem ser armazenados. Para detalhes, referência pode ser feita aos parâmetros listados na Tabela 3b-1 a Tabela 3b-8 e algumas das descrições precedentes.
[00166] Para linha 0 a linha m–1 e coluna 0 a coluna n–1 em qual- quer matriz nas Figuras 3b-1 a 3b-8, onde 7≤m≤42, m é um número inteiro, 17≤n≤52, e n é um número inteiro, uma matriz constituída por linha 0 a linha m–1 e coluna 0 a coluna n–1 e/ou parâmetros relacio- nados da matriz constituída por linha 0 a linha m–1 e coluna 0 a coluna n–1 podem ser armazenados. Para detalhes, referência pode ser feita aos parâmetros listados na Tabela 3b-1 a Tabela 3b-8 e algumas das descrições precedentes.
[00167] Em uma implementação possível, um valor de compensa- ção Offsets pode ser adicionado ou subtraído de cada valor de mudan- ça que é maior do que ou igual a 0 em pelo menos uma localização indicada pelo "índice de coluna de elemento de não zero" em qualquer um da Tabela 2 e Tabela 3b-1 a Tabela 3b-8. Deve ser notado que isto é meramente um exemplo aqui, que não é limitado a este.
[00168] Usando a FIG. 1 como um exemplo, em uma implementa- ção, após a matriz de base HB ser determinada, primeiros bits de pari- dade correspondentes a coluna 10 a coluna 15 podem ser obtidas ba- seado na sequência de entrada e linha 0 a linha 3 e coluna 0 a coluna 9 na matriz de base, isto é, Hnúcleo-dual. Em seguida, bits de paridade correspondentes a coluna 16, isto é, uma coluna com peso de coluna de 1, são obtidos baseados na sequência de entrada e bits de parida- de correspondentes a Hnúcleo-dual. Em seguida, bits de paridade corres- pondentes à submatriz E são obtidos por codificação da submatriz D baseado na sequência de entrada e os bits de paridade corresponden- tes a coluna 10 a coluna 16 de modo a completar a codificação. Para um processo de codificação do código de LDPC, referência pode ser feita às descrições nas implementações precedentes. Detalhes não são descritos aqui novamente.
[00169] Em um desenho, na parte precedente 502 e parte 603, quando a sequência de entrada é codificada/decodificada baseado na matriz de LDPC, a sequência de entrada pode ser codificada por uso da matriz de LDPC H correspondente ao fator de elevação Z.
[00170] Em uma implementação possível, codificação de LDPC po- de ser implementada na seguinte maneira:
[00171] (1) A sequência de entrada a ser codificada é representada como c={c0,c1,c2, ..., cK-1}, o comprimento da sequência de entrada c é K, e uma sequência de saída obtida por codificação da sequência de entrada c por um codificador é representada como d={d0,d1,d2, ..., dN- 1}, onde K é um número inteiro maior do que 0, K pode ser um múltiplo inteiro do fator de elevação Z, por exemplo, 5 vezes, 6 vezes, 7 vezes, 8 vezes, 9 vezes, 10 vezes, 19 vezes, 20 vezes, 22 vezes, e assim por diante. O fator de elevação da sequência de entrada c pode ser repre- sentado como Z ou Zc, e o subscrito c indica que o fator de elevação é associado à sequência de entrada c. Z e Zc são às vezes misturados neste pedido, e aqueles técnicos no assunto podem compreender o significado. Opcionalmente, outros parâmetros nesta implementação podem ser providos com ou não providos com um índice de subscrito. Isto não afeta um significado essencial do parâmetro. Um técnico no assunto pode compreender o significado disto, onde N=50Z ou N=(40+Kb)∙Z. O comprimento da sequência de entrada c é K, o com- primento da sequência de saída d é N, e a sequência de saída de N bits pode incluir K0 bits na sequência de entrada c e N–K0 bits de pari- dade em uma sequência de paridade w, onde K 0 é um número inteiro, e 0<K0≤K. A sequência de paridade w pode ser representada como {w0,w1,w2, ..., wN-K0-1}, e um comprimento da sequência de paridade w é N–K0. Em um desenho, se a matriz de LDPC H inclui p coluna de perfuração(s), onde p é um número inteiro maior do que ou igual a 0, e a p coluna de perfuração(s) não participa na codificação, ou a p coluna de perfuração(s) participa na codificação, mas os bits de informação correspondentes à p coluna de perfuração(s) não são retirados. Em outra palavra, a sequência de saída não inclui os bits de informação correspondentes à p coluna de perfuração(ões). Por exemplo, p=2, a sequência de saída d inclui K-2Z bits correspondentes à sequência de entrada c, e um comprimento da sequência de paridade w é N+2Zc-K, e a sequência de paridade w pode ser representada como {w0,w1,w2, ..., wN+2Zc-K-1}. Se a p coluna de perfuração(s) participa na codificação, o comprimento da sequência de paridade w é N-K, e a sequência de paridade w pode ser representada como {w0,w1,w2, ..., wN-K-1}.
[00172] Para um valor de Kb, referência pode ser feita ao desenho precedente. Por exemplo: se (K>640), Kb=10; senão se (K>560), Kb=9; senão se (K>192), Kb=8; senão Kb=6; final.
[00173] (2) Um índice de PCM ou um índice de grupo do fator de elevação correspondente ao comprimento K de um segmento de bit é determinado baseado em Zc=K/Kb. Por exemplo, o fator de elevação Zc (também referido como Z) pode ser determinado com referência à Ta- bela 1 e Tabela 2.
[00174] (3) Valores são atribuídos aos primeiros K-2Zc bits na se- quência de bit codificada d={d0,d1,d2, ..., dN-1}. Aqui, primeiros 2Zc bits de enchimento no segmento de bit codificado necessitam ser ignora- dos, e que o segmento de bit codificado possa incluir um bit de enchi- mento necessita ser considerado.
[00175] Em uma implementação, atribuição de valor pode ser reali- zada na seguinte maneira:
para K=2Zc para K-1, se ck≠<NULL> dk-2Zc=ck; senão ck=0; dk-2Zc=<NULL>; final se final para onde k é um valor de índice, k é um número inteiro, <NULL> representa um bit de enchimento. Em uma implementação, os bits de enchimento são enchidos com enchimentos nulos, de modo que os bits de enchimento podem, às vezes, ser denominados bits de enchimento. Um valor do bit de enchimento pode ser 0 ou outro valor pré-determinado. O pedido não é limitado a este. Opcionalmente, o bit de enchimento pode não ser enviado.
[00176] (4) A sequência de bit de paridade w são geradas, de modo que a sequência de bit de paridade w satisfaz a seguinte fórmula: c H   0 w  (1)
[00177] Na fórmula (1), c=[c0,c1,c2, ...,cK-1]T, onde 0 representa um vetor de coluna, e valores de todos os elementos em 0 são zero. A matriz H representa uma matriz de verificação de LDPC. c=[c0,c1,c2, ...,cK-1]T é um vetor transposto de um vetor formado pelos bits na se- quência de entrada. w na fórmula (1) são um vetor transposto de um vetor formado pelos bits na sequência de paridade w. Por exemplo, para um comprimento de N+2Zc-K sequência de paridade w, que é re- presentada como , o w na fórmula é igual a [W 0, W1, W2, ..., WN+2Zc-K-1]T . Para outro exemplo, para um comprimento de N–K–1 sequência de paridade, que é representada como , o w na fórmula é igual a[W 0, W1, W2, ..., WN-K-1]T. H na fórmula (1) é qualquer uma da matriz de LDPC lista- da nas concretizações precedentes. Em uma implementação, H pode ser dividido em duas partes H1 e H2 para representação, por exemplo, H=[H1 H2].
[00178] Em uma implementação, H pode ser obtido baseado em qualquer gráfico de base listado nas concretizações precedentes, e uma Zc×Zc matriz de difusão. Cada elemento zero no gráfico de base é substituído com uma matriz toda zero de tamanho Zc×Zc. Um elemento cujo valor é 1 (elemento de não zero) no gráfico de base é substituído com uma matriz de permutação circulante Z*Z I(Pi,j) correspondente a um valor de mudança Pi,j do elemento, onde i e j representa um índice de linha e um índice de coluna do elemento. A matriz de permutação circular I(Pi,j) é obtida por mudança circularmente da matriz de tama- nho Zc×Zc para a direita ou para a esquerda Pi,j vezes, onde Pi,j=mod(Vi,j,Zc), e Vi,j é um valor de mudança que está na matriz de base, e que é correspondente a um elemento de não zero no gráfico de base.
[00179] Em uma implementação, H1 pode ser partes A, B, e D do gráfico de base ou a matriz de base listada nas concretizações prece- dentes, isto é, linha 10 a linha 41 e coluna 0 a coluna 16 na FIG. 3a e Figuras 3b-1 a 3b-8.
[00180] Em uma implementação, H1 pode ser algumas linhas e al- gumas colunas nas partes A, B, e D do gráfico de base, ou a matriz de base listada nas concretizações precedentes, por exemplo, linha 0 a linha 41 e coluna 0 a coluna 13, ou linha 0 a linha 41 e coluna 0 a co- luna 14, ou linha 0 a linha 41 e coluna 0 a coluna 15, ou linha 1 a linha 41 e coluna 0 a coluna 13.
[00181] Em uma implementação, H1 pode alternativamente ser m linhas e n colunas no gráfico de base, ou a matriz de base listada nas concretizações precedentes, por exemplo, m=7 e n=35, ou m=4 e n=38, ou m=5 e n=37, ou m=6 e n=36.
[00182] Em uma implementação, baseado em um valor de Kb, um comprimento da sequência de entrada do codificador é Kb×Z. Se Kb<9, colunas {Kb,Kb+1, ...,9} na matriz H1 são removidas, e, em seguida, co- dificação é realizada.
[00183] Em uma implementação, a matriz H pode incluir M linhas e (N+p∙Z) colunas ou M linhas e N colunas, e um tamanho da matriz de base de H é m=M/Z linhas, e n=(N+p∙Z)/Z colunas ou n=N/Z colunas.
[00184] Em uma implementação, H2 pode ser representado como 0  H 2   mn   I nn  , onde 0m×n representa uma m×n matriz toda zero (m linhas e n colu- nas), por exemplo, pode ter 7 linhas e 35 colunas, ou 4 linhas e 38 co- lunas, ou 5 linhas e 37 colunas, ou 6 linhas e 36 colunas, e In×n repre- senta um n×n (n linhas e n colunas) matriz, por exemplo, pode ter 35 linhas e 35 colunas, ou 36 linhas e 36 colunas, ou 37 linhas e 37 colu- nas, ou 38 linhas e 38 colunas.
[00185] Em uma implementação, quando a matriz H é usada para codificação, codificação pode ser realizada baseado em qualquer dos gráficos de base descritos precedentes ou matrizes de base, por exemplo, pode ser realizada baseado em uma matriz de linha 0 a linha 41 e coluna 0 a coluna 16 em qualquer uma das matrizes na FIG. 3a ou Figuras 3b-1 a 3b-8, ou pode ser realizada baseado em uma matriz de linha 0 a linha 41 e coluna 0 a coluna 13 em qualquer uma das ma- trizes na FIG. 3a ou Figuras 3b-1 a 3b-8.
[00186] Em um desenho, para Kb∈{6,8,9}, a matriz H pode ser uma matriz obtida após colunas {Kb,Kb+1,...,9} serem removidas de qualquer matriz de base ou matriz de base descrita acima; para Kb=10, a matriz H pode ser qualquer gráfico de base ou matriz de base descrita acima.
[00187] O valor de mudança Vi,j na matriz H pode ser obtido basea- do nas Figuras 3b-1 a 3b-8, ou Tabela 3b-1 a Tabela 3b-8 e Tabela 3b-2', ou qualquer maneira descrita acima. Baseado em um índice da matriz de verificação, que é, às vezes, considerado como um índice de grupo do fator de elevação, uma correspondente matriz de verificação pode ser determinada, desse modo, um correspondente valor de mu- dança Vi,j são obtidos.
[00188] Em um desenho, H inclui p coluna de perfuração(s), onde p é um número inteiro maior do que ou igual a 0, e a p coluna de perfu- ração(s) não participa na codificação, ou a p coluna de perfuração(s) participa na codificação, mas os bits de informação correspondentes à p coluna de perfuração(s) não são retirados. Em outra palavra, a se- quência de saída não inclui os bits de informação correspondentes à p coluna de perfuração(s), em seguida K0  K  p  Z . Por exemplo, se p é igual a 2, K0  K  2  Z . A sequência de saída d inclui k-2Z bits corres- pondentes à saída c, o comprimento da sequência de paridade w é N+2Zc-K. Se a p colunas de perfuração participam na codificação, um comprimento da sequência de paridade w é N-K.
[00189] Em um desenho, 0m×n pode ser uma submatriz C, a subma- triz C mais uma último coluna na submatriz B, uma submatriz C mais últimas duas colunas da submatriz B, ou uma submatriz C mais últi- mas três colunas da submatriz B nas concretizações precedentes.
[00190] In×n pode ser a submatriz E, a submatriz E mais uma última coluna em cada da submatriz B e a submatriz D, a submatriz E mais últimas duas colunas de cada da submatriz B e a submatriz D, ou a submatriz E mais últimas três colunas de cada da submatriz B e a submatriz D nas concretizações precedentes.
[00191] (5) Opcionalmente, para k=K a N+2Zc-1, dk-2Zc=wk-K.
[00192] Nas implementações precedentes, o codificador pode reali- zar codificação e emitindo em uma pluralidade de maneiras. Qualquer um dos gráficos de base ou as matrizes de base mostradas na FIG. 3a e Figuras 3b-1 a 3b-8 listadas nas concretizações precedentes é usa- do como um exemplo para descrição abaixo. O gráfico de base tem um máximo de 42 linhas e um máximo de 52 colunas, incluindo duas colunas de perfuração. Para facilidade de descrição, no presente pedi- do, às vezes um gráfico de base/matriz de base com uma quantidade máxima de linhas e uma quantidade máxima de colunas é referida como um gráfico de base complete ou matriz de base. Um gráfico de base/matriz de base obtida por remoção das duas colunas de perfura- ção a partir do gráfico de base completo/matriz de base é referido co- mo um gráfico de base completo/matriz de base que não inclui coluna de perfuração.
[00193] Maneira 1 Codificação é realizada baseado no gráfico de base com- pleto/matriz de base, ou o gráfico de base completo/matriz de base que não inclui coluna de perfuração, de modo a obter tanto quanto possível bits de paridade. Neste caso, m é igual a 42. Se as colunas de perfuração participam na codificação, n é igual a 52, isto é, linha 0 a linha 41 e coluna 0 a coluna 51 em qualquer uma das matrizes na FIG. 3a e Figuras 3b-1 a 3b-8. Se as colunas de perfuração não participam na codificação, n é igual a 51, isto é, linha 0 a linha 41 e coluna 2 a coluna 51. Correspondentemente, para a matriz de LDPC H, M é igual a 41Z, e N é igual a 52Z ou 51Z. Em um processo de processamento subsequente, bits de informação e bits de paridade que necessitam ser enviados podem ser determinados da sequência de saída gerada pelo codificador.
[00194] Maneira 2 Codificação é realizada baseado em algumas linhas e colu- nas do gráfico de base completo. Uma linha e uma coluna podem ser selecionadas, a partir do gráfico de base completo ou o gráfico de ba-
se completo que não inclui coluna de perfuração e baseado em uma taxa de código que necessita ser usada para envio, os bits de informa- ção e os bits de paridade, ou similares, para codificação. Por exemplo, a taxa de código é 2/3, e m é igual a 7. Se as colunas de perfuração participam na codificação, n é igual a 17. Para ser específico, codifica- ção é realizada baseado em algumas de linha 0 a linha 6 e coluna 0 a coluna 16 em qualquer matriz na FIG. 3a e Figuras 3b-1 a 3b-8. Se as colunas de perfuração participam na codificação, n é igual a 15, isto é, uma linha 0 a uma linha 6 e uma coluna 2 a uma coluna 16 em qual- quer matriz na FIG. 3a e Figuras 3b-1 a 3b-8.
[00195] Em um desenho possível, a coluna 14 a coluna 51 em qualquer matriz na FIG. 3a e Figuras 3b-1 a 3b-8 listadas acima são colunas com peso de coluna de 1, e uma ou mais das colunas com peso de coluna de 1 na matriz de núcleo podem ser puncionadas. Uma ou mais correspondentes colunas na matriz de núcleo podem ser codificadas baseado em algumas de linha 0 a linha 6 e coluna 0 a co- luna 15 em qualquer matriz na FIG. 3a e Figuras 3b-1 a 3b-8, onde, por exemplo, m é 6, n é 16, e as colunas de perfuração participam na codificação. Em uma implementação, as colunas de perfuração podem alternativamente não participarem na codificação, de modo que uma taxa de código mais alta pode ser obtida.
[00196] Deve ser notado que o precedente descreve o princípio da matriz H. A solução provida nesta concretização do presente pedido pode ser implementada baseado em várias transformações da matriz H, provido que os bits de paridade gerados satisfazem a fórmula (1).
[00197] Uma implementação possível é que expansão Quasi-Cycle (QC) é realizada na matriz H antes de ser usada. Em outra implemen- tação possível, em um processo de uso da matriz H, expansão Quasi- Cycle (QC) é realizada em uma parte correspondente aos elementos atuais a serem processados.
[00198] Uma implementação possível é que (calculando um valor de mudança), a matriz H não é elevada em um processo de uso, mas um método para uma fórmula de equivalência expansível é usado para calcular um relacionamento de conexão entre linhas e colunas da ma- triz.
[00199] Uma implementação possível é que a matriz H pode não ser elevada. Em um processo de codificação, para cada elemento ser processado, uma operação de alteração é realizada no segmento de bit codificado correspondente ao elemento baseado em um valor de mudança do elemento. Em seguida, uma operação de codificação é realizada em todos os segmentos de bit nos quais a operação de alte- ração é realizada.
[00200] Em uma implementação possível, a matriz de base pode ser obtida por pré-definição de uma matriz de base PCM ou definição de uma matriz de base PCM por um sistema, sem usar o gráfico de base. Por exemplo, a matriz de LDPC pode ser obtida baseado nas matrizes de base providas nas Figuras 3b-1 a 3b-8, ou a matriz de LDPC pode ser obtida baseado nas correspondentes Tabela 3b-1 a Tabela 3b-8.
[00201] Em um processo de implementação, uma extremidade de transmissão ou uma extremidade de recebimento pode armazenar uma matriz completa, isto é, todas de A, B, C, D, e E. Alternativamen- te, uma matriz complete pode não ser armazenada, para economizar espaço de armazenagem. Por exemplo, codificação/decodificação po- de ser implementada por armazenagem de somente uma parte da ma- triz complete, ou parâmetros correspondentes à matriz necessitam ser armazenados. Comparado com um método em que uma matriz com- plete é armazenada, a armazenagem de somente uma parte de uma matriz pode reduzir custos de um dispositivo de armazenagem em um codec. Para detalhes, referência pode ser feita às descrições nas con-
cretizações precedentes.
[00202] Por exemplo, em uma implementação, partes A, B, e D na matriz são armazenadas, ou partes A, B, e D não incluem uma parte com peso de coluna de 1. Em um processo de codifica- ção/decodificação atual, valores das partes C e E ou valores da parte com peso de coluna de 1 são calculados pelo uso de uma fórmula. Pa- ra ser específico, somente as primeiras 17 colunas ou primeiras 14 colunas na matriz completa original são armazenadas. Devido à parte C ser uma matriz toda zero e poder ser obtida, e a parte E ser uma matriz de identidade, para uma localização de um elemento de não zero na parte E, um correspondente índice de coluna pode ser obtido através do cálculo baseado em um número de uma linha atualmente processada. Por exemplo, quando a linha atualmente processada é a linha 18, um elemento de não zero correspondente à parte E está loca- lizado na coluna 28; quando a linha atualmente processada é a linha 19, um elemento de não zero correspondente à parte E está localizado na coluna 29; e assim por diante. Se localizações de todos os elemen- tos de não zero na parte E são obtidas através de cálculo, um resulta- do de cálculo pode ser armazenado ou pode não ser armazenado. Uma localização de um elemento de não zero pode ser obtida quando as correspondentes linha e coluna são calculadas no processo de co- dificação ou decodificação.
[00203] Em outra implementação, as primeiras 14 colunas na matriz completa original são armazenadas. Em uma parte que não é armaze- nada no lado direito da matriz, uma localização de um elemento de não zero na parte que não é armazenada pode ser obtida através de cálculo. Por exemplo, quando uma linha atualmente processada é li- nha 4, um elemento de não zero correspondente a uma parte armaze- nada está localizado na coluna 14; quando uma linha atualmente pro- cessada é linha 5, um elemento de não zero correspondente a uma parte armazenada está localizado na coluna 15; e assim por diante. Quando localizações de todos os elementos de não zero na parte que não é armazenada na matriz são obtidas através de cálculo, um resul- tado de cálculo pode ser armazenado, ou pode não ser armazenado. Uma localização de um elemento de não zero pode ser obtida quando a correspondente linha e coluna são calculadas no processo de codifi- cação ou decodificação.
[00204] Em outra implementação, primeiras 14+x colunas na matriz completa original são armazenadas. Em uma parte não armazenada do lado direito da matriz, as primeiras 4 linhas são uma matriz toda zero, a outra parte é uma matriz de identidade, e uma localização de um elemento de não zero na parte que não é armazenada pode ser obtida através de cálculo. Por exemplo, quando uma linha atualmente processada é linha 3+x, um elemento de não zero correspondente à parte que não é armazenada está localizado na coluna (14+x)z; quan- do uma linha atualmente processada é linha (3+x)+1, um elemento de não zero correspondente à parte E está localizada na coluna (14+x)z+1; e assim por diante. Quando localizações de todos os ele- mentos de não zero na parte que não é armazenada na matriz são ob- tidas através de cálculo, um resultado de cálculo pode ser armazena- do. Alternativamente, um resultado de cálculo pode não ser armaze- nado, e uma localização de um elemento de não zero pode ser calcu- lada quando da codificação ou decodificação de uma correspondente linha e coluna.
[00205] Em ainda outra implementação, quando uma matriz de mu- dança está sendo armazenada, valores registrados na matriz de mu- dança podem ser armazenados, ou um valor obtido após transforma- ção matemática simples é realizado em valores na matriz de mudança descrita neste pedido podem ser armazenados.
[00206] Em uma implementação, os valores na matriz de mudança são transformados e, em seguida, armazenados. Durante transforma- ção, transformação é realizada linha por linha partindo da primeira li- nha em uma matriz de mudança atual. No caso de um elemento (por exemplo, –1) representando uma matriz toda zero, o elemento é arma- zenado sem transformação. No caso de um elemento (um elemento não negativo) que representa uma matriz não zero, e que é o primeiro elemento (um elemento não negativo) representando a matriz não zero na coluna, o elemento é armazenado sem transformação. No caso de um elemento (um elemento não negativo) que representa um elemento de matriz não zero e que não é o primeiro elemento (um elemento não negativo) representando a matriz não zero na coluna, uma diferença entre o elemento não negativo e um elemento prévio representando a matriz não zero na mesma coluna é armazenada. Se a diferença é po- sitiva, ela indica alteração à direita. Se a diferença é negativa, ela indi- ca alteração à esquerda.
[00207] Deve ser notado que transformação similar pode não ser realizada partindo da primeira linha na matriz de mudança, e pode ser realizada partindo de qualquer linha. Após transformação similar ser realizado na última linha na matriz, a transformação continua a ser rea- lizada partindo da primeira linha. Em adição, tal uma diferença de ma- neira de armazenagem pode variar baseada nos fatores de elevação diferentes Z. Um valor de mudança atual a ser calculado de acordo com Pi,j=mod(Vi,j,Zc), e, em seguida, uma diferença é calculada.
[00208] Em um processo de codificação/decodificação, um valor de mudança antes da transformação pode ser armazenado através de cálculo de recursividade baseado em um valor de um elemento prévio em uma mesma coluna. Alternativamente, um valor de mudança relati- vo pode ser usado para realizar codificação e decodificação.
[00209] Em uma implementação, o valor Vi,j na matriz de mudança pode ser transformado e, em seguida, armazenado. Em um processo de operação de transformação, localizações e valores de todos os elementos (por exemplo, –1) representando uma matriz toda zero na matriz permanecem não mudados. Para um elemento (um elemento não negativo) representando uma matriz não zero, assumindo que um valor original do elemento é Vi,j, o valor transformado é (z–Vi,j) mod z. Em um processo atual de codificação/decodificação, uma operação de alteração à esquerda (que é originalmente uma operação de alteração à direita) é realizado em uma matriz de identidade baseado no valor de mudança transformado, de modo a implementar codificação e decodi- ficação normal.
[00210] Em uma implementação, o valor Vi,j na matriz de valor de mudança é transformada e em seguida armazenada. Em um processo de operação de transformação, um valor de mudança decimal original é transformado em um número em outra base, tal como um sistema binário, um sistema octal, ou um sistema hexadecimal. Em um proces- so de codificação/decodificação, uma matriz de valor de mudança transformado pode ser escolhida para restauração, e, em seguida, é codificada/decodificada. Alternativamente, uma matriz de valor de mu- dança transformado pode ser diretamente usada para codifica- ção/decodificação.
[00211] Em uma implementação, um lado do codificador não arma- zena uma matriz de verificação, mas armazena uma matriz de geração possivelmente requerida para codificação. É assumido que um seg- mento de bit a ser codificado é c={c0,c1,c2,c3,...,cK-1}, e um segmento de bit codificado é d={d0,d1,d2,...,dN-1}. A matriz de geração G satisfaz d=c∙G.
[00212] A matriz de geração pode ser obtida por transformação da matriz H. Um lado direito da matriz H pode ser transformado em uma forma de uma matriz diagonal através de transformação de li- nha/transformação de coluna, e pode ser representado como:
H=[P I] (2) Neste caso, a correspondente matriz de geração G satisfaz: G=[I PT] (3)
[00212] A matriz de verificação H pode ser qualquer uma das matri- zes de paridade ou matrizes de base nas concretizações precedentes, ou a matriz de LDPC. Durante codificação, o segmento de bit codifica- do d={d0,d1,d2,...dN-1} pode ser calculado baseado no segmento de bit a ser codificado c={c0,c1,c2,c3,...,cK-1} pelo uso da matriz de geração armazenada G.
[00213] Em uma implementação, durante codificação, para uma parte diagonal dupla da matriz, a codificação pode ser realizada em qualquer uma das maneiras precedentes ou por uso de um método para armazenagem de uma matriz tendo uma pluralidade de linhas superimpostas.
[00214] Em uma implementação, uma matriz de mudança corres- pondente a cada fator de elevação Z pode ser calculada baseado em Pi,j=mod(Vi,j,Zc), e, em seguida, matrizes correspondentes a 51 fatores de elevação são todas armazenadas para codificação/decodificação.
[00215] Opcionalmente, em um sistema de comunicação, codifica- ção pode ser realizada por uso do método precedente, para obter o código de LDPC. Após o código de LDPC ser obtido, o aparelho de comunicação pode realizar adicionalmente as seguintes uma ou mais operações: realizar correspondência de taxa no código de LDPC; in- tercalar, de acordo com uma solução de intercalamento, o código de LDPC no qual correspondência de taxa é realizada; modular o código de LDPC intercalado de acordo com um esquema de modulação, para obter uma sequência de bit X; e enviar a sequência de bit X.
[00216] A decodificação é um processo reverso de codificação. Uma matriz de base usada durante decodificação e uma matriz de ba- se usada durante codificação têm as mesmas características. Para uma codificação do processo do código de LDPC, referência pode ser feita às descrições nas implementações precedentes. Detalhes não são descritos aqui novamente. Em uma implementação, antes da de- codificação, o aparelho de comunicação pode realizar adicionalmente as seguintes uma ou mais operações: receber um sinal incluindo in- formação que é baseada na codificação de LDPC, desmodular o sinal, realizar desintercalação e não correspondência de taxa para obter uma sequência de valor suave do código de LDPC, e decodificação da sequência de valor suave do código de LDPC. Alternativamente, de- codificação pode ser realizada baseada em um gráfico de base com- pleto, um gráfico de base completo não inclui coluna de perfuração, ou algumas linhas e colunas de um gráfico de base completo.
[00217] A "armazenagem" neste pedido pode ser armazenagem em uma ou mais memórias. A uma ou mais memórias podem ser separa- damente dispostas, ou podem ser integradas em um codificador, um decodificador, um processador, um chip, um aparelho de comunica- ção, ou um terminal. Alternativamente, algumas da uma ou mais me- mórias podem ser separadamente dispostas, ou podem ser integradas em um decodificador, um processador, um chip, um aparelho de co- municação, ou um terminal. A memória pode ser um meio de armaze- nagem em qualquer forma. Isto não é limitado neste pedido.
[00218] Correspondente aos desenhos do processo de processa- mento de dados descrito na FIG. 5 e FIG. 6, uma concretização do presente pedido proporciona adicionalmente um correspondente apa- relho de comunicação. O aparelho de comunicação inclui um corres- pondente módulo configurado para realizar cada parte na FIG. 5 ou FIG. 6. O módulo pode ser software, hardware, ou uma combinação de software e hardware. Por exemplo, o módulo pode incluir uma memó- ria, um dispositivo eletrônico, um componente eletrônico, um circuito lógico, ou qualquer combinação destes. A FIG. 7 é um diagrama estru-
tural esquemático de um aparelho de comunicação 700. O aparelho 700 pode ser configurado para implementar os métodos descritos nas concretizações de método precedentes. Para detalhes, referência po- de ser feita às descrições nas concretizações de método precedentes. O aparelho de comunicação 700 pode ser um chip, uma estação de base, um terminal, ou outro dispositivo de rede.
[00219] O aparelho de comunicação 700 inclui um ou mais proces- sadores 701. O processador 701 pode ser um processador de propos- ta geral ou um processador dedicado, por exemplo, um processador de base de banda, ou uma unidade de processamento central. O pro- cessador de base de banda pode ser configurado para processar um protocolo de comunicação e dado de comunicação. A unidade de pro- cessamento central pode ser configurada para controlar o aparelho de comunicação (por exemplo, uma estação de base, um terminal, ou um chip) para executar um programa de software, e dado de processo no programa de software.
[00220] Em um desenho possível, um ou mais módulos na FIG. 5 e FIG. 6 podem ser implementados por um ou mais processadores, ou por um ou mais processadores e memórias.
[00221] Em um desenho possível, o aparelho de comunicação 700 inclui um ou mais processadores 701. O um ou mais processadores 701 podem implementar a função de codificação/decodificação. Por exemplo, o aparelho de comunicação pode ser um codificador ou um decodificador. Em outro desenho possível, o processador 701 pode implementar outras funções em adição à função de codifica- ção/decodificação.
[00222] O aparelho de comunicação 700 codifica/decodifica uma sequência de entrada baseado em uma matriz de LDPC. Uma matriz de base da matriz de LDPC pode ser qualquer matriz de base nos exemplos precedentes, uma matriz de base obtida por realização de transformação em uma ordem de linha, uma ordem de coluna, ou uma ordem de linha e uma ordem de coluna em qualquer matriz de base listada acima, uma matriz de base obtida por encurtamento ou puncio- namento baseado em qualquer matriz de base listada acima, ou uma matriz obtida através de difusão de qualquer matriz de base listada acima. Para processamento de codificação/decodificação, referência pode ser feita às descrições de partes relacionadas na FIG. 5 e FIG. 6. Detalhes não são descritos aqui novamente.
[00223] Opcionalmente, em um desenho, o processador 701 pode incluir uma ou mais instruções 703 (ou, às vezes, referidos como códi- go ou programa). As instruções podem ser operadas no processador, de modo que o aparelho de comunicação 700 realiza os métodos des- critos nas concretizações precedentes. Em outro desenho possível, o aparelho de comunicação 700 pode incluir adicionalmente um circuito. O circuito pode implementar a função de codificação/decodificação nas concretizações precedentes.
[00224] Opcionalmente, em um desenho, o aparelho de comunica- ção 700 pode incluir uma ou mais memórias 702. A memória 702 ar- mazena uma ou mais instruções 704. As instruções podem ser opera- das no processador, de modo que o aparelho de comunicação 700 re- aliza os métodos descritos nas concretizações de método preceden- tes.
[00225] Opcionalmente, a memória pode adicionalmente armazenar dados. Opcionalmente, o processador pode ainda armazenar uma ou mais instruções e/ou dados. O processador e a memória podem ser dispostos separadamente, ou podem ser integrados juntos.
[00226] Opcionalmente, a "armazenagem" nas concretizações pre- cedentes pode ser armazenagem na memória 702, ou pode ser arma- zenagem em outra memória externa ou um dispositivo de armazena- gem.
[00227] Por exemplo, a uma ou mais memórias 702 podem arma- zenar um parâmetro relacionado à matriz de LDPC listada acima, por exemplo, matriz de base, espalhamento de uma matriz baseado em uma matriz de base, ou um parâmetro relacionado a uma matriz de base, tal como um valor de mudança, um gráfico de base, espalha- mento de uma matriz baseado em um gráfico de base, cada linha em uma matriz de base, um fator de elevação, localizações de elementos de não zero, valor de mudança correspondente aos elementos de não zero. Para detalhes, referência pode ser feita às descrições relaciona- das na parte na FIG. 5.
[00228] Opcionalmente, o aparelho de comunicação 700 pode inclu- ir adicionalmente um transceptor 705 e uma antena 706. O processa- dor 701 pode ser referido como uma unidade de processamento, e controla o aparelho de comunicação (um terminal ou uma estação de base). O transceptor 505 pode ser referido como uma unidade de transceptor, um circuito de transceptor, ou similares, e é configurado para implementar o envio e recebimento de funções do aparelho de comunicação 700 pelo uso da antena 506.
[00229] Opcionalmente, o aparelho de comunicação 700 pode inclu- ir adicionalmente um dispositivo para geração de CRC de bloco de transporte, um dispositivo para segmentação de bloco de código, e uma verificação de CRC, um intercalador para intercalação, a disposi- tivo para correspondência de taxa, um modulador para processamento de modulação, ou similares. Funções destes dispositivos podem ser implementadas pelo uso de um ou mais processadores 701.
[00230] Opcionalmente, o aparelho de comunicação 700 pode inclu- ir adicionalmente um desmodulador para uma operação de desmodu- lação, a desintercalador para desintercalação, um dispositivo para não correspondência de taxa, um dispositivo para concatenação de bloco de código, e uma verificação de CRC, ou similares. Funções destes dispositivos podem ser implementadas pelo uso do um ou mais pro- cessadores 701.
[00231] A FIG. 8 é um diagrama esquemático de um sistema de comunicação 800. O sistema de comunicação 800 inclui dispositivos de comunicação 80 e 81. Dado de informação é recebido e enviado entre os dispositivos de comunicação 80 e 81. Os dispositivos de co- municação 80 e 81 podem ser o aparelho de comunicação 700, ou os dispositivos de comunicação 80 e 81 cada inclui o aparelho de comu- nicação 700, e recebe e/ou envia a o dado de informação. Em um exemplo, o dispositivo de comunicação 80 pode ser um terminal, e o correspondente dispositivo de comunicação 81 pode ser uma estação de base. Em outro exemplo, o dispositivo de comunicação 80 pode ser uma estação de base, e o correspondente dispositivo de comunicação 81 pode ser um terminal.
[00232] É adicionalmente compreendido por um técnico no assunto que vários blocos lógicos ilustrativos e etapas podem ser implementa- dos por hardware eletrônico, software de computador, ou uma combi- nação destes. Se tais funções funções são implementadas por hardware ou software, dependem de uma aplicação e de uma requisi- ção de desenho de um sistema total. Para cada aplicação particular, vários métodos podem ser usados para implementar as funções. Con- tudo, tais implementações não devem ser construídas como indo além do escopo de proteção das concretizações do presente pedido.
[00233] As tecnologias descritas neste pedido podem ser imple- mentadas em várias maneiras. Por exemplo, as tecnologias podem ser implementadas por hardware, software, ou uma combinação destes. Para implementação por hardware, uma unidade de processamento configurada para implementar as tecnologias no aparelho de comuni- cação (por exemplo, uma estação de base, um terminal, um entidade de rede, ou um chip) pode ser implementada em uma ou mais proces-
sadores de proposta geral, um processador de sinal digital (DSP), um dispositivo de processamento de sinal digital (DSPD), um circuito inte- grado específico de aplicação (ASIC), um dispositivo lógico programá- vel (PLD), uma matriz de porta de campo programável (FPGA), outro aparelho de lógica programável, uma porta discreta, uma lógica de transistor, um componente de hardware discreto, ou qualquer combi- nação destes. O processador de proposta geral pode ser um micro- processador. Opcionalmente, o processador de proposta geral pode ser qualquer processador convencional, controlador, microcontrolador, ou máquina de estado. O processador pode ser implementado pelo uso de uma combinação de aparelhos de computação, por exemplo, um processador de sinal digital, e um microprocessador, uma plurali- dade de microprocessadores, um ou mais microprocessadores em combinação com um núcleo processador de sinal digital, ou quaisquer outras configurações similares.
[00234] As etapas dos métodos ou os algoritmos descritos nas con- cretizações do presente pedido podem ser diretamente concretizados em hardware, uma ou mais instruções executadas por um processa- dor, ou uma combinação destes. A memória pode ser uma memória RAM, uma memória instantânea, uma memória ROM, uma memória EPROM, uma memória EEPROM, um registro, um disco rígido, um disco removível, um CD-ROM, ou qualquer outra forma de meio de armazenagem na técnica. Por exemplo, a memória pode ser conecta- da ao processador, de modo que o processador pode ler a informação a partir da memória, e armazenar e escrever a informação na memó- ria. Opcionalmente, a memória pode ser integrada no processador. O processador e a memória podem ser dispostos no ASIC, e o ASIC po- de ser disposto em um terminal ou em uma estação base ou outros dispositivos de rede. Opcionalmente, o processador e a memória po- dem ser dispostos em componentes diferentes no terminal ou em uma estação base ou outros dispositivos de rede.
[00235] Com descrições das implementações precedentes, um téc- nico no assunto pode claramente compreender que o presente pedido pode ser implementado por hardware, firmware ou uma combinação destes. Quando o presente pedido é implementado por um programa de software, o presente pedido pode ser implementado totalmente ou parcialmente em uma forma de um produto de programa de computa- dor, onde o produto de programa de computador inclui uma ou mais instruções do computador. Quando as instruções do computador são carregadas e executadas, os procedimentos ou funções de acordo com as concretizações do presente pedido são todos ou parcialmente gerados. Quando o presente pedido é implementado pelo programa de software, as funções precedentes podem alternativamente ser arma- zenadas em um meio legível por computador, ou transmitidas como uma ou mais instruções ou código no meio legível por computador. O computador pode ser um computador de proposta geral, um computa- dor dedicado, uma rede de computador, ou outro aparelho programá- vel. As instruções do computador podem ser armazenadas em um meio de armazenagem legível por computador, ou podem ser transmi- tidas de um meio de armazenagem legível por computador para outro meio de armazenagem legível por computador. O meio legível por computador inclui um meio de armazenagem de computador e um meio de comunicação, onde o meio de comunicação inclui qualquer meio que capacita que um programa de computador seja transmitido de um lugar para outro. O meio de armazenagem pode ser qualquer meio disponível que pode ser acessado por um computador. O seguin- te proporciona um exemplo, nas não impõe qualquer limitação: O meio legível por computador pode incluir uma RAM, uma ROM, uma EE- PROM, uma CD-ROM, ou outro meio de armazenagem de disco ótico ou de armazenagem de disco, outro dispositivo de armazenagem magnético, ou qualquer outro meio que pode transportar ou armazenar código de programa esperado em uma forma de instrução(ões), ou uma estrutura de dados, e que podem ser acessadas por um compu- tador. Em adição, qualquer conexão pode ser apropriadamente defini- da como um meio legível por computador. Por exemplo, se software é transmitido de uma website, um servidor, ou outra fonte remota pelo uso de um cabo coaxial, uma fibra ótica/cabo, um par torcido, uma li- nha subscritora digital (DSL), ou tecnologias sem fio, tais como raio infravermelho, rádio, e micro-onda, o cabo coaxial, fibra ótica/cabo, par torcido, DSL, ou tecnologias sem fio, tais como raio infravermelho, rá- dio, e micro-onda, são incluídos nas definições de meios aos quais eles pertencem. Por exemplo, um disquete e um disco usado pelo pre- sente pedido inclui um disco compacto (CD), um disco laser, um disco ótico, um disco digital versátil (DVD), um disquete e um disco Blu-ray, onde o disco geralmente copia dados magneticamente, e o disco copia dados oticamente pelo uso de um laser. A combinação precedente de- ve também ser incluída no escopo de proteção do meio legível por computador.
[00236] Deve ser notado que "/" neste pedido representa e/ou. Por exemplo, "codificação/decodificação (codificação e/ou decodificação)" significa codificação, decodificação, ou codificação e decodificação.
[00237] Em conclusão, o que é descrito acima é meramente exem- plos de concretizações das soluções técnicas do presente pedido, mas não é previsto para limitar o escopo de proteção do presente pedido. Qualquer modificação, substituição equivalente, ou aperfeiçoamento feito sem fugir do princípio do presente pedido deve cair dentro do es- copo de proteção do presente pedido.

Claims (63)

REIVINDICAÇÕES
1. Método de codificação para uma comunicação sem fio, caracterizado pelo fato de compreender: determinar um fator de elevação Z e uma matriz de base correspondente ao fator de elevação Z; codificar uma sequência de entrada c baseada no fator de elevação Z e na matriz de base para obter uma sequência codificada d, e retirar a sequência codificada d, no qual um elemento na matriz de base é, ou um elemento zero ou um elemento de não zero, que são respectivamente representados por seu índice de linha i e índice de coluna j, o elemento Vi, j de não zero (i, j) e um valor correspondente ao elemento de não zero (i, j) são conforme segue: I j Vi, j I j Vi, j 0 0 0 20 1 0 1 94 2 0 3 99 3 0 4 9 0 2 6 0 8 108 9 0 10 1 10 0 12 0 11 0 13 0 0 137 1 38 3 124 2 15 4 0 4 102 5 0 5 146 6 88 6 12 1 3 7 0 7 57 8 0 8 53 9 55 9 46 11 0 10 0 12 0 13 0
.2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a sequência de entrada c é representada como c0, c1, c2,…, ck-1, a sequência codificada d é representada como d0,d1,d2,…,dN- 1, K é o comprimento da sequência de entrada c, N é o comprimento da sequência codificada d, K e N são inteiros maiores do que 0.
3. Método, de acordo com a reivindicação 1 ou 2, caracterizado pelo fato de que a determinação do fator de elevação Z e da matriz de base correspondente ao fator de elevação Z compreende: determinar o fator de elevação Z; e determinar a matriz de base de acordo com um índice ajustado do fator de elevação Z.
4. Método, de acordo com a reivindicação 2 ou 3, caracterizado pelo fato de que N=50Z.
5. Método, de acordo com qualquer uma das reivindicações 1 a 4, caracterizado pelo fato de que Z é um de 5, 10, 20, 40, 80, 160 e
320.
6. Método, de acordo com qualquer uma das reivindicações 1 a 5, caracterizado pelo fato de que Z é um valor mínimo que satisfaz Kb∙Z≥K, e Kb é um de 6, 8, 9 e 10.
7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que Kb satisfaz:
8. Método, de acordo com qualquer uma das reivindicações 2 a 7, caracterizado pelo fato de que K é um múltiplo inteiro de Z.
9. Método, de acordo com qualquer uma das reivindicações 2 a 8, caracterizado pelo fato de que K é 5 vezes de Z, 6 vezes de Z, 7 vezes de Z, 8 vezes de Z, 9 vezes de Z, ou 10 vezes de Z.
10. Método, de acordo com qualquer uma das reivindicações 2 a 9, caracterizado pelo fato de que a sequência de entrada c e a sequência codificada d satisfazem: para k = 2Z a K–1, ck  NULL  se , d k 2 Zc  ck ; senão ck=0 , e 𝑑𝑘−2𝑍 =< 𝑛𝑢𝑙𝑜 >, no qual Z é o fator de elevação, e K é o comprimento da sequência de entrada c.
11. Método, de acordo com qualquer uma das reivindicações 1 a 10, caracterizado pelo fato de que a codificação de uma sequência de entrada c baseada no fator de elevação Z e a matriz de base para obter uma sequência codificada d compreende: obter uma matriz de verificação de paridade de baixa densidade ((LDPC) H de acordo com o fator de elevação Z e a matriz de base; e codificar para a sequência de entrada c para obter a sequência codificada d de acordo com a matriz H de LDPC.
12. Método, de acordo com qualquer uma das reivindicações 1 a 11, caracterizado pelo fato de compreender: gerar uma sequência de paridade w, a sequência de paridade w compreendendo N+2Z-K bits, no qual K é o comprimento da sequência de entrada c, N é o comprimento da sequência codificada d, a sequência de paridade w é representada como w0,w1,w2,…,wN+2Z-K-1.
13. Método, de acordo com a reivindicação 11 ou 12, caracterizado pelo fato de que a matriz H de LDPC, a sequência de c H   0 paridade w e a sequência de entrada c satisfazem: w  , no qual c  c0 , c1 , c2 ,..., cK 1  , w=[w ,w ,w ,…,w
T
T 0 1 2 N+2Zc-K-1] , 0 representa um vetor de coluna, e valores de todos os elementos em 0 são 0.
14. Método, de acordo com a reivindicação 12 ou 13, caracterizado pelo fato de que a sequência codificada d e a sequência de paridade w satisfem: para k=K a N+2Z-1, dk-2Zc=wk-K.
15. Método, de acordo com qualquer uma das reivindicações 1 a 14, caracterizado pelo fato de que cada elemento zero na matriz de base representa que o elemento é para ser substituído pela matriz toda zero de tamanho Z×Z na matriz H de LDPC, cada elemento de não zero (i, j) representa que o elemento é para ser substituído por uma matriz Pi , j de permutação circular I( ) de tamanho Z×Z na matriz H de LDPC, a Pi , j matriz de permutação circular I( ) corresponde a uma matriz de identidade ZxZ circularmente alterada para a direita para Pi,j vezes, onde Pi , j  mod Vi , j , Z  Vi , j , é um valor correspondente ao elemento de não zero (i,j) na matriz de base, Z é o fator de elevação.
16. Método, de acordo com qualquer uma das reivindicações 1 a 15, caracterizado pelo fato de que a codificação de uma sequência de entrada c baseada no fator de elevação Z e na matriz de base para obter uma sequência codificada d compreende: codificar uma sequência de entrada c de acordo com o fator de elevação Z e uma matriz de transformação para obter a sequência codificada d, no qual a matriz de transformação é uma matriz obtida por realização de transformação de linha, transformação de coluna, ou transformação de linha ou de coluna na matriz de base.
17. Método, de acordo com qualquer uma das reivindicações 1 a 16, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 1 136 4 11 157 14 0
18. Método, de acordo com qualquer uma das reivindicações 1 a 17, caracterizado pelo fato de que a matriz de base compreende Vi , j adiciomalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 1 131 5 142 7 141 5 11 64 15 0
19. Método de acordo com qualquer uma das reivindicações 1 a 18, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 5 124 7 99 6 9 45 11 148 16 0
20. Método, de acordo com qualquer uma das reivindicações 1 a 19, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 1 0 5 45 7 148 7 11 96 13 78 17 0
21. Método de acordo com qualquer uma das reivindicações 1 a 20, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e a valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 1 65 8 12 87 18 0
22. Método, de acordo com qualquer uma das reivindicações 1 a 21, caracterizado pelo fato de que a matriz de base compreende adicionalmente um elemento de não zero (i, j) em uma linha (i+1)th, no Vi , j qual 9≤i≤41; e um valor correspondente ao elemento de não zero (i, j) é conforme segue: I j Vi , j i j Vi , j i j Vi , j 1 0 7 86 7 51 18 8 97 28 0 30 9 134 9 10 51 0 0 40 0 11 85 1 158 1 0 19 19 0 10 154 31 13 20 0 0 29 0 41 0 1 17 1 0 0 0 10 6 156 4 148 5 20 20 32 7 20 11 104 12 122 20 0 30 0 42 0 0 0 0 0 2 0 7 7 8 17 7 88 21 33 11 9 4 13 33 10 13 13 2 31 0 43 0 21 0 1 0 0 0 1 0 22 2 4 12 19 34 3 113 32 0 13 78 12 11 48 0 0 44 0 23 22 0 3 75 35 1 0
23. Método, de acordo com qualquer uma das reivindicações 1 a 22, caracterizado pelo fato de que a matriz de base é uma matriz de m linhas e n colunas, no qual m≤42 e n≤52.
24. Codificador, caracterizado pelo fato de ser configurado para realizar o método como definido em qualquer uma das reivindicações 1 a 23.
25. Aparelho de comunicação (700; 800), caracterizado pelo fato de compreender um ou mais processadores (701), e uma ou mais memórias (702) acopladas ao um ou mais processadores, o um ou mais processadores configurados para realizar o método como definido em qualquer uma das reivindicações 1 a 23.
26. Aparelho de comunicação, de acordo com a reivindicação 25, caracterizado pelo fato de que a uma ou mais memórias são configuradas para armazenar um ou mais dos seguintes: fator de elevação, gráfico de base da matriz de base, parâmetros relacionados a um gráfico de base da matriz de base, matriz de base, parâmetros relacionados à matriz de base, matriz de transformação da matriz de base, matriz de LDPC, matriz de geração da matriz de LDPC, ou parâmetros relacionados à matriz de LDPC.
27. Aparelho de comunicação, de acordo com a reivindicação 26, caracterizado pelo fato de que os parâmetros relacionados à matriz de base compreende uma ou mais das seguintes: localizações de elementos de não zero na matriz de base, valores de mudança dos elementos de não zero na matriz de base, peso de linha dos elementos de não zero na matriz de base, peso de coluna dos elementos de não zero na matriz de base, ou taxa de codificação.
28. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 25 a 27, caracterizado pelo fato de que o um ou mais processadores configurados para realizarem correspondência de taxa, intercalação, ou modulação na sequência codificada.
29. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 25 a 28, caracterizado pelo fato de que o um ou mais processadores (701) configurados para receber um sinal e realizar uma ou mais seguintes operações no sinal recebido: demodulação, desintercalação, não correspondência de taxa, concatenação de bloco de código, ou verificação de CRC.
30. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 25 a 29, caracterizado pelo fato de compreender adicionalmente: um transceptor (705) e uma antena (706).
31. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 25 a 30, caracterizado pelo fato de que o aparelho de comunicação é um terminal ou uma estação de base.
32. Aparelho de comunicação (80) para comunicação sem fio, caracterizado pelo fato de compreender: uma unidade de determinação, configurada para determinar um fator de elevação Z e uma matriz de base correspondente ao fator de elevação Z; e um codificador, configurado para codificar uma sequência de entrada c baseada no fator de elevação Z e na matriz de base para obter uma sequência codificada d, e saída da sequência codificada d, no qual um elemento na matriz de base é ou um elemento zero ou um elemento não zero que são respectivamente representados por seu índice de linha i e índice de coluna j, o elemento de não zero (i, Vi, j j) e um valor correspondente ao elemento de não zero (i, j) são conforme segue: I J Vi, j i j Vi, j 0 0 0 20 1 0 1 94 2 0 3 99 3 0 4 9 0 2 6 0 8 108 9 0 10 1 10 0 12 0 11 0 13 0 0 137 1 38 3 124 2 15 4 0 4 102 5 0 5 146 6 88 6 12 1 3 7 0 7 57 8 0 8 53 9 55 9 46 11 0 10 0 12 0 13 0
33. Aparelho de comunicação (80), de acordo com a reivindicação 32, caracterizado pelo fato de que a unidade de determinação configurada para determinar a matriz de base de acordo com um índice ajustado do fator de elevação.
34. Aparelho de comunicação (80), de acordo com a reivindicação 32 ou 33, caracterizado pelo fato de compreender adicionalmente uma ou mais memórias, configuradas para armazenar um ou mais dos seguintes: fator de elevação, gráfico de base da matriz de base, parâmetros relacionados a um gráfico de base da matriz de base, matriz de base, parâmetros relacionados à matriz de base, matriz de transformação da matriz de base, matriz de LDPC, matriz de geração da matriz de LDPC, ou parâmetros relacionados à matriz de LDPC.
35. Aparelho de comunicação (80), de acordo com qualquer uma das reivindicações 32 a 34, caracterizado pelo fato de que os parâmetros relacionados à matriz de base compreende um ou mais das seguintes: localizações dos elementos de não zero na matriz de base, valores de mudança dos elementos de não zero na matriz de base, peso de linha de elementos de não zero na matriz de base, peso de coluna de elementos de não zero na matriz de base, ou taxa de codificação.
36. Aparelho de comunicação (80), de acordo com qualquer uma das reivindicações 32 a 35, caracterizado pelo fato de que o fator de elevação Z, a matriz de base, a sequência de entrada c, e a sequência codificada d são o fator de elevação Z, a matriz de base, a sequência de entrada c, e a sequência codificada d, de acordo com qualquer uma das reivindicações 1 a 23.
37. Aparelho de comunicação (80), de acordo com qualquer uma das reivindicações 32 a 36, caracterizado pelo fato de compreender o seguinte um ou mais: um dispositivo para geração de CRC de bloco de transporte, um dispositivo para segmentação de bloco de código, e uma verificação de CRC, um intercalador para intercalação, um dispositivo para correspondência de taxa, um modulador para processamento de modulação, ou uma ou mais memórias.
38. Método de decodificação, caracterizado pelo fato de compreender: determinar um fator de elevação Z e uma matriz de base correspondente ao fator de elevação Z; decodificar uma sequência de entrada baseada no fator de elevação Z e na matriz de base para obter uma sequência decodificada, e retirada da sequência codificada; no qual cada elemento na matriz de base é ou um elemento zero ou um elemento não zero que são respectivamente representados por seu índice de linha i e índice de coluna j, o elemento de não zero (i, Vi, j j) e um valor correspondente ao elemento de não zero (i, j) são conforme segue: I J Vi, j i j Vi, j 0 0 0 20 1 0 1 94 2 0 3 99 3 0 4 9 0 2 6 0 8 108 9 0 10 1 10 0 12 0 11 0 13 0 0 137 1 38 3 124 2 15 4 0 4 102 1 5 0 3 5 146 6 88 6 12 7 0 7 57 8 0 8 53
I J Vi, j i j Vi, j 9 55 9 46 11 0 10 0 12 0 13 0
39. Método, de acordo com a reivindicação 38, caracterizado pelo fato de que a determinação do fator de elevação Z e da matriz de base correspondente ao fator de elevação Z compreende: determinar o fator de elevação Z; e determinar a matriz de base de acordo com um índice ajustado do fator de elevação Z.
40. Método, de acordo com a reivindicação 38 ou 39, caracterizado pelo fato de que Z é um de 5, 10, 20, 40, 80, 160 e 320.
41. Método, de acordo com qualquer uma das reivindicações 38 a 40, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 1 136 4 11 157 14 0
42. Método, de acordo com qualquer uma das reivindicações 38 a 41, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 1 131 5 142 5 7 141 11 64 15 0
43. Método, de acordo com qualquer uma das reivindicações 38 a 42, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 5 124 7 99 6 9 45 11 148 16 0
44. Método, de acordo com qualquer uma das reivindicações 38 a 43, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e um valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 1 0 5 45 7 148 11 96 7 13 78 17 0
45. Método de acordo com qualquer uma das reivindicações 38 a 44, caracterizado pelo fato de que a matriz de base compreende Vi , j adicionalmente o seguinte elemento de não zero (i, j), e a valor correspondente ao elemento de não zero (i, j) é conforme segue: i j Vi , j 0 0 1 65 8 12 87 18 0
46. Método de acordo com qualquer uma das reivindicações 38 a 45, caracterizado pelo fato de que a matriz de base compreende adicionalmente a elemento de não zero (i, j) em uma linha (i+1)th, no Vi , j qual 9≤i≤41; e a valor correspondente ao elemento de não zero (i, j) é conforme segue:
i j Vi , j i j Vi , j i j Vi , j 1 0 7 86 7 51 18 8 97 28 0 30 9 134 9 10 51 0 0 40 0 11 85 1 158 1 0 19 19 0 10 154 31 13 20 0 0 29 0 41 0 1 17 1 0 0 0 10 6 156 4 148 5 20 20 32 7 20 11 104 12 122 20 0 30 0 42 0 0 0 0 0 2 0 7 7 8 17 7 88 21 33 11 9 4 13 33 10 13 13 2 31 0 43 0 21 0 1 0 0 0 1 0 22 2 4 12 19 34 3 113 32 0 13 78 12 11 48 0 0 44 0 22 0 3 75 1 0 23 0 0 5 158 5 157 35 1 112 33 0 11 6 13 8 102 1 0 45 0 13 26 2 69 0 0 24 23 0 9 87 2 63 36 1 0 34 0 7 82 6 138 0 0 46 0 14 11 57 25 5 65 10 0 13 27 35 0 37 13 144 24 0 2 0 47 0 0 0 7 100 1 0 10 73 26 12 13 5 93 15 38 11 99 13 7 11 19 25 0 36 0 48 0 16 1 0 27 0 0 39 0 0
47. Método, de acordo com qualquer uma das reivindicações 38 a 46, caracterizado pelo fato de que a matriz de base é uma matriz de m linhas e n colunas, no qual m≤42 e n≤52.
48. Método, de acordo com qualquer uma das reivindicações 38 a 47, caracterizado pelo fato de compreender adicionalmente: receber um sinal, o sinal compreendendo informação que é baseada em codificação de LDPC, realização de desmodulação, desentercalamento e não correspondência de taxa no sinal para obter uma sequência de valor suave de um código de LDPC, no qual a decodificação de uma sequência de entrada baseada no fator de elevação Z e na matriz de base para obter uma sequência decodificada compreendendo: decodificar a sequência de valor suave do código de LDPC.
49. Decodificador, caracterizado pelo fato de ser configurado para realizar o método como definido em qualquer uma das reivindicações 38 a 48.
50. Aparelho de comunicação (700; 81), caracterizado pelo fato de compreender um ou mais processadores (701), e uma ou mais memórias (702) acopladas ao um ou mais processadores, o um ou mais processadores (701) configurados para realizar o método como definido em qualquer uma das reivindicações 38 a 48.
51. Aparelho de comunicação, de acordo com a reivindicação 50, caracterizado pelo fato de que a uma ou mais memórias são configuradas para armazenar um ou mais dos seguintes: fator de elevação, gráfico de base da matriz de base, parâmetros relacionados a um gráfico de base da matriz de base, matriz de base, parâmetros relacionados à matriz de base, matriz de transformação da matriz de base, matriz de LDPC, matriz de geração da matriz de LDPC, ou parâmetros relacionados à matriz de LDPC.
52. Aparelho de comunicação, de acordo com a reivindicação 51, caracterizado pelo fato de que os parâmetros relacionados à matriz de base compreende uma ou mais das seguintes: localizações de elementos de não zero na matriz de base, valores de mudança dos elementos de não zero na matriz de base, peso de linha dos elementos de não zero na matriz de base, peso de coluna dos elementos de não zeros na matriz de base, ou taxa de codificação.
53. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 50 a 52, caracterizado pelo fato de que o um ou mais processadores configurados para receber um sinal e realizar uma ou mais das seguintes operações no sinal recebido: desmodulação, desintercalação, não correspondência de taxa, concatenação de bloco de código, ou verificação de CRC.
54. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 50 a 53, caracterizado pelo fato de que o um ou mais processadores configurados para realizar codificação de uma sequência a ser codificada de acordo com qualquer uma das reivindicações 1 a 23.
55. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 50 a 54, caracterizado pelo fato de compreender adicionalmente: um transceptor e uma antena.
56. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 50 a 55, caracterizado pelo fato de que o aparelho de comunicação é um terminal ou uma estação de base.
57. Aparelho de comunicação (81), caracterizado pelo fato de compreender obtenção de unidade e decodificador, a unidade de obtenção configure para obter uma sequência de entrada a ser decodificada, e o decodificador configurado para decodificar a sequência de entrada a ser decodificada para obter a sequência decodificada de acordo com qualquer uma das reivindicações 38 a 48.
58. Aparelho de comunicação, de acordo com a reivindicação 57, caracterizado pelo fato de compreender adicionalmente uma ou mais memórias, configuradas para armazenar um ou mais dos seguintes: fator de elevação, gráfico de base da matriz de base, parâmetros relacionados a um gráfico de base da matriz de base, matriz de base, parâmetros relacionados à matriz de base, matriz de transformação da matriz de base, matriz de LDPC, matriz de geração da matriz de LDPC, ou parâmetros relacionados à matriz de LDPC.
59. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 32 a 34, caracterizado pelo fato de que os parâmetros relacionados à matriz de base compreendem uma ou mais das seguintes: localizações de elementos de não zero na matriz de base, valores de mudança dos elementos de não zero na matriz de base, peso de linha de elementos de não zero na matriz de base, peso de coluna de elementos de não zero na matriz de base, ou taxa de codificação.
60. Aparelho de comunicação, de acordo com qualquer uma das reivindicações 57 a 59, caracterizado pelo fato de que o aparelho de comunicação é um terminal ou uma estação de base.
61. Meio de armazenagem legível por computador,
caracterizado pelo fato de compreender uma ou mais instruções, que quando executadas por um computador, faz com que o computador realize o método como definidoem qualquer uma das reivindicações 1 a 23, e/ou realize o método como definido em qualquer uma das reivindicações 38 a 48.
62. Produto de programa de computador, caracterizado pelo fato de compreender instruções que quando as instruções são executadas por um computador, faz com que o computador realize o método de acordo com qualquer uma das reivindicações 1 a 23, e 38 a
48.
63. Sistema de comunicação (800), caracterizado pelo fato de compreender um aparelho (80; 700) de comunicação como definido em qualquer uma das reivindicações 25 a 37, e um aparelho (81; 700) de comunicação como definido em qualquer uma das reivindicações 50 a 60.
BR112019027876-1A 2017-06-27 2018-06-27 método de codificação, método de decodificação, codificador, decodificador, meio de armazenagem legível por computador, produto de programa de computador, e sistema e aparelho de comunicação BR112019027876A2 (pt)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
CN201710503056.2 2017-06-27
CN201710503056 2017-06-27
CN201710572364.0 2017-07-13
CN201710572364.0A CN109150197B (zh) 2017-06-27 2017-07-13 信息处理的方法、装置和通信设备
PCT/CN2018/082851 WO2019001090A1 (zh) 2017-06-27 2018-04-12 信息处理的方法、装置和通信设备
CNPCT/CN2018/082851 2018-04-12
PCT/CN2018/093148 WO2019001477A1 (zh) 2017-06-27 2018-06-27 信息处理的方法、装置和通信设备

Publications (1)

Publication Number Publication Date
BR112019027876A2 true BR112019027876A2 (pt) 2020-07-07

Family

ID=64803188

Family Applications (2)

Application Number Title Priority Date Filing Date
BR112019027688A BR112019027688A8 (pt) 2017-06-27 2018-04-12 método de codificação, método de decodificação, aparelho, aparelho de comunicação, terminal, estação de base, sistema de comunicação, mídia de armazenamento legível por computador, e produto de programa de computador
BR112019027876-1A BR112019027876A2 (pt) 2017-06-27 2018-06-27 método de codificação, método de decodificação, codificador, decodificador, meio de armazenagem legível por computador, produto de programa de computador, e sistema e aparelho de comunicação

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR112019027688A BR112019027688A8 (pt) 2017-06-27 2018-04-12 método de codificação, método de decodificação, aparelho, aparelho de comunicação, terminal, estação de base, sistema de comunicação, mídia de armazenamento legível por computador, e produto de programa de computador

Country Status (12)

Country Link
US (4) US10771092B2 (pt)
EP (3) EP4064573B1 (pt)
JP (2) JP7143343B2 (pt)
KR (1) KR102276721B1 (pt)
CN (3) CN109150197B (pt)
AU (1) AU2018294981B2 (pt)
BR (2) BR112019027688A8 (pt)
CA (1) CA3068553A1 (pt)
ES (2) ES2907089T3 (pt)
MY (1) MY196344A (pt)
PL (1) PL3567731T3 (pt)
RU (1) RU2758968C2 (pt)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018143743A1 (ko) 2017-02-06 2018-08-09 엘지전자 주식회사 행-직교 구조(row-orthogonal)를 이용한 LDPC 코드 전송 방법 및 이를 위한 장치
WO2018227681A1 (zh) 2017-06-15 2018-12-20 华为技术有限公司 信息处理的方法和通信装置
CN109150197B (zh) * 2017-06-27 2024-05-14 华为技术有限公司 信息处理的方法、装置和通信设备
CN112448724B (zh) * 2019-08-29 2023-07-07 华为技术有限公司 一种数据编码的方法及设备
CN110989921B (zh) * 2019-10-24 2023-05-26 西安艾可萨科技有限公司 可配置存储阵列系统及其控制方法、通信设备
CN113612573B (zh) * 2020-05-04 2022-10-11 华为技术有限公司 一种通信方法及装置
CN114257250A (zh) * 2020-09-25 2022-03-29 中兴通讯股份有限公司 Ldpc码编码方法、装置、网络设备和存储介质
WO2024040457A1 (en) * 2022-08-24 2024-02-29 Qualcomm Incorporated Low-density parity-check coding with applications for probabilistic amplitude shaping
WO2024065214A1 (en) * 2022-09-27 2024-04-04 Zte Corporation Methods and apparatus for information transmission

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3808769B2 (ja) 2001-12-27 2006-08-16 三菱電機株式会社 Ldpc符号用検査行列生成方法
EP1518328B1 (en) 2002-07-03 2007-04-18 The DIRECTV Group, Inc. Encoding of low-density parity check (ldpc) codes using a structured parity check matrix
US7058873B2 (en) 2002-11-07 2006-06-06 Carnegie Mellon University Encoding method using a low density parity check code with a column weight of two
KR100996029B1 (ko) 2003-04-29 2010-11-22 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법
KR100809619B1 (ko) 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
KR100918763B1 (ko) * 2003-11-14 2009-09-24 삼성전자주식회사 병렬 연접 저밀도 패리티 검사 부호를 사용하는 채널 부호화/복호 장치 및 방법
CN1961499B (zh) 2004-04-02 2013-06-05 苹果公司 用于正交频分复用应用的空间时间发射分集系统及方法
KR20050118056A (ko) 2004-05-12 2005-12-15 삼성전자주식회사 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치
JP4545793B2 (ja) 2004-08-10 2010-09-15 サムスン エレクトロニクス カンパニー リミテッド ブロック低密度パリティ検査符号を符号化/復号化する装置及び方法
US7188297B2 (en) 2004-08-12 2007-03-06 Motorola, Inc. Method and apparatus for encoding and decoding data
JP4339382B2 (ja) 2004-09-15 2009-10-07 サムスン エレクトロニクス カンパニー リミテッド 移動通信システムにおける送信情報の符号化/復号化のための方法及び装置
CN100550655C (zh) * 2004-11-04 2009-10-14 中兴通讯股份有限公司 一种低密度奇偶校验码的编码器/译码器及其生成方法
US7752520B2 (en) * 2004-11-24 2010-07-06 Intel Corporation Apparatus and method capable of a unified quasi-cyclic low-density parity-check structure for variable code rates and sizes
KR100913876B1 (ko) 2004-12-01 2009-08-26 삼성전자주식회사 저밀도 패리티 검사 부호의 생성 방법 및 장치
CN1845482B (zh) 2005-04-07 2011-05-11 华为技术有限公司 宽带码分多址系统下行信道编码打孔压缩装置和实现方法
US7774675B1 (en) * 2005-12-05 2010-08-10 Marvell International Ltd. LDPC codes and expansion method
US7493548B2 (en) * 2006-02-06 2009-02-17 Motorola, Inc Method and apparatus for encoding and decoding data
CN100546205C (zh) * 2006-04-29 2009-09-30 北京泰美世纪科技有限公司 构造低密度奇偶校验码的方法、译码方法及其传输系统
CN101162907B (zh) * 2006-10-10 2010-11-03 华为技术有限公司 一种利用低密度奇偶校验码实现编码的方法及装置
CN101217337B (zh) * 2007-01-01 2013-01-23 中兴通讯股份有限公司 一种支持递增冗余混合自动重传的低密度奇偶校验码编码装置和方法
BRPI0806757A2 (pt) 2007-01-24 2011-09-13 Qualcomm Inc encodificação e decodificação de ldpc de pacotes de tamanhos variáveis
CN101431337A (zh) * 2007-11-09 2009-05-13 松下电器产业株式会社 提高编码并行度实现降低编码时延的方法
KR101445080B1 (ko) 2008-02-12 2014-09-29 삼성전자 주식회사 하이브리드 자동 반복 요구 방식을 사용하는 통신 시스템에서 신호 송신 방법 및 장치
CN101515839A (zh) 2008-02-22 2009-08-26 大唐移动通信设备有限公司 一种编码输出的方法、装置及其系统
CN101662290B (zh) * 2008-08-26 2013-08-28 华为技术有限公司 生成准循环ldpc码及编码的方法与装置
US8103931B2 (en) 2008-08-27 2012-01-24 Mitsubishi Electric Research Laboratories, Inc. Method for constructing large-girth quasi-cyclic low-density parity-check codes
CN101686061A (zh) 2008-09-27 2010-03-31 松下电器产业株式会社 构造低密度奇偶校验码的方法及发送/接收装置和系统
CN101741396B (zh) * 2008-11-19 2013-03-13 华为技术有限公司 可变码长ldpc码编码或译码的方法与装置及编码器和译码器
CN101834613B (zh) 2009-03-09 2012-11-21 电信科学技术研究院 一种ldpc码的编码方法及编码器
US8433972B2 (en) 2009-04-06 2013-04-30 Nec Laboratories America, Inc. Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
CN102025441B (zh) * 2009-09-11 2013-07-31 北京泰美世纪科技有限公司 Ldpc码校验矩阵的构造方法、ldpc码的编码方法和编码装置
KR101644656B1 (ko) * 2009-11-02 2016-08-10 삼성전자주식회사 선형 블록 부호를 사용하는 통신 시스템에서 패리티 검사 행렬을 생성하는 방법과 이를 이용한 채널 부호화/복호화 장치 및 방법
CN102412842B (zh) * 2010-09-25 2016-06-15 中兴通讯股份有限公司 一种低密度奇偶校验码的编码方法及装置
US8627166B2 (en) * 2011-03-16 2014-01-07 Samsung Electronics Co., Ltd. LDPC code family for millimeter-wave band communications in a wireless network
CN102315911B (zh) 2011-09-29 2017-10-27 中兴通讯股份有限公司 一种低密度奇偶校验码编码方法及装置
US9100052B2 (en) * 2013-02-01 2015-08-04 Samsung Electronics Co., Ltd. QC-LDPC convolutional codes enabling low power trellis-based decoders
US9306601B2 (en) * 2013-02-13 2016-04-05 Qualcomm Incorporated LDPC design for high parallelism, low error floor, and simple encoding
WO2014199865A1 (ja) 2013-06-12 2014-12-18 ソニー株式会社 データ処理装置、及びデータ処理方法
CN104518847B (zh) * 2013-09-29 2018-02-02 中国科学院上海高等研究院 基于bch码与短ldpc码级联的信令编码方法及系统
US9559722B1 (en) * 2013-10-21 2017-01-31 Marvell International Ltd. Network devices and methods of generating low-density parity-check codes and performing corresponding encoding of data
CN104868925B (zh) 2014-02-21 2019-01-22 中兴通讯股份有限公司 结构化ldpc码的编码方法、译码方法、编码装置和译码装置
CN104917536B (zh) 2014-03-11 2019-11-12 中兴通讯股份有限公司 一种支持低码率编码的方法及装置
CN104168030B (zh) 2014-07-14 2017-11-14 北京邮电大学 一种基于本原域循环群两个生成元的ldpc码构造方法
US9432052B2 (en) * 2014-09-18 2016-08-30 Broadcom Corporation Puncture-aware low density parity check (LDPC) decoding
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
CN104333390B (zh) * 2014-11-26 2019-08-06 西安烽火电子科技有限责任公司 一种ldpc码的校验矩阵的构造方法与编码方法
US20160173132A1 (en) * 2014-12-10 2016-06-16 Alcatel-Lucent Usa Inc. Construction of Structured LDPC Convolutional Codes
US20160218750A1 (en) * 2015-01-23 2016-07-28 Empire Technology Development Llc Parity check code encoder
SG10201500905QA (en) 2015-02-05 2016-09-29 Nanyang Polytechnic LDPC Codes For Storage System
CN104821831B (zh) 2015-03-24 2019-03-05 东南大学 一种适用于高码率qc-ldpc码的双循环构造方法
US9847794B2 (en) * 2015-05-19 2017-12-19 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
CN106685586B (zh) 2015-11-11 2020-02-14 华为技术有限公司 生成用于在信道中传输的低密度奇偶校验码的方法及设备
WO2017091018A1 (en) 2015-11-24 2017-06-01 Samsung Electronics Co., Ltd. Method and apparatus for channel encoding/decoding in a communication or broadcasting system
US10469104B2 (en) * 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
WO2018062660A1 (ko) * 2016-09-30 2018-04-05 엘지전자 주식회사 Qc ldpc 코드의 레이트 매칭 방법 및 이를 위한 장치
WO2018084735A1 (en) 2016-11-03 2018-05-11 Huawei Technologies Co., Ltd. Efficiently decodable qc-ldpc code
CN108173621B (zh) 2016-12-07 2022-06-14 华为技术有限公司 数据传输的方法、发送设备、接收设备和通信系统
CN106849958B (zh) * 2016-12-29 2020-10-27 上海华为技术有限公司 低密度奇偶校验码校验矩阵的构造方法、编码方法及系统
US10581457B2 (en) 2017-01-09 2020-03-03 Mediatek Inc. Shift coefficient and lifting factor design for NR LDPC code
RU2733826C1 (ru) * 2017-03-03 2020-10-07 Хуавей Текнолоджиз Ко., Лтд. Высокоскоростные длинные ldpc коды
US10659079B2 (en) * 2017-05-05 2020-05-19 Mediatek Inc. QC-LDPC codes
CN108809328B (zh) * 2017-05-05 2024-05-17 华为技术有限公司 信息处理的方法、通信装置
WO2018227681A1 (zh) 2017-06-15 2018-12-20 华为技术有限公司 信息处理的方法和通信装置
CN109150197B (zh) * 2017-06-27 2024-05-14 华为技术有限公司 信息处理的方法、装置和通信设备

Also Published As

Publication number Publication date
KR20200013794A (ko) 2020-02-07
US20200052720A1 (en) 2020-02-13
RU2020102671A3 (pt) 2021-09-07
CN109327225B (zh) 2019-09-03
ES2970217T3 (es) 2024-05-27
US20230361787A1 (en) 2023-11-09
RU2020102671A (ru) 2021-07-27
CN109327225A (zh) 2019-02-12
EP4064573B1 (en) 2023-12-27
CN109150197B (zh) 2024-05-14
JP7143343B2 (ja) 2022-09-28
KR102276721B1 (ko) 2021-07-12
CN109150197A (zh) 2019-01-04
PL3567731T3 (pl) 2022-02-28
EP4064573A1 (en) 2022-09-28
US11277153B2 (en) 2022-03-15
CA3068553A1 (en) 2019-01-03
EP4376337A2 (en) 2024-05-29
MY196344A (en) 2023-03-24
EP3567731B1 (en) 2022-01-12
CN109327225B9 (zh) 2021-12-10
EP3567731A1 (en) 2019-11-13
BR112019027688A8 (pt) 2020-09-29
US20210058095A1 (en) 2021-02-25
JP2020526111A (ja) 2020-08-27
RU2758968C2 (ru) 2021-11-03
AU2018294981B2 (en) 2020-10-22
US20220231705A1 (en) 2022-07-21
ES2907089T3 (es) 2022-04-21
US11671116B2 (en) 2023-06-06
JP2022179504A (ja) 2022-12-02
AU2018294981A1 (en) 2020-01-30
EP3567731A4 (en) 2020-07-01
US10771092B2 (en) 2020-09-08
JP7471360B2 (ja) 2024-04-19
CN111066253A (zh) 2020-04-24

Similar Documents

Publication Publication Date Title
BR112019027876A2 (pt) método de codificação, método de decodificação, codificador, decodificador, meio de armazenagem legível por computador, produto de programa de computador, e sistema e aparelho de comunicação
US11770135B2 (en) Method and apparatus for low density parity check channel coding in wireless communication system
US10924134B2 (en) Apparatus and method for channel coding in communication system
US11996863B2 (en) Method and apparatus for low density parity check channel coding in wireless communication system
BR112019027688A2 (pt) Método de codificação, método de decodificação, aparelho, aparelho de comunicação, terminal, estação de base, sistema de comunicação, mídia de armazenamento legível por computador, e produto de programa de computador
WO2019001090A1 (zh) 信息处理的方法、装置和通信设备
WO2019001338A1 (zh) 信息处理的方法、装置和通信设备

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]