CN104267908A - 一种数据存储以及读取的方法及装置 - Google Patents

一种数据存储以及读取的方法及装置 Download PDF

Info

Publication number
CN104267908A
CN104267908A CN201410333907.XA CN201410333907A CN104267908A CN 104267908 A CN104267908 A CN 104267908A CN 201410333907 A CN201410333907 A CN 201410333907A CN 104267908 A CN104267908 A CN 104267908A
Authority
CN
China
Prior art keywords
current data
data
write
order
read
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
Application number
CN201410333907.XA
Other languages
English (en)
Inventor
邱东升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Ingenic Semiconductor Co Ltd
Original Assignee
Beijing Ingenic Semiconductor Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Ingenic Semiconductor Co Ltd filed Critical Beijing Ingenic Semiconductor Co Ltd
Priority to CN201410333907.XA priority Critical patent/CN104267908A/zh
Publication of CN104267908A publication Critical patent/CN104267908A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect

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)
  • Read Only Memory (AREA)

Abstract

本发明涉及通信电子技术领域,尤其涉及一种数据存储以及读取的方法及装置。该方法包括:在接收到随机写命令后,向NandFlash中写入当前数据;在写入所述当前数据后,写入与所述当前数据相对应的校验值;在完成当前数据的写操作后,将下一待写入的数据作为当前数据直到完成所有数据的写入操作。当接收到随机读取命令后,从NandFlash中读取当前数据;读取与所述当前数据对应的校验值;在完成当前数据的读取操作后,将下一待读取的数据作为当前数据直到完成所有数据的读取操作。可见该方法可解决现有技术中存储和读取数据效率低下的问题。

Description

一种数据存储以及读取的方法及装置
技术领域
本发明涉及通信电子技术领域,尤其涉及一种数据存储以及读取的方法及装置。
背景技术
近年来,智能手机,平板电脑等触控设备被越来越多的人使用,为了满足用户的需求这些设备都需要配用较大的内存。目前市场上常用的内存有Nand-flash,Nand-flash以其容量大价格低廉的优势深受开发商的喜爱。如图1所示,在使用Nand-flash中的页Page存储或者读取数据的过程如下:
对Page进行写操作,即数据存储操作:
***在接收到随机写命令WCMD后,使用PNE命令将控制器0和1均衡功能开启,按序在Page中的数据DATA区的空白处写入数据D0,然后使用PND命令将控制器0和1均衡功能关闭;在接到WCMD令后,使用PNE命令开启0,1均衡功能,按序在Page中的OOB区写入数据校验值P0,P0与D0相对应,然后关闭0,1均衡功能,此时一次写操作完成。重复上述写操作过程分别在DATA区和OOB区中分别按序写入D1、D2等数据,以及P0、P1等数据校验值,直到完成所有写操作。
对Page进行读操作,即数据读取操作:
***在接收到随机读命令RCMD后,通过PNE命令将控制器0和1均衡功能开启,从Page中的数据DATA区中读出数据D0,通过PND命令将控制器0和1均衡功能关闭;在接到WCMD令后,通过PNE命令将控制器0和1均衡功能开启,读取Page中的OOB区中的数据的校验值P0,P0与D0相对应,然后关闭0,1均衡功能,此时一次读操作完成。重复上述读操作过程分别在DATA区和OOB区中分别按序读取D1、D2等数据,以及P0、P1等数据校验值,直到完成所有读操作。
但本发明人发现,使用现有技术对Nand-flash中的页Page进行存储或者读取数据时,每一次数据读操作或者写操作都必须发送R/WCMD命令并需要操作PNE/D,因此使得存储和读取数据的效率十分低下。
发明内容
本发明实施例提供一种数据存储以及读取的方法及装置,用于解决现有技术中存储和读取数据效率低下的问题。
一种数据存储的方法,所述方法包括:
在接收到随机写命令后,向NandFlash中写入当前数据;
在写入所述当前数据后,写入与所述当前数据相对应的校验值;
在完成当前数据的写操作后,将下一待写入的数据作为当前数据直到完成所有数据的写入操作。
一种数据读取的方法,所述方法包括:
当接收到随机读取命令后,从NandFlash中读取当前数据;
读取与所述当前数据对应的校验值;
在完成当前数据的读取操作后,将下一待读取的数据作为当前数据直到完成所有数据的读取操作。
可见,使用该方法可在接收到数据的读取或者写命令后直接读取或者写入数据以及与该数据对应的校验值,避免了现有技术中每次读或写的操作都必须发送R/WCMD命令并需要进行PNE/D操作,而导致的读写效率低下的问题。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为现有技术中存储数据的页结构;
图2为本发明实施例提供的存储数据的页结构;
图3为本发明实施例一提供的一种存储数据的方法流程图;
图4为本发明实施例二提供的一种读取数据的方法流程图;
图5为本发明实施例提供的一种存储数据的装置结构图;
图6为本发明实施例提供的一种读取数据的装置结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。
使用本发明实施例提供的方法可在接收到数据的读取或者写命令后直接读取或者写入数据以及与该数据对应的校验值,避免了现有技术中每次读或写的操作都必须发送R/WCMD命令并需要进行PNE/D操作,而导致的写效率低下的问题。如图2所示,本发明实施例提供的写入数据的方法如下:
步骤21,在接收到随机写命令后,向NandFlash中写入当前数据;
步骤22,在写入所述当前数据后,写入与所述当前数据相对应的校验值;
步骤23,在完成当前数据的写操作后,将下一待写入的数据作为当前数据直到完成所有数据的写入操作。
其中所述向NandFlash中写入当前数据包括:
按序向NandFlash中的空白页的空白位置写入所述当前数据。此时所述写入与所述当前数据相对应的校验值包括:
在紧邻写入所述当前数据之后的空白位置写入与所述当前数据相对应的校验值。
具体的,在接到所述随机写命令后、且在向NandFlash中写入当前数据之前,进一步包括:
使用PNE命令将控制器0和1均衡功能开启。此时在写入与所述当前数据相对应的校验值之后、且在写入下一数据之前,进一步包括:使用PND命令将控制器0和1均衡功能关闭。
使用本发明实施例提供的方法可在接收到读取命令后直接读取数据以及与该数据对应的校验值,避免了现有技术中每次读操作都必须发送RCMD命令并需要进行PNE/D操作,而导致的读效率低下的问题。如图3所示,本发明实施例提供的读取数据的方法如下:
步骤31,当接收到随机读取命令后,从NandFlash中读取当前数据;
步骤32,读取与所述当前数据对应的校验值;
步骤33,在完成当前数据的读取操作后,将下一待读取的数据作为当前数据直到完成所有数据的读取操作。
具体的,在所述当接收到随机读取命令后、且在所述从NandFlash中读取当前数据之前,进一步包括:
使用PNE命令将控制器0和1均衡功能开启;此时在所述读取与所述当前数据对应的校验值后、且在所述读取下一数据之前进一步包括:
使用PND命令将控制器0和1均衡功能关闭。
以下以具体实施例说明:
实施例一:
本发明实施例提供一种数据存储的方法,该方法可在接收到数据的随机写命令后直接写入数据以及与该数据对应的校验值,避免了现有技术中每次写操作都必须发送RCMD命令并需要进行PNE/D操作,而导致的写效率低下,参考图4所示,具体过程如下:
步骤一,在接收到随机写命令WCMD后,使用PNE命令将控制器0和1均衡功能开启;
步骤二,向NandFlash中写入当前数据D0;
具体的本步骤中包括按序向NandFlash中的空白页的空白位置写入所述当前数据D0;
步骤三,在写入所述当前数据后,写入与所述当前数据相对应的校验值;
具体的本步骤包括:在紧邻写入所述当前数据D0之后的空白位置写入与所述当前数据相对应的校验值P0;
步骤四,使用PND命令将控制器0和1均衡功能关闭;
步骤五,在完成当前数据D0的写操作后,将下一待写入的数据D1作为当前数据直到完成所有数据的写入操作。
可见,使用本发明实施例提供的方法可在接收到数据的读取或者写命令后直接读取或者写入数据以及与该数据对应的校验值,避免了现有技术中每次读或写的操作都必须发送R/WCMD命令并需要进行PNE/D操作,而导致的写效率低下的问题。
实施例二:
本发明实施例二在实施例一的基础之上可将数据顺利读出,并降低读取数据时所需的时间,一条高数据读取的效率,具体过程如下:
步骤A,当接收到随机读取命令RCMD后,使用PNE命令将控制器0和1均衡功能开启;
步骤B,从NandFlash中读取当前数据D0;
步骤C,读取与所述当前数据D0对应的校验值P0;
步骤D,使用PND命令将控制器0和1均衡功能关闭;
步骤E,在完成当前数据D0的读取操作后,将下一待读取的数据D1作为当前数据直到完成所有数据的读取操作。
使用本发明实施例提供的方法可在接收到读取命令后直接读取数据以及与该数据对应的校验值,避免了现有技术中每次读操作都必须发送RCMD命令并需要进行PNE/D操作,而导致的读效率低下的问题。
如图5所示,本发明实施例提供一种数据存储的装置,所述装置包括:
写入单元51,用于在接收到随机写命令后,向NandFlash中写入当前数据;在写入所述当前数据后,写入与所述当前数据相对应的校验值;
写操作单元53,用于在完成当前数据的写操作后,将下一待写入的数据作为当前数据直到完成所有数据的写入操作。
所述写入单元51具体用于:
按序向NandFlash中的空白页的空白位置写入所述当前数据;在紧邻写入所述当前数据之后的空白位置写入与所述当前数据相对应的校验值。
所述装置还包括:
第一开启关闭单元52,用于使用PNE命令将控制器0和1均衡功能的开启或者关闭。
如图6所示,一种数据读取的装置,所述装置还包括:
读取单元,用于当接收到随机读取命令后,从NandFlash中读取当前数据;
读取与所述当前数据对应的校验值;
读操作单元,用于在完成当前数据的读取操作后,将下一待读取的数据作为当前数据直到完成所有数据的读取操作。
所述装置还包括:
第二开启关闭单元,用于使用PNE命令将控制器0和1均衡功能开启或者关闭。
综上所述,有益效果:
使用该方法可在接收到数据的读取或者写命令后直接读取或者写入数据以及与该数据对应的校验值,避免了现有技术中每次读或写的操作都必须发送R/WCMD命令并需要进行PNE/D操作,而导致的读写效率低下的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据存储的方法,其特征在于,所述方法包括:
在接收到随机写命令后,向NandFlash中写入当前数据;
在写入所述当前数据后,写入与所述当前数据相对应的校验值;
在完成当前数据的写操作后,将下一待写入的数据作为当前数据直到完成所有数据的写入操作。
2.如权利要求1所述的方法,其特征在于,所述向NandFlash中写入当前数据包括:
按序向NandFlash中的空白页的空白位置写入所述当前数据;
所述写入与所述当前数据相对应的校验值包括:
在紧邻写入所述当前数据之后的空白位置写入与所述当前数据相对应的校验值。
3.如权利要求1所述的方法,其特征在于,在接到所述随机写命令后、且在向NandFlash中写入当前数据之前,进一步包括:
使用PNE命令将控制器0和1均衡功能开启;
在写入与所述当前数据相对应的校验值之后、且在写入下一数据之前,进一步包括:
使用PND命令将控制器0和1均衡功能关闭。
4.一种数据读取的方法,其特征在于,所述方法包括:
当接收到随机读取命令后,从NandFlash中读取当前数据;
读取与所述当前数据对应的校验值;
在完成当前数据的读取操作后,将下一待读取的数据作为当前数据直到完成所有数据的读取操作。
5.如权利要求4所述的方法,其特征在于,在所述当接收到随机读取命令后、且在所述从NandFlash中读取当前数据之前,进一步包括:
使用PNE命令将控制器0和1均衡功能开启;
在所述读取与所述当前数据对应的校验值后、且在所述读取下一数据之前进一步包括:
使用PND命令将控制器0和1均衡功能关闭。
6.一种数据存储的装置,其特征在于,所述装置包括:
写入单元,用于在接收到随机写命令后,向NandFlash中写入当前数据;在写入所述当前数据后,写入与所述当前数据相对应的校验值;
写操作单元,用于在完成当前数据的写操作后,将下一待写入的数据作为当前数据直到完成所有数据的写入操作。
7.如权利要求6所述的装置,其特征在于,所述写入单元具体用于:
按序向NandFlash中的空白页的空白位置写入所述当前数据;在紧邻写入所述当前数据之后的空白位置写入与所述当前数据相对应的校验值。
8.如权利要求6所述的方法,其特征在于,所述装置还包括:
第一开启关闭单元,用于使用PNE命令将控制器0和1均衡功能的开启或者关闭。
9.一种数据读取的装置,其特征在于,所述装置还包括:
读取单元,用于当接收到随机读取命令后,从NandFlash中读取当前数据;
读取与所述当前数据对应的校验值;
读操作单元,用于在完成当前数据的读取操作后,将下一待读取的数据作为当前数据直到完成所有数据的读取操作。
10.如权利要求9所述的方法,其特征在于,所述装置还包括:
第二开启关闭单元,用于使用PNE命令将控制器0和1均衡功能开启或者关闭。
CN201410333907.XA 2014-07-14 2014-07-14 一种数据存储以及读取的方法及装置 Pending CN104267908A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410333907.XA CN104267908A (zh) 2014-07-14 2014-07-14 一种数据存储以及读取的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410333907.XA CN104267908A (zh) 2014-07-14 2014-07-14 一种数据存储以及读取的方法及装置

Publications (1)

Publication Number Publication Date
CN104267908A true CN104267908A (zh) 2015-01-07

Family

ID=52159434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410333907.XA Pending CN104267908A (zh) 2014-07-14 2014-07-14 一种数据存储以及读取的方法及装置

Country Status (1)

Country Link
CN (1) CN104267908A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562563A (zh) * 2016-07-01 2018-01-09 龙芯中科技术有限公司 Nand Flash控制方法和装置
CN112347007A (zh) * 2020-10-14 2021-02-09 歌尔科技有限公司 闪存数据保护方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101162449A (zh) * 2007-10-08 2008-04-16 福州瑞芯微电子有限公司 Nand flash控制器及其与nand flash芯片的数据交互方法
CN101324862A (zh) * 2008-05-05 2008-12-17 青岛海信电器股份有限公司 闪存存储管理方法
CN101364166A (zh) * 2008-09-23 2009-02-11 杭州华三通信技术有限公司 将2048字节页的Nand Flash模拟成硬盘的方法和装置
CN101882119A (zh) * 2009-05-08 2010-11-10 炬力集成电路设计有限公司 与非型闪存控制器及其数据传输方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101162449A (zh) * 2007-10-08 2008-04-16 福州瑞芯微电子有限公司 Nand flash控制器及其与nand flash芯片的数据交互方法
CN101324862A (zh) * 2008-05-05 2008-12-17 青岛海信电器股份有限公司 闪存存储管理方法
CN101364166A (zh) * 2008-09-23 2009-02-11 杭州华三通信技术有限公司 将2048字节页的Nand Flash模拟成硬盘的方法和装置
CN101882119A (zh) * 2009-05-08 2010-11-10 炬力集成电路设计有限公司 与非型闪存控制器及其数据传输方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562563A (zh) * 2016-07-01 2018-01-09 龙芯中科技术有限公司 Nand Flash控制方法和装置
CN112347007A (zh) * 2020-10-14 2021-02-09 歌尔科技有限公司 闪存数据保护方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN107844431B (zh) 映射表更新方法、存储器控制电路单元与存储器存储装置
CN105593942B (zh) 非易失性存储器装置中的易失性存储器架构及相关控制器
CN105786411B (zh) 非易失性存储器装置的操作方法
US9880742B2 (en) Valid data merging method, memory controller and memory storage apparatus
US9058256B2 (en) Data writing method, memory controller and memory storage apparatus
CN104268095A (zh) 一种存储器及基于该存储器进行数据读/写操作的方法
CN105278875B (zh) 一种混合异构nand固态硬盘
US8775760B2 (en) Modifying a host interface setting for a non-volatile memory module
US20150235706A1 (en) Data transmitting method, memory control circuit unit and memory storage apparatus
US20170286216A1 (en) Energy efficient read/write support for a protected memory
CN102214143A (zh) 一种多层单元闪存的管理方法、装置及存储设备
WO2015020900A3 (en) Method and device for error correcting code (ecc) error handling
CN103853503A (zh) 存储设备、快闪存储器、以及操作所述存储设备的方法
JP2015525398A5 (zh)
CN106372011A (zh) 用于pcie ssd控制器的高性能主机队列监控器
CN103258173A (zh) 穿戴式设备、用于卡的写入***和写入方法
CN105068683A (zh) 一种智能笔记板及工作方法和即时记录***及工作方法
CN104078078B (zh) 一种基于半浮栅存储器的读写控制电路
CN113885808B (zh) 映射信息记录方法以及存储器控制电路单元与存储装置
CN109213688A (zh) 存储器设备中的读取和编程操作
CN103488572A (zh) 数据储存装置及数据清除方法
CN104267908A (zh) 一种数据存储以及读取的方法及装置
US9760509B2 (en) Memory storage device and control method thereof and memory control circuit unit and module
CN104750621A (zh) 缓存方法及控制***
CN104598453A (zh) 基于数据缓冲的数据迁移方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150107

WD01 Invention patent application deemed withdrawn after publication