連載
マイコンにおけるメモリ外付け(メモリ増設)方法:Q&Aで学ぶマイコン講座(59)(4/5 ページ)
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。59問目は、初級者の方からよく質問される「マイコンにおけるメモリ外付け(メモリ増設)方法」についてです。
FMC使用例1:非多重/非同期16ビットNORフラッシュとの接続
NORフラッシュを制御するために、FMCをNORフラッシュの仕様に従って設定します。設定例を以下に示します。
- バンクは、NORフラッシュを選択
- バンクを許可
- メモリタイプはNORフラッシュを選択
- データバスを16ビットに設定
- 非多重メモリを選択
他のパラメーターに関してはすべてクリア状態にしておきます。
NORフラッシュのアクセスタイミングを図4に、ハードウェアの接続例を図5に示します。
NORフラッシュ/PSRAMコントローラは非同期/同期メモリ双方のサポートが可能です。そのため、ユーザーはメモリの仕様に従って使用するパラメーターを設定します。
非同期メモリを使用する場合は、次のパラメーターをメモリの仕様に従って設定します。
- ADDSET:アドレス・セットアップタイム
- ADDHOLD:アドレス・ホールドタイム
- DATAST:データ・セットアップタイム
- ACCMOD:アクセスモード
同期メモリを使用する場合は、次のパラメーターを設定します。
- CLKDIV:クロック分周比
- DATLAT:データレイテンシ
また、NORフラッシュからプログラムを実行することもできます。この場合は、以下の手順が必要です。
- ユーザープログラムを外部のNORフラッシュにロード
- この操作は開発ツールチェーンのリンカファイルに特別な設定が必要になります。外部NORフラッシュの先頭アドレス(もしくは、NORフラッシュのメモリ空間のあるアドレス)を指定する必要があります。特別な外部NORフラッシュ用のプログラムローダーも必要です。
- ユーザーコードの実行
- ユーザープログラムがNORフラッシュに書き込まれたら、FMCを設定して外部NORフラッシュにジャンプして実行するような特別なプログラムを、内部のフラッシュメモリにロードします。
FMC使用例2:非多重/非同期16ビットSRAMとの接続
SRAMとNORフラッシュは同じバンクを使用しますが、バンクが同じでもメモリの種類によってプロトコルが変わるため、設定内容も異なります。SRAMを制御するための設定例を以下に示します。
- バンクの使用を許可
- メモリタイプをSRAMに設定
- データバスを16ビットに設定(SRAMの仕様に依存)
- マルチプレックスをしない(SRAMの仕様に依存)
他のパラメーターに関してはすべてクリア状態にしておきます。
非同期NORフラッシュと同様に、以下のパラメーターをSRAMの仕様に従って設定します。
- ADDSET:アドレス・セットアップタイム
- ADDHOLD:アドレス・ホールドタイム
- DATAST:データ・セットアップタイム
標準的なSRAMのアクセスタイミングを図6に、ハードウェアの接続例を図7に示します。
Copyright © ITmedia, Inc. All Rights Reserved.