データ格納用メモリは大部分がSRAM
Q:マイコンのプログラム格納用メモリはフラッシュメモリが主流だそうですが、データ格納用にはどんなメモリが内蔵されているのですか?
A:大部分がSRAMと言ってよいでしょう(図1)。
Q:ここでもDRAMは使わないのですね。どうしてですか。
A:最大の理由はDRAM回路と、マイコンの大部分を占める大規模ロジック回路とは、半導体製造プロセスが大きく異なることです。マイコンにDRAMを内蔵しようとすると製造コストが高くなってしまいます。
もともと、自由に書き換えが可能なRAMの中でDRAMが広く普及したのは、1ビット当たりの製造単価が安く、最も大容量の製品を実現できたからです。1ビットのDRAMセルは、1個のトランジスタと1個のキャパシタで構成される1T1C構成で実現できます。構造が単純なので小型化や高集積化が容易です。ただし、このキャパシタを作るには、トランジスタ主体の大規模ロジックとはかなり異なる製造プロセスが必要です。
それに対して、SRAMセルは4〜6個のトランジスタを組み合わせて1ビットの情報を記憶します。同じチップサイズなら、DRAMの4分の1程度の記憶容量しか得られません。その代わり、SRAMはトランジスタだけで構成するため、大規模ロジックと混載が容易で、マイコンの内蔵メモリには最も適しています。
さらに、SRAMは高速動作が可能で、マイコンのクロック速度に合わせてアクセスできる点でも内蔵メモリに適しています。CPU内部のレジスタや、キャッシュメモリに使われているのもSRAMです。DRAMには、SRAMと比較して動作速度が遅いという問題があります。
実は、プログラム格納用メモリとして主流のフラッシュメモリも、製造プロセスが大規模ロジックとかなり違うので、マイコンの内蔵メモリとしてはちょっとコストが高くつきます。書き換えに時間がかかるだけでなく、読み出しの速度が比較的遅いという難点もあります。それでも、揮発性で、かつ電気的に消去と書き換えが容易にできる利点が極めて大きいので、内蔵メモリとして広く使われているのです。
Q:マイコンの場合は、DRAMのメリットはそれほど大きくないのですか?
A:パソコンの場合、プログラムを全てRAM上にロードしてから実行します。実行したいプログラムのサイズも、プログラムの中で扱いたいデータ量も極めて大きいので、RAMとしてビット単価が安いDRAMを選びます。それも、1個のDRAMチップでは容量が足りないので、数個のDRAMチップでDRAMモジュール(DIMMなど)を構成し、さらに必要に応じて複数のDRAMモジュールを組み合わせて容量を拡張します。
Q:最近のパソコンは、4G〜8GバイトのDRAMを搭載している製品も多いですね。
A:マイコンの場合には、1個のチップの中にCPU、ROM(フラッシュメモリ)、RAM(SRAM)、各種I/Oを全て内蔵しますから、ROM容量もRAM容量もあまり大きくすることができません。プログラムを内蔵ROM上で実行し、RAMの用途はデータ格納だけなので、その点からも大容量のRAMは必要ありません。フラッシュメモリは『不揮発』、『書き換え可能』という機能的な利点を持っているのに対して、DRAMの利点は『大容量』だけなので、マイコンに内蔵するメリットが薄いのです。
不揮発のデータ格納用メモリもある
Q:データ格納用メモリは、SRAMだけなのですか?
A:マイコンに内蔵する揮発性のデータ格納用メモリのうち、SRAMに代わるものはありません。ただ、電源を切っても内容が保持される不揮発性という点から、SRAM以外のメモリも用いています。
プログラム格納用のフラッシュメモリは不揮発かつ書き換え可能ですが、ブロック単位で消去してから書き換えることが必要なので、バイト単位でデータを保存するには不向きです。バイト単位で保存しておきたいデータがある場合には、一般に外付けEEPROMを利用します。
Q:EEPROMとはどんなものですか?
A:データを記憶する原理はフラッシュメモリと同じです。ただ、フラッシュメモリはデータ容量をなるべく大きくするために、消去は複数のページをまとめたブロック単位、書き換えはページ単位で行うことにして内部構造を簡略化しています(NORフラッシュはバイト単位の読み書きが可能)。
EEPROMは、読み出しも消去/書き換えもバイト単位で実行可能です。そのかわり、1ビットあたりのトランジスタ数や配線数が増えて、あまり大容量にできないことが難点です。さらに、フラッシュメモリと同様に消去/書き換えに時間がかかります。そのため、以前はごく小容量(数百〜数千バイト)のデータ保存用EEPROMを外付けして使っていました。
これらの外付けEEPROMは、SPIやI2Cといった簡易なシリアル・インタフェースを持つものが多く、マイコンのSPI/I2Cインタフェースと容易に接続できます。
最近では、不揮発のデータ格納用メモリを使いたいという要望も多くなっており、プログラム格納用とは別に、小容量のデータ格納用として、フラッシュメモリやEEPROMを内蔵するマイコンもあります。
テキサス・インスツルメンツ(TI)のMSP430FR2x/4x/5x/6xなどのFRAM搭載マイコンでは、FRAMを不揮発かつ超低消費電力のデータ格納用メモリとして活用することができます。
【関連リンク】
- 低リーク電流のトランスインピーダンス・アンプを内蔵した、世界初のマイコン『MSP430FR2311』
- ハードウェアIP CapTIvateテクノロジーの詳細
- 業界最高のノイズ耐性で、初のIEC 61000-4-6 RFイミュニティ適合認証取得済ソリューションを提供する容量性タッチ・マイコン『MSP430FR2633』の詳細
- MSP432 低消費+高性能マイコン
- MSP430 超低消費電力マイコン・ファミリ
- MSP430 LaunchPadバリュー・ライン開発キット
- 新FRAMマイコン:「MSP430FR6972」
- 産業用マイコン:「MSP430I2040」
- TIのマイコン製品の詳細
- 便利なツールの購入はこちらから:TI store
※CapTIvate、MSP430およびMSP432はTexas Instruments Incorporatedの商標です。その他すべての商標および登録商標はそれぞれの所有者に帰属します。
提供:日本テキサス・インスツルメンツ株式会社
アイティメディア営業企画/制作:EDN Japan 編集部/掲載内容有効期限:2016年12月31日
Copyright © ITmedia, Inc. All Rights Reserved.