Kernel 和 U-Boot 上的 NAND 坏块搜索策略
NAND bad block search policy on Kernel and U-Boot
我查看了内核和 U-boot 代码,发现 U-Boot 仅检查擦除块前两页中的坏块标记。甚至还有一个标志 NAND_BBT_SCANALLPAGES,但它不是默认选项(至少在我使用的版本上)。
为什么会有这样的选项?在一个块中搜索每个页面不是更好(也更安全)吗?
此致,
吉尔赫姆
Most NAND chips mark the bad blocks at a defined position in the spare area.
由于整个块都被标记为坏块而不是特定页面,因此只要在块的前 2 页中正确维护坏块标记,扫描前 2 页中的坏块标记就足够了按照惯例。 (而不是 I/O 失败的页面。)
因此,可以通过存储坏块标记并在块的第1页或第2页的备用区域中扫描来确定每次访问块时的坏块标记。
This is a design convention to speed-up the activity of determining whether a block is bad.
我查看了内核和 U-boot 代码,发现 U-Boot 仅检查擦除块前两页中的坏块标记。甚至还有一个标志 NAND_BBT_SCANALLPAGES,但它不是默认选项(至少在我使用的版本上)。
为什么会有这样的选项?在一个块中搜索每个页面不是更好(也更安全)吗?
此致, 吉尔赫姆
Most NAND chips mark the bad blocks at a defined position in the spare area.
由于整个块都被标记为坏块而不是特定页面,因此只要在块的前 2 页中正确维护坏块标记,扫描前 2 页中的坏块标记就足够了按照惯例。 (而不是 I/O 失败的页面。)
因此,可以通过存储坏块标记并在块的第1页或第2页的备用区域中扫描来确定每次访问块时的坏块标记。
This is a design convention to speed-up the activity of determining whether a block is bad.