Решетневскуе чтения. 2014
УДК 004.3'12
МОДЕРНИЗАЦИЯ МЕТОДИКИ ПРОЕКТИРОВАНИЯ ЭЛЕКТРОННЫХ УСТРОЙСТВ
С ИСПОЛЬЗОВАНИЕМ ПЛИС
О. В. Дрозд, Д. В. Капулин
Сибирский федеральный университет Российская Федерация, 660074, Красноярск, ул. Киренского, 26. E-mail: olvldrozd@gmail.com
Представлена модернизированная методика проектирования устройств на базе программируемых логических интегральных схем с интеграцией основных этапов проектирования в единый цикл. Описаны основные этапы предлагаемого цикла проектирования и инструментальные средства, используемые на данных этапах. Описаны преимущества представляемой методики проектирования по сравнению с традиционной методикой проектирования.
Ключевые слова: ПЛИС, математическое моделирование, САПР, цикл проектирования.
MODERNIZATION OF DESIGN METHODOLOGY FOR ELECTRONIC DEVICES BASED ON FPGA
O. V. Drozd, D. V. Kapulin
Siberian Federal University 26, Kirenskiy str., Krasnoyarsk, 660074, Russian Federation. E-mail: olvldrozd@gmail.com
The authors present a modernized methodology for the design of devices based on programmable logic integrated devices with the integration of the main stages of the design in a single cycle. The basic steps of the proposed design cycle and tools used at these stages are showed. The advantages provided design techniques compared to traditional design methodology are written.
Keywords: FPGA, mathematical simulation, CAD, design cycle.
В настоящее время наблюдается непрерывный рост уровня сложности алгоритмов цифровой обработки, фильтрации сигналов, кодирования информации. Соответственно, увеличиваются требования к аппаратуре, используемой для их реализации. Важнейшими факторами, определяющими выбор того или иного устройства реализации, является его быстродействие, а также временные затраты на разработку и тестирование разрабатываемого устройства на базе программируемых логических интегральных схем (ПЛИС).
Традиционной методике проектирования цифровых систем на базе ПЛИС [1] присущи определенные недостатки, среди которых следует отметить:
- невозможность оперативной оценки аппаратных затрат, необходимых для реализации проектируемого устройства;
- сложность моделирования при попытке создания математической модели системного окружения проектируемого устройства с учетом всех возможных помех;
- длительность и трудоемкость процесса преобразования математического описания проектируемого устройства в HDL -описание;
- необходимость создания HDL-тестов для проверки созданных HDL -описаний, при этом возникает задача доказательства адекватности тестов на HDL тестам, использовавшимся на этапе математического моделирования.
Исходя из перечисленных недостатков традиционной методики проектирования, актуальной становится задача ее модернизации. Предлагаемый подход позволяет преодолеть указанные недостатки за счет использования при математическом моделировании данных, полученных из устройства на базе ПЛИС, работающего в реальной схеме. Основная идея предлагаемой методики проектирования состоит в интеграции основных этапов проектирования (математическое моделирование, аппаратная реализация, отладка в составе системы) в единый итерационный цикл проектирования на основе включения в цикл проектирования дополнительных этапов и автоматизации процесса передачи формализованных описаний проектируемого устройства и данных, получаемых при моделировании, и системной интеграции между этапами проектирования.
Важнейшим моментом является автоматизация перехода от формального описания в виде математической модели к формальному описанию на языке описания аппаратуры. Существует целый ряд средств, позволяющих осуществить переход от описания математической модели на языке высокого уровня к формальному описанию на языке описания аппаратуры. В частности, среди них можно отметить такие продукты, как Catapult (Mentor Graphics), Impulse CoDeveloper (Impulse Accelerated Technologies). При работе в среде MATLAB/Simulink доступны такие средства, как Xilinx System Generator, Altera DSP
Космическое электронное приборостроение
Builder и Simulink HDL Coder [2]. Два первых средства предназначены для работы с продукцией одноименных фирм и работают во взаимодействии с системами автоматизированного проектирования Xilinx ISE и Altera Quartus соответственно. Третье средство разработано компанией MathWorks и входит в поставку пакета MATLAB. К преимуществам двух первых можно отнести оптимизацию кода под конкретные семейства микросхем и наличие ряда готовых компонентов (IP-компонентов). Преимуществом HDL Coder является универсальность, так как данное средство не привязано к конкретным типам микросхем или САПР.
Рассмотрим основные этапы предлагаемой методики проектирования устройств на базе ПЛИС. На первом этапе осуществляется формализация технического задания по построению системы в целом и устройства на базе ПЛИС в частности и разработка структурной схемы, как для системы, так и для устройства.
На втором этапе в пакете математического моделирования MA TLAB/Simulink разрабатывается идеализированная математическая модель системы с использованием формата чисел с плавающей запятой, также выполняется моделирование и отладка разработанной модели. В ходе разработки математической модели представляется целесообразным верхний уровень описания выполнять на структурном уровне в рамках графического редактора пакета Simulink, а для описания отдельных блоков использовать встроенные в пакет Simulink возможности по программированию на языках M и C, а также использовать готовые пара-метризируемые библиотечные модули из библиотеки Simulink. Поскольку идеальная модель предназначена для высокоуровневой отладки алгоритма в составе моделируемой системы и оценки максимально возможной эффективности разрабатываемого алгоритма (устройства, системы), то для представления данных обычно используется формат с плавающей запятой.
На третьем этапе осуществляется преобразование алгоритма, реализованного в формате с плавающей запятой, в формат с представлением чисел с фиксированной запятой и оптимизация разрядностей с точки зрения минимизации аппаратных затрат. Для контроля корректности преобразования математической модели проводится моделирование системы в том же окружении, при этом система с арифметикой с плавающей запятой принимается за эталонный образец.
На четвертом этапе осуществляется замена блоков проектируемого устройства на библиотечные компоненты, ориентированные на дальнейшую реализацию в аппаратуре. При использовании пакетов Altera DSP
Builder и Xilinx System Generator необходимо заменить стандартные блоки пакета Simulink на аналогичные из состава пакетов аппаратной разработки. При использовании пакета HDL Coder никаких дополнительных действий не требуется, так как данный пакет базируется на стандартном наборе блоков среды Simulink. На данном этапе также проводится моделирование и сравнение с эталонной моделью.
На пятом этапе осуществляется аппаратно-программное моделирование созданного устройства. Для реализации пятого этапа используются системы автоматизированного проектирования программируемой логики, такие как пакет Quartus II компании Altera или пакет ISE компании Xilinx и специализированные платы с целевой ПЛИС и набором необходимых средств периферии.
На шестом этапе выполняется отладка и анализ параметров разработанного устройства на базе ПЛИС в реальном системном окружении. В общем случае для тестирования требуется программируемый генератор сигналов произвольной формы, средства анализа сигналов, такие как анализатор спектра, логический анализатор, цифровые осциллографы и средства внутрисхемной отладки ПЛИС (SignalTap Logic Analyzer - Altera; ChipScope Pro - Xilinx). По окончании шестого этапа процесс проектирования устройства на базе ПЛИС можно считать завершенным.
Преимуществами предлагаемой методики проектирования устройств на базе программируемых логических интегральных схем являются минимизация влияния человеческого фактора при переходе от математической модели устройства к аппаратной реализации, непрерывность процесса проектирования устройства, получение в процессе проектирования отлаженной математической модели, которая является прототипом для создаваемого устройства и может быть использована не только в процессе проектирования, но и для дальнейшей оптимизации алгоритма работы устройства на основе данных, полученных из реального системного окружения проектируемого устройства.
References
1. Proakis J. G., Salehi M. Communication systems engineering. New Jersey: Prentice-Hall, 2002. 801 p.
2. FPGA and ASIC Design with HDL Coder and HDL Verifier. Available at: http://www.mathworks.com/ fpga-design/solutions.html (accessed: 4.05.2014).
© Дрозд О. В., Капулин Д. В., 2014