CN1619507A - 令随机存取闪存最佳效能的控制方法 - Google Patents
令随机存取闪存最佳效能的控制方法 Download PDFInfo
- Publication number
- CN1619507A CN1619507A CN 200310119676 CN200310119676A CN1619507A CN 1619507 A CN1619507 A CN 1619507A CN 200310119676 CN200310119676 CN 200310119676 CN 200310119676 A CN200310119676 A CN 200310119676A CN 1619507 A CN1619507 A CN 1619507A
- Authority
- CN
- China
- Prior art keywords
- page
- data
- block
- flash memory
- leaf
- 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.)
- Granted
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明涉及一种令随机存取闪存达最佳效能的控制方法,该方法提供一种以页(Page)或以区块(Block)为单位,对该闪存进行数据存取的设置方法,当一主机(如:计算机、读卡机、手机等)于该闪存中进行数据的写入时,能依据此数据的容量大小,来选择以逐页写入该数据,或者选择以区块为单位进行该数据的写入,达成可加快写入的目的,并减少对该闪存做删除(Erase)的动作,令该闪存得以延长使用寿命。
Description
技术领域
本发明为一种令随机存取闪存达最佳效能的控制方法,尤指该方法提供一种以页(Page)或以区块(Block)为单位,对该闪存进行数据存取的设置方法。
背景技术
一般传统闪存(Flash)的存取方式,受限于快闪存储器本身结构设计的关系,在读取时只能以一个页(Page)为单位,从各页内的任一地址开始读取数据。在写入时,则须以区块(Block)为单位,先删除(Erase)整个区块后,才能逐页写入(Page by Page)。这样一来在处理容量小于一个区块的数据时必须受限于闪存的结构,来设定存取的方式。
由于闪存的物理特性,该闪存中必须不含任何数据,才能将相当一个扇区(Sector)的数据,完完整整的写到该闪存一个页中,所以,于该页中写入数据时,就得先确定这个页是″空″的,所谓″空″的就是说这个页原本的数据都是″1″。以往对闪存的管理是以区块(Block)为单位,所以若要写数据到区块里其中一个页(Page)中时,为了方便及安全起见,就得于闪存中找出一个无任何数据的新区块(也称为备用的区块)来,将此数据写入该新区块相对的页中,而原来旧区块的数据就完完整整的搬到该新区块中,再将旧区块删除(Erase)掉,以当成另一个新的区块。
若处理的数据容量大小为连续好几个区块时,则于闪存中找出一个新区块来,将要写入的数据逐个写到相对的页中,等到所有的数据都写完后,再将旧区块原有数据搬到新区块相对页中,之后再将旧区块删除掉。由于主机(如:计算机、读卡机、手机等)常会不断地更新闪存的档案配置表(FAT),且若拷贝的数据都是一些小档案的话,这时对闪存而言一次也不过处理几个页的数据,但闪存就得不断地找一个新的区块出来,并不断地将旧区块里的数据搬到新的区块去,及不断地对旧的区块做删除。
基于闪存的物理特性,对闪存作删除的动作超过一百万次后,会容易造成闪存内部的损毁,所以要延长闪存的寿命,就得减少对闪存做删除的动作。由此,利用以往现有区块为单位来管理闪存,闪存的破坏率相较于以页为单位来管理会高出很多。
发明内容
发明人有鉴于前述现有以区块为单位来管理闪存的方法,容易造成闪存内部的损毁的缺陷,乃依其从事电子元件、电子装置的制造经验和技术累积,针对上述缺陷悉心研究各种解决的方法,在经过不断地研究、实验与改良后,终于开发设计出一种全新的令随机存取闪存达最佳效能的控制方法的发明,该方法能加快写入的速度,并减少对该闪存做删除的动作,以解决现有技术中的许多缺陷。
本发明的主要目的,提供一种以页(Page)或以区块(Block)为单位,对该闪存进行数据存取的设置方法,当一主机(如:计算机、读卡机、手机等)于该闪存中进行数据的写入时,能依据此数据的容量大小,计算以区块为单位的删除、搬移数据的时间及次数,以及计算以页为单位的删除、搬移数据的时间及次数,再根据上述计算的数据,选择一种最佳的写入方式,达成可加快写入的速度的目的,并减少对该闪存做删除的动作,令该闪存得以延长使用寿命的目的。
附图说明
图1本发明的整体系统结构图。
图2本发明以页为基本存取单位的闪存结构图。
图3本发明进行删除的时序图。
图4本发明以页为单位进行写入的时序图。
图5本发明作页删除的示意图。
图6本发明以页为单位的写入示意图。
图7本发明以区块为单位进行写入数据的示意图之一。
图8本发明以区块为单位进行写入数据的示意图之二。
图9本发明以区块为单位进行写入数据的示意图之三。
图10本发明以区块为单位进行写入数据的示意图之四。
图11本发明以区块为单位进行写入数据的示意图之五。
图中符号说明
11 单芯片闪存控制器
12 闪存
13 主机接口
14 主机
15 程序内存
具体实施方式
为能对本发明的目的、形状、构造装置特征及其功效,做更进一步的认识与了解,将以实施例配合附图,详细说明如下:
本发明乃有关于一种令随机存取闪存达最佳效能的控制方法,该方法提供一种以页(Page)或以区块(Block)为单位,对该闪存进行数据存取的设置方法,当一主机(如:计算机、读卡机、手机等)于该闪存中进行数据的写入时,能依据此数据的容量大小,计算以区块为单位的删除、搬移数据的时间及次数,以及依据此数据的容量大小,计算以页为单位的删除、搬移数据的时间及次数,再根据上述计算的数据,选择一种最佳的写入方式,若以区块为单位的删除次数少且搬移数据时间速度快,就选择以区块为单位进行该数据的写入,若以页为单位的删除次数少且搬移数据时间速度快,就选择以页为单位进行该数据的写入,达到可加快写入的速度的目的,并减少对该闪存做删除(Erase)的动作的目的,令该闪存得以延长使用寿命。
请参阅图1所示,本发明的整体系统结构图,该系统包括一单芯片闪存控制器11、一闪存12、一主机接口13及一主机14,其中单芯片闪存控制器11与闪存12相连接,并透过主机接口13与主机14(如:计算机、读卡机、手机等)相接,令该主机14可操控该单芯片闪存控制器11自该闪存12中存取数据,而该单芯片闪存控制器11内嵌或外挂一程序内存15,俾该单芯片闪存控制器11可依该程序内存15事先设定的程序,执行对该闪存12的存取动作。
在该发明中,请参阅图2所示,以页为基本存取单位的新型闪存结构图,当每次在写入之前都会对页/区块作删除的动作,其中删除的时序如图3所示,而写入是以页为单位,写入的时序如图4所示。
在该发明中,请参阅图1、5、6所示,本发明的方法可根据欲写入数据容量的页数多少,来决定是否要用新的区块(备用的区块)来存放新的数据,亦或直接删除(Erase)欲更改的页51(Page),使这个页51变成″空″的之后(如图5所示),再将新的数据写到这个新的页51中(如图6所示),以减少删除的动作,免除闪存12的损毁,及延长闪存12的使用寿命。
再者,根据规格书上的特性,区块删除(Block Erase)的时间是4毫秒(ms),页删除(Page Erase)的时间也是4毫秒(ms)。而页写入数据的时间是200微秒(μs)以一个区块(Block)共有32个页(Page),故区块写入数据(Block Program)的时间就是页写入数据(PageProgram)的时间乘以32(即200微秒×32)等于6.4毫秒(ms),而页数据读出(Page read)的时间是5微秒(μs)(First byte latency)加上50奈秒(ns)乘以528等于31.4微秒(μs),所以,依以往如果以区块(Block)为单位的管理方式,如只是要更改区块(Block)里的某一个页(Page),除了新的页(Page)的数据是由外部控制器所输入,其余31个页(Page)的数据都需由旧的区块(Block)搬到新的区块(Block)去(如图7、8、9、10、11所示),共至少需要区块删除(Block Erase)乘1加上页数据读出(Page read)乘31加上页数据写入(Page Program)乘32等于11.37毫秒(ms),但以页(Page)为单位的管理时(如图5、6所示),只需要一个页删除(Page Erase)加上一个页数据写入(Page Program)等于4.2毫秒(ms),省去了其它31个页(Page)从旧的区块(Block)搬到新的区块(Block)的时间。
但由于页删除(Page Erase)和区块删除(Block Erase)的时间相等,都是4毫秒(ms),因此若32个页(Page)的数据都和原来的数据不同,需全部删除(Erase)时,都只用页删除(Page Erase)的方式来处理,反而需要页删除(Page Erase)乘32加上页数据写入(PageProgram)乘32等于134.4毫秒(ms),比用区块(Block)方式需一个区块删除(Block Erase)加上页数据写入(Page Program)乘32等于10.4毫秒(ms)多出甚多,因此何时需要以页删除(Page Erase)来处理,何时需要以区块删除(Block Erase)来处理,必须要视闪存12(Flash Memory)中的规格上页数据写入(PageProgram)的时间、页删除(Page Erase)的时间、页数据读出(Page read)的时间以及区块删除(Block Erase)的时间来决定。存取的页(Page)少时,以页删除(Page Erase)来做较有利,存取页(Page)数目多时,以区块删除(Block Erase)来处理较省时。
而这个多与少的个数如何决定呢?我们可以假设各时间的变量,来计算出在存取几个页(Page)以何种方式可得到最有利的结果:
首先,假设页数据读出(Page read)的时间是pr、页数据写入(Page Program)的时间是pp、页删除(Page Erase)的时间是pe,区块删除(Block Erase)的时间是be,则以页删除(Page Erase)的方式存取若干个(N个)页(Page)所花的时间是pe×N+pp×N,另外,以区块删除(Block Erase)方式存取所花的时间为be×1+pr×(32-N)+pp×32;两相比较,欲使页删除(Page Erase)的时间少于区块删除(Block Erase)的时间pe×N+pp×N<be×1+pr×(32-N)+pp×32代入此闪存12(Flash Memory)的参数,pe=4ms,pp=200μs,pr=31.4μs,be=4ms可计算出N<2.6时使用页删除(Page Erase)的方式,可以得到较佳的效能,其原因是因为此闪存12(Flash Memory)在页删除(Page Erase)的时间和区块删除(BlockErase)的时间相同,若未来有新的规格的闪存页删除(Flash Memory Page Erase)的时间低于区块删除(Block Erase)的时间,即可提高N值,使管理闪存(Flash Memory)的弹性更大。
以上所述,仅为本发明最佳具体实施例,本发明的构造特征并不局限于此,任何熟悉该技艺者在本发明领域内,可轻易思及的变化或修饰,皆可涵盖在所述的专利范围内。
Claims (3)
1.一种令随机存取闪存达最佳效能的控制方法,
该方法提供一种以页或以区块为单位,对该闪存进行数据存取的设置方法,其特征在于:
当一主机于该闪存中进行数据的写入时,能依据此数据的容量大小,计算以区块为单位的数据删除、页数据读出、页数据写入的时间及次数;并
依据此数据的容量大小,计算以页为单位的页数据删除、页数据写入的时间及次数;
再根据上述计算的数据,选择一种最佳的写入方式;
若以区块为单位的删除次数少且搬移数据时间速度快,就选择以区块为单位进行该数据的写入;
若以页为单位的删除次数少且搬移数据时间速度快,就选择以页为单位进行该数据的写入。
2.如权利要求1所述的令随机存取闪存达最佳效能的控制方法,其中,该页数据读出的时间是pr、页数据写入的时间是pp、页删除的时间是pe,区块删除的时间是be,则以页删除的方式存取若干个(N个)页所花的时间是pe×N+pp×N,而以区块删除方式存取所花的时间则为be×1+pr×(32-N)+pp×32。
3.如权利要求1所述的令随机存取快闪记忆体达最佳效能的控制方法,其中该主机可为一计算机、读卡机或手机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2003101196764A CN100504812C (zh) | 2003-11-21 | 2003-11-21 | 随机存取闪存的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2003101196764A CN100504812C (zh) | 2003-11-21 | 2003-11-21 | 随机存取闪存的控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1619507A true CN1619507A (zh) | 2005-05-25 |
CN100504812C CN100504812C (zh) | 2009-06-24 |
Family
ID=34761404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2003101196764A Expired - Fee Related CN100504812C (zh) | 2003-11-21 | 2003-11-21 | 随机存取闪存的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100504812C (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140543B (zh) * | 2007-10-19 | 2010-04-21 | 炬力集成电路设计有限公司 | 支持flash页操作与流水线纠错码的数据交换装置与方法 |
CN101937319A (zh) * | 2009-06-29 | 2011-01-05 | 联发科技股份有限公司 | 存储器系统及其映射方法 |
CN101566969B (zh) * | 2008-04-21 | 2011-05-18 | 群联电子股份有限公司 | 提升非易失性存储器存储装置的管理效能的方法及控制器 |
US9715447B2 (en) | 2014-01-22 | 2017-07-25 | Synology Incorporated | Method for adaptively managing a solid state drive, and associated apparatus and associated computer program product |
-
2003
- 2003-11-21 CN CNB2003101196764A patent/CN100504812C/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140543B (zh) * | 2007-10-19 | 2010-04-21 | 炬力集成电路设计有限公司 | 支持flash页操作与流水线纠错码的数据交换装置与方法 |
CN101566969B (zh) * | 2008-04-21 | 2011-05-18 | 群联电子股份有限公司 | 提升非易失性存储器存储装置的管理效能的方法及控制器 |
CN101937319A (zh) * | 2009-06-29 | 2011-01-05 | 联发科技股份有限公司 | 存储器系统及其映射方法 |
CN101937319B (zh) * | 2009-06-29 | 2013-02-20 | 联发科技股份有限公司 | 存储器系统及其映射方法 |
US9715447B2 (en) | 2014-01-22 | 2017-07-25 | Synology Incorporated | Method for adaptively managing a solid state drive, and associated apparatus and associated computer program product |
Also Published As
Publication number | Publication date |
---|---|
CN100504812C (zh) | 2009-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102609360B (zh) | 一种数据处理方法、装置及系统 | |
TWI409633B (zh) | 快閃記憶體儲存裝置、其控制器與資料寫入方法 | |
US8010770B2 (en) | Caching device for NAND flash translation layer | |
CA2511304C (en) | Dual journaling store method and storage medium thereof | |
CN104503710A (zh) | 一种提高闪存写入速度的方法和装置 | |
CN111324303B (zh) | Ssd垃圾回收方法、装置、计算机设备及存储介质 | |
WO2009017368A2 (en) | Input/output control method and apparatus optimized for flash memory | |
US20150074360A1 (en) | Scheduler for memory | |
CN109992202A (zh) | 数据存储设备、其操作方法以及包括其的数据处理系统 | |
CN103389942A (zh) | 控制装置、存储装置及存储控制方法 | |
CN114416147B (zh) | 固件载入方法、存储器及计算机可读存储介质 | |
CN1619507A (zh) | 令随机存取闪存最佳效能的控制方法 | |
CN1205577C (zh) | 数据库表格恢复系统 | |
US6876579B2 (en) | Method writing data to a large block of a flash memory cell | |
CN105955669A (zh) | 一种提升固态硬盘写性能的方法 | |
CN110515897B (zh) | Lsm存储系统读性能的优化方法及系统 | |
CN1447243A (zh) | 快闪存储器中快速且能防止不正常断电的演算法及其控制系统 | |
US20130297859A1 (en) | Control device, storage device, and storage control method | |
CN101339490A (zh) | 闪存的驱动装置及方法 | |
CN1534509A (zh) | 具有快速且预防不当操作功效的快闪记忆体演算法及其控制系统 | |
US9646014B1 (en) | Systems and methods for selective defragmentation | |
JP2024503956A (ja) | メモリデバイスのデフラグメンテーションのためのシステムおよび方法 | |
CN1308836C (zh) | 数据储存的方法及系统 | |
JP4334331B2 (ja) | フラッシュメモリのアクセス制御方法 | |
CN111459848A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090624 Termination date: 20181121 |
|
CF01 | Termination of patent right due to non-payment of annual fee |