ARMが設計したCPUコアを使って、いろいろなメーカーがマイコンを作っている
Q:32ビット・マイコンではARMという名前をよく聞きます。いろいろなメーカーにARMのマイコンがあるようです。ARMはメーカーの名前ではないのですか?
A:ARM社は、LSIの形になったマイコン製品は作っていません。その点では、メーカーというわけではありません。ARM社はマイコンの中枢部分であるCPUコアを設計し、その設計データをいろいろな会社にライセンス販売しています。設計データを購入した会社が、それを使って自社のマイコン製品を製造します。
私たちが目にするARMマイコンは、ARM社の設計データを使っていろいろな会社が作ったものです。例えば、テキサス・インスツルメンツ(TI)では、ARM社のCortex-Aコアを使ってKeyStone、Sitara、DaVinchなどのプロセッサ、Cortex-Rコアを使ってRMなどのセーフティ・マイコン、Cortex-Mコアを使ってMSP432マイコンなどのマイコンを作っています。
図1 ARMコアを使って、各社がマイコン製品を作っている。(a)Cortex-Aを使ったプロセッサ製品 ARMコアにキャッシュ・メモリやさまざまな周辺機能を付け加えてプロセッサ製品やSoCを作っている。Cortex-Aコアは1〜4コアのマルチコアも可能
Q:ARMの中にも、いろいろなCPUコアがあるのですか。
A:大きく分けると、Cortex-AとCortex-RとCortex-Mの3つです。どれも32ビットのコアです。
Cortex-Aは、主記憶にDRAMを外付けして使うプロセッサ・タイプのコアです。主に、携帯電話やタブレットのアプリケーション・プロセッサや、画像などを扱うマルチメディア機器のデータ処理に使われています。Cortex-A8、Cortex-A9、Cortex-A15など、さらに幾つかの種類に分かれています。
Cortex-Rは、主記憶に内蔵フラッシュ・メモリを使うマイコン・タイプのコアで、特に高度な安全性をもつように設計されています。産業機器、医療機器、自動車などに使われています。
Cortex-Mは、主記憶に内蔵フラッシュ・メモリを使うマイコン・タイプのコアで、汎用として幅広い用途に使われています。いわゆるARMマイコンというと、このCortex-Mを指すことが多いでしょう。また、マイコン製品に使われているだけでなく、いろいろなLSI製品の中で専用コントローラとしても使用されています。Cortex-M0、Cortex-M3、Cortex-M4Fなど、さらにいくつかの種類に分かれています。
同じCPUコアを使っても、メーカーによって違う製品になる
Q:ARM社の同じCPUコアを使ったマイコンは、どこの会社でも同じマイコンなのですか。
A:そうとは言えません。ARM社が提供するのはCPUコアだけです。メモリや周辺回路については、各社がそれぞれ違うものを組み合わせてマイコン全体を設計しています。中には、ARMのCPUコアと自社のCPUコアやDSPコアを組み合わせたような製品もあります。
Q:CPUコアは同じでも、それぞれ別のマイコンと考える方が良いのですね。
A:そうですね。さらに、ARM社が提供しているCPUコアの設計データは、論理レベルの設計です。それを具体的なトランジスタ回路に置き換え、半導体チップとして製造するには、さまざまな設計技術や製造プロセス技術が必要です。それらの技術力の違いで、動作スピードや消費電力といったマイコンの性能が大きく変わってきます。同じCPUコアを使って、超高速マイコンを作ったり、超低消費電力マイコンを作ることができます。
Cortex-Mの中でも、M3/M4FとM0にはかなりの違いがある
Q:Cortex-Mについて、もう少し教えてください。M0、M3、M4Fにはどんな違いがあるのですか。
A:Cortex-Mの中で、最初に登場したCortex-M3が最もスタンダードなCPUコアと言えます。Cortex-M4は、M3に信号処理演算用のDSP機能を追加し、演算性能を強化したものです。さらに、Cortex-M4は浮動小数点演算用のFPUをオプションで追加できます。M4にFPUを実装したものは特に高性能なので、Cortex-M4Fと呼んでいます。
Q:Cortex-M0はどういうものですか。
A:Cortex-M3は高性能の32ビット・マイコンなので、8ビット・マイコンや16ビット・マイコンに比べると必要なトランジスタ数が多く、チップ・サイズや消費電力が大きくなってしまいます。そこで、M3の機能を大幅に簡略化してトランジスタ数を減らし、小型、低コスト、低消費電力を可能にしたCortex-M0が登場しました。
M0は、いろいろなLSI製品の中の専用コントローラに広く使われています。また、M0を使って低価格マイコン製品を作っている会社もあります。M0をさらに低消費電力向けにしたCortex-M0+というコアもあって、M0+を使って低消費電力マイコン製品を作っている会社もあります。
ただ、M0/M0+の場合、M3/M4Fより処理性能はかなり低くなってしまいますし、使える機能も制限されます。
TIのMSP432マイコンのように、高性能のCortex-M4Fを使いながら、低消費電力の設計技術やプロセス技術を駆使してM0/M0+並みの超低消費電力を実現したマイコン製品もあります。
- 低消費+高性能「MSP432」マイコン
- 超低消費電力マイコンMSP430ファミリ
- MSP430 LaunchPadバリュー・ライン開発キット
- 新産業用マイコン:「MSP430I2040」
- 新FRAMマイコン:「MSP430FR5969」
- TIのマイコン製品の詳細
- 便利なツールの購入はこちらから:TI store
※MSP430、C2000、Hercules、SitaraはTexas Instruments Incorporatedの商標です。その他すべての商標および登録商標はそれぞれの所有者に帰属します。
提供:日本テキサス・インスツルメンツ株式会社
アイティメディア営業企画/制作:EDN Japan 編集部/掲載内容有効期限:2016年3月31日
Copyright © ITmedia, Inc. All Rights Reserved.