【ARM Forum 2010レポート】
【マイコン編】ARMアーキテクチャがマイコン市場を制覇する日

Cortex-Mシリーズの製品一覧

11月11日 開催
会場:東京コンファレンスセンター・品川



 32bit CPUコア「ARMコア」の顧客向け講演会兼展示会「ARM Forum 2010」では、午後にARMコアを内蔵するマイクロコントローラ(マイコン)に関する講演トラックが設けられた。本レポートではこの講演トラックから、アームと下記のマイコンベンダーによる講演概要をご紹介する。講演者と所属は以下の通りである。

1) アーム:平井幸広氏
2) STマイクロエレクトロニクス:野田周作氏
3) フリースケール・セミコンダクタ・ジャパン:古江勝利氏
4) 東芝:吉田和義氏
5) 富士通セミコンダクター:齋藤章史氏

●マイコンを前提に開発されたCortex-Mシリーズ

 ARMコアは元来、SoC(System on a Chip)やマイクロプロセッサにメインまたはサブのCPUコアとして組み込まれることを目的として開発されてきた。もちろん現在でも、ARMコアはSoCやマイクロプロセッサなどに使われている。携帯電話機用プロセッサでは標準的なCPUコアの地位を占める。

 ARMのかつての悩みは、携帯電話機向けの応用分野では、ARMコアの採用があまり進んでいないことだった。言い換えるとARMが今後も成長し続けるためには、携帯電話機以外の応用分野で普及を促す必要がある。その一環が、マイクロコントローラ(マイコン)用CPUコアの開発だった。もちろんこれまでにも、ARM7やARM9などのARMコアをマイコンのCPUコアに採用する例はあった。しかし従来のARMコアはマイコンへの搭載に適したアーキテクチャとは言えず、本格的な普及を促すには、アーキテクチャの改変が必要だった。

 そしてARMが最初に開発したマイコン向けCPUコアが、「Cortex-M3」である。「Cortex-M3」は、日本では2008年のARM Forumで大きく紹介された。バンクレジスタの大幅な削減によるシリコン面積の縮小、命令セットの1本化(Thumb-2のみ)とアンアラインド・データ・アクセス、ビット操作命令による必要メモリ容量の削減、といった既存のARMコアからの大幅な改変がCortex-M3では加えられた。なお詳細はARM Forum 2008レポートに詳しく記述されているので、興味のあるかたは参照されたい。

 Cortex-M3は、既存の16bitマイコンと32bitマイコンを置き換えるべく設計された、主力となるCPUコアだ。粗く言ってしまえば、16bitマイコンでは最も良く普及しているとされるルネサス エレクトロニクスの「M16Cファミリ」と、市場で真っ向から勝負するマイコンを作るべく生まれたCPUコアである。

 ARMはCortex-M3をベースに、ローエンドのCortex-M0コアとハイエンドのCortex-M4コアを開発した。Cortex-M0コアの詳細は2009年のARM Forumで公表されている。Cortex-M4コアは2010年2月に概要がリリースされた。このほか、FPGA内蔵用にCortex-M1コアが開発済みである。

 ローエンドのCortex-M0は既存の8bitマイコンと16bitマイコンを置き換えるべく開発された、シリコン面積が最も小さくて消費電力が少ないARMコアだ。命令セットはARM7TDMIコアのThumb命令セット(16bit命令セット)にThumb-2の16bit命令を追加しただけで、非常に簡素である。

 32bit CPUコアは、16bitデータの乗算といった、やや複雑な処理の実行では、8bit/16bitマイコンに比べると、圧倒的な性能を発揮する。Cortex-Mシリーズでは2Byte(16bit)のコードサイズと1クロックの実行サイクル数で済むのに対し、16bitマイコンでは8Byteのコードサイズと8クロックの実行サイクルを必要とする。8bitマイコンではバスを16bitに拡大したり、命令セットを拡張したりといった工夫を加えないと、非現実的な実行サイクル数になってしまう。

 ハイエンドのCortex-M4コアは、Cortex-M3にデジタル信号処理(DSP)機能を追加したCPUコアである。32bitマイコンでは、SuperHマイコンの「SH-DSP」および「SH2-DSP」に代表されるようにDSP機能を追加したマイコン製品が珍しくない。DSP機能の追加は当然の流れと言える。

Cortex-M0コアの概要。ARM Forum 2009の講演資料から抜粋した16bit乗算の実行に必要なコードとサイクル数
Cortex-M4コアのコンセプト。開発コード名は「Merlin(マーリン)」Cortex-M0/M1/M3/M4/M4Fの命令一覧。下位互換性を保った命令セットとなっている

●STマイクロ:M3マイコンの低消費電流版を紹介

 マイコンベンダーの中でCortex-Mシリーズをいち早く採用したのが、STマイクロエレクトロニクス(STマイクロ)である。2007年にはCortex-M3コアを内蔵した「STM32ファミリ」を発売した。現在の主力製品は「STM32Fシリーズ」である。電源電圧が2.0~3.6Vで、USBコントローラやCANコントローラなどを周辺回路として内蔵した品種を用意している。

 2010年4月には、低消費電流版の「STM32Lシリーズ」を発表した。これは電源電圧の下限を1.8Vに引き下げて電源電圧範囲を1.8~3.6Vに広げるとともに、32kHzの発振器を内蔵して消費電流が10.4μA/6.1μAと低い低消費電流モードを新たに設けた品種である。2010年第4四半期に量産を始める計画となっている。

STマイクロエレクトロニクスのマイコン製品群。独自CPUコアの8bitマイコン「STM8ファミリ」とCortex-M3コアの32bitマイコン「STM32ファミリ」で構成される。なお16bitマイコンの製品ラインは提供していない32bitマイコン「STM32ファミリ」の製品構成。STM32FシリーズとSTM32Lシリーズがある
「STM32Lシリーズ」の代表品種である「STM32L152」の内部ブロック図。128KByteのフラッシュメモリを内蔵する「STM32L152」の低消費電流モード。中央の「Low-power Run」モードと「Low-power sleep」モードがSTM32Lシリーズで追加されたモードである

●フリースケール:産業/民生向けにハイエンドのM4コアを採用

 フリースケール・セミコンダクタ・ジャパン(フリースケール)はマイクロプロセッサとマイクロコントローラ(マイコン)の大手ベンダーであり、マイクロプロセッサ製品ではARMコアを内蔵する製品ファミリ「i.MXシリーズ」をマルチメディア機器のアプリケーション・プロセッサとして供給してきた。

 マイコン製品では32bitマイコン、16bitマイコン、8bitマイコンと幅広い製品系列を有しているものの、ARMコアを内蔵した製品ファミリが登場したのは2010年6月とごく最近のことだ。それもCortex-Mシリーズではハイエンドの「Cortex-M4」コアを内蔵する製品ファミリである。ファミリ名は「Kinetis(キネティス)」という。

フリースケールのARMコア内蔵製品群。マルチメディア用アプリケーションプロセッサのi.MXシリーズと、産業・民生機器用マイクロコントローラのKinetisシリーズがあるi.MXシリーズの製品ロードマップ。ARM926、ARM1136、Cortex-A8といったARMコアが採用されている。なおこのスライドは、9月14日に開催されたフリースケールの顧客向け講演会兼展示会「フリースケール・テクノロジ・フォーラム・ジャパン2010(FTFJ2010)」で使われたものフリースケールのマイクロプロセッサ製品とマイクロコントローラ製品の一覧。横軸は応用分野で、左から自動車、民生、産業、ネットワークとなっている。なおこのスライドは、FTFJ2010で使われたもの

 Kinetisシリーズはフラッシュメモリを内蔵する、いわゆるフラッシュマイコンで、7本のファミリで構成される。合計で200品種を開発中だとしており、マイコンファミリとしては相当に大規模な製品系列となる予定である。出荷予定は2010年11月にサンプル出荷と開発ボードの供給、ドキュメントの供給、2011年前半に量産出荷の開始となっている。

Kinetisシリーズ全体の概要。動作温度範囲はマイナス40~プラス105℃とかなり広い。フリースケールらしいと言うべきか、工業用途への対応を意識していることが分かる。なおこのスライドは、FTFJ2010で使われたもの。ARM Forumでは、このスライドに動作温度範囲を追加したものが示されていたCortex-M4コアの概要とフリースケールが独自に拡張した機能。Cortex-M4コアでは32bit積和演算(MAC)ユニットを実装し、命令セットとしてはDSP命令やSIMD命令などが追加されている。またオプションとして浮動小数点演算ユニットを用意してある。フリースケール独自の拡張としては命令/データキャッシュ、マルチマスタ クロスバースイッチ、最大32チャネルのDMAコントローラ、10種類の低消費電力モードなどがある。なおこのスライドは、FTFJ2010で使われたもの。ARM Forumでは、ほぼ同じスライドが示されていたKinetisシリーズを構成する各ファミリの概要。演算ユニットや周辺回路などの違いによってK10ファミリ~K70ファミリまでの7本のファミリがある。なおこのスライドは、FTFJ2010で使われたもの。ARM Forumでは、ほぼ同じスライドが示されていた

●東芝:車載用マイコンにM3コアとR4Fコアを導入

 東芝は国内のマイコンベンダーでは初めて、本格的にARMコアを採用した企業である。2008年10月に開催されたARM Forum 2008では、産業用、民生用、車載用のすべての32bitマイコンにARMコアを採用していく方針を明らかにした。

 現在のマイコン製品ロードマップは東芝が公開している資料を総合すると、Cortex-M3コアを内蔵する「TX03シリーズ」を主力製品として産業用、民生用、車載用に合わせた品種を展開し、そのほかにはCortex-R4Fコアを内蔵する「TX04Rシリーズ」を車載用に、ARM926コアあるいはCortex-A9コアを内蔵する「TX09/09Aシリーズ」をマルチメディア用に供給していく計画となっている。

 主力品種であるTX03シリーズでは、機能や周辺回路などの違いによってM320グループからM390グループまでの8グループが用意されている。2008年9月にシリーズ初の製品となるM330グループ(民生用サブファミリ)の「TMPM330FDFG」を発表して以来、現在では8グループで12品種を生産中だという。

 講演では車載用モータ制御マイコン「M350グループ」を主に紹介していた。東芝の洗濯機やエアコンなどにおけるモーター制御技術を車載用モーターの制御技術に流用したという。モーター制御のハードウエア比率を高めているのでモーター制御中でもCPUの負荷が低く、ほかのタスクを処理する余地が大きい。

東芝のマイコン(MCU)用CPUコアのロードマップ。ARM Forum 2008で示されたロードマップに比べると、ARMコア関連のロードマップが明確になっているCortex-M3コアを内蔵したマイコンファミリ「TX03シリーズ」を構成するサブファミリ(M3XXグループ)の概要
自動車が搭載するモータの動向。2010年の時点で自動車1台が搭載するモータの数は100個を超えており、2015年には200個を超えるようになるとみている東芝の車載用モータ制御マイコンの特徴

●富士通:国内で2番目のARMマイコンベンダー

 国内のマイコンベンダーでARMコア内蔵製品を正式に発表したばかりなのが、富士通セミコンダクターである。11月4日にCortex-M3コア内蔵マイコン「FM3ファミリ」の第1弾をサンプル出荷することを公表した。それまで富士通セミコンダクターはSoCにはARMコアを導入していたものの、マイコン製品に採用したことはなかった。

 富士通セミコンダクターのCortex-M3コア内蔵マイコンが東芝と明確に異なるのは、車載用マイコンは富士通独自の32bit CPUコアで今後も製品展開していく点にある。「FM3ファミリ」は産業用と民生用のマイコンファミリであり、車載用は対象としていない。

 「FM3ファミリ」を構成するサブファミリの階層は2階層あり、やや複雑だ。まず、「ハイパフォーマンスライン」と呼ぶ高性能品のサブファミリと、「ローパワーライン」と呼ぶ低消費電力品のサブファミリに分かれる。両者を区分するのは電源電圧である。前者は電源電圧が2.7~5.5V、後者は1.8~5.5/3.3Vで、最小電圧が異なる。動作周波数では区別されておらず、両者ともに動作周波数40MHzの品種が存在する。

 そして「ハイパフォーマンスライン」は、「ハイパフォーマンスグループ」と呼ぶFA向けの製品グループと、「ベーシックグループ」と呼ぶ白物家電向けの製品グループに分かれる。前者は動作周波数が最大80MHzの品種と最大144MHzの品種があり、後者は最大40MHzの品種となっている。

 また「ローパワーライン」は、「ローパワーグループ」と呼ぶ家電向けの製品グループと、「ウルトラローパワーグループ」と呼ぶバッテリ駆動機器向けの製品グループに分かれる。前者は動作周波数が最大40MHz、後者は最大20MHzとなっている。

「FM3ファミリ」と名付けた由来。富士通が1980年代に開発した独自仕様パソコンの名称(「FM-8」や「FM-7」など)と、「Fujitsu」の「M3」コアという意味合いを重ねている「FM3ファミリ」の製品ロードマップ
第1弾となった製品の内部ブロック。「ハイパフォーマンスグループ」と呼ぶ製品群である。最大動作周波数は80MHz第2弾となる製品の内部ブロック。「ハイパフォーマンスグループ」と呼ぶ製品群である。最大動作周波数が144MHzに向上し、内蔵フラッシュメモリ容量が最大1MByteに増えている

ARMマイコンの出荷数量推移。なおこのスライドは、FTFJ2010で使われたもの

 Cortex-Mシリーズを採用したマイコンは今後、どのくらいの伸びを見せるのだろうか。9月14日に開催されたフリースケールの顧客向け講演会兼展示会「フリースケール・テクノロジ・フォーラム・ジャパン2010」で、ゲストとして講演したアームの西嶋貴史社長は、2010年の第1四半期だけで2009年通年に近い数量のARMコア内蔵マイコンが出荷されたと述べていた。2009年のマイコンの世界市場は8bitと16bitも含めては数量ベースで45億個、ARMマイコンのシェアは約6%と推定している。これが2014年には、ARMマイコンが20%を超えるシェアを確保することになるだろうと、西嶋社長は説明していた。

 マイコン全体で数量シェア20%というのは、32bitマイコンではARMマイコンの数量シェアが20%をはるかに超えていることを意味する。ARMマイコンは全部が32bitマイコンなのだから、当然である。2014年の32bitマイコン市場で、マイコンベンダー別のシェアでARMがトップとなることはない。ARMはマイコンベンダーではないのだから。しかし、CPUアーキテクチャ別では、ARMアーキテクチャのマイコンが必ずトップに立つ。それは2014年ではなく、もっと早い時期だ。ARMが描くのは、2014年にはCPUアーキテクチャ別では2位以下を大きく引き離してトップに立っている、という図式なのだろう。

(2010年 11月 19日)

[Reported by 福田 昭]