JNIB の RAM と NANDフラッシュ・メモリ
「Hello World」プログラムを構築するために、「 JEM Builder 」や「 シャレード(Charade) 」を使ってプログラムの構築・ダウンロード・実行を行ってきましたが、実を言うと今の状態では、この「Hello World」プログラムはJNIBの電源を切ってしまうと消えてしまいます。
この問題に対応するために どうしたらよいかを理解するために、ここで少しだけJNIBの内部のメモリ構造を見てみましょう。
JNIBのメモリ構成
JNIBにはメモリとして、16MBのPSRAM と 32MBのNANDフラッシュ が内蔵されています。 そのうち JNIBのCPUであるaJ-100が直接実行できるのは、RAMに書き込まれているプログラムだけです。
「Hello World」プログラムを構築するために 「Charade」による実行ファイルのダウンロードと実行 ページの例で示した シャレード(Charade) から 「 load.sod 」スクリプトを実行してプログラムをJNIBにダウンロードする方法では、プログラムは、直接 JNIBのRAMに書き込まれ、それを「 Run 」ボタンをクリックすることにより実行していたわけです。 但し、プログラムが書き込まれていたのは あくまでも「 RAM 」ですので、JNIBの電源を切ってしまいますとプログラムは消えてしまいます。
プログラムを開発・テストする段階では、このように開発用のPCからJNIBのRAMに直接ダウンロードして書き込む方法でも問題ありませんが、
プログラムが完成した後、JNIBを実際のフィールドで使ったり、お客様に納品しようとするためには、これでは使い物になりません。 第一、これでは「組み込み」システムとは呼べません。
そこでJNIBでは 電源が入れられた直後には、NANDフラッシュに保存されているプログラムを RAMにコピーしてからそれを実行する、という仕組みになっています。 つまり、完成したプログラムをJNIBに「組み込む」ためには、そのプログラムをNAMDフラッシュに書き込んでおけばよいことになります。 JNIBには、完成したプログラムをNAMDフラッシュに書き込む方法が いくつか存在しています。
以後、「Hello World」プログラム開発の続きとして、NAMDフラッシュ・メモリへアプリケーション・実行ファイルの書き込み方法について、簡単な方法から順にみてゆきます。
関連情報・リンク
- 当サイトの管理人: 四元輝博のブログ「 シリコンバレー 24時 」