BRPI0920457B1 - codificador, aparelho de transmissão, método de codificação e método de transmissão - Google Patents

codificador, aparelho de transmissão, método de codificação e método de transmissão Download PDF

Info

Publication number
BRPI0920457B1
BRPI0920457B1 BRPI0920457A BRPI0920457A BRPI0920457B1 BR PI0920457 B1 BRPI0920457 B1 BR PI0920457B1 BR PI0920457 A BRPI0920457 A BR PI0920457A BR PI0920457 A BRPI0920457 A BR PI0920457A BR PI0920457 B1 BRPI0920457 B1 BR PI0920457B1
Authority
BR
Brazil
Prior art keywords
bits
columns
matrix
submatrix
parity
Prior art date
Application number
BRPI0920457A
Other languages
English (en)
Inventor
Okamura Shutai
Murakami Yutaka
Original Assignee
Panasonic Corp
Panasonic Ip Corp America
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Panasonic Ip Corp America filed Critical Panasonic Corp
Publication of BRPI0920457A2 publication Critical patent/BRPI0920457A2/pt
Publication of BRPI0920457B1 publication Critical patent/BRPI0920457B1/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/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/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/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1125Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/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/6522Intended application, e.g. transmission or communication standard
    • H03M13/6527IEEE 802.11 [WLAN]
    • 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

Abstract

codificador, aparelho de transmissão, método de codificação e método de transmissão são mostrados um codificador, um dispositivo de transmissão e um método de codificação com os quais a quantidade de transmissão é reduzida e uma deterioração na eficiência de transmissão é suprimida, enquanto se melhora a qualidade de recepção quando qcldpc ou uma codificação de bloco similar é usada. uma unidade de regulagem de padrão de perfuração (620) busca por um padrão de perfuração para o qual cada múltiplo inteiro do número de colunas ou para cada divisor do número de colunas de uma matriz de sub-bloco que forma uma matriz de checagem (h) de um código de qc-ldpc, e uma unidade de perfuração (unidade de redução de dados) (630) comuta o padrão de perfuração para cada múltiplo inteiro do número de colunas ou para cada divisor do número de colunas da matriz de subbloco que forma a matriz de checagem do código de qc-ldpc.

Description

Campo Técnico [001] A presente invenção refere-se a um codificador, um aparelho de transmissão e um método de codificação que formam uma sequência codificada usando uma matriz geradora de paridade que inclui parcial ou regularmente matrizes nulas, tal como um código QC-LDPC (checagem de paridade de densidade baixa quase cíclica).
Técnica Antecedente [002] Nos últimos anos, um código de checagem de paridade de densidade baixa (LDPC: checagem de paridade de densidade baixa) está se tornando popular como um código de correção de erro que tira o máximo da performance alta de correção de erro em uma escala de circuito possível. O código de LDPC é um código de correção de erro definido por uma matriz de checagem de paridade de densidade baixa
H. Baixa densidade significa que o número de elementos 1 incluídos em uma matriz é consideravelmente menor do que o número de elementos 0. O código de LDPC é um código de bloco tendo o mesmo comprimento de bloco que o número de colunas N da matriz de checagem de paridade H.
[003] Devido a sua performance de correção de erro de nível alto e à facilidade de montagem, o código de LDPC é adotado para um sistema de LAN (rede de área local) sem fio de alta velocidade da IEEE802.11n e um esquema de codificação de correção de erro, tal como um sistema de difusão digital. Mais ainda, uma adoção de um código de QC (quase cíclico)-LDPC em uma rede doméstica também está sob estudo.
[004] O código de bloco tem um recurso que a performance de correção de erro melhora conforme o comprimento de código de bloco
Petição 870190086737, de 04/09/2019, pág. 4/87
2/76 aumenta. Quando se deseja que, por exemplo, símbolos, tal como um cabeçalho para a transmissão de uma informação de controle ou similar, sejam transmitidos de forma confiável, a qualidade de recepção do cabeçalho pode ser assegurada usando-se um código de bloco mais longo do que o cabeçalho.
[005] Mais ainda, usar o mesmo código de correção de erro que o código de correção de erro usando para a transmissão de uma informação e o código de correção de erro usado para a transmissão do cabeçalho é vantajoso da perspectiva da escala de circuito. O presente pedido se refere a e descreve um símbolo para a transmissão de uma informação de controle ou similar como cabeçalho, mas um símbolo para a transmissão de uma informação de controle ou similar também pode ser referido como um símbolo de controle (canal de controle ou sinal de controle), preâmbulo, símbolo de saída, símbolo de piloto (canal piloto ou sinal piloto), símbolo de treinamento ou similar.
[006] Neste caso, conforme mostrado na figura 1, quando o número de bits de informação que precisa ser transmitido (por exemplo, comprimento de cabeçalho) é menor do que o comprimento de bloco do código de bloco, bits de paridade são gerados pela realização de uma codificação assumindo que os bits de informação na parte de excesso do comprimento de bloco sejam 0’s.
[007] Como uma sequência codificada a ser realmente transmitida, apenas bits de informação que precisam ser transmitidos (por exemplo, o cabeçalho) e bits de paridade são transmitidos conforme mostrado, por exemplo, na figura 1. Isto é, a porção de bits de informação assumida como sendo de 0’s não é realmente transmitida.
[008] Um cabeçalho de informação de controle, por exemplo, geralmente tem um número menor de bits do que dados de carga útil que transmitem uma informação, tal como uma imagem. Contudo, pela
Petição 870190086737, de 04/09/2019, pág. 5/87
3/76 transmissão do cabeçalho e de bits de paridade conforme mostrado na figura 1, o cabeçalho e dados de carga útil podem ser codificados usando-se o mesmo código de bloco. Mais ainda, uma vez que o cabeçalho é codificado usando-se o código de bloco de um comprimento de bloco maior do que o comprimento de cabeçalho, a qualidade de recepção do cabeçalho pode ser assegurada. Como resultado, uma vez que o cabeçalho pode ser transmitido de forma confiável para a parte em comunicação, o método de comunicação mencionado anteriormente é efetivo no estabelecimento de uma comunicação.
Lista de Citação [009] Literatura Não de Patente
NPL 1 [0010] Rate Estimation Techniques for Rate-Compatible LDPC
Codes, IEICE (Institute of Electronics, Information and Communication Engineers) transactions 2006/12 Vol. J89 A No.12 p.1177.
NPL 2 [0011] M. P. C. Fossorier, Quasi-cyclic low-density parity-check codes from circulant permutation matrices, IEEE Trans. Inform. Theory, vol. 50, no. 8, pp.1788-1793, Nov. 2001.
NPL 3 [0012] L. Chen, J. Xu, I. Djurdjevic, e S. Lin, Near-Shannon limit quasi-cyclic low-density parity-check codes, IEEE Trans. Commun., vol. 52, no. 7, pp.1038-1042, julho de 2004.
NPL 4 [0013] IEEE Unapproved Draft Std P802.11n_D3.00, pp.274, setembro de 2007.
NPL 5 [0014] D. J. C. Mackay, Good error-correcting codes based on very sparse matrices, IEEE Trans. Inform. Theory, vol.45, no.2, pp399-431, March 1999.
Petição 870190086737, de 04/09/2019, pág. 6/87
4/76
NPL 6 [0015] M. P. C. Fossorier, M. Mihaljevic, e H. Imai, Reduced complexity iterative decoding of low density parity check codes based on belief propagation, IEEE Trans. Commun., vol. 47, no. 5, pp. 673-680, maio de 1999.
NPL 7 [0016] J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, e
X.-Yu Hu, Reduced-complexity decoding of LDPC codes, IEEE Trans. Commun., vol. 53., no. 8, pp. 1288-1299, agosto de 2005. Sumário da Invenção Problema Técnico [0017] Contudo, quando dados tal como um cabeçalho tendo um comprimento de dados menor do que o comprimento de bloco são codificados, as técnicas anteriores podem melhorar a qualidade de recepção, mas também têm que transmitir bits de paridade obtidos através de uma codificação assumindo que os bits de informação sejam 0’s. Assim, quando o comprimento de cabeçalho é equivalente ao comprimento de bloco e seu comprimento é curto, o número de bits de paridade que precisam ser transmitidos é pequeno. Ao contrário, quando o comprimento de bloco é maior do que o comprimento de cabeçalho, o número de bits de paridade que precisam ser transmitidos aumenta, e as técnicas anteriores, têm um problema de a eficiência de transmissão de dados se deteriorar. Portanto, a resolução do problema de deterioração da eficiência de transmissão de dados proverá uma vantagem de ser capaz de melhorar a eficiência de transmissão de dados, bem como a qualidade de recepção.
[0018] Portanto, é um objetivo da presente invenção prover um codificador, um aparelho de transmissão e um método de codificação capazes de reduzirem, quando usando um código de bloco tal como um código QC-LDPC, a quantidade de transmissão e suprimindo uma
Petição 870190086737, de 04/09/2019, pág. 7/87
5/76 deterioração de eficiência de transmissão, enquanto se melhora a qualidade de recepção.
Solução para o Problema [0019] Um codificador da presente invenção inclui: uma seção de codificação que gera uma sequência codificada s que satisfaz à equação (14-1), à equação (14-2) e à equação (14-3) para uma sequência de bit de informação u; e uma seção de regulagem que regula um yésimo padrão de perfuração o qual corresponde ao número de colunas z variando de zxy+1 colunas (y é um inteiro entre 0 e (nb-1)) a zx(y+1) colunas, e o qual tem um ciclo de divisores do número de colunas z, e, com este codificador, em uma sequência codificada s constituída por zxnb bits a partir de um primeiro bit até um zxnb-ésimo bit, bits a serem removidos são determinados a partir de um zxy+1-ésimo bit até um zx(y+1)-ésimo bit, com base no y-ésimo padrão de perfuração, os bits determinados para serem removidos são removidos dos zxnb bits constituindo a sequência codificada s para a formação de uma sequência de bit de informação de transmissão, e a sequência de bit de informação de transmissão é extraída.
[0020] Um aparelho de transmissão da presente invenção adota uma configuração que inclui uma seção de transmissão que é provida com o codificador descrito acima e transmite a sequência de bit de informação de transmissão.
[0021] Um método de codificação da presente invenção inclui as etapas de: geração de uma sequência codificada s que satisfaz à equação (16-1), à equação (16-2) e à equação (16-3) para uma sequência de bit de informação u; e regulagem de um y-ésimo padrão de perfuração o que corresponde ao número de colunas z variando de zxy+1 colunas (y é um inteiro entre 0 e (nb-1)) a zx(y+1) colunas, e o qual tem um ciclo de divisores do número de colunas z, e, com este método de codificação, em uma sequência codificada s constituída por
Petição 870190086737, de 04/09/2019, pág. 8/87
6/76 zxnb bits a partir de um primeiro bit até um zxnb-ésimo bit, bits a serem removidos são determinados a partir de um zxy+1-ésimo bit até um zx(y+1)-ésimo bit, com base no y-ésimo padrão de perfuração, os bits determinados para serem removidos são removidos dos zxnb bits constituindo a sequência codificada s para a formação de uma sequência de bit de informação de transmissão e a sequência de bit de informação de transmissão é extraída.
Efeitos Vantajosos da Invenção [0022] De acordo com o aparelho de comunicação e o método de comunicação da presente invenção, quando usando um código de bloco tal como um código QC-LDPC, é possível reduzir a quantidade de transmissão e suprimir a deterioração da eficiência de transmissão, enquanto se melhora a qualidade de recepção.
Breve Descrição dos Desenhos [0023] A figura 1 é um diagrama que ilustra um exemplo de configuração de bloco de código de bloco e uma sequência codificada que é realmente transmitida;
[0024] a figura 2 é um diagrama que ilustra dados de entrada e de saída de um codificador usado para um aparelho de comunicação de acordo com a Modalidade 1 da presente invenção;
[0025] a figura 3 é um diagrama que ilustra um exemplo de matriz geradora de paridade g de código QC-LDPC;
[0026] a figura 4 é um diagrama que ilustra um exemplo de matriz nula;
[0027] a figura 5 é um diagrama que ilustra um outro exemplo de matriz nula;
[0028] a figura 6 é um diagrama que ilustra um exemplo de configuração do codificador de acordo com a Modalidade 1;
[0029] a figura 7 é um diagrama que ilustra um exemplo de configuração de um decodificador de acordo com a Modalidade 1;
Petição 870190086737, de 04/09/2019, pág. 9/87
7/76 [0030] a figura 8 é um diagrama que ilustra um exemplo de configuração de quadro de um sinal modulado transmitido pelo aparelho de comunicação N° 1;
[0031] a figura 9 é um diagrama que ilustra um exemplo de configuração de um aparelho de comunicação N° 1 que tem o codificador de acordo com a Modalidade 1;
[0032] a figura 10 é um diagrama que ilustra um exemplo de configuração de aparelho de comunicação N° 2 que tem o decodificador de acordo com a Modalidade 1;
[0033] a figura 11 é um diagrama que ilustra um exemplo de configuração de um bloco de código QC-LDPC;
[0034] a figura 12 é um diagrama que ilustra um exemplo de configuração de um codificador de acordo com a Modalidade 2 da presente invenção;
[0035] a figura 13 é um diagrama que ilustra um exemplo de arranjo de bits de informação;
[0036] a figura 14 é um diagrama que ilustra a correspondência entre o comprimento de dados α e um método de redução de bits de paridade a serem transmitidos;
[0037] a figura 15 é um diagrama que ilustra um exemplo de configuração de um codificador de acordo com a Modalidade 3 da presente invenção;
[0038] a figura 16A é um diagrama que ilustra um método de comutação entre os padrões de perfuração;
[0039] a figura 16B é um outro diagrama que ilustra um método de comutação entre os padrões de perfuração;
[0040] a figura 16C é um diagrama adicional que ilustra um método de comutação entre os padrões de perfuração;
[0041] a figura 17 é um diagrama que ilustra um exemplo de arranjo de informação de controle;
Petição 870190086737, de 04/09/2019, pág. 10/87
8/76 [0042] a figura 18 é um diagrama que ilustra um exemplo de arranjo de informação de controle de acordo com a Modalidade 4 da presente invenção;
[0043] a figura 19A é um diagrama que ilustra um exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 5 da presente invenção;
[0044] a figura 19B é um diagrama que ilustra um outro exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 5;
[0045] a figura 19C é um diagrama que ilustra um exemplo adicional de aplicação de padrão de perfuração de acordo com a Modalidade 5;
[0046] a figura 20A é um diagrama que ilustra ainda um outro exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 5;
[0047] a figura 20B é um diagrama que ilustra ainda um outro exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 5;
[0048] a figura 20C é um diagrama que ilustra ainda um outro exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 5;
[0049] a figura 21 é um diagrama que ilustra um exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 6 da presente invenção;
[0050] a figura 22 é um diagrama que ilustra um outro exemplo de aplicação de padrão de perfuração de acordo com a Modalidade 6;
[0051] a figura 23 é um diagrama que ilustra um padrão de perfuração de acordo com a Modalidade 7 da presente invenção;
[0052] a figura 24 é um diagrama que ilustra uma matriz de checagem de paridade Hb de código QC-LDPC tendo uma taxa de codificação de 5/6;
Petição 870190086737, de 04/09/2019, pág. 11/87
9/76 [0053] a figura 25 é um diagrama que ilustra um exemplo de padrão de perfuração de acordo com a Modalidade 7;
[0054] a figura 26 é um diagrama que ilustra um outro exemplo de padrão de perfuração de acordo com a Modalidade 7; e [0055] a figura 27 é um diagrama que ilustra um exemplo da matriz de checagem de paridade Hb de código QC-LDPC tendo uma taxa de codificação de 1/2 e um padrão de perfuração.
Descrição de Modalidades [0056] A partir desde ponto, as modalidades da presente invenção serão descritas em detalhes, com referência aos desenhos associados.
(Modalidade 1) [0057] A figura 2 ilustra dados de entrada e de saída de um codificador usado para um aparelho de comunicação da presente invenção. O codificador 100 na figura 2 forma um código QC-LDPC (checagem de paridade de densidade baixa quase cíclica).
[0058] Na figura 2, a informação de sequência u=(x1, x2, xm) é um dado de entrada do codificador 100 e a sequência codificada s=(x1, x2, ..., xm, p1, p2, ..., pn) representa dados de saída do codificador.
[0059] A Equação 1 representa uma matriz de checagem de paridade H do código QC-LDPC (veja a Literatura de Não Patente 1, a Literatura de Não Patente 2 e a Literatura de Não Patente 3).
[1] 1 ( Po,o) 1 ( P 0,1) 1 ( P1,0) 1 ( P1,1) 1 ( P 0, L-1) 1 ( P1,L-1)
... (Equação 1) 1 ( PJ-1,0) 1 ( PJ-1,1) ” 1 ( PJ-1,L-1) [0060] Na equação 1,0<j<J-1,0<l<L-1 e a matriz de checagem de paridade H tem um comprimento de código N=pxL (p é um número natural). Mais ainda, a matriz de sub-bloco I(pj,l) é uma matriz de perPetição 870190086737, de 04/09/2019, pág. 12/87
10/76 mutação cíclica de q linhas e r colunas, em que (r=(q+pj,i) mod p(0<q<p-1)) é 1 e 0 caso contrário. pj,l é determinado como 0 ou 1 randomicamente.
[0061] O codificador 100 na figura 2 gera uma sequência codificada usando a matriz geradora G. Aqui, a matriz geradora G tem a relação da equação 2 com a matriz de checagem de paridade H.
[2] gh = 0 ... (Equação 2) [0062] A sequência codificada s pode ser representada como sT=GuT usando uma sequência de informação u e a matriz geradora G. Uma vez que o código QC-LDPC é um código sistemático, a matriz geradora G pode ser expressa conforme mostrado na equação 3.
[3]
... (Equação 3) [0063] Aqui, I é uma matriz unitária de mxm. Mais ainda, quando apenas a sequência de paridade w é extraída a partir da sequência codificada s e definida como w=(p1, p2, ..., pn), a matriz g é uma matriz (matriz geradora de paridade) para a obtenção da sequência de paridade w. A sequência geradora de paridade w satisfaz a wT=guT.
[0064] A figura 3 ilustra um exemplo de matriz geradora de paridade g do código QC-LDPC. O código QC-LDPC ilustrado na figura 3 é um código QC-LDPC tendo uma taxa de codificação (R)=1/2, comprimento de bloco de informação de código de LDPC (bits)=648, comprimento de bloco de palavra de código de LDPC (bits)=1296 descrito na Tabela 20-14 (parâmetros de LDPC) da Literatura de Não Patente 4.
[0065] A matriz geradora de paridade g ilustrada na figura 3 é constituída pela pluralidade de matrizes de sub-bloco 201, 202, ..., 211, 212, ... . Por exemplo, na matriz de sub-bloco 201 na figura 3, cada (i+1)-ésimo elemento de linha assume um valor deslocando cada
Petição 870190086737, de 04/09/2019, pág. 13/87
11/76 i-ésimo elemento de linha (i é um número natural) um bit (uma coluna) para a direita. Da mesma forma, na matriz de sub-bloco 211 na figura 3, cada (i+1)-ésimo elemento de linha assume um valor deslocando cada i-ésimo elemento de linha (i é um número natural) um bit para a direita.
[0066] Mais ainda, na matriz de sub-bloco 202 na figura 3, cada segundo elemento de linha assume um valor deslocando cada primeiro elemento de linha um bit para a direita. Da mesma forma, na matriz de sub-bloco 212 na figura 3, cada segundo elemento de linha assume um valor deslocando cada primeiro elemento de linha um bit para a direita.
[0067] Assim, as matrizes de sub-bloco 201, 202, 211, 212 podem ser ditas serem matrizes de permutação cíclica. No exemplo mostrado na figura 3, as matrizes de sub-bloco 201, 202, 211, 212 são matrizes de 27 linhas e 27 colunas.
[0068] Mais ainda, na matriz geradora de paridade g, as matrizes de sub-bloco da mesma coluna estão relacionadas a cada outra. Por exemplo, quando a matriz de sub-bloco 201 é comparada com a matriz de sub-bloco 211 da mesma coluna que aquela da matriz de sub-bloco 201, o i-ésimo elemento de linha da matriz de sub-bloco 211 é diferente do (i+1)-ésimo elemento de linha (i é um número natural) da matriz de sub-bloco 201 apenas no segundo bit.
[0069] Da mesma forma, quando a matriz de sub-bloco 202 é comparada com a matriz de sub-bloco 212 da mesma coluna que aquela da matriz de sub-bloco 202, o i-ésimo elemento de linha da matriz de sub-bloco 212 é o mesmo que o (i+1)-ésimo elemento de linha (i é um número natural) da matriz de sub-bloco 201.
[0070] Em uma vista vertical da matriz de sub-bloco de 27 linhas e colunas, por exemplo, em uma vista vertical da matriz de sub-bloco 201 e da matriz de sub-bloco 211, conforme descrito acima, embora
Petição 870190086737, de 04/09/2019, pág. 14/87
12/76 estas matrizes de sub-bloco estejam relacionadas a cada outra, as matrizes de sub-bloco nem sempre são matrizes idênticas.
[0071] Mais ainda, um recurso da matriz geradora de paridade g é que os elementos 0 são dispostos de forma consecutiva. Assim, conforme é claro a partir da figura 4 ilustrando uma matriz geradora de paridade g idêntica àquela na figura 3, é possível assegurar uma matriz 221 na qual os elementos para a constituição da matriz são todos 0’s na matriz de sub-bloco 202. A partir desde ponto, uma matriz na qual os elementos para a constituição da matriz são todos 0’s será referida como a matriz nula.
[0072] Mais ainda, é possível assegurar uma matriz nula 222 a qual começa a partir da mesma coluna que aquela da matriz nula 221 e na qual o número de colunas é da mesma magnitude que na matriz nula 221 na matriz de sub-bloco 212. Na matriz geradora de paridade g, há muitas matrizes nulas as quais começam a partir da mesma coluna que as da matriz nula 221 e em que o número de colunas é da mesma magnitude que na matriz nula 221.
[0073] Assim, a matriz geradora de paridade de código QC-LDPC inclui matrizes nulas e tem um recurso em que há muitas matrizes nulas as quais começam a partir da mesma coluna da matriz geradora de paridade.
[0074] Os presentes inventores se concentraram neste recurso de matriz geradora de paridade g de código QC-LDPC. Isto é, os presentes inventores se concentraram no fato de que quando 0’s são dispostos em outras colunas além daquelas de matrizes nulas de m linhas e n colunas como bits de informação, todos os m bits de paridade gerados se tornam 0’s. Mais ainda, os presentes inventores se concentraram no fato de que matrizes de sub-bloco tendo a mesma coluna estão relacionadas a cada outra no arranjo de elementos na matriz geradora de paridade g, e há muitas matrizes nulas que começam a partir da
Petição 870190086737, de 04/09/2019, pág. 15/87
13/76 mesma coluna na matriz geradora de paridade g de código QC-LDPC, e, portanto, pela disposição de 0’s em outras colunas além daquelas de matrizes nulas como bits de informação, muitos bits de paridade os quais se tornam todos 0’s são gerados.
[0075] Isto é, quando o número de bits de informação que precisam ser transmitidos é menor do que o comprimento de bloco do código de bloco e uma codificação é realizada assumindo-se que alguns bits de informação sejam 0’s, se os bits de informação que precisarem ser transmitidos forem dispostos na coluna de matrizes nulas (m linhas e n colunas) e 0’s forem dispostos fora das matrizes nulas (m linhas e n colunas) como bits imaginários, m bits de paridade tendo valores 0 serão gerados. Estes bits de paridade são sempre 0’s, independentemente dos bits de informação que precisam ser transmitidos.
[0076] Portanto, uma vez que o lado de recepção conhece as posições dos m bits de paridade sempre tendo valores 0 a partir das posições das matrizes nulas, o lado de recepção pode decodificar todos os dados, mesmo se o lado de transmissão não transmitir m bits de paridade sempre tendo valores 0. Mais ainda, o lado de recepção pode regular m bits de paridade sempre tendo valores 0 como bits não para transmissão pelo aparelho de transmissão, isto é, esses bits podem ser reduzidos como bits redundantes.
[0077] Isto será descrito em maiores detalhes usando-se a figura 4 de novo. A atenção será concentrada na matriz nula 221 na figura 4. A matriz nula 221 na figura 4 é uma matriz de 7 linhas e 12 colunas e os bits de informação correspondendo às colunas da matriz nula 221 são x36 a x47. Assim, quando uma codificação é realizada com bits de informação que precisam ser transmitidos dispostos em x36 a x47 e bits de informação 0 dispostos em outros além de x36 a x47, p1 a p7 são sempre 0’s independentemente dos valores de x36 a x47.
[0078] Da mesma forma, concentrando-se na matriz nula 222 cu
Petição 870190086737, de 04/09/2019, pág. 16/87
14/76 jas posições de coluna na matriz geradora de paridade g são as mesmas que aquelas da matriz nula 221, se uma codificação for realizada com bits de informação 0 dispostos em outros além de x36 a x47, p28 a p34 são sempre 0’s independentemente dos valores de x36 a x47.
[0079] Portanto, dos bits de paridade p1 a p54 gerados pela matriz geradora de paridade g, p1 a p7 e p28 a p34 sempre têm valores 0. Assim, quando o aparelho de transmissão não transmite bits de paridade p1 a p54 sempre tendo valores 0 gerados pela matriz geradora de paridade g, os bits a serem transmitidos pelo aparelho de transmissão podem ser reduzidos para x36 a x47 e p8 a p27, p35 a p54. Embora tenha sido descrito um caso acima se concentrando em p1 a p54 como um exemplo, é possível reduzir o número de bits de paridade a serem transmitidos pelo aparelho de transmissão de p55 em diante da mesma forma.
[0080] Uma vez que a matriz nula 221 na figura 4 tem 7 linhas e colunas, quando bits de informação que precisam ser transmitidos são 12 bits ou menos, os bits de informação que precisam ser transmitidos podem ser dispostos em colunas da matriz nula 221.
[0081] Quando bits de informação que precisam ser transmitidos excedem a 12 bits, bits de informação que precisam ser transmitidos podem ser adicionalmente dispostos em colunas das matrizes nulas 231 e 232 conforme mostrado, por exemplo, na figura 5. Como um recurso de uma matriz geradora de paridade de código QC-LDPC, uma vez que 0’s são dispostos consecutivamente, há muitas matrizes nulas tais como as matrizes nulas 231 e 232 na matriz geradora de paridade g além das matrizes nulas 221, 222, conforme mostrado na figura
5.
[0082] As matrizes nulas 231 e 232 são matrizes de 7 linhas e 7 colunas e mesmo quando bits de informação que precisam ser trans
Petição 870190086737, de 04/09/2019, pág. 17/87
15/76 mitidos são dispostos em x71 a x77, pl a p7 e p28 a p34 são todos 0’s. Portanto, o aparelho de transmissão não precisa transmitir p1 a p7 e p28 a p34 da mesma forma como quando as matrizes nulas 221 e 222 são usadas.
[0083] Portanto, quando as matrizes nulas 231 e 232 são usadas além das matrizes nulas 221 e 222, os bits de informação que precisam ser transmitidos podem ser dispostos em x36 a x47 e x71 a x77. Por meio disto, o número máximo de bits se torna 19 (=12+7) bits, e, se comparado com o caso em que apenas matrizes nulas 221 e 222 são usadas, é possível aumentar o número máximo de bits que podem ser dispostos como bits de informação que precisam ser transmitidos.
[0084] Da mesma forma, quando o número de bits de informação que precisam ser transmitidos excede 19 bits, as matrizes nulas incluídas em outras matrizes parciais podem ser usadas. A figura 5 ilustra uma parte de matriz geradora de paridade g de código QC-LDPC, e há 24 (=648/27) matrizes de permutação cíclica de 27 linhas e 27 colunas na matriz geradora de paridade g de QC-LDPC na direção de coluna, e, portanto, muitas matrizes nulas também são incluídas em áreas não mostradas. Por esta razão, o aparelho de transmissão pode aumentar o número máximo de bits que podem ser dispostos como bits de informação que precisam ser transmitidos nas porções de matrizes nulas usando matrizes nulas da mesma forma como aquilo descrito acima.
[0085] Assim, concentrando-se no fato de que há uma pluralidade de matrizes nulas que começam a partir da mesma coluna de matriz geradora de paridade g e que têm o mesmo número de colunas na matriz geradora de paridade g de código QC-LDPC, a presente modalidade dispõe bits de informação que precisam ser transmitidos em colunas das matrizes nulas e dispõe 0’s em outras colunas além das matrizes nulas como bits imaginários. Assim, bits de paridade tendo o
Petição 870190086737, de 04/09/2019, pág. 18/87
16/76 mesmo número de valores 0 que o número de linhas das matrizes nulas são gerados.
[0086] Neste caso, se o aparelho de transmissão e o aparelho de recepção compartilharem as posições de matrizes nulas com respeito a uma matriz geradora de paridade g, mesmo se bits de paridade correspondendo às linhas das matrizes nulas não forem realmente transmitidos, o lado de recepção realizará um processamento de decodificação assumindo que 0’s tenham sido transmitidos e, desse modo, pode decodificar os dados codificados pela matriz geradora de paridade g. Assim, o aparelho de transmissão pode reduzir o número de bits de paridade que precisam ser transmitidos e melhorar a eficiência de transmissão.
[0087] A matriz nula também pode ter 1 linha e 1 coluna. Isto é, quando há uma pluralidade de matrizes nulas de 1 linha e 1 coluna na mesma linha e e há uma linha tendo elementos 0 na mesma coluna como na pluralidade de matrizes nulas, o mesmo número de bits de paridade sempre tendo 0 as linhas tendo elementos 0 na mesma coluna são geradas.
[0088] Isto é, quando o aparelho de transmissão insere 0’s em bits de informação e gera bits de paridade usando bits de informação e 0’s e um cálculo matricial com a matriz geradora de paridade de código QC-LDPC, o aparelho de transmissão remove os bits de paridade sempre tendo valores 0 dos bits de paridade com base nas posições em que bits de informação são dispostos e na matriz geradora de paridade, extrai uma sequência de paridade após a remoção, transmite a sequência de paridade após a remoção, e, desse modo, pode reduzir o número de bits de paridade que precisam ser transmitidos e melhorar a eficiência de transmissão.
[0089] Das matrizes nulas (incluindo matrizes nulas de 1 linha e 1 coluna) que começam a partir da mesma coluna de matriz geradora de
Petição 870190086737, de 04/09/2019, pág. 19/87
17/76 paridade g e que têm o mesmo número de colunas, o aparelho de transmissão assume uma matriz tendo um número máximo de linhas como sendo a matriz nula a ser regulada, dispõe 0’s fora das colunas da matriz nula regulada, de modo a gerar o mesmo número de bits de paridade tendo valores 0 como linhas da matriz nula regulada.
[0090] Portanto, o aparelho de transmissão perfura os bits de paridade tendo valores 0 como bits a não transmitir, e, desse modo, pode melhorar a eficiência de transmissão. Neste caso, das matrizes nulas que começam a partir da mesma coluna de matriz geradora de paridade g e que têm o mesmo número de colunas, o aparelho de transmissão regula matrizes parciais que são incluídas mais na matriz geradora de paridade g como as matrizes nulas, e, desse modo, pode reduzir mais os bits de paridade.
[0091] Neste caso, o aparelho de transmissão assume o número máximo de bits que podem ser dispostos como bits de informação que precisam ser transmitidos como sendo o número de colunas das matrizes nulas. Por exemplo, para o aparelho de transmissão, quando as matrizes nulas 221, 222, são reguladas como matrizes nulas, o número máximo de bits em que bits de informação que precisam ser transmitidos podem ser dispostos é de 12 bits.
[0092] Mais ainda, para o aparelho de transmissão, quando as matrizes nulas 231 e 232 são reguladas além das matrizes nulas 221 e 222 como matrizes nulas, o número máximo de bits em que bits de informação que precisam ser transmitidos podem ser dispostos é de 19 bits. Inversamente, o aparelho de transmissão precisa apenas regular matrizes nulas de acordo com o comprimento de dados (número de bits) de bits de informação que precisam ser transmitidos. Conforme descrito acima, a matriz nula pode ter 1 linha e 1 coluna e pode não necessariamente ser consecutiva.
[0093] A figura 6 ilustra um exemplo de configuração do codifica
Petição 870190086737, de 04/09/2019, pág. 20/87
18/76 dor que realiza uma codificação usando a matriz geradora de paridade descrita acima g. O codificador 100 na figura 6 inclui a seção de regulagem de matriz nula 110, a seção de arranjo 120, a seção de codificação 130 e seção de perfuração (seção de redução de dados) 140. A partir desde ponto, será descrito um caso em que uma informação de sequência tendo um comprimento fixo de dados, tal como um cabeçalho, é introduzida no codificador 100 como um exemplo.
[0094] A seção de regulagem de matriz nula 110 regula a matriz nula que é uma matriz parcial de matriz geradora de paridade g de QC-LDPC em que todos os elementos constituintes são 0’s. Quanto ao método de regulagem da matriz nula, quando o comprimento de dados de uma informação de sequência é unicamente definido como um cabeçalho, a matriz nula tendo um número de colunas igual a ou maior do que o comprimento de cabeçalho é regulada. A partir desde ponto, será descrito um caso em que as matrizes nulas 221, 222, na figura 4 são reguladas como matrizes nulas como um exemplo. A seção de regulagem de matriz nula 110 extrai uma informação sobre as posições de matrizes nulas na matriz geradora de paridade g para a seção de arranjo 120 e a seção de perfuração (seção de redução de dados) 140.
[0095] A seção de arranjo 120 recebe uma informação de sequência tal como um cabeçalho como uma entrada, dispõe bits de informação (bits de entrada) nas colunas das matrizes nulas com base em uma informação sobre as posições de matrizes nulas reportada a partir da seção de regulagem de matriz nula 110 e dispõe 0’s nas colunas fora das matrizes nulas como bits imaginários.
[0096] Quando, por exemplo, as posições de matrizes nulas 221 e
222 são reportadas a partir da seção de regulagem de matriz nula 110, a seção de arranjo 120 dispõe bits de informação (bits de entrada) em colunas x36 a x47 da matriz nula 221 e dispõe 0’s fora de x36 a x47. A
Petição 870190086737, de 04/09/2019, pág. 21/87
19/76 seção de arranjo 120 extrai os bits arranjados para a seção de codificação 130.
[0097] A seção de codificação 130 codifica os bits extraídos a partir da seção de arranjo 120 usando uma matriz geradora de paridade g e adquire uma sequência codificada (bits de informação e bits de paridade). A seção de codificação 130 extrai a sequência codificada para a seção de perfuração (seção de redução de dados) 140.
[0098] A seção de perfuração (seção de redução de dados) 140 perfura (remove) 0's dispostos fora de x36 a x47 a partir da sequência codificada como bits a não transmitir, com base na informação sobre as posições de matrizes nulas 221 e 222 reportadas a partir da seção de regulagem de matriz nula 110.
[0099] Mais ainda, a seção de perfuração (seção de redução de dados) 140 perfura (remove) bits de paridade p1 a p7, p28 a p34, ... correspondendo às linhas de matrizes nulas 221 e 222 como bits a não transmitir a partir da sequência codificada com base na informação sobre as posições de matrizes nulas 221 e 222 reportadas a partir da seção de regulagem de matriz nula 110.
[00100] A seção de perfuração (seção de redução de dados) 140 extrai a sequência codificada, outra além dos bits perfurados (reduzidos) como bits a não transmitir a partir da sequência codificada, como bits que precisam ser transmitidos.
[00101] A figura 7 ilustra um exemplo de configuração de um decodificador que decodifica um sinal transmitido a partir do codificador descrito acima.
[00102] O decodificador 300 inclui a seção de inserção de relação de log de probabilidade fixa 310 e a seção de decodificação de BP (propagação de crença) 320.
[00103] A seção de inserção de relação de log de probabilidade fixa 310 recebe uma relação de log de probabilidade recebida calculada
Petição 870190086737, de 04/09/2019, pág. 22/87
20/76 por uma seção de cálculo de relação de log de probabilidade (número máximo) e um sinal de controle indicando uma informação sobre as posições de matrizes nulas como entradas e insere uma relação de log de probabilidade conhecida na relação de log de probabilidade recebida de acordo com as posições de matrizes nulas.
[00104] Quando, por exemplo, as matrizes nulas 221 e 222, são usadas no lado de codificação, as relações de log de probabilidade recebidas LLRx36 a LLRx47, LLRp8 a LLRp27, LLRp35 em diante correspondendo a x36 a x47 e p8 a p27, p35 em diante são introduzidas na seção de inserção de relação de log de probabilidade fixa 310. Assim, a seção de inserção de relação de log de probabilidade fixa 310 insere as relações de log de probabilidade recebidas LLRx1 a LLRx35, LLRx48 ..., LLRp1 a LLRp7, LLRp28 a LLRp34 correspondendo a x1 a x35, x48, ... .
[00105] Para ser mais específico, quando as matrizes nulas 221 e 222, ... são usadas no lado de codificação, uma vez que isto corresponde a 0’s serem transmitidos como x1 a x35, x48, ..., p1 a p7, p28 a p34, ., a seção de inserção de relação de log de probabilidade fixa 310 insere relações de log de probabilidade fixas correspondendo a bits conhecidos 0 como relações de log de probabilidade LLRx1 a LLRx35, LLRx48 ., LLRp1 a LLRp7, LLRp28 a LLRp34 . de x1 a x35, x48 . . Na figura 7, as relações de log de probabilidade recebidas circuladas por círculos de linhas tracejadas representam as relações de log de probabilidade recebidas inseridas pela seção de inserção de relação de log de probabilidade fixa 310.
[00106] A seção de inserção de relação de log de probabilidade fixa 310 extrai as relações de log de probabilidade inseridas para a seção de decodificação de BP 320.
[00107] A seção de decodificação de BP 320 realiza uma decodificação usando, por exemplo, uma decodificação de soma-produto, uma
Petição 870190086737, de 04/09/2019, pág. 23/87
21/76 decodificação de min-soma, decodificação de BP normalizada e decodificação de BP deslocada, descritas da Literatura de Não Patente 5 até a Literatura de Não Patente 7.
[00108] A partir desde ponto, a configuração do aparelho de comunicação N° 1 tendo o codificador configurado conforme descrito acima e a configuração do aparelho de comunicação N° 2 que tem o decodificador configurado conforme descrito acima e recebe um sinal transmitido a partir do aparelho de comunicação N° 1 será descrita.
[00109] A figura 8 ilustra um exemplo de configuração de quadro de um sinal modulado transmitido pelo aparelho de comunicação N° 1. Um símbolo de informação de controle é um símbolo para a transmissão de uma informação de controle sobre um esquema de modulação, um código de correção de erro usado, uma taxa de codificação, um método de transmissão, um comprimento de dados ou similar para a parte em comunicação (aparelho de comunicação N° 2). Um símbolo de informação é um símbolo para a transmissão bits de informação e bits de paridade obtidos através de uma codificação de QC-LDPC.
[00110] A figura 9 ilustra um exemplo de configuração de aparelho de comunicação N° 1. No aparelho de comunicação 400 na figura 9, a seção de codificação 410 recebe uma informação de sequência como entrada e extrai uma sequência codificada para o entrelaçador 420. A seção de codificação 410 é constituída pelo codificador 100 na figura
6.
[00111] O entrelaçador 420 recebe a sequência codificada como uma entrada, realiza um entrelaçamento e obtém dados entrelaçados. O entrelaçador 420 pode não ser sempre provido, dependendo do tipo de código.
[00112] A seção de mapeamento 430 recebe os dados entrelaçados como uma entrada, realiza uma modulação, tal como QPSK (chaveamento com deslocamento de fase em quadratura), 16QAM (modu
Petição 870190086737, de 04/09/2019, pág. 24/87
22/76 lação de amplitude em quadrature) e, desse modo, obtém um sinal de banda base.
[00113] A seção de transmissão 440 recebe o sinal de banda base como uma entrada, aplica um processamento de sinal predeterminado, tal como uma modulação em quadratura, uma conversão de frequência, desse modo obtendo um sinal modulado, e transmite o sinal modulado.
[00114] A figura 10 ilustra um exemplo de configuração de aparelho de comunicação N° 2. No aparelho de comunicação 500 na figura 10, a seção de recepção 510 recebe um sinal recebido como uma entrada, aplica uma relação de processamento predeterminada, tal como uma conversão de frequência e, desse modo, obtém um sinal de banda base. A seção de recepção 510 extrai o sinal de banda base para a seção de detecção de informação de controle 520 e a seção de cálculo de relação de log de probabilidade 530.
[00115] A seção de detecção de informação de controle 520 detecta uma informação sobre matrizes nulas, uma informação sobre padrões de entrelaçamento e uma informação sobre a taxa de codificação ou similar a partir do sinal de banda base. A seção de detecção de informação de controle 520 então extrai a informação sobre o padrão de entrelaçamento para o desentrelaçador 540 e extrai a informação sobre matrizes nulas e uma informação sobre a taxa de codificação para a seção de decodificação 550.
[00116] A seção de cálculo de relação de log de probabilidade 530 recebe o sinal de banda base como uma entrada, calcula uma relação de log de probabilidade usando, por exemplo, o método mostrado na Literatura de Não Patente 5 e obtém uma relação de log de probabilidade por bit. A seção de cálculo de relação de log de probabilidade 530 extrai a relação de log de probabilidade por bit para o desentrelaçador 540.
Petição 870190086737, de 04/09/2019, pág. 25/87
23/76 [00117] O desentrelaçador 540 recebe a relação de log de probabilidade por bit como uma entrada, aplica um processamento correspondente de desentrelaçamento para o entrelaçador 420 e, desse modo, obtém relações desentrelaçadas de log de probabilidade. Quando realiza uma decodificação de BP, mesmo quando o desentrelaçador 540 não é provido, a seção de decodificação 550 pode realizar uma decodificação pela provisão de uma matriz de checagem de paridade com um desentrelaçamento levado em consideração.
[00118] A seção de decodificação 550 é constituída pelo decodificador 300 na figura 7. A seção de decodificação 550 recebe as relações desentrelaçadas de log de probabilidade como uma entrada, realiza uma decodificação correspondente para a seção de codificação 410 e, desse modo, obtém dados recebidos.
[00119] Conforme descrito acima, na presente modalidade, a seção de regulagem de matriz nula 110 regula matrizes nulas as quais são matrizes parciais da matriz geradora de paridade g e em que todos os elementos são 0's. A seção de arranjo 120 dispõe bits de entrada nas colunas das matrizes nulas e dispõe 0's em colunas fora das matrizes nulas. A seção de codificação 130 adquire bits de paridade através de uma codificação usando a matriz geradora de paridade g. A seção de perfuração (seção de redução de dados) 140 perfura (remove) 0's dispostos nas colunas fora das matrizes nulas como bits a não transmitir, com base em uma informação sobre as posições de matrizes nulas reportada a partir da seção de regulagem de matriz nula 110, e ainda perfura (remove) bits de paridade correspondendo às linhas de matrizes nulas dos bits de paridade obtidos como bits a não transmitir.
[00120] Assim, quando da introdução de bits de informação e da geração de bits de paridade através de um cálculo matricial entre os bits de informação e uma matriz geradora de paridade, o codificador 100 dispõe os bits de informação em posições correspondentes a co
Petição 870190086737, de 04/09/2019, pág. 26/87
24/76 lunas de matrizes parciais em que todos os elementos são 0’s da matriz geradora de paridade, dispõe 0’s em posições correspondentes a colunas fora das matrizes parciais em que todos os elementos são 0’s e realiza um cálculo matricial entre os bits arranjados de informação, 0’s e a matriz geradora de paridade. Assim, o codificador 100 gera uma sequência de paridade, remove bits de paridade sempre tendo valores 0 da sequência de paridade e extrai a sequência de paridade após a remoção.
[00121] Em outras palavras, o codificador 100 insere 0’s em bits de informação, gera bits de paridade através de um cálculo matricial entre os bits de informação, 0’s e a matriz geradora de paridade de código QC-LDPC, remove bits de paridade sempre tendo valores 0 dos bits de paridade com base nas posições em que 0’s são inseridos e a matriz geradora de paridade e extrai a sequência de paridade após a remoção.
[00122] Portanto, no aparelho de transmissão 400 tendo o codificador 100, a seção de transmissão 440 transmite bits de entrada e bits de paridade outros além dos bits de paridade correspondendo às linhas de matrizes nulas, e, portanto, sem a necessidade da transmissão bits de paridade correspondendo às linhas das matrizes nulas para o lado de recepção, o lado de recepção insere relações conhecidas de log de probabilidade fixas como relações de log de probabilidade de bits de paridade correspondendo às linhas de matrizes nulas e pode realizar uma decodificação, e, desse modo, é possível reduzir o número de bits de paridade a transmitir e melhorar a eficiência de transmissão.
[00123] Os bits de informação que precisam ser transmitidos não estão limitados a um cabeçalho incluindo uma informação de controle ou similar, mas também podem ser dados de carga útil (símbolos para uma transmissão de informação) ou similares. Em resumo, a presente
Petição 870190086737, de 04/09/2019, pág. 27/87
25/76 invenção é aplicável se o número de bits de informação que precisam ser transmitidos for menor do que o número de colunas das matrizes nulas incluídas no código QC-LDPC. Quando os bits de informação que precisam ser transmitidos são um cabeçalho e o comprimento de cabeçalho é fixo, a seção de regulagem de matriz nula 110 pode regular uma matriz nula ótima de acordo com o comprimento de cabeçalho de antemão.
[00124] Por outro lado, quando os bits de informação que precisam ser transmitidos são dados de carga útil, o comprimento de dados varia, dependendo da magnitude de informação de controle ou similar. A presente invenção também é aplicável a um caso em que o comprimento de dados de bits de informação que precisam ser transmitidos varia como no caso de dados de carga útil. A Modalidade 2 a seguir descreverá um caso em que o comprimento de dados de bits de informação que precisam ser transmitidos varia.
(Modalidade 2) [00125] A presente modalidade descreverá um modo em que a presente invenção é aplicada a um caso em que o comprimento de dados de bits de informação que precisam ser transmitidos varia.
[00126] A figura 11 ilustra um exemplo de configuração de um bloco no caso em que um código de QC-LDPC é usado. O código QC-LDPC é um código de bloco, e conforme mostrado na figura 11, um bloco é constituído por bits de informação e bits de paridade. Aqui, suponha que o número de bits dos bits de informação em um bloco seja de M bits.
[00127] A figura 12 ilustra um exemplo de configuração de um codificador de acordo com a presente modalidade. No codificador de acordo com a presente modalidade na figura 12, aos mesmos componentes que aqueles na figura 6 serão atribuídos os mesmos números de referência que aqueles na figura 6, e descrições dos mesmos serão
Petição 870190086737, de 04/09/2019, pág. 28/87
26/76 omitidas. O codificador 100a na figura 12 inclui a seção de regulagem de matriz nula 110a e a seção de arranjo 120a, ao invés da seção de regulagem de matriz nula 110 e da seção de arranjo 120 do codificador 100 na figura 6. A partir desde ponto, será descrito um caso em que uma sequência de informação de N bits é introduzida no codificador 100a.
[00128] A seção de regulagem de matriz nula 110a regula a matriz nula de acordo com comprimento de dados N de bits de informação (bits de entrada) introduzidos como uma sequência de informação. Para se ser mais específico, a seção de regulagem de matriz nula 110a conta o comprimento de dados N dos bits de informação (bits de entrada) primeiramente. A seção de regulagem de matriz nula 110a divide o comprimento de dados N por um comprimento de bit de informação M por bloco do código QC-LDPC e calcula quociente β e o resto a. [00129] Como resultado da divisão, se N=kM (k é um inteiro) se mantiver, a seção de arranjo 120a precisará arranjar os bits de informação introduzidos (bits de entrada), conforme mostrado na figura 13, em uma área de bits de informação de todos os k blocos como uma sequência de informação. Isto é, em k blocos, cada bit de informação (bit de entrada) precisa ser disposto em todas as colunas de matriz geradora de paridade g do código QC-LDPC. Assim, quando N=kM (k é um número natural) se mantém, a seção de regulagem de matriz nula 110a não regula qualquer matriz nula, mas extrai um sinal de comando para a seção de arranjo 120a, de modo a dispor os bits de informação (bits de entrada) em todas as colunas de matriz geradora de paridade g.
[00130] Assim, quando, como resultado da divisão, N#kM=βM+α (k é um inteiro, a e β são números naturais) se mantém, a seção de arranjo 120a precisa dispor os bits de informação (bits de entrada) em áreas de bits de informação de β blocos, conforme mostrado na figura
Petição 870190086737, de 04/09/2019, pág. 29/87
27/76 e dispor a bits de informação (bits de entrada) em uma área de bits de informação de um bloco (bloco especial). Isto é, a seção de arranjo 120a precisa dispor os bits de informação em todas as colunas de matriz geradora de paridade g de código QC-LDPC em β blocos e dispor os bits de informação (bits de entrada) nas colunas das matrizes nulas no bloco especial conforme descrito na Modalidade 1.
[00131] Assim, quando N#kM=βM+α (k, a e β são números naturais) se mantém, a seção de regulagem de matriz nula 110a regula matrizes nulas de acordo com comprimento de dados a de bits de informação (bits de entrada) que precisam ser transmitidos no bloco especial. Neste caso, a seção de regulagem de matriz nula 110a comuta entre matrizes nulas a serem reguladas de acordo com o valor de comprimento de dados a. Para se ser mais específico, a seção de regulagem de matriz nula 110a comuta entre matrizes nulas a serem reguladas de acordo com o resultado de comparação entre o resto a e um limite predeterminado. Conforme descrito acima, no codificador 100a, o valor máximo do número de bits que podem ser dispostos como bits de informação que precisam ser transmitidos varia, dependendo das matrizes nulas.
[00132] Na figura 13, o bloco especial é disposto temporariamente por último, mas a posição de arranjo não está limitada a isto.
[00133] A partir desde ponto, uma operação de regulagem matrizes nulas de acordo com o comprimento de dados será descrita usando-se a figura 14. A figura 14 é um exemplo do caso em que a seção de regulagem de matriz nula 110a tem dois limites a1 e a2 e comuta entre matrizes nulas de acordo com o resultado de comparação entre o comprimento de dados a e os dois limites. Uma vez que o número de bits de paridade que podem ser perfurados (reduzidos) como bits a não transmitir é o mesmo que o número de linhas da matriz nula, uma comutação entre matrizes nulas especificamente significa uma comu
Petição 870190086737, de 04/09/2019, pág. 30/87
28/76 tação entre métodos de redução de bits de paridade a transmitir.
[00134] Quando 0<a<a1, os bits de paridade a transmitir são reduzidos pela matriz nula N° 1 (método de redução N° 1). Quando, por exemplo, 0<a<a1 (=12), a seção de regulagem de matriz nula 110a regula as matrizes nulas 221 e 222 como as matrizes nulas.
[00135] Quando a=10, a seção de arranjo 120a adiciona dois 0 bits a uma informação de 10 bits para a obtenção da informação de 12 bits. A seção de arranjo 120a então atribui 12 bits a x36 a x47 e atribui 0's a x1 a x35 e x48 em diante. Como resultado, os bits de paridade p1 a p7, p28 a p34, ... dos bits de paridade obtidos a partir da seção de codificação 130 são sempre 0's independentemente dos valores de x36 a x47.
[00136] Portanto, quando a seção de perfuração (seção de redução de dados) 140 perfura bits de paridade p1 a p7, p28 a p34 que são sempre 0's como bits a não transmitir, e, desse modo, pode melhorar a eficiência de transmissão sem uma deterioração das performances de decodificação.
[00137] Mais ainda, uma vez que bits conhecidos 0 são atribuídos aos bits (x1 a x35, x48 em diante) outros além de x36 a x47, a seção de perfuração (seção de redução de dados) 140 também perfura (regula como bits a não transmitir) bits outros além de x36 a x47. Adicionalmente, no caso de a=10, a seção de perfuração (seção de redução de dados) 140 perfura (regula como bits a não transmitir) os dois bits 0 atribuídos a x36 a x47 como bits a não transmitir. Isto torna possível melhorar mais a eficiência de transmissão.
[00138] Quando, por exemplo, a seção de arranjo 120a atribui 0's a x46 e x47, a seção de perfuração (seção de redução de dados) 140 perfura x46 e x47, e a sequência de transmissão, desse modo, tornase x36 a x45 com paridade p8 a p27, p35 a p54, ..., e, desse modo, é possível melhorar mais a eficiência de transmissão.
Petição 870190086737, de 04/09/2019, pág. 31/87
29/76 [00139] No caso de a1<a<a2, a matriz nula N° 2 (método de redução N° 2) reduz os bits de paridade a transmitir. Por exemplo, no caso de a1=12 e a2=19, a seção de regulagem de matriz nula 110a regula as matrizes nulas 231, 232, ... como as matrizes nulas além das matrizes nulas 221 e 222, ... .
[00140] No caso de a=15, a seção de arranjo 120a adiciona quatro 0 bits a uma informação de 15 bits para a obtenção de uma informação de 19 bits. A seção de arranjo 120a então atribui estes 19 bits a x36 a x47 e x71 a x77 e atribui 0's a x1 a x35, x48 a x71, x78 em diante. Como resultado, os bits de paridade p1 a p7, p28 a p34, ... dos bits de paridade obtidos pela seção de codificação 130 são sempre 0's independentemente dos valores de x36 a x47.
[00141] Portanto, a seção de perfuração (seção de redução de dados) 140 perfura bits de paridade p1 a p7, p28 a p34 os quais são sempre 0's como bits a não transmitir, e, desse modo, pode melhorar a eficiência de transmissão sem uma deterioração das performances de decodificação.
[00142] Mais ainda, uma vez que bits conhecidos 0 são atribuídos a bits (x1 a x35, x48 a x71, x78 em diante) outros além de x36 a x47, x71 a x77, a seção de perfuração (seção de redução de dados) 140 regula bits outros além de x36 a x47, x71 a x77 as bits a serem perfurados (bits a não transmitir). Adicionalmente, no caso de a=15, a seção de perfuração (seção de redução de dados) 140 perfura quatro 0 bits atribuídos a x36 a x47, x71 a x77 como bits a não transmitir (regula-os como bits a não transmitir).
[00143] Isto permite ao aparelho de transmissão melhorar mais a eficiência de transmissão. Quando, por exemplo, a seção de arranjo 120a atribui 0's a x74 a x77, a seção de perfuração (seção de redução de dados) 140 perfura x74 a x77, a sequência de transmissão, desse modo, torna-se x36 a x45, x71 a x73, p8 a p27, p35 a p54, ... e o apa
Petição 870190086737, de 04/09/2019, pág. 32/87
30/76 relho de transmissão desse modo pode melhorar mais a eficiência de transmissão.
[00144] No exemplo mostrado na figura 14, no caso de a2<a<M-1, nenhuma matriz nula é regulada e os bits de paridade não são reduzidos. Isto é, quando o resto α resultante da divisão do comprimento de dados N de bits de informação (bits de entrada) pelo comprimento de bloco M é igual a ou está acima de um limite predeterminado, α bits de informação (bits de entrada) e (M-α) 0’s como bits imaginários são dispostos em colunas de matriz geradora de paridade g.
[00145] Por meio disto, a seção de regulagem de matriz nula 110a regula as matrizes nulas de acordo com comprimento de dados α de bits de informação (bits de entrada) que precisam ser transmitidos em um bloco especial. A seção de regulagem de matriz nula 110a então reporta uma informação sobre as posições de matrizes nulas na matriz geradora de paridade g para a seção de arranjo 120a e seção de perfuração (seção de redução de dados) 140.
[00146] No caso de a2<a<M-1, a seção de regulagem de matriz nula 110a não regula nenhuma matriz nula e não reduz nenhum bit de paridade. Assim, no caso de a2<a<M-1, a seção de regulagem de matriz nula 110a reporta à seção de perfuração (seção de redução de dados) 140 para não perfurar bits de paridade.
[00147] Conforme descrito acima, na presente modalidade, a seção de regulagem de matriz nula 110a regula as matrizes nulas as quais são matrizes parciais de matriz geradora de paridade g e nas quais todos os elementos são 0’s de acordo com comprimento de dados N de bits de informação (bits de entrada). Ao fazê-lo, o aparelho de transmissão pode reduzir o número de bits de paridade que precisam ser transmitidos e de forma confiável transmitir bits de informação (bits de entrada).
[00148] A figura 14 ilustra um exemplo em que o método de redu
Petição 870190086737, de 04/09/2019, pág. 33/87
31/76 ção de bits de paridade é categorizado segundo um de três casos, de acordo com o valor do resto a, mas o número de casos não está limitado a 3. Por exemplo, a seção de regulagem de matriz nula 110a pode ser provida com outros limites, de modo que o método seja categorizado em Z casos.
[00149] Mais ainda, quando da implementação da presente modalidade, o aparelho de recepção provido com o decodificador precisa conhecer o valor do resto a. Um método simples de realização disto pode ser fazer com que o aparelho de transmissão provido com o codificador reporte uma informação sobre o número de bits de dados a transmitir para o aparelho de recepção primeiramente. Neste caso, o aparelho de recepção precisa ser provido com uma seção de cálculo para o cálculo de a.
(Modalidade 3) [00150] A presente modalidade descreverá um método de perfuração de um código de QC-LDPC.
[00151] A figura 15 ilustra um exemplo de configuração de um codificador de acordo com a presente modalidade. O codificador 600 na figura 15 é provido com a seção de codificação 610, a seção de regulagem de padrão de perfuração 620 e a seção de perfuração (seção de redução de dados) 630.
[00152] A seção de codificação 610 realiza uma codificação em uma informação de sequência usando uma matriz geradora de paridade g de código QC-LDPC.
[00153] A seção de regulagem de padrão de perfuração 620 busca e regula um padrão de perfuração tirando vantagem do fato de que a matriz de checagem de paridade H de código QC-LDPC é configurada usando-se uma matriz de sub-bloco como uma unidade básica. O método de busca de um padrão de perfuração será descrito mais tarde. A seção de regulagem de padrão de perfuração 620 extrai a informação
Petição 870190086737, de 04/09/2019, pág. 34/87
32/76 do padrão de perfuração para a seção de perfuração (seção de redução de dados) 630.
[00154] A seção de perfuração (seção de redução de dados) 630 perfura (regula como bits a não transmitir) bits de informação ou bits de paridade como bits a não transmitir da sequência codificada extraída a partir da seção de codificação 610 de acordo com o padrão de perfuração reportado a partir da seção de regulagem de padrão de perfuração 620.
[00155] Em seguida, o método de busca de um padrão de perfuração regulado pela seção de regulagem de padrão de perfuração 620 será descrito. Um padrão de perfuração é buscado tirando-se vantagem do fato de que a matriz de checagem de paridade H de código QC-LDPC é configurada se usando uma matriz de sub-bloco como uma unidade básica.
[00156] Quando da busca por um padrão de perfuração, a seção de regulagem de padrão de perfuração 620 determina o ciclo do padrão de perfuração primeiramente. Quando, por exemplo, K bits a partir do 20° bit são selecionados como bits a não transmitir (bits de perfuração), o ciclo do padrão de perfuração é de 20 bits. Neste caso, suponha que o número de bits a não transmitir (bits de perfuração) incluídos em 20 bits do ciclo do padrão de perfuração seja K e sempre constante.
[00157] A presente invenção assume que o ciclo do padrão de perfuração é um inteiro múltiplo do número de colunas L ou um divisor do número de colunas L da matriz de sub-bloco I(pj,l) (matriz de permutação cíclica de q linhas e r colunas em que (r=(q+pj,l)mod p(0<q<p-1) é 1 e 0 caso contrário) o que é uma unidade básica da matriz de checagem de paridade de código QC-LDPC (veja a equação 1).
[00158] Por exemplo, uma vez que a matriz de sub-bloco na matriz de checagem de paridade de código QC-LDPC mostrada na figura 3 é
Petição 870190086737, de 04/09/2019, pág. 35/87
33/76 uma matriz de 27 linhas e 27 colunas (L=27), é proposto regular um inteiro múltiplo de 27 ou um divisor de 27 como o ciclo do padrão de perfuração e regular K bits a não transmitir (bits de perfuração).
[00159] Geralmente, quanto maior o comprimento de bloco, melhores performances de recepção são obtidas com um código de bloco. Contudo, quando o comprimento de bloco é grande, é difícil buscar um melhor padrão de perfuração em unidades de comprimento de bloco. Assim, quando o comprimento de bloco é grande, um esquema de seleção randomicamente de um bit de perfuração pode ser adotado. Contudo, neste caso, há uma possibilidade de a qualidade de recepção poder se deteriorar significativamente durante uma perfuração.
[00160] Em contraste, concentrando-se na regularidade com a matriz de sub-bloco que constitui a matriz de checagem de paridade H de código QC-LDPC, quando a seção de regulagem de padrão de perfuração 620 busca padrões de perfuração todo inteiro múltiplo do número de colunas ou todo divisor do número de colunas das matrizes de sub-bloco, é possível de forma confiável encontrar um padrão de perfuração no qual as performances se tornam melhores em um tempo relativamente curto.
[00161] Como um método mais específico de busca de um padrão de perfuração, por exemplo, uma SNR predeterminada (relação de potência de sinal para ruído) pode ser regulada, uma taxa de erro pode ser calculada para todo padrão de perfuração e um padrão de perfuração em que a taxa de erro diminui pode ser determinado.
[00162] O aparelho de transmissão perfura uma sequência codificada usando o padrão de perfuração buscado desta forma, e, desse modo, pode melhorar a eficiência de transmissão enquanto se mantém boa a qualidade de recepção. Isto é, o que é importante na configuração na figura 15 é que a seção de perfuração (seção de redução de dados) 630 perfura uma sequência codificada usando um inteiro múlti
Petição 870190086737, de 04/09/2019, pág. 36/87
34/76 plo do número de colunas ou um divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade H de código QC-LDPC como uma unidade.
[00163] Será descrito um caso como um exemplo em que a seção de perfuração (seção de redução de dados) 630 assume o ciclo do padrão de perfuração como o número de colunas L da matriz de subbloco e regula o número de bits a não transmitir (bits de perfuração) para um número constante K para todo número de colunas L da matriz de sub-bloco. Neste caso, a seção de perfuração (seção de redução de dados) 630 comuta entre padrões de perfuração todo inteiro múltiplo do número de colunas da matriz de sub-bloco constituindo a matriz de checagem de paridade H de código QC-LDPC.
[00164] O método de comutação entre os padrões de perfuração será descrito mais especificamente se usando da figura 16A à figura 16C.
[00165] A figura 16A ilustra uma situação em que um padrão de perfuração é comutado a todo número de colunas (uma vez o número de colunas) da matriz de sub-bloco para a matriz de checagem de paridade H na figura 3. Uma vez que a matriz de checagem de paridade H na figura 3 é constituída pelas matrizes de sub-bloco de 27 colunas, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 0 para x1 a x27. Mais ainda, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 1 para x28 a x54. Mais ainda, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 23 para p622 a p648.
[00166] A figura 16B ilustra uma situação em que um padrão de perfuração é comutado a cada duas vezes o número de colunas da
Petição 870190086737, de 04/09/2019, pág. 37/87
35/76 matriz de sub-bloco para a matriz de checagem de paridade H na figura 3. Uma vez que a matriz de checagem de paridade H na figura 3 é constituída pela matriz de sub-bloco de 27 colunas, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 0 para x1 a x27, x28 a x54.
[00167] Mais ainda, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 1 para x55 a x81, x82 a x108. Mais ainda, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 2 para x109 a x135, x136 a x162.
[00168] A figura 16C ilustra uma situação em que um padrão de perfuração é comutado para cada 9 colunas com base em um ciclo de base de 9 colunas, o que é um divisor do número de colunas da matriz de sub-bloco para a matriz de checagem de paridade H na figura 3. Para se ser mais específico, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 0 para x1 a x9.
[00169] A seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 1 para x10 a x18. A seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 2 para x19 a x27.
[00170] Da mesma forma, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 3 para x28 a x36. A seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 4 para x37 a x45. A seção de perfuração (seção de redução de dados) 630
Petição 870190086737, de 04/09/2019, pág. 38/87
36/76 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 5 para x46 a x54.
[00171] Da mesma forma, a seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 69 para x622 a x630. A seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 70 para x631 a x639. A seção de perfuração (seção de redução de dados) 630 seleciona K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° 71 para x640 a x648.
[00172] A seção de perfuração (seção de redução de dados) 630 define o padrão de perfuração N° S0 constituído pelos padrões de perfuração N° 0 a N° 2 seleciona 3K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° S0 para x1 a x27. Da mesma forma, a seção de perfuração (seção de redução de dados) 630 também pode definir um padrão de perfuração N° S1 constituído pelos padrões de perfuração N° 3 a N° 5 e selecionar 3K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° S1 para x28 a x54.
[00173] Da mesma forma, a seção de perfuração (seção de redução de dados) 630 também pode definir o padrão de perfuração N° S23 constituído pelos padrões de perfuração N° 69 a N° 71 e selecionar 3K bits a não transmitir (bits de perfuração) usando o padrão de perfuração N° S23 para x622 a x648.
[00174] Isto é, a realização de uma perfuração pelo uso de um divisor do número de colunas da matriz de sub-bloco como o ciclo de base é equivalente à realização de uma perfuração usando o número de colunas da matriz de sub-bloco constituindo a matriz de checagem de paridade H de código QC-LDPC como uma unidade (ciclo).
[00175] Conforme descrito até agora, na presente modalidade, a
Petição 870190086737, de 04/09/2019, pág. 39/87
37/76 seção de regulagem de padrão de perfuração 620 busca um padrão de perfuração para todo inteiro múltiplo do número de colunas ou todo divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade H de código QC-LDPC e a seção de perfuração (seção de redução de dados) 630 comuta entre padrões de perfuração para todo inteiro múltiplo do número de colunas ou todo divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC. Isto torna possível buscar um padrão de perfuração por meio do que uma boa qualidade de recepção é obtida em um tempo relativamente curto e de forma confiável, e melhorar a eficiência de transmissão enquanto se mantém uma boa qualidade de recepção.
[00176] Foi descrito acima um caso em que um padrão de perfuração é comutado a todo inteiro múltiplo do número de colunas ou a todo divisor do número de colunas de matrizes de sub-bloco constituindo uma matriz de checagem de paridade de código QC-LDPC, mas o padrão de perfuração não precisa ser sempre comutado.
[00177] Por exemplo, na figura 16A, o padrão de perfuração N° 0, o padrão de perfuração N° 1, o padrão de perfuração N° 23 podem ser padrões de perfuração idênticos. Mais ainda, na figura 16B, o padrão de perfuração N° 0, o padrão de perfuração N° 1, o padrão de perfuração N° 2, podem ser padrões de perfuração idênticos.
[00178] Mais ainda, na figura 16C, o padrão de perfuração N° 0, o padrão de perfuração N° 1, ..., o padrão de perfuração N° 71 podem ser padrões de perfuração idênticos. Em resumo, a unidade de padrões de perfuração precisa apenas ser um inteiro múltiplo do número de colunas ou um divisor do número de colunas de matrizes de sub-bloco constituindo uma matriz de checagem de paridade de código QC-LDPC.
(Modalidade 4)
Petição 870190086737, de 04/09/2019, pág. 40/87
38/76 [00179] A presente modalidade descreverá um exemplo de método de codificação quando o método de codificação descrito na Modalidade 1 e Modalidade 2 for usado para uma informação de controle.
[00180] A partir desde ponto, será descrito um caso em que uma informação de controle de 200 bits é codificada usando-se a código de QC-LDPC de taxa de codificação (R)=1/2, comprimento de bloco de informação de código de LDPC (bits)=168, comprimento de bloco de palavra de código de LDPC (bits)=336 como um exemplo.
[00181] A figura 17 ilustra um caso em que a informação de controle de 200 bits é dividida em 168 bits e 32 bits, 168 bits são dispostos no bloco N° 1 e 32 bits são dispostos no bloco N° 2. Na figura 17, apenas 32 bits de informação de controle são dispostos no bloco N° 2 em contraste com o comprimento de bloco de 168 bits.
[00182] A partir desde ponto, um bloco tal como o bloco N° 2, cujos bits precisam ser transmitidos, é mais curto do que o comprimento de bloco e é o bloco especial descrito na Modalidade 2. Assim, como com a Modalidade 2, no bloco N° 2, 0's são dispostos e codificados como bits de informação como bits imaginários. Como resultado, há uma variação na qualidade de recepção entre o bloco N° 1 e o bloco N° 2, e a qualidade de recepção de informação de controle de 200 bits eventualmente depende dos blocos tendo uma qualidade ruim de recepção.
[00183] Assim, conforme mostrado na figura 18, a presente modalidade dispõe a informação de controle de 200 bits em dois blocos N° 1 e N° 2 tão uniformemente quanto possível e realiza a codificação descrita na Modalidade 1 on cada block. Para se ser mais específico, quando a informação de controle tem 200 bits, a informação de controle é disposta no bloco N° 1 e no bloco N° 2, 100 bits cada.
[00184] Isto faz com que o bloco N° 1 e o bloco N° 2 se tornem blocos especiais, e, portanto, 0's são dispostos no bloco N° 1 e no bloco N° 2 como bits de informação como bits imaginários e codificados
Petição 870190086737, de 04/09/2019, pág. 41/87
39/76 usando-se o método de codificação de acordo com a Modalidade 1. Isto torna a qualidade de recepção uniforme no bloco N° 1 e no bloco N° 2 e permite que sinais sejam transmitidos corretamente para a parte em comunicação.
[00185] Quando a informação de controle tem 201 bits, 101 bits de informação de controle são dispostos no bloco N° 1 e 100 bits de informação de controle são dispostos no bloco N° 2. Neste caso, a diferença entre o número de bits de informação de controle no bloco N° 1 e o número de bits de informação de controle no bloco N° 2 é de um bit no máximo. Assim, o aparelho de transmissão dispõe uma informação que precisa ser transmitida em dois blocos tão uniformemente quanto possível, e desse modo pode tornar a qualidade de recepção uniforme entre os blocos, e desejavelmente modo pode transmitir de forma confiável a informação de controle para a parte em comunicação.
[00186] Conforme descrito até agora, a presente modalidade dispõe a informação de controle em uma pluralidade de blocos tão uniformemente quanto possível. Assim, o aparelho de transmissão aplica o método de codificação descrito na Modalidade 1 a cada bloco após o arranjo, e pode transmitir desse modo de forma confiável uma informação necessária para o estabelecimento de uma comunicação, tal como uma informação de controle para a parte em comunicação.
[00187] O método de geração de um bloco especial de acordo com a presente modalidade é o mesmo que o método de geração de um bloco especial descrito na Modalidade 2. Isto é, o aparelho de transmissão regula (regula como bits de perfuração) os bits de informação e os bits de paridade que não precisam ser transmitidos como bits a não transmitir.
(Modalidade 5) [00188] A presente modalidade mostrará um exemplo de código QCLDPC e descreverá um padrão ótimo de perfuração para o código QCPetição 870190086737, de 04/09/2019, pág. 42/87
40/76
LDPC.
[00189] A matriz de checagem de paridade H de código QC-LDPC é definida conforme mostrado na equação 4.
[4]
P0,0 P0,1 P0,2 P 1 0,nb-2 P ’ n-1
P1,0 P1,1 P1,2 · Pn-2 P . -1
H = P 1 2,0 P2,1 P 2,2 · P n-2 P2,„b-1 _ PHb .. (Equação 4)
P J mb-1,0 P m-1,1 Pmb -1,2 · P mb-1,nb-2 P mb -1,nb-1 _
[00190] A matriz de checagem de paridade H na equação 4 é uma matriz de m linhas e n colunas. Aqui, n denota um comprimento de código e m denota o número de bits de paridade. Portanto, o número de bits sistemáticos k é k=n-m. Mais ainda, Pi,j na equação 4 é uma matriz de permutação cíclica de z linhas e z colunas ou a matriz nula de z linhas e z colunas.
[00191] Aqui, a matriz de checagem de paridade H na equação 4 é expandida com a matriz Hb de nb linhas e mb colunas. Aqui, as relações m=zxmb e n=zxnb se mantêm. Mais ainda, suponha que cada elemento de matriz Hb seja 1 quando cada elemento de Pi,j seja 1 e 0 quando cada elemento de Pi,j for 0.
[00192] Aqui, como uma matriz de permutação cíclica, Pi,j é uma matriz unitária de z linhas e z colunas ou um conjunto de matrizes deslocando ciclicamente uma matriz unitária de z linhas e z colunas. Uma vez que a matriz de permutação cíclica é uma matriz unitária ou um conjunto de matrizes deslocando ciclicamente uma matriz unitária, quando a matriz Hb é dividida na matriz Hbm tendo a mesma magnitude que a matriz Hb, a matriz Hbm é representada pelas matrizes nulas ou matrizes deslocando ciclicamente uma matriz unitária.
[00193] A partir desde ponto, a matriz nula na matriz Hbm será representada como -1. Mais ainda, suponha que a matriz unitária seja representada como 0. Mais ainda, a matriz de permutação cíclica da
Petição 870190086737, de 04/09/2019, pág. 43/87
41/76 matriz unitária é representada como p(i,j) usando uma quantidade de deslocamento cíclico da mesma p(i,j) (>0). A matriz Hb pode ser representada como um conjunto dessas matrizes representadas de forma compacta Hbm.
[00194] Aqui, conforme mostrado na equação 5, a matriz Hb pode ser dividida em duas submatrizes Hb1 e Hb2. A submatriz Hb1 é uma matriz parcial relacionada a bits de informação e a submatriz Hb2 é uma matriz parcial relacionada a bits de paridade.
[5]
Hb = [(Hw)mbM | (Hb2)mbxmb]= 0 ... (Equação 5) [00195] Conforme mostrado na equação 6, a submatriz Hb2 é adicionalmente dividida no vetor hb e na submatriz H’b2.
[6]
Hb 2 = \hb\H'b 2 ] = hb (0) hb (1) |1 |1
I
I
I hb (mb -1)1 . (Equação 6) [00196] Na equação 6, a submatriz H'b2 é uma matriz em que por ções da iésima linha e j-ésima coluna (i=j e i=j+1) são 1 e as outras porções são 0. Na submatriz H'b2, porções representadas como 1 indicam que a quantidade de deslocamento das matrizes unitárias é 0. Isto é, a submatriz H'b2 é substituída por matrizes unitárias de z linhas e z colunas quando expandida para a matriz Hb.
[00197] Mais ainda, suponha que a mesma quantidade de deslo camento cíclico seja atribuída ao topo (hb(0)) e ao fundo (hb(mb-1)) de vetor hb.
[00198] A partir desde ponto, a matriz Hb definida pela equação 7 será considerada. A matriz de checagem de paridade H definida pela equação 7 pode corresponder a um comprimento de código em cada
Petição 870190086737, de 04/09/2019, pág. 44/87
42I7Q taxa de codificação.
[7] , P(j,j)^O zf
Ρ^ίϊ — ’ ·Ρ(ζ’»>θ ... (Equação 7) [00199] em que representa a porção inteira de — .
[00200] Na equação 7, p(f,i,j) denota a quantidade de deslocamento cíclico da matriz unitária, f denota um índice de comprimento de código correspondendo a cada taxa de codificação. Mais ainda, Zf é denominado fator de expansão e tem a relação de Zf=k/n.
[00201] A Equação 8 expressa a matriz Hb de taxa de codificação 1/2(=k/n) com base na equação 7.
[8]
-1 94 73 -1 -1 -1 -1 -1 55 S3 -1-1 7 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 27 -1 -1 -1 22 79 9 -1 -1 -1 12-1 0 Ü -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 24 22 SI -1 33 -1 -1 -1 O-l-l 0 0 -1 -1 -1 -1 -1 -1 -1 -1 61 -1 47 -1 -1 -1 -1 -1 É5 25 -1 -1 -1 -1-1 0 O -1 -1 -1 -1 -1 -1 -1 -1 -1 39 -1 -1 -1 04 -1 -1 41 72 -1 -1 -1 -1-1 O 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4€ 40 -1 82 -1 -1 -1 79 O -1 -1 -1-1 0 0 -1 -1 -1 -1 -1 -1 -1 95 53 -1 -1 -1 -1 -1 14 18 -1 -1 -1 -1 -1 -1-1 0 0 -1 -1 -1 -1 -1 11 73 -1 -1 -1 2 -1 -1 47 -1 -1 -1 -1 -1 -1 -1 -1-1 0 O -1 -1 -1 12 -1 -1 -1 S3 24 -1 43 -1 -1 -1 51 -1 -1 -1 -1 -1 -1 -1-1 0 0 -1 -1 -1 -1 -1 -1 -1 94 -1 59 -1 -1 70 72 -1 -1 -1 -1 -1 -1 -1 -1-1 0 0 -1 -1 -1 7 É5 -1 -1 -1 -1 39 49 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1-1 0 0
-1 -1 -1 -1 66 -1 41 -1 -1 -1 26 7 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0
... (Equação 8) [00202] Na equação 8, 0 representa uma matriz unitária. Por outro lado, -1 representa a matriz nula. Mais ainda, 94 na primeira linha e na segunda coluna representa uma matriz deslocando ciclicamente a matriz unitária em 94. Da mesma forma, 61 na quarta linha e na primeira coluna representa uma matriz deslocando ciclicamente a matriz unitária em 61.
[00203] Mais ainda, a equação 9 expressa a matriz Hb de taxa de codificação 5/6(=k/n) com base na equação 7.
[9]
Petição 870190086737, de 04/09/2019, pág. 45/87
43/76
25 55 -1 47 4 -1 31 34 3 86 52 32 33 5 Ο 36 20 4 77 80 Ο -1-1
-1 6 -1 36 40 47 12 79 47 -1 41 21 12 71 14 72 Ο 44 43 ϋ Ο Ο Ο-1
81 83 4 67 -1 21 -1 31 24 91 61 81 3 86 78 É0 88 67 15 -1-1 Ο0
-1 50 15 -1 36 13 10 11 20 53 90 29 92 57 30 84 92 11 66 80 -1 -1Ο
... (Equação 9) [00204] Um exemplo de matriz Hb de código QC-LDPC de taxas de codificação 1/2 e 5/6 foi mostrado acima. A partir desde ponto, um padrão de perfuração aplicável à matriz Hb de código QC-LDPC será descrito.
[00205] A figura 19A ilustra a matriz Hb de código QC-LDPC de taxa de codificação 1/2 mostrada na equação 8. Conforme mostrado na figura 19A, na matriz Hb de taxa de codificação 1/2, uma vez que a matriz parcial Hb1 relacionada a bits de informação tem 12 linhas, a matriz parcial Hb2 relacionada a bits de paridade tem 12 colunas.
[00206] A matriz parcial Hb2 relacionada a bits de paridade na figura 19A é constituída por -1 e 0 exceto pela primeira linha, primeira coluna e 12a linha, primeira coluna e tem um arranjo regular. Conforme descrito acima, -1 representa a matriz nula e 0 representa uma matriz unitária. Mais ainda, 7 na primeira linha, primeira coluna e 12a linha, primeira coluna é uma matriz de permutação cíclica deslocando ciclicamente a matriz unitária em 7.
[00207] Neste caso, porções constituídas por matrizes unitárias e matrizes nulas em colunas da matriz parcial Hb2 relacionada a bits de paridade têm um pequeno efeito sobre a qualidade de recepção, mesmo se o mesmo padrão de perfuração for usado. Portanto, é possível obter boas características de recepção a partir das porções constituídas por matrizes unitárias e matrizes nulas, mesmo se o mesmo padrão de perfuração N° A for usado (veja a figura 19A). Suponha que diferentes padrões de perfuração sejam regulados para porções não correspondentes às porções constituídas por matrizes unitárias e matrizes nulas. Contudo, alguns ou todos os padrões de perfuração podem ser o mesmo padrão de perfuração.
Petição 870190086737, de 04/09/2019, pág. 46/87
44/76 [00208] Mais ainda, a sequência codificada também pode ser combinada o método de perfuração descrito na Modalidade 3. Isto é, é mais efetivo se a sequência codificada for perfurada se usando um inteiro múltiplo do número de colunas ou um divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade H de código QC-LDPC como uma unidade. A figura 19B e figura 19C ilustram exemplos em que a matriz parcial Hb2 relacionada a bits de paridade é perfurada se usando um inteiro múltiplo do número de colunas ou um divisor do número de colunas de matrizes de subbloco constituindo a matriz de checagem de paridade H de código QCLDPC como a unidade.
[00209] A figura 19B ilustra um outro exemplo de aplicação de matriz Hb de código QC-LDPC de taxa de codificação 1/2 mostrada na equação 8 e padrões de perfuração. A figura 19B é um exemplo do caso em que o ciclo de padrão de perfuração é regulado para um inteiro múltiplo (duas vezes) do número de colunas de matrizes de subbloco constituindo a matriz de checagem de paridade de código QCLDPC. A figura 19B é um exemplo em que o mesmo padrão de perfuração N° B é usado para porções constituídas por matrizes unitárias e matrizes nulas.
[00210] Mais ainda, a figura 19C ilustra um exemplo adicional de aplicação de matriz Hb de código QC-LDPC de taxa de codificação 1/2 mostrada na equação 8 e padrões de perfuração. A figura 19C é um exemplo em que um padrão de perfuração é gerado para todo 1/2 do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC. A figura 19C é um exemplo do caso em que o mesmo padrão de perfuração é usado para porções constituídas por matrizes unitárias e matrizes nulas.
[00211] Para se ser mais específico, a figura 19C ilustra uma situação em que um padrão de perfuração é comutado para cada 50 colu
Petição 870190086737, de 04/09/2019, pág. 47/87
45/76 nas para uma matriz de checagem de paridade H constituída por matrizes de sub-bloco de 100 linhas e 100 colunas com base em um ciclo de base de 50 colunas, o que é um divisor de metade do número de colunas da matriz de sub-bloco.
[00212] Para se ser mais específico, a seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p100 a p149 usando o padrão de perfuração N° 1. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p150 a p199 usando o padrão de perfuração N° 2. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p200 a p249 usando o padrão de perfuração N° 3.
[00213] A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p250 a p299 usando o padrão de perfuração N° 4. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p1100 a p1149 usando o padrão de perfuração N° 21. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p1150 a p1199 usando o padrão de perfuração N° 22.
[00214] A figura 20A ilustra a matriz Hb de código QC-LDPC de taxa de codificação 5/6 mostrado na equação 9. Conforme mostrado na figura 20A, uma vez que a matriz de checagem de paridade Hb de taxa de codificação 5/6 tem a matriz parcial Hb1 de 4 linhas relacionada a bits de informação, a matriz parcial Hb2 relacionada a bits de paridade tem 4 colunas.
[00215] A matriz parcial Hb2 relacionada a bits de paridade na figura 20A é constituída por -1 e 0 exceto pela primeira linha, primeira coluna e a quarta linha, primeira coluna, e tem um arranjo regular. Mais ainda, 80 na primeira linha, primeira coluna e na quarta linha,
Petição 870190086737, de 04/09/2019, pág. 48/87
46/76 primeira coluna é uma matriz de permutação cíclica deslocando ciclicamente a matriz unitária em 80.
[00216] Assim, no caso de taxa de codificação 5/6, mesmo quando o mesmo padrão de perfuração é usado para porções constituídas por matrizes unitárias e matrizes nulas nas colunas da matriz parcial Hb2 relacionada a bits de paridade, as influências sobre a qualidade de recepção são pequenas. Assim, o aparelho de recepção pode obter boas características de recepção para colunas das porções constituídas por matrizes unitárias e matrizes nulas usando também o mesmo padrão de perfuração N° A (veja a figura 20A). As colunas não relacionadas às porções constituídas por matrizes unitárias e matrizes nulas podem ser reguladas para diferentes padrões de perfuração, mas também podem ser reguladas para padrões de perfuração parcialmente idênticos.
[00217] A figura 20B ilustra um outro exemplo de aplicação de matriz Hb de QC-LDPC de taxa de codificação 5/6 mostrada na equação 9 e padrões de perfuração. A figura 20B é um exemplo em que o ciclo de padrão de perfuração é regulado para um inteiro múltiplo (3 vezes) do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC.
[00218] Mais ainda, a figura 20C ilustra um exemplo adicional de aplicação de matriz Hb de código QC-LDPC de taxa de codificação 5/6 mostrado na equação 9 e padrões de perfuração. A figura 20C é um exemplo do caso em que um padrão de perfuração é gerado para cada 1/2 do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC. Como com a figura 20B, a figura 20C é um exemplo em que o mesmo padrão de perfuração é usado para porções constituídas por matrizes unitárias e matrizes nulas.
[00219] Para se ser mais específico, a figura 20C ilustra uma situa
Petição 870190086737, de 04/09/2019, pág. 49/87
47/76 ção em que um padrão de perfuração é comutado para cada 50 colunas para a matriz de checagem de paridade H constituída por matrizes de sub-bloco de 100 linhas e 100 colunas com base em um ciclo de base de 50 colunas, o que é um divisor à metade do número de colunas da matriz de sub-bloco.
[00220] Para se ser mais específico, a seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p100 a p149 usando o padrão de perfuração N° 1. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p150 a p199 usando o padrão de perfuração N° 2. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p200 a p249 usando o padrão de perfuração N° 3.
[00221] A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p250 a p299 usando o padrão de perfuração N° 4. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p300 a p349 usando o padrão de perfuração N° 5. A seção de perfuração (seção de redução de dados) 630 seleciona bits a não transmitir (bits de perfuração) para p350 a p399 usando o padrão de perfuração N° 6.
[00222] Assim, as porções constituídas por matrizes unitárias e matrizes nulas das colunas na matriz parcial Hb2 relacionada a bits de paridade são reguladas para o mesmo padrão de perfuração e as colunas não relacionadas às porções constituídas por matrizes unitárias e matrizes nulas são reguladas diferentes padrões de perfuração.
[00223] Um padrão de perfuração também pode ser comutado para as colunas não relacionadas às porções constituídas por matrizes unitárias e matrizes nulas para todo inteiro múltiplo do número de colunas ou todo divisor do número de colunas de matrizes de sub-bloco consti
Petição 870190086737, de 04/09/2019, pág. 50/87
48/76 tuindo a matriz de checagem de paridade de código QC-LDPC conforme descrito, por exemplo, na Modalidade 3.
[00224] Mais ainda, o mesmo padrão de perfuração cujo comprimento de padrão corresponde a todo inteiro múltiplo do número de colunas ou todo divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC pode ser aplicado às colunas não relacionadas às porções constituídas por matrizes unitárias e matrizes nulas.
(Modalidade 6) [00225] Será descrito um exemplo em que o código QC-LDPC descrito na Modalidade 5 é usado, uma perfuração é realizada se usando um inteiro múltiplo do número de colunas ou um divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC descrito na Modalidade 4 como uma unidade e o mesmo padrão de perfuração é usado para todos.
[00226] A Modalidade 6 descreverá um padrão de perfuração para a realização de uma taxa de codificação de aproximadamente 0,65 através de uma perfuração a partir de um código de QC-LDPC tendo a matriz de checagem de paridade de equação 8 de taxa de codificação 1/2. Contudo, suponha que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 350 linhas e 350 colunas. Portanto, o comprimento de bloco de informação (bits) de código QC-LDPC é de 4200 e o comprimento de bloco de palavra de código de LDPC (bits) é de 8400.
[00227] Neste caso, uma palavra de código do código de LDPC é expressa conforme se segue:
v=[x0, x1, ..., x4198, x4199, p0, p1, ..., p4198, p4199] =[s0, s1, s2, ..., s8397, s8398, s8399] =[v0, v1, v2, ..., v167] [00228] em que v denota uma palavra de código, x denota informa
Petição 870190086737, de 04/09/2019, pág. 51/87
49/76 ção e p denota paridade.
v0, v1, vi..., v167 podem ser expressos conforme se segue:
v0=[s0, s1, ..., s48, s49], v1=[s50, s51, ..., s98, s99], ..., vi=[s50*i, s50*i+1, ..., s50*i+48, s50*i+49], ..., v167=[s8350, s8351, ..., s8398, s8399] [00229] Como resultado de busca de um padrão de perfuração, os presentes inventores confirmaram que uma boa qualidade de recepção é provida se 50 o que é o divisor do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC for assumido como sendo o ciclo do padrão de perfuração.
[00230] O padrão de perfuração que provê uma boa qualidade de recepção é conforme se segue:
(1, 8, 19, 20, 25, 28, 29, 31, 38, 40, 41) [00231] Como uma outra expressão, a tabela de perfuração w pode ser expressa as:
w=[1011111101 1111111110 0111101100 1011111101 0011111111] [00232] Neste caso, 0’s incluídos em w denotam bits a não transmitir. Isto é, a tabela de perfuração w determina bits a não transmitir conforme mostrado na figura 21 com respeito a vi. Portanto, bits de dados vi’ a serem transmitidos exceto por bits a não transmitir com respeito a vi=[s50*i, s50*i+1, ., s50*i+48, s50*i+49] são representados por: vi’=[s50*i, s50*i+2, s50*i+3, s50*i+4, s50*i+5, s50*i+6, s50*i+7, s50*i+9, s50*i+10, s50*i+11, s50*i+12, s50*i+13, s50*i+14, s50*i+15, s50*i+16, s50*i+17, s50*i+18, s50*i+21, s50*i+22, s50*i+23, s50*i+24, s50*i+26, s50*i+27, s50*i+30, s50*i+32, s50*i+33, s50*i+34, s50*i+35, s50*i+36, s50*i+37, s50*i+39, s50*i+42, s50*i+43, s50*i+44, s50*i+45, s50*i+46, s50*i+47, s50*i+48, s50*i+49]
Petição 870190086737, de 04/09/2019, pág. 52/87
50/76 [00233] Um padrão de perfuração para a realização de uma taxa de codificação de aproximadamente 0,95 através de uma perfuração a partir do código de QC-LDPC tendo a matriz de checagem de paridade na equação 9 de taxa de codificação 5/6 será descrito. Aqui, suponha que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 210 linhas e 210 colunas. Portanto, no código QC-LDPC, o comprimento de bloco de informação (bits) é de 4200 e o comprimento de bloco de palavra de código de LDPC (bits) é de 5040.
[00234] Neste caso, uma palavra de código do código de LDPC é expressa conforme se segue:
v=[x0, x1, x4198, x4199, p0, p1, p838, p839] =[s0, s1, s2, s5037, s5038, s5039] =[v0, v1, v2, v79] [00235] em que v denota uma palavra de código, x denota informação e p denota paridade.
v0, v1, ...,vi...,v79 podem ser expressos conforme se segue: v0=[s0, s1, s61, s62], v1=[s63, s64, s124, s125], vi=[s63*i, s63*i+1, s63*i+61, s63*i+62], v79=[s4977, s4978, s5038, s5039] [00236] Como resultado de busca de um padrão de perfuração, os presentes inventores confirmaram que uma boa qualidade de recepção é provida se 63 for assumido como sendo o ciclo do padrão de perfuração.
[00237] O padrão de perfuração que provê uma boa qualidade de recepção é conforme se segue:
(3, 18, 20, 27, 39, 50, 60) [00238] Como uma outra expressão, a tabela de perfuração w pode ser expressa como:
Petição 870190086737, de 04/09/2019, pág. 53/87
51/76 w=[1110111111 1111111101 0111111011 1111111110 1111111111
0111111111 011] [00239] Neste caso, 0's incluídos em w significam bits a não transmitir. Isto é, com respeito a vi, a tabela de perfuração w determina bits a não transmitir conforme mostrado na figura 22. Portanto, com respeito a vi= [s63*i, s63*i+1, s63*i+61, s63*i+62], bits de dados vi' a serem transmitidos, não incluindo bits a não serem transmitidos, podem ser expressos como:
vi'=[s63*i, s63*i+1, 63*i+2, s63*i+4, s63*i+5, s63*i+6, s63*i+7, s63*i+8, 63*i+9, s63*i+10, s63*i+11, s63*i+12, s63*i+13, s63*i+14, s63*i+15, s63*i+16, s63*i+17, s63*i+19, s63*i+21, s63*i+22, s63*i+23, s63*i+24, s63*i+25, s63*i+26, s63*i+28, s63*i+29, s63*i+30, s63*i+31, s63*i+32, s63*i+33, s63*i+34, s63*i+35, s63*i+36, s63*i+37, s63*i+38, s63*i+40, s63*i+41, s63*i+42, s63*i+43, s63*i+44, s63*i+45, s63*i+46, s63*i+47, s63*i+48, s63*i+49, s63*i+51, s63*i+52, s63*i+53, s63*i+54, s63*i+55, s63*i+56, s63*i+57, s63*i+58, s63*i+59, s63*i+61, s63*i+62] [00240] Neste caso, se o ciclo do padrão de perfuração for assumido como sendo da ordem de 20 a 90, a qualidade de dados quando recebidos é melhorada. O ciclo de um padrão de perfuração se refere ao ciclo mínimo do padrão de perfuração. Por exemplo, o ciclo de padrão de perfuração de tabela de perfuração w1=[001] é 3. Mais ainda, a tabela de perfuração w2=[001001] tem uma configuração com ciclo 6 e é constituída por duas tabelas de perfuração w1=[001], e uma vez que o ciclo de padrão de perfuração de tabela de perfuração w1 é 3, o (mínimo) ciclo de padrão de perfuração de tabela de perfuração w2 é 3 como com a tabela de perfuração w1. Isto é, o ciclo de um padrão de perfuração se refere ao comprimento de padrão de um padrão mínimo dos padrões que constituem o padrão de perfuração. Mais ainda, embora a tabela de perfuração w3=[010] seja idêntica a uma se deslocando ciclicamente w1, quando a relação descrita acima entre w, vi e
Petição 870190086737, de 04/09/2019, pág. 54/87
52/76 vi' é levada em consideração, w3 e w1 podem ser ditos como sendo diferentes padrões de perfuração. Isto é, quando a tabela de perfuração wx e a tabela de perfuração wy são dadas, mesmo se wx for deslocado ciclicamente (não incluindo um deslocamento cíclico de 0 bit) e se torna idêntico a wy, wx e wy ainda são diferentes padrões de perfuração.
[00241] Quando o ciclo de um padrão de perfuração é longo demais, uma irregularidade ocorre no arranjo de bits a não transmitir (bits de perfuração), o qual se torna similar a um modelo no qual um erro randômico ocorreu em um canal de apagamento binário, fazendo com que a qualidade de dados se torne ruim durante uma recepção. Por outro lado, quando o ciclo de um padrão de perfuração é curto demais, o arranjo de bits a não transmitir (bits de perfuração) é desequilibrado, o padrão de perfuração tem menor probabilidade de ser adequado e uma qualidade de dados se torna ruim durante uma recepção. Por esta razão, é importante regular o ciclo do padrão de perfuração para da ordem de 20 a 90.
[00242] Mais ainda, quando o ciclo de um padrão de perfuração é regulado para da ordem de 20 a 90, se três ou mais 0’s forem incluídos na tabela de perfuração w, a qualidade de dados durante uma recepção se torna boa (tem maior probabilidade de gerar um padrão de perfuração por meio do qual uma alta qualidade de dados pode ser obtida durante uma recepção (decodificação)). Quando três ou mais 0’s são incluídos na tabela de perfuração w, o arranjo de bits a não transmitir (bits de perfuração) não é mais regular e a randomicidade aumenta, e, consequentemente, a qualidade de dados durante uma recepção se torna boa.
[00243] Mais ainda, se o ciclo do padrão de perfuração é regulado para da ordem de 20 a 90, três ou mais 0’s são incluídos na tabela de perfuração w e um inteiro múltiplo do número de colunas ou um divisor
Petição 870190086737, de 04/09/2019, pág. 55/87
53/76 do número de colunas de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC é regulado como o ciclo do padrão de perfuração, há mais probabilidade de se ser capaz de gerar um padrão de perfuração por meio do qual uma alta qualidade de dados pode ser obtida, durante uma recepção (decodificação). [00244] Outros padrões de perfuração incluem o seguinte:
[00245] Assumindo que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 80 linhas e 80 colunas, os padrões de perfuração para a realização de taxas de codificação de aproximadamente 0,65 e 0,75 através de uma perfuração a partir do código de QC-LDPC (comprimento de bloco de informação (bits)=960, comprimento de bloco de palavra de código de LDPC (bits)=1920) tendo a matriz de checagem de paridade de equação 8 de taxa de codificação 1/2 são conforme se segue:
[00246] Quando a taxa de codificação é de aproximadamente
0,65: w=[1111110110 0100111111] [00247] Quando a taxa de codificação é de aproximadamente
0,75: w=[1100111111 1101111110 0111110001 1110000111] [00248] Assumindo que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 48 linhas e 48 colunas, um padrão de perfuração para a realização de uma taxa de codificação de aproximadamente 0,95 através de uma perfuração a partir do código de QC-LDPC (comprimento de bloco de informação (bits)=960, comprimento de bloco de palavra de código de LDPC (bits)=1152) tendo a matriz de checagem de paridade de equação 9 de taxa de codificação 5/6 é conforme se segue: w=[1111111110 1111111111 0111101111 1111001111 11101111] [00249] Assumindo que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 180 linhas e 180 colunas, os padrões de perfuração para a realização
Petição 870190086737, de 04/09/2019, pág. 56/87
54/76 de taxas de codificação de aproximadamente 0,65 e 0,75 através de uma perfuração a partir do código de QC-LDPC (comprimento de bloco de informação (bits)= 2160, comprimento de bloco de palavra de código de LDPC (bits)= 4320) tendo a matriz de checagem de paridade de equação 8 de taxa de codificação 1/2 são conforme se segue: [00250] Quando a taxa de codificação é de aproximadamente 0,65: w=[1011111100 0011111101 1111100111 011111] [00251] Quando a taxa de codificação é de aproximadamente 0,75: w=[1111110100 0001101001 1111111110] [00252] Assumindo que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 108 linhas e 108 colunas, um padrão de perfuração para a realização de uma taxa de codificação de aproximadamente 0,95 através de uma perfuração a partir do código de QC-LDPC (comprimento de bloco de informação (bits)=2160, comprimento de bloco de palavra de código de LDPC (bits)=2592) tendo a matriz de checagem de paridade de equação 9 de taxa de codificação 5/6 é conforme se segue: w=[1011111111 1111011111 1110111] (Modalidade 7) [00253] A Modalidade 5 descreveu o caso em que diferentes padrões de perfuração são usados na matriz de checagem de paridade Hb, entre a submatriz H’b2 (veja a equação 6) constituída por matrizes unitárias e matrizes nulas e outras submatrizes além da submatriz H’b2 (a partir desde ponto, representada como H’b1(=Hb1+hb)) (veja as equações 5 e 6). Como um exemplo disso, conforme mostrado da figura 19A à figura 19C, da figura 20A à figura 20C, a Modalidade 5 descreveu um caso em que padrões idênticos de perfuração são usados para a submatriz H’b2 constituída por matrizes unitárias e matrizes nulas usando um inteiro múltiplo do número de colunas ou um divisor do número de colunas de matrizes de sub-bloco como uma unidade.
Petição 870190086737, de 04/09/2019, pág. 57/87
55/76 [00254] Como com a Modalidade 5, a presente modalidade descreverá um caso em que diferentes padrões de perfuração serão usados para a submatriz H'b2 constituída por matrizes unitárias e matrizes nulas, e a submatriz H'b1 na matriz de checagem de paridade Hb. Para se ser mais específico, conforme mostrado na figura 23 a qual corresponde à figura 20B, será descrito um caso em que a taxa de codificação de 20/21 é realizada se usando o padrão de perfuração N° p1 cujo ciclo de perfuração é o número de colunas de a submatriz H'b1 para a submatriz H'b1 e usando o padrão de perfuração N° p2 cujo ciclo de perfuração é o número de colunas de a submatriz H'b2 para a submatriz H'b2.
[00255] A partir desde ponto, um padrão de perfuração para a realização de taxa de codificação 20/21 através de uma perfuração a partir de um código de QC-LDPC tendo uma matriz de checagem de paridade de equação 9 de taxa de codificação 5/6 será descrito como um exemplo.
[00256] A matriz de checagem de paridade Hb na figura 24 é a matriz de checagem de paridade Hb de QC-LDPC de taxa de codificação 5/6 mostrado na equação 9. A matriz de checagem de paridade Hb na equação 9 é constituída pela matriz de sub-bloco de 4 linhas e 24 colunas. A partir desde ponto, suponha que o tamanho de matrizes de sub-bloco constituindo a matriz de checagem de paridade de código QC-LDPC seja de 48 linhas e 48 colunas. Portanto, no código QCLDPC, o comprimento de bloco de informação (bits) é de 960 e o comprimento de bloco de palavra de código de LDPC (bits) é de 1152.
[00257] Neste caso, uma palavra de código do código de LDPC é expressa conforme se segue:
v=[x0, x1, x958, x959, p0, p1, p190, p191] =[s0, s1, s2, s1149, s1150, s1151] =[v0, v1, v2, v24]
Petição 870190086737, de 04/09/2019, pág. 58/87
56/76 [00258] em que v denota uma palavra de código, x denota informação e p denota paridade.
v0, v1, ...,vi...,v23 podem ser expressos conforme se segue:
v0=[s0, s1, ..., s46, s47], v1=[s48, s48, ..., s94, s95], vi=[s48*i, s48*i+1, ..., s48*i+46, s48*i+47], ..., v23=[s1104, s1105, ..., s1150, s1151] [00259] Na figura 24, o N° 0 representa uma matriz parcial correspondente a x0, x1, ..., x47 e o N° 1 representa uma matriz parcial correspondente a x48, x49, ..., x95. Mais ainda, o N° 21 representa uma matriz parcial correspondente a p48, p49, ., p95, o N° 22 representa uma matriz parcial correspondente a p96, p97, ., p143 e o N° 23 representa uma matriz parcial correspondente a p144, p145, ., p191.
[00260] Na figura 24, a submatriz H'b1 é constituída por N° 0 a 20 e a submatriz H'b2 é constituída por N° 21, N° 22 e N° 23. N° 21, N° 22 e N° 23 são constituídos por matrizes unitárias (0) e matrizes nulas (-1). Assim, a matriz de checagem de paridade Hb do código QCLDPC expressa na equação 9 inclui submatriz H'b2 constituída por matrizes unitárias e matrizes nulas.
[00261] A presente modalidade determina padrões preferidos de perfuração com recursos da submatriz H'b2 e a decodificação de BP levados em consideração.
[00262] A decodificação de BP obtém uma relação de log de probabilidade de cada bit pela repetição de cálculos de linha e cálculos de coluna.
[00263] O cálculo de linha de decodificação de BP atualiza a relação de log de probabilidade. Neste caso, bits (perfuração) que não foram transmitidos são manipulados como bits de apagamento durante uma decodificação e, uma vez que não existe uma relação de log de probabilidade inicial para os bits de apagamento, a relação de log de
Petição 870190086737, de 04/09/2019, pág. 59/87
57/76 probabilidade é regulada para 0. Quando dois ou mais bits de apagamento para o que nenhuma relação de log de probabilidade inicial existe são incluídos na mesma linha, a relação de log de probabilidade não é atualizada nas linhas através do cálculo de linha apenas, até que as relações de log de probabilidade dos bits de apagamento sejam atualizadas através dos cálculos de coluna. Portanto, os bits de apagamento na mesma linha preferencialmente são menos de 2 bits. [00264] Um cálculo de coluna de decodificação de BP atualiza um valor extrínseco. O valor extrínseco de um bit de apagamento é atualizado com base no resultado de adição de relações de log de probabilidade de 1 exceto por si mesmo na mesma coluna. Portanto, quando o peso de coluna é grande, o valor extrínseco do bit de apagamento é atualizado com base no resultado de adição de relações de log de probabilidade da pluralidade de 1's exceto por si mesmo na mesma coluna, e, portanto, os valores absolutos das relações de log de probabilidade no valor extrínseco aumentam, e isto faz com que as relações de log de probabilidade tenham maior probabilidade de convergirem. Por outro lado, quando o peso de coluna é pequeno, o número de relações de log de probabilidade a serem adicionadas é pequeno, e, portanto, os valores absolutos das relações de log de probabilidade no valor extrínseco têm menor probabilidade de aumentar, e isto provê a natureza de que as relações de log de probabilidade têm menor probabilidade de convergirem.
[00265] Especialmente quando o peso de coluna é 2, o valor extrínseco é simplesmente substituído por dois 1's correspondendo ao peso de coluna 2 na matriz de checagem de paridade, os valores absolutos de relações de log de probabilidade têm menor probabilidade de aumentarem, e a confiabilidade não é propagada, mesmo se um processamento iterativo for realizado repetidamente, o que pode fazer com que a qualidade de recepção se degrade. Portanto, para a atualização
Petição 870190086737, de 04/09/2019, pág. 60/87
58/76 apropriadamente da magnitude do valor extrínseco, o peso de coluna do bit de apagamento preferencialmente é de 3 ou mais.
[00266] Assim, quando o recurso de decodificação de BP é levando em consideração, da perspectiva de cálculo de linhas, 1) os bits de apagamento na mesma linha preferencialmente são menores do que 2 bits e da perspectiva do cálculo de coluna, 2) o peso de coluna dos bits de apagamento é preferencialmente 3 ou mais.
[00267] A presente modalidade regulará os padrões de perfuração com 1) e 2) acima levados em consideração. A partir desde ponto, será descrito um caso em que uma sequência codificada é perfurada se usando o número de colunas da matriz de sub-bloco como uma unidade como um exemplo.
[00268] Quando a matriz de checagem de paridade Hb de equação 9 é representada se usando a matriz de sub-bloco como uma unidade, na submatriz H'b2, uma relação em que matrizes unitárias (0) são dispostas na iésima linha e (i+1)-ésima linha da j-ésima coluna, as matrizes nulas (-1) são dispostas em outras linhas além da iésima linha e (i+1)-ésima linha da j-ésima coluna, as matrizes unitárias (0) são dispostas na (i+1)-ésima linha e (i+2)-ésima linha da (j+1)-ésima coluna, e matrizes nulas (-1) são dispostas em outras linhas além da (i+1)-ésima linha e (i+2)-ésima linha da (j+1)-ésima coluna se mantém com j=q, q+1, q+2, q+s-1, q+s (em que s é um inteiro igual a ou maior do que 1).
[00269] Para se ser mais específico, conforme é claro a partir da figura 24, as matrizes unitárias (0) são dispostas na primeira linha e segunda linha da 22a coluna, as matrizes nulas (-1) são dispostas em outras linhas além da primeira e segunda linhas da 22a coluna (terceira linha e quarta linha), as matrizes unitárias (0) são dispostas nas segunda e terceira linhas da 23a coluna, as matrizes nulas (-1) são dispostas em outras linhas além das segunda e terceira linhas da 23a
Petição 870190086737, de 04/09/2019, pág. 61/87
59/76 coluna (primeira e quarta linhas), as matrizes unitárias (0) são dispostas nas terceira e quarta linhas da 24a coluna e matrizes nulas (-1) são dispostas em outras linhas além das terceira e quarta linhas da 24a coluna (primeira e segunda linhas). Assim, conforme mostrado na área envolvida por um quadro retangular na submatriz H’b2 na figura 24, as matrizes unitárias (0) são dispostas vizinhas a cada outra na mesma linha.
[00270] Em uma matriz unitária, apenas os elementos da diagonal da matriz são 1’s e os outros elementos são 0’s. Assim, se bits correspondendo a colunas de uma matriz unitária são assumidos como sendo bits a não transmitir (bits de perfuração), haverá apenas um bit de apagamento em cada linha da matriz unitária. Contudo, quando matrizes unitárias são dispostas vizinhas a cada outra na mesma linha, se bits correspondendo a colunas incluindo as matrizes unitárias são assumidos como sendo bits a não transmitir (bits de perfuração), há dois bits de apagamento em cada linha.
[00271] Para se ser mais específico, quando matrizes unitárias são dispostas vizinhas a cada outra na mesma linha como as matrizes unitárias (0) na segunda linha da 22a coluna e 23a coluna na figura 24, se bits correspondendo a colunas incluindo as duas matrizes unitárias são assumidos como sendo bits a não transmitir (bits de perfuração), há um bit de apagamento em cada linha da matriz unitária (0) na segunda linha da 23a coluna, há um bit de apagamento em cada linha em uma vista de cada matriz unitária, mas, uma vez que estas matrizes unitárias são dispostas vizinhas a cada outra na mesma linha, há dois bits de apagamento em uma vista da mesma linha em que matrizes unitárias são dispostas.
[00272] Conforme descrito em 1) acima, os bits de apagamento preferencialmente são menos do que 2 bits. Portanto, para se evitarem apagamentos de 2 bits, um padrão como esse de perfuração será
Petição 870190086737, de 04/09/2019, pág. 62/87
60/76 usado em que bits correspondendo às colunas N° 21 e N° 23 em que nenhuma matriz unitária é disposta vizinha a cada outra na mesma linha são assumidos como sendo bits a não transmitir (bits de perfuração). Isto é, quando bits correspondendo à coluna N° 21 são assumidos como sendo bits a não transmitir (bits de perfuração), bits correspondendo à coluna N° 23 separados pelo número de colunas de 1 matriz de sub-bloco ou mais são assumidos como sendo bits a não transmitir (bits de perfuração). Assim, quando a sequência codificada é perfurada usando o número de colunas da matriz de sub-bloco como uma unidade, pela regulagem do intervalo de perfuração para uma unidade ou mais (o número de colunas de 1 matriz de sub-bloco), os bits apagados por perfuração na submatriz H'b2 constituída por matrizes unitárias ou matrizes nulas são apenas um bit em cada linha e é possível evitar apagamentos de 2 bits e, desse modo, evitar uma degradação da qualidade de recepção.
[00273] Por outro lado, quando um padrão como esse de perfuração é usado em que bits correspondendo às colunas N° 21 e N° 22 ou colunas N° 22 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração), bits correspondendo a colunas de matrizes unitárias vizinhas a cada outra na mesma linha são assumidos como sendo bits a não transmitir (bits de perfuração), e apagamentos de 2 bits ocorrem e as características de recepção se deterioram.
[00274] Mais ainda, quando 2) acima é levado em consideração, o peso de coluna de a submatriz H'b1 da matriz de checagem de paridade Hb é 3 ou mais, e, portanto, ao se assumirem bits correspondendo a colunas de a submatriz H'b1 como sendo bits a não transmitir (bits de perfuração), as relações de log de probabilidade dos valores extrínsecos são atualizadas através de cálculos de coluna, de modo que os valores absolutos das mesmas aumentem, as relações de log de probabilidade de bits de apagamento têm maior probabilidade de
Petição 870190086737, de 04/09/2019, pág. 63/87
61/76 convergirem e as características de recepção melhoram.
[00275] A figura 25 ilustra um exemplo em que bits correspondendo à coluna N° 4 adicionalmente às colunas N° 21 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração). Uma vez que matrizes nulas (-1) são dispostas na linha de N° 23 em que matrizes unitárias (0) são dispostas, se bits correspondendo às colunas N° 4, N° 21 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração), os bits de apagamento da linha serão mantidos para 1 bit em N° 4, e, desse modo, é possível suprimir uma degradação da qualidade de recepção.
[00276] A tabela de perfuração (padrão de perfuração) w quando bits correspondendo às colunas N° 4, N° 21 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração) é expressa conforme mostrado na equação 10.
[10] w = [1 1 ... 1 0 0 ... 0 1 1 ... 1 0 0 ... 0 1 1 ... 1 0 0 ... 0 ]
192 48 768 48 48 48
... (Equação 10) [00277] 0s incluídos na tabela de perfuração w na equação 10 significam bits a não transmitir (bits de perfuração). Isto é, no exemplo mostrado na figura 25, bits correspondendo às colunas N° 4, N° 21 e N° 23, isto é, x192, x193, ..., x238, x239, p48, p49, ..., p94, p95, p144, p145, ..., p190, p191 são perfurados.
[00278] Conforme descrito até agora, quando a matriz de checagem de paridade Hb é representada assumindo-se uma matriz de sub-bloco como uma unidade, a presente modalidade assume bits a não transmitir (bits de perfuração) em um intervalo de uma unidade ou mais (o número de colunas de matrizes de sub-bloco) quando da seleção de bits a não transmitir (bits de perfuração) usando-se o número de colunas de matrizes de sub-bloco como uma unidade para a submatriz H'b2 em que uma relação em que matrizes unitárias (0) são dispos
Petição 870190086737, de 04/09/2019, pág. 64/87
62/76 tas na iésima linha e (i+1)-ésima linha da j-ésima coluna, as matrizes nulas (-1) são dispostas em outras linhas além da iésima linha e (i+1)-ésima linha da j-ésima coluna, as matrizes unitárias (0) são dispostas na (i+1)-ésima linha e (i+2)-ésima linha da (j+1)-ésima coluna e matrizes nulas (-1) são dispostas em outras linhas além da (i+1)ésima linha e (i+2)-ésima linha da (j+1)-ésima coluna se mantém com j=q, q+1, q+2, ..., q+s-1, q+s (em que s é um inteiro igual a ou maior do que 1).
[00279] Mais ainda, ao se assumirem bits correspondendo a colunas cujo peso de coluna é 3 ou mais como bits a não transmitir (bits de perfuração) na submatriz H'b1 outra além da submatriz H'b2 acima da matriz de checagem de paridade Hb, as relações de log de probabilidade de os valores extrínsecos nos cálculos de coluna são atualizadas de modo que os valores absolutos disso aumentem, e, desse modo, é possível suprimir uma degradação da qualidade de recepção.
[00280] Quando bits correspondendo a colunas cujo peso de coluna é 3 ou mais são assumidos como sendo bits a não transmitir (bits de perfuração), se bits correspondendo às colunas N° 21 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração) na submatriz H'b2, bits correspondendo a colunas das matrizes nulas tal como N° 4 dispostos em uma linha de matrizes unitárias incluídas em N° 21 ou N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração). Por meio disto, quando bits correspondendo às colunas N° 4, N° 21 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração), é possível suprimir bits de apagamento de linhas em que matrizes nulas são dispostas em N° 4 e, desse modo, suprimir uma degradação da qualidade de recepção.
[00281] Um padrão preferido de perfuração para a realização de taxa de codificação 20/21 através de uma perfuração a partir de um código de QC-LDPC tendo a matriz de checagem de paridade de
Petição 870190086737, de 04/09/2019, pág. 65/87
63/76 equação 9 de taxa de codificação 5/6 foi descrito. Mais ainda, a tabela preferida de perfuração (padrão de perfuração) w pode ser representada, por exemplo, da equação 11-1 à equação 11-3 adequada para a realização de taxa de codificação 20/21 através de uma perfuração a partir da matriz de sub-bloco 216x216 tendo a matriz de checagem de paridade na equação 9 de taxa de codificação 5/6, isto é, um código de QC-LDPC de tamanho de informação = 4320 bits.
[11] w = [0 0 — 0 11 — 10 0 — 0 11 — 10 0 —0]
216 4320 216 216216
... (Equação 11-1) w = [1 1 — 1 0 0 — 0 1 1 — 1 0 0 — 0 1 1 — 1 0 0 —0 ] v-----------V-----------' V------------V-------------' V-----------V-----------' V------------V-------------' V-----------V-----------' V------------V'
432 216 3888 216 216216
... (Equação 11-2) w = [1 1 — 1 0 0 — 0 1 1 — 1 0 0 — 0 1 1 — 1 0 0 —0 ] ' V ' ' V ' ' V ' ' V ' ' V ' ' V'
864 216 3456 216 216216
... (Equação 11-3) [00282] Foi descrito acima um caso em que uma sequência codificada é perfurada usando o número de colunas de matrizes de subbloco como uma unidade, mas também pode ser possível regular candidatos para bits a não transmitir (bits de perfuração) usando o número de colunas de matrizes de sub-bloco como uma unidade em um intervalo de uma unidade ou mais (o número de colunas de matrizes de sub-bloco) e determinar bits a não transmitir (bits de perfuração) a partir dos candidatos. Neste caso, suponha que os candidatos a bits a não transmitir (bits de perfuração) sejam regulados se usando o número de colunas de matrizes de sub-bloco como uma unidade e sejam assumidos como sendo bits correspondendo às colunas não incluindo matrizes unitárias vizinhas a cada outra na mesma linha conforme descrito acima.
[00283] Por exemplo, conforme mostrado na figura 26, bits corres
Petição 870190086737, de 04/09/2019, pág. 66/87
64/76 pondendo às colunas N° 4, N° 21 e N° 23 podem ser assumidos como sendo candidatos a bits a não transmitir (bits de perfuração) e alguns bits envolvidos por círculos de linhas tracejadas de x192, x193, x238, x239, p48, p49, ..., p94, p95, p144, p145, ..., p190, p191 correspondendo às colunas N° 4, N° 21 e N° 23 podem ser determinados como bits a não transmitir (bits de perfuração).
[00284] Usando-se este método, a tabela de perfuração (padrão de perfuração) w adequada para a realização de taxa de codificação 16/18 através de uma perfuração a partir de um código de QC-LDPC tendo a matriz de checagem de paridade na equação 9 de taxa de codificação 5/6 e matriz de sub-bloco 48x48, isto é, tamanho de informação= 960 bits é expressa conforme mostrado na equação 12.
[12] w = [1 1 — 10 0 — 011 — 10 0 — 011 — 10 0 — 0]
720 24 288 24 72 24
... (Equação 12) [00285] Mais ainda, como um outro exemplo, a tabela de perfuração (padrão de perfuração) w adequada para a realização de taxa de codificação 16/18 através de uma perfuração a partir de um código de QCLDPC tendo a matriz de checagem de paridade na equação 9 de taxa de codificação 5/6 e matriz de sub-bloco 216x216, isto é, tamanho de informação= 4320 bits é representada conforme mostrado na equação
13.
[13]
w = [1 1 — 10 0 — 01 1 — 10 0 — 01 1 — 10 0 — 0]
2808 108 1620 108 432 108
... (Equação 13) [00286] Nestes casos, também é possível evitar que dois bits de apagamento ocorram em cada linha, desse modo se obtendo uma boa qualidade de recepção e regular de forma flexível a taxa de codificação após a perfuração.
Petição 870190086737, de 04/09/2019, pág. 67/87
65/76 [00287] Mais ainda, embora tenha sido descrito um caso acima em que a palavra de código v de código de LDPC é representada como v=[x0, x1, ..., x958, x959, p0, p1, ..., p190, p191], a ordem da informação de sequência ou sequência de paridade não está limitada a isto (por exemplo, a ordem também pode ser v=[p0, p1, .p190, p191, x0, x1, ..., x958, x959] e a ordem de informação ou paridade não é determinada de forma única), mas bits a não transmitir (bits de paridade) podem ser determinados a partir da correspondência de Hbv=0, em outras palavras, a correspondência entre o padrão de perfuração correspondendo à matriz de checagem de paridade Hb e a palavra de código v.
[00288] Quando, por exemplo, bits correspondendo às colunas N° 4, N° 21 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração), se a palavra de código v for representada como v=[p144, p145, ..., p190, p191, x0, x1, ..., x958, x959, p0, p1, ..., p46, p47], x144, x145, ..., x190, x191, p0, p1, ..., p46, p47, p96, p97, ..., p142, p143 podem ser assumidos como sendo bits a não transmitir (bits de perfuração).
[00289] Foi descrito um caso no exemplo acima em que uma relação em que matrizes unitárias (0) são dispostas na iésima linha e (i+1)-ésima linha da j-ésima coluna, as matrizes nulas (-1) são dispostas em outras linhas além da iésima linha e (i+1)-ésima linha da jésima coluna, as matrizes unitárias (0) são dispostas na (i+1)-ésima linha e (i+2)-ésima linha da (j+1)-ésima coluna e matrizes nulas (-1) são dispostas em outras linhas além da (i+1)-ésima linha e (i+2)-ésima linha da (j+1)-ésima coluna na submatriz H'b2 se mantém para j=q, q+1, q+2, ..., q+s-1, q+s (em que s é um inteiro igual a ou maior do que 1), mas também é possível obter um padrão preferido de perfuração usando o método acima de geração de um padrão de perfuração quando matrizes de deslocamento cíclico de matrizes unitárias, ao in
Petição 870190086737, de 04/09/2019, pág. 68/87
66/76 vés de matrizes unitárias, são dispostas vizinhas a cada outra na mesma linha. Contudo, quando matrizes de deslocamento cíclico de matrizes unitárias são dispostas vizinhas a cada outra na mesma linha na submatriz H'b2, a configuração do codificador pode ser complicada. [00290] Um padrão preferido de perfuração também pode ser regulado para o código QC-LDPC de taxa de codificação 1/2 na equação 8 usando um método similar. Um caso com taxa de codificação 1/2 será descrito se usando figura 27.
[00291] Como é o caso com a taxa de codificação 5/6, para a matriz de checagem de paridade Hb do código QC-LDPC de taxa de codificação 1/2 na equação 8, o padrão de perfuração N° p1 cujo ciclo de perfuração é o número de colunas da submatriz H'b1 é usado para a submatriz H'b1 e o padrão de perfuração N° p2 cujo ciclo de perfuração é o número de colunas de a submatriz H'b2 é usado para a submatriz H'b2.
[00292] A figura 27 é a matriz de checagem de paridade Hb do código QC-LDPC de taxa de codificação 1/2 na equação 8. A matriz de checagem de paridade Hb na equação 8 é constituída pela matriz de sub-bloco de 12 linhas e 24 colunas. Na figura 27, a submatriz H'b2 é constituída por matrizes unitárias e matrizes nulas e a submatriz H'b1 é exterior à submatriz H'b2.
[00293] Na figura 27, N° 0 a N° 23 denotam matrizes parciais correspondentes às respectivas colunas, a submatriz H'b1 é constituída por N° 0 a N° 12 e a submatriz H'b2 é constituída por N° 13 a N° 23. N° 13 a N° 23 são constituídos por matrizes unitárias (0) e matrizes nulas (-1). Assim, a matriz de checagem de paridade Hb do código QCLDPC mostrada na equação 8 inclui a submatriz H'b2 constituída por matrizes unitárias e matrizes nulas.
[00294] A partir desde ponto, será descrito um caso em que uma sequência codificada é perfurada usando o número de colunas da ma
Petição 870190086737, de 04/09/2019, pág. 69/87
67/76 triz de sub-bloco como uma unidade.
[00295] Quando a matriz de checagem de paridade Hb na equação 8 é representada usando uma matriz de sub-bloco como uma unidade, uma relação em que matrizes unitárias (0) são dispostas na iésima linha e (i+1)-ésima linha da j-ésima coluna, as matrizes nulas (-1) são dispostas em outras linhas além da iésima linha e da (i+1)-ésima linha da j-ésima coluna, as matrizes unitárias (0) são dispostas na (i+1)-ésima linha e na (i+2)-ésima linha da (j+1)-ésima coluna e matrizes nulas (-1) são dispostas em outras linhas além da (i+1)-ésima linha e a (i+2)-ésima linha da (j+1)-ésima coluna se mantém na submatriz H'b2 com j=q, q+1, q+2, ..., q+s-1, q+s (em que s é um inteiro igual a ou maior do que 1).
[00296] Para se ser mais específico, conforme é claro a partir da figura 27, as matrizes unitárias (0) são dispostas na primeira linha e na segunda linha da 14a coluna, as matrizes nulas (-1) são dispostas em outras linhas além da primeira linha e da segunda linha (terceira à décima segunda linhas) da 14a coluna, as matrizes unitárias (0) são dispostas na segunda linha e terceira linha da 15a coluna, as matrizes nulas (-1) são dispostas em outras linhas além da segunda linha e terceira linha da 15a coluna (primeira linha, quarta à décima segunda linhas), as matrizes unitárias (0) são dispostas na 11a linha e na 12a linha da 24a coluna e matrizes nulas (-1) são dispostas em outras linhas além da 11a linha e da 12a linha da 24a coluna (primeira à décima linhas). Assim, conforme mostrado nas áreas envolvidas por quadros retangulares na submatriz H'b2 na figura 27, as matrizes unitárias (0) são dispostas vizinhas a cada outra na mesma linha.
[00297] No caso de taxa de codificação 1/2, como é o caso com a taxa de codificação 5/6, um padrão como esse de perfuração é regulado em que bits correspondendo a colunas em que matrizes unitárias não são dispostas vizinhas a cada outra na mesma linha são assumi
Petição 870190086737, de 04/09/2019, pág. 70/87
68/76 dos como sendo bits a não transmitir (bits de perfuração). Quando, por exemplo, uma sequência codificada é perfurada usando o número de colunas da matriz de sub-bloco como uma unidade e bits correspondendo à coluna N° 20 são assumidos como sendo bits a não transmitir (bits de perfuração), bits correspondendo às colunas N° 15 e N° 23 separados pelo número de colunas de 1 matriz de sub-bloco são assumidos como sendo bits a não transmitir (bits de perfuração). Assim, quando uma sequência codificada é perfurada usando o número de colunas da matriz de sub-bloco como uma unidade, o intervalo de perfuração é regulado como uma unidade ou mais (o número de colunas da matriz de sub-bloco). Assim, na submatriz H'b2 constituída por matrizes unitárias ou matrizes nulas, bits apagados por perfuração são apenas um bit for cada linha, e, desse modo, é possível evitar um apagamento de 2 bits e evitar uma degradação da qualidade de recepção.
[00298] Mais ainda, por exemplo, bits correspondendo às colunas N° 15 e N° 20 podem ser assumidos como sendo bits a não transmitir (bits de perfuração). N° 15 e N° 20 são separados de cada outro por uma unidade ou mais. Mais ainda, bits correspondendo às colunas N° 20 e N° 23 também podem ser assumidos como sendo bits a não transmitir (bits de perfuração). N° 20 e N° 23 estão longe de cada outro por uma unidade ou mais.
[00299] Todos os bits correspondendo às colunas N° 15, N° 20 e N° 23 podem não ser assumidos como sendo bits a não transmitir (bits de perfuração), mas bits correspondendo às colunas N° 15, N° 20 e N° 23 podem ser assumidos como sendo candidatos de bits a não transmitir (bits de perfuração) e bits a não transmitir (bits de perfuração) podem ser determinados a partir destes candidatos de acordo com a taxa de codificação. Ao fazê-lo, é possível suprimir um bit de apagamento em cada linha como sendo um bit, obter uma boa qualidade de recepção e
Petição 870190086737, de 04/09/2019, pág. 71/87
69/76 regular de forma flexível a taxa de codificação após a perfuração. [00300] Mais ainda, da matriz de checagem de paridade Hb, uma vez que o peso de coluna é 3 ou mais na submatriz H'b1, ao se assumirem bits correspondendo a colunas de a submatriz H'b1 como sendo bits a não transmitir (bits de perfuração), a magnitude de um valor extrínseco é adequadamente atualizada através de um cálculo de coluna, as relações de log de probabilidade de bits de apagamento são apropriadamente obtidas e as características de recepção são melhoradas.
[00301] A figura 27 ilustra um exemplo em que bits correspondendo à coluna N° 10 na submatriz H'b1 são assumidos como sendo bits a não transmitir (bits de perfuração). Matrizes nulas (-1) são dispostas nas linhas de N° 10 em que matrizes unitárias (0) são dispostas em N° 15, N° 20 e N° 23, e, portanto, quando bits correspondendo às colunas N° 10, N° 15, N° 20 e N° 23 são assumidos como sendo bits a não transmitir (bits de perfuração), bits de apagamento nas linhas são mantidos como um bit, o que tem maior probabilidade de suprimir uma degradação da qualidade de recepção.
[00302] Embora tenha sido descrito um caso acima em que se usando o número de colunas de matrizes de sub-bloco como uma unidade, uma matriz de sub-bloco é selecionada a partir da submatriz H'b1, a pluralidade de matrizes de sub-bloco é selecionada a partir da submatriz H'b2 e bits correspondendo a colunas das matrizes selecionadas de sub-bloco são assumidos como sendo bits a não transmitir (bits de perfuração) ou candidatos a bits a não transmitir (bits de perfuração), o número de matrizes de sub-bloco selecionado a partir de cada submatriz não está limitado a isto, mas a pluralidade de matrizes de sub-bloco também pode ser selecionada a partir da submatriz H'b1.
[00303] A presente invenção é efetiva quando uma matriz de checagem de paridade ou matriz geradora tem regularidade como com um
Petição 870190086737, de 04/09/2019, pág. 72/87
70/76 código de QC-LDPC.
[00304] A presente invenção não está limitada a todas as modalidades descritas acima, mas pode ser implementada modificada de várias formas. Por exemplo, embora um caso tenha sido principalmente descrito nas modalidades descritas acima em que a presente invenção é implementada como um codificador, a presente invenção não está limitada a isto, mas também é aplicável quando a presente invenção é implementada como um aparelho de comunicação de linha de potência.
[00305] Mais ainda, este método de codificação também pode ser implementado como um software. Por exemplo, um programa para execução do método de codificação descrito acima pode ser armazenado em uma ROM (memória apenas de leitura) de antemão, e o programa pode ser operado por uma CPU (unidade de processamento central).
[00306] Mais ainda, o programa para execução do método de codificação pode ser armazenado em um meio de armazenamento que pode ser lido em computador, o programa armazenado no meio de armazenamento pode ser gravado em uma ramificação (memória de acesso randômico) do computador, e o computador pode ser operado de acordo com o programa.
[00307] Mais ainda, é desnecessário dizer que a presente invenção não está limitada a uma comunicação por rádio, mas também é útil para uma comunicação de linha de potência (PLC), uma comunicação de luz visível e uma comunicação ótica.
[00308] Um aspecto do codificador da presente invenção inclui uma seção de codificação que gera uma sequência codificada s que satisfaz à equação 14-1, à equação 14-2 e à equação 14-3 para uma sequência de bit de informação u e uma seção de regulagem que regula um y-ésimo padrão de perfuração o qual corresponde ao número de
Petição 870190086737, de 04/09/2019, pág. 73/87
71/76 colunas z a partir da (zxy+1)-ésima (y é um inteiro entre 0 e (nb-1)) coluna até a zx(y+1)-ésima coluna e que tem um ciclo de um divisor do número de colunas z, em que da sequência codificada s constituída por zxnb bits a partir do primeiro até os zxnb-ésimo bits, bits a serem removidos são determinados a partir do (zxy+1)-ésimo até o zx(y+1)ésimo bits com base no y-ésimo padrão de perfuração, os bits determinados a serem removidos são removidos dos zxnb bits constituindo a sequência codificada s para a formação de uma sequência de bit de informação de transmissão e a sequência de bit de informação de transmissão é extraída.
[14] gH = 0 ... (Equação14-1) sT = GuT ... (Equação14-2) Hs = 0 ... (Equação14-3) [00309] em que H é uma matriz de checagem de paridade de um código de LDPC de (zxmb) linhas e (zxnb) colunas configurado pela disposição de submatrizes de z linhas e z colunas em mb linhas e nb colunas, G é uma matriz geradora tendo uma relação da equação 14-1 com a matriz de checagem de paridade H do código de LDPC e a sequência codificada s é uma sequência codificada constituída por zxnb bits.
[00310] Em um aspecto do codificador da presente invenção, a matriz de checagem de paridade H do código de LDPC é definida pela equação 15.
[15]
o o P0,1 P1,1 P0,2 P1,2 · P 1 0,n-2 Pn-2 P -1 P n-1
H = P 1 2,0 P2,1 P 2,2 · P n-2 P2,nb-1
P / mb-1,0 P rmb-1,1 Pmb-1,2 P mb-1,nb-2 P mb-1,nb-1 _ ... (Equação 15)
Petição 870190086737, de 04/09/2019, pág. 74/87
72/76 [00311] em que Pi,j é uma matriz de permutação cíclica de uma matriz unitária de z linhas e z colunas ou matriz nula de z linhas e z colunas.
[00312] Em um aspecto do codificador da presente invenção, o código de LDPC é um código de bloco de QC-LDPC.
[00313] Em um aspecto do codificador da presente invenção, o código de LDPC é um código QC-LDPC.
[00314] Um aspecto do aparelho de transmissão da presente invenção inclui uma seção de transmissão que é provida com o codificador descrito acima e transmite a sequência de bit de informação de transmissão.
[00315] Um aspecto do método de codificação da presente invenção inclui uma etapa de geração de uma sequência codificada s que satisfaz à equação 16-1, à equação 16-2 e à equação 16-3 para uma sequência de bit de informação u e uma etapa de regulagem um yésimo padrão de perfuração que corresponde ao número de colunas z a partir da (zxy+1)-ésima (y é um inteiro entre 0 e (nb-1)) coluna até a zx(y+1)-ésima coluna e que tem um ciclo de um divisor do número de colunas z, em que da sequência codificada s constituída por zxnb bits a partir do primeiro até zxnb-ésimo bits, bits a serem removidos são determinados a partir do (zxy+1)-ésimo ao zx(y+1)-ésimo bits com base no y-ésimo padrão de perfuração, os bits determinados a serem removidos são removidos dos zxnb bits constituindo a sequência codificada s para a formação de uma sequência de bit de informação de transmissão e a sequência de bit de informação de transmissão é extraída.
[16] gH = 0 ... (Equação16-1) s = GuT ... (Equação16-2) Hs = 0 ... (Equação16-3)
Petição 870190086737, de 04/09/2019, pág. 75/87
73/76 [00316] em que H é uma matriz de checagem de paridade de um código de LDPC de (zxmb) linhas e (zxnb) colunas configurado pela disposição de submatrizes de z linhas e z colunas em mb linhas e nb colunas, G é uma matriz geradora tendo uma relação da equação 16-1 com a matriz de checagem de paridade H do código de LDPC e a sequência codificada s é uma sequência codificada constituída por zxnb bits.
[00317] Em um aspecto do método de codificação da presente invenção, a matriz de checagem de paridade H do código de LDPC é definida pela equação 17.
[17]
P 1 0,0
P,0 P0,1 P1,1 P0,2 P1,2 P1, P 1 2,0 P2,1 P
2,2 P2,«b P2,n
... (Equação 17) P 1 mb-1,0
-1,1
P mb
1,2 P mb-1,nb P mb-1,nb-1 [00318] Em um aspecto do método de codificação da presente invenção, o código de LDPC é um código de bloco de QC-LDPC.
[00319] Em um aspecto do método de codificação da presente invenção, o código de LDPC é um código QC-LDPC.
[00320] Um aspecto do método de transmissão da presente invenção inclui o método descrito acima de codificação e transmite a se quência de bit de informação de transmissão.
[00321] Um aspecto do codificador da presente invenção inclui uma seção de arranjo que gera uma sequência de bit de informação u pela inserção de 0’s em bits de informação e uma seção de codificação que gera uma sequência codificada s que satisfaz equação 18-1, equação 18-2 e equação 18-3 para uma sequência de bit de informação u, em que, da sequência codificada s, bits sempre tendo valores 0 são determinados com base em posições em que os bits de informação são dispostos e a matriz de checagem de paridade H do código de LDPC,
Petição 870190086737, de 04/09/2019, pág. 76/87
74/76 os bits sempre tendo valores 0 são removidos a partir da sequência codificada s para a formação de uma sequência de bit de informação de transmissão e a sequência de bit de informação de transmissão é extraída.
[18] GH = 0 ... (Equação18-1) s = GuT ... (Equação18-2) Hs = 0 ... (Equação18-3) [00322] em que H é uma matriz de checagem de paridade de um código de LDPC de (zxmb) linhas e (zxnb) colunas configurado pela disposição de submatrizes de z linhas e z colunas em mb linhas e nb colunas, G é uma matriz geradora tendo uma relação da equação
18- 1 com a matriz de checagem de paridade H do código de LDPC e a sequência codificada s é uma sequência codificada constituída por zxnb bits.
[00323] Um aspecto do aparelho de transmissão da presente invenção inclui uma seção de transmissão que é provida com o codificador descrito acima e transmite a sequência de bit de informação de transmissão.
[00324] Um aspecto do método de codificação da presente invenção inclui uma etapa de geração de sequência de bit de informação u pela inserção de 0’s em bits de informação e uma etapa de geração de uma sequência codificada s que satisfaz à equação 19-1, à equação
19- 2 e à equação 19-3 para uma sequência de bit de informação u, em que, da sequência codificada s, bits sempre tendo valores 0 são determinados com base em posições em que os bits de informação são dispostos e a matriz de checagem de paridade H do código de LDPC, os bits sempre tendo valores 0 são removidos a partir da sequência codificada s para a formação de uma sequência de bit de informação de transmissão e a sequência de bit de informação de transmissão é
Petição 870190086737, de 04/09/2019, pág. 77/87
75/76 extraída.
[19] GH = 0 ... (Equação19-1) sT = GuT ... (Equação19-2) Hs = 0 ... (Equação19-3) [00325] em que H é uma matriz de checagem de paridade de um código de LDPC de (zxmb) linhas e (zxnb) colunas configurado pela disposição de submatrizes de z linhas e z colunas em mb linhas e nb colunas, G é uma matriz geradora tendo uma relação da equação 19-1 com a matriz de checagem de paridade H do código de LDPC e a sequência codificada s é uma sequência codificada constituída por zxnb bits.
[00326] Um aspecto do método de transmissão da presente invenção inclui o método descrito acima de codificação e transmite a sequência de bit de informação de transmissão.
[00327] As exposições do Pedido de Patente Japonesa N° 2008264382, depositado em 10 de outubro de 2008, e do Pedido de Patente Japonesa N° 2008-290022, depositado em 12 de novembro de 2008, incluindo os relatórios descritivos, desenhos e resumos, são incorporadas aqui como referência em sua totalidade.
Aplicabilidade Industrial [00328] Quando, por exemplo, um código de bloco tal como um código QC-LDPC é usado, a presente invenção pode reduzir a quantidade de transmissão e suprimir uma deterioração da eficiência de transmissão, enquanto melhora a qualidade de recepção e é útil como um codificador, um aparelho de transmissão e um método de codificação para a formação de uma sequência codificada usando uma matriz geradora de paridade parcialmente incluindo matrizes nulas tal como um QC-LDPC.
Petição 870190086737, de 04/09/2019, pág. 78/87
76/76
Listagem de Referência
100, 100a, 600 Codificador
110, 110a Seção de regulagem de matriz nula
120, 120a Seção de arranjo
130, 610 Seção de codificação
140, 630 Seção de perfuração (seção de redução de dados)
300 Decodificador
310 Seção de inserção de relação de log de probabilidade fixa
320 Seção de decodificação de BP
400, 500 Aparelho de comunicação
410 Seção de codificação
420 Entrelaçador
430 Seção de mapeamento
440 Seção de transmissão
510 Seção de recepção
520 Seção de detecção de informação de controle
530 Seção de cálculo de relação de log de probabilidade
540 Desentrelaçador
550 Seção de decodificação
620 Seção de regulagem de padrão de perfuração
Petição 870190086737, de 04/09/2019, pág. 79/87

Claims (4)

  1. REIVINDICAÇÕES
    1. Codificador (600) caracterizado pelo fato de que permite variar uma taxa de codificação entre uma primeira taxa de codificação e uma segunda taxa de codificação, sendo a segunda taxa de codificação mais alta que a primeira taxa de codificação, o codificador (600) compreendendo:
    uma seção de codificação (610) que é adaptada para gerar, a partir de uma taxa de sequência de bit de informação u, uma sequência codificada s que é composta de z χ nb bits e satisfaz a equação 1-1, a equação 1-2 e a equação 1-3, a sequência codificada incluindo bits de informação e bits de paridade;
    uma seção de seleção (620) que é adaptada para selecionar quais grupos de grupos consecutivos de z bits devem ser perfurados a partir da sequência codificada s; e uma seção de perfuração (630) que é adaptada, quando a codificação deve ser executada com a segunda taxa de codificação, para perfurar os grupos de bits selecionados na seção de seleção (620) e emitir a sequência codificada perfurada como uma saída do codificador (600), em que o a seção de seleção (620) é adaptada para selecionar para a perfuração um segundo número dos grupos de z bits correspondentes ao segundo número de grupos de colunas não adjacentes de z colunas em uma submatriz H'b2 composta por submatrizes unitárias de z linhas e z colunas e submatrizes nulas de z linhas e z colunas em uma submatriz de bit de paridade em uma matriz de verificação de paridade H, e um primeiro número dos grupos de z bits correspondentes ao primeiro número de grupos de colunas de z colunas de uma pluralidade de grupos de colunas de z colunas tendo peso de coluna igual ou
    Petição 870190086737, de 04/09/2019, pág. 80/87
  2. 2/4 superior a 3 em uma submatriz H'bi composta por uma submatriz de bit de informação na matriz de verificação de paridade H e um vetor hb sendo um grupo de z colunas adjacentes à submatriz de bit de informação na matriz de verificação de paridade H, para cada grupo de linhas de z linhas na matriz de verificação de paridade H, não mais do que um grupo de colunas do primeiro número dos grupos de colunas na submatriz H'b1 e o referido segundo número dos grupos de colunas na submatriz H'b2 inclui uma submatriz diferente de não-nula de z linhas e z colunas no referido grupo de linhas:
    gH = 0 ... (Equação 1 -1) s = GuT... (Equação 1-2) Hs = 0... (Equação 1-3) em que H é uma matriz de checagem de paridade de um código de checagem de paridade de baixa densidade de zxmb linhas e zxnb colunas configurada pelo arranjo de submatrizes de z linhas e z colunas em mb grupos de linhas e nb grupos de colunas, cada uma das submatrizes de z linhas e z colunas é a submatriz nula, ou a submatriz unitária, ou a submatriz formada por deslocar ciclicamente a matriz unitária, a submatriz de bits de paridade é composta pelo vetor hb e pela submatriz H'b2, e a submatriz H'b2 possui submatrizes unitárias de z linhas e z colunas em uma diagonal principal e em sua diagonal paralela adjacente e zero elementos fora da diagonal principal e sua diagonal paralela adjacente.
    2. Aparelho de transmissão (400), caracterizado pelo fato de que compreende uma seção de transmissão que é provida com o codificador (600) conforme definido na reivindicação 1, e é adaptado para transmitir a sequência codificada, perfurada quando a codificação
    Petição 870190086737, de 04/09/2019, pág. 81/87
  3. 3/4 é realizada com a segunda taxa de codificação.
    3. Método de codificação, caracterizado pelo fato de que permite variar uma taxa de codificação entre uma primeira taxa de codificação e uma segunda taxa de codificação, sendo a segunda taxa de codificação sendo mais alta que a primeira taxa de codificação, o método compreendendo as etapas de:
    gerar, a partir de uma sequência de bit de informação u de entrada, e usar uma matriz geradora G para codificação com a primeira taxa de codificação, uma sequência codificada s que é composta de zxnb e bits satisfaz à equação 1-1, à equação 1-2 e à equação 1-3, a sequência codificada incluindo bits de informação e bits de paridade;
    selecionar quais grupos de grupos consecutivos de z bits devem ser perfurados a partir da sequência codificada s; e remover os grupos de bits determinados a serem perfurados a partir da sequência codificada s, para produzir a sequência codificada perfurada em que a etapa de seleção dos grupos de z bits inclui selecionar:
    um segundo número dos grupos de z bits correspondentes ao segundo número de grupos de colunas não adjacentes de z colunas em uma submatriz H'b2 composta de submatrizes unitárias de z linhas e z colunas e submatrizes nulas de z linhas e z colunas em uma submatriz de bits de paridade em uma matriz de verificação de paridade H, e um primeiro número dos grupos de z bits correspondentes ao primeiro número de grupos de colunas de z colunas de uma pluralidade de grupos de colunas de z colunas tendo peso de coluna de 3 ou mais em uma submatriz H'b1 composta por uma submatriz de bit de informação na matriz de verificação de paridade H e um vetor hb sendo um grupo de z colunas adjacente à submatriz de bit de informação na
    Petição 870190086737, de 04/09/2019, pág. 82/87
  4. 4/4 matriz de verificação de paridade H, para cada grupo de linhas de z linhas na matriz de verificação de paridade H, não mais de um grupo de colunas do primeiro número do grupo de colunas na submatriz H'b1 e o segundo número do grupos de colunas na submatriz H'b2 inclui uma matriz não-nula de z linhas e z colunas no grupo de linhas:
    gH = 0 ... (Equação 3-1) sT = GuT... (Equação 3-2) Hs = 0... (Equação 3-3) em que H é uma matriz de checagem de paridade de um código de checagem de paridade de densidade baixa de zxmb linhas e zxnb colunas configurada pelo arranjo de submatrizes de z linhas e z colunas em mb grupos de linhas e nb grupos de colunas, cada uma das submatrizes de z linhas e z colunas é a submatriz nula, ou a submatriz unitária, ou a submatriz formada deslocando ciclicamente a matriz unitária, a submatriz de bit de paridade é composta pelo vetor hb e pela submatriz H'b2, e a submatriz H'b2 possui submatrizes unitárias de z linhas e z colunas em uma diagonal principal e em sua diagonal paralela adjacente e zero elementos fora da diagonal principal e sua diagonal paralela adjacente.
    4. Método de transmissão, caracterizado pelo fato de que compreende o método de codificação conforme definido na reivindicação 3 para a transmissão da sequência codificada perfurada.
BRPI0920457A 2008-10-10 2009-10-09 codificador, aparelho de transmissão, método de codificação e método de transmissão BRPI0920457B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2008264382 2008-10-10
JP2008-264382 2008-10-10
JP2008-290022 2008-11-12
JP2008290022A JP2010114862A (ja) 2008-10-10 2008-11-12 符号化器、送信装置及び符号化方法
PCT/JP2009/005286 WO2010041466A1 (ja) 2008-10-10 2009-10-09 符号化器、送信装置及び符号化方法

Publications (2)

Publication Number Publication Date
BRPI0920457A2 BRPI0920457A2 (pt) 2018-01-16
BRPI0920457B1 true BRPI0920457B1 (pt) 2020-01-21

Family

ID=42100427

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0920457A BRPI0920457B1 (pt) 2008-10-10 2009-10-09 codificador, aparelho de transmissão, método de codificação e método de transmissão

Country Status (6)

Country Link
US (12) US8473827B2 (pt)
EP (1) EP2333962B1 (pt)
JP (1) JP2010114862A (pt)
CN (2) CN102177659B (pt)
BR (1) BRPI0920457B1 (pt)
WO (1) WO2010041466A1 (pt)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010114862A (ja) 2008-10-10 2010-05-20 Panasonic Corp 符号化器、送信装置及び符号化方法
KR20120059806A (ko) * 2010-12-01 2012-06-11 한국전자통신연구원 에러 정정 부호의 생성방법, 복호 방법 및 그 장치
DE102011084740A1 (de) * 2011-10-19 2013-04-25 Robert Bosch Gmbh Verfahren zum Verarbeiten eines Datenpakets
KR102015121B1 (ko) 2012-10-17 2019-08-28 삼성전자주식회사 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러 및 컨트롤러의 동작 방법
US9281841B2 (en) * 2012-10-31 2016-03-08 Avago Technologies General Ip (Singapore) Pte. Ltd. Load balanced decoding of low-density parity-check codes
JP6113002B2 (ja) * 2013-07-03 2017-04-12 日本放送協会 送信装置及び受信装置
US9774352B2 (en) * 2013-09-17 2017-09-26 Samsung Electronics Co., Ltd. Transmitting apparatus, and puncturing method thereof
CN104868925B (zh) * 2014-02-21 2019-01-22 中兴通讯股份有限公司 结构化ldpc码的编码方法、译码方法、编码装置和译码装置
US9350388B2 (en) * 2014-03-07 2016-05-24 Storart Technology Co. Ltd. Data format with ECC information for on-the-fly decoding during data transfer and method for forming the data format
CN105811996B (zh) * 2014-12-30 2019-12-06 华为技术有限公司 一种基于准循环ldpc的数据处理方法及系统
KR101776267B1 (ko) 2015-02-24 2017-09-07 삼성전자주식회사 송신 장치 및 그의 리피티션 방법
CN112291040B (zh) * 2015-03-02 2024-01-26 三星电子株式会社 发送方法和接收方法
TWI573147B (zh) * 2015-11-05 2017-03-01 大心電子股份有限公司 解碼方法、記憶體儲存裝置及記憶體控制電路單元
KR102461293B1 (ko) 2015-12-29 2022-11-01 삼성디스플레이 주식회사 표시 장치 및 그 구동 방법
WO2018084735A1 (en) * 2016-11-03 2018-05-11 Huawei Technologies Co., Ltd. Efficiently decodable qc-ldpc code
MX2019009820A (es) 2017-03-30 2019-11-28 Lg Electronics Inc Metodo para realizar la codificacion sobre la base de la matriz de verificacion de paridad del codigo de verificacion de paridad de baja densidad (ldpc) en el sistema de comunicacion inalambrico y terminal que usa el mismo.
JP6972664B2 (ja) * 2017-05-31 2021-11-24 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
CN108649963A (zh) * 2018-07-09 2018-10-12 建荣半导体(深圳)有限公司 Qc-ldpc解码器、分层解码方法、存储设备及通信模组
US11239948B2 (en) * 2019-03-06 2022-02-01 Huawei Technologies Co., Ltd. BCC puncturing patterns for data retransmission in wireless network
CN112583419A (zh) * 2019-09-30 2021-03-30 华为技术有限公司 一种译码方法及装置
US11949436B2 (en) * 2022-08-12 2024-04-02 Qualcomm Incorporated Low-density parity-check coding scheme with varying puncturing pattern

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089479B2 (en) * 2002-02-28 2006-08-08 Mitsubishi Denki Kabushiki Kaisha LDPC code inspection matrix generation method and inspection matrix generation device
FI121431B (fi) * 2004-09-13 2010-11-15 Tamfelt Pmc Oy Paperikoneessa käytettävä kudosrakenne ja menetelmä sen valmistamiseksi
US7996746B2 (en) * 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
US7581159B2 (en) * 2004-11-23 2009-08-25 Texas Instruments Incorporated Simplified decoding using structured and punctured LDPC codes
KR100804793B1 (ko) * 2005-10-07 2008-02-20 삼성전자주식회사 저밀도 패러티 검사 복호기에서의 검사 노드 갱신 방법
CN100502245C (zh) * 2005-10-21 2009-06-17 中兴通讯股份有限公司 支持任何码率/码长的低密度奇偶校验码编码装置和方法
WO2008016117A1 (fr) * 2006-08-04 2008-02-07 Mitsubishi Electric Corporation Procédé de génération de matrice d'inspection, procédé d'encodage, dispositif et système de communication et encodeur
WO2008075627A1 (ja) * 2006-12-18 2008-06-26 Mitsubishi Electric Corporation 符号化装置、符号化方法、符号化復号装置及び通信装置
JPWO2008093717A1 (ja) * 2007-01-31 2010-05-20 パナソニック株式会社 無線通信装置およびパンクチャリング方法
JP2008264382A (ja) 2007-04-24 2008-11-06 Aruze Corp 遊技機
JP4950763B2 (ja) 2007-05-25 2012-06-13 大陽日酸株式会社 プラズマ生成装置
EP2099135B1 (en) * 2008-03-03 2018-02-28 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
JP2010114862A (ja) * 2008-10-10 2010-05-20 Panasonic Corp 符号化器、送信装置及び符号化方法

Also Published As

Publication number Publication date
CN103338047B (zh) 2016-12-28
EP2333962A4 (en) 2013-02-27
CN103338047A (zh) 2013-10-02
US20240080047A1 (en) 2024-03-07
US9787325B2 (en) 2017-10-10
WO2010041466A1 (ja) 2010-04-15
US11539378B2 (en) 2022-12-27
BRPI0920457A2 (pt) 2018-01-16
US8954830B2 (en) 2015-02-10
US11848683B2 (en) 2023-12-19
US20150113362A1 (en) 2015-04-23
US20190149167A1 (en) 2019-05-16
CN102177659A (zh) 2011-09-07
US20170366200A1 (en) 2017-12-21
US10224963B2 (en) 2019-03-05
US20110197105A1 (en) 2011-08-11
US9094044B2 (en) 2015-07-28
US8607131B2 (en) 2013-12-10
US20210288665A1 (en) 2021-09-16
US10819370B2 (en) 2020-10-27
US20230109889A1 (en) 2023-04-13
CN102177659B (zh) 2013-08-21
US11043971B2 (en) 2021-06-22
JP2010114862A (ja) 2010-05-20
US8745473B2 (en) 2014-06-03
US20210006266A1 (en) 2021-01-07
US20150288385A1 (en) 2015-10-08
US8473827B2 (en) 2013-06-25
US20140053048A1 (en) 2014-02-20
EP2333962B1 (en) 2017-06-07
US20130262955A1 (en) 2013-10-03
US20140215287A1 (en) 2014-07-31
EP2333962A1 (en) 2011-06-15

Similar Documents

Publication Publication Date Title
BRPI0920457B1 (pt) codificador, aparelho de transmissão, método de codificação e método de transmissão
US10727875B2 (en) Transmission apparatus including encoder, reception apparatus including decoder, and associated methods
JP4168055B2 (ja) 低密度パリティ検査符号の生成方法及び装置
KR102347823B1 (ko) 구조화된 ldpc의 부호화 및 복호화 방법 및 장치
US8347170B2 (en) Method and apparatus for performing decoding using LDPC code
KR101147768B1 (ko) 채널 코드를 이용한 복호화 방법 및 장치
JP5789014B2 (ja) 符号化方法、符号化器、復号器
Ram et al. Spatially coupled LDPC codes with random access
JP5772622B2 (ja) 復号装置および復号方法
JP2012080283A (ja) 復号装置および復号方法
JP2013070133A (ja) 復号装置および復号方法

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AME

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06T Formal requirements before examination [chapter 6.20 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 21/01/2020, OBSERVADAS AS CONDICOES LEGAIS.