Ядра микроконтроллеров — Cortex-M, RISC-V, AVR и PIC под задачу
Чем различаются четыре семейства микроконтроллеров по периферии, инструментам и числу производителей и что смотреть кроме ядра при выборе под серийное изделие.
Ядро определяет не только производительность микроконтроллера, но и всё, что вокруг него: доступность отладочных средств, состав библиотек, стоимость компилятора, наличие специалистов и, что важнее всего для серийного изделия, — количество производителей, у которых можно купить совместимую замену.
Разберём четыре семейства, встречающихся в промышленных задачах, — Cortex-M, RISC-V, AVR и PIC, — и покажем, по каким признакам ядро выбирается под конкретное изделие. Подбор и поставку компонентов закрывает направление микроэлектроники и компонентов.
Cortex-M
32-разрядная архитектура, лицензируемая множеством производителей. Именно множественность источников делает её основным выбором для серийных изделий: при снятии позиции с производства функциональную замену ищут не только внутри линейки одного изготовителя, но и у других лицензиатов.
- Диапазон. От экономичных ядер M0 и M0+ для простых задач до M4 и M7 с аппаратной обработкой чисел с плавающей точкой и цифровой обработкой сигналов.
- Периферия. Наиболее богатая среди рассматриваемых семейств: контроллеры интерфейсов Ethernet и USB, интерфейс внешней памяти, аналого-цифровые преобразователи высокого разрешения, аппаратное шифрование.
- Инструменты. Есть и бесплатные компиляторы, и коммерческие среды разработки; отладочные средства широко доступны.
- Ограничение. Разброс периферии между производителями означает, что переносимость программы между линейками разных изготовителей неполная, даже если ядро одинаковое.
RISC-V
Открытая система команд без лицензионных отчислений за ядро. Практический интерес для промышленного изделия здесь двойной: отсутствие зависимости от одного правообладателя и растущее число производителей, выпускающих микроконтроллеры на этой архитектуре.
- Расширяемость. Базовый набор команд дополняется расширениями под конкретную задачу, включая обработку сигналов и криптографию.
- Применение. Управляющие задачи, интерфейсные узлы, устройства с требованием долгосрочной доступности архитектуры.
- Ограничение. Экосистема моложе: библиотек и готовых примеров меньше, чем у Cortex-M, а состав периферии сильнее различается между производителями. Перед серийным запуском проверяется наличие компилятора, отладчика и поддержки в используемой операционной системе реального времени.
AVR и PIC
Восьмиразрядные семейства, которые остаются в производстве и продолжают закрывать задачи, где 32 разряда избыточны.
- AVR. Простая архитектура, предсказуемое время выполнения команд, низкое потребление в режимах сна. Применяется в датчиках, простых регуляторах и вспомогательных узлах.
- PIC. Широкая номенклатура корпусов вплоть до шестивыводных, устойчивость к электромагнитным помехам, наличие исполнений с расширенным температурным диапазоном. Часто встречается в промышленной и автомобильной обвязке.
- Общее ограничение. Объём памяти и вычислительная мощность ограничены. Задачи с сетевым стеком, файловой системой или обработкой сигналов на них не решаются.
- Общее преимущество. Низкая цена, малое потребление и простая схема включения без внешних компонентов.
Сравнение семейств
| Признак | Cortex-M | RISC-V | AVR и PIC |
|---|---|---|---|
| Разрядность | 32 | 32 и 64 | 8, отдельные линейки 16 |
| Число производителей | много, архитектура лицензируется | растёт, архитектура открыта | ограничено правообладателем линейки |
| Периферия | максимальный набор | зависит от производителя | базовый набор |
| Инструменты разработки | зрелые, бесплатные и коммерческие | развиваются, набор проверяется заранее | простые и доступные |
| Потребление в простых задачах | низкое на ядрах M0 и M0+ | сопоставимо | низкое, глубокие режимы сна |
| Типовое применение | управление, связь, обработка сигналов | управление, специализированные узлы | датчики, простые регуляторы |
Что смотреть кроме ядра
Ядро — лишь одна строка в выборе. Для серийного изделия решающими чаще оказываются другие параметры.
- Объём памяти программ и данных. Закладывается с запасом не менее 30 %: доработки после запуска изделия неизбежны, а переход на старшую позицию линейки в середине производства означает повторную квалификацию.
- Состав периферии. Число интерфейсов, каналов широтно-импульсной модуляции, таймеров и разрядность аналого-цифрового преобразователя проверяются по фактической схеме, а не по описанию семейства.
- Температурный диапазон. Промышленное исполнение отличается от коммерческого суффиксом артикула и ценой; для оборудования вне отапливаемого помещения это обязательный параметр.
- Корпус. Определяет технологию монтажа и ремонтопригодность. Корпуса с выводами под корпусом требуют соответствующего оборудования сборки и контроля.
- Заявленный срок доступности. Часть производителей публикует программу долгосрочной поставки с гарантией выпуска на десять и более лет. Для изделия с длительным жизненным циклом это важнее производительности.
- Единство семейства в проектах. Переход между линейками стоит переписывания драйверов и повторной отладки, поэтому предприятия обычно закрепляют одно семейство на несколько изделий.
Что прислать для подбора
- Описание задачи: что измеряется, чем управляется, какая требуется реакция.
- Перечень интерфейсов и число каналов по каждому.
- Требования по температуре, питанию и потреблению.
- Планируемую серийность и срок выпуска изделия.
- Существующие наработки: используемое семейство, среда разработки, операционная система реального времени.
- Требования к корпусу и технологии монтажа.
Частые вопросы
Стоит ли переходить с восьми разрядов на 32? Если текущей платформы хватает по памяти и периферии, переход не даёт выигрыша. Он оправдан при появлении сетевого обмена, обработки сигналов или роста объёма программы.
Насколько рискованно выбирать RISC-V для серии? Риск не в самой архитектуре, а в зрелости инструментов у конкретного производителя. Перед серийным запуском проверяются компилятор, отладчик и поддержка в используемой операционной системе.
Можно ли перенести программу между микроконтроллерами с одинаковым ядром? Вычислительная часть переносится, работа с периферией — нет. Драйверы придётся переписывать под конкретную линейку.
Как проверить, что позицию не снимут с производства? По статусу артикула в документации производителя и по наличию программы долгосрочной поставки. Такие сведения запрашиваются до закрепления позиции в спецификации.
Какой запас памяти закладывать? Не менее 30 % свободного объёма программ и данных на этапе первого рабочего образца.
Что мы делаем
Подбираем микроконтроллеры и программируемые логические интегральные схемы по требуемой периферии, объёму памяти, корпусу и температурному диапазону, предлагаем функциональные аналоги со сравнением по документации и обеспечиваем поставку партиями под план производства. Направление поставок — микроэлектроника и компоненты; силовая и специальная элементная база собрана в направлении Crystal, включая исполнения с повышенной стойкостью к внешним воздействиям.
Пришлите описание задачи и перечень интерфейсов на sale@tkasiatorg.ru — предложим несколько позиций с обоснованием выбора и посчитаем поставку под серию.
