автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Автоматизация ранних этапов проектирования цифровых устройств на ПЛИС на основе двухуровневого макромоделирования

кандидата технических наук
Гришин, Роман Анатольевич
город
Москва
год
2010
специальность ВАК РФ
05.13.12
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Автоматизация ранних этапов проектирования цифровых устройств на ПЛИС на основе двухуровневого макромоделирования»

Автореферат диссертации по теме "Автоматизация ранних этапов проектирования цифровых устройств на ПЛИС на основе двухуровневого макромоделирования"

4931

Гришин Роман Анатольевич

Автоматизация ранних этапов проектирования цифровых устройств на ПЛИС на основе двухуровневого макромоделирования

Специальность 05.13.12 -Системы автоматизации проектирования (в электронике, радиотехнике и связи)

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

- 2 ЛЕН 2010

Москва-2010

004614981

Работа выполнена на кафедре «Автоматизация проектирования радиоэлектронных средств» «Радиовтуза» Московского авиационного института (государственного технического университета).

Ведущая организация - ОАО «Радиотехнический институт имени академика А.Л. Минца».

Защита состоится «21» декабря 2010г. в 10:00 на заседании диссертационного совета Д 212.125.02 в Московском авиационном институте (государственном техническом университете) 125993, г. Москва, А-80, ГСП-3, Волоколамское шоссе, д. 4.

С диссертацией можно ознакомиться в библиотеке МАИ. Автореферат разослан « 1 -bKüdtí- 2010 г.

Научный руководитель:

доктор технических наук, профессор Ильин Валерий Николаевич

Официальные оппоненты:

доктор технических наук, профессор Норенков Игорь Петрович

кандидат технических наук Бруханский Александр Владимирович

Ученый секретарь

диссертационного совета Д 212.125.02 к.т.н., доцент

А.М. Петраков

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы

Все более широкое применение в современной РЭА находят программируемые логические интегральные схемы (ПЛИС). К особенностям ПЛИС, обусловившим их широкое распространение, следует отнести: возможность оперативного изменения внутренней структуры, достаточно высокие технические характеристики, относительно невысокую стоимость микросхем.

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

ПЛИС представляет собой микросхему, в которой материализован алгоритм её работы, поэтому проектировать ЦУ на основе ПЛИС необходимо с учетом специфики аппаратного базиса, то есть микросхемы ПЛИС, на которой реализуется устройство. Проектирование ЦУ на основе ПЛИС позволяет совместить этапы разработки конструкции и реализации алгоритма, чем достигается существенная экономия времени проектирования. Однако для реализации этой возможности на ранних этапах проектирования, то есть до материализации алгоритма работы устройства, должны быть определены требования к аппаратной части ПЛИС. Или, иначе говоря, должна быть выбрана модель ПЛИС, обеспечивающая выполнение требований технического задания к значениям выходных параметров проектируемого ЦУ. Следовательно, при анализе вариантов построения и аппаратной реализации ЦУ на ПЛИС в ходе ранних этапов проектирования необходимо выполнить:

- структурно-параметрический синтез ЦУ с учетом специфики аппаратной базы;

- выбор аппаратной базы (модели ПЛИС), позволяющей удовлетворить требованиям ТЗ.

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

Таким образом, актуальной является разработка новых, малозатратных по времени автоматизированных методов структурного синтеза ЦУ на ПЛИС с учетом специфики аппаратного базиса, а также методов оценки выходных параметров цифровых устройств на ПЛИС. В данной работе предлагается решение перечисленных задач с использованием двухуровневого макромоделирования.

Цель и задачи работы.

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

Для достижения поставленной цели в диссертационной работе решаются следующие задачи:

1. Разработка метода двухуровневого структурно-параметрического синтеза ЦУ на ПЛИС, учитывающего специфику аппаратного базиса.

2. Формирование двух уровней макромоделей, определение множества макромоделируемых блоков на каждом уровне и разработка библиотек макромоделей двух уровней.

3. Разработка метода ускоренной оценки выходных параметров ЦУ на ПЛИС с использованием двух уровней макромоделей.

4. Создание базового информационного и программного обеспечения САПР, подтверждающего работоспособность предложенного подхода и разработанных методов его реализации при выполнении ранних этапов проектирования.

5. Апробация предложенных методов проектирования на конкретных проектах.

Методы исследования

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

Научная новизна

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

2) Разработан метод ускоренной оценки выходных параметров ЦУ на основе ПЛИС, базирующийся на двухуровневом макромоделировании. Метод отличается от известных малыми вычислительными затратами и редуцированным составом исходных данных, что позволяет просчитать на ранних этапах проектирования за приемлемое время большое количество вариантов ЦУ и выбрать оптимальный из них.

3) Предложен метод создания макромоделей, основанный на комбинировании различных способов их построения. Метод обеспечивает компромисс между конфликтными требованиями высокой точности и малых вычислительных затрат.

4) Предложен метод структурно-параметрического синтеза ЦУ на ПЛИС методом направленного поиска по дереву И-ИЛИ, отличающийся от известных оригинальным представлением вершин дерева И-ИЛИ макромоделями верхнего и нижнего уровня и их входными параметрами, что позволяет определить оптимальные значения параметров компонентов ПЛИС.

Практическая ценность

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

2. Предложенный метод структурно-параметрического синтеза позволяет синтезировать оптимальную в отношении заданных критериев структуру и параметры ЦУ на основе ПЛИС.

3. Разработаны макромодели, в большинстве своем оригинальные, нижнего и верхнего уровней для основных узлов ЦУ на ПЛИС: регистра, сумматора, счетчика, цифрового компаратора, умножителя, блока памяти, блока выполнения поразрядных логических операций, фильтра с конечной импульсной характеристикой, контроллера памяти типа SDRAM, блока извлечения квадратного корня, буфера типа «очередь». Макромодели могут использоваться в качестве базиса для построения других макромоделей, а также широкого класса цифровых устройств при проектировании по методу двухуровневого макромоделирования. На основе макромоделей созданы их библиотеки, вошедшие в состав прототипа САПР.

4. Разработанный прототип САПР на основе метода двухуровневого макромоделирования имеет открытую структуру, допускающую быстрое усовершенствование до САПР промышленного уровня, обеспечивающей быструю оценку выходных параметров ЦУ на ПЛИС в ходе ранних этапов проектирования.

5. Выполненная программная реализация библиотек макромоделей нижнего и верхнего уровней для основных узлов ЦУ на ПЛИС существенно облегчает и ускоряет процесс автоматизированного проектирования ЦУ на ПЛИС на основе двухуровневого макромоделирования.

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

Результаты внедрения

Предложенные в работе методы использовались в производственной деятельности предприятий НПО «Астрофизика» и ФГУП НПЦ «Дельта» на этапе эскизного проектирования при создании ряда промышленных изделий. В результате была достигнута существенная экономия времени проектирования, что подтверждается актами внедрения.

Основные положения, выносимые на защиту

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

2) Разработанный метод оценки выходных параметров ЦУ на ПЛИС на основе двухуровневого макромоделирования позволяет выполнить ускоренную оценку выходных параметров устройства по сокращенному набору исходных данных.

3) Предложенный метод создания макромоделей, основанный на комбинировании различных способов их построения, обеспечивает компромисс между конфликтными требованиями высокой точности и малых вычислительных затрат.

4) Предложенный метод структурно-параметрического синтеза ЦУ на ПЛИС путем направленного поиска по дереву И-ИЛИ позволяет определить оптимальные значения параметров компонентов ПЛИС на ранних этапах проектирования.

Апробация результатов работы

Основные результаты работы докладывались на двух научно-технических конференциях: Научно-техническая конференция молодых ученых «Информационные технологии и радиоэлектронные системы», Москва, 2007г.; XXII Научно-техническая конференция «Космические информационно-управляющие системы наблюдения», Москва, 2008г.

Публикации

По теме диссертации опубликовано 5 научных работ: 3 работы в специализированных журналах, 2 работы в сборниках научных трудов. Из них 3 работы опубликованы в ведущих рецензируемых научных изданиях, входящих в перечень ВАК.

Структура и объем диссертационной работы

Диссертация состоит из введения, пяти глав и заключения изложенных на 162 страницах, включающих 45 рисунков, 28 таблиц, а также список литературы из 70 наименований. Приложения к диссертации составляют 33 страницы.

КРАТКОЕ СОДЕРЖАНИЕ РАБОТЫ

Во введении обоснована актуальность темы диссертации.

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

На основе анализа современных микросхем ПЛИС выделена особая группа частных критериев, отражающих структурно-архитектурные особенности этих микросхем. Отмечена важность учета данной группы критериев при проектировании ЦУ на ПЛИС.

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

Тех.

предложение и эскизное проектирование

Тех. проект

Рабочий проект

Рассмотрение нескольких вариантов реализации функций устройства

Принятие принципиальных решений по структуре, алгоритму работы и конструкции

Определение основных требований к аппаратуре_

Реализация алгоритма Схе мо-конструкторская проработка устройства

Рисунок 1 Маршрут проектирования ЦУ на ПЛИС

Реализация данного маршрута требует решения следующих важных задач в ходе ранних этапов проектирования:

- выполнить структурно-параметрический синтез устройства;

- определить требования к аппаратной части устройства.

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

Существующие средства оценки выходных параметров (например, САПР производителей ПЛИС) требуют наличия полного описания алгоритма работы устройства на языках описания аппаратуры или в виде схемы. Составление и отладка такого описания требует значительных трудозатрат и не соответствует задачам ранних этапов проектирования. Так, например, описание буфера типа «очередь» на языке Verilog HDL занимает около 200 строк кода. Кроме того, для оценки выходных параметров каждого варианта реализации необходимо провести логический и физический синтез, а также анализ полученной структуры с целью расчета выходных параметров. Указанные операции характеризуются большими вычислительными затратами, что сильно затрудняет или делает невозможным анализ множества вариантов реализации устройства, который весьма желательно провести на ранних этапах проектирования.

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

аппаратного базиса. Существующие САПР системного уровня (например, Matlab) позволяют выполнить высокоуровневую оптимизацию параметров устройства, которая, однако, не учитывает специфику аппаратного базиса. САПР логического и физического синтеза (Leonardo Spectrum, Sinplify, XST и др.), напротив, выполняют оптимизацию схемы только на низком уровне.

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

По результатам проведенных исследований сформулирована цель и задачи диссертационной работы.

Вторая глава содержит изложение метода двухуровневого макромоделирования (МДМ), метода ускоренной оценки выходных параметров ЦУ на ПЛИС с использованием МДМ. Также предлагается метод структурно-параметрического синтеза ЦУ на ПЛИС с учетом специфики аппаратного базиса, основанный на двухуровневом макромоделировании.

Основной недостаток существующих методов оценки выходных параметров, который затрудняет их использование в ходе ранних этапов проектирования - это высокая трудоемкость ввода исходных данных и получения оценки. С целью упрощения процесса ввода исходных данных предлагается использовать известный метод описания с помощью сложно-функциональных блоков (СФ-блоков, например, КИХ-фильтр, квадратурный демодулятор, контроллер динамической памяти и т.п.), но при этом за счёт проведенной модернизации этого метода существенно уменьшить количество входных параметров и портов блока, ограничившись 3-4 важнейшими.

Для снижения вычислительных затрат в работе предлагается использовать принцип макромоделирования. В отличие от обычных методов одноуровневого макромоделирования в работе предложено использовать двухуровневый подход, основанный на ММ верхнего уровня (ВУ) для СФ-блоков и ММ нижнего уровня (НУ) для элементов уровня регистровых передач (RTL), что соответствует принципу функциональной декомпозиции. Элементы уровня RTL представлены триггерами, сумматорами, счетчиками и другими подобными узлами. Введение двух уровней макромоделей обусловлено следующими соображениями: в качестве способа ввода исходных данных было решено использовать описание на основе СФ-блоков,

однако, макромоделирование СФ-блоков затруднено их высокой сложностью. В предлагаемом методе вводится дополнительный уровень абстракции, представленный ММ НУ. ММ НУ являются базисом для построения ММ ВУ, что упрощает задачу макромоделирования последних.

Таким образом, ЦУ можно представить в виде дерева (см. рисунок 2) И = {М,С}, где М — множество вершин дерева; С - множество ребер. Множество вершин образовано как ММ ВУ, так и ММ НУ: М= МВ и МН, где МВ - множество ММ ВУ; МН - множество ММ НУ.

^^ - устройство ^^ - ММ К' |мн| - ммНУ

Рисунок 2 Представление устройства двумя уровнями ММ В предлагаемом методе ММ НУ отражают аппаратную специфику, а ММ ВУ, напротив, слабо связаны или не связаны с аппаратурой. Это позволяет достаточно легко выполнять адаптацию макромоделей к новому аппаратному базису, учитывая тот факт, что множество ЮЪ-элементов невелико.

Метод предусматривает возможность создания нескольких вариантов ММ одного узла. Так, например, различные варианты ММ КИХ-фильтра будут соответствовать его реализации в прямой или транспонированной, конвейерной или параллельной формах.

В работе предложены процедуры формирования ММ ВУ и НУ, а также оценки выходных параметров ЦУ с использованием МДМ.

Процедура А. Получение макромоделей верхнего уровня У2=Ф(У1, Х2) для СФ-блоков.

1. Определить множество СФ-блоков, для которых необходимо построить макромодели.

2. Задать множество входных Х2 и выходных У2 параметров СФ-блока. В множество Х2 могут входить как независимые параметры Х2нз, так и зависимые (структурные) Х23, для вычисления которых необходимо определить функцию Х2з = Фвх (Х2цз)- Структурные параметры могут быть использованы для создания более универсальных ММ ВУ, в которых внутренняя структура может варьироваться в зависимости от заданных значений независимых входных

параметров. Так, например, зависимым входным параметром может быть выражено количество элементов в линии задержки для цифрового фильтра.

3. Для каждого СФ-блока составить его эквивалентную схему (ЭС), элементами которой должны быть ЯТЬ-элементы.

3.1 Задать эквивалентную схему ММ СФ-блока в базисе ЯТЬ-элементов.

3.2 Определить функцию XI = Ф]т.(Х2) расчета входных параметров XI всех ИТЬ-элементов, вошедших в ЭС данного СФ-блока.

3.3 Составить для определённой в п.3.1 ЭС макромодели конкретную функцию У2 = Ф(У1, Х2), где У1 - множество выходных параметров ЯТЬ-элементов.

3.4 Если существуют другие варианты ЭС СФ-блока, для которых необходимо создать вариант ММ, то вернуться к п.3.1 и задать новый вариант ЭС СФ-блока с новым составом ЛТЬ-элементов.

4. Объединить полученные макромодели верхнего уровня в библиотеку СФ-блоков.

Таким образом, макромодель СФ-блока образуется функцией Ф(У1, Х2), а также функциями Ф,х(Х2цз) и Фкп.(Х2).

Создание макромоделей в значительной степени является искусством. Значительные усилия, необходимые для создания ММ СФ-блока, оправдываются только при условии многократного использования этих ММ в дальнейшем, поэтому необходимо уделять достаточное внимание вопросу выбора моделируемых СФ-блоков.

Для каждого СФ-блока его эквивалентная схема и функции Фвх, Ф]ш. уникальны, формализовать их построение практически невозможно, так как они зависят от конкретной структуры макромоделируемого СФ-блока и для их построения необходимо анализировать эту структуру. Создание функции У2 = Ф(У1, Х2), также требует анализа структуры СФ-блока. Возможен и более простой способ расчета У2, который заключается в том, что функция Ф(У1, Х2) заменяется расчетом выходных параметров по ЭС с использованием процедуры В, которая будет приведена ниже.

Процедура Б. Получение макромоделей нижнего уровня У1 = 0(Х1) для 1ПЪ-элементов.

1. Используя информацию о структуре созданных ММ ВУ, а также знание предметной области определить множество КТЬ-элементов, для которых необходимо построить ММ.

2. Задать множество входных XI и выходных У1 параметров макромодели.

3. Для каждого такого ЮЪ-элемента построить ряд вариантов макромодели, отражающих различные способы аппаратной реализации ЛТЬ-элемента:

3.1 Используя специализированную САПР проектирования на ПЛИС, методом многовариантного анализа получить множество вариантов значений

выходных параметров.

3.2 Обработать полученные в п. 3.1 данные, с помощью специальных САПР (Ма11аЬ, МаЛсас! и т.п.) и получить функциональную зависимость У1 = П(Х1), либо таблицу значений, отражающую эту зависимость, которые и составят макромодель элемента НТЬ-уровня. В ряде, случаев, для сокращения объема экспериментов, целесообразно строить зависимость У1 = £1(Х1) на основе знаний о способе реализации данного ЯТЬ-элемента в ПЛИС.

3.3 Если необходимо создать варианты макромодели, отражающие иные способы аппаратной реализации МТ-элемента, то вернуться к п.3.1, задав новый вариант реализации ЮЪ-элемента с помощью САПР ПЛИС.

4. Объединить полученные макромодели нижнего уровня в библиотеку.

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

Оценка выходных параметров ЦУ выполняется в соответствии с процедурой В, которую иллюстрирует рисунок 3. Процедура ориентирована на наиболее типичный случай, когда ЦУ строится в базисе СФ-блоков. Метод также допускает непосредственное включение ЯТЬ-элементов в структуру устройства, при этом процедура В изменится незначительно.

Процедура В. Оценка выходных параметров ЦУ.

1. Покрыть ЦУ набором СФ-блоков (верхняя часть рисунка 3) и задать их независимые входные параметры (Х2т).

2. Для каждого СФ-блока, вошедшего в ЦУ ( МВ е Э), выполнить следующее:

2.1 Выбрать один из вариантов ЭС СФ-блока из библиотеки ММ.

2.2 Используя функцию Фвх(Х2нз) определить значения структурных .ч параметров Х2з СФ-блока.

2.3 Определить значения входных параметров XI ЛТЬ-элементов, вошедших в структуру данного СФ-блока, используя функцию Ф|т/Х2).

3. Определить выходные параметры У1 ИТЬ-элементов, используя ММ НУ У1=П (XI) и полученные значения входных параметров XI..

4. Рассчитать выходные параметры У2 СФ-блоков, используя полученные на предыдущем шаге оценки выходных параметров 11ТЬ-элементов (У1) и ММ ВУ У2=Ф(У1, Х2).

5. Используя функцию Ч/(У2) оценить выходные параметры ЦУ в целом (УЗ).

Уровень всего устройства

Устройства

ММ ИТЬ-псментов

Рисунок 3 Графическое представление процедуры расчета выходных параметров ЦУ

Относительно функции Ч/(У2) можно отметить следующее: для каждого выходного параметра ЦУ, входящего в УЗ, необходимо разработать свой алгоритм его расчета по известным значениям выходных параметров СФ-блоков (У2), входящих в данное ЦУ. Так, например, алгоритм расчета таких выходных параметров как «затраты ЛЭ» и «затраты памяти» всегда будет заключаться в суммировании соответствующих выходных параметров ММ, входящих в данное ЦУ. Расчет быстродействия ЦУ, требует применения более сложного алгоритма.

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

Уровень представления структуры Методы синтеза Метод двухуровневого макромоделц>овадая

- синтез структуры расчет вых. пар. синтез структуры расчет вых. пар.

Всего устройства ГВ0ОДИСХ. Лданньк < 1ВВ0Д исх ' Лданньк I

СФ-блоков | > < г | I ММ ВУ 1

Регистровых передач (RTL) ( 1 (Логическим ^синтез ММ НУ

ПЛИС-уроеень /

Логический 1 </sJTexHon |синтеэ тческий

Рисунок 4 Схема расчета выходных параметров ЦУ

В главе два был также предложен метод структурно-параметрического синтеза ЦУ на основе ПЛИС с использованием МДМ. Как было отмечено выше, для каждого СФ-блока и ЯТЬ-элемента может существовать несколько вариантов его реализации. Выбор наиболее подходящего варианта, в соответствии с заданными критериями является непростой задачей. В работе предложен метод автоматизированного структурно-параметрического синтеза ЦУ на ПЛИС с учетом специфики аппаратного базиса на основе МДМ. При этом ЦУ представляется деревом И-ИЛИ (см. рисунок 5).

Рисунок 5 Пример представления вариантов ЦУ деревом И-ИЛИ Корневая вершина дерева представляет все ЦУ в целом. Промежуточные вершины представлены ММ ВУ и НУ. Вариантам ММ и значениям их входных параметров могут соответствовать как промежуточные, так и терминальные вершины дерева.

Структурно-параметрический синтез заключается в построении оптимального дерева решения. Дерево решений называется оптимальным, если оно включает все дочерние вершины для вершины типа И из дерева перебора и дочернюю вершину с минимальной/максимальной стоимостью для вершины ИЛИ из дерева перебора. В работе предложено в качестве стоимости вершины, использовать обобщенный критерий оптимальности:

Л , где

I

Иг, - балльная оценка у'-й вершины с точки зрения /-го частного критерия. Частными критериями являются отдельные выходные параметрам ЦУ(быстродействие, объем аппаратуры и т.д.); ^ - весовой коэффициент, характеризующий важность /-го частного критерия. Значения Лу, и £ нормированы к единице. Таким образом, обобщенный критерий Н/ характеризует степень оптимальности данной (/-й) вершины (варианта) с точки зрения заданных

разработчиком ЦУ критериальных ограничений и весовых коэффициентов/¡.

Вычислим, например, балльные оценки для вариантов ММ умножителя. Примем, что лучший вариант соответствует наибольшей балльной оценке. Возможны несколько вариантов реализации умножителя: на табличных преобразователях(Т); на специальных аппаратных блоках умножения^); с использованием встроенной памяти ПЛИС(М). Наименьшее быстродействие имеет вариант на ЛЭ, поэтому ему присвоим балл А//=1 (нормированное значение А»'=0,5). Варианты Б и М дают более высокое быстродействие, при этом между собой эти два варианта весьма близки. Поэтому присвоим им одинаковую оценку ^21=Ь}1~2 (//2/=Л)/~=1). Выбор одного из двух вариантов может осуществляться на основе других, второстепенных критериев, если они заданы, а также случайным образом или перебором. Возможность выбора варианта посредством перебора обеспечивается высокой скоростью расчета выходных параметров по МДМ.

Таким образом, для любого ЦУ, заданного в базисе ММ можно построить дерево И-ИЛИ и выделить в нем оптимальное дерево решения на основе балльных оценок и заданных критериев. То есть выполнить структурно-параметрический синтез ЦУ на высоком уровне с учетом специфики аппаратного базиса.

В третьей главе решается задача разработки библиотеки ММ двух уровней. В начале главы рассматриваются выходные параметры ЦУ на ПЛИС. В результате рассмотрения выбираются учитываемые в ММ выходные параметры и их единицы измерения:

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

- требуемый объем памяти (М, бит). В данном случае учитывается только память, размещенная непосредственно в микросхеме ПЛИС. Так называемые встроенные блоки памяти. Встроенная память выделяется фрагментами фиксированного размера, которые для удобства дальнейшего изложения будем называть сегментами;

- количество используемых сегментов памяти (Мв, шт.);

- быстродействие (^ Гц);

- пропускная способность (С, байт/с).

В работе предложен метод создания макромоделей, основанный на комбинировании трех способов их создания и представления:

1. в виде аналитического выражения, полученного на основе экспериментальных данных; МН = Yl = fi(Xl);

2. в виде эквивалентной схемы; MB = {М,С};

3. в виде аналитического выражения на основе ЭС; У2 = Ф(У1,Х2).

Первый способ характерен для ММ НУ. Формирование ММ выполняется следующим образом. Вначале создается описание моделируемого узла в форме, пригодной для САПР ПЛИС. Затем выполняется синтез и анализ макромоделируемого узла средствами САПР ПЛИС при различных значениях входных параметров XI. По полученным данным делается вывод о характере зависимости между входными и выходными параметрами. ММ, построенные на основе экспериментальных данных, дают большую точность, но менее универсальны, чем ММ на основе ЭС. Создание таких ММ может потребовать проведения значительного числа вычислительных экспериментов.

В главе три также предложен подход к подготовке исходных данных и обработке результатов эксперимента на основе теории планирования эксперимента, который делает возможным создание ММ с большим количеством входных параметров. Предложены методики автоматизации проведения экспериментов и обработки результатов с использованием специального «языка скриптов» TCL, а также пакетов MS Excel и SciLab.

В качестве иллюстрации процедуры формирования ММ НУ на основе экспериментальных данных рассмотрим задачу определения быстродействия цифрового компаратора. Основным входным параметром компаратора является разрядность операндов Wc,ala. На рисунке 6 точками показаны результаты эксперимента по определению времени срабатывания цифрового компаратора (<отр (WW0) с помощью САПР ПЛИС при различной разрядности операндов.

8 7 в 5

(стр * 3 2 1 О

^Ъв/д

Рисунок 6 Зависимость (щ^ {Н'ма) для ПЛИС серии Сус1опе-П

По внешнему виду графика было определено, что зависимость ¿стр (1Уша) хорошо аппроксимируется степенной функцией вида:

а, Ь, с — коэффициенты, определенные путем регрессионного анализа.

Сплошной линией на рисунке 6 показан график аппроксимирующего выражения, которое является частью ММ НУ цифрового компаратора.

Для сокращения числа экспериментов в работе было предложено некоторые выходные параметры ММ НУ рассчитывать по аналитическим выражениям, построенным на основе знаний о способе реализации моделируемого ЯТЬ-элемента в ПЛИС. Так, например, можно рассчитать затраты аппаратуры для двоичного счетчика. Основной входной параметр счетчика-коэффициент пересчета (КоП). Количество двоичных разрядов счетчика, определяется как IV = 1о§г(КоП). Величина W соответствует количеству аппаратуры, то есть ЛЭ ПЛИС, необходимых для реализации счетчика. Таким образом получено выражение для расчета затрат аппаратуры на двоичный счетчик с достаточной точностью без привлечения экспериментальных данных, что позволило сократить количество экспериментов.

Способы представления 2 и 3 (на основе ЭС) используются, в основном, для ММВУ.

При втором способе, ММ представляется своей структурой (или, что то же самое, ЭС) в базисе ММ НУ и других ММ ВУ ( МВ = {М,С} ). Выходные параметры такой ММ вычисляются с использованием стандартной процедуры, аналогичной процедуре вычисления выходных параметров всего устройства. Достоинства данного метода - относительная простота создания ММ, возможность

—.——

50 100 150 200 250 300

обработки стандартной процедурой. Недостатки - потери времени на расчет по стандартным алгоритмам. Данный способ хорошо подходит для дополнения библиотеки ММ макромоделямн пользователя.

При третьем способе макромодель представляется аналитическими выражениями для расчета выходных параметров, построенными непосредственно в процессе разработки ММ путем анализа ее ЭС ( MB = Y2 = Ф(У1, Х2) ). Это позволяет исключить вычислительные затраты на выполнение стандартной процедуры расчета выходных параметров. Недостатком данного способа построения ММ является его высокая трудоемкость и неформализуемость, достоинством, как уже отмечалось, - высокая скорость расчета.

По сравнению с методами построения на основе эксперимента методы на основе ЭС не требуют проведения экспериментов, позволяют создать более универсальные модели, учесть большее кол-во входных параметров, но предполагают разработку и, возможно, анализ ЭС, что может являться непростой задачей.

В качестве примера ММ ВУ, использующей третий способ представления, рассмотрим ММ буфера типа «очередь» (FIFO). ЭС буфера в базисе ММ НУ показана на рисунке 7.

Вход

Рисунок 7 Эквивалентная схема буфера типа «очередь».

Основные независимые входные параметры блока: разрядность хранимых данных OVJatliy, объем хранимых данных (Depth), то есть количество хранимых слов разрядности Wdata- Введем зависимый входной параметр данного СФ-блока: Woepth б Х2з, который определяется как: IVDep,i, = [ \ogi(Depth) ]. Квадратные скобки обозначают округление до ближайшего целого в большую сторону.

На основе ЭС были сформированы выражения для расчета выходных параметров данной ММ. При расчете используются ММ НУ. Объем необходимых логических ресурсов:

Lfifo= з■■LcJ.WDtplh) + 2-Lc„p{Wo<pth) + L„eJJVjM, Depth) ,где

LcmO' Lcmp0, Lme„,0 - функции расчета количества логических ресурсов для счетчика, компаратора и блока памяти соответственно, с учетом заданных значений параметров. Эти функции входят в состав соответствующих ММ НУ. Время срабатывания FIFO:

lfim= max ( tcmi^p,!,) , tCmp(WD?r<h), 'mcmi^dala, ^Deplh) ) , ГДв

tcn,(), tcmp0, tmemO ~ функции расчета времени срабатывания счетчика, компаратора и блока памяти соответственно.

Объем памяти определяется лишь затратами на блок памяти: MfIFO- Mmem(Wdaia, Wcepth)

MmemQ - функция для расчета необходимого объема памяти на блок памяти с заданными параметрами.

Количество сегментов памяти (MS-Memory Segment): msfifo = msmem(wjala, wfrph)

msmtmq - функция для расчета количества необходимых сегментов памяти для блока памяти с заданными параметрами.

Разработанная библиотека включает в себя следующие ММ:

- ММ ВУ для: КИХ-фильтра, контроллера SDRAM, буфера типа «очередь».

- ММ НУ для: регистра, сумматора, умножителя, счетчика, блока памяти, цифрового компаратора, блока выполнения поразрядных логических операций, блока извлечения квадратного корня.

Для всех макромоделей определены их выходные параметры и способы их расчёта, проведены эксперименты, подтвердившие достаточную для начальных этапов проектирования точность ММ: среднеквадратическое отклонение не превышает 8% от диапазона изменения выходного параметра, а относительная ошибка - 30%.

Также в главе три сформулированы рекомендации по выбору способа представления ММ при их разработке.

Глава четыре посвящена разработке САПР проектирования ЦУ на ПЛИС на основе МДМ. Предложена структура подсистем САПР, показанная на рисунке 8.

В предложенной структуре можно выделить три основных блока - интерфейс пользователя, блок основных алгоритмов, база данных ММ с СУБД. Блок основных алгоритмов обеспечивает трансляцию исходных данных, расчет выходных параметров по ММ. БД ММ содержит такую информацию о ММ, как состав ММ, их входные и выходные параметры, диапазоны изменения параметров.

В ходе работы была выполнена реализация прототипа САПР проектирования ЦУ на основе МДМ. При разработке прототипа САПР использовался язык Си++ и платформа Microsoft .NET, в качестве СУБД использована программа MS Access. Прототип САПР построен по компилирующему принципу, что в частности выражается в том, что ММ хранятся в скомпилированном виде.

Для реализации прототипа САПР были разработаны структуры данных для представления ММ, исходных и промежуточных данных. Реализованы алгоритмы расчета выходных параметров. Каждой макромодели из библиотеки, описанной в главе три, поставлен в соответствие класс языка Си++. Разработана иерархия классов макромоделей в соответствии с принципами объектно-ориентированного программирования.

Интерфейс пользователя прототипа САПР включает четыре окна: основное окно программы, содержащее структуру ЦУ в табличной форме и органы управления; окно редактирования входных параметров ММ; окно с результатами расчета выходных параметров ЦУ; окно выбора модели ПЛИС.

Работа программы складывается из следующих шагов:

1. Ввод исходных данных (структура ЦУ, входные параметры ММ, выбор модели ПЛИС).

2. Трансляция исходных данных.

3. Выделение комбинационных путей (КП).

4. Расчет выходных параметров всех ММ, входящих в ЦУ.

5. Расчет задержек в КП, определение критического пути и быстродействия ЦУ. Расчет пропускной способности ЦУ.

6. Вывод результатов

Выигрыш по вычислительным затратам при использовании прототипа САПР можно оценить по времени расчета выходных параметров отдельных ММ. Как правило, для прототипа САПР это время не превышает десятков миллисекунд, что значительно меньше, чем при использовании САПР ПЛИС. Наибольший выигрыш по скорости расчета достигается для более-менее сложных ММ. Так, например, расчет выходных параметров умножителя для 64-разрядных операндов с использованием САПР ПЛИС занял 5 минут, а блока извлечения квадратного корня для 32-разр. операндов - 4,5 минуты. Время расчета этих ММ в прототипе САПР не превышает Юме, что делает возможным использование многовариантного анализа при структурно-параметрическом синтезе ЦУ.

В главе пять приведены примеры использования предложенных в работе методов при проектировании реальных устройств. Так, в частности, была решена задача эскизного проектирования контроллера видеоканалов многоканального регистратора сигналов РИЦ822. Требовалось решить следующие задачи: определить оптимальную разрядность слов внешней памяти, обеспечивающую требуемую пропускную способность видеоканала при минимальных затратах ресурсов; выбрать модель ПЛИС фирмы Altera серии АСЕХ1К для реализации устройства.

Для решения поставленных задач были оценены выходные параметры основной части контроллера - тракта передачи данных с использованием МДМ. Оценка проводилась как вручную, так и с применение прототипа САПР. В последнем случае время расчета составило 1,3с. по сравнению с 38с. при использовании САПР ПЛИС. Таким образом, время расчета сократилось почти в 30 раз, а общая экономия времени оценки выходных параметров для девяти вариантов составила 5,5 минут при точности оценки не ниже 30%. Примерное время ввода данных в прототип САПР - 20мин., в САПР ПЛИС - 4-5 часов, что в 12-15 раз дольше.

Также были проанализированы три варианта структурной реализации модуля зашифрования/расшифрования по алгоритму ГОСТ28147. Для всех вариантов определены выходные параметры с точностью не хуже 31%. Сделаны выводы по выбору наилучшей структурной реализации модуля, а также модели ПЛИС. Оценка выходных параметров по МДМ с использованием ручного расчета заняла около Зч.,

в то время как аналогичная оценка с использованием САПР ПЛИС с учетом времени ввода исходных данных потребовала большего времени — почти 10 часов.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

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

3. Предложен и разработан метод структурно-параметрического синтеза ЦУ на ПЛИС на основе направленного поиска по дереву И-ИЛИ. Метод отличается от известных оригинальным представлением вершин дерева И-ИЛИ макромоделями верхнего и нижнего уровня и их входными параметрами, что позволяет определить оптимальные значения параметров компонентов ПЛИС.

4. Предложен метод создания макромоделей, основанный на комбинировании различных способов их построения. Метод обеспечивает компромисс между конфликтными требованиями высокой точности и малых вычислительных затрат.

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

6. Разработаны библиотеки макромоделей нижнего и верхнего уровня. Определено множество макромоделируемых узлов, выделены их важнейшие входные параметры. Проведена проверка адекватности полученных макромоделей.

7. Предложен общий алгоритм работы и структура подсистем САПР на основе метода двухуровневого макромоделирования. Выполнена программная реализация прототипа САПР на основе двухуровневого макромоделирования.

8. Показана эффективность применения метода двухуровневого макромоделирования на ранних этапах проектирования ЦУ на основе ПЛИС. Применение МДМ позволило существенно (почти в 30 раз) снизить трудоемкость оценки выходных параметров устройства по сравнению с существующими методами при приемлемой для ранних этапов проектирования точности результатов.

\ "С»

Публикации по теме диссертации

1. Ходоровский, А. 3. Мобильный измерительный комплекс [Текст] /

A. 3. Ходоровский, М. В. Рузин, Р. А. Гришин // Информатика, социология, экономика, менеджмент: сборник научных трудов, ч. 2. - М.: АМИ. - 2006. - №1. -с. 176-180.

2. Гришин, Р. А. Автоматизация процесса графической обработки видео в реальном масштабе времени с применением программируемых логических интегральных схем [Текст] / Р. А. Гришин, А. М. Петраков // Вестник компьютерных и информационных технологий: журнал. - М.: Машиностроение. -2008. -№11(53). -с.8-11.

3. Гришин, Р. А. Оценка основных характеристик цифровых устройств на программируемых логических интегральных схемах на ранних этапах проектирования [Текст] / Р. А. Гришин, А. М. Петраков // Космические информационно-управляющие системы: сборник научных трудов. — М.: ФГУП «ЦНИИ Комета». - 2009. - №3. - с. 124-128 .

4. Ильин, В. Н. Методика оценки основных параметров цифровых устройств на ПЛИС на ранних этапах проектирования с использованием двухуровневого макромоделирования [Текст] / В. Н. Ильин, Р. А. Гришин // Информационные технологии: журнал. -М.:«Новые технологии». - 2009. - №7(155). - с. 39-46.

5. Ильин, В. Н. Анализ различных вариантов реализации алгоритма за/расшифрования с использованием двухуровневого макромоделирования [Текст] /

B. Н. Ильин, Р. А. Гришин // Вестник МАИ: журнал. - М.: МАИ-Принт. - 2010. -№3. — с. 200-205.

Подписано в печать 27.10.10. Формат 60x84 /¡6. Усл. печ. л. 1. Тираж 100 экз.

Отпечатано с готового оригинал-макета в множительном центре Московского авиационного института (государственного технического университета)

Оглавление автор диссертации — кандидата технических наук Гришин, Роман Анатольевич

Содержание.

Перечень используемых сокращений.

Введение.

Глава 1. Анализ методов проектирования цифровых устройств на ПЛИС, цель и задачи работы.

1.1 Анализ современных ПЛИС.

1.1.1 ПЛИС архитектуры СР1Л).

1.1.2 ПЛИС архитектуры

1.1.3 Классификация ПЛИС по типу памяти конфигурации.

1.1.4 Частные критерии ПЛИС и ЦУ на основе ПЛИС.

1.2 Методы проектирования ЦУ на ПЛИС.

1.3 САПР проектирования ЦУ на ПЛИС

1.4 Цель и задачи диссертационного исследования.

Глава 2. Метод двухуровневого макромоделирования ЦУ на ПЛИС.

2.1 Классификация моделей и макромоделей.

2.2 Метод двухуровневого макромоделирования.

2.3 Процедуры формирования макромоделей.

2.4 Процедура оценки выходных параметров ЦУ с использованием метода двухуровневого ММ.

2.5 Структурно-параметрический синтез ЦУ на основе ПЛИС с использованием метода двухуровневого макромоделирования.

2.6 Выводы.

Глава 3. Библиотека макромоделей.

3.1 Общие принципы создания макромоделей.

3.1.1 Исследуемые выходные параметры, единицы измерения параметров.

3.1.2 Способы представления и создания макромоделей.

3.2 Макромодели верхнего уровня (ММ ВУ).

3.2.1 Определение множества моделируемых СФ-блоков.

3.2.2 Библиотека ММ ВУ для выбранных СФ-блоков.

3.3 Макромодели нижнего уровня (ММ НУ).

3.3.1 Сумматор.,.;.

3.3.2 Счетчик.

3.3.3 Блок поразрядных логических операций.

3.3.4 Умножитель.

3.3.5 Блок памяти.

3.3.6 Блок извлечения квадратного корня.

3.4 Экспериментальная проверка метода оценки выходных параметров макромоделей ВУ.

3.4.1 Буфер типа «очередь» (FIFO).

3.4.2 Фильтр с конечной импульсной характеристикой.

3.5 Выводы.

Глава 4. САПР ЦУ на ПЛИС на основе метода двухуровневого макромоделирования.

4.1 Общий алгоритм работы САПР.

4.2 Структура САПР.!.

4.3 Программная реализация САПР на основе двухуровневого макромоделирования.

4.3.1 Основные типы и структуры данных.

4.3.2 Структура базы данных.

4.3.3 Интерфейс пользователя.

4.3.4 Алгоритмы расчета.

4.4 Оценка быстродействия прототипа САПР.

4.5 Выводы.

Глава 5. Практическое применение метода двухуровневого макромоделирования ЦУ на ПЛИС.

5.1 Многоканальный регистратор сигналов РИЦ822.

5.1.1 Постановка задачи.

5.1.2 Подготовка макромоделей.

5.1.3 Анализ блока управления с использованием МДМ.

5.1.4 Оценка выходных параметров тракта передачи с использованием прототипа САПР.

5.2 Анализ различных вариантов реализации алгоритма

ГОСТ 28147-89.

5.2.1 Анализ алгоритма.

5.2.2 Создание макромодели таблицы замен.

5.2.3 Создание ММ ВУ модуля ОШК.

5.2.4 Оценка выходных параметров шифрователя.

5.2.5 Анализ результатов.

5.3 Выводы.

Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Гришин, Роман Анатольевич

Данная работа посвящена задаче автоматизации ранних этапов проектирования цифровых устройств (ЦУ) на программируемых логических интегральных схемах (ПЛИС). Применение БИС и СБИС при разработке радиоэлектронной аппаратуры (РЭА) позволяет достичь более высокой степени интеграции и уменьшить количество используемых корпусов микросхем. При этом по сравнению с использованием дискретных элементов повышаются функциональные характеристики аппаратуры, такие как надежность, скорость работы, снижается стоимость и потребляемая мощность [1]. Стремительное развитие радиоэлектроники в ходе последних десятилетий, с одной стороны, позволило достичь очень высоких функциональных характеристик но, с другой стороны, привело к беспрецедентному усложнению процесса проектирования БИС и СБИС [1,3]. При этом стоимость изготовления микросхем с ужесточением проектных норм продолжает быстро расти. От проектировщиков требуется очень высокий уровень квалификации, учет множества факторов [2,3,28].

В этих условиях все более широкое применение в современной РЭА находят программируемые логические интегральные схемы. ПЛИС позволяют во многих случаях получить функциональные характеристики сравнимых с характеристиками, достижимыми в заказных СБИС, при существенно меньших финансовых затратах. ПЛИС представляют собой стандартные изделия класса СБИС, алгоритм работы которых может быть настроен пользователем на рабочем месте. ПЛИС производятся массовыми тиражами, что позволяет устанавливать на них весьма низкие цены даже при применении самых современных технологических процессов производства ИМС (проектные I нормы, используемые при изготовлении ПЛИС, достигли 40 нм.).

Все это способствовало широчайшему внедрению ПЛИС как в отечественной, так и мировой электронике. В то же время, применяемая повсеместно методика проектирования цифровых устройств на ПЛИС не лишена недостатков, устранению части которых, относящихся к ранним этапам проектирования, посвящена данная работа.

К числу задач, которые должны быть решены в ходе ранних этапов проектирования устройств на ПЛИС, относятся:

1. Оценка требований к аппаратной части, а именно к ПЛИС, со стороны алгоритма обработки данных.

2. Анализ различных вариантов реализации алгоритма обработки.

Под ранними этапами проектирования здесь и далее понимаются этапы технического предложения и эскизного проектирования [5-8,22].

Актуальность первой задачи обусловлена тем, что применение ПЛИС позволяет выполнять одновременно (параллельно) разработку схемо-конструкторской реализации и алгоритмов обработки данных. Данная особенность ПЛИС способствует существенному сокращению сроков разработки, что является весьма важным фактором на сегодняшний день [1,3,16,20]. Чтобы параллельная разработка схемоконструкторской реализации и алгоритмов обработки стала возможной, необходимо определить требования к аппаратной части, а именно к ПЛИС, со стороны реализуемого алгоритма уже в самом начале работы над ним, на ранних этапах проектирования.

Вторая из перечисленных задач - задача анализа вариантов реализации относится к концептуальным задачам проектирования устройства. Учитывая значительную мощность множества возможных вариантов, решение задачи выбора без привлечения средств автоматизации может привести к существенным ошибкам. Использование существующих методов оценки выходных параметров ЦУ из-за их высокой трудоёмкости затрудняет применение традиционных способов оптимизации [35-38], требующих многократного вычисления этих оценок. В то же время, концептуальные ошибки, вносимые на ранних этапах разработки, имеют наибольшее значение и приводят к существенным материальным и временным потерям [3,4,28].

Именно поэтому в настоящее время большое внимание уделяется так называемому «системному проектированию» (ESL - Electronics System-Level).

Решение задач оценки требований к ПЛИС со стороны алгоритма и оценки выходных параметров ЦУ на ПЛИС может быть выполнено двумя способами: эмпирически, на основе опыта разработчика, или с применением систем автоматизированного проектирования (САПР). Эмпирическая оценка субъективна и может привести к серьезным ошибкам, кроме того, не всегда есть возможность обратиться за консультацией к опытному специалисту в области разработки на ПЛИС. При использовании же существующих САПР для решения поставленных задач необходимо составить подробное описание алгоритма, а затем пройти полный цикл проектирования устройства на ПЛИС. Как видно из сказанного выше, использование САПР для решения поставленных задач требует значительных усилий и занимает немало времени, а высокая степень детализации описания алгоритма вообще не соответствует задачам ранних этапов проектирования. Все это не позволяет за достаточно короткий срок проанализировать большое количество вариантов реализации алгоритма, что необходимо на ранних этапах проектирования.

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

Заключение диссертация на тему "Автоматизация ранних этапов проектирования цифровых устройств на ПЛИС на основе двухуровневого макромоделирования"

Основные результаты, полученные в работе, сводятся к следующему:

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

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

3. Предложен и разработан метод структурно-параметрического синтеза ЦУ на ПЛИС методом направленного поиска по дереву И-ИЛИ. Метод отличается от известных оригинальным представлением вершин дерева И-ИЛИ макромоделями верхнего и нижнего уровня и их входными параметрами, что позволяет определить оптимальные значения параметров компонентов ПЛИС.

4. Предложен метод создания макромоделей, основанный на комбинировании различных способов их создания и представления. Метод обеспечивает возможность компромисса между конфликтными требованиями к точности и вычислительными затратами. Даны рекомендации по выбору способа создания и представления макромодели.

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

6. Разработаны библиотеки макромоделей нижнего и верхнего уровня. Определено множество макромоделируемых узлов, выделены их важнейшие входные параметры. Проведена проверка адекватности полученных макромоделей.

7. Предложен общий алгоритм работы и структура подсистем САПР на основе метода двухуровневого макромоделирования. Выполнена программная реализация прототипа САПР на основе двухуровневого макромоделирования.

8. Показана эффективность применения метода двухуровневого макромоделирования на ранних этапах проектирования ЦУ на основе ПЛИС. Показано, что применение МДМ позволяет существенно (почти в 30 раз) снизить трудоемкость оценки выходных параметров устройства по сравнению с существующими методами при приемлемой, для ранних этапов проектирования, точности результатов.

Заключение

Быстрое увеличение сложности проектируемых устройств и эволюция функциональных требований к разрабатываемым устройствам привели, с позиции использования элементной базы, к широкому внедрению программируемых логических интегральных схем (ПЛИС), а в отношении методов проектирования, к бурному развитию методов проектирования системного уровня. Микросхемы ПЛИС имеют ряд преимуществ по сравнению с заказными СБИС. В частности, ПЛИС позволяют существенно сократить цикл проектирования за счет совмещения этапов реализации алгоритма работы устройства и разработки конструкции. Как показано в работе, использование традиционных маршрутов проектирования (нисходящий и восходящий) не позволяет в полной мере воспользоваться преимуществами ПЛИС, увеличивает время разработки. Кроме того, для эффективного использования возможностей ПЛИС необходимо определить выходные параметры ЦУ на ПЛИС в ходе ранних этапов проектирования. Проведенное исследование показало, что применяемые в настоящее время методы и средства оценки выходных параметров ЦУ на ПЛИС в ходе ранних этапов проектирования не соответствуют требованиям этих этапов. Главным образом это связано с высокой трудоемкостью ввода исходных данных и получения оценок. В то же время, достоверная оценка выходных параметров ЦУ на ПЛИС в ходе ранних этапов проектирования имеет решающее значение для всего процесса разработки в целом. г

В работе предложены новый, нисходяще-восходящий маршрут проектирования и его реализация на основе двухуровневого макромоделирования. Метод двухуровневого макррмоделирования позволяет существенно снизить трудоемкость оценки выходных параметров ЦУ по сравнению с существующими методами. Это, в свою очередь, сделало возможным выполнение структурно-параметрического синтеза ЦУ на ПЛИС с учетом таких выходных параметров как объем требуемых аппаратных ресурсов, быстродействие, и др., что было бы невозможно или затруднительно выполнить существующими методами. Разработан прототип САПР на основе метода двухуровневого макромоделирования.

Библиография Гришин, Роман Анатольевич, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Казеннов, Г. Г., Основы проектирования интегральных схем и систем / Г.Г. Казеннов. - М.: Бином, 2005 . - 296 с.

2. Стэффора, Э. М. Зачем разработчикам знать про литографию / Э.М. Стэффора // Электронные компоненты: журнал. 2008. - №1. - с.32.

3. Пемудров, В. Системы-на-кристалле. Проектирование и развитие / В. Немудров; Г. Мартин —М., Техносфера, 2004. -216 с.

4. Грушвицкий, Р. И. Проектирование систем на микросхемах с программируемой структурой / Р. И. Грушвицкий, А. X. Мусаев, Е. П. Угрюмов.- 2-е изд. перераб и доп . СПб.: БХВ-Петербург, 2006г . - 736 с.

5. ГОСТ 2.103-68 Единая система конструкторской документации. Стадии разработки. — Введ. 1971—01—01. — М. : Изд-во стандартов, 1998. — 4 с.

6. ГОСТ 2.118-73 Единая система конструкторской документации. Техническое предложение. — Введ. 1974—01—01. — М. : Изд-во стандартов, 1995. —4 с.

7. ГОСТ 2.119-73 Единая система конструкторской документации. Эскизный проект. — Введ. 1974—01—01. — М. : Изд-во стандартов, 1995. — 5 с.

8. ГОСТ 2.120-73 Единая система конструкторской документации. Технический проект. — Введ. 1974—01—01. — М. : Изд-во стандартов, 1995.4 с.

9. Соловьев, В.В. Проектирование цифровых систем на основе програм-мируемых логических интегральных схем / В.В. Соловьев. М.:

10. Горячая линия телеком», 2001. - 636 с.

11. Пухальский, Г. И. Цифровые устройства: Учебное пособие для втузов / Г. И. Пухальский, Т. Я. Новосельцева. СПб.: Политехника, 1996 . -885 с. " - •

12. Закраевский, А. Д. Логический синтез каскадных схем / А. Д. Закраевский. -М.,: Наука, 1981.-414 с.

13. Вавилов, Е. Н. Синтез схем электронных цифровых машин / Е. Н. Вавилов, Г. П. Портной. М.: Советское радио, 1963. - 440 с.

14. Фридман, А. Теория и проектирование переключательных схем / А. Фридман, П. Менон. -М.: Мир, 1978. 584 с.

15. Угрюмов, Е. П. Цифровая схемотехника: Учебное пособие для вузов / Е. П. Угрюмов. 2-е изд., перераб. и доп. - СПб.: БХВ-Петербург, 2005. -800 с.

16. Donlin, М. ASIC complexity fuses drive to HDL design / M. Donlin // Computer Design. 1991 May

17. Moretti, G. Design Complexity Requires System-Level Design / G. Moretti // EDN-Europe. 2005. - №3 . - pp. 26-32 •

18. Волков, А. В. Конструкторский синтез спецвычислителей на базе ПЛИС методом функциональной декомпозиции: автореферат дисс. . канд. тех. наук: 05.27.01 -М.-2005

19. Kulkarni, D. Compile-Time Area Estimation for LUT-Based FPGAs / D. Kulkarni, A.W. Najjar, R. Rinker, R J. Kurdahi // ACM Transactions on Design Automation of Electronic Systems; ACM New York, NY, USA. 2006. - №1. -Vol. 11.-pp. 104-122

20. Реутов, А. Тенденции рынка nnHC(FPGA) и новинки модульных компонентов на базе программируемой логики / А. Реутов // Современная электроника: журнал. 2007. - №5. - с. 6-9

21. Селеванов, И. Маршруты высокоуровневого синтеза / И. Селеванов //

22. Современная электроника: журнал. 2007. - №6. - с. 38-43

23. Нильсон Н. Принципы искусственного интеллекта: Пер. с англ./ Н. Нильсон. М.: Радио и связь, 1985. - 376с.

24. Пронин, Е. Г. Проектирование бортовых систем обмена информации/ Е. Г. Пронин, О. В. Могуева. М.: Радио и связь, 1989. - 239 с.

25. Ильин, В. Н. Интеллектуальные САПР технологических процессов в радиоэлектронике / А. С. Алиев, JI. С. Восков, В. Н. Ильин и др. М.: Радио и связь, 1991. -258 с.

26. Норенков, И. П. Теоретические основы САПР / И. П. Норенков, В. П. Корячко, В. М. Курейчик. -М.: Энергоатомиздат, 1987г. 325 с.

27. Вермишев, Ю. X. Основы автоматизации проектирования / Ю. X. Вермишев. -М.: Радио и связь, 1988. -280с.

28. Еркин, А. Обзор современных САПР для ПЛИС / А. Еркин // Chip news: журнал. 2008. - № 10-11. - с.17-29

29. Ильин, В. Н. Автоматизация схемотехнического проектирования: учеб. пособие для ВУЗов под ред. Ильина В.Н. / В. Н. Ильин, В. Т. Фролкин, А. И. Бутко и др.-М.: Радио и связь, 1987. 368с.

30. Рабаи, Ж. М. Цифровые интегральные схемы. Методология проектирования / Ж. М. Рабаи, А. Чандракасан, Б. Николич ; пер. с англ. и ред. А. В. Назаренко. [2-е изд.] .- М.[и др.] : Вильяме, 2007 - 911 с.

31. Потехин, Д. С. Разработка систем цифровой обработки сигналов на базе ПЛИС / Д. С. Потехин, И.Е. Тарасов.- М.: «Горячая линия Телеком», 2007. - 248с.

32. Подиновский, В. В. Парето-оптимальные решения многокритериальных задач / В. В. Подиновский, В.Д. Ногин- М.: Наука. Главная редакция физико-математической литературы, 1982г. -256с.

33. Норенков, И. П. Основы автоматизированного проектирования: Учеб.для вузов. / И. П. Норенков — 2-е изд., перераб. и доп. — М.: Изд-во МГТУ им. Н.Э.Баумана, 2002. 336 с.

34. Артамонов, Е. И. Структурное проектирование систем / Е. И. Артамонов // Информационные технологии в проектировании и производстве журнал. - №2, 2008. - с. 3-11

35. Закревский, А. Д. Логический синтез каскадных схем / А. Д. Закревский. М.: Наука, 1981. - 414 с.

36. Батищев, Д. И. Методы оптимального проектирования: учебное пособие для вузов / Д. И. Батищев. М.: Радио и связь, 1984. - 246 с.

37. Дегтярев, Ю. И. Методы оптимизации: Учеб. пособие для спец. 0646 "Автоматизир. системы управления", 0647 "Прикл. математика" / Ю. И. Дегтярев.- М.: Сов. радио, 1980 270 с.

38. Соболь, И. М. Выбор оптимальных параметров в задачах со многими критериями / И. М. Соболь, Р. Б. Статников .- М.: Наука, 1981.- 110 с.

39. Вермишев, Ю. X. Методы автоматического поиска решений при проектировании сложных технических систем / Ю. X. Вермишев М.: Радио и связь, 1982г. - 152с.

40. Раскин, Л. Г. Анализ сложных систем и элементы теории оптимального управления / Л. Г. Раскин. М.: Сов. радио, 1976. - 334с.

41. Вавилов, Е. Н. Синтез схем электронных цифровых машин / Е. Н. Вавилов, Г. П. Портной. М.: Сов. радио, 1963г. - 440 с.

42. Фридман, А. Теория и проектирование переключательных схем /

43. A. Фридман, П. Менон. -М.: Мир, 1978. 580 с.

44. Мишенко, В. А. Интеллектуальные системы автоматизированного проектирования больших и сверхбольших интегральных микросхем / В. А. Мищенко, JI. М. Городецкий, J1. И. Гурский и др.; Под ред. В. А. Мищенко .М. : Радио и связь , 1988 271 с.

45. Сигорский, В. П. Алгоритмы анализа электронных схем /

46. B. П. Сигорский, А. И. Петренко.- 2-е изд., перераб. и доп. М.: Сов. радио, 1976. - 608 с.

47. Чахмахсазян, Е. А. Математическое моделирование и макромоделирование биополярных элементов электронных схем / Е. А. Чахмахсазян, Г. П. Мозговой, В. Д. Силин М.: Радио и связь, 1985 -142 с.

48. Тульчин, Л. Г. Оценка качества электроизмерительных приборов / Л. Г. Тульчин, А. М. Хаскин, В. Д. Шаповалов .- Л.: Энергоиздат: Ленингр. отд., 1982-216 с.

49. Cyclone Device Handbook Электронный ресурс. / Altéra Corporation. Режим доступа: www.altera.com/literature/hb/cyc/cycc5vl.pdf, свободный. Дата обращения 30 марта 2008г.

50. Cyclone II Device Handbook Электронный ресурс. / Altéra Corporation. Режим доступа: www.altera.com/literature/hb/cyc2/cyc2cii5vl.pdf , свободный. Дата обращения 30 марта 2008г.

51. Quartus-II Handbook Электронный ресурс. / Altéra Corporation. -Режим доступа: http ://www.altera.com/literature/hb/qts/quartusiihandbook.pdf, свободный. Дата обращения 30 марта 2008г.

52. Майоров, С. А. Структура электронных вычислительных машин/

53. C. А. Майоров, Г. И. Новиков. Л.: Машиностроение, 1979- 384 с.

54. Battson, N. Designing with the Virtex-4 XtremeDSP Slice / N. Battson//

55. XCell Journal.- Xlilinx Inc.- 2005.- №1.- c.28-31

56. Сергиенко, А.Б. Цифровая обработка сигналов: учебник для ВУЗов. СпБ., Питер, 2002г., 608с.

57. Implementing Multipliers in FPGA Devices: Application note Электронный ресурс. /Altera Corp. Режим доступа: http://www.altera.com/literature/an/an306.pdf. Дата публикации: июль 2004г.

58. Моисеев, Н. Н. Математика ставит эксперимент / Н. Н. Моисеев — М.: Наука, 1979,- 224 с.

59. Адлер, Ю. П., Планирование эксперимента при поиске оптимальных условий/Ю. П. Адлер, Е. В. Маркова, Ю. В. Грановский.-М.:Наука, 1971- 179с.

60. Асатурян, В. И. Теория планирования эксперимента/ В. И. Асатурян- М.: Радио и связь, 1983г.-248с.

61. Ходасевич, Г. Б. Планирование эксперимента Электронный ресурс. / СПбГУТ каф. обработки и передачи дискретных сообщений. — Электрон, дан. — СПб.:СПбГУТ. — Режим доступа: http://opds.sut.ru/electronicmanuals/pe/, свободный.

62. Страуструп, Б. Язык программирования С++ / Б. Страуструп; Пер. с англ. С. Анисимова и М. Кононова под ред. Ф. Андреева, А. Ушакова. Спец. изд. .- М.: Binom Pablishers СПб.: Нев. диалект , 2001 - 1098 с.

63. Карпова, Т. С. Базы данных: модели, разработка, реализация / Т. С. Карпова СПб.: Питер, 2001. - 304 с.

64. Бекаревич, Ю. Б. MS ACCESS 2000 за 30 занятий/ Ю. Б. Бекаревич, Н. В. Пушкина.- СПб.: БХВ-Петербург, 2000 512 с.

65. Макурин, Ю. Д. Проектирование и реализация баз данных и клиентских приложений в среде MS Visual Studio.NET: учебное пособие / Ю. Д. Макурин, А. В. Сивохин-Пенза: Частная типография Тугушева, 2010-230с.

66. ГОСТ 28147-89 Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования .- Введ. 1990-07-01 -М.:Изд-во стандартов, 1996 26 с.

67. Винокуров, А. Алгоритм шифрования ГОСТ 28147-89, его использование и реализация для компьютеров платформы Intel х86 Электронный ресурс. Режим доступа: http://www.enlight.ru/crypto/articles/ /vinokurov/gosti.htm, свободный. Дата создания: 09 мая 2001г.

68. Ciletty, М. D. Advanced Digital Design with Verilog HDL / M. D. Ciletty -New Delhi: Prentice-Hall of India, 2005,- 1012c.

69. Kilts, S. Advanced FPGA Design Architecture, Implementation, and Optimization / S. Kilts .- Hoboken NJ: John Wiley & Sons Inc., 2007 354c.

70. Кос, С. К. Multiplication of Signed-Digit Numbers / S. Johnson // Electronics Letters, том 30(11), май 1994.-е. 840-841

71. Hosangadi, A. Algebraic Methods For Optimizing Constant Multiplication In Linear Systems / A. Hosangadi, F. Fallah, R. Kastner //Journal of VLSI Signal Processing Systems, том 49(1), октябрь 2007 c.31-50

72. Лобачев, Г. А. Методика формирования моделей цифровых устройств в САПР ПЛИС: дисс. . канд. тех. наук: 05.13.12 -ВлГУ-2004

73. Open Cores Электронный ресурс.: электронньш каталог IP-ядер / OpenCores.org. Режим доступа: http://opencores.org/projects, свободный.

74. Скрипт для автоматизации экспериментов с использованием САПР Altera Quartus-II

75. На рисунке А.1 приведена блок-схем алгоритма работы скрипта, предназначенного для автоматизации проведения эксперимента.

76. Рисунок А. 1 Алгоритм работы скрипта на языке TCL

77. Переменная Devices на блок-схеме содержит список моделей ПЛИС, для которых проводится эксперимент.

78. В случае, если создается ММ ВУ, то XI следует заменить на Х2, a Y1 на1. Y2,

79. Ниже приведен текст скрипта.loadpackage project loadpackage flow loadpackage report

80. Задаем список исследуемых микросхем ПЛИС setglobalassignment -name family CYCLONEIIset devs { EP1K100FC484-1 EP1K100FC484-2 EP1K100FC484-3 EP1C20F400C6 EP1C20F400C7 EP1C20F400C8}

81. Внешний цикл просмотра микросхем ПЛИС foreach dev $devs {setglobalassignment -name device $devset fam getglobalassignment -name FAMILY. puts $fl" Family: $fam"set dev getglobalassignment -name DEVICE. puts $fl" Device: $dev"

82. Копия на консоль puts " Family $fam" puts " Device $dev"puts ";W1;W2;LE Usage;Fmax"

83. Подпрограммы для автоматизации регрессионногоанализа в Scilab

84. Подбор коэффициентов полинома 3 степени function a, err, err2. = evpoly (х, у, guess)function zr.=G(c,z)zr=z(2)-с(1)-с(2)* z(1)-с(3)*z(1)А2-с(4) *z(1)л3 endfunctionz= x; у. ; [a,err]=datafit(G, z, guess)plot2d(x,y,-4);xm=size(x, 'r'); t=x(1):x(xm);

85. Ptc=a(1)+a(2)*t+a(3)*tA2+a(4)*tA3; plot2d(t,Ptc);yeval = a(1)+a(2)*x+a(3)*xA2+a(4)*xA3; err2 = ((y- yeval)./у)*100.';endfunction //---------------------------------------

86. Вывод расчетных формул для некоторых макромоделей верхнего и нижнего уровней

87. Макромодель контроллера динамической памяти

88. Диапазон WAdd>-, соответствующий выбранному диапазону параметра Depth составляет от 20 до 29 разрядов.

89. Выходные параметры блока: необходимый объем логических ресурсов (Lsdram) и время срабатывания {tsdraai), максимальная пропускная способность {Csdram)

90. Рисунок В.1 Зависимость tsDRAM(WAdcir (Depth)) для контроллера SDRAM

91. Сплошной линией обозначены данные для микросхемы ЕР2С.-8, а пунктирной — для ЕР2С. -7.