BR112016021595B1 - Aparelho transmissor, e método de intercalação de um aparelho transmissor - Google Patents

Aparelho transmissor, e método de intercalação de um aparelho transmissor Download PDF

Info

Publication number
BR112016021595B1
BR112016021595B1 BR112016021595-8A BR112016021595A BR112016021595B1 BR 112016021595 B1 BR112016021595 B1 BR 112016021595B1 BR 112016021595 A BR112016021595 A BR 112016021595A BR 112016021595 B1 BR112016021595 B1 BR 112016021595B1
Authority
BR
Brazil
Prior art keywords
bits
groups
group
interleaver
bit
Prior art date
Application number
BR112016021595-8A
Other languages
English (en)
Other versions
BR112016021595A2 (pt
Inventor
Hong-Sil Jeong
Kyung-Joong Kim
Se-Ho Myung
Original Assignee
Samsung Electronics Co., Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020150000677A external-priority patent/KR101776272B1/ko
Application filed by Samsung Electronics Co., Ltd filed Critical Samsung Electronics Co., Ltd
Publication of BR112016021595A2 publication Critical patent/BR112016021595A2/pt
Publication of BR112016021595B1 publication Critical patent/BR112016021595B1/pt

Links

Images

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/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • 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
    • 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
    • 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
    • H03M13/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column 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/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of 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/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of decoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • H04L1/0058Block-coded modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/18Phase-modulated carrier systems, i.e. using phase-shift keying
    • H04L27/22Demodulator circuits; Receiver circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/36Modulator circuits; Transmitter circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/38Demodulator circuits; Receiver circuits
    • 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

Abstract

APARELHO TRANSMISSOR, E MÉTODO DE INTERCALAÇÃO DE UM APARELHO TRANSMISSOR Um aparelho transmissor é fornecido. O aparelho transmissor inclui: um codificador configurado para gerar uma palavra código de verificação de paridade de baixa densidade (LDPC) por codificação de LDPC, com base numa matriz de verificação de paridade; um intercalador configurado para intercalar a palavra código de LDPC; e um modulador configurado para mapear a palavra código de LDPC intercalada sobre uma pluralidade de símbolos de modulação, em que o modulador é configurado para mapear bits incluídos num grupo de bits predeterminado dentre uma pluralidade de grupos de bits, que constituem a palavra código de LDPC sobre um bit predeterminado de cada um dos símbolos de modulação.

Description

CAMPO TÉCNICO
[0001] Aparelhos e métodos compatíveis com formas de realização exemplares se referem a um aparelho transmissor e a um método de intercalação associado, e, mais particularmente, a um aparelho transmissor, que processa e transmite dados, e a um método de intercalação associado.
FUNDAMENTOS DA TÉCNICA
[0002] Na sociedade orientada para a informação do século 21, serviços de comunicação de radiodifusão estão se movendo para a era da digitalização, multicanal, de banda larga e de alta qualidade. Em particular, como televisores digitais de alta qualidade, reprodutores portáteis de multimídia (PMPs) e equipamentos portáteis de radiodifusão são, cada vez mais, utilizados nos últimos anos, há uma crescente demanda por métodos para dar suporte a vários métodos receptores de serviços de radiodifusão digital.
[0003] A fim de atender a tal demanda, grupos normativos estão estabelecendo várias normas e fornecendo uma variedade de serviços para satisfazer as necessidades do usuário. Portanto, existe a necessidade de um método para fornecer serviços melhorados para usuários com alto desempenho de codificação, decodificação e recepção.
DIVULGAÇÃO PROBLEMA TÉCNICO
[0004] Uma ou mais formas de realização exemplares podem solucionar as desvantagens acima mencionadas e outras desvantagens não descritas acima. No entanto, entende-se que uma ou mais formas de realização exemplares não são obrigadas a solucionar as desvantagens acima descritas, e podem não solucionar qualquer um dos problemas acima descritos.
[0005] Uma ou mais formas de realização exemplares proporcionam um aparelho transmissor, que pode mapear um bit incluído num grupo predeterminado de bits dentre uma pluralidade de grupos de bits de uma palavra código para Verificação de Paridade de Baixa Densidade (LDPC) sobre um bit predeterminado de um símbolo de modulação, e transmitir o bit, e um método de intercalação associado.
SOLUÇÃO TÉCNICA
[0006] De acordo com um aspecto de uma forma de realização exemplificativa, é fornecido um aparelho transmissor que pode incluir: um codificador configurado para gerar uma palavra código de LDPC, por codificação de LDPC com base numa matriz de verificação de paridade; um intercalador configurado para intercalar a palavra código de LDPC; e um modulador configurado para mapear a palavra código de LDPC intercalada sobre uma pluralidade de símbolos de modulação, em que o modulador é ainda configurado para mapear bits incluídos num grupo predeterminado de bits dentre uma pluralidade de grupos de bits, constituindo a palavra código de LDPC sobre um bit predeterminado de cada um dos símbolos de modulação.
[0007] Cada um da pluralidade de grupos de bits pode ser formado por M números de bits, e M pode ser um divisor comum de Nldpc e Kldpc e determinado para satisfazer Qldpc =(Nldpc - Kldpc )/M. Qldpc pode ser um valor de parâmetro de deslocamento cíclico sobre colunas em um grupo de colunas de uma submatriz da palavra de informação da matriz de verificação de paridade, Nldpc pode ser um comprimento da palavra código de LDPC, e Kldpc pode ser um comprimento de bits da palavra de informação da palavra código de LDPC.
[0008] O intercalador pode incluir: um intercalador de paridade configurado para intercalar bits de paridade da palavra código de LDPC; um intercalador de grupos configurado para realizar intercalação de grupos na palavra código de LDPC intercalada por paridade, por dividir a palavra código de LDPC intercalada por paridade pela pluralidade de grupos de bits e reorganizar uma ordem da pluralidade de grupos de bits em modo de grupo de bits; e um intercalador de blocos configurado para intercalar a pluralidade de grupos e bits, cuja ordem foi reorganizada.
[0009] O intercalador de grupos pode ser configurado para reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 15.
[00010] Na Equação 15, π(j) pode ser determinado com base em, pelo menos, um dentre um comprimento da palavra código de LDPC, um método de modulação e uma taxa de código.
[00011] Quando a palavra código de LDPC tiver o comprimento de 64800, o método de modulação for 1024-QAM e a taxa de código for 6/15, π(j) pode ser definido, como na Tabela 9.
[00012] Quando a palavra código de LDPC tiver o comprimento de 64800, o método de modulação for 1024-QAM e a taxa de código for 8/15, π(j) pode ser definido, como na Tabela 10.
[00013] Quando a palavra código de LDPC tiver o comprimento de 64800, o método de modulação for 1024-QAM e a taxa de código for 12/15, π(j) pode ser definido, como na Tabela 13.
[00014] O intercalador de blocos pode ser configurado para intercalar, gravando a pluralidade de grupos de bits em cada uma de uma pluralidade de colunas em modo de grupo de bits em uma direção da coluna, e lendo cada fileira da pluralidade de colunas, em que a pluralidade de grupos de bits é gravada em modo de grupo de bits numa direção da fileira.
[00015] O intercalador de blocos pode ser configurado para gravar em série, na pluralidade de colunas, pelo menos, um grupo de bits, que é gravável na pluralidade de colunas, em modo de grupo de bits, dentre a pluralidade de grupos de bits, e dividir e gravar grupos de bits, diferente de, pelo menos, um grupo de bits, dentre a pluralidade de grupos de bits, em uma área da pluralidade de colunas, diferente de uma área, onde, pelo menos, alguns grupos de bits sejam gravados na pluralidade de colunas em modo de grupo de bits.
[00016] De acordo com um aspecto de outra forma de realização exemplar, é proporcionado um método de intercalação de um aparelho transmissor, que pode incluir: gerar uma palavra código de LDPC, por codificação de LDPC com base numa matriz de verificação de paridade; intercalar a palavra código de LDPC; e mapear a palavra código de LDPC intercalada sobre uma pluralidade de símbolos de modulação, em que o mapeamento inclui mapear bits incluídos num grupo predeterminado de bits dentre uma pluralidade de grupos de bits, constituindo a palavra código de LDPC sobre um bit predeterminado de cada um dos símbolos de modulação.
[00017] Cada um da pluralidade de grupos de bits pode ser formado por 360 bits, e M pode ser um divisor comum de Nldpc e Kldpc e pode ser determinado para satisfazer Qldpc =(Nldpc - Kldpc)/M. Qldpc pode ser um valor de parâmetro de deslocamento cíclico sobre colunas em um grupo de colunas de uma submatriz da palavra de informação da matriz de verificação de paridade, Nldpc pode ser um comprimento da palavra código de LDPC, e Kldpc pode ser um comprimento de bits da palavra de informação da palavra código de LDPC.
[00018] A intercalação pode incluir: intercalar bits de paridade da palavra código de LDPC; intercalação de grupos na palavra código de LDPC intercalada por paridade, por dividir a palavra código de LDPC intercalada por paridade pela pluralidade de grupos de bits e reorganizar uma ordem da pluralidade de grupos de bits em modo de grupo de bits; e intercalar a pluralidade de grupos de bits, cuja ordem foi reorganizada.
[00019] A reorganização em modo de grupo de bits pode incluir reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 15.
[00020] Na Equação 15, π(j) pode ser determinado com base em, pelo menos, um dentre um comprimento da palavra código de LDPC, um método de modulação e uma taxa de código.
[00021] Quando a palavra código de LDPC tiver um comprimento de 64800, o método de modulação for 1024-QAM e a taxa de código for 6/15, π(j) pode ser definido, como na Tabela 9.
[00022] Quando a palavra código de LDPC tiver um comprimento de 64800, o método de modulação for 1024-QAM e a taxa de código for 8/15, π(j) pode ser definido, como na Tabela 10.
[00023] Quando a palavra código de LDPC tiver um comprimento de 64800, o método de modulação for 1024-QAM e a taxa de código for 12/15, π(j) pode ser definido, como na Tabela 13.
[00024] A intercalação da pluralidade de grupos de bits pode incluir intercalar por gravar a pluralidade de grupos de bits em cada uma de uma pluralidade de colunas em modo de grupo de bits em uma direção da coluna, e ler cada fileira da pluralidade de colunas, em que a pluralidade de grupos de bits foi gravada em modo de grupo de bits, em uma direção da fileira.
[00025] A intercalação da pluralidade de grupos de bits pode incluir: gravar em série, na pluralidade de colunas, pelo menos, um grupo de bits, que são graváveis na pluralidade de colunas em modo de grupo de bits, dentre a pluralidade de grupos de bits; e dividir e gravar outros grupos de bits, diferentes de, pelo menos, um grupo de bits dentre a pluralidade de grupos de bits em uma área da pluralidade de colunas diferentes de uma área onde, pelo menos, alguns grupos de bits são gravados na pluralidade de colunas em modo de grupo de bits.
EFEITOS VANTAJOSOS
[00026] De acordo com várias formas de realização exemplificativas, conforme descrito acima, um melhorado desempenho de decodificação e recepção pode ser fornecido.
DESCRIÇÃO DOS DESENHOS
[00027] Os aspectos acima mencionados e/ou outros mais ficarão mais evidentes, pela descrição em detalhes de formas de realização exemplificativas com referência aos desenhos anexos, nos quais: a FIG. 1 é um diagrama de blocos para ilustrar uma configuração de um aparelho transmissor, de acordo com uma forma de realização exemplar; as FIGs. 2 e 3 são vistas para ilustrar uma configuração de uma matriz de verificação de paridade, de acordo com formas de realização exemplares; a FIG. 4 é um diagrama de blocos para ilustrar uma configuração de um intercalador, de acordo com uma forma de realização exemplar; as FIGs. 5 a 7 são vistas para ilustrar um método de para processar uma palavra código de LDPC em uma base de grupos, de acordo com formas de realização exemplares; as FIGs. 8 a 12 são vistas para ilustrar uma configuração de um intercalador de blocos e um método de intercalação, de acordo com formas de realização exemplares; a FIG. 13 é uma vista para ilustrar uma operação de um demultiplexador, de acordo com uma forma de realização exemplar; a FIG. 14 é uma vista para ilustrar uma configuração de um intercalador, de acordo com outra forma de realização exemplar; as FIGs. 15 a 17 são vistas para ilustrar uma configuração de um intercalador de blocos por fileira e um método de intercalação, de acordo com formas de realização exemplares; a FIG. 18 é um diagrama de blocos para ilustrar uma configuração de um aparelho receptor, de acordo com uma forma de realização exemplar; as FIGs. 19 e 21 são diagramas de blocos para ilustrar uma configuração de um desintercalador, de acordo com formas de realização exemplares; a FIG. 20 é uma vista para ilustrar um método de desintercalação de um desintercalador de blocos, de acordo com um forma de realização exemplar; e a FIG. 22 é um fluxograma para ilustrar um método de intercalação, de acordo com uma forma de realização exemplar.
MODO PARA INVENÇÃO
[00028] Daqui em diante, várias formas de realização exemplificativas serão descritas em maior detalhe com referência aos desenhos anexos.
[00029] Na descrição seguinte, mesmos números de referência são utilizados para os mesmos elementos, quando eles forem representados em diferentes desenhos. As matérias definidas na descrição, como construção e elementos detalhados, são fornecidas para auxiliar em uma compreensão abrangente das formas de realização exemplares. Assim, é evidente que as formas de realização exemplares podem ser realizadas sem esses elementos definidos de maneira específica. Além disso, funções ou elementos conhecidos na arte relacionada não são descritos em pormenor, uma vez que eles iriam obscurecer as formas de realização exemplares com detalhes desnecessários.
[00030] A FIG. 1 é um diagrama de blocos para ilustrar uma configuração de um aparelho transmissor, de acordo com uma forma de realização exemplar. Com referência à FIG. 1, o aparelho transmissor 100 inclui um codificador 110, um intercalador 120, e um modulador 130 (ou um mapeador de constelação).
[00031] O codificador 110 gera uma palavra código de Verificação de Paridade de Baixa Densidade (LDPC), através da realização de codificação de LDPC, com base em uma matriz de verificação de paridade. O codificador 110 pode incluir um codificador de LDPC (não mostrado), para realizar a codificação de LDPC.
[00032] De maneira específica, o codificador de LDPC 110 codifica bits da palavra de informação (ou bits de informação), para gerar a palavra código de LDPC, que é formada por bits da palavra de informação e bits de paridade (isto é, bits de paridade de LDPC). Aqui, bits inseridos no codificador 110 podem ser usados como os bits da palavra de informação. Além disso, uma vez que o código de LDPC é um código sistemático, os bits da palavra de informação podem ser incluídos na palavra código de LDPC, no estado em que eles se encontram.
[00033] A palavra código de LDPC é formada pelos bits da palavra de informação e pelos bits de paridade. Por exemplo, a palavra código de LDPC é formada pelo número de bits Nldpc, e inclui o número de bits da palavra de informação Kldpc e o número de bits de paridade Nparity = Nldpc - Kldpc.
[00034] Neste caso, o codificador 110 pode gerar a palavra código de LDPC, efetuando a codificação de LDPC com base na matriz de verificação de paridade. Isto é, uma vez que a codificação de LDPC é um processo para gerar uma palavra código de LDPC, para satisfazer H.CT = 0, o codificador 110 pode utilizar a matriz de verificação de paridade, ao realizar a codificação de LDPC. Aqui, H é uma matriz de verificação de paridade e C é uma palavra código de LDPC.
[00035] Para a codificação de LDPC, o aparelho transmissor 100 pode incluir uma memória separada e pode armazenar previamente matrizes para verificação de paridade de vários formatos.
[00036] Por exemplo, o aparelho transmissor 100 pode pré- armazenar matrizes de verificação de paridade, que são definidas na Digital Video Broadcasting- Cable version 2 (DVB- C2), Digital Video Broadcasting- Satellite- Second Generation (DVB-S2), Digital Video Broadcasting- Second Generation Terrestrial (DVB-T2) etc., ou pode pré-armazenar matrizes de verificação de paridade, que são definidas nas normas 3.0 do Advanced Television System Committee (ATSC) do sistema de normas de radiodifusão digital da América do Norte, que estão sendo atualmente estabelecidas. No entanto, este é apenas um exemplo e o aparelho transmissor 100 pode pré-armazenar matrizes de verificação de paridade de outros formatos, além dessas matrizes de verificação de paridade.
[00037] Daqui em diante, uma matriz de verificação de paridade, de acordo com várias formas de realização, será explicada em detalhe com referência aos desenhos. Na matriz de verificação de paridade, elementos, exceto aqueles com 1, têm 0.
[00038] Por exemplo, a matriz de verificação de paridade, de acordo com uma forma de realização exemplar, pode ter a configuração das FIGs. 2 e 3.
[00039] Com referência à FIG. 2, a matriz de verificação de paridade 200 é formada por uma submatriz da palavra de informação (ou submatriz da informação) 210 correspondente a bits da palavra de informação, e uma submatriz de paridade 220 correspondente a bits de paridade. Na matriz de verificação de paridade 200 elementos, exceto aqueles com 1, têm 0.
[00040] A submatriz da palavra de informação 210 inclui o número de colunas Kldpc e a submatriz de paridade 220 inclui o número de colunas Nparity = Nldpc - Kldpc. O número de fileiras da matriz de verificação de paridade 200 é idêntico ao número de colunas da submatriz de paridade 220, Nparity = Nldpc - Kldpc.
[00041] Além disso, na matriz de verificação de paridade 200, Nldpc é um comprimento de uma palavra código de LDPC, Kldpc é um comprimento de bits da palavra de informação, e Nparity = Nldpc - Kldpc é um comprimento de bits de paridade. O comprimento da palavra código de LDPC, os bits da palavra de informação e os bits de paridade significam o número de bits incluídos em cada uma dentre a palavra código de LDPC, os bits da palavra de informação e os bits de paridade.
[00042] Daqui em diante, a configuração da submatriz da palavra de informação 210 e da submatriz de paridade 220 será explicada em pormenor.
[00043] A submatriz da palavra de informação 210 inclui o número de colunas Kidpc (ou seja, 0a coluna a (Kidpc -l)a coluna), e segue as regras a seguir.
[00044] Em primeiro lugar, o número M de colunas dentre o número Kldpc de colunas da submatriz da palavra de informação 210 pertence ao mesmo grupo, e o número Kldpc de colunas é dividido no número Kldpc/M de grupos de colunas. Em cada grupo de colunas, uma coluna é deslocada de modo cíclico a partir de uma coluna imediatamente anterior por Qldpc ou número de bits Qldpc. Ou seja, Qldpc pode ser um valor de parâmetro de deslocamento cíclico sobre colunas em um grupo de colunas da submatriz da palavra de informação 210 da matriz de verificação de paridade 200.
[00045] Nisto, M é um intervalo, no qual um padrão de um grupo de colunas, que inclui uma pluralidade de colunas, é repetido na submatriz da palavra de informação 210 (por exemplo, M = 360), e Qldpc é um tamanho, em que uma coluna é deslocada de modo cíclico de uma coluna imediatamente anterior em um mesmo grupo de colunas na submatriz da palavra de informação 210. Além disso, M é um divisor comum de Nldpc e Kldpc e é determinado para satisfazer Qldpc =(Nldpc - Kldpc)/M. Aqui, M e Qldpc são números inteiros e Kldpc/M é também um número inteiro. M e Qldpc podem ter vários valores, de acordo com um comprimento da palavra código de LDPC e uma taxa de código (CR) ou taxa de codificação.
[00046] Por exemplo, quando M = 360 e o comprimento da palavra código de LDPC, Nldpc, for 64800, Qldpc pode ser definido, como na Tabela 1 apresentada a seguir, e, quando M = 360 e o comprimento Nldpc da palavra código de LDPC for 16200, Qldpc pode ser definido, como na Tabela 2 abaixo apresentada. [Tabela 1]
Figure img0001
[Tabela 2]
Figure img0002
[00047] Em segundo lugar, quando o grau da 0a coluna do i° grupo de colunas (i = 0, 1, ..., Kldpc/M-1) for Di (aqui, o grau é o número de valor 1 existente em cada coluna e todas colunas pertencendo ao mesmo grupo de colunas têm o mesmo grau), e uma posição (ou um índice) de cada fileira, onde 1 existe na 0 coluna do i° grupo de colunas, for
Figure img0003
um índice Ri,j(k) de uma fileira, em que k° 1 situa-se na ja coluna no i° grupo de colunas é determinado pela seguinte Equação 1:
Figure img0004
onde k = 0, 1, 2, ... Di -1; i = 0, 1, ..., Kldpc/M-1; e j = l, 2, ..., M-1.
[00048] A Equação 1 pode ser expressa, como a seguinte Equação 2:
Figure img0005
onde k = 0, 1, 2, ..., Di-1; i = 0, 1, ..., Kldpc/M-1; e j = l, 2, ..., M-1. Visto que j = l, 2, ..., M-1, (j mod M) da Equação 2 pode ser considerado como j.
[00049] Nas equações acima,
Figure img0006
é um índice de uma fileira, em que k° 1 localiza-se na ja coluna no i° grupo de colunas, Nldpc é um comprimento de uma palavra código de LDPC, Kldpc é um comprimento de bits da palavra de informação, Di é um grau de colunas pertencentes ao io grupo de colunas, M é o número de colunas, que pertencem a um único grupo de colunas, e Qldpc é um tamanho, em que cada coluna no grupo de colunas é deslocada de modo cíclico.
[00050] Como resultado, referindo-se a essas Equações, quando apenas
Figure img0007
for conhecido, o índice
Figure img0008
da fileira, onde o k° 1 situa-se na ja coluna no i° grupo de colunas, pode ser conhecido. Por conseguinte, quando o valor do índice da fileira, onde o k 1 está localizado na 0a coluna de cada grupo de colunas, for armazenado, uma posição de coluna e fileira, onde 1 está localizado na matriz de verificação de paridade 200, que tem a configuração da FIG. 2 (isto é, na submatriz da palavra de informação 210 da matriz de verificação de paridade 200), pode ser conhecida.
[00051] De acordo com as regras acima descritas, todas as colunas pertencentes ao i° grupo de colunas têm o mesmo grau Di. Por conseguinte, a palavra código de LDPC, que armazena informações sobre a matriz de verificação de paridade, de acordo com as regras acima descritas, pode ser resumidamente expressa, como segue.
[00052] Por exemplo, quando Nldpc for 30, Kldpc for 15, e Qldpc for 3, informações sobre posição da fileira, onde 1 situa-se na 0a coluna dos três grupos de colunas, podem ser expressas por uma sequência de Equações 3 e podem ser referidas como "sequência de posições de peso 1".
Figure img0009
onde
Figure img0010
é um índice de uma fileira, em que k° 1 localiza-se na ja coluna no i° grupo de colunas.
[00053] A sequência de posições de peso-1, como na Equação 3, que expressa um índice de uma fileira, onde 1 está situado na 0a coluna de cada grupo de colunas, pode ser resumidamente expressa, como na Tabela 3 apresentada a seguir:[Tabela 3]
Figure img0011
[00054] A Tabela 3 mostra posições de elementos tendo valor 1, na matriz de verificação de paridade, e a ia sequência de posições de peso-1 é expressa por índices de fileiras, onde 1 situa-se na 0a coluna pertencente ao i° grupo de colunas.
[00055] A submatriz da palavra de informação 210 da matriz de verificação de paridade, de acordo com uma forma de realização exemplar, pode ser definida, como nas Tabelas 4 a 8 apresentadas a seguir, com base nas descrições acima.
[00056] De maneira específica, as Tabelas 4 a 8 mostram índices de fileiras, onde 1 está localizado na 0a coluna do i° grupo de colunas da submatriz da palavra de informação 210. Isto é, a submatriz da palavra de informação 210 é formada por uma pluralidade de grupos de colunas, cada qual incluindo um número M de colunas, e posições de 1 na 0a coluna de cada um da pluralidade de grupos de colunas podem ser definidas pelas Tabelas 4 a 8.
[00057] Aqui, os índices das fileiras, em que 1 está localizado na 0a coluna do i° grupo de colunas, significam "endereços de acumuladores de bits de paridade". Os "endereços de acumuladores de bits de paridade" têm o mesmo significado, tal como definido nas normas DVB-C2/S2/T2 ou nas normas ATSC 3.0, que estão sendo atualmente estabelecidas e, por conseguinte, sua explicação detalhada é omitida.
[00058] Por exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 6/15, e M for 360, os índices das fileiras, onde 1 está localizado na 0a coluna do i° grupo de colunas da submatriz da palavra de informação 210, são como mostrados na Tabela 4 abaixoapresentada:[Tabela 4]
Figure img0012
Figure img0013
[00059] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 8/15, e M for 360, os índices das fileiras, onde 1 está localizado na 0a coluna do i° grupo de colunas da submatriz da palavra de são como mostrados na Tabela 5 abaixo apresentada: [Tabela 5]
Figure img0014
Figure img0015
[00060] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15, e M for 360, os índices das fileiras, onde 1 está localizado na 0a coluna do i° grupo de colunas da submatriz da palavra de informação 210, são como mostrados nas Tabelas 6 ou 7 abaixo.
Figure img0016
Figure img0017
Figure img0018
Figure img0019
Figure img0020
[00061] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 12/15, e M for 360, os índices das fileiras, onde 1 está localizado na 0a coluna do i° grupo de colunas da submatriz da palavra de informação 210, são como mostrados na Tabela 8 abaixo.[Tabela 8]
Figure img0021
Figure img0022
Figure img0023
Figure img0024
[00062] Nos exemplos acima descritos, o comprimento da palavra de código LDPC é 64800 e a taxa de código é 6/15, 8/15, 10/15, e 12/15. No entanto, esse é apenas um exemplo e a posição de 1 na submatriz da palavra de informação 210 pode ser definida de diversas formas, quando o comprimento da palavra de código LDPC for 16200 ou a taxa de código tiver valores diferentes.
[00063] De acordo com uma forma de realização exemplar, mesmo quando a ordem de números, por exemplo, índices, numa sequência, que corresponde ao i° grupo de colunas da matriz de verificação de paridade 200, como mostrado nas Tabelas 4 a 8 acima descritas, for alterada, a matriz de verificação de paridade modificada é uma matriz de verificação de paridade utilizada para o mesmo código LDPC. Por isso, um caso, em que a ordem de números na sequência correspondente ao i° grupo de colunas nas Tabelas 4 a 8 é alterada, é abrangido pelo conceito inventivo.
[00064] Além disso, mesmo quando a ordem de disposição de sequências correspondentes a cada grupo de colunas, mostrada nas Tabelas 4 a 8, for mudada, características de ciclo em um gráfico de um código e características algébricas, tal como distribuição de grau, não são alteradas. Por isso, um caso, em que a ordem de disposição das sequências mostradas nas Tabelas 4 a 8 é alterada, também é abrangido pelo conceito inventivo.
[00065] Além disso, mesmo quando um múltiplo de Qldpc for igualmente adicionado a todas as sequências, que correspondem a um determinado grupo de colunas nas Tabelas 4 a 8, as características de ciclo no gráfico do código LDPC, ou as características algébricas, tal como distribuição de grau, não são alteradas. Portanto, um resultado da adição por igual de um múltiplo de Qldpc para as sequências mostradas nas Tabelas 4 a 8 também está abrangido pelo conceito inventivo. No entanto, deve notar-se que, quando o valor resultante obtido por adição de um múltiplo de Qldpc para uma dada sequência for maior ou igual a (Nldpc -Kldpc), um valor obtido através da aplicação de uma operação módulo para (Nldpc — Kldpc) para o valor resultante deve ser aplicado, em vez disso.
[00066] Uma vez que as posições das fileiras, em que 1 existe na 0a coluna do i° grupo de colunas da submatriz da palavra de informação 210, são definidas como mostrado nas Tabelas 4 a 8, posições de fileiras, onde 1 existe em outra coluna de cada grupo de colunas, podem ser definidas, uma vez que as posições das fileiras, onde 1 existe na 0a coluna, são deslocadas de modo cíclico por Qldpc na coluna seguinte.
[00067] Por exemplo, no caso da Tabela 4, na 0a coluna do 0° grupo de colunas da submatriz da palavra de informação 210, 1 existe na 1606a fileira, 3402a fileira, 4961a fileira,
[00068] Neste caso, uma vez que Qldpc = (Nldpc -Kldpc)/M = (64800-25920)/360 = 180, os índices das fileiras, em que 1 está localizado na 1a coluna do 0° grupo de colunas, podem ser 1714 (= 1606 + 108), 3510 (= 3402 + 108), 5069 (= 4961 + 108). ..., e os índices das fileiras, onde 1 está localizado na 2a coluna do 0° grupo de colunas, podem ser 1822 (= 1714 + 108), 3618 (= 3510 + 108), 5177 (= 5069 + 108),
[00069] No método acima descrito, podem ser definidos os índices das fileiras, onde 1 está localizado em todas as colunas de cada grupo de colunas.
[00070] A submatriz de paridade 220 da matriz de verificação de paridade 200, mostrada na FIG. 2, pode ser definida, como se segue.
[00071] A submatriz de paridade 220 inclui o número Nldpc - Kldpc de colunas (ou seja, Kldpca coluna a (Nldpc-l)a coluna), e tem uma configuração de dupla diagonal ou escalonada. Por conseguinte, o grau de colunas, com exceção da última coluna (isto é, (Nldpc-l)a coluna) dentre as colunas incluídas na submatriz de paridade 220 é 2, e o grau da última coluna é 1.
[00072] Como resultado, a submatriz da palavra de informação 210 da matriz de verificação de paridade 200 pode ser definida pelas Tabelas 4 a 8, e a submatriz de paridade 220 da matriz de verificação de paridade 200 pode ter uma configuração diagonal dupla.
[00073] Quando as colunas e fileiras da matriz de verificação de paridade 200, mostrada na FIG. 2, forem permutadas com base na Equação 4 e Equação 5, a matriz de verificação de paridade, representada na FIG. 2, pode ser alterada para uma matriz de verificação de paridade 300, mostrada na FIG. 3.
Figure img0025
[00074] O método para permutação, com base na Equação 4 e Equação 5, será explicado a seguir. Visto que permutação de fileiras e permutação de colunas aplicam o mesmo princípio, a permutação de fileiras irá ser explicada por meio de um exemplo.
[00075] No caso da permutação de fileira, com referência à Xa fileira, i e j satisfazendo X = Qldpc x i + j são calculados e a Xa fileira é permutada, atribuindo os i e j calculados a M x j + i. Por exemplo, com referência à 7a fileira, i e j satisfazendo 7 = 2 x i + j são, respectivamente, 3 e 1. Portanto, a 7a fileira é permutada pela 13a fileira (10 x 1 + 3 = 13).
[00076] Quando a permutação de fileiras e a permutação de colunas forem realizadas no método acima descrito, a matriz de verificação de paridade da FIG. 2 pode ser convertida na matriz de verificação de paridade da FIG. 3.
[00077] Com referência à FIG. 3, a matriz de verificação de paridade 300 é dividida numa pluralidade de blocos parciais, e uma matriz semicíclica de M x M corresponde a cada bloco parcial.
[00078] Por conseguinte, a matriz de verificação de paridade 300 tendo a configuração da FIG. 3 é formada por unidades de matriz de M x M. Isto é, as submatrizes de M x M são dispostas na pluralidade de blocos parciais, constituindo a matriz de verificação de paridade 300.
[00079] Uma vez que a matriz de verificação de paridade 300 é formada das matrizes semicíclicas de M x M, o número M de colunas pode ser referido como um bloco de colunas e o número M de fileiras pode ser referido como um bloco de fileiras. Por conseguinte, a matriz de verificação de paridade 300 tendo a configuração da FIG. 3 é formada pelo número Nqc_column = Nldpc /M de blocos de colunas e número Nqc_row = Nparity /M de blocos de fileiras.
[00080] Daqui em diante, será explicada a submatriz de M x M.
[00081] Em primeiro lugar, o (Nqc_column -1)° bloco de colunas do 0° bloco de fileiras A 330 tem a forma mostrada na Equação 6 apresentada a seguir:
Figure img0026
[00082] Tal como acima descrito, A 330 é uma matriz M x M, os valores da 0a fileira e da (M-1)a coluna são todos "0" e, com relação a 0 ^ i ^ (M-2), a (i + 1)a fileira da ia coluna é "1", e os outros valores são "0".
[00083] Em segundo lugar, com relação a 0 ^ i ^ (Nldpc - Kldpc)/M-1 na submatriz de paridade 320, o i° bloco de fileiras do (Kldpc/M + i)° bloco de colunas é configurado por uma matriz unitária IMXM 340. Além disso, com referência a 0 ^ i ^ (Nldpc — Kldpc)/M-2, o (i + 1)° bloco de fileiras do (Kldpc/M + i)° bloco de colunas é configurado por uma matriz unitária IMxM 340.
[00084] Em terceiro lugar, um bloco 350, que constitui a submatriz da palavra de informação 310, pode ter um formato deslocado de modo cíclico de uma matriz cíclica P, Paij, ou um formato adicionado da matriz deslocada de modo cíclico Paij da matriz cíclica P (ou um formato de sobreposição).
[00085] Por exemplo, um formato, em que a matriz cíclica P é deslocada de modo cíclico para a direita por 1, pode ser expresso pela Equação 7 apresentada abaixo:
Figure img0027
[00086] A matriz cíclica P é uma matriz quadrada tendo um tamanho M x M e é uma matriz, na qual um peso de cada um do número M de fileiras é 1 e um peso de cada um do número M de colunas é 1. Quando aij for 0, a matriz cíclica P, isto é, P° indica uma matriz unitária IMxM, e quando aij for ^, P^ é uma matriz de zeros.
[00087] Uma submatriz existente, onde o i° bloco de fileiras e o j° bloco de colunas se cruzam na matriz de verificação de paridade 300 da FIG. 3, pode ser Paij. Por conseguinte, i e j indicam o número de blocos de fileiras e o número de blocos de colunas nos blocos parciais correspondentes à palavra de informação. Por conseguinte, na matriz de verificação de paridade 300, o número total de colunas é Nldpc = M x Nqc_column, e o número total de fileiras é Nparity = M x Nqc_row. Isto é, a matriz de verificação de paridade 300 é formada pelo número Nqc_column de “blocos de colunas” e o número Nqc_row de “blocos de fileiras”.
[00088] A seguir, um método para realizar codificação de LDPC, com base na matriz de verificação de paridade 200, como mostrado na FIG. 2, será explicado. Um processo de codificação de LDPC, quando a matriz de verificação de paridade 200 for definida, como mostrado na Tabela 4 por meio de um exemplo, será explicado por conveniência da explicação.
[00089] Em primeiro lugar, quando bits da palavra de informação com o comprimento de Kldpc forem [i0, i1, i2, ...,ikldpc -1] e bits de paridade com o comprimento de Nldpc - Kldpc forem [p0, p1, p2, ...,pNldpc - kldpc -1], a codificação de LDPC é realizada pelo seguinte processo.
[00090] Etapa 1) Bits de paridade são iniciados por ’0’. Isso é, p0= p1= p2= ...=pNldpc - kldpc -1= 0.
[00091] Etapa 2) O 0° bit da palavra de informação i0 é acumulado em um bit de paridade, que tem o endereço do bit de paridade definido na primeira fileira (isto é, a fileira de i = 0) da Tabela 4, como o índice do bit de paridade. Isto pode ser representado pela Equação 8 representada abaixo:
Figure img0028
[00092] Aqui, i0 é um 0° bit da palavra de informação, pi é um i° bit de paridade, e é uma operação binária. De acordo com a operação binária, é 0, 1®° é 1, 0®l é 1, e o®o é 0.
[00093] Etapa 3) Os outros 359 bits da palavra de informação im (m = 1, 2, ..., 359) são acumulados nos bits de paridade. Os outros bits da palavra de informação podem pertencer ao mesmo grupo de colunas, a que pertence i0. Nesse caso, o endereço dos bits de paridade podem ser determinados, com base na Equação 9 representada abaixo:
Figure img0029
[00094] Na Equação acima, x é um endereço de um acumulador de bits de paridade correspondente ao bit da palavra de informação i0, e Qldpc é um tamanho, pelo qual cada coluna é deslocada de modo cíclico na submatriz da palavra de informação e pode ser 108, no caso as Tabela 4. Além disso, uma vez que m = 1,2, ..., 359, (m mod 360) na Equação 9 pode ser considerado como m.
[00095] Como resultado, bits da palavra de informação im (m = 1, 2, ..., 359) são acumulados nos bits de paridade, que tem os endereços dos bits de paridade calculados com base na Equação 9 como os índices, respectivamente. Por exemplo, uma operação, conforme representada na Equação 10 apresentada abaixo, pode ser realizada no bit da palavra de informação i1:
Figure img0030
[00096] Aqui, i1 representa um 1° bit da palavra de informação, pi representa um i° bit de paridade, e Φ representa uma operação binária. De acordo com a operação binária, é 0, l®0 é 1, °®1 é 1, e °®0 é 0.
[00097] Etapa 4) O 360° bit da palavra de informação i360 é acumulado em um bit de paridade, que tem o endereço do bit de paridade definido na 2a fileira (isto é, a fileira de i = 1) da Tabela 4, como o índice do bit de paridade.
[00098] Etapa 5) Os outros 359 bits da palavra de informação, que pertencem ao mesmo grupo do bit da palavra de informação i360, são acumulados no bit de paridade. Nesse caso, o endereço do bit de paridade pode ser determinado, com base na Equação 9. No entanto, nesse caso, x é o endereço do acumulador de bits de paridade correspondente ao bit da palavra de informação i360.
[00099] Etapa 6) As Etapas 4 e 5, descritas acima, são repetidas para todos os grupos de coluna da Tabela 4.
[000100] Etapa 7) Como resultado, um bit de paridade pi é calculado, com base na Equação 11 apresentada abaixo. Nesse caso, i é inicializado como 1.
Figure img0031
[000101] Na Equação 11, pi representa um i° bit de paridade, Nldpc representa um comprimento da palavra código de LDPC, Kldpc representa um comprimento de uma palavra de informação da palavra código de LDPC, e ® representa uma operação binária.
[000102] Como resultado, o codificador 110 pode calcular os bits de paridade, de acordo com o método acima descrito.
[000103] Reportando-nos novamente à FIG. 1, o codificador 110 pode realizar a codificação de LDPC usando várias taxas de código, como 3/15, 4/15, 5/15, 6/15, 7/15, 8/15, 9/15, 10/15, 11/15, 12/15, 13/15 etc.. Além disso, o codificador 110 pode gerar uma palavra código de LDPC tendo vários comprimentos, tais como 16200, 64800 etc., com base no comprimento dos bits da palavra de informação e taxa de código.
[000104] Nesse caso, o codificador 110 pode executar a codificação de LDPC usando a matriz de verificação de paridade tendo a submatriz da palavra de informação definida pelas Tabelas 4 a 8, e a submatriz de paridade, tendo a configuração diagonal dupla (ou seja, a matriz de verificação de paridade mostrada na FIG. 2), ou pode executar a codificação de LDPC, usando a matriz de verificação de paridade, que é permutada em fileira e coluna a partir da matriz de verificação de paridade da FIG. 2, com base na Equação 4 e Equação 5 (ou seja, a matriz de verificação de paridade tendo a configuração da FIG. 3).
[000105] Além disso, o codificador 110 pode executar codificação Bose, Chaudhuri, Hocquenghem (BCH), bem como a codificação de LDPC. Para alcançar este objetivo, o codificador 110 pode ainda incluir um codificador BCH (não mostrado) para realizar codificação BCH.
[000106] Nesse caso, o codificador 110 pode executar codificação em uma ordem de codificação BCH e codificação de LDPC. De maneira específica, o codificador 110 pode adicionar bits de paridade BCH a bits de entrada, por realizar codificação BCH, e LDPC codifica os bits da palavra de informação, incluindo os bits de entrada e os bits de paridade BCH, gerando, assim, a palavra código de LDPC.
[000107] O intercalador 120 intercala a palavra código de LDPC. Ou seja, o intercalador 120 recebe a palavra código de LDPC a partir do codificador 110, e intercala a palavra código de LDPC com base em diversas regras de intercalação.
[000108] Em particular, o intercalador 120 pode intercalar a palavra código de LDPC, de tal modo que um bit incluído num grupo de bits predeterminado dentre uma pluralidade de grupos de bits, que constituem a palavra código de LDPC (isto é, uma pluralidade de grupos ou uma pluralidade de blocos), seja mapeado sobre um bit predeterminado de um símbolo de modulação. Nesse sentido, o modulador 130 pode mapear um bit incluído no grupo predeterminado dentre a pluralidade de grupos de bits da palavra código de LDPC sobre um bit predeterminado do símbolo de modulação.
[000109] Daqui em diante, as regras de intercalação utilizadas no intercalador 120 serão explicadas em pormenor, de acordo com os casos.Forma de Realização Exemplar 1: caso em que um intercalador de blocos é usado
[000110] De acordo com uma primeira forma de realização exemplar, o intercalador 120 pode intercalar a palavra código de LDPC no método abaixo descrito, de modo que o bit incluído num grupo predeterminado dentre a pluralidade de grupos de bits, constituindo a palavra código de LDPC intercalada, seja mapeado sobre um bit predeterminado num símbolo de modulação. Isso será explicado abaixo em detalhes com referência à FIG. 4.
[000111] A FIG. 4 é um diagrama de blocos para ilustrar uma configuração de um intercalador, de acordo com uma forma de realização exemplar. Com referência à FIG. 4, o intercalador 120 pode incluir um intercalador de paridade 121, um intercalador de grupos 122 (ou um intercalador em forma de grupos 122), um intercalador de remanejamento de grupos 123 e um intercalador de blocos 124.
[000112] O intercalador de paridade 121 intercala os bits de paridade, constituindo a palavra código de LDPC.
[000113] De maneira específica, quando a palavra código de LDPC for gerada com base na matriz de verificação de paridade 200, que tem a configuração da FIG. 2, o intercalador de paridade 121 pode apenas intercalar os bits de paridade da palavra código de LDPC, dentre os bits da palavra de informação e os bits de paridade da palavra código de LDPC, usando a Equação 12 apresentada a seguir:
Figure img0032
em que M é um intervalo, no qual um padrão de um grupo de colunas é repetido na submatriz da palavra de informação 210, a saber, o número de colunas incluído num grupo de colunas (por exemplo, M = 360), e Qldpc é um tamanho, em que cada coluna é deslocada de modo cíclico na submatriz da palavra de informação 210. Isto é, o intercalador de paridade 121 executa intercalação de paridade, no que diz respeito à palavra código de LDPC c = (c0, c1, ..., cNldpc-1), e emite U = (u0, u1, ... uNldpc-1).
[000114] A palavra código de LDPC, que é intercalada por paridade no método acima descrito, pode ser configurada, de tal modo que um número predeterminado de bits contínuos da palavra código de LDPC tenha características semelhantes de decodificação (distribuição de ciclos, um grau de uma coluna etc.).
[000115] Por exemplo, a palavra código de LDPC pode ter as mesmas características, com base no número M de bits contínuos. Nisto, M é um intervalo, no qual um padrão de um grupo de colunas é repetido na submatriz da palavra de informação e, por exemplo, pode ser 360.
[000116] De maneira específica, um produto dos bits da palavra código de LDPC e a matriz de verificação de paridade deve ser "0". Isto significa que uma soma de produtos do i° bit da palavra código de LDPC, ci (i = 0, 1,..., Nldpc -1) e a ia coluna da matriz de verificação de paridade deve ser um vetor "0". Deste modo, o i° bit da palavra código de LDPC pode ser considerado como correspondente à ia coluna da matriz de verificação de paridade.
[000117] No caso da matriz de verificação de paridade 200 da FIG.2, o número M de colunas na submatriz da palavra de informação 210 pertencentes ao mesmo grupo e a submatriz da palavra de informação 210 tem as mesmas características com base no grupo de colunas (por exemplo, as colunas pertencentes ao mesmo grupo de colunas têm o mesmo grau distribuição e as mesmas características de ciclo).
[000118] Neste caso, uma vez que M números de bits contínuos nos bits da palavra de informação correspondem ao mesmo grupo de colunas da submatriz da palavra de informação 210, os bits da palavra de informação podem ser formados por M números de bits contínuos tendo as mesmas características da palavra código. Quando os bits de paridade da palavra código de LDPC forem intercalados pelo intercalador de paridade 121, os bits de paridade da palavra código de LDPC podem ser formados por M números de bits contínuos tendo as mesmas características da palavra código.
[000119] No entanto, em relação à palavra código de LDPC codificada com base na matriz de verificação de paridade 300 da FIG. 3, a intercalação de paridade poderá não ser executada. Neste caso, o intercalador de paridade 121 pode ser omitido.
[000120] O intercalador de grupos 122 pode dividir a palavra código de LDPC intercalada por paridade numa pluralidade de grupos de bits e reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits (unidades de grupos). Isto é, o intercalador de grupos 122 pode intercalar a pluralidade de grupos de bits em modo de grupo de bits.
[000121] Para conseguir isto, o intercalador de grupos 122 divide a palavra código de LDPC intercalada por paridade em uma pluralidade de grupos de bits, utilizando a Equação 13 ou a Equação 14 abaixo apresentadas.
Figure img0033
onde Ngroup é o número total de grupos de bits, Xj é o j° grupo, e uk é o k° bit da palavra código de LDPC inserido no intercalador de grupos 122. Além disso,
Figure img0034
é o maior número inteiro abaixo de k/360.
[000122] Visto que 360 nessas Equações indica um exemplo do intervalo M, em que o padrão de um grupo de colunas é repetido na submatriz da palavra de informação, 360 nessas Equações pode ser alterado para M.
[000123] A palavra código de LDPC, que é dividida na pluralidade de grupos de bits, pode ser conforme mostrado na FIG. 5.
[000124] Com referência à FIG. 5, a palavra código de LDPC é dividida na pluralidade de grupos de bits e cada grupo de bits é formado do número M de bits contínuos. Quando M for 360, cada um da pluralidade de grupos de bits pode ser formado por 360 bits. Por conseguinte, cada um dos grupos de bits pode ser formado por bits correspondentes a cada um dos grupos de colunas da matriz de verificação de paridade.
[000125] De maneira específica, uma vez que a palavra código de LDPC é dividida pelo número M de bits contínuos, o número Kldpc de bits da palavra de informação é dividido no número (Kldpc/M) de grupos de bits, e o número Nldpc - Kldpc de bits de paridade é dividido no número (Nldpc - Kidpc)/M de grupos de bits. Por conseguinte, a palavra código de LDPC pode ser dividida no número Nldpc/M de grupos de bits no total.
[000126] Por exemplo, quando M = 360 e o comprimento Nldpc da palavra código de LDPC for 64800, o número de grupos de bits Ngroups é 180 (=64800/360) e, quando o comprimento Nldpc da palavra código de LDPC for 16200, o número de grupos de bits Ngroups é 45 (16200/360).
[000127] Como acima descrito, o intercalador de grupos 122 divide a palavra código de LDPC, de tal modo que o número M de bits contínuos seja incluído num mesmo grupo, uma vez que a palavra código de LDPC tem as mesmas características da palavra código com base no número M de bits contínuos. Por conseguinte, quando a palavra código de LDPC for agrupada pelo número M de bits contínuos, os bits com as mesmas características das palavras código pertencem ao mesmo grupo.
[000128] No exemplo acima descrito, o número de bits constituindo cada grupo de bits é M. No entanto, este é apenas um exemplo e o número de bits constituindo cada grupo de bits é variável.
[000129] Por exemplo, o número de bits constituindo cada grupo de bits pode ser uma parte alíquota de M. Ou seja, o número de bits constituindo cada grupo de bits pode ser uma parte alíquota do número de colunas constituindo um grupo de colunas da submatriz da palavra de informação da matriz de verificação de paridade. Neste caso, cada grupo de bits pode ser formado por parte alíquota do número M de bits. Por exemplo, quando o número de colunas constituindo um grupo de colunas da submatriz da palavra de informação for 360, isto é, M = 360, o intercalador de grupos 122 pode dividir a palavra código de LDPC numa pluralidade de grupos de bits, de modo que o número de bits constituindo cada grupo de bits seja uma das partes alíquotas de 360.
[000130] Na explicação seguinte, o número de bits, que constitui um grupo de bits, é M a título de exemplo, para conveniência de explicação.
[000131] Depois disso, o intercalador de grupos 122 intercala a palavra código de LDPC em modo de grupo de bits. De maneira específica, o intercalador de grupos 122 pode agrupar a palavra código de LDPC na pluralidade de grupos de bits e reorganizar a pluralidade de grupos de bits em modo de grupo de bits. Isto é, o intercalador de grupos 122 muda posições da pluralidade de grupos de bits, constituindo a palavra código de LDPC, e reorganiza a ordem da pluralidade de grupos de bits constituindo a palavra código de LDPC em modo de grupo de bits.
[000132] De acordo com uma forma de realização exemplar, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, de modo que grupos de bits, incluindo bits mapeados sobre o mesmo símbolo de modulação, dentre a pluralidade de grupos de bits, sejam afastados entre si em um intervalo predeterminado.
[000133] Neste caso, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, considerando, pelo menos, um dentre o número de fileiras e colunas do intercalador de blocos 124, o número de grupos de bits da palavra código de LDPC, e o número de bits incluídos em cada grupo de bits, de modo que grupos de bits, incluindo bits mapeados sobre o mesmo símbolo de modulação, sejam afastados entre si no intervalo predeterminado.
[000134] Para conseguir isto, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits usando a Equação 15, apresentada a seguir:
Figure img0035
onde Xj é o j° grupo de bits, antes da intercalação de grupos, e Yj é o j° grupo de bits após a intercalação de grupos. Além disso, π(j) é um parâmetro, que indica uma ordem de intercalação, e é determinado por, pelo menos, um dentre um comprimento de uma palavra código de LDPC, uma taxa de código e um método de modulação. Ou seja, π(j) denota uma ordem de permutação para intercalação em modo de grupo.
[000135] Nesse sentido, Xπ(j) é um π(j)° grupo de bits antes da intercalação no grupo, e a Equação 15 significa que a pré- intercalação de π(j)° grupo de bits é intercalado no j° grupo de bits.
[000136] De acordo com uma forma de realização exemplar, um exemplo de π(j) pode ser definido, como nas Tabelas 9 a 13 abaixo apresentadas.
[000137] Neste caso, π(j) é definido, de acordo com um comprimento de uma palavra código de LPDC e uma taxa de código, e uma matriz de verificação de paridade também é definida, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código. Por conseguinte, quando a codificação de LDPC for realizada com base numa matriz de verificação de paridade específica, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código, a palavra código de LDPC pode ser intercalada em modo de grupo de bits, com base em π(j) satisfazendo o comprimento correspondente da palavra código de LDPC e taxa de código.
[000138] Por exemplo, quando o codificador LDPC 110 executar codificação de LDPC a uma taxa de código de 6/15 para gerar uma palavra código de LDPC de um comprimento de 64800, o intercalador de grupos 122 pode executar a intercalação utilizando π(j), que é definido de acordo com o comprimento da palavra código de LDPC de 64800 e a taxa de código de 6/15, nas Tabelas 9 a 13 apresentadas a seguir. Por exemplo, usando π(j) definido, conforme mostrado na Tabela 9.
[000139] Por exemplo, quando o comprimento Nldpc da palavra código LDPC for 64800, a taxa de código for 6/15, e o método de modulação for 1024-Modulação de Amplitude em Quadratura (QAM), π(j) pode ser definido, conforme a Tabela 9 apresentada abaixo.
Figure img0036
[000140] No caso da Tabela 9, a Equação 15 pode ser expressa como Y0 = Xπ(0) = X66, Y1 = Xπ(1) = X21, Y2 = Xπ(2) = X51, . . . Y178 = Xπ(178) = X116, e Y179 = Xπ(179) = X123. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 66° grupo de bits pelo 0° grupo de bits, o 21° grupo de bits pelo 1° grupo de bits, o 51° grupo de bits pelo 2° grupo de bits, ..., o 116° grupo de bits pelo 178° grupo de bits, e o 123° grupo de bits pelo 179° grupo de bits.
[000141] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 8/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 10 apresentada a seguir.
Figure img0037
[000142] No caso da Tabela 10, a Equação 15 pode ser expressa como Yo = Xπ(0) = X77, Yi = Xπ(1) = X48, Y2 = Xπ(2) = X82, . . . Y178 = Xπ(178) = X7, e Y179 = Xπ(179) = X25. Nesse sentido, o intercalador de grupos i22 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 77° grupo de bits pelo 0° grupo de bits, o 48° grupo de bits pelo i° grupo de bits, o 82° grupo de bits pelo 2° grupo de bits, ..., o 7° grupo de bits pelo i78° grupo de bits, e o 25° grupo de bits pelo i79° grupo de bits.
[000143] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for i0/i5 e o método de modulação for i024-QAM, π(j) pode ser definido, conforme a Tabela i0 apresentada a seguir. Em particular, quando o codificador ii0 realizar a codificação de LDPC com base na matriz de verificação de paridade definida pela Tabela o intercalador de grupos 122 pode realizar intercalação de grupos usando π(j) definido na Tabela 11 apresentada abaixo.
Figure img0038
[000144] No caso da Tabela 11, a Equação 15 pode ser expressa como Y0 = Xπ(0) = X7, Y1 = Xπ(1) = X58, Y2 = Xπ(2) = X108, . . . Y178 = Xπ(178) = X125, e Y179 = Xπ(179) = X121. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 7° grupo de bits pelo 0° grupo de bits, o 58° grupo de bits pelo 1° grupo de bits, o 108° grupo de bits pelo 2° grupo de bits, ..., o 125° grupo de bits pelo 178° grupo de bits, e o 121° grupo de bits pelo 179° grupo de bits.
[000145] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 12 apresentada a seguir. Em particular, quando o codificador 110 realizar a codificação de LDPC com base na matriz de verificação de paridade definida pela Tabela 7, o intercalador de grupos 122 pode realizar intercalação de grupos usando π(j) definido na Tabela 12 apresentada abaixo.
Figure img0039
[000146] No caso da Tabela 12, a Equação 15 pode ser expressa como Y0 = Xπ(0) = X111, Y1 = Xπ(1) = X45, Y2 = Xπ(2) = X78, . . . Y178 = Xπ(178) = X18, e Y179 = Xπ(179) = X140. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 111° grupo de bits pelo 0° grupo de bits, o 45° grupo de bits pelo 1° grupo de bits, o 78° grupo de bits pelo 2° grupo de bits, ..., o 18° grupo de bits pelo 178° grupo de bits, e o 140° grupo de bits pelo 179° grupo de bits.
[000147] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 12/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 13 apresentada a seguir.
Figure img0040
[000148] No caso da Tabela 13, a Equação 15 pode ser expressa como Y0 = Xπ(0) = X91, Y1 = Xπ(1) = X19, Y2 = Xπ(2) = X11, . . . Y178 =Xπ(178) = X8, e Y179 = Xπ(179) = X145. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 91° grupo de bits pelo 0° grupo de bits, o 19° grupo de bits pelo 1° grupo de bits, o 11° grupo de bits pelo 2° grupo de bits, ..., o 8° grupo de bits pelo 178° grupo de bits, e o 145° grupo de bits pelo 179° grupo de bits.
[000149] Nos exemplos acima descritos, o comprimento da palavra código de LDPC é 64800 e a taxa de código é 6/15, 8/15, 10/15 e 12/15. No entanto, esse é apenas um exemplo e o padrão de intercalação pode ser definido de maneira variada,quando o comprimento da palavra código de LDPC for 16200 ou a taxa de código tiver valores diferentes.
[000150] Como acima descrito, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 15 e as Tabelas 9 a 13.
[000151] “j° bloco de saída do intercalador em modo de grupo” nas Tabelas 9 a 13 indica o j° grupo de bits emitido pelo intercalador de grupos 122 após intercalar, e “π(j)° bloco de entrada do intercalador em modo de grupo” indica o π(j)° grupo de bits inserido no intercalador de grupos 122.
[000152] Além disso, visto que a ordem dos grupos de bits, constituindo a palavra código de LDPC, é reorganizada pelo intercalador de grupos 122 em modo de grupo de bits e, em seguida, os grupos de bits são intercalados por blocos pelo intercalador de blocos 124, que será descrito abaixo, a "Ordem de grupos de bits a serem intercalados por blocos" é definida nas Tabelas 9 a 13 em relação a π(j).
[000153] π(j), definido como mostrado nas Tabelas 9 a 13, pode ser organizado, de acordo com as taxas de código, como mostrado na Tabela 14 apresentada a seguir:
Figure img0041
Figure img0042
Figure img0043
Figure img0044
Figure img0045
Figure img0046
[000154] “j° bloco de saída do intercalador em modo de grupo” na Tabela 14 indica o j° grupo de bits emitido pelo intercalador de grupos 122 após a intercalação, e “π(j)° bloco de entrada do intercalador em modo de grupo” indica o π(j)° grupo de bits inserido no intercalador de grupos 122". Com referência à Tabela 14, pode ser visto que a Tabela 14 é a organização de dados descritos nas Tabelas 9 a 13, de acordo com as taxas de código.
[000155] O intercalador de grupos 122 pode intercalar a palavra código de LDPC em modo de grupo de bits, utilizando a Equação 16 apresentada a seguir:
Figure img0047
onde Xj é o j° grupo de bits antes da intercalação de grupos, e Yj é o j° grupo de bits após intercalação de grupos. Além disso, π (j) é um parâmetro, que indica uma ordem de intercalação e é determinada por, pelo menos, um dentre o comprimento de uma palavra código de LDPC, uma taxa de código e um método de modulação.
[000156] Nesse sentido, Xj é um j° grupo de bits, antes da intercalação de grupos, e a Equação 16 significa que a pré- intercalação do j° grupo de bits é intercalada no π(j)° grupo de bits.
[000157] De acordo com ou forma de realização exemplar, um exemplo de π(j) pode ser definido, conforme as Tabelas 15 a 19 apresentadas abaixo.
[000158] Neste caso, π(j) é definido, de acordo com um comprimento de uma palavra código de LPDC e uma taxa de código, e uma matriz de verificação de paridade também é definida, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código. Por conseguinte, quando a codificação de LDPC for realizada com base numa matriz de verificação de paridade específica, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código, a palavra código de LDPC pode ser intercalada em modo de grupo de bits, com base em π(j) satisfazendo o comprimento correspondente da palavra código de LDPC e taxa de código.
[000159] Por exemplo, quando o codificador 110 executar codificação de LDPC a uma taxa de código de 6/15 para gerar uma palavra código de LDPC de um comprimento de 64800, o intercalador de grupos 122 pode executar a intercalação utilizando π(j), que é definido de acordo com o comprimento da palavra código de LDPC de 64800 e a taxa de código de 6/15, nas Tabelas 15 a 19 apresentadas a seguir, por exemplo, usando π(j) conforme definido na Tabela 15.
[000160] Por exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 6/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 15 apresentada abaixo.
Figure img0048
[000161] No caso da Tabela 15, a Equação 16 pode ser expressa como X0 = Yπ(0) = Y14, X1 = Yπ(1) = Y35, X2 = Yπ(2) = Y24, ... X178 = Yπ(178) = Y69, e X179 = Yπ(179) = Y152. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 14° grupo de bits, o 1° grupo de bits pelo 35° grupo de bits, o 2° grupo de bits pelo 24° grupo de bits, ..., o 178° grupo de bits pelo 69° grupo de bits, e o 179° grupo de bits pelo 152° grupo de bits.
[000162] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 8/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 16 apresentada a seguir.
Figure img0049
[000163] No caso da Tabela 16, a Equação 16 pode ser expressa como X0 = Yπ(0) = Y126, X1 = Yπ(1) = Y50, X2 = Yπ(2) = Y38, ... X178 = Yπ(178) = Y156, e X179 = Yπ(179) = Y117. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 126° grupo de bits, o 1° grupo de bits pelo 50° grupo de bits, o 2° grupo de bits pelo 38° grupo de bits, ..., o 178° grupo de bits pelo 156° grupo de bits, e o 179° grupo de bits pelo 117° grupo de bits.
[000164] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 17 apresentada a seguir. Em particular, quando o codificador 110 realizar a codificação de LDPC com base na matriz de verificação de paridade definida pela Tabela 6, o intercalador de grupos 122 pode realizar intercalação de grupos usando π(j) definido na Tabela 17 apresentada abaixo.
Figure img0050
[000165] No caso da Tabela 17, a Equação 16 pode ser expressa como X0 = Yπ(0) = Y62, X1 = Yπ(1) = Y4, X2 = Yπ(2) = Y94, ... X178 = Yπ(178) = Y129, e X179 = Yπ(179) = Y114. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 62° grupo de bits, o 1° grupo de bits pelo 4° grupo de bits, o 2° grupo de bits pelo 94° grupo de bits, ..., o 178° grupo de bits pelo 129° grupo de bits, e o 179° grupo de bits pelo 114° grupo de bits.
[000166] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 18 apresentada a seguir. Em particular, quando o codificador 110 realizar a codificação de LDPC com base na matriz de verificação de paridade definida pela Tabela 7, o intercalador de grupos 122 pode realizar intercalação de grupos usando π(j) definido na Tabela 18 apresentada abaixo.
Figure img0051
[000167] No caso da Tabela 18, a Equação 16 pode ser expressa como X0 = Yπ(0) = Y80, X1 = Yπ(1) = Y46, X2 = Yπ(2) = Y55, ... X178 = Yπ(178) = Y159, e X179 = Yπ(179) = Y147. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 80° grupo de bits, o 1° grupo de bits pelo 46° grupo de bits, o 2° grupo de bits pelo 55° grupo de bits, ..., o 178° grupo de bits pelo 159° grupo de bits, e o 179° grupo de bits pelo 147° grupo de bits.
[000168] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 12/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 19 apresentada a seguir.
Figure img0052
[000169] No caso da Tabela 19, a Equação 16 pode ser expressa como X0 = Yπ(0) = Y135, X1 = Yπ(1) = Y22, X2 = Yπ(2) = Y25, ... X178 = Yπ(178) = Y115, e X179 = Yπ(179) = Y148. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 135° grupo de bits, o 1° grupo de bits pelo 22° grupo de bits, o 2° grupo de bits pelo 25° grupo de bits, ..., o 178° grupo de bits pelo 115° grupo de bits, e o 179° grupo de bits pelo 148° grupo de bits.
[000170] Nos exemplos acima descritos, o comprimento da palavra código de LDPC é 64800 e a taxa de código é 6/15, 8/15, 10/15 e 12/15. No entanto, esse é apenas um exemplo e o padrão de intercalação pode ser definido de maneira variada, quando o comprimento da palavra código de LDPC for 16200 ou a taxa de código tiver valores diferentes.
[000171] Como acima descrito, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 16 e as Tabelas 15 a 19.
[000172] “j° bloco de entrada do intercalador em modo de grupo” nas Tabelas 15 a 19 indica o j° grupo de bits inserido no intercalador de grupos 122 antes da intercalação, e “π(j)° bloco de saída do intercalador em modo de grupo” indica o π(j)° grupo de bits emitido pelo intercalador de grupos 122, após intercalação.
[000173] Além disso, visto que a ordem dos grupos de bits, constituindo a palavra código de LDPC, é reorganizada pelo intercalador de grupos 122 em modo de grupo de bits e, em seguida, os grupos de bits são intercalados por blocos pelo intercalador de blocos 124, que será descrito abaixo, a "Ordem de grupos de bits a serem intercalados por blocos" é definida nas Tabelas 15 a 19 em relação a π(j).
[000174] π(j), definido como mostrado nas Tabelas 15 a 19, pode ser organizado, de acordo com as taxas de código, como mostrado na Tabela 20:
Figure img0053
Figure img0054
Figure img0055
Figure img0056
Figure img0057
Figure img0058
[000175] A Tabela 14 é o caso, em que a intercalação de grupos é executada usando a Equação 15 e π(j) é aplicado como um índice de um grupo de bits de entrada, e a Tabela 20 é o caso, em que a intercalação de grupos é executada usando a Equação 16 e π(j) é aplicado como um índice de um grupo de bits de saída. Portanto, as Tabelas 14 e 20 têm uma relação inversa entre si.
[000176] A palavra código de LDPC, que é intercalada por grupo no método acima descrito, é ilustrada na FIG. 6. Ao comparar a palavra código de LDPC da FIG. 6 e a palavra código de LDPC da FIG. 5, antes da intercalação de grupos, pode ser visto que a ordem da pluralidade de grupos de bits, que constitui a palavra código de LDPC, é reorganizada.
[000177] Isto é, como mostrado nas Figs. 5 e 6, os grupos da palavra código de LDPC são dispostos em ordem de grupo de bits X0, grupo de bits X1, ..., grupo de bits XNgroup-1, antes de serem intercalados por grupo, e são dispostos numa ordem de grupo de bits Y0, grupo de bits Y1, ..., grupo de bits YNgroup-1, depois de serem intercalados por grupo. Neste caso, a ordem para organizar os grupos de bits através da intercalação de grupos pode ser determinada com base nas Tabelas 9 a 20.
[000178] O intercalador de remanejamento de grupos 123 intercala bits em um mesmo grupo. Isto é, o intercalador de remanejamento de grupos 123 pode reorganizar uma ordem de bits no mesmo grupo de bits, alterando a ordem dos bits no mesmo grupo de bits.
[000179] Neste caso, o intercalador de remanejamento de grupos 123 pode reorganizar a ordem dos bits no mesmo grupo de bits por deslocamento cíclico de um número previamente determinado de bits dentre os bits no mesmo grupo de bits.
[000180] Por exemplo, como mostrado na FIG. 7, o intercalador de remanejamento de grupos 123 pode deslocar, de modo cíclico, bits incluídos no grupo de bits Y1 para a direita por 1 bit. Neste caso, os bits localizados na 0a posição, 1a posição, 2a posição, ..., 358a posição, e 359a posição no grupo de bits Y1, como mostrado na FIG. 7, são deslocados de modo cíclico para a direita por 1 bit. Como resultado, o bit localizado na 359a posição, antes de ser deslocado de modo cíclico, está localizado na frente do grupo de bits Y1, e os bits situados na 0a posição, 1a posição, 2a posição, ..., 358a posição, antes de serem deslocados de modo cíclico, são deslocados para a direita em série por 1 bit e localizados.
[000181] Além disso, o intercalador de remanejamento de grupos 123 pode reorganizar a ordem de bits em cada grupo de bits por deslocamento cíclico de um número diferente de bits em cada grupo de bits.
[000182] Por exemplo, o intercalador de remanejamento de grupos 123 pode deslocar, de modo cíclico, os bits incluídos no grupo de bits Y1 para a direita por 1 bit, e pode deslocar, de modo cíclico, os bits incluídos no grupo de bits Y2 para a direita por 3 bits.
[000183] No entanto, o intercalador de remanejamento de grupos 123 pode ser omitido, de acordo com as circunstâncias.
[000184] Além disso, o intercalador de remanejamento de grupos 123 é posicionado depois do intercalador de grupos 122, no exemplo acima descrito. No entanto, esse é meramente um exemplo. Ou seja, o intercalador de remanejamento de grupos 123 altera somente a ordem de bits em um determinado grupo de bits e não muda a ordem dos grupos de bits. Portanto, o intercalador de remanejamento de grupos 123 pode ser posicionado antes do intercalador de grupos 122.
[000185] O intercalador de blocos 124 intercala a pluralidade de grupos de bits, cuja ordem foi reorganizada. De maneira específica, o intercalador de blocos 124 pode intercalar a pluralidade de grupos de bits, cuja ordem foi reorganizada pelo intercalador de grupos 122 em modo de grupo de bits (ou unidade de grupo de bits). O intercalador de blocos 124 é formado por uma pluralidade de colunas, cada uma incluindo uma pluralidade de fileiras, e pode intercalar por dividir a pluralidade de grupos de bits reorganizada, com base numa ordem de modulação determinada de acordo com um método de modulação.
[000186] Neste caso, o intercalador de blocos 124 pode intercalar a pluralidade de grupos de bits, cuja ordem foi reorganizada, pelo intercalador de grupos 122 em modo de grupo de bits. De maneira específica, o intercalador de blocos 124 pode intercalar, por dividir a pluralidade de grupos de bits reorganizada, de acordo com uma ordem de modulação, utilizando uma primeira parte e uma segunda parte.
[000187] De maneira específica, o intercalador de blocos 124 intercala, dividindo cada uma da pluralidade de colunas em uma primeira parte e uma segunda parte, gravando, em série, a pluralidade de grupos de bits na pluralidade de colunas da primeira parte, em modo de grupo de bits, dividindo os bits dos outros grupos de bits em grupos (ou subgrupos de bits), cada um incluindo um número predeterminado de bits, com base no número de colunas, e gravando, em série, os subgrupos de bits na pluralidade de colunas da segunda parte.
[000188] Aqui, o número de grupos de bits, que são intercalados em modo de grupo de bits, pode ser determinado por, pelo menos, um dentre o número de fileiras e colunas, que constituem o intercalador de blocos 124, o número de grupos de bits e o número de bits incluídos em cada grupo de bits. Em outras palavras, o intercalador de blocos 124 pode determinar os grupos de bits, que devem ser intercalados em modo de grupo de bits, considerando, pelo menos, um dentre o número de fileiras e colunas, que constituem o intercalador de blocos 124, o número de grupos de bits e o número de bits incluídos em cada grupo de bits, intercalar os grupos de bits correspondentes em modo de grupo de bits, e dividir bits dos outros grupos de bits em subgrupos de bits, e intercalar os subgrupos de bits. Por exemplo, o intercalador de blocos 124 pode intercalar, pelo menos, parte da pluralidade de grupos de bits em modo de grupo de bits, usando a primeira parte, e dividir bits dos outros grupos de bits em subgrupos de bits, e intercalar os subgrupos de bits usando a segunda parte.
[000189] Por sua vez, intercalar grupos de bits em modo de grupo de bits (ou unidades de grupo de bits) significa que os bits incluídos no mesmo grupo de bits são gravados na mesma coluna. Em outras palavras, o intercalador de blocos 124, no caso de grupos de bits, que são intercalados em modo de grupo de bits, pode não dividir os bits incluídos nos mesmos grupos de bits, e gravar os bits na mesma coluna. No entanto, no caso de grupos de bits, que não são intercalados em modo de grupo de bits, pode dividir os bits em, pelo menos, um desses grupos de bits ou cada um desses grupos de bits, e gravar os bits em colunas diferentes.
[000190] Por conseguinte, o número de fileiras, que constituem a primeira parte, é um número inteiro múltiplo do número de bits incluídos num grupo de bits (por exemplo, 360), e o número de fileiras, que constituem a segunda parte, pode ser menor do que o número de bits incluídos nesse grupo de bits.
[000191] Além disso, em todos os grupos de bits intercalados pela primeira parte, os bits incluídos num mesmo grupo de bits são gravados e intercalados numa mesma coluna da primeira parte e, em pelo menos um grupo intercalado pela segunda parte, os bits são divididos e gravados em, pelo menos, duas colunas da segunda parte.O método de intercalação irá ser descrito mais tarde.
[000192] Por sua vez, o intercalador de remanejamento de grupos 123 altera somente uma ordem de bits num grupo de bits e não altera a ordem de grupos de bits por intercalação. Nesse sentido, uma ordem de grupos de bits a ser intercalada por blocos pelo intercalador de blocos 124, isto é, a ordem dos grupos de bits a ser inserida no intercalador de blocos 124, pode ser determinada pelo intercalador de grupos 122. Por exemplo, a ordem dos grupos de bits a ser intercalada por bloco pelo intercalador de blocos 124 pode ser determinada por π(j) definido nas Tabelas 9 a 20.
[000193] Como descrito acima, o intercalador de blocos 124 pode intercalar a pluralidade de grupos de bits, cuja ordem foi reorganizada em modo de grupo de bits, usando a pluralidade de colunas, cada uma incluindo a pluralidade de fileiras.
[000194] Neste caso, o intercalador de blocos 124 pode intercalar a palavra código de LDPC, dividindo a pluralidade de colunas em, pelo menos, duas partes. Por exemplo, o intercalador de blocos 124 pode dividir cada uma da pluralidade de colunas na primeira parte e na segunda parte e intercalar a pluralidade de grupos de bits, que constituem a palavra código de LDPC.
[000195] Neste caso, o intercalador de blocos 124 pode dividir cada uma da pluralidade de colunas em número N de partes (N é um número inteiro maior ou igual a 2), de acordo com o fato do número de grupos de bits, que constituem a palavra código de LDPC, ser um número inteiro múltiplo do número de colunas, que constituem o intercalador de blocos 124, e pode executar a intercalação.
[000196] Quando o número de grupos de bits, que constituem a palavra código de LDPC, for um número inteiro múltiplo do número de colunas, que constituem o intercalador de blocos 124, o intercalador de blocos 124 pode intercalar a pluralidade de grupos de bits, que constituem a palavra código de LDPC em modo de grupo de bits, sem dividir cada uma da pluralidade de colunas em partes.
[000197] De maneira específica, o intercalador de blocos 124 pode intercalar, gravando a pluralidade de grupos de bits da palavra código de LDPC em cada uma das colunas em modo de grupo de bits na direção da coluna, e lendo cada fileira da pluralidade de colunas, em que a pluralidade de grupos de bits é gravada em modo de grupo de bits em uma direção de fileira.
[000198] Neste caso, o intercalador de blocos 124 pode intercalar, gravando bits incluídos num número predeterminado de grupos de bits, que corresponde a um quociente obtido pela divisão, em série, do número de grupos de bits da palavra código de LDPC pelo número de colunas do intercalador de blocos 124, em cada uma da pluralidade de colunas na direção da coluna, e lendo cada fileira da pluralidade de colunas, em que os bits são gravados numa direção da fileira.
[000199] Daqui em diante, o grupo de bits localizado na ja posição, depois de ser intercalado pelo intercalador de grupos 122, será referido como grupo Yj.
[000200] Por exemplo, assume-se que o intercalador de blocos 124 seja formado por número C de colunas, cada uma incluindo o número R1 de fileiras. Além disso, assume-se que a palavra código de LDPC seja formada por número Ngroup de grupos de bits, e que o número Ngroup de grupos de bits seja um número inteiro múltiplo de C.
[000201] Neste caso, quando o quociente obtido pela divisão do número Ngroup de grupos de bits, que constituem a palavra código de LDPC, pelo número C de colunas, que constituem o intercalador de blocos 124, for igual a A (=Ngroup/ C) (A é um número inteiro maior que 0), o intercalador de blocos 124 pode intercalar, gravando, em série, o número A (N=group/ C) de grupos de bits em cada coluna na direção de coluna, e lendo bits gravados em cada coluna na direção de fileira.
[000202] Por exemplo, como mostrado na FIG. 8, o intercalador de blocos 124 grava bits incluídos em grupo de bits Y0, grupo de bits Yi, ..., grupo de bits YA-i na 1a coluna da 1a fileira até a R1a fileira, grava bits incluídos no grupo de bits YA, grupo de bits YA+1, ..., grupo de bits Y2A-1 na 2a coluna, da 1a fileira à R1a fileira, ..., e grava bits incluídos em grupo de bits YCA-A, grupo de bits YCA-A+1, ..., grupo de bits YCA-1 na coluna C, da 1a fileira à R1a fileira. O intercalador de blocos 124 pode ler os bits gravados em cada fileira da pluralidade de colunas na direção de fileira.
[000203] Nesse sentido, o intercalador de blocos 124 intercala todos os grupos de bits, que constituem a palavra código de LDPC em modo de grupo de bits.
[000204] No entanto, quando o número de grupos de bits da palavra código de LDPC não for um número inteiro múltiplo do número de colunas do intercalador de blocos 124, o intercalador de blocos 124 pode dividir cada coluna em 2 partes e intercalar uma parte da pluralidade de grupos de bits da palavra código de LDPC em modo de grupo de bits, e dividir bits dos outros grupos de bits em subgrupos de bits e intercalar os subgrupos de bits. Neste caso, os bits incluídos nos outros grupos de bits, isto é, os bits incluídos no número de grupos, que correspondem ao restante, quando o número de grupos de bits, que constituem a palavra código de LDPC, for dividido pelo número de colunas, não são intercalados em modo de grupo de bits, mas intercalados ao serem divididos de acordo com o número de colunas.
[000205] De maneira específica, o intercalador de blocos 124 pode intercalar a palavra código de LDPC, dividindo cada uma da pluralidade de colunas em duas partes.
[000206] Neste caso, o intercalador de blocos 124 pode dividir a pluralidade de colunas na primeira parte e na segunda parte, com base em, pelo menos, um dentre o número de fileiras e colunas do intercalador de blocos 124, o número de grupos de bits constituindo a palavra código de LDPC, e o número de bits constituindo cada um dos grupos de bits.
[000207] Aqui, cada um da pluralidade de grupos de bits pode ser formado por 360 bits. Além disso, o número de grupos de bits da palavra código de LDPC é determinado com base no comprimento da palavra código de LDPC e no número de bits incluídos em cada grupo de bits. Por exemplo, quando uma palavra código de LDPC no comprimento de 16200 for dividida, de tal modo que cada grupo de bits tenha 360 bits, a palavra código de LDPC é dividida em 45 grupos de bits. De maneira alternativa, quando uma palavra código de LDPC no comprimento de 64800 for dividida, de tal modo que cada grupo de bits tenha 360 bits, a palavra código de LDPC pode ser dividida em 180 grupos de bits. Além disso, o número de colunas, que constituem o intercalador de blocos 124, pode ser determinado de acordo com um método de modulação. Isto será explicado em detalhe abaixo.
[000208] Nesse sentido, o número de fileiras, que constituem cada uma da primeira parte e da segunda parte, pode ser determinado com base no número de colunas, que constituem o intercalador de blocos 124, o número de grupos de bits, que constituem a palavra código de LDPC, e o número de bits, que constituem cada um da pluralidade de grupos de bits.
[000209] De maneira específica, em cada uma da pluralidade de colunas, a primeira parte pode ser formada por tantas fileiras, quanto o número de bits incluídos em, pelo menos, um grupo de bits, que pode ser gravado em cada coluna em modo de grupo de bits, dentre a pluralidade de grupos de bits da palavra código de LDPC, de acordo com o número de colunas, que constituem o intercalador de blocos 124, o número de grupos de bits que constituem a palavra código de LDPC, e o número de bits que constituem cada grupo de bits.
[000210] Em cada uma da pluralidade de colunas, a segunda parte pode ser formada por fileiras, excluindo tantas fileiras, quanto o número de bits constituindo, pelo menos, alguns grupos de bits, que podem ser gravados em cada uma da pluralidade de colunas em modo de grupo de bits. De maneira específica, o número de fileiras da segunda parte pode ser o mesmo valor que um quociente, quando o número de bits incluídos em todos os grupos de bits, excluindo grupos de bits correspondentes à primeira parte, for dividido pelo número de colunas, que constituem o intercalador de blocos 124. Em outras palavras, o número de fileiras da segunda parte pode ser o mesmo valor que um quociente, quando o número de bits incluídos nos grupos de bits restantes, que não foram gravados na primeira parte, dentre os grupos de bits, que constituem a palavra código de LDPC, é dividido pelo número de colunas.
[000211] Isto é, o intercalador de blocos 124 pode dividir cada uma da pluralidade de colunas na primeira parte, incluindo tantas fileiras, quanto o número de bits incluídos em grupos de bits, que podem ser gravados em cada coluna em modo de grupo de bits, e a segunda parte incluindo as outras fileiras.
[000212] Nesse sentido, a primeira parte pode ser formada por tantas fileiras, quanto o número de bits incluídos em grupos de bits, isto é, tantas fileiras, quanto um número inteiro múltiplo de M. No entanto, uma vez que o número de bits da palavra código, que constitui cada grupo de bits, pode ser uma parte alíquota de M, como descrito acima, a primeira parte pode ser formada por tantas fileiras, quanto um número inteiro múltiplo do número de bits que constitui cada grupo de bits.
[000213] Neste caso, o intercalador de blocos 124 pode intercalar, gravando e lendo a palavra código de LDPC na primeira parte e na segunda parte no mesmo método.
[000214] De maneira específica, o intercalador de blocos 124 pode intercalar, gravando a palavra código de LDPC na pluralidade de colunas, que constituem cada uma da primeira parte e da segunda parte na direção da coluna, e lendo a pluralidade de colunas, que constituem a primeira parte e a segunda parte, em que a palavra código de LDPC é gravada numa direção da fileira.
[000215] Isto é, o intercalador de blocos 124 pode intercalar, gravando os bits incluídos em, pelo menos, alguns grupos de bits, que podem ser gravados em cada uma da pluralidade de colunas em modo de grupo de bits, dentre a pluralidade de grupos de bits que constituem a palavra código de LDPC, em cada uma da pluralidade de colunas da primeira parte, em série, dividindo os bits incluídos nos outros grupos de bits, e gravando esses bits divididos na pluralidade de colunas da segunda parte na direção da coluna, e lendo os bits gravados em cada uma da pluralidade de colunas, que constituem cada uma da primeira parte e da segunda parte na direção da fileira.
[000216] Neste caso, o intercalador de blocos 124 pode intercalar, dividindo os outros grupos de bits dentre a pluralidade de grupos de bits, que constituem a palavra código de LDPC, com base no número de colunas, que constituem o intercalador de blocos 124.
[000217] De maneira específica, o intercalador de blocos 124 pode intercalar, dividindo os bits incluídos nos outros grupos de bits pelo número de uma pluralidade de colunas, gravando cada um dos bits divididos em cada uma de uma pluralidade de colunas, que constituem a segunda parte na direção da coluna, e lendo a pluralidade de colunas, que constituem a segunda parte, onde os bits divididos são gravados na direção da fileira.
[000218] Isto é, o intercalador de blocos 124 pode dividir os bits incluídos nos outros grupos de bits dentre a pluralidade de grupos de bits da palavra código de LDPC, isto é, os bits no número de grupos de bits, que correspondem ao restante, quando o número de grupos de bits, que constituem a palavra código de LDPC, for dividido pelo número de colunas, pelo número de colunas, e pode gravar os bits divididos em cada coluna da segunda parte, em série, na direção da coluna.
[000219] Por exemplo, assume-se que o intercalador de blocos 124 seja formado por número C de colunas, cada uma incluindo número R1 de fileiras. Além disso, assume-se que a palavra código de LDPC seja formada por número Ngroup de grupos de bits, o número de grupos de bits Ngroup não seja um número inteiro múltiplo de C, e A X C + 1 = Ngroup (A é um número inteiro maior que 0). Em outras palavras, assume-se que, quando o número de grupos de bits, que constituem a palavra código de LDPC, for dividido pelo número de colunas, o quociente seja A, e o restante seja 1
[000220] Neste caso, como mostrado nas FIGs. 9 e 10, o intercalador de blocos 124 pode dividir cada coluna numa primeira parte, incluindo o número R1 de fileiras, e numa segunda parte, incluindo o número R2 de fileiras. Neste caso, R1 pode corresponder ao número de bits incluídos em grupos de bits, que podem ser gravados em cada coluna em modo de grupo de bits, e R2 pode ser R1 subtraído do número de fileiras de cada coluna.
[000221] Isto é, no exemplo acima descrito, o número de grupos de bits, que pode ser gravado em cada coluna em modo de grupo de bits, é A, e a primeira parte de cada coluna pode ser formada por tantas fileiras, quanto o número de bits incluídos em número A de grupos de bits, ou seja, pode ser formada por tantas fileiras, quanto o número A x M.
[000222] Neste caso, o intercalador de blocos 124 grava os bits incluídos nos grupos de bits, que podem ser gravados em cada coluna em modo de grupo de bits, ou seja, número A de grupos de bits, na primeira parte de cada coluna na direção da coluna.
[000223] Isto é, como mostrado nas Figs. 9 e 10, o intercalador de blocos 124 grava os bits incluídos em cada um dentre o grupo de bits Y0, grupo de bits Y1, ..., grupo de bits YA-1 nas 1a à R1a fileiras da primeira parte da 1a coluna, grava bits incluídos em cada um dentre o grupo de bits YA, grupo de bits YA+1, ..., grupo de bits Y2A-1 nas 1a à R1a fileiras da primeira parte da 2a coluna, ..., grava bits incluídos em cada um do grupo de bits YCA-A, grupo de bits YCA-A+1, ..., grupo de bits YCA-1 nas 1a à R1a fileiras da primeira parte da coluna C.
[000224] Como acima descrito, o intercalador de blocos 124 grava os bits incluídos nos grupos de bits, que podem ser gravados em cada coluna, em modo de grupo de bits, na primeira parte de cada coluna em modo de grupo de bits.
[000225] Em outras palavras, na forma de realização exemplar acima, os bits incluídos em cada grupo de bits (Y0), grupo de bits (Y1), ..., grupo de bits (YA-1) podem não ser divididos e todos os bits podem ser gravados na primeira coluna, os bits incluídos em cada grupo de bits (YA), grupo de bits (YA+1), ..., grupo de bits (Y2A-1) podem não ser divididos e todos os bits podem ser gravados na segunda coluna, e os bits incluídos em cada grupo de bits (YCA-A), grupo de bits (YCA-A+1), ..., grupo (YCA-1) podem não ser divididos e todos os bits podem ser gravados na coluna C. Deste modo, bits incluídos em um mesmo grupo de bits em todos grupo de bits intercalados pela primeira parte são gravados na mesma coluna da primeira parte.
[000226] Depois disso, o intercalador de blocos 124 divide bits incluídos nos outros grupos de bits, exceto os grupos de bits gravados na primeira parte de cada coluna dentre a pluralidade de grupos de bits, e grava esses bits na segunda parte de cada coluna, na direção da coluna. Neste caso, o intercalador de blocos 124 divide os bits incluídos nos outros grupos de bits, de modo que o mesmo número de bits seja gravado na segunda parte de cada coluna, na direção da coluna. Aqui, uma ordem de gravação de bits na primeira parte e na segunda parte pode ser invertida. Ou seja, bits podem ser gravados na segunda parte antes da primeira parte, de acordo com uma forma de realização exemplar.
[000227] No exemplo acima descrito, uma vez que A x C + 1 = Ngroup, quando os grupos de bits constituindo a palavra código de LDPC forem gravados na primeira parte, em série, o último grupo de bits YNgroup-1 da palavra código de LDPC não é gravado na primeira parte e permanece. Nesse sentido, o intercalador de blocos 124 divide os bits incluídos no grupo de bits YNgroup-1 em número C de subgrupos de bits, como mostrado na FIG. 9, e grava os bits divididos (isto é, os bits correspondentes ao quociente, quando os bits incluídos no último grupo (YNgroup-1) são divididos por C) na segunda parte de cada coluna, em série.
[000228] Os bits divididos com base no número de colunas podem ser referidos como subgrupos de bits. Neste caso, cada um dos subgrupos de bits pode ser gravado em cada coluna da segunda parte. Isto é, os bits incluídos nos grupos de bits podem ser divididos e podem formar os subgrupos de bits.
[000229] Ou seja, o intercalador de blocos 124 grava os bits na 1a até R2a fileiras da segunda parte da 1a coluna, grava os bits na 1a até R2a fileiras da segunda parte da 2a coluna, ..., e grava os bits na 1a até R2a fileiras da segunda parte da coluna C. Neste caso, o intercalador de blocos 124 pode gravar os bits na segunda parte de cada coluna na direção da coluna, como mostrado na FIG. 9.
[000230] Isto é, na segunda parte, os bits constituindo um grupo de bits podem não ser gravados na mesma coluna, e podem ser gravados numa pluralidade de colunas. Em outras palavras, no exemplo acima, o último grupo de bits (YNgroup-1) é formado por número M de bits e, assim, os bits incluídos no último grupo de bits (YNgroup-1) podem ser divididos por M/C e gravados em cada coluna. Isto é, os bits incluídos no último grupo de bits (YNgroup-1) são divididos por M/C, formando número M/C de subgrupos de bits, e cada um dos subgrupos de bits pode ser gravado em cada coluna da segunda parte.
[000231] Nesse sentido, em, pelo menos, um grupo de bits, que é intercalado pela segunda parte, os bits incluídos em, pelo menos, um grupo de bits são divididos e gravados em, pelo menos, duas colunas que constituem a segunda parte.
[000232] No exemplo acima descrito, o intercalador de blocos 124 grava os bits na segunda parte na direção da coluna. No entanto, isto é meramente um exemplo. Isto é, o intercalador de blocos 124 pode gravar os bits na pluralidade de colunas da segunda parte numa direção da fileira. Neste caso, o intercalador de blocos 124 pode gravar os bits na primeira parte no mesmo método, tal como descrito acima.
[000233] De maneira específica, com referência à FIG. 10, o intercalador de blocos 124 grava os bits da 1a fileira da segunda parte na 1a coluna à 1a fileira da segunda parte na coluna C, grava os bits da 2a fileira da segunda parte na 1a coluna à 2a fileira da segunda parte na coluna C, ..., e grava os bits da R2a fileira da segunda parte na 1a coluna à R2a fileira da segunda parte na coluna C.
[000234] Por outro lado, o intercalador de blocos 124 lê os bits gravados em cada fileira de cada parte, em série, na direção da fileira. Isto é, como mostrado nas Figs. 9 e 10, o intercalador de blocos 124 lê os bits gravados em cada fileira da primeira parte da pluralidade de colunas em série na direção da fileira, e lê os bits gravados em cada fileira da segunda parte da pluralidade de colunas, em série, na direção da fileira.
[000235] Nesse sentido, o intercalador de blocos 124 pode intercalar uma parte dentre a pluralidade de grupos de bits que constituem a palavra código LDPC em modo de grupo de bits, e dividir e intercalar alguns dos grupos de bits restantes. Isto é, o intercalador de blocos 124 pode intercalar por gravar a palavra código de LDPC, que constitui um número predeterminado de grupos de bits dentre a pluralidade de grupos de bits na pluralidade de colunas da primeira parte em modo de grupo de bits, dividindo os bits dos outros grupos de bits e gravando os bits em cada uma das colunas da segunda parte, e lendo a pluralidade de colunas da primeira e da segunda parte na direção da fileira.
[000236] Como descrito acima, o intercalador de blocos 124 pode intercalar a pluralidade de grupos de bits nos métodos descritos acima com referência às FIGS. 8 a 10.
[000237] Em particular, no caso da FIG. 9, os bits incluídos no grupo de bits, que não pertencem à primeira parte, são gravados na segunda parte na direção da coluna e lidos na direção da fileira. Em vista disso, a ordem dos bits incluídos no grupo de bits, que não pertencem à primeira parte, é reorganizada. Uma vez que os bits incluídos no grupo de bits, que não pertencem à primeira parte, são intercalados, como descrito acima, o desempenho da Bit Error Rate (BER) (Taxa de Erro de Bits)/ Frame Error Rate (FER) (Taxa de Erro de Fotogramas) pode ser melhorado em comparação com um caso, em que esses bits não são intercalados.
[000238] No entanto, o grupo de bits, que não pertence à primeira parte, pode não ser intercalado, tal como apresentado na FIG. 11. Ou seja, uma vez que o intercalador de blocos 124 grava e lê os bits incluídos no grupo de bits, que não pertence à primeira parte, na e da segunda parte na direção da fileira, a ordem dos bits incluídos no grupo de bits, que não pertencem à primeira parte, não é alterada, e esses bits são enviados para o modulador 130 em série. Neste caso, os bits incluídos no grupo de bits, que não pertencem à primeira parte, podem ser emitidos em série e ser mapeados sobre um símbolo de modulação.
[000239] Nas Figs. 9 e 10, o último grupo de bits unitário dentre a pluralidade de grupos de bits é gravado na segunda parte. No entanto, esse é meramente um exemplo. O número de grupos de bits gravados na segunda parte pode variar, de acordo com o número de grupos de bits que constituem a palavra código de LDPC, o número de bits que constituem cada um dos grupos de bits, o número de colunas e fileiras do intercalador de blocos, o número de antenas de transmissão etc..
[000240] O intercalador de blocos 124 pode ter uma configuração, como mostrado nas Tabelas 21 e 22 apresentadas a seguir:
Figure img0059
Figure img0060
[000241] Aqui, C (ou NC) é o número de colunas do intercalador de blocos 124, R1 é o número de fileiras constituindo a primeira parte em cada coluna, e R2 representa o número de fileiras constituindo a segunda parte em cada coluna.
[000242] Referindo-se às Tabelas 21 e 22, C é o mesmo valor que uma ordem de modulação, de acordo com um método de modulação, e cada uma de uma pluralidade de colunas é formada por fileiras, que correspondem a um valor obtido pela divisão do número de bits, que constituem a palavra código de LDPC, pelo número de uma pluralidade de colunas.
[000243] Por exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800 e o método de modulação for 1024-QAM, o intercalador de blocos 124 é formado por 10 colunas, quando a ordem de modulação for 10, no caso de 1024-QAM, e cada coluna é formada por tantas fileiras, quanto R1 + R2 = 6480 (= 64800/10).
[000244] Por sua vez, referindo-se às Tabelas 21 e 22, quando o número de grupos de bits constituindo a palavra código de LDPC for um número inteiro múltiplo do número de colunas, o intercalador de blocos 124 intercala sem dividir cada coluna. Portanto, R1 corresponde ao número de fileiras que constituem cada coluna, e R2 é 0. Além disso, quando o número de grupos de bits constituindo a palavra código de LDPC não for um número inteiro múltiplo do número de colunas, o intercalador de blocos 124 intercala os grupos, por dividir cada coluna na primeira parte formada por número R1 de fileiras, e a segunda parte formada por número R2 de fileiras.
[000245] Quando o número de colunas do intercalador de blocos 124 for igual ao número de bits, que constituem um símbolo de modulação, como mostrado nas Tabelas 21 e 22, bits incluídos num mesmo grupo de bits são mapeados sobre um único bit de cada símbolo de modulação.
[000246] Por exemplo, quando Nldpc = 64800 e o método de modulação for 1024-QAM, o intercalador de blocos 124 pode ser formado por 10 colunas, cada uma incluindo 6480 fileiras. Neste caso, os bits incluídos em cada um da pluralidade de grupos de bits são gravados nas 10 colunas e os bits gravados na mesma fileira, em cada coluna, são emitidos em série. Neste caso, uma vez que 10 bits constituem um único símbolo de modulação no método de modulação de 1024-QAM, bits incluídos no mesmo grupo de bits, isto é, bits emitidos por uma única coluna, podem ser mapeados sobre um único bit de cada símbolo de modulação. Por exemplo, bits incluídos num grupo de bits gravado na 1a coluna podem ser mapeados sobre um primeiro bit de cada símbolo de modulação.
[000247] Com referência às Tabelas 21 e 22, o número total de fileiras do intercalador de blocos 124, isto é, R1 + R2, é Nldpc/C.
[000248] Além disso, o número de fileiras da primeira parte, R1, é um número inteiro múltiplo do número de bits incluídos em cada grupo, M (por exemplo, M = 360), e pode ser expresso como [Ngroup/C] x M, e o número de fileiras da segunda parte, R2, pode ser Nldpc/ C-R1. Aqui, [Ngroup/C] é o maior número inteiro abaixo de Ngroup/C. Uma vez que R1 é um número inteiro múltiplo do número de bits incluídos em cada grupo, M, bits podem ser gravados em R1 em modo de grupo de bits.
[000249] Além disso, quando o número de grupos de bits da palavra código de LDPC não for um número inteiro múltiplo do número de colunas, pode ser visto nas Tabelas 21 e 22, que o intercalador de blocos 124 intercala, através da divisão de cada coluna em duas partes.
[000250] De maneira específica, o comprimento da palavra código de LDPC dividido pelo número de colunas é o número total de fileiras incluídas em cada coluna. Neste caso, quando o número de grupos de bits da palavra código de LDPC for um número inteiro múltiplo do número de colunas, cada coluna não é dividida em duas partes. No entanto, quando o número de grupos de bits da palavra código de LDPC não for um número inteiro múltiplo do número de colunas, cada coluna é dividida em duas partes.
[000251] Por exemplo, assume-se que o número de colunas do intercalador de blocos 124 seja idêntico ao número de bits constituindo um símbolo de modulação, e uma palavra código de LDPC seja formada por 64800 bits, como mostrado na Tabela 21. Neste caso, cada grupo de bits da palavra código de LDPC é formado por 360 bits e a palavra código de LDPC é formada por 64800/360 (= 180) grupos de bits.
[000252] Quando o método de modulação for 1024-QAM, o intercalador de blocos 124 pode ser formado por 10 colunas e cada coluna pode ter 64800/10 (= 6480) fileiras.
[000253] Neste caso, uma vez que o número de grupos de bits da palavra código de LDPC dividido pelo número de colunas é 180/10 (= 18), bits podem ser gravados em cada coluna em modo de grupo de bits, sem dividir cada coluna em duas partes. Isto é, bits incluídos em 18 grupos de bits, que é o quociente, quando o número de grupos de bits constituindo a palavra código de LDPC é dividido pelo número de colunas, ou seja, 18x360 (= 6480) bits podem ser gravados em cada coluna.
[000254] No entanto, quando o método de modulação for 256-QAM, o intercalador de blocos 124 pode ser formado por oito (8) colunas, e cada coluna pode ter 64800/8 (= 8100) fileiras.
[000255] Neste caso, uma vez que o número de grupos de bits da palavra código de LDPC dividido pelo número de colunas é 180/8 = 22,5, o número de grupos de bits, que constituem a palavra código de LDPC, não é um número inteiro múltiplo do número de colunas. Nesse sentido, o intercalador de blocos 124 divide cada uma das oito (8) colunas em duas partes para realizar a intercalação em modo de grupo de bits.
[000256] Neste caso, uma vez que os bits devem ser gravados na primeira parte de cada coluna em modo de grupo de bits, o número de grupos de bits, que pode ser gravado na primeira parte de cada coluna em modo de grupo de bits, é 22, que é o quociente, quando o número de grupos de bits, que constituem a palavra código de LDPC, é dividido pelo número de colunas e, por conseguinte, a primeira parte de cada coluna tem 22x360 (= 7920) fileiras. Nesse sentido, 7920 bits incluídos em 22 grupos de bits podem ser gravados na primeira parte de cada coluna.
[000257] A segunda parte de cada coluna tem fileiras, que são as fileiras da primeira parte subtraídas pelo total de fileiras de cada coluna. Por conseguinte, a segunda parte de cada coluna inclui 8100-7920 (= 180) fileiras.
[000258] Neste caso, os bits incluídos no outro grupo de bits, que não foi gravado na primeira parte, são divididos e gravados na segunda parte de cada coluna.
[000259] De maneira específica, uma vez que 22 x 8 (= 176) grupos de bits são gravados na primeira parte, o número de grupos de bits a ser gravado na segunda parte é 180 - 176 (= 4) (por exemplo, grupo de bits Y176, grupo de bits Y177, grupo de bits Y178 e grupo de bits Y179, dentre o grupo de bits Y0, grupo de bits Yi, grupo de bits Y2, ..., grupo de bits Y178, e grupo de bits Y179, que constituem a palavra código de LDPC).
[000260] Por conseguinte, o intercalador de blocos 124 pode gravar os quatro (4) grupos de bits, que não foram gravados na primeira parte, e permanecem dentre os grupos de bits, que constituem a palavra código de LDPC, na segunda parte de cada coluna em série.
[000261] Isto é, o intercalador de blocos 124 pode gravar 180 bits dos 360 bits incluídos no grupo de bits Y176 na 1a fileira à 180a fileira da segunda parte da 1a coluna na direção da coluna, e pode gravar os outros 180 bits na 1a fileira à 180a fileira da segunda parte da 2a coluna na direção da coluna. Além disso, o intercalador de blocos 124 pode gravar 180 bits dos 360 bits incluídos no grupo de bits Y177 na 1a fileira à 180a fileira da segunda parte da 3a coluna na direção da coluna, e pode gravar os outros 180 bits na 1a fileira à 180a fileira da segunda parte da 4a coluna na direção da coluna. Além disso, o intercalador de blocos 124 pode gravar 180 bits dos 360 bits incluídos no grupo de bits Y178 na 1a fileira à 180a fileira da segunda parte da 5a coluna na direção da coluna, e pode gravar os outros 180 bits na 1a fileira à 180a fileira da segunda parte da 6a coluna na direção da coluna. Além disso, o intercalador de blocos 124 pode gravar 180 bits dos 360 bits incluídos no grupo de bits Y179 na 1a fileira à 180a fileira da segunda parte da 7a coluna na direção da coluna, e pode gravar os outros 180 bits na 1a fileira à 180a fileira da segunda parte da 8a coluna na direção da coluna.
[000262] Por conseguinte, os bits incluídos no grupo de bits, que não foram gravados na primeira parte e permanecem, não são gravados na mesma coluna na segunda parte, e podem ser divididos e gravados na pluralidade de colunas.
[000263] Daqui em diante, o intercalador de blocos 124 da FIG. 4, de acordo com uma forma de realização exemplificativa, vai ser explicado em detalhe com referência à FIG. 11.
[000264] Numa palavra código de LDPC intercalada por grupo (v0, v1, ...,vNldpc-1), Yj é continuamente disposto como V = {Y0,Y1, ... YNgroup-1}.
[000265] A palavra código de LDPC, após a intercalação de grupos, pode ser intercalada pelo intercalador de blocos 124, como mostrado na FIG. 11. Neste caso, o intercalador de blocos 124 divide uma pluralidade de colunas na primeira parte (Parte 1) e na segunda parte (Parte 2), com base no número de colunas do intercalador de blocos 124 e no número de bits de um grupo de bits. Neste caso, na primeira parte, os bits, que constituem um grupo de bits, podem ser gravados na mesma coluna e, na segunda parte, os bits, que constituem um grupo de bits, podem ser gravados em uma pluralidade de colunas (ou seja, os bits, que constituem um grupo de bits, podem ser gravados em, pelo menos, duas colunas).
[000266] De maneira específica, bits de entrada vi são gravados em série da primeira parte até a segunda parte no modo coluna e, então, são lidos em série da primeira parte até a segunda parte no modo fileira. Ou seja, os bits de dados vi são gravados em série no intercalador de blocos no modo coluna, iniciando na primeira parte e continuando no modo coluna, finalizando na segunda parte e, então, lidos em série no modo fileira, da primeira parte e, em seguida, no modo fileira, na segunda parte. Por conseguinte, cada bit incluído num mesmo grupo de bits na primeira parte pode ser mapeado sobre um único bit de cada símbolo de modulação.
[000267] Neste caso, o número de colunas e o número de fileiras da primeira parte e da segunda parte do intercalador de blocos 124 podem variar, de acordo com um formato de modulação e um comprimento da palavra código de LDPC, como na Tabela 23 apresentada abaixo. Isto é, configurações da intercalação de blocos da primeira parte e da segunda parte para cada formato de modulação e comprimento de código são especificadas na Tabela 23 apresentada abaixo. Aqui, o número de colunas do intercalador de blocos 124 pode ser igual ao número de bits, que constituem um símbolo de modulação. Além disso, uma soma do número de fileiras da primeira parte Nr1 e do número de fileiras da segunda parte Nr2 é igual a Nldpc/ NC (aqui, Nc é o número de colunas). Além disso, uma vez que Nr1 (= [Ngroup /Nc] x 360) é um múltiplo de 360, um múltiplo de grupos de bits pode ser gravado na primeira parte.
Figure img0061
[000268] Daqui em diante, uma operação do intercalador de blocos 124 vai ser explicada em pormenor.
[000269] De maneira específica, como mostrado na FIG. 11, o bit de entrada vi (0 < i < NC x Nr1) é gravado numa fileira ri da coluna ci da primeira parte do intercalador de blocos 124.Aqui, ci e ri são, respectivamente,
Figure img0062
e ri = (i mod Nr1).
[000270] Além disso, o bit de entrada vi (NC x Nr1 < i < Nldpc) é gravado numa fileira ri da coluna ci da segunda parte do intercalador de blocos 124. Aqui, ci e ri satisfazem, respectivamente,
Figure img0063
Nr2}.
[000271] Um bit de saída qj(0 ≤ j < Nldpc) é lido a partir da coluna c j da fileira rj. Aqui, rj e cj, respectivamente, satisfazem
Figure img0064
[000272] Por exemplo, quando o Comprimento NldpC da palavra Código de LDPC for 64800 e o método de modulação for 256-QAM, a ordem de bits emitidos pelo interCalador de bloCos 124 pode ser (q0, q1, q2, ..., q63357, q63358, q63359, q63360, q63361, ..., q64799) = (v0, v7920, v15840, ..., v47519, v55439, v63359, v63540, ..., v64799). Aqui, os índiCes do lado direito da Equação aCima podem ser expressos, de maneira espeCífiCa, para as 8 (oito) Colunas, Como 0, 7920, 15840, 23760, 31680, 39600, 47520, 55440, 1, 7921, 15841, 23761, 31681, 39601, 47521, 55441, ... , 7919, 15839, 23759, 31679, 39599, 47519, 55439, 63359, 63360, 63540, 63720, 63900, 64080, 64260, 64440, 64620, ..., 63539, 63719, 63899, 64079, 64259, 64439, 64619 , 64799.
[000273] Daqui em diante, a operação de interCalação do interCalador de bloCos 124 vai ser expliCada em pormenor.
[000274] O interCalador de bloCos 124 pode interCalar, gravando uma pluralidade de grupos de bits em Cada Coluna em modo de grupo de bits na direção da Coluna, e lendo Cada fileira da pluralidade de Colunas, em que a pluralidade de grupos de bits é gravada em modo de grupo de bits numa direção da fileira.
[000275] Neste caso, o número de colunas, que constituem o intercalador de blocos 124, pode variar, de acordo com um método de modulação, e o número de fileiras pode ser o comprimento da palavra código de LDPC dividido pelo número de colunas.
[000276] Por exemplo, quando o método de modulação for 1024- QAM, o intercalador de blocos 124 pode ser formado por 10 colunas. Neste caso, quando o comprimento Nldpc da palavra código de LDPC for 64800, o número de fileiras é 6480 (= 64800/10).
[000277] Daqui em diante, o método para intercalar a pluralidade de grupos de bits em modo de grupo de bits através do intercalador de blocos 124 vai ser explicado em pormenor.
[000278] Quando o número de grupos de bits, que constituem a palavra código de LDPC, for um número inteiro múltiplo do número de colunas, o intercalador de blocos 124 pode intercalar, gravando tantos grupos de bits, quanto for o número de grupos de bits dividido pelo número de colunas em cada coluna, em série, em modo de grupo de bits.
[000279] Por exemplo, quando o método de modulação for 1024- QAM e o comprimento Nldpc da palavra código de LDPC for 64800, o intercalador de blocos 124 pode ser formado por 10 colunas, cada uma incluindo 6480 fileiras. Neste caso, uma vez que a palavra código de LDPC é dividida em número (64800/360 = 180) de grupos de bits, quando o comprimento Nldpc da palavra código de LDPC for 64800, o número de grupos de bits (=180) da palavra código de LDPC pode ser um número inteiro múltiplo do número de colunas (=10), quando o método de modulação for 1024-QAM. Ou seja, nenhum remanescente é gerado, quando o número de grupos de bits da palavra código de LDPC for dividido pelo número de colunas.
[000280] Conforme descrito acima, quando o número de grupos de bits da palavra código de LDPC for um número inteiro múltiplo do número de colunas do intercalador de blocos 124, o intercalador de blocos 124 pode não dividir cada coluna em partes e pode intercalar, gravando em cada uma da pluralidade de colunas, em série, na direção da coluna, os bits incluídos nos grupos de bits, que correspondem ao quociente, quando o número de grupos de bits da palavra código de LDPC for dividido pelo número de colunas do intercalador de blocos 124, e lendo cada fileira da pluralidade de colunas, em que os bits são gravados na direção da fileira.
[000281] Por exemplo, como mostrado na FIG. 12, o intercalador de blocos 124 grava bits incluídos em cada um dentre o grupo de bits Yo, grupo de bits Yi, ...., grupo de bits Y17 na 1a fileira à 648Qa fileira da primeira coluna, grava bits incluídos em cada um dentre o grupo de bits Y18, grupo de bits Y19, ..., o grupo de bits Y35 na 1a fileira à 648Qa fileira da segunda coluna, ..., e grava os bits incluídos em cada um dentre o grupo de bits Y162, grupo de bits Y163, ..., grupo de bits Y179 na 1a fileira à 648Qa fileira da 1Qa coluna. Além disso, o intercalador de blocos 124 pode ler os bits gravados em cada fileira das 1Q colunas em série na direção da fileira.
[000282] Como descrito acima, quando o número de grupos de bits, que constituem uma palavra código de LDPC, for um número inteiro múltiplo do número de colunas do intercalador de blocos 124, o intercalador de blocos pode intercalar a pluralidade de grupos de bits em modo de grupo de bits e, nesse sentido, bits pertencentes ao mesmo grupo de bits podem ser gravados na mesma coluna.
[000283] Como descrito acima, o intercalador de blocos 124 pode intercalar a pluralidade de grupos de bits da palavra código de LDPC no método descrito acima com referência às Figs. 8 a 12.
[000284] Quando o número de colunas, que constituem o intercalador de blocos 124, tiver o mesmo valor que o grau de modulação, como no exemplo acima descrito, bits incluídos em um mesmo grupo de bits pode ser mapeado sobre um único bit de cada símbolo de modulação.
[000285] No entanto, esse é apenas um exemplo e bits incluídos num mesmo grupo de bits podem ser mapeados em dois bits de cada símbolo de modulação. Neste caso, o intercalador de blocos 124 pode ter uma configuração, como mostrado nas Tabelas 24 e 25 abaixo apresentadas. Neste caso, o número de colunas, que constituem o intercalador de blocos 124, pode ser metade da ordem de modulação, como mostrado nas Tabelas 24 e 25.
Figure img0065
Figure img0066
[000286] Aqui, C (ou NC) é o número de colunas do intercalador de blocos 124, R1 é o número de fileiras constituindo a primeira parte em cada coluna, e R2 representa o número de fileiras constituindo a segunda parte em cada coluna.
[000287] Referindo-se às Tabelas 24 e 25, quando o número de grupos de bits constituindo uma palavra código de LDPC for um número inteiro múltiplo do número de colunas, o intercalador de blocos 124 intercala sem dividir cada coluna. Portanto, R1 corresponde ao número de fileiras que constituem cada coluna, e R2 é 0. Além disso, quando o número de grupos de bits constituindo a palavra código de LDPC não for um número inteiro múltiplo do número de colunas, o intercalador de blocos 124 intercala os grupos de bits, por dividir cada coluna na primeira parte formada por número R1 de fileiras, e na segunda parte formada por número R2 de fileiras.
[000288] Quando o número de colunas do intercalador de blocos 124 for igual à metade do número de bits, que constituem o símbolo de modulação, como mostrado nas Tabelas 24 e 25, bits incluídos num mesmo grupo de bits podem ser mapeados sobre dois bits de cada símbolo de modulação.
[000289] Por exemplo, quando Nldpc = 64800 e o método de modulação for 1024-QAM, o intercalador de blocos 124 pode ser formado por cinco (5) colunas, cada uma incluindo 12960 fileiras. Neste caso, uma pluralidade de grupos de bits, que constituem uma palavra código de LDPC, é gravada nas cinco (5) colunas em modo de grupo de bits, e bits gravados na mesma fileira, em respectivas colunas, são emitidos em série. Neste caso, uma vez que 10 bits constituem um único símbolo de modulação no método de modulação de 1024-QAM, bits emitidos pelas duas fileiras constituem um único símbolo de modulação. Por conseguinte, bits incluídos num mesmo grupo de bits, ou seja, bits emitidos por uma coluna podem ser mapeados sobre dois bits de um único símbolo de modulação. Por exemplo, bits incluídos em um grupo de bits gravado na primeira coluna podem ser mapeados sobre bits existentes em duas posições determinadas de um único símbolo de modulação.
[000290] Referindo-se novamente à FIG.1, O modulador 130 mapeia a palavra código de LDPC intercalada sobre um símbolo de modulação. De maneira específica, o modulador 130 pode demultiplexar a palavra código de LDPC intercalada, modular a palavra código de LDPC demultiplexada e mapear a palavra código de LDPC sobre uma constelação.
[000291] Neste caso, o modulador 130 pode gerar um símbolo de modulação, utilizando bits incluídos em cada um de uma pluralidade de grupos de bits.
[000292] Em outras palavras, como descrito acima, bits incluídos em diferentes grupos de bits podem ser gravados em cada coluna do intercalador de blocos 124, e o intercalador de blocos 124 lê os bits gravados em cada coluna na direção da fileira.Neste caso, o modulador 130 gera um símbolo de modulação, mapeando bits lidos em cada coluna sobre cada bit do símbolo de modulação. Nesse sentido, cada bit do símbolo de modulação pertence a um grupo diferente.
[000293] Por exemplo, assume-se que um símbolo de modulação seja formado por número C de bits. Neste caso, bits, que são lidos a partir de cada fileira de número C de colunas do intercalador de blocos 124, podem ser mapeados sobre cada bit do símbolo de modulação e, portanto, cada bit do símbolo de modulação, formado por número C de bits, pertence a número C de diferentes grupos.
[000294] Daqui em diante, a característica acima será descrita em maior detalhe.
[000295] Em primeiro lugar, o modulador 130 pode demultiplexar a palavra código de LDPC intercalada. Para conseguir isso, o modulador 130 pode incluir um demultiplexador (não mostrado) para demultiplexar a palavra código de LDPC intercalada.
[000296] Um demultiplexador (não mostrado) demultiplexa a palavra código de LDPC intercalada. De maneira específica, o demultiplexador (não mostrado) executa conversão de serial em paralelo, no que diz respeito à palavra código de LDPC intercalada, e demultiplexa a palavra código de LDPC intercalada numa célula tendo um número predeterminado de bits (ou uma célula de dados).
[000297] Por exemplo, como mostrado na FIG. 13, o demultiplexador (não mostrado) recebe uma palavra código de LDPC Q = (q0, q1, q2, ...) emitida pelo intercalador 120, emite os bits da palavra código de LDPC recebidos para uma pluralidade de subfluxos em série, converte os bits da palavra código de LDPC inseridos em células, e emite as células.
[000298] Aqui, o número de subfluxos, Nsubstreams, pode ser igual ao número de bits, que constituem um símbolo de modulação, nMOD. Por conseguinte, o número de bits, que constitui cada célula, pode ser igual ao número de bits, que constitui o símbolo de modulação (isto é, uma ordem de modulação).
[000299] nMOD pode variar, de acordo com um método de modulação e, então, o número de células geradas pode variar de acordo com o comprimento Nldpc da palavra código de LDPC, conforme mostrado na Tabela 26.
Figure img0067
[000300] Neste caso, bits apresentando o mesmo índice em cada uma da pluralidade de subfluxos podem constituir uma mesma célula. Nesse sentido, células podem ser configuradas como
Figure img0068
[000301] Como descrito acima, o número de subfluxos, Nsubstreams, é igual ao número de bits, que constituem um símbolo de modulação, nMOD, e o número de bits, que constitui cada célula, pode ser igual ao número de bits, que constitui o símbolo de modulação.
[000302] O demultiplexador (não mostrado) pode demultiplexar bits de entrada da palavra código de LDPC em vários métodos. Isto é, o demultiplexador (não mostrado) pode mudar uma ordem dos bits da palavra código de LDPC e emitir os bits para cada um da pluralidade de subfluxos, ou pode emitir os bits para cada um da pluralidade de fluxos, em série, sem alterar a ordem dos bits da palavra código de LDPC. Essas operações podem ser determinadas, de acordo com o número de colunas utilizadas para intercalação no intercalador de blocos 124.
[000303] De maneira específica, quando o intercalador de blocos 124 incluir tantas colunas, quanto metade do número de bits que constituem o símbolo de modulação, o demultiplexador (não mostrado) pode alterar a ordem dos bits de entrada da palavra código de LDPC e emitir os bits para cada um da pluralidade de subfluxos. Um exemplo de um método para alterar a ordem é ilustrado na Tabela 27, abaixo apresentada:
Figure img0069
[000304] De acordo com a Tabela 27, quando o método de modulação for 1024-QAM, o número de subfluxos é 10, uma vez que o número de bits, que constitui um símbolo de modulação, é 10, no caso de 1024-QAM. Neste caso, o demultiplexador (não mostrado) pode emitir, dentre os bits de entrada, em série,° bits com um índice i satisfazendo i mod 10 = 0 para o 0 subfluxo, bits com um índice i satisfazendo i mod 10 = 1 para o 5° subfluxo, bits com um índice i satisfazendo i mod 10 = 2 para o 1° subfluxo, bits com um índice i satisfazendo i mod 10 = 3 para o 6° subfluxo, bits com um índice i satisfazendo i mod 10 = 4 para o 2° subfluxo, bits com um índice i satisfazendo i mod 10 = 5 para o 7° subfluxo, bits com um índice i satisfazendo i mod 10 = 6 para o 3° subfluxo, bits com um índice i satisfazendo i modo 10 = 7 para o 8° subfluxo, bits com um índice i satisfazendo i mod 10 = 8 para o 4° subfluxo e bits com um índice i satisfazendo i mod 10 = 9 para o 9° subfluxo.
[000305] Nesse sentido, os bits da palavra código de LDPC inseridos no demultiplexador (não mostrado), (q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, ...) podem ser emitidos como células, como (y0,0, y1,0, y2,0, y3,0, y4,0, y5,0, y6,0, y7,0, y8,0, y9,0) = (q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, ...), (y0,1, y1,1, y2,1, y3,1, y4,1,y5,1, y6,1, y7,1, y8,1, y9,1) = (q10, q15, q11, q16, q12, q17, q13, q18, qi4, qi9), .... •
[000306] Quando o intercalador de blocos 124 incluir o mesmo número de colunas que o número de bits, que constituem um símbolo de modulação, o demultiplexador (não mostrado) pode emitir os bits de entrada da palavra código de LDPC para cada um da pluralidade de fluxos, em série, sem alterar a ordem dos bits. Ou seja, como mostrado na FIG. 13, o demultiplexador (não mostrado) pode emitir os bits de entrada da palavra código de LDPC (q0 , q1, q2, ...) para cada um dos subfluxos, em série e, por conseguinte, cada célula pode ser configurada como (yo,o, yi,o, ...•, YnMOD-i,o) = (qo, q1, q^MOD-i), (yo,i, yi,i,..., YnMOD-1,1) = (qnMOD, qnMOD + 1, ..., q2xnMOD-1)
[000307] Por exemplo, quando o método de modulação for 1024- QPSK, o número de bits, que constituem um símbolo de modulação, nMOD, é 10, e, portanto, o número de subfluxos, Nsubstreams, é 10, e células podem ser configuradas como (y0,0, y1,0, y2,0, y3,0, y4,0, y5,0, y6,0, y7,0, y8,0, y9,0) = (q0, q1, q2, q3,q4, q5, q6, q7, q8, q9), (y0,1, y1,1, y2,1, y3,1, y4,1, y5,1, y6,1, y7,1, y8,1, y9,1) = (q10, q15, q11, q16, q12, q17, q13, q18, q14, q19), (y0,2, y1,2, y2,2, y3,2, y4,2, y5,2, y6,2, y7,2, y8,2, y9,2) = (q20, q21, q22, q23, q24, q25, q26, q27, q28, q29).
[000308] No exemplo acima descrito, o demultiplexador (não mostrado) pode emitir os bits de entrada da palavra código de LDPC para cada um da pluralidade de subfluxos, em série, sem alterar a ordem dos bits da palavra código de LDPC. No entanto, isto é meramente um exemplo. De acordo com uma forma de realização exemplar, quando o intercalador de blocos 124 incluir o mesmo número de colunas como o número de bits do símbolo de modulação, o demultiplexador (não mostrado) pode ser omitido.
[000309] O modulador 130 pode mapear a palavra código de LDPC demultiplexada sobre símbolos de modulação. No entanto, quando o demultiplexador (não mostrado) for omitido, tal como descrito, o modulador 130 pode mapear os bits da palavra código de LDPC emitidos pelo intercalador 120, isto é, os bits da palavra código de LDPC intercalada por bloco sobre os símbolos de modulação.
[000310] De maneira específica, o modulador 130 pode modular os bits (isto é, células) emitidos pelo demultiplexador (não mostrado) em vários métodos de modulação, tais como QPSK, 16- QAM, 64-QAM, 256-QAM, 1024-QAM e 4096-QAM. Por exemplo, quando o método de modulação for QPSK, 16-QAM, 64-QAM, 256-QAM, 1024- QAM e 4096-QAM, o número de bits, que constitui o símbolo de modulação nMOD, pode ser 2, 4, 6, 8, 10 e 12, respectivamente.
[000311] Neste caso, uma vez que cada célula emitida pelo demultiplexador (não mostrado) é formada de tantos bits, quanto o número de bits constituindo um símbolo de modulação, o modulador 130 pode gerar o símbolo de modulação por mapeamento de cada célula emitida pelo demultiplexador (não mostrado) sobre um ponto de constelação em série. Aqui, um símbolo de modulação corresponde a um ponto de constelação sobre a constelação.
[000312] No entanto, o demultiplexador (não mostrado) acima descrito pode ser omitido, de acordo com as circunstâncias. Neste caso, o modulador 130 pode gerar símbolos de modulação, por agrupar um número previamente determinado de bits, a partir de bits intercalados em série, e mapear o número predeterminado de bits sobre pontos de constelação. Neste caso, o modulador 130 pode gerar os símbolos de modulação por mapeamento de número nMOD de bits sobre os pontos de constelação em série, de acordo com um método de modulação.
[000313] o modulador 130 pode modular por mapeamento de células emitidas pelo demultiplexador (não mostrado) sobre pontos de constelação em um método de constelação não uniforme (NUC). Por exemplo, o modulador 130 pode modular bits emitidos pelo demultiplexador (não mostrado) em vários métodos de modulação, como 16-QAM não uniforme, 64-QAM não uniforme, 256- QAM não uniforme, 1024-QAM não uniforme, 4096-QAM não uniforme etc..
[000314] No método de constelação não uniforme, uma vez que um ponto de constelação do primeiro quadrante é definido, pontos de constelação nos outros três quadrantes podem ser determinados, como se segue. Por exemplo, quando um conjunto de pontos de constelação definido para o primeiro quadrante for X, o conjunto é conj(X) no caso do segundo quadrante, é conj(X) no caso do terceiro quadrante, e é (X) no caso do quarto quadrante.
[000315] Isto é, uma vez que o primeiro quadrante é definido, os outros quadrantes podem ser expressos, como se segue:
Figure img0070
[000316] De maneira específica, quando o M-QAM não uniforme for usado, número M de pontos de constelação pode ser definido como Z = {Z0, Z1, ..., ZM-1}. Nesse caso, quando os pontos de constelação existentes no primeiro quadrante forem definidos como {x0, x1, x2, ..., XM/4-1}, Z pode ser definido, como se segue:
Figure img0071
[000317] Por conseguinte, o modulador 130 pode mapear os bits [y0, ...,ym-1] emitidos pelo demultiplexador (não mostrado) sobre pontos de constelação no método de constelação não uniforme através do mapeamento dos bits de saída sobre ZL tendo como um índice de
Figure img0072
[000318] Um exemplo da constelação, definida de acordo com o método 1024-QAM não uniforme, pode ser expresso, como na Tabela 28 apresentada abaixo, quando a taxa de código for 6/15, 8/15, 10/15, 12/15. Neste caso, o ponto de constelação do primeiro quadrante pode ser definido com referência à Tabela 28, e os pontos de constelação nos outros quadrantes podem ser definidos no método descrito acima.
Figure img0073
Figure img0074
Figure img0075
Figure img0076
Figure img0077
Figure img0078
Figure img0079
[000319] A Tabela 28 mostra um exemplo de constelação definido de acordo com o 1024-QAM não uniforme. No entanto, esse é apenas um exemplo. Os pontos de constelação podem ser definidos de maneira variada no 1024-QAM não uniforme. Além disso, os pontos de constelação podem ser definidos de maneira variada nos outros métodos de modulação, como 16-QAM não uniforme, 64-QAM não uniforme, 256-QAM não uniforme, 4096-QAM não uniforme etc..
[000320] A intercalação é executada no método acima descrito, pelas seguintes razões.
[000321] De maneira específica, quando os bits da palavra código de LDPC forem mapeados sobre um símbolo de modulação, os bits podem ter confiabilidade diferente (isto é, desempenho para recepção diferente ou probabilidade de recepção diferente), de acordo com quais bits foram mapeados no símbolo de modulação. Os bits da palavra código de LDPC podem ter diferentes características de palavra código, de acordo com a configuração de uma matriz de verificação de paridade. Isto é, os bits da palavra código de LDPC podem ter diferentes características de palavra código, de acordo com o número de 1 existente na coluna da matriz de verificação de paridade, isto é, o grau da coluna.
[000322] Por conseguinte, o intercalador 120 pode intercalar para mapear os bits da palavra código de LDPC tendo uma característica específica da palavra código sobre bits específicos no símbolo de modulação, considerando tanto as características da palavra código dos bits da palavra código de LDPC, como a confiabilidade dos bits que constituem o símbolo de modulação.
[000323] Por exemplo, assume-se que o codificador 110 gere uma palavra código de LDPC formada por 64800 bits (Nldpc = 64800), por codificação de LDPC, usando uma taxa de código de 6/15, e o modulador 130 use o método de modulação 1024-QAM não uniforme correspondente à taxa de código de 6/15, com base na Tabela 28.
[000324] Neste caso, o intercalador de grupos 122 pode executar intercalação de grupos utilizando a Equação 15 e a Tabela 9 (ou a Equação 16 e Tabela 15). Deste modo, a palavra código de LDPC formada por grupos de bit X0 a X179 é intercalada pelo intercalador de grupos 122, e o intercalador de grupos 122 pode emitir os grupos de bits na ordem de X66 , X21, X51, ..., X116 , X123.
[000325] Neste caso, o número de colunas, que constituem o intercalador de blocos 124, pode ser 10 e cada coluna pode ser formada por 6480 (= 360 x 18) linhas. Isto é, o número de linhas da primeira parte pode ser 6480 e o número de linhas da segunda parte pode ser 0.
[000326] Nesse sentido, dentre os 180 grupos, que constituem a palavra código de LDPC, 18 grupos de bits (X66, X21, X51, X55, X54, X24 , Xβ3, X12 , X70 , X63 , X47, X65 , X145, Xg, Xθ, X57, X23, X71) podem ser inseridos na primeira parte da 1a coluna do intercalador de blocos 124, 18 grupos de bits (X59, X14, X40, X42, X62, X56, X2, X43, X64, X58, X67, X53, X68, X61, X39, X52, X69, X1) podem ser inseridos na primeira parte da 2a coluna do intercalador de blocos 124, 18 grupos de bits (X22,X31, X161, X38, X30, X19, X17, X18, X4, X41, X25, X44, X136, X29, X36, X26, X126, X177) podem ser inseridos na primeira parte da 3a coluna do intercalador de blocos 124, 18 grupos de bits (X15, X37, X148, X9, X13, X45, X46, X152, X50, X49, X27, X77, X60, X35, X48, X178, X28, X34) podem ser inseridos na primeira parte da 4a coluna do intercalador de blocos 124, 18 grupos de bits (X106, X127, X76, X131, X105, X138, X75, X130, X101, X167, X117, X173, X113, X108, X92, X135, X124, X121) podem ser inseridos na primeira parte da 5a coluna do intercalador de blocos 124, 18 grupos de bits (X97, X149, X143, X81, X32, X96, X3, X78, X107, X86, X98, X16, X162, X150, X111, X158, X172, X139) podem ser inseridos na primeira parte da 6a coluna do intercalador de blocos 124, 18 grupos de bits (X74, X142, X166, X7, X5, X119, X20, X144, X151, X90, X11, X156, X100, X175, X83, X155, X159, X128) podem ser inseridos na primeira parte da 7a coluna do intercalador de blocos 124, 18 grupos de bits (X88, X87, X93, X103, X94, X140, X165, X6, X137, X157, X10, X85, X141, X129, X146, X122, X73, X112) podem ser inseridos na primeira parte da 8a coluna do intercalador de blocos 124, 18 grupos de bits (X132, X125, X174, X169, X168, X79, X84, X118, X179, X147, X91, X160, X163, X115, X89, X80, X102, X104) podem ser inseridos na primeira parte da 9a coluna do intercalador de blocos 124, e 18 grupos de bits (X134, X82, X95, X133, X164, X154, X120, X110, X170, X114, X153, X72, X109, X171, X176, X99, X116, X123) podem ser inseridos na primeira parte da 10a coluna do intercalador de blocos 124.
[000327] Além disso, o intercalador de blocos 124 pode emitir os bits inseridos na 1a a última fileira de cada coluna em série, e os bits emitidos pelo intercalador de blocos 124 podem ser inseridos no modulador 130 em série. Neste caso, o demultiplexador (não mostrado) pode ser omitido ou o demultiplexador (não mostrado) pode emitir em série os bits inseridos, sem alterar a ordem de bits.
[000328] Por conseguinte, um bit incluído em cada um dos grupos de bits X66, X59, X22, X15, X106, X97, X74, X88, X132 e X134 pode constituir um símbolo de modulação.
[000329] Como descrito acima, uma vez que um bit específico é mapeado sobre um bit específico em um símbolo de modulação por meio de intercalação, um lado receptor pode atingir um alto desempenho de recepção e um alto desempenho de decodificação.
[000330] Isto é, quando bits da palavra código de LDPC de alto desempenho de decodificação forem mapeados sobre bits de alta confiabilidade, dentre bits de cada símbolo de modulação, o lado receptor pode apresentar alto desempenho de decodificação, mas há um problema que os bits da palavra código de LDPC de alto desempenho de decodificação não são recebidos. Além disso, quando os bits da palavra código de LDPC de alto desempenho de decodificação forem mapeados sobre bits de baixa confiabilidade dentre os bits do símbolo de modulação, o desempenho inicial de recepção é excelente e, assim, o desempenho global também é excelente. No entanto, quando muitos bits, que apresentam pouco desempenho de decodificação, forem recebidos, pode ocorrer propagação de erros.
[000331] Por conseguinte, quando os bits da palavra código de LDPC forem mapeados sobre símbolos de modulação, um bit da palavra código de LDPC, tendo uma característica específica da palavra código, é mapeado sobre um bit específico de um símbolo de modulação, considerando características da palavra código dos bits da palavra código de LDPC e confiabilidade dos bits do símbolo de modulação, e é transmitido para o lado receptor. Nesse sentido, o lado receptor pode alcançar um alto desempenho de recepção e um alto desempenho de decodificação.
[000332] A intercalação de grupos e intercalação de blocos acima descritas é meramente um exemplo. Além do método acima descrito, outros métodos para fazer com que um bit, incluído em cada um dos grupos de bits X66, X59, X22, X15, x106, X97, X74, X88, X132 e X134, constitua um símbolo de modulação, são abrangidos pelo conceito inventivo.
[000333] A seguir, um método para determinar π(j), que é um parâmetro usado para intercalação de grupos, de acordo com várias formas de realização exemplares, será explicado. Em primeiro lugar, os critérios a serem considerados são os seguintes: Critério 1) Uma ordem de intercalação diferente é usada, de acordo com um método de modulação e uma taxa de código. Critério 2) Uma característica de desempenho para cada grupo de bits da palavra código de LDPC e uma característica de desempenho para cada bit de um símbolo de modulação devem ser consideradas de forma simultânea.
[000334] Por exemplo, no caso da palavra código de LDPC, os bits mais à esquerda podem ter um alto desempenho e os bits mais à esquerda do símbolo de modulação podem ter um alto desempenho. Isto é, o tamanho relativo do desempenho de recepção P(yi) de cada um dos 10 bits, que constituem o 1024- QAM não-uniforme, y0, y1, y2, y3, y4, y5, y6, y5, y7, y8 e y9, tem uma relação de P(yo) = P(yi) ^ P(y2> = P(ys) ^ P(yJ = P(ys) ^ P(ys) = P(y7) > P(y8) = P(y9).
[000335] Portanto, quando o comprimento da palavra código de LDPC for 64800 e o 1024-QAM (ou 1024-NUC) não-uniforme for utilizado, determina-se sobre quais bits dentre os 10 bits do 1024-QAM não uniforme, os 180 grupos de bits de LDPC são mapeados, considerando as características da palavra código de LDPC e o método de modulação simultaneamente. Neste caso, um caso tendo o desempenho máximo estimado é determinado, usando um método de evolução de densidade.
[000336] Ou seja, uma pluralidade de casos, em que 180 grupos de bits são mapeados sobre os 10 bits, pode ser considerada, e um valor limite estimado de forma teórica pode ser calculado, por aplicar o método de evolução da densidade em cada caso. Quando um código de LDPC for transmitido como um valor SNR, uma probabilidade de erro é "0", em uma região SNR mais elevada do que o valor limite. Portanto, um alto desempenho pode ser garantido, quando o código de LDPC for transmitido no método, como no caso de um valor limite pequeno dentre a pluralidade de casos para mapeamento. No entanto, o método para projetar o intercalador 120, com base na evolução de densidade, é uma abordagem teórica. Portanto, o intercalador 120 pode ser projetado através da verificação do desempenho de codificação, com base em uma matriz de verificação de paridade real e com base na distribuição de ciclo, além da abordagem teórica da evolução de densidade.
[000337] Por sua vez, quando 180 grupos de bits forem mapeados sobre os 10 bits, grupos de bits relacionados às fileiras tendo o mesmo grau da matriz de verificação de paridade são agrupados num mesmo grupo, e, sobre cujos bits dentre os 10 bits 1024-QAM, parte dos grupos em cada grupo é mapeado, é determinado.
[000338] Por exemplo, assume-se que a matriz de verificação de paridade da palavra código de LDPC inclua fileiras com os graus de 26, 3 e 2, e 14 grupos de bits, 118 grupos de bits e 36 grupos de bits são relacionados com as fileiras tendo os graus 26, 3 e 2, respectivamente.
[000339] No caso do método 1024-QAM não uniforme, dois bits possuem o mesmo desempenho de recepção (isto é, a mesma probabilidade de recepção) (isto é, P(y0) = P(y1), P(y2) =P(y3), P(y4) = P(y5), P(y6) = P(y7), P(y8) = P(y9)), e, assim, os grupos de bits podem ser mapeados sobre cinco (5) bits. Portanto, o número de casos, em que os grupos de bits são mapeados sobre os cinco (5) bits pode ser expresso, como se segue:
Figure img0080
[000340] Isto é, em relação aos grupos de bits a serem mapeados sobre y0 e y1, o número de casos, em que o número x1 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w1 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z1 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx1 + 118Cw1 + 36Cz1.
[000341] Além disso, em relação aos grupos de bits a serem mapeados sobre y2 e y3, o número de casos, em que o número x2 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w2 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z2 de grupos de bit são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx2 + 118Cw2 + 36Cz2.
[000342] Além disso, em relação aos grupos de bits a serem mapeados sobre y4 e y5, o número de casos, em que o número x3 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w3 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z3 de grupos de bit são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx3 + 118Cw3 + 36Cz3.
[000343] Além disso, em relação aos grupos de bits a serem mapeados sobre y6 e y7, o número de casos, em que o número x4 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w4 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z4 de grupos de bit são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx4 + 118Cw4 + 36Cz4
[000344] Além disso, em relação aos grupos de bits a serem mapeados sobre y8 e y9, o número de casos, em que o número x5 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w5 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z5 de grupos de bit são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx5 + 118Cw5 + 36Cz5.
[000345] Neste caso, x1 + x2 + x3 + x4 + x5 = 14, w1 + w2 + w3 + w4 + w5 = 118, e z1 + z2 + z3 + z4 + z5 = 36.
[000346] No entanto, uma vez que há um grande número de casos no exemplo acima, pode ser difícil estimar o desempenho para cada caso, através de evolução da densidade.
[000347] Portanto, o número de casos pode ser calculado através da redução do número de tipos de desempenho de recepção e, então, o desempenho para cada caso pode ser estimado através da evolução da densidade.
[000348] Por exemplo, supondo-se que a probabilidade de recepção de y0, y1, y2 e y3 seja a mesma, e a probabilidade de recepção de y4, y5, y6, y7, y8 e y9 seja a mesma que a indicada numa Tabela apresentada a seguir, o número de casos, em que os grupos de bits são mapeadas sobre três (3) bits, pode ser calculado.
Figure img0081
[000349] Isto é, em relação aos grupos de bits a serem mapeados sobre y0, y1, y2, y3, o número de casos, em que o número x1 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w1 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z1 de grupos de bit são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx1 + 118Cw1 + 36Cz1.
[000350] Além disso, em relação aos grupos de bits a serem mapeados sobre y4, y5, y6, y7, y8 e y9, o número de casos, em que o número x2 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de 26, número w2 de grupos de bits são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de três (3), e o número Z2 de grupos de bit são selecionados dentre os grupos de bits relacionados às fileiras tendo o grau de dois (2), podem ser 14Cx2 + 118Cw2 + 36Cz2.
[000351] Neste caso, x1 + x2 = 14, w1 + w2 = 118, e z1 + z2 = 36.
[000352] Posteriormente, após desempenho para cada caso ser estimado através da evolução da densidade, o caso, que for estimado como tendo o melhor desempenho, é selecionado. Isto é, quantos grupos de bit deverão ser selecionados a partir de cada um dentre os grupos de bits relacionados às fileiras tendo os graus de 26, 3 e 2 e mapeados sobre y0, y1, y2, y3 e y4, y5, y6, y7, y8, y9, a fim de ter o melhor desempenho, é determinado através da evolução da densidade, e x1, x2, w1, w1, Z1, Z2 são determinados.
[000353] Depois disso, os bits, que são assumidos terem o mesmo desempenho de recepção, são determinados como tendo desempenho de recepção diferente, e o processo acima descrito é repetido.
[000354] Isto é, o número de casos, em que os grupos de bits são mapeados sobre y0, y1, y2, y3 dentro de x1, w1, z1, é calculado com base em x1, w1, z1 determinados, e o desempenho para cada caso é estimado através da evolução da densidade, e o caso, que é estimado ter o melhor desempenho, é selecionado.
[000355] Além disso, o número de casos, em que os grupos de bits são mapeados sobre y4, y5, y6, y7, y8, y9 dentro de x2, w2, z2, é calculado com base em x2, w2, z2 determinados, e o desempenho para cada caso é estimado através da evolução da densidade, e o caso, que é estimado ter o melhor desempenho, é selecionado.
[000356] Por conseguinte, podem ser determinados quantos dos grupos de bits relacionados às fileiras tendo cada um dos graus devem ser mapeados sobre os bits 1024-QAM para ter o melhor desempenho, e o intercalador 120 pode ser concebido para ser capaz de mapear um grupo específico da palavra código de LDPC sobre um bit específico do símbolo de modulação e satisfazer o caso do melhor desempenho.
[000357] No método descrito acima, o método de intercalação de grupos pode ser concebido.
[000358] O aparelho transmissor 200 pode transmitir o sinal mapeado sobre a constelação para um aparelho receptor (por exemplo, 2700 da FIG. 18). Por exemplo, o aparelho transmissor 200 pode mapear o sinal mapeado sobre a constelação, sobre um fotograma de multiplexação por divisão de frequência ortogonal (OFDM), utilizando OFDM, e pode transmitir o sinal para o aparelho receptor 2700 através de um canal alocado. Forma de realização exemplar 2: caso em que um intercalador de blocos/ fileiras é usado
[000359] De acordo com outra forma de realização exemplar, o intercalador 120 pode intercalar uma palavra código de LDPC em outros métodos, diferentes dos métodos descritos na forma de realização exemplificativa 1, e pode mapear bits incluídos em um grupo predeterminado dentre uma pluralidade de grupos de bits constituindo a palavra código de LDPC intercalada sobre um bit predeterminado de um símbolo de modulação. Isso será explicado em detalhes, com referência à FIG. 14.
[000360] Com referência à FIG. 14, o intercalador 120 inclui um intercalador de paridade 121, um intercalador de grupos (ou um intercalador em modo de grupos 122), um intercalador de remanejamento de grupos 123 e um intercalador de blocos/ fileiras 125. Aqui, o intercalador de paridade 121 e o intercalador de remanejamento de grupos 123 executam as mesmas funções que na forma de realização exemplar 1 acima descrita e, portanto, uma descrição detalhada destes elementos é omitida.
[000361] O intercalador de grupos 122 pode dividir uma palavra código de LDPC intercalada por paridade numa pluralidade de grupos de bits e pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits.
[000362] Neste caso, a operação de dividir a palavra código de LDPC intercalada por paridade numa pluralidade de grupos de bits é a mesma que na forma de realização exemplar 1 e, portanto, sua descrição pormenorizada é omitida.
[000363] O intercalador de grupos 122 intercala a palavra código de LDPC em modo de grupo de bits. De maneira específica, o intercalador de grupos 122 pode agrupar a palavra código de LDPC numa pluralidade de grupos de bits e pode reorganizar a pluralidade de grupos de bits em modo de grupo de bits. Ou seja, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits na palavra código de LDPC em unidades de grupo, alterando locais da pluralidade de grupos de bits constituindo a palavra código de LDPC.
[000364] Aqui, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, de modo que grupos de bits, incluindo bits mapeados sobre o mesmo símbolo de modulação, dentre a pluralidade de grupos de bits, sejam organizados em série.
[000365] Neste caso, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, considerando, pelo menos, um dentre o número de fileiras e colunas do intercalador de blocos/ fileiras 124, o número de grupos de bits da palavra código de LDPC e o número de bits incluídos em cada grupo de bits, de modo que grupos de bits, incluindo bits mapeados sobre o mesmo símbolo de modulação, sejam organizados em série.
[000366] Para conseguir isto, o intercalador de grupos 122 pode intercalar a palavra código de LDPC em modo de grupo de bits usando a Equação 17, apresentada a seguir:
Figure img0082
onde Xj é o j° grupo de bits, antes da intercalação de grupos, e Yj é o j° grupo de bits após a intercalação de grupos. Além disso, π(j) é um parâmetro, que indica uma ordem de intercalação, e é determinado por, pelo menos, um dentre um comprimento de uma palavra código de LDPC, uma taxa de código e um método de modulação.
[000367] Nesse sentido, Xπ (j) é um π(j)° grupo de bits, antes da intercalação de grupos, e a Equação 17 significa que a pré- intercalação de π(j)° grupo de bits é intercalado no j° grupo de bits.
[000368] De acordo com uma forma de realização exemplar, um exemplo de π(j) pode ser definido, como nas Tabelas 29 a 33 abaixo apresentadas.
[000369] Neste caso, π(j) é definido, de acordo com um comprimento de uma palavra código de LPDC e uma taxa de código, e uma matriz de verificação de paridade também é definida, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código. Por conseguinte, quando a codificação de LDPC for realizada com base numa matriz de verificação de paridade específica, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código, a palavra código de LDPC pode ser intercalada em modo de grupo de bits, com base em π(j) satisfazendo o comprimento correspondente da palavra código de LDPC e taxa de código.
[000370] Por exemplo, quando o codificador 110 executar codificação de LDPC a uma taxa de código de 6/15 para gerar uma palavra código de LDPC de um comprimento de 64800, o intercalador de grupos 122 pode executar intercalação utilizando π(j), que é definido de acordo com o comprimento da palavra código de LDPC de 64800 e a taxa de código de 6/15, nas Tabelas 29 a 33 apresentadas a seguir, por exemplo, usando π(j) definido, conforme mostrado na Tabela 29.
[000371] Por exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 6/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 29 apresentada abaixo.
Figure img0083
[000372] No caso da Tabela 29, a Equação 17 pode ser expressa como Yo = Xπ(0) = X66, Yi = Xπ(i) = X59, Y2 = Xπ(2) = X22, . . . Y178 = Xπ(178) = X104, e Y179 = Xπ(179) = X123. Nesse sentido, o intercalador de grupos i22 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 66° grupo de bits pelo 0° grupo de bits, o 59° grupo de bits pelo i° grupo de bits, o 22° grupo de bits pelo 2° grupo de bits, ..., o i04° grupo de bits pelo i78° grupo de bits, e o i23° grupo de bits pelo i79° grupo de bits.
[000373] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 8/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 30 apresentada a seguir.
Figure img0084
[000374] No caso da Tabela 30, a Equação 17 pode ser expressa como Y0 = Xπ(0) = X77, Y1 = Xπ(1) = X39, Y2 = Xπ(2) = X3, . . . Y178 = Xπ(178) = X142, e Y179 = Xπ(179) = X25. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 77° grupo de bits pelo 0° grupo de bits, o 39° grupo de bits pelo 1° grupo de bits, o 3° grupo de bits pelo 2° grupo de bits, ..., o 142° grupo de bits pelo 178° grupo de bits, e o 25° grupo de bits pelo 179° grupo de bits.
[000375] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 31 apresentada a seguir.
Figure img0085
[000376] No caso da Tabela 31, a Equação 17 pode ser expressa como Yo = Xπ(0) = X7, Y1 = Xπ(i) = X87, Y2 = Xπ(2) = X5, ... Y178 = Xπ(178) = X150, e Y179 = Xπ(179) = X121. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 7° grupo de bits pelo 0° grupo de bits, o 87° grupo de bits pelo 1° grupo de bits, o 5° grupo de bits pelo 2° grupo de bits, ..., o 150° grupo de bits pelo 178° grupo de bits, e o 121° grupo de bits pelo 179° grupo de bits.
[000377] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 32 apresentada a seguir.
Figure img0086
[000378] No caso da Tabela 32, a Equação 17 pode ser expressa como Y0 = Xπ(0) = X111, Y1 = Xπ(1) = X32, Y2 = Xπ(2) = X70, . . . Y178 = Xπ(178) = X16, e Y179 = Xπ(179) = X140. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 111° grupo de bits pelo 0° grupo de bits, o 32° grupo de bits pelo 1° grupo de bits, o 70° grupo de bits pelo 2° grupo de bits, ..., o 16° grupo de bits pelo 178° grupo de bits, e o 140° grupo de bits pelo 179° grupo de bits.
[000379] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 12/15 e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 33 apresentada a seguir.
Figure img0087
[000380] No caso da Tabela 33, a Equação 17 pode ser expressa como Yo = Xπ(0) = X91, Yi = Xπ(1) = X88, Y2 = Xπ(2) = X112, . . . Y178 = Xπ(178) = X16, e Y179 = Xπ(179) = X145. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 91° grupo de bits pelo 0° grupo de bits, o 88° grupo de bits pelo 1° grupo de bits, o 112° grupo de bits pelo 2° grupo de bits, ..., o 16° grupo de bits pelo 178° grupo de bits, e o 145° grupo de bits pelo 179° grupo de bits.
[000381] Nos exemplos acima descritos, o comprimento da palavra código de LDPC é 64800 e a taxa de código é 6/15, 8/15, 10/15 e 12/15. No entanto, esse é apenas um exemplo e o padrão de intercalação pode ser definido de maneira variada, quando o comprimento da palavra código de LDPC for 16200 ou a taxa de código tiver valores diferentes.
[000382] Como acima descrito, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 17 e as Tabelas 29 a 33.
[000383] “j° bloco de saída do intercalador em modo de grupo” nas Tabelas 29 a 33 indica o j° grupo de bits emitido pelo intercalador de grupos 122 após intercalar, e “π(j)° bloco de entrada do intercalador em modo de grupo” indica o π(j)° grupo de bits inserido no intercalador de grupos 122.
[000384] Além disso, visto que a ordem dos grupos de bits, constituindo a palavra código de LDPC, é reorganizada pelo intercalador de grupos 122 em modo de grupo de bits e, em seguida, os grupos de bits são intercalados por blocos pelo intercalador de blocos 124, que será descrito abaixo, a "Ordem de grupos de bits a serem intercalados por blocos" é definida nas Tabelas 29 a 33 em relação a π(j).
[000385] π(j), definido conforme mostrado nas Tabelas 29 a 33, pode ser organizado de acordo com as taxas de código, conforme mostrado na Tabela 34 apresentada abaixo:
Figure img0088
Figure img0089
Figure img0090
Figure img0091
Figure img0092
Figure img0093
[000386] “j° bloco de saída do intercalador em modo de grupo” na Tabela 34 indica o j° grupo de bits emitido pelo intercalador de grupos 122 após intercalar, e “π(j)° bloco de entrada do intercalador em modo de grupo de bits” indica o π(j)° grupo de bits inserido no intercalador de grupos 122. Com referência à Tabela 34, pode ser visto que na Tabela 34 estão as organizações de dados descritas nas Tabelas 29 a 33, de acordo com as taxas de código.
[000387] O intercalador de grupos 122 pode intercalar a palavra código de LDPC em modo de grupo de bits, usando a Equação 18 apresentada abaixo:
Figure img0094
onde Xj é um j° grupo de bits, antes da intercalação de grupos, e Yj é um j° grupo de bits, após a intercalação de grupos. Além disso, π(j) é um parâmetro indicando uma ordem de intercalação e é determinado por, pelo menos, um dentre um comprimento de uma palavra código de LDPC, uma taxa de código e um método de modulação.
[000388] Nesse sentido, Xj é um j° grupo bits, antes da intercalação de grupos, e a Equação 18 significa que a pré- intercalação do j° grupo de bits é intercalada no π(j)° grupo de bits.
[000389] De acordo com uma forma de realização exemplar, um exemplo de π(j) pode ser definido, como nas Tabelas 35 a 39 apresentadas abaixo.
[000390] Neste caso, π(j) é definido, de acordo com um comprimento de uma palavra código de LPDC e uma taxa de código, e uma matriz de verificação de paridade também é definida, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código. Por conseguinte, quando a codificação de LDPC for realizada com base numa matriz de verificação de paridade específica, de acordo com um comprimento de uma palavra código de LDPC e uma taxa de código, a palavra código de LDPC pode ser intercalada em modo de grupo de bits, com base em π(j) satisfazendo o comprimento correspondente da palavra código de LDPC e taxa de código.
[000391] Por exemplo, quando o codificador 110 executar codificação de LDPC a uma taxa de código de 6/15 para gerar uma palavra código de LDPC de um comprimento de 64800, o intercalador de grupos 122 pode executar a intercalação utilizando π(j), que é definido de acordo com o comprimento da palavra código de LDPC de 64800 e a taxa de código de 6/15, nas Tabelas 35 a 39 apresentadas a seguir, por exemplo, usando π(j) definido conforme mostrado na Tabela 35.
[000392] Por exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 6/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 35 apresentada abaixo.
Figure img0095
[000393] No caso da Tabela 35, a Equação 18 pode ser expressa como X0 = Yπ(0) = Y140, X1 = Yπ(1) = Y171, X2 = Yπ(2) = Y61, ... X178 = Yπ(178) = Y153, e X179 = Yπ(179) = Y88. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 140° grupo de bits, o 1° grupo de bits pelo 171° grupo de bits, o 2° grupo de bits pelo 61° grupo de bits, ..., o 178° grupo de bits pelo 153° grupo de bits, e o 179° grupo de bits pelo 88° grupo de bits.
[000394] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 8/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme na Tabela 36 apresentada abaixo.
Figure img0096
[000395] No caso da Tabela 36, a Equação 18 pode ser expressa como X0 = Yπ(0) = Y7, X1 = Yπ(1) = Y142, X2 = Yπ(2) = Y22, ... X178 = Yπ(178) = Y128, e X179 = Yπ(179) = Y98. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 7° grupo de bits, o 1° grupo de bits pelo 142° grupo de bits, o 2° grupo de bits pelo 22° grupo de bits, ..., o 178° grupo de bits pelo 128° grupo de bits, e o 179° grupo de bits pelo 98° grupo de bits.
[000396] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 37 apresentada abaixo.
Figure img0097
[000397] No caso da Tabela 37, a Equação 18 pode ser expressa como X0 = Yπ(0) = Y83, X1 = Yπ(1) = Y40, X2 = Yπ(2) = Y45, ... X178 = Yπ(178) = Y37, e X179 = Yπ(179) = Y66. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 83° grupo de bits, o 1° grupo de bits pelo 40° grupo de bits, o 2° grupo de bits pelo 45° grupo de bits, ..., o 178° grupo de bits pelo 37° grupo de bits, e o 179° grupo de bits pelo 66° grupo de bits.
[000398] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 10/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme na Tabela 38 apresentada abaixo.
Figure img0098
[000399] No caso da Tabela 38, a Equação 18 pode ser expressa como X0 = Yπ(0) = Y84, X1 = Yπ(1) = Y102, X2 = Yπ(2) = Y13, ... X178 =Yπ(178) = Y158, e X179 = Yπ(179) = Y38. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 84° grupo de bits, o 1° grupo de bits pelo 102° grupo de bits, o 2° grupo de bits pelo 13° grupo de bits, ..., o 178° grupo de bits pelo 158° grupo de bits, e o 179° grupo de bits pelo 38° grupo de bits.
[000400] Em outro exemplo, quando o comprimento Nldpc da palavra código de LDPC for 64800, a taxa de código for 12/15, e o método de modulação for 1024-QAM, π(j) pode ser definido, conforme a Tabela 39 apresentada abaixo.
Figure img0099
[000401] No caso da Tabela 39, a Equação 18 pode ser expressa como X0 = Yπ(0) = Y97, X1 = Yπ(1) = Y41, X2 = Yπ(2) = Y71, ... X178 = Yπ(178) = Y76, e X179 = Yπ(179) = Y48. Nesse sentido, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits, em modo de grupo de bits, alterando o 0° grupo de bits pelo 97° grupo de bits, o 1° grupo de bits pelo 41° grupo de bits, o 2° grupo de bits pelo 71° grupo de bits, ..., o 178° grupo de bits pelo 76° grupo de bits, e o 179° grupo de bits pelo 48° grupo de bits.
[000402] Nos exemplos acima descritos, o comprimento da palavra de código LDPC é 64800 e a taxa de código é 6/15, 8/15, 10/15, e 12/15. No entanto, esse é apenas um exemplo e o padrão de intercalação pode ser definido de maneira variada, quando o comprimento da palavra código de LDPC for 16200 ou a taxa de código tiver valores diferentes.
[000403] Como acima descrito, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 18 e as Tabelas 35 a 39.
[000404] “j° bloco de entrada do intercalador em modo de grupo” nas Tabelas 35 a 39 indica o j° grupo de bits inserido no intercalador de grupos 122 antes da intercalação, e “π(j)° bloco de saída do intercalador em modo de grupo” indica o π(j)° grupo de bits emitido pelo intercalador de grupos 122, após intercalação.
[000405] Além disso, visto que a ordem dos grupos de bits, constituindo a palavra código de LDPC, é reorganizada pelo intercalador de grupos 122 em modo de grupo de bits e, em seguida, os grupos de bits são intercalados por blocos pelo intercalador de blocos 124, que será descrito abaixo, a "Ordem de grupos de bits a serem intercalados por blocos" é definida nas Tabelas 35 a 39 em relação a π(j).
[000406] π(j), definido como mostrado nas Tabelas 35 a 39, pode ser organizado, de acordo com as taxas de código, como mostrado na Tabela 40:
Figure img0100
Figure img0101
Figure img0102
Figure img0103
Figure img0104
Figure img0105
[000407] A Tabela 34 é o caso, em que a intercalação de grupos é executada usando a Equação 17 e π(j) é aplicado como um índice de um grupo de bits de entrada, e a Tabela 40 é o caso, em que a intercalação de grupos é executada usando a Equação 18 e π(j) é aplicado como um índice de um grupo de bits de saída. Portanto, as Tabelas 34 e 40 têm uma relação inversa entre si.
[000408] Como acima descrito, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, usando a Equação 18 e as Tabelas 35 a 39.
[000409] Quando a intercalação de grupos for realizada no método acima descrito, a ordem dos grupos de bits, que constituem a palavra código de LDPC intercalada por grupo, é diferente daquelas dos grupos de bits da palavra código de LDPC intercaladas por grupo com base nas Tabelas 9 a 20.
[000410] Isto é porque o intercalador de blocos/ fileiras 125 é usado, em vez do intercalador de blocos 124, na presente forma de realização exemplar. Isto é, uma vez que o método de intercalação utilizado no intercalador de blocos 124 e o método de intercalação utilizado no intercalador de blocos/ fileiras 125 são diferentes entre si, o intercalador de grupos 122, na presente forma de realização exemplar, pode reorganizar a ordem da pluralidade de grupos de bit, que constitui a palavra código de LDPC, com base nas Tabelas 29 a 40.
[000411] De maneira específica, o intercalador de grupos 122 pode reorganizar a ordem da pluralidade de grupos de bit em modo de grupo de bits, de tal modo que uma unidade de organização, em que, pelo menos, um grupo de bits, incluindo bits a serem mapeados sobre um mesmo símbolo de modulação, seja organizado em série em modo de grupo de bits, seja repetida.
[000412] Isto é, o intercalador de grupos 122 pode organizar em série um de uma pluralidade de primeiros grupos de bits, incluindo bits a serem mapeados sobre um primeiro local específico de cada símbolo de modulação, um de uma pluralidade de segundos grupos de bits incluindo bits a serem mapeados sobre um segundo local específico de cada símbolo de modulação, um de uma pluralidade de n° grupos de bits, incluindo bits a serem mapeados em um n° local específico de cada símbolo de modulação, e pode organizar outros grupos de bits repetidamente no mesmo método.
[000413] O intercalador de blocos/ fileiras 125 intercala a pluralidade de grupos de bits, cuja ordem foi reorganizada. Neste caso, o intercalador de blocos/ fileiras 125 pode intercalar a pluralidade de grupos de bits, cuja ordem foi reorganizada em modo de grupo de bits, usando, pelo menos, uma fileira, que inclui uma pluralidade de colunas. Isso será explicado abaixo em detalhes, com referência às Figs. 15 a 17.
[000414] As FIGs. 15 a 17 são vistas para ilustrar uma configuração de um intercalador de blocos/ fileiras e um método de intercalação, de acordo com uma forma de realização exemplar.
[000415] Em primeiro lugar, quando Ngroup/m for um número inteiro, o intercalador de blocos/ fileiras 125 inclui um intercalador 125-1, que inclui número m de fileiras, cada qual incluindo número M de colunas, como mostrado na FIG. 15, e o intercalador de blocos/ fileiras 125 pode intercalar, usando número Ngroup/m de intercaladores 125-1, tendo a configuração da FIG. 15.
[000416] Aqui, Ngroup é o número total de grupos de bits constituindo uma palavra código de LDPC. Além disso, M é o número de bits incluído num único grupo de bits e pode ser 360, por exemplo. m pode ser idêntico ao número de bits constituindo um símbolo de modulação, ou pode ser 1/2 do número de bits constituindo um símbolo de modulação. Por exemplo, quando um QAM não-uniforme for usado, o desempenho dos bits constituindo um símbolo de modulação é diferente, e, assim, ao definir m para ser idêntico ao número de bits constituindo um símbolo de modulação, um único grupo de bits pode ser mapeado sobre um único bit de cada símbolo de modulação.
[000417] De maneira específica, o intercalador de blocos/ fileiras 125 pode intercalar, ao gravar cada um da pluralidade de grupos de bits constituindo a palavra código de LDPC em cada fileira na direção da fileira em modo de grupo de bits, e ao ler cada coluna da pluralidade de fileiras, em que a pluralidade de grupos de bits é gravada em modo de grupo de bits na direção da coluna.
[000418] Por exemplo, como mostrado na FIG. 15, o intercalador de blocos/ fileiras 125 pode gravar número m de grupos de bits contínuos, dentre a pluralidade de grupos de bits, em cada um dos números m de fileiras do intercalador 125-1 na direção da fileira, e ler cada coluna de número m de fileiras, nas quais os bits são gravados na direção da coluna. Neste caso, tantos intercaladores 125-1, quanto o número de grupos dividido pelo número de fileiras, ou seja, Ngroup/m, podem ser utilizados.
[000419] Como acima descrito, quando o número de grupos de bits constituindo a palavra código de LDPC for um número inteiro múltiplo do número de fileiras, o intercalador de blocos/ fileiras 125 pode intercalar, gravando em série tantos grupos de bits, quanto o número de fileiras dentre a pluralidade de grupos de bits.
[000420] Por outro lado, quando o número de grupos de bits constituindo a palavra código de LDPC não for um número inteiro múltiplo do número de fileiras, o intercalador de blocos/ fileiras 125 pode intercalar, utilizando número N de intercaladores (N é um número inteiro maior ou igual a 2), incluindo um número diferente de colunas.
[000421] Por exemplo, como mostrado nas Figs. 16 e 17, o intercalador de blocos/ fileiras 125 pode intercalar, utilizando um primeiro intercalador 125-2, incluindo número m de fileiras, cada qual incluindo o número M de colunas, e um segundo intercalador 125-3 incluindo número m de fileiras, cada qual incluindo o número a x M/m de colunas. Aqui, a é Ngroup — [Ngroup /m] x m, e [Ngroup /m] é o maior número inteiro abaixo de Ngroup/m.
[000422] Neste caso, o primeiro intercalador 125-2 pode ser utilizado, tanto quanto [Ngroup /m], e um segundo intercalador 125-3 pode ser usado.
[000423] De maneira específica, o intercalador de blocos/ fileiras 125 pode intercalar, por gravar cada um do número [Ngroup /m] x m de grupos de bits dentre a pluralidade de grupos de bits constituindo a palavra código de LDPC em cada fileira na direção da fileira em modo de grupo de bits, e por ler cada coluna da pluralidade de fileiras, em que o número [Ngroup /m] x m de grupos de bits é gravado em modo de grupo de bits na direção da coluna.
[000424] Por exemplo, como mostrado nas Figs. 16 e 17, o intercalador de blocos/ fileiras 125 pode gravar o mesmo número m de grupos de bits contínuos, como o número de fileiras dentre o número [Ngroup /m] x m de grupos de bits em cada fileira do primeiro intercalador 125-2 na direção da fileira, e pode ler cada coluna da pluralidade de fileiras do primeiro intercalador 125-2, em que o número m de grupos de bits é gravado na direção da coluna. Neste caso, o primeiro intercalador 125-2, tendo a configuração das FIGs. 16 e 17, pode ser utilizado, tanto quanto [Ngroup /m].
[000425] Depois disso, o intercalador de blocos/ fileiras 125 pode dividir os bits incluídos nos grupos de bits, exceto os grupos gravados no primeiro intercalador 125-2, e pode gravar esses bits em cada fileira do segundo intercalador 125-3 na direção da fileira. Neste caso, o mesmo número de bits pode ser gravado em cada fileira do segundo intercalador 125-3.
[000426] Por exemplo, como mostrado na FIG. 16, o intercalador de blocos/ fileiras 125 pode gravar, em cada um de número m de fileiras do segundo intercalador 125-3, número a x M/m de bits dentre os bits incluídos nos outros grupos de bits, na direção da fileira, e pode ler cada coluna de número m de fileiras do segundo intercalador 125-3, em que os bits são gravados na direção da coluna. Neste caso, um segundo intercalador 125-3, tendo a configuração da FIG. 16, pode ser usado.
[000427] No entanto, de acordo com outra forma de realização exemplar, como mostrado na FIG. 17, o intercalador de blocos/ fileiras 125 pode gravar os bits no primeiro intercalador 1252 no mesmo método, tal como explicado na FIG. 16, mas pode gravar os bits no segundo intercalador 125-3, num método diferente daquele da FIG. 16.
[000428] Ou seja, o intercalador de blocos/ fileiras 125 pode gravar os bits no segundo intercalador 125-3, na direção da coluna.
[000429] Por exemplo, como mostrado na FIG. 17, o intercalador de blocos/ fileiras 125 pode gravar os bits incluídos nos grupos de bits, exceto os grupos de bits gravados no primeiro intercalador 125-2, em cada coluna de número m de fileiras, cada qual incluindo um número a x M/m de colunas do segundo intercalador 125-3 na direção da coluna, e pode ler cada coluna de número m de fileiras do segundo intercalador 125-3, em que os bits são gravados na direção da coluna. Neste caso, um segundo intercalador 125-3, tendo a configuração da FIG. 26, pode ser usado.
[000430] No método mostrado na FIG. 17, o intercalador de blocos/ fileiras 125 pode intercalar, lendo na direção da coluna, depois de gravar os bits no segundo intercalador na direção da coluna. Por conseguinte, os bits incluídos nos grupos de bits intercalados pelo segundo intercalador são lidos, na ordem em que foram gravados, e emitidos para o modulador 130. Por conseguinte, os bits incluídos nos grupos de bits, que pertencem ao segundo intercalador, não são reorganizados pelo intercalador de blocos/ fileiras 125 e podem ser mapeados em série sobre os símbolos de modulação.
[000431] Como acima descrito, o intercalador de blocos/ fileiras 125 pode intercalar a pluralidade de grupos de bits usando os métodos acima descritos, com referência às Figs. 15 a 17.
[000432] De acordo com o método acima descrito, a saída do intercalador de blocos/ fileiras 125 pode ser a mesma que a saída do intercalador de blocos 124. De maneira específica, quando o intercalador de blocos/ fileiras 125 intercalar, como mostrado na FIG. 15, o intercalador de blocos/ fileiras 125 pode emitir o mesmo valor que o valor do intercalador de blocos 124, que intercala como mostrado na FIG. 8. Além disso, quando o intercalador de blocos/ fileiras 125 intercalar, como mostrado na FIG. 16, o intercalador de blocos/ fileiras 125 pode emitir o mesmo valor que o valor do intercalador de blocos 124, que intercala, como mostrado na FIG. 9. Além disso, quando o intercalador de blocos/ fileiras 125 intercalar, como mostrado na FIG. 17, o intercalador de blocos/ fileiras 125 pode emitir o mesmo valor que o valor do intercalador de blocos 124, que intercala, como mostrado na FIG. 10.
[000433] De maneira específica, quando o intercalador de grupos 122 for utilizado, com base na Equação 15, e o intercalador de blocos 124 for utilizado, e os grupos de bits de saída do intercalador de grupos 122 forem Yi(0 ^ i < Ngroup), e quando o intercalador de grupos 122 for usado na Equação 17 e o intercalador de blocos/ fileiras 125 for utilizado, e os grupos de saída do intercalador de grupos 122 forem Zi(0 ^ i < Ngroup), uma relação entre os grupos de bits de saída Zi e Yi, após a intercalação de grupos, pode ser expressa, como nas Equações 19 e 20, e, como resultado, o mesmo valor pode ser emitido pelo intercalador de blocos 124:
Figure img0106
onde α é [Ngroup/m] e é o número de grupos de bits inserido em uma única coluna da primeira parte, quando o intercalador de blocos 124 for usado, e [Ngroup/m] for o maior número inteiro abaixo de Ngroup/m. Aqui, m é idêntico ao número de bits constituindo o símbolo de modulação, ou metade dos bits constituindo o símbolo de modulação. Além disso, m é o número de colunas do intercalador de blocos 124 e m é o número de fileiras do intercalador de blocos/ fileiras 125.
[000434] O caso, em que a intercalação de grupos é executada pelo intercalador de grupos 122, com base na Equação 15 e, em seguida, a intercalação de blocos é realizada pelo intercalador de blocos 124, e o caso, em que a intercalação de grupos é executada pelo intercalador de grupos 122, com base em Equação 16 e, em seguida, a intercalação de blocos é realizada pelo intercalador de blocos 124, possuem uma relação inversa entre si.
[000435] Além disso, o caso, em que a intercalação de grupos é realizada pelo intercalador de grupos 122, com base na Equação 17 e, em seguida, a intercalação de blocos/ fileiras é executada pelo intercalador de blocos/ fileiras 125, e o caso, em que a intercalação de grupos é realizada pelo intercalador de grupos 122, com base na Equação 18 e, em seguida, a intercalação de blocos/ fileiras é executada pelo intercalador de blocos/ fileiras 125, possuem uma relação inversa entre si.
[000436] Por conseguinte, o modulador 130 pode mapear os bits emitidos pelo intercalador de blocos/ fileiras 125 sobre um símbolo de modulação no mesmo método, quando o intercalador de blocos 124 for utilizado.
[000437] O método de intercalação de bits, sugerido nas formas de realização exemplares, é realizado pelo intercalador de paridade 121, pelo intercalador de grupos 122, pelo intercalador de remanejamento de grupos 123 e pelo intercalador de blocos 124, como mostrado na FIG. 4 (o intercalador de remanejamento de grupos 123 pode ser omitido, de acordo com as circunstâncias). No entanto, esse é apenas um exemplo e o método de intercalação de bits não está limitado a três módulos ou quatro módulos acima descritos.
[000438] Por exemplo, quando o intercalador de blocos for utilizado e o método de intercalação de grupos, expresso como na Equação 11, for utilizado em relação aos grupos de bits Xj(0 < j < Ngroup), definidos como na Equação 9 e na Equação 10, os bits pertencentes a número m de grupos de bits, por exemplo, {Xπ(i), Xπ(α + i), ... Xπ((m -1) x a + i)} (0^ i < a), podem constituir um único símbolo de modulação.
[000439] Aqui, a é o número de grupos de bits constituindo a primeira parte do intercalador de blocos, e a = [Ngroup/ m]. Além disso, m é o número de colunas do intercalador de blocos e pode ser igual ao número de bits constituindo o símbolo de modulação, ou metade do número de bits constituindo o símbolo de modulação.
[000440] Portanto, por exemplo, com relação aos bits intercalados por paridade ui, {uπ(i)+j, uπ(a + i)+j, ..., uπ((m-1) x a+i) + j} (0 < i < M, 0 < j < M) pode constituir um único símbolo de modulação. Como acima descrito, existem vários métodos para constituir um único símbolo de modulação.
[000441] Além disso, o método de intercalação de bits sugerido nas formas de realização exemplares é realizado pelo intercalador de paridade 121, pelo intercalador de grupos 122, pelo intercalador de remanejamento de grupos 123 e pelo intercalador de blocos/ fileiras 125, como mostrado na FIG. 14 (o intercalador de remanejamento de grupos 123 pode ser omitido, de acordo com as circunstâncias). No entanto, este é apenas um exemplo e o método de intercalação de bits não está limitado a três módulos ou quatro módulos acima descritos.
[000442] Por exemplo, quando o intercalador de blocos/ fileiras for utilizado e o método de intercalação de grupos, expresso como na Equação 17, for utilizado em relação aos grupos de bits Xj(0 — j <Ngroup), definidos como na Equação 13 e na Equação 14, os bits pertencentes ao número m de grupos de bits, por exemplo, {Xπ(m x i), Xπ(m x i +1), •••, Xπ(m x i (m-1))} (0 — i < α), podem constituir um único símbolo de modulação.
[000443] Aqui, α é o número de grupos de bits que constitui a primeira parte do intercalador de blocos e α = [Ngroup/m]. Além disso, m é o número de colunas do intercalador de blocos e pode ser igual ao número de bits constituindo o símbolo de modulação, ou metade do número de bits constituindo o símbolo de modulação.
[000444] Portanto, por exemplo, com relação aos bits intercalados por paridade ui, {uπ(m x i) + j, uπ(m x i + 1)+j, uπ(m x i + (m- 1)) + j} (0 < i — m, 0 < j — M) pode constituir um único símbolo de modulação. Como acima descrito, existem vários métodos para constituir um único símbolo de modulação.
[000445] O aparelho transmissor 100 pode transmitir o sinal mapeado sobre a constelação para um aparelho receptor 2700. Por exemplo, o aparelho transmissor 100 pode mapear o sinal mapeado sobre a constelação, sobre um fotograma de multiplexação por divisão de frequência ortogonal (OFDM), utilizando OFDM, e pode transmitir o sinal para o aparelho receptor 2700 através de um canal alocado.
[000446] A FIG. 18 é um diagrama de blocos para ilustrar uma configuração de um aparelho receptor, de acordo com uma forma de realização exemplar. Com referência à FIG. 18, o aparelho receptor 2700 inclui um demodulador 2710, um multiplexador 2720, um desintercalador 2730 e um decodificador 2740.
[000447] O demodulador 2710 recebe e demodula um sinal transmitido pelo aparelho transmissor 100. De maneira específica, o demodulador 2710 gera um valor correspondente a uma palavra código de LDPC, ao demodular o sinal recebido, e emite o valor para o multiplexador 2720. Neste caso, o demodulador 2710 pode utilizar um método de demodulação correspondente a um método de modulação utilizado no aparelho transmissor 100. Para isso, o aparelho transmissor 100 pode transmitir informação em relação ao método de modulação para o aparelho receptor 2700, ou o aparelho transmissor 100 pode executar modulação, utilizando um método de modulação predefinido entre o aparelho transmissor 100 e o aparelho receptor 2700.
[000448] O valor correspondente à palavra código de LDPC pode ser expresso como um valor de canal para o sinal recebido. Existem diversos métodos para determinar o valor de canal, e, por exemplo, um método para determinar um valor da relação de Probabilidade Logarítmica (Log Likelihood Ratio - LLR) pode ser o método para determinar o valor de canal.
[000449] O valor da LLR é um valor logarítmico para uma relação entre a probabilidade de que um bit transmitido pelo aparelho transmissor 100 seja 0, e a probabilidade de que o bit seja 1. Além disso, o valor da LLR pode ser um valor de bit, que é determinado por uma decisão complexa, ou pode ser um valor representativo, que é determinado de acordo com uma seção, à qual pertence a probabilidade de que o bit transmitido pelo aparelho transmissor 100 seja 0 ou 1.
[000450] O multiplexador 2720 multiplexa o valor emitido pelo demodulador 2710 e emite o valor ao desintercalador 2730.
[000451] De maneira específica, o multiplexador 2720 é um elemento correspondente a um demultiplexador (não mostrado), previsto no aparelho transmissor 100, e executa uma operação correspondente ao demultiplexador (não mostrado). No entanto, quando o demultiplexador (não mostrado) for omitido do aparelho transmissor 100, o multiplexador 2720 pode ser omitido do aparelho receptor 2700.
[000452] Isto é, o multiplexador 2720 realiza uma operação inversa à operação do demultiplexador (não mostrado), e realiza a conversão de bits por célula, com respeito ao valor emitido pelo demodulador 2710, e emite o valor da LLR na unidade de bit.
[000453] Neste caso, quando o demultiplexador (não mostrado) não alterar a ordem dos bits da palavra código de LDPC, o multiplexador 2720 pode emitir os valores da LLR, em série, na unidade de bit, sem alterar a ordem dos valores da LLR correspondentes aos bits da célula. De maneira alternativa, o multiplexador 2720 pode reorganizar a ordem dos valores da LLR correspondentes aos bits da célula, para realizar uma operação inversa à operação de demultiplexação do demultiplexador (não mostrado), com base na Tabela 27.
[000454] A informação, acerca do fato da operação de demultiplexação ser ou não realizada, pode ser fornecida pelo aparelho transmissor 100, ou pode ser predefinida entre o aparelho transmissor 100 e o aparelho receptor 2700.
[000455] O desintercalador 2730 desintercala o valor emitido pelo multiplexador 2720 e emite os valores para o decodificador 2740.
[000456] De maneira específica, o desintercalador 2730 é um elemento correspondente ao intercalador 120 do aparelho transmissor 100 e executa uma operação correspondente ao intercalador 120. Isto é, o desintercalador 2730 desintercala o valor da LLR, executando, de forma inversa, a operação de intercalação do intercalador 120.
[000457] Neste caso, o desintercalador 2730 pode incluir elementos, como mostrado nas FIGs. 19 ou 21.
[000458] Em primeiro lugar, como mostrado na FIG. 19, o desintercalador 2730 pode incluir um desintercalador de blocos 2731, um desintercalador de remanejamento de grupos 2732, um desintercalador de grupos 2733 e um desintercalador de paridade 2734.
[000459] O desintercalador de blocos 2731 desintercala a saída do multiplexador 2720 e emite o valor para o desintercalador de remanejamento de grupos 2732.
[000460] De maneira específica, o desintercalador de blocos 2731 é um elemento correspondente ao intercalador de blocos 124, previsto no aparelho transmissor 100, e executa, de forma inversa, a operação de intercalação do intercalador de blocos 124.
[000461] Isto é, o desintercalador de blocos 2731 pode desintercalar, usando, pelo menos, uma fileira formada por uma pluralidade de colunas, ou seja, gravando o valor da LLR emitido pelo multiplexador 2720 em cada fileira na direção da fileira, e lendo cada coluna da pluralidade de fileiras, em que o valor da LLR é gravado na direção da coluna.
[000462] Neste caso, quando o intercalador de blocos 124 intercala, dividindo uma coluna em duas partes, o desintercalador de blocos 2731 pode desintercalar, dividindo uma fileira em duas partes.
[000463] Além disso, quando o intercalador de blocos 124 realiza gravação e leitura, com relação a um grupo de bits, que não pertence à primeira parte na direção da fileira, o desintercalador de blocos 2731 pode desintercalar, gravando e lendo um valor correspondente ao grupo, que não pertence à primeira parte na direção da fileira.
[000464] A seguir, o desintercalador de blocos 2731 será explicado com referência à FIG. 20. No entanto, este é apenas um exemplo e o desintercalador de blocos 2731 pode ser implementado em outros métodos.
[000465] Uma LLR de entrada vi(0 ^ i < Nldpc) é gravada numa fileira ri e numa coluna ci, do desintercalador de blocos 2431. Aqui, ci = (i mod NC) e ri = [i/Nc].
[000466] Por sua vez, uma LLR de saída qi(0 < i < Nc x Nr1) é lida a partir de uma coluna ci e uma fileira ri da primeira parte do desintercalador de blocos 2431. Aqui, ci= [i/Nr1], ri = (i mod Nr1).
[000467] Além disso, uma LLR de saída qi(Nc x Nr1 ^ i < Nldpc) é lida a partir de uma coluna ci, e de uma fileira ri da segunda parte. Aqui,
Figure img0107
[000468] O desintercalador de remanejamento de grupos 2732 desintercala o valor emitido pelo desintercalador de blocos 2731 e emite o valor para o desintercalador de grupos 2733.
[000469] De maneira específica, o desintercalador de remanejamento de grupos 2732 é um elemento correspondente ao intercalador de remanejamento de grupos 123 previsto no aparelho transmissor 100, e pode realizar, de forma inversa, a operação de intercalação do intercalador de remanejamento de grupos 123.
[000470] Isto é, o desintercalador de remanejamento de grupos 2732 pode reorganizar os valores da LLR do mesmo grupo de bits, alterando a ordem dos valores da LLR existente no mesmo grupo de bits. Quando a operação de remanejamento de grupos não for realizada no aparelho transmissor 100, o desintercalador de remanejamento de grupos 2732 pode ser omitido.
[000471] O desintercalador de grupos 2733 (ou o desintercalador em modo de grupos) desintercala o valor emitido pelo desintercalador de remanejamento de grupos 2732 e emite o valor para o desintercalador de paridade 2734.
[000472] De maneira específica, o desintercalador de grupos 2733 é um elemento correspondente ao intercalador de grupos 122 previsto no aparelho transmissor 100, e pode executar, de forma inversa, a operação de intercalação do intercalador de grupos 122.
[000473] Isto é, o desintercalador de grupos 2733 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits. Neste caso, o desintercalador de grupos 2733 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, através da aplicação, de forma inversa, do método de intercalação das Tabelas 9 a 20, de acordo com um comprimento da palavra código de LDPC, um método de modulação e uma taxa de código.
[000474] O desintercalador de paridade 2734 executa desintercalação de paridade, no que diz respeito ao valor emitido pelo desintercalador de grupos 2733, e emite um valor para o decodificador 2740.
[000475] De maneira específica, o desintercalador de paridade 2734 é um elemento correspondente ao intercalador de paridade 121 previsto no aparelho transmissor 100, e pode executar, de forma inversa, a operação de intercalação do intercalador de paridade 121. Isto é, o desintercalador de paridade 2734 pode desintercalar os valores da LLR correspondentes aos bits de paridade dentre os valores da LLR emitidos pelo desintercalador de grupos 2733. Neste caso, o desintercalador de paridade 2734 pode desintercalar os valores da LLR correspondentes aos bits de paridade, de forma inversa ao método de intercalação de paridade da Equação 8.
[000476] No entanto, o desintercalador de paridade 2734 pode ser omitido, de acordo com o método de decodificação e implementação do decodificador 2740.
[000477] O desintercalador 2730 pode incluir um desintercalador de blocos/ fileiras 2735, um desintercalador de remanejamento de grupos de bits 2732, um desintercalador de grupos 2733 e um desintercalador de paridade 2734, como mostrado na FIG. 21. Neste caso, o desintercalador de remanejamento de grupos de bits 2732 e o desintercalador de paridade 2734 executam as mesmas funções, como na FIG. 19 e, assim, uma explicação redundante é omitida.
[000478] O desintercalador de blocos/ fileiras 2735 desintercala um valor emitido pelo multiplexador 2720 e emite o valor para o desintercalador de remanejamento de grupos de bits 2732.
[000479] De maneira específica, o desintercalador de blocos/ fileiras 2735 é um elemento correspondente ao intercalador de blocos/ fileiras 125, previsto no aparelho transmissor 100, e pode executar, de forma inversa, a operação de intercalação do intercalador de blocos/ fileiras 125.
[000480] Ou seja, o desintercalador de blocos/ fileiras 2735 pode desintercalar, usando, pelo menos, uma coluna formada por uma pluralidade de fileiras, ou seja, gravando os valores da LLR emitidos pelo multiplexador 2720 em cada coluna na direção da coluna e lendo cada fileira da pluralidade de colunas, em que o valor da LLR é gravado na direção da coluna.
[000481] No entanto, quando o intercalador de blocos/ fileiras 125 executa gravação e leitura, com relação a um grupo de bits que não pertence à primeira parte na direção da coluna, o desintercalador de blocos/ fileiras de 2735 pode desintercalar, gravando e lendo um valor correspondente ao grupo de bits, que não pertence à primeira parte na direção da coluna.
[000482] O desintercalador de grupos 2733 desintercala o valor emitido pelo desintercalador de remanejamento de grupos 2732 e emite o valor para o desintercalador de paridade 2734.
[000483] De maneira específica, o desintercalador de grupos 2733 é um elemento correspondente ao intercalador de grupos 122 previsto no aparelho transmissor 100, e pode, de forma inversa, executar a operação de intercalação do intercalador de grupos 122.
[000484] Isto é, o desintercalador de grupos 2733 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits. Neste caso, o desintercalador de grupos 2733 pode reorganizar a ordem da pluralidade de grupos de bits em modo de grupo de bits, através da aplicação, de forma inversa, do método de intercalação das Tabelas 29 a 40, de acordo com um comprimento da palavra código de LDPC, um método de modulação e uma taxa de código.
[000485] Embora o desintercalador 2730 da FIG. 18 inclua três (3) ou quatro (4) elementos, como mostrado nas FIGs. 19 ou 20, operações dos elementos podem ser realizadas por um único elemento. Por exemplo, quando bits, cada um dos quais pertencendo a cada um dos grupos de bits Xa, Xb, Xc, Xd, Xe, Xf, Xg, Xh, Xi, Xj, constituírem um único símbolo de modulação, o desintercalador 2730 pode desintercalar esses bits para locais correspondentes aos seus grupos de bits, com base no único símbolo de modulação recebido.
[000486] Por exemplo, quando a taxa de código for 6/15, e o método de modulação for 1024-QAM, o desintercalador de grupos 2733 pode executar a desintercalação com base na Tabela 9.
[000487] Neste caso, cada um dos bits pertencente a cada um dos grupos de bits X66, X59, X22, X15, X106, X97, X74, X88, X132, X134 constitui um único símbolo de modulação. Uma vez que um bit em cada um dos grupos de bits X66, X59, X22, X15, X106, X97, X74, X88, X132, X134 constitui um único símbolo de modulação, o desintercalador 2730 pode mapear bits sobre valores iniciais de decodificação correspondentes aos grupos de bits X66, X59, X22, X15, X106, X97, X74, X88, X132, X134, com base no único símbolo de modulação recebido.
[000488] O decodificador 2740 pode executar decodificação de LDPC, usando o valor de saída do desintercalador 2730. Para alcançar este objetivo, o decodificador 2740 pode incluir um decodificador de LDPC (não mostrado) para realizar a decodificação de LDPC.
[000489] De maneira específica, o decodificador 2740 é um elemento correspondente ao codificador 110 do aparelho transmissor 100 e pode corrigir um erro, realizando a decodificação de LDPC, usando o valor da LLR emitido pelo desintercalador 2730.
[000490] Por exemplo, o decodificador 2740 pode executar a decodificação de LDPC em um método de decodificação iterativo, com base em um algoritmo de soma - produto. O algoritmo de soma - produto é um exemplo de um algoritmo de passagem de mensagens, e o algoritmo de passagem de mensagens se refere a um algoritmo que troca mensagens (por exemplo, valor da LLR) através de uma borda em um gráfico bipartido, calcula uma mensagem de saída, a partir de mensagens inseridas nos nós de variáveis ou nós de verificação, e atualiza.
[000491] O decodificador 2740 pode usar uma matriz de verificação de paridade, ao realizar a decodificação de LDPC. Neste caso, uma submatriz da palavra de informação na matriz de verificação de paridade é definida, conforme nas Tabelas 4 a 20, de acordo com uma taxa de código e um comprimento da palavra código de LDPC, e uma submatriz de paridade pode ter uma configuração diagonal dupla.
[000492] Além disso, informações sobre a matriz de verificação de paridade e informações sobre a taxa de código etc., que são utilizadas na decodificação de LDPC, podem ser previamente armazenadas no aparelho receptor 2700, ou podem ser fornecidas pelo aparelho transmissor 100.
[000493] A FIG. 22 é um fluxograma para ilustrar um método de intercalação de um aparelho transmissor, de acordo com uma forma de realização exemplar.
[000494] Em primeiro lugar, uma palavra código de LDPC é gerada, através da codificação de LDPC com base em uma matriz de verificação de paridade (S3010). Neste caso, na codificação de LDPC, uma matriz de verificação de paridade, em que uma submatriz da palavra de informação é definida pelas Tabelas 4 a 8 e uma submatriz de paridade tem uma configuração diagonal dupla (ou seja, a matriz de verificação de paridade da FIG. 2), pode ser usada, ou uma matriz de verificação de paridade, que é permutada por fileira e colunas a partir da matriz de verificação de paridade da FIG. 2, com base nas Equações 4 e 5 (ou seja, a configuração da FIG. 3), pode ser usada.
[000495] A seguir, a palavra código de LDPC é intercalada (S3020).
[000496] Em seguida, a palavra código de LDPC intercalada é mapeada sobre um símbolo de modulação (S3030). Neste caso, bits incluídos num número predeterminado de grupo de bits, dentre a pluralidade de grupos de bits da palavra código de LDPC, pode ser mapeado sobre um bit predeterminado de um símbolo de modulação.
[000497] Neste caso, cada um da pluralidade de grupos de bits pode ser formado por M números de bits, e M pode ser um divisor comum de Nldpc e Kldpc, e pode ser determinado para satisfazer Qldpc =(Nldpc - Kldpc)/M. Aqui, Qldpc é um valor de parâmetro de deslocamento cíclico sobre colunas em um grupo de colunas de uma submatriz da palavra de informação da matriz de verificação de paridade, Nldpc é um comprimento da palavra código de LDPC, e Kldpc é um comprimento de bits da palavra de informação da palavra código de LDPC.
[000498] A operação S3020 pode incluir bits de paridade por intercalação da palavra código de LDPC, dividindo a palavra código de LDPC intercalada por paridade pela pluralidade de grupos de bits e reorganizando a ordem da pluralidade de grupos de bits em modo de grupo de bits, e intercalando a pluralidade de grupos de bits, cuja ordem foi reorganizada.
[000499] De maneira específica, a ordem da pluralidade de grupos de bits pode ser reorganizada em modo de grupo de bits, com base na Equação 21 apresentada acima. Na Equação 15, π(j) é determinado com base em, pelo menos, um dentre um comprimento da palavra código de LDPC, um método de modulação e uma taxa de código.
[000500] Por exemplo, quando a palavra código de LDPC tiver um comprimento 64800, o método de modulação for 1024-QAM, e a taxa de código for 6/15, π(j) pode ser definido, como na Tabela 9 acima apresentada.
[000501] Em outro exemplo, quando a palavra código de LDPC tiver um comprimento 64800, o método de modulação for 1024- QAM, e a taxa de código for 8/15, π(j) pode ser definido, como na Tabela 10 acima apresentada.
[000502] Em outro exemplo, quando a palavra código de LDPC tiver um comprimento 64800, o método de modulação for 1024- QAM, e a taxa de código for 12/15, π(j) pode ser definido, como na Tabela 13 acima apresentada.
[000503] No entanto, esse é apenas um exemplo. π(j) pode ser definido, conforme nas Tabelas 11 ou 12 descritas acima.
[000504] Além disso, a Equação 16 pode ser usada na reorganização da ordem da pluralidade de grupos de bits em modo de grupo de bits. Neste caso, π(j) pode ser definido, como nas Tabelas 15 a 20 acima descritas.
[000505] A pluralidade de grupos de bits, cuja ordem foi reorganizada, pode ser intercalada, gravando a pluralidade de grupos de bits em cada uma da pluralidade de colunas na direção da coluna em modo de grupo de bits, e lendo cada fileira da pluralidade de colunas, em que a pluralidade de grupos de bits é gravada em modo de grupo de bits na direção da fileira.
[000506] Neste caso, dentre a pluralidade de grupos de bits, pelo menos, certos grupos de bits, que possam ser gravados em cada uma da pluralidade de colunas em modo de grupo de bits, são gravados, em série, em cada uma da pluralidade de colunas, e, em seguida, os outros grupos de bits são divididos e gravados nas outras áreas, que permanecem em cada uma da pluralidade de colunas, depois de, pelo menos, certos grupos de bits terem sido gravados em modo de grupo de bits.
[000507] Na operação S3020, a intercalação pode ser executada em outros métodos, além do método acima descrito.
[000508] De maneira específica, a intercalação pode ser realizada usando a Equação 17 e as Tabelas 29 a 34 acima descritas, ou pode ser executada por meio da Equação 18 e as Tabelas 35 a 40 acima descritas.
[000509] Nestes casos, a ordem da pluralidade de grupos de bits pode ser reorganizada em modo de grupo de bits, de tal modo que uma unidade de organização, em que, pelo menos, um grupo de bits, incluindo bits a serem mapeados sobre o mesmo símbolo de modulação, é organizado em série em unidades de grupo, seja repetida.
[000510] Quando uma pluralidade de grupos de bits é intercalada, a intercalação pode ser executada, gravando em cada fileira, pelo menos, um grupo incluindo bits a serem mapeados sobre um mesmo símbolo de modulação dentre a pluralidade de grupos de bits, cuja ordem foi reorganizada na direção da fileira, e lendo cada coluna da fileira, em que pelo menos um grupo de bits é gravado na direção da coluna.
[000511] Uma mídia permanente legível por computador, que armazena um programa para realizar os métodos de intercalação, de acordo com várias formas de realização exemplares em sequência, pode ser fornecida. A mídia permanente legível por computador se refere a uma mídia que armazena dados semipermanentes, em vez de armazenar dados por um tempo muito curto, tal como um registro, uma cache e uma memória, e pode ser lida por um aparelho. De maneira específica, os vários aplicativos ou programas, acima descritos, podem ser armazenados numa mídia permanente legível por computador, tal como um disco compacto (CD), um disco versátil digital (DVD), um disco rígido, um disco Blu-ray, um barramento universal serial (USB), um cartão de memória, e uma memória somente de leitura (ROM), e podem ser fornecidos.
[000512] Pelo menos um dentre componentes, elementos ou unidades representados por um bloco, conforme ilustrado nas FIGs. 1, 4, 13, 14, 18, 19 e 21, podem ser incorporados como vários números de estruturas de hardware, software e/ou firmware, que executam respectivas funções acima descritas, de acordo com formas de realização exemplares. Por exemplo, pelo menos um desses componentes, elementos ou unidades podem utilizar uma estrutura de circuito direto, tal como uma memória, processamento, lógica, uma tabela de consulta etc., que podem executar as respectivas funções, através de controles de um ou mais microprocessadores ou outros aparelhos de controle. Além disso, pelo menos, um desses componentes, elementos ou unidades podem ser, de maneira específica, incorporados por um módulo, um programa, ou uma parte de código, que contêm uma ou mais instruções executáveis para realizar funções lógicas especificadas. Além disso, pelo menos um dos componentes, elementos ou unidades pode ainda incluir um processador, tal como uma unidade central de processamento (CPU), que executa as respectivas funções, um microprocessador ou semelhantes. Dois ou mais desses componentes, elementos ou unidades podem ser combinados em um único componente, elemento ou unidade, que executa todas as operações ou funções dos dois ou mais componentes, elementos de unidades combinados. Além disso, embora um barramento não seja ilustrado nos diagramas de bloco acima, a comunicação entre os componentes, elementos ou unidades pode ser realizada por meio do barramento. Os aspectos funcionais das formas de realização exemplares descritas acima podem ser implementados em algoritmos, que são executados em um ou mais processadores. Além disso, os componentes, elementos ou unidades representados por um bloco ou etapas de processamento podem utilizar qualquer número de técnicas da arte relacionada para configuração eletrônica, processamento e/ou controle de sinal, processamento de dados e semelhantes.
[000513] Embora um barramento não seja ilustrado nos diagramas de blocos do aparelho transmissor e do aparelho receptor, comunicação pode ser efetuada entre cada elemento de cada aparelho, através do barramento. Além disso, cada aparelho pode ainda incluir um processador, tal como uma Unidade Central de Processamento (CPU) ou um microprocessador para executar as diversas operações acima descritas.
[000514] As formas de realização exemplares e vantagens anteriores são meramente exemplificativas e não devem ser interpretadas como limitativas do presente conceito inventivo. As formas de realização exemplares podem ser facilmente aplicadas a outros tipos de aparelhos. Além disso, a descrição das formas de realização exemplares se destina a ser ilustrativa, e não a limitar o escopo do conceito inventivo, e muitas alternativas, modificações e variações ficarão evidentes para as pessoas versadas na arte.

Claims (12)

1. APARELHO TRANSMISSOR, caracterizado pelo fato de que compreende: um codificador (110) configurado para codificar bits de entrada para gerar bits de paridade com base em um código de verificação de paridade de baixa densidade, LDPC, de acordo com uma taxa de código de 6/15 e um comprimento de código de 64800; um intercalador (120) configurado para intercalar os bits de paridade, dividir uma palavra de código compreendendo os bits de entrada e os bits de paridade intercalados numa pluralidade de grupos de bits e intercalar a pluralidade de grupos de bits para fornecer uma palavra de código intercalada; e um modulador (130) configurado para mapear bits da palavra de código intercalada em pontos de constelação para 1024-Modulação de Amplitude em Quadratura, QAM, em que o intercalador está configurado para intercalar a pluralidade de grupos de bits com base em uma equação seguinte:
Figure img0108
onde Xπ(j) é um n(j)-ésimo grupo de bits entre a pluralidade de grupos de bits, Yj é um j-ésimo grupo de bits entre a pluralidade intercalada de grupo de bits, Ngrupo é um número total da pluralidade de grupos de bits, e π(j) indica uma ordem de permutação para a intercalação da pluralidade de grupos de bits, em que π(j) é representado da seguinte forma:
Figure img0109
2. Aparelho transmissor, de acordo com a reivindicação 1, caracterizado pelo fato de que cada um da pluralidade de grupos de bits compreende o número M de bits, e em que M é 360 bits.
3. Aparelho transmissor, de acordo com a reivindicação 1, caracterizado pelo fato de que π(j) é determinado com base em pelo menos um de um comprimento da palavra de código LDPC, um método de modulação e uma taxa de código.
4. Método de intercalação de um aparelho transmissor, caracterizado pelo fato de que compreende: codificar bits de entrada para gerar bits de paridade com base em um código de verificação de paridade de baixa densidade, LDPC, de acordo com uma taxa de código de 6/15 e um comprimento de código de 64800; intercalar os bits de paridade; dividir uma palavra de código compreendendo os bits de entrada e os bits de paridade intercalados em uma pluralidade de grupos de bits; intercalar a pluralidade de grupos de bits para fornecer uma palavra de código intercalada; e mapear bits da palavra de código intercalada em pontos de constelação para 1024-Modulação de Amplitude em Quadratura, QAM em que a intercalação compreende intercalar a pluralidade de grupos de bits com base em uma equação seguinte: grupo
Figure img0110
onde Xπ(j) é um n(j)-ésimo grupo de bits entre a pluralidade de grupos de bits, Yj é um j-ésimo grupo de bits entre a pluralidade intercalada de grupo de bits, Ngrupo é um número total da pluralidade de grupos de bits, e π(j) indica uma ordem de permutação para intercalar a pluralidade de grupos de bits, em que o π(j) é representado da seguinte forma:
Figure img0111
5. Método de intercalação, de acordo com a reivindicação 4, caracterizado pelo fato de que cada um da pluralidade de grupos de bits é formado pelo número M de bits, e em que M é 360 bits.
6. Método de intercalação, de acordo com a reivindicação 4, caracterizado pelo fato de que π(j) é determinado com base em pelo menos um de um comprimento da palavra de código LDPC, um método de modulação e uma taxa de código.
7. Aparelho receptor (2700), caracterizado pelo fato de que compreende: um desmodulador (2710) configurado para receber um sinal de um aparelho transmissor e desmodular o sinal para gerar valores de acordo com uma 1024-Modulação de Amplitude em Quadratura, QAM; um desintercalador (2730) configurado para dividir os valores em uma pluralidade de grupos e desintercalar a pluralidade de grupos; e um decodificador (2740) configurado para decodificar valores da pluralidade de grupos desintercalados com base numa verificação de paridade de baixa densidade, o código LDPC tendo uma taxa de código de 6/15 e um comprimento de código de 64800 bits, em que a pluralidade de grupos é desintercalada com base em uma seguinte equação:
Figure img0112
onde Xj é um j-ésimo grupo entre a pluralidade de grupos, Yπ(j) é um π(j)^simo grupo entre a pluralidade de grupos desintercalados, Ngrupo é um número total da pluralidade de grupos e π(j) denota uma ordem de permutação para desintercalar a pluralidade de grupos e em que o π(j) é representado da seguinte forma:
Figure img0113
8. Aparelho receptor, de acordo com a reivindicação 7, caracterizado pelo fato de que cada um da pluralidade de grupos compreende 360 valores.
9. Aparelho receptor, de acordo com a reivindicação 7, caracterizado pelo fato de que o desintercalador está configurado para desintercalar um ou mais valores entre a pluralidade de grupos desintercalados, e em que o decodificador está configurado para decodificar valores da pluralidade de grupos desintercalados compreendendo o um ou mais valores desintercalados.
10. Método receptor, caracterizado pelo fato de que compreende: receber um sinal a partir de um aparelho transmissor; desmodular o sinal para gerar valores de acordo com uma 1024-Modulação de Amplitude em Quadratura, QAM; dividir os valores em uma pluralidade de grupos; desintercalar a pluralidade de grupos; e decodificar valores da pluralidade de grupos desintercalados com base em uma verificação de paridade de baixa densidade, o código LDPC possuindo uma taxa de código de 6/15 e um comprimento de código de 64800 bits, em que a pluralidade de grupos é desintercalada com base em uma seguinte equação:
Figure img0114
onde Xj é um j-ésimo grupo entre a pluralidade de grupos, Yπ(j) é um %(j)-ésimo grupo entre a pluralidade de grupos desintercalados, Ngrupo é um número total da pluralidade de grupos e π(j) denota uma ordem de permutação para desintercalar a pluralidade de grupos, e em que o π(j) é representado da seguinte forma:
Figure img0115
10. Método receptor, de acordo com a reivindicação 9, caracterizado pelo fato de que cada um da pluralidade de grupos compreende 360 valores.
11. Método receptor, de acordo com a reivindicação 9, caracterizado pelo fato de que adicionalmente compreende: desintercalar um ou mais valores entre a pluralidade de grupos desintercalados, e em que a decodificação decodifica valores da pluralidade de grupos desintercalados compreendendo um ou mais valores desintercalados.
BR112016021595-8A 2014-03-19 2015-03-19 Aparelho transmissor, e método de intercalação de um aparelho transmissor BR112016021595B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461955410P 2014-03-19 2014-03-19
US61/955,410 2014-03-19
KR10-2015-0000677 2015-01-05
KR1020150000677A KR101776272B1 (ko) 2014-03-19 2015-01-05 송신 장치 및 그의 인터리빙 방법
PCT/KR2015/002677 WO2015142076A1 (en) 2014-03-19 2015-03-19 Transmitting apparatus and interleaving method thereof

Publications (2)

Publication Number Publication Date
BR112016021595A2 BR112016021595A2 (pt) 2017-08-15
BR112016021595B1 true BR112016021595B1 (pt) 2022-09-20

Family

ID=54143050

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112016021595-8A BR112016021595B1 (pt) 2014-03-19 2015-03-19 Aparelho transmissor, e método de intercalação de um aparelho transmissor

Country Status (5)

Country Link
US (5) US9685980B2 (pt)
KR (2) KR102372356B1 (pt)
CN (2) CN111200443B (pt)
BR (1) BR112016021595B1 (pt)
WO (1) WO2015142076A1 (pt)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2525497A1 (en) 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
GB201312243D0 (en) 2013-07-08 2013-08-21 Samsung Electronics Co Ltd Non-Uniform Constellations
US9602245B2 (en) * 2014-05-21 2017-03-21 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US20160156369A1 (en) * 2014-05-21 2016-06-02 Sony Corporation Data processing device and data processing method
US9800269B2 (en) * 2014-05-21 2017-10-24 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
KR101775704B1 (ko) 2014-05-21 2017-09-19 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
KR101775703B1 (ko) 2014-05-21 2017-09-06 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
US10326471B2 (en) * 2014-05-22 2019-06-18 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 3/15 and quadrature phase shift keying, and bit interleaving method using same
US10361720B2 (en) * 2014-05-22 2019-07-23 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 16200 and code rate of 3/15 and 64-symbol mapping, and bit interleaving method using same
CA2864650C (en) * 2014-08-14 2017-05-30 Sung-Ik Park Low density parity check encoder having length of 64800 and code rate of 2/15, and low density parity check encoding method using the same
US9800266B2 (en) * 2014-08-14 2017-10-24 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 4/15, and low density parity check encoding method using the same
US9479289B2 (en) * 2014-08-14 2016-10-25 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 16200 and code rate of 5/15, and low density parity check encoding method using the same
US9496896B2 (en) * 2014-08-14 2016-11-15 Electronics And Telecommunications Research Institute Low density parity check encoder having length of 64800 and code rate of 5/15, and low density parity check encoding method using the same
KR102287623B1 (ko) * 2015-02-16 2021-08-10 한국전자통신연구원 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 1024-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287629B1 (ko) * 2015-02-16 2021-08-10 한국전자통신연구원 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 4096-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287621B1 (ko) * 2015-02-16 2021-08-10 한국전자통신연구원 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287620B1 (ko) * 2015-02-16 2021-08-10 한국전자통신연구원 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 1024-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
US10340954B2 (en) 2015-05-19 2019-07-02 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US10447428B2 (en) 2015-05-19 2019-10-15 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US9787326B2 (en) 2015-05-19 2017-10-10 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding low density parity check codes
US9729174B2 (en) 2015-05-19 2017-08-08 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
JP6880791B2 (ja) 2017-02-06 2021-06-02 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6895052B2 (ja) 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
CN113242084B (zh) * 2021-05-11 2022-01-11 西安电子科技大学 第二代数字卫星广播系统的并行自适应交织/解交织方法

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020051501A1 (en) * 2000-04-28 2002-05-02 Victor Demjanenko Use of turbo-like codes for QAM modulation using independent I and Q decoding techniques and applications to xDSL systems
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6789227B2 (en) * 2001-07-05 2004-09-07 International Business Machines Corporation System and method for generating low density parity check codes using bit-filling
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US7139964B2 (en) * 2002-05-31 2006-11-21 Broadcom Corporation Variable modulation with LDPC (low density parity check) coding
US7111226B1 (en) 2002-05-31 2006-09-19 Broadcom Corporation Communication decoder employing single trellis to support multiple code rates and/or multiple modulations
US7430396B2 (en) 2003-07-03 2008-09-30 The Directv Group, Inc. Encoding low density parity check (LDPC) codes through an LDPC decoder
KR100739510B1 (ko) * 2004-06-16 2007-07-13 포항공과대학교 산학협력단 반구조적 블록 저밀도 패리티 검사 부호 부호화/복호 장치및 방법
DE602006011240D1 (de) 2005-06-21 2010-02-04 Samsung Electronics Co Ltd Vorrichtung und Methode zum Übermitteln/Empfangen von Daten in einem Mehrantennenkommunikationssystem unter Verwendung eines strukturierten Low Density Parity Check (LDPC) Codes
KR20060135451A (ko) * 2005-06-25 2006-12-29 삼성전자주식회사 저밀도 패리티 검사 행렬 부호화 방법 및 장치
KR100946884B1 (ko) * 2005-07-15 2010-03-09 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널인터리빙/디인터리빙 장치 및 그 제어 방법
US8369448B2 (en) * 2006-09-18 2013-02-05 Availink, Inc. Bit mapping scheme for an LDPC coded 32APSK system
US7992070B2 (en) * 2006-12-27 2011-08-02 Nec Laboratories America, Inc. Bit-interleaved LDPC-coded modulation for high-speed optical transmission
KR101492634B1 (ko) * 2007-08-28 2015-02-17 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 데이터 송수신 장치 및 방법
ES2416356T3 (es) * 2007-10-30 2013-07-31 Sony Corporation Aparato y método de procesamiento de datos
KR101435681B1 (ko) * 2007-11-08 2014-09-02 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서데이터 송수신 장치 및 방법
PT2509270T (pt) 2007-11-26 2017-07-18 Sony Corp Aparelho de processamento de dados e método de processamento de dados bem como aparelho de descodificação e método de descodificação
US8677219B2 (en) * 2008-10-03 2014-03-18 Thomson Licensing Method and apparatus for adapting a bit interleaver to LDPC codes and modulations under AWGN channel conditions using binary erasure surrogate channels
US8707125B2 (en) * 2009-11-18 2014-04-22 Samsung Electronics Co., Ltd Method and apparatus for transmitting and receiving data in a communication system
KR20110055410A (ko) 2009-11-18 2011-05-25 삼성전자주식회사 통신 시스템에서 데이터 송수신 방법 및 장치
JP5719998B2 (ja) * 2010-02-10 2015-05-20 パナソニックIpマネジメント株式会社 送信装置、受信装置、送信方法及び受信方法
JP2011182073A (ja) 2010-02-26 2011-09-15 Sony Corp データ処理装置、及びデータ処理方法
JP5601182B2 (ja) 2010-12-07 2014-10-08 ソニー株式会社 データ処理装置、及びデータ処理方法
KR101865068B1 (ko) * 2011-03-30 2018-06-08 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 시스템에서 신호 맵핑/디맵핑 장치 및 방법
JP5637393B2 (ja) 2011-04-28 2014-12-10 ソニー株式会社 データ処理装置、及び、データ処理方法
EP2525496A1 (en) 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
EP2560311A1 (en) * 2011-08-17 2013-02-20 Panasonic Corporation Cyclic-block permutations for spatial multiplexing with quasi-cyclic LDPC codes
EP2597837A1 (en) * 2011-11-25 2013-05-29 Panasonic Corporation Improved cell interleaving and component separation for rotated constellations
US9577679B2 (en) * 2013-10-04 2017-02-21 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
US10355714B2 (en) * 2013-10-04 2019-07-16 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
US9871621B2 (en) * 2013-10-30 2018-01-16 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
US10425110B2 (en) * 2014-02-19 2019-09-24 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US9602137B2 (en) * 2014-02-19 2017-03-21 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US9780808B2 (en) * 2014-05-21 2017-10-03 Samsung Electronics Co., Ltd. Transmitter apparatus and bit interleaving method thereof
US9800269B2 (en) * 2014-05-21 2017-10-24 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US9602245B2 (en) * 2014-05-21 2017-03-21 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof

Also Published As

Publication number Publication date
US9537509B2 (en) 2017-01-03
CN111200443A (zh) 2020-05-26
CN111245442A (zh) 2020-06-05
BR112016021595A2 (pt) 2017-08-15
WO2015142076A1 (en) 2015-09-24
KR102372356B1 (ko) 2022-03-08
US11336299B2 (en) 2022-05-17
KR20190137751A (ko) 2019-12-11
KR102440959B1 (ko) 2022-09-07
US9685980B2 (en) 2017-06-20
US20220255562A1 (en) 2022-08-11
US20170264315A1 (en) 2017-09-14
CN111200443B (zh) 2023-09-12
US10270467B2 (en) 2019-04-23
US20150270853A1 (en) 2015-09-24
US20200343911A1 (en) 2020-10-29
US20160233886A1 (en) 2016-08-11
KR20220034753A (ko) 2022-03-18
CN111245442B (zh) 2023-06-30
US11700018B2 (en) 2023-07-11

Similar Documents

Publication Publication Date Title
BR112016021595B1 (pt) Aparelho transmissor, e método de intercalação de um aparelho transmissor
BR112016019084B1 (pt) Aparelho transmissor, e método de intercalação de um aparelho transmissor
KR101954993B1 (ko) 송신 장치 및 그의 신호 처리 방법
BR112016019234B1 (pt) Aparelho transmissor, e método de intercalação de um aparelho transmissor
AU2018290395B2 (en) Information processing method, apparatus, and communications device
KR101965383B1 (ko) 송신 장치 및 그의 인터리빙 방법
ES2407505T3 (es) Aparato y método de procesamiento de datos
CA3133553C (en) Receiving apparatus using low-density parity check code and bit deinterleaving and receiving method thereof
KR101799953B1 (ko) 송신 장치 및 그의 신호 처리 방법
CA2943041C (en) Transmitting apparatus and interleaving method thereof
BR112016027103B1 (pt) Aparelho de transmissão, e método de intercalação de um aparelho de transmissão
JP2020518145A (ja) 情報処理方法および通信装置
BR112016027099B1 (pt) Aparelho de transmissão
KR102002559B1 (ko) 송신 장치 및 그의 신호 처리 방법
BR112016000146B1 (pt) Método de transmissão, e aparelho transmissor
KR102163710B1 (ko) 송신 장치 및 그의 신호 처리 방법
KR20200117940A (ko) 송신 장치 및 그의 신호 처리 방법
BR112016027106B1 (pt) Método de intercalação de um aparelho de transmissão, e aparelho de transmissão

Legal Events

Date Code Title Description
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B350 Update of information on the portal [chapter 15.35 patent gazette]
B350 Update of information on the portal [chapter 15.35 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: 20 (VINTE) ANOS CONTADOS A PARTIR DE 19/03/2015, OBSERVADAS AS CONDICOES LEGAIS