ПЛИС — высокоинтегрированные гибкие универсальные устройства с мощной логикой, памятью и внутрисистемным репрограммированием. Расширение сферы применения ПЛИС определяется растущим спросом на устройства с быстрой перестройкой выполняемых функций, сокращением проектно-технологического цикла новых или модифицируемых изделий, наличием режимов изменения внутренней структуры в реальном масштабе времени, повышением быстродействия, снижением потребляемой мощности, разработкой оптимизированных сочетаний с микропроцессорами и сигнальными процессорами(DSP), а также снижением цен на эти устройства.
По принципу формирования требуемой структуры целевого цифрового устройства ПЛИС относят к двум группам. CPLD (Complex Programmable Logic Device) — комплексные программируемые логические устройства, энергонезависимые и с некоторым ограничением допустимого числа перезаписи содержимого. FPGA (Field Programmable Gate Array) — программируемые пользователем вентильные матрицы, не имеющие ограничений по числу перезаписей. В цифровой обработке сигналов (ЦОС) ПЛИС по сравнению с DSP имеют такие преимущества, как возможность организации параллельной обработки данных, масштабирование полосы пропускания, расширяемость устройства.
Xilinx, Altera, Actel, Atmel, и другие компании активно создают ПЛИС, отличающиеся наличием новых функций и способствующих дальнейшему расширению сферы их применения.
Некоторые сферы применений ПЛИС:
  • Коммуникации и сети (поддержка дуплексного режима 1 Гбит Ethernet; поддержка режима 10/100 Мбит Ethernet; декодер Рида-Соломона для цифрового TV, кабельных модемов, беспроводных сетей).
  • ЦОС (преобразования Фурье; регистр сдвига с линейной обратной связью для исправления ошибок в системах передачи данных).
  • Математические функции (сумматор, вычитатель; делитель в режиме с плавающей точкой для DSP-приложений).
  • Память и ее компоненты (ассоциативная память).
место fpga в цифровой радиосвязи
 В настоящее время можно выделить три основных класса ЦОС-устройств – универсальные процессоры (УП), сигнальные процессоры, или процессоры цифровой обработки сигнала (DSP), и устройства цифровой обработки сигнала на основе программируемых пользователем вентильных матриц (FPGA).
 Все чаще предпочтение перед специализированными ASIC-микросхемами отдается перспективным ЦОС-устройствам на основе FPGA с гибкой архитектурой, высоким уровнем параллелизма работы и достаточно высокой производительностью, особенно при разработке систем, выпускаемых малыми или средними сериями. Каждый класс устройств цифровой обработки сигнала имеет свои достоинства и недостатки, которые могут серьезно влиять на работу системы, построенной на их основе.
 В последнее время ведется оживленная полемика относительно конструктивно-технологических решений старших моделей ЦОС-устройств, в том числе военного назначения. Следует отметить, что цифровая обработка сигнала – это не одна прикладная задача, а комплекс взаимосвязанных задач, которые в обобщенном виде можно охарактеризовать как задачи предварительной и окончательной обработки сигнала. Искусство разработчика заключается в правильном выборе ЦОС-устройства для конкретного применения на основе традиционных критериев. Он должен учитывать не только производительность, но и множество других параметров, характеризующих работу процессора.
Так, FPGA не могут выполнять операции с плавающей запятой, если ключевое требование задачи – точность. В тоже время средства радиотехнической и электронной разведки требуют проведения большого числа БПФ, обычно выполняемых с плавающей запятой, поскольку операции с фиксированной запятой ограничивают динамический диапазон получаемого решения, т.е. при создании этих устройств следует применять DSP. Кроме того, операцию обращения (или деления) матрицы также лучше выполнять с помощью DSP или УП. Следует учитывать и другие важные различия между DSP, УП и FPGA. Так, быстродействие DSP велико, но такой процессор может одновременно выполнять лишь несколько операций, тогда как FPGA способны выполнять одновременно практически неограниченное число операций, обеспечивая высокий параллелизм работы. Правда, их быстродействие, как правило, ниже, чем у DSP и УП. Таким образом, DSP и УП больше подходят для работы со сложными алгоритмами с плавающей запятой, а FPGA целесообразно применять в системах, работающих с фиксированной запятой и требующих высокого уровня параллелизма. Следовательно, только конкретное применение определяет преимущество одного типа ЦОС-процессора перед другим. Например, для формирования диаграммы направленности обычная или цифровая антенная система умножает принятые многочисленными антеннами сигналы на их весовые коэффициенты. И если быстродействующие FPGA – идеальное решение для выполнения операции умножения, динамическое вычисление весовых коэффициентов требует обращения матрицы, что значительно лучше реализует УП или специализированный DSP. Поэтому наиболее приемлемое решение задачи формирования диаграммы направленности, очевидно, заключается в реализации входного сопроцессора антенной системы на FPGA, а выходного блока сбора данных – на DSP или УП. Такое решение упрощает архитектуру системы, облегчает ее дальнейшее развитие, а также полезно при модернизации функциональных возможностей действующих систем. Немаловажное значение при выборе того или иного типа ЦОС-устройства для конкретного приложения имеет показатель "стоимость-производительность". Проведенное компанией Texas Instruments сравнение этого показателя для специализированных DSP собственной разработки и FPGA компании Altera, крупного поставщика таких микросхем, показало, что для приложений, не требующих производительности более 300 MMACS, оптимальное решение можно получить при использовании DSP. Для приложений с производительностью 300–1000 MMACS более предпочтительны FPGA (табл.1 ).
В данной статье для ознакомления с характеристиками современных и ходовых FPGA рассмотрим микросхемы фирмы Xilinx семейства Spartan 3.
Семейство Spartan-3
Выпуск семейства ПЛИС с архитектурой FPGA (Field-Programmable Gate Arrays) Spartan™-3 начат в апреле2003 г. Семейство специально разработано для использования в электронных устройствах, рассчитанных на большие тиражи и невысокую стоимость комплектующих.
Всего в семейство входит 8 кристаллов, отличающихся логической ёмкостью, при этом минимальный по ёмкости кристалл содержит 50 тыс. эквивалентных системных вентилей, а максимальный - 5 млн.
Основные особенности семейства Spartan-3:
• революционный технологический процесс: 90 нм SRAM КМОП;
• низкая стоимость, высокая производительность логики, ориентированная на применение в устройствах предназначенных для массового потребителя;
• ёмкость достигает 74 880 логических ячеек;
• системная тактовая частота до 326 МГц;
• 3 раздельных напряжения питания:
- ядра - 1,2 В;
- блоков ввода-вывода - от 1,2 до 3,3 В;
-  специальных функций - 2,5 В;
• технология SelectIO:
-  поддержка 17 сигнальных стандартов ввода-вывода;
Состав и основные характеристики семейства Spartan-3:
- 6 дифференциальных стандартов передачи сигналов, включая LVDS;
- передача данных со скоростью 622 Мбит/с по одному выводу входа/выхода;
- до 784 выводов входа/выхода;
- размах сигнала от 1,14 до 3,45 В;
- программируемый импеданс;
- поддержка передачи данных с удвоенной скоростью (DDR);
• логические ресурсы:
- гибкие логические ячейки с регистрами;
- мультиплексоры для реализации многовходовой функции;
- логика ускоренного переноса;
- встроенные блоки умножения, каждый блок 1818 бит;
- совместимость с JTAG IEEE 1149/1532 стандартами;
• технология SelectRAM:
- до 1 872 кбит блочной памяти;
- до 520 кбит общей распределённой памяти;
• модули управления синхронизацией (DCM):
- точная подстройка фронтов тактирующих сигналов;
- умножение, деление частоты;
- сдвиг фазы с высоким разрешением;
- защита от электромагнитных помех;
• полная поддержка в САПР ISE начиная с версии 6.1i.
 Для эффективного освоения возможностей и оценки преимуществ ПЛИС указанных семейств фирма Xilinx предлагает соответствующие стартовые инструментальные комплекты. Рассмотрим один из таких комплектов для первичного ознакомления с примерными возможностями данных плат.
Инструментальный комплект Spartan-3 Starter Kit:
Внешний вид инструментального модуля Spartan-3 Starter Board показан на рис. 1. Компоненты модуля смонтированы на печатной плате с двухсторонним размещением компонентов.
Структурная схема рассматриваемого модуля изображена на рис. 2. Основными элементами структуры модуля Spartan-3 Starter Board являются:
  • ПЛИС XC3S200 в корпусе FT256, на основе которой реализуется проектируемая система;
  • программируемое в системе ППЗУ серии Platform Flash XCF02S, предназначенное для хранения конфигурационных данных ПЛИС;
  • схема загрузки конфигурационных данных;
  • схема управления конфигурированием ПЛИС;
  • блок синхронизации, предназначенный для формирования внешних тактовых сигналов;
  • схема формирования питающих напряжений;
  • внешнее высокоскоростное ОЗУ;
  • блок светодиодных индикаторов;
  • четырехзначный дисплей, выполненный на основе 7-сегментных светодиодных индикаторов;
  • блок ползунковых переключателей;
  • блок кнопочных переключателей;
  • схема преобразования уровней сигналов интерфейса RS-232;
  • стандартные разъемы интерфейсов RS-232, PS/2 и VGA;
  • три 40-контактных разъема расширения.
Обшие характеристики САПР фирм Xilinx и Altera.
В данном разделе рассмотрим основные САПР выпускаемые фирмами Xilinx и Altera.
Кроме широкого спектра ПЛИС, фирма Xilinx предоставляет современное программное обеспечение, необходимое для разработки проектов и конфигурирования кристаллов. Применение программных средств ISE позволяет значительно сократить время разработки и повысить уровень эффективности результатов за счет применения усовершенствованных методов проектирования, алгоритмов синтеза, размещения и трассировки проекта в кристалле. Программные средства ISE представляют собой систему сквозного проектирования, которая реализует полный цикл разработки цифровых устройств на основе ПЛИС, включающий этапы создания исходных описаний проекта, синтеза, моделирования, размещения и трассировки, а также программирования кристалла.
Средства проектирования ISE выпускаются в нескольких конфигурациях: ISE Foundation™, ISE WebPACK™, ISE Classics. Основное отличие между этими конфигурациями заключается в количестве поддерживаемых кристаллов и наборе дополнительных инструментов проектирования.
Программные средства ISE Foundation представляют собой наиболее полную систему сквозного проектирования, которая поддерживает весь спектр ПЛИС, выпускаемых фирмой Xilinx.
Свободно распространяемая (бесплатная) модификация САПР ISE WebPACK поддерживает все кристаллы семейств CPLD и ПЛИС серий FPGA с логической емкостью не более 300 тыс. системных вентилей. Кроме того, одно из главных отличий пакета ISE WebPAC состоит в отсутствии генератора логических ядер CORE Generator и топологического редактора FPGA Editor.
Отличительные особенности пакета:
  • поддержка различных методов описания проектируемых устройств (графических и текстовых);
  • возможность использования проектов, подготовленных в других системах проектирования, в том числе в среде пакета Altera MAX+PlusII™;
  • наличие схемотехнического редактора, укомплектованного набором обширных библиотек;
  • интеллектуальные средства создания HDL (Hardware Description Language)-описаний, формирующие шаблоны на основании информации, предоставляемой пользователем, для языков описания аппаратуры VHDL, Verilog™ и ABEL™ HDL;
  • высокоэффективные средства синтеза HDL-проектов, поддерживающие языки VHDL, Verilog и ABEL HDL, с возможностью оптимизации;
  • развитые средства верификации проекта, позволяющие сократить полное время разработки устройства за счет обнаружения возможных ошибок на более ранних стадиях проектирования и сокращения длительности и количества возможных итераций;
  • автоматические средства трассировки проекта в кристаллы различных семейств ПЛИС Xilinx с учетом оптимизации проекта по различным параметрам;
  • средства программирования кристаллов семейств ПЛИС Xilinx, выполненных по различной технологии (CPLD и FPGA), поддерживающие несколько типов загрузочных кабелей JTAG-интерфейса;
  • удобный для разработчика пользовательский интерфейс и наличие в каждом модуле пакета справочной системы, сокращающие время освоения САПР;
  • наличие интегрированного с пакетом САПР набора инструментов и утилит других фирм, предоставляющих дополнительные удобства в процессе проектирования, включающего утилиту генерации тестовых сигналов HDL Bencher™, программу моделирования ModelSim XE Starter™ и редактор диаграмм состояний StateCAD™.
Пакет ISE Classics также распространяется свободно и является собранием ранее выпускавшихся версий средств отладки и в основном предназначен для работы с микросхемами, которые не поддерживаются последними версиями основных пакетов разработки.
Все конфигурации средств проектирования ISE имеют одинаковую структуру и пользовательский интерфейс. Поэтому переход от одной конфигурации САПР к другой, например, от свободно распространяемой системы проектирования ISE WebPACK, к полному пакету ISE Foundation, требует минимальных временных затрат.
При работе с микросхемами программируемой логики фирмы Altera основным инструментом является САПР MAX+PLUS II и Quartus II. Каждый САПР поддерживает все этапы проектирования: Ввод проекта, Компиляция, Верификация и Программирование. А так же фирма Altera предлагает бесплатные версии САПР MAX+PLUS II BASELINE и Quartus II Web Edition, которые поддерживают все этапы проектирования от ввода проекта до программирования. Ограничениями являются количество поддерживаемых микросхем и некоторые функции для Quartus II.
САПР MAX+PLUS II является более простым в освоении по сравнению с Quartus II. Эта система работает на РС платформе и рабочих станциях. САПР предоставляет разнообразные средства входного описания устройств, включая как стандартные языки VHDL и Verilog, так и схемное представление и  поддерживает семейства MAX, FLEX и ACEX. Этот САПР фирма Altera не развивает и рекомендует переходить на Quartus II.
Список используемой литературы:
  1. http://www.altera.ru/cgi-bin/go?19#n3
  2. http://www.kit-e.ru/articles/cad/2005_7_200.php
  3. А.Беляев, Т.Солохина, к.т.н., В.Юдинцев. Современные устройства цифровой обработки сигналов. Вместе или врозь?
  4. http://www.kit-e.ru/articles/cad/2001_06_106.php
  5. http://www.kit-e.ru/articles/plis/2004_5_60.php