Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие_VHDL.doc
Скачиваний:
59
Добавлен:
13.11.2019
Размер:
3.18 Mб
Скачать

6.4. Имплементация и отладка проектов

Теперь, когда проект полностью описан, самое время вернуться к вопросу проверки верности и работоспособности спроектированного устройства. Важность и практическая неизбежность отладки мало мальски сложного (с точки зрения разработчика) проекта заставляет обсудить эту проблему. Эффективность процедуры отладки складывается из двух сильно связанных частей: инструментария, имеющегося в распоряжении проектировщика, и его умения пользоваться подобным инструментарием. Из опыта, полученного в ходе выполнения работ предыдущих разделов, видно, что как системы моделирования, так и системы имплементации позволяют производить поиск синтаксических и семантических ошибок проектов, написанных на языке VHDL. Однако эффективность использования этих двух систем для целей отладки различна.

В моделирующих САПР, и значительно реже в синтезирующих, для проверки работоспособности проектируемого устройства осуществляется разработка специальных тестирующих программ (TestBench). В этих программах определяется последовательность перебора внешних сигналов, достаточных для исполнения требуемых тестовых действий. В состав TestBench либо включается описание явно выраженного компонента-генератора тестирующих воздействий, формирующего требуемую последовательность, либо требуемые изменения тактирующих импульсов встроены в TestBench. Каждый подход имеет свои плюсы и минусы. Обычно это поведенческое описание алгоритма с изменением значений сигналов генератора в запрограммированные моменты модельного времени. Такое описание можно непосредственно встраивать в программу, представляющую проектируемое устройство (имея ввиду исключение этого фрагмента из программы при передаче описания в подсистему синтеза), однако более целесообразно строить специальную программу (TestBench), описывающую на структурном уровне модель испытательной установки, содержащей проектируемое устройство и генератор тестирующих воздействий. Отлаживаемое устройство встраивается как компонент в состав TestBench (смотри раздел 3).

Достоинством моделирующих систем является, прежде всего, то, что отладка может производиться на различных уровнях детализации проектируемой системы, и что очень существенно на функциональном уровне описания. Для функционального описания характерно отсутствие ограничений на используемые конструкции языка (можно использовать не синтезируемые конструкции). Следующее отличие связано с тем, что моделирование осуществляется в соответствии с текстом отдельных файлов, поэтому при отладке легко идентифицировать какие действия и где выполняются. В синтезирующих системах отладка выполняется над моделью, синтезированной в результате компиляции. Объединение в одной модели описаний из разных файлов далеко не всегда позволяет просто определить источник расхождений желаемого и наблюдаемого поведения системы. Достоинством синтезирующих систем является возможность моделирования поведения как функциональной, так и временной модели. Хотя результаты моделирования временной модели можно просматривать в моделирующих системах.