Estoy haciendo un experimento en la placa Xilinx VC709. El experimento consiste en quitar y conectar la memoria RAM DDR3 mientras se ejecuta la FPGA. Pero cada vez que vuelvo a conectar la RAM tengo que reprogramar la FPGA. Estoy usando JTAG para programar el FPGA, lo que requiere tiempo para programar. Intenté reiniciar solo el Microblaze que aún no podía detectar la RAM cuando se enchufaba mientras estaba funcionando. ¿Hay alguna otra forma de restablecer la configuración sin tener que reprogramar?
Gracias
Si desenchufa el módulo DDR3 SDRAM, la configuración dentro del módulo se pierde. Después de volver a enchufar la SDRAM DDR3, la RAM debe reiniciarse. Por ejemplo, se debe configurar la latencia CAS deseada y la longitud de ráfaga (¡dentro del módulo!) y restablecer el DCM (del módulo) (si se usa).
Esta configuración la realiza el controlador de memoria, generalmente después del encendido o reinicio. Las placas FPGA de Xilinx, etc. suelen tener un botón CPU_RESET
(o similar) para confirmar un reinicio de todo el sistema basado en Microblaze. Si presionar este botón ayuda, también puede activar la señal adjunta por su cuenta para reiniciar el sistema. EDITAR : solo reiniciar el Microblaze no es suficiente, el controlador de memoria también debe reiniciarse.
Simplemente reiniciar el controlador de memoria también podría ser una opción, si la señal de reinicio adecuada está accesible en su diseño. Pero, el estado del sistema operativo/aplicación normalmente se perdería de todos modos.
La FPGA se puede restablecer asignando el conjunto/reinicio global (GSR). Este "pin" es asignado automáticamente después de la configuración por el FSM de configuración y puede ser asignado por el usuario por el STARTUP_*
componente.
De la Guía de la biblioteca Virtex HDL:
Este elemento de diseño se usa para interconectar los pines del dispositivo y la lógica con la señal Global Set/Reset (GSR), el enrutamiento dedicado Global Tristate (GTS), las señales de configuración interna o los pines de entrada para SPI PROM si se usa un SPI PROM para configurar el dispositivo. Esta primitiva también se puede usar para especificar un reloj diferente para la secuencia de inicio del dispositivo al final de la configuración del dispositivo y para acceder al reloj de configuración a la lógica interna.
tom carpintero
usuario_1818839
yippie
FarhadA