Rambler's Top100

Реклама на сайте | Реклама в Интернет | "Все Кулички"


Главная страница
Все о компьютерном "железе"
Вся полезная информация
Эрудиту
Гарантированная продажа рекламных мест
Цены магазинов Москвы на ноутбуки и мобильные компьютеры
Мои разработки и переводы
Микроконтроллеры >>
Мои разработки
Полезные конструкции
Программаторы
FAQ по ПИКам
"Глюки" ПИКов
Ссылки
Железо и драйвера >>
Статьи и FAQ
Ссылки на статьи
Определение конфигурации
Настройка компонентов ПК
Утилиты для накопителей информации
Ремонт "железа"
Восстановление информации
Полезный софт
Операционные системы
Безопасность и защита информации
Радиоэлектроника
Программирование >>
Техдокументация
Разработчику программ
Мобильники
Вебмастеру
Поиск информации
On-Line перевод
Обмен ссылками, сотрудничество
Немного о себе
Контакты
Гостевая книга
Форум

Поиск на сайте
Поиск на Куличках:

Сделать стартовой страницей

Реклама:

(!) MP3 плееры всех видов. Возьми с собой 6 обычных Audio-CD на одном(!!!) MP3-CD
Телевизоры, DVD-плееры, видеомагнитофоны, видео-плееры. Аппаратура Hi-End класса


rax.ru: показано число посетителей за сегодня

Рейтинг@Mail.ru

RadioTOP-рейтинг радиотехнических сайтов
PROext: Top 1000
ENGLISH version
Добрый вечер! Четверг, 28 марта 2024

статьи и документация | программаторы | "глюки" | FAQ | полезные конструкции | мои разработки | ссылки

Этапы разработки проекта ПЛИС

Автор: Вадим Владимирович Ходырев

Программируемые логические интегральные схемы (ПЛИС) уже давно широко применяются при создании сложных систем управления. Если электронная аппаратура, разработанная на стандартной логике со степенью интеграции не выше триггера, занимала несколько стоек, то в настоящее время при помощи ПЛИС разрабатываются одноплатные устройства, функционально превосходящие изделия прошлых лет. ПЛИС состоит из матрицы конфигурируемых логических блоков (КЛБ). КЛБ имеет несколько функциональных генераторов (ФГ), реализующих функции алгебры логики (ФАЛ), и элементы памяти, т.е. D-триггеры или триггеры-защелки. На рисунке 1 представлена секция КЛБ ПЛИС семейства Spartan-II фирмы XILINX.

Рис.1

В современных микросхемах программируемой логики количество КЛБ достигает нескольких десятков тысяч. Каждый КЛБ конфигурируется посредством записи в ПЛИС конфигурационных данных, созданных при помощи специального программного обеспечения (ПО). Проектирование конфигурации ПЛИС начинается с функциональной схемы. Деление на функциональные модули позволяет распараллелить работу, т.е. работать над проектом нескольким разработчикам. Также существует возможность применить в проекте ранее созданные и отлаженные макросы. Эти меры позволяют значительно минимизировать временные затраты, требуемые на разработку. Функциональные модули вводятся в проект в виде электрической схемы или в виде текстового файла с кодом языка описания электрической схемы. Также можно создавать проекты, содержащие как схемное, так и описательное представление функциональных модулей. Реализация проекта методом схемного ввода производится в графическом редакторе. На рисунке 2 показан фрагмент схемы в схемотехническом редакторе ViewDraw из пакета WorkView Office.

Рис.2



Рис.3

Графический редактор электрических схем имеет библиотеку стандартных элементов (см. рис. 3). Схема рисуется в графическом редакторе с применением иерархической вложенности. Альтернатива визуальному представлению является описание проекта на языке описания аппаратуры. В настоящее время наибольшей популярностью пользуется язык описания аппаратуры для высокоскоростных интегральных схем (VHSIC), называемый VHDL (см. рис.4).
Министерство обороны США в начале 80-х годов финансировало разработку языка VHDL, стандартизовало его и обязало своих поставщиков цифровых микросхем представлять в составе документации их описание на VHDL. Это можно рассматривать как важный, но только первый шаг к обязательности формальных моделей для всех видов выпускаемой электронной техники. Язык VHDL является формальной записью, которая может быть использована на всех этапах разработки электронных систем. VHDL поддерживает три различных стиля для описания аппаратных архитектур. Первый из них - структурное описание, в котором архитектура представляется в виде иерархии связанных компонентов. Второй - потоковое описание, в котором архитектура представляется в виде множества параллельных регистровых операций, каждая из которых управляется вентильными сигналами. Потоковое описание соответствует стилю описания, используемому в языках регистровых передач. И, наконец, поведенческое описание, в котором преобразование описывается последовательными программными предложениями, которые похожи на имеющиеся в любом современном языке программирования высокого уровня. Все три стиля могут совместно использоваться в одной архитектуре. После этапа графического ввода в схемотехническом редакторе или текстового описания на VHDL модуля проекта выполняется его функциональное моделирование. Целью функционального моделирования является выявление и устранение возможных логических ошибок. Для моделирования поведения модуля проекта необходимо задать изменения во времени состояний его входов. Если данный элемент проекта был разработан в схемном редакторе, то для функционального моделирования применяется специальный командный язык. Фрагмент описания тестового воздействия на моделируемый модуль представлен на рисунке 5.
Для модуля проекта описанного на языке VHDL для функционального моделирования создается тестовый файл на VHDL. Тестовый файл иерархически включает модуль проекта как компонент и формирует тестовую диаграмму на его входах. Фрагмент тестового файла на языке VHDL представлен на рисунке 6.

Рис.4


Рис.5


Рис.6

Моделирование модулей проекта производится при помощи программы- симулятора, согласно описанию в командном файле или тестовом файле на языке VHDL. При этом состояния выбранных входных, внутренних и выходных сигналов тестируемого модуля выводятся на экран монитора. Выбор сигналов в программе моделирования Speed Wave для вывода в окно результата моделирования показан на рис. 7. На рис. 8 показана диаграмма результата моделирования.

Рис.7



Рис.8

После этапов создания и моделирования модулей проекта выполняется третий этап – реализация проекта. Сначала формируется список связей проекта. Список связей содержит названия элементов, их интерфейс, связи между элементами и атрибуты. Для VHDL проекта перед получением списка связей выполняются компиляция и оптимизация. Процесс компиляции и оптимизации VHDL-кода называется синтезом, а программы, выполняющие эти функции, - синтезаторами. Интерфейс программы-синтезатора представлен на рисунке 9.

Рис.9

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

Рис.10

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

Рис.11

Полученный список связи является входным файлом программы размещения элементов в КЛБ и трассировки связей между ними (см. рис.12).

Рис.12

Кроме файла списка связей трассировщику можно задать параметры проекта и выполнить «тонкую настройку» проекта (см. рис. 13).

Рис.13

После выполнения необходимых установок выполняются четыре фазы работы программы трассировки (см. рис.14): - проверка и трансляция списка связей; - размещение элементов проекта в виртуальных КЛБ; - замена виртуальных КЛБ реальными и трассировка каналов соединений; - создание файла конфигурации (bit stream)

Рис.14

После этапа размещения элементов проекта в виртуальных КЛБ при помощи специального графического редактора Floor Planner существует возможность «ручного» размещения логики ПЛИС (см. рис.15).

Рис.15

Существует возможность просмотра топологии ПЛИС и «ручной» трассировки при помощи специального редактора FPGA Editor (см. рис.16 и 17).

Рис.16



Рис.17

Данный редактор позволяет разместить и «развести» критичные компоненты проекта перед автоматической трассировкой, а также изменить трассировку ПЛИС и конфигурацию отдельных КЛБ. После получения файла конфигурации (bit stream) программа формирует файлы-отчеты о результатах реализации проекта (см. рис.18 и 19).

Рис.18



Рис.19

Для проверки результата размещения и трассировки проекта необходимо провести временное моделирование. На рис.20 показано окно программы View Trace в режиме временного моделирования.

Рис.20

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

Вадим Владимирович Ходырев,
ведущий инженер,
ОАО "НИИ ТМ"
195256, Россия, Санкт-Петербург,
пр. Непокоренных, д. 47,
т. +7-(812)-535-1940
ф. +7-(812)-535-4729
email: Xodyrev@niitm.spb.ru



Полное или частичное воспроизведение любых материалов, содержащихся на этом сайте, допускается только с письменного разрешения администрации. Авторские права на опубликованные на сайте материалы принадлежат их владельцам.
Замечания? Предложения? "Мертвые" ссылки? Проблемы с загрузкой страниц? Пишите вебмастеру или в гостевую книгу
Designed by Эfir studio | © 2002-03 Yuri Lysenkov