STM32L - микроконтроллеры с ультранизким энергопотреблением

Опубликовано 30.06.2011 Ведущий Евгений Глазков

При разработке устройств с автономным питанием обычно учитываются два основных параметра - энергопотребление в динамическом режиме и в режиме сна. Это обусловлено различными требованиями к работе конечных приложений. Например, одному приложению необходимо постоянно работать в активном режиме и потреблять при этом минимум энергии. Второму же, наоборот, важно потребление не в динамическом режиме, а в режиме глубокого сна, поскольку к основным целям относятся активация микроконтроллера в редкие промежутки времени, выполнение некоторых действий и повторный переход в режим сна. Учитывая эти два параметра, компания STMicroelectronics разработала 32-разрядный микроконтроллер STM32L на основе ядра ARM Cortex-M3. Линейка STM32L сочетает в себе высокую производительность и плотность кода, присущие всем микроконтроллерам на ядре ARM Cortex-M3, низкое энергопотребление в активном и спящем режимах. Одним из способов снижения энергопотребления в активном режиме является метод динамической адаптации напряжения питания в зависимости от необходимой частоты тактирования микроконтроллера. При работе МК на максимальной частоте (для полного использования всех его возможностей - производительности, периферии) обычно необходимо, чтобы верхняя граница питающего напряжения составляла 3...3,3В. В случае если контроллеру необходимо переключиться в режим низких частот тактирования, это напряжение является избыточным и несет с собой излишние затраты по энергопотреблению. В этих целях в линейке STM32L реализовано динамическое изменение напряжения ядра микроконтроллера. STM32L предоставляет возможность динамического изменения напряжения питания ядра в трех диапазонах: 1,8 В (Range 1); 1,5 В (Range 2) и 1,2 В (Range 3). Такая особенность позволяет добиться общего снижения энергопотребления более чем на 25%. В первом диапазоне (Range 1) достигается максимальная производительность без каких либо ограничений. Во втором диапазоне (Range 2) максимальная частота тактирования ограничена 16 МГц. В третьем диапазоне (Range 3) максимальная частота контроллера ограничена 4 МГц. Кроме снижения энергопотребления ядра микроконтроллера существуют несколько возможностей уменьшения общего энергопотребления, которые в совокупности позволяют значительно снизить энергопотребление микроконтроллера - снижение напряжения питания, отключение тактирования неиспользуемых периферийных модулей, снижение частоты тактирования ядра микроконтроллера и его шин. Снижения энергопотребления можно также достичь путем отключения частотно-независимых источников (источники тактирования, энергонезависимой памяти и регулятора напряжения). Всего в линейке STM32L доступно семь режимов пониженного энергопотребления.
• Sleep- остановлено только ЦПУ. Вся периферия продолжает работать и может вызвать пробуждение процессорного ядра через прерывание или событие.
• Low power run. В этом режиме можно добиться потребления в 10,4мкА, если исполнять программный код из RAM-памяти на частоте 32кГц.
• Low power Sleep - При выключенной периферии режим позволяет добиться потребления всего в 4 или 5мкА, если один из таймеров запущен на частоте 32кГц.
• Stop (с активным RTC или без него)- позволяет добиться минимального энергопотребления при сохранении содержимого регистров и RAM. Микроконтроллер может выйти из режима за 8мкс по сигналу EXIT.
• Standby (с активным RTC или без него)- позволяет добиться ультранизкого энергопотребления. В этом режиме питание всех элементов ядра прекращено. В данном режиме при выключенном модуле часов реального времени потребление микроконтроллера не превышает 270 нА. Устройство выходит из Standby-режима за 60 мкс.
Линейка STM32L объединяет в себе накопленный опыт компании STMicroelectronics в разработке платформ с ультранизким энергопотреблением, плотностью кода и производительностью ядра ARM Cortex-M3 и значительно расширяет возможности применения микроконтроллеров STMicroelectronics с ультранизким энергопотреблением, дополняя ранее созданную 8-битную линейку STM8L.