数据是如何按页写入FLASH MEMORY的?

发布于 2025-01-09 04:21:00 字数 658 浏览 1 评论 0原文

注:闪存是 EEPROM 的一种。但当我说 EEPROM 时,我排除了闪存。

我一直在检查许多来源,但找不到对此的明确答案。

据我了解,现在大多数普通的 EEPROMS 都使用 SPI 或 I2C 协议来读写数据。操作码、地址和数据均以串行方式逐位发送。另外,并行总线也可以在 EEPROM 中使用,使我们能够一次在特定地址读取/写入整个字节(尽管这种设计需要更多引脚)。

关于闪存,我读到可以“擦除”——这与读取和写入不同——仅按块。一个块包含许多页,一个页可能包含许多字节。可以在 NOR FLASH 存储器中读取/写入特定字节,但是对于 NAND FLASH 存储器只能按页读取/写入。

我想知道的是数据是如何“按页”写入的。在一个时钟周期内写入整个页将需要非常大的总线和太多线路,并且逐位写入整个页将需要太多时间。所以,我认为该页面是逐字节串行写入的。但问题来了,如果我们能够逐字节写入,那么为什么我们不能在闪存的特定位置写入/读取呢?

看起来有一个迭代将缓冲区的内容复制到物理页中,但我们可以跳过写入,直到在迭代期间到达所需的位置。 (这并不能节省我们的时间。也许我们额外写入只是为了巩固/保护其他地址中的数据)。

那么你对此有何评论?

Note: FLASH memory is a type of EEPROM. But when I say EEPROM, I exclude FLASH memory.

I have been checking many sources but could not find a clear cut answer on this.

From what I read, it looks like most ordinary EEPROMS -nowadays- utilize SPI or I2C protocols to read and write data. The op-code, address and the data all are sent bit-by-bit in a serial manner. Alternatively, parallel buses can be used in EEPROMs too, allowing us to read/ write a whole byte at a specific adress at once (although such design demands more pins).

About FLASH memory, I read that it is possible to "erase" -which is different than reading and writing- by blocks only. A block contains many pages and a page may contain many bytes. It is possible to read/ write at a specific byte in a NOR FLASH memory, but one can only read/ write by pages in case of NAND FLASH memory.

What I wonder is how the data is being written 'by pages'. Writing the whole page in one clock cycle would require a very large bus with too many lines, and writing the whole page bit-by-bit would require too much time. So, I think the page is being written byte-by-byte serially. But then comes the question, if we are able to write byte-by-byte, then why we cannot write/ read at a specific location in FLASH memory?

It looks like there is an iteration copying the content of a buffer into the physical page, but we could skip writing until we reach the desired position during the iteration. (This does not save us time tough. Maybe we write in extra just to consolidate/ secure the data in other adresses).

So what would you say on this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文