Программируемые логические интегральные схемы
Лекция 2.
Программируемые логические интегральные схемы
ПЛИС - это матричные большие интегральные схемы, позволяющие программно скомпоновать в одном корпусе электронную схему, эквивалентную схеме, включающей от нескольких десятков до нескольких сотен ИС стандартной логики. По сравнению с другими микроэлектронными технологиями, в том числе базовыми матричными кристаллами (БМК), технология ПЛИС обеспечивает рекордно короткий проектно-технологический цикл (от нескольких часов до нескольких дней), минимальные затраты на проектирование, максимальную гибкость при необходимости модификации аппаратуры.
ПЛИС содержат программируемую матрицу элементов логического И, программируемую или фиксируемую матрицу элементов логического ИЛИ и так называемые макро ячейки. Макро ячейки как правило включают в себя триггер, тристабильный буфер и вентиль исключающее ИЛИ, управляющий уровнем активности сигнала. Размерность матриц и конфигурация макро ячеек определяют степень интеграции и логическую мощность ПЛИС. В сочетании с разнообразными обратными связями перечисленные элементы формируют завершённую автоматную структуру, ориентированную на реализацию как комбинационных (дешифраторов, мультиплексоров, сумматоров), так и последовательных схем (управляющих автоматов, контроллеров, счётчиков).
В ПЛИС заложены возможности, которые позволяют превратить её в ИС с любой функцией цифровой логики. Проектирование сводится к выявлению программируемых элементов (перемычек или запоминающих ячеек), после удаления которых в структуре схемы остаются только связи, которые необходимы для выполнения требуемых функций. На практике эта задача весьма не простая, т.к. современные ПЛИС содержат в среднем несколько десятков тысяч перемычек. Поэтому для проектирования применяют САПР ПЛИС. Каждая компания - производитель ПЛИС разрабатывает и выпускает свою САПР, обеспечивающую реализацию всех этапов проектирования для каждого типа программируемой логики. Благодаря различным САПР, а также структурным и технологическим особенностям, ПЛИС представляют технологию рекордно-короткого цикла разработки РЭА.
Если за рубежом ПЛИС уже заняли заметное место в арсенале разработчика РЭА, то в России эта технология только начинает по-настоящему развиваться.
В каких случаях целесообразно применять ПЛИС?
При разработке оригинальной аппаратуры, а также для замены обычных ИС. При этом значительно уменьшаются размеры устройства, снижается потребляемая мощность и повышается надёжность. ( Наиболее эффективно использование ПЛИС в изделиях, требующих нестандартных схемотехнических решений. В этих случаях ПЛИС даже средней степени интеграции (24 вывода) заменяет, как правило, до 10-15 обычных ИС.)
При необходимости резко сократить сроки и затраты на проектирование, а также повысить возможность модификации и отладки аппаратуры. Поэтому ПЛИС широко применяется в стендовом оборудовании, на этапах разработки и производства опытной партии новых изделий, а также для эмуляции схем, подлежащих последующей реализации на другой элементной базе.
Отдельная область применения ПЛИС – проектирование на их основе устройств для защиты программного обеспечения и аппаратуры от несанкционированного доступа и копирования. ПЛИС обладают такой технологической особенностью, как «бит секретности», после программирования которого схема становится недоступной для чтения. Обычно применение 1-2 ПЛИС средней степени интеграции оказывается вполне достаточной для надёжной защиты информации.
Наиболее широко ПЛИС используются в микропроцессорной технике. На их основе разрабатываются контроллеры, адресные дешифраторы, логика обрамления микропроцессоров, формирователи управляющих сигналов и др. На ПЛИС часто изготавливают микропрограммные автоматы и другие специализированные устройства (цифровые фильтры, схемы обработки сигналов и изображений, процессоры быстрого преобразования Фурье, аппаратура уплотнения телефонных сигналов и т.д.).
Рекомендуемые материалы
Применение ПЛИС становится актуальным ещё и потому, что у разработчика зачастую нет необходимых стандартных микросхем.
Рис. 8. Логический блок ПЛИС
В настоящее время на мировом рынке можно отметить несколько основных компаний-производителей — ПЛИС-XILINX, ALTERA, LATTICE, AT&T, INTEL, выпускающих микросхемы с архитектурой EPLD (EPROM technology bazed complex Programmable Logic Device) - многократно программируемые, и FPGA (Field Programmable Gate Array) - многократно реконфигурируемые.
В качестве памяти для хранения конфигурации в ПЛИС EPLD используется ППЗУ с ультрафиолетовым стиранием, а у ПЛИС FPGA - статическое ОЗУ.
Микросхема FPGA представляет собой матрицу логических ячеек, соединенных между собой логическими ключами. Содержащаяся в микросхемах FPGA статическая память, будучи заполненной определенной битовой последовательностью, воздействует на логические ячейки и соединяющие их ключи, позволяя получить требуемые электрические схемы (регистры, счетчики, логические схемы и т.д., соединенные друг с другом в требуемом порядке). Каждая микросхема FPGA имеет также вход для записи битовой последовательности, заполняющей статическую память, а также элементы "вход/выход" для связи с другими микросхемами.
Рис. 9. Блок ввода/вывода ПЛИС
Существует крайняя точка зрения, что со временем ПЛИС вытеснят серийные микропроцессоры, так как пользователь сможет реализовать требуемую ему систему программными средствами, учитывая всю специфику своего приложения.
В лекции "6 - Гидродинамические методы" также много полезной информации.
Таким образом, на основе одной или нескольких микросхем FPGA можно создать реконфигурируемый процессор, обладающий преимуществами спецпроцессора на "жесткой" логике, но способного путем изменения содержимого статической памяти решать любые задачи, подобно универсальному процессору.
Логический блок - один из базовых элементов архитектуры ПЛИС FPGA, может выполнять любую логическую функцию в соответствии с заданной битовой последовательностью (рис.8). Изменять выполняемую функцию можно неограниченное количество раз путем загрузки другой битовой последовательности.
Блок ввода/вывода (рис.9), так же как и логический блок, может быть настроен на выполнение любого электрического соединения реализованной внутри ПЛИС схемы с внешним миром через соответствующий контакт микросхемы.
Направление развития микроэлектронных компонентов вычислительных систем
Для создания высокоэффективных вычислительных систем важно интегрировать на кристалле как можно больше функций по обработке и хранению данных, а также интерфейс с пользователем и другими вычислительными системами.
Стремление к интеграции совокупности функций обусловлено рядом факторов. Во-первых, при однокристальной реализации пропускная способность интерфейсов между подсистемами обработки и хранения данных не ограничивается количеством выводов корпуса кристалла и может достигать требуемого значения. Во-вторых, упрощается системная плата, на которую монтируется кристалл, уменьшается объем монтажных работ, повышаются показатели надежности и производительности вычислительной системы и уменьшается ее стоимость. В-третьих, снижаются требования к количеству выводов корпуса кристалла, так как минимизируется интерфейс с другими компонентами вычислительной системы, например с устройствами отображения информации. И, наконец, в четвертых, реализуются возможности миллионов транзисторов, которые могут быть размещены на кристалле. Эти транзисторы можно использовать как для построения специализированной системы, состоящей из совокупности проблемно-ориентированных блоков, так и для создания параллельных систем из нескольких процессоров.
Наряду с созданием однокристальных систем существует проблема организации быстрых интерфейсов между микросхемами в многокристальных системах, например между микросхемами процессора и памяти. В Pentium Pro эта проблема решается путем размещения в одном корпусе двух кристаллов: собственно микропроцессора и кэш-памяти второго уровня. Другое возможное решение этой проблемы заключается в создании многокристальных микросборок, в которых бескорпусные СБИС монтируются на кремниевой подложке с нанесенными, возможно несколькими, слоями межкристальных соединений.