ルネサスの研究開発成果報告

ルネサスはセンサネットワークのノーマリーオフ化を目指した。IoTなどのものに付けられたセンサからの情報を集めるという使い方は、今後、どんどん伸びると考えられ、電池を電源にするにしろ、太陽電池やその他の自然エネルギーを回収して電源とするにしろ、センサネットワークの電力消費を減らすことは、きわめて重要になる。

ルネサスのセンサネットワークを低電力化する作戦は、タスクレベルのスケジューリング技術などのソフトウェア技術の開発と、ノーマリーオフのマイコン(マイクロコントローラ)アーキテクチャ、Noffの電源制御技術などのハードウェア技術を開発するというものである。

IoT時代のセンサネットワークの省電力化を実現する技術開発の枠組み

センサネットワークは一定の時間間隔でセンサからデータを読み込んで処理を行う。しかし、それぞれのデータを処理する期限にはある程度の余裕があるのが普通である。この余裕を利用して、複数回のサンプルのデータ処理をまとめて、連続して行うようにスケジュールすれば、長いアイドル時間を作り、電源のオンオフの回数を減らして消費電力を減らすことができる。

なお、Windows OSでは電源のオンオフではないが、I/Oの割り込み処理などをまとめて処理することにより、CPUが深いCステートに留まれる時間を長くするということを行っており、類似のアプローチである。

応答時間の許容範囲内で処理をまとめて、オフ時間を伸ばして電力を80%削減

さらに、次の図の一番下の図のように、性能の高いCPU(CPU1)と性能は低いが電力効率の高いCPU(CPU2)を持たせたシステムを作り、まずは電力効率の高い小型のCPUを使って処理を行い、小型CPUでは期限内に処理が終わらないということが分かると、大きい高性能CPUに切り替えて処理を間に合わせるという方式を考案した。この方式を使うと、電力効率の高い小型CPUを使う時間を最大化し、電力効率の劣る大型CPUの使用時間を最小化することができ、電力効率を高めることができる。

最初はのんびりペースで宿題をやって、最後に提出期限に間に合わないことが分かると、徹夜してでも頑張って仕上げる方式のような気がするが、人間の場合も、この方式が一番エネルギー効率が良いのかどうかは分からない。

一番下が提案の手法。できるだけ小型低電力CPUで処理を行い、間に合わない場合だけ電力効率は下がるが、高性能CPUの処理に切り替える

このような考え方に基づいて、センサもMCU(Micro Controller Unit)もノーマリーオフとなる次の図に示すシステムを構築した。このシステムでは、(c)のセンサデータバッファを使ってデータを溜めて、まとめ処理が実行できるようになっている。

センサもMCUもノーマリーオフのシステムを構築した

従来は、定期的にセンサのデータを取り込んで、高性能のCPU2で処理していたが、このシステムではセンサからのデータをバッファを使ってまとめ、高速のCPU2で処理を行う。そして、後続のデータをバッファに取り込むが、この時は高い性能は必要ないので、低電力のCPU1を動作させ、電力の大きいCPU2はオフにする。下の棒グラフは、左が従来の方式、右がこのシステムのもので、サンサをノーマリオフ化することで、黄色のセンサの電力が大幅に減っていることが分かる。また、低電力のCPU1と組み合わせることにより、CPUの電力も半減以下になっている。結果として、従来と比べて79.8%の電力低減が実現できている。

なお、これは5秒のサンプリング周期で、データの処理時間が5msの場合の値である。

この実験では、従来比1/5程度の電力であるが、ノーマリオフのハードウェアアーキテクチャとソフトウェアの電源制御技術の組み合わせで当初目標の従来比1/10の低電力化を実現できる見通しが得られたという。

ノーマリオフのハードウェア技術とソフトウェアによる電源制御技術の組み合わせで当初目標の電力1/10を実電できる見込みが得られた

デモされたノーマリオフのセンサノードは、右側の模型の車の接近を検出している。車とセンサの距離が近い場合はサンプリング周期を短くするが、距離が長くなると、サンプリング周期を伸ばして消費電力を下げている。

会場でデモされたルネサスのノーマリオフセンサーノード