CN109669626A - 固态储存装置及其相关数据管理方法 - Google Patents
固态储存装置及其相关数据管理方法 Download PDFInfo
- Publication number
- CN109669626A CN109669626A CN201710960305.0A CN201710960305A CN109669626A CN 109669626 A CN109669626 A CN 109669626A CN 201710960305 A CN201710960305 A CN 201710960305A CN 109669626 A CN109669626 A CN 109669626A
- Authority
- CN
- China
- Prior art keywords
- logical blocks
- data
- memory cell
- page
- write
- 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
Classifications
-
- 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
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
一种数据固态储存装置及其相关数据管理方法,该固态储存装置包括一记忆胞阵列,该记忆胞阵列被划分为一第一部分的多个逻辑区块与一第二部分的多个逻辑区块,该数据管理方法包括下列步骤:将一主机提供的多页的写入数据储存至该第一部分的一第一逻辑区块;对该主机提供的该些页的写入数据进行一运算,并获得一同位校验页;以及将该同位校验页储存于该第二部分的一第二逻辑区块。
Description
技术领域
本发明涉及一种固态储存装置及其相关控制方法,且特别涉及一种固态储存装置及其相关数据管理方法。
背景技术
众所周知,固态储存装置(solid state device)已经非常广泛的应用于各种电子产品,例如SD卡、固态硬碟等等。一般来说,固态储存装置是由控制电路以及记忆胞阵列(non-volatile memory)组合而成。再者,固态储存装置又可称为快闪记忆体(flashmemory)。
请参照图1,其所绘示为固态储存装置示意图。固态储存装置10包括:控制电路101以及记忆胞阵列105。
固态储存装置10经由一外部总线12连接至主机(host)14,其中外部总线12可为USB总线、SATA总线、PCIe总线等等。再者,控制电路101经由一内部总线113连接至记忆胞阵列105。控制电路101根据主机14所发出的写入命令,将主机14的写入数据存入记忆胞阵列105。或者,控制电路101根据主机14所发出的读取命令,由记忆胞阵列105中取得读取数据,经由控制电路101传递至主机14。
记忆胞阵列105由多个记忆胞组合而成,每个记忆胞中包括一浮动栅晶体管(floating gate transistor)。再者,记忆胞可区分为一个记忆胞储存一位元的单层记忆胞(Single-Level Cell,简称SLC记忆胞),一个记忆胞储存二位元的多层记忆胞(Multi-Level Cell,简称MLC记忆胞)以及一个记忆胞储存三位元的三层记忆胞(Triple-LevelCell,简称TLC)。
换句话说,由相同记忆胞数目所组成的记忆胞阵列,TLC记忆胞阵列的储存容量为SLC记忆胞阵列的储存容量的8倍。
请参照图2,其所绘示为现有记忆胞阵列中的数据配置示意图。基本上,记忆胞阵列105被划分成多个区块(block),每个区块再分成多页(page)。
举例来说,图2中的记忆胞阵列为8通道1芯片致能的记忆胞阵列(8-channel,1-chip enable memory cell array),简称8CH1CE记忆胞阵列。记忆胞阵列被划分成N个逻辑区块(Logical Block),每个逻辑区块再分成8页(P0~P7)。例如N为1400。再者,每页的容量为256Mbyte,则记忆胞阵列的容量约为256Gbyte。另外,此记忆胞阵列为TLC记忆胞阵列。
为了确保记忆胞阵列的数据正确性,记忆胞阵列105中每一个逻辑区块的最后一页,亦即P7,会作为同位校验页(parity page)。
当控制电路101将写入数据存入记忆胞阵列105时,写入数据仅会储存于每个逻辑区块的前7页,亦即P0~P6。另外,控制电路101会将前7页的数据进行特定运算,并将运算后的结果储存于最后一页(P7),亦即同位校验页。
举例来说,控制电路101将写入的前7页,亦即P0~P6,的第一个位元进行互斥或(XOR)运算后的输出值作为最后页(P8)的第一个位元。同理,控制电路101将写入的前7页的第二个位元进行互斥或(XOR)运算后的输出值作为最后页(P7)的第二个位元。如此类推,控制电路101可得出欲储存于最后页(P7),即同位校验页,的数据。
再者,同位校验页的内容可以用来验证该逻辑区块中前7页的内容是否有误。以写入后的验证程序(verify after write)为例来说明:
当控制电路101将数据写入一个逻辑区块后,会进行写入后的验证程序。此时,控制电路101再次读取写入该逻辑区块中的所有数据,亦即P0~P7的内容,用以确认写入数据的正确性。
举例来说,控制电路101将读取的前7页,亦即P0~P6,的第一个位元进行互斥或(XOR)运算后,如果其输出值等于最后页(P7)的第一个位元,则确认读取的前7页中的第一个位元皆正确。同理,控制电路101将读取的前7页的第二个位元进行互斥或(XOR)运算后,如果其输出值等于最后页的第二个位元,则确认读取的前7页中的第二个位元皆正确,如此类推。
当控制电路101将读取的前7页内容进行互斥或运算后的结果相同于最后页的内容时,即可确认控制电路101读取的前7页内容无误,并通过写入后的验证程序。反之,如果控制电路101将读取的前7页内容进行互斥或运算后的结果不相同于最后页的内容时,则表示读取的前7页内容有误,无法通过写入后的验证程序。
相同地,当主机14发出读取指令至控制电路101,欲读取一逻辑区块中特定页的数据时,控制电路101必须读取该逻辑区块中的所有数据,并且验证读取的该特定页的内容是否正确。于确认该特定页的内容正确后,控制电路101才会输出该特定页的内容至主机10。
另外,当控制电路101确认该特定页的内容有误时,控制电路101利用反互斥或(XOR)运算,也可以校正该特定页的内容。亦即,控制电路101利用该逻辑区块中其他6页的内容以及同位校验页的内容,利用反互斥或(XOR)运算来回复该特定页的内容。
由以上的说明可知,现有固态储存装置10的记忆胞阵列105中,会保留每个逻辑区块的最后一页作为同位校验页。以图2的记忆胞阵列为例,其同位校验页所占的比例(parity strip ration)为1:7。
由于同位校验页会占去主机的写入数据的储存空间,因此为了节省同位校验页的储存空间,请参照图3,其所绘示为现有另一记忆胞阵列中的数据配置示意图。基本上,图3中的记忆胞阵列为8通道2芯片致能的记忆胞阵列,简称8CH2CE记忆胞阵列。图3的记忆胞阵列的容量2倍于图2记忆胞阵列的容量。
同理,记忆胞阵列被划分成N个逻辑区块(Logical Block),每个逻辑区块再分成16页(P0~P15)。例如N为1400。再者,每页的容量为256Mbyte,则记忆胞阵列的容量约为512Gbyte。另外,此记忆胞阵列为TLC记忆胞阵列。
相同地,为了确保记忆胞阵列的数据正确性,记忆胞阵列105中每一个逻辑区块的最后一页,亦即P15,会作为同位校验页(parity page)。因此,图3的记忆胞阵列的同位校验页所占的比例(parity strip ration)为1:15。
在图3的记忆胞阵列例子中,虽然可有效节省同位校验页的储存空间,然而,控制电路101需要读取一个逻辑区块中的所有页(P0~P15)后,才可以经由互斥或(XOR)运算来确认所有数据的正确性,或是利用反互斥或(XOR)运算来回复该特定页的内容。由于控制电路101需要读取的数据量变多,造成验证程序或回复数据的时间变长。
除了以上的记忆胞阵列之外,尚有其他形态的记忆胞阵列,例如8通道4芯片致能的记忆胞阵列,简称8CH4CE记忆胞阵列。其每个逻辑区块分成32页(P0~P32),而记忆胞阵列的容量约为1024Gbyte。其同位校验页所占的比例(parity strip ration)为1:31。
由以上的说明可知,现有记忆胞阵列中的储存空间受到同位校验页的影响。图2的记忆胞阵列中,有1/8的储存空间并不是储存主机的写入数据。同理,图3的记忆胞阵列中,有1/16的储存空间并不是储存主机的写入数据。
发明内容
本发明有关于一种固态储存装置的数据管理方法,该固态储存装置包括一记忆胞阵列,该记忆胞阵列被划分为一第一部分的多个逻辑区块与一第二部分的多个逻辑区块,该数据管理方法包括下列步骤:将一主机提供的多页的写入数据储存至该第一部分的一第一逻辑区块;对该主机提供的该些页的写入数据进行一运算,并获得一同位校验页;以及将该同位校验页储存于该第二部分的一第二逻辑区块。
本发明有关于一种固态储存装置,包括:一控制电路,连接至一主机用以接收该主机提供的多页的写入数据;一记忆胞阵列,连接至该控制电路,其中该记忆胞阵列被划分为一第一部分的多个逻辑区块与一第二部分的多个逻辑区块;其中,该控制电路对该主机提供的该些页的写入数据进行一运算后获得一同位校验页;将该些页的写入数据储存至该第一部分的一第一逻辑区块;以及将该同位校验页储存于该第二部分的一第二逻辑区块。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为固态储存装置示意图;
图2为现有记忆胞阵列中的数据配置示意图;
图3为现有另一记忆胞阵列中的数据配置示意图;
图4为本发明第一实施例记忆胞阵列中的数据配置示意图;
图5为本发明第二实施例记忆胞阵列中的数据配置示意图;
图6为本发明第三实施例记忆胞阵列中的数据配置示意图。
具体实施方式
下面结合附图对本发明的结构原理和工作原理作具体的描述:
本发明提出一种固态储存装置及其相关数据管理方法。基本上,本发明的固态储存装置相同于图2所示的固态储存装置10。利用新的方式来配置记忆胞阵列,使记忆胞阵列有更多的空间来储存更多主机14输出的写入数据。
请参照图4,其所绘示为本发明第一实施例记忆胞阵列中的数据配置示意图。基本上,记忆胞阵列105被划分成多个区块(block),每个区块再分成多页(page)。根据本发明的第一实施例,多个区块又被划分为两个部分,多个区块中第一部分的区块用来储存主机的写入数据,第二部分的区块用来储存同位校验页的数据。
举例来说,图4中的记忆胞阵列为8CH1CE记忆胞阵列。记忆胞阵列被划分成N个逻辑区块(Logical Block),其中(N-M)个逻辑区块(第一部分)用来储存主机的写入数据,M个逻辑区块(第二部分)用来储存同位校验页的数据。再者,每个逻辑区块再分成8页。例如N为1400,M为30。再者,每页的容量为256Mbyte,则记忆胞阵列的容量约为256Gbyte。另外,此记忆胞阵列为TLC记忆胞阵列。
根据本发明的第一实施例,当控制电路101将写入数据存入记忆胞阵列105时,写入数据会储存于第一部分的逻辑区块内,亦即储存于逻辑区块的8页内。另外,控制电路101会运算该逻辑区块的8页的数据后,产生一同位校验页,并储存于第二部分逻辑区块的一页内。
请参照第4图,举例来说,控制电路101将主机14的写入数据存入记忆胞阵列105时,写入数据会储存于第w个逻辑区块内的8页,亦即P0~P7。另外,控制电路101会运算第w个逻辑区块的8页的数据后,产生一同位校验页,并储存于第y个逻辑区块的一页内,例如PP0。
举例来说,控制电路101将写入第w个逻辑区块的8页(P0~P7)的第一个位元进行互斥或(XOR)运算后的输出值作为同位校验页(PP0)的第一个位元。同理,控制电路101将写入第w个逻辑区块的8页(P0~P7)的第二个位元进行互斥或(XOR)运算后的输出值作为同位校验页(PP0)的第二个位元。如此类推。因此,控制电路101运算完成后,即可得出欲储存于同位校验页(PP0)的数据,并将其写入第y个逻辑区块的PP0页。
同理,当控制电路101再次将主机14的写入数据存入记忆胞阵列105时,写入数据会储存于第一部分逻辑区块的另一逻辑区块,例如第x个逻辑区块,内的8页,亦即P0’~P7’。另外,控制电路101会运算第x个逻辑区块的8页的数据后,产生一同位校验页,并储存于第二部分逻辑区块的另一页内,例如第y个逻辑区块的另一页内,例如PP1。
由以上的说明可知,本发明固态储存装置10的记忆胞阵列105中,第一部分的逻辑区块用来储存主机14的写入数据,第二部分的逻辑区块的用来储存运算后的同位校验页。因此,图4的记忆胞阵列,其同位校验页所占的比例(parity strip ration)为1:8。
再者,同位校验页的内容可以用来验证该逻辑区块中8页的内容是否有误。以写入后的验证程序(verify after write)为例来说明:
当控制电路101将数据写入第w个逻辑区块以及第y个逻辑区块的PP0页后,会进行写入后的验证程序。此时,控制电路101再次读取第w个逻辑区块中的所有数据,亦即P0~P7的内容,以及对应同位校验页(PP0)的内容,用以确认写入数据的正确性。
当控制电路101确认读取的8页内容无误,即表示通过写入后的验证程序。反之,若确认读取的8页内容有误,即表示无法通过写入后的验证程序。
由以上的说明可知,当控制电路101将写入数据储存于第一部分的逻辑区块后,会对应地产生一同位校验页,并储存于第二部分的逻辑区块内。并且,控制电路101可进行写入后的验证程序。当控制电路101持续将写入数据储存于第一部分的逻辑区块后,对应地同位校验页也会持续地写入第二部分的逻辑区块。
根据本发明实施例,由于第二部分的逻辑区块的空间有限,当第二部分的逻辑区块被写满时,控制电路101可进行区块抹除动作以产生空白逻辑区块,并用以继续写入后续的同位校验页。如图4所示,当同位校验页被写入第二部分的第z个逻辑区块中最后一页(PPz)后,第二部分的逻辑区块中已无空间继续写入后续的同位校验页。此时,控制电路101可抹除第y个逻辑区块成为空白逻辑区块,并用以继续写入后续的同位校验页。同理,当被抹除的空白逻辑区块又被写满时,控制电路101可再进行区块抹除动作以产生空白逻辑区块,并用以继续写入后续的同位校验页。
换句话说,当第二部分的逻辑区块中已无空间时,先储存于第二部分的逻辑区块中的数据可以先被抹除,并用来写入后续的同位校验页。因此,第二部分的逻辑区块的用途为一环缓冲器(ring buffer)。
由以上的说明可知,根据本发明所揭露的记忆胞阵列数据管理方法,记忆胞阵列中M/N的储存空间并不是储存主机的写入数据。当M为1400,N为30时,记忆胞阵列中只有3/140的储存空间并不是储存主机的写入数据。明显地,本发明的记忆胞阵列能够储存更多主机的写入数据。
再者,本发明可以设定同位校验页所占的比例(parity strip ration)为固定的比例。以下以同位校验页所占的比例(parity strip ration)为1:8来进行说明。
请参照图5,其所绘示为本发明第二实施例记忆胞阵列中的数据配置示意图。基本上,图5中的记忆胞阵列为8通道2芯片致能的记忆胞阵列,简称8CH2CE记忆胞阵列。
同理,记忆胞阵列被划分成N个逻辑区块(Logical Block),其中(N-M)个逻辑区块用来储存主机的写入数据,M个逻辑区块用来储存同位校验页的数据。再者,每个逻辑区块再分成16页(P0~P15)。例如N为1400、M为30。再者,每页的容量为256Mbyte,则记忆胞阵列的容量约为512Gbyte。
当控制电路101将写入数据存入记忆胞阵列105时,写入数据会储存于第一部分的逻辑区块内。另外,控制电路101会产生一同位校验页,并储存于第二部分逻辑区块的一页内。
根据本发明的第二实施例,将同位校验页所占的比例(parity strip ration)为固定的1:8,而控制电路101根据此比例来进行运算来产生同位校验页。
举例来说,控制电路101将主机14的写入数据存入记忆胞阵列105时,写入数据会先储存于第w个逻辑区块内的8页,亦即P0~P7。另外,控制电路101会运算第w个逻辑区块的P0~P7的数据后,产生一同位校验页,并储存于第y个逻辑区块的一页内,例如PP0。
同理,当控制电路101继续将主机14的写入数据存入记忆胞阵列105时,写入数据会继续储存于第w个逻辑区块内的另外8页,亦即P8~P15。另外,控制电路101会运算第w个逻辑区块的P8~P15页的数据后,产生一同位校验页,并储存于第y个逻辑区块的一页内,例如PP1。
同理,当控制电路101可继续将主机14的写入数据储存于第x个逻辑区块中的前8页,亦即P0’~P7’,而对应的同位校验页则储存于第y个逻辑区块的一页内,例如PP2。并依此类推。
由以上的说明可知,本发明固态储存装置10的记忆胞阵列105中,可以控制记忆胞阵列中同位校验页所占的比例(parity strip ration)为1:8。
当然,控制电路101可利用同位校验页的内容来进行写入后的验证程序(verifyafter write),其详细动作原理不再赘述。
相同地,由于第二部分的逻辑区块的空间有限,当第二部分的逻辑区块被写满时,控制电路101可进行区块抹除动作以产生空白逻辑区块,并用以继续写入后续的同位校验页。例如,当同位校验页写入第二部分的第z个逻辑区块中最后一页(PPz)后,第二部分的逻辑区块中已无空间继续写入后续的同位校验页。此时,控制电路101可抹除第y个逻辑区块成为空白逻辑区块,并用以继续写入后续的同位校验页。同理,第二部分的逻辑区块的用途为一环缓冲器(ring buffer)。
相同地,根据本发明所揭露的记忆胞阵列数据管理方法,记忆胞阵列中M/N的储存空间并不是储存主机的写入数据。当M为1400,N为30时,记忆胞阵列中3/140的储存空间并不是储存主机的写入数据。明显地,本发明的记忆胞阵列能够储存更多主机的写入数据。
由以上的说明可知,本发明固态储存装置10可通过设定记忆胞阵列中第一部分及第二部分的逻辑区块的比例,即M/N,来决定储存主机的写入数据的空间。同时,本发明固态储存装置10可另通过设定同位校验页所占的比例(parity strip ration)来决定用于数据验证的数据读取量。根据本发明所揭露的记忆胞阵列数据管理方法,其同位校验页所占的比例的设定值并不会影响储存主机的写入数据的空间,因此可保有较多的写入数据储存空间,并具有较短的验证或回复数据时间。
再者,本发明可以改变编程(program)记忆胞写入的方式来确保同位校验页的正确性。以下说明之:
请参照图6,其所绘示为本发明第三实施例记忆胞阵列中的数据配置示意图。基本上,图6中的记忆胞阵列为8CH1CE记忆胞阵列。相较于第一实施例,其差异在于第二部分的逻辑区块系以SLC记忆胞的编程方式写入数据。换句话说,控制电路101是以TLC记忆胞的编程方式写入第一部分的逻辑区块,而以SLC记忆胞的编程方式写入第二部分的逻辑区块。
由于TLC记忆胞阵列的储存容量8倍于SLC记忆胞阵列的储存容量。因此,第二部分的逻辑区块仅能够储存一页的数据。
根据本发明的第三实施例,控制电路101将主机14的写入数据以TLC记忆胞的编程方式存入记忆胞阵列105时,写入数据会先储存于第w个逻辑区块内的8页,亦即P0~P7。另外,控制电路101会运算第w个逻辑区块的P0~P7的数据后,产生一同位校验页,并以SLC记忆胞的编程方式储存于第y个逻辑区块内,例如PP0。
同理,当控制电路101继续将主机14的写入数据存入记忆胞阵列105时,写入数据会以TLC记忆胞的编程方式继续储存于第x个逻辑区块内的8页,亦即P0’~P7’。另外,控制电路101会运算第x个逻辑区块的P0’~P7’页的数据后,产生一同位校验页,并以SLC记忆胞的编程方式储存于第z个逻辑区块内,例如PP1。
基本上,以SLC记忆胞的编程方式将同位校验页写入一个逻辑区块。该同位校验页可以有更好的数据正确率。因此,在进行写入后的验证程序(verify after write)时,更可以确保写入数据的正确性。
由以上的说明可知,本发明的优点在于提出一种固态储存装置及其相关数据管理方法。本发明将主机的写入数据以及对应的同位校验页写入不同的逻辑区块,使得记忆胞阵列能够储存更多主机的写入数据。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (12)
1.一种固态储存装置的数据管理方法,该固态储存装置包括一记忆胞阵列,该记忆胞阵列被划分为一第一部分的多个逻辑区块与一第二部分的多个逻辑区块,其特征在于,该数据管理方法包括下列步骤:
将一主机提供的多页的写入数据储存至该第一部分的一第一逻辑区块;
对该主机提供的该些页的写入数据进行一运算,并获得一同位校验页;以及
将该同位校验页储存于该第二部分的一第二逻辑区块。
2.根据权利要求1所述的固态储存装置的数据管理方法,其特征在于,该些页的写入数据为8页的写入数据,且该记忆胞阵列的一同位校验页所占的比例为1:8。
3.根据权利要求1所述的固态储存装置的数据管理方法,其特征在于,将该主机提供的该些页的写入数据以一三层记忆胞的编程方式储存至该第一部分的该第一逻辑区块。
4.根据权利要求3所述的固态储存装置的数据管理方法,其特征在于,将该同位校验页以一单层记忆胞的编程方式储存于该第二部分的该第二逻辑区块。
5.根据权利要求1所述的固态储存装置的数据管理方法,其特征在于,更包括下列步骤:当该第二部分的多个逻辑区块被写满时,进行一抹除动作以抹除该第二部分的多个逻辑区块中至少一个逻辑区块中的数据。
6.根据权利要求1所述的固态储存装置的数据管理方法,其特征在于,该第二部分的该些逻辑区块为一环缓冲器。
7.一种固态储存装置,其特征在于,包括:
一控制电路,连接至一主机用以接收该主机提供的多页的写入数据;
一记忆胞阵列,连接至该控制电路,其中该记忆胞阵列被划分为一第一部分的多个逻辑区块与一第二部分的多个逻辑区块;
其中,该控制电路对该主机提供的该些页的写入数据进行一运算后获得一同位校验页;将该些页的写入数据储存至该第一部分的一第一逻辑区块;以及将该同位校验页储存于该第二部分的一第二逻辑区块。
8.根据权利要求7所述的固态储存装置,其特征在于,该些页的写入数据为8页的写入数据,且该记忆胞阵列的一同位校验页所占的比例为1:8。
9.根据权利要求7所述的固态储存装置,其特征在于,该控制电路以一三层记忆胞的编程方式,将该主机提供的该些页的写入数据储存至该第一部分的该第一逻辑区块。
10.根据权利要求9所述的固态储存装置,其特征在于,该控制电路以一单层记忆胞的编程方式,将该同位校验页储存于该第二部分的该第二逻辑区块。
11.根据权利要求7所述的固态储存装置,其特征在于,将该第二部分的该些逻辑区块为一环缓冲器。
12.根据权利要求7所述的固态储存装置,其特征在于,当该第二部分的多个逻辑区块被写满时,该控制电路进行一抹除动作以抹除该第二部分的多个逻辑区块中至少一个逻辑区块中的数据。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710960305.0A CN109669626B (zh) | 2017-10-16 | 2017-10-16 | 固态储存装置及其相关数据管理方法 |
US15/854,114 US10210939B1 (en) | 2017-10-16 | 2017-12-26 | Solid state storage device and data management method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710960305.0A CN109669626B (zh) | 2017-10-16 | 2017-10-16 | 固态储存装置及其相关数据管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109669626A true CN109669626A (zh) | 2019-04-23 |
CN109669626B CN109669626B (zh) | 2021-12-03 |
Family
ID=65322257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710960305.0A Active CN109669626B (zh) | 2017-10-16 | 2017-10-16 | 固态储存装置及其相关数据管理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10210939B1 (zh) |
CN (1) | CN109669626B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019617A (zh) * | 2012-11-25 | 2013-04-03 | 向志华 | 高效实现ssd内部raid的构建方法、数据读写方法及装置 |
CN103176858A (zh) * | 2013-03-11 | 2013-06-26 | 北京忆恒创源科技有限公司 | 具有多个固态盘的存储设备 |
US20170090782A1 (en) * | 2015-09-30 | 2017-03-30 | Apacer Technology Inc. | Writing management method and writing management system for solid state drive |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9996285B2 (en) * | 2016-11-08 | 2018-06-12 | SK Hynix Inc. | Cyclically interleaved XOR array for error recovery |
-
2017
- 2017-10-16 CN CN201710960305.0A patent/CN109669626B/zh active Active
- 2017-12-26 US US15/854,114 patent/US10210939B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019617A (zh) * | 2012-11-25 | 2013-04-03 | 向志华 | 高效实现ssd内部raid的构建方法、数据读写方法及装置 |
CN103176858A (zh) * | 2013-03-11 | 2013-06-26 | 北京忆恒创源科技有限公司 | 具有多个固态盘的存储设备 |
US20170090782A1 (en) * | 2015-09-30 | 2017-03-30 | Apacer Technology Inc. | Writing management method and writing management system for solid state drive |
Also Published As
Publication number | Publication date |
---|---|
US10210939B1 (en) | 2019-02-19 |
CN109669626B (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10324789B2 (en) | Flash memory controller and memory device for accessing flash memory module, and associated method | |
JP4729062B2 (ja) | メモリシステム | |
CN107799150B (zh) | 3d nand闪存的错误缓解 | |
US11030096B2 (en) | Method of identifying and preparing a key block in a flash memory system and memory controller therefor | |
US9176865B2 (en) | Data writing method, memory controller, and memory storage device | |
CN103577342B (zh) | 管理闪存中所储存的数据的方法及相关记忆装置与控制器 | |
CN106486163B (zh) | 非易失性存储器件、包括其的数据储存设备及其操作方法 | |
US10936415B2 (en) | Error correction scheme in flash memory | |
US9141530B2 (en) | Data writing method, memory controller and memory storage device | |
US9619380B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
CN110942795B (zh) | 存储器系统、其操作方法以及非易失性存储器装置 | |
CN110321068A (zh) | 存储器控制器及操作存储器控制器的方法 | |
CN112860178A (zh) | 存储器装置、存储器控制器、存储器系统及存储器系统的操作方法 | |
CN107146639A (zh) | 半导体存储装置及存储器系统 | |
CN109815160A (zh) | 最后写入页搜索 | |
CN101349963A (zh) | 固态盘控制器及其数据处理方法 | |
CN105869677A (zh) | 用于内部执行读取-验证操作的存储器装置及其操作方法和存储器系统 | |
CN111177039A (zh) | 数据存储设备、其操作方法及包括其的存储系统 | |
US9778862B2 (en) | Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus | |
US20200201548A1 (en) | Storage device, controller and method for operating storage device | |
KR20140031551A (ko) | 불휘발성 메모리 장치 및 그것을 포함하는 데이터 저장 장치 | |
US11210209B2 (en) | Method for managing flash memory module and associated flash memory controller and electronic device | |
US11586379B2 (en) | Memory system and method of operating the same | |
CN109669626A (zh) | 固态储存装置及其相关数据管理方法 | |
US8885406B2 (en) | Memory device, memory control device, and memory control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20191227 Address after: Room 302, factory a, No.8 Guangbao Road, Science City, Huangpu District, Guangzhou City, Guangdong Province Applicant after: Jianxing storage technology (Guangzhou) Co., Ltd Address before: 510663 No. 25 West spectral Road, Guangzhou hi tech Industrial Development Zone, Guangdong Applicant before: Guangbao Electronics (Guangzhou) Co., Ltd. Applicant before: Lite-On Technology Corporation |
|
GR01 | Patent grant | ||
GR01 | Patent grant |