Что такое ПЛИС
ПЛИС (программируемая логическая интегральная схема) — микросхема, конфигурацию которой задаёт разработчик, «собирая» из её ресурсов нужную цифровую схему. В отличие от процессора, выполняющего программу последовательно, ПЛИС становится самой схемой и работает параллельно, что даёт огромную производительность в задачах обработки сигналов, интерфейсов и вычислений. Обзор — на странице ПЛИС.
FPGA и CPLD
| CPLD | FPGA | |
|---|---|---|
| Ёмкость | небольшая | от средней до огромной |
| Структура | макроячейки, матрица | массив LUT + триггеры + блоки |
| Конфигурация | энергонезависимая | обычно грузится из внешней памяти |
| Применение | простая логика, «клей» | сложные системы, DSP, интерфейсы |
Архитектура FPGA
FPGA состоит из массива логических блоков (таблицы истинности LUT + триггеры), соединённых программируемой матрицей связей, плюс специализированные блоки: память, аппаратные умножители (DSP), менеджеры тактирования (PLL), высокоскоростные приёмопередатчики. Из LUT собирают любую логическую функцию, из триггеров — регистры и автоматы.
Маршрут проектирования
Путь от описания к работающей ПЛИС:
- Описание на VHDL или Verilog.
- Синтез — преобразование кода в логические элементы.
- Размещение и трассировка — привязка к ресурсам кристалла и соединение.
- Генерация битстрима — файла конфигурации.
- Прошивка ПЛИС (в память конфигурации или напрямую).
Между этапами проводят симуляцию и анализ временных ограничений (timing), чтобы схема работала на нужной частоте.
Частые вопросы
Чем ПЛИС лучше микроконтроллера?
ПЛИС выполняет операции аппаратно и параллельно, поэтому незаменима там, где нужны высокая скорость, детерминированные задержки и нестандартные интерфейсы (обработка видео, ЦОС, скоростные шины). МК проще и дешевле для последовательных управляющих задач.
CPLD или FPGA?
CPLD — для простой логики и «склейки» с энергонезависимой конфигурацией. FPGA — для сложных систем с большим объёмом логики, памяти и DSP. Выбор определяется сложностью проекта.
Итоги
ПЛИС превращается в заданную разработчиком цифровую схему, работающую параллельно. FPGA (массив LUT и триггеров) подходит для сложных систем, CPLD — для простой логики. Проект проходит маршрут синтез → размещение → трассировка → битстрим, а описывают его на VHDL или Verilog.
Смотрите также: ПЛИС (обзор) · VHDL · Verilog · Цифровая логика.