CN107102821A - 一种nand flash阵列写失败的处理方法 - Google Patents
一种nand flash阵列写失败的处理方法 Download PDFInfo
- Publication number
- CN107102821A CN107102821A CN201710266509.4A CN201710266509A CN107102821A CN 107102821 A CN107102821 A CN 107102821A CN 201710266509 A CN201710266509 A CN 201710266509A CN 107102821 A CN107102821 A CN 107102821A
- Authority
- CN
- China
- Prior art keywords
- nand flash
- write
- page
- failure
- processing method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明特别涉及一种NAND FLASH阵列写失败的处理方法。该NAND FLASH阵列写失败的处理方法,当NAND FLASH阵列在写过程中出现写错误时,从备用块RAM表中查找一个可替换块的地址,并将数据搬移到新的替换块中。该NAND FLASH阵列写失败的处理方法,能够实现NAND FLASH阵列坏块的替换及数据搬移,保证了数据的完整。
Description
技术领域
本发明涉及高速大容量存储技术领域,特别涉及一种NAND FLASH阵列写失败的处理方法。
背景技术
NAND FLASH作为一种新兴的存储设备,由于存储容量大及成本低等特点,在许多领域已经替代了NOR FLASH。但是由于NAND FLASH的特性,NAND FLASH存储经常会出现坏块,导致数据无法写入。
基于上述情况,本发明提出了一种NAND FLASH阵列写失败的处理方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的NAND FLASH阵列写失败的处理方法。
本发明是通过如下技术方案实现的:
一种NAND FLASH阵列写失败的处理方法,其特征在于:当NAND FLASH阵列在写过程中出现写错误时,从备用块RAM表中查找一个可替换块的地址,并将数据搬移到新的替换块中。
所述NAND FLASH阵列写失败的处理方法,包括以下步骤:
(1)首先,当NAND FLASH阵列出现写错误时,Page计数器指针初始化为0,并记录当前出错时NAND FLASH的写入Page地址;
(2)根据NAND FLASH阵列的行列号,确定出现错误的NAND FLASH,并从对应的备用块RAM表中查找替换块,确定新的BLOCK地址;
(3)向出错的NAND FLASH发送读Cache命令,将未写入NAND FLASH中的数据写入RAM中保存下来;
(4)判读当前的Page指针是否等于出错时的Page地址,如果不相等,则发送CopyBackRead命令,读取Page指针对应地址的数据到Cache中,然后通过CopyBack Write命令将Cache数据写入新的BLOCK 对应Page指针的地址,然后Page指针加1,继续判断Page指针是否等于出错时的Page地址;如果Page指针等于出错时的Page地址,则将RAM中保存的内容通过普通写命令写入新的BLOCK的对应Page地址,否则继续执行相应的CopyBack命令进行数据搬移。
所述步骤(3)中,RAM大小须能存储NAND FLASH Cache内容。
本发明的有益效果是:该NAND FLASH阵列写失败的处理方法,能够实现NANDFLASH阵列坏块的替换及数据搬移,保证了数据的完整。
附图说明
附图1为本发明NAND FLASH阵列写失败的处理方法示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图和实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
该NAND FLASH阵列写失败的处理方法,当NAND FLASH阵列在写过程中出现写错误时,从备用块RAM表中查找一个可替换块的地址,并将数据搬移到新的替换块中。
该NAND FLASH阵列写失败的处理方法,包括以下步骤:
(1)首先,当NAND FLASH阵列出现写错误时,Page计数器指针初始化为0,并记录当前出错时NAND FLASH的写入Page地址;
(2)根据NAND FLASH阵列的行列号,确定出现错误的NAND FLASH,并从对应的备用块RAM表中查找替换块,确定新的BLOCK地址;
(3)向出错的NAND FLASH发送读Cache命令,将未写入NAND FLASH中的数据写入RAM中保存下来;
(4)判读当前的Page指针是否等于出错时的Page地址,如果不相等,则发送CopyBackRead命令,读取Page指针对应地址的数据到Cache中,然后通过CopyBack Write命令将Cache数据写入新的BLOCK 对应Page指针的地址,然后Page指针加1,继续判断Page指针是否等于出错时的Page地址;如果Page指针等于出错时的Page地址,则将RAM中保存的内容通过普通写命令写入新的BLOCK的对应Page地址,否则继续执行相应的CopyBack命令进行数据搬移。
所述步骤(3)中,RAM大小须能存储NAND FLASH Cache内容。
Claims (3)
1.一种NAND FLASH阵列写失败的处理方法,其特征在于:当NAND FLASH阵列在写过程中出现写错误时,从备用块RAM表中查找一个可替换块的地址,并将数据搬移到新的替换块中。
2.根据权利要求1所述的NAND FLASH阵列写失败的处理方法,其特征在于,包括以下步骤:
(1)首先,当NAND FLASH阵列出现写错误时,Page计数器指针初始化为0,并记录当前出错时NAND FLASH的写入Page地址;
(2)根据NAND FLASH阵列的行列号,确定出现错误的NAND FLASH,并从对应的备用块RAM表中查找替换块,确定新的BLOCK地址;
(3)向出错的NAND FLASH发送读Cache命令,将未写入NAND FLASH中的数据写入RAM中保存下来;
(4)判读当前的Page指针是否等于出错时的Page地址,如果不相等,则发送CopyBackRead命令,读取Page指针对应地址的数据到Cache中,然后通过CopyBack Write命令将Cache数据写入新的BLOCK 对应Page指针的地址,然后Page指针加1,继续判断Page指针是否等于出错时的Page地址;如果Page指针等于出错时的Page地址,则将RAM中保存的内容通过普通写命令写入新的BLOCK的对应Page地址,否则继续执行相应的CopyBack命令进行数据搬移。
3.根据权利要求2所述的NAND FLASH阵列写失败的处理方法,其特征在于:所述步骤(3)中,RAM大小须能存储NAND FLASH Cache内容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710266509.4A CN107102821A (zh) | 2017-04-21 | 2017-04-21 | 一种nand flash阵列写失败的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710266509.4A CN107102821A (zh) | 2017-04-21 | 2017-04-21 | 一种nand flash阵列写失败的处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107102821A true CN107102821A (zh) | 2017-08-29 |
Family
ID=59657070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710266509.4A Pending CN107102821A (zh) | 2017-04-21 | 2017-04-21 | 一种nand flash阵列写失败的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107102821A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920293A (zh) * | 2018-06-28 | 2018-11-30 | 郑州云海信息技术有限公司 | 固态硬盘写失败的处理方法和固态硬盘 |
CN109002265A (zh) * | 2018-07-26 | 2018-12-14 | 浪潮电子信息产业股份有限公司 | 一种数据处理的方法以及相关装置 |
CN109857347A (zh) * | 2019-03-05 | 2019-06-07 | 广东省气象探测数据中心 | 基于flash的内嵌式地面气象数据可靠固化方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063380A (zh) * | 2010-12-31 | 2011-05-18 | 北京握奇数据系统有限公司 | 一种向非易失性存储器写入数据的方法及装置 |
CN102331911A (zh) * | 2011-06-17 | 2012-01-25 | 杭州华三通信技术有限公司 | 用于文件系统向Nand Flash写数据的驱动装置及方法 |
CN104166627A (zh) * | 2014-09-02 | 2014-11-26 | 科大智能电气技术有限公司 | 一种基于单片机的nand-flash写操作方法 |
CN104765695A (zh) * | 2015-04-03 | 2015-07-08 | 上海交通大学 | 一种nand flash坏块管理系统及方法 |
CN104794019A (zh) * | 2015-04-17 | 2015-07-22 | 深圳市江波龙电子有限公司 | 一种嵌入式存储器的数据保护方法及装置 |
CN105740163A (zh) * | 2016-01-29 | 2016-07-06 | 山东鲁能智能技术有限公司 | 一种Nand Flash坏块管理方法 |
-
2017
- 2017-04-21 CN CN201710266509.4A patent/CN107102821A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063380A (zh) * | 2010-12-31 | 2011-05-18 | 北京握奇数据系统有限公司 | 一种向非易失性存储器写入数据的方法及装置 |
CN102331911A (zh) * | 2011-06-17 | 2012-01-25 | 杭州华三通信技术有限公司 | 用于文件系统向Nand Flash写数据的驱动装置及方法 |
CN104166627A (zh) * | 2014-09-02 | 2014-11-26 | 科大智能电气技术有限公司 | 一种基于单片机的nand-flash写操作方法 |
CN104765695A (zh) * | 2015-04-03 | 2015-07-08 | 上海交通大学 | 一种nand flash坏块管理系统及方法 |
CN104794019A (zh) * | 2015-04-17 | 2015-07-22 | 深圳市江波龙电子有限公司 | 一种嵌入式存储器的数据保护方法及装置 |
CN105740163A (zh) * | 2016-01-29 | 2016-07-06 | 山东鲁能智能技术有限公司 | 一种Nand Flash坏块管理方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920293A (zh) * | 2018-06-28 | 2018-11-30 | 郑州云海信息技术有限公司 | 固态硬盘写失败的处理方法和固态硬盘 |
CN109002265A (zh) * | 2018-07-26 | 2018-12-14 | 浪潮电子信息产业股份有限公司 | 一种数据处理的方法以及相关装置 |
CN109002265B (zh) * | 2018-07-26 | 2021-12-17 | 浪潮电子信息产业股份有限公司 | 一种数据处理的方法以及相关装置 |
CN109857347A (zh) * | 2019-03-05 | 2019-06-07 | 广东省气象探测数据中心 | 基于flash的内嵌式地面气象数据可靠固化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9436609B2 (en) | Block addressing for parallel memory arrays | |
US20170344423A1 (en) | Data storage device and data access-method | |
US11010289B2 (en) | Data storage device and operating method thereof | |
CN103279424A (zh) | 一种Nand Flash的坏列管理装置和方法 | |
US20120117444A1 (en) | Method Of Storing Blocks Of Data In A Plurality Of Memory Devices In A Redundant Manner, A Memory Controller And A Memory System | |
CN107102821A (zh) | 一种nand flash阵列写失败的处理方法 | |
US12066930B2 (en) | Managing power loss recovery using an oldest section write policy for an address mapping table in a memory sub-system | |
US11966582B2 (en) | Data storage device that detects and releases bottlenecks | |
CN107291625B (zh) | 一种用于Nand Flash的指针式逻辑地址映射表实现方法 | |
US20170256328A1 (en) | Dynamic-shifting redundancy mapping for non-volatile data storage | |
US20170004095A1 (en) | Memory Control Circuit and Storage Device | |
US11640253B2 (en) | Method to use flat relink table in HMB | |
US20170185478A1 (en) | Memory controller, storage apparatus, information processing system, and memory controller control method | |
CN103577346A (zh) | 存储器控制方法及存储器控制电路 | |
CN108519858B (zh) | 存储芯片硬件命中方法 | |
CN100492323C (zh) | 对缓存内容进行保护的方法和装置以及缓存控制器 | |
CN110597741B (zh) | 一种l2p表的读写、更新方法及l2p表 | |
US11928353B2 (en) | Multi-page parity data storage in a memory device | |
CN101178933A (zh) | 一种闪存阵列装置 | |
US11698746B1 (en) | Journal scheme for a memory sub-system | |
US20220342584A1 (en) | Data Parking for ZNS Devices | |
US20230315296A1 (en) | Aligned And Unaligned Data Deallocation | |
US20210333996A1 (en) | Data Parking for SSDs with Streams | |
US11138066B1 (en) | Parity swapping to DRAM | |
US20130246687A1 (en) | Data writing method, memory controller and memory storage apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170829 |
|
RJ01 | Rejection of invention patent application after publication |