後藤弘茂のWeekly海外ニュース
「Curie」が浮かび上がらせるIntelのIoT戦略
(2015/1/21 06:00)
ようやく揃ったIntelのIoT戦略のパーツ
これまで「IntelのIoT戦略」は、半導体業界では真面目には受け止められていなかった。Intelのラインナップの中に、ローエンドのIoTデバイスに組み込むのに最適な「MCU(Micro Controller Unit)」クラスの製品がとても充分と言えない状態だったからだ。Intelは、低電力MCU向けのプロセッサコア「Quark(クオーク)」はリリースしたものの、MCU向けのメモリソリューションが完全ではなかった。そのため、“これまで”のIntelのIoT戦略は、肝心の部分IoTデバイス向けのチップを欠いた戦略となっていた。
“これまで”としたのは、Intelが今月(1月)の2015 International CESで、まさに欠けていた部分を示唆する発表を行なったからだ。Intelがウェアラブル向けに発表した超小型モジュール「Curie」(キュリー)がそれだ。Curieは、ボタン大のデバイスに内蔵できるモジュールで、Quark SEコアのSoC(System on a Chip)だ。そして、発表したCurieの仕様には384KBのフラッシュメモリと80KB SRAMとあった。
このメモリ量は、ローエンドの組み込み向けのMCUなら珍しくない仕様だ。組み込み向けMCUは、通常はエンベデッドメモリを使うワンチップソリューションだからだ。組み込み向けのMCUと、PC向けのCPU(半導体的にはMPU)の大きな違いの1つは、このメモリソリューションにある。コンピュータ向けのCPUは通常は外付けのメモリチップを使う。それに対して、通常のMCUはオンダイ(On-Die)のエンベデッドメモリを使う。プロセッサコアとI/Oだけでなくメモリまで組み込んだ完全なシステムオンチップとなっている。
外部メモリチップを一切使わない構造のため、MCUでは消費電力とコストを大幅に低減可能で、小スペースへの実装も容易だ。その反面、MCUではメモリ量が限られる。現在のMCUは、SRAMをワーキングメモリに、エンベデッドフラッシュをストレージに使うものが多い。典型的には数100KBから数MBのエンベデッドフラッシュと数十KBから数百KBのSRAMを搭載する。多くの場合、プログラムはフラッシュから直接読み込んで実行する「execute in place(XIP)」方式を取り、SRAMにはプログラムを展開しない。その意味では、MCUのSRAMとエンベデッドフラッシュは、PCのワーキングメモリとストレージとは大きく異なる関係にある。
IntelのCurieのメモリ仕様は、同モジュールが他のMCUと同様に組み込みメモリを使うことを示唆している。明確にそうだと言い切れないのは、Intel内部でもCurieの仕様や製造技術については、詳細が広まっていないためだ。そのため、オンダイメモリだと断言することができない状況にあるが、仕様を見る限り、ほぼ間違いなくオンダイメモリだ。
オンダイの組み込みメモリがMCUの重要なポイント
Curieのポイントは2つ。1つ目はCurieがオンダイの組み込みメモリを使うのかどうか、2つ目はCurieが組み込みメモリだとすればIntelの製造プロセスに組み込みフラッシュ技術が加わったのかどうかだ。
この2つがともに「イエス」だった場合は、Intelの戦略の大きな転換点となる。しかし、「ノー」だった場合でも、CurieはIntelがMCUタイプの製品を強く意識していることを示しており、中期的には組み込みメモリを自社で提供する可能性がある。あるIntel関係者は、同社は組み込みメモリ技術について、以前から継続して研究していると強調する。
IoTやローレベルのウェアラブル向けの半導体チップで、組み込みメモリが重要である理由は、電力とコスト、実装サイズの利点があるためだ。特に、省電力の面での利点は大きい。外付けメモリへのオフチップアクセスより、組み込みメモリへのアクセスの方がはるかに電力消費が小さいからだ。
昨年(2014年)4月に横浜で開催された半導体チップカンファレンス「Cool Chips」で、IntelはQuarkベースのSoC「Quark SoC X1000」について説明した。その中で、Michael McCool氏(Principal Engineer, Developer Products Division, Technology Pathfinding and Innovation, Intel)は、組み込み用チップの中で、CPUコアは実際には最も電力を食わない部分になっており、DRAMインターフェイスが最も電力を消費すると説明した。Quark SoC X1000は、そのために512KBのエンベデッドSRAMを内蔵しており、外付けのDRAMを使わなくてもSRAMをワーキングメモリとして使える仕様となっていた。Curieはこれをさらに進めて、より小さな容量のワーキングメモリSRAMを搭載した仕様となっていると見られる。ちなみに、IntelはEdisonには、QuarkにプラスしてSilvermont(シルバモント)CPUコアを搭載したSoCを採用しており、こちらは、いわゆるMCUクラスから外れる。
ストレージフラッシュメモリもMCUに統合することは、コスト面でも有利となる。チップ1個の単価が極端に低い場合が多いIoTのようなアプリケーションでは、コスト削減は重要だ。1チップ減るだけでコストは激減する。
パッケージサイズも同様で、シングルチップで、小さなダイでパッケージも小型化できれば実装サイズが縮小できる。ARMはその実例として、昨年のARM Techconカンファレンスで、FreescaleのMCU「KL03」を示した。このチップは、ゴルフボールの溝(ディンプル)に収まるくらいのパッケージ(2×1.6mm)に、48MHz動作のCortex-M0+、32KB FLASH、8KB ROM、2KB RAMを備え、スリープ時には1uA(マイクロアンペア)の電流しか消費しない。超小型のワンチップIoTだ。
IoT向けにはプロセス技術自体の変革が必要
Quark X1000では外付けDRAMを使わない選択肢も用意したIntelだが、昨年の段階では、まだストレージが外付けだった。Intelの先端プロセス技術には、組み込み向けのエンベデッドフラッシュのソリューションが欠けているためだ。そのために、IntelはQuarkをリリースしても、フラッシュまでエンベデッドにしたMCU製品を揃えることができなかった。
もし、Intelがエンベデッドフラッシュを揃えたとすれば、それは、同社がIoT(The Internet of Things)市場に本格的に半導体製品を投入するつもりであることを意味している。また、そのために、半導体プロセス技術にも大きく手を入れたことを意味している。もちろん、Curieをエンベデッドフラッシュを持つ他のファウンダリに製造委託する可能性もあるが、その場合も、Intelは中期的には自社で製造できるようにする可能性が高い。
そもそも、組み込み向けのプロセス技術は、PCやモバイル向けCPUやSoCのプロセス技術とは必要な要件が大きく異なっている。CPUやSoCはロジックプロセスだけが提供できればOKだが、MCUはエンベデッドフラッシュがほぼ必須。アプリケーションによってはアナログ回路の統合も重要となる。大手ファウンダリでも、こうしたプロセス技術オプションは、通常はロジックプロセスより数世代遅れて提供される。そのため、組み込みやIoT向けのプロセス技術の世代は、ロジックプロセスの世代より大きくずれる。
上はTSMCが昨年のARM Techconで示したプロセスの拡張ファンクションと、その提供プロセス世代のチャートだ。MCU向けのエンベデッドフラッシュは、この段階で65/55nmプロセスまで提供可能となっていることが分かる。実際には、現状で多くのMCU製品が180/150nmか90/80nmプロセスの世代で作られており、65/55nmのMCUはまだ始まったばかりだ。このように、先端ロジックプロセスと、IoT向けのプロセスにはズレがあるため、製品に使われるプロセス技術にもズレがある。
しかし、IoTブームを受けてファウンダリもIoT向けのプロセス拡張の提供を速める方向へと向かっている。そのため、IoT/組み込み向けのプロセス技術は、ロジック部分の微細化が急ピッチで進むとみられる。
Intelについては、もし、IoT向けのプロセス技術を開発するのなら、どういったロードマップで進めて行くかがポイントとなる。ファウンダリは、成熟した旧世代のプロセスも残して製造を続け、そうした成熟プロセスで拡張ファンクションなどを提供して行く。しかし、Intelの製造態勢は、これまでは、大半の製造能力を新しいプロセスへと移すパターンで来ている。IoT向けのプロセスをやる場合に、どういった戦略を取るのかがポイントとなる。
MCUとMPUのメモリ量のギャップによってOSが異なる
メモリシステムの根本が異なるために、MCUタイプの製品とCPUベースのSoCではメモリ量に大きなギャップがある。組み込みメモリのMCUでは通常数十KBのワーキングメモリと数MBまでのストレージであるのに対して、外付けメモリのSoCでは数百MBのワーキングメモリDRAMと数GBのストレージNANDフラッシュとなる。両タイプで、メモリ量に大きな差が開いている。もっとも、デジタルカメラ用のMCUなどでは、ワーキングメモリはオンチップだがストレージは外付けNANDといった組み合わせがある。また、DRAMインターフェイスを持ちながら内蔵SRAMを使うことができるQuark SoC X1000のようなタイプの製品もある。そのため、単純に切り分けはできないが、通常はこの制約の枠内にある。
メモリ量の違いのために、MCUとCPU(MPU)では、走らせることができるOSやソフトスタックが異なる。外付けメモリのSoCでは、AndroidやiOSのようなメモリ量を必要とするリッチOSを走らせることができる。それに対して組み込みメモリのMCUはメモリ量の必要の少ない組み込み/リアルタイムOSしか走らせることができない。これが、MCUとCPU(MPU)の大きな差となっている。
ARMのソリューションでは、Cortex-MファミリがMCUタイプ、Cortex-AファミリがCPUタイプとなっている。そのため、Cortex-Mファミリでは、大容量のメモリやリッチOSのサポートに必須のメモリマネージメントユニットを持っていない。Cortex-Mは、初めから組み込みメモリと組み込み/リアルタイムOSをターゲットに設計されている。ARMのソリューションでは、明確にOSと機能のレンジによって、Cortex-MとCortex-Aに区分されている。
Intelは、今回のCurieで、組み込み/リアルタイムOSのMCUの世界に向けた製品を提供するつもりがあることを明らかにした。
将来的には次世代不揮発性メモリでIoTが劇的に変わる
MCUの組み込みメモリのこの制約はやっかいで、それがIoTのソフトウェアスタックとプログラミングモデルの障壁にもなっている。しかし、メモリ業界は、この制約も、将来的には解決できると考えている。ロジックプロセスに組み込みが容易な、新タイプの不揮発性メモリを、エンベデッドフラッシュの代わりにMCUに組み込むことが可能になるからだ。実際には、そうした試みや製品化はこれまでも何度か行なわれているが、そうした動きが本格化する可能性がある。
昨年8月に開催されたフラッシュメモリのカンファレンス「Flash Memory Summit 2014」では、IoTデバイスに向けた不揮発性メモリの可能性のセッションシリーズが行なわれた。「RRAM(またはReRAM,Resistive RAM:抵抗変化メモリ)」や「STT-RAM(またはSTT-MRAM, Spin-Transfer Torque RAM:スピン注入メモリ)」など新世代の不揮発性メモリのIoT向け半導体チップへの統合の可能性などが論じられた。こうした新メモリ技術では、メモリ容量を大きくできるだけでなく、性能も向上する。
新しい不揮発性メモリがIoTに向いているという考え方は、広く認識されている。例えば、IntelのMichael McCool氏(Principal Engineer, Developer Products Division, Technology Pathfinding and Innovation, Intel)は、Cool ChipsでQuarkベースの製品について「新しいメモリ技術が地平に見えている。次世代不揮発性メモリによって、アクティブ状態とディープスリープ状態を、メモリ内容をセーブすることなく簡単に迅速に切り替えることができるようになる。スリープ状態がほとんどの場合が多いIoTデバイスでは、不揮発性メモリは省電力に効果的だ」と語った。また、STT-RAMやRRAMのような新不揮発性メモリは、ワーキングメモリとしても使うことができる。そのため、電力を食う大容量SRAMも不要となるという。