pld что это такое

Что такое ПЛИС простым языком для начинающих

Содержание статьи

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Отличия от микроконтроллеров

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

Кроме этого вы можете производить вычисления, сохранять данные в регистрах или ПЗУ, а также оперировать данными прошитыми в память микроконтроллера. На этом в сущности и заключается назначение и особенности работы с микроконтроллерами.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

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

Обобщённо внутреннее устройство ПЛИС можно разделить на три основных группы:

1. Массив из логических элементов (макроячеек, логических блоков).

2. Блоки входа-выхода (IO).

3. Линии связи между ними и устройство, которое управляет этими связями.

Однако такое структурирование очень обобщено, немного подробнее мы рассмотрим этот вопрос ниже.

Программируя вы соединяете элементы подобно тому как бы вы это делали, собирая из отдельных элементов устройство и соединяя их входы и выходы проводниками.

Главным отличием ПЛИС от микроконтроллеров является то, что в микроконтроллере вы не можете изменять внутренних связей между простейшими элементами, а в ПЛИС на основе прописывания связей основывается программирование и работа с ними.

Выбор микроконтроллеров происходит на основе множества критериев, таких как:

Быстродействие и тактовая частота;

Количество входов и выходов.

Другие функциональные особенности и периферии, типа поддержки линий связи и протоколов (I2C, one-wire, PWM-сигнал и прочее).

В зависимости от конкретного ПЛИС количество блоков может изменяться в широких пределах, соответственно изменяется и стоимость.

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

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Виды

Актуальными на сегодняшний день являются два основных вида ПЛИС:

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

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

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Интересно:

Хотя фактически наличие энергонезависимой памяти не делает программируемую логику CPLD. Это частично заблуждение. Главным отличием CPLD от FPGA является внутренняя структура.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Подробнее внутреннее устройство CPLD изображено на рисунке ниже.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

А примерная схема её макроячейки выглядит таким образом:

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Макроячейка состоит из программируемых мультиплексоров, триггеров (одного или нескольких) и формирует группу выходных сигналов ФБ в нескольких их вариантах.

Ниже приведен еще один пример – блок-схема CPLD микросхемы семейства MAX II фирмы Altera.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

И структурный план микросхем этого же семейства.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Промежуточные шины макроячейкам назначаются с помощью такого узла, как распределитель, на англ. он звучит как Logic Allocator, что изображено на схеме ниже, на ней же изображена матрица переключений (Global Routing Pool), а у выходных макроячейки (macrocells) имеют по две обратных связи.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Внешние выводы микросхемы соединяются с выходами макроячеек через еще один блок (матрицу) – ORP (Output Routing Pool), обратите внимание, что через неё же происходит соединение ВХОДНОЙ логики с GRP, что изображено на иллюстрации ниже.

В некоторых CPLD есть т.н. прямые входы (Direct Input) – они соединены со входами ячеек напрямую, что уменьшает задержки.

У FPGA структура имеет вид:

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

L – логический конфигурируемый блок;

S (substitution block) – блок подстановок, он получает на ход определенное число бит, преобразует, по определенному алгоритму, а на выходе выдаёт другое число бит. Другими словами – дешифратор, шифратор и коммутатор.

C (connection block) – блок соединений.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Научитесь разрабатывать устройства на базе микроконтроллеров и станьте инженером умных устройств с нуля: Инженер умных устройств

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

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

Подборка полезных статей про микроконтроллеры:

Примеры популярных производителей и серий ПЛИС

На момент написания статьи наиболее известными являются изделия двух производителей.

Altera (основана в 1983 году);

Xilinx (Основана в 1984 году).

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

У Altera есть несколько основных серий программируемой логики:

Источник

Что собой представляют насосные PLD-секции?

Доброго дня всем добрым людям. Статья расскажет, что собой представляют насосные PLD-секции. Наши читатели просили написать подробно о PLD-секциях их особенностях устройства и принципа работы.

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

Что собой представляют насосные PLD-секции?

Насосная ПЛД-секция конструктивно отличается от ставших традиционными насос-форсунок. Нагнетание топлива происходит в результате работы плунжерной пары. Управляющими элементами являются электромагнитные клапаны специальной конструкции.

Соединяет плунжерную пару и электромагнитные клапаны между собой трубопровод высокого давления. Отличается высокой прочностью и надёжностью конструкции. Является своеобразным «мостом» между нагнетающими и управляющими элементами.

Аббревиатура PLD на немецком расшифровывается как «pump-line-duse». Если перевести, то получиться «насос-трубопровод-форсунка». Становится понятен принцип работы механизма уже с одного названия. Подача топлива-доставка топлива-распыления в камеру сгорания.

Насосные секции ПЛД использует ряд производителей: Рено, Мерседес, ДАФ, Вольво и прочие. Системы подачи топлива подобного типа используются на грузовых автомобилях.

ПЛД насосные секции обладают своими достоинствами и недостатками. Особое внимание требуется уделить качеству топлива.

Преимущества использования насосных ПЛД-секций

Топливная система ПЛД-секции отличается рядом неоспоримых преимуществ. Многие известные производители грузовиков на протяжении длительного времени используют ПЛД-секции.

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

Ремонт и восстановление насосных секций PLD/ПЛД

Даже самая эффективная и надёжная система подачи топлива требует своевременного обслуживания и проведения ремонта.

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

Выполнить самостоятельно ремонт и восстановление насосных секций ПЛД невозможно, ведь требуется использование специального инструмента и оборудования.

Для примера можно обратиться к сайту компании SPBParts, которая занимается ремонтом и восстановлением насосных секций ПЛД.

Специалисты выполнят все необходимые диагностические процедуры и проверку работы системы с использованием специального стенда.

При появлении первых признаков неисправности не нужно тянуть с обращением в сервис. Затягивание ремонта обернётся большими материальными издержками.

Большая часть поломок систем ПЛД вызвано использованием дизельного топлива низкого качества. Высокое содержание примесей приводит к ускоренному износу основных элементов системы подачи топлива.

Порядок ремонтных операций насосных секций PLD:

При использовании низкокачественного дизельного топлива в наибольшей степени изнашивается корпус распылителя. Высокое давление и перепады температур снижают эффективность работы.

Возможно, появление микроскопических трещин. Топливо с примесями меняет форму отверстия распылителя.

Распылители для ремонта удобно снимать и монтировать. Не составляет труда демонтировать и всю секцию ПЛД, ведь размещается она на блоке силовой установки. При желании можно выполнить диагностические операции непосредственно на машине.

В клапанной части механизма возможен износ резиновых уплотнителей. Решить проблему можно заменой. Заклинивание клапана часто наблюдается в результате длительного использования некачественного дизельного топлива.

Как продлить срок эксплуатации насосных секций ПЛД?

Источник

Топливные системы насос-форсунка-трубопровод (PLD)

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

Общий вид системы показан на рисунке:

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Рис. Общий вид системы дизельной топливной аппаратуры насос-форсунка-трубопровод:
1 – форсунка; 2 – камера сгорания; 3 – отдельный топливный насос высокого давления; 4 – распределительный вал; 5 – кронштейн топливопровода высокого давления; 6 – топливопровод высокого давления; 7 – электромагнитный клапан; 8 – возвратная пружина; 9 – роликовый толкатель

Привод отдельных топливных насосов высокого давления 3 осуществляется кулачками распределительного вала двигателя 4. Начало и конец впрыска в зависимости от режима работы двигателя регулируются быстро срабатывающим электромагнитным клапаном 7.

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

Использование системы PLD позволяет создавать давление впрыска до 2000 кгс/см2. Высокое давление впрыска согласуется с электронным управлением с обратной связью, которое основывается на данных, записанных в памяти электронного блока управления, что позволяет снизить расход топлива и токсичность отработавших газов. Система PLD, также как и системы с насос-форсункой может управлять отключением отдельных цилиндров, осуществлять предварительный впрыск. Высокое давление топлива позволяет выполнить все требования по токсическим выбросам при одновременном малом потреблении топлива. Системы PLD предназначены в основном для грузовых автомобилей и автобусов.

Схематичное расположение в разрезе показано на следующем рисунке:

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Рис. Схематичное расположение системы дизельной топливной аппаратуры насос-форсунка-трубопровод:
1 – форсунка; 2 – штуцер форсунки; 3 – трубопровод высокого давления; 4 – накидная гайка; 5 – упор; 6 – игла электромагнитного клапана; 7 – пластина; 8 – корпус насоса; 9 – полость высокого давления; 10 – плунжер; 11 – блок двигателя; 12 – ось роликового толкателя; 13 – кулачок; 14 – тарелка пружины; 15 – пружина электромагнитного клапана; 16 – корпус клапана с обмоткой электромагнита; 17 – пластина якоря; 18 – промежуточная пластина; 19 – уплотнение; 20 – вход топлива низкого давления; 21 – слив топлива; 22 – плунжер; 23 – пружина толкателя; 24 – тарелка толкателя; 25 – тарелка пружины; 26 – роликовый толкатель; 27 – ролик толкателя.

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

Насос приводится непосредственно от кулачкового вала двигателя. Связь между плунжером насоса и кулачковым валом осуществляется через пружину и роликовый толкатель.

Источник

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

СОДЕРЖАНИЕ

Ранняя программируемая логика

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

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

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

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

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

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

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

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

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

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

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

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

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Другие варианты

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

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

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

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

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

Языки программирования PLD

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

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

Источник

UDB. Что же это такое? Часть 1. Введение. PLD

В комментариях к статье про управление RGB светодиодами средствами блока UDB микроконтроллеров PSoC фирмы Cypress было высказано мнение, что неплохо бы в начале статьи кратко рассказать, что такое вообще UDB. Однако про UDB кратко не написать, но можно перевести фирменную документацию, чтобы познакомить отечественного читателя со столь мощным средством для реализации микропрограммных функций.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Но прежде, давайте рассмотрим, что вообще такое PSoC. PSoC — это набор семейств микросхем фирмы Cypress для реализации систем на кристалле. Разные семейства имеют разное процессорное ядро (для PSoC 3 это MCS-51, для PSoC 4 — Cortex M0, для PSoC 5LP — Cortex M3, а для PSoC 6 — сразу два: Cortex M0+ и Cortex M4) и набор программируемой логики. Причём логика эта не чисто цифровая, есть там и аналоговые вещи. Кроме набора различных АЦП, там присутствуют также аналоговые коммутаторы. Можно даже программно связывать ножки через аналоговые цепи, правда, сопротивление у цепи будет измеряться килоомами. Есть внутри PSoC и операционные усилители, которые можно программно коммутировать, а значит — строить на них разные аналоговые блоки.

Кстати, PSoC’и можно питать любым напряжением от 2.7 до 5.5 вольт. То есть не нужно думать о каких-то стабилизаторах ни при батарейном питании, ни при питании от USB.

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

И вот здесь часто возникает некоторое недопонимание. Многие разработчики привыкли к тому, что Программируемые Логические Интегральные Схемы (ПЛИС) бывают двух видов: CPLD и FPGA. Поэтому многие, кто слышал про PSoC, считают, что там кроется некая CPLD-шка, которую можно программировать на языке Veriolg. По факту — и да, и нет. Некоторое количество PLD (без «C», просто PLD) там действительно есть, и на Verilog их программировать действительно можно. Но реально, эти PLD входят в состав блоков UDB. И именно UDB является основным элементом программируемой логики, реализованной в PSoC. Этот блок чрезвычайно самобытен и предоставляет просто широчайшие возможности для разработчика. Рассмотрим рисунок из фирменной документации, поясняющий суть использования блоков UDB.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Так как я изучал всё на примере семейства PSoC 5LP, переводить буду документацию именно на него. Но перед тем, как начать, скажу пару слов про цену этих контроллеров. Если зайти на Ali Express и посмотреть на макетные платы для них, возникает грустное ощущение. Прямо скажем, по сравнению с STM32-DISCOVERY они ещё ничего, а вот на фоне макеток STM32F103C8T6 дороговаты. В первую очередь, это связано с тем, что на фирменных макетках всегда стоит не один, а два таких контроллера. Функции JTAG реализуются на PSoC 5LP, даже если целевой контроллер и PSoC 4 (у последнего обычно нет порта USB).

Но и поделив цену на два, всё равно получаем, что она выше, чем у сходного по процессорному ядру STM32F103. Тем не менее, если мы добавим к тому самому STM32 снаружи ещё и даже самую простенькую CPLD, то суммарная цена уже выйдет в пользу PSoC. А ещё добавим потерянные ножки на связь этих двух корпусов (у PSoC же все связи внутри). А ещё цену квадратных сантиметров платы. Вот и получается, что, если нужно работать только с процессорным ядром, в PSoC действительно нет необходимости. Если же нужно какой-то функционал вынести на микропрограммный или аппаратный уровень — тут нужен именно PSoC. На нём система выйдет дешевле и проще.

На самом деле, у меня есть маниакальная идея попробовать сделать аппаратную поддержку ядра нашей ОСРВ МАКС. Для этого я изучил методику разработки Bare Metal приложений под Altera V SoC (увы, выяснилось, что особенность архитектуры там такая, что ОС можно замедлить, но нельзя ускорить — одиночные запросы к аппаратуре там идут с бешеной латентностью). Для этого же я начал осваивать и PSoC. До разгона ядра ещё не дошёл (есть только общие мысли), но сама идея программирования UDB мне жутко понравилась. Само собой, я теперь заинтересован в том, чтобы донести эту идею до максимального числа отечественных программистов. Поэтому приступаем к переводу соответствующей части фирменной документации Cypress, посвященной UDB. Нумерацию глав и рисунков сохраняем в соответствии с оригинальным документом.

UDB. Что же это такое? Часть 1

21. Универсальные цифровые блоки

В этой главе мы рассмотрим, как универсальные цифровые блоки (англ. Universal Digital Blocks, UDB) позволяют разрабатывать программируемые цифровые периферийные функции. Архитектура UDB обеспечивает баланс между гранулярностью конфигурации и эффективной реализацией. UDB состоят из комбинации нескоммутированной логики, схожей с программируемой логической матрицей (ПЛМ, англ. PLD), структурированной логики (операционные автоматы, далее — Datapath) и гибкой схемы трассировки.

Рисунок 21-1 показывает UDB в виде конструкции, содержащей два базовых логических блока PLD, Datapath и функции управления, статуса, тактирования и сброса.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое
Рисунок 21-1. Блок схема UDB.

21.3 Как это работает

Основными компонентами UDB являются:

В каждом UDB есть две PLD «12С4». Блоки PLD, показанные на рисунке 21-1, можно использовать для реализации конечных автоматов, обработки данных ввода/вывода и для создания табличной логики (англ. Lookup Table, LUT). Кроме того, PLD можно настроить для выполнения арифметических функций, установки последовательности Datapath и генерации статуса. Общая логика может быть синтезирована и спроецирована на блоки PLD. Этот раздел содержит обзор архитектуры PLD.

PLD имеет 12 входов, которые передают информацию на 8 конъюнктивных термов в массиве AND. В каждом конъюнктивном терме можно выбрать прямой (true, Т) или инверсный (complement, С) вход. Выход конъюнктивных термов идет на вход массива OR. Буква ‘C’ в 12С4 показывает, что термы OR постоянны для всех входов, а каждый вход OR может получить программный доступ к любому конъюнктивному терму. Такая структура обеспечивает максимальную гибкость и гарантирует, что все входы и выходы могут быть перемещены.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое
Рисунок 21-2. Структура PLD 12С4.

21.3.1.1 Макроячейки PLD

Архитектура макроячеек показана на рисунке 21-3. Выход управляет трассировочным массивом и может быть защелкнут или комбинаторным. Для защелкивания используется D-триггер с прямым или инверсным входом либо T-триггер с высоким или низким входным уровнем. Выходной триггер может быть установлен или сброшен при инициализации или асинхронно при нормальной работе, по внешнему сигналу из трассировочного канала.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое

Регистр макроячейки PLD «только для чтения»

Помимо управления трассировочным массивом, выходы макроячеек обеих PLD спроецированы на адресное пространство в виде 8-битного регистра «только для чтения», доступ к которому можно получить при помощи CPU или DMA.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое
Рисунок 21-4. Регистр макроячейки PLD «только для чтения».

21.3.1.2 Цепь переносов PLD

PLD связаны вместе в адресации UDB. Как показано на рисунке 21-5, вход цепи переносов «selin» пробрасывается из предыдущего UDB в цепи, через каждую макроячейку в обеих PLD, после этого направляется на следующий UDB в виде выхода цепи переносов «selout». Для поддержки эффективного размещения арифметических функций, генерируются специальные конъюнктивные термы (PT), которые используются в макроячейках совместно с цепочкой переносов.

pld что это такое. Смотреть фото pld что это такое. Смотреть картинку pld что это такое. Картинка про pld что это такое. Фото pld что это такое
Рисунок 21-5. Цепь переносов PLD и входы специальных конъюнктивных термов.

21.3.1.3 Конфигурация PLD

Каждая PLD предстает перед CPU или DMA в виде ОЗУ с 16-битным доступом. Массив AND имеет 12×8×2 бит или 24 байта для программирования, а массив OR имеет 4×8 бит или 4 байта для программирования. Кроме того, каждая макроячейка имеет один байт конфигурации, итого, 32 байта конфигурации на каждую PLD. Так как каждый UDB имеет 2 PLD, всего конфигурация каждого UDB занимает 64 байта.

В следующий раз мы будем рассматривать Операционные автоматы (Datapaths).

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *