Из Википедии, бесплатной энциклопедии
  (Перенаправлено с FPGA )
Перейти к навигации Перейти к поиску

Stratix IV ПЛИС от Altera

Вентильная матрица, программируемая ( ПЛИС ) является интегральной схемой предназначены для конфигурирования пользователем или разработчиком после изготовления - отсюда термин « поле-программируемая ». Конфигурация FPGA обычно указывается с использованием языка описания оборудования (HDL), аналогичного тому, который используется для специализированных интегральных схем (ASIC). Принципиальные схемы ранее использовались для определения конфигурации, но это становится все реже из-за появления средств автоматизации электронного проектирования .

Спартанская ПЛИС от Xilinx

ПЛИС содержат массив программируемых логических блоков и иерархию «реконфигурируемых межсоединений», позволяющую «соединять вместе» блоки, как многие логические вентили, которые могут быть соединены между собой в различных конфигурациях. Логические блоки могут быть сконфигурированы для выполнения сложных комбинационных функций или просто простых логических вентилей, таких как AND и XOR . В большинстве ПЛИС логические блоки также включают в себя элементы памяти , которые могут быть простыми триггерами или более полными блоками памяти. [1] Многие ПЛИС можно перепрограммировать для реализации различных логических функций , [2]позволяя гибкие реконфигурируемые вычисления, выполняемые в компьютерном программном обеспечении . ПЛИС играют заметную роль в разработке встроенных систем благодаря их способности [3] запускать разработку системного программного обеспечения (SW) одновременно с аппаратным обеспечением (HW), позволять моделировать производительность системы на очень ранней стадии разработки и допускать различные разделы системы ( SW и HW) испытаний и итераций перед окончательной заморозкой архитектуры системы.

Технический дизайн [ править ]

Современные программируемые вентильные матрицы (ПЛИС) имеют большие ресурсы логических вентилей и блоков ОЗУ для реализации сложных цифровых вычислений. [2] Поскольку конструкции FPGA используют очень высокую скорость ввода-вывода и двунаправленные шины данных , становится сложной задачей проверить правильность синхронизации достоверных данных в пределах времени настройки и времени удержания.

Планирование этажа позволяет распределять ресурсы внутри ПЛИС, чтобы уложиться в эти временные ограничения. FPGA могут использоваться для реализации любой логической функции, которую может выполнять ASIC . Возможность обновления функциональности после отгрузки, частичная реконфигурация части проекта [4] и низкие единовременные инженерные затраты по сравнению с дизайном ASIC (несмотря на обычно более высокую стоимость единицы) предлагают преимущества для многих приложений. [1]

Некоторые FPGA имеют аналоговые функции в дополнение к цифровым функциям. Наиболее распространенный аналог функция является программируемой скоростью нарастания выходного напряжения на каждом выходной контакте, что позволяет инженер установить низкие ставки на малонагруженных штифтах , которые бы в противном случае кольцо или пару недопустимо, и устанавливать более высокие скорости на сильно загруженные штифтах на высокоскоростных каналах , которые будут в противном случае бегите слишком медленно. [5] [6] Также распространены кварцевые генераторы , встроенные в микросхемы генераторы сопротивления-емкости и контуры фазовой автоподстройки частоты со встроенными генераторами, управляемыми напряжением.используется для генерации тактовых импульсов и управления ими, а также для тактовых генераторов высокоскоростного сериализатора-десериализатора (SERDES) и восстановления тактовых импульсов приемника. Довольно часто встречаются дифференциальные компараторы на входных контактах, предназначенные для подключения к каналам дифференциальной сигнализации . Несколько " ПЛИС смешанного сигнала " имеют интегрированные периферийные аналого-цифровые преобразователи (АЦП) и цифро-аналоговые преобразователи (ЦАП) с блоками преобразования аналогового сигнала, позволяющими им работать как система на кристалле (SoC). . [7] Такие устройства стирают грань между ПЛИС, которая несет цифровые единицы и нули на своей внутренней программируемой матрице межсоединений, ипрограммируемый аналоговый массив (FPAA), который передает аналоговые значения на своей внутренней программируемой матрице межсоединений.

История [ править ]

Индустрия FPGA выросла из программируемой постоянной памяти (PROM) и программируемых логических устройств (PLD). И PROM, и PLD можно было программировать партиями на заводе или в полевых условиях (программирование на месте). Однако программируемая логика была жестко встроена между логическими вентилями. [8]

Компания Altera была основана в 1983 году и в 1984 году представила первое в отрасли устройство с возможностью перепрограммирования - EP300 - с кварцевым окном в корпусе, которое позволяло пользователям направлять ультрафиолетовую лампу на кристалл, чтобы стереть ячейки СППЗУ , в которых хранится конфигурация устройства. . [9]

Соучредители Xilinx Росс Фриман и Бернард Вондершмитт изобрели первую коммерчески жизнеспособную программируемую вентильную матрицу в 1985 году - XC2064. [10] XC2064 имел программируемые шлюзы и программируемые межсоединения между воротами, что положило начало новой технологии и рынку. [11] XC2064 имел 64 конфигурируемых логических блока (CLB) с двумя справочными таблицами с тремя входами (LUT). [12] Более 20 лет спустя Фримен был внесен в Национальный зал славы изобретателей за свое изобретение. [13] [14]

В 1987 году Центр надводных боевых действий ВМС профинансировал эксперимент, предложенный Стивом Кассельманом, по разработке компьютера, который будет реализовывать 600 000 перепрограммируемых ворот. Кассельман добился успеха, и в 1992 году на эту систему был выдан патент [8].

Altera и Xilinx продолжали неоспоримо и быстро росли с 1985 до середины 1990-х годов, когда выросли конкуренты, сократив значительную часть своей доли рынка. К 1993 году Actel (ныне Microsemi ) обслуживала около 18 процентов рынка. [11] К 2013 году Altera (31 процент), Actel (10 процентов) и Xilinx (36 процентов) вместе составляли примерно 77 процентов рынка FPGA. [15]

1990-е годы были периодом быстрого роста FPGA как с точки зрения сложности схем, так и с точки зрения объема производства. В начале 1990-х годов FPGA в основном использовались в телекоммуникациях и сетях . К концу десятилетия ПЛИС нашли свое применение в потребительских, автомобильных и промышленных приложениях. [16]

Такие компании, как Microsoft, начали использовать FPGA для ускорения высокопроизводительных вычислительно-ресурсоемких систем (таких как центры обработки данных , в которых работает их поисковая система Bing ) из- за преимущества FPGA в производительности на ватт . [17] Microsoft начала использовать FPGA для ускорения Bing в 2014 году, а в 2018 году начала развертывание FPGA в других рабочих нагрузках центра обработки данных для своей платформы облачных вычислений Azure . [18]

Интеграция [ править ]

В 2012 году крупнозернистый архитектурный подход был сделан еще на шаг вперед, объединив логические блоки и межсоединения традиционных ПЛИС со встроенными микропроцессорами и соответствующей периферией, чтобы сформировать полную « систему на программируемом чипе ». Эта работа отражает архитектуру, созданную Роном Перлоффом и Хананом Поташем из Burroughs Advanced Systems Group в 1982 году, которая объединила реконфигурируемую архитектуру ЦП на одном чипе, называемом SB24. [19]

Примеры таких гибридных технологий можно найти в Xilinx Zynq-7000 all Programmable SoC , [20] который включает в себя двухъядерный процессор ARM Cortex-A9 MPCore с тактовой частотой 1,0  ГГц, встроенный в логическую структуру FPGA [21] или в Altera Arria V. FPGA, которая включает двухъядерный процессор ARM Cortex-A9 MPCore с тактовой частотой 800 МГц . Atmel FPSLIC другое такое устройство, которое использует AVR процессор в сочетании с программируемой логикой архитектуры фирмы Atmel. Microsemi SmartFusion устройства включают в себя ядро ​​жесткого процессора ARM Cortex-M3 (до 512 КБ флэш-памяти и 64 КБ ОЗУ) и аналоговые периферийные устройства, такие как многоканальные аналого-цифровые преобразователи и цифро-аналоговые преобразователи в их флэш-память матрица на основе ПЛИС.

Xilinx Zynq-7000 Все системы Программируемый на чипе.

Мягкое ядро [ править ]

Альтернативный подход к использованию аппаратных макропроцессоров заключается в использовании IP-ядер программных процессоров , которые реализованы в логике FPGA. Nios II , MicroBlaze и Mico32 - примеры популярных софткорных процессоров . Многие современные ПЛИС программируются «во время выполнения», что привело к идее реконфигурируемых вычислительных или реконфигурируемых систем - процессоров, которые реконфигурируют себя в соответствии с поставленной задачей. Кроме того, начинают появляться новые архитектуры, отличные от FPGA. Программно-конфигурируемые микропроцессоры, такие как Stretch S5000, используют гибридный подход, предоставляя массив процессорных ядер и программируемых ядер, подобных ПЛИС, на одном кристалле.

Хронология [ править ]

Гейтс [ править ]

  • 1987: 9 000 ворот, Xilinx [11]
  • 1992: 600 000, Управление надводных войск ВМФ [8]
  • Начало 2000-х: миллионы [16]
  • 2013: 50 миллионов, Xilinx [22]

Размер рынка [ править ]

  • 1985: Первая коммерческая FPGA: Xilinx XC2064 [10] [11]
  • 1987 год: 14 миллионов долларов [11]
  • c.  1993 :> 385 миллионов долларов [11] [ неудачная проверка ]
  • 2005 год: 1,9 миллиарда долларов [23]
  • Оценка на 2010 год: 2,75 миллиарда долларов [23]
  • 2013: 5,4 миллиарда долларов [24]
  • Оценка на 2020 год: 9,8 миллиарда долларов [24]

Дизайн начинается [ править ]

Старт дизайн новый пользовательский дизайн для реализации на ПЛИС.

  • 2005 год: 80 000 [25]
  • 2008 год: 90 000 [26]

Сравнения [ править ]

К ASIC [ править ]

Исторически FPGA были медленнее, менее энергоэффективны и, как правило, обеспечивали меньшую функциональность, чем их фиксированные аналоги ASIC . Более раннее исследование [ когда? ] показал, что проекты, реализованные на ПЛИС, требуют в среднем в 40 раз больше площади, потребляют в 12 раз больше динамической мощности и работают на одной трети скорости соответствующих реализаций ASIC. [ необходима цитата ]

Совсем недавно FPGA, такие как Xilinx Virtex-7 или Altera Stratix 5, стали конкурировать с соответствующими решениями ASIC и ASSP («стандартная часть для конкретного приложения», такая как автономный интерфейсный чип USB [27] ), обеспечивая значительно меньшее энергопотребление. использование , повышенная скорость, более низкая стоимость материалов, минимальная площадь внедрения и расширенные возможности для изменения конфигурации «на лету». Проект, включающий от 6 до 10 ASIC, теперь может быть реализован с использованием только одной FPGA. [28]

Преимущества ПЛИС включают возможность перепрограммирования, когда они уже развернуты (то есть «в полевых условиях») для исправления ошибок , и часто включают более короткое время выхода на рынок и более низкие единовременные затраты на разработку. Поставщики также могут выбрать промежуточный путь через прототипирование ПЛИС : разработать свои прототипы аппаратного обеспечения на ПЛИС, но изготовить окончательную версию в виде ASIC, чтобы ее больше нельзя было модифицировать после того, как проект был принят. То же самое часто бывает и с новыми процессорами. [29]

Тенденции [ править ]

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

Комплексные программируемые логические устройства (CPLD) [ править ]

Основные различия между сложными программируемыми логическими устройствами (CPLD) и FPGA связаны с архитектурой . CPLD имеет сравнительно ограниченную структуру, состоящую из одного или нескольких программируемых логических массивов суммы произведений, питающих относительно небольшое количество синхронизированных регистров . В результате CPLD менее гибки, но имеют преимущество в виде более предсказуемых временных задержек и более высокого отношения логики к межсоединению. [ необходима цитата ] В архитектурах FPGA, с другой стороны, преобладают межкомпонентные соединения.. Это делает их гораздо более гибкими (с точки зрения диапазона проектов, которые практически можно реализовать на них), но также гораздо более сложными для проектирования или, по крайней мере, требующими более сложного программного обеспечения для автоматизации электронного проектирования (EDA).

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

Когда конструкция требует простого мгновенного включения (логика уже настроена при включении питания) , обычно предпочтительны CPLD. Для большинства других приложений обычно предпочтительны ПЛИС. Иногда в единой системе используются как CPLD, так и FPGA. В этих конструкциях CPLD обычно выполняют функции связующей логики и отвечают за « загрузку » FPGA, а также за управление сбросом и последовательностью загрузки всей печатной платы. Следовательно, в зависимости от приложения может быть разумным использовать как FPGA, так и CPLD в одной конструкции. [32]

Соображения безопасности [ править ]

FPGA имеют как преимущества, так и недостатки по сравнению с ASIC или защищенными микропроцессорами в отношении безопасности оборудования . Гибкость ПЛИС снижает риск злонамеренных модификаций во время изготовления . [33] Раньше для многих ПЛИС проектный поток битов отображался, в то время как ПЛИС загружала его из внешней памяти (обычно при каждом включении питания). Все основные поставщики ПЛИС теперь предлагают разработчикам ряд решений безопасности, таких как шифрование и аутентификация битового потока . Например, Altera и Xilinx предлагают шифрование AES (до 256 бит) для битовых потоков, хранящихся во внешней флэш-памяти.

ПЛИС, которые хранят свою конфигурацию внутри энергонезависимой флэш-памяти, например, программируемые устройства Microsemi ProAsic 3 или Lattice XP2, не раскрывают поток битов и не нуждаются в шифровании . Кроме того, флэш-память для справочной таблицы обеспечивает защиту от сбоев при единичном событии для космических приложений. [ требуется пояснение ] Заказчики, желающие получить более высокую гарантию защиты от несанкционированного доступа, могут использовать ПЛИС с однократной записью и предохранителем от таких поставщиков, как Microsemi .

В своих Stratix 10 FPGA и SoC компания Altera представила Secure Device Manager и физически неклонируемые функции, чтобы обеспечить высокий уровень защиты от физических атак. [34]

В 2012 году исследователи Сергей Скоробогатов и Кристофер Вудс продемонстрировали, что FPGA могут быть уязвимы для враждебных намерений. Они обнаружили, что критическая уязвимость бэкдора была создана в кремнии как часть Actel / Microsemi ProAsic 3, что делает его уязвимым на многих уровнях, таких как перепрограммирование криптографических ключей и ключей доступа , доступ к незашифрованному потоку битов, изменение низкоуровневых функций кремния и извлечение данных конфигурации . [35]

Приложения [ править ]

ПЛИС можно использовать для решения любой вычислимой проблемы . Это очевидно подтверждается тем фактом, что FPGA могут использоваться для реализации программного микропроцессора , такого как Xilinx MicroBlaze или Altera Nios II . Их преимущество заключается в том, что они значительно быстрее для некоторых приложений из-за их параллельной природы и оптимальности с точки зрения количества шлюзов, используемых для определенных процессов. [36]

Первоначально ПЛИС создавались как конкуренты CPLD для реализации логики клея для печатных плат . По мере увеличения их размера, возможностей и скорости, ПЛИС взяли на себя дополнительные функции до такой степени, что некоторые из них теперь продаются как полные системы на чипах (SoC). В частности, с введением специальных умножителей в архитектуры FPGA в конце 1990-х годов, приложения, которые традиционно были единственным резервом оборудования процессора цифровых сигналов (DSP), вместо этого начали включать FPGA. [37] [38]

Еще одна тенденция использования ПЛИС - аппаратное ускорение , при котором ПЛИС можно использовать для ускорения определенных частей алгоритма и разделения части вычислений между ПЛИС и общим процессором. [2] Поисковая система Bing известна тем, что в 2014 году применила ускорение FPGA для своего алгоритма поиска. [39] С 2018 года FPGA все чаще используются в качестве ускорителей AI, включая так называемый «Project Catapult» [18] от Microsoft, а также для ускорения искусственные нейронные сети для приложений машинного обучения .

Традиционно [ когда? ] ПЛИС зарезервированы для конкретных вертикальных приложений, где объем производства невелик. Для этих небольших приложений надбавка, которую компании платят в виде стоимости оборудования за единицу программируемого чипа, более доступна, чем ресурсы разработки, потраченные на создание ASIC. По состоянию на 2017 год новая динамика стоимости и производительности расширила диапазон жизнеспособных приложений.

Компания Gigabyte создала карту i-RAM, в которой использовалась ПЛИС Xilinx, хотя изготовленный на заказ чип был бы дешевле, если бы его производили в больших количествах. ПЛИС была выбрана для быстрого вывода ее на рынок, и первоначально было выпущено всего 1000 единиц, что сделало ПЛИС лучшим выбором. Это устройство позволяет людям использовать оперативную память компьютера в качестве жесткого диска. [40]

Общие приложения [ править ]

  • Аэрокосмическая промышленность и оборона
    • Авионика / ДО-254
    • Связь
    • Ракеты и боеприпасы
    • Безопасные решения
    • Космическая (т.е. с радиационной стойкостью [41] )
  • Аудио
    • Решения для подключения
    • Цифро-аналоговый преобразователь
    • Портативная электроника
    • Программно-определяемое радио
    • Цифровая обработка сигналов (DSP)
    • Распознавание речи
    • Синтезаторы
  • Автомобильная промышленность
    • Видео высокого разрешения
    • Обработка изображений
    • Автомобильная сеть и подключение
    • Автомобильная информационно-развлекательная система
  • Искусственные нейронные сети
  • Биоинформатика
  • Транслировать
    • Цветовая градация
    • Видео движок в реальном времени
    • EdgeQAM
    • Энкодеры
    • Дисплеи
    • Коммутаторы и маршрутизаторы
  • Бытовая электроника
    • Цифровые дисплеи
    • Цифровые фотоаппараты
    • Многофункциональные принтеры
    • Портативная электроника
    • Приставки
    • Картриджи для вспышек
  • Дата центр
    • Серверы
    • Безопасность
    • Аппаратный модуль безопасности [42]
    • Роутеры
    • Переключатели
    • Шлюзы
    • Балансировки нагрузки
  • Высокопроизводительные вычисления
    • Серверы
    • Суперкомпьютеры
    • Системы SIGINT
    • Радары высокого класса
    • Высококачественные системы профилирования балок
    • Системы интеллектуального анализа данных
  • Промышленное
    • Промышленная визуализация
    • Промышленные сети
    • Блок управления двигателем
  • Проектирование интегральных схем
    • Прототипирование ASIC
    • Эмуляция компьютерного оборудования
  • Финансовый
    • Крипто- майнинг
    • Высокочастотная торговля
  • Медицинское
    • УЗИ
    • Компьютерная томография
    • МРТ
    • Рентгеновский
    • ДОМАШНИЙ ПИТОМЕЦ
    • Хирургические системы
  • Научные инструменты
    • Усилители с синхронизацией
    • Усреднители крытых вагонов
    • Петли с фазовой синхронизацией
    • Радиоастрономия
  • Безопасность
    • Промышленная визуализация
    • Безопасные решения
    • Аппаратный модуль безопасности [42]
    • Взлом пароля
    • Обработка изображений
  • Контрольно-измерительное оборудование
    • Осциллографы
    • Анализаторы спектра
    • Векторные анализаторы цепей
    • Генераторы сигналов
    • Сбор данных (DAQ) и регистрация
    • Мультиплексоры и коммутационные матрицы
  • Обработка видео и изображений
    • Видео высокого разрешения
    • Видео через IP-шлюз
    • Цифровые дисплеи
    • Промышленная визуализация
    • Компьютерное зрение
    • Тепловидение
  • Проводная связь
    • Оптические транспортные сети
    • Сетевая обработка
    • Интерфейсы подключения
  • Беспроводная связь
    • Основная полоса
    • Интерфейсы подключения
    • Мобильная обратная связь
    • Радио

Архитектура [ править ]

Логические блоки [ править ]

Упрощенный пример иллюстрации логической ячейки (LUT - таблица поиска , FA - полный сумматор , DFF - триггер D-типа )

Наиболее распространенная архитектура FPGA состоит из массива логических блоков , [примечание 1] площадок ввода-вывода и каналов маршрутизации. [1] Как правило, все каналы маршрутизации имеют одинаковую ширину (количество проводов). Несколько площадок ввода-вывода могут поместиться в высоту одной строки или ширину одного столбца в массиве.

Схема приложения должна быть отображена в FPGA с соответствующими ресурсами. В то время как количество требуемых CLB / LAB и входов / выходов легко определяется из проекта, количество необходимых дорожек маршрутизации может значительно различаться даже среди проектов с одинаковым объемом логики. [заметка 2]

Например, перекрестный переключатель требует гораздо большей маршрутизации, чем систолический массив с тем же числом ворот. Поскольку неиспользуемые дорожки маршрутизации увеличивают стоимость (и снижают производительность) детали без каких-либо преимуществ, производители FPGA стараются предоставить ровно столько дорожек, чтобы большинство проектов, подходящих с точки зрения таблиц поиска (LUT) и ввода-вывода, могли быть проложен . [примечание 2] Это определяется оценками, например, полученными из правила Рента, или экспериментами с существующими проектами. По состоянию 2018 года , сеть-на-чипе архитектуры для маршрутизации и соединения разрабатываются.

Как правило, логический блок состоит из нескольких логических ячеек (называемых ALM, LE, срез и т. Д.). Типичная ячейка состоит из LUT с 4 входами [ таймфрейм? ] , полный сумматор (FA) и триггер D-типа , как показано выше. LUT на этом рисунке разделены на две LUT с 3 входами. В нормальном режиме они объединяются в LUT с 4 входами через левый мультиплексор (мультиплексор). В арифметическом режиме их выходы подаются на сумматор. Выбор режима программируется в среднем мультиплексоре. Выход может быть синхронным или асинхронным., в зависимости от программирования мультиплексора справа, в примере на рисунке. На практике весь сумматор или его части хранятся в виде функций в LUT для экономии места . [43] [44] [45]

Жесткие блоки [ править ]

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

ПЛИС более высокого уровня могут содержать высокоскоростные мультигигабитные трансиверы и жесткие IP-ядра, такие как процессорные ядра , блоки управления доступом к среде Ethernet , контроллеры PCI / PCI Express и контроллеры внешней памяти. Эти ядра существуют вместе с программируемой структурой, но они построены на транзисторах, а не на LUT, поэтому имеют производительность и энергопотребление на уровне ASIC.без использования значительного количества ресурсов фабрики, оставляя большую часть фабрики свободной для логики конкретного приложения. Мультигигабитные трансиверы также содержат высокопроизводительные аналоговые схемы ввода и вывода, а также высокоскоростные сериализаторы и десериализаторы, компоненты, которые не могут быть построены из LUT. Функциональные возможности физического уровня (PHY) высокого уровня, такие как линейное кодирование, могут или не могут быть реализованы вместе с сериализаторами и десериализаторами в жесткой логике, в зависимости от FPGA.

Часы [ править ]

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

3D-архитектуры [ править ]

Чтобы уменьшить размер и энергопотребление ПЛИС, такие поставщики, как Tabula и Xilinx , представили трехмерные или многослойные архитектуры . [46] [47] После выпуска своих 28-нм ПЛИС 7-й серии, Xilinx заявила, что некоторые из деталей с самой высокой плотностью в этих линейках продуктов ПЛИС будут построены с использованием нескольких матриц в одном корпусе с использованием технологии, разработанной для 3D-конструирования и сборные сборки штампов.

Подход Xilinx состоит из нескольких (трех или четырех) активных кристаллов ПЛИС бок о бок на кремниевом переходнике  - едином кремниевом элементе, несущем пассивное межсоединение. [47] [48] Конструкция с несколькими кристаллами также позволяет создавать различные части ПЛИС с использованием различных технологий обработки, поскольку требования к процессу различаются между самой структурой ПЛИС и высокоскоростными последовательными приемопередатчиками 28 Гбит / с. Построенная таким образом ПЛИС называется гетерогенной ПЛИС . [49]

Гетерогенный подход Altera включает использование одного монолитного кристалла ПЛИС и подключение других кристаллов / технологий к ПЛИС с использованием технологии встроенного моста межсоединений с несколькими кристаллами Intel (EMIB). [50]

Дизайн и программирование [ править ]

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

С помощью инструмента автоматизации электронного проектирования создается список соединений с привязкой к технологиям . Затем список соединений может быть адаптирован к реальной архитектуре FPGA с использованием процесса, называемого « место и маршрут» , обычно выполняемого проприетарным программным обеспечением для размещения и маршрутизации FPGA. Пользователь проверит карту, место и результаты маршрута с помощью временного анализа , моделирования и других методологий верификации и валидации . После завершения процесса проектирования и проверки бинарный файл, сгенерированный, как правило, с использованием проприетарного программного обеспечения поставщика FPGA, используется для (повторной) настройки FPGA. Этот файл передается в FPGA / CPLD через последовательный интерфейс ( JTAG) или на внешнее запоминающее устройство, такое как EEPROM .

Наиболее распространенными HDL являются VHDL и Verilog, а также такие расширения, как SystemVerilog . Однако в попытке уменьшить сложность проектирования на HDL, которые сравнивают с эквивалентом языков ассемблера , есть ходы [ кем? ], чтобы поднять уровень абстракции за счет введения альтернативных языков . National Instruments ' LabVIEW Язык графического программирования (иногда упоминается как „G“) имеет FPGA надстройку модуля доступны для целевой и программы FPGA оборудования. Verilogбыл создан, чтобы упростить процесс, сделав HDL более надежным и гибким. Verilog в настоящее время является самым популярным. Verilog создает уровень абстракции, чтобы скрыть детали его реализации. Verilog имеет синтаксис, подобный C, в отличие от VHDL. [51]

Чтобы упростить проектирование сложных систем на ПЛИС, существуют библиотеки предопределенных сложных функций и схем, которые были протестированы и оптимизированы для ускорения процесса проектирования. Эти предопределенные схемы обычно называются ядрами интеллектуальной собственности (IP) и доступны у поставщиков FPGA и сторонних поставщиков IP. Они редко бывают бесплатными и обычно выпускаются под проприетарными лицензиями. Другие предопределенные схемы доступны в сообществах разработчиков, таких как OpenCores (обычно выпускаются под бесплатными лицензиями и лицензиями с открытым исходным кодом, такими как GPL , BSD или аналогичная лицензия) и из других источников. Такие конструкции известны как «оборудование с открытым исходным кодом ».

В типичном потоке проектирования разработчик приложения FPGA будет моделировать проект на нескольких этапах в течение всего процесса проектирования. Первоначально RTL- описание в VHDL или Verilog моделируется путем создания тестовых стендов для моделирования системы и наблюдения за результатами. Затем, после того как механизм синтеза отобразит проект в список соединений, список соединений преобразуется в описание на уровне логических элементов, где моделирование повторяется, чтобы подтвердить, что синтез прошел без ошибок. Наконец, проект размещается в ПЛИС, в которой могут быть добавлены задержки распространения, и моделирование запускается снова с этими значениями с обратной аннотацией. в список соединений.

В последнее время программисты используют OpenCL (Open Computing Language), чтобы воспользоваться преимуществами производительности и энергоэффективности, которые обеспечивают FPGA. OpenCL позволяет программистам разрабатывать код на языке программирования C и использовать функции FPGA как ядра OpenCL, используя конструкции OpenCL. [52] Для получения дополнительной информации см. Синтез высокого уровня и C в HDL .

Типы основных технологических процессов [ править ]

  • SRAM - на основе технологии статической памяти. Программируемый и перепрограммируемый внутри системы. Требуются внешние загрузочные устройства. CMOS . В настоящее время используется. [ когда? ] В частности, устройства флэш-памяти или EEPROM могут часто загружать содержимое во внутреннюю SRAM, которая управляет маршрутизацией и логикой.
  • Предохранитель - Одноразовый программируемый. Биполярный. Устаревший.
  • Антифуз - одноразовый программируемый. CMOS.
  • PROM - технология программируемой постоянной памяти. Одноразовое программирование из-за пластиковой упаковки. Устаревший.
  • EPROM - стираемая программируемая постоянная память. Одноразовое программирование, но с окном, стирание в ультрафиолетовом (УФ) свете. CMOS. Устаревший.
  • EEPROM - электрически стираемая программируемая постоянная память. Стираются даже в пластиковых упаковках. Некоторые, но не все устройства EEPROM могут быть запрограммированы в системе. CMOS.
  • Flash - технология Flash-erase EPROM. Стираются даже в пластиковых упаковках. Некоторые, но не все флеш-устройства можно программировать в системе. Обычно ячейка флэш-памяти меньше, чем эквивалентная ячейка EEPROM, и поэтому дешевле в производстве. CMOS.

Основные производители [ править ]

В 2016 году давние отраслевые конкуренты Xilinx (теперь AMD) и Altera (теперь дочерняя компания Intel ) были лидерами на рынке FPGA. [53] В то время они контролировали почти 90 процентов рынка.

И Xilinx [примечание 3], и Altera [примечание 4] предоставляют проприетарное программное обеспечение для автоматизации электронного проектирования для Windows и Linux ( ISE / Vivado и Quartus ), которое позволяет инженерам проектировать , анализировать, моделировать и синтезировать ( компилировать ) свои конструкции. [54] [55]

Другие производители включают:

  • Микрочип :
    • Microsemi (ранее Actel ), производящая ПЛИС со смешанными сигналами на базе флеш-памяти ; приобретена Microchip в 2018 г.
    • Atmel , второй источник некоторых устройств, совместимых с Altera; также упомянутый выше FPSLIC [ требуется разъяснение ] ; [56] приобретена Microchip в 2016 г.
  • Lattice Semiconductor , который производит маломощные ПЛИС на основе SRAM со встроенной флэш-памятью конфигурации, мгновенным включением и реконфигурацией в реальном времени.
    • SiliconBlue Technologies , которая предоставляет ПЛИС на основе SRAM с очень низким энергопотреблением и дополнительной встроенной энергонезависимой памятью конфигурации; приобретена Lattice в 2011 году
  • QuickLogic, [57], который производит концентраторы датчиков со сверхнизким энергопотреблением, ПЛИС на основе SRAM с очень низким энергопотреблением и малой плотностью, с дисплейными мостами, входами MIPI и RGB, выходами MIPI, RGB и LVDS.
  • Achronix , производство FPGAS на основе SRAM со скоростью фабрики 1,5 ГГц [58]

В марте 2010 года Tabula анонсировала свою технологию FPGA, в которой используется логика с временным мультиплексированием и межсоединение, что предполагает потенциальную экономию средств для приложений с высокой плотностью размещения. [59] 24 марта 2015 года Табула официально закрылась. [60]

1 июня 2015 г. Intel объявила о приобретении Altera примерно за 16,7 млрд долларов и завершила сделку 30 декабря 2015 г. [61]

27 октября 2020 года AMD объявила о приобретении Xilinx. [62]

См. Также [ править ]

  • Мезонинная карта FPGA
  • Прототипирование ПЛИС
  • Список тренажеров HDL
  • Список ПЛИС Xilinx
  • Языки описания оборудования Verilog и SystemVerilog
  • VHDL , язык описания оборудования очень высокоскоростной интегральной схемы
  • Аппаратное ускорение для обзора вычислений, основанных в основном на аппаратном обеспечении

Заметки [ править ]

  1. ^ Вызывается конфигурируемым логическим блоком (CLB) или блоком логического массива (LAB), в зависимости от поставщика
  2. ^ a b Для получения дополнительной информации см. раздел «Маршрутизация в автоматизации проектирования электроники» как часть места и этапа производства интегральных схем.
  3. ^ сейчас AMD
  4. ^ теперь Intel

Ссылки [ править ]

  1. ^ a b c «Архитектура FPGA для решения задач» . toronto.edu . Университет Торонто .
  2. ^ a b c « Обзор ускорителей на базе FPGA для сверточных нейронных сетей », С. Миттал, NCAA, 2018
  3. Перейти ↑ Simpson, PA (2015). Проектирование ПЛИС, Рекомендации по повторному использованию в команде, 2-е издание . Швейцария: Springer International Publishing AG. п. 16. ISBN 978-3-319-17924-7.
  4. Перейти ↑ Wisniewski, Remigiusz (2009). Синтез композиционных микропрограммных блоков управления программируемыми устройствами . Зелена-Гура: Зелена-Гурский университет. п. 153. ISBN. 978-83-7481-293-1.
  5. ^ "Руководство по целостности сигнала FPGA" . altium.com . Архивировано из оригинала на 2016-03-07 . Проверено 15 июня 2010 .
  6. ^ НАСА: мощность привода ПЛИС Архивировано 05 декабря 2010 г. на Wayback Machine
  7. ^ Майк Томпсон. «ПЛИС со смешанными сигналами обеспечивают ЗЕЛЕНУЮ МОЩНОСТЬ» . EE Times, 2 июля 2007 г.
  8. ^ a b c «История ПЛИС» . Архивировано из оригинального 12 апреля 2007 года . Проверено 11 июля 2013 .
  9. ^ «В начале» . altera.com . 21 апреля 2015.
  10. ^ a b «Выпуск 32 XCELL» (PDF) . Xilinx.
  11. ^ a b c d e f Финансирование Вселенной. " Xilinx, Inc. " Проверено 15 января 2009 г.
  12. ^ Клайв Максфилд, Programmable Logic DesignLine, « Xilinx представляет революционную 65-нм архитектуру FPGA: семейство Virtex-5 . 15 мая 2006 г. Получено 5 февраля 2009 г.
  13. ^ Пресс-релиз, « Соучредитель Xilinx Росс Фриман удостоен звания призывника Национального Зала славы изобретателей в 2009 году за изобретение FPGA, заархивированный 2016-10-06 в Wayback Machine »
  14. ^ США 4870302 , Freeman, Росс Х., «Настраиваемая электрическая схема имеют конфигурируемые логические элементы и конфигурируемые межсоединения», опубликованная 19 февраля 1988, выпущенную 26 сентября 1989 
  15. ^ «Лучшие компании-производители FPGA за 2013 год» . sourcetech411.com . 2013-04-28.
  16. ^ а б Максфилд, Клайв (2004). Руководство Design Warrior по FPGA: устройства, инструменты и потоки . Эльзевир. п. 4. ISBN 978-0-7506-7604-5.
  17. ^ "Microsoft усиливает поиск Bing с помощью программируемых чипов" . ПРОВОДНОЙ . 16 июня 2014 г.
  18. ^ а б «Проект катапульты» . Microsoft Research . Июль 2018 г.
  19. ^ [1] , "Цифровое устройство с межкомпонентной матрицей", выпущено 1981-09-29. 
  20. ^ «Xilinx Inc, форма 8-K, текущий отчет, дата подачи 19 октября 2011 г.» . secdatabase.com . Проверено 6 мая 2018 года .
  21. ^ «Xilinx Inc, форма 10-K, годовой отчет, дата подачи 31 мая 2011 г.» . secdatabase.com . Проверено 6 мая 2018 года .
  22. ^ Максфилд, Макс. «ПЛИС Xilinx UltraScale предлагает 50 миллионов эквивалентных вентилей ASIC» . www.eetimes.com . EE Times.
  23. ^ a b Дилан МакГрат, EE Times , « Рынок FPGA превысит 2,7 миллиарда долларов к '10, сообщает In-Stat ». 24 мая 2006 г. Проверено 5 февраля 2009 г.
  24. ^ a b «Глобальный анализ рынка FPGA и прогнозы сегментов до 2020 года - отрасль FPGA, перспективы, размер, применение, продукт, доля, перспективы роста, ключевые возможности, динамика, тенденции, анализ, отчет FPGA - Grand View Research Inc.» . grandviewresearch.com .
  25. ^ Дилан МакГрат, EE Times , « Аналитик Gartner Dataquest дает ASIC, FPGA Markets Clean of Health ». 13 июня, 2005. Проверено 5 февраля, 2009.
  26. ^ "Обзор семейства Virtex-4" (PDF) . xilinx.com . Проверено 14 апреля 2018 года .
  27. ^ "ASIC, ASSP, SoC, FPGA - в чем разница?" . eetimes.com .
  28. ^ Куон, Ян; Роза, Джонатан (2006). «Измерение разрыва между ПЛИС и ASIC» (PDF) . Материалы международного симпозиума по программируемым вентильным матрицам - FPGA'06 . Нью-Йорк, штат Нью-Йорк: ACM. С. 21–30. DOI : 10.1145 / 1117201.1117205 . ISBN  1-59593-292-5.
  29. ^ https://www.anandtech.com/show/14798/xilinx-announces-world-largest-fpga-virtex-ultrascale-vu19p-with-9m-cells
  30. ^ "AN 818: Учебное пособие по частичной реконфигурации статического обновления: для платы разработки Intel Stratix 10 GX FPGA" . www.intel.com . Проверено 1 декабря 2018 .
  31. ^ "Могут ли ПЛИС динамически изменять свою логику?" . Обмен электротехнического стека . Проверено 1 декабря 2018 .
  32. ^ «CPLD против FPGA: различия между ними и какой из них использовать? - Справочный центр Numato Lab» . numato.com . 2017-11-29.
  33. ^ Хаффмайр, Тед; Brotherton, Бретт; Шервуд, Тимоти; Кастнер, Райан; Левин, Тимофей; Nguyen, Thuy D .; Ирвин, Синтия (2008). «Управление безопасностью в встроенных системах на основе ПЛИС». IEEE Design & Test of Computers . 25 (6): 590–598. DOI : 10.1109 / MDT.2008.166 . S2CID 115840 . 
  34. ^ «EETimes на PUF: функции безопасности для экспертов, не связанных с безопасностью - внутренний идентификатор» . Внутренний идентификатор . 2015-06-09.
  35. Скоробогатов, Сергей; Вудс, Кристофер (2012). "Прорыв в сканировании кремния обнаруживает бэкдор в военном чипе". Криптографическое оборудование и встроенные системы - CHES 2012 . Конспект лекций по информатике. 7428 . С. 23–40. DOI : 10.1007 / 978-3-642-33027-8_2 . ISBN 978-3-642-33026-1.
  36. ^ «Xilinx Inc, форма 8-K, текущий отчет, дата подачи 26 апреля 2006 г.» . secdatabase.com . Проверено 6 мая 2018 года .
  37. ^ «Публикации и презентации» . bdti.com . Архивировано из оригинала на 2010-08-21 . Проверено 2 ноября 2018 .
  38. ^ Лапедус, Марк. «Xilinx нацеливает 65-нм FPGA на приложения DSP» . EETimes .
  39. ^ Морган, Тимоти Прикет (2014-09-03). «Как Microsoft использует FPGA для ускорения поиска Bing» . Enterprise Tech . Проверено 18 сентября 2018 .
  40. ^ «I-RAM от Gigabyte: доступное твердотельное хранилище» . anandtech.com . 2005-07-25 . Проверено 16 декабря 2020 .
  41. ^ "Устройства разработки FPGA для радиационно-стойких космических приложений, представленные Microsemi" . www.m militaryaerospace.com . 2016-06-03 . Проверено 2 ноября 2018 .
  42. ^ a b «CrypTech: обеспечение прозрачности в криптографии t» (PDF) .
  43. ^ 2. Архитектура CycloneII . Альтера. Февраль 2007 г.
  44. ^ "Документация: Устройства Stratix IV" (PDF) . Altera.com. 2008-06-11. Архивировано из оригинального (PDF) 26 сентября 2011 года . Проверено 1 мая 2013 .
  45. ^ Руководство пользователя Virtex-4 FPGA (1 декабря 2008 г.). Xilinx, Inc.
  46. Дин Такахаши, VentureBeat. « Связь с Intel помогла стартапу Tabula собрать 108 миллионов долларов ». 2 мая 2011 г. Проверено 13 мая 2011 г.
  47. ^ a b Лоуренс Латиф, Исследователь. « Производитель FPGA утверждает, что нарушил закон Мура» . 27 октября 2010 г. Проверено 12 мая 2011 г.
  48. ^ EDN Европа. « Xilinx использует трехмерную упаковку с многослойными матрицами ». 1 ноября 2010 г. Проверено 12 мая 2011 г.
  49. Сабан, Кирк (11 декабря 2012 г.). «Технология стековых кремниевых межсоединений Xilinx обеспечивает прорыв в производительности, пропускной способности и энергоэффективности ПЛИС» (PDF) . xilinx.com . Проверено 30 ноября 2018 .
  50. ^ "Intel Custom Foundry EMIB" . Intel .
  51. ^ «Битва за FPGA: VHDL против Verilog! Кто настоящий чемпион?» . digilentinc.com . Проверено 16 декабря 2020 .
  52. ^ "Зачем использовать OpenCL на ПЛИС?" . StreamComputing . 2014-09-16.
  53. ^ Dillien, Пол (6 марта 2017). «И победителем в номинации« Лучшая ПЛИС 2016 года » стала ...» EETimes . Архивировано из оригинала 5 января 2019 года . Проверено 7 сентября 2017 года .
  54. ^ "Xilinx ISE Design Suite" . www.xilinx.com . Проверено 1 декабря 2018 .
  55. ^ «Программное обеспечение для проектирования ПЛИС - Intel Quartus Prime» . Intel . Проверено 1 декабря 2018 .
  56. ^ «Лучшие компании-производители FPGA за 2013 год» . SourceTech411 . 2013-04-28 . Проверено 1 декабря 2018 .
  57. ^ «QuickLogic - настраиваемые полупроводниковые решения для мобильных устройств» . www.quicklogic.com . Корпорация QuickLogic . Проверено 7 октября 2018 .
  58. ^ «Achronix для использования 22-нм производства Intel» . Отдел новостей Intel . 2010-11-01 . Проверено 1 декабря 2018 .
  59. ^ "Машина времени Табулы - Отчет микропроцессора" (PDF) . Архивировано из оригинального (PDF) 10 апреля 2011 года.
  60. ^ Табула для выключения; 120 рабочих мест потеряно в компании по производству микросхем Silicon Valley Business Journal
  61. ^ «Intel купит Altera за 16,7 млрд долларов в рамках самой крупной сделки за всю историю» . Рейтер . Июнь 2015 г.
  62. ^ «AMD приобретает Xilinx, создавая лидера в области высокопроизводительных вычислений» . Октябрь 2020.

Дальнейшее чтение [ править ]

  • Sadrozinski, Hartmut F.-W .; У, Цзиньюань (2010). Применение программируемых вентильных матриц в научных исследованиях . Тейлор и Фрэнсис. ISBN 978-1-4398-4133-4.
  • Вирт, Никлаус (1995). Цифровое схемотехническое проектирование - Введение . Springer. ISBN 978-3-540-58577-0.
  • Митра, Джубин (2018). «Система измерения фазы на основе ПЛИС». Транзакции IEEE в системах с очень крупномасштабной интеграцией (СБИС) . IEEE. 26 : 133–142. DOI : 10.1109 / TVLSI.2017.2758807 . S2CID  4920719 .
  • Mencer, Oskar et al. (2020). «История, состояние и будущее ПЛИС». Коммуникации ACM. ACM. Vol. 63, № 10. DOI : 10.1145 / 3410669

Внешние ссылки [ править ]

  • Что такое ПЛИС? на YouTube