Виды
Актуальными на сегодняшний день являются два основных вида ПЛИС:
1. CPLD (Complex Programmable Logic Device -
Программируемая
Логическая Интегральная Микросхема, собственно это и есть ПЛИС в
еѐ
классическом
понимании).
В
ней
обычно
есть
встроенная
энергонезависимая памятью, в которую загружается прошивка.
Внутренняя структура строится на матрице макроячеек или логических
блоков, а количество элементов в них лежит в пределах сотен и тысяч штук.
Благодаря относительной простоте стоят дешевле чем следующий вид
программируемой логики. Всѐ это приводит к тому, что используется CPLD в
основном в схемах, где нужна высокая скорость и большое число выводов,
при этом выполняют несложные задачи.
2. FPGA (Field-Programmable Gate Array -
Программируемая
Пользователем Вентильная Матрица, однако еѐ часто относят к ПЛИС)
-
более развитые и сложные устройства по сравнению с CPLD, строятся на
логических блоках с гибкой коммутаций и содержат большее число
элементов (десятки или сотни тысяч штук).
Прошивка, как правило, хранится во внешней энергонезависимой памяти.
Кроме простейших логических элементов в FPGA могут содержаться
готовые блоки для выполнения каких-либо операций, например, блоки
обработки сигнала DSP. Всѐ это позволяет реализовать процессор,
устройства обработки сигналов и другие сложные устройства.
Интересно:
Хотя фактически наличие энергонезависимой памяти не делает
программируемую логику CPLD. Это частично заблуждение. Главным
отличием CPLD от FPGA является внутренняя структура.
Подробнее внутреннее устройство CPLD изображено на рисунке ниже.
А примерная схема еѐ макроячейки выглядит таким образом:
Макроячейка состоит из программируемых мультиплексоров, триггеров
(одного или нескольких) и формирует группу выходных сигналов ФБ в
нескольких их вариантах.
Ниже приведен еще один пример – блок-схема CPLD микросхемы семейства
MAX II фирмы Altera.
И структурный план микросхем этого же семейства.
Промежуточные шины макроячейкам назначаются с помощью такого узла,
как распределитель, на англ. он звучит как Logic Allocator, что изображено на
схеме ниже, на ней же изображена матрица переключений (Global Routing
Pool), а у выходных макроячейки (macrocells) имеют по две обратных связи.
Внешние выводы микросхемы соединяются с выходами макроячеек через
еще один блок (матрицу) – ORP (Output Routing Pool), обратите внимание,
что через неѐ же происходит соединение ВХОДНОЙ логики с GRP, что
изображено на иллюстрации ниже.
В некоторых CPLD есть т.н. прямые входы (Direct Input) – они соединены со
входами ячеек напрямую, что уменьшает задержки.
У FPGA структура имеет вид:
L – логический конфигурируемый блок;
S (substitution block) – блок подстановок, он получает на ход определенное
число бит, преобразует, по определенному алгоритму, а на выходе выдаѐт
другое число бит. Другими словами – дешифратор, шифратор и коммутатор.
C (connection block) – блок соединений.
Схема S-блока:
Научитесь разрабатывать устройства на базе микроконтроллеров и станьте
инженером умных устройств с нуля:
Инженер умных устройств
Do'stlaringiz bilan baham: |