CN108334287A - 一种提高闪存每单位写入的资料量的方法及装置 - Google Patents
一种提高闪存每单位写入的资料量的方法及装置 Download PDFInfo
- Publication number
- CN108334287A CN108334287A CN201810089287.8A CN201810089287A CN108334287A CN 108334287 A CN108334287 A CN 108334287A CN 201810089287 A CN201810089287 A CN 201810089287A CN 108334287 A CN108334287 A CN 108334287A
- Authority
- CN
- China
- Prior art keywords
- data
- flash memory
- buffer zone
- write
- data buffer
- 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/0608—Saving storage space on 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
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)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种提高闪存每单位写入的资料量的方法,包括:将资料从第一个数据缓冲区取出,并利用压缩软件压缩后存入第二个数据缓冲区;将压缩后的资料从第二个数据缓冲区取出,交由主控芯片写入闪存内。还公开了提高闪存每单位写入的资料量的装置,包括:将资料从第一个数据缓冲区取出的第一读取模块;将第一读取模块取出的资料进行压缩并存入第二数据缓冲区的压缩模块;将第二数据缓冲区中的资料取出的第二读取模块;对第二读取模块取出的资料进行错误检查和纠正技术运算的保护模块;将错误检查和纠正技术运算以后的资料写入闪存中的主控芯片。本发明有效节省闪存空间。
Description
技术领域
本发明涉及闪存的存储技术领域。
背景技术
闪存为非消失性的存储器装置,由块组成,每个块又分成多个页,每个页会有多个列组合而成。原先在闪存内储存生产资讯的方式,是明文加上错误检查和纠正技术保护后再写入页,因为一个页的存储空间大多为16k Byte,此做法遇到需要储存大量的生产资讯时,会遇到使用闪存许多页空间的情况,甚至是需要跨越多块的空间,除了浪费空间,也增加遇到块产生不稳定因素的机率。
发明内容
本发明的目的之一在于提供一种提高闪存每单位写入的资料量的方法,有效节省闪存空间。
本发明的目的之二在于提供一种提高闪存每单位写入的资料量的装置,有效节省闪存空间。
实现上述目的的技术方案是:
本发明之一的提高闪存每单位写入的资料量的方法,包括:
将资料从第一个数据缓冲区取出,并利用压缩软件压缩后存入第二个数据缓冲区;
将压缩后的资料从第二个数据缓冲区取出,交由主控芯片写入闪存内。
优选的,将压缩后的资料从第二个数据缓冲区取出后,先进行错误检查和纠正技术运算保护,再交由主控芯片写入闪存内。
本发明之二的提高闪存每单位写入的资料量的装置,包括:
将资料从第一个数据缓冲区取出的第一读取模块;
将第一读取模块取出的资料进行压缩并存入第二数据缓冲区的压缩模块;
将第二数据缓冲区中的资料取出的第二读取模块;
对第二读取模块取出的资料进行错误检查和纠正技术运算的保护模块;以及
将错误检查和纠正技术运算以后的资料写入闪存中的主控芯片。
本发明的有益效果是:本发明通过压缩软件压缩资料,再通过主控芯片存入闪存,能有效节省闪存的空间,存放更多的资料,当遇到较大生产资讯可以不用使用到太多的闪存存放位置,提高稳定性。
附图说明
图1是本发明的提高闪存每单位写入的资料量的方法的流程图;
图2是本发明的提高闪存每单位写入的资料量的装置的结构图。
具体实施方式
下面将结合附图对本发明作进一步说明。
请参阅图1,本发明之一的提高闪存每单位写入的资料量的方法,包括下列步骤:
步骤S1,将资料从第一个数据缓冲区取出。
步骤S2,将资料利用压缩软件压缩后存入第二个数据缓冲区。压缩软件将资料压缩成7Z格式。
步骤S3,将压缩后的资料从第二个数据缓冲区取出。
步骤S4,对取出的资料进行错误检查和纠正技术运算保护。
步骤S5,利用主控芯片将错误检查和纠正技术运算保护后的资料写入闪存内。
资料经过压缩处理后,依据压缩的资料的不同,所得到的压缩比最高可达将近50%左右。
请参阅图2,本发明之二的提高闪存每单位写入的资料量的装置,包括第一读取模块1、压缩模块2、第二读取模块3、保护模块4和主控芯片5。
第一读取模块1将资料从第一个数据缓冲区取出,发送给压缩模块2压缩以后存入第二数据缓冲区。第二读取模块3将第二数据缓冲区中的资料取出,并发送给保护模块4进行错误检查和纠正技术运算。错误检查和纠正技术运算以后的资料由主控芯片5写入闪存中。
以上实施例仅供说明本发明之用,而非对本发明的限制,有关技术领域的技术人员,在不脱离本发明的精神和范围的情况下,还可以作出各种变换或变型,因此所有等同的技术方案也应该属于本发明的范畴,应由各权利要求所限定。
Claims (3)
1.一种提高闪存每单位写入的资料量的方法,其特征在于,包括:
将资料从第一个数据缓冲区取出,并利用压缩软件压缩后存入第二个数据缓冲区;
将压缩后的资料从第二个数据缓冲区取出,交由主控芯片写入闪存内。
2.根据权利要求1所述的提高闪存每单位写入的资料量的方法,其特征在于,将压缩后的资料从第二个数据缓冲区取出后,先进行错误检查和纠正技术运算保护,再交由主控芯片写入闪存内。
3.一种提高闪存每单位写入的资料量的装置,其特征在于,包括:
将资料从第一个数据缓冲区取出的第一读取模块;
将第一读取模块取出的资料进行压缩并存入第二数据缓冲区的压缩模块;
将第二数据缓冲区中的资料取出的第二读取模块;
对第二读取模块取出的资料进行错误检查和纠正技术运算的保护模块;以及
将错误检查和纠正技术运算以后的资料写入闪存中的主控芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810089287.8A CN108334287A (zh) | 2018-01-30 | 2018-01-30 | 一种提高闪存每单位写入的资料量的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810089287.8A CN108334287A (zh) | 2018-01-30 | 2018-01-30 | 一种提高闪存每单位写入的资料量的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108334287A true CN108334287A (zh) | 2018-07-27 |
Family
ID=62926743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810089287.8A Pending CN108334287A (zh) | 2018-01-30 | 2018-01-30 | 一种提高闪存每单位写入的资料量的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108334287A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2636325Y (zh) * | 2003-08-29 | 2004-08-25 | 万国电脑股份有限公司 | 可提高存储量的储存装置 |
CN101916228A (zh) * | 2010-08-17 | 2010-12-15 | 中国人民解放军国防科学技术大学 | 带有数据压缩功能的闪存转换层及实现方法 |
CN102012794A (zh) * | 2010-11-19 | 2011-04-13 | 北京兆易创新科技有限公司 | 一种固态硬盘及其访问控制方法、一种固态硬盘控制器 |
CN102456400A (zh) * | 2010-10-15 | 2012-05-16 | 慧荣科技股份有限公司 | 使用于闪存的控制方法与控制器 |
CN102662856A (zh) * | 2012-04-27 | 2012-09-12 | 中国科学院计算技术研究所 | 一种固态硬盘及其存取方法 |
CN103197897A (zh) * | 2012-01-09 | 2013-07-10 | 三星电子株式会社 | 存储装置和非易失性存储器装置及其操作方法 |
-
2018
- 2018-01-30 CN CN201810089287.8A patent/CN108334287A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2636325Y (zh) * | 2003-08-29 | 2004-08-25 | 万国电脑股份有限公司 | 可提高存储量的储存装置 |
CN101916228A (zh) * | 2010-08-17 | 2010-12-15 | 中国人民解放军国防科学技术大学 | 带有数据压缩功能的闪存转换层及实现方法 |
CN102456400A (zh) * | 2010-10-15 | 2012-05-16 | 慧荣科技股份有限公司 | 使用于闪存的控制方法与控制器 |
CN102012794A (zh) * | 2010-11-19 | 2011-04-13 | 北京兆易创新科技有限公司 | 一种固态硬盘及其访问控制方法、一种固态硬盘控制器 |
CN103197897A (zh) * | 2012-01-09 | 2013-07-10 | 三星电子株式会社 | 存储装置和非易失性存储器装置及其操作方法 |
CN102662856A (zh) * | 2012-04-27 | 2012-09-12 | 中国科学院计算技术研究所 | 一种固态硬盘及其存取方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104932951B (zh) | 一种nand闪存出现ecc无法纠错时的数据恢复方法 | |
CN105206306A (zh) | 在非易失性存储器处理纠错码的方法及非易失性存储装置 | |
CN105260404A (zh) | 存储时间序列数据的方法和装置 | |
CN103744744B (zh) | 数据储存装置以及易失性存储器的数据校验方法 | |
CN102760099A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN106155830B (zh) | 数据储存装置以及错误校正方法 | |
CN103746705A (zh) | 一种压缩矢量数据的方法 | |
CN108334287A (zh) | 一种提高闪存每单位写入的资料量的方法及装置 | |
CN106528437A (zh) | 数据储存系统与其相关方法 | |
CN101908378B (zh) | 闪存的控制器以及于闪存存取数据的方法 | |
CN110955383B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
CN102096610A (zh) | 利用纠错码和同步信息的数据行存储及传输 | |
CN104794019B (zh) | 一种嵌入式存储器的数据保护方法及装置 | |
US8276033B2 (en) | Data writing method for a flash memory, and flash memory controller and flash memory storage apparatus using the same | |
CN105867833B (zh) | 数据存储装置及数据存储方法 | |
CN103200312B (zh) | 多卡移动电话快速写imei码方法 | |
CN104866386A (zh) | 具有最优更新代价的编码及解码方法 | |
CN106155916B (zh) | 数据储存装置以及数据读取方法 | |
CN108875082B (zh) | 一种大容量数据读写处理方法及装置 | |
CN105068939A (zh) | 一种应用于工业级嵌入式软件系统的存储芯片及其方法 | |
CN109165113B (zh) | 一种数据文件修复的方法 | |
CN108762975B (zh) | 一种ecc数据存储方法、系统及存储介质 | |
CN102163463B (zh) | 一种降低bch解码延迟的双钱氏搜索方法 | |
CN101996688B (zh) | 应用可变动错误更正码容量的快闪存储器控制方法 | |
CN102024497B (zh) | 一种存储数据的方法及存储装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180727 |