CN104115131B - 存储控制器、数据存储装置以及存储器的控制方法 - Google Patents
存储控制器、数据存储装置以及存储器的控制方法 Download PDFInfo
- Publication number
- CN104115131B CN104115131B CN201280069565.4A CN201280069565A CN104115131B CN 104115131 B CN104115131 B CN 104115131B CN 201280069565 A CN201280069565 A CN 201280069565A CN 104115131 B CN104115131 B CN 104115131B
- Authority
- CN
- China
- Prior art keywords
- data
- write
- memory
- storage
- sector
- 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
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
- 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
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0638—Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/005—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0035—Evaluating degradation, retention or wearout, e.g. by counting writing cycles
-
- 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/7201—Logical to physical mapping or translation of blocks or pages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
在每1页的扇区的利用率即数据利用率R为阈值Rth1以上且写入数据不是高频率写入数据时,控制闪存以将数据存储于闪存(步骤S120~S140),在每1页的扇区的利用率即页利用率R低于阈值Rth1时或数据利用率R为阈值Rth1以上但写入数据为高频率写入数据时,控制ReRAM以将写入数据存储于ReRAM(步骤S120、S150~S170)。由此,能够抑制闪存的劣化。
Description
技术领域
本发明涉及存储控制器、数据存储装置以及存储器的控制方法,详细地说,涉及如下的存储控制器、具备这样的存储控制器的数据存储装置以及对如下的第1存储器和第2存储器进行控制的存储器的控制方法,所述存储控制器控制第1存储器和第2存储器,所述第1存储器构成为能够通过写入动作而写入数据的非易失性存储器,所述写入动作是在以包括多个扇区的页为单位读取存储于存储区域的数据并将该读取出的数据以扇区为单位改写之后以页为单位写入数据的动作,所述第2存储器构成为随机存取存储器。
背景技术
以往,作为这种存储控制器,提出了如下存储控制器:控制FeRAM(FerroelectricRandom Access Memory,铁电随机存取存储器)或HDD以将来自PC系统的数据存储于FeRAM或HDD(例如,参照非专利文献1),所述FeRAM或HDD是作为缓存即使电力供给被切断也保持存储着的数据的非易失性随机存取存储器。在该装置中,由于无需为了防备无法预料的电源的切断而定期地使FeRAM的数据退避(备份)至HDD,所以能够使存储于FeRAM的数据的数据量比较大,从而能够实现缓存命中率的提高。
现有技术文献
非专利文献
非专利文献1:Daisaburo Takashima et al,《A128Mb ChainFeRAMTM and SystemDesigns for HDD Application and Enhanced HDD Performance(用于HDD应用及强化HDD性能的128Mb的ChainFeRAMTM及系统设计)》,IEEE亚洲固态电路学会,2009年11月16日-18日台北,台湾
发明内容
另外,作为存储来自主机装置的数据的SSD(Solid State Drive固态硬盘),提出了如下的SSD,所述SSD搭载有通过写入动作而写入数据NAND型闪存等非易失性存储器、能够比该非易失性存储器高速地读写数据的ReRAM(Resistance Random Access Memory,电阻式随机存取存储器)等随机存取存储器、以及控制非易失性存储器和随机存取存储器的存储控制器,所述写入动作是在按每个包括多个扇区的页暂时读取存储的数据并将读取出的数据以扇区为单位改写之后以页为单位写入数据的动作。在搭载于这样的SSD的非易失性存储器中,若在1页内用于存储数据的扇区数少的状态下频繁地执行写入动作,则会在本来无需用于存储数据的区域进行数据的读写,从而会导致非易失性存储器劣化。
本发明的存储控制器、数据存储装置以及存储器的控制方法的主要目的在于抑制非易失性存储器的劣化。
为了实现上述的主要目的,本发明的存储控制器、数据存储装置以及存储器的控制方法采取了以下手段。
本发明的存储控制器的要旨在于,
控制第1存储器和第2存储器,所述第1存储器构成为能够通过写入动作而写入数据的非易失性存储器,所述写入动作是在以包括多个扇区的页为单位读取存储于存储区域的数据并将该读取出的数据以扇区为单位改写之后以页为单位写入数据的动作;所述第2存储器构成为能够比所述第1存储器高速地写入数据的随机存取存储器,所述存储控制器具备:
控制部,其在被输入了写入数据和请求写入该写入数据的写入请求信号的情况下,在数据利用率为预定率以上时,控制所述第1存储器和所述第2存储器,以通过所述写入动作向所述第1存储器写入所述输入的写入数据;在所述数据利用率低于所述预定率时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于第2存储器,所述数据利用率为在向所述第1存储器写入所述写入数据时预定范围的存储区域中的用于存储所述写入数据的扇区的大小相对于能够存储数据的区域的大小的比例。
在本发明的存储控制器中,在被输入了写入数据和请求对写入数据进行写入的写入请求信号的情况下,在数据利用率为预定率以上时,控制第1存储器和第2存储器,以通过写入动作向第1存储器写入所输入的写入数据,在数据利用率低于预定率时,控制第1存储器和第2存储器,以将写入数据存储于第2存储器,所述数据利用率为在向第1存储器写入写入数据时预定范围的存储区域中的用于存储写入数据的扇区的大小相对于能够存储数据的区域的大小的比例。能够使第1存储器的每1页的数据利用率为预定率以上,从而抑制对没有被用于存储数据的第1存储器的存储区域的徒劳的读取和/或写入。由此,能够抑制第1存储器的劣化。在此,“预定范围”包括与写入数据的逻辑地址对应的1页或多页的数据的范围、在与写入数据的逻辑地址对应的页中比扇区的大小大的预定大小的数据的范围等。
在这样的本发明的存储控制器中,也可以具备比例设定部,其按随着在所述第2存储器中存储有数据的存储区域的大小变大而所述预订率变小的倾向对该预定率进行设定。这样一来,当在第2存储器中能够用于存储新的数据的存储区域变少时,能够促进将写入数据存储于第1存储器。
另外,在本发明的存储控制器中,所述控制部,在所述数据利用率为所述预定率以上的情况下,在所述输入的写入数据为写入频率高的高频率写入数据时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于所述第2存储器。若在输入的写入数据为高频率写入数据时向第1存储器写入数据,则会频繁地执行写入动作,第1存储器的劣化会发展。因此,在输入的写入数据为高频率写入数据时通过控制第2存储器以将输入的数据向第2存储器输出并将输出的数据存储于第2存储器,从而能够抑制第1存储器的劣化。在该情况下,可以具备地址信息存储部,其存储第1个数个所述数据利用率成为所述预定率以上时的所述输入的写入数据的逻辑地址,所述控制部,在所述逻辑地址信息存储部存储有第2个数以上的所述输入的写入数据的逻辑地址时,将所述输入的写入数据设为所述高频率写入数据,所述第2个数比所述第1个数少。
进而,在本发明的存储控制器中,所述控制部基于利用扇区信息和存储输入的写入数据时利用的扇区来运算所述页利用率,所述利用扇区信息为所述各扇区是否存储有数据的信息。在该情况下,所述控制部,在所述页利用率成为比所述预定率大的第2比例时,将所述页利用率成为所述第2比例时以后的所述各扇区是否存储有数据的信息设为所述利用扇区信息。在页利用率低于预定率时控制第1存储器和第2存储器以将输入的写入数据存储于第2存储器。因此,当页利用率增加时,由于不向第2存储器存储数据,继续向第1存储器存储数据,所以第1存储器的劣化发展,数据的写入速度降低,但在页利用率成为比预定率大的第2比例时,通过将页利用率成为第2比例时以后的各扇区是否存储有数据的信息设为利用扇区信息,能够再度使第2存储器存储数据,既能够抑制第1存储器的劣化,也能够抑制数据的写入速度的降低。
并且,在本发明的存储控制器中,所述控制部,在将所述输入的写入数据存储于所述第2存储器的情况下,在与所述输入的写入数据的逻辑地址对应的数据已经存储于第1存储器的存储区域时,在以页为单位读取存储于所述第1存储器的数据并将该读取出的数据的扇区中成为写入对象的扇区用写入数据改写之后,以页为单位使其存储于第2存储器。
进而,所述第1存储器也可以为NAND型闪存。这样一来,在第1存储器为NAND型闪存时,能够抑制第1存储器的劣化。另外,所述第2存储器也可以为电阻变化型存储器。这样一来,在第2存储器为电阻变化型存储器时,能够抑制第1存储器的劣化。
本发明的数据存储装置的要旨在于,具备:
上述的任一个方式的本发明的存储控制器,即,基本上为如下存储器:控制第1存储器和第2存储器,所述第1存储器构成为能够通过写入动作而写入数据的非易失性存储器,所述写入动作是在以包括所述多个扇区的页为单位读取存储于存储区域的数据并将该读取出的数据以扇区为单位改写之后以页为单位写入数据的动作,所述第2存储器构成为能够比所述第1存储器高速地写入数据的随机存取存储器,所述存储控制器具备:控制部,其在被输入了写入数据和请求写入该写入数据的写入请求信号的情况下,在数据利用率为预定率以上时,控制所述第1存储器和所述第2存储器,以通过所述写入动作向所述第1存储器写入所述输入的写入数据;在所述数据利用率低于所述预定率时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于第2存储器,所述数据利用率为在向所述第1存储器写入所述写入数据时预定范围的存储区域中的用于存储所述写入数据的扇区的大小相对于能够存储数据的区域的大小的比例;
所述第1存储器;以及
所述第2存储器。
在本发明的数据存储装置中,由于具备上述的任一个方式的本发明的存储控制器,所以发挥这样的存储控制器的效果,例如,发挥与能够抑制第1存储器的劣化的效果等同样的效果。
一种存储器的控制方法,其要旨在于,
该方法控制第1存储器和第2存储器,所述第1存储器构成为能够通过写入动作而写入数据的非易失性存储器,所述写入动作是在以包括多个扇区的页为单位读取存储于存储区域的数据并将该读取出的数据以扇区为单位改写之后以页为单位写入数据的动作;所述第2存储器构成为能够比所述第1存储器高速地写入数据的随机存取存储器,在所述方法中,
在被输入了写入数据和请求写入该写入数据的写入请求信号的情况下,在数据利用率为预定率以上时,控制所述第1存储器和所述第2存储器,以通过所述写入动作向所述第1存储器写入所述输入的写入数据;在所述数据利用率低于所述预定率时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于第2存储器,所述数据利用率为在向所述第1存储器写入所述写入数据时预定范围的存储区域中的用于存储所述写入数据的扇区的大小相对于能够存储数据的区域的大小的比例。
在本发明的存储器的控制方法中,在被输入了写入数据和请求对写入数据进行写入的写入请求信号的情况下,在数据利用率为预定率以上时,控制第1存储器和第2存储器,以通过写入动作向第1存储器写入输入的写入数据,在数据利用率低于预定率时,控制第1存储器和第2存储器,以将输入的写入数据存储于第2存储器,所述数据利用率为在向第1存储器写入写入数据时预定范围的存储区域中的用于存储写入数据的扇区的大小相对于能够存储数据的区域的大小的比例。能够使第1存储器的每1页的数据利用率为预定率以上,从而抑制对没有被用于存储数据的第1存储器的存储区域的徒劳的读取和/或写入。由此,能够抑制第1存储器的劣化。在此,“预定范围”包括与写入数据的逻辑地址对应的1页或多页的数据的范围和/或与写入数据的逻辑地址对应的页中比扇区的大小大的预定大小的数据的范围等。
附图说明
图1使表示存储来自主机装置10的数据的作为本发明的实施例的SSD20的结构的概略的说明图。
图2是表示电阻变化元件46的结构的一例的说明图。
图3是表示由存储控制器30的控制处理电路32执行的写入处理例程的一例的流程图。
图4是表示利用扇区标志表USFT和页利用率R的一例的说明图。
图5是表示利用扇区标志表USFT的生成的样子的说明图。
图6是表示其他利用扇区标志表USFT的生成的样子的说明图。
图7是表示在页利用率R超过了阈值Rth2时在不执行利用扇区标志表USFT的重置动作的情况下生成的利用扇区标志表USFT的一例的说明图。
图8是表示在页利用率R超过了阈值Rth2时在执行了利用扇区标志表USFT的重置动作的情况下生成的利用扇区标志表USFT的一例的说明图。
具体实施方式
接着,使用实施例来说明用于实施本发明的方式。
图1是表示存储来自个人计算机等主机装置10的数据的作为本发明的实施例的SSD(Solid State Drive固态硬盘)20的结构的概略的说明图。SSD20作为存储各种应用程序、各种数据的大容量的数据存储装置而构成,包括作为NAND型闪存而构成的闪存22、作为电阻变化随机存取存储器(Resistance Random Access Memory,ReRAM)而构成的ReRAM24以及控制闪存22和ReRAM24的存储控制器30。
闪存22作为具备闪存单元阵列(未图示)的NAND型闪存而构成,该闪存单元阵列24具有通过向浮栅(floating gate)注入电子、从浮栅提取电子而阈值电压发生变化的多个闪存单元,除了闪存单元阵列以外还具备行解码器、列解码器、检测放大器(senseamplifier)等(均未图示)。在闪存22中,以包括8个扇区(在实施例中为512字节)的页为单位(在实施例中为4K字节)写入或读取数据,以包括多页的块为单位(在实施例中为256KB字节)对所存储的数据进行擦除。在这样的闪存22中,通过写入动作进行数据的写入,该写入动作是读取存储于闪存22的数据并以扇区为单位将读取出的数据中与写入数据对应的扇区的数据改写为写入数据之后以页为单位将改写了的数据写入闪存22的动作。在实施例的闪存22中,向闪存22写入数据时的写入速度及从闪存22读取数据时的读取速度为212MB/s。
ReRAM24构成为具备ReRAM单元阵列(未图示)的ReRAM,ReRAM单元阵列具有多个ReRAM单元,ReRAM单元构成为包括在图2中例示的电阻变化元件46和与电阻变化元件46连接的MOS晶体管(未图示),电阻变化元件46通过由上部电极40和下部电极42夹着金属氧化物44而形成,上部电极40由钛(Ti)、铂(Pt)等金属形成,下部电极42由钛(Ti)、铂(Pt)等金属形成,ReRAM24除了ReRAM单元阵列以外还具备行解码器、列解码器、检测放大器等(均未图示)。ReRAM单元形成为进行双极动作的元件,该双极动作是,在施加于上部电极40的电压V1比施加于下部电极42的电压V2高时被置位(低电阻化),在电压V1比电压V2低时被重置(高电阻化)的动作。进行这样的双极动作的ReRAM单元通常是动作速度比较快且消耗电力少的元件,因此ReRAM24构成为动作速度比较快消耗电力少的存储器。此外,作为金属氧化物44,优选希望采用使钛氧化物(TiOx)、镍氧化物(NiOx)、铜氧化物(CuOx)、铪氧化物(HfOx)等金属氧化物或这些金属氧化物多层层叠而成的层叠结构。这样构成的ReRAM24向ReRAM24写入数据时的写入速度及从ReRAM24读取数据时的读取速度比闪存22高速,在实施例中,写入速度及读取速度为1.25GB/s。
存储控制器30具备作为具有多个逻辑元件的逻辑电路而构成的执行各种控制、运算处理的控制处理电路32。从主机装置10向控制处理电路32输入各种控制信号、数据等,基本上,控制处理电路32基于输入的控制信号来控制闪存22、ReRAM24,以将数据存储于闪存22、ReRAM24;控制闪存22、ReRAM24,以从闪存22、ReRAM24读取数据;将读取出的数据向主机装置10输出。在控制处理电路32中,在进行这样的数据的读取和/或写入时,也进行包括虚拟地表示存储数据的页的逻辑页地址和虚拟地表示存储数据的扇区的逻辑扇区地址的逻辑地址与表示实际的闪存22、ReRAM24的位置的物理地址的变换。存储控制器30与主机装置10比较高速地(例如,1.25GB/s左右)交换各种控制信号和/或数据。
接着,针对这样构成的SSD20的动作、尤其针对将从主机装置10输入的数据存储于闪存22、ReRAM24时的动作进行说明。图3是表示由存储控制器30的控制处理电路32执行的写入处理例程的一例的流程图。该例程在被输入了写入请求信号、写入数据以及逻辑地址的情况下执行,该写入请求信号是请求将来自主机装置10的数据写入闪存22或ReRAM24的信号,该逻辑地址包括表示存储写入数据的位置的逻辑页地址和逻辑扇区地址。
当被输入写入请求信号时,存储控制器30的控制处理电路32制作利用扇区标志表USFT(步骤S100),基于利用扇区标志表USFT,按每个逻辑页地址运算作为被用于存储数据的扇区的比例的页利用率R(步骤S110)。
图4是表示利用扇区标志表USFT和页利用率R的一例的说明图。利用扇区标志表USFT仅备有扇区的数量个的标志,对于没有用于存储数据的扇区,设定标志的值为0,对于用于存储数据的扇区,设定标志的值为1。当前,1页包括8个扇区,因此每1页设定有8个标志。页利用率R通过将1页所包含的值为1的标志的个数除以1页的标志的个数即值8而运算出来。因此,1页所包含的值为1的标志的个数为3个时,页利用率R的值为0.375(=3/8),1页所包含的值为1的标志的个数为6个时,页利用率R的值为0.75(=6/8)。
利用扇区标志表USFT(步骤S100)通过运算对用于存储写入数据的扇区设定标志的值为1并对其他的扇区设定标志的值为1的写入数据扇区标志表WSFT与已经存储的利用扇区标志表USFT的逻辑或(OR)而生成。例如,如图5所示,在已经存储的利用扇区标志表USFT为“01111100”且写入数据扇区标志表WSFT为“11000000”时,生成“11111100”的利用扇区标志表USFT。此外,该情况下的页利用率R值为0.75。
如此运算出页利用率R之后,判定页利用率R是否为阈值Rth1以上(步骤S120),并且判定写入数据是否为改写频率比较高的高频率改写数据(步骤S130)。在此,阈值Rth1被设定为,存储于ReRAM24的数据的大小越大,该阈值Rth1越小。另外,关于写入数据是否为高频率改写数据的判定,在存储表中存储1000个页利用率R成为阈值Rth1以上时的最近的逻辑地址,若在存储表内具有预定个数(例如,100个)以上个写入数据的逻辑地址,则判断为写入数据为高频率改写数据。
在页利用率R为阈值Rth1以上且写入数据不是高频率改写数据时(步骤S120、S130),控制闪存22以通过上述的写入动作将写入数据存储于闪存22(步骤S140)。通过这样的处理,能够将数据存储于闪存22。
如在图6所例示那样,在页利用率R低于阈值Rth1时,即,页内未被利用的扇区比较多时(步骤S120)或页利用率R为阈值Rth1以上但写入数据为高频率改写数据时(步骤S130),判断为若将数据存储于闪存22则会促进闪存22的劣化,从而执行向ReRAM24写入数据的写入动作(步骤S150~S170)。判断为若在页内未被利用的扇区比较多时将数据存储于闪存22则会促进闪存22的劣化,是因为在要向闪存22写入数据时,有时会在原本无需用于存储数据的存储区域执行写入动作而导致闪存22劣化。在此,通过将阈值Rth1设定为存储于ReRAM24的数据的大小越大则该阈值Rth1越小,从而能够抑制在ReRAM24的存储区域中空闲区域少的情况下将写入数据存储于ReRAM24,即使在使用比较小的存储容量的ReRAM24时,也能够更适当地将数据存储于ReRAM24。
向ReRAM24写入数据的写入动作是,首先,调查与写入数据的逻辑地址对应的数据是否存储于闪存22(步骤S150)。然后,在数据存储于闪存22时,所述结合数据是以页为单位从闪存22读取与写入数据的逻辑地址对应的地址的数据,将读取出的数据中与写入数据对应的数据以扇区为单位用写入数据覆盖后而制作成了结合数据(步骤S160),控制ReRAM24以将这样的结合数据存储于ReRAM24(步骤S170),在数据未存储于闪存22时,控制ReRAM24以将写入数据存储于ReRAM24(步骤S170)。如此,在页利用率R低于阈值Rth1时或虽然页利用率R为阈值Rth1以上但写入数据为高频率改写数据时,通过将写入数据存储于ReRAM24,能够抑制闪存22的劣化。另外,由于ReRAM24的写入速度比闪存22的写入速度高,所以这样通过将写入数据存储于ReRAM24,能够更加高速地执行写入动作。
在如此将写入数据存储于闪存22或ReRAM24之后,接着,调查页利用率R是否超过了预先设定为比阈值Rth1高的值的阈值Rth2(例如,0.85)(步骤S180)。在页利用率R比阈值Rth2高时,执行将利用扇区标志表USFT的标志全部设定为值0的标志重置动作(步骤S190),在页利用率R为阈值Rth2以上时,不变更利用扇区标志表USFT,结束本例程。进行这样的标志重置动作是基于以下的理由。
例如,如图7所示,在已经存储的利用扇区标志表USFT为“01111111”(页利用率R的值为0.875)且写入数据扇区标志表WSFT为“11000000”时,生成“11111111”的利用扇区标志表USFT。若页利用率R如此升高,则在数据不是高频率改写数据的情况下,该页的数据通过写入动作始终存储于闪存22,有时会促进闪存22的劣化。在页利用率R比阈值Rth2高时通过执行将利用扇区标志表USFT的标志全部设定为值0的标志重置动作(步骤S190),如图8所例示的那样,接着在执行步骤S100的处理时,已经存储的利用扇区标志表USFT变为“00000000”(页利用率R的值为0),在写入数据扇区标志表WSFT为“11000000”时,生成“11000000”的利用扇区标志表USFT,利用扇区标志表USFT变为表示页利用率R变得比阈值Rth2高时以后用于存储数据的扇区的信息的标志表。由于此时的页利用率R的值为0.25,所以变为向ReRAM24写入(步骤S120、S150~S170)。通过这样的处理,抑制向闪存22的数据的写入动作,能够抑制闪存22的劣化。
根据以上说明的实施例的SSD20,在页利用率R低于阈值Rth1时或虽然页利用率R为阈值Rth1以上但写入数据为高频率改写数据时,通过将写入数据存储于ReRAM24,能够抑制闪存22的劣化。另外,由于ReRAM24的写入速度比闪存22的写入速度高速,所以通过如此将写入数据存储于ReRAM24,能够使写入动作更加高速。另外,通过随着在ReRAM24中存储有数据的存储区域的大小变大而使阈值Rth1变小来设定该阈值Rth1,能够抑制在ReRAM24的存储区域中空闲区域变少时将写入数据存储于ReRAM24,即使在使用比较小的存储容量的ReRAM24时,也能够更适当地将数据存储于ReRAM24。进而,在页利用率R比阈值Rth2高时通过执行将利用扇区标志表USFT的标志全部设定为值为0的标志重置动作,能够抑制向闪存22的写入数据的动作,能够抑制闪存22的劣化。
在实施例的SSD20中,在页利用率R为阈值Rth1以上但写入数据为高频率改写数据时,将写入数据存储于ReRAM24(步骤S120、S130、S150~S170),但也可以不执行步骤S130的处理而是在页利用率R为阈值Rth1以上时一律将写入数据存储于闪存22(步骤S120~S140)。
在实施例的SSD20中,随着在ReRAM24中存储有数据的存储区域的大小变大而将阈值Rth1设定得小,但也可以与在ReRAM24中存储有数据的存储区域的大小无关而将阈值Rth1设定为同一值。
在实施例的SSD20中,在页利用率R比阈值Rth2高时,执行将利用扇区标志表USFT的标志全部设定为值0的标志重置动作(步骤S180、S190),但也可以不执行这样的处理
在实施例的SSD20中,将运算页利用率R的范围设为1页,通过将1页所包含的值为1的标志的个数除以1页的标志的个数即值8来进行运算,但只要运算页利用率R的范围比1扇区大即可,可以任意设定大小,例如,也可以在2页以上的页的范围内运算页利用率R,通过将运算的范围所包含的值为1的标志的个数除以运算的范围中标志的个数来进行运算。
在实施例的SSD20中,具备闪存22,但也可以使用构成为如下的非易失性存储器的其他存储器来代替闪存22,该非易失性存储器能够通过写入动作而写入数据,所述写入动作是在以包括多个扇区的页为单位读取存储于存储区域的数据并将读取出的数据以扇区为单位改写之后以页为单位写入数据的动作。
在实施例的SSD20中,将ReRAM24的ReRAM单元形成为进行双极动作的元件,但也可以由电阻变化元件46和二极管(未图示)构成ReRAM单元,并且将ReRAM单元形成为进行如下的单极动作的元件,所述单极动作是,在对电压V1施加比电压V2高的电压时被置位(低电阻化),在对电压V1施加比电压V2高且比将ReRAM单元置位的电压低的电压时被重置(高电阻化)的动作。进行这样的单极动作的ReRAM单元通常与进行双极动作的ReRAM单元相比以较小的单元尺寸且简单的单元结构构成,因此与将ReRAM单元形成为进行双极动作的元件相比,尽管动作稍微变得迟缓,但能够使面积更小。
在实施例的SSD20中,SSD20具备ReRAM24,但也可以代替ReRAM24而具备能够比闪存22高速地写入数据的其他随机存取存储器,例如,具有以二个电极夹着铁电材料的电容器的铁电随机存取存储器、具有以磁性薄膜夹着隧道磁电阻膜的结构的MTJ(MagnetoTunnel Junction磁隧道结)元件的磁阻随机存取存储器、具有以二个电极夹着相变材料的元件的相变随机存取存储器、静态随机存取存储器、动态随机存取存储器等。
在实施例中,例示了将本发明用于SSD的情况,但只要是处理数据的数据处理装置即可,可以用于任何数据处理装置,例如,也可以用于USB存储器等。另外,不限定于将存储控制器30搭载于作为一个装置的SSD20,既可以将闪存22、ReRAM24和存储控制器30分别搭载于不同的装置,也可以将闪存22、ReRAM24搭载于同一装置,将存储控制器30搭载于不同于闪存22、24的装置。另外,也可以为控制这样的闪存22、ReRAM24的存储器的控制方法的方式。
对实施例的主要的要素与记载于发明内容部分的发明的主要的要素的对应关系进行了说明。在实施例中,关于存储控制器,控制处理电路32相当于“控制部”。关于存储控制器,控制处理电路32相当于“控制部”。另外,关于数据存储装置,存储控制器30相当于“存储控制器”,闪存22相当于“第1存储器”,ReRAM24相当于“第2存储器”。
以上,使用实施例对用于实施本发明的方式进行了说明,但本发明丝毫不限定于这样的实施例,当然能够在不脱离本发明的要旨的范围内以各种方式实施。
产业上的可利用性
本发明能够利用于存储控制器、数据存储装置等的制造产业。
Claims (16)
1.一种存储控制器,其控制第1存储器和第2存储器,所述第1存储器构成为能够通过写入动作而写入数据的非易失性存储器,所述写入动作是在以包括多个扇区的页为单位读取存储于存储区域的数据并将该读取出的数据以扇区为单位改写之后以页为单位写入数据的动作;所述第2存储器构成为能够比所述第1存储器高速地写入数据的随机存取存储器,所述存储控制器具备:
控制部,其在被输入了写入数据和请求写入该写入数据的写入请求信号的情况下,在数据利用率为预定率以上时,控制所述第1存储器和所述第2存储器,以通过所述写入动作向所述第1存储器写入所述输入的写入数据;在所述数据利用率低于所述预定率时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于第2存储器,所述数据利用率为在向所述第1存储器写入所述写入数据时预定范围的存储区域中的用于存储所述写入数据的扇区的大小相对于能够存储数据的区域的大小的比例。
2.根据权利要求1所述的存储控制器,具备:
比例设定部,其按随着在所述第2存储器中存储有数据的存储区域的大小变大而所述预定率变小的倾向对该预定率进行设定。
3.根据权利要求1或2所述的存储控制器,
所述控制部,在所述数据利用率为所述预定率以上的情况下,在所述输入的写入数据为写入频率高的高频率写入数据时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于所述第2存储器。
4.根据权利要求3所述的存储控制器,具备:
地址信息存储部,其存储第1个数个所述数据利用率成为所述预定率以上时的所述输入的写入数据的逻辑地址,
所述控制部,在所述地址信息存储部存储有第2个数以上的所述输入的写入数据的逻辑地址时,将所述输入的写入数据设为所述高频率写入数据,所述第2个数比所述第1个数少。
5.根据权利要求4所述的存储控制器,
所述控制部基于利用扇区信息和存储输入的写入数据时利用的扇区来运算所述数据利用率,所述利用扇区信息为所述各扇区是否存储有数据的信息。
6.根据权利要求5所述的存储控制器,
所述控制部,在所述数据利用率成为比所述预定率大的第2比例时,将所述数据利用率成为所述第2比例时以后的所述各扇区是否存储有数据的信息设为所述利用扇区信息。
7.根据权利要求6所述的存储控制器,
所述控制部,在将所述输入的写入数据存储于所述第2存储器的情况下,在与所述输入的写入数据的逻辑地址对应的数据已经存储于第1存储器的存储区域时,在以页为单位读取存储于所述第1存储器的数据并将该读取出的数据的扇区中成为写入对象的扇区用写入数据改写之后,以页为单位使其存储于第2存储器。
8.根据权利要求1或2所述的存储控制器,
所述控制部基于利用扇区信息和存储输入的写入数据时利用的扇区来运算所述数据利用率,所述利用扇区信息为所述各扇区是否存储有数据的信息。
9.根据权利要求8所述的存储控制器,
所述控制部,在所述数据利用率成为比所述预定率大的第2比例时,将所述数据利用率成为所述第2比例时以后的所述各扇区是否存储有数据的信息设为所述利用扇区信息。
10.根据权利要求9所述的存储控制器,
所述控制部,在将所述输入的写入数据存储于所述第2存储器的情况下,在与所述输入的写入数据的逻辑地址对应的数据已经存储于第1存储器的存储区域时,在以页为单位读取存储于所述第1存储器的数据并将该读取出的数据的扇区中成为写入对象的扇区用写入数据改写之后,以页为单位使其存储于第2存储器。
11.根据权利要求1或2所述的存储控制器,
所述控制部,在将所述输入的写入数据存储于所述第2存储器的情况下,在与所述输入的写入数据的逻辑地址对应的数据已经存储于第1存储器的存储区域时,在以页为单位读取存储于所述第1存储器的数据并将该读取出的数据的扇区中成为写入对象的扇区用写入数据改写之后,以页为单位使其存储于第2存储器。
12.根据权利要求1或2所述的存储控制器,
所述预定范围是与所述写入数据的逻辑地址对应的1页的数据的范围。
13.根据权利要求1或2所述的存储控制器,
所述第1存储器是NAND型闪存。
14.根据权利要求1或2所述的存储控制器,
所述第2存储器是电阻变化型存储器。
15.一种数据存储装置,具备:
权利要求1至14中任一项所述的存储控制器;
所述第1存储器;以及
所述第2存储器。
16.一种存储器的控制方法,该方法控制第1存储器和第2存储器,所述第1存储器构成为能够通过写入动作而写入数据的非易失性存储器,所述写入动作是在以包括多个扇区的页为单位读取存储于存储区域的数据并将该读取出的数据以扇区为单位改写之后以页为单位写入数据的动作;所述第2存储器构成为能够比所述第1存储器高速地写入数据的随机存取存储器,在所述方法中,
在被输入了写入数据和请求写入该写入数据的写入请求信号的情况下,在数据利用率为预定率以上时,控制所述第1存储器和所述第2存储器,以通过所述写入动作向所述第1存储器写入所述输入的写入数据;在所述数据利用率低于所述预定率时,控制所述第1存储器和所述第2存储器,以将所述输入的写入数据存储于第2存储器,所述数据利用率为在向所述第1存储器写入所述写入数据时预定范围的存储区域中的用于存储所述写入数据的扇区的大小相对于能够存储数据的区域的大小的比例。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012-030798 | 2012-02-15 | ||
JP2012030798A JP5971547B2 (ja) | 2012-02-15 | 2012-02-15 | メモリコントローラ,データ記憶装置およびメモリの制御方法 |
PCT/JP2012/058586 WO2013121596A1 (ja) | 2012-02-15 | 2012-03-30 | メモリコントローラ,データ記憶装置およびメモリの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104115131A CN104115131A (zh) | 2014-10-22 |
CN104115131B true CN104115131B (zh) | 2017-07-21 |
Family
ID=48983747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280069565.4A Expired - Fee Related CN104115131B (zh) | 2012-02-15 | 2012-03-30 | 存储控制器、数据存储装置以及存储器的控制方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9977733B2 (zh) |
JP (1) | JP5971547B2 (zh) |
KR (1) | KR101904270B1 (zh) |
CN (1) | CN104115131B (zh) |
HK (1) | HK1203240A1 (zh) |
WO (1) | WO2013121596A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5995071B2 (ja) * | 2012-09-19 | 2016-09-21 | 学校法人 中央大学 | メモリコントローラ,データ記憶装置およびメモリの制御方法 |
KR102126760B1 (ko) | 2014-04-07 | 2020-06-25 | 삼성전자 주식회사 | 비휘발성 메모리 장치의 구동 방법 |
JP6327994B2 (ja) * | 2014-07-28 | 2018-05-23 | ルネサスエレクトロニクス株式会社 | 制御システムおよび半導体装置 |
CN106293503B9 (zh) * | 2015-06-23 | 2019-06-28 | 株式会社东芝 | 磁盘装置及控制方法 |
US10276227B2 (en) * | 2017-04-28 | 2019-04-30 | Taiwan Semiconductor Manufacturing Company Limited | Write algorithm for memory to reduce failure rate of write operations |
US20190038040A1 (en) * | 2017-08-04 | 2019-02-07 | Technogel Italia S.r.I. | Mattress for improved sleep and methods of use thereof |
US10809942B2 (en) * | 2018-03-21 | 2020-10-20 | Micron Technology, Inc. | Latency-based storage in a hybrid memory system |
US10705747B2 (en) | 2018-03-21 | 2020-07-07 | Micron Technology, Inc. | Latency-based storage in a hybrid memory system |
US10705963B2 (en) | 2018-03-21 | 2020-07-07 | Micron Technology, Inc. | Latency-based storage in a hybrid memory system |
TWI742961B (zh) * | 2020-12-10 | 2021-10-11 | 旺宏電子股份有限公司 | 快閃記憶體系統及其快閃記憶體裝置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615145A (zh) * | 2009-07-24 | 2009-12-30 | 中兴通讯股份有限公司 | 一种提高存储器数据缓存可靠性的方法和装置 |
CN101645846A (zh) * | 2009-09-02 | 2010-02-10 | 中兴通讯股份有限公司 | 一种路由交换设备及其数据缓存的方法 |
TW201118569A (en) * | 2009-11-23 | 2011-06-01 | Phison Electronics Corp | Data storing method for a flash memory, and flash memory controller and flash memory storage system using the same |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080071973A1 (en) * | 2000-01-06 | 2008-03-20 | Chow David Q | Electronic data flash card with various flash memory cells |
US6836432B1 (en) * | 2002-02-11 | 2004-12-28 | Advanced Micro Devices, Inc. | Partial page programming of multi level flash |
JP2006018591A (ja) | 2004-07-01 | 2006-01-19 | Matsushita Electric Ind Co Ltd | メモリカード |
JP4956922B2 (ja) * | 2004-10-27 | 2012-06-20 | ソニー株式会社 | 記憶装置 |
JP2008134685A (ja) * | 2006-11-27 | 2008-06-12 | Konica Minolta Business Technologies Inc | 不揮発メモリシステム及び不揮発メモリ制御方法 |
US7975109B2 (en) * | 2007-05-30 | 2011-07-05 | Schooner Information Technology, Inc. | System including a fine-grained memory and a less-fine-grained memory |
KR101472797B1 (ko) | 2007-07-16 | 2014-12-15 | 삼성전자주식회사 | 데이터를 읽거나 쓰기 위한 방법 및 장치 |
KR101553532B1 (ko) | 2008-04-17 | 2015-09-16 | 삼성전자주식회사 | 스토리지 장치 |
TWI389125B (zh) * | 2008-07-18 | 2013-03-11 | A Data Technology Co Ltd | 記憶體儲存裝置及其控制方法 |
US8832353B2 (en) * | 2009-04-07 | 2014-09-09 | Sandisk Technologies Inc. | Host stop-transmission handling |
US8375162B2 (en) * | 2009-06-03 | 2013-02-12 | Ocz Technology Group Inc. | Method and apparatus for reducing write cycles in NAND-based flash memory devices |
US20110167197A1 (en) * | 2010-01-05 | 2011-07-07 | Mark Leinwander | Nonvolatile Storage with Disparate Memory Types |
US20110252187A1 (en) * | 2010-04-07 | 2011-10-13 | Avigdor Segal | System and method for operating a non-volatile memory including a portion operating as a single-level cell memory and a portion operating as a multi-level cell memory |
JP2012008651A (ja) * | 2010-06-22 | 2012-01-12 | Toshiba Corp | 半導体記憶装置、その制御方法および情報処理装置 |
JP2012008747A (ja) * | 2010-06-24 | 2012-01-12 | Nec Corp | 集積装置、メモリ割り当て方法、および、プログラム |
US20130103889A1 (en) * | 2011-10-25 | 2013-04-25 | Ocz Technology Group Inc. | Page-buffer management of non-volatile memory-based mass storage devices |
JP5995071B2 (ja) * | 2012-09-19 | 2016-09-21 | 学校法人 中央大学 | メモリコントローラ,データ記憶装置およびメモリの制御方法 |
-
2012
- 2012-02-15 JP JP2012030798A patent/JP5971547B2/ja not_active Expired - Fee Related
- 2012-03-30 CN CN201280069565.4A patent/CN104115131B/zh not_active Expired - Fee Related
- 2012-03-30 WO PCT/JP2012/058586 patent/WO2013121596A1/ja active Application Filing
- 2012-03-30 KR KR1020147023531A patent/KR101904270B1/ko active IP Right Grant
- 2012-03-30 US US14/378,157 patent/US9977733B2/en not_active Expired - Fee Related
-
2015
- 2015-04-20 HK HK15103794.5A patent/HK1203240A1/zh not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615145A (zh) * | 2009-07-24 | 2009-12-30 | 中兴通讯股份有限公司 | 一种提高存储器数据缓存可靠性的方法和装置 |
CN101645846A (zh) * | 2009-09-02 | 2010-02-10 | 中兴通讯股份有限公司 | 一种路由交换设备及其数据缓存的方法 |
TW201118569A (en) * | 2009-11-23 | 2011-06-01 | Phison Electronics Corp | Data storing method for a flash memory, and flash memory controller and flash memory storage system using the same |
Also Published As
Publication number | Publication date |
---|---|
CN104115131A (zh) | 2014-10-22 |
US9977733B2 (en) | 2018-05-22 |
KR101904270B1 (ko) | 2018-10-04 |
US20150006796A1 (en) | 2015-01-01 |
WO2013121596A1 (ja) | 2013-08-22 |
JP5971547B2 (ja) | 2016-08-17 |
KR20140122730A (ko) | 2014-10-20 |
JP2013168015A (ja) | 2013-08-29 |
HK1203240A1 (zh) | 2015-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104115131B (zh) | 存储控制器、数据存储装置以及存储器的控制方法 | |
CN104798055B (zh) | 存储器控制器、数据存储装置和存储器控制方法 | |
CN100479057C (zh) | 非易失性半导体存储装置及其控制方法 | |
JP5478855B2 (ja) | 不揮発性メモリ制御方法及び半導体装置 | |
US8861253B2 (en) | Variable resistance device, semiconductor device including the variable resistance device, and method of operating the semiconductor device | |
JP2005092912A (ja) | 不揮発性半導体記憶装置 | |
US9971545B1 (en) | Non-volatile write and read cache for storage media | |
TW200933638A (en) | System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory | |
CN104603883B (zh) | 存储器中的二极管分段 | |
CN103635971B (zh) | 半导体存储装置 | |
CN108733318A (zh) | 一种tlc nand flash固态硬盘的写入方法 | |
JP2009163860A5 (zh) | ||
JP6202576B2 (ja) | 不揮発性記憶装置およびその制御方法 | |
US10714179B2 (en) | Hybrid memory devices | |
US9342257B2 (en) | Computer system having main memory and control method thereof | |
CN109300933A (zh) | 一种阻型存储器结构 | |
JP2010108385A5 (zh) | ||
CN110534143A (zh) | 一种基于磁性格明子的赛道存储器的多电极写入方法 | |
US7791949B2 (en) | Refresh method for a non-volatile memory | |
JP6865561B2 (ja) | 非確率論抵抗性スイッチングメモリデバイス及び製造方法 | |
US20170287542A1 (en) | Methods and apparatus for memory programming | |
JP2007004924A5 (zh) | ||
US20220405003A1 (en) | Balancing power, endurance and latency in a ferroelectric memory | |
JP2014153969A (ja) | 情報処理システム | |
CN103678188A (zh) | 存储器系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1203240 Country of ref document: HK |
|
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1203240 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170721 Termination date: 20210330 |