Uploaded by Екатерина Буценко

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

advertisement
Общие сведения
ПЛИС (англ. programmable logic device, PLD) — электронный
компонент, используемый для создания цифровых интегральных схем. В
отличие от обычных цифровых микросхем, логика работы ПЛИС не
определяется при изготовлении, а задаётся посредством программирования.
Здесь под программируемостью понимается возможность изменения
внутренней структуры ИС таким образом, чтобы она обеспечивала
реализацию заданных функций алгебры логики (ФАЛ) на аппаратном уровне.
Структура ПЛИС основана на ФАЛ (булевой алгебры) и содержит
следующие логические элементы:
— логическое «И» (коньюнкторы);
— логическое «ИЛИ» (дизъюнкторы);
— логическое «НЕ» (инверторы);
— буферные элементы с прямыми, инверсными и тристабильными
выходами;
— «Исключающее ИЛИ»;
— триггеры D- и T-типа;
— мультиплексоры конфигурации.
Поскольку любая логическая функция может быть представлена в виде
суммы произведений —дизъюнктивной нормальной формы (ДНФ), базовыми
структурными компонентами ПЛИС являются матрицы элементов «И» и
«ИЛИ».
На выходе матриц расположены так называемые макроячейки
(Macrocells), конфигурация которых зависит от типа ПЛИС. Макроячейки
могут содержать различные триггеры, тристабильные буферы, элементы
управления полярностью сигнала и др. Пути прохождения сигнала в
макроячейке (конфигурация) могут быть жестко заданы структурой ПЛИС
или управляться посредством мультиплексоров. Размерность логических
матриц и конфигурация макроячеек определяют степень интеграции и
функциональные
возможности
ПЛИС.
ПЛИС
также
содержат
многочисленные обратные связи (ОС), позволяющие использовать текущие
состояния и формировать последовательностные автоматы различных
классов.
Классификация
Наибольший
интерес
представляет
классификация
ПЛИС
по
структурам, т.к. она дает наиболее полное представление о классе задач.
Основным критерием такой классификации является наличие, вид и способы
коммутации логических матриц. По этому признаку можно выделить
следующие классы ПЛИС:
— программируемые логические матрицы (ПЛМ);
2
— программируемая матричная логика (ПМЛ);
— программируемая макрологика (ПМ);
— программируемые коммутируемые матричные блоки (ПКМБ);
— программируемые вентильные матрицы (ПВМ).
Программируемые логические матрицы — наиболее традиционный тип
ПЛИС, имеющий программируемые матрицы «И» и «ИЛИ». Недостатком
структуры ПЛМ является слабое использование ресурсов программируемой
матрицы ИЛИ. Поэтому была предложена более простая, но тем не менее,
более эффективная архитектура программируемой матричной логики (ПМЛ).
Программируемая
матричная
логика
—
это
ПЛИС,
имеющие
программируемую матрицу «И» и фиксированную матрицу «ИЛИ». К этому
классу относятся большинство современных ПЛИС. Разновидностью класса
ПМЛ являются ПЛИС, имеющие только одну (программируемую) матрицу
«И».
Программируемая
программируемую
макрологика
матрицу
«И-НЕ»
—
ПЛИС,
содержащие
или
«ИЛИ-НЕ»,
но
за
одну
счет
многочисленных инверсных ОС способные формировать сложные логические
функции.
Программируемые коммутируемые матричные блоки — это ПЛИС,
содержащие несколько (обычно 4—8) матричных логических блоков (МЛБ),
объединенных коммутационной матрицей. Каждый МЛБ представляет собой
структуру типа ПМЛ, т.е. программируемую матрицу «И», фиксированную
матрицу «ИЛИ» и макроячейки.
Программируемые вентильные матрицы (ПВМ), состоят из логических
блоков (ЛБ) и коммутирующих путей - программируемых матриц соединений.
Логические блоки таких ПЛИС состоят из одного или нескольких
относительно простых логических элементов, в основе которых лежит таблица
3
перекодировки (ТП, Look-up table - LUT), программируемый мультиплексор,
D-триггер, а также цепи управления. ПВМ используются, главным образом,
для разработки счетных структур с минимальным комбинационным
обрамлением.
Пример
На базе ПЛИС можно разработать устройство, обеспечивающее
передачу
текстовой
информации
на
бытовой
монитор
посредствам
интерфейса VGA.
Для примера можно использовать плату Altera Cyclone IV на плате от
OMDAZZ
Устройства
Cyclone
IV
предлагают
до
восьми
высокоскоростных
приемопередатчиков, обеспечивающих:
 Скорость передачи данных до 3,125 Гбит / с
 Кодировщик / декодер 8B /10B
 До 532 пользовательских операций ввода-вывода
 Потребляемая мощность 150 мили Вт на канал
 Электрический холостой ход
 Полезная нагрузка до 256 байт
 Один виртуальный канал
 Буфер повторных попыток 2 КБ
 Буфер приемника (Rx) объемом 4 КБ
 Гигабитный Ethernet (1,25 Гбит /с)
 DisplayPort (2,7 Гбит /с)
 Подключение
с
использованием
передовых
технологий (SATA) (до 3,0 Гбит / с)
 Скорость передачи данных (до 3,072 Гбит /с)
4
последовательных
Описывать (программировать) ПЛИС нужно в программе QUARTUS 13.
ГЛАВНОЕ ОТЛИЧИЕ МИКРОКОНТРОЛЛЕРА ОТ ПЛИСА: На языке
С для микроконтроллеров мы программируем, то есть создаем список
действий, которые микроконтроллер исполняет последовательно, даже
команда прерывания требует остановку основного кода. В свою очередь
ПЛИС — это матрица элементарных логических элементов (электронный
мини-конструктор), к которому мы создаем ОПИСАНИЕ необходимого нам
процесса. Далее, программа при помощи встроенного компилятора сама
превращает описание в схему связей регистров и прочих элементов. Только
схема будет логической, виртуальной.
Элементы в схеме располагаются слева направо по общепринятым
правилам. Слева изображаются порты ввода. Управление осуществляется
нажатием на пользовательскую кнопку. Устройство будет тактироваться от
внешнего кварцевого генератора на 50МГц. На модуль VGA сигнал поступает
умноженным на pll (для увеличения сигнала, подстройка сигнала для VGA).
Прием информации через протокол связи RX.
Перекладкой данной схемы на реальную архитектуру, подключенной
ПЛИС занимается фиттер. Фиттеру также необходимо объяснить, какой
сигнал
требует
повышенного
быстродействия,
а
какой
программировании микроконтроллеров такой задачи не возникает)
5
нет
(при
Download