Программируемые логические интегральные схемы

Программируемая логическая интегральная схема (ПЛИС), разработанная в 1978 г., показала возможность реконфигурирования разрабатываемого устройства без повторного проектирования печатной платы. Технология ПЛИС позволяет за короткий промежуток времени реализовать в кристалле практически любой проект цифрового устройства, имея в наличии лишь ПЭВМ и средство автоматизированного проектирования (САПР) программируемых логических интегральных схем.

ПЛИС классифицируют по многим признакам: уровню интеграции и связанной с ним логической сложности; архитектуре (типу функциональных блоков, характеру системы межсоединений); числу допустимых циклов программирования; типу памяти конфигурации; степени зависимости задержек сигналов от путей их распространения; системным свойствам; технологии производства и т.д.

Наибольший интерес представляет классификация ПЛИС по архитектуре, так как она охватывает весь класс задач, пригодных для решения на той или иной ПЛИС. Основным критерием такой классификации является наличие, вид и способы коммутации логических матриц. По этому признаку можно выделить следующие классы ПЛИС (рис. 6.19):

  • 1. Простые программируемые логические устройства (SPLD - Simple Programmable Logic Devices), которые делятся на подклассы:
    • - программируемые логические матрицы, ПЛМ (FPLA - Field Programmable Logic Array; FLPS - Field Programmable Logic Sequensers);
    • - программируемая матричная логика, ПМЛ (PAL - Programmable Array Logic; GAL - Generic Array Logic);
    • - программируемая макрологика (ПМ).
  • 2. Программируемые коммутируемые матричные блоки, ПКМБ (CPLD - Complex Programmable Logic Devices).
  • 3. Программируемые вентильные матрицы, ПВМ (FPGA - Field Programmable Gate Array).
  • 4. ПЛИС с комбинированной ПВМ.
Классификация ПЛИС по архитектуре

Рис. 6.19 Классификация ПЛИС по архитектуре

ПЛИС представляет собой матрицу маловходовых (от двух до пяти входов) логических элементов, триггеров, отрезков линий связи, соединяемых перемычками из полевых транзисторов. Судя по английскому названию - Field Programmable Gate Array (FPGA), ПЛИС программируются изменением уровня электрического поля (field) в затворах этих транзисторов. Затворы всех «программирующих» полевых транзисторов подключены к выходам триггеров одного длинного сдвигового регистра, который заполняется при программировании ПЛИС. Некоторые из участков этого регистра могут также исполнять роль ячеек ПЗУ.

Прошивка обычно хранится в ПЗУ, стоящем рядом с программируемой логической интегральной схемой. После включения питания или по сигналу сброса она автоматически переписывается в программирующий сдвиговый регистр ПЛИС. Этот процесс называется конфигурированием программируемой логической интегральной схемы. Так как ее основу составляют триггеры, хранящие прошивку, называемую конфигурацией, то программируемые логические интегральные схемы изготавливаются по технологии микросхем статического ОЗУ.

Структура ПЛИС основана на понятиях булевой алгебры и содержит следующие логические элементы:

  • - «И» (конъюнкторы);
  • - «ИЛИ» (дизъюнкторы);
  • - «НЕ» (инверторы);
  • - буферные элементы с прямыми, инверсными и тристабильными выходами;
  • - исключающее «ИЛИ»;
  • - триггеры D- и Т-типа;
  • - мультиплексоры конфигурации.

Так как любая логическая функция может быть представлена в виде суммы произведений, т. е. дизъюнктивной нормальной формы (ДНФ), то базовыми структурными компонентами ПЛИС являются матрицы элементов «И» и «ИЛИ».

На выходе матриц расположены так называемые макроячейки (macrocells), конфигурация которых зависит от типа ПЛИС. Макроячейки могут содержать триггеры, тристабильные буферы, элементы управления полярностью сигнала и др. Пути прохождения сигнала в макроячейке (конфигурация) могут быть жестко заданы структурой ПЛИС или управляться посредством мультиплексоров.

ПЛИС также содержат многочисленные обратные связи, которые позволяют использовать текущие состояния и формировать последовательностные автоматы различных классов (рис. 6.20).

Логические матрицы изначально обеспечивают соединение любого сигнала со входа или обратную связь с любым конъюнктором или дизъюнктором.

Обобщенная структура ПЛИС

Рис. 6.20 Обобщенная структура ПЛИС

В соответствии с необходимостью реализации требуемых логических функций, некоторые из этих соединений разрываются, а некоторые остаются и служат для коммутации сигналов. Возможность разрыва обеспечивается наличием программируемого элемента (перемычки) в местах соединения сигнальных линий. В зависимости от технологии изготовления ПЛИС перемычка представляет собой плавкую металлическую дорожку или ячейку памяти. Один из конъюнкторов матрицы «И» изображен на рисунке 6.21. В ПЛИС такой конъ- юнктор называется термом.

Условное изображение конъюнктора матрицы «И»

Рис. 6.21 Условное изображение конъюнктора матрицы «И»

В ^запрограммированном состоянии каждый из сигналов А, В и С является входом конъюнктора, образуя логическую функцию «ЗИ». Разрывая одну или несколько перемычек (на рисунках они обозначаются символом «»), можно получить любую конъюнкцию от этих сигналов (рис. 6.22).

Матрицы логического «ИЛИ» в ПЛИС бывают двух видов: программируемые (рис. 6.23) и фиксированные (рис. 6.24).

Программируемые матрицы «ИЛИ» аналогичны матрице «И» и изначально коммутируют любой терм с любым дизъюнктором.

Фиксированные матрицы «ИЛИ» обеспечивают соединение каждого дизъюнктора со строго определенными термами. Количество таких термов, как правило, составляет от 8 до 16. Фиксированные матрицы «ИЛИ» менее универсальны, но проще для проектирования.

Выходной сигнал логических матриц попадает в макроячейку и может быть сохранен в памяти триггера, выведен на контакт или возвращен через ОС в матрицу «И».

Некоторые другие ПЛИС имеют макроячейки с более сложной и гибкой структурой, содержащие до 5 перемычек конфигурации. Количество макроячеек в ПЛИС составляет от 8 до 100 и более.

Получение конъюнкции входных сигналов

Рис. 6.22 Получение конъюнкции входных сигналов

Программируемые матрицы «ИЛИ»

Рис. 6.23 Программируемые матрицы «ИЛИ»

Фиксированные матрицы «ИЛИ»

Рис. 6.24 Фиксированные матрицы «ИЛИ»

Внешние запоминающие устройства

В качестве внешней памяти ПЭВМ используются:

  • 1) накопители на магнитных дисках (НМД);
  • 2) накопители на магнитных лентах (НМЛ) - стримеры;
  • 3) оптические ЗУ;
  • 4) магнитооптические ЗУ;
  • 5) полупроводниковая твердотельная память (флэш-память).
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >