Что такое CPLD (сложное программируемое логическое устройство)?

CPLD использует технологии программирования CMOS EPROM, EEPROM, флэш-памяти и SRAM, образуя таким образом программируемое логическое устройство с высокой плотностью, высокой скоростью и низким энергопотреблением. Они относительно велики по размеру и сложны по структуре и относятся к классу больших интегральных схем.

Каталог

Ⅰ Знакомство с устройством

Ⅱ Состав CPLD

Ⅲ Структура CPLD

Ⅳ Идентификация и классификация FPGA и CPLD.

 

Ⅰ Знакомство с устройством

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

История развития

В 1970-х годах появилось самое раннее программируемое логическое устройство — PLD. Его выходная структура представляла собой программируемые логические макроячейки. Поскольку проектирование его аппаратной структуры могло быть выполнено с помощью программного обеспечения, его конструкция была очень гибкой, чем у чисто аппаратных цифровых схем. Но из-за слишком простой структуры они также позволяли реализовывать только небольшие схемы. Чтобы компенсировать этот недостаток, заключающийся в том, что PLD могут проектировать только небольшие схемы, в середине 1980-х годов были представлены сложные программируемые логические устройства — CPLD .

Особенности устройства

CPLD обладает такими характеристиками, как гибкое программирование, высокая степень интеграции, короткий цикл проектирования и разработки, широкая применимость, передовые инструменты разработки, низкие затраты на проектирование и производство, низкие требования к опыту работы с оборудованием для дизайнеров, отсутствие необходимости тестирования для стандартных продуктов, высокая конфиденциальность и доступная цена. и т. д. Он может реализовать крупномасштабное проектирование схем, поэтому он широко используется при создании прототипов продуктов и производстве продуктов (обычно менее 10 000 штук). Устройства CPLD стали неотъемлемой частью электронных продуктов, а их проектирование и применение стали необходимым навыком для инженеров-электронщиков.

Как использовать CPLD?

CPLD — это своего рода цифровая интегральная схема , в которой пользователи создают свои собственные логические функции в соответствии со своими потребностями. Основной метод проектирования заключается в использовании интегрированной программной платформы разработки для создания соответствующего целевого файла с использованием принципиальной схемы и языка описания аппаратного обеспечения, а затем передачи кода на целевой чип через кабель загрузки («внутрисистемное» программирование) для реализации разработана цифровая система.

Вот в качестве примера процесс проектирования (декорирования) схватчика, т.е. поток проектирования чипа. большая часть работы CPLD выполняется на компьютере. Откройте интегрированное программное обеспечение для разработки (Altera Max+pluxII) → нарисуйте принципиальную схему, напишите язык описания оборудования (VHDL, Verilog) → скомпилируйте → подайте входной сигнал возбуждения логической схемы, смоделируйте и проверьте правильность результата логического вывода. → выполнить блокировку ввода и вывода контактов (64 входных и выходных контакта 7128 можно установить по мере необходимости) → сгенерировать код → передать и сохранить код в чипе CPLD через кабель загрузки.

Введено 7128 выводов микросхемы. Цифровая трубка, викторина, индикатор, зуммер через провод к ДСП.

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

image 

Схема системного интерфейса с использованием чипа CPLD

Члены семьи

После десятилетий разработок многие компании разработали программируемые логические устройства CPLD. Наиболее типичными являются продукты Altera, Lattice и Xilinx — трех самых авторитетных компаний мира. Часто используемые чипы приведены здесь:

Альтера EPM7128S (PLCC84)

Решетка LC4128V (TQFP100)

Ксилинкс XC95108 (PLCC84)

Ⅱ Состав CPLD

CPLD состоит из трех основных компонентов: логического блока , программируемого межсетевого канала и блока ввода-вывода .

Логический блок в CPLD похож на небольшой PLD. Обычно логический блок содержит от 4 до 20 макроячеек, каждая из которых обычно состоит из массива терминов продукта, назначения терминов продукта и программируемых регистров. Каждая макроячейка имеет несколько конфигураций, и каждая макроячейка может использоваться в каскаде, что позволяет реализовать более сложную комбинационную логику и функции временной логики. Для высокоинтегрированных CPLD обычно предоставляются встроенные блоки массивов со встроенным ОЗУ/ПЗУ.

Программируемые каналы межсоединений обеспечивают сети взаимосвязей между логическими блоками, макроячейками и контактами ввода/вывода. Блоки ввода/вывода (блоки ввода/вывода) обеспечивают интерфейс между внутренней логикой и выводами ввода/вывода устройства.

image 

Состав CPLD

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

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

Ⅲ Структура CPLD

Устройство EPM7128S

(1) Базовая структура устройства EPM7128S

Устройство EPM7128S в основном состоит из блока логической матрицы LAB, макроячейки, блока управления вводом/выводом и программируемой матрицы межсоединений PIA.

В многоматрицной матричной структуре каждая макроячейка имеет программируемую матрицу и фиксированную или матрицу, а также конфигурируемый триггер с независимо программируемыми функциями тактового сигнала, включения тактового сигнала, сброса и сброса. Несколько LAB соединены через программируемую межсетевую матрицу PIA и глобальную шину. Каждая LAB также подключена к соответствующему модулю управления вводом/выводом для обеспечения прямых каналов ввода и вывода.

(2) Структура макроячеек EPM7128S

Каждую макроячейку EPM7128S можно индивидуально сконфигурировать для работы с комбинационной или временной логикой. Макроячейка состоит из трех основных частей: логической матрицы, матрицы выбора членов произведения и программируемых регистров. Программируемые регистры можно запрограммировать для обхода и реализации комбинационной логики в соответствии с логическими потребностями. При использовании в качестве регистров соответствующее программное обеспечение для разработки устройств с программируемой логикой выберет эффективную работу регистра в соответствии с потребностями логики проектирования, чтобы минимизировать ресурсы устройства, используемые для проектирования.

Устройство XCR3064XL

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

Ⅳ Идентификация и классификация FPGA и CPLD.

Идентификация и классификация FPGA  и CPLD в основном основаны на их структурных характеристиках и принципах работы.

Обычными методами классификации являются:

Устройства, которые структурированы в соответствии с терминами продукта для формирования логического поведения, называются CPLD, например, серия ispLSI от Lattice, серия XC9500 от Xilinx, серия MAX7000S от Altera и серия Mach от Lattice (ранее Vantis).

Устройства, структурированные по методу справочной таблицы для формирования логического поведения, называются FPGA, например, серия SPARTAN от Xilinx, серия FLEX10K или ACEX1K от Altera и т. д.

Хотя FPGA и CPLD являются программируемыми ASIC-устройствами и имеют много общих черт, они имеют свои особенности из-за различий в структуре CPLD и FPGA:

① CPLD больше подходит для реализации различных алгоритмов и комбинационной логики, а FPGA больше подходит для реализации логики синхронизации. Другими словами, FPGA больше подходит для структур с большим количеством триггеров, а CPLD больше подходит для структур с ограниченным количеством триггеров  и богатым набором продуктов.

②Непрерывная структура проводки CPLD определяет, что ее временные задержки являются равномерными и предсказуемыми, тогда как сегментированная структура проводки FPGA определяет непредсказуемость ее задержек.

CPLD программируется путем изменения логической функции с фиксированной схемой соединения, а FPGA программируется путем изменения разводки внутренних проводов; FPGA может быть запрограммирована под логическим вентилем, а CPLD — под логическим блоком.

④FPGA более интегрированы, чем CPLD, и имеют более сложную структуру подключения и логическую реализацию.

⑤ CPLD удобнее использовать, чем FPGA. CPLD программируется по технологии E2PROM или FASTFLASH, внешняя микросхема памяти не требуется, проста в использовании. Хотя информацию о программировании FPGA необходимо хранить во внешней памяти, используются сложные методы.

(6) CPLD работают быстрее, чем FPGA, и имеют большую предсказуемость времени. Это связано с тем, что FPGA программируются на уровне вентилей и используют распределенные взаимосвязи между CLB, тогда как CPLD программируются на уровне логических блоков и их взаимосвязи между логическими блоками являются коллективными.

CPLD в основном основан на программировании E2PROM или флэш-памяти, которую можно программировать до 10 000 раз, и она имеет то преимущество, что информация о программировании не теряется даже при выключении системы.

CPLD можно разделить еще на две категории: программирование на программаторе и программирование в системе. FPGA в основном основана на программировании SRAM, и информация о программировании теряется при выключении системы, и каждый раз, когда устройство включается, данные программирования необходимо перезаписывать извне устройства в SRAM. Данные программирования необходимо перезаписывать в SRAM снаружи устройства каждый раз при его включении. Преимущество в том, что его можно программировать любое количество раз и можно быстро запрограммировать в работе, таким образом достигается динамическая конфигурация на уровне платы и на уровне системы.

⑧ Конфиденциальность CPLD хорошая, конфиденциальность FPGA плохая.

⑨ Как правило, энергопотребление CPLD больше, чем у FPGA, и чем выше уровень интеграции, тем это более очевидно.



Frequently Asked Questions

1. Для чего используется CPLD?
CPLD используется для загрузки данных конфигурации программируемой вентильной матрицы из энергонезависимой памяти. CPLD часто используются во многих приложениях, например, в экономичных портативных устройствах с батарейным питанием, из-за их небольшого размера и низкого энергопотребления.
2. Что такое CPLD в цифровой логике?
Программируемое логическое устройство (PLD) — это электронный компонент, используемый для создания реконфигурируемых цифровых схем. В отличие от интегральных схем (ИС), которые состоят из логических элементов и имеют фиксированную функцию, ПЛИС имеет неопределенную функцию на момент производства.

Related Articles

Разборка и анализ каждого компонента импульсного источника питания

Release time:2023-12-28       Page View:135
Импульсный источник питания (сокращенно SMPS), также известный как импульсный источник питания, импульсный преобразователь, представляет собой высокочастотное устройство преобразования энергии...

Руководство по микросхеме зарядного устройства

Release time:2023-12-28       Page View:118
Основным компонентом зарядного устройства является ИС зарядного устройства, также известная как ИС зарядного устройства аккумулятора.Он играет жизненно важную роль в процессе зарядки.Микросхем...

Отладка импульсного блока питания: 10 наиболее распространенных проблем

Release time:2023-12-27       Page View:109
Привет всем, я Роуз.Сегодня я расскажу вам о 10 распространенных проблемах, связанных с отладкой SMPS.Импульсный источник питания (сокращенно SMPS), также известный как импульсный источник питания,...

QUIC: протокол связи следующего поколения

Release time:2023-12-27       Page View:93
Привет всем, я Роуз.Сегодня я познакомлю вас с QUIC.QUIC (Quick UDP Internet Connection) — это протокол транспортного уровня Интернета с малой задержкой на основе UDP, разработанный Google.Темы, затронутые в это...

Что такое межинтегральная схема (I2C)?

Release time:2023-12-27       Page View:187
Привет всем, я Роуз.Сегодня я познакомлю вас с I2C.Шина I2C — это простая двунаправленная двухпроводная синхронная последовательная шина, разработанная Philips.Для передачи информации между устройст...

Аналого-цифровые преобразователи (АЦП): разрешение расшифровки и частота дискретизации

Release time:2023-12-27       Page View:128
Разрешение и частота дискретизации — два важных фактора, которые следует учитывать при выборе аналого-цифрового преобразователя (АЦП).Чтобы полностью понять это, необходимо в некоторой степени по...

Шум импульсного регулятора: всестороннее понимание и анализ

Release time:2023-12-27       Page View:120
Пульсации переключения, широкополосный шум и высокочастотные выбросы — все это типы шума, встречающиеся в импульсных стабилизаторах, как описано в этой статье.Кроме того, в этой статье будет обсуж...

Основное руководство по преобразователю AC/DC, DC/DC

Release time:2023-12-25       Page View:139
Привет всем, я Роуз.Добро пожаловать в новый пост сегодня.В этой статье в основном представлены определения переменного и постоянного тока, преобразователя переменного/постоянного тока, а также п...

Контактор переменного тока: что такое самоблокирующийся?

Release time:2023-12-22       Page View:126
В контакторах переменного тока часто используются три метода гашения дуги: гашение электрической дуги двойным разрывом, гашение дуги продольного шва и гашение дуги сеткой.Он используется для уст...

Как выбрать MOSFET для импульсного источника питания?

Release time:2023-12-22       Page View:281
Металлооксидно-полупроводниковый полевой транзистор (MOSFET) — это полевой транзистор, который может широко использоваться в аналоговых и цифровых схемах. Эта статья поможет вам выбрать MOSFET д...

Meta-Vision для датчиков изображения CMOS: за пределами человеческого глаза

Release time:2023-12-16       Page View:144
Привет всем, я Роуз. Сегодня я познакомлю вас с своеобразным датчиком. Это датчик изображения CMOS. Датчик изображения CMOS — это типичный твердотельный датчик изображения, имеющий общее историчес...

ARM, FPGA, DSP и CPLD: связь и разница

Release time:2023-12-16       Page View:210
Привет всем, я Роуз. Добро пожаловать в новый пост сегодня. Я уверен, что вы знаете, что такое ARM, FPGA, DSP и CPLD. Но знаете ли вы их связь и различие? Позвольте мне представить вам.Темы, затронутые в...
RFQ
BOM