10 Samsung K9WAG08U1D NAND flashチップ用のドライバーを書いています。メモリチップの仕様には、2048バイト(2kB)のページサイズがあると記載されています。私TI MSP430F2619は4096バイト(4kB)のRAMを持つを使用しています。つまり、フラッシュに書き込むためだけに2kのメモリバッファを割り当てる必要があります。私のアプリケーションはプロトコルコンバーターです。そのため、送信と送信の間の処理のために追加のバッファーが必要です。フラッシュページサイズによるRAM要件を減らすためのより良いアプローチを私に提案してください。 electrical-engineering embedded-systems — プラサード ソース
7 一度にすべてのページレジスタを埋める必要はありません。 シリアルデータ入力コマンド(0x80)、列アドレス、および行アドレスを書き込むことにより、ページ書き込み(「ページプログラム」操作)を開始します。次に、データをページレジスタに転送します(最大2112バイト)。この転送はチャンクに分割でき、チャンク間の遅延は必要です。 ページレジスタがいっぱいになると、ページプログラム確認コマンド(0x10)を使用して、ページレジスタからアレイへの転送を開始します。 — パトリック ソース NANDフラッシュは通常、1ページあたり4回の部分書き込みに制限されていることに注意してください 1 @Jacenページごとの部分的な書き込みについては言及していません。これは、パーツごとに個別のコマンド/アドレス/データ/コマンドシーケンスによって行われます。ページレジスタへの転送を分割することを指します。ページレジスタは、必要に応じてバイトごとに1つの「チャンク」にすることができます。 — Patrick 基本的に、私の現在のドライバーロジックは、RAM内の2Kバッファー全体がいっぱいになるのを待ってから、フラッシュに書き込んでいました。しかし、今では最低でも1バイトのRAMバッファを使用できます。 ああ、そうです、あなたは正しいパトリックです、私はこのオプションを忘れました。