Estoy tratando de portar un diseño de Xilinx a Altera, y tengo problemas con el controlador DRAM IP (por un Ciclón-V y un LPDDR2 mem).
Me las he arreglado para generar la IP, pero no entiendo que el reloj debe ser utilizado para el Avalon-MM interfaz.
He mirado en un diseño de ejemplo que utiliza Qsys, avl_0
de autobuses está marcado con associated clock = mp_cmd_clk0
, no el reloj utilizado por el NIOSII de la CPU, que es pll_ref_clock
utilizado por el controlador de memoria del PLL.
Como mi diseño sólo se utiliza en VHDL, sin NIOS, ni cualquier otro Altera IP, que me gustaría evitar Qsys para el cableado de los bloques juntos.
Así :
¿Cuál es el reloj de referencia para el Avalon autobús ?
pll_ref_clk
,afi_clk
,afi_half_clk
, algo más ?¿Puedo elegir la frecuencia, o es una relación fija basada en el DRAM aplicarse, el ancho del bus ?
(Como comparación, el Xilinx MIG controlador DRAM interior de la Fifo, los relojes son entradas y puede tener cualquier frecuencia)
EDITAR
Me han llegado a encontrar información relevante.
https://www.altera.com/literature/hb/external-memory/emi.pdf (10 MB !)
Volumen III, Capítulo 4 : hardware de Interfaz de Memoria.
El Avalon bus[ses] son gestionados por la "Multi-Puerto de Front End (MPFE)"
El Avalon autobuses están asociados con la mp_cmd_xxx_clk, mp_rfifo_xxx_clk, mp_wfifo_xxx_clk señales, y hay algunos internos de la resincronización en el controlador de memoria, de modo que cualquier reloj puede ser utilizado : "El MPFE controla el reloj de cruce entre el usuario de la lógica y el duro interfaz de memoria."
No todos los FPGA de Altera las familias parece que la característica está disponible, o se utilizan diferentes controladores. Esto Altera DRAM controller para el Ciclón V finalmente se tiene características muy similares a la Xilinx MIG IP.