Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

6.2. Основные этапы проектирования цифровых устройств




 

До сих пор нами рассматривалось проектирование фрагментов проектов с изначально заданной структурой, поведением и основными характеристиками. Реально приходится разрабатывать устройства, о структуре и даже поведении которых у заказчика проекта существует весьма расплывчатое представление. И именно поэтому инициатива об уточнении всех неясных моментов должна принадлежать разработчику. Реальная процедура проектирования оказывается содержащей целый ряд дополнительных действий, не рассматриваемых в предыдущих разделах. (Подробнее содержание процедуры проектирования можно смотреть в книгах [6] и [2]). В настоящем пособии остановимся лишь на узловых моментах.

Проектирование содержит ряд последовательно исполняемых этапов.

На первом этапе уточняется техническое задание на проект и выполняется перевод задания на язык технического описания. Анализируется взаимодействие проекта с окружающей средой, а проектируемое устройство рассматривается в виде “черного ящика”. С заказчиком согласуются основные особенности поведения проекта, включая все интерфейсные вопросы. Важно согласовать технические и технологические ограничения проекта, форматы данных, временные  требования, ограничения на затраты оборудования и т. п.

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

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

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

На третьем этапе разрабатываются описания (в нашем случае на языке VHDL) отдельных компонент. При необходимости проверяется не только их синтаксическая, но и семантическая корректность описания.

На четвертом этапе проектирования создаются описания верхних уровней иерархии. При этом целостное устройство или его части представляются в виде совокупности компонентов и связей между ними. Выполнение этого этапа может совмещаться с выполнением работ предыдущего этапа.

Если на предыдущих этапах технологическая реализация будущих устройств не играла существенной роли, то на следующем этапе осуществляется компиляция проекта с учетом технологического базиса будущих устройств. Применение ПЛИС на этом этапе проектирования позволяет использовать их или как промежуточную реализацию (прототипирование), или как окончательный вариант устройства.

Важнейшей составляющей всех этапов разработки является тестирование проекта. Процедуре тестирования уделено очень большое число работ [. ]. Целесообразно, чтобы процесс тестирования выполнялся не только после завершения описания устройства, а и в процессе создания описаний компонентов и устройства в целом. Но, к сожалению, большое число разработчиков  лишь после завершения описания проекта (а зачастую и после его компиляции) начинает наконец тестировать проект, что приводит к неоправданным затратам времени на создание проекта. Практически для всех устройств приходится создавать специальные тестовые последовательности (TestBench). Лишь для комбинационных схем упрощенная тестовая последовательность может совпадать с таблицей истинности для входных сигналов. Конечно, в отдельных фрагментах тест соответствует таблице истинности, и таблицы истинности являются основой для создания тестов. Для проверки, как правило, создается не один тестовый пример, а целый ряд тестов, соответствующих различным вариантам работы устройства (как в штатных, так и в нештатных ситуациях).

Далее в разделе 6. 3 рассматривается процедура проектирования на примере устройства, реализующего алгоритм умножения двух 4-х разрядных чисел в позиционном двоичном представлении.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...