Cómo acelerar la simulación de Modelsim

4

¿Cómo puedo hacer que Modelsim se ejecute más rápido para la simulación en lugar de ¿Algo en el rango de picosegundos (intervalo de tiempo)? Hay algun otro ¿Métodos para acelerar la simulación? Se tarda 45 minutos en llegar a 1 ms como de ahora Quiero que la simulación se ejecute durante 20 ms para verificar cierta Contadores, módulos temporizadores y eventos. El reloj del sistema funciona a 50 MHz.

Y si hay una opción, habrá algunos inconvenientes. Por ejemplo ¿eventos perdidos etc.?

    
pregunta Alex Krish

4 respuestas

2

Este es un problema muy común para todos los desarrolladores de FPGA. Aquí están mis consejos (probablemente hay muchos otros).

Primero, puedes decidir ver solo algunas señales, para que el cálculo se ejecute más rápido. Solo necesita separar su diseño en módulos más pequeños (o solo mirar un proceso después de uno).

O puede definir diferentes constantes para la simulación de esta manera:

CONSTANT MY_CONSTANT : integer := 50; -- for simu
--CONSTANT MY_CONSTANT : integer := 500; -- for real

Hacer esto para cada contador realmente puede hacer que ahorres tiempo.

Y, finalmente, obviamente puedes acelerar tu clock también.

    
respondido por el A. Kieffer
0

Asegúrese de que su escala de tiempo y precisión de tiempo estén configuradas de manera adecuada para su diseño. Si el reloj del sistema es de 50 Mhz, no necesita una resolución de 1 ps. Al reducir la precisión del tiempo, el simulador evaluará menos eventos y ayudará a la velocidad de la simulación.

Para Verilog, use la directiva de escala de tiempo:

'timescale 1ns/100ps 

El primer argumento es la escala de tiempo: se usará como unidad cuando se utilicen retardos como #10 . El segundo argumento es la precisión del tiempo.

Para un diseño de 50 Mhz donde esa es la frecuencia más alta que necesita simular, 1ns / 100ps sería apropiado.

Para VHDL, no recuerdo cómo se controla esto, y si es un constructo de lenguaje o herramienta específica. Pero el mismo concepto se mantiene.

    
respondido por el dwikle
0

Dependiendo de su instalación, la resolución de su simulador puede ser picosegundo por defecto. Verifique su modelsim.ini y busque la variable Resolution debajo del encabezado [vsim] .

Alternativamente, puede forzar la resolución en la línea de comando. Estás muy cerca de tu ejemplo. La sintaxis es vsim -t ns para resolución de nanosegundos.

Tenga en cuenta que Verilog timescale es muy diferente en VHDL. Como time es una unidad en VHDL, la naturaleza de referencia temporal de timescale no es significativa (todos wait for ... tienen un tiempo explícito, no implícito como # de Verilog). El parámetro de resolución para Modelsim es más análogo a la precisión en timescale , pero redondeado a la precisión más pequeña. Por lo tanto, si utiliza un Verilog timescale que sugiere dwikle, Modelsim utilizará la resolución de picosegundos.

Ahora, si su ciclo de reloj es de 50MHz, entonces necesitará al menos una precisión de nanosegundos.

    
respondido por el PlayDough
0

Vengo aquí para ver el problema de la velocidad de simulación. Acabo de desactivar mostrar errores en la sección Trascript durante la simulación, y se hizo mucho más rápido. solo inténtalo

    
respondido por el houssemus

Lea otras preguntas en las etiquetas