CN102089828B - 固态存储装置中的数据收集及压缩 - Google Patents
固态存储装置中的数据收集及压缩 Download PDFInfo
- Publication number
- CN102089828B CN102089828B CN200980126981.1A CN200980126981A CN102089828B CN 102089828 B CN102089828 B CN 102089828B CN 200980126981 A CN200980126981 A CN 200980126981A CN 102089828 B CN102089828 B CN 102089828B
- Authority
- CN
- China
- Prior art keywords
- data
- compression
- compressed data
- page
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/401—Compressed data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明揭示用于将经压缩数据编程到存储器阵列、存储器装置及存储器系统的方法。在一个此种方法中,找到用有效数据部分编程的存储器页或块。从这些经部分编程的页或块收集所述数据且对所述数据进行压缩。接着将所述经压缩数据编程回到所述存储器装置的所述存储器阵列中的不同位置。
Description
技术领域
本发明一般来说涉及存储器装置,且在特定实施例中本发明涉及非易失性存储器装置。
背景技术
在计算机或其它电子装置中存储器装置可包括内部半导体集成电路。存在许多不同类型的存储器,其包括随机存取存储器(RAM)、只读存储器(ROM)、动态随机存取存储器(DRAM)、静态RAM(SRAM)、同步动态随机存取存储器(SDRAM)及快闪存储器。
快闪存储器装置已发展为用于宽广范围的电子应用的非易失性存储器的普遍源。快闪存储器装置通常使用允许高存储器密度、高可靠性及低功率消耗的单一晶体管存储器单元。快闪存储器的常见用途包括个人计算机、个人数字助理(PDA)、数码相机及蜂窝式电话。例如基本输入/输出系统(BIOS)等程序码及系统数据通常存储于快闪存储器装置中以供在个人计算机系统中使用。
快闪存储器装置的一个缺点是,由于用于编程的物理过程,其通常仅正确操作有限数量的擦除/编程循环。大多数快闪存储器装置可操作100k擦除/编程循环。
另一缺点是与其它存储器技术相比存储每一位的成本相对高。因此,需要改善对快闪存储器阵列中的存储器单元的管理以有效率地尽可能多的使用存储器阵列以使得存储器区域不会空着。
出于上文陈述的原因,且出于下文陈述的所属领域的技术人员在阅读及理解本说明书之后将明了的其它原因,所属技术领域中需要一种改善非易失性存储器管理的方法。
发明内容
本应用的一方面涉及一种用于固态存储装置中的数据收集及压缩的方法,所述方法包含:从用有效数据部分编程的存储器页收集数据;压缩所述所收集的数据;及将所述经压缩数据编程到所述固态存储装置。
本应用的另一方面涉及一种存储器装置,其包含:存储器阵列,其组织成多个存储器页及块;及存储器控制电路,其耦合到所述存储器阵列,所述存储器控制电路用于控制所述存储器装置的操作,所述存储器控制电路经配置以读取所述存储器阵列以找到经部分编程的页或块、从所述经部分编程的页或块读取数据、压缩所述所读取数据且将所述经压缩数据编程到所述存储器阵列的替代位置。
附图说明
图1显示存储器系统的一个实施例的框图,其并入有数据收集及数据压缩方法的一个实施例。
图2显示根据图1的存储器阵列的非易失性存储器阵列的一部分的一个实施例的示意图。
图3显示用于执行数据收集及数据收缩的方法的一个实施例的流程图。
图4显示用于读取经压缩数据的方法的一个实施例的流程图。
具体实施方式
在本发明的以下详细描述中,参照形成本发明的一部分且其中以图解说明的方式显示可实施本发明的具体实施例的附图。在所述图式中,在全部若干视图中相同编号描述大致类似的组件。充分洋细地描述这些实施例以使所属领域的技术人员能够实施本发明。可利用其它实施例并可在不背离本发明范围的情形下做出结构、逻辑及电方面的改变。因此,不应以限制意义考虑以下详细描述,且本发明的范围仅由所附权利要求书及其等效物界定。
图1图解说明包括固态存储装置100的存储器系统120的功能性框图。固态存储装置100可以是非易失性存储器100,例如快闪存储器。固态存储装置100已被简化以着重于存储器的有助于理解本编程实施例的特征。固态存储装置100耦合到外部系统控制器110。控制器110可以是微处理器或某其它类型的控制电路。
固态存储装置100包括非易失性存储器单元阵列130,例如在图2中所图解说明且随后论述的浮动栅极存储器单元。存储器阵列130布置成成排的存取线(例如,字线行)及数据线(例如位线列)。在一个实施例中,存储器阵列130的列由存储器单元的串联串组成。如所属技术领域中所众所周知,单元到位线的连接确定阵列是NAND架构、AND架构还是NOR架构。
可将存储器阵列130组织成存储器块。存储器块的数量通常由存储器装置的大小(即,512MB、1GB)确定。在一个实施例中,每一存储器块由64个存储器单元页形成。每一页通常由2048个数据字节组成。
存储器控制电路170可包括压缩/解压缩块190/与其协作以便可压缩正被写入到阵列130的未被压缩数据及可解压缩从阵列130读取的经压缩数据。压缩/解压缩190可通过执行这些任务的硬件电路来实现。替代实施例通过固件例行程序执行压缩/解压缩190。
提供易失性存储器区域(例如,DRAM)191以暂时存储数据。控制器110使用易失性存储器来暂时存储待写入到存储器阵列130的数据,暂时存储从存储器阵列读取的数据,及存储由存储器控制电路170使用的其它数据。举例来说,如随后所描述,压缩/解压缩块190可使用易失性存储器191来存储数据。
提供地址缓冲器电路140以锁存经由I/O电路160提供的地址信号。由行解码器144及列解码器146接收并解码地址信号以存取存储器阵列130。得益于本描述,所属领域的技术人员将了解,地址输入连接的数目取决于存储器阵列130的密度及架构。也就是说,所述地址的数目随着存储器单元计数的增加及库与块计数的增加而增加。
固态存储装置100通过使用感测放大器电路150感测存储器阵列列中的电压或电流改变来读取存储器阵列130中的数据。在一个实施例中,感测放大器电路150经耦合以读取且锁存来自存储器阵列130的行数据。包含数据输入及输出缓冲器电路160以用于经由多个数据连接162与控制器110进行双向数据通信以及地址通信。提供写入电路155以将数据写入到存储器阵列。
存储器控制电路170解码从控制器110提供的控制连接172上的信号。这些信号用于控制对存储器阵列130的操作,包括数据读取、数据写入(编程)及擦除操作。存储器控制电路170可以是产生存储器控制信号的状态机、定序器或某其它类型的控制器。控制电路170经配置以执行随后论述的数据收集操作。另外,如果压缩/解压缩操作190是固件例行程序,那么存储器控制电路170经配置以执行压缩/解压缩以及图3的方法的实施例。
图2图解说明NAND架构存储器阵列130的一部分的示意图,其包含可对其操作随后论述的数据收集及压缩/解压缩的实施例的非易失性存储器单元的串联串。尽管随后论述参照NAND存储器装置,但本实施例并不限于此种架构,而是也可用于其它存储器装置架构中。
存储器阵列由配置成列(例如,串联串204、205)的非易失性存储器单元130(例如,浮动栅极)阵列组成。在每一串联串204、205中,以漏极到源极的方式耦合单元130的每一者。横跨多个串联串204、205的字线WL0到WL31连接到行中的每一存储器单元的控制栅极以给所述行中的存储器单元的控制栅极加偏压。位线BL1、BL2最终连接到感测放大器(未显示),所述感测放大器通过感测特定位线上的电流来检测每一单元的状态。
每一存储器单元串联串204、205通过源极选择栅极216、217耦合到源极线206且通过漏极选择栅极212、213耦合到个别位线BL1、BL2。所述源极选择栅极216、217由耦合到其等控制栅极的源极选择栅极控制线SG(S)218来控制。漏极选择栅极212、213由漏极选择栅极控制线SG(D)214来控制。
每一存储器单元可作为单电平单元(SLC)或多电平单元(MLC)进行编程。每一单元的阈值电压(Vt)指示存储于所述单元中的数据。举例来说,在SLC中,0.5V的Vt可指示经编程单元而-0.5V的Vt可指示经擦除单元。MLC可具有多个Vt范围,每一范围指示不同状态。多电平单元可通过将位图案指派给存储于单元上的特定电压范围来利用传统快闪单元的模拟性质。取决于被指派给单元的电压范围的数量,此技术准许每单元存储两个或更多个位。
数据压缩(在所属技术领域中也称为源译码)是将原始数据串转变成新数据串的过程,所述新数据串包含与所述原始串相同或大致相同的信息,但其长度是减小的。数据压缩可以是有损的或者无损的。
无损数据压缩在使用较少位的同时保留相同原始信息。此类型的数据压缩通常不能实现与有损压缩等量的压缩,但用于如在程序源码中那样不能容忍数据损耗的情形中。典型无损数据压缩算法的实例包括Lempel-Ziv(LZ)压缩、DEFLATE、PKZIP及GZIP。本发明的实施例不受限于任一类型的压缩/解压缩。
图3图解说明用于数据收集及压缩的方法的一个实施例的流程图。数据收集操作确定哪些存储器页及/或存储器块仅部分编程301有有效数据(有效数据可以是实际上应编程于所述特定页中且还未移动到另一位置的经编程信息)。此可通过读取页/块以确定哪些仅部分地被编程来实现。在另一实施例中,所述经部分编程的页/块可在来自所述页/块的数据的部分被移动时被识别(例如,被用旗标标记)。在此实施例中,可在页或块状态寄存器中设定位,其指示所述页/块的仅一部分保留有效数据。稍后,读取操作仅必须读取所述状态位以找到经部分编程的页/块。
通常三种情况可导致存储器页及存储器块部分地被编程。导致经部分编程的存储器页的一个原因是未发生足够写入业务来填充存储器页且控制器写入其具有的数据以使得存储装置可向系统发信号通知操作完成。导致经部分编程的存储器页的另一原因是将一片数据写入到装置上的逻辑块,而相同逻辑块已包含于先前经写入页中。尽管先前经写入块现在是标记为“无效”,但由于所述页现在在其内具有可利用的空点且因此仍为数据收集候选者。最后,较不常见情况是系统将命令发送到装置,指令所述装置使逻辑块无效。如果所述逻辑块是先前填充页的一部分,那么此页现在是数据收集候选者。
这些操作可留下仅用未被移动的有效数据部分编程的页或块。数据收集提供读取存储器内容的机会且使压缩成为后台任务。
读出这些经部分编程的存储器页/块中的有效数据302。将所读取数据302输入到压缩块且同时输入到固态存储装置的DRAM。压缩数据所述303且将其暂时存储于DRAM的不同区中。可使用上文所描述的压缩例行程序的一者或可使用某其它压缩例行程序。可在硬件或者软件中实现所述压缩。
在传送完成时,评估所述压缩以确定数据是否可压缩304。如果数据是不可压缩的305,那么将未经压缩数据写入到存储器页306。
如果数据是可压缩的305,那么将经压缩数据与其它经压缩数据组合以填充存储器页307。在一个实施例中,一个存储器页可包含相当于两页的数据。
将经压缩数据用旗标标记为经压缩308以便当对其进行读取时,可将其识别为经压缩数据以进行解压缩。此种旗标可包括存储器阵列的单独存储器位置(例如,DRAM翻译表)或是存储器控制电路的部分的寄存器中的位指示。与经压缩数据相关联的压缩类型也可由在存储器位置/寄存器中的类似位或多位指示来指示。在另一实施例中,压缩写入到存储器阵列的所有数据以使得读取操作解压缩所有所读取数据。
图4图解说明用于从固态存储装置读取数据的方法的一个实施例。首先从存储器单元读取数据401。此可通过在以数字方式操作的存储器阵列中从每一单元读取数字图案或在以模拟方式操作的存储器阵列中确定每一被读取存储器单元的阈值电压来实现。
接着确定所读取数据在写入时已被压缩403还是所述数据已经处于未经压缩格式。如先前所论述,可假设所有所读取数据处于压缩格式,因此要求针对所有所读取数据解压缩,或需要针对相关联数据读取压缩指示位。在一个实施例中,也可确定所使用的压缩算法的类型,以便在解压缩期间可使用相同解压缩算法。
如果数据已被压缩405,那么接着根据用于压缩其的压缩算法解压缩407,且将经解压缩数据传送到请求例行程序411。如果所述数据以未经压缩状态存储405,那么以与读取相同的形式传送所读取数据411。
结论
总的来说,一个或一个以上实施例通过读取残留于经部分编程的存储器块中的有效数据且将所述有效数据分组在一起来执行数据收集,压缩所述有效数据,且将其存储于新存储器块中以使得所述新存储器块被填充。接着擦除所述经部分编程块且将其返回以供将来使用。此有效数据的覆写通常称为写入放大,因为与写入到存储器装置中的原始数据的量相比实际发生的写入量被放大。所得增加的存储器容量通过扩展由存储器控制电路执行的耗损均衡来减小写入放大。
尽管本文已图解说明及描述具体实施例,但所属领域的技术人员将了解,任何经计算以达成相同目的的配置均可替代所示具体实施例。所属领域的技术人员将明了本发明的许多修改。因此,此申请案打算涵盖本发明的任何修改或变化形式。本发明明确地打算仅由以上权利要求书及其等效物限定。
Claims (19)
1.一种用于固态存储装置中的数据收集及压缩的方法,所述方法包含:
读取每个存储器页的状态位,所述状态位指示各个存储器页是否仅被部分编程;
响应于存储器页各自的状态位,从用有效未被压缩数据部分编程的存储器页收集并暂时存储有效未被压缩数据并于此时压缩并暂时存储所收集的数据;
评估所述压缩以确定所收集的数据是否可被压缩;及
可选择地将所述未被压缩数据或所述经压缩数据编程到所述固态存储装置。
2.根据权利要求1所述的方法,其中收集数据包含从经部分编程的存储器块收集数据。
3.根据权利要求1所述的方法,其中编程所述经压缩数据包含将所述经压缩数据编程到所述固态存储装置的不同页。
4.根据权利要求1所述的方法,且其进一步包含通过在存储器位置中设定与所述经压缩数据相关联的位来识别所述经压缩数据。
5.根据权利要求1所述的方法,且其进一步包括:
从所述固态存储装置读取数据;及
解压缩所述数据。
6.根据权利要求1所述的方法,其中编程所述经压缩数据包含进行编程以使得不发生对存储器页的部分编程。
7.根据权利要求6所述的方法,其中压缩所述所收集的数据包含使用GZIP算法来压缩所收集的数据。
8.根据权利要求7所述的方法,且其进一步包括从所述固态存储装置读取所述经压缩数据且使用Lempel-Ziv(LZ)压缩、DEFLATE、PKZIP及GZIP中的一者来解压缩所述经压缩数据。
9.根据权利要求1所述的方法,且其进一步包括识别在压缩所述所收集的数据中使用的压缩算法的类型。
10.根据权利要求1所述的方法,且其进一步包括在从所述经部分编程的存储器页读取所述数据之后擦除所述经部分编程的存储器页。
11.根据权利要求1所述的方法,且其进一步包括当从第一存储器页移动数据时产生仅用有效数据部分编程所述第一存储器页的指示。
12.根据权利要求1所述的方法,且其进一步包括在编程回到所述固态存储装置之前将所述经压缩数据与其它经压缩数据组合。
13.一种存储器装置,其包含:
存储器阵列,其组织成多个存储器页及块;及
存储器控制电路,其耦合到所述存储器阵列,所述存储器控制电路用于控制所述存储器装置的操作,所述存储器控制电路经配置以读取包含状态位的寄存器,所述状态位指示了各个存储器页或存储器块是否仅被部分编程而使得各个存储器页或存储器块具有未编程区域、响应于存储器页或存储器块各自的状态位从经部分编程的页或块读取并暂时存储未被压缩数据并于此时压缩并暂时存储所读取的数据、评估所述压缩以确定所收集的数据是否可被压缩且可选择地将所述未被压缩数据或所述经压缩数据编程到所述存储器阵列的替代位置。
14.根据权利要求13所述的存储器装置,其中所述存储器阵列为NAND架构快闪存储器阵列。
15.根据权利要求13所述的存储器装置,其中每一存储器块由多个存储器页组成。
16.根据权利要求13所述的存储器装置,其中所述存储器控制电路进一步经配置以产生所读取的数据已被压缩的指示且将所述指示编程于存储器中。
17.根据权利要求13所述的存储器装置,其中所述存储器控制电路进一步经配置以通过响应于对一个逻辑地址的写入操作而将所述经压缩数据写入到多个物理地址来执行耗损均衡。
18.根据权利要求13所述的存储器装置,其中所述存储器控制电路进一步经配置以擦除所述经部分编程的存储器块。
19.根据权利要求13所述的存储器装置,其中所述存储器控制电路进一步经配置以读取压缩类型的指示且响应于所述压缩类型的所述指示而解压缩所述经压缩数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/170,612 | 2008-07-10 | ||
US12/170,612 US9772936B2 (en) | 2008-07-10 | 2008-07-10 | Data collection and compression in a solid state storage device |
PCT/US2009/048567 WO2010005791A2 (en) | 2008-07-10 | 2009-06-25 | Data collection and compression in a solid state storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102089828A CN102089828A (zh) | 2011-06-08 |
CN102089828B true CN102089828B (zh) | 2015-07-01 |
Family
ID=41506147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980126981.1A Active CN102089828B (zh) | 2008-07-10 | 2009-06-25 | 固态存储装置中的数据收集及压缩 |
Country Status (7)
Country | Link |
---|---|
US (3) | US9772936B2 (zh) |
EP (1) | EP2308057A4 (zh) |
JP (1) | JP5311081B2 (zh) |
KR (1) | KR101379048B1 (zh) |
CN (1) | CN102089828B (zh) |
TW (1) | TWI446358B (zh) |
WO (1) | WO2010005791A2 (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008070191A2 (en) | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for a reconfigurable baseboard management controller |
US9772936B2 (en) * | 2008-07-10 | 2017-09-26 | Micron Technology, Inc. | Data collection and compression in a solid state storage device |
KR101487190B1 (ko) * | 2008-09-11 | 2015-01-28 | 삼성전자주식회사 | 압축 코덱을 구비한 플래시 메모리 집적 회로 |
WO2010067361A1 (en) * | 2008-12-10 | 2010-06-17 | Amir Ban | Method and device of managing a reduced wear memory |
KR101649357B1 (ko) | 2010-05-10 | 2016-08-19 | 삼성전자주식회사 | 데이터 저장 장치, 그것의 동작 방법, 그리고 그것을 포함한 스토리지 서버 |
JP5687639B2 (ja) * | 2012-02-08 | 2015-03-18 | 株式会社東芝 | コントローラ、データ記憶装置及びプログラム |
US10019353B2 (en) * | 2012-03-02 | 2018-07-10 | Longitude Enterprise Flash S.A.R.L. | Systems and methods for referencing data on a storage medium |
US9251060B2 (en) | 2012-03-29 | 2016-02-02 | Intel Corporation | Compression-enabled blending of data in non-volatile memory |
US9148172B2 (en) | 2012-06-22 | 2015-09-29 | Micron Technology, Inc. | Data compression and management |
US8704686B1 (en) * | 2013-01-03 | 2014-04-22 | International Business Machines Corporation | High bandwidth compression to encoded data streams |
JP6628124B2 (ja) * | 2014-05-30 | 2020-01-08 | パナソニックIpマネジメント株式会社 | 送信装置、受信装置、送信方法および受信方法 |
CN104090730B (zh) * | 2014-07-08 | 2017-02-22 | 飞天诚信科技股份有限公司 | 一种对存储设备进行数据读写的方法及装置 |
JP6650689B2 (ja) * | 2015-06-04 | 2020-02-19 | キヤノン株式会社 | サムネイル画像作成装置、3次元造形システム |
US9858994B2 (en) * | 2015-06-18 | 2018-01-02 | Samsung Electronics Co., Ltd. | Memory system with MLC memory cells and partial page compression or reduction |
US10379772B2 (en) * | 2016-03-16 | 2019-08-13 | Micron Technology, Inc. | Apparatuses and methods for operations using compressed and decompressed data |
US10614881B2 (en) | 2018-08-13 | 2020-04-07 | International Business Machines Corporation | Calibration of open blocks in NAND flash memory |
US11698758B2 (en) * | 2018-12-17 | 2023-07-11 | Micron Technology, Inc. | Selective compression circuitry in a memory device |
US11481119B2 (en) * | 2019-07-15 | 2022-10-25 | Micron Technology, Inc. | Limiting hot-cold swap wear leveling |
CN118020057A (zh) * | 2021-09-29 | 2024-05-10 | 美光科技公司 | 使用内联元数据对压缩状态的早期检测 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5930167A (en) * | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
CN1139031C (zh) * | 1995-09-27 | 2004-02-18 | 梅姆奎斯特公司 | 包括多个存储装置的存储器设备 |
CN101002184A (zh) * | 2004-06-15 | 2007-07-18 | 特里克2000国际有限公司 | 用于存储从主机无线传输的数据及将数据无线传输到主机的固态存储器存储设备 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5237460A (en) * | 1990-12-14 | 1993-08-17 | Ceram, Inc. | Storage of compressed data on random access storage devices |
US5341339A (en) * | 1992-10-30 | 1994-08-23 | Intel Corporation | Method for wear leveling in a flash EEPROM memory |
US5740395A (en) * | 1992-10-30 | 1998-04-14 | Intel Corporation | Method and apparatus for cleaning up a solid state memory disk storing floating sector data |
US5337275A (en) * | 1992-10-30 | 1994-08-09 | Intel Corporation | Method for releasing space in flash EEPROM memory array to allow the storage of compressed data |
US5459850A (en) * | 1993-02-19 | 1995-10-17 | Conner Peripherals, Inc. | Flash solid state drive that emulates a disk drive and stores variable length and fixed lenth data blocks |
US5586285A (en) * | 1993-02-19 | 1996-12-17 | Intel Corporation | Method and circuitry for increasing reserve memory in a solid state memory disk |
US5497419A (en) * | 1994-04-19 | 1996-03-05 | Prima Facie, Inc. | Method and apparatus for recording sensor data |
US5802553A (en) * | 1995-12-19 | 1998-09-01 | Intel Corporation | File system configured to support variable density storage and data compression within a nonvolatile memory |
US5943692A (en) * | 1997-04-30 | 1999-08-24 | International Business Machines Corporation | Mobile client computer system with flash memory management utilizing a virtual address map and variable length data |
US6490649B2 (en) | 1998-11-10 | 2002-12-03 | Lexar Media, Inc. | Memory device |
US6145069A (en) * | 1999-01-29 | 2000-11-07 | Interactive Silicon, Inc. | Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices |
JP4050855B2 (ja) * | 2000-01-28 | 2008-02-20 | 松下電器産業株式会社 | ガベージコレクション装置および方法 |
EP1233522A1 (en) * | 2001-02-14 | 2002-08-21 | Siemens Aktiengesellschaft | A data compression/decompression method and apparatus |
US6735673B2 (en) * | 2002-01-10 | 2004-05-11 | Hewlett-Packard Development Company, L.P. | Apparatus and methods for cache line compression |
US7111142B2 (en) * | 2002-09-13 | 2006-09-19 | Seagate Technology Llc | System for quickly transferring data |
TWI220959B (en) | 2003-06-05 | 2004-09-11 | Carry Computer Eng Co Ltd | Storage device with optimized compression management mechanism |
TWI227409B (en) * | 2003-06-05 | 2005-02-01 | Carry Computer Eng Co Ltd | Storage device capable of enhancing transmission speed |
US7325090B2 (en) * | 2004-04-29 | 2008-01-29 | Sandisk Il Ltd. | Refreshing data stored in a flash memory |
US7433994B2 (en) * | 2004-12-07 | 2008-10-07 | Ocz Technology Group, Inc. | On-device data compression to increase speed and capacity of flash memory-based mass storage devices |
US20070005911A1 (en) | 2005-07-01 | 2007-01-04 | Nec Laboratories America, Inc. | Operating System-Based Memory Compression for Embedded Systems |
US20070005625A1 (en) * | 2005-07-01 | 2007-01-04 | Nec Laboratories America, Inc. | Storage architecture for embedded systems |
EP1920335B1 (en) * | 2005-08-03 | 2011-05-11 | SanDisk Corporation | Reclaiming data storage capacity in flash memory systems |
US7596657B2 (en) * | 2006-01-13 | 2009-09-29 | Paul Kaler | Increased storage capacity for solid state disks using data compression |
JP2007305210A (ja) * | 2006-05-10 | 2007-11-22 | Toshiba Corp | 半導体記憶装置 |
US20070291571A1 (en) * | 2006-06-08 | 2007-12-20 | Intel Corporation | Increasing the battery life of a mobile computing system in a reduced power state through memory compression |
US8219739B2 (en) * | 2006-06-30 | 2012-07-10 | Intel Corporation | Read-only optimized flash file system architecture |
US7843823B2 (en) * | 2006-07-28 | 2010-11-30 | Cisco Technology, Inc. | Techniques for balancing throughput and compression in a network communication system |
EP1939751A1 (en) * | 2006-12-22 | 2008-07-02 | Telefonaktiebolaget LM Ericsson (publ) | Storing compressed data |
US8127200B2 (en) * | 2006-12-24 | 2012-02-28 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
JP5037952B2 (ja) * | 2007-01-15 | 2012-10-03 | 株式会社日立製作所 | ストレージシステム及びストレージシステムの制御方法 |
US20080228998A1 (en) * | 2007-03-16 | 2008-09-18 | Spansion Llc | Memory storage via an internal compression algorithm |
US7975109B2 (en) * | 2007-05-30 | 2011-07-05 | Schooner Information Technology, Inc. | System including a fine-grained memory and a less-fine-grained memory |
US9772936B2 (en) * | 2008-07-10 | 2017-09-26 | Micron Technology, Inc. | Data collection and compression in a solid state storage device |
US9134918B2 (en) * | 2009-12-31 | 2015-09-15 | Sandisk Technologies Inc. | Physical compression of data with flat or systematic pattern |
US9148172B2 (en) * | 2012-06-22 | 2015-09-29 | Micron Technology, Inc. | Data compression and management |
-
2008
- 2008-07-10 US US12/170,612 patent/US9772936B2/en active Active
-
2009
- 2009-06-25 CN CN200980126981.1A patent/CN102089828B/zh active Active
- 2009-06-25 WO PCT/US2009/048567 patent/WO2010005791A2/en active Application Filing
- 2009-06-25 EP EP09794961A patent/EP2308057A4/en not_active Withdrawn
- 2009-06-25 JP JP2011517463A patent/JP5311081B2/ja active Active
- 2009-06-25 KR KR1020117000433A patent/KR101379048B1/ko active IP Right Grant
- 2009-07-09 TW TW098123243A patent/TWI446358B/zh active
-
2017
- 2017-08-30 US US15/690,800 patent/US10176091B2/en active Active
-
2018
- 2018-12-07 US US16/213,318 patent/US10691588B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1139031C (zh) * | 1995-09-27 | 2004-02-18 | 梅姆奎斯特公司 | 包括多个存储装置的存储器设备 |
US5930167A (en) * | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
CN101002184A (zh) * | 2004-06-15 | 2007-07-18 | 特里克2000国际有限公司 | 用于存储从主机无线传输的数据及将数据无线传输到主机的固态存储器存储设备 |
Non-Patent Citations (1)
Title |
---|
Algorithms and Data Structures for Flash Memories;Eran Gal、sivan Toledo*;《School of Computer Science Tel-Aviv University》;20040724;说明书第2页第2段 * |
Also Published As
Publication number | Publication date |
---|---|
JP2011527807A (ja) | 2011-11-04 |
US20170364438A1 (en) | 2017-12-21 |
JP5311081B2 (ja) | 2013-10-09 |
US10691588B2 (en) | 2020-06-23 |
TW201011774A (en) | 2010-03-16 |
WO2010005791A2 (en) | 2010-01-14 |
US9772936B2 (en) | 2017-09-26 |
KR101379048B1 (ko) | 2014-03-28 |
KR20110016491A (ko) | 2011-02-17 |
CN102089828A (zh) | 2011-06-08 |
EP2308057A4 (en) | 2011-09-28 |
US10176091B2 (en) | 2019-01-08 |
US20100011150A1 (en) | 2010-01-14 |
EP2308057A2 (en) | 2011-04-13 |
US20190108121A1 (en) | 2019-04-11 |
WO2010005791A3 (en) | 2010-05-06 |
TWI446358B (zh) | 2014-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102089828B (zh) | 固态存储装置中的数据收集及压缩 | |
US8762629B2 (en) | Data conditioning to improve flash memory reliability | |
US20190138445A1 (en) | Mapping table updating method, memory control circuit unit and memory storage device | |
TWI783017B (zh) | 記憶體系統及其操作方法 | |
CN110554835A (zh) | 存储器系统及该存储器系统的操作方法 | |
US10503653B2 (en) | Memory system | |
KR20170035155A (ko) | 메모리 콘트롤러, 불휘발성 메모리 시스템 및 그 동작방법 | |
KR20130081534A (ko) | 저장 장치 및 불휘발성 메모리 장치, 그리고 그것의 동작 방법 | |
CN107544748B (zh) | 固态储存装置及其数据写入方法 | |
CN112882650B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
US10503433B2 (en) | Memory management method, memory control circuit unit and memory storage device | |
US11520698B2 (en) | Data storage device in a key-value storage architecture with data compression, and non-volatile memory control method | |
US20220066687A1 (en) | Control method for flash memory controller and associated flash memory controller and memory device | |
TW201705148A (zh) | 映射表存取方法、記憶體控制電路單元及記憶體儲存裝置 | |
JP2012113343A (ja) | 記憶装置 | |
CN112882649B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
US7310262B2 (en) | Ferroelectric memory capable of continuously fast transferring data words in a pipeline | |
US11487475B2 (en) | Control method for referring to expired block table to perform expired block recycling operation and associated flash memory controller and memory device | |
US10204043B2 (en) | Memory controller, method of controlling nonvolatile memory and memory system | |
CN110442299B (zh) | 数据写入方法、存储器控制电路单元以及存储器储存装置 | |
US11609844B2 (en) | Memory system with hierarchical tables | |
KR101996136B1 (ko) | 빠른 판독 다중 레벨 3d nand가 수명 용량 향상시키는 것을 가능하게 하는 데이터 매핑 | |
US20120210048A1 (en) | Semiconductor memory device capable of compression and decompression | |
CN112885397B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
US11055231B2 (en) | Data storage devices and data processing methods of skipping editing of fields in H2F table when consecutive addresses are present in F2H table |
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 |