HRP-N3 - серия источников питания с максимальной пиковой мощностью в 350% от MEAN WELL
РадиоЛоцман - Все об электронике

Разработка интеллектуальных систем автоматизации на базе микроконтроллеров ARM Cortex-M3

ARM Cortex-M3

Новое поколение 32-разрядных микроконтроллеров с ядром ARM Cortex-M3 позволяет понизить энергопотребление и открывает новые возможности интеллектуальных систем автоматизации

Процессор ARM Cortex-M3 – это хороший пример одного из последних поколений процессоров, разработанных компанией ARM, которые достигли массового применения во встраиваемых системах. Они обеспечивают снижение стоимости платформы, которая отвечает потребностям разработчиков встраиваемых систем за счет снижения количества выводов, низкого энергопотребления и минимального времени реакции на прерывания.

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Ядро использует 3-уровневый конвейер с Гарвардской архитектурой, что подразумевает отдельные шины инструкций, данных и периферии. Такая архитектура подходит для приложений чувствительных к цене, но ARM добавила еще внутренний модуль предварительной выборки, который поддерживает спекулятивные ветвления для повышения производительности. Это сочетание необходимо для уравновешивания рисков, связанных с ошибками КЭШа, с требованиями к задержкам встраиваемых приложений.

Ядро было специально разработано, чтобы бросить вызов 8/16-разрядным контроллерам с точки зрения эффективности кода, поддерживающего компактный набор инструкций ARM Thumb2, требующих минимальной системной логики, и которые зачастую могли бы выполняться исключительно в чипе. Для производителей микроконтроллеров, ядро является основным для целого семейства устройств с различным набором периферии, совместимых по выводам корпуса, насколько это возможно. Периферия микроконтроллеров ориентирована на различные сегменты рынка, от домашней автоматизации до систем промышленного управления и контроля. Для разработчиков это возможность выбора микроконтроллера, отвечающего требованиям приложения (производительность, периферия, стоимость) и возможность оптимизации под конкретную задачу  без дорогостоящих услуг конфигурирования.

Ключевой особенностью микроконтроллеров является то, что программное обеспечение, разработанное для одного микроконтроллера, может в дальнейшем использоваться для всех представителей семейства, и оно совместимо по возрастанию с новыми устройствами, выполненными на базе архитектуры Cortex-M4. Это дает разработчикам простой и легкий способ обновления и наращивания возможностей проектов. Будучи 32-битным, ядро позволяет применять высокоуровневые отладочные инструменты и запускать операционные системы реального времени. Вместо использования ассемблера или другого специализированного языка программирования, разработчики систем автоматики могут использовать язык Си и экосистемы отладочных инструментов для всего семейства микроконтроллеров Cortex-M3. В случае, если разработчик захочет отойти от этого семейства, то также возможно, что 32-битный код может быть при необходимости портирован на другие архитектуры, избавляя от вложения значительных инвестиций в разработку и тестирование.

Переход на 32-битную архитектуру приносит конкретную пользу для систем интеллектуальной автоматизации. Это позволяет легко интегрировать стеки коммуникационных протоколов сторонних разработчиков в базовое программное обеспечение, что открывает новые возможности сетевой передачи данных. Они могут варьироваться от стеков беспроводной передачи данных (ZigBee и 2.4 ГГц Wi-Fi) до TCP/IP стека, который позволит подключить любое устройство в доме к Интернет и управлять им с помощью WEB-интерфейса. Также это влияет на тип периферийных устройств, которые необходимы системе. Например, микроконтроллеры компании STMicroelectronics (ST) серии STM32F20x имеют 512 Байт встроенной однократно программируемой памяти, которая может использоваться для хранения критически важных пользовательских данных, таких как MAC адрес или криптографические ключи.

Ядро Cortex-M3 является более сложным, чем ядро микроконтроллеров основного направления. STM32F205x и STM32F207x совмещают ядро Cortex-M3 с блоком защиты памяти (MPU) - дополнительным компонентом для разделения адресного пространства процессов и защиты данных. Этот блок поддерживает управление до восьми областей защищаемой памяти, которые могут быть разбиты на 8 подобластей. Размеры защищаемой зоны могут быть от 32 Байт до 4 ГБайт адресуемой памяти.

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

Блок защиты памяти, как правило, управляется операционной системой реального времени с ядром, которое может динамически обновлять настройки области MPU на основе процесса, который будет выполнен.

Компания ST также разработала пользовательский блок, получивший название Adaptive Real-time Memory Accelerator (ART Accelerator, адаптивный ускоритель памяти реального времени), для ядра Cortex-M3, предоставляющий преимущества по сравнению с традиционными технологиями Flash-памяти, которые обычно требуют от процессора некоторого время ожидания при работе на высоких скоростях.

Ускоритель использует инструкции предварительной выборки очереди и КЭШ ветвлений для повышения скорости выполнения приложения из 128-битной Flash-памяти. Тест CoreMark показал, что эффективность, достигаемая за счет ускорителя, такая же, как при выполнении программы из Flash-памяти с нулевым временем ожидания на частоте 120 МГц.

Системы домашней автоматизации

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

32-разрядные микроконтроллеры с рабочей частотой от 20 МГц до 168 МГц доступны от разных производителей, и поэтому можно выделить некторый диапазон точек производительности, объема памяти и набора периферии, которые могут быть подобраны для конкретного приложения, будь-то контроллер интеллектуальной системы освещения или мини-концентратор для управления различными устройствами. Наличие широкого спектра стеков сетевых протоколов для ядра Cortex-M3 помогает ускорить разработку и тестирование. Некоторые производители, например Atmel, оптимизировали периферию микроконтроллера для управления оборудованием в доме.

Микроконтроллеры Atmel серии SAM3N (Таблица 1) работают на частоте до 48 МГц и имеют встроенную Flash-память до 256 КБайт и ОЗУ до 24 КБайт. Периферия микроконтроллера включает в себя 2 USART, 2 UART, 2 канала TWI а также ШИМ таймер, шесть 16-битных таймеров общего назначения, часы реального времени, 10-битный АЦП и 10-битный ЦАП (Рисунок 1). Дополнительно микроконтроллеры поддерживают библиотеку Atmel QTouch для организации емкостного сенсорного интерфейса, предоставляющей простой путь реализации в устройствах сенсорных кнопок, сладйеров и колесиков.

Таблица 1. Состав семейства микроконтроллеров SAM3N

Микроконтроллер
Flash,
КБайт
SRAM,
Кбайт
Корпус
Линии
ввода/вывода
АЦП,
каналов
Таймеры
ПДД периферии,
каналов
УСАПП
ЦАП
ATSAM3N4A
256
24
LQFP48
QFN48
34
8
6
8
1
-
ATSAM34N4B
256
24
LQFP64
QFN64
47
10
6
10
2
1
ATSAM3N4C
256
24
LQFP100
BGA100
79
16
6
10
2
1
ATSAM3N2A
128
16
LQFP48
QFN48
34
8
6
8
1
-
ATSAM3N2B
128
16
LQFP64
QFN64
47
10
6
10
2
1
ATSAM3N2C
128
16
LQFP100
BGA100
79
16
6
10
2
1
ATSAM3N1A
64
8
LQFP48
QFN48
34
8
6
8
1
-
ATSAM3N1B
64
8
LQFP64
QFN64
47
10
6
10
2
1
ATSAM3N1C
64
8
LQFP100
BGA100
79
16
6
10
2
1

Блок-схема микроконтроллеров Atmel семейства SAM3N

Рисунок 1. Микроконтроллеры Atmel серии SAM3N предназначены для систем домашней автоматизации

Микроконтроллеры сохраняют работоспособность при напряжении питания от 1.62 В до 3.6 В и доступны в 48/64/100-выводных корпусах. Приборы пришли на смену семейству SAM3S для чувствительных к цене приложений систем домашней автоматизации.

Продукты компании NXP также нацелены на системы домашней автоматизации. Микроконтроллеры серии LPC1311/13/42/43 могут работать на более высоких частотах до 72 МГц, имеют до 32 КБайт Flash-память, до 8 КБайт ОЗУ, полную поддержку интерфейса USB 2.0 (LPC1342/43), интерфейс I2C, модуль UART, четыре таймера общего назначения и до 42 линий ввода/вывода общего назначения.

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

Одним из преимуществ этого семейства является встроенная USB PHY поддержка, посредством которой можно организовать загрузку микроконтроллера с USB или UART интерфейса, что значительно упрощает разработку и отладку. Дополнительно микроконтроллер снабжен выходным драйвером на 20 мА на одном выводе и драйвером втекающего тока 20 мА на двух выводах интерфейса I2C для управления внешними устройствами в высокоскоростном режиме до 1 Мбит/с.

Тем не менее, микроконтроллеры Cortex-M3 были созданы не только хорошо известными компаниями. Норвежская компания Energy Micro использовало это ядро для разработки микроконтроллеров с самым низким энергопотреблением на рынке.

Микроконтроллеры EFM32 «Gecko» выполнены на ядре Cortex-M3 с применением инновационных методов снижения энергопотребления. Они обладают коротким временем выхода из энергосберегающих режимов и, конечно, снабжены богатой периферией. Их основное применение видится в устройствах с батарейным питанием и в системах, где требуется высокая производительность и низкое потребление.

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

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

Также следует отдельно отметить Peripheral Reflex System (PSR) – разработанную компанией технологию внутренней связи, позволяющую различным периферийным блокам осуществлять передачу данных без участия центрального процессора.

Energy Micro: Блок-схема микроконтроллеров EFM32
Рисунок 2. Микроконтроллеры EFM32 "Gecko" благодаря применению инновационных технологий имеют крайне низкое энергопотребление.

Микроконтроллеры EFM32 «Gecko» отличаются низким потреблением коммуникационного блока UART, позволяющего организовать двухстороннюю связь по UART при строгом минимальном уровне энергопотребления на скорости 9600 Бод, работая только от одного источника тактового сигнала с частотой 32768 Гц. Аналогично, 16-битный Low Energy таймер (LETIMER) может использоваться, когда бóльшая часть микроконтроллера находится в энергосберегающем режиме, что позволяет выполнять простые задачи, в то время как энергопотребление системы поддерживается на абсолютном минимуме. Он может использоваться для генерации и вывода различных сигналов с минимальным программным участием, его можно связать со счетчиком реального времени.

Системы промышленной автоматизации

Более высокий уровень производительности ядра микроконтроллера означает возможность применения его в промышленных системах управления, коммуникационном оборудовании, также как в программируемых логических контроллерах и системах промышленного зрения. Опять же переход на 32-битную архитектуру поддерживает использование различных стеков сетевых коммуникационных интерфейсов, от Ethernet и Fieldbus до беспроводных ZigBee и Wi-Fi.

Микроконтроллеры STM32F207xx могут работать на частоте до 120 МГц, и специально разработаны для промышленного применения. Огромный выбор объемов встроенной памяти и периферии отвечает требованиям приложений. Вся периферия микроконтроллера подключена к двум шинам APB, двум шинам AHB и к 32-битной матрице шин multi-AHB. Такая архитектура позволяет в дальнейшем добавлять новые периферийные узлы и гарантирует, что они смогут общаться без блокирования.

Все представители семейства имеют три 12-битных АЦП, два ЦАП, часы реального времени с низким потреблением, двенадцать универсальных 16-битных таймеров, в том числе два ШИМ таймера для управления электродвигателями, два универсальных 32-битных таймера, генератор случайных чисел. К новой периферии относятся интерфейс SDIO, интерфейс камеры для КМОП сенсора и расширенный контроллер управления статической памятью.

Микроконтроллеры семейств STM32F205xx и STM32F207xx сохраняют работоспособность в диапазоне температур от –40 °С до +105 °С при рабочем напряжении 1.8 В – 3.6 В. Напряжение питания может снижено до 1.65 В, когда микроконтроллер работает в узком диапазоне температур. Это означает, что они могут применяться в системах управления электродвигателями, медицинском оборудовании, программируемых логических контроллерах и системах сигнализации, а также в принтерах, сканерах и аудио системах.

Обе компании NXP и ST добавили в свои микроконтроллеры контроллер вложенных векторных прерываний (NVIC). В серии STM32F205xxx NVIC обрабатывает до 87 каналов маскируемых прерываний (не считая 16 каналов прерываний ядра Cortex-M3) по 16 уровням приоритета.

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

В будущем

Одним из преимуществ использования Cortex-M3 является перспектива перехода в дальнейшем на более производительные микроконтроллеры. Семейства STM32F405xx и STM32F407xx выполнены на базе ядра Cortex-M4F, работают на частоте до 168 МГц и имеют встроенный модуль вычислений одинарной точности с плавающей точкой, который поддерживает все ARM инструкции обработки данных и типы данных. Дополнительно микроконтроллеры содержат набор DSP инструкций и блок защиты памяти, который повышает безоапсность приложений, а также крипто/хэш процессор, поддерживающий аппаратное ускорение 128/192/256-битного AES, Triple DES и HASH (MD5, SHA-1) шифрования.

Хоть микроконтроллеры не являются совместимыми по выводам корпуса из-за различного набора периферии, весь бинарный код микроконтроллеров Cortex-M3 будет работать непосредственно на ядре, что дает быстрый способ повышения производительности проектов следующего поколения.

NXP использует ядро Cortex-M4 для нового класса приборов – цифровых сигнальных контроллеров с рабочей частотой выше 150 МГц. Разработанные с применением 90 нм технологического процесса Ultra-Low-Leakage, цифровые сигнальные контроллеры рассчитаны на применение в системах управления электродвигателями, цифрового управления источниками питания и встраиваемыми аудио приложениями. Компания демонстрировала приложение 7-канального графический аудио эквалайзера с 32-битной точностью обработки аудио данных, которое требует от процессора всего 12 МГц при использовании DSP расширений ядра Cortex-M4, что сравнимо с производительностью 60 MIPS без использования этих расширений.

Заключение

Микроконтроллеры Cortex-M3, благодаря своей высокой производительности и богатой периферии, открывают широкий диапазон новых приложений в системах домашней автоматизации и промышленного контроля. При наличии нескольких поставщиков, предоставляющих различные сочетания периферии и специализированных блоков, разработчики могут выбрать микроконтроллер, точно отвечающий требованиям конкретного приложения. Преимущества от использования стандартного 32-битного ядра – доступность стеков коммуникационных протоколов, современные и универсальные экосистемы разработки и отладки, снижение затрат на разработку и тестирование, что ведет к снижению стоимости конечного продукта.

Благодаря ядру Cortex-M3 разработчики могут переносить код между различными микроконтроллерами семейства и даже между микроконтроллерами от разных производителей. Модернизация до грядущих систем с ядром Cortex-M4 позволит достичь более высокой производительности с минимальными рисками проекта и добавить новые возможности, не только увеличивая скорость работы, но и оптимизируя код под приложения управления и обработки сигналов в сердце системы промышленного контроля и «умного дома».

digikey.com

Перевод: Vadim по заказу РадиоЛоцман

На английском языке: Developing a New Generation of Smart Automation with ARM Cortex-M3

WIFI модуль LPB100-B с внешней антенной 2.4ГГц, ARMCortexM3UART,SPI,PWM,GPIO. Режимы: STA/AP/STA+AP. Сетевые протоколы: IPv4,TPC,UDP,FTP,HTTP. Питание 3-3.6В, макс.ток 200мА. Поддержка Andoid/iOS. Размеры 23.1х32.8х2.7мм...
Десси
Россия
WIFI модуль LPB100-B с внешней антенной 2.4ГГц, ARMCortexM3UART,SPI,PWM,GPIO. Режимы: STA/AP/STA+AP. Сетевые протоколы: IPv4,TPC,UDP,FTP,HTTP. Питание 3-3.6В, макс.ток 200мА. Поддержка Andoid/iOS. Размеры 23.1х32.8х2.7мм720 ₽
Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя