[H8-ML(2219)] Re: メモリへのデータ書き込みについて
From: "Masanobu Suzuki" <signas@xxxxxxxxxxxxxxx>
Date: 2002年09月24日(火)22時53分53秒
わさびぃさん、はじめまして、鈴木と申します。

これまでのメールを総合すると以下の環境でお使いかと思います。

1)CPUコア    H8-3068F ( *1 )
2)クロックφ     25MHz
3)動作モード  モード6
4)アドレスバス  A16〜A0 ( エリア1 )
5)データバス  D15〜D8 ( 上位8bit )

先ずEEPROM(型式Atmel AT28C010-20 汎用)の件ですが、
http://www.atmel.com/atmel/acrobat/doc0010.pdf
のデータシートを見ますと、このEEPROMは通常のSRAMのような
Read/Writeサイクルで使用できるようです。
また、書込み及び消去電圧もVcc電圧5Vで良いようです。

但し、注意しなければならないのはTwc=10msecの規定です。
この意味は、通常のバイトの書込みではデータを書き込んだあと、
次にデータを書きこむには、最低Twc時間(10msec)は間をあける
必要があると言う意味です。

データシートでTwcの値がMAX値で規定されているのは、デバイス
側がこの時間を最大10msec必要とすると言う意味です。

しかし、この方法では大量のデータを書き込むには時間がかかり
過ぎるため、別にページライトモードが用意されています。
AT28C010では127Bytesをまとめて書き込んだ後、Twc(10msec)待
てば自動的に内部に一括で書き込みが終わるモードです。
メモリ側に127Bytesのデータバッファがあると思えば良いでしょう。

どちらの使い方をされるのか判りませんが、ポイントはTwcを守る
ことです。普通はTwcよりも短い時間でも書き込みは成功する筈
ですが、ソフトウエアによって書き込んだデータと数回繰り返して
読み出したデータがするかどうかをチェックすれば確実です。
また、非常に重要なデータ群ならば必ずチェックサムをとり固定アド
レスに書き込むようにすれば良いでしょう。


以下、蛇足です。

モード6をお使いのようですが、特にハード上の要請がなければ
モード5をお勧めします。
その理由は、モード5でも外部メモリ空間を持てることと、内臓 I/O
空間がモード7と同じなのでプログラム変更が少なくて済むこと
(モニタプログラムなどがそのまま使えます)、更に無駄なアドレス
信号などを用意しなくても良いので、その分を外部I/Oに割り当て
られる等のメリットがあります。

それと、今回は128KB(1Mbit)の不揮発性メモリをお使いですが、
大容量のEEPROMは書き込み時間がバカにならないので、書き込
み時間に余裕がない場合はローパワーのSRAMを電池バックアップ
した方が速くて使いやすいと思います。



スレッド概略
[2196(R)](起点)
 └[2210(U)]
   └[表示中]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]