В КОПИЛКЕ
Собрание чего-нибудь занимательного, ценного
                                                                                                                                                                             

Применение ПЛИС в цифровой схемотехнике

Отражением этой тенденции в составе элементной базы цифровой схемотехники явился переход от интегральных микросхем (ИМС) малой и средней степени интеграции к большим (БИС) и сверхбольшим (СБИС) интегральным микросхемам.

 

Одним из наиболее революционных результатов развития микроэлектроники явилось создание в начале 70-х годов первых микропроцессоров, что дало мощный толчок к внедрению цифровых технологий обработки информации во всех сферах человеческой деятельности.

 

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

 

Это обеспечивается одним из трех способов:

Использованием наборов стандартной дискретной цифровой логики общего применения, например, наборов логических микросхем 74-й серии (ТТЛ, КМОП) и типовых периферийных БИС.

Использованием заказных СБИС.

Использованием программируемых логических интегральных схем (ПЛИС).

 

Дискретная цифровая логика

 

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

 

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

 

Заказные СБИС

 

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

 

ПЛИСы нам помогут

 

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

 

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

 

А технологический прорыв характеризуется резким увеличением числа эквивалентных логических вентилей, размещаемых на одном кристалле (до 10 млн. вентилей в ближайшей перспективе), повышением рабочей частоты (до 400 МГц) с резким одновременным снижением как удельной, так и абсолютной стоимости. Так, по данным, приведенным в работе [1] стоимость ПЛИС емкостью 100000 вентилей за период с 1998 до начала 2000 года снизилась с 1500...3000 до 100..350 USD и эта тенденция устойчива. Так, в работе [2] отмечается, что программируемая логика по темпам развития начала опережать другие направления цифровой электроники. Например, один из мировых лидеров по производству ПЛИС фирма Xilinx, в I кв. 2000 г. увеличила объем продаж на 66% по сравнению с I кв. 1999 г. При этом стоимость ПЛИС объемом до нескольких тысяч вентилей на украинском рынке, представленном целым рядом фирм-поставщиков электронных компонентов, составляет единицы у. е.

Основными фирмами-производителями ПЛИС в настоящее время являются такие фирмы, как Altera, Atmel, Csypres, Lattice, Lucent, Xilinx.


Типы ПЛИС

 

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

 

К первой относятся устройства, в которых требуемая структура устройства создается программированием связей коммутирующих матриц с использованием технологий перепрограммируемых постоянных запоминающих устройств, в том числе и с электрическим стиранием. Такие устройства называются многократно программируемыми ПЛИС или EPLD (EPROM technology based complex Programmable Logic Devices) или CPLD (Complex Programmable Logic Devices). К этому классу относятся, например, ПЛИС семейства MAX5000, MAX7000 фирмы Altera, ПЛИС XC7000 и XC9500 фирмы Xilinx, а также большое число микросхем других производителей. Особенность этих устройств заключается в том, что сформированная структура является энергонезависимой, то есть, сохраняется при выключении питания, а для изменения структуры необходимо выполнить операции стирания (очистки) EPROM и программирования (записи) новой структуры.

 

В устройствах второй группы требуемые связи коммутирующих матриц обеспечиваются логическими ключами, которые управляются битовой последовательностью, записываемой во внутреннее статическое ОЗУ при конфигурировании ПЛИС, поэтому устройства этого класса получили название многократно реконфигурируемых или FPGA (Field Programmable Gate Array). К этому классу относятся ПЛИС XC2000, XC3000, XC4000, Spartan, Virtex фирмы Xilinx, семейства FLEX6000, FLEX8000 фирмы Altera и некоторые ПЛИС других фирм. Особенностью устройств этого класса является то, что требуемая структура целевого устройства должна восстанавливаться (записываться во внутреннее статическое ОЗУ) после каждого включения питания, что требует принятия дополнительных мер по сохранению и восстановлению требуемой конфигурации. Такая особенность, на первый взгляд, может показаться недостатком ПЛИС FPGA. На самом деле она является их важным достоинством, так как позволяет создавать адаптивные системы с динамически изменяющейся во времени структурой. То есть, в разные моменты времени использовать один и тот же кристалл для реализации различных цифровых устройств, которые наилучшим образом соответствуют изменяющимся во времени внешним условиям (например, обеспечивать работу сотового телефона в сетях с различными стандартами в зависимости от доступности той или иной сети в данный момент времени).

 

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

 

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

 

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

Есть ли смысл и сколько это стоит?

 

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

 

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

 

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

 

Эффективность применения стандартной логики, заказных СБИС и ПЛИС

 

 

– при одинаковом числе логических элементов в проекте стоимость суммарного числа стандартных микросхем больше, чем стоимость ПЛИС, а преимущество в стоимости заказных СБИС проявляется только при очень большом объеме производства идентичных микросхем.

 

ПО для создания изделий на ПЛИС

 

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

 

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

 

Например, для разработки цифровых устройств на ПЛИС фирмы Altera используется интегрированная среда разработки цифровых устройств, коммерческая версия которой называется MAX+PLUS II. В то же время фирма Altera предоставляет две бесплатные версии этого пакета под названиями: E+MAX и MAX+PLUS II BASELINE. В настоящее время доступны последние версии этих пакетов E+MAX V.10.0 и MAX+PLUS II BASELINE V.10.0. Функциональные возможности, как основной коммерческой версии, так и обеих бесплатных версий абсолютно одинаковы. Различие между ними заключается только в числе типов поддерживаемых устройств. Естественно, что основная версия поддерживает весь спектр ПЛИС, выпускаемых фирмой (за исключением самой последней разработки фирмы - ПЛИС APEX20K, которая поддерживается только новым пакетом QUARTUS).

 

Перечень типов ПЛИС, поддерживаемых бесплатными версиями пакета MAX+PLUS II приведен в табл. 2.

 

Типы ПЛИС, поддерживаемые бесплатными версиями пакета MAX+PLUS II

 


Основные характеристики современных ПЛИС, которые поддерживаются бесплатными пакетами фирмы Altera, приведены в табл. 3.

 

Характеристики современных ПЛИС, которые поддерживаются бесплатными пакетами фирмы Altera

 

 

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

 

Все пакеты интегрированной среды разработки цифровых устройств на ПЛИС фирмы «Altera» имеют следующие общесистемные свойства:

  • Обеспечивают полный производственный цикл выпуска готовых цифровых устройств на ПЛИС, включающий:
  • разработку проекта устройства (задание требуемой логики функционирования устройства);
  • проверку корректности проекта и локализацию ошибок;
  • синтез внутренней структуры устройства с минимизацией требуемых ресурсов;
  • компиляцию проекта (создание файла для программирования или конфигурирования ПЛИС);
  • моделирование процесса функционирования устройства, временной анализ и, наконец, программирование (конфигурирование) ПЛИС.
  • Имеют развитые и удобные в пользовании средства разработки проектов, в состав которых входят:
  • Редактор Схем (Graphic Editor), несколько похожий на редакторы САПР печатных плат (ORCAD, PCAD), но гораздо более удобный в работе;
  • Редактор Временных Диаграмм (Waveform Editor);
  • Текстовый Редактор проектов на языке AHDL (Text Editor), самое мощное, но и самое сложное средство создания проектов.

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

  • Имеют большую библиотеку элементов различного вида (логических примитивов, аналогов дискретной логики 74-й серии, параметризированных логических функций), позволяющих создавать проекты цифровых устройств любой сложности.
  • Позволяют создавать проекты в виде многоуровневой иерархии вложенных функциональных модулей и создавать с помощью различных редакторов собственные библиотеки модулей, которые могут использоваться в различных проектах.
  • Обеспечивают оптимальный синтез и минимизацию используемых для реализации проекта ресурсов микросхем.
  • Обеспечивают проверку и локализацию ошибок при создании исходного проекта и при его компиляции. При этом учитываются формальные и эмпирические правила проектирования цифровых устройств и достаточность имеющихся ресурсов. Работоспособность успешно скомпилированного проекта гарантируется (кроме ошибок при задании разработчиком алгоритма функционирования устройства).
  • Имеют возможность автоматического выбора наиболее подходящей микросхемы требуемого объема или распределения проекта между несколькими микросхемами малого объема.
  • Обеспечивают возможность закрепления назначенных компилятором выводов микросхем для постоянной привязки к внешним компонентам целевого устройства или переназначения выводов.
  • Имеют встроенные средства функционального и временного моделирования, обеспечивающие быструю верификацию и отладку проектов.
  • Обеспечивают программирование и перепрограммирование микросхем, имеющих встроенную систему программирования, непосредственно в составе конечного изделия через специальный кабель, подключаемый либо к LPT-порту (Byte Blaster), либо к COM-порту (Bit Blaster) компьютера и технологического 10 контактного соединителя, устанавливаемого на плате изделия. Схемы кабелей можно найти на сайте фирмы Altera в разделе Development Tools. Кстати, если на плате изделия устанавливается несколько ПЛИС со встроенными системами программирования, то все они могут программироваться через один технологический разъем. Для программирования остальных микросхем необходимо дополнительно использовать внешний программатор, который также может подключаться к COM- или LPT-порту.

 

Все пакеты имеют одинаковый, стандартный для Windows–приложений интерфейс пользователя. Вид рабочего окна с фрагментами проекта практической схемы сканирования матричной клавиатуры, созданного с использованием Редактора Схем и модуля декодера 2х4, созданного в Редакторе Временных Диаграмм, показан на рисунке.

 


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

 

В единстве — сила

До недавнего времени микропроцессоры и ПЛИС представляли собой два независимых направления в цифровой микроэлектронике. Насущные потребности в дальнейшем повышении степени интеграции привели к разработке СБИС класса SOC (Sistems On Chip) т. е. «систем на кристалле».

Сущность такого подхода заключается в слиянии двух путей развития сложных универсальных микросхем (микропроцессоров и ПЛИС) в единое целое размещением на одном кристалле, связанных между собой, микропроцессорного ядра и массива вентилей ПЛИС. Пионером в создании подобных устройств явилась фирма Atmel, которая в октябре 1999 г. выпустила первое семейство СБИС FPSLIC (Field Programmable System Level Integration Circuits), что можно перевести как Программируемые Схемы Системного Уровня Интеграции.

Типовая микросхема FPSLIC фирмы Atmel содержит скоростное процессорное ядро AVR RISC с производительностью свыше 30 MIPS, массив FPGA объемом до 4000 эквивалентных логических вентилей, 10K x 16 программной памяти, 4K x 8 оперативной памяти, а также набор фиксированных периферийных устройств (два последовательных порта, три таймера-счетчика, интерфейс I2C, два параллельных порта). В состав семейства пока входят три микросхемы типа AT94K10, AT94K20, AT94K40 с объемом FPGA в 1000, 2000 и 4000 вентилей, соответственно [3]. В силу очевидных достоинств микросхем этого класса можно предположить, что СБИС класса SOC в ближайшее время будут интенсивно развиваться и получат широкое применение в цифровой схемотехнике.

 

Где и как взять ПО?

 

Пакеты E+MAX V.10.0 и MAX+PLUS II BASELINE V.10.0. можно загрузить, войдя в раздел Development Tools/Free Software домашней странички фирмы Altera (http://www.altera.com), или прямо по адресу: http://www.altera.com/html/tools/emax_baseline.html. Загрузка разрешается после ввода вашего адреса электронной почты, который будет необходим в дальнейшем для получения файла лицензии. Самораспаковывающийся файл пакета E+MAX имеет объем около 20 Мб, а файл пакета MAX+PLUS II BASELINE более 45 Мб.

 

После запуска EXE-файла осуществляется инсталляция пакета в обычном для Windows-приложений порядке. Загрузка и инсталляция пакета может осуществляться как на платформе IBM PC, так и на платформах SUN, RISC/6000 и HP9000. Одним из достоинств этих пакетов является то, что для успешной инсталляции и работы они требуют весьма небольших по нынешним меркам ресурсов, достаточно иметь Pentium 100, 16 Мб ОЗУ и 150...400 свободного дискового пространства на HDD. Отмечу, что на практике пакеты удовлетворительно работают и на 486 платформе с процессором 5х86AMD и 16 Мб ОЗУ.

 

При запуске пакета непосредственно после инсталляции открывается основное рабочее окно, однако, из всех пунктов меню Менеджера проектов (подменю MAX+plus II основного меню) доступной оказывается только опция создания и редактирования проекта в текстовом виде с использованием языка описания цифровых устройств AHDL, который является достаточно полным подмножеством стандартного языка VHDL (Very high speed integrated circuits Hardware Description Language).

 

Для того чтобы получить доступ ко всем функциям пакета в полном объеме, необходимо запросить, получить по электронной почте и инсталлировать файл лицензии license.dat на тот пакет, который вы загрузили и инсталлировали. Для отправки запроса необходимо войти в раздел Development Tools / Software Licensing домашней странички фирмы Altera, выбрать лицензию, которую вы хотите получить, и заполнить стандартную форму с указанием (помимо других сведений) серийного номера тома вашего винчестера, на котором инсталлирован пакет. Этот номер можно получить в режиме эмуляции DOS, введя в командной строке команды dir/p. Фирма Altera гарантирует получение вами файла лицензии в течение не более 12 ч с момента отправки запроса.

 

Для инсталляции файла лицензии необходимо запустить пакет, открыть подменю Options основного меню, выбрать пункт License Setup, указать в открывшемся диалоговом окне путь к файлу license.dat и нажать кнопку OK. После этого вам станут доступны все многообразные функции пакета, обеспечивающие быструю и качественную реализацию вашей идеи на самом современном схемотехническом уровне.

 

Заключение

 

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


Владимир Поречный

Начальник исследовательского отдела сервисного Центра фирмы «ЕПОС»,

канд.техн.наук, доцент,

e-mail: support@eposmail.kiev.ua

 

Литература

 

Стешенко В. Б. ПЛИС фирмы ALTERA: проектирование устройств обработки сигналов.– М.: ДОДЭКА, 2000.

 

Программируемая логика //Электронные компоненты и системы.– 2000.– № 9.– С. 12.

 

Кривченко И. Системная интеграция в электронике – FPSLIC //Chip News. 2000.– № 4.– С. 62–64.


              2004.04.07       Автор: Владимир Поречный


Copyright © 2007-2008 by Aleksei L
Hosted by uCoz