Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Упрощенное устройство PAL. Программируемые элементы (показаны как предохранители) подключают как истинный, так и дополнительный входы к логическим элементам AND. Эти логические элементы И, также известные как термины продукта, объединяются по ИЛИ, чтобы сформировать логический массив суммы продуктов.

Программируемое логическое устройство ( ПЛ ) представляет собой электронный компонент , используемый для создания перестраиваемых цифровых схем . В отличие от интегральных схем (IC), которые состоят из логических вентилей и имеют фиксированную функцию, PLD имеет неопределенную функцию во время производства . [1] Прежде чем PLD можно будет использовать в цепи, его необходимо запрограммировать (перенастроить) с помощью специальной программы. [2]

Ранняя программируемая логика [ править ]

В 1969 году Motorola предложила XC157, матрицу с программированием по маске с 12 воротами и 30 незафиксированными контактами ввода / вывода. [3]

В 1970 году компания Texas Instruments разработала программируемую по маске ИС на основе ассоциативной памяти IBM, предназначенной только для чтения, или ROAM. Это устройство, TMS2000, было запрограммировано путем изменения металлического слоя во время изготовления ИС. TMS2000 имел до 17 входов и 18 выходов с 8 триггерами JK для памяти. TI придумала для этого устройства термин Programmable Logic Array (PLA). [4]

В 1971 году компания General Electric (GE) разрабатывала программируемое логическое устройство на основе новой технологии программируемой памяти только для чтения (PROM). Это экспериментальное устройство улучшило ROAM IBM, допустив многоуровневую логику. Intel только что представила УФ- стираемый PROM с плавающим затвором, поэтому исследователь из GE включил эту технологию. Устройство GE было первым когда-либо разработанным ПЛИС со стиранием , предшествовавшим Altera EPLD более чем на десять лет. GE получила несколько ранних патентов на программируемые логические устройства. [5] [6] [7]

В 1973 г. компания National Semiconductor представила программируемое по маске устройство PLA (DM7575) с 14 входами и 8 выходами без регистров памяти. Это было более популярно, чем деталь TI, но стоимость изготовления металлической маски ограничивала ее использование. Это устройство важно, потому что оно было основой для программируемой логической матрицы 82S100, созданной Signetics в 1975 году. ( Intersil фактически превзошла Signetics по выходу на рынок, но низкая доходность обрекла их роль.) [8] [9]

В 1974 году GE заключила соглашение с Monolithic Memories (MMI) на разработку логического устройства с программируемой маской, включающего инновации GE. Устройство было названо «Программируемая ассоциативная логическая матрица» или PALA. MMI 5760 был построен в 1976 году и мог реализовать многоуровневые или последовательные схемы более 100 вентилей. Устройство поддерживалось средой проектирования GE, в которой логические уравнения преобразовывались в шаблоны масок для настройки устройства. Деталь так и не поступила на рынок. [10]

PLA [ править ]

В 1970 году компания Texas Instruments разработала программируемую по маске ИС на основе ассоциативной памяти IBM, предназначенной только для чтения, или ROAM. Это устройство, TMS2000, было запрограммировано путем изменения металлического слоя во время изготовления ИС. TMS2000 имел до 17 входов и 18 выходов с 8 триггерами JK для памяти. TI ввел термин « программируемая логическая матрица» для этого устройства. [4]

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

PAL [ править ]

Устройства PAL имеют массивы транзисторных ячеек, расположенных в плоскости «фиксированное ИЛИ, программируемое И», используемое для реализации двоичных логических уравнений «суммы произведений» для каждого из выходов в терминах входов и синхронной или асинхронной обратной связи от выходы.

MMI представила революционное устройство в 1978 году - логику программируемых массивов или PAL. Архитектура была проще, чем у Signetics FPLA, потому что в ней отсутствовал программируемый массив ИЛИ. Это делало детали быстрее, меньше и дешевле. Они были доступны в 20-контактных корпусах DIP на 300 мил, а FPLA - в 28-контактных корпусах по 600 мил. Справочник PAL проясняет процесс проектирования. Программное обеспечение для проектирования PALASM (ассемблер PAL) преобразовало логические уравнения инженеров в схему плавких предохранителей, необходимую для программирования детали. Устройства PAL вскоре были закуплены у компаний National Semiconductor, Texas Instruments и AMD.

После того, как MMI добился успеха с 20-контактными частями PAL, AMD представила 24-контактный 22V10 PAL с дополнительными функциями. После покупки MMI (1987) AMD выделила консолидированное предприятие под названием Vantis , и этот бизнес был приобретен Lattice Semiconductor в 1999 году.

GAL [ править ]

Решетка ГАЛ 16В8 и 20В8

Усовершенствованием PAL было универсальное логическое устройство массива, или GAL, изобретенное Lattice Semiconductor в 1985 году. Это устройство имеет те же логические свойства, что и PAL, но может быть стерто и перепрограммировано. Глобальный список адресов очень полезен на этапе прототипирования дизайна, когда любые ошибки в логике можно исправить путем перепрограммирования. Глобальные списки адресов программируются и перепрограммируются с помощью программатора PAL или с использованием техники внутрисхемного программирования на поддерживающих микросхемах.

Решетчатые GAL объединяют КМОП и технологию электрически стираемого (E 2 ) плавающего затвора для создания высокоскоростного логического устройства с низким энергопотреблением. Аналогичное устройство, называемое PEEL (программируемая электрически стираемая логика), было представлено корпорацией International CMOS Technology (ICT).

CPLD [ править ]

PAL и GAL доступны только в небольших размерах, эквивалентных нескольким сотням логических вентилей. Для больших логических схем можно использовать сложные PLD или CPLD . Они содержат эквивалент нескольких PAL, связанных программируемыми межсоединениями, и все это в одной интегральной схеме . CPLD могут заменить тысячи или даже сотни тысяч логических вентилей.

Некоторые CPLD программируются с помощью программатора PAL, но этот метод становится неудобным для устройств с сотнями контактов. Второй метод программирования - припаять устройство к печатной плате, а затем подать на него последовательный поток данных с персонального компьютера. CPLD содержит схему, которая декодирует поток данных и настраивает CPLD для выполнения заданной логической функции. Некоторые производители (включая Altera и Microsemi ) используют JTAG для программирования CPLD в цепи из файлов .JAM .

ПЛИС [ править ]

В то время как PAL развивались в GAL и CPLD (все обсуждалось выше), происходил отдельный поток разработки. Этот тип устройства основан на технологии вентильной матрицы и называется программируемой вентильной матрицей (FPGA). Ранними примерами ПЛИС являются массив 82s100 и секвенсор 82S105 от Signetics, представленные в конце 1970-х годов. 82S100 представлял собой набор терминов И. 82S105 также имел функции триггера.

(Примечание: 82S100 и аналогичные ИС от Signetics имеют PLA-структуру, AND-Plane + OR-Plane)

ПЛИС используют сетку логических вентилей , и после сохранения данные не меняются, как и в обычной вентильной матрице. Термин «программируемый на месте» означает, что устройство программируется заказчиком, а не производителем.

FPGA обычно программируются после пайки на печатной плате аналогично тому, как это делается для более крупных CPLD. В большинстве больших ПЛИС конфигурация непостоянна и должна быть повторно загружена в устройство всякий раз, когда подается питание или требуются другие функции. Конфигурация обычно хранится в конфигурационном PROM или EEPROM . Версии EEPROM могут программироваться внутри системы (обычно через JTAG ).

Разница между FPGA и CPLD состоит в том, что FPGA внутренне основаны на справочных таблицах (LUT), тогда как CPLD формируют логические функции с морем ворот (например, сумма произведений ). CPLD предназначены для более простых проектов, в то время как FPGA предназначены для более сложных проектов. В общем, CPLD - хороший выбор для широкого спектра приложений комбинационной логики , тогда как FPGA больше подходят для больших конечных автоматов, таких как микропроцессоры .

Другие варианты [ править ]

Это микропроцессорные схемы, которые содержат некоторые фиксированные функции и другие функции, которые могут быть изменены кодом, запущенным на процессоре. Проектирование самоизменяющихся систем требует от инженеров изучения новых методов и разработки новых программных инструментов.

Сейчас продаются PLD, которые содержат микропроцессор с фиксированной функцией (так называемое ядро ), окруженный программируемой логикой. Эти устройства позволяют дизайнерам сосредоточиться на добавлении новых функций в проекты, не беспокоясь о том, чтобы микропроцессор заработал. Кроме того, микропроцессор с фиксированной функцией занимает меньше места на микросхеме, чем часть программируемой вентильной матрицы, реализующей тот же процессор, оставляя больше места для программируемой вентильной матрицы, чтобы содержать специализированные схемы разработчика.

Как PLD сохраняют свою конфигурацию [ править ]

PLD - это комбинация логического устройства и устройства памяти . Память используется для хранения рисунка, который был передан чипу во время программирования. Большинство методов хранения данных в интегральной схеме адаптированы для использования в PLD. К ним относятся:

  • Кремниевые антифусы
  • SRAM
  • Ячейки памяти EPROM или EEPROM
  • Флэш-память

Кремниевые антифузлы - это соединения, которые создаются путем приложения напряжения к модифицированной области кремния внутри чипа. Их называют антифузами, потому что они работают противоположно обычным предохранителям, которые начинают свою жизнь как соединения, пока они не будут разорваны электрическим током.

SRAM или статическое ОЗУ - это энергозависимый тип памяти, что означает, что ее содержимое теряется при каждом отключении питания. Поэтому PLD на основе SRAM необходимо программировать каждый раз при включении цепи. Обычно это делается автоматически другой частью схемы.

Ячейка памяти СППЗУ - это полевой МОП-транзистор (металлооксидный полупроводниковый полевой транзистор или МОП-транзистор), который можно включить, удерживая электрический заряд на своем электроде затвора. Это делает программист PAL. Заряд сохраняется в течение многих лет и может быть удален только путем воздействия на чип сильного ультрафиолетового света в устройстве, называемом ластиком EPROM.

Флэш-память энергонезависима, сохраняя свое содержимое даже при отключении питания. Он хранится в ячейках памяти полевого МОП-транзистора с плавающим затвором и может быть удален и перепрограммирован при необходимости. Это делает его полезным в PLD, которые можно часто перепрограммировать, например, в PLD, используемых в прототипах. Флэш-память - это разновидность EEPROM, которая хранит информацию, используя захваченные электрические заряды, аналогичные EPROM. Следовательно, флэш-память может хранить информацию годами, но, возможно, не так много лет, как СППЗУ.

По состоянию на 2005 год большинство CPLD электрически программируются, стираются и энергонезависимы. Это связано с тем, что они слишком малы, чтобы оправдать неудобства программирования внутренних ячеек SRAM при каждом запуске, а ячейки EPROM более дороги из-за их керамического корпуса с кварцевым окном.

Языки программирования PLD [ править ]

Многие устройства программирования PAL принимают ввод в стандартном формате файла, обычно называемом « файлами JEDEC ». Они аналогичны программным компиляторам . Языки, используемые в качестве исходного кода для логических компиляторов, называются языками описания оборудования или HDL. [2]

PALASM , ABEL и CUPL часто используются для устройств низкой сложности, в то время как Verilog и VHDL являются популярными языками описания более высокого уровня для более сложных устройств. Более ограниченный ABEL часто используется по историческим причинам, но для новых проектов VHDL более популярен, даже для проектов низкой сложности.

Информацию о современных языках программирования PLD, схемах проектирования и инструментах см. В разделе FPGA и реконфигурируемые вычисления .

Устройства программирования PLD [ править ]

Программатор устройства используется для передачи шаблона логической логики в программируемое устройство. На заре создания программируемой логики каждый производитель PLD также производил специализированный программатор для своего семейства логических устройств. Позже на рынок вышли универсальные программаторы устройств, поддерживающие несколько семейств логических устройств от разных производителей. Современные программисты устройств обычно могут программировать обычные PLD (в основном эквиваленты PAL / GAL) от всех существующих производителей. Распространенными форматами файлов, используемых для хранения логической логической схемы (предохранителей), являются JEDEC, Altera POF (программируемый объектный файл) или Xilinx BITstream. [11]

Ссылки [ править ]

  1. ^ Горовиц, Пол; Хилл, Уинфилд (2015). Горовиц П., Хилл В. - Искусство электроники . 32 Avenue of the Americas, Нью-Йорк, NY 10013-2473, США. п. 764. ISBN 978-0-521-80926-9. PLD состоит из микросхемы с большим количеством логических элементов (вентилей и регистров, а иногда и многого другого), соединения в которой программируются.CS1 maint: location ( ссылка )
  2. ^ a b Горовиц, Пол; Хилл, Уинфилд (2015). Горовиц П., Хилл В. - Искусство электроники . 32 Avenue of the Americas, Нью-Йорк, NY 10013-2473, США. п. 764. ISBN 978-0-521-80926-9.CS1 maint: location ( ссылка )
  3. ^ Motorola Book Semiconductor данных, четвертое издание . Motorola Inc., 1969. стр. IC-73.
  4. ^ а б Андрес, Кент (октябрь 1970 г.). Отчет по применению Texas Instruments: массивы программируемой логики MOS . Инструменты Техаса. Бюллетень СА-158. Report представляет серии PLA с программируемыми масками TMS2000 и TMS2200.
  5. ^ Грир, Дэвид Л. Электрически программируемые логические схемы Патент США 3,818,452 . Правопреемник: General Electric, подано: 28 апреля 1972 г., получено: 18 июня 1974 г.
  6. ^ Грир, Дэвид Л. Многоуровневые ассоциативные логические схемы Патент США 3,816,725 . Правопреемник: General Electric, подано: 28 апреля 1972 г., получено: 11 июня 1974 г.
  7. ^ Грир, Дэвид Л. Сегментированные ассоциативные логические схемы Патент США 3,849,638 . Правопреемник: General Electric, подана 18 июля 1973 г., предоставлена ​​19 ноября 1974 г.
  8. ^ "Полупроводники и ИС: FPLA". EDN . Бостон, Массачусетс: Cahners Publishing. 20 (13): 66. 20 июля 1975 г.Пресс-релиз о программируемой логической матрице Intersil IM5200. Четырнадцать входных контактов и 48 терминов продукта. Программирование лавинной миграции. Цена за единицу составила 37,50 долларов США.
  9. ^ "FPLA дает быструю настраиваемую логику". EDN . Бостон, Массачусетс: Cahners Publishing. 20 (13): 61. 20 июля 1975 г.Пресс-релиз о программируемых логических массивах Signetics 82S100 и 82S101. Четырнадцать входных контактов, 8 выходных контактов и 48 выводов продукта. Программирование плавких вставок NiCr.
  10. ^ Пеллерин, Дэвид; Майкл Холли (1991). Практический дизайн с использованием программируемой логики . Прентис-Холл. п. 15. ISBN 0-13-723834-7.
  11. ^ Форматы файлов PLD

Внешние ссылки [ править ]

  • «Инструменты PLD для создания SVF, JAM, STAPL и других форматов» . JTAG / граничное сканирование . Corelis. 1 декабря 2010 г.
  • «ПЛИС и CPLD» . Решетчатый полупроводник.