CN100347685C - 用于将数据写入快闪存储设备的半导体存储器的装置和方法 - Google Patents

用于将数据写入快闪存储设备的半导体存储器的装置和方法 Download PDF

Info

Publication number
CN100347685C
CN100347685C CNB038014769A CN03801476A CN100347685C CN 100347685 C CN100347685 C CN 100347685C CN B038014769 A CNB038014769 A CN B038014769A CN 03801476 A CN03801476 A CN 03801476A CN 100347685 C CN100347685 C CN 100347685C
Authority
CN
China
Prior art keywords
page
piece
data
leaf
play amount
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.)
Expired - Fee Related
Application number
CNB038014769A
Other languages
English (en)
Other versions
CN1585930A (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.)
Godo Kaisha IP Bridge 1
Original Assignee
松下电器产业株式会社
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 松下电器产业株式会社 filed Critical 松下电器产业株式会社
Publication of CN1585930A publication Critical patent/CN1585930A/zh
Application granted granted Critical
Publication of CN100347685C publication Critical patent/CN100347685C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

从写目标页的逻辑地址中识别源块(B0)和该写目标页的逻辑页号(“8”)。将要被写入的数据对象(DN8、DN9……DN12)(主机将其存储在页缓冲器(2)中)从该顶页(Q0)开始顺次被写入目的块(Bn)的各页(Q0、Q1……Q4)的数据区(DA)。该写目标页的逻辑页号(“8”)被写入该顶页(Q0)的冗余区(RA)。根据该写目标页的逻辑页号(“8”)和该源块(B0)的页偏移量(“2”),来识别该写目标页的物理页号(“6=8-2”)。当被该主机通知这些数据对象(DN8……DN12)的发送结束时,从以循环方式位于该写目标页(P6)后面的这些数据对象(DN8……DN12)的页数(“5”)的那一页(P11)开始,该源块(B0)中的数据项(D13……D31、D0、D1……D7)经由该页缓冲器(2)被顺序地、循环地传送到该目的块(Bn)中的各页(Q5、Q6……Q31)。

Description

用于将数据写入快闪存储设备的半导体存储器的装置和方法
技术领域
本发明涉及一种包括快闪存储设备的半导体存储器的装置。特别是,本发明涉及一种用于将数据写入该快闪存储设备的方法。
背景技术
信息处理设备以及近年来的家用电器(例如,电视机和电冰箱)包括CPU,并且通过软件来实现高级操作控制。这些设备将用于该操作控制和参数的(固件)程序存储在ROM中。包括快闪存储设备的半导体存储器装置被普遍用作这些ROM。此外,这些半导体存储器装置被普遍用于诸如笔记本计算机、个人数字助理(PDA)、数码相机、便携式音频播放机和蜂窝电话等便携式信息处理设备(移动设备)中,作为外部的小型记录介质(比如存储卡)。尤其针对这些用途,这些半导体存储器装置需要具备大容量、小尺寸。
快闪存储设备的存储区通常被分成多页,每页具有固定数量的存储单元。逐页地执行数据的写入和读取。该存储区被进一步分成多个块,每个块具有固定数量的这些页。在这些块中的每个块中共同执行数据擦除。相应地,与RAM对比,从严格意义上讲,无法在该快闪存储设备中执行数据的逐页重写。
例如,如下所述,常规半导体存储器装置实现被存储在快闪存储设备的一些页中的数据的更新(以下被称作“页的更新”),以及将新的数据写到空白页上(以下被称作“页的增加”)。图9展示了:通过该常规半导体存储器装置,来更新或增加快闪存储器1的一个块中的页。
该常规半导体存储器装置包括快闪存储器1和两个RAM:保存缓冲器20和页缓冲器2。快闪存储器1被分成一个以上的块B0、B1......。将物理地址分配给这些块B0、B1......中的每个块。这些块中的每个块包括32页。例如,头块(或第一个块)B0包括页P0、P1......和P31,第(n+1)个块Bn(n≥1)包括页Q0、Q1......和Q31。这个块中的页由该块的物理地址和该块中的页号这一对数据来加以识别。例如,这些页号是从其顶页开始顺次安置在这个块的各页上的序号0-31。保存缓冲器20和页缓冲器2每个都具备实质上与快闪存储器1的一页的存储容量相等的存储容量。
主机将逻辑地址发送到该半导体存储器装置,该逻辑地址指定写目标页和将要被写入的数据对象。该半导体存储器装置将这些数据对象DN存储在页缓冲器2中。另一方面,该半导体存储器装置从该逻辑地址中识别快闪存储器1中的对应的页。例如,当该逻辑地址指定头块B0的第(p+1)页Pp(0≤p≤31)时,该半导体存储器装置将该逻辑地址转换成头块B0的物理地址和第(p+1)页Pp的页号p这一对数据。该物理地址被识别为作为数据传送源的块(以下被称作“源块”)的物理地址。然后,在快闪存储器1中,该半导体存储器装置选择其中还没有写入数据的一个块(以下被称作“空白块”)。例如,该半导体存储器装置选择作为该空白块的第(n+1)个块Bn。第(n+1)个块Bn的物理地址被识别为块的物理地址,源块B0中所存储的数据被传送到该块(以下被称作“目的块”)。
如下所述,该常规半导体存储器装置将被存储在源块B0中的数据项传送到目的块Bn。首先,将源块B0的顶页P0的数据项D0读入保存缓冲器20(见图9中所示的箭头R0)。接下来,将保存缓冲器20的数据项D0写到目的块Bn的顶页Q0上(见图9中所示的箭头W0)。然后,将源块B0的第二页P1的数据项D1读入保存缓冲器20(见图9中所示的箭头R1)。随后,将保存缓冲器20的数据项D1写到目的块Bn的第二页Q1上(见图9中所示的箭头W1)。将经由保存缓冲器20的这种数据传送重复与该写目标页(源块B0的第(p+1)页Pp)的页号p相同的次数(=p次)。当源块B0的写目标页(第(p+1)页)Pp被设置为数据读取的源页时,该半导体存储器装置为该页跳过对保存缓冲器20的数据传送。而将将要被写入的数据对象DN(被存储在页缓冲器2中)写到目的块Bn的第(p+1)页Qp上(见图9中所示的箭头Wp)。再次从与源块B0的写目标页Pp(第(p+2)页)邻接的页开始,重复经由保存缓冲器20的数据传送。将源块B0的底页P31的数据项D31经由保存缓冲器20写到目的块Bn的底页Q31上(见图9中所示的箭头R31和W31)。该半导体存储器装置使对应于源块B0的物理地址的逻辑地址与目的块Bn的物理地址相一致。与源块B0对比,在目的块Bn中重写具有页号p的第(p+1)页Pp上的数据项。这样,该常规半导体存储器装置为快闪存储器1的一个块实现页的更新和增加。
要求半导体存储器装置尽可能地具备大容量和小尺寸。但是,要改进这些快闪存储设备的组装密度并不容易。相应地,需要减小除这些快闪存储设备以外的电路部分的尺寸。例如,当许多功能部件每个都包括公用电路部件时,这些公用部件将被并入单一部分。由此,需要减少这些公用部件的数量。更需要减小这些半导体存储器装置的尺寸,因为这可通过缩减芯片区来降低生产成本。如上所述,该常规半导体存储器装置具有两个RAM——保存缓冲器和页缓冲器。这些RAM共享共同的性质——被用作缓冲存储器,并具有实质上与该快闪存储设备的一页的存储容量相同的存储容量。相应地,强烈需要将该保存缓冲器和该页缓冲器集成为一个RAM。但是,如上所述,在该常规半导体存储器装置所执行的页的更新的过程中,该页缓冲器必须保存将要被写入的数据对象,直到该写目标页被设置为保存目标为止。所以,该页缓冲器要加倍作为该保存缓冲器是很困难的。
发明内容
本发明的目的是:提供一种半导体存储器装置,其中,通过将该保存缓冲器和该页缓冲器集成为单一RAM,来减小RAM的尺寸,从而实现小型化。
根据本发明的半导体存储器装置包括:
(A)快闪存储设备,它包括一个以上的块(其中的每个块包括不止一页)和页偏移量存储区,这每个块的页偏移量被存储在该页偏移量存储区内,并且数据是从该空白块的顶页开始顺次写入空白块,
(B)页缓冲器,其中暂时存储实质上与这些页中的一页的数据存储容量相同的数据量;
(C)地址转换装置,用于从主机接收规定写目标页的逻辑地址,并用于将该逻辑地址转换成该写目标页所属的块(以下被称作“源块”)的物理地址和该写目标页的逻辑页号这一对数据;以及,
(D)存储控制装置,用于(a)读取该源块的物理地址和该写目标页的逻辑页号,(b)将这些空白块之一选作目的块,(c)根据该写目标页的逻辑页号来确定该目的块的页偏移量,并且,将该页偏移量写入该页偏移量存储区,作为该目的块的页偏移量,(d)从该页偏移量存储区读取该源块的页偏移量,(e)根据该源块的页偏移量和该写目标页的逻辑页号来获得该写目标页的物理页号,(f)从目的块的顶页开始顺次将将要被写入的数据对象(从该主机被传送到该页缓冲器)写入该目的块,(g)根据这些数据对象的页数和该写目标页的物理页号来获得该源块的传送起始页的物理页号,以及(h)经由该页缓冲器,将该源块中所存储的数据从该传送起始页顺序地、循环地传送到其中写入该数据对象的目的块的页区大一页或后面的页。
这些逻辑页号是由该主机分配给该快闪存储设备中的各页的序号。这些物理页号是从该顶页开始顺次置于该快闪存储设备中的每个块的各页上的序号。块的页偏移量意味着这个块中的逻辑页顺序对物理页顺序的循环偏离。这个块的页偏移量较佳地等同于这个块的顶页的逻辑页号。根据本发明的以上所描述的半导体存储器装置将各个块的页偏移量存储在该快闪存储设备中。这里,除了这些页偏移量本身以外,实际存储的数据项可能是特定页的逻辑页号。这些页偏移量存储区较佳的是这各个块的顶页的冗余区。该页的冗余区是可独立于该页的数据区来加以存取的存储区。例如,对应于该页的逻辑地址、示出该页是否是空白页的标记、示出启用/禁止使用被写到该页上的数据(换言之,允许/禁止该主机对该页的存取)的标记,以及该数据的差错检测码(例如,CRC)被存储在该页的冗余区中。除了该快闪存储设备中的页偏移量存储区以外,还可能将关于这些页偏移量的存储空间分配给与以上所描述的快闪存储设备分开的非易失存储器(以下被称作“页偏移量存储装置”)。例如,该页偏移量存储装置被包括在该存储器控制装置中。该页缓冲器是RAM,最好是SRAM。将要被写入的数据对象的页数意味着用该快闪存储设备中的每一页的数据存储容量这个单位表达的数据对象的数量。这些数据对象的页数等同于其中写入这些数据对象的目的块的页区的页数。
在根据本发明的以上所描述的半导体存储器装置中,该快闪存储设备中的各页的逻辑页号可能从这各个块中的、采用循环方式的各页的物理页号平移形成。根据该页的逻辑页号和该页所属的块的页偏移量来计算每页的物理页号。当从该主机接收关于更新一些页或在块中增加新的页的指令时,根据本发明的以上所描述的半导体存储器装置首先将将要被写入的数据对象(从该主机被传送到该页缓冲器)从目的块的顶页开始顺次写入该目的块。由此,在关于该源块的保存过程开始之前,该页缓冲器得到释放。相应地,根据本发明的以上所描述的半导体存储器装置可以在保存该源块的时候,将该页缓冲器用作保存缓冲器。结果,根据本发明的以上所描述的半导体存储器装置所拥有的RAM的尺寸小于常规装置的RAM的尺寸。所以,当这些快闪存储设备的尺寸固定时,根据本发明的以上所描述的半导体存储器装置的整体尺寸小于该常规装置的整体尺寸。
根据本发明的以上所描述的半导体存储器装置还可以包括:(a)主机接口,用于接收从该主机那里被发出的该写目标页和该数据对象的逻辑地址;以及(b)地址转换表格存储装置,用于存储表现关于该快闪存储设备中的每个块的逻辑地址与物理地址之间的对应性的逻辑/物理地址转换表格,以及用于示出这些块中的每个块是否是该空白块的标记;并且,当该页数达到预定数量时,或者当该主机通知该数据对象的发送结束时,以上所描述的存储器控制装置可以计算这些数据对象的页数,并可以开始从该源块到该目的块的数据传输。这里,该地址转换表格存储器装置最好是RAM。该逻辑/物理地址转换表格表现了被分配给该快闪存储设备中的每个块的逻辑地址与该块的物理地址之间的对应性。
由于该主机接口不受该存储器控制装置的支配,因此,独立于该快闪存储设备中的数据写入/读取来执行该主机与该半导体存储器装置之间的数据通信。由此,例如,缩短了用于将数据写入该快闪存储设备的该主机的等待延迟时间。
例如,该地址转换装置扫描该快闪存储设备中的各页的冗余区。由此,列出该快闪存储设备中的各个块的逻辑地址。这样,该地址转换装置创建了该逻辑/物理地址转换表格,并且将该表格存入该地址转换表格存储装置。当将该写目标页的逻辑地址转换成该源块的物理地址和该写目标页的逻辑页号这一对数据时,该地址转换装置参考该逻辑/物理地址转换表格。由此,该装置可以迅速检索对应于该逻辑地址的物理地址。
该地址转换装置根据被存储在这些扫描过的冗余区中的数据项,来进一步检验每个块是否是空白块。由此,该装置确定关于这各个块的以上所描述的标记,并且将这些标记存入该地址转换表格存储装置。当将这些空白块之一选作目的块时,该存储控制装置参考这些以上所描述的标记。由此,该装置可以迅速确定该目的块。
例如,当将要被写入的数据对象(该主机将它们存储在该页缓冲器中)从该页缓冲器传送到该目的块时,该存储控制装置计算该传送次数。该主机可以(例如)使用预定命令来通知该半导体存储器装置:这些数据对象的发送结束。在那种情况下,该存储器控制装置可以在接收该通知时,从以上所描述的传送次数中检测到这些数据对象的页数。同时,该存储器控制装置开始从该源块到该目的块的数据传送。作为选择,该主机可以在发送这些数据对象之前,将这些数据对象的页数通知给该半导体存储器装置。在那种情况下,当以上所描述的传送次数达到所通知的页数时,该存储控制部件开始从该源块到该目的块的数据传送。
一种将数据写入快闪存储设备的方法,该方法将数据写入包括一个以上的块(其中的每个块包括不止一页)的快闪存储设备,并从空白块的顶页开始顺次将数据写入该空白块;
该方法包括以下步骤:
(A)从主机接收规定写目标页的逻辑地址;
(B)将该逻辑地址转换成源块的物理地址和该写目标页的逻辑页号这一对数据;
(C)将这些空白块之一选作目的块;
(D)根据该写目标页的逻辑页号来确定该目的块的页偏移量,并且,将该页偏移量写入该快闪存储设备中的页偏移量存储区,作为该目的块的页偏移量;
(E)从该页偏移量存储区读取该源块的页偏移量;
(F)根据该源块的页偏移量和该写目标页的逻辑页号,来确定该写目标页的物理页号;
(G)从目标块的顶页开始顺次将将要被写入的数据对象(从该主机被传送到页缓冲器)写入该目的块;以及,
(H)根据这些数据对象的页数和该写目标页的物理页号来获得该源块的传送起始页的物理页号,并且,经由该页缓冲器,将被存储在该源块中的数据从该传送起始页顺序地、循环地传送到其中写入该数据对象的目的块的页下一页或后面的页。这里,用类似于以上所描述的方式的一种方式来定义该逻辑页号、该物理页号、该块的页偏移量、该页偏移量存储区(或该页偏移量存储装置)、该页缓冲器和将要被写入的数据对象的页数。
在根据本发明来写入数据的以上所描述的方法中,该快闪存储设备中的各页的逻辑页号可以从这各个块中的、采用循环方式的各页的物理页号平移形成。根据该页的逻辑页号和该页所属的这个块的页偏移量,来计算每页的物理页号。当该主机提供关于更新一些页或在块中增加新的页的指令时,将要被写入的数据对象(从该主机被传送到该页缓冲器)首先从目的块的顶页开始顺次被写入该目的块。由此,在对于该源块的保存过程开始之前,该页缓冲器得到释放。相应地,在保存该源块的时候,该页缓冲器可以加倍作为保存缓冲器。结果,用于写入数据的上述方法中所要求的RAM尺寸小于该常规方法的RAM尺寸。所以,当这些快闪存储设备的尺寸固定时,半导体存储器装置的整体尺寸小于该常规装置的整体尺寸。
根据本发明来写入数据的方法还可以包括这个步骤:当该页数达到预定数量时,或者当该主机通知该数据对象的发送结束时,计算该目的块(这些数据对象被写入其中)的页区的页数,并且开始从该源块到该目的块的数据传输。例如,每当该数据对象从该页缓冲器被传送到该目的块时,计算该传送次数。该主机可以(例如)使用预定命令来通知该半导体存储器装置:该数据对象的发送结束。在那种情况下,在接收该通知时,从以上所描述的该传送次数中可检测到以上所描述的页区的页数。此外,在该通知的时候,开始从该源块到该目的块的数据传送。作为选择,该主机可以在发送这些数据对象之前,将这些数据对象的页数通知给该半导体存储器装置。在那种情况下,当以上所描述的该传送次数达到所通知的页数时,开始从该源块到该目的块的数据传送。
在根据本发明的以上所描述的半导体存储器装置及其写入数据的方法中,在关于该源块的保存过程开始之前,该页缓冲器得到释放。相应地,在该保存过程中,该页缓冲器可以加倍作为保存缓冲器使用。结果,以上所描述的半导体存储器装置所拥有的RAM的尺寸小于常规装置的RAM的尺寸。所以,当这些快闪存储设备的尺寸固定时,根据本发明的以上所描述的半导体存储器装置的整体尺寸小于该常规装置的整体尺寸。由于该芯片区特别小,因此,与这些常规装置的生产成本比较,根据本发明的以上所描述的半导体存储器装置的生产成本降得更低。
所附权利要求书中特别陈述了本发明的新颖的特点,但通过以下结合附图的详细说明,将会在组织和内容方面更好地理解和认识本发明及其其他目标和特点。
附图简述
图1是框图,表现了根据本发明的实施例的半导体存储器装置10;
图2是示意图,表现了根据本发明的这个实施例的快闪存储器1中的单元阵列的结构的轮廓;
图3是关于根据本发明的这个实施例的半导体存储器装置10的说明,表示了存储器控制器6为将要被写入的数据对象DN8-DN12从主机H被传送到页缓冲器2而执行的、从页缓冲器2到快闪存储器1的传送过程;
图4是关于根据本发明的这个实施例的半导体存储器装置10的说明,表示了存储器控制器6在图3中所示的数据传送过程之后所执行的从源块B0到目的块Bn的数据传送过程的前半部分;
图5是关于根据本发明的这个实施例的半导体存储器装置10的说明,表示了存储器控制器6在图3中所示的数据传送过程之后所执行的从源块B0到目的块Bn的数据传送过程的后半部分;
图6是由根据本发明的这个实施例的半导体存储器装置10来写入数据的方法的流程图;
图7是将要被写入的数据对象DN(q)-DN(qas+m-1)从页缓冲器2到目的块Bn的传送(步骤7)的流程图,它关于由根据本发明的这个实施例的半导体存储器装置10来写入数据的方法;
图8是从源块B0到目的块Bn的数据传送(步骤S8)的流程图,它关于由根据本发明的这个实施例的半导体存储器装置10来写入数据的方法;
图9展示了由常规半导体存储器装置在快闪存储器1的一个块中更新或增加页。
将会认识到,部分或所有这些附图是用于说明的示意表示,并且不一定描绘所示元件的实际的相对尺寸或位置。
本发明的最佳执行模式
下文参考这些附图描述了本发明的最佳实施例。
图1是框图,表示了根据本发明的这个实施例的半导体存储器装置10。半导体存储器装置10通过外部总线7与主机H连接。这里,例如,主机H是信息处理设备(例如,个人计算机)或移动设备(例如,PDA和便携式电话)。可以在外部或内部为主机H提供半导体存储器装置10。
快闪存储器1较佳地是NAND类型的EEPROM(电可擦除可编程ROM)。图2是示意图,表现了快闪存储器1中的单元阵列的结构的轮廓。该单元阵列许多的块B0、B1、B2......的一个群集例如,每个块包括32页。例如,头块B0包括32页P0-P31。其他的块B1、B2......相似。在快闪存储器1中,只能在逐块的基础上全体擦除数据项。每页包括(512+16)列×8个存储单元的二维排列。这里,这8个存储单元用该NAND类型的形式来加以连接,组成一列。另外,这些存储单元的512个列组成数据区DA,这些存储单元的剩余的16个列组成冗余区RA。在快闪存储器1中,逐页地执行数据写入和读取。这里,数据区DA和冗余区RA被独立加以存取。例如,一个存储单元存储一个比特的数据。然后,这些存储单元的一个列存储8个比特=1个字节。在该NAND类型的EEPROM中,这些存储单元的一个列中所存储的数据项每次作为一个字来加以发送或接收。如从以上所描述的结构中所计算的,该单元阵列的数据区DA具有每一页512个字节的存储容量,或每一块有512个字节×32=16千字节。冗余区RA存储该冗余区所属的页的数据区DA中所存储的数据项的各种属性。例如,该冗余区包括与该冗余区所属的页相对应的逻辑地址、示出该页是否空白的标记、示出是否启用或禁止使用被写在该页上的数据项(换言之,允许或禁止由该主机进行存取)的标记,以及/或者这些数据项的差错检测码(例如,CRC)。
当一个块尺寸或更大尺寸的数据流被存入快闪存储器1时,这些数据流从该空白块的顶页开始顺次被分成各页,并被写入这各个页的数据区DA。特别是,每个块中的逻辑页顺序可能按循环方式从该块中的物理页顺序平移形成,如下所述:在图2中,例如,头块B0的顶页(第一页)P0、第二页P1......第30页P29、第31页P30和最后一页(第32页)P31分别存储数据项D2、D3......D31、D0和D1。这里,表现头块B0的各页的参考符号P旁边的数值指出这各个页的物理页号。另外,表现页P0-P31中所存储的数据项的参考符号D旁边的数值指出这各个页的逻辑页号。然后,头块B0的页P0-P31的每个逻辑页号从该物理页号平移常数“2”而形成。
这些逻辑页顺序与这些物理页顺序之间的循环偏离通常在各个块之中有所变化。块的这种循环偏离被称作“该块的页偏移量”。块的页偏移量等同于该块的顶页的逻辑页号。在快闪存储器1中,这些页偏移量由这各个块的页偏移量存储区中所包括和所存储的0与31之间的整数来表示。这里,该页偏移量存储区是(例如)每个块的第一页的冗余区RA。在图2中,头块B0的页偏移量“2”被存储在顶页P0的冗余区RA中。此外,该页偏移量可能被存储在除该顶页以外的各页之一的冗余区RA中。在那种情况下,所存储的数据项可能是该页的逻辑页号,而不是该页偏移量本身。半导体存储器装置10可以从该页的逻辑页号与物理页号之间的偏离中来计算该页偏移量。
主机接口3(见图1)在外部总线7与内部总线8之间转运数据,并且在半导体存储器装置10中的各个功能装置与主机H之间实现数据交换。当从主机H接收关于快闪存储器1的数据读出命令时,主机接口3为该读出命令解码,并且将规定读取目标页的该逻辑地址发送到地址转换装置4。主机接口3进一步通过外部总线7将将要被读取的数据对象(由存储器控制器6从快闪存储器1传送到页缓冲器2)发送到主机H。当从主机H接收关于快闪存储器1的数据写命令时,主机接口3为该写命令解码,并且将规定该写目标页的该逻辑地址发送到地址转换装置4。主机接口3进一步通过内部总线8将将要被写入的数据对象(从主机H那里被接收)传送到页缓冲器2。
页缓冲器2较佳地是SRAM,并且暂时存储在主机接口3与存储器控制器6之间被交换的数据项。例如,页缓冲器2的存储容量是512个字节,并且实质上等同于快闪存储器1中的一页(的数据区DA)的存储容量。
地址转换部件4从主机接口3接收该逻辑地址。在该逻辑地址中,例如,高位各比特表示快闪存储器1中的一个块的逻辑地址(逻辑块地址),低位各比特表示该块中的一页的逻辑页号。地址转换装置4首先将该逻辑地址输入分成该逻辑块地址和该逻辑页号。地址转换部件4接下来对地址转换表格存储部件5进行存取。地址转换表格存储部件5较佳地是RAM,并且存储逻辑/物理地址转换表格L。地址转换部件4根据该逻辑/物理地址转换表格L,将该逻辑块地址转换成该对应的块的物理地址。该物理地址和该逻辑页号这一对数据被发送到存储器控制器6。这里,逻辑/物理地址转换表格L使被分配给快闪存储器1中的每个启用的块的逻辑块地址与该块的物理地址相对应的表。例如,地址转换装置4在半导体存储器装置10启动时扫描快闪存储器1的各块的顶页的冗余区RA,从而列出快闪存储器1中被启用的各个块的逻辑块地址。这样,在地址转换表格存储装置5中创建并存储逻辑/物理地址转换表格L。
例如,除了逻辑/物理地址转换表格L以外,地址转换表格存储装置5还为快闪存储器1的每个块存储标记F,以示出是否会是空白块。地址转换装置4根据该块的冗余区RA中所存储的数据检验快闪存储器1中的每个块以找出空白块,并且确定以上所描述的标记F。地址转换装置4进一步将标记F存入地址转换表格存储装置5。
存储器控制器6根据该物理地址和该逻辑页号这一对数据(从地址转换装置4那里被接收),来识别快闪存储器1中的一页。存储器控制器6为所识别的这页执行数据读取/写入。例如,在从主机H接收读出命令时,存储器控制器6首先从地址转换部件4接收从该读出命令的目的地址被加以转换的物理地址,并且识别与快闪存储器1中的该物理地址相对应的块。存储器控制器6接下来从该块的顶页的冗余区读取该块的页偏移量。存储器控制器6根据从地址转换装置4那里接收的页偏移量和逻辑页号,来识别对应于该逻辑页号的物理页号。存储器控制器6从快闪存储器1读取具有该物理页号的页上所存储的数据项,并且将该数据项传送到页缓冲器2。
在从主机H接收写命令时,存储器控制器6将数据写入快闪存储器1,即,在快闪存储器1的一个块中更新或增加页,如下所述:图3-5展示了由存储器控制器6写入数据的一种方法。图3表现了从页缓冲器2到快闪存储器1的传送过程,存储器控制器6为从主机H被传送到页缓冲器2的、将要被写入的数据对象DN8-DN12(参考符号DN旁边的数值表示逻辑页号)执行该传送过程。这里,让“8”成为该写命令的目的地址所指出的写目标页的逻辑页号。另外,假设:数据对象DN8-DN12的总数量实质上等同于快闪存储器1的五页的存储容量。图4和图5分别表现了从源块B0到目的块Bn的数据传送过程的前半部分和后半部分,存储器控制器6在图3中所示的数据传送过程之后执行该数据传送过程。
存储器控制器6首先从地址转换部件4接收物理地址。然后,存储器控制器6将对应于该物理地址的块识别为快闪存储器1中的源块。例如,在图3-5中,头块(第一个块)B0被识别为该源块。存储器控制器6接下来从源块B0的顶页(第一页)P0的冗余区RA读取源块B0的页偏移量“2”。数据项D0、D1......和D31(参考符号D旁边的数值表现存储这些数据项的各页的逻辑页号)被存储在源块B0的数据区DA中。如图3所示,在源块B0中,页P0-P31的逻辑页号(参考符号P旁边的数值表现这些物理页号)采用循环方式从这些物理页号平移页偏移量“2”。这里,页P0、P1......和P31可以包括处于被擦除状态的页(或空白页)。
存储器控制器6进一步从地址转换部件4接收该写目标页的逻辑页号“8”,并且确定逻辑页号“8”与源块B0的页偏移量“2”之间的差:“8-2=6”。这里,该差的范围一般是从-31-31,包括-31和31。当该差不是负数时,存储器控制器6将该差识别为该写目标页的物理页号。当以上所描述的差是负数时,存储器控制器6将每一块的总页号(=32)加入该差,并且将该总和数识别为该写目标页的物理页号。这样,该写目标页的物理页号被确定为0与31之间或与其相等的整数。在图3-5中,源块B0的第七页P6被识别为该写目标页。
存储器控制器6对地址转换表格存储装置5进行存取,并且,根据被存储在那里的标记F,将快闪存储器1中的空白块之一选作目的块。例如,在图3-5中,将第(n+1)个块Bn(n≥1)选作该目的块。目的块Bn中的32页Q0、Q1......和Q31中的任何页(参考符号Q旁边的数值表现物理页号)都是空白的。
主机接口3接收从主机H被发送的、将要被写入的数据对象DN8-DN12,并且逐页地将这些数据对象写入页缓冲器2。存储器控制器6将数据对象ND8-DN12逐页地从页缓冲器2传送到目的块Bn(见图3中所示的箭头)。数据对象DN8-DN12从目的块Bn的顶页Q0开始顺次被逐页地写入。由此,数据对象DN8-DN12被存储在目的块Bn的顶页Q0至第五页Q4的数据区DA中(见图3)。存储器控制器6进一步将该写目标页的逻辑页号“8”确定为目的块Bn的页偏移量,并且将该页偏移量写入目的块Bn的顶页Q0的冗余区RA。
每当将数据对象DN8-DN12从页缓冲器2传送到目的块Bn时,存储器控制器6计算该传送次数。主机H使用预定命令来通知半导体存储器装置10:将要被写入的数据对象的发送结束。存储器控制器6通过主机接口3来检测该命令。在检测该命令时,存储器控制器6根据以上所描述的传送次数来确定数据对象DN8-DN12的存储区Q0-Q4的页数为“5”。然后,存储器控制器6进一步开始从源块B0到目的块Bn的数据传送。这里,主机H可以为半导体存储器装置10提供存储数据对象DN8-DN12所要求的页数“5”的预先通知。在那种情况下,当以上所描述的传送次数达到所通知的页数“5”时,存储器控制器6开始从源块B0到目的块Bn的数据传送。
在从源块B0到目的块Bn的数据传送(以下被称作“块传送”)开始之前,页缓冲器2得到释放。存储器控制器6使用页缓冲器2来执行该块传送,如下所述(见图4和图5):首先,从源块B0的写目标页(第七页)P6计数的第五页(第12页)P11被识别为该块传送的起始页(以下被称作“传送起始页”)(见图4)。接下来,传送起始页P11至最后一页(第32页)P31上的数据项D13......D31、D0和D1被传送到目的块Bn,如下所述(见图4):首先,传送起始页P11上的数据项D13被读入页缓冲器2(见图4中所示的箭头R1)。另外,页缓冲器2中的数据项D13被写到目的块Bn的第六页Q5上(见图4中所示的箭头W1)。接下来,源块B0的第13页P12上的数据项D14被读入页缓冲器2(见图4中所示的箭头R2)。另外,页缓冲器2中的数据项D14被写到目的块Bn的第七页Q6上(见图4中所示的箭头W2)。经由页缓冲器2的以上所描述的数据传送被重复32-(6+5)=21次。结果,源块B0的第12页P11至最后一页P31上的数据项D13、D14......D31、D0和D1被传送到目的块Bn的第六页Q5至第26页Q25的数据区DA。
存储器控制器6接下来将顶页P0至就在源块B0的写目标页P6前面的页(第六页)P5的数据项D2、D3......和D7传送到目的块Bn,如下所述(见图5):首先,源块B0的顶页P0上的数据项D2被读入页缓冲器2(见图5中所示的箭头R26)。另外,数据项D2从页缓冲器2被写到目的块Bn的第27页Q26上。接下来,源块B0的第二页P1上的数据项D3同样经由页缓冲器2被传送到目的块Bn的第28页Q27。经由页缓冲器2的以上所描述的数据传送被重复六次。结果,顶页P0至就在源块B0的写目标页P6前面的页(第六页)P5上的数据项D2、D3......和D7被传送到目的块Bn的第27页Q26至最后一页Q31的数据区DA。
该传送起始页的物理页号等于该写目标页的物理页号和将要被写入的数据对象的存储区的页数的总和。这里,当该总和是每一块的总页号(=32)或更多时,该总和减去该总页号的值被识别为该传送起始页的物理页号。在那种情况下,存储器控制器6用类似于图5中所示的数据传送的方式来将该传送起始页至就在该写目标页前面的页上的数据项传送到目的块Bn。
作为由存储器控制器6执行的以上所描述的数据传送的结果,与源块B0对比,用目的块Bn中的新的数据项DN8-DN12来取代具有逻辑页号“8”~“12”的各页上的数据项D8-D12(见图5)。另外,该逻辑页顺序按循环方式改变,并且,该页偏移量从“2”变成“8”。
在该块传送完成时,存储器控制器6禁止使用或全体擦除源块B0中的数据项。那时,地址转换装置4更新逻辑/物理地址转换表格L,并且使与源块B0的物理地址相对应的逻辑地址跟目的块Bn的物理地址相对应。地址转换装置4进一步重置被存储在地址转换表格存储装置5中的标记F,以示出:源块B0是空白块。这样,在快闪存储器1的一个块中实现了页的更新和增加。
如上所述,从目的块Bn的顶页Q0开始并在最后一页Q31处结束,存储器控制器6将该数据从页缓冲器2写入目的块Bn。这个写入顺序等同于常规装置的写入顺序。相应地,与这些常规装置的配置相同的配置可以被用于将该数据从该页缓冲器写入该目的块。
由根据这个实施例的半导体存储器装置10来写入数据的方法如以下流程所示的那样来加以执行:图6是由半导体存储器装置10来写入数据的方法的流程图。
<步骤S1>
从主机H发出数据写命令。主机接口3接收该数据写命令,并将其解码成写目标页的逻辑地址。主机接口3进一步将该逻辑地址发送到地址转换装置4。
<步骤S2>
地址转换装置4从主机接口3接收该逻辑地址。然后,地址转换装置4参考逻辑/物理地址转换表格L,并将该逻辑地址转换成源块B0的物理地址和该写目标页的逻辑页号q(0≤q≤31)这一对数据。地址转换装置4进一步将这一对数据发送到存储器控制器6。
<步骤S3>
根据标记F,存储器控制器6对地址转换表格存储装置5进行存取,并将快闪存储器1中的空白块之一Bn选作目的块。这里,当源块B0是空白块时,源块B0本身可以被选作目的块Bn。在那种情况下,跳过以下的步骤S8和S9。
<步骤S4>
存储器控制器6将从地址转换装置4那里所接收的逻辑页号q写入目的块Bn的顶页Q0的冗余区RA(见图3)。
<步骤S5>
存储器控制器6从源块B0的顶页P0的冗余区RA读取源块B0的页偏移量p(0≤p≤31)。
<步骤S6>
存储器控制器6确定该写目标页的逻辑页号q与源块B0的页偏移量p之间的差。当该差q-p是负数(q-p<0)时,该控制器将每一块的总页号(=32)加入该差q-p。0与31之间的或与其相等的如此获得的整数q-p或32+q-p被识别为该写目标页的物理页号r:r=q-p或r=32+q-p。
<步骤S7>
主机接口3从主机H接收将要被写入的数据对象DN(q)、DN(q+1)......(参考符号DN旁边的、括弧中的参考符号表现逻辑页号)。主机接口3将数据对象DN(q)、DN(q+1)......逐页地传送到页缓冲器2。主机接口3进一步向存储器控制器6通知该传送。关于来自主机接口3的每个通知,存储器控制器6从目的块Bn的顶页Q0开始顺次传送页缓冲器2中的数据对象DN(q)、DN(q+1)......图7是这些传送的流程图。
子步骤SS71:当从主机接口3接收以上所描述的传送的第一个通知时,存储器控制器6初初化第一个整数变量k为0。
子步骤SS72:存储器控制器6将页缓冲器2中的数据项传送到目的块Bn的第(k+1)页Q(k)的数据区DA(参考符号Q旁边的、括弧中的参考符号表示该物理页号)(见图3)。
子步骤SS73:存储器控制器6将第一个整数变量k递增1。这样,第一个整数变量k指出从页缓冲器2到目的块Bn的数据对象DN(q)、DN(q+1)......的传送次数。
子步骤SS74:当结束发送数据对象DN(q)-DN(q+m-1)时,主机H发出表示该发送结束的预定命令。主机接口3检测该命令。存储器控制器6访问该主机接口3,并检验是否检测到该命令。当还没有检测到该命令时,从子步骤SS72开始重复该过程。当检测到该命令时,该过程进行到子步骤SS75。
子步骤SS75:当检测该命令时,存储器控制器6将第一个整数变量k识别为数据对象DN(q)-DN(q+m-1)的存储区Q0-Q(m-1)的页数m(1≤m≤32-q)。
<步骤S8>
存储器控制器6开始从源块B0到目的块Bn的数据传送(块传送)。图8是该块传送的流程图。
子步骤SS81:存储器控制器6初始化第二个整数变量i为0。
子步骤SS82:存储器控制器6总计该写目标页的物理页号r(见步骤S6)、数据对象DN(q)-DN(q+m-1)的存储区Q0-Q(m-1)的页数m,以及第二个整数变量i。当总和r+m+i小于32(r+m+i<32)时,该过程进行到子步骤SS83。当该总和r+m+i是32或更大(r+m+i≥32)时,该过程跳转到子步骤SS85。
子步骤SS83:存储器控制器6经由页缓冲器2将被存储在源块B0的第(r+m+i+1)页P(r+m+i)上的数据项D(q+m+i)传送到目的块Bn的第(m+i+1)页Q(m+i)(见图4)。这里,参考符号P和D旁边的、括弧中的参考符号分别表现该物理页号和逻辑页号。
子步骤SS84:存储器控制器6将第二个整数变量i递增1。然后,从子步骤SS82开始重复该过程。
由于子步骤SS82-SS84的循环,为第二个整数变量i=0、1、2......和31-(r+m)的每个值重复子步骤SS83。结果,源块B0的第(r+m+1)页P(r+m)至第32页(最后一页)P31的数据项D(q+m)、D(q+m+1)......和D(p-1)被传送到目的块Bn的第(m+1)页Qm至第(32-r)页Q(31-r)的数据区DA(见图4)。
子步骤SS85:存储器控制器6将第三个整数变量j的初始值设置成等于值r+m+i减去32:j=r+m+i-32。这里,当r+m<32时,第三个整数变量j的初始值等于0。当r+m≥32时,第三个整数变量j的初始值是r+m-32=q+m-p,它等于或大于0。
子步骤SS86:存储器控制器6将第三个整数变量j与该写目标页的物理页号r进行比较。当第三个整数变量j小于该写目标页的物理页号r(j<r)时,该过程进行到子步骤SS87。当第三个整数变量j等于该目标页的物理页号r(j=r)时,该过程跳转到步骤S9。
子步骤SS87:存储器控制器6经由页缓冲器2将源块B0的第(j+1)页P(j)上的数据项D(p+j)传送到目的块Bn的第(33-r+j)页Q(32-r+j)(见图5)。
子步骤SS88:存储器控制器6将第三个整数变量j递增1。然后,从子步骤SS86开始重复该过程。
由于子步骤SS86-SS88的循环,为整数变量j=0、1、2......r-1或j=q+m-p......p-1的每个值重复子步骤SS87。结果,源块B0的第一页P0至第r页P(r-1)的数据项D(p)......和D(q-1)被传送到目的块Bn的第(33-r)页Q(32-r)至第32页(最后一页)Q31的数据区DA(见图5)。作为选择,源块B0的第(q+m-p+1)页P(q+m-p)至第r页P(r-1)的数据项D(q+m)、......D31、D0......和D(q-1)还可被传送到目的块Bn的第(m+1)页Qm至第32页(最后一页)Q31的数据区DA。
<步骤S9>
存储器控制器6全体擦除或禁止使用源块B0中的数据项。然后,地址转换部件4更新逻辑/物理地址转换表格L,并且使与源块B0的物理地址相对应的逻辑地址跟目的块Bn的物理地址相对应。地址转换部件4进一步重置被存储在地址转换表格存储装置5中的标记F,以示出:源块B0是空白块。
如上所述,在更新和增加快闪存储器1的一个块中的页时,根据这个实施例的半导体存储器装置10将页缓冲器2用作该原始块的数据项的保存空间,从而与常规装置对比,除页缓冲器2以外不用包括保存缓冲器。结果,该半导体存储器装置所拥有的RAM的尺寸小于这些常规装置的RAM的尺寸。所以,可以维持这整个装置的小尺寸。
本发明在目前的较佳实施例方面的以上所描述的揭示不会被解释为意在起限制作用。毫无疑问,在阅读该揭示之后,精通本发明所属的技术领域的人将会明白各种变更和修改。就此推论,这类变更和修改显然处于本发明的真实的精神和范围以内。另外,将会理解,所附权利要求书意在包括这些变更和修改。
工业适用性
根据本发明的半导体存储器装置通过页缓冲器和保存缓冲器的集成来实现小型化。所以,本发明具有非常高的工业适用性。

Claims (6)

1.一种半导体存储器装置,其特征在于包括:
(A)快闪存储设备,它包括一个以上的块,其中的每个块包括不止一页,它还包括其中存储有所述块中的每个块的页偏移量的页偏移量存储区,并且,该快闪存储设备从空白块的顶页开始顺次将数据写入该空白块;
(B)页缓冲器,其内部暂时存储实质上与所述页中的一页的数据存储容量相同的数据量;
(C)地址转换装置,用于从主机接收规定写目标页的逻辑地址,并将该逻辑地址转换成所述写目标页所属的所述块,即源块的物理地址和所述写目标页的逻辑页号这一对数据;以及,
(D)存储器控制装置,用于
(a)读取所述源块的物理地址和所述写目标页的逻辑页号,
(b)将所述空白块之一选作目的块,
(c)根据所述写目标页的逻辑页号来确定所述目的块的页偏移量,并且,将该页偏移量写入所述页偏移量存储区,作为所述目的块的页偏移量,
(d)从所述页偏移量存储区读取所述源块的页偏移量,
(e)根据所述源块的页偏移量和所述写目标页的逻辑页号,来获得所述写目标页的物理页号,
(f)将要被写入的数据对象从目的块的顶页开始顺次写入所述目的块,该数据对象从所述主机被传送到所述页缓冲器,
(g)根据所述数据对象的页数和所述写目标页的物理页号,来获得所述源块的传送起始页的物理页号,以及,
(h)经由所述页缓冲器,将被存储在所述源块中的数据从所述传送起始页以顺序和循环方式传送到其中写入所述数据对象的所述目的块的页区的下一页或后面的页;
所述快闪存储设备连接至所述存储器控制装置,该存储器控制装置通过内部总线串联至主机接口,页缓冲器和地址转换装置并联连接至内部总线,且位于存储器控制装置和主机接口之间用于数据交换;
所述页偏移量存储区是快闪存储设备中的块的页中的冗余区。
2.一种半导体存储器装置,其特征在于包括:
(A)快闪存储设备,它包括一个以上的块,其中的每个块包括不止一页,并且,该快闪存储设备从空白块的顶页开始顺次将数据写入空白块;
(B)页偏移量存储装置,用于存储所述块中的每个块的页偏移量;
(C)页缓冲器,其中暂时存储实质上与所述各页中的一页的数据存储容量相同的数据量;
(D)地址转换装置,用于从主机接收规定写目标页的逻辑地址,并将该逻辑地址转换成源块的物理地址和所述写目标页的逻辑页号这一对数据;以及,
(E)存储器控制装置,用于
(a)读取所述源块的物理地址和所述写目标页的逻辑页号,
(b)将所述空白块之一选作目的块,
(c)根据所述写目标页的逻辑页号来确定所述目的块的页偏移量,并且,将该页偏移量写入所述页偏移量存储装置,作为所述目的块的页偏移量,
(d)从所述页偏移量存储装置读取所述源块的页偏移量,
(e)根据所述源块的页偏移量和所述写目标页的逻辑页号,来获得所述写目标页的物理页号,
(f)将要被写入的数据对象从目的块的顶页开始顺次写入所述目的块,该数据对象从所述主机被传送到所述页缓冲器,
(g)根据所述数据对象的页数和所述写目标页的物理页号,来获得所述源块的传送起始页的物理页号,以及,
(h)经由所述页缓冲器,将被存储在所述源块中的数据从所述传送起始页以顺序和循环方式传送到其中写入所述数据对象的所述目的块的页区的下一页或后面的页;
所述快闪存储设备连接至所述存储器控制装置,该存储器控制装置通过内部总线串联至主机接口,页缓冲器和地址转换装置并联连接至内部总线,且位于存储器控制装置和主机接口之间用于数据交换。
3.根据权利要求1或2的半导体存储器装置,其特征在于:其中:
(A)所述半导体存储器装置还包括:
(a)主机接口,用于接收所述写目标页和所述数据对象的逻辑地址,所述写目标页和所述数据对象从所述主机那里被发出;以及,
(b)地址转换表格存储部件,它存储表示关于所述快闪存储设备中的所述块中的每个块的逻辑地址与物理地址之间的对应性的逻辑/物理地址转换表格,以及用于表示所述块中的每个块是否是所述空白块的标记;以及,
(B)所述存储器控制装置计算页区的页数,并且,当该页数达到预定数量时,或者当所述主机通知所述数据对象的发送结束时,开始从所述源块到所述目的块的数据传输。
4.一种将数据写入快闪存储设备的方法,其特征在于:该方法将数据写入包括一个以上的块的快闪存储设备,其中的每个块包括不止一页,并且,该方法从空白块的顶页开始顺次将数据写入该空白块;
该方法包括以下步骤:
(A)从主机接收规定写目标页的逻辑地址;
(B)将所述逻辑地址转换成源块的物理地址和所述写目标页的逻辑页号这一对数据;
(C)将所述空白块之一选作目的块;
(D)根据所述写目标页的逻辑页号来确定所述目的块的页偏移量,并且,将该页偏移量写入所述快闪存储设备中的页偏移量存储区,作为所述目的块的页偏移量;
(E)从所述页偏移量存储区读取所述源块的页偏移量;
(F)根据所述源块的页偏移量和所述写目标页的逻辑页号,来确定所述写目标页的物理页号;
(G)从目的块的顶页开始顺次将将要被写入的数据对象写入所述目的块,该数据对象从所述主机被传送到页缓冲器;以及,
(H)根据所述数据对象的页数和所述写目标页的物理页号来获得所述源块的传送开始页的物理页号,并且,经由所述页缓冲器,将被存储在所述源块中的数据从所述传送开始页以顺序和循环方式传送到其中写入所述数据对象的所述目的块的页的下一页或后面的页;
所述页偏移量存储区是快闪存储设备中的块的页中的冗余区。
5.一种将数据写入快闪存储设备的方法,其特征在于:该方法将数据写入包括一个以上的块的快闪存储设备,其中的每个块包括不止一页,并且,该方法从空白块的顶页开始顺次将数据写入该空白块;
该方法包括以下步骤:
(A)从主机接收规定写目标页的逻辑地址;
(B)将所述逻辑地址转换成源块的物理地址和所述写目标页的逻辑页号这一对数据;
(C)将所述空白块之一选作目的块;
(D)根据所述写目标页的逻辑页号来确定所述目的块的页偏移量,并且,将该页偏移量写入页偏移量存储装置,作为所述目的块的页偏移量;
(E)从所述页偏移量存储装置读取所述源块的页偏移量;
(F)根据所述源块的页偏移量和所述写目标页的逻辑页号,来确定所述写目标页的物理页号;
(G)从目的块的顶页开始顺次将将要被写入的数据对象写入所述目的块,该数据对象从所述主机被传送到页缓冲器;以及,
(H)根据所述数据对象的页数和所述写目标页的物理页号来获得所述源块的传送开始页的物理页号,并且,经由所述页缓冲器,将被存储在所述源块中的数据从所述传送开始页以顺序和循环方式传送到其中写入所述数据对象的所述目的块的页的下一页或后面的页。
6.根据权利要求4或5的将数据写入快闪存储设备的方法,其特征在于:还包括这个步骤:计算页区的页数,并且,当该页数达到预定数量时,或者当所述主机通知所述数据对象的发送结束时,开始从所述源块到所述目的块的数据传输。
CNB038014769A 2002-08-29 2003-08-25 用于将数据写入快闪存储设备的半导体存储器的装置和方法 Expired - Fee Related CN100347685C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002251194 2002-08-29
JP251194/2002 2002-08-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CNA2007101472279A Division CN101114255A (zh) 2002-08-29 2003-08-25 用于将数据写入快闪存储设备的半导体存储器的装置和方法

Publications (2)

Publication Number Publication Date
CN1585930A CN1585930A (zh) 2005-02-23
CN100347685C true CN100347685C (zh) 2007-11-07

Family

ID=31972668

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB038014769A Expired - Fee Related CN100347685C (zh) 2002-08-29 2003-08-25 用于将数据写入快闪存储设备的半导体存储器的装置和方法
CNA2007101472279A Pending CN101114255A (zh) 2002-08-29 2003-08-25 用于将数据写入快闪存储设备的半导体存储器的装置和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNA2007101472279A Pending CN101114255A (zh) 2002-08-29 2003-08-25 用于将数据写入快闪存储设备的半导体存储器的装置和方法

Country Status (8)

Country Link
US (2) US7107389B2 (zh)
EP (1) EP1533702A4 (zh)
JP (1) JP4358111B2 (zh)
KR (1) KR100944054B1 (zh)
CN (2) CN100347685C (zh)
CA (1) CA2461446A1 (zh)
TW (1) TWI260535B (zh)
WO (1) WO2004021191A1 (zh)

Families Citing this family (279)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004031966A1 (ja) * 2002-10-02 2004-04-15 Matsushita Electric Industrial Co., Ltd. 不揮発性記憶装置の制御方法
JP4253272B2 (ja) 2004-05-27 2009-04-08 株式会社東芝 メモリカード、半導体装置、及び半導体メモリの制御方法
US7383414B2 (en) * 2004-05-28 2008-06-03 Oracle International Corporation Method and apparatus for memory-mapped input/output
JP3969494B2 (ja) * 2004-08-31 2007-09-05 三菱電機株式会社 車載電子制御装置
JP2006085380A (ja) * 2004-09-15 2006-03-30 Toshiba Corp ファイルストレージデバイス、プログラム、及び不揮発性半導体メモリの書込方法
US7409623B2 (en) * 2004-11-04 2008-08-05 Sigmatel, Inc. System and method of reading non-volatile computer memory
KR100706242B1 (ko) * 2005-02-07 2007-04-11 삼성전자주식회사 메모리 시스템 및 그것의 런 단위 어드레스 매핑 테이블 구성 방법
JP5130646B2 (ja) 2005-06-06 2013-01-30 ソニー株式会社 記憶装置
JP4688584B2 (ja) * 2005-06-21 2011-05-25 株式会社日立製作所 ストレージ装置
KR101197556B1 (ko) * 2006-01-09 2012-11-09 삼성전자주식회사 불 휘발성 메모리의 프로그램 동작을 검증하는 장치 및방법, 그리고 그 장치를 포함한 메모리 카드
JP2007199905A (ja) * 2006-01-25 2007-08-09 Toshiba Corp 半導体記憶装置の制御方法
CN101288056A (zh) 2006-03-13 2008-10-15 松下电器产业株式会社 闪速存储器用的存储控制器
US7996598B2 (en) * 2006-03-14 2011-08-09 Stmicroelectronics Pvt. Ltd. Memory management module
JP2008009527A (ja) * 2006-06-27 2008-01-17 Toshiba Corp メモリシステム
KR100816148B1 (ko) * 2006-09-29 2008-03-21 주식회사 하이닉스반도체 플래시 메모리 소자 및 이의 독출 방법
CN101105774B (zh) * 2006-10-26 2010-08-11 福昭科技(深圳)有限公司 闪存记忆体在进行数据存取时的逻辑与物理地址转换方法
TWI326028B (en) 2006-11-20 2010-06-11 Silicon Motion Inc Method for flash memory data management
CN101196851B (zh) * 2006-12-05 2011-09-07 慧荣科技股份有限公司 闪存的数据管理方法
DE602008002278D1 (de) * 2007-05-02 2010-10-07 St Microelectronics Sa Nicht flüchtiger Speicher mit drehbaren Hilfssegmenten
US7962683B2 (en) * 2007-08-15 2011-06-14 Silicon Motion, Inc. Flash memory, and method for operating a flash memory
US20090144458A1 (en) * 2007-12-03 2009-06-04 Broadcom Corporation Dongle device and host device with millimeter wave host inerface and method for use therewith
CN101256564B (zh) * 2007-12-25 2010-06-02 深圳市同洲电子股份有限公司 一种循环文件的操作方法
US8028123B2 (en) * 2008-04-15 2011-09-27 SMART Modular Technologies (AZ) , Inc. Circular wear leveling
US8566505B2 (en) * 2008-04-15 2013-10-22 SMART Storage Systems, Inc. Flash management using sequential techniques
WO2009129340A2 (en) * 2008-04-15 2009-10-22 Adtron, Inc. Flash memory management
US20090259806A1 (en) * 2008-04-15 2009-10-15 Adtron, Inc. Flash management using bad page tracking and high defect flash memory
US8180954B2 (en) * 2008-04-15 2012-05-15 SMART Storage Systems, Inc. Flash management using logical page size
US8185778B2 (en) * 2008-04-15 2012-05-22 SMART Storage Systems, Inc. Flash management using separate metadata storage
US8555086B2 (en) * 2008-06-30 2013-10-08 Intel Corporation Encrypting data on a non-volatile memory
CN101673245B (zh) * 2008-09-09 2016-02-03 株式会社东芝 包括存储器管理装置的信息处理装置和存储器管理方法
CN101676885B (zh) * 2008-09-17 2013-08-21 群联电子股份有限公司 数据管理方法及其存储装置与其控制器
US8566562B2 (en) * 2008-10-03 2013-10-22 Skymedi Corporation Method for sequentially writing data with an offset to a non-volatile memory
US8296503B2 (en) * 2009-05-26 2012-10-23 Mediatek Inc. Data updating and recovering methods for a non-volatile memory array
TWI426384B (zh) * 2009-09-10 2014-02-11 Robustflash Technologies Ltd 資料寫入方法與系統
CN101673243B (zh) * 2009-09-29 2011-09-07 威盛电子股份有限公司 数据储存装置与方法
TWI437569B (zh) * 2009-10-16 2014-05-11 Silicon Motion Inc 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
TWI416525B (zh) * 2009-12-15 2013-11-21 Asolid Technology Co Ltd 非揮發性記憶體裝置及其損耗平均方法
US8381018B2 (en) 2010-05-21 2013-02-19 Mediatek Inc. Method for data recovery for flash devices
US8909851B2 (en) 2011-02-08 2014-12-09 SMART Storage Systems, Inc. Storage control system with change logging mechanism and method of operation thereof
US8935466B2 (en) 2011-03-28 2015-01-13 SMART Storage Systems, Inc. Data storage system with non-volatile memory and method of operation thereof
US9098399B2 (en) 2011-08-31 2015-08-04 SMART Storage Systems, Inc. Electronic system with storage management mechanism and method of operation thereof
US9021319B2 (en) 2011-09-02 2015-04-28 SMART Storage Systems, Inc. Non-volatile memory management system with load leveling and method of operation thereof
US9063844B2 (en) 2011-09-02 2015-06-23 SMART Storage Systems, Inc. Non-volatile memory management system with time measure mechanism and method of operation thereof
US9021231B2 (en) 2011-09-02 2015-04-28 SMART Storage Systems, Inc. Storage control system with write amplification control mechanism and method of operation thereof
US8797799B2 (en) * 2012-01-05 2014-08-05 Conversant Intellectual Property Management Inc. Device selection schemes in multi chip package NAND flash memory system
US9239781B2 (en) 2012-02-07 2016-01-19 SMART Storage Systems, Inc. Storage control system with erase block mechanism and method of operation thereof
US9298252B2 (en) 2012-04-17 2016-03-29 SMART Storage Systems, Inc. Storage control system with power down mechanism and method of operation thereof
TWI486766B (zh) * 2012-05-11 2015-06-01 Phison Electronics Corp 資料處理方法、記憶體控制器與記憶體儲存裝置
CN102722456B (zh) * 2012-05-30 2015-02-04 深圳市江波龙电子有限公司 闪存存储设备的数据写入方法和闪存存储设备
US8949689B2 (en) 2012-06-11 2015-02-03 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
CN103019616B (zh) * 2012-11-23 2015-11-25 记忆科技(深圳)有限公司 一种固态硬盘及闪存芯片的充放电控制方法
US9671962B2 (en) 2012-11-30 2017-06-06 Sandisk Technologies Llc Storage control system with data management mechanism of parity and method of operation thereof
US9123445B2 (en) 2013-01-22 2015-09-01 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9183137B2 (en) 2013-02-27 2015-11-10 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9470720B2 (en) 2013-03-08 2016-10-18 Sandisk Technologies Llc Test system with localized heating and method of manufacture thereof
US9043780B2 (en) 2013-03-27 2015-05-26 SMART Storage Systems, Inc. Electronic system with system modification control mechanism and method of operation thereof
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US9543025B2 (en) 2013-04-11 2017-01-10 Sandisk Technologies Llc Storage control system with power-off time estimation mechanism and method of operation thereof
US10546648B2 (en) 2013-04-12 2020-01-28 Sandisk Technologies Llc Storage control system with data management mechanism and method of operation thereof
US9313874B2 (en) 2013-06-19 2016-04-12 SMART Storage Systems, Inc. Electronic system with heat extraction and method of manufacture thereof
US9898056B2 (en) 2013-06-19 2018-02-20 Sandisk Technologies Llc Electronic assembly with thermal channel and method of manufacture thereof
US9244519B1 (en) 2013-06-25 2016-01-26 Smart Storage Systems. Inc. Storage system with data transfer rate adjustment for power throttling
US9367353B1 (en) 2013-06-25 2016-06-14 Sandisk Technologies Inc. Storage control system with power throttling mechanism and method of operation thereof
US9146850B2 (en) 2013-08-01 2015-09-29 SMART Storage Systems, Inc. Data storage system with dynamic read threshold mechanism and method of operation thereof
US9448946B2 (en) 2013-08-07 2016-09-20 Sandisk Technologies Llc Data storage system with stale data mechanism and method of operation thereof
US9431113B2 (en) 2013-08-07 2016-08-30 Sandisk Technologies Llc Data storage system with dynamic erase block grouping mechanism and method of operation thereof
US9361222B2 (en) 2013-08-07 2016-06-07 SMART Storage Systems, Inc. Electronic system with storage drive life estimation mechanism and method of operation thereof
US11630585B1 (en) 2016-08-25 2023-04-18 Pure Storage, Inc. Processing evacuation events in a storage array that includes a plurality of storage devices
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
CN103778964B (zh) * 2013-12-30 2016-08-17 上海晨思电子科技有限公司 一种NAND Flash烧写数据的处理、使用方法及装置、系统
JP2015138272A (ja) * 2014-01-20 2015-07-30 ソニー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
US9653184B2 (en) 2014-06-16 2017-05-16 Sandisk Technologies Llc Non-volatile memory module with physical-to-physical address remapping
US9613715B2 (en) 2014-06-16 2017-04-04 Sandisk Technologies Llc Low-test memory stack for non-volatile storage
US8976609B1 (en) 2014-06-16 2015-03-10 Sandisk Enterprise Ip Llc Low-test memory stack for non-volatile storage
CN104166627B (zh) * 2014-09-02 2017-12-08 科大智能电气技术有限公司 一种基于单片机的nand‑flash写操作方法
US9716755B2 (en) 2015-05-26 2017-07-25 Pure Storage, Inc. Providing cloud storage array services by a local storage array in a data center
US11102298B1 (en) 2015-05-26 2021-08-24 Pure Storage, Inc. Locally providing cloud storage services for fleet management
US9594678B1 (en) 2015-05-27 2017-03-14 Pure Storage, Inc. Preventing duplicate entries of identical data in a storage device
US10021170B2 (en) 2015-05-29 2018-07-10 Pure Storage, Inc. Managing a storage array using client-side services
US9444822B1 (en) 2015-05-29 2016-09-13 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
US9300660B1 (en) 2015-05-29 2016-03-29 Pure Storage, Inc. Providing authorization and authentication in a cloud for a user of a storage array
US11503031B1 (en) 2015-05-29 2022-11-15 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
US9588691B2 (en) 2015-06-10 2017-03-07 Pure Storage, Inc. Dynamically managing control information in a storage device
US9594512B1 (en) 2015-06-19 2017-03-14 Pure Storage, Inc. Attributing consumed storage capacity among entities storing data in a storage array
US9547441B1 (en) 2015-06-23 2017-01-17 Pure Storage, Inc. Exposing a geometry of a storage device
US10310740B2 (en) * 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US10296236B2 (en) 2015-07-01 2019-05-21 Pure Storage, Inc. Offloading device management responsibilities from a storage device in an array of storage devices
US9892071B2 (en) 2015-08-03 2018-02-13 Pure Storage, Inc. Emulating a remote direct memory access (‘RDMA’) link between controllers in a storage array
US9851762B1 (en) 2015-08-06 2017-12-26 Pure Storage, Inc. Compliant printed circuit board (‘PCB’) within an enclosure
US10198194B2 (en) 2015-08-24 2019-02-05 Pure Storage, Inc. Placing data within a storage device of a flash array
US11625181B1 (en) 2015-08-24 2023-04-11 Pure Storage, Inc. Data tiering using snapshots
US11294588B1 (en) 2015-08-24 2022-04-05 Pure Storage, Inc. Placing data within a storage device
US10514978B1 (en) 2015-10-23 2019-12-24 Pure Storage, Inc. Automatic deployment of corrective measures for storage arrays
US9384082B1 (en) 2015-10-23 2016-07-05 Pure Storage, Inc. Proactively providing corrective measures for storage arrays
US11360844B1 (en) 2015-10-23 2022-06-14 Pure Storage, Inc. Recovery of a container storage provider
US10284232B2 (en) 2015-10-28 2019-05-07 Pure Storage, Inc. Dynamic error processing in a storage device
US10374868B2 (en) 2015-10-29 2019-08-06 Pure Storage, Inc. Distributed command processing in a flash storage system
US9740414B2 (en) 2015-10-29 2017-08-22 Pure Storage, Inc. Optimizing copy operations
US10353777B2 (en) 2015-10-30 2019-07-16 Pure Storage, Inc. Ensuring crash-safe forward progress of a system configuration update
US11762764B1 (en) 2015-12-02 2023-09-19 Pure Storage, Inc. Writing data in a storage system that includes a first type of storage device and a second type of storage device
US9760479B2 (en) 2015-12-02 2017-09-12 Pure Storage, Inc. Writing data in a storage system that includes a first type of storage device and a second type of storage device
US10326836B2 (en) 2015-12-08 2019-06-18 Pure Storage, Inc. Partially replicating a snapshot between storage systems
US11616834B2 (en) 2015-12-08 2023-03-28 Pure Storage, Inc. Efficient replication of a dataset to the cloud
US10162835B2 (en) 2015-12-15 2018-12-25 Pure Storage, Inc. Proactive management of a plurality of storage arrays in a multi-array system
US11347697B1 (en) 2015-12-15 2022-05-31 Pure Storage, Inc. Proactively optimizing a storage system
US10346043B2 (en) 2015-12-28 2019-07-09 Pure Storage, Inc. Adaptive computing for data compression
US9886314B2 (en) 2016-01-28 2018-02-06 Pure Storage, Inc. Placing workloads in a multi-array system
US10572460B2 (en) 2016-02-11 2020-02-25 Pure Storage, Inc. Compressing data in dependence upon characteristics of a storage system
US9760297B2 (en) 2016-02-12 2017-09-12 Pure Storage, Inc. Managing input/output (‘I/O’) queues in a data storage system
US9959043B2 (en) 2016-03-16 2018-05-01 Pure Storage, Inc. Performing a non-disruptive upgrade of data in a storage system
US11995315B2 (en) 2016-03-16 2024-05-28 Pure Storage, Inc. Converting data formats in a storage system
US9841921B2 (en) 2016-04-27 2017-12-12 Pure Storage, Inc. Migrating data in a storage array that includes a plurality of storage devices
US11112990B1 (en) 2016-04-27 2021-09-07 Pure Storage, Inc. Managing storage device evacuation
US11809727B1 (en) 2016-04-27 2023-11-07 Pure Storage, Inc. Predicting failures in a storage system that includes a plurality of storage devices
US9811264B1 (en) 2016-04-28 2017-11-07 Pure Storage, Inc. Deploying client-specific applications in a storage system utilizing redundant system resources
US10303390B1 (en) 2016-05-02 2019-05-28 Pure Storage, Inc. Resolving fingerprint collisions in flash storage system
US11231858B2 (en) 2016-05-19 2022-01-25 Pure Storage, Inc. Dynamically configuring a storage system to facilitate independent scaling of resources
US9507532B1 (en) 2016-05-20 2016-11-29 Pure Storage, Inc. Migrating data in a storage array that includes a plurality of storage devices and a plurality of write buffer devices
US10691567B2 (en) 2016-06-03 2020-06-23 Pure Storage, Inc. Dynamically forming a failure domain in a storage system that includes a plurality of blades
US10452310B1 (en) 2016-07-13 2019-10-22 Pure Storage, Inc. Validating cabling for storage component admission to a storage array
US11706895B2 (en) 2016-07-19 2023-07-18 Pure Storage, Inc. Independent scaling of compute resources and storage resources in a storage system
US10459652B2 (en) 2016-07-27 2019-10-29 Pure Storage, Inc. Evacuating blades in a storage array that includes a plurality of blades
US10474363B1 (en) 2016-07-29 2019-11-12 Pure Storage, Inc. Space reporting in a storage system
US10235229B1 (en) 2016-09-07 2019-03-19 Pure Storage, Inc. Rehabilitating storage devices in a storage array that includes a plurality of storage devices
US11960348B2 (en) 2016-09-07 2024-04-16 Pure Storage, Inc. Cloud-based monitoring of hardware components in a fleet of storage systems
US11481261B1 (en) 2016-09-07 2022-10-25 Pure Storage, Inc. Preventing extended latency in a storage system
US10671439B1 (en) 2016-09-07 2020-06-02 Pure Storage, Inc. Workload planning with quality-of-service (‘QOS’) integration
US11531577B1 (en) 2016-09-07 2022-12-20 Pure Storage, Inc. Temporarily limiting access to a storage device
US10908966B1 (en) 2016-09-07 2021-02-02 Pure Storage, Inc. Adapting target service times in a storage system
US10146585B2 (en) 2016-09-07 2018-12-04 Pure Storage, Inc. Ensuring the fair utilization of system resources using workload based, time-independent scheduling
US11886922B2 (en) 2016-09-07 2024-01-30 Pure Storage, Inc. Scheduling input/output operations for a storage system
US10331588B2 (en) 2016-09-07 2019-06-25 Pure Storage, Inc. Ensuring the appropriate utilization of system resources using weighted workload based, time-independent scheduling
US10007459B2 (en) 2016-10-20 2018-06-26 Pure Storage, Inc. Performance tuning in a storage system that includes one or more storage devices
US11379132B1 (en) 2016-10-20 2022-07-05 Pure Storage, Inc. Correlating medical sensor data
US11620075B2 (en) 2016-11-22 2023-04-04 Pure Storage, Inc. Providing application aware storage
US10162566B2 (en) 2016-11-22 2018-12-25 Pure Storage, Inc. Accumulating application-level statistics in a storage system
US10198205B1 (en) 2016-12-19 2019-02-05 Pure Storage, Inc. Dynamically adjusting a number of storage devices utilized to simultaneously service write operations
US11461273B1 (en) 2016-12-20 2022-10-04 Pure Storage, Inc. Modifying storage distribution in a storage system that includes one or more storage devices
US10489307B2 (en) 2017-01-05 2019-11-26 Pure Storage, Inc. Periodically re-encrypting user data stored on a storage device
US11307998B2 (en) 2017-01-09 2022-04-19 Pure Storage, Inc. Storage efficiency of encrypted host system data
US10503700B1 (en) 2017-01-19 2019-12-10 Pure Storage, Inc. On-demand content filtering of snapshots within a storage system
US11340800B1 (en) 2017-01-19 2022-05-24 Pure Storage, Inc. Content masking in a storage system
US11163624B2 (en) 2017-01-27 2021-11-02 Pure Storage, Inc. Dynamically adjusting an amount of log data generated for a storage system
US11803453B1 (en) 2017-03-10 2023-10-31 Pure Storage, Inc. Using host connectivity states to avoid queuing I/O requests
US11675520B2 (en) 2017-03-10 2023-06-13 Pure Storage, Inc. Application replication among storage systems synchronously replicating a dataset
US10503427B2 (en) 2017-03-10 2019-12-10 Pure Storage, Inc. Synchronously replicating datasets and other managed objects to cloud-based storage systems
US11941279B2 (en) 2017-03-10 2024-03-26 Pure Storage, Inc. Data path virtualization
US10454810B1 (en) 2017-03-10 2019-10-22 Pure Storage, Inc. Managing host definitions across a plurality of storage systems
US11169727B1 (en) 2017-03-10 2021-11-09 Pure Storage, Inc. Synchronous replication between storage systems with virtualized storage
US10521344B1 (en) 2017-03-10 2019-12-31 Pure Storage, Inc. Servicing input/output (‘I/O’) operations directed to a dataset that is synchronized across a plurality of storage systems
US11442825B2 (en) 2017-03-10 2022-09-13 Pure Storage, Inc. Establishing a synchronous replication relationship between two or more storage systems
US11089105B1 (en) 2017-12-14 2021-08-10 Pure Storage, Inc. Synchronously replicating datasets in cloud-based storage systems
US9910618B1 (en) 2017-04-10 2018-03-06 Pure Storage, Inc. Migrating applications executing on a storage system
US10459664B1 (en) 2017-04-10 2019-10-29 Pure Storage, Inc. Virtualized copy-by-reference
US11868629B1 (en) 2017-05-05 2024-01-09 Pure Storage, Inc. Storage system sizing service
US11016824B1 (en) 2017-06-12 2021-05-25 Pure Storage, Inc. Event identification with out-of-order reporting in a cloud-based environment
US11592991B2 (en) 2017-09-07 2023-02-28 Pure Storage, Inc. Converting raid data between persistent storage types
US10976962B2 (en) 2018-03-15 2021-04-13 Pure Storage, Inc. Servicing I/O operations in a cloud-based storage system
US11340939B1 (en) 2017-06-12 2022-05-24 Pure Storage, Inc. Application-aware analytics for storage systems
US11422731B1 (en) 2017-06-12 2022-08-23 Pure Storage, Inc. Metadata-based replication of a dataset
CN116431072A (zh) 2017-06-12 2023-07-14 净睿存储股份有限公司 集成到大容量存储设备的可访问快速耐久存储
US11210133B1 (en) 2017-06-12 2021-12-28 Pure Storage, Inc. Workload mobility between disparate execution environments
US10884636B1 (en) 2017-06-12 2021-01-05 Pure Storage, Inc. Presenting workload performance in a storage system
US10853148B1 (en) 2017-06-12 2020-12-01 Pure Storage, Inc. Migrating workloads between a plurality of execution environments
US10552090B2 (en) 2017-09-07 2020-02-04 Pure Storage, Inc. Solid state drives with multiple types of addressable memory
US11442669B1 (en) 2018-03-15 2022-09-13 Pure Storage, Inc. Orchestrating a virtual storage system
US11989429B1 (en) 2017-06-12 2024-05-21 Pure Storage, Inc. Recommending changes to a storage system
US20180357017A1 (en) 2017-06-12 2018-12-13 Pure Storage, Inc. Accessible fast durable storage integrated into a bulk storage device
US11609718B1 (en) 2017-06-12 2023-03-21 Pure Storage, Inc. Identifying valid data after a storage system recovery
US10417092B2 (en) 2017-09-07 2019-09-17 Pure Storage, Inc. Incremental RAID stripe update parity calculation
US10613791B2 (en) 2017-06-12 2020-04-07 Pure Storage, Inc. Portable snapshot replication between storage systems
US11561714B1 (en) 2017-07-05 2023-01-24 Pure Storage, Inc. Storage efficiency driven migration
US11477280B1 (en) 2017-07-26 2022-10-18 Pure Storage, Inc. Integrating cloud storage services
US10831935B2 (en) 2017-08-31 2020-11-10 Pure Storage, Inc. Encryption management with host-side data reduction
US10671435B1 (en) 2017-10-19 2020-06-02 Pure Storage, Inc. Data transformation caching in an artificial intelligence infrastructure
US11861423B1 (en) 2017-10-19 2024-01-02 Pure Storage, Inc. Accelerating artificial intelligence (‘AI’) workflows
US10360214B2 (en) 2017-10-19 2019-07-23 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
US11455168B1 (en) 2017-10-19 2022-09-27 Pure Storage, Inc. Batch building for deep learning training workloads
US10452444B1 (en) 2017-10-19 2019-10-22 Pure Storage, Inc. Storage system with compute resources and shared storage resources
US11494692B1 (en) 2018-03-26 2022-11-08 Pure Storage, Inc. Hyperscale artificial intelligence and machine learning infrastructure
US10671494B1 (en) 2017-11-01 2020-06-02 Pure Storage, Inc. Consistent selection of replicated datasets during storage system recovery
US10817392B1 (en) 2017-11-01 2020-10-27 Pure Storage, Inc. Ensuring resiliency to storage device failures in a storage system that includes a plurality of storage devices
US10509581B1 (en) 2017-11-01 2019-12-17 Pure Storage, Inc. Maintaining write consistency in a multi-threaded storage system
US10467107B1 (en) 2017-11-01 2019-11-05 Pure Storage, Inc. Maintaining metadata resiliency among storage device failures
US10484174B1 (en) 2017-11-01 2019-11-19 Pure Storage, Inc. Protecting an encryption key for data stored in a storage system that includes a plurality of storage devices
US10929226B1 (en) 2017-11-21 2021-02-23 Pure Storage, Inc. Providing for increased flexibility for large scale parity
US10990282B1 (en) 2017-11-28 2021-04-27 Pure Storage, Inc. Hybrid data tiering with cloud storage
US10936238B2 (en) 2017-11-28 2021-03-02 Pure Storage, Inc. Hybrid data tiering
US10795598B1 (en) 2017-12-07 2020-10-06 Pure Storage, Inc. Volume migration for storage systems synchronously replicating a dataset
US11036677B1 (en) 2017-12-14 2021-06-15 Pure Storage, Inc. Replicated data integrity
US10929031B2 (en) 2017-12-21 2021-02-23 Pure Storage, Inc. Maximizing data reduction in a partially encrypted volume
US10992533B1 (en) 2018-01-30 2021-04-27 Pure Storage, Inc. Policy based path management
US10942650B1 (en) 2018-03-05 2021-03-09 Pure Storage, Inc. Reporting capacity utilization in a storage system
US10521151B1 (en) 2018-03-05 2019-12-31 Pure Storage, Inc. Determining effective space utilization in a storage system
US11150834B1 (en) 2018-03-05 2021-10-19 Pure Storage, Inc. Determining storage consumption in a storage system
US11972134B2 (en) 2018-03-05 2024-04-30 Pure Storage, Inc. Resource utilization using normalized input/output (‘I/O’) operations
US11861170B2 (en) 2018-03-05 2024-01-02 Pure Storage, Inc. Sizing resources for a replication target
US10296258B1 (en) 2018-03-09 2019-05-21 Pure Storage, Inc. Offloading data storage to a decentralized storage network
US10924548B1 (en) 2018-03-15 2021-02-16 Pure Storage, Inc. Symmetric storage using a cloud-based storage system
US11048590B1 (en) 2018-03-15 2021-06-29 Pure Storage, Inc. Data consistency during recovery in a cloud-based storage system
US10917471B1 (en) 2018-03-15 2021-02-09 Pure Storage, Inc. Active membership in a cloud-based storage system
US11210009B1 (en) 2018-03-15 2021-12-28 Pure Storage, Inc. Staging data in a cloud-based storage system
US11288138B1 (en) 2018-03-15 2022-03-29 Pure Storage, Inc. Recovery from a system fault in a cloud-based storage system
US11095706B1 (en) 2018-03-21 2021-08-17 Pure Storage, Inc. Secure cloud-based storage system management
US11171950B1 (en) 2018-03-21 2021-11-09 Pure Storage, Inc. Secure cloud-based storage system management
US10838833B1 (en) 2018-03-26 2020-11-17 Pure Storage, Inc. Providing for high availability in a data analytics pipeline without replicas
US11436344B1 (en) 2018-04-24 2022-09-06 Pure Storage, Inc. Secure encryption in deduplication cluster
US11392553B1 (en) 2018-04-24 2022-07-19 Pure Storage, Inc. Remote data management
US10992598B2 (en) 2018-05-21 2021-04-27 Pure Storage, Inc. Synchronously replicating when a mediation service becomes unavailable
US11954220B2 (en) 2018-05-21 2024-04-09 Pure Storage, Inc. Data protection for container storage
US11675503B1 (en) 2018-05-21 2023-06-13 Pure Storage, Inc. Role-based data access
US11455409B2 (en) 2018-05-21 2022-09-27 Pure Storage, Inc. Storage layer data obfuscation
US10871922B2 (en) 2018-05-22 2020-12-22 Pure Storage, Inc. Integrated storage management between storage systems and container orchestrators
US11403000B1 (en) 2018-07-20 2022-08-02 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11416298B1 (en) 2018-07-20 2022-08-16 Pure Storage, Inc. Providing application-specific storage by a storage system
US11954238B1 (en) 2018-07-24 2024-04-09 Pure Storage, Inc. Role-based access control for a storage system
US11632360B1 (en) 2018-07-24 2023-04-18 Pure Storage, Inc. Remote access to a storage device
US11146564B1 (en) 2018-07-24 2021-10-12 Pure Storage, Inc. Login authentication in a cloud storage platform
WO2020039927A1 (ja) * 2018-08-21 2020-02-27 ソニー株式会社 不揮発性記憶装置、ホスト装置、及びデータ記憶システム
US11436151B2 (en) * 2018-08-29 2022-09-06 Seagate Technology Llc Semi-sequential drive I/O performance
US11860820B1 (en) 2018-09-11 2024-01-02 Pure Storage, Inc. Processing data through a storage system in a data pipeline
US10671302B1 (en) 2018-10-26 2020-06-02 Pure Storage, Inc. Applying a rate limit across a plurality of storage systems
US11379254B1 (en) 2018-11-18 2022-07-05 Pure Storage, Inc. Dynamic configuration of a cloud-based storage system
US11340837B1 (en) 2018-11-18 2022-05-24 Pure Storage, Inc. Storage system management via a remote console
US10963189B1 (en) 2018-11-18 2021-03-30 Pure Storage, Inc. Coalescing write operations in a cloud-based storage system
US11526405B1 (en) 2018-11-18 2022-12-13 Pure Storage, Inc. Cloud-based disaster recovery
US11650749B1 (en) 2018-12-17 2023-05-16 Pure Storage, Inc. Controlling access to sensitive data in a shared dataset
US11003369B1 (en) 2019-01-14 2021-05-11 Pure Storage, Inc. Performing a tune-up procedure on a storage device during a boot process
US11042452B1 (en) 2019-03-20 2021-06-22 Pure Storage, Inc. Storage system data recovery using data recovery as a service
US11221778B1 (en) 2019-04-02 2022-01-11 Pure Storage, Inc. Preparing data for deduplication
US11068162B1 (en) 2019-04-09 2021-07-20 Pure Storage, Inc. Storage management in a cloud data store
US11327676B1 (en) 2019-07-18 2022-05-10 Pure Storage, Inc. Predictive data streaming in a virtual storage system
US11392555B2 (en) 2019-05-15 2022-07-19 Pure Storage, Inc. Cloud-based file services
US11853266B2 (en) 2019-05-15 2023-12-26 Pure Storage, Inc. Providing a file system in a cloud environment
US11126364B2 (en) 2019-07-18 2021-09-21 Pure Storage, Inc. Virtual storage system architecture
US12001355B1 (en) 2019-05-24 2024-06-04 Pure Storage, Inc. Chunked memory efficient storage data transfers
US11526408B2 (en) 2019-07-18 2022-12-13 Pure Storage, Inc. Data recovery in a virtual storage system
US11487715B1 (en) 2019-07-18 2022-11-01 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11550514B2 (en) 2019-07-18 2023-01-10 Pure Storage, Inc. Efficient transfers between tiers of a virtual storage system
US11093139B1 (en) 2019-07-18 2021-08-17 Pure Storage, Inc. Durably storing data within a virtual storage system
US11861221B1 (en) 2019-07-18 2024-01-02 Pure Storage, Inc. Providing scalable and reliable container-based storage services
US11086553B1 (en) 2019-08-28 2021-08-10 Pure Storage, Inc. Tiering duplicated objects in a cloud-based object store
US11693713B1 (en) 2019-09-04 2023-07-04 Pure Storage, Inc. Self-tuning clusters for resilient microservices
US11625416B1 (en) 2019-09-13 2023-04-11 Pure Storage, Inc. Uniform model for distinct types of data replication
US11797569B2 (en) 2019-09-13 2023-10-24 Pure Storage, Inc. Configurable data replication
US11573864B1 (en) 2019-09-16 2023-02-07 Pure Storage, Inc. Automating database management in a storage system
US11669386B1 (en) 2019-10-08 2023-06-06 Pure Storage, Inc. Managing an application's resource stack
US20210173945A1 (en) 2019-12-06 2021-06-10 Pure Storage, Inc. Replicating data to a storage system that has an inferred trust relationship with a client
US11709636B1 (en) 2020-01-13 2023-07-25 Pure Storage, Inc. Non-sequential readahead for deep learning training
US11720497B1 (en) 2020-01-13 2023-08-08 Pure Storage, Inc. Inferred nonsequential prefetch based on data access patterns
US11733901B1 (en) 2020-01-13 2023-08-22 Pure Storage, Inc. Providing persistent storage to transient cloud computing services
US12014065B2 (en) 2020-02-11 2024-06-18 Pure Storage, Inc. Multi-cloud orchestration as-a-service
US11637896B1 (en) 2020-02-25 2023-04-25 Pure Storage, Inc. Migrating applications to a cloud-computing environment
US11868622B2 (en) 2020-02-25 2024-01-09 Pure Storage, Inc. Application recovery across storage systems
US11321006B1 (en) 2020-03-25 2022-05-03 Pure Storage, Inc. Data loss prevention during transitions from a replication source
US11301152B1 (en) 2020-04-06 2022-04-12 Pure Storage, Inc. Intelligently moving data between storage systems
US11630598B1 (en) 2020-04-06 2023-04-18 Pure Storage, Inc. Scheduling data replication operations
US11494267B2 (en) 2020-04-14 2022-11-08 Pure Storage, Inc. Continuous value data redundancy
US11921670B1 (en) 2020-04-20 2024-03-05 Pure Storage, Inc. Multivariate data backup retention policies
US11431488B1 (en) 2020-06-08 2022-08-30 Pure Storage, Inc. Protecting local key generation using a remote key management service
US11442652B1 (en) 2020-07-23 2022-09-13 Pure Storage, Inc. Replication handling during storage system transportation
US11349917B2 (en) 2020-07-23 2022-05-31 Pure Storage, Inc. Replication handling among distinct networks
US11397545B1 (en) 2021-01-20 2022-07-26 Pure Storage, Inc. Emulating persistent reservations in a cloud-based storage system
US11853285B1 (en) 2021-01-22 2023-12-26 Pure Storage, Inc. Blockchain logging of volume-level events in a storage system
US11563744B2 (en) 2021-02-22 2023-01-24 Bank Of America Corporation System for detection and classification of intrusion using machine learning techniques
US20220365827A1 (en) 2021-05-12 2022-11-17 Pure Storage, Inc. Rebalancing In A Fleet Of Storage Systems Using Data Science
US11816129B2 (en) 2021-06-22 2023-11-14 Pure Storage, Inc. Generating datasets using approximate baselines
US11714723B2 (en) 2021-10-29 2023-08-01 Pure Storage, Inc. Coordinated snapshots for data stored across distinct storage environments
US11893263B2 (en) 2021-10-29 2024-02-06 Pure Storage, Inc. Coordinated checkpoints among storage systems implementing checkpoint-based replication
US11914867B2 (en) 2021-10-29 2024-02-27 Pure Storage, Inc. Coordinated snapshots among storage systems implementing a promotion/demotion model
US11922052B2 (en) 2021-12-15 2024-03-05 Pure Storage, Inc. Managing links between storage objects
US11847071B2 (en) 2021-12-30 2023-12-19 Pure Storage, Inc. Enabling communication between a single-port device and multiple storage system controllers
US12001300B2 (en) 2022-01-04 2024-06-04 Pure Storage, Inc. Assessing protection for storage resources
US11860780B2 (en) 2022-01-28 2024-01-02 Pure Storage, Inc. Storage cache management
US11886295B2 (en) 2022-01-31 2024-01-30 Pure Storage, Inc. Intra-block error correction
CN115454900A (zh) * 2022-08-08 2022-12-09 北京阿帕科蓝科技有限公司 数据传输方法、装置、计算机设备、存储介质和程序产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546461A (ja) * 1991-08-09 1993-02-26 Toshiba Corp メモリカード装置
JPH05313989A (ja) * 1992-05-08 1993-11-26 Toshiba Corp メモリカード装置
JPH11203885A (ja) * 1998-01-09 1999-07-30 Hitachi Ltd 記憶装置
CN1243317A (zh) * 1998-07-28 2000-02-02 索尼公司 非易失存储器、记录装置和记录方法
WO2002058074A2 (en) * 2001-01-19 2002-07-25 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69223099T2 (de) * 1991-08-09 1998-06-10 Toshiba Kawasaki Kk Aufzeichnungsgerät für eine Speicherkarte
JP3485938B2 (ja) 1992-03-31 2004-01-13 株式会社東芝 不揮発性半導体メモリ装置
DE69334149T2 (de) * 1992-04-02 2008-02-14 Kabushiki Kaisha Toshiba, Kawasaki Speicherkarte
US5519847A (en) * 1993-06-30 1996-05-21 Intel Corporation Method of pipelining sequential writes in a flash memory
JP3197815B2 (ja) 1996-04-15 2001-08-13 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 半導体メモリ装置及びその制御方法
HUP0001495A3 (en) 1997-03-21 2001-01-29 Canal Plus Sa System for defining and addressing buffers in a memory area in a computer system, memory system in a computer, method of updating a flash memory devided into separately writable pages, flash memory system in a computer,..
DE19737182A1 (de) 1997-08-26 1999-03-04 Bosch Gmbh Robert Verfahren zum Ändern von Daten
KR100684061B1 (ko) 1999-07-28 2007-02-16 소니 가부시끼 가이샤 기록 시스템, 데이터 기록 장치, 메모리 장치 및 데이터기록 방법
US6721843B1 (en) * 2000-07-07 2004-04-13 Lexar Media, Inc. Flash memory architecture implementing simultaneously programmable multiple flash memory banks that are host compatible
KR100389867B1 (ko) 2001-06-04 2003-07-04 삼성전자주식회사 플래시 메모리 관리방법
US20030204675A1 (en) * 2002-04-29 2003-10-30 Dover Lance W. Method and system to retrieve information from a storage device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546461A (ja) * 1991-08-09 1993-02-26 Toshiba Corp メモリカード装置
JPH05313989A (ja) * 1992-05-08 1993-11-26 Toshiba Corp メモリカード装置
JPH11203885A (ja) * 1998-01-09 1999-07-30 Hitachi Ltd 記憶装置
CN1243317A (zh) * 1998-07-28 2000-02-02 索尼公司 非易失存储器、记录装置和记录方法
WO2002058074A2 (en) * 2001-01-19 2002-07-25 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory

Also Published As

Publication number Publication date
US7107389B2 (en) 2006-09-12
US20040193786A1 (en) 2004-09-30
JPWO2004021191A1 (ja) 2005-12-22
CN101114255A (zh) 2008-01-30
CN1585930A (zh) 2005-02-23
CA2461446A1 (en) 2004-03-11
KR20050033504A (ko) 2005-04-12
TWI260535B (en) 2006-08-21
JP4358111B2 (ja) 2009-11-04
WO2004021191A1 (ja) 2004-03-11
KR100944054B1 (ko) 2010-02-24
EP1533702A1 (en) 2005-05-25
EP1533702A4 (en) 2007-05-23
TW200407769A (en) 2004-05-16
USRE42648E1 (en) 2011-08-23

Similar Documents

Publication Publication Date Title
CN100347685C (zh) 用于将数据写入快闪存储设备的半导体存储器的装置和方法
US11748258B2 (en) Method for managing a memory apparatus
KR101774496B1 (ko) 비휘발성 메모리 장치, 이를 포함하는 장치들, 및 이의 동작 방법
US10606761B2 (en) Method for accessing flash memory module and associated flash memory controller and electronic device
US9606911B2 (en) Apparatuses for managing and accessing flash memory module
CN110059031B (zh) 数据储存装置与数据处理方法
US20120005451A1 (en) Data storage device and bad block managing method thereof
CN1930635A (zh) 对多个区块进行适应性确定群组以成为多个多区块单元
KR20120109017A (ko) 메모리 컨트롤러, 이를 포함하는 장치들, 및 이의 동작 방법
CN1869915A (zh) 提供读取操作硬件加速的存储卡
CN1652253A (zh) 存储卡和半导体器件
US20190146908A1 (en) Method for accessing flash memory module and associated flash memory controller and electronic device
US20110029720A1 (en) Flash Storage Device and Operation Method Thereof
US11614885B2 (en) Data processing method for improving access performance of memory device and data storage device utilizing the same
CN106598504B (zh) 数据存储方法及装置
US20190121726A1 (en) Method for accessing flash memory module and associated flash memory controller and electronic device
US8266370B2 (en) Method for processing data of flash memory by separating levels and flash memory device thereof
US11636042B2 (en) Data processing method for improving access performance of memory device and data storage device utilizing the same
CN114063933B (zh) 区块管理方法、存储器控制器和存储器存储装置
CN1485745A (zh) 非挥发性存储器存取系统及其存取方法
CN111596859B (zh) 数据储存装置与数据处理方法
US20230305711A1 (en) Memory controller and data processing method for processing disordered read-out data
US20240103757A1 (en) Data processing method for efficiently processing data stored in the memory device by splitting data flow and the associated data storage device
JP2023034691A (ja) メモリ制御装置、携帯型電子機器

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
ASS Succession or assignment of patent right

Owner name: INTELLECTUAL PROPERTY BRIDGE NO. 1 CO., LTD.

Free format text: FORMER OWNER: MATSUSHITA ELECTRIC INDUSTRIAL CO, LTD.

Effective date: 20140212

TR01 Transfer of patent right

Effective date of registration: 20140212

Address after: Tokyo, Japan

Patentee after: GODO KAISHA IP BRIDGE 1

Address before: Japan's Osaka kamato City

Patentee before: Matsushita Electric Industrial Co., Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071107

Termination date: 20150825

EXPY Termination of patent right or utility model