CN103076995B - NandFlash的数据处理方法及装置 - Google Patents

NandFlash的数据处理方法及装置 Download PDF

Info

Publication number
CN103076995B
CN103076995B CN201210592160.0A CN201210592160A CN103076995B CN 103076995 B CN103076995 B CN 103076995B CN 201210592160 A CN201210592160 A CN 201210592160A CN 103076995 B CN103076995 B CN 103076995B
Authority
CN
China
Prior art keywords
data
nandflash
compressed
stored
direct memory
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.)
Active
Application number
CN201210592160.0A
Other languages
English (en)
Other versions
CN103076995A (zh
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.)
Shenzhen SiliconGo Semiconductor Co., Ltd.
Original Assignee
SHENZHEN SILICONGO 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 SHENZHEN SILICONGO SEMICONDUCTOR CO Ltd filed Critical SHENZHEN SILICONGO SEMICONDUCTOR CO Ltd
Priority to CN201210592160.0A priority Critical patent/CN103076995B/zh
Publication of CN103076995A publication Critical patent/CN103076995A/zh
Application granted granted Critical
Publication of CN103076995B publication Critical patent/CN103076995B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种NandFlash的数据处理方法及装置,所述NandFlash的数据处理方法包括以下步骤:获取外部存储设备中所存储的数据;检测所述数据中是否存在能被压缩的数据包;若是,则将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;若否,则将所述数据存储至NandFlash当中。本发明提高了NandFlash写入的数据量,从而减少了NandFlash擦除的次数,进而延长了NandFlash使用寿命。<!--1-->

Description

NandFlash的数据处理方法及装置
技术领域
本发明涉及通讯技术领域,特别涉及一种NandFlash的数据处理方法及装置。
背景技术
目前主控管理NandFlash包括读写操作,其中写操作是指采用软件控制外部存储设备的接口接收数据,并启动DMA传输到DMABUFF,再由软件控制主控经过ECC编码启动DMA将DMABUFF接收到的数据包和算法管理的表格数据传输至NandFlash中,并在NandFlash中进行存储。由于外部存储设备内所存储的数据中存在可以压缩的数据包,但在存储至NandFlash的过程中未经过打包处理,因此使得存储至NandFlash的数据较大,导致NandFlash写入的数据量较低,NandFlash的擦除次数较高,从而影响NandFlash的使用寿命。
发明内容
本发明的主要目的在于提供一种NandFlash的数据处理方法,旨在提高NandFlash写入的数据量,减少NandFlash擦除的次数,延长NandFlash的使用寿命。
为了实现发明目的,本发明提供一种NandFlash的数据处理方法,该NandFlash的数据处理方法包括以下步骤:
获取外部存储设备中所存储的数据;
检测所述数据中是否存在能被压缩的数据包;
若是,则将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;
若否,则将所述数据存储至NandFlash当中。
优选地,所述获取外部存储设备中所存储的数据具体为:通过直接内存访问的方式将所述数据传输至直接存储器的缓存中。
优选地,所述将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中步骤包括:
将能被压缩的数据包在压缩表格中添加一项对应的压缩数据项,并更新算法表格;
通过直接内存访问的方式将所述压缩表格、算法表格及直接存储器的缓存中的数据均存储至NandFlash当中。
优选地,所述NandFlash的数据处理方法还包括:
通过直接内存访问的方式读取算法表格和压缩表格,并将NandFlash中所存储的未被压缩的数据存储至直接存储器的缓存中;
根据所读取的算法表格将所述压缩表格中的被压缩的数据包解压,并将解压后的数据存储至直接存储器的缓存中;
通过直接内存访问的方式将所述直接存储器的缓存中的数据传输至外部存储设备当中。
本发明还提供一种NandFlash的数据处理装置,该NandFlash的数据处理装置包括获取模块、检测模块和处理模块,其中,
获取模块,用于获取外部存储设备中所存储的数据;
检测模块,用于检测所述数据中是否存在能被压缩的数据包;
若是,则由所述处理模块将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;
若否,则由所述处理模块将所述数据存储至NandFlash当中。
优选地,所述获取模块用于通过直接内存访问的方式将所述数据传输至直接存储器的缓存中。
优选地,所述处理模块包括:
更新单元,用于将能被压缩的数据包在压缩表格中添加一项对应的压缩数据项,并更新算法表格;
存储单元,用于通过直接内存访问的方式将所述压缩表格、算法表格及直接存储器的缓存中的数据均存储至NandFlash当中。
优选地,所述NandFlash的数据处理装置还包括:
读取模块,用于通过直接内存访问的方式读取算法表格和压缩表格,并将NandFlash中所存储的未被压缩的数据存储至直接存储器的缓存中;
解压模块,用于根据所读取的算法表格将所述压缩表格中的被压缩的数据包解压,并将解压后的数据存储至直接存储器的缓存中;
传输模块,用于通过直接内存访问的方式将所述直接存储器的缓存中的数据传输至外部存储设备当中。
本发明通过检测外部存储设备中所存储的数据进行是否能被压缩,并将不能被压缩的数据包直接存储至NandFlash当中,将能被压缩的数据包进行压缩后再存储至NandFlash当中。由于压缩后的数据的减小了存储的空间量,因此提高了NandFlash写入的数据量,从而减少了NandFlash擦除的次数,进而延长了NandFlash使用寿命。
附图说明
图1为本发明NandFlash的数据处理方法一实施例的流程示意图;
图2为本发明NandFlash的数据处理方法一实施例中对存在能被压缩的数据包的数据处理的流程示意图;
图3为本发明NandFlash的数据处理方法另一实施例的流程示意图;
图4为本发明NandFlash的数据处理装置一实施例的结构示意图;
图5为图4中处理模块的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明NandFlash的数据处理方法一实施例的流程示意图。本实施例提供的NandFlash的数据处理方法包括以下步骤:
步骤S10,获取外部存储设备中所存储的数据;
本实施例中,外部存储设备为具有储存空间电子设备,如U盘等。具体地,可通过直接内存访问的方式(DMA)将外部存储设备中所存储的数据传输至直接存储器的缓存(DMABUFF)中。
步骤S20,检测数据中是否存在能被压缩的数据包;若是,则执行步骤S30,否则执行步骤S40;
步骤S30,将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;
步骤S40,将数据存储至NandFlash当中。
本实施例中,外部存储设备中所存储的数据包括能被压缩的数据包和不能被压缩的数据包,在通过直接内存访问的方式将外部存储设备中所存储的数据传输至直接存储器的缓存中的传输过程中,可设置一检测模块,检测正在传输的数据包是否能够被压缩。在传输完成后,若存在能够被压缩的数据包,则将数据包压缩,然后将压缩后的数据和不能被压缩的数据一并传输至NandFlash中进行储存。若不存在能够被压缩的数据包,则将获取的数据传输至NandFlash中进行存储。
本发明通过检测外部存储设备中所存储的数据进行是否能被压缩,并将不能被压缩的数据包直接存储至NandFlash当中,将能被压缩的数据包进行压缩后再存储至NandFlash当中。由于压缩后的数据的减小了存储的空间量,因此提高了NandFlash写入的数据量,从而减少了NandFlash擦除的次数,进而延长了NandFlash使用寿命。
参照图2,图2为本发明NandFlash的数据处理方法一实施例中对存在能被压缩的数据包的数据处理的流程示意图。基于上述实施例,本实施例中上述步骤S30包括:
步骤S31,将能被压缩的数据包在压缩表格中添加一项对应的压缩数据项,并更新算法表格;
步骤S32,通过直接内存访问的方式将所述压缩表格、算法表格及直接存储器的缓存中的数据均存储至NandFlash当中。
参照图3,图3为本发明NandFlash的数据处理方法另一实施例的流程示意图。基于上述实施例,本实施例提供的NandFlash的数据处理方法还包括:
步骤S50,通过直接内存访问的方式读取算法表格和压缩表格,并将NandFlash中所存储的未被压缩的数据存储至直接存储器的缓存中;
步骤S60,根据所读取的算法表格将所述压缩表格中的被压缩的数据包解压,并将解压后的数据存储至直接存储器的缓存中;
步骤S70,通过直接内存访问的方式将所述直接存储器的缓存中的数据传输至外部存储设备当中。
当执行完上述步骤S30或步骤S40后,即完成了NandFlash对数据的写操作。本实施例中,将完成对NandFlash内数据的读取操作。具体地,首先通过启动DMA从NandFlash中读取算法表格和压缩表格,然后查找压缩数据项中的压缩地址,并根据算法表格中定义的算法将被压缩的数据包解压,将解压后的数据存储至直接存储器的缓存中。同时将NandFlash内未被压缩的数据通过直接内存访问的方式传输至直接存储器,并在直接存储器的缓存中进行暂存。最后通过启动DMA,将直接存储器的缓存中的数据传输至外部存储设备当中,从而完成对NandFlash内数据的读取操作。
本发明还提供一种NandFlash的数据处理装置,用于实现上述方法。参照图4,图4为本发明NandFlash的数据处理装置一实施例的结构示意图。本实施例提供的NandFlash的数据处理装置包括获取模块100、检测模块200和处理模块300,其中,
获取模块100,用于获取外部存储设备中所存储的数据;
本实施例中,外部存储设备为具有储存空间电子设备,如U盘等。具体地,获取模块100可通过直接内存访问的方式(DMA)将外部存储设备中所存储的数据传输至直接存储器的缓存(DMABUFF)中。
检测模块200,用于检测数据中是否存在能被压缩的数据包;
若是,则由处理模块300将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;
若否,则由处理模块300将所述数据存储至NandFlash当中。
本实施例中,外部存储设备中所存储的数据包括能被压缩的数据包和不能被压缩的数据包,在通过直接内存访问的方式将外部存储设备中所存储的数据传输至直接存储器的缓存中的传输过程中,可设置一检测模块200,由该检测模块200检测正在传输的数据包是否能够被压缩。在传输完成后,若存在能够被压缩的数据包,则由处理模块300将数据包压缩,然后将压缩后的数据和不能被压缩的数据一并传输至NandFlash中进行储存。若不存在能够被压缩的数据包,则由处理模块300将获取的数据传输至NandFlash中进行存储。
本发明通过检测模块200检测外部存储设备中所存储的数据进行是否能被压缩,并由处理模块300将不能被压缩的数据包直接存储至NandFlash当中,将能被压缩的数据包进行压缩后再存储至NandFlash当中。由于压缩后的数据的减小了存储的空间量,因此提高了NandFlash写入的数据量,从而减少了NandFlash擦除的次数,进而延长了NandFlash使用寿命。
结合参照图5,图5为图4中处理模块的结构示意图。本实施例中,上述处理模块300包括:
更新单元301,用于将能被压缩的数据包在压缩表格中添加一项对应的压缩数据项,并更新算法表格;
存储单元302,用于通过直接内存访问的方式将所述压缩表格、算法表格及直接存储器的缓存中的数据均存储至NandFlash当中。
基于上述实施例,本实施例中,上述NandFlash的数据处理装置还包括:
读取模块400,用于通过直接内存访问的方式读取算法表格和压缩表格,并将NandFlash中所存储的未被压缩的数据存储至直接存储器的缓存中;
解压模块500,用于根据所读取的算法表格将所述压缩表格中的被压缩的数据包解压,并将解压后的数据存储至直接存储器的缓存中;
传输模块600,用于通过直接内存访问的方式将所述直接存储器的缓存中的数据传输至外部存储设备当中。
当上述处理模块300执行完将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中或将所述数据存储至NandFlash当中后,即完成了NandFlash对数据的写操作。本实施例中,将完成对NandFlash内数据的读取操作。具体地,首先由读取模块400通过启动DMA从NandFlash中读取算法表格和压缩表格,然后由解压模块500查找压缩数据项中的压缩地址,并根据算法表格中定义的算法将被压缩的数据包解压,将解压后的数据存储至直接存储器的缓存中。同时读取模块40还将NandFlash内未被压缩的数据通过直接内存访问的方式传输至直接存储器,并在直接存储器的缓存中进行暂存。最后由传输模块600通过启动DMA,将直接存储器的缓存中的数据传输至外部存储设备当中,从而完成对NandFlash内数据的读取操作。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (4)

1.一种NandFlash的数据处理方法,其特征在于,包括以下步骤:
获取外部存储设备中所存储的数据;
检测所述数据中是否存在能被压缩的数据包;
若是,则将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;
若否,则将所述数据存储至NandFlash当中;
所述获取外部存储设备中所存储的数据具体为:通过直接内存访问的方式将所述数据传输至直接存储器的缓存中;
所述将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中步骤包括:
将能被压缩的数据包在压缩表格中添加一项对应的压缩数据项,并更新算法表格;
通过直接内存访问的方式将所述压缩表格、算法表格及直接存储器的缓存中的数据均存储至NandFlash当中。
2.如权利要求1所述NandFlash的数据处理方法,其特征在于,所述NandFlash的数据处理方法还包括:
通过直接内存访问的方式读取算法表格和压缩表格,并将NandFlash中所存储的未被压缩的数据存储至直接存储器的缓存中;
根据所读取的算法表格将所述压缩表格中的被压缩的数据包解压,并将解压后的数据存储至直接存储器的缓存中;
通过直接内存访问的方式将所述直接存储器的缓存中的数据传输至外部存储设备当中。
3.一种NandFlash的数据处理装置,其特征在于,包括获取模块、检测模块和处理模块,其中,
获取模块,用于获取外部存储设备中所存储的数据;
检测模块,用于检测所述数据中是否存在能被压缩的数据包;
若是,则由所述处理模块将能被压缩的数据包进行压缩,并将压缩后的数据和不能压缩的数据均存储至NandFlash当中;
若否,则由所述处理模块将所述数据存储至NandFlash当中;
所述获取模块用于通过直接内存访问的方式将所述数据传输至直接存储器的缓存中;
所述处理模块包括:
更新单元,用于将能被压缩的数据包在压缩表格中添加一项对应的压缩数据项,并更新算法表格;
存储单元,用于通过直接内存访问的方式将所述压缩表格、算法表格及直接存储器的缓存中的数据均存储至NandFlash当中。
4.如权利要求3所述NandFlash的数据处理装置,其特征在于,所述NandFlash的数据处理装置还包括:
读取模块,用于通过直接内存访问的方式读取算法表格和压缩表格,并将NandFlash中所存储的未被压缩的数据存储至直接存储器的缓存中;
解压模块,用于根据所读取的算法表格将所述压缩表格中的被压缩的数据包解压,并将解压后的数据存储至直接存储器的缓存中;
传输模块,用于通过直接内存访问的方式将所述直接存储器的缓存中的数据传输至外部存储设备当中。
CN201210592160.0A 2012-12-31 2012-12-31 NandFlash的数据处理方法及装置 Active CN103076995B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210592160.0A CN103076995B (zh) 2012-12-31 2012-12-31 NandFlash的数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210592160.0A CN103076995B (zh) 2012-12-31 2012-12-31 NandFlash的数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN103076995A CN103076995A (zh) 2013-05-01
CN103076995B true CN103076995B (zh) 2015-11-25

Family

ID=48153535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210592160.0A Active CN103076995B (zh) 2012-12-31 2012-12-31 NandFlash的数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN103076995B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104850561A (zh) * 2014-02-18 2015-08-19 北京京东尚科信息技术有限公司 一种Android APK文件自适应压缩方法
CN104881240B (zh) * 2014-02-27 2018-04-24 群联电子股份有限公司 数据写入方法、存储器存储装置及存储器控制电路单元

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319760A (ja) * 1994-05-23 1995-12-08 Matsushita Electric Ind Co Ltd メモリ装置
CN102609360A (zh) * 2012-01-12 2012-07-25 华为技术有限公司 一种数据处理方法、装置及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319760A (ja) * 1994-05-23 1995-12-08 Matsushita Electric Ind Co Ltd メモリ装置
CN102609360A (zh) * 2012-01-12 2012-07-25 华为技术有限公司 一种数据处理方法、装置及***

Also Published As

Publication number Publication date
CN103076995A (zh) 2013-05-01

Similar Documents

Publication Publication Date Title
CN106537327B (zh) 快闪存储器压缩
US8560926B2 (en) Data writing method, memory controller and memory storage apparatus
CN101937724B (zh) 用于执行拷贝回存操作的方法以及闪存存储设备
CN103136109B (zh) 一种具有压缩功能的固态存储***ftl写入及读取方法
US20130006981A1 (en) Storage device and data processing device utilizing determined dictionary compression
US9336081B2 (en) Data writing and reading method, and memory controller and memory storage apparatus using the same for improving reliability of data access
GB2475362A (en) Method and apparatus for wireless digital content management
RU2012144773A (ru) Способ и устройство для определения режима взаимодействия
US9977598B2 (en) Electronic device and a method for managing memory space thereof
CN105677742A (zh) 一种存储文件的方法及装置
CN102918509A (zh) 数据读写方法、装置和存储***
US20140189697A1 (en) Method and apparatus for managing application program
CN104090795A (zh) 实现多核移动终端升级的方法、***及装置
RU2014126348A (ru) Схема сжатия dram для снижения потребления энергии при компенсации движения и обновления отображения
CN101398807B (zh) 解压移动终端压缩包的方法和装置
WO2021068891A1 (en) Method, system, electronic device, and storage medium for storing and collecting temperature data
CN103076995B (zh) NandFlash的数据处理方法及装置
US20140258247A1 (en) Electronic apparatus for data access and data access method therefor
CN105659503A (zh) 用于提供多用户节电码本优化的***和方法
CN104571942B (zh) 数据存储***和非信号分析方法
CN105472377A (zh) 电视机调试方法及装置
CN105659502A (zh) 用于节省存储器***中的功耗的***和方法
CN108599774B (zh) 一种压缩方法、***、装置及计算机可读存储介质
CN105357305A (zh) 文件发送方法和装置、文件接收方法和装置和终端设备
WO2010062115A3 (en) Recording multimedia data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: 518057 room 606-608, Changhong science and technology building, twelve South tech Road, Nanshan District hi tech Zone, Shenzhen, Guangdong

Patentee after: SILICONGO MICROELECTRONICS CO., LTD.

Address before: 518057 room 606-608, Changhong science and technology building, twelve South tech Road, Nanshan District hi tech Zone, Shenzhen, Guangdong

Patentee before: Shenzhen SiliconGo Semiconductor Co., Ltd.

CP03 Change of name, title or address

Address after: 518057 05-2, 06-08 unit, 6 floor, Changhong science and technology building, 18 Nanshan District science and technology south twelve Road, Shenzhen, Guangdong.

Patentee after: Shenzhen SiliconGo Semiconductor Co., Ltd.

Address before: 518057 Nanshan District science and technology building 606-608, science and technology south twelve Road, Nanshan District hi tech Zone, Shenzhen, Guangdong

Patentee before: SILICONGO MICROELECTRONICS CO., LTD.

CP03 Change of name, title or address