MCU:マイコン,Cortex-M0+コア,Cortex-M0コアテンプレート,LPC8xx,LPC81x,ARMマイコン,Cortex-M0+

ARM Cortex-M0+コア利用のLPC8xxテンプレート発売で開発が一段落したので、Cortex-Mマイコンの現状を俯瞰して、今後の開発方針を検討します。

ARM Cortex-Mシリーズマイコンの特徴

ARM Cortex-M機種 一言で表すと…
Cortex-M0+ 超低消費電力ハイパフォーマンスマイコン
Cortex-M0 低消費電力マイコン
Cortex-M1 FPGA組込み用マイコン
Cortex-M3 汎用マイコン
Cortex-M4 デジタル信号制御アプリケーション用マイコン

 

8/16ビットキラーマイコンのCortex-M0+

M0は、8/16ビットマイコンより高性能、高エネルギー効率、高密度コードを目指して開発された32ビットコア。M0+は、M0よりさらに電力効率を最適化したコア。どちらも8/16ビットマイコンの価格レベルで32ビット性能を提供中。M0+の性能は、0.93 DMIPS/MHzで、M0の0.9 DMIPS/MHzより高性能。M0+は、M0命令セットと互換性あり。ARM Cortex-M開発ツールは、Eclipseベースとすることで、ベンダが異なっても開発環境を統一。ARM提供のCMSISを使うと、Mシリーズコアとベンダハードの差を隠ぺいすることができ、ソフト流用性も高まる。

世界定番ARMマイコンの最初のテンプレート開発にCortex-M0+を選んだ理由が、上記です。

これらCortex-Mシリーズの特徴は、ベンダやマイコン機種が変わると、一から開発環境構築やその習得、コアハードの熟知が必要だった従来マイコン開発に比べ、ベンダ/機種横断的に経験や既存資産を活かしたソフト開発が期待でき、利用者側メリットが大きいことを示しています。ARM社の狙いもココでしょう。

そこで、この「ARMコア利用メリット」を実際に試すことを今後の方針とします。

NXPのCortex-M0+テンプレート → NXPのCortex-M0テンプレートへ移植

発売中のCortex-M0+/LPC8xxテンプレートは、ARMコアベンダとしては老舗のオランダ)NXPのCortex-M0+マイコンLPC820を使ったテンプレートソフトです(写真参照)。NXPは、多くのMシリーズ製品を提供中です。そこで、このM0+テンプレートをM0機種へ移植することで、「同じベンダでCortex-M0+からM0への変更時のARMコア利用メリット」を検証します。

NXPのCortex-M0+テンプレート → フリースケールのCortex-M0+へ移植

ARMコアマイコンベンダとしては後発の米)freescaleのCortex-Mマイコンは、2014年7月現在、後発ゆえに特徴がきわ立つM0+とM4の2機種を提供中です。そこで、Cortex-M0+/LPC8xxテンプレートを、フリースケール製M0+マイコンへ移植することで、「異なるベンダでCortex-M0+ソフト移植時のARMコア利用メリット」を検証します。

どちらの検証も、いろいろなマイコンを開発してきた自身の経験と比較し、「ARMコア利用メリットを享受できるか否かの主観評価」になりますが、ARM社の狙いが絵にかいた餅なのか、本当に役立つのかの参考になると思います。

テンプレート移植
テンプレート移植

なお、別途販売中のルネサスRL78/G1xテンプレートは、コチラを参照して下さい。