МИКРОСХЕМЫ С ПРОГРАММИРУЕМОЙ СТРУКТУРОЙ 1
Начальные сведения о ПЛИС 2 ПЛИС (Programmable Logic Devices) представляют собой новую электронную компонентную базу, на основе которой проектируются и изготовляются современные цифровые устройства различного назначения. Несомненными достоинствами ПЛИС являются возможность размещения на одном кристалле нескольких цифровых устройств и возможность перепрограммирования (переконфигурирования) с целью получения схем с новыми функциональными параметрами. ПЛИС предоставляют возможности быстрого создания цифровых устройств с задаваемой пользователем внутренней структурой. ПЛИС представляют собой интегральные схемы с программируемой пользователем структурой (ИСПС), которые, в свою очередь, относятся к специализированным интегральным схемам. Классификация ПЛИС по архитектуре в общей классификации микросхем с программируемой структурой приведена на следующем слайде. Важным видом БИС/СБИС сейчас стали и "системы на кристалле" (SOPC, System On Programmable Chip), которые не указаны в классификации на рис. 1, поскольку они в нее непосредственно не встраиваются. К "системам на кристалле" относятся схемы, объединяющие в себе все основные функциональные элементы конечного продукта (процессор, память, аппаратные быстродействующие блоки разного функционального назначения, интерфейсные схемы и т. д.). Термин "системы на кристалле" появился после выпуска ПЛИС, содержащих сотни тысяч или даже миллионы эквивалентных вентилей.
3 Классификация микросхем с программируемой структурой Рис. 1 Классификация специализированных интегральных схем Среди программируемых пользователем логических (цифровых) схем выделены простые (SPLD), представляющие первое поколение схем с программируемой структурой в число которых входят микросхемы ПЛМ и ПМЛ, более сложные программируемые логические устройства (CPLD) и программируемые пользователем вентильные матрицы (FPGA), отличающиеся максимальной сложностью структуры и максимальными функциональными возможностями. К микросхемам, программируемым изготовителем (точнее с его участием), относятся полу заказные и заказные ИС. В число полу заказных ИС входят так называемые базовые матричные кристаллы БМК, среди которых выделены стандартные и появившиеся в последнее время структурированные варианты. Полностью заказные схемы отличаются наилучшими техническими характеристиками, но и самым дорогостоящим проектированием.
Программируемые логические матрицы (ПЛМ) 4 Рис. 2 Базовая структура ПЛМ БВх – входные буферы, преобразующие однофазные входные сигналы в парофазные. Ми – матрица элементов И (конъюнкторов), на выходе которой формируются λ термов. Мили – матрица элементов ИЛИ (дизъюнкторы), формирующая n выходных функций.
5 Программируемые логические матрицы (ПЛМ) Рис. 3 Схема ПЛМ на вентильном уровне Рис. 4 Упрощенное изображение схемы многовходового ЛЭ (а) и ПЛМ (б)
ПЛМ с матрицами элементов ИЛИ-НЕ 6 Пусть требуется получить терм Воспользовавшись правилом де Моргана получим Формирование функции из термов будет выполняться согласно формуле Рис. 5 Структура ПЛМ на элементах ИЛИ-НЕ Рис. 6 Схемная реализация ПЛМ с матрицами ИЛИ-НЕ Отечественные ПЛМ серия К556 (микросхемы РT1, PT2 схема технологии ТТЛШ с программированием прожиганием перемычек). Их размерность 16 входов, 48 термов, 8 выходов, задержка около 50 нс. Микросхема РТ1 имеет выходы с открытым коллектором, а РТ2 с тремя состояниями.
7 Рис. 7 Базовая структура ПМЛ В сравнении с ПЛМ схемы ПМЛ имеют меньшую функциональную гибкость, т. к. в них матрица ИЛИ фиксирована, но их изготовление и использование проще. Преимущества ПМЛ особенно проявляются при проектировании несложных устройств. Продукция класса SPLD, выпускаемая несколькими крупными фирмами, почти исключительно представлена микросхемами ПМЛ (PAL, GAL). Структуры ПЛМ (PLA) типичны для схем формирования управляющих сигналов в машинных циклах микропроцессорных систем и других подобных применений, где они проектируются как часть систем, а не являются автономными микросхемами. Программируемая матричная логика (ПМЛ)
Обогащение функциональных возможностей ПЛМ и ПМЛ 8 Программирование выходных буферов Рис. 8 Схема программируемого выходного буфера Программируемый буфер дает дополнительные возможности для минимизации числа термов в реализуемой системе. В исходной системе можно заменять функции их инверсиями, если это приводит к уменьшению числа термов. Пример Пусть нужно воспроизвести систему из двух функций: Карты Карно для этих функций показывают контуры, соответствующие 8 различным термам системы: При инвертировании, например, функции F2 получим карту с контурами, показанными штриховыми линиями, и систему функций: в которой всего пять различных термов. Возврат от инверсной функции к исходной функции осуществляется введением заряда в плавающий затвор транзистора в линии F2.
9 Рис. 9 Схема с двунаправленным буфером Обогащение функциональных возможностей ПЛМ и ПМЛ Применение двунаправленных выводов Используя элементы с тремя состояниями, можно приспосабливать выводы для работы в качестве входов или выходов в зависимости от их программирования. В такой схеме один из конъюнкторов предназначен для управления элементом с тремя состояниями выхода (рис. 9). Выход элемента одновременно связан с матрицей И как вход. В схеме с некоторым числом двунаправленных выводов можно изменять соотношение числа входов- выходов. Если число входов равно m, число выходов n и число двусторонних выводов р, то можно иметь число входов от m до m + p и число выходов от n до n + p при условии, что сумма числа входов и выходов не превосходит m + n + p.
10 Рис. 10 Включение элементов памяти Обогащение функциональных возможностей ПЛМ и ПМЛ Введение элементов памяти Для построения автоматов нужны элементы памяти (триггеры). Триггер D включается в выходную цепь матрицы ИЛИ. Через управляемый буфер с третьим состоянием выход триггера соединен с выходом соответствующего канала ПЛМ или ПМЛ. Выходы триггера подаются обратно в матрицу И в виде парофазных сигналов. При показанном включении триггера реализуется типовое функционирование элемента памяти в схеме автомата. Функция возбуждения триггера вырабатывается логическими ресурсами комбинационной части ПЛМ или ПМЛ, а выход триггера подается в эту часть, поскольку функции возбуждения триггеров зависят не только от входных переменных, но и от внутреннего состояния автомата. Сигнал ОЕ разрешает или запрещает передачу выходного сигнала триггера на выход канала ПЛМ или ПМЛ.
11 Рис. 11 Разделение термов в ПМЛ Обогащение функциональных возможностей ПЛМ и ПМЛ Использование разделяемых конъюнкторов в схемах ПМЛ "Разделяемость" здесь означает "возможность использования как одним, так и другим каналом", при которой одни и те же конъюнкторы могут быть отданы тому или иному выходу схемы. В таких схемах сложные функции с большим числом термов могут воспроизводиться за счет заимствования термов от каналов выработки простых функций, где имеются избыточные термы. Столбец из четырех программируемых мультиплексоров реализует разделяемость термов, позволяя данному макроэлементу использовать не только термы от своих конъюнкторов, но и получать термы от соседних каналов (при программировании мультиплексоров 1 и 4 на передачу данных от верхних входов) и отдавать свои термы соседям с выходов дизъюнкторов 1 и 2. Программирование мультиплексора на передачу данных от нижнего входа исключает поступающие на него термы из формируемого набора. Окончательный набор термов формируется дизъюнктором 3, на входы которого поступают выходные сигналы мультиплексоров. Выработанная функция F может содержать до 16 термов.
12 Рис. 12 ПМЛ без элементов памяти ПМЛ КР1556ХЛ8 Примеры отечественных ПМЛ В серию КР1556 отечественных ПМЛ входят микросхемы ХЛ8, ХП4, ХП6, ХП8. Буквой Л отмечаются ПМЛ чисто логического типа (без элементов памяти), а буквой П ПМЛ с триггерами. В микросхеме ХЛ8 (рис. 12) число входов может изменяться от 10 (входы, показанные с левой стороны матрицы) до 16, если все двунаправленные выводы В2...В7 запрограммированы как входы. Число выходов изменяется от 2 до 8. Суммарное число входов и выходов не может превышать 18.
13 Рис. 13 ПМЛ с элементами памяти ПМЛ КР1556ХП4 Примеры отечественных ПМЛ Структура ИС ХП4 (рис. 13) имеет первый уровень логики, на котором образуются термы входных переменных, второй уровень матрица ИЛИ, состоящая из 8 дизъюнкторов (четырех 7- ходовых и четырех 8-ходовых). Выходные усилители выполнены по схеме с тремя состояниями. Четыре D-триггера имеют управление от положительного фронта внешнего синхросигнала С. Сигнал ОЕ управляет буферами, подключенными к выходам триггеров.
14 Пример решения задачи на ПМЛ Пусть на ПМЛ КР1556ХП4 требуется реализовать 4-разрядный синхронный счетчик, выполняющий помимо счета также операцию параллельной асинхронной загрузки. Для реализации счетчика нужно определить функции возбуждения триггеров всех его разрядов. В нашем распоряжении имеются триггеры типа D, для которых функции возбуждения совпадают с состояниями, которые должны принять триггеры в следующем такте. Найдем выражения для этих состояний. Обозначим выходы разрядов счетчика, начиная с младшего, через Q0, Q1, Q2, Q3. Сигнал асинхронной загрузки обозначим как LE (Load Enable). Загружаемое слово A3 A2 A1 A0. Функции возбуждения триггеров принимают вид («н» - новое состояние выходов триггеров):
СПАСИБО ЗА ВНИМАНИЕ