ЛР1 > Знакомство со средой моделирования ModelSim
Статьи по теме
- ЛР2 > Исследование комбинационных устройств: особенности языка Verilog
- ЛР3 > Реализация типовых комбинационных устройств
- ЛР4 > Исследование последовательностных логических устройств: Операторы Verilog
- ЛР5 > Язык Verilog: Исследование арифметических устройств
- ЛР6 > Исследование конечных автоматов
- ЛР7 > Исследование многофункциональных устройств
- ЛР8 > Разработка простого процессорного модуля на Verilog
- МКР 1 > «Основи проектування електронної апаратури на ПЛІС – 1»: Перелік завдань на модульну контрольну роботу

Тема: Интерфейс среды Modelsim, создание проекта, компиляция, создание TCL-макросов и выполнение симуляции.
Структура курса лабораторных работ: Основы Verilog 1. Знакомство со средой моделирования ModelSim |
Скачать Материалы к лабораторной работе по Verilog №1.
1. Теоретические сведения
Среда моделирования ModelSim предназначена для проверки работоспособности проекта, описанного на одном из языков описания аппаратуры (HDL). Она включает в себя средства создания проекта, создания и редактирования исходных файлов проекта, компилятор, моделирующую программу и средства визуализации результатов моделирования (графический редактор и пр.). ModelSim поддерживает работу с тестовыми файлами на HDL (test-bench) или на языке Tcl (командный язык для создания управляющих файлов).
2. Порядок выполнения работы
1. Запустите программу ModelSim с помощью команды Пуск – Все программы – Modelsim SE 6.4 – Modelsim.
- Mentor Graphics Modelsim logo
2. Закройте окно IMPORTANT Information с помощью кнопки Close. Откроется основное рабочее окно среды моделирования:
3. Создайте новый проект. Для этого в меню File выберите команду New – Project.. Откроется диалоговое окно Create Project:
Укажите в нем имя создаваемого проекта (например – my_project), рабочую директорию проекта. Имя текущей библиотеки проекта оставьте по умолчанию (work). Нажмите ОК.
4. В открывшемся диалоговом окне:
выберите команду добавления существующих исходных файлов в проект – Add Existing File.
5. В открывшемся диалоговом окне Add file to Project укажите файл (mult_acc.v) из дериктории исходных данных к лабораторной работе. Нажмите кнопку Открыть. Подтвердите выбор командой ОК. Закройте окно Add items to the Project.
6. В окне рабочей области проекта (Workspace, закладка Project) появится выбранный файл. Двойное нажатие левой кнопки мыши на данном файле позволяет открыть текстовый редактор для просмотра и редактирования исходного файла:
Файл mult_acc.v описывает работу устроайства МАС – перемножитель двух восьмиразрядных чисел с последующим накоплением результата в аккумуляторе (Постарайтесь разобраться с программой). Обратите внимание на значек статуса возле имени файла.
7. Скомпилируйте проект. Для этого выберите в меню Compile команду Compile All. Информация о результате компиляции появиться в окне сообщений (Transcript). Если компиляция завершилась успешно, изменится вид значка статуса возле имени файла.
8. Теперь перейдите в режим моделирования. Для этого в меню Simulate выберите команду Start Simulation. В открывшемся диалоговом окне Start Simulation укажите файл верхнего уровня иерархии для моделирования (файл mult_acc из рабочей библиотеки work).
Отключите опцию Enable optimization. Укажите шаг моделирования (Resolution) равный ps (одна пикосекунда). Нажмите ОК.
9. Внешний вид среды ModelSim изменился. Она переключилась в режим моделирования. В окне рабочей области проекта (Workspace)
появилась закладка sim (список доступных для моделирования объектов – исходный файл, входящие в его состав функции и процессы). Открылось окно Objects – доступные для просмотра объекты (входные, выходные и внутренние сигналы).
10. Сделайте окно Object активным (нажмите левой кнопкой мыши на заглавии окна). В меню Add выберите команду To Wave – All items in region. Данная команда позволяет открыть графическое окно и добавить в него для просмотра все сигналы, присутствующие в данном модуле.
11. Для того, чтобы приступить к моделированию, необходимо создать файл с входными тестовыми сигналами (test-bench). Для данной лабораторной работы он уже создан – это файл Stim.do (на языке Tcl). Чтобы посмотреть его перейдите в окне рабочей области проекта (Workspace) к закладке Project. В меню File выберите команду Open.. В окне выбора файла укажите тип файла – Macro Files (*.do, *.tcl) и укажите файл Stim.do. В окне текстового редактора откроется данный файл.
ПРИМЕЧАНИЕ
Рассмотрим подробнее формат команды формирования входных воздействий:
force clr 1 0ns, 0 50ns; - данная команда говорит о том, что сигналу clr необходимо присвоить значение логической «1» на 0 нанасекунде, а затем – логического «0» на 50 наносекунде. Последнее значение будет сохраняться до конца времени моделирования.
force clk 0 0ns, 1 {50ns} –repeat 100ns; - данная команда говорит о том, что сигналу clk необходимо присвоить значение логического «0» на 0 нанасекунде, а затем – логической «1» на 50 наносекунде. Данная последовательность будет периодически повторяться с периодом 100 наносекунд до конца времени моделирования. Обратите внимание – значение времени перед опцией –repeat обязательно указывается в фигурных скобках.
force ina 10#0 0ns, 10#2 30ns; - данная команда присваивает следующие значения входному сигналу ina : на 0 наносекунде – 0 (в десятичном формате), на 30 наносекунде – 2 (в десятичном формате). Последнее значение будет сохраняться до конца времени моделирования. Первая цифра перед знаком # указывает на формат числа (2 – двоичный формат, 10 – десятичный формат, 16 – шестнадцатиричный формат), а цифра за знаком – его значение.
12. Для подключения тестового файла к проекту в меню Tools выберите команду TCL – Execute Macro… и укажите файл Stim.do.
13. Запуск моделирующей программы осуществляется из меню Simulate командой Run – Run –All. Результат моделирования будет отображаться в графическом окне:
Проверьте правильность работы устройства по результатам моделирования.
ПРИМЕЧАНИЕ Управление моделированием может осуществляться с помощью команды run из окна сообщений. Формат команды:
run 100 – выполнение 100 шагов моделирования;
run 1000ns – выполнение моделирования до отметки времени, отстоящей на 1000 наносекунд от текущей позиции;
run @ 300 - выполнение моделирования до отметки времени, отстоящей на 300 шагов моделирования от нулевой позиции;
run @ 1500ns – выполнение моделирования до отметки времени, отстоящей на 1500 наносекунд от нулевой позиции;
restart –force – сброс результатов моделирования.
Обратите внимание – для повторного моделирования после сброса результатов необходимо снова подключить к проекту файл с входными тестовыми сигналами.
14. Для выхода из режима моделирования в меню Simulate выберите команду End Simulation.
3. Самостоятельная работа
Изменяя значение входных сигналов и временные параметры в файле Stim.do, проверьте работоспособность тестируемого устройства.