設計の省電力化
電池の交換、充電サイクルの合間に、電力を消耗したパーソナル電子機器をフル充電の状態にするようにいつも気を遣っている、と思うことがあります。電池の残量はまめに気にしていますが、トレーニング中にウェアラブルのフィットネス機器やBluetoothのイヤホンが電池切れになるのは珍しくなく、スマートフォンの充電レベルが最悪のタイミングで空になるのもごく日常のことです。
数少ないパーソナル電子機器の個人的な経験を、何千種類もの電池駆動の機器が存在するモノのインターネット(IoT)のアプリケーションに当てはめると、電池の充電や交換の負担だけでこれらのアプリケーションが瓦解するのを容易に想像できます。大規模なIoTネットワークでも個人用の機器でも同様に、「常時オン」のセンサからより速くデータを得たいという欲求が電力の問題を大きくしています。幸いにも、電力消費型の電子機器にまつわるこのような面倒なイメージは、半導体メーカーによるマイクロコントローラの電力効率向上やメインプロセッサからの処理負荷の部分的な移行によって薄らぎつつあります。
先進技術による従来の電源管理の強化
マイクロコントローラベースのシステムに対する眼差しは、これまで主にメインプロセッサのデューティサイクルに注がれてきました。なぜなら、小さな組み込みシステムでの消費電力の大半はデューティサイクルによるものだからです。設計者は、プロセッサが最も電力を消費するアクティブな状態にある時間を最小化するように教えられてきました。その一方、電力を抑えたシステムは、プロセッサが電力節約のスリープモードで可能な限り休止できるように設計されています。センサからのデータ収集を周期的に必要とするアプリケーションでは、プロセッサをスリープ状態にし、ペリフェラル割り込みによりデータの収集および処理に必要な期間だけ起動状態にしてから、またスリープ状態に戻るように設計します。
さらに洗練されたオンチップペリフェラルの登場により、開発者はプロセッサがスリープ状態にある時間を延ばせるようになりました。マイクロコントローラは、A/Dコンバータ(ADC)のような、メインプロセッサをまったくウェイクアップせずにセンサデータを収集できるペリフェラルを常に統合しています。半導体メーカーは、この概念をより先進的なマイクロコントローラアーキテクチャでさらに拡張しており、完全なアクティブ状態と完全なスリープ状態の中間の電力モードをサポートするように構築されています。そのようなデバイスでは、中間電力モードによりプロセッサコア、オンチップメモリ、アナログペリフェラル、デジタルペリフェラルのさまざまな個別パワードメインを選択的に有効にできます。
Maxim IntegratedのDarwinマイクロコントローラなどの先進的なプロセッサファミリでは、このアプローチをさらにレベルアップするように、消費電力の節約に特化した設計の幅広い各種メカニズムを採用しており、しかもアプリケーションの機能と性能の要件を犠牲にしません(「より効率的なスマートデバイスの構築: 第1部 - MCUとPMICの低電力設計」を参照)。その結果、開発者は電力とパフォーマンスのバランスをさらにきめ細かく調整し、厳しい電力バジェットに対応できます。
ペリフェラル専用のプロセッサ
コア処理からペリフェラル機能を分離するために、より高度なマイクロコントローラでは専用プロセッサによってこれらのペリフェラルサブシステムを強化しています。たとえばMaxim IntegratedのDarwinシリーズは、同クラスの多くのデバイスと同様に、ペリフェラル管理ユニット(PMU)を備えており、ラウンドロビンスケジューリングなどの先進的な機能によって、ダイレクトメモリアクセス(DMA)動作の通常のサポートを超える機能性を発揮します。
プロセッサコアを超えた処理能力のこのような拡散は、今ある中で最も効果的な電力削減と性能向上のいくつかのアプローチの基礎になります。このトレンドの代表例が、IoTなどのコネクテッドアプリケーション用に設計された最先端のマイクロコントローラに組み込まれる暗号化ハードウェアアクセラレータにあります。アルゴリズム実行をスピードアップすることで、専用のアクセラレータによりデバイスがよりすばやく低電力状態に戻るようになります。
このトレンドのさらに興味深い例が、Texas InstrumentsのSimpleLinkファミリなどのワイヤレスマイクロコントローラに見られます。たとえば、Texas InstrumentsのCC2640R2F Bluetooth Low Energy(BLE)ワイヤレスマイクロコントローラは、Arm® Cortex®-M3メインプロセッサと、専用Arm Cortex-M0プロセッサおよび無線周波数(RF)トランシーバを含む専用BLEサブシステムを組み合わせたものです(図1)。
図1: Texas InstrumentsのCC2640R2F BLEデバイスなどの高度なワイヤレスマイクロコントローラでは、Arm Cortex-M3メインプロセッサがスリープ状態のときに、エネルギー効率の高いArm Cortex-M0プロセッサコアを使用してワイヤレス接続を維持することで、消費電力を最適化します。(画像提供:Texas Instruments)
メインプロセッサがアプリケーションを実行しているときには、Cortex-M0プロセッサはBLEプロトコルスタックのみを実行し、開発者はこれを利用できません。メインプロセッサがスリープモードのときに、電力効率の高いCortex-M0コアは低電力レベルで動作を継続できるので、このマイクロコントローラによって厳しい電力バジェットに負担をかけずに常時オンを実現できます。
当然ながら、常時オン機能の必要性はコネクティビティだけの要件ではありません。センシングアプリケーションが増え続ける中で、ユーザーは各自のデバイスが温度、動き、大気質などの特性の変化に速やかに反応することを期待しています。従来の方法では、この常時オン機能により、マイクロコントローラは重要なイベントに関するデータを収集して調べる間、実質的にアクティブモードで(ほぼ)連続動作することを余儀なくされます。
多くの高度なセンサでは、開発者は割り込みをトリガする最小/最大閾値をプログラムし、閾値を超えるイベントの発生までマイクロコントローラをスリープモードに維持できます。しかしアプリケーションによっては、この閾値機能でも不十分です。たとえば、常時オンのモーションセンサでは、機器ユーザーの歩く、走る、階段を登る、曲るなどの動作を示す加速度や方向を測定する中で、特性変化やパターンの認識が必要になる場合があります。高度な閾値機能を備えたセンサでも、ホストマイクロコントローラはこれらの特性変化を識別するためにアクティブ状態を維持する必要があります。一方で、STMicroelectronicsのLSM6DSOXセンサモジュールは、有限ステートマシンとディシジョンツリー処理エンジンを内蔵することで、対象のパターンを識別することができます。
開発者にとって、自律的なペリフェラル動作、専用処理エンジン、ローカルセンサ処理などの機能は、電池駆動設計の省電力化に役立つ方法のほんの一部です。
リファレンス:
より効率的なスマートデバイスの構築: 第1部 - MCUとPMICの低電力設計 - https://www.digikey.jp/ja/articles/techzone/2018/oct/build-more-effective-smart-devices-part-1-low-power-design-mcus-pmics
Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum


