Запустить ModelSim из командной строки

Материал из Модулярная арифметики
(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: «Решение приводится для Windows-систем для классической простой задачи. Пусть на входе имеет…»)
 
 
(не показаны 3 промежуточные версии 1 участника)
Строка 8: Строка 8:
  
 
Создайте в той же папке что и module.v файл run.bat. И запишите в нем следующие команды:
 
Создайте в той же папке что и module.v файл run.bat. И запишите в нем следующие команды:
<pre>C:\Programs\Altera\modelsim_ase\win32aloem\vlog.exe test.v
+
<pre>C:\Programs\Altera\modelsim_ase\win32aloem\vlib.exe work
 +
C:\Programs\Altera\modelsim_ase\win32aloem\vlog.exe -work work test.v
 
C:\Programs\Altera\modelsim_ase\win32aloem\vsim.exe -c -do test.do adder</pre>
 
C:\Programs\Altera\modelsim_ase\win32aloem\vsim.exe -c -do test.do adder</pre>
  
Замечание: замените пути до файлов на свои и замените adder на имя своего модуля верхнего уровня.
+
Замечания:  
 +
* замените пути до файлов "C:\Programs\Altera\modelsim_ase\win32aloem\" на свои  
 +
* замените '''adder''' на имя своего модуля верхнего уровня
 +
* директория '''work''' должна отсутствовать при первом запуске скрипта, вы так же можете поменять её им на любое другое
 +
* если в проекте у вас используется несколько Verilog-файлов то вы можете указать их через пробел (во второй строчке BAT-файла)
  
 
Этот исполняемый BAT-файл по двойному клику запустит компиляцию Verilog-файла и затем запустит задание на моделирование, которое надо будет написать в файле test.do. В большинстве случаев структура у test.do файла будет одинаковая:
 
Этот исполняемый BAT-файл по двойному клику запустит компиляцию Verilog-файла и затем запустит задание на моделирование, которое надо будет написать в файле test.do. В большинстве случаев структура у test.do файла будет одинаковая:
Строка 22: Строка 27:
 
Поскольку вы озаботились запуском ModelSim из командной строки значит вы скорее всего автоматизируете работу моделирования. И в этом случае вместо команд $display в Test Bench пригодится запись в файл. Запись в файл обеспечивается следующими функциями:
 
Поскольку вы озаботились запуском ModelSim из командной строки значит вы скорее всего автоматизируете работу моделирования. И в этом случае вместо команд $display в Test Bench пригодится запись в файл. Запись в файл обеспечивается следующими функциями:
  
<pre>file = $fopen("output.dat");
+
<pre>
 +
integer file;
 +
file = $fopen("output.dat", "w");
 
$fwrite (file, "%f", var);
 
$fwrite (file, "%f", var);
 
$fclose(file);</pre>
 
$fclose(file);</pre>
  
 
Данная последовательность команд запишет в файл с именем output.dat значение вещественной переменной var.
 
Данная последовательность команд запишет в файл с именем output.dat значение вещественной переменной var.

Текущая версия на 16:27, 7 мая 2014

Решение приводится для Windows-систем для классической простой задачи. Пусть на входе имеется файл test.v, в котором задана схема для моделирования и записан тест-бенч.

[править] Порядок действий

Для начала необходимо найти расположение папки с ModelSim. Сделать это можно к примеру нажав правой кнопкой мыши на ярлык программы. Выбрав "Свойтсва/Properties" и далее в открывшемся окошке "Open file location".

В нашем случае путь такой:

C:\Programs\Altera\modelsim_ase\win32aloem\modelsim.exe

Создайте в той же папке что и module.v файл run.bat. И запишите в нем следующие команды:

C:\Programs\Altera\modelsim_ase\win32aloem\vlib.exe work
C:\Programs\Altera\modelsim_ase\win32aloem\vlog.exe -work work test.v
C:\Programs\Altera\modelsim_ase\win32aloem\vsim.exe -c -do test.do adder

Замечания:

  • замените пути до файлов "C:\Programs\Altera\modelsim_ase\win32aloem\" на свои
  • замените adder на имя своего модуля верхнего уровня
  • директория work должна отсутствовать при первом запуске скрипта, вы так же можете поменять её им на любое другое
  • если в проекте у вас используется несколько Verilog-файлов то вы можете указать их через пробел (во второй строчке BAT-файла)

Этот исполняемый BAT-файл по двойному клику запустит компиляцию Verilog-файла и затем запустит задание на моделирование, которое надо будет написать в файле test.do. В большинстве случаев структура у test.do файла будет одинаковая:

run -all
quit

[править] Полезные функции для Test Bench

Поскольку вы озаботились запуском ModelSim из командной строки значит вы скорее всего автоматизируете работу моделирования. И в этом случае вместо команд $display в Test Bench пригодится запись в файл. Запись в файл обеспечивается следующими функциями:

integer file;
file = $fopen("output.dat", "w");
$fwrite (file, "%f", var);
$fclose(file);

Данная последовательность команд запишет в файл с именем output.dat значение вещественной переменной var.


Персональные инструменты
Пространства имён

Варианты
Действия
Навигация