CPLD

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
CPLD ПЛИС Altera MAX 7128, эквивалентная 2500 логическим вентилям

CPLD (англ.  Complex Programmable Logic Device) — программируемая логическая интегральная схема (ПЛИС) в диапазоне сложности между микросхемами PAL (англ.) (Programmable Array Logic) и FPGA (англ.  Field-Programmable Gate Array), сочетающая их архитектурные решения.

Описание[править | править исходный текст]

Основой CPLD является матрица макроячеек, в которой реализованы логические соединения вентилей или более сложные логические операции. Блоки макроячеек объединены программируемой коммутационной матрицей с последующим выходом на входы (выходы) схемы.[1]

Общие особенности технологий:

  • CPLD и FPGA:
    • Большое количество доступных логических вентилей. CPLD обычно имеют от нескольких тысяч до десятков тысяч логических вентилей, что позволет реализовать сравнительно сложные устройства обработки данных (для PAL это - до нескольких сотен логических вентилей, максимум. В отличие от них, количество вентилей в современных FPGA может достигать нескольких миллионов.
    • Для FPGA возможно программирование более гибкой и сложной логики, чем простейшие выражения типа суммы произведений, вплоть до реализации как элементов DSP, цифровых фильтров, так и CPU в целом (в отличие от CPLD, технология FPGA базируется на вентильных матрицах Look-up tables (LUTs). [1][2] [3]
  • CPLD и PAL:
    • Энергонезависимая («Non-volatile» (англ.)) конфигурационная память. В отличие от большинства FPGA, для CPLD не требуется еще одна микросхема для их конфигурации (ROM), и CPLD может функционировать непосредственно после подачи на него питания (включения).
    • В исходных вариантах CPLD маршрутизация ограничивала возможность подключения большинства логических блоков к их каналам ввода-вывода через внешние пины, что не позволяло оптимально использовать внутреннюю память микросхем и реализовать многоуровневую логику. Для более новых семейств больших CPLD это ограничение уже не характерно.

Главным отличием между большими CPLD и малыми FPGA до недавних пор было наличие внутренней энергонезависимой конфигурационной памяти в CPLD. Это отличие становится уже не столь значимым, поскольку ряд последних моделей FPGA также включают такую внутреннюю память. Тем не менее, наличие такой внутренней энергонезависимой конфигурационной памяти, наряду с такой важной характеристой, как устойчивость показателей, делают CPLD незаменимыми для современных цифровых схем в качестве устройства для инициализации схемы, перед тем, как передать управление другим микросхемам, не обладающим такой способностью. В качестве примера можно привести использование CPLD для загрузки данных конфигурации FPGA из энергонезависимой памяти. CPLD можно назвать промежуточным этапом между устройствами PAL и FPGA, и, по мере развития технологии, различия между CPLD и FPGA продолжают размываться (например, иногда некоторые CPLD фирмы Intel называют FPGA). В то же время, сравнивая эти два семейства и учитывая развитие самих CPLD и их возможностей, такие их архитектурные преимущества, как цена, энергонезависимая конфигурация, макроячейки с предсказуемыми характеристиками параметров, меньшее энергопотребление, можно предположить, что CPLD будут иметь в обозримом будущем устойчивую нишу в задании начальных параметров цифровых схем, мобильной технологии, расширении числа входов/выходов для более сложных микросхем, предобработке сигналов (например, контроллер COM-порта, USB, VGA) и в других применениях.[1] [4] [5][6]

Основные производители CPLD[править | править исходный текст]

Примечания[править | править исходный текст]

См. также[править | править исходный текст]

Ссылки[править | править исходный текст]