Микросхемы программируемой логики (ПЛИС)
Программируемые логические интегральные схемы (ПЛИС) являются новой элементной базой для создания конфигурируемых цифровых электронных схем. Главной особенностью ПЛИС является настройка на выполнение заданных функций не в процессе производства микросхем, а самим пользователем. Современным ПЛИС присущи значительные функциональные возможности, высокое быстродействие и доступность для разработчика.
Условно ПЛИС можно разделить на следующие группы:
- FPGA (Field Programmable Gate Array) - программируемые пользователем вентильные матрицы;
- CPLD (Complex Programmable Logical Devices) - сложные программируемые логические устройства;
- SPLD (Simple Programmable Logical Devices) - простые программируемые логические устройства.
Для загрузки готовой конфигурации в микросхемы FPGA, выполненные по технологии статического ОЗУ (SRAM-based) используются специализированные конфигурационные ПЗУ.
Для разработки цифровых устройств с использованием ПЛИС фирмы-производители предоставляют высокопроизводительные, гибкие и удобные в использовании системы автоматизированного проектирования (САПР). Современные САПР включают в себя все этапы маршрута проектирования для ПЛИС:
- описание проекта - поддерживаются как графическое, так и текстовое описание с использованием языков описания аппаратуры VHDL, Verilog, SystemVerilog (в последнее время фирмы-производители уделяют большое внимание использованию высокоуровневых средств описания проектов (High Level Synthesis), представляющих собой расширения языка программирования Си);
- поведенческое моделирование описания проекта;
- синтез проекта;
- размещение и разводка синтезированного проекта в выбранной ПЛИС;
- статический временной анализ;
- аппаратная внутрисхемная отладка;
- внутрисхемное программирование.
Для упрощения процесса проектирования фирмы-производители предлагают разработчикам готовые решения: примеры проектирования и IP-ядра - от довольно простых до самых сложных (например, синтезируемые процессорные 32-разрядные ядра, IP-ядра блоков цифровой обработки сигналов, IP-ядра высокоскоростных коммуникационных интерфейсов, контроллеров внешней памяти и т.п.).
Для экономии времени при освоении ПЛИС очень удобно использовать готовые отладочные платы, которые предлагаются как самими фирмами-производителями ПЛИС, так и их партнерами.