spanion flash操作要点まとめ
最近flashチップに接触し、一般的なspiインタフェースで操作されています.
型番は:s 25 fl 064 p
最小ページサイズ:64 kbで、最小アドレスから64 kbが4 kbページに分割され、最大アドレスが64 kbに戻ると4 kbページに分割される.
消去操作コマンドモード:64 kb消去(SE)、4 kb消去(P 4 E)、8 kb消去(P 8 E).
最も重要な部分:読み書き、消去操作の順序.
---------------------------------------------------------------------------------------------------------------------------------------
READ命令の特徴:
(1)CSチップ選択信号ピンを下げ、読んでいる間にCS信号ピンを上げるとREAD動作が終了する.
(2)フラッシュチップが書き込み、消去、書き込みレジスタなどの動作を実行している場合、読み取りコマンドの実行を拒否する.
WRENコマンドの特徴:
(1)書き込みイネーブル,1−---書き込みレジスタ操作,消去操作,焼き書き操作を受け付ける.
(2)PP,QPP,SE,BE,WRR,OtPP命令の前にWREN命令に従う必要がある.
WRDIコマンドの特徴:
(1)書き込み禁止,0−---書き込みレジスタ操作,消去操作,焼書き操作を拒否する.
(2)オン,WRDI,WRR,PP,QPP,P 4 E,P 8 E,SE,BE,OtPPこれらの操作はSRレジスタのWELビットをリセットし,書き込み操作ができなくなる.
RDSRコマンドの特徴:
(1)チップの動作状態をチェックすることなく、いつでもRDSRを送信することができ、最も重要な役割は、他のコマンドの実行プロセスが終了したかどうかをチェックすることであり、チップの状態に制限されない.
(2)新しいコマンドを送信する前に、このコマンドを送信して前のコマンドの実行状況をチェックし、SRレジスタのWIPフラグ位置0を待ってから、新しいコマンドを送信する.
(3)書き込み駆動の場合、書き込み操作、消去操作といった一般的なコマンドを行う場合は、現在の状態を判断するためにデッドサイクルを加えます.以下のようにします.
2つの参考ブログを見つけました.
http://bbs.21ic.com/icview-328763-1-1.html
http://bbs.ednchina.com/BLOG_ARTICLE_28454.HTM
型番は:s 25 fl 064 p
最小ページサイズ:64 kbで、最小アドレスから64 kbが4 kbページに分割され、最大アドレスが64 kbに戻ると4 kbページに分割される.
消去操作コマンドモード:64 kb消去(SE)、4 kb消去(P 4 E)、8 kb消去(P 8 E).
最も重要な部分:読み書き、消去操作の順序.
---------------------------------------------------------------------------------------------------------------------------------------
READ命令の特徴:
(1)CSチップ選択信号ピンを下げ、読んでいる間にCS信号ピンを上げるとREAD動作が終了する.
(2)フラッシュチップが書き込み、消去、書き込みレジスタなどの動作を実行している場合、読み取りコマンドの実行を拒否する.
WRENコマンドの特徴:
(1)書き込みイネーブル,1−---書き込みレジスタ操作,消去操作,焼き書き操作を受け付ける.
(2)PP,QPP,SE,BE,WRR,OtPP命令の前にWREN命令に従う必要がある.
WRDIコマンドの特徴:
(1)書き込み禁止,0−---書き込みレジスタ操作,消去操作,焼書き操作を拒否する.
(2)オン,WRDI,WRR,PP,QPP,P 4 E,P 8 E,SE,BE,OtPPこれらの操作はSRレジスタのWELビットをリセットし,書き込み操作ができなくなる.
RDSRコマンドの特徴:
(1)チップの動作状態をチェックすることなく、いつでもRDSRを送信することができ、最も重要な役割は、他のコマンドの実行プロセスが終了したかどうかをチェックすることであり、チップの状態に制限されない.
(2)新しいコマンドを送信する前に、このコマンドを送信して前のコマンドの実行状況をチェックし、SRレジスタのWIPフラグ位置0を待ってから、新しいコマンドを送信する.
(3)書き込み駆動の場合、書き込み操作、消去操作といった一般的なコマンドを行う場合は、現在の状態を判断するためにデッドサイクルを加えます.以下のようにします.
do
{
status = read_status_reg(RDSR);
}
while((status & 0x1)!= 0);
2つの参考ブログを見つけました.
http://bbs.21ic.com/icview-328763-1-1.html
http://bbs.ednchina.com/BLOG_ARTICLE_28454.HTM