6.4. Имплементация и отладка проектов
Теперь, когда проект полностью описан, самое время вернуться к вопросу проверки верности и работоспособности спроектированного устройства. Важность и практическая неизбежность отладки мало мальски сложного (с точки зрения разработчика) проекта заставляет обсудить эту проблему. Эффективность процедуры отладки складывается из двух сильно связанных частей: инструментария, имеющегося в распоряжении проектировщика, и его умения пользоваться подобным инструментарием. Из опыта, полученного в ходе выполнения работ предыдущих разделов, видно, что как системы моделирования, так и системы имплементации позволяют производить поиск синтаксических и семантических ошибок проектов, написанных на языке VHDL. Однако эффективность использования этих двух систем для целей отладки различна.
В моделирующих САПР, и значительно реже в синтезирующих, для проверки работоспособности проектируемого устройства осуществляется разработка специальных тестирующих программ (TestBench). В этих программах определяется последовательность перебора внешних сигналов, достаточных для исполнения требуемых тестовых действий. В состав TestBench либо включается описание явно выраженного компонента-генератора тестирующих воздействий, формирующего требуемую последовательность, либо требуемые изменения тактирующих импульсов встроены в TestBench. Каждый подход имеет свои плюсы и минусы. Обычно это поведенческое описание алгоритма с изменением значений сигналов генератора в запрограммированные моменты модельного времени. Такое описание можно непосредственно встраивать в программу, представляющую проектируемое устройство (имея ввиду исключение этого фрагмента из программы при передаче описания в подсистему синтеза), однако более целесообразно строить специальную программу (TestBench), описывающую на структурном уровне модель испытательной установки, содержащей проектируемое устройство и генератор тестирующих воздействий. Отлаживаемое устройство встраивается как компонент в состав TestBench (смотри раздел 3).
Достоинством моделирующих систем является, прежде всего, то, что отладка может производиться на различных уровнях детализации проектируемой системы, и что очень существенно на функциональном уровне описания. Для функционального описания характерно отсутствие ограничений на используемые конструкции языка (можно использовать не синтезируемые конструкции). Следующее отличие связано с тем, что моделирование осуществляется в соответствии с текстом отдельных файлов, поэтому при отладке легко идентифицировать какие действия и где выполняются. В синтезирующих системах отладка выполняется над моделью, синтезированной в результате компиляции. Объединение в одной модели описаний из разных файлов далеко не всегда позволяет просто определить источник расхождений желаемого и наблюдаемого поведения системы. Достоинством синтезирующих систем является возможность моделирования поведения как функциональной, так и временной модели. Хотя результаты моделирования временной модели можно просматривать в моделирующих системах.
- 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.