Разработка Verilog-описания квадратурного демодулятора
Автор: Sergey Novichkov • Декабрь 26, 2023 • Реферат • 4,660 Слов (19 Страниц) • 120 Просмотры
Глава 2.
Разработка Verilog-описания квадратурного демодулятора
Консультант Сырцов И.А.
Введение
В предыдущей части дипломного проекта была получена структурная схема квадратурного демодулятора и математическое описание его функционирования. На основании этих данных можно структурное Verilog-описание данного устройства. Одним из способов разработки является способ непосредственного проектирования на Verilog снизу-вверх. В нашем случае, это означает, что надо описать вручную на языке Verilog структуру всех блоков (элементов задержки, сумматоров, умножителей), далее на основе этих блоков создать более сложные иерархические конструкции (блок вычисления констант, блок вычисления среднего, ФНЧ). Недостатком такого метода является большие временные затраты, связанные с ручным написанием Verilog кода и его исправлением в случае ошибок. Для специализированных схем с количеством вентилей 1 миллион и более время проектирование огромно, что не допустимо в условиях жесткой экономической конкуренции. Для уменьшения временных затрат при проектировании можно использовать другой подход, связанный с увеличением операций, выполняемых автоматически. В данной главе будет рассмотрен именно такой подход. В качестве основного средства проектирования будет использоваться пакет Signal Proccessing WorkSystem (SPW) фирмы Cadence Design Systems, Ink. Кроме основного пакета SPW также будет необходима утилита Hardware Design System (HDS) и библиотека элементов для работы с этой утилитой (HDSLib). Для моделирования полученного Verilog кода использовался NC-Sim. Пакет SPW позволяет моделировать в одной оболочке различные типы блоков:
- Блоки, описанные на языке высокого уровня Си/Си++
- Блоки, оперирующие с плавающей десятичной точкой
- Блоки, оперирующие с фиксированной десятичной точкой
- Блоки, описанные на языках Verilog, VHDL
Возможность одновременного моделирования блоков различных типов позволяет верифицировать различные типы блоков не меняя тестового стенда, что позволяет сэкономить время.
Verilog код получается автоматически, на основе модели, оперирующей с фиксированной точкой, таким образом для получения Verilog глубоких знаний самого языка описания аппаратуры не требуется.
В данной главе подробно описан маршрут получения Verilog с использованием средств SPW. На основе этого маршрута было получено и верифицировано Verilog-описание квадратурного демодулятора
2.1 Маршрут разработки Verilog-описания.
Блок-схема маршрута разработки Verilog-описания с помощью средств проектирования фирмы Cadence Design System’s представлена на рис 2.1
[pic 1]
Рис. 2.1 Блок-схема маршрута получения Veriog-описания.
Исходными данными для проектирования могут быть: алгоритм разрабатываемой схемы, поведенческая модель схемы или фрагмента схемы (исполняемая спецификация) и набор тестовых входных воздействий. Поведенческая модель может представлять собой программу на языке высоко уровня Си или Си++ (Си-код и Си++код). При подаче тестовых воздействий на входы поведенческой модели можно получить эталонные значения выходов. Эти значения используются для верификации моделей, получаемых на каждом этапе проектирования.
Если заказчик и исполнитель пользуются различными программными средствами, то необходимо преобразование входных воздействий в формат исполнителя (в нашем случае в формат SPW), если заказчик использует пакет SPW, то в качестве ТЗ может быть передана готовая система, содержащая модель проектируемого устройства и его внешнее окружение.
Этапы создания и верификации Си-блока предполагают получение в SPW блока, описанного на Си, поэтому эти этапы отсутствуют при использования заказчиком пакета SPW. Если же заказчик использует другие средства для создания Си-кода, например Borland Builder, то данный код может быть вставлен в SPW с небольшими изменениями. В процессе модификации Си-блока могут быть допущены ошибки, для выявления которых необходимо верифицировать блок.
...