MCU市場予測:2018年出荷数306億個、2022年438億個予測

米)市場調査会社IC InsightsのMCU市場予測記事、“マイコン市場、IoTを追い風に安定成長”が、EE Times Japanに掲載されました(2018年9月19日)。

MCU市場予測(出典:IC Insighs、EE Times Japan記事)
MCU市場予測(出典:IC Insighs、EE Times Japan記事)

2022年までの5年間世界MCU市場は、販売額は年平均成長率7.2%続伸、出荷数は年平均成長率11.1%続伸、平均価格は年平均成長率3.5%下落と予測しています。センサー普及やIoT台頭で安定成長の見込みとの結論です。

我々MCU開発者は、ますます忙しくなるでしょう (^^♪。

MCU販売額予測(Markets)

2018年販売額は、前年比11%増加で過去最高186億米ドルと見込み、2019年は9%増で204億米ドルと予測。
今後5年間、年平均成長率7.2%で続伸し、2022年は239憶米ドルと予測。

MCU出荷数予測(Units)

2018年出荷数は、前年比18%増加の306億個の見込み。
今後5年間、年平均成長率11.1%で続伸し、2022年は438億個と予測。

MCU平均価格予測(ASP)

2017年に過去最低に落ち込み、2018年も同じペースで下落するが、過去5年間の年間下落率は、その前の10年間に比べ緩やかになったと分析。
2017年から2022年は、年平均成長率3.5%で下落と予測。

※1$以下のMCU平均価格内訳を知りたいところです。下記、過去関連投稿内容ともほぼ合致しています。

関連投稿:2018年IoT市場予測
関連投稿:IoTマイコン市場規模予測

MCU統合開発環境の後方互換性検証

MCU統合開発環境は、後方互換が重要です。数年前に開発したプロジェクトを改良・改版する際には、最新の開発環境(IDE)でも開発当時と同じ動作が求められるからです。

ベンダー各社もこの点に留意してIDE改版を行っているハズです。ただ、リリースノートにも具体的な互換性説明などは見当たりません。そこで、MCU最新IDEの後方互換性を検証します。

本稿は、ルネサスエレクトロニクス(以下、ルネサス)の最新IDE:CS+に、弊社2015年開発のRL78/G1xテンプレートプロジェクトを適用し、発生するメッセージなどを示し、開発当時と同じ動作をするかを確認します。もちろん、これはあくまでも一例にすぎませんが、開発中にIDE更新に遭遇した際などの安心材料になれば幸いです。

ルネサス統合開発環境CS+

2018年9月最新ルネサスIDE CS+は、Ver.: V7.00.00(2018/07/20リリース)です。CS+は、業界標準のEclipseベースIDEではなくルネサス独自開発のIDEです。

好都合なことにWindows 10 1803をクリーンインストールしたので、まっさらなWindows 10へ最新CS+をインストールした条件で検証ができます(1803クリーンインストール顛末はコチラを参照)。

CS+ダウンロードサイトでカテゴリ:無償評価版を選び、分割ダウンロードか一括、CS+ for CCかCS+ for CA,CX のどれかのパッケージをダウンロード後、実行すれば必要なツール全てがWindowsへインストールされます。

統合開発環境CS+パッケージ
統合開発環境CS+パッケージ(一括ダウンロードの例)

関連投稿:CS+ for CCとCS+ for CA,CXの違い

既存プロジェクトを新しいCS+で開いた時のメッセージ

以下CS+ for CCの例で示しますが、CS+ for CA,CXでも同じです。

既存のプロジェクトを開く
既存のプロジェクトを開く。BB-RL78G13-64.mtpjをクリック。

CS+ for CCを起動し、既存のプロジェクトを開くでRL78/G1xテンプレートプロジェクトのCC-RLを選択すると、最初に警告メッセージが表示され、出力パネルにその内容、プロジェクト開発当時と新しいCS+での「プロジェクトの差分情報」が表示されます。

既存プロジェクトを開いた時に表示されるメッセージとその内容
既存プロジェクトを開いた時に表示されるメッセージとその内容

※“プロジェクト差分情報”は、新規CS+をインストールした時だけでなく、プロジェクト開発中にCS+更新に遭遇した際にも表示されます。

黒字の “デバイス・ファイルが更新……”は、CS+がサポートするMCUデバイスが増えたために発生します。あまり気にする必要はありません。

青字の “プロジェクト差分情報”は、新しいCS+を用いた結果、既存プロジェクトに生じた差分、影響のことです。

例えば、CS+のCC-RLコンパイラが改良・改版され、開発当時のコンパイル・オプションには無かった [間接参照を1バイト単位で行う] 選択肢が発生し、これに関しては、「いいえ」を選択したことなどが解ります。

これらの選択は、基本的に既存プロジェクトに影響が無い(少ない)方をデフォルトとしてCS+が選びます。このデフォルト選択が、CS+の後方互換を実現している鍵です。

後方互換の検証:プロジェクトビルド成功と評価ボードの動作確認

そのままビルド(B)>ビルド・プロジェクト(B)を実行すると、サブプロジェクトを含め全プロジェクトがリビルドされます。出力パネル青字は警告:Warring、赤字はエラー:Errorを示します。

全プロジェクトビルド結果
全プロジェクトビルド結果

出力パネルに赤字が出るのは問題ですが、青字内容に問題がなければ、新規CS+でもプロジェクトが正常にビルドできたことを示します。

そこで、ターゲット評価ボードへビルド出力をダウンロード、既存プロジェクト開発当時の動作確認ができ、最新CS+で後方互換が検証できました。

CS+の便利機能

ルネサスCS+には、プロジェクトと開発ツールをパックして保存する便利な機能があります。

CS+の便利機能
CS+の便利機能。プロジェクト開発時の環境を丸ごとそのまま保存できる。

この開発ツールとは、使用中の統合開発環境のことで、文字通りプロジェクトとCS+、デバイス・ファイル情報などのプロジェクト開発時の環境を丸ごとそのまま保存し、復元もできます。
但し、当然OS:Windowsまでは保存しなので、年2回の大規模OS更新やWindows 7サービス終了などには開発者自ら対応する必要があります。

後方互換とプロジェクト開発方針

IDEの後方互換は、開発者にとっては当然のことです。ただし、改良・改版された最新コンパイラ性能を、既存プロジェクトで最大限引き出しているかは疑問を持つ方もいるでしょう。個人的には、この点について以下のように考えます。

  • プロジェクト開発時、使用する統合開発環境のコンパイル・オプションは、最適化も含めてデフォルト設定で開発。
  • サイズ優先や速度優先の設定は、開発の最終段階で必要性がある時にのみ最小限設定し、その設定をソースに明記。

例えば、弊社マイコンテンプレートは、1つを除いて全て上記方針で開発しています。除いた1点とは、NXPのLPC8xxテンプレートのLPC810(ROM 4KB/RAM 1KB)の小ROMデバイスの1段最適化のみです。テンプレート(ひな形)の性質上、いろいろなプロジェクトへの適応性が高いのもこの方針の理由です。また、デフォルト設定と最小限設定なので、結果的に最新統合開発環境への後方互換も取りやすいと言えます。

経験上、コンパイル・オプションを操作して開発したトリッキーなプロジェクトは、設計段階(MCU選択やプログラム構成)の失敗だと考えています。個人的には、デフォルト設定で十分余裕(50%程度)がある設計がお勧めです。これを確かめるためにも、プロトタイプ開発は重要だというのが私の考えです。

MCU統合開発環境、後方互換のまとめ

MCU統合開発環境(IDE)とWindows環境の年間メジャー更新スケジュールは下図です(2018年7月9日投稿の再掲)。

主要開発環境の年間更新スケジュール
主要開発環境の年間更新スケジュール

プロジェクト開発中にこれら更新に遭遇することは少なくないでしょう。本稿は、ルネサスCS+を例に最新IDEの後方互換性を確認しました。EclipseベースのIDEでも同様です。まとめると、

  • IDE更新後、最初に既存プロジェクトを開く時の差分情報で、プロジェクトに生じた差分、影響を分析し、後方互換を検証
  • コンパイル・オプションはデフォルト設定が、更新された統合開発環境の後方互換を取りやすい

ことを示しました。

似通るBluetoothと無線LAN

Bluetooth 5と無線LANの類似性が増し、互いの領域に滲出、相互補完が薄れていくという記事、両規格の生立ちと規格の方向性が良く解ります。

Bluetoothと無線LANの領域

本ブログ掲載のMCUとMPU/SCB間の無線規格のページの下図で見ると、両規格の違いは、バッテリー消費量です。

Bluetooth(BLE)とLPWAの違い
Bluetooth(BLE)と無線LANの領域

記事要旨を表にしました。Bluetooth 5の機能強化点が、無線LAN側を浸食していきつつあるのが解ります。

Bluetooth 5と無線LANの生立ちと規格の方向性
  Bluetooth 5 無線LAN
生立ち RS-232C代替無線規格、シンプルなネットワークスタックで低消費電力 IPネットワークの無線化
周波数(Hz 2.4G 2.4G/5G
通信速度/距離 複数デバイス間の低速少量データ 数100Mbps~数Gbps、100m(max)
機能強化点 速度:2Mbps
通信範囲:4倍
ブロードキャスト容量:8倍
コネクションレス通信サポート
暗号化サポート
セキュリティ規格WEP:Wired Equipment PrivacyからWPA:Wi-Fi Protected Accessへ

無線LAN側は、スリープモード利用で省電力強化の方向ですが、実用化には時間がかかるそうです。

この規格の見通しが立つまでは、無線機能搭載MCUの選定が、しづらいです。結果、CypressのPSoCアナログ特化製品のような、無線規格変更に柔軟に対応できるコプロセサ化も必要かもしれません。

※本時期内容は、MCUとMPU/SCB間無線規格ページへ追記しました。

計算能力とIO速度によるポジショニング・マップ

トラ技2016年6月号は、MPU/SCBデバイスのRaspberry Pi特集号でOSにLinuxのRaspbianを適用し、

  1. IoT開発環境Node-REDによるMCUとMPU/SCBの垣根を超えたブログラミング
  2. PythonによるMPU/SCBのIO制御

などが楽しめる内容です。P45にコンピュータデバイスのポジショニング・マップが記載されています。本ブログの対象デバイスMCUとMPU/SCBの特性差が解りやすいので引用させていただきました。

IoT制御デバイスの固定ページへも同図を追加しました。特性詳細は、このページをご覧ください。

MCU & MPUSBC Poisoning Map
MCU & MPUSBC Poisoning Map(トラ技2016年6月号 P45より)