Debido a un problema en el algoritmo de calibración del controlador HPS SDRAM generado por el paquete de diseño integrado del sistema integrado en chip Altera para los dispositivos dispositivo de sistema integrado en chip Cyclone® V y Arria® V, el informe central de habilitación de DQS puede ser mayor que los informes de inicio y final.
El algoritmo de calibración encuentra los parámetros máximos y mínimos para una serie de retrasos y selecciona el valor central. Para habilitar DQS, los informes de inicio y fin se han normalizado a VFIFO_SIZE, pero el informe central no está normalizado, por lo que puede parecer que está fuera del intervalo start: end.
VFIFO_SIZE está configurado en 16 para dispositivos de Cyclone® V y Arria® V.
Nota: Para habilitar este informe, se debe definir la RUNTIME_CAL_REPORT macro, que informa los resultados del proceso de calibración al stdout (normalmente un UART).
El informe VFIFO del centro debe dividirse por 16, que es VFIFO_SIZE y el resto es el retraso de VFIFO.
Por ejemplo:
SEQ. C: Habilitar DQS; Grupo 0 ; Rango 0 ; Inicie VFIFO 6 ; Fase 1; Demora 4
SEQ. C: Habilitar DQS; Grupo 0 ; Rango 0 ; Fin VFIFO 7 ; Fase 0 ; Demora 18
SEQ. C: Habilitar DQS; Grupo 0 ; Rango 0 ; Centro VFIFO 22 ; Fase 5; Demora 3
El valor VFIFO del centro verdadero es 22 % 16 = 6, que está entre 6 y 7 como se esperaba.
El código del precargador generado puede modificarse para realizar este cambio de la siguiente manera:
1. Abra <preloader>\uboot-socfpga\board\altera\socfpga\sdram\sequencer.c
2. Busque la siguiente línea:
RPRINT("DQS Enable ; Grupo %lu ; Rango %lu ; Centro VFIFO %2li ; Fase %li ; Retraso %2li", grp, sr, v, p-1, d);
3. Sustitución por esta línea:
RPRINT("DQS Enable ; Grupo %lu ; Rango %lu ; Centro VFIFO %2li ; Fase %li ; Retraso %2li", grp, sr, (v % VFIFO_SIZE), p-1, d);
4. Regenera tu Precargador ejecutando:
limpiar; Hacer.
Este problema se solucionó a partir de la versión 15.1 de Altera SoC Embedded Design Suite.