Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебники 60234.doc
Скачиваний:
25
Добавлен:
01.05.2022
Размер:
3.65 Mб
Скачать

5. Методические указания по выполнению практических заданий Практическая работа № 1. Моделирование цифрового устройства на rtl уровне

Цели работы: ознакомление с программой моделирования цифровых устройств на базе RTL описания, получение навыков настройки и работы со средой моделирования.

Краткие теоретические сведения

Настройка рабочей среды NCLaunch

В настоящее время разработка цифровых схем для 3D изделий осуществляется согласно методологии логического синтеза. Одним из этапов проектирования схем является написание и отладка RTL кода. САПР Cadence имеет в своем составе приложение Verilog-NC, использующееся для моделирования как на RTL-, так и на вентильном уровне.

Приложение Verilog-NC запускается командой «nclaunch» в терминальном окне, открытом из рабочего каталога. В результате выполнения команды откроется окно, показанное на рис. 5.1.1.

Рис. 5.1.1. Приложение NCLaunch

Для работы в приложении необходимо создать рабочий каталог. Вызов окна создания осуществляется из меню «File/Set Design Directory» окна NCLaunch. После выполнения команды на экран выводится окно, показанное на рис. 5.1.2, а. В строке Design Directory необходимо указать рабочий каталог, из которого будет осуществляться запуск приложения NCLaunch и в котором будут храниться рабочие файлы. После нажатия на клавишу «Create cds.lib File» в строке Library Mapping File появится путь и название lib-файла, в котором указывается путь к рабочей библиотеке. Название рабочей библиотеки необходимо задать в строке Work Library. По умолчанию рабочая библиотека называется worklib (рис. 5.1.2, б). После нажатия на клавишу «ok» создается рабочая директория, которая появляется в окне.

а) б)

Рис. 5.1.2. Создание рабочего каталога: а) создание файла cds.lib;

b) создание рабочего каталога

На рис. 5.1.3 представлен вид окна NCLaunch после инициализации рабочей библиотеки. Рабочее окно приложение NCLaunch разбито на несколько полей. Под основным меню окна располагаются рабочие клавиши быстрого запуска основных процедур: редактирование текстового файла, обновление содержимого экрана, запуск компиляции VHDL-файла, запуск компиляции Verilog-файла, старт создания рабочего сеанса (сборка схемы из скомпилированных файлов), запуск окна симуляции.

Рис. 5.1.3. Вид окна NCLaunch после инициализации рабочей библиотеки

В левой части окна расположены все рабочие каталоги, содержащие исходный RTL код, а также тестовое окружение (testbench). Правая часть окна содержит все рабочие директории, в том числе текущую worklib, иконка папки которой представлена в виде строительной каски желтого цвета. В самом низу списка директорий расположена папка рабочих сеансов. В нижней части окна NCLaunch отображаются выполняемые команды и процессы в текстовом виде, а также статусная информация выполненных процессов.

Для компиляции рабочих файлов необходимо выделить требуемые файлы и нажать клавишу компиляции, соответствующую языку, на котором написаны данные файлы, например, Verilog. В результате будет выполнена компиляция файлов в формат базы данных приложения NCLaunch. При этом в нижней части окна NCLaucnh отображается статусная информация о компиляции файлов и указываются ошибки, в случае их наличия, в виде, показанном на рис. 5.1.4.

Рис. 5.1.4. Статусная информация и информация об ошибках, выводимая при компиляции файлов в приложении NCLaunch

В случае выявления их необходимо исправить и скомпилировать файлы, подвергшиеся редактированию, заново.

После успешного выполнения компиляции всех требуемых файлов перед началом моделирования требуется создать нетлист общей схемы в формате базы данных приложения NCLaunch. Для этого необходимо выполнить команду из меню «Tools/Elaborator» окна NCLaucnh. При этом на экран будет выведено окно, показанное на рис. 5.1.5.

В верхней строке Design Unit необходимо задать название головного модуля среды окружения. Обычно головным модулем является testbench-файл. После нажатия на клавишу «OK» или «Apply» будет сформирован рабочий сеанс, т.е. собрана схема на основе скомпилированных ранее файлов. Статус процесса формирования отображается в нижней части окна. В случае обнаружения ошибок данные о месте и статусе ошибок будут отображены также в виде текстовой информации в нижней строке окна NCLaunch.

Рис. 5.1.5. Окно Elaborate приложения NCLaunch

В случае нахождения ошибок необходимо исправить их, скомпилировать заново все файлы, подвергшиеся редактированию, и повторить создание рабочего сеанса.

После успешного завершения формирования базы в правой части окна в папке Snapshots появится название общего модуля базы данных моделирования, как показано на рис. 5.1.6.

Рис. 5.1.6. Сформированная модель в формате базы данных NCLaunch

Моделирование в приложении NCLaunch

Для начала моделирования необходимо, выделив сформированную модель в папке Snapshots, нажать клавишу запуска моделирования (кнопка с изображением самолетика). При этом на экран будет выведено два окна: окно Console SimVision, в котором отображаются в текстовом виде процессы, запускаемые при моделировании, и найденные ошибки моделирования, и окно Design Browser SimVision (рис. 5.1.7).

Рис. 5.1.7. Окно Design Browser приложения SimVision

В левой части окна Design Browser отображается проект в виде иерархически вложенных папок, представляющих собой блоки схемы. В правой части окна отображаются сигналы, входящие в состав блока: входные, выходные, внутренние. Выделив мышью требуемые сигналы, необходимо нажать клавишу . При этом на экран будет выведено окно симуляции Waveform приложения SimVision. Выделенные сигналы будут добавлены в список сигналов, расположенный в левой части окна Waveform. Окно Waveform имеет ряд функциональных клавиш, располагаемых непосредственно под основным меню. Эти клавиши необходимы для быстрого выполнения основных, часто используемых команд.

На рис. 5.1.8 представлено окно Waveform с результатами моделирования в виде графиков.

Рис. 5.1.8. Окно отображения результатов моделирования Waveform приложения Simvision

Назначение основных функциональных клавиш и надписей на панели инструментов:

- перейти к окну Design Browser (например, для выбора требуемых сигналов);

- добавить выделенный сигнал;

- показать выделенный сигнал на электрической схеме;

- меню поиска сигналов или группы сигналов среди всех сигналов, находящихся в списке;

- поиск указанного в строке времени на временной диаграмме;

- кнопки запуска симуляции, паузы, перехода к началу симуляции и данные о времени окончания симуляции.

- указатель маркеров, осуществляет расстановку, указание временного значения, на котором установлен маркер, и масштаб указания времени;

- указание текущего времени на диаграмме, соответствующего левому краю графика, кнопки управления масштабом изображения;

- указатель временного интервала, вычисляет промежуток времени между двумя установленными маркерами.

Симуляция начинается непосредственно при нажатии на клавишу начала моделирования и останавливается в назначенное в тесте время или вручную при нажатии клавиши паузы. Во время симуляции на экран выводятся графики сигналов, которые могут быть представлены в виде отдельных сигналов или группы сигналов. Если график представлен в виде группы сигналов или шины, то способ выдачи информации на графике можно изменять. Доступны следующие виды выводимой информации: бинарный вид, десятичное представление, шеснадцатиричный вид, текстовая информация ASCII.

В целом процесс моделирования аналогичен моделированию аналоговых схем, с той разницей, что приложение SimVision адаптировано для цифровых сигналов.

Существует возможность сохранения текущего списка выбранных сигналов. Для этого необходимо вызвать меню сохранения состояния «File/Save Command Script» окна Waveform Simvision. В появившемся окне необходимо задать название командного файла. Для восстановления списка сигналов необходимо выбрать в меню «File/Source Command Script» окна симуляции и выбрать сохраненный ранее командный файл. При этом список сигналов будет восстановлен в том же порядке, в каком он был во время сохранения состояния. Данный список восстанавливается полностью при условии сохранения названий и места расположения сигналов внутри схемы.

При внесении изменений в текстовые файлы требуются повторная их компиляция и создание рабочего сеанса. Создание модели из перекомпилированных фалов возможно в этом случае без вызова окна Elaborate из меню «Simulation/Reinvoke» окна Waveform SimVision.

Задание на выполнение практической работы

1) Написать RTL код устройства в соответствии с заданием, выданным преподавателем. Результатом выполнения данного этапа является неотлаженный RTL код, отладка которого будет производится в дальнейшем.

2) Создать модуль тестового окружения в виде testbench-файла, предназначенный для проверки функционирования RTL кода в ходе моделирования. Файл тестового окружения должен содержать перечень тестовых воздействий, поступающих на вход устройства (RTL модели). Основное требование, предъявляемое к тестовому окружению – полная проверка всех режимов работы (функционирования устройства). Файл должен быть написан на языке Verilog.

3) Выполнить удаленный вход на сервер приложений используя выданные учетные данные.

4) Настроить рабочую среду моделирования приложения NCLaunch.

5) Произвести компиляцию требуемых файлов.

6) Создать базу данных (Snapshot) на основе скомпилированных файлов.

7) Осуществить запуск моделирования в окне Waveform приложения Simvision.

8) Произвести отладку RTL описания, добившись работоспособности модели.

Требования к содержанию отчета

Отчет по практической работе должен содержать следующие разделы:

1) Цели и задачи практической работы.

2) Отлаженный RTL код, листинг testbench файла.

3) Краткое описание и результаты выполненной работы.

4) Временные диаграммы, иллюстрирующие работу устройства в различных режимах.

5) Выводы о проделанной работе.

Контрольные вопросы

1) Для каких целей используется приложение NCLaunch?

2) Каким образом осуществляется компиляция файлов в приложении NCLaunch?

3) Опишите процесс запуска моделирования в приложении NCLaunch.

4) Каким образом осуществляется добавление сигнальных цепей в окно Waveform приложения SimVision?

5) Как осуществляется сохранение текущего списка сигналов окна Waveform приложения SimVision?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]