ModelSim Altera

Voici quelques informations sur la simulation sous Quartus à l'aide de ModelSim :


Note : l'environnement Quartus/ModelSim doit être configuré pour chaque nouvel utilisateur :
Tools/Options/EDA Tool Options/ ModelSim-Altera ... C:\altera\11.0\modelsim_ase\win32aloem

Dans le projet Quartus, il y a quelques paramètres à définir ; exemple du projet BIDON (fichier bidon.tcl) :


set_global_assignment -name EDA_SIMULATION_TOOL "ModelSim-Altera (VHDL)"
set_global_assignment -name EDA_OUTPUT_DATA_FORMAT VHDL -section_id eda_simulation
set_global_assignment -name VHDL_FILE simulation/modelsim/bidon_vhd_tst.vhd
set_global_assignment -name EDA_NATIVELINK_SIMULATION_TEST_BENCH tb -section_id eda_simulation
set_global_assignment -name EDA_TEST_BENCH_NAME tb -section_id eda_simulation
set_global_assignment -name EDA_DESIGN_INSTANCE_NAME i1 -section_id tb
set_global_assignment -name EDA_TEST_BENCH_RUN_SIM_FOR "100 us" -section_id tb
set_global_assignment -name EDA_TEST_BENCH_MODULE_NAME bidon_vhd_tst -section_id tb
set_global_assignment -name EDA_NATIVELINK_SIMULATION_SETUP_SCRIPT simulation/modelsim/bidon.do 
                            -section_id eda_simulation
set_global_assignment -name EDA_TEST_BENCH_ENABLE_STATUS TEST_BENCH_MODE -section_id eda_simulation
set_global_assignment -name EDA_TEST_BENCH_FILE simulation/modelsim/bidon_vhd_tst.vhd -section_id tb

La simulation peut être :

  • Fonctionnelle : Tools/Run EDA Simulation Tools/EDA RTL Simulation
  • Temporelle : Tools/Run EDA Simulation Tools/Gate Level Simulation
  • Il faut définir les conditions (Test Bench) de la simulation ; sous Quartus, à l'aide du menu Processing/Start/Start Test Bench Template Writer

    Le fichier généré (.VHT) doit être renommé en .VHD ; exemple : bidon_vhd_tst.vhd (dossier simulation/modelsim)

    Le projet BIDON a défini le lancement automatique de la simulation et l'affichage de courbes par le fichier de script bidon.do (dossier simulation/modelsim) :

     onerror {resume}
    set RunLength 100ns
    delete wave *
    quietly WaveActivateNextPane {} 0
    add wave -noupdate /bidon_vhd_tst/resetn
    add wave -noupdate /bidon_vhd_tst/horl
    add wave -noupdate -divider mémoire
    add wave -noupdate -radix hexadecimal /bidon_vhd_tst/ad_mem
    ...
    run 100 us
    ...
    
     

    Mise à jour : le 29/11/2011 20:15