Управління енергією в мікроконтролерах оптимально використовує опції низької потужності від мікроконтролерів;

12 квітня 2014 р., 8:29 | Багатий Мірон

Сьогодні вбудовані системи повинні працювати якомога довше, лише з одним зарядом акумулятора. Тут важливо оптимально використовувати внутрішні режими малої потужності мікроконтролерів. Порівняння варіантів малопотужних мікроконтролерів від Microchip, STMicroelectronics та Texas Instruments.

Для портативних електронних пристроїв їх життя на одному заряді майже настільки ж важливе, як і фактичні функції, які забезпечує пристрій. Тому що коли акумулятор розряджений, неважливо, яку чудову продуктивність може запропонувати пристрій. Сучасні мікроконтролери (MCU) з платформами, спеціально розробленими для роботи з низьким енергоспоживанням, пропонують тут хороші рішення. Вони також забезпечують безліч енергозберігаючих режимів, таких як режим сну, сплячий режим тощо, а також такі функції, як спеціальні висновки, які автоматично перемикають систему на резервний режим роботи від акумулятора при відключенні живлення. І нарешті, окрім енергозберігаючих заходів, існує мистецтво розробки програмного забезпечення за допомогою таких інструментів, як «IAR Embedded Workbench»

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

Якщо все ще є сумніви щодо важливості енергоефективності в сучасних вбудованих системах, просто погляньте на останні стандарти DRAM, опубліковані JEDEC: Організація не тільки опублікувала нову версію свого стандарту для портативної електроніки, останню загальну DRAM, LPDDR3 -Стандартний DDR4 включає різноманітні функції для зменшення споживання енергії, такі як архітектура псевдовідкритого стоку. Незалежно від того, знаходиться мікроконтролер у смартфоні чи автомобілі - очевидно одне: він може задовольнити вимоги замовника лише у тому випадку, якщо він пропонує енергоефективну роботу.

Для того, щоб оптимізувати енергоспоживання, розробники повинні зосередитися на двох основних цілях: максимально короткий час в активному режимі та мінімальне споживання енергії в неактивному режимі. Не так давно мікроконтролери мали лише один режим очікування, але сьогодні модулі пропонують цілий ряд можливостей, щоб уникнути активного режиму і дозволити його лише тоді, коли це вкрай необхідно.

«ПОС» економить електроенергію

мікроконтролерах

Рис. 1: У режимі дозування центральний процесор «PIC24F-J128GA310» (тут, на модулі модуля для плати розробки «Explorer 16») може працювати повільніше, ніж периферія

Сімейство мікроконтролерів »PIC24FJ128GA310« від Microchip (Зображення 1) наприклад, цілий спектр варіантів управління живленням:

дозволяє модулю перейти на резервну батарею для мінімально можливого споживання енергії за допомогою RTCC (календар реального часу/годинник, годинник реального часу з календарем),

"Режим глибокого сну" для майже повністю безсилої роботи з можливістю пробудження зовнішнім тригером та надзвичайно низьким енергоспоживанням (при 3,3 В типовий WDT: 270 нА, RTCC: 400 нА при 32 кГц, глибокий сон -Ток: 40 нА),

Режими сну та простою

Периферія та/або ядра

Вимкніть вибірково для значного зниження потужності та швидкого пробудження,

Режим дозування, що дозволяє центральному процесору працювати з меншою тактовою частотою, ніж периферія,

альтернативні тактові режими дозволяють швидко змінювати тактову частоту для селективного зменшення потужності.

Режими сну та простою дозволяють розробникам вимикати периферію та/або ядро ​​контролера, щоб зменшити споживання енергії, зберігаючи можливість швидкого пробудження. У режимі "утримання режиму сну" схеми ключів живляться окремим низьковольтним регулятором. Режим VBAT перемикає систему на резервну батарею, якщо VDD виймається, таким чином мінімізуючи споживання енергії за допомогою RTCC. Глибокий сон без RTCC пропонує майже повне вимкнення і одночасно отримує програмне управління, завдяки чому модуль може бути перезапущений через зовнішні тригери. За даними компанії, контролер працює в такому режимі лише на 40 нА (зазвичай на 3,3 В), порівняно з 400 нА на 32 кГц для режиму RTCC.

Зміна тактової частоти може заощадити багато енергії. Наприклад, у режимі напів сну користувач може знизити продуктивність, запустивши центральний процесор з меншою тактовою частотою, ніж периферія. Крім того, мікроконтролер пропонує можливість зменшення тактової частоти під час роботи і, таким чином, дозволяє точно налаштувати зменшення потужності.

Економні контролери »STM8«

Зображення 2: Сімейство мікроконтролерів «STM8L» забезпечує чотири режими низької потужності, щоб користувач міг знайти оптимальний баланс між ефективністю, продуктивністю та часом запуску

Мікроконтролер »STM8L152C6T6« від STMicroelectronics забезпечує чотири режими низької потужності (малюнок 2) доступні, щоб користувач міг знайти оптимальний баланс між ефективністю, продуктивністю та часом запуску (малюнок 3).

Зображення 3: У порівнянні з режимами низької потужності сімейства мікроконтролерів »STM8L«

У режимі очікування годинник процесора зупиняється, поки периферія продовжує працювати. Мікросхема може вийти з цього стану очікування через внутрішнє або зовнішнє переривання, подію тригера або скидання. У режимі низької потужності центральний процесор виконує певні функції разом із вибраними периферійними блоками. Наприклад, Flash і Data EEPROM можуть бути призупинені, коли система виконує код з оперативної пам'яті на низькій частоті. Користувач може керувати системою в режимі низької потужності та поза ним за допомогою програмного забезпечення. Система також може вийти з режиму за допомогою скидання, але не через переривання.

У багатьох вбудованих системах мікроконтролери витрачають електроенергію, оскільки вони чекають значної частини часу виконання події. Тут STM8L152C6T6 пропонує режим очікування з низьким енергоспоживанням (Low Power Wait), в якому зупиняється тактова частота процесора. Скидання або внутрішня чи зовнішня подія, ініційована, наприклад, таймером або подіями вводу-виводу, повертає систему в режим роботи з низьким енергоспоживанням.

Режим активної зупинки (Active Halt) йде на крок далі і зупиняє як генератор тактової частоти для центрального процесора, так і для всіх периферійних пристроїв - за винятком RTC. Зовнішні переривання, переривання RTC або скидання можуть знову викликати систему з режиму активної зупинки. Режим зупинки (Halt) остаточно зупиняє годинник для всіх периферійних пристроїв та центрального процесора. Блок залишається ввімкненим, щоб зберегти дані в оперативній пам'яті. Зовнішнє переривання або скидання знову пробуджує контролер. Вибрані периферійні блоки також можна пробудити з режиму утримання. Крім того, блок може бути налаштований таким чином, що він працює без внутрішньої опори в режимі очікування, що економить додаткову енергію, вимикаючи внутрішню опорну напругу.

»MSP430« з FRAM

Рисунок 4: Деякі похідні архітектури з низьким енергоспоживанням «MSP430» мають особливо енергозберігаючу пам’ять FRAM

16-розрядний мікроконтролер "MSP430FR5739" від Texas Instruments пропонує сім режимів низької потужності (Малюнок 4) для вбудованих систем у портативних програмах. На верхньому рівні режим низького енергоспоживання 0 (LPM0) деактивує центральний процесор і головний годинник, поки всі дані зберігаються. Годинники периферійних блоків залишаються активними, і користувач може вибрати статус годинника субмайстра. У верхньому кінці економії енергії режим низького енергоспоживання 4.5 (LPM4.5) підтримує стан колодки вводу-виводу, але не дані, а також вимикає внутрішній контролер. Як частина своєї енергозберігаючої конструкції, мікроконтролер також інтегрує сегнетоелектричну оперативну пам'ять (FRAM) для енергонезалежної пам'яті з низьким енергоспоживанням.

Налагодження живленняНе має значення, скільки режимів енергозбереження має мікроконтролер, якщо вони не використовуються розумно і правильно. Тут починають діяти такі інструменти налагодження живлення, як I-Jet від IAR Software Systems. Цей інструмент постійно реєструє енергоспоживання системи під час роботи, а програмне забезпечення IAR Embedded Workbench співвідносить ці дані про енергоспоживання із процесами в системі.

Рисунок 5: У вікні часової шкали інструмент «I-Jet» співвідносить споживання енергії з викликами функцій та іншими частинами програми

У ідеальному світі розробник може пов'язати стрибок напруги безпосередньо з рядком коду. Однак реальність полягає в тому, що потужності системи розподіляють споживання з часом, тому такий дискретний підхід неможливий. Тому найкращим вибором є співвідношення енергоспоживання з функціональними викликами (Малюнок 5). Потім користувач може натиснути на пік потужності і простежити його назад до коду.

За допомогою цього глибокого розуміння системи розробник може визначити периферійні блоки, які споживають електроенергію без потреби. Щоб виправити це, він, можливо, зможе відрегулювати тактові частоти або перевести систему в енергозберігаючий режим, коли вона не працює, і знову прокинеться, коли отримає відповідь. Таким чином, розробники можуть скористатися перевагами опцій управління живленням для оптимальної роботи апаратного забезпечення.

Про автора:

Rich Miron працює в команді технічного вмісту Digi-Key