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

Gamma logo Дистрибьюция
электронных компонентов
Санкт-Петербург, Певческий переулок 12

Микропотребляющие контроллеры SAML10/SAML11

24.04.20191317

Эффективная система оптимизации энергопотребления.

В современных приложениях с использованием микроконтроллеров все большее значение придается оптимизации потребляемой ими мощности. Многие приборы используют батарейное питание или питание от линии связи. Все эти разработки объединяет общее требование — малая потребляемая мощность, но при этом достаточная производительность. Для соответствия этим требованиям компания Microchip предоставляет 32-битные микроконтроллеры семейства SAM L10/L11  с использованием энергосберегающих технологий, способных обеспечить работу устройства в течение нескольких лет без замены элемента питания.

В статье приводятся технологические решения компании Microchip, реализованные в этих микроконтроллерах с целью снижения потребления. Также приведены примеры использования энергосберегающих функций микроконтроллеров SAM L1х и оценка его энергоэффективности. В таблице 1 приведён перечень периферии контроллеров SAM L1x. SAM L11 имеет область TrustZone ARMv8-M, SecureBoot, Crypto-блок для организации доверенной загрузки, защиты от взлома и защиты передаваемых данных. Процессорное ядро Cortex M-23, на базе которого работает всё семейство, обладает наименьшей потребляемой мощностью из линейки процессоров ARM.

Таблица 1. Периферия контроллеров семейства SAM L1x.

 

Энергосберегающие возможности контроллеров серии SAM L1x

Контроллеры серии SAM L1x поддерживают 3 режима сна, каждый из которых требует разного времени для перехода в активный режим. На рисунке 1 представлено энергопотребление и время выхода из каждого режима (PL0-8MHz, PL2-32MHz). PL (Perfomance Level) – уровень производительности, соответствует рабочей частоте. В таблице 2 указано, какие блоки, генераторы и шины отключаются в каждом из режимов. Выход из режимов Standby и IDLE возможен по внешнему и внутреннему прерыванию, в то время как выход из режима off возможен только по внешнему прерыванию RESET.

 

Рисунок 1. Режима сна SAM L1x.

Таблица 2. Режимы сна.

  • Возможно включение в работу по запросу от периферии с использованием SleepWalking.

(3) Возможна работа источника синхронизирующего сигнала по запросу (отключён, если не требуется).

Основной особенностью данного семейства является наличие аппаратной надстройки EventSystem (Система событий), позволяющей периферии взаимодействовать между собой без участия процессора (см. рис. 2). Система событий может эффективно применятся совместно с режимами сна, существенно снижая энергопотребление.

Рисунок 2. Функционирование контроллера, а) без системы событий б) при использовании системы событий

 

В режиме STANDBY помимо ядра отключаются источники синхронизирующего сигнала. В этом режиме также возможно организовать работу таких функций контроллера, как SleepWalking (Хождение во сне, Лунатизм) и PowerGating (динамическое питание).

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

 PowerGating является дополнением к SleepWalking и подразумевает возможность использования двух различных доменов питания периферии: статического (PDAO – питание всегда есть) и динамического (PDSW – питание динамически переключается). Домен PDSW может работать в трёх режимах:

  • Активный режим: блок питает всю периферию, и она может работать в нормальном режиме.
  • Режим удержания(retention): периферия запитана частично для сохранения содержимого её регистров, но нормальное функционирование её невозможно.
  • Режим Off: питание всей периферии отключено.

При использовании SleepWalking совместно с динамическим питанием домен PDSW автоматически выбирает режим, в зависимости от требований периферии. Вся периферия микроконтроллера разделена по питанию на две зоны. Всё что находится в зоне PDSW, может пребывать в отключенном состоянии во время сна (см. рис. 3). Также в режиме сна STANDBY есть возможность отключать часть RAM в целях снижения энергопотребления. У семейства SAM L1x также есть возможность уменьшения потребления путём изменения различных параметров питания, которая будет рассмотрена далее.

Рисунок 3. Разделение по питанию контроллера SAM L10/11.

Реализация и оценка энергосберегающих возможностей на отладочной плате SAM L10 Xplained Pro 

В данной статье рассмотрим пример работы микроконтроллера SAM L10 32-bit ARM® Cortex®-M23 с использованием возможностей энергосбережения на основе отладочной плате SAM L10 Xplained Pro и с платой расширения IO1 Xplained Pro. Отладочная плата включает в себя встроенный программатор-отладчик и блок измерения тока потребления. Плата расширения, в свою очередь, имеет датчик температуры, освещения, и microSD.

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

Вариант 1.

Стандартным решением, с использованием режима сна IDLE, будет снятие показаний через АЦП с использованием прерываний от таймера (RTC, так как он находится в зоне PDAO, что позволит в дальнейшем использовать PowerGating) каждые 125 мс. После чего данные, с помощью контроллера прямого доступа к памяти (DMA), записываются в SRAM. После 10 таких операций пробуждается ядро, усредняются полученные значения и результат выводится через SPI на ПК. Таким образом, система работает по схеме 4а, параллельно снимаются данные об энергопотреблении микроконтроллера.

Рисунок 4. Работа SAM L10 в спящем режиме, а) с пробуждением ядра, б) с EventSystem без пробуждения ядра.

Для выполнения задачи по алгоритму рис. 4а,  создан проект в Atmel Start и написана программа в Atmel Studio со следующими настройками: тактовая частота контроллера 8МГц; Brown-Out Detector – отключен; использован BUCK-конвертер для питания ядра; включен режим питания Low Power Efficiency mode (LPEFF), который имеет самый высокий КПД и ограниченный диапазон входных напряжений (2,5-3,6 В).

Таблица 3. Потребляемый ток ядра при использовании разных режимов производительности (PL).

При работе программы по алгоритму 4а были получены значения среднего тока потребления в 296 мкА (см. рис. 5). При этом контролировались показания освещённости, для контроля правильности работы системы. (см. рис. 6)

 

Рисунок 5. Энергопотребление при работе по схеме 4а с использованием  режима IDLE.

Рисунок 6. Показания датчика освещённости.

Вариант 2.

Для уменьшения значения потребляемой мощности воспользуемся режимом STANDBY. В этом случае среднее энергопотребление уменьшилось до 1,7 мкА, т.к. теперь источник тактирования включается только при переходе в активный режим. На графике (см. рис. 7) видны пики потребления, это моменты, когда контроллер пробуждается для запуска АЦП и большие пики, когда после 10 операций снятия показания процессор обрабатывает показания АЦП и передаёт через интерфейс SPI.

 

Рисунок 7. Энергопотребление в режиме STANDBY при работе по схеме 4а

 

Вариант 3.

SleepWalking

Теперь модифицируем алгоритм (как на рис. 4б) и добавим Event System и функцию SleepWalking. Принцип работы данной функции изображён на рисунке 8.

 

Рисунок 8. Принцип работы функции SleepWalking.

 

После конфигурации Event System ядро больше не пробуждается по прерыванию от таймера для запуска АЦП, а пробуждается лишь после 10 операций замера показаний с датчика света для передачи информации по SPI. В результате этого получаем среднее значение потребляемого тока в 1,5 мкА (см. рис. 9).

 

Рисунок 9. Энергопотребление в режиме сна STANDBY с использованием функции SleepWalking.

Вариант 4.

PowerGating и SleepWalking

Крайней стадией оптимизации энергопотребления является подключение функции PowerGating, работа всей системы при этом изображена на рисунке 10. При переходе из активного режима в STANDBY домен питания PDSW начинает работу в режиме удержания, что позволяет снизить потребление всей подконтрольной ему периферии (см. рис. 3.). После выхода микроконтроллера из сна домен питания автоматически переключается в активный режим. При работе в STANDBY с функцией SleepWalking периферия может по запросу переводить PDSW в активный режим.

 

Рисунок 10. Функционирование в режиме STANDBY с использованием SleepWalking и PowerGating.

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

 

Рисунок 11. Среднее энергопотребление микроконтроллера SAM L10 с применением всех возможных функций по энергосбережению для поставленной задачи.

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

В таблице 4 приведено обобщение полученных результатов среднего потребляемого тока в исследуемой задаче. К сравнению приведено время работы от одного элемента питания ёмкостью 180 мА*ч для разных режимов и функций. Таким образом, добавление к режиму STANDBY функций SleepWalking и PowerGating увеличивает на 25% время работы от батареи (для нашего примера), что является значительным показателем для автономных и портативных приложений.

Вариант 5.

Использование встроенного операционного усилителя

Энергосберегающие возможности операционных усилителей.

Контроллеры семейства SAM L1x имеют в своём составе аналоговый модуль, включающий в себя три независимо конфигурируемых операционных усилителя (OPAMP), которые позволяют программно реализовывать стандартные схемы включения: буферный повторитель, (не)инвертирующий усилитель, усилительный каскад и т.д..

Аналоговые модули с операционными усилителями имеют дополнительные настройки для приложений, требующих малого энергопотребления:

  • Настройка полосы единичного усиления возможна для каждого операционного усилителя индивидуально. При этом существует 4 варианта от 0.2 до 7МГц (оказывает влияние на потребляемую мощность);
  • Функция Analog-On-Demand, при помощи которой операционный усилитель получает питание и включается в работу только по запросу от периферии:
  • Снижение энергопотребления путём отключения удвоителя напряжения (микроконтроллер может работать от 1.62В, но для ОУ нужно напряжение питания не менее 2,5В – при питании ниже 2.5В нужно задействовать встроенный удвоитель напряжения).

 

Рассмотрим работу по алгоритму 4б, как и в предыдущих примерах, но теперь сигнал на вход АЦП подаем с операционного усилителя OPAMP2, который сконфигурируем как неинвертирующий усилитель с коэффициентом усиления , при этом на его вход подаем сигнал с датчика света. Получили средний ток потребления 314 мкА (см.рис. 12).

 

Рисунок 12. Средний потребления микроконтроллера при работе с OPAMP2.

В нашем случае напряжение питания гарантированно превышает значение 2,5 В, поэтому можно отключить удвоитель напряжения питания операционного усилителя, в результате получили снижение среднего потребляемого тока до 283 мкА (см. рис. 13).

 

Рисунок 13. Средний ток потребления при отключении удвоителя напряжения.

Как описывалось ранее, данные с АЦП считываются каждые 125 мс с использованием системы событий, следовательно, в остальное время питание операционному усилителю не требуется. Для питания OPAMP2 только тогда, когда это требуется периферии используем функцию Analog-On-Demand. В результате энергопотребление снижается до 2,3 мкА (рис. 14).

 

Рисунок 14. Средний ток потребление при использовании Analog-On-Demand.

Благодаря функции Analog-On-Demand, включение в работу операционного усилителя потребовало от системы всего лишь 1 мкА дополнительного потребления.

Модуль с операционными усилителями получает питание от домена питания PDSW, и при использовании функции PowerGating питания OPAMP2 так же бы отключался от питания. Но если в конкретном приложении какой-либо модуль, получающий питание от PDSW, должен постоянно функционировать (например, прерывание для системы событий поступает не от RTC, а от одного из таймеров), то отключение модуля с операционными усилителями невозможно. (см.рис. 15)

 

Рисунок 15. Работа в режиме STANDBY с функцией PowerGating питания и прерыванием от таймера-счётчика.

В таком случае функция Analog-On-Demand является отличной возможностью существенно снизить энергопотребление. (см. табл. 5)

Таблица 5. Энергопотребление при использовании энергосберегающих функций аналогового модуля в рассматриваемой задаче.

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

 

Таблица 6. Сводная таблица семейства контроллеров SAML10/L11

Контроллер

Память

ОЗУ

выводов

Последовательных портов

АЦП 12бит (каналов)

Операционные усилители

Компараторы

Емкостные каналы

Порты ввода/ вывода

Корпуса

Flash/Data Flash

ATSAML10D14

16/2

4

 

24

 

2

 

5

 

3

 

2

 

16/64

 

17

VQFN, SSOP

ATSAML10D15

32/2

8

ATSAML10D16

64/2

16

ATSAML10E14

16/2

4

 

32

 

3

 

10

 

3

 

4

 

20/100

 

25

VQFN, TQFP, WLCSP

ATSAML10E15

32/2

8

ATSAML10E16

64/2

16

ATSAML11D14

16/2

8

 

24

 

2

 

5

 

3

 

2

 

16/64

 

17

VQFN, SSOP

ATSAML11D15

32/2

8

ATSAML11D16

64/2

16

ATSAML11E14

16/2

8

 

32

 

3

 

10

 

3

 

4

 

20/100

 

25

VQFN, TQFP, WLCSP

ATSAML11E15

32/2

8

ATSAML11E16

64/2

16

 

Поделиться: twitter fb vk

Похожие статьи

24.04.20191395
Система на кристалле и процессорный модуль с Cortex A5

Система на кристалле и процессорный модуль с Cortex A5

Микропроцессорные системы не обходятся без применения высокоскоростного интерфейса обмена данными между процессором и оперативной памятью. Разработка...
Читать подробнее...
07.06.20181431
Компания Microchip запустила в производство обновленное семейство 8-и битных микроконтроллеров с CAN

Компания Microchip запустила в производство обновленное семейство 8-и битных микроконтроллеров с CAN

Новое семейство PIC18 K83 упрощает и удешевляет создание систем с CAN интерфейсом. Компания Microchip Technology Inc. объявила о запуске в производство первых представителей...
Читать подробнее...
04.04.20171523
Поддержка плат Click в MCC

Поддержка плат Click в MCC

Для помощи в быстром воплощении ваших идей, компания Microchip Technology Inc. предоставляет программные библиотеки поддержки плат MikroElektronika Click boards компании...
Читать подробнее...

Подписаться на рассылку

Заполняя форму вы соглашаетесь на обработку персональных данных в соответствии с условиями пользовательского соглашения
Яндекс.Метрика