
- •1.1. Структура программы на vhdl. Её основные компоненты
- •Практикум по теме
- •1.3. Контрольные вопросы
- •2. Представление комбинационных схем
- •2.1. Параллельные и последовательные операторы
- •Переменные и сигналы
- •2.3. Данные, выражения и их интерпретация в цифровом устройстве
- •Типичные ошибки при представлении комбинационных схем на vhdl
- •Практикум по теме
- •2.5. Контрольные вопросы
- •3. Структурное представление устройств
- •3.1. Структура и поведение
- •3.2. Описание структур на языке vhdl
- •3.3. Практикум по теме
- •3.4. Контрольные вопросы
- •4. Описание и синтез последовательностных схем
- •4.1. Триггеры и регистровые схемы
- •4.2. Практикум по теме
- •4.3. Контрольные вопросы:
- •5. Описание и синтез автоматов
- •5.1. Классические понятия цифровых автоматов
- •5.2. Инженерный подход к проектированию цифровых автоматов
- •5.3. Практикум по теме
- •5.4. Контрольные вопросы
- •6. Проектирование операционных устройств
- •6.1. Методы построения операционных устройств
- •6.2. Основные этапы проектирования цифровых устройств
- •6.3 Пример проектирования
- •6.4. Имплементация и отладка проектов
- •6.5. Практикум по теме
- •Рекомендуется придерживаться следующего порядка работы:
- •6.4. Контрольные вопросы
- •I. Описание системы моделирования
- •1. Краткое знакомство с системой меню
- •Окно библиотеки проекта – содержит список доступных библиотек пользователя и файлов, включенных в проект
- •Примерный порядок работы в системе QuestaSim V.6.5/6.6
- •4. Компиляция и синтаксическая отладка
- •5. Моделирование
- •II. Описание системы имплементации проектов в плис
- •2.1. Типовая последовательность выполнения работы.
- •2.2. Процесс моделирования работы узлов средствами пакета Quartus II
- •Работа в редакторе временных диаграмм
- •III. Создание программ, описывающих автоматы
- •Рекомендованные номера контактов для проекта
- •3.2. Таблица соединений платы Cyclone II Starter Board.
2.2. Процесс моделирования работы узлов средствами пакета Quartus II
Разработанные узлы очень редко оказываются функционирующими в полном соответствии с техническим заданием на проект. Опыт показывает, что некоторые погрешности обнаруживаются даже после нескольких лет практического использования проекта. Основная задача проектировщика состоит в уменьшении вероятности проникновения погрешностей в окончательный проект. Существенную роль в решении этой задачи играют САПР.
Программные пакеты автоматизируют процесс создания временных диаграмм, соответствующих воздействию на программную модель проекта тестовых воздействий. Данная система моделирования позволяет моделировать проект в двух режимах: функциональное моделирование (Functional Simulation), либо моделирование с учетом временных параметров схемы (Timing Simulation). Первый тип предполагает нулевые задержки элементов, второй — задержки, определяемые выбранной элементной базой. Функциональное моделирование обычно применяется на начальных этапах проектирования, когда важно убедиться в правильности работы проекта. Затем переходят к моделированию с учетом задержек элементов.
В рассматриваемой САПР Quartus II построение требуемой временной диаграммы выходных сигналов выполняется при последовательном выполнении двух программных пакетов. При помощи встроенного в САПР редактора временных диаграмм (Waveform Editor) вначале создается шаблон будущей диаграммы (MAX+PLUS II\ Waveform Editor). В шаблоне задается длина диаграммы, шаг диаграммы, перечень входных и выходных сигналов, планируемое поведение входных сигналов. На следующем этапе необходимо запустить программу моделировщика (Processing\Start Simulation). После успешного завершения работы симулятора можно вернуться в редактор временных диаграмм, чтобы посмотреть поведение выходных сигналов проекта. По умолчанию задан режим Timing Simulation, перед началом симуляции в режиме Functional Simulation необходимо выполнить операцию Generate Functional Simulation Netlist.
Рекомендуемый порядок работы в редакторе временных диаграмм приведен ниже. Наиболее проблематичной является отказ системы моделирования подготавливать выходные данные для некоторых промежуточных сигналов схем (сообщения и предупреждения системы недостаточно четко определяют причину отказа). Кардинальным методом борьбы с такой проблемой является вывод таких сигналов на выходные контакты. Конечно, подобный вывод сигналов (и требуемая последующая компиляция) обычно приводит к некоторому изменению схемы и некоторых её параметров, чаще всего после определения работоспособности интересующего фрагмента схемы, введенные дополнительные контакты могут быть убраны.
Работа в редакторе временных диаграмм
Временные диаграммы создаются в редакторе временных диаграмм (File/New/Verificaction\Debugging Files/Vector Waveform File). После этих действий появляется окно редактора. Обычно в начале работы с редактором задается общее время моделирования (Edit/End Time) и шаг временной сетки (Edit/Grid Size). Для получения доступа к данным проекта целесообразно сразу выполнить команду File/Save при этом в выпадающем окне выбрать рекомендуемое имя файла. В окне редактора изменяется имя файла *.vwf.
Следующий шаг заключается в выборе входных и выходных сигналов проекта, предназначенных для отображения во временной диаграмме. После щелчка в поле Name в выпадающем окне Insert Node or Bus выбрать Node Finder и далее для окна Filter выбрать интересующий тип сигналов (Pin, Registers: pre-synthesis, …). После нажатия клавиши List выбирать в списке окна Nodes Foundes интересующие сигналы и пересылать их в окно Selected Nodes. Завершаются действия выбора сигналов традиционно последовательным нажатием клавиши OK.
Последующая работа связана с формированием требуемой последовательности входных данных (для выходных данных аналогичными действиями можно определить ожидаемые значения). Для формирования значений используется интерактивный режим работы в окне временной диаграммы с применением рабочих инструментов, расположенных слева от рабочего поля. Выделяя требуемый диапазон задания сигнала (группы сигналов), а затем и инструмент, соответствующий желаемому значения сигнала, можно строить желаемую временную диаграмму.