Заказные микросхемы ASIC позволяют реализовывать аппаратные средства компьютерных систем, ориентированные на решение задач разработчика. Но увеличение сроков проектирования на основе таких микросхем и рост затрат на проектирование и внедрение в производство не удовлетворяют разработчиков. Поэтому интерес представляют альтернатива ASIC – ПЛИС, которые поступают к разработчику или пользователю в незапрограммированном состоянии, благодаря чему разработчик может сам реализовать на них требуемую архитектуру.
Заказные микросхемы ASIC позволяют реализовывать аппаратные средства компьютерных систем, ориентированные на решение задач разработчика. Но увеличение сроков проектирования на основе таких микросхем и рост затрат на проектирование и внедрение в производство не удовлетворяют разработчиков. Поэтому интерес представляют альтернатива ASIC – ПЛИС, которые поступают к разработчику или пользователю в незапрограммированном состоянии, благодаря чему разработчик может сам реализовать на них требуемую архитектуру.
Программируемые логические интегральные схемы (ПЛИС) по сравнению с ASIC имеют следующие преимущества: малые затраты на разработку, возможность многократного перепрограммирования и оперативной корректировки проекта и более простой процесс тестирования и отладки изделия. Системы на кристалле, реализованные на ПЛИС, – это перспективная элементная база для широкой номенклатуры мало- и среднесерийных изделий. К классу ПЛИС относятся микросхемы CPLD (Complex programmable Logic Devices) и FPGA (Field Programmable Gate Array). Схемы программируемой логики и их производители ПЛИС/CPLD содержат относительно крупные программируемые логические блоки – макроячейки, соединенные с внешними выводами и внутренними шинами. Функциональность ПЛИС/CPLD кодируется в энергонезависимой памяти, поэтому при включении схемы перепрограммировать ее не надо. Схема может применяться для расширения числа входов/выходов или для предобработки сигналов (например, контроллер COM-порта, USB, VGA). ПЛИС/FPGA содержат блоки умножения-суммирования, а также логические элементы (как правило, на базе таблиц перекодировки – таблиц истинности) и блоки их коммутации. Программа для FPGA хранится в распределенной памяти, которая может быть выполнена на основе энергонезависимых ячеек флеш-памяти или перемычек (antifuse), в этих случаях при отключении электропитания программа сохраняется. Она (память) может быть выполнена и на основе энергозависимых ячеек статического ОЗУ (СОЗУ) – тогда при отключении электропитания микросхемы программа не сохраняется и при каждом включении питания необходимо заново конфигурировать микросхему при помощи начального загрузчика, который может быть встроен и в саму схему FPGA.
Основные компании-производители программируемой логики: Actel (Маунтин-Вью, Калифорния) – практически единственный производитель серийных ПЛИС со встроенным ППЗУ. В ноябре 2010 года компания Actel вошла в состав корпорации Microsemi и теперь известна как подразделение "Системы на кристалле" корпорации Microsemi (Microsemi SoC Products Group); Altera (Сан-Хосе, Калифорния) – один из крупнейших разработчиков ПЛИС, основана в 1983 году. Не имеет собственных производственных мощностей, поэтому в основном занимается разработкой схем и модулей (языки описания аппаратуры – VHDL, Verilog и собственный AHDL); Atmel Corporation (Сан-Хосе, Калифорния) – основана в 1984 году, широко известна как изготовитель полупроводниковых электронных компонентов и один из лидеров производства микроконтроллеров. Также разрабатывает и производит ПЛИС и небольшие модули энергонезависимой памяти для электронных изделий; Lattice Semiconductor Corporation (штат Орегона) выпускает высокопроизводительные ПЛИС; Xilinx (Сан-Хосе, Калифорния) – основной разработчик и производитель ПЛИС, основана в 1984 году. По данным самой компании, доля производимых ею ПЛИС на мировом рынке составляет 51%. ПЛИС, выпускаемые этими компаниями, отличаются друг от друга по архитектуре построения внутренних программируемых комбинационных схем, способом загрузки программирования, емкостью логических элементов, числом эквивалентных вентилей, технологией изготовления кристаллов и типами корпусов. Проектирование ПЛИС на кристалле производится с помощью программаторов или загрузочных адаптеров, которые позволяют посредством параллельного (LPT) порта компьютера конфигурировать и программировать различные типы логических матриц ПЛИС. Логические матрицы ПЛИС компаний Xilinx и Altera программируются и конфигурируются стандартными оригинальными загрузчиками Parallel Download Cable и Byte Blacter MV, или Byte Blaster 2. Кроме того, ПЛИС группы FPGA программируются загрузочными ПЗУ, для чего хорошо подходят ПЗУ серии AT17 фирмы Atmel. Рассмотрим подробнее продукцию, выпускаемую компаниями Actel и Atmel. ПЛИС компании Actel ПЛИС компании делятся на три большие группы: с однократно программируемой памятью (ОППЗУ, antifuse); с электрически стираемой памятью (флеш, ЭППЗУ); с ОППЗУ и повышенной радиационной стойкостью. Компания Actel предоставляет несколько версий интегрированной среды разработки встроенного программного обеспечения Libero IDE. Она объединяет новейшие средства для создания дизайна в графическом и текстовом редакторах, его оптимизации, физической реализации, тестирования и программирования ПЛИС. Помимо программных выпускаются аппаратные средства программирования и верификации: программатор Silicon Sculptor 3 для всех семейств ПЛИС Actel, программаторы FlashPro, FlashProLite и FlashPro3 для ISP-программирования флеш-ПЛИС Actel и 18-канальный логический анализатор Silicon Explorer II. В отличие от большинства производителей, которые при изготовлении больших многократно программируемых интегральных схем используют технологию SRAM (СОЗУ), компания Actel применяет флеш-технологию. Схемы, изготовленные по этой технологии, высоконадежны и могут работать в жестких условиях эксплуатации. Для однократно программируемых ПЛИС Actel использует технологию Antifuse (восстановление перемычек за счет перехода кремния из аморфного состояния с низкой проводимостью в кристаллическое с высокой проводимостью). В отличие от технологии "пережигания перемычек" технология Antifuse имеет большое преимущество – однажды запрограммированная перемычка никогда не изменит своего состояния. Основное отличие ПЛИС компании Actel, изготовленных по технологиям флеш и Antifuse, от СОЗУ-ПЛИС других производителей заключается в том, что конфигурация хранится непосредственно внутри элементарной ячейки ПЛИС, в КМОП-транзисторе с плавающим затвором или в перемычке. Отсюда и основные преимущества таких микросхем – нет необходимости переносить информацию о прошивке из внешнего энергонезависимого ПЗУ и, следовательно, при загрузке конфигурации нет задержки по времени между подачей питания и переходом микросхем в рабочее состояние. Кроме того, полностью исключена возможность считывания прошивки сторонними разработчиками (например, в целях хищения интеллектуальной собственности). Основной недостаток СОЗУ-ПЛИС – бросок тока (current surge) при включении питания, который вызван тем, что СОЗУ-триггеры находятся в неопределенном состоянии и необходимо некоторое время для перехода их в стабильное состояние. По величине этот бросок тока часто более чем в десять раз превышает энергопотребление СОЗУ-ПЛИС в статическом режиме, поэтому требуется увеличить мощность источника питания и площадь, занимаемую схемами на плате. Если же за основу ПЛИС брать элементарную ячейку флеш-памяти, в которую входят всего два транзистора с объединенным затвором, то площадь, занимаемая такой ячейкой на кристалле, примерно в семь раз меньше площади, занимаемой СОЗУ-ячейкой. За счет этого и величина тока потребления во флеш-ПЛИС меньше. Поскольку фирма Actel производит флеш-ПЛИС на протяжении многих лет и основные усилия ее разработчиков направлены на совершенствование технологии, она добилaсь заметных успехов в изготовлении ПЛИС с низким энергопотреблением по сравнению с другими фирмами (табл.1). Actel предлагает четыре семейства флеш-ПЛИС: ProASICPLUS, ProASIC3/E, IGLOO/E и Fusion. Их основные характеристики: внутренняя частота – до 350 МГц; количество вентилей – от 30 тыс. до 3 млн.; возможность внутрисхемного программирования; коммерческое, промышленное, военное и MIL-STD-883B исполнение; наличие встроенной энергонезависимой памяти; корпуса PQFP, TQFP, FBGA, BGA, CQFP, CCGA, QFN, CS, VQFP. Радиационно-стойкие ПЛИС семейств RTAX-S и RTSX-S/SL изготавливаются по Antifuse-технологии и предназначены для космической отрасли. Они практически полностью защищены от воздействия высокоэнергетических частиц (свыше 117 МэВ/см2) и обладают высокой радиационной стойкостью (допустимая накопленная доза – свыше 300 крад). ПЛИС компании Atmel Компания выпускает практически весь спектр программируемых логических схем малой (SPLD, Simple Programmable Logic Devices) и повышенной (CPLD, Complex Programmable Logic Devices) степеней интеграции. ПЛИС/SPLD включают семейства ATF16V8, ATF20V8 и ATF22V10, соответствующие промышленным стандартам. Они отличаются пониженным в 2–4 раза энергопотреблением. ATF16V8, содержащие восемь триггеров-защелок (FF-fli p-flops), могут эмулировать более 20 типов стандартных микросхем PAL (программируемой логики). Они поддерживают три различных режима: регистровый, комплексный и стандартный. В регистровом режиме макроэлемент может быть сконфигурирован как триггерный или комбинационный. ATF16V8 эмулирует следующие стандартные микросхемы – 16R8, 16RP8, 16R6, 16RP6, 16R4, 16RP4. В комплексном режиме возможна эмуляция микросхем 16L8, 16H8 и 16P8, а в стандартном режиме – 12 типов простых PAL, в которых отсутствует опция "разрешение выхода". Нужный режим выбирается при программировании кристалла. Схемы семейства ATF16V8 имеют различные модификации. Наиболее популярна модификация BQL, характеризующаяся величиной тока потребления 20 мА в активном режиме и 5 мА – в режиме ожидания. Микросхемы ATF16V8 выпускаются в 20-выводных корпусах типов DIP(P), SOIC(S), TSSOP(X) и PLCC(J), имеют коммерческий (от 0 до 70˚C) и промышленный (от -40 до 85˚C) температурные диапазоны. ATF20V8 также как и ATF16V8 построены на стандартных макроэлементах и поддерживают регистровый, комплексный и стандартный режимы конфигурации, однако они имеют большее количество входов/выходов и выпускаются в 24-выводных корпусах типов DIP, SOIC, TSSOP и 28-выводном PLCC-корпусе. ATF22V10 – наиболее широко применяемые микросхемы класса SPLD. Они содержат 10 макроэлементов, 12 входов и 10 входов/выходов. Основные характеристики микросхем ПЛИС/SPLD приведены в табл.2. Хотя микросхемы ПЛИС/SPLD фирмы Atmel и отличаются сравнительно малым энергопотреблением, но в ряде случаев необходимо снизить потребляемую мощность до возможного минимума. Для этого в микросхемы с индексом "C" добавлена функция – принудительное "усыпление", используется вывод PD (Power Down), совмещенный с одним из логических входов микросхемы. В режиме "сна" микросхема потребляет не более 10 мкА, что позволяет применять ее даже в приборах на батарейном питании. При этом состояния входов/выходов и внутренних регистров запоминаются, и после "пробуждения" микросхема продолжает функционировать в обычном режиме. При подаче напряжения питания регистры микросхемы находятся в предопределенном состоянии, которое задается при прошивке микросхемы. Все микросхемы ПЛИС/SPLD фирмы Atmel сохраняют свою конфигурацию в памяти типа EEPROM, их можно перепрограммировать до 100 раз внешним программатором. Время сохранения данных – не менее 20 лет. При программировании можно активизировать бит защиты, запрещающий несанкционированное копирование микросхемы. Все микросхемы ПЛИС/SPLD работают в коммерческом и промышленном диапазонах температур. В серии ATF22V10 есть также микросхемы в военном исполнении. ПЛИС/CPLD. К микросхемам повышенной степени интеграции относятся схемы серий ATF15xxAS(L) и ATF15xxSS(L). Под "хх" подразумевается количество логических блоков в микросхеме, которое может быть от 2 до 32. В свою очередь, логический блок – это 16 макроэлементов, связанных сигналами каскадирования. По мощности макроэлемент серии ATF15xxAS(L) превосходит макроэлемент, используемый фирмой Altera в семействе EPM7000S. В макроэлементе фирмы Atmel предусмотрено большее количество соединений с глобальной матрицей разводки (т.е. к ней подключены все входы и сигналы обратной связи макроэлемента) в отличие от макроэлемента фирмы Altera, где между матрицей и макроэлементом размещен входной мультиплексор. Архитектурное решение компании Atmel обеспечивает лучшую разводку кристалла, особенно если перед разводкой назначение выводов микросхемы предопределено и программа-разводчик не может их изменить. ATF15xxAS(L) имеют несколько режимов энергосбережения. Если на входах отсутствует изменение сигналов, они аппаратно переводятся в режим минимального потребления. В результате снижается потребляемая микросхемой мощность в режиме ожидания и пропорционально уменьшается потребляемый ток при частоте входных сигналов менее 5 МГц. Для дальнейшего снижения мощности можно активизировать "энергосберегающий бит" (Reduced-power bit), что позволяет перевести любой макроэлемент в режим минимального потребления. ATF15xxAS(L) имеют электрически перепрограммируемое ПЗУ конфигурации, допускающее 10000 циклов перезаписи. Как и в микросхемах SPLD, здесь есть бит защиты и память для хранения версии прошивки. CPLD можно запрограммировать как стандартным внешним программатором, так и непосредственно в системе, т.е. можно производить замену версии конфигурации микросхемы уже в готовом устройстве после распайки выводов на печатную плату. Также можно отказаться от панелей для установки микросхем, что повышает надежность устройства. Для программирования используется стандартный интерфейс JTAG и не требуется отдельного источника питания. ATF15xxSS(L) изготавливаются по 0,35-мкм технологии (табл.3), имеют низкое энергопотребление, работают в коммерческом и промышленном диапазонах температур. Средства программирования ПЛИС фирмы Atmel программируются различными способами. Учитывая функциональную совместимость с ПЛИС фирмы Altera, можно использовать известный пакет MAX+PLUS II. В среде этого пакета создается схема и производится компиляция. Выходной файл с расширением .pof конвертируется в файл .jed, который и загружается в микросхему PLD. Эту операцию выполняет распространяемая бесплатно утилита pof2jed.exe. Следует учесть, что САПР MAX+PLUS II не позволяет использовать расширенные возможности микросхем компании Atmel, и поэтому она предлагает свои два специализированных программных продукта Atmel-WinCupl и Atmel- Synario. Atmel-WinCupl представляет собой усеченную версию пакета WinCupl, разработанного фирмой Logical Devices. Atmel-WinCupl функционирует в среде Win95/98/NT и поддерживает все микросхемы SPLD и CPLD, выпускаемые фирмой Atmel. Демо-версия этого пакета с ограниченным количеством компиляций распространяется бесплатно. Бесплатную версию пакета без ограничения числа компиляций можно заказать через российских дистрибьюторов фирмы Atmel. Atmel-WinCupl позволяет провести все фазы проекта – ввод описания проекта в текстовом виде на языке Cupl (синтаксис языка близок к языку ABEL), компиляцию проекта (на выходе формируется стандартный файл JEDEC), а также временную симуляцию (в графическом виде). Этот пакет удобен для разработки небольших проектов на микросхемах PLD фирмы Atmel. Литература Карпов С. Actel:новые технологии, передовые решения. – Электроника: НТБ, 2007, №7, с.78–79 Карпов С. ПЛИС корпорации Actel для портативных систем. СемействоIGLOO/E. Электроника: НТБ, 2007, №8, с.67–69. Майская В. ПЛИСы всякие нужны, ПЛИСы всякие важны. – Электроника: НТБ, 2005, №3, с.6–12. Тарасов И. FPGA SPARTAN-3E фирмы Xilinx. Новые перспективы. – Электроника: НТБ, 2006, №3, с.14–18. Филатов А. Становление нового сегмента рынка FPGA. Экономичные системные решения на FPGA. – Электроника: НТБ, 2006, №3, с.20–23. Тарасов И. ПЛИС Xilinx и цифровая обработка сигналов. Особенности, преимущества, перспективы. – Электроника: НТБ, 2011, №3, с.70–74. Королев Н. Программируемая логика – взгляд со стороны Atmel. – Chip News, 2008, №7.