Devido a um problema no algoritmo de calibração do CONTROLADOR SDRAM do HPS gerado pela Altera Embedded Design Suite para SoC Cyclone® V e dispositivos SoC Arria® V, o relatório do centro de habilitação do DQS pode ser maior do que os relatórios de início e fim.
O algoritmo de calibração encontra os parâmetros máximos e mínimos para uma série de atrasos e escolhe o valor central. Para a habilitação do DQS, os relatórios de início e de ponta foram normalizados para VFIFO_SIZE, mas o relatório central não é normalizado, portanto, pode parecer estar fora do início do intervalo: final.
VFIFO_SIZE é configurada como 16 para Cyclone® dispositivos V e Arria® V.
Nota: para habilitar este relatório, é necessário definir a macro RUNTIME_CAL_REPORT, que informa os resultados do processo de calibração para o stdout (geralmente um UART).
O relatório VFIFO central deve ser dividido em 16, o que é VFIFO_SIZE e o restante é o atraso de VFIFO.
Por exemplo:
SEQ. C: Habilitar o DQS; Grupo 0; Classificação 0; Inicie o VFIFO 6; Fase 1; Atraso 4
SEQ. C: Habilitar o DQS; Grupo 0; Classificação 0; Encerrar o VFIFO 7 ; Fase 0; Atraso 18
SEQ. C: Habilitar o DQS; Grupo 0; Classificação 0; Centro VFIFO 22 ; Fase 5; Atraso 3
O valor do VFIFO do verdadeiro centro é 22 % 16 = 6, que está entre 6 e 7 conforme esperado.
O código pré-carregado gerado pode ser modificado para fazer esta alteração da seguinte forma:
1. Abra <preloader>\uboot-socfpga\board\altera\socfpga\sdram\sequencer.c
2. Procure a seguinte linha:
RPRINT ("Habilitar DQS; Agrupar %lu ; Rank %lu ; Centro VFIFO %2li ; Fase %li; Atraso %2li", grp, sr, v, p-1, d);
3. Substituição por esta linha:
RPRINT ("Habilitar DQS; Agrupar %lu ; Rank %lu ; Centro VFIFO %2li ; Fase %li; Atraso %2li", grp, sr, (v % VFIFO_SIZE), p-1, d);
4. Recarregue o pré-carregamento executando:
limpar; Fazer.
Esse problema foi corrigido a partir do Altera Embedded Design Suite 15.1.