ID do artigo: 000080017 Tipo de conteúdo: Solução de problemas Última revisão: 11/09/2012

Por que a saída de uma megafunção SCFIFO baseada em MLAB muda quando o sinal completo é afirmado?

Ambiente

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição

Esse comportamento é causado pelas características de hardware do MLAB. A saída de um MLAB é sempre atualizada quando ocorre uma operação de gravação e o endereço de gravação é igual ao endereço de leitura. Ao escrever até o último local disponível em uma megafunção SCFIFO baseada em MLAB, o sinalizador completo é afirmado e os novos dados são armazenados e propagados para a saída. A saída SCFIFO exibe os dados corretos do ciclo após uma solicitação de leitura. Este comportamento (conforme mostrado na Figura 1 abaixo) ocorre durante os testes da placa ou ao simular com a netlist de design SCFIFO. Esse comportamento não ocorre ao simular com o modelo funcional SCFIFO.

Esse comportamento não ocorre para megafunções SCFIFO implementadas em outros tipos de blocos de memória (M512, M4K, M9K, M144K, M20K e M-RAM). Para uma megafunção SCFIFO implementada em um desses tipos de bloco de memória, ao escrever para o último local disponível na megafunção SCFIFO, o sinalizador completo é afirmado e os novos dados são armazenados, mas a saída não mudará. A saída é atualizada apenas quando a solicitação de leitura é afirmada.

As megafunções SCFIFO geradas com o software Quartus® II versões 7.0 e posteriores com as seguintes configurações no Plug-In MegaWizard™ são afetadas:

  • O modo FIFO síncrono normal é selecionado para a opção de acesso de leitura
  • O MLAB é selecionado para o tipo de bloco de memória
  • Nenhuma (menor área) está selecionada para a opção de registro de saída

Para evitar esse comportamento, faça uma das seguintes alterações na sua megafunção SCFIFO:

  • Mude a opção de registro de saída de Não (menor área) para Sim (melhor velocidade). Observe que a latência de saída da megafunção SCFIFO é a mesma em ambos os modos
  • Selecione um tipo de bloco de memória diferente

Em versões futuras do software Quartus® II, o Plug-In SCFIFO MegaWizard é planejado para desabilitar a opção para o tipo de bloco de memória MLAB ao selecionar as opções Modo FIFO síncrono normal e Não ( menor área).

A Figura 1 mostra a forma de onda de uma megafunção SCFIFO baseada em MLAB. A solicitação de leitura no ciclo 9 produz dados válidos na saída no ciclo 10. Mesmo sem uma solicitação de leitura adicional, a solicitação de gravação no ciclo 12 faz com que a saída atualize para novos dados no ciclo 14. A próxima solicitação de leitura no ciclo 15 novamente produz dados válidos na saída do ciclo 16.

Figura 1. Forma de onda SCFIFO baseada em MLAB

Figure 1

Produtos relacionados

Este artigo aplica-se a 11 produtos

FPGA Stratix® IV GX
FPGA Stratix® IV E
FPGA Arria® II GX
FPGAs Stratix® III
FPGA Stratix® V GS
Dispositivos ASIC HardCopy™ IV GX
Dispositivos ASIC HardCopy™ IV E
Dispositivos ASIC HardCopy™ III
FPGA Arria® II GZ
FPGA Stratix® V GX
FPGA Stratix® V GT

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.