Texas Instruments 技術情報

TI社製CC2650はどのくらい低消費電力なのか?~第1回:Sensor Controller Engine紹介編~

[最終更新日 : 2017/8/24]


ワイヤレスIoTのデバイス選定時の検討材料の一つに、消費電力があげられると思います。ワイヤレス製品の消費電力比較では、多くの方がCPU自体の消費電力と送信または受信時の消費電力を比較されると思います。CPUの消費電力は、動作周波数を落とせばピーク電力を落とすことができますが、処理能力も落ち、動作時間も伸びてしまうため、電力消費量も大きくなってしまいます。IoTデバイスでは、通信処理だけではなく、センサ情報の取得や解析も実施しなければならないため、これらにかかる消費電力を無視することはできません。

Texas Instruments(以降TI)社のCC2650デバイスは、無線のプロトコル動作を制御するCPUとは別に、センサなど周期的な処理を低消費電力で実行するためのSensor Controller Engineを搭載することで、この問題を解決します。

今回はこのSensor Controller Engineの特徴について説明したいと思います。

TI社製CC2650について

CC26xxブロック図

はじめに、TI社のCC2650について、簡単に説明させていただきます。

CC2650は、TI社のSimpleLink製品群の中でも、Bluetooth Low Energy、ZigBee、独自無線などに対応した製品です。また、本記事ではあまり触れませんがCC1310CC1350というBluetooth Low EnergyやSub-1GHzに対応した製品もありますが、これらの製品の基本ブロック構成は右図のように共通になっています。

メインCPUには、1MHzあたり61μAで動作するArm Cortex-M3を搭載し、複雑なアプリケーションもパワフルに実行します。

RFコア(無線処理用コア)は、Arm Cortex-M0とDSPによるソフトウェア無線を搭載しています。

Sensor Controller Engineは、低消費電力に特化した独自アーキテクチャのCPUです。消費電力は1MHzあたり8μAで、最大24MHz動作します。

SimpleLink製品の詳細については、こちらを御覧ください。

Sensor Controller Engineのできること

Sensor Controller Engineは、名前にはセンサを制御することに特化したように見えるCPUですが、メインCPUと同様にプログラムを書き込むことで様々な機能を実装することができます。また、メインCPUと独立した電源系統を持っており、メインCPUがスタンバイ状態にあっても、単独で動作可能です。当然、Sensor Controller EngineからメインCPUを起動し、データを通知することも可能です。

Sensor Controller Engineで制御できるペリフェラルには、次のものがあります。

  • Analog Comparator
  • 12bit ADC
  • Current Source
  • Time to Digital Converter
  • Digital I/O
  • Timer

一例ですが、これらのペリフェラルを使用することでSensor Controller Engineは以下のような機能を実現できます。

SCE センサー接続図

  • 内蔵ADCを使用したアナログ信号のセンシング
  • GPIOやI2C/SPIなどのシリアルI/Fを使用したデジタル信号の入出力
  • UART通信
  • 静電容量センシング
  • Waveform生成
  • パルスカウント
  • キーボードスキャン
  • オシレータの構成

たとえば、継続的なセンサからのデータ収集をSensor Controller Engineで行い、結果をRAMにロギングしておきます。Sensor Controller Engineで回数または閾値をトリガにしてメインCPUを起動してデータを送信すれば、通常時の電力を下げることができます。そして、無線プロトコル制御を邪魔することなく、定期的にセンサデータを取得することもできます。

どのくらい消費電力を削減できる?

1ミリ秒かかる処理を1秒間隔で処理を実行した場合、メインCPUとSensor Controller Engineではどのくらいの違いが出てくるでしょうか?カタログスペックで比較してみましょう。

SCE 消費電流比較

CC2650のメインCPUの消費電流は1MHzあたり61μAで、メインCPUは最大48MHzで動作します。最大の動作周波数で動作した場合の平均電流は、

 61 uA * 48 MHz * ( 1 / 1000 ) = 2.92 μA

となります。

一方、Sensor Controller Engineの消費電流は1MHzあたり8uAで、最大24MHzで動作します。これを計算すると平均電流は

 8 uA * 24 MHz * ( 1 / 1000 ) = 0.19 μA

となります。

単純計算で約1/15も消費電力を下げることができることが分かります。もちろん、そのままバッテリーの持ちが15倍よくなるというわけではありませんが、バッテリー駆動が多いIoT機器では、このような低消費電力機能をうまく利用することはとても重要なことです。これを利用することで今まで実現できなかったようなシーンでIoT機器を活用できる可能性もあるのではないでしょうか。

Sensor Controller Engineを使うには

Sensor Controller Studio

Sensor Controller Engineは、TI社の提供するSensor Controller Studioというツールを使って専用のプログラムの作成、デバッグを行うことができます。

デバッグ後は、Code Composer Studioでコンパイル可能なソースコードを生成してくれますので、BLEやSub-1GHzなどの無線アプリケーションに簡単に統合することが可能です。

第2回では、Sensor Controller Studioを使ってSensor Controller Engineのプログラム作成について紹介したいと思います。

今すぐに試したいというかたは、以下のURLに演習形式の説明(英語)がありますので、ぜひ試してみて下さい。

Sensor Controller Fundamentals

関連情報はこちら

※本記事に記載されている会社名、製品名、通信規格名は、それぞれ各社の商標または登録商標です。


取り扱いメーカー

お問い合わせ