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

Рис. 1. Типовая электронная система с использованием PLD
В этой системе ПЛУ взаимодействует с микроконтроллером, специализированной ИС, специализированным стандартным изделием (ССИ) со светодиодами и Flash-памятью, используя различные уровни напряжения. Микроконтроллер отслеживает состояние системы через банки регистров ПЛУ по интерфейсам I2C, SPI или LPC. ПЛУ обеспечивает индикацию состояния посредством светодиодов и управляет интерфейсами Flash-памяти. Кроме того, ПЛУ управляет последовательностью включения-выключения и сбросом для нескольких ИС и предоставляет интерфейс для аналоговых сигналов. Наконец, оно связывается с другими компонентами на плате через мосты последовательных шин.
Проблемы применения в электронных системах
Перечислим типичные проблемы, решаемые путем применения ПЛУ в электронных системах.
Сопряжение с множеством устройств
С ростом числа устройств на плате увеличивается и количество линий ввода/вывода, необходимых для взаимодействия между этими устройствами. ПЛУ можно использовать для контроля и управления передачей множества сигналов на множество устройств. Кроме того, их можно использовать в сочетании с микроконтроллером или специализированным стандартным изделием для повышения числа доступных пользователю линий ввода/вывода. Благодаря применению передовых технологий удалось существенно уменьшить размеры логических цепей, памяти, ФАПЧ и других базовых функциональных блоков ПЛУ. Вместе с тем структура ввода/вывода остается во многом прежней, так как она требует использования особого рода цепей (например, с защитой от статического электричества), которые не столь хорошо поддаются миниатюризации с повышением разрешающей способности технологического процесса. Это ограничивает число выводов.
Надежная работа в среде с высоким уровнем шумов
Одним из основных требований к ПЛУ, применяемым в электронных системах, является эффективное управление последовательностью включения и выключения устройств на плате. Отсюда следует ряд специфических требований, в числе которых мгновенное включение, поддержка входного гистерезиса, питание от одного источника напряжением 3,3 В и реализация на одном кристалле.
Мгновенное включение
Мосты шин и логические схемы управления должны начинать работу до включения прочих устройств в системе. Это подразумевает, в частности, возможность обеспечивать включение и выключение питания других устройств в заданной последовательности для их надлежащей работы.
Входной гистерезис
В электронных системах часто вырабатываются сигналы с низкой скоростью нарастания напряжения, что обусловлено интенсивным использованием ресурсов разводки сигналов на уровне платы. Устройства с входным гистерезисом обеспечивают помехоустойчивость в условиях медленно растущих входных сигналов, повышая общую надежность системы.
Питание от источника напряжением 3,3 В
В электронных системах ПЛУ обычно питается от вспомогательного источника, так как он первым включается и первым выключается. Во многих системах напряжение на вспомогательной шине питания равно 3,3 В. Возможность непосредственно питать устройство от этой шины позволяет избежать дополнительных расходов и повышения числа компонентов, связанных с использованием дополнительного стабилизатора.
Реализация на одном кристалле
ПЛУ, для которых не требуется дополнительное ППЗУ или устройство конфигурирования, повышают общую надежность системы за счет независимой работы и минимизации числа компонентов.
Уменьшение площади печатной платы за счет функциональной интеграции
Чтобы клиенты могли менять функциональность системы и приспосабливать ее к различным стандартам, перед проектировщиками зачастую ставится задача обеспечить высокий уровень функциональности с возможностями для рыночной дифференциации и одновременно снизить общую себестоимость системы. Применение дискретных устройства и ССИ не дает нужной дифференциации и приводит к повышению числа компонентов и увеличению площади, занимаемой на печатной плате. Применение специализированных ИС (ASIC) обеспечивает возможность индивидуальной адаптации и функциональной интеграции, но отдаляет сроки выхода на рынок и повышает стоимость разработки ввиду дороговизны соответствующих комплектов фотошаблонов. Сейчас на рынке завоевывают популярность решения, которые обеспечивают функциональную интеграцию и рыночную дифференциацию, позволяя при этом сэкономить место на плате и сократить затраты.
Реализация функциональных блоков системы с использованием ПЛУ MachX02
Семейство ПЛУ MachX02 компании Lattice подходит для описанных выше системных применений. Сочетая в себе оптимизированную архитектуру со встроенной Flash-памятью на базе 65-нм технологического процесса, семейство MachX02 представляет собой гибкое универсальное решение для проектирования электронных систем.
ПЛУ семейства MachX02 позволяют проектировщикам систем обеспечить сопряжение с большим числом недорогих линий ввода/вывода, имеющих разные рабочие уровни напряжения, повысить общую надежность системы и увеличить степень функциональной интеграции с помощью всего одного устройства.
Ниже описываются отличительные черты и преимущества семейства MachX02, которые позволяют решать перечисленные проблемы проектирования электронных систем.
Большое число линий ввода/вывода
Устройства MachX02 предоставляют до 335 пользовательских линий ввода/вывода и выпускаются в широком ассортименте корпусов. Линии ввода/вывода совместимы с большим числом стандартов ввода/вывода и имеют ряд других особенностей, таких как включенный по умолчанию «подтягивающий» резистор, возможность «горячей замены» и поддержка входного гистерезиса — все это обеспечивает гибкость в реализации разнообразных конструкций.
Трехуровневое шахматное расположение контактных площадок ввода/вывода
Устройства MachX02 конструктивно ограничены числом контактных площадок. Контактные площадки ввода/вывода размещены по периметру в шахматном порядке в две или три линии, в зависимости от плотности упаковки и, соответственно, размера кристалла для данного числа линий ввода/вывода. Это особенно удобно для таких системных функций, как преобразование напряжения, мостовое сопряжение с шинами и управление интерфейсами, у которых удельное число линий ввода/вывода больше в сравнении с логическими схемами.
Асимметричная структура банков
В электронных системах преобладает ввод/вывод на низковольтной КМОП-логике (3,3 В), а применение других значений напряжения и стандартов ввода/вывода ограничено. Работая с симметричными банками ввода/вывода, проектировщики часто сталкиваются с недоиспользованием низковольтных банков. Устройства MachX02 оснащены асимметричными банками ввода/вывода (рис. 2), что позволяет проектировщикам максимизировать их использование. Это помогает в реализации функций преобразования уровней напряжения и мостового сопряжения, когда для некоторого ограниченного числа линий ввода/вывода требуется другое напряжение питания. Тем самым обеспечивается гибкость и задействуется максимальное число линий.

Рис. 2. Асимметричные банки ввода/вывода в ПЛУ MachXO2-2000, 4000 и 7000
Недорогие корпуса BGA
Семейство MachX02 выпускается в широком ассортименте недорогих корпусов для экономии места, снижения стоимости в расчете на одну линию ввода/вывода и сокращения производственных издержек. Путем электронного моделирования были найдены такие особенности конструкции подложки, которые при минимальной стоимости обеспечат достижение намеченных характеристик устройства в этих корпусах. Корпуса спроектированы таким образом, что все соединения ввода/вывода и питания разведены по двум-четырем слоям печатной платы. Это позволяет избежать применения при производстве более дорогостоящих технологий, таких как утопленные, слепые и высверленные лазером переходные отверстия. Назначение контактов ввода/вывода в корпусах MachX02 выполнено так, чтобы обеспечить возможность смены плотности упаковки в одном и том же корпусе; тем самым исключаются затраты времени и средств на разработку нового варианта платы при конструктивных изменениях.
Надежная конструкция
Ряд особенностей семейства MachX02 способствуют повышению надежности системы и ее работоспособности в условиях высокого уровня шума.
Мгновенное (менее 1 мс) включение
Сочетание Flash-памяти и СОЗУ в одном устройстве обеспечивает существенные преимущества, связанные с возможностью дистанционного обновления, мгновенным включением и энергонезависимостью. При включении питания биты конфигурации загружаются из энергонезависимой памяти устройства в СОЗУ, благодаря чему оно способно начать работать менее чем через 1 мс после включения.
Входной гистерезис
Паразитные емкость, сопротивление и индуктивность входного тракта и входного буфера замедляют время нарастания и спада входного сигнала. Как показано на рис. 3, если входной сигнал становится слишком медленным, шумовые колебания в окрестности порогового входного напряжения устройства могут приводить к многократным изменениям состояния.

Рис. 3. Шумовые колебания в окрестности порогового входного напряжения
Буферы на триггерах Шмитта, которыми оборудованы устройства MachX02, позволяют преобразовывать медленный или зашумленный входной сигнал в чистый, прежде чем передавать его в ядро ПЛУ. Тем самым обеспечивается надежная работа в условиях высокого уровня шума. Передаточная функция буфера на триггере Шмитта имеет гистерезис, как показано на рис. 4.

Рис. 4. Кривая гистерезиса
В процессе нарастания входного напряжения с 0 В до нижнего порога выходное напряжение остается равным 0 В. Только когда входное напряжение превысит верхний порог, выходное напряжение вырастет до VCC. Если на этом этапе входное напряжение снизится, это не приведет к немедленному падению выходного напряжения до нуля. Такое произойдет только в том случае, если входное напряжение станет меньше нижнего порога. Применив теорию гистерезиса к медленному и сильно зашумленному сигналу (рис. 5), можно видеть, что восстановленный из него результирующий выходной сигнал будет почти идеальным.

Рис. 5. Применение гистерезиса к зашумленному сигналу
Входные буферы с включенными по умолчанию «нижними подтягивающими» резисторами
По умолчанию между контактами ввода/вывода и шиной GND ПЛУ MachX02 подключены подтягивающие нагрузочные резисторы. Это предотвращает проблемы, возникающие при использовании нагрузочных резисторов, «подтянутых» к шине питания, (всплеск сигнала в виде «акульего плавника») в случае сброса подключенных к ПЛУ устройств или их запуска по сигналу с активным высоким уровнем.
Возможность питания от одного источника
Устройствам MachX02 нужен всего один источник питания. Они могут напрямую питаться от одной шины, не требуя дополнительного стабилизатора: в результате уменьшается число компонентов и повышается надежность системы.
Реализация на одном кристалле
Устройства MachX02 содержат в себе СОЗУ и Flash-память конфигурации, что устраняет потребность в ППЗУ и/или дополнительной памяти для конфигурирования.
Высокий уровень функциональной интеграции
ПЛУ MachX02 обеспечивают высокий уровень интеграции за счет таких своих архитектурных особенностей, как пользовательская Flash-память (UFM), генератор, синтезаторы с ФАПЧ, а также аппаратно реализованные интерфейсы I2C, SPI и таймер-счетчик. Тем самым экономится место на плате, уменьшается число компонентов и снижается общая стоимость системы.
На рис. 6 показано, как одно устройство MachX02 объединяет в себе множество дискретных логических компонентов, таких как расширитель ввода/вывода, преобразователь уровней напряжения, мост к шине, стабилизатор напряжения, источник тактового сигнала и устройство конфигурирования.

Рис. 6. Интеграция функциональных блоков в ПЛУ MachX02
Интеграция внешней энергонезависимой памяти
Устройства MachX02 оборудованы встроенной Flash-памятью объемом до 256 кбайт. Эта пользовательская Flash-память на кристалле (UFM) позволяет интегрировать ПЛУ MachX02 с внешней энергонезависимой памятью, и ее можно использовать для разных целей, в том числе для хранения части конфигурационного образа и данных ППЗУ или в качестве пользовательской Flash-памяти общего назначения.
Уменьшение числа генераторов
Устройства MachX02 имеют внутренний генератор с номинальной погрешностью ±5%, который можно использовать как источник тактового сигнала в системе, при этом нет необходимости во внешнем генераторе.
Аппаратно реализованные контроллеры SPI, l2C и таймер-счетчик
Контроллеры SPI и I2C, а также таймеры-счетчики — наиболее часто реализуемые функциональные блоки электронных систем. Нередко проектировщики реализуют расширение шины SPI или I2C на базе ПЛУ. Распространено также применение тайме-ров-счетчиков для генерации сигналов состояния. Все устройства MachX02 содержат в себе аппаратные реализации этих часто используемых функций. Имея в своем распоряжении аппаратно реализованные контроллеры I2C, SPI и таймер-счетчик, проектировщики могут сэкономить до 600 LUTs ячеек (таблиц подстановки) для реализации дополнительной логики в своих конструкциях.
В таблице 1 показана экономия, которую можно реализовать за счет аппаратной реализации часто используемых функциональных блоков управления.
Таблица 1. Типичная экономия ячеек LUTs за счет использования аппаратно реализованных контроллеров I2C, SPI и таймера-счетчика
Функциональный блок | Типичное необходимое количество таблиц подстановки в ПЛУ | Типичное необходимое количество таблиц подстановки в ПЛУ MachX02 |
Контроллер SPI (Master) | 115 | 0 |
Контроллер I2C (Master) | 234 | |
Таймер-счетчик | 50–80 |
Бесплатные средства проектирования, сокращающие время разработки
Начать проектирование систем на базе ПЛУ MachX02 можно с помощью програм-много обеспечения Lattice Diamond 2.0, которое можно бесплатно загрузить с веб-сайта компании Lattice. Кроме того, с веб-сайта Lattice можно загрузить обширный пакет примеров.
В таблице 2 перечислены примеры для ПЛУ MachX02, оптимизированные для применения в различных системах.
Таблица 2. Примеры на базе ПЛУ MachX02
Управление системами | Процессоры и периферия | Контроллеры памяти |
Последовательный интерфейс канала управления | Микроконтроллер Lattice Mico8 | Compact Flash |
ΣΔ-АЦП | Контроллер ЖКД (совместим с WISHBONE) | SDRAM с режимом быстрого доступа к страницам |
ШИМ-контроллер вентилятора | Контроллер шины I2C для ЭСППЗУ | NOR Flash |
Контроллер I2S | Контроллер SPI (совместим с WISHBONE) | Контроллер SD с шиной SD Bus |
Контроллер PMBUS | Главный контроллер I2C (совместим с WISHBONE) | NAND Flash |
Интерфейс однопроводного датчика температуры | UART (совместим с WISHBONE) | SDR DRAM |
Контроллер SMBUS | Драйвер светодиодов (в том числе органических) | Контроллер Flash-памяти с выравниванием износа |
Заключение
ПЛУ MachX02 оптимально подходят для реализации типовых функциональных блоков в телекоммуникационной инфраструктуре, вычислительных системах, высокоуровневых промышленных и медицинских системах. Они отличаются рядом важных преимуществ, позволяющих снизить общую себестоимость системы. Бесплатные средства проектирования и примеры образуют в совокупности удобное комплексное решение для быстрого и эффективного проектирования систем, а также их дальнейшей модификации.