Открыть сервис

Программируемая логическая матрица

Программируемая логическая матрица (ПЛМ, англ. Programmable Logic Array, PLA) — это интегральная микросхема, предназначенная для реализации цифровых логических функций в виде суммы произведений (дизъюнктивной нормальной формы). ПЛМ состоит из двух программируемых матриц: матрицы «И» (конъюнкций) и матрицы «ИЛИ» (дизъюнкций), что позволяет пользователю задавать произвольные комбинационные схемы путём настройки соединений между элементами. В отличие от более простых программируемых логических интегральных схем (ПЛИС) с фиксированной матрицей «И» (например, ПЗУ), ПЛМ обеспечивает гибкость в обеих стадиях логического преобразования.

История

Концепция программируемых логических матриц была предложена в конце 1960-х годов для упрощения проектирования цифровых устройств. Первые коммерческие реализации появились в начале 1970-х годов. В 1970 году компания Texas Instruments выпустила микросхему TMS2000, которая содержала программируемую матрицу «И» и фиксированную матрицу «ИЛИ», что фактически представляло собой программируемое постоянное запоминающее устройство (ППЗУ). Настоящая ПЛМ с двумя программируемыми матрицами была впервые представлена компанией Signetics в 1975 году под обозначением 82S100. Она содержала 16 входов, 48 термов (произведений) и 8 выходов, что позволяло реализовывать до 48 логических произведений.

В 1980-е годы развитие ПЛМ стимулировалось потребностями в быстром прототипировании и малосерийном производстве. Однако с ростом сложности микросхем и появлением более гибких архитектур (например, CPLD и FPGA) ПЛМ уступили им в популярности. Тем не менее, ПЛМ остаются востребованными в специализированных приложениях, таких как контроллеры памяти, интерфейсные схемы и системы управления.

Устройство и принцип работы

Архитектура

ПЛМ состоит из трёх основных блоков:

  • Матрица «И» — программируемая сеть конъюнкций, которая формирует логические произведения входных сигналов (термы). Каждый терм представляет собой конъюнкцию (AND) нескольких входных переменных или их инверсий.
  • Матрица «ИЛИ» — программируемая сеть дизъюнкций, которая объединяет термы в выходные функции. Каждый выход соответствует сумме (OR) выбранных термов.
  • Выходные буферы — усилители и, при необходимости, триггеры для хранения состояния.

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

Программирование

В зависимости от технологии изготовления, ПЛМ могут быть:

  • Однократно программируемые (OTP) — с плавкими перемычками, которые разрушаются при подаче высокого напряжения. После программирования изменение конфигурации невозможно.
  • Многократно программируемые — на основе транзисторов с плавающим затвором (EEPROM, Flash) или статической памяти (SRAM). Такие ПЛМ можно перепрограммировать, стирая и записывая данные.

Пример реализации

Для реализации логической функции, например, F = A·B + C·D, ПЛМ настраивается так:

  • В матрице «И» создаются два терма: T1 = A·B и T2 = C·D.
  • В матрице «ИЛИ» эти термы объединяются: F = T1 + T2.

Классификация

ПЛМ классифицируются по нескольким признакам:

По архитектуре

  • Классическая ПЛМ (PLA) — обе матрицы программируемы. Обеспечивает максимальную гибкость, но требует больше ресурсов.
  • Программируемая матрица логики (PAL) — матрица «И» программируема, а матрица «ИЛИ» фиксирована. Более простая и быстрая, но менее гибкая.
  • Generic Array Logic (GAL) — разновидность PAL с возможностью перепрограммирования (обычно на EEPROM).

По технологии

  • Биполярные — на основе биполярных транзисторов (TTL, ECL). Высокое быстродействие, но большое энергопотребление.
  • КМОП — на комплементарных МОП-транзисторах. Низкое энергопотребление, широко распространены.
  • На основе Flash/EEPROM — энергонезависимые, допускают многократное перепрограммирование.

По числу входов/выходов

  • Малые — до 10 входов, до 4 выходов.
  • Средние — 10–20 входов, 4–8 выходов.
  • Большие — более 20 входов, более 8 выходов (например, ПЛМ с 48 входами и 16 выходами).

Применение

ПЛМ используются в следующих областях:

Преимущества и недостатки

Преимущества

  • Гибкость — возможность реализации любых логических функций, заданных в ДНФ.
  • Быстродействиезадержка распространения сигнала обычно составляет единицы наносекунд.
  • Компактность — одна микросхема заменяет несколько десятков дискретных логических элементов.
  • Программируемость — изменение логики без замены компонентов.

Недостатки

  • Ограниченная сложность — количество термов и выходов фиксировано, что затрудняет реализацию сложных схем.
  • Энергопотребление — в биполярных вариантах выше, чем у современных ПЛИС.
  • Устаревание — вытесняются более универсальными CPLD и FPGA, которые предлагают больше ресурсов и встроенных блоков (память, DSP).

Интересные факты

  • Первые ПЛМ использовались в игровых автоматах и компьютерных терминалах 1970-х годов.
  • В СССР выпускались ПЛМ серии К556 (например, К556РТ1), которые применялись в вычислительной технике.
  • Современные ПЛМ часто интегрируются в микроконтроллеры (например, в составе семейства AVR или PIC) для реализации пользовательской логики.

Источники

  • Хоровиц П., Хилл У. «Искусство схемотехники». — М.: Мир, 2003.
  • Угрюмов Е. П. «Цифровая схемотехника». — СПб.: БХВ-Петербург, 2005.
  • Кауфман М., Сидман А. «Практическое руководство по программируемым логическим интегральным схемам». — М.: Энергоатомиздат, 1988.
  • Техническая документация на микросхемы серии 82S100 (Signetics, 1975).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →