报价
HOME
报价
正文内容
nand flash 全是坏块 小知识大作用:U盘的芯片,为什么会有坏块?
发布时间 : 2024-10-10
作者 : 小编
访问数量 : 23
扫码分享至微信

小知识大作用:U盘的芯片,为什么会有坏块?

坏块的种类:

第一种是出厂时就有的坏块,也就是,你买到的新的,还没用过的Nand Flash,就可能包含了坏块。此类出厂时就有的坏块,被称作factory (masked) bad block 或initial bad/invalid block,在出厂之前,就会做对应的标记,标为坏块。

第二种是在使用过程中产生的坏块,由于使用过程时间长了,在擦块除的时候,出错了,说明此块坏了,也要在程序运行过程中,发现,并且标记成坏块的。具体标记的位置,和上面一样。这类块叫做worn-out bad block。即用坏了的块。

坏块标记:

NAND Flash坏块标记的位置三种情况:每个块的第1页、第1页和第2页、最后1页。对于小页(512Bytes大小),坏块标记是在OOB区域的第6个字节。对于大页(如2K大小),坏块标记是在OOB区域的第1个字节。如果坏块标记字节是0xff,则说明这个块是好块,否则就是坏块。

坏块管理:

在linux系统中会使用坏块表(BBT)对坏块进行管理。在加载NAND驱动时,如果你没有加入参数主动要求跳过坏块扫描,那么系统都会扫描坏块,并建立BBT。使用中可以通过BBT来查询某个块是否是坏块。使用过程中如果发现坏块,也需要更新BBT。坏块表有两种存放方式:

第一种是存放在内存中,这就要求在每次系统上电后都要重新扫描一次NAND Flash,建立bbt。缺点是使系统启动速度变慢,优点是不需要占用NAND Flash空间。

第二种是存放在NAND Flash中,这种方式就不需要在系统上电后重新扫描NAND Flash,只需要去读取就可以了。

存储芯片 emmc、Nand flash、Nor flash之间有什么区别

随着存储领域的发展,有很多不同的存储介质,今天ICMAX就带大家来分一分emmc、Nand flash、Nor flash之间的区别。

一、定义及区别

emmc:全称为embeded MultiMedia Card,是一种嵌入式非易失性存储器系统,由Nand flash和Nand flash控制器组成,以BGA方式封装在一款chip上。

Nand flash:一种存储数据介质;若要读取其中的数据,需要外接的主控电路。

Nor flash:也是一种存储介质;它的存储空间一般比较小,但它可以不用初始化,可以在其内部运行程序,一般在其存储一些初始化内存的固件代码。

这里主要重点讲的是emmc 和Nand flash 之间的区别,主要区别如下:

(1) 在组成结构上:emmc存储芯片简化了存储器的设计,将NAND Flash芯片和控制芯片以MCP技术封装在一起,省去零组件耗用电路板的面积,同时也让手机厂商或是计算机厂商在设计新产品时的便利性大大提高。而NAND Flash仅仅只是一块存储设备,若要进行数据传输的话,只能通过主机端的控制器来进行操作,两者的结构图如下:

(2) 在功能上:eMMC则在其内部集成了 Flash Controller,包括了协议、擦写均衡、坏块管理、ECC校验、电源管理、时钟管理、数据存取等功能。相比于直接将NAND Flash接入到Host 端,eMMC屏蔽了 NAND Flash 的物理特性,可以减少 Host 端软件的复杂度,让 Host 端专注于上层业务,省去对 NAND Flash 进行特殊的处理。同时,eMMC通过使用Cache、Memory Array 等技术,在读写性能上也比 NAND Flash要好很多。而NAND Flash 是直接接入 Host 端的,Host 端通常需要有 NAND Flash Translation Layer,即 NFTL 或者 NAND Flash 文件系统来做坏块管理、ECC等的功能。另一方面,emmc的读写速度也比NAND Flash的读写速度快,emmc的读写可高达每秒50MB到100MB以上;

二、emmc的初始化和数据通信

emmc与主机之间通信的结构图:

其中包括Card Interface(CMD,DATA,CLK)、Memory core interface、总线接口控制(Card Interface Controller)、电源控制、寄存器组。

图中寄存器组的功能见下表:

CID: 卡身份识别寄存器 128bit,只读, 厂家号,产品号,串号,生产日期。

RCA: 卡地址寄存器,可写的16bit寄存器,存有Device identification模式由host分配的通信地址,host会在代码里面记录这个地址,MMC则存入RCA寄存器,默认值为0x0001。保留0x0000以用来将all device设置为等待CMD7命令状态。

CSD: 卡专有数据寄存器部分可读写128bit,卡容量,最大传输速率,读写操作的最大电流、电压,读写擦出块的最大长度等。

SCR: 卡配置寄存器, 可写的 64bit 是否用Security特性(LINUX不支持),以及数据位宽(1bit或4bit)。

OCR: 卡操作电压寄存器 32位, 只读,每隔0.1V占1位, 第31位卡上电过程是否完成。

(5)Device Identification Mode和初始化

MMC通过发CMD的方式来实现卡的初始化和数据通信

Device Identification Mode包括3个阶段Idle State、Ready State、Identification State。

Idle State下,eMMC Device会进行内部初始化,Host需要持续发送CMD1命令,查询eMMC Device是否已经完成初始化,同时进行工作电压和寻址模式协商:eMMC Device 在接收到这些信息后,会将OCR的内容(MMC出厂就烧录在里面的卡的操作电压值)通过 Response 返回给 Host,其中包含了 eMMC Device 是否完成初始化的标志位、设备工作电压范围 Voltage Range 和存储访问模式 Memory Access Mode 信息。

如果 eMMC Devcie 和 Host 所支持的工作电压和寻址模式不匹配,那么 eMMC Device 会进入Inactive State。

Ready State,MMC完成初始化后,就会进入该阶段。

在该 State 下,Host 会发送 CMD2命令,获取eMMC Device 的CID。

CID,即 Device identification number,用于标识一个 eMMC Device。它包含了 eMMC Device 的制造商、OEM、设备名称、设备序列号、生产年份等信息,每一个 eMMC Device 的 CID 都是唯一的,不会与其他的 eMMC Device 完全相同。

eMMC Device 接收到CMD2后,会将 127 Bits 的CID的内容通过 Response返回给 Host。

Identification State,发送完 CID 后,eMMC Device就会进入该阶段。

Host 会发送参数包含 16 Bits RCA 的CMD3命令,为eMMC Device 分配 RCA。设定完 RCA 后,eMMC Devcie 就完成了 Devcie Identification,进入 Data Transfer Mode。

注:emmc初始化和数据通信的过程,有点类似USB协议,USB控制器去发送请求给USB设备,以IN包和OUT包的形式去建立与USB设备之间的通信,默认状态下,USB设备也是0地址的,与控制器分配设备地址。(感兴趣的可以看一下USB2.0的协议,主要是第8和9章内容)

三、eMMC工作电压和上电过程

根据工作电压的不同,MMC卡可以分为两类:

High Voltage MultiMediaCard,工作电压为3.3V左右。

Dual Voltage MultiMediaCard,工作电压有两种,1.70V~1.95V和2.7V~3.6V,CPU可以根据需要切换

我所使用的eMMC实测工作电压VCC为2.80V~2.96V,VCCQ为1.70V~1.82V。

其中VCC为MMC Controller/Flash Controller的供电电压,VCCQ为Memory和Controller之间I/O的供电。

上电初始化阶段MMC时钟频率为400KHz,需要等电压调整到它要求的VCC时(host去获取OCR中记录的电压值,上面有说),MMC时钟才会调整到更高的正常工作频率。

相关问答

nandflash norflashmcpflash的区别?

norflash的存储区是连续的支持连续烧录,nand不支持连续烧录,其存储区不是连续的。nor出厂可以保证是好的,不存在坏块;nand可能存在坏块。其他的区别网上可查...

固态硬盘为什么会坏-ZOL问答

1、SSD如果出现坏块是不可修复的。注意SSD硬盘坏块不是所谓的逻辑坏块。SSD硬盘内部是晶体管,损坏后不能恢复,这一点跟传统硬盘不同。但是要搞清楚你的坏块是...

三星也被告了,ZeniMax是不是耍流氓?

TLC即Triple-LevelCell的缩写,是闪存的一种制造工艺,相比SLC闪存每个存储单元只能保存1bit数据,MLC闪存的存储单元可保存2bit,TLC则可保存3bit。TLC利用不同......

关于存储器中内存的问题?

内存是指内部存储,通常和外部存储对应,外部存储指硬盘、U盘、磁带机等可以拆卸的设备。内存通常是计算机主板或主处理器的一部分,不能拆除。只读存储器英文的...

量产是什么意思? - 7jiP0Tin 的回答 - 懂得

产量和量产没有太大的联系给新生产的u盘等装上驱动控制程序的过程叫量产,一般大家所说的量产是给u盘MP3等写入控制程序,而量产工具,量产软件就是用...

A+级芯片是什么意思?

闪存的级别标准是由闪存芯片厂商制订的,目前国内没有国家标准.最优秀的是A+级,然后是A级和B级。在读写次数\速度、功耗等方面,同种规格的A+级的芯片要优于A级...

固态硬盘会有坏道吗?机器忽然死机重启和固态硬盘有关吗?-ZOL问答

固态硬盘用的介质是flash芯片,一样会产生坏块,可以被备用块替换。你可以用hdtune查看ssd的smart信息,如果发生过替换会有记录。有用(0)回复29363319是,松了...

电脑插入U盘,系统不识别,提示要格式化?

三类故障现象。第一类:就是插入U盘后系统提示无法识别的USB设备,这类呢有两个原因第一USB接口氧化导致识别不到,解决方法是将U盘插到电脑的后面板一般可以解决...

苹果mlc是什么意思?

苹果mlc是指苹果公司的MLC闪存存储技术(Multi-LevelCellFlashMemory),是一种基于非易失性存储器(NANDFlash)的技术。MLC闪存相比于原来的SLC(Sing...

为什么SD卡突然不能用了?

1.手机内存卡坏掉或者接触不良造成手机内存卡读不出来。解决办法:如果是接触不良这是很好解决的问题,将卡取出,用橡皮擦擦内存卡的金手指,去掉上面的氧化...

 浓缩铀  吴孟达什么时候走的 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部