Программируемая логика массива - Programmable Array Logic
Программируемая логика массива (PAL) - это семья программируемое логическое устройство полупроводники, используемые для реализации логика функции в цифровых схемы представлен Монолитные воспоминания, Inc. (MMI) в марте 1978 г.[1] MMI получила зарегистрированный товарный знак на термин PAL для использования в «Программируемых полупроводниковых логических схемах». В настоящее время товарный знак принадлежит Решетчатый полупроводник.[2]
Устройства PAL состояли из небольшого ВЫПУСКНОЙ ВЕЧЕР (программируемая постоянная память) ядро и дополнительная логика вывода, используемые для реализации конкретных желаемых логических функций с помощью нескольких компонентов.
Используя специализированные машины, устройства PAL были «программируемыми на месте». PAL были доступны в нескольких вариантах:
- "Одноразовый программируемый «(OTP) устройства не могли быть обновлены и повторно использованы после начального программирования (MMI также предлагала подобное семейство под названием HAL, или« логика жесткого массива », которые были похожи на устройства PAL, за исключением того, что они были запрограммированы по маске на заводе).
- Версии с УФ-стиранием (например: PALCxxxxx, например: PALC22V10) имели кварцевое окно над кристаллом кристалла и могли стираться для повторного использования с источником ультрафиолетового света, как и EPROM.
- Более поздние версии (PALCExxx, например: PALCE22V10) были устройствами со стиранием флэш-памяти.
В большинстве приложений электрически стираемые GAL теперь развернуты как совместимый по контактам прямые замены для одноразовых программируемых PAL.
История
До того, как были введены PAL, разработчики цифровых логических схем использовали мелкомасштабная интеграция (SSI) компоненты, например, в 7400 серии TTL (транзисторно-транзисторная логика ) семья; Семейство 7400 включало в себя множество логических строительных блоков, таких как вентили (НЕТ, NAND, НИ, И, ИЛИ ЖЕ ), мультиплексоры (MUX) и демультиплексоры (DEMUX), шлепки (Тип D, JK и др.) И другие. Одно устройство PAL обычно заменяет десятки таких «дискретных» логических пакетов, поэтому бизнес SSI пришел в упадок по мере роста бизнеса PAL. PAL успешно использовались во многих продуктах, таких как миникомпьютеры, как описано в Трейси Киддер самая продаваемая книга Душа новой машины.
PAL не были первыми коммерческими программируемыми логическими устройствами; Печатки продавал свои программируемая логическая матрица (FPLA) с 1975 года. Эти устройства были совершенно незнакомы большинству проектировщиков схем и считались слишком сложными в использовании. FPLA имел относительно низкую максимальную скорость работы (из-за наличия массивов как с программируемым И, так и с программируемым ИЛИ), был дорогим и имел плохую репутацию в отношении тестируемости. Еще одним фактором, ограничивавшим принятие FPLA, был большой пакет, 600-мил (0,6 дюйма или 15,24 мм) 28-контактный двухрядный корпус (ОКУНАТЬ).
Проектом по созданию устройства PAL руководил Джон Биркнер и настоящая схема PAL была разработана Х. Т. Чуа.[3] На предыдущей работе (у производителя мини-компьютеров Компьютерная автоматизация ) Биркнер разработал 16-битный процессор, использующий 80 стандартных логических устройств. Его опыт работы со стандартной логикой привел его к мысли, что программируемые пользователем устройства были бы более привлекательны для пользователей, если бы устройства были разработаны для замены стандартной логики. Это означало, что размеры пакетов должны быть более типичными для существующих устройств, а скорость должна быть улучшена. MMI предполагала, что PAL будут иметь относительно низкую стоимость (менее 3 долларов). Однако изначально у компании были серьезные проблемы с производительностью.[нужна цитата ] и пришлось продать устройства более чем на 50 долларов.[нужна цитата ] Это поставило под угрозу жизнеспособность PAL как коммерческого продукта, и MMI была вынуждена лицензировать линейку продуктов National Semiconductor.[нужна цитата ] PAL были позже "второй источник " к Инструменты Техаса и Продвинутые Микроустройства.
Технологические процессы
Ранние PAL были 20-контактными ОКУНАТЬ компоненты, изготовленные из кремния с использованием технологии биполярных транзисторов с одноразовыми программируемыми плавкими предохранителями из титана и вольфрама (OTP).[4] Более поздние устройства производились Кипарис, Решетчатый полупроводник и Продвинутые Микроустройства с помощью CMOS технологии.
Оригинальные 20- и 24-контактные PAL обозначались MMI как средняя интеграция (MSI) устройства.
Архитектура PAL
Архитектура PAL состоит из двух основных компонентов: логической плоскости и выходных логических макроячеек.
Программируемая логическая плоскость
Программируемая логическая плоскость - это программируемая постоянная память (PROM) массив, который позволяет направлять сигналы, присутствующие на выводах устройства, или логические дополнения этих сигналов к выходным логическим макроячейкам.
Устройства PAL имеют массивы транзисторных ячеек, расположенных в плоскости «фиксированное ИЛИ, программируемое И», используемой для реализации »сумма произведений «двоичные логические уравнения для каждого из выходов с точки зрения входов и синхронной или асинхронной обратной связи с выходов.
Логика выхода
Первые 20-контактные PAL имели 10 входов и 8 выходов. Выходы были активными на низком уровне и могли быть зарегистрированными или комбинационными. Члены семейства PAL были доступны с различными структурами вывода, называемыми "выходные логические макроэлементы "или OLMC. До введения серии" V "(для" переменной ") типы OLMC, доступные в каждом PAL, были фиксированы во время производства (PAL16L8 имел 8 комбинационных выходов, а PAL16R8 - 8 зарегистрированных PAL16R6 имел 6 зарегистрированных и 2 комбинационных, в то время как PAL16R4 имел по 4 каждого.) Каждый выход мог иметь до 8 элементов продукта (фактически логические элементы И), однако комбинационные выходы использовали один из терминов для управления двунаправленным выходным буфером. Были и другие комбинации, которые имели меньшее количество выходов с большим количеством терминов продукта на выход и были доступны с активными высокими выходами. Семейство 16X8 или[требуется разъяснение ] зарегистрированные устройства имели перед регистром шлюз XOR. Существовали также аналогичные 24-контактные версии этих PAL.
Эта фиксированная структура вывода часто разочаровывала разработчиков, пытающихся оптимизировать полезность устройств PAL, поскольку их приложениям часто требовались структуры вывода различных типов. (Например, нельзя было получить 5 зарегистрированных выходов с 3 активными высокими комбинационными выходами.) Итак, в июне 1983 г. AMD представила 22V10, 24-контактное устройство с 10 выходными логическими макроячейками.[5] Каждая макроячейка может быть сконфигурирована пользователем как комбинационная или зарегистрированная, с активным высоким или активным низким уровнем. Количество терминов продукта, назначенных выходу, варьировалось от 8 до 16. Это одно устройство могло заменить все 24-контактные устройства PAL с фиксированной функцией. Члены серии PAL "V" ("переменная") включали PAL16V8, PAL20V8 и PAL22V10.
Блок-схема PAL 16R4
Блок-схема AMD 22V10
Выходная макроячейка AMD 22V10
Программирование PAL
PAL были запрограммированы электрически с использованием двоичных шаблонов (как JEDEC ASCII /шестнадцатеричный файлов) и специальной электронной системы программирования, доступной либо от производителя, либо от третьей стороны, такой как ДАННЫЕ / IO. Помимо программаторов отдельных устройств, часто использовались устройства подачи и групповые программисты, когда требовалось запрограммировать больше, чем несколько PAL. (Для больших объемов затраты на электрическое программирование могут быть устранены, если производитель изготовит индивидуальную металлическую маску, используемую для программирования шаблонов клиентов во время производства; MMI использовала термин "логика жесткого массива "(HAL) для обозначения устройств, запрограммированных таким образом.)
Языки программирования (в хронологическом порядке появления)
Хотя некоторые инженеры программировали устройства PAL, вручную редактируя файлы, содержащие двоичные данные схемы предохранителей, большинство из них предпочли разработать свою логику, используя язык описания оборудования (HDL), например, ввод / вывод данных ABEL, CUPL логических устройств или MMI ПАЛАЗМ. Это были компьютерный дизайн (CAD ) (теперь называется "автоматизация проектирования электроники ") программы, которые переводили (или" компилировали ") логические уравнения разработчиков в двоичные файлы карты плавких предохранителей, используемые для программирования (и часто тестирования) каждого устройства.
ПАЛАЗМ
В ПАЛАЗМ (от "ассемблера PAL") язык был разработан Джон Биркнер в начале 1980-х годов компилятор PALASM был написан MMI на FORTRAN IV на IBM 370/168. MMI бесплатно предоставила пользователям исходный код. К 1983 году клиенты MMI запускали версии на DEC PDP-11, Данные General NOVA, Hewlett Packard HP 2100, MDS800 и другие.
Он использовался для выражения логических уравнений для выходных контактов в текстовом файле, который затем был преобразован в файл «карты предохранителей» для системы программирования с помощью программы, поставляемой поставщиком; позже вариант перевода из схем стал обычным явлением, и еще позже «карты предохранителей» можно было «синтезировать» из HDL (язык описания оборудования), например Verilog.
КУБОК
Компания Assisted Technology выпустила CUPL (Cкомпилятор для Uуниверсальный ппрограммируемый Logic) в сентябре 1983 г.[6] Программное обеспечение всегда называлось CUPL, а не расширенным акронимом. Это был первый инструмент коммерческого проектирования, поддерживающий несколько семейств PLD. Первоначальный выпуск был для IBM PC и MS-DOS, но он был написан в Язык программирования C так что его можно было перенести на дополнительные платформы.[7] Компания Assisted Technology была приобретена Personal CAD Systems (P-CAD) в июле 1985 года. В 1986 году пакет схематического ввода PCAD можно было использовать в качестве внешнего интерфейса для CUPL.[8] Позднее CUPL была приобретена Logical Devices и теперь принадлежит австралийской Altium Limited.[9] CUPL в настоящее время доступен как интегрированный пакет разработки для Microsoft Windows.[10]
Atmel выпускает бесплатно WinCUPL (собственное программное обеспечение для проектирования всех SPLD и CPLD Atmel).
ABEL
Корпорация ввода-вывода данных вышел ABEL в апреле 1984 года. В команду разработчиков входили Майкл Холли, Майк Мраз, Геррит Баррере, Уолтер Брайт, Бьорн Фриман-Бенсон, Кю Ли, Дэвид Пеллерин, Мэри Бейли, Дэниел Берриер и Чарльз Оливье.
Data I / O выделила линейку продуктов ABEL в компанию EDA под названием Synario Design Systems, а затем в 1997 году продала Synario компании MINC Inc. MINC была сосредоточена на разработке инструментов разработки FPGA. Компания закрылась в 1998 году, и Xilinx приобрела некоторые активы MINC, включая язык ABEL и набор инструментов. Затем ABEL стал частью набора инструментов Xilinx Webpack, и теперь Xilinx владеет ABEL.
Программисты устройств
Включены популярные программаторы устройств Корпорация ввода-вывода данных Программатор логики Model 60A и Model 2900.
Одним из первых программистов PAL был Structured Design SD20 / 24. У них было встроенное программное обеспечение PALASM, и для ввода уравнений и просмотра диаграмм предохранителей требовался только ЭЛТ-терминал. После объединения выходные данные PAL могли быть проверены, если тестовые векторы были введены в исходный файл.
Преемники
После того, как MMI преуспела с 20-контактными деталями PAL, выпущенными примерно в 1978 году, AMD представила 24-контактный 22V10 PAL с дополнительными функциями. После покупки MMI (около 1987 г.) AMD выделила консолидированное предприятие под названием Vantis, и этот бизнес был приобретен Решетчатый полупроводник в 1999 году.[11]
Altera представила EP300 (первый CMOS PAL) в 1983 году, а затем перешла на рынок FPGA.
Компания Lattice Semiconductor представила общая логика массива (GAL ) в 1985 году, с функциональными эквивалентами PAL серии "V", в которых использовались перепрограммируемые логические плоскости на основе EEPROM (электрически стираемая программируемая постоянная память). National Semiconductor была «вторым источником» деталей GAL.
AMD представила аналогичное семейство под названием PALCE. Как правило, одна часть GAL может работать как любое из устройств PAL аналогичного семейства. Например, GAL 16V8 может заменить PAL 16L8, 16H8, 16H6, 16H4, 16H2 и 16R8 (и многие другие).
Компания ICT (International CMOS Technology) представила PEEL 18CV8 в 1986 году. 20-контактная часть CMOS EEPROM могла использоваться вместо любого из биполярных PAL с зарегистрированным выходом и потребляла гораздо меньше энергии.
Программируемые логические устройства большего размера были представлены Атмель, Решетчатый полупроводник, и другие. Эти устройства расширили архитектуру PAL, включив несколько логических плоскостей и / или скрывая логические макроячейки внутри логических плоскостей. Период, термин "сложное программируемое логическое устройство " (CPLD ) был введен, чтобы отличать эти устройства от их предшественников, PAL и GAL, которые тогда иногда назывались «простыми программируемыми логическими устройствами» или SPLD.
Еще одно крупное устройство с программируемой логикой - это "программируемая вентильная матрица " или же FPGA. Это устройства в настоящее время[когда? ] сделан Intel (кто приобрел Альтера ) и Xilinx и другие производители полупроводников.
Смотрите также
Другие типы программируемых логических устройств:
- программируемая вентильная матрица (ПЛИС)
- программируемая логическая матрица (PLA)
- программируемое логическое устройство (PLD)
- программируемая логическая матрица (Печатки FPLA)
Текущие и бывшие производители устройств с программируемой логикой:
- Actel
- Продвинутые Микроустройства (PAL, PALCE)
- Альтера (Flex, макс.)
- Атмель
- Cypress Semiconductor
- Intel
- Решетчатый полупроводник (GAL)
- National Semiconductor (GAL)
- QuickLogic Corp.
- Печатки (FPLA)
- Инструменты Техаса
- Xilinx
Текущие и бывшие производители программаторов устройств PAL:
Рекомендации
- ^ «Monolithic Memories объявляет: революция в логическом дизайне». Электронный дизайн. Рошель, Нью-Джерси: Hayden Publishing. 26 (6): 148В, 148С. 18 марта 1978 г. Вводная реклама на PAL (Programmable Array Logic).
- ^ 13 апреля 1978 года компания Monolithic Memories, Inc (MMI) подала заявку на получение товарного знака для термина «PAL» для использования в «Программируемых полупроводниковых логических схемах». 29 апреля 1980 года была предоставлена зарегистрированная торговая марка, регистрационный номер 1134025. Первая компания MMI Термин PAL использовался в торговле 21 февраля 1978 года. В настоящее время товарный знак принадлежит Lattice Semiconductor Corporation из Хиллсборо, штат Орегон. Источник: онлайн-база данных Управления США по патентам и товарным знакам.
- ^ Биркнер, Джон (16 августа 1978 г.). «Уменьшите сложность случайной логики». Электронный дизайн. Рошель, Нью-Джерси: Hayden Publishing. 26 (17): 98–105.
- ^ Лист данных TIBPAL 16R8-15C (PDF). Даллас, Техас: Техасские инструменты. Апрель 2000 г. [февраль 1984 г.]. «Эти схемы IMPACT сочетают в себе новейшую передовую технологию Шоттки с низким энергопотреблением с проверенными титано-вольфрамовыми предохранителями, чтобы обеспечить надежную и высокопроизводительную замену традиционной логике TTL». TI была вторым поставщиком исходных материалов для MMI PALS.
- ^ AmPAL 22V10 Расширенная информация. Саннивейл, Калифорния: Advanced Micro Devices. Июнь 1983 г. 04126А-ПЛП. Примечание. Это техническое описание, опубликованное AMD при выпуске AmPAL 22V10.
- ^ Олфорд, Роджер К. (1989). Руководство разработчика программируемой логики. Ховард В. Сэмс. С. 14–15, 166–168. ISBN 0-672-22575-1.
В 1981 году [Боб] Осанн основал компанию Assisted Technology для разработки инструментов поддержки PLD. В сентябре 1983 года компания Assisted Technology выпустила версию 1.01a своего компилятора PLD CUPL (универсальный компилятор для программируемой логики), поддерживающего 29 устройств.
- ^ «CUPL - универсальный язык для программируемой логики» (PDF) (Пресс-релиз). Сан-Хосе, Калифорния: Assisted Technology, Inc., 1983. Архивировано из оригинал (PDF) в 2013-10-29. Получено 2013-08-10. Предварительный технический паспорт CUPL на начало 1983 года.
- ^ «Персональные САПР». Компьютерный мир. Фрамингем, Массачусетс: CW Communications. 19 (29): 97. 22 июля 1985 г. ISSN 0010-4841.
- ^ Бюро патентов и товарных знаков США. "CUPL" Компьютерное программное обеспечение, а именно программное обеспечение, используемое для разработки и компиляции проектов для программируемых логических устройств, и соответствующие руководства пользователя, распространяемые вместе с ним. Впервые использован в 1983 году, статус Active. Серийный номер 76357007. Регистрационный номер 2909461. Владелец: Altium Limited, Австралия 3 Минна Клоуз, Белроуз NSW2085, Австралия.
- ^ "CUBEL ChipDesigner 5.0". Логические устройства. Август 2013. Архивировано с оригинал 11 апреля 2013 г.. Получено 10 августа, 2013.
- ^ "Lattice Semiconductor приобретает Vantis Corp. у AMD". EE Times. 26 апреля 1999 г.. Получено 13 мая, 2015.
- Примечания
- Биркнер, Джон; Винсент Коли (1981). Руководство по логике программируемых массивов PAL (2-е изд.). Monolithic Memories, Inc.
- Биркнер, Джон; Винсент Коли (1983). Руководство по логике программируемых массивов PAL (3-е изд.). Monolithic Memories, Inc.
- Стандарт JEDEC JESD3-C, Стандартный формат передачи данных между системой подготовки данных и программатором программируемых логических устройств, Июнь 1994 г. Документы JEDEC