Design de referência do decodificador intel Erasure
Atualizado para Intel® Quartus® Prime Design Suite: 17.0
EU IA: 683099
Versão: 2017.05.02
Sobre o design de referência do decodificador Erasure
- O Erasure Decoder é um tipo específico de decodificador Reed-Solomon que usa um código de correção de erro de bloco linear, não binário e cíclico.
- Em um decodificador Reed-Solomon com capacidade de decodificação de apagamento, o número de erros (E) e apagamentos (E') que você pode corrigir é: n – k = 2E + E'
- Onde n é o comprimento do bloco e k é o comprimento da mensagem (nk é igual ao número de símbolos de paridade).
- O Erasure Decoder considera apenas rasuras, portanto a capacidade de correção pode atingir o máximo dado por nk. O decodificador recebe como entrada os locais de apagamento, normalmente fornecidos pelo demodulador dentro do sistema de codificação, que podem indicar que certos símbolos de código recebidos não são confiáveis. O design não deve exceder a capacidade de correção de apagamento. O design trata os símbolos que indica como apagados como valor zero.
Características
- Alvos dispositivos Stratix® 10
- Corrige rasuras
- Operação paralela
- Controle de fluxo
Descrição funcional do decodificador de apagamento
- O Erasure Decoder não corrige erros, apenas rasuras. Evita a complexidade de encontrar locais de erro, que a decodificação Reed-Solomon requer.
- O algoritmo de design e a arquitetura são diferentes de um decodificador Reed-Solomon. A decodificação de apagamento é uma forma de codificação. Ele tenta preencher a entrada com símbolos p=nk para formar uma palavra-código válida, cumprindo as equações de paridade. A matriz de paridade e a matriz geradora definem as equações de paridade.
- O design funciona apenas com pequenos códigos Reed-Solomon, como RS(14,10), RS(16,12), RS(12,8) ou RS(10,6). Para um pequeno número de símbolos de paridade (p < k), use este projeto; para um grande número de símbolos de paridade (p > kp), você deve usar uma matriz geradora.
- O padrão de eliminação (representado pela entrada in_era de n bits de largura) endereça a ROM onde o design armazena as submatrizes de paridade. O projeto tem apenas np = n! k! n − k ! possíveis padrões de apagamento. Portanto, o projeto usa um módulo de compactação de endereço.
- O design codifica o endereço com o número de endereços que são menores que o endereço e têm exatamente p bits definidos.
- O Erasure Decoder recebe em sua entrada qualquer taxa de entrada de símbolos, até o comprimento total do bloco n por ciclo para a taxa de transferência máxima. Você pode configurar o paralelismo e o número de canais, para que o design multiplique os símbolos recebidos pelo número de canais em paralelo que correspondem a diferentes palavras-código que chegam ao mesmo tempo.
- O decodificador de apagamento produz a palavra de código decodificada completa, incluindo símbolos de verificação, em um ciclo (várias palavras de código para vários canais).
Um buffer de entrada permite que você tenha um número de símbolos paralelos por canal menor que o comprimento total do bloco (n). A Intel recomenda que você use a largura de banda de entrada, a menos que o paralelismo dependa dos requisitos de sua interface.
Parâmetros do Núcleo de IP do Decodificador de Apagamento
Parâmetro | Valores Legais | Valor Padrão | Descrição |
Número de canais | 1 para 16 | 1 | O número de canais de entrada (C) para processar. |
Número de bits por símbolo | 3 para 12 | 4 | O número de bits por símbolo (M). |
Número de símbolos por palavra de código | 1 para 2M-1 | 14 | O número total de símbolos por palavra de código (N). |
Número de símbolos de verificação por palavra de código | 1 para N-1 | 4 | O número de símbolos de verificação por palavra de código (R). |
Número de símbolos paralelos por canal | 1 para N | 14 | O número de símbolos que chegam em paralelo na entrada para cada palavra de código (PAR) |
polinômio de campo | Qualquer polinômio válido | 19 | Especifica o polinômio primitivo que define o campo de Galois. |
Interfaces e sinais do decodificador de apagamento
- A interface Avalon-ST suporta contrapressão, que é um mecanismo de controle de fluxo, onde um coletor pode indicar a uma fonte para interromper o envio de dados.
- A latência pronta na interface de entrada do Avalon-ST é 0; o número de símbolos por batida é fixado em 1.
- As interfaces de clock e reset acionam ou recebem o sinal de clock e reset para sincronizar as interfaces Avalon-ST.
Interfaces Avalon-ST em Núcleos IP DSP
- As interfaces Avalon-ST definem um protocolo padrão, flexível e modular para transferências de dados de uma interface de origem para uma interface de destino.
- A interface de entrada é um coletor Avalon-ST e a interface de saída é uma fonte Avalon-ST. A interface Avalon-ST oferece suporte a transferências de pacotes com pacotes intercalados em vários canais.
- Os sinais da interface Avalon-ST podem descrever interfaces de streaming tradicionais que suportam um único fluxo de dados sem conhecimento de canais ou limites de pacotes. Essas interfaces geralmente contêm dados, sinais prontos e válidos. As interfaces Avalon-ST também podem suportar protocolos mais complexos para rajadas e transferências de pacotes com pacotes intercalados em vários canais. A interface Avalon-ST sincroniza inerentemente projetos multicanais, o que permite que você obtenha implementações eficientes e multiplexadas no tempo sem ter que implementar uma lógica de controle complexa.
- As interfaces Avalon-ST oferecem suporte à contrapressão, que é um mecanismo de controle de fluxo em que um coletor pode sinalizar para uma fonte interromper o envio de dados. O coletor normalmente usa contrapressão para interromper o fluxo de dados quando seus buffers FIFO estão cheios ou quando há congestionamento em sua saída.
Informações relacionadas
- Especificações da Interface Avalon
Apagar sinais do núcleo IP do decodificador
Sinais de relógio e redefinição
Nome | Tipo Avalon-ST | Direção | Descrição |
clk_clk | clk | Entrada | O relógio principal do sistema. Todo o núcleo IP opera na borda ascendente de clk_clk . |
reset_reset_n | redefinir_n | Entrada | Um sinal baixo ativo que reinicializa todo o sistema quando afirmado. Você pode afirmar este sinal de forma assíncrona.
No entanto, você deve desativá-lo síncrono com o sinal clk_clk. Quando o núcleo IP se recuperar da reinicialização, certifique-se de que os dados recebidos sejam um pacote completo. |
Sinais de Interface de Entrada e Saída Avalon-ST
Nome | Tipo Avalon-ST | Direção | Descrição |
pronto | preparar | Saída | Sinal pronto para transferência de dados para indicar que o coletor está pronto para aceitar dados. A interface do coletor aciona o sinal in_ready para controlar o fluxo de dados pela interface. A interface do coletor captura os sinais da interface de dados na borda de subida do clk atual. |
inválido | válido | Entrada | Sinal válido de dados para indicar a validade dos sinais de dados. Quando você afirma o sinal in_valid, os sinais da interface de dados Avalon-ST são válidos. Quando você desativa o sinal in_valid, os sinais da interface de dados Avalon-ST são inválidos e devem ser desconsiderados. Você pode confirmar o sinal in_valid sempre que os dados estiverem disponíveis. No entanto, o coletor só captura os dados da fonte quando o núcleo IP afirma o sinal in_ready. |
in_dados[] | dados | Entrada | Entrada de dados contendo os símbolos da palavra-código. Válido apenas quando in_valid for declarado. O sinal in_data é um vetor contendo C x PAR símbolos. Se PAR < N, a palavra-código de cada canal chega ao longo de vários ciclos. |
em_era | dados | Entrada | Entrada de dados que indica quais símbolos são rasuras. Válido apenas quando in_valid for declarado. É um vetor contendo C x PAR pedaços. |
pronto_fora | preparar | Entrada | Sinal de transferência de dados pronto para indicar que o módulo downstream está pronto para aceitar dados. A fonte fornece novos dados (se disponíveis) quando você ativa o sinal out_ready e para de fornecer novos dados quando você desativa o sinal out_ready. |
fora_válido | válido | Saída | Sinal válido de dados. O núcleo IP afirma o sinal out_valid alto, sempre que uma saída válida estiver em out_data. |
dados_out | dados | Saída | Contém saída decodificada quando o núcleo IP afirma o sinal out_valid. Os símbolos corrigidos estão na mesma ordem em que foram inseridos. É um vetor contendo C x N símbolos. |
erro_out | erro | Saída | Indica a palavra-código não corrigível. |
- Um sinal in_valid declarado indica dados válidos.
- Cada palavra de código pode chegar em vários ciclos, dependendo do parâmetro de paralelismo. O design rastreia a estrutura da entrada, portanto, não requer limites de pacotes na interface. O número de canais em paralelo do design aumenta a taxa de transferência ao replicar as unidades funcionais para todos os canais simultâneos. Este design não usa o suporte de múltiplos canais da interface Avalon-ST.
- Quando o decodificador ativa o sinal out_valid, ele fornece dados válidos em out_data.
- Ele gera palavras de código C por ciclo, onde C é o número de canais em paralelo. O núcleo IP ativa o sinal out_error quando recebe uma palavra-código não corrigível, ou seja: quando o núcleo IP excede a capacidade de correção de apagamento
Design de referência do decodificador de apagamento
Corporação Intel. Todos os direitos reservados. Intel, o logotipo da Intel e outras marcas da Intel são marcas comerciais da Intel Corporation ou de suas subsidiárias. A Intel garante o desempenho de seus produtos FPGA e semicondutores de acordo com as especificações atuais de acordo com a garantia padrão da Intel, mas reserva-se o direito de fazer alterações em quaisquer produtos e serviços a qualquer momento sem aviso prévio. A Intel não assume nenhuma responsabilidade decorrente do aplicativo ou uso de qualquer informação, produto ou serviço aqui descrito, exceto conforme expressamente acordado por escrito pela Intel. Os clientes da Intel são aconselhados a obter a versão mais recente das especificações do dispositivo antes de confiar em qualquer informação publicada e antes de fazer pedidos de produtos ou serviços.
Outros nomes e marcas podem ser reivindicados como propriedade de terceiros.
Documentos / Recursos
![]() |
Design de referência do decodificador intel Erasure [pdf] Instruções Design de referência do decodificador Erasure, decodificador Erasure, referência do decodificador Erasure |