今日の大規模なNANDフラッシュチップへの書き込みアクセスについて知っている人はいますか? 書き込みの最小粒度は? ここにマイクロコントローラ フラッシュがあります。これは、書き込みステート マシンに一度に供給されるために、少なくとも 1 ワード (つまり 16 ビット ワード) を最大 4 ワード必要とします。ここでは、書き込みパフォーマンス上の理由から、大規模な (> 1 Gbit) フラッシュの動作が異なると思います。
スラルティ
今日の大規模なNANDフラッシュチップへの書き込みアクセスについて知っている人はいますか? 書き込みの最小粒度は? ここにマイクロコントローラ フラッシュがあります。これは、書き込みステート マシンに一度に供給されるために、少なくとも 1 ワード (つまり 16 ビット ワード) を最大 4 ワード必要とします。ここでは、書き込みパフォーマンス上の理由から、大規模な (> 1 Gbit) フラッシュの動作が異なると思います。
スラルティ
明確にするために、1 ビットを書き込むにはメモリのブロック全体をクリアする必要があり、0 ビットを書き込むには 1 つのメモリ位置だけを書き込む必要があります。1回限りの書き込み(基本的にビットの一部を1から0に変更する)について話しているのですか、それともチャンクを消去してチャンクを再書き込みして、ビットの一部を0から0に変更できるようにすることについて話しているのですか? 1?
知るための最も簡単な方法は、問題の部品またはいくつかの部品のデータ シートをさまざまなベンダーから入手することです。私が使用した最新のものは、spi ベースで、0x10000 (65536) バイト サイズの消去ブロックのようなものでした。私がそれらと呼んでいる古い並列のもの、つまり従来のアドレス バスとデータ バスを備えたものは、256 バイトまたは 512 バイトのページのようなものでしたが、これらは新しいテクノロジ (nand) ではありませんでした。
編集
ランダムに選択されたサムスンのドキュメントを見ると、メガバイト サイズのメモリには 256 バイトと 512 バイトのページ サイズがありましたが、1 ギガバイトと 2 ギガバイトのページ サイズは記載されていませんでした (これはファミリ タイプのデータシートであり、特定の部品のデータシートではありませんでした)。MB サイズのメモリの場合、ブロック サイズは 4K から 16K の範囲です。
これは Web ページから切り取ったものです。nand flash ページのサイズをググってみました。
「25nm NAND のもう 1 つの大きな変更点は、ページ サイズの増加です。50nm と 34nm では、IMFT のページ サイズは 4KB でした。8GB デバイスの 25nm では、ページ サイズは 8KB になりました。ブロック サイズも 128 ページから増加しました。 256ページまで。」
ウィキペディアには、nand フラッシュに関する興味深い情報もあります。
「読み取りとプログラミングはページ単位で実行されますが、消去はブロック単位でのみ実行できます。NAND フラッシュのもう 1 つの制限は、ブロック内のデータを順次にしか書き込むことができないことです。」
かなり悪いように聞こえますが、2MByte の消去を必要とする 1 の書き込みを見ています。私はこれらのものを組み込みプロセッサの起動に使用するため、通常、ブルームーンごとに1回消去して1回書き込み、理想的には1回の消去と1回の書き込みパスを製品の寿命のために行います. ディスクのようなメディアとして使用するには、これは苦痛です。
また、nand および/または密度が小さいと、単に場所を頻繁に読み取るだけで近くの場所が消去される可能性があるという読み取り障害の問題が発生していることに注意してください。これはメディアのようなディスクでは問題にならないかもしれませんが、nand フラッシュから組み込みプロセッサを実行 (実行) したい場合は、ブートして、最小限のループを使用して小さなプログラムを RAM にコピーし、RAM に分岐し、その小さなプログラム/関数に、プログラムの残りをRAMにコピーするループがあり、RAMが不足しています。
デバイスに完全に依存しますが、通常は 2 の累乗です。