Программируемая пользователем вентильная матрица (ППМВ) или FPGA (Field-Programmable Gate Array) представляет собой полупроводниковое устройство, которое может быть сконфигурировано после изготовления, является архитектурной разновидностью программируемых логических интегральных схем ПЛИС. ППВМ программируется за счет изменения логики работы принципиальной схемы в исходном коде на языке проектирования.
ППВМ применяются для систем предварительной проверки пригодности устройств, как при разработке встроенного программного обеспечения, так и в докремниевой и послекремниевой проверке. Позволяет проверять работоспособность устройств до их запуска в серийное производство, таким образом снижает риски при последующем запуске устройств в серийное производство.
ППВМ состоит из конфигурируемых логических блоков подобных переключателям с множеством входов и одним выходом, которые могут быть модифицированы в процессе их эксплуатации. В цифровых схемах такие переключатели реализуют базовые двоичные операции: AND, NAND, OR, NOR, XOR.
В большинстве микропроцессоров функции логических блоков фиксированы и их нельзя модифицировать под специфические задачи. Кардинальное отличие ППВМ как раз и позволяет менять как сами функции блоков, так и схему их соединений посредством специальных сигналов, посылаемых схеме.
В ряде специализированных интегральных схем (ASIC) используются логические матрицы, которые аналогичны ППВМ по структуре, но конфигурируются в процессе производства один раз. ППВМ можно перепрограммировать в процессе использования, меняя структуру соединений. Значительное увеличение количества транзисторов на микросхеме является ценой гибкости решения.
ППВМ состоят из трех основных программируемых элементов - блоки ввода-вывода, программируемые логические блоки и внутренние связи между ними. Широкая функциональность позволяет использовать данное решение во встраиваемых процессорах, блоках цифровой обработки сигналов, решениях с быстрой логикой ввода-вывода и встраиваемой памяти. Крупнейшие производители – Xilinx, Actel, Altera.
Разработка ПО для FPGA в Беларуси: +375 (17) 270-69-00.