什么是MTD分区和NAND flash

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是MTD分区和NAND flash相关的知识,希望对你有一定的参考价值。

NOR和NAND是现在市场上两种主要的非易失闪存技术。 Intel于1988年首先开发出NOR
flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。紧接着,1989年,东芝公司发表了NAND
flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口
轻松升级。但是经过了十多年之后,仍然有相当多的硬件工程师分不清NOR和NAND闪存。
相“flash存储器”经常可以与相“NOR存储器”互换使用。许多业内人士也搞不清楚NAND闪存技术相对于NOR技术的优越之处,因为大多数情况下闪存只是用来存储少量的代码,这时NOR闪存更适合一些。而NAND则是高数据存储密度的理想解决方案。
NOR的特点是芯片内执行(XIP, eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。
NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。
NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理和需要特殊的系统接口。
参考技术A 能改动内核的话,直接把那块flash分个区,然后用户层开mtd设备读取不是更方便么。不能改的话,用户层吧nand控制器那些寄存器手动map出来,然后对照手册操作吧。具体操作我也不是很熟悉,要去看nand flash操作手册和你的SoC的datasheet

nand flash X16和X8在硬件和软件设计上都有哪些差异,请帮忙说明一些,越详细越好。

参考技术A 就是数据位宽度不一样了,X8的需要D0-D7,X16的需要D0-D15,使用上区别不大,X16的用得不多。

以上是关于什么是MTD分区和NAND flash的主要内容,如果未能解决你的问题,请参考以下文章

openwrt 为啥自动生成一个mtd分区

MTD下的Nand驱动

linux中MTDflash设备驱动大概

Linux-Nand Flash驱动(分析MTD层并制作NAND驱动)

Linux MTD下获取Nand flash各个参数的过程的详细解析

STM32+NAND FLASH做U盘,程序运行后格式化失败,而且查看容量为0,是啥原因