CN102193870B - 存储器管理与写入方法、存储器控制器与存储器存储*** - Google Patents
存储器管理与写入方法、存储器控制器与存储器存储*** Download PDFInfo
- Publication number
- CN102193870B CN102193870B CN201010129216.XA CN201010129216A CN102193870B CN 102193870 B CN102193870 B CN 102193870B CN 201010129216 A CN201010129216 A CN 201010129216A CN 102193870 B CN102193870 B CN 102193870B
- Authority
- CN
- China
- Prior art keywords
- memory unit
- memory
- physical blocks
- multiple physical
- mapping table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Read Only Memory (AREA)
Abstract
本发明公开了一种存储器管理与写入方法、存储器控制器与存储器存储***,该存储器管理与写入方法,用于管理存储器模组。此存储器模组包括多个存储器单元与分别对应这些存储器单元的多条数据输入/输出总线。本方法包括配置多个逻辑单元,将每一逻辑单元区分为分别对应这些数据输入/输出总线的多个逻辑部,并且将每一逻辑单元的逻辑部分别地映射至这些存储器单元的实体区块。本方法还包括分别地建立对应每一输入/输出总线的映射表,并且依据对应此输入/输出总线的映射表仅使用其中一个输入/输出总线将来自于主机***的数据写入至对应的存储器单元中。基此,本方法可有效地提升数据写入速度。
Description
技术领域
本发明是有关于一种存储器管理与写入方法,且特别是有关于一种用于管理可复写式非易失性存储器的存储器管理与写入方法以及使用此方法的存储器控制器与存储***。
背景技术
数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器(rewritable non-volatilememory)具有数据非易失性、省电、体积小与无机械结构等的特性,适合可携式应用,最适合使用于这类可携式由电池供电的产品上。固态硬盘就是一种以可复写式非易失性存储器作为存储媒体的存储装置。由于可复写式非易失性存储器体积小容量大,所以已广泛用于个人重要数据的存储。因此,近年可复写式非易失性存储器产业成为电子产业中相当热门的一环。
以快闪存储器模组作为存储媒体的存储装置为例,快闪存储器模组的存储器单元具有多个实体区块(physical block),且每一实体区块具有多个实体页面(physical page),其中在实体区块中写入数据时必须依据实体页面的顺序依序地写入数据。此外,已被写入的实体页面并需先被抹除后才能再次被写入。特别是,实体区块为抹除的最小单位,并且实体页面为程序化(亦称写入)的最小单元。因此,在快闪存储器模组的管理中,实体区块会被区分为数据区与备用区。数据区的实体区块是用以存储主机***所存储的数据。而备用区的实体区块是用以轮替数据区中的实体区块。因此,在备用区中的实体区块为空或可使用的单元,即无记录数据或标记为已没用的无效数据。也就是说,数据区与备用区的实体区块是以轮替方式来存储主机***所写入至存储装置的数据。例如,当主机***欲将数据写入至存储装置时,存储装置的存储器管理电路会识别在数据区中欲被更新的实体区块,并且从备用区中提取实体区块以替换此欲被更新的实体区块来写入数据。具体来说,存储装置的存储器管理电路会将在此欲被更新的实体区块中的有效数据复制至所提取的实体区块中,将欲写入的数据写入至所提取的实体区块中,并且将已写入数据的实体区块关联至数据区。此外,欲被更新的实体区块会被执行抹除运作并且关联至备用区。
特别是,在快闪存储器模组具有多个存储器单元并且这些存储器单元以独立的数据输入/输出总线(Data Input/Output Bus)传输数据的例子中,存储器单元的实体区块会被分组为实体单元并且以实体单元为单位来进行管理。具体来说,实体单元分别是由每一存储器单元的一个对应实体区块所组成。例如,在快闪存储器模组具有第一存储器单元与第二存储器单元的例子中,第一存储器单元的一个对应实体区块与第二存储器单元的一个对应实体区块会固定地被分组为一个实体单元。并且,在将实体区块分组为上述数据区与备用区的运作和写入运作中,存储器管理电路是以实体单元为单位来进行,由此减少管理存储器模组所需的资源。此外,通过多个数据输入/输出总线同时写入数据至一个实体单元内的多个实体区块亦可有效地提升数据写入速度。
随着半导体制程的进步,实体区块中每一个实体页面的容量越来越大。然而,在将固态硬盘作为主机***的主硬盘的应用中,主机***所写入的连续数据的大小往往小于一个实体页面,因此在执行写入指令时存储器管理电路需花费较长的时间执行上述复制有效数据的运作,而影响存储装置的效能。
此外,实体区块的写入次数是有限的。然而,在上述以实体单元为单位的管理架构中,当主机***仅在一个实体单元的其中一个实体区块中写入数据时,存储器管理单元仍需以实体单元为单位来进行数据的抹除。基此,实体区块的写入次数会因执行上述复制有效数据而快速地增加,以致于缩短存储装置的寿命。
发明内容
本发明提供一种存储器管理与写入方法,其能够缩短执行写入指令的时间并且延长存储器模组的寿命。
本发明提供一种存储器控制器,其能够缩短执行写入指令的时间并且延长存储器模组的寿命。
本发明提供一种存储器存储***,其能够缩短执行写入指令的时间并且延长存储器模组的寿命。
本发明提出一种存储器管理与写入方法,用于管理一存储器模组。此存储器模组包括第一存储器单元、用于第一存储器单元的第一输入/输出总线、第二存储器单元与用于第二存储器单元的第二输入/输出总线,其中第一存储器单元与第二存储器单元具有多个实体区块。本存储器管理与写入方法包括配置多个逻辑单元,并且将每一逻辑单元区分为对应第一输入/输出总线的第一逻辑部与对应该第二输入/输出总线的第二逻辑部。本存储器管理与写入方法也包括将这些逻辑单元映射至第一存储器单元与第二存储器单元的实体区块的至少一部分,其中每一逻辑单元的第一逻辑部映射第一存储器单元的实体区块的其中之一并且每一逻辑单元的第二逻辑部映射第二存储器单元的该些实体区块的其中之一。本存储器管理与写入方法还包括建立对应第一输入/输出总线的第一映射表以记录逻辑单元的第一逻辑部与第一存储器单元的实体区块之间的第一映射关系,以及建立对应第二输入/输出总线的第二映射表以记录逻辑单元的第二逻辑部与第二存储器单元的实体区块之间的第二映射关系。本存储器管理与写入方法也包括接收写入指令与对应此写入指令的数据,其中此数据欲被写入至逻辑单元的第一逻辑部的其中之一。本存储器管理与写入方法还包括依据对应第一输入/输出总线的第一映射表仅使用第一输入/输出总线以将对应此写入指令的数据写入至第一存储器单元中。
本发明实施例提出一种存储器控制器,其包括存储器接口、存储器管理电路与主机接口单元。存储器接口单元电性连接至存储器管理电路,并且用以电性连接至上述存储器模组。主机接口电性连接至存储器管理电路并且用以电性连接至主机***。存储器管理电路单元用以执行上述存储器管理与写入方法的至少一步骤。
本发明实施例提出一种存储器存储***,其包括连接器、上述存储器模组与电性连接至此存储器模组的存储器控制器。在此,此存储器控制器用以执行上述存储器管理与写入方法的至少一步骤。
基于上述,本发明实施例的存储器管理与写入方法能够独立地运作映射至同一个逻辑单元的每一实体区块,由此可缩短执行复制有效数据的时间,幷且延长存储器模组的寿命。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1A是本发明第一实施例所示使用存储器存储装置的主机***。
图1B是本发明实施例所示的电脑、输入/输出装置与存储器存储装置的示意图。
图1C是本发明另一实施例所示的主机***与存储器存储装置的示意图。
图2是图1A所示的可复写式非易失性存储器存储装置的概要方块图。
图3是本发明第一实施例所示的存储器控制器与存储器模组的概要方块图。
图4与图5是本发明第一实施例所示的管理存储器模组的示意图。
图6与图7是本发明第一实施例所示的对应数据输入/输出总线的逻辑单元-实体区块映射表的实施例。
图8~图10是本发明第一实施例所示的写入数据至存储器模组的实施例。
图11A与图11B是本发明第一实施例所示的对应数据输入/输出总线的逻辑单元-实体区块映射表的另一实施例。
图12是本发明第一实施例所示的存储器管理与写入方法的流程图。
图13是本发明第二实施例所示的存储器存储装置的概要方块图。
图14是本发明第二实施例所示的存储器管理与写入方法的流程图。
图15是本发明第三实施例所示的存储器存储装置的概要方块图。
图16是本发明第三实施例所示的存储器管理与写入方法的流程图。
图17是本发明第四实施例所示的存储器存储装置的概要方块图。
图18是本发明第四实施例所示的存储器管理与写入方法的流程图。
主要元件符号说明:
1000:主机*** 1100:电脑
1102:微处理器 1104:随机存取存储器
1106:输入/输出装置 1108:***总线
1110:数据传输接口 1202:鼠标
1204:键盘 1206:显示器
1208:打印机 1212:随身碟
1214:记忆卡 1216:固态硬盘
1310:数码相机 1312:SD卡
1314:MMC卡 1316:记忆棒
1318:CF卡 1320:嵌入式存储装置
100、1300、1500、1700:存储器 102:连接器
存储装置
104:存储器控制器 106:存储器模组
202:存储器管理电路 204:主机接口
206:存储器接口 252:缓冲存储器
254:电源管理电路 256:错误检查与校正电路
302:第一存储器单元 312:第二存储器单元
352:晶片致能接脚 354:第一控制总线
356:第一数据输入/输出总线 364:第二控制总线
366:第二数据输入/输出总线 402:数据区
404:备用区 406:***区
408:取代区 510(0)~510(H):逻辑单元
602:第一逻辑部-实体区块映射表 612:第二逻辑部-实体区块映射表
1302:存储器管理电路 1304:存储器控制器
1352:第一晶片致能接脚 1354:控制总线
1356:第一数据输入/输出总线 1362:第二晶片致能接脚
1366:第二数据输入/输出总线 1502:存储器管理电路
1504:存储器控制器 1552:晶片致能接脚
1554:控制总线 1556:第一数据输入/输出总线
1566:第二数据输入/输出总线 1702:存储器管理电路
1704:存储器控制器 1752:第一晶片致能接脚
1754:第一控制总线 1756:第一数据输入/输出总线
1762:第二晶片致能接脚 1764:第二控制总线
1766:第二数据输入/输出总线
304(0)~304(R)、314(0)~314(R):实体区块
S1201、S1203、S1205、S1207、S1209、S1211、S1213、S1215、S1217、S1219、S1221:存储器管理与写入方法的步骤
S1401、S1403、S1405、S1407、S1409、S1411、S1413、S1415、S1417、S1419、S1421:存储器管理与写入方法的步骤
S1601、S1603、S1605、S1607、S1609、S1611、S1613、S1615、S1617、S1619、S1621:存储器管理与写入方法的步骤
S1801、S1803、S1805、S1807、S1809、S1811、S1813、S1815、S1817、S1819、S1821:存储器管理与写入方法的步骤
具体实施方式
一般而言,存储器存储装置(亦称,存储器存储***)包括存储器模组与控制器(亦称,控制电路)。通常存储器存储装置会与主机***一起使用,以使主机***可将数据写入至存储器存储装置或从存储器存储装置中读取数据。另外,亦有存储器存储装置是包括嵌入式存储器与可执行于主机***上以实质地作为此嵌入式存储器的控制器的软件。
第一实施例
图1A是本发明第一实施例所示使用存储器存储装置的主机***。
请参照图1A,主机***1000一般包括电脑1100与输入/输出(input/output;以下简称:I/O)装置1106。电脑1100包括微处理器1102、随机存取存储器(random access memory;以下简称:RAM)1104、***总线1108以及数据传输接口1110。输入/输出装置1106包括如图1B的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图1B所示的装置非限制输入/输出装置1106,输入/输出装置1106可还包括其他装置。
在本发明实施例中,存储器存储装置100是通过数据传输接口1110与主机***1000的其他元件电性连接。通过微处理器1102、随机存取存储器1104与输入/输出装置1106的处理可将数据写入至存储器存储装置100或从存储器存储装置100中读取数据。例如,存储器存储装置100可以是如图1B所示的随身碟1212、记忆卡1214或固态硬盘(Solid StateDrive;以下简称:SSD)1216。
一般而言,主机***1000可实质地为可存储数据的任意***。虽但是在本实施例中,主机***1000是以电脑***来作说明,但是,在本发明另一实施例中主机***1000可以是数码相机、摄影机、通信装置、音频播放器或视频播放器等***。例如,在主机***为数码相机(摄影机)1310时,存储器存储装置则为其所使用的SD卡1312、MMC卡1314、记忆棒(memory stick)1316、CF卡1318或嵌入式存储装置1320(如图1C所示)。嵌入式存储装置1320包括嵌入式多媒体卡(EmbeddedMMC;以下简称:eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接于主机***的基板上。
图2是图1A所示的可复写式非易失性存储器存储装置的概要方块图。
请参照图2,存储器存储装置100包括连接器102、存储器控制器104与存储器模组106。
在本实施例中,连接器102为序列先进附件(Serial AdvancedTechnology Attachment;以下简称:SATA)连接器。但是,必须了解的是,本发明不限于此,连接器102亦可以是通用序列总线(Universal SerialBus;以下简称:USB)连接器、电气和电子工程师协会(Institute ofElectrical and Electronic Engineers;以下简称:IEEE)1394连接器、高速周边零件连接接口(Peripheral Component Interconnect Express;以下简称:PCI Express)连接器、安全数码(Secure Digital;以下简称:SD)接口连接器、记忆棒(Memory Stick;以下简称:MS)接口连接器、多媒体存储卡(Multi Media Card;以下简称:MMC)接口连接器、小型快闪(CompactFlash;以下简称:CF)接口连接器、整合式驱动电子接口(Integrated DeviceElectronics;以下简称:IDE)连接器或其他适合的连接器。
存储器控制器104用以执行以硬件型式或固件型式实作的多个逻辑闸或控制指令,并且根据主机***1000的指令在存储器模组106中进行数据的写入、读取与抹除等运作。特别是,存储器控制器104用以执行根据本实施例的数据存取机制与存储器管理机制。
存储器模组106是电性连接至存储器控制器104,并且用以存储主机***1000所写入的数据。在此,存储器模组106为可复写式非易失性存储器。例如,存储器模组106为一多层记忆胞(Multi Level Cell;以下简称:MLC)NAND快闪存储器模组。但是,本发明不限于此,存储器模组106亦可是单层记忆胞(Single Level Cell;以下简称:SLC)NAND快闪存储器模组、其他快闪存储器模组或其他具有相同特性的存储器模组。
图3是本发明第一实施例所示的存储器控制器与存储器模组的概要方块图。
请参照图3,存储器控制器104包括存储器管理电路202、主机接口204与存储器接口206。
存储器管理电路202用以控制存储器控制器104的整体运作。具体来说,存储器管理电路202具有多个控制指令,并且在存储器存储装置100运作时,这些控制指令会被执行以根据本实施例的数据存取机制与存储器管理机制来管理存储器模组106。这些数据存取机制与存储器管理机制将于以下配合附图作详细说明。
在本实施例中,存储器管理电路202的控制指令是以一固件型式来实作。例如,存储器管理电路202具有一微处理器单元(未画出)与一只读存储器(未画出),并且这些控制指令是被刻录至此只读存储器中。当存储器存储装置100运作时,这些控制指令会由微处理器单元来执行以完成根据本发明实施例的数据存取机制与存储器管理机制。
在本发明另一实施例中,存储器管理电路202的控制指令亦可以程序码型式存储于存储器模组106的特定区域(例如,存储器模组中专用于存放***数据的***区)中。此外,存储器管理电路202具有一微处理器单元(未画出)、一只读存储器(未画出)及一随机存取存储器(未画出)。特别是,此只读存储器具有一驱动码段,并且当存储器控制器104被致能时,微处理器单元会先执行此驱动码段来将存储于存储器模组106中的控制指令载入至存储器管理电路202的随机存取存储器中,之后再运转这些控制指令以执行本发明实施例的数据存取机制与存储器管理机制。此外,在本发明另一实施例中,存储器管理电路202的控制指令亦可以一硬件型式来实作。
主机接口204是电性连接至存储器管理电路202并且用以接收与识别主机***1000所传送的指令与数据。也就是说,主机***1000所传送的指令与数据会通过主机接口204来传送至存储器管理电路202。在本实施例中,主机接口204是对应连接器102为SATA接口。但是,必须了解的是本发明不限于此,主机接口204亦可以是PATA接口、USB接口、IEEE 1394接口、PCI Express接口、SD接口、MS接口、MMC接口、CF接口、IDE接口或其他适合的数据传输接口。
存储器接口206是电性连接至存储器管理电路202并且用以存取存储器模组106。也就是说,欲写入至存储器模组106的数据会经由存储器接口206转换为存储器模组106所能接受的格式。
在本发明一实施例中,存储器控制器104还包括缓冲存储器252。缓冲存储器252是电性连接至存储器管理电路202并且用以暂存来自于主机***1000的数据与指令或来自于存储器模组106的数据。
在本发明一实施例中,存储器控制器104还包括电源管理电路254。电源管理电路254是电性连接至存储器管理电路202并且用以控制存储器存储装置100的电源。
在本发明一实施例中,存储器控制器104还包括错误检查与校正电路256。错误检查与校正电路256是电性连接至存储器管理电路202并且用以执行一错误检查与校正程序以确保数据的正确性。具体来说,当存储器管理电路202从主机***1000中接收到写入指令时,错误检查与校正电路256会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking and Correcting Code;以下简称:ECC Code),并且存储器管理电路202会将对应此写入指令的数据与对应的错误校正码写入至存储器模组106中。之后,当存储器管理电路202从存储器模组106中读取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路256会依据此错误检查与校正码对所读取的数据执行错误校正程序。
存储器模组106包括第一存储器单元302与第二存储器单元312。具体来说,第一存储器单元302是经由晶片致能接脚(Chip EnablePin)352、第一控制总线(Control Bus)354与第一数据输入/输出总线(DataInput/Output Bus)356电性连接至存储器接口206。此外,第二存储器单元312是经由晶片致能接脚352、第二控制总线364与第二数据输入/输出总线366电性连接至存储器接口206。在本实施例中,控制总线可包括RE(read enable)接脚、WE(write enable)接脚、CLE(command latchenable)接脚、ALE(address latch enable)接脚、WP(write protect)接脚与R/B(ready/busy output)脚位。此外,必须了解的是,在本实施例中,存储器模组106包含2个存储器单元,但本发明不限于此。在本发明另一实施例中,存储器模组106的存储器单元的数目可以是任意适当数目。其中,值得说明的是在本发明的实施例中存储器单元可为一存储器晶片,而各存储器晶片可具有至少一个存储器裸晶。
第一存储器单元302与第二存储器单元312分别地具有多个实体区块。各实体区块分别具有复数个页面,其中对应于同一实体区块的页面可独立写入且同时抹除。更详细来说,实体区块为抹除的最小单位。亦即,每一实体区块含有最小数目之一并被抹除的记忆胞。每一实体区块具有数个实体页面,并且实体页面为程序化的最小单元。换言之,实体页面为写入数据或读取数据的最小单元。每一实体页面通常包括使用者数据区与冗余区。使用者数据区用以存储使用者的数据,而冗余区用以存储***的数据(例如,错误检查与校正码)。
图4与图5是本发明第一实施例所示的管理存储器模组的示意图。
必须了解的是,在此描述存储器模组106的实体区块的运作时,以“提取”、“交换”、“分组”、“轮替”等词来操作实体区块是逻辑上的概念。也就是说,存储器模组106的实体区块的实际位置并未更动,而是逻辑上对存储器模组106的实体区块进行操作。
请参照图4,存储器管理电路202会将第一存储器单元302的实体区块304(0)~304(R)与第二存储器单元312的实体区块314(0)~314(R)逻辑地分组为数据区402、备用区404、***区406与取代区408。
数据区402与备用区404的实体区块是用以存储来自于主机***1000的数据。具体来说,数据区402是已存储数据的实体区块,而备用区404的实体区块是用以替换数据区402的实体区块。因此,备用区404的实体区块为空或可使用的实体区块,即无记录数据或标记为已没用的无效数据。也就是说,在备用区中的实体区块已被执行抹除运作,或者当备用区中的实体区块被提取用于存储数据之前所提取的实体区块会被执行抹除运作。因此,备用区的实体区块为可被使用的实体区块。值得一提的是,在本实施例中,存储器管理电路202是依据数据输入/输出总线来管理实体区块。因此,在备用区404中属于第一存储器单元302的实体区块是仅用以替换在数据区402中属于属于第一存储器单元302的实体区块,并且在备用区404中属于第二存储器单元312的实体区块是仅用以替换在数据区402中属于属于第二存储器单元312的实体区块。在另一实施例中,在备用区404中的实体区块可任意供第一存储器单元302及第二存储器单元312共用。
逻辑上属于***区406的实体区块用以记录***数据,其中此***数据包括关于存储器单元的制造商与型号、存储器单元的实体区块数、每一实体区块的实体页面数等。
逻辑上属于取代区408中的实体区块是替代实体区块。例如,存储器模组106或存储器单元于出厂时会预留4%的实体区块作为更换使用。也就是说,当数据区402、备用区404与***区406中的实体区块损毁时,预留于取代区408中的实体区块是用以取代损坏的实体区块(即,坏实体区块(bad block))。因此,倘若取代区408中仍存有正常的实体区块且发生实体区块损毁时,存储器管理电路202会从取代区408中提取正常的实体区块来更换损毁的实体区块。倘若取代区408中无正常的实体区块且发生实体区块损毁时,则存储器管理电路202会将存储器存储装置100宣告为写入保护(write protect)状态,而无法再写入数据。
特别是,数据区402、备用区404、***区406与取代区408的实体区块的数量会依据不同的存储器规格而有所不同。此外,必须了解的是,在存储器存储装置100的运作中,实体区块关联至数据区402、备用区404、***区406与取代区408的分组关系会动态地变动。例如,当备用区404中的实体区块损坏时而被取代区408的实体区块取代时,则原本取代区408的实体区块会被关联至备用区404。
请参照图5,如上所述,数据区402与备用区404的实体区块是以轮替方式来存储主机***1000所写入的数据。在本实施例中,存储器管理电路202配置逻辑存取地址给主机***1000以利于在以上述轮替方式来存储数据的实体区块中进行数据存取。特别是,存储器管理电路202会将所提供的逻辑位存取址分组为逻辑单元510(0)~510(H),并且将每一逻辑单元区分为对应第一数据输入/输出总线356的第一逻辑部与对应第二数据输入/输出总线366的第二逻辑部。也就是说,逻辑单元的逻辑地址会依输入/输出总线的顺序排列。例如,在每一逻辑单元是由8个逻辑存取地址所组成(即,逻辑单元510(0)是由逻辑存取地址0~7所组成,逻辑单元510(1)是由逻辑地址8~15所组成,且以此类推)的例子中,在逻辑单元510(0)中对应第一数据输入/输出总线356的第一逻辑部为逻辑存取地址0~3,在逻辑单元510(0)中对应第二数据输入/输出总线366的第二逻辑部为为逻辑存取地址4~7,在逻辑单元510(1)中对应第一数据输入/输出总线356的第一逻辑部为逻辑存取地址8~11,在逻辑单元510(1)中对应第二数据输入/输出总线366的第二逻辑部为逻辑存取地址12~15,且以此类推。
此外,存储器管理电路202会将逻辑单元的第一逻辑部映射至数据区402中属于第一存储器单元302的实体区块,并且将逻辑单元的第二逻辑部映射至数据区402中属于第二存储器单元312的实体区块。例如,当存储器存储装置100被初始化(例如,格式化)时,逻辑单元510(0)~510(H)的第一逻辑部与第二逻辑部会被分别地映射至数据区402的实体区块。也就是说,一个逻辑单元会映射第一存储器单元302的一个实体区块与第二存储器单元的一个实体区块。在此,存储器管理电路202会为第一数据输入/输出总线356建立第一逻辑部-实体区块映射表(logical part-physical block mapping table)602(如图6所示),并且为第二数据输入/输出总线366建立第二逻辑部-实体区块映射表612(如图7所示),以记录逻辑单元与实体区块之间的映射关系。在此,第一逻辑部-实体区块映射表亦称为第一映射表,且第二逻辑部-实体区块映射表亦称为第二映射表。
图8~图10是本发明第一实施例所示的写入数据至存储器模组的实施例。
请同时参照图8~图10,例如,倘若在图6与图7所示的映射状态下,当存储器控制器104从主机***1000中接收到写入指令而欲写入数据至属于逻辑单元510(0)的第一逻辑部的逻辑存取地址时,存储器管理电路202会依据第一逻辑部-实体区块映射表602识别逻辑单元510(0)的第一逻辑部目前是映射至实体区块304(0)并且从备用区404中提取属于第一存储器单元302的实体区块304(D+1)作为替换实体区块来轮替实体区块304(0)。但是,当存储器管理电路202将新数据写入至实体区块304(D+1)的同时,存储器管理电路202不会立刻将实体区块304(0)中的所有有效数据搬移至实体区块304(D+1)而抹除实体区块304(0)。具体来说,存储器管理电路202会将实体区块304(0)中欲写入实体页面之前的有效数据(即,第0实体页面与第1实体页面)复制至实体区块304(D+1)(如图8所示),并且将新数据写入至实体区块304(D+1)的第2实体页面与第3实体页面(如图9所示)。此时,存储器管理电路202即完成写入的运作。因为实体区块304(0)中的有效数据有可能在下个操作(例如,写入指令)中变成无效,因此立刻将实体区块304(0)中的所有有效数据搬移至实体区块304(D+1)可能会造成无谓的搬移。此外,数据必须依序地写入至实体区块内的实体页面,因此存储器管理电路202仅会先搬移欲写入实体页面之前的有效数据。
在本实施例中,暂时地维持此等母子暂态关系(即,实体区块304(0)与实体区块304(D+1))的运作称为开启(open)母子区块,并且原实体区块称为母实体区块而替换实体区块称为子实体区块。
之后,当需要将实体区块304(0)与实体区块304(D+1)的内容真正合并时,存储器管理电路202才会将实体区块304(0)与实体区块304(D+1)的数据整并至一个实体区块,由此提升实体区块的使用效率。在此,合并母子区块的运作称为关闭(close)母子区块。例如,如图10所示,当进行关闭母子区块时,存储器管理电路202会将实体区块304(0)中剩余的有效数据(即,第4实体页面~第K实体页面)复制至替换实体区块304(D+1),但是后将实体区块304(0)抹除并关联至备用区404,同时,将实体区块304(D+1)关联至数据区402。也就是说,存储器管理电路202会在第一逻辑部-实体区块映射表602中将逻辑单元510(0)重新映射至实体区块304(D+1)(如图11A所示)。此外,在本实施例中,存储器管理电路202会建立备用区实体区块表(未画出)来记录目前被关联至备用区的实体区块。值得一提的是,在开启母子区块时存储器管理电路202需使用更多缓冲存储器252的存储空间来存储管理变数,以记录更详细的存储状态。例如,这些管理变数会记录属于逻辑单元510(0)的第一逻辑部的有效数据被分散地存储在实体区块304(0)与实体区块304(D+1)的哪些实体页面中(如图9所示)。基此,在存储器存储装置100运作期间,母子区块的组数是有限的。因此,当存储器存储装置100接收到来自于主机***1000的写入指令时,倘若已开启母子区块的组数达到上限时,存储器管理电路202需关闭至少一组目前已开启的母子区块(即,执行关闭母子区块运作)以执行此写入指令。
在图8~图10所示的运作中,存储器管理电路202仅需作动第一数据输入/输出总线356来传输数据,并完成属于第一存储器单元302的实体区块的写入与有效数据复制。具体来说,在本实施例中,存储器接口206是经由同一个晶片致能接脚352电性连接至第一存储器单元302与第二存储器单元312。当存储器管理电路202欲对第一存储器单元302下达写入指令而经由晶片致能接脚352下达晶片致能指令以致能第一存储器单元302时,第二存储器单元312会同时被致能。此时,存储器管理电路202会仅经由第一控制总线354下达写入指令并经由第一数据输入/输出总线356来传输数据。由于第二控制总线364与第二数据输入/输出总线366不会被作动,因此虽然第二存储器单元312已被同时致能但不会进行任何运作。
类似地,在图11A与图7所示的映射状态下,当存储器控制器104从主机***1000中接收到写入指令而欲写入数据至属于逻辑单元510(1)的第二逻辑部的逻辑存取地址时,存储器管理电路202会依据第二逻辑部-实体区块映射表612识别逻辑单元510(1)的第二逻辑部目前是映射至实体区块314(1)并且从备用区404中提取属于第二存储器单元312的实体区块314(D+1)作为替换实体区块来轮替实体区块314(1)。并且,在执行关闭母子区块运作之后,存储器管理电路202会在第二逻辑部-实体区块映射表612中将逻辑单元510(1)重新映射至314(D+1)(如图11B所示)。并且,在执行此写入指令的过程中,存储器管理电路202仅需作动第二数据输入/输出总线366来传输数据,并完成属于第二存储器单元312的实体区块的写入与有效数据复制。同样的,在此过程中,存储器管理电路202会经由晶片致能接脚352下达晶片致能指令以致能第二存储器单元312,同时第一存储器单元302亦会同时被致能。此时,存储器管理电路202会仅经由第二控制总线364下达写入指令并经由第二数据输入/输出总线366来传输数据。由于第一控制总线354与第一数据输入/输出总线356不会被作动,因此虽然第一存储器单元302已被同时致能但不会进行任何运作。
特别是,所有逻辑单元-实体区块映射表会被存储在存储器模组106(例如,属于***区的实体区块)中,并且当需存取存储器单元时,对应的逻辑单元-实体区块映射表才会被载入至缓冲存储器252中以利读取与更新。
虽然存储器管理电路202是依据不同的数据输入/输出总线来独立地管理存储器单元。但是,多个数据输入/输出总线亦可同时运作,以提升存储器存储装置100的效能。
例如,当存储器控制器104从主机***1000中接收到写入指令而欲写入数据至属于逻辑单元510(0)的第一逻辑部的逻辑存取地址时,存储器管理电路202会判断是否先需在第一存储器单元302的实体区块中执行有效数据复制(例如,上述关闭母子区块运作)。特别是,当存储器管理电路202判断先需在第一存储器单元302的实体区块中执行有效数据复制时,存储器管理电路202会还判断在第二存储器单元312的实体区块中是否需要执行有效数据复制。倘若在第二存储器单元312的实体区块中需要执行有效数据复制,存储器管理电路202会执行同步运作,以在第一存储器单元302与第二存储器单元312中执行有效数据复制。
具体来说,在此同步运作中,首先,存储器管理电路202会经由晶片致能接脚352同时致能第一存储器单元302与第二存储器单元312。接着,存储器管理电路202会经由第一控制总线354下达第一控制指令给第一存储器单元302,同时经由第二控制总线364下达第二控制指令给第二存储器单元312。之后,有效数据复制会以同步方式在第一存储器单元302与第二存储器单元312中被执行。例如,在执行有效数据复制时,分别属于第一存储器单元302与第二存储器单元312的有效数据可分别地经由第一数据输入/输出总线356与第二数据输入/输出总线366传输至缓冲存储器252,并且之后再被写入至对应的实体页面。
图12是本发明第一实施例所示的存储器管理与写入方法的流程图。
请参照图12,当从主机***1000接收到写入指令与对应此写入指令的数据时,在步骤S1201中存储器管理电路202会依据此写入指令所包含的逻辑存取地址识别对应的逻辑单元与逻辑部。并且,在步骤S1203中存储器管理电路202依据所识别的逻辑单元与逻辑部来载入对应的逻辑单元-实体区块映射表与相关管理变数以识别对应的存储器单元与数据输入/输出总线。
之后,在步骤S1205中存储器管理电路202会判断是否需先在对应的存储器单元的实体区块之间执行有效数据复制。倘若无需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1207中存储器管理电路202会经由晶片致能接脚(即,晶片致能接脚352)下达晶片致能指令,并且经由对应的控制总线下达控制指令。之后,在步骤S1209中存储器管理电路202仅使用对应的数据输入/输出总线来传输欲写入的数据。
倘若在步骤S1205中判断需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1211中存储器管理电路202会判断在其他存储器单元的实体区块之间是否需被执行有效数据复制。
倘若在其他存储器单元的实体区块之间亦需被执行有效数据复制时,则在步骤S1213中存储器管理电路202会载入对应其他存储器单元的逻辑单元-实体区块映射表及相关管理变数。之后,在步骤S1215中存储器管理电路202会经由晶片致能接脚(即,晶片致能接脚352)下达晶片致能指令。然后,在步骤S1217中存储器管理电路202会分别地经由不同控制总线下达控制指令以在多个存储器单元中同步地执行有效数据复制,并且之后步骤S1207会被执行。
倘若在其他存储器单元的实体区块之间无需被执行有效数据复制时,则在步骤S1219中存储器管理电路202会经由晶片致能接脚(即,晶片致能接脚352)下达晶片致能指令。并且,在步骤S1221中存储器管理电路202会经由对应的控制总线下达控制指令以在对应的存储器单元中执行有效数据复制,并且之后步骤S1207会被执行。
第二实施例
第二实施例的存储器存储装置本质上是相同于第一实施例的存储器存储装置,以下将针对差异部分进行说明。
图13是本发明第二实施例所示的存储器存储装置的概要方块图。
请参照图13,存储器存储装置1300包括连接器102、存储器控制器1304与存储器模组106。
存储器控制器1304会执行以硬件型式或固件型式实作的多个逻辑闸或控制指令,并且根据主机***1000的指令在存储器模组106中进行数据的写入、读取与抹除等运作。特别是,存储器控制器1304用以执行根据本实施例的数据存取机制与存储器管理机制。
存储器控制器1304包括存储器管理电路1302、主机接口204、存储器接口206、缓冲存储器252、电源管理电路254及错误检查与校正电路256。
在本实施例中,存储器模组106的第一存储器单元302是经由第一晶片致能接脚1352、控制总线1354与第一数据输入/输出总线1356电性连接至存储器接口206。此外,存储器模组106的第二存储器单元312是经由第二晶片致能接脚1362、控制总线1354与第二数据输入/输出总线1366电性连接至存储器接口206。
存储器管理电路1302用以控制存储器控制器1304的整体运作。具体来说,存储器管理电路1302具有多个控制指令,并且在存储器存储装置1300运作时,这些控制指令会被执行以根据本实施例的数据存取机制与存储器管理机制来管理存储器模组106。
在本实施例中,存储器管理电路1302亦会执行图4~图10与图11A与11B所示的运作来管理存储器模组106。但是,由于存储器模组106与存储器控制器1304的电性连接方式不同于第一实施例,基此,存储器管理电路1302会以不同的方式下达指令以完成图4~图10及图11A与图11B所示的运作。
例如,在执行图8~图10所示的运作中,存储器管理电路1302亦仅需作动第一数据输入/输出总线1356来传输数据,并完成属于第一存储器单元302的实体区块的写入与有效数据复制。但是,存储器管理电路1302是先经由第一晶片致能接脚1352下达第一晶片致能指令以致能第一存储器单元302。之后,存储器管理电路1302会经由控制总线1354下达控制指令。在此,存储器接口206是经由同一个控制总线1354电性连接至第一存储器单元302与第二存储器单元312,因此所下达的控制指令会被同时传输至第一存储器单元302与第二存储器单元312。然而,由于第二存储器单元312未被致能,因此此控制指令不会对第二存储器单元312产生作用。此时,存储器管理电路1302会仅经由第一数据输入/输出总线1356来传输数据以完成针对第一存储器单元302的实体区块的写入指令。
此外,当上述同步运作被执行时,首先,存储器管理电路1302会经由第一晶片致能接脚1352下达第一晶片致能指令并经由第二晶片致能接脚1362下达第二晶片致能指令。接着,存储器管理电路1302会经由控制总线1354下达相同的控制指令给第一存储器单元302与第二存储器单元312。之后,有效数据复制会以同步方式在第一存储器单元302与第二存储器单元312中被执行。例如,在执行有效数据复制时,分别属于第一存储器单元302与第二存储器单元312的有效数据可分别地经由第一数据输入/输出总线1356与第二数据输入/输出总线1366传输至缓冲存储器252,并且之后再被写入至对应的实体页面。
图14是本发明第二实施例所示的存储器管理与写入方法的流程图。
请参照图14,当从主机***1000接收到写入指令与对应此写入指令的数据时,在步骤S1401中存储器管理电路1302会依据此写入指令所包含的逻辑存取地址识别对应的逻辑单元与逻辑部。并且,在步骤S1403中存储器管理电路1302依据所识别的逻辑单元与逻辑部来载入对应的逻辑单元-实体区块映射表与相关管理变数以识别对应的存储器单元与数据输入/输出总线。
之后,在步骤S1405中存储器管理电路1302会判断是否需先在对应的存储器单元的实体区块之间执行有效数据复制。倘若无需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1407中存储器管理电路1302会经由对应的晶片致能接脚下达晶片致能指令,并且经由控制总线(即,控制总线1354)下达控制指令。之后,在步骤S1409中存储器管理电路1302仅使用对应的数据输入/输出总线来传输欲写入的数据。
倘若在步骤S1405中判断需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1411中存储器管理电路1302会判断在其他存储器单元的实体区块之间是否需被执行有效数据复制。
倘若在其他存储器单元的实体区块之间亦需被执行有效数据复制时,则在步骤S1413中存储器管理电路1302会载入对应其他存储器单元的逻辑单元-实体区块映射表及相关管理变数。之后,则在步骤S1415中存储器管理电路1302会分别地经由不同的晶片致能接脚下达晶片致能指令以致能需被执行有效数据复制的存储器单元。然后,在步骤S1417中存储器管理电路1302会经由控制总线(即,控制总线1354)下达同一个控制指令以在多个存储器单元中同步地执行有效数据复制,并且之后步骤S1407会被执行。
倘若在其他存储器单元的实体区块之间无需被执行有效数据复制时,则在步骤S1419中存储器管理电路1302会经由对应的晶片致能接脚下达晶片致能指令以致能对应此主机指令的存储器单元。并且,在步骤S1421中存储器管理电路1302会经由控制总线(即,控制总线1354)下达控制指令以在对应的存储器单元中执行有效数据复制,并且之后步骤S1407会被执行。
第三实施例
第三实施例的存储器存储装置本质上是相同于第一实施例的存储器存储装置,以下将针对差异部分进行说明。
图15是本发明第三实施例所示的存储器存储装置的概要方块图。
请参照图15,存储器存储装置1500包括连接器102、存储器控制器1504与存储器模组106。
存储器控制器1504会执行以硬件型式或固件型式实作的多个逻辑闸或控制指令,并且根据主机***1000的指令在存储器模组106中进行数据的写入、读取与抹除等运作。特别是,存储器控制器1504用以执行根据本实施例的数据存取机制与存储器管理机制。
存储器控制器1504包括存储器管理电路1502、主机接口204、存储器接口206、缓冲存储器252、电源管理电路254及错误检查与校正电路256。
在本实施例中,存储器模组106的第一存储器单元302是经由晶片致能接脚1552、控制总线1554与第一数据输入/输出总线1556电性连接至存储器接口206。此外,存储器模组106的第二存储器单元312是经由晶片致能接脚1552、控制总线1554与第二数据输入/输出总线1566电性连接至存储器接口206。
存储器管理电路1502用以控制存储器控制器1504的整体运作。具体来说,存储器管理电路1502具有多个控制指令,并且在存储器存储装置1500运作时,这些控制指令会被执行以根据本实施例的数据存取机制与存储器管理机制来管理存储器模组106。
在本实施例中,存储器管理电路1502亦会执行图4~图10及图11A与图11B所示的运作来管理存储器模组106。但是,由于存储器模组106与存储器控制器1504的电性连接方式不同于第一实施例,基此,存储器管理电路1502会以不同的方式下达指令以完成图4~图10及图11A与图11B所示的运作。
例如,在执行图8~图10所示的运作中,存储器管理电路1502亦仅需作动第一数据输入/输出总线1556来传输数据,并完成属于第一存储器单元302的实体区块的写入与有效数据复制。但是,存储器管理电路1502是先经由晶片致能接脚1552下达晶片致能指令以致能第一存储器单元302。此时,此晶片致能指令亦会致能第二存储器单元312。之后,存储器管理电路1502会经由控制总线1554下达控制指令。此时,此控制指令亦会传送至第二存储器单元312。然后,存储器管理电路1502会经由第一数据输入/输出总线1556来传输数据以完成针对第一存储器单元302的实体区块的写入指令,并且经由第二数据输入/输出总线1566传送空数据以对第二存储器单元进行无效写入。在本实施例中,空数据可为一皆为”1”的数据流,或可让存储器管理电路1502认定为无意义的数据样式。
此外,当上述同步运作被执行时,首先,存储器管理电路1502会经由晶片致能接脚1552下达晶片致能指令以同时致能第一存储器单元302与第二存储器单元312。接着,存储器管理电路1502会经由控制总线1554下达同一个控制指令给第一存储器单元302与第二存储器单元312。之后,有效数据复制会以同步方式在第一存储器单元302与第二存储器单元312中被执行。例如,在执行有效数据复制时,分别属于第一存储器单元302与第二存储器单元312的有效数据可分别地经由第一数据输入/输出总线1556与第二数据输入/输出总线1566传输至缓冲存储器252,并且之后再被写入至对应的实体页面。
图16是本发明第三实施例所示的存储器管理与写入方法的流程图。
请参照图16,当从主机***1000接收到写入指令与对应此写入指令的数据时,在步骤S1601中存储器管理电路1502会依据此写入指令所包含的逻辑存取地址识别对应的逻辑单元与逻辑部。并且,在步骤S1603中存储器管理电路1502依据所识别的逻辑单元与逻辑部来载入对应的逻辑单元-实体区块映射表与相关管理变数以识别对应的存储器单元与数据输入/输出总线。
之后,在步骤S1605中存储器管理电路1502会判断是否需先在对应的存储器单元的实体区块之间执行有效数据复制。倘若无需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1607中存储器管理电路1502会经由晶片致能接脚(即,晶片致能脚位1552)下达晶片致能指令,幷且经由控制总线(即,控制总线1554)下达控制指令。之后,在步骤S1609中存储器管理电路1502仅使用对应的数据输入/输出总线来传输欲写入的数据,并且于其他数据输入/输出总线中传送空数据以执行无效写入。
倘若在步骤S1605中判断需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1611中存储器管理电路1502会判断在其他存储器单元的实体区块之间是否需被执行有效数据复制。
倘若在其他存储器单元的实体区块之间亦需被执行有效数据复制时,则在步骤S1613中存储器管理电路1502会载入对应其他存储器单元的逻辑单元-实体区块映射表及相关管理变数。之后,在步骤S1615中存储器管理电路1502会经由晶片致能接脚(即,晶片致能脚位1552)下达晶片致能指令。但是后,在步骤S1617中存储器管理电路1502会经由控制总线(即,控制总线1554)下达控制指令以在多个存储器单元中同步地执行有效数据复制,并且之后步骤S1607会被执行。
倘若在其他存储器单元的实体区块之间无需被执行有效数据复制时,则在步骤S1619中存储器管理电路1502会经由晶片致能接脚(即,晶片致能脚位1552)下达晶片致能指令。并且,在步骤S1621中存储器管理电路1502会经由控制总线(即,控制总线1554)下达控制指令以在对应的存储器单元中执行有效数据复制且在其他存储器单元中进行无效存取,并且之后步骤S1607会被执行。
第四实施例
第四实施例的存储器存储装置本质上是相同于第一实施例的存储器存储装置,以下将针对差异部分进行说明。
图17是本发明第四实施例所示的存储器存储装置的概要方块图。
请参照图17,存储器存储装置1700包括连接器102、存储器控制器1704与存储器模组106。
存储器控制器1704会执行以硬件型式或固件型式实作的多个逻辑闸或控制指令,并且根据主机***1000的指令在存储器模组106中进行数据的写入、读取与抹除等运作。特别是,存储器控制器1704用以执行根据本实施例的数据存取机制与存储器管理机制。
存储器控制器1704包括存储器管理电路1702、主机接口204、存储器接口206、缓冲存储器252、电源管理电路254及错误检查与校正电路256。
在本实施例中,存储器模组106的第一存储器单元302是经由第一晶片致能接脚1752、第一控制总线1754与第一数据输入/输出总线1756电性连接至存储器接口206。此外,存储器模组106的第二存储器单元312是经由第二晶片致能接脚1762、第二控制总线1764与第二数据输入/输出总线1766电性连接至存储器接口206。
存储器管理电路1702用以控制存储器控制器1704的整体运作。具体来说,存储器管理电路1702具有多个控制指令,并且在存储器存储装置1700运作时,这些控制指令会被执行以根据本实施例的数据存取机制与存储器管理机制来管理存储器模组106。
在本实施例中,存储器管理电路1702亦会执行图4~图10及图11A与图11B所示的运作来管理存储器模组106。但是,由于存储器模组106与存储器控制器1704的电性连接方式不同于第一实施例,基此,存储器管理电路1702会以不同的方式下达指令以完成图4~图10及图11A与图11B所示的运作。
例如,在执行图8~图10所示的运作中,存储器管理电路1702亦仅需作动第一数据输入/输出总线1756来传输数据,并完成属于第一存储器单元302的实体区块的写入与有效数据复制。但是,存储器管理电路1702是先经由第一晶片致能接脚1752下达第一晶片致能指令以致能第一存储器单元302。之后,存储器管理电路1702会经由第一控制总线1754下达控制指令。此时,存储器管理电路1702会仅经由第一数据输入/输出总线1756来传输数据以完成针对第一存储器单元302的实体区块的写入指令。
此外,当上述同步运作被执行时,首先,存储器管理电路1702会经由第一晶片致能接脚1752下达第一晶片致能指令并经由第二晶片致能接脚1762下达第二晶片致能指令。接着,存储器管理电路1702会经由第一控制总线1754下达控制指令给第一存储器单元302并且经由第二控制总线1764与第二存储器单元312。之后,有效数据复制会以同步方式在第一存储器单元302与第二存储器单元312中被执行。例如,在执行有效数据复制时,分别属于第一存储器单元302与第二存储器单元312的有效数据可分别地经由第一数据输入/输出总线1756与第二数据输入/输出总线1766传输至缓冲存储器252,并且之后再被写入至对应的实体页面。
图18是本发明第四实施例所示的存储器管理与写入方法的流程图。
请参照图18,当从主机***1000接收到写入指令与对应此写入指令的数据时,在步骤S1801中存储器管理电路1702会依据此写入指令所包含的逻辑存取地址识别对应的逻辑单元与逻辑部。并且,在步骤S1803中存储器管理电路1702依据所识别的逻辑单元与逻辑部来载入对应的逻辑单元-实体区块映射表与相关管理变数以识别对应的存储器单元与数据输入/输出总线。
之后,在步骤S1805中存储器管理电路1702会判断是否需先在对应的存储器单元的实体区块之间执行有效数据复制。倘若无需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1807中存储器管理电路1702会经由对应的晶片致能接脚下达晶片致能指令,并且经由对应的控制总线下达控制指令。之后,在步骤S1809中存储器管理电路1702仅使用对应的数据输入/输出总线来传输欲写入的数据。
倘若在步骤S1805中判断需先在对应的存储器单元的实体区块之间执行有效数据复制时,则在步骤S1811中存储器管理电路1702会判断在其他存储器单元的实体区块之间是否需被执行有效数据复制。
倘若在其他存储器单元的实体区块之间亦需被执行有效数据复制时,则在步骤S1813中存储器管理电路1702会载入对应其他存储器单元的逻辑单元-实体区块映射表及相关管理变数。之后,在步骤S1815中存储器管理电路1702会分别地经由不同的晶片致能接脚下达晶片致能指令以致能需被执行有效数据复制的存储器单元。然后,在步骤S1817中存储器管理电路1702会分别地经由不同的控制总线下达控制指令以在多个存储器单元中同步地执行有效数据复制,并且之后步骤S1807会被执行。
倘若在其他存储器单元的实体区块之间无需被执行有效数据复制时,则在步骤S1819中存储器管理电路1702会经由对应的晶片致能接脚下达晶片致能指令以致能对应此主机指令的存储器单元。并且,在步骤S1821中存储器管理电路1702会经由对应的控制总线下达控制指令以在对应的存储器单元中执行有效数据复制,并且之后步骤S1807会被执行。
综上所述,本发明实施例是根据数据输入/输出总线来管理实体区块幷对应的配置映射表与管理变数。因此,映射至同一个逻辑单元的多个实体区块可独立地运作,由此可缩短执行上述复制有效数据的时间,提升存储装置的效能。此外,实体页面被执行上述复制有效数据的次数会大幅减少,由此延长存储装置的寿命。
虽然本发明已以实施例揭示如上,但是其并非用以限定本发明,任何所属本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视所附的权利要求所界定者为准。
Claims (26)
1.一种存储器管理与写入方法,用于管理一存储器模组,其中所述存储器模组包括一第一存储器单元、用于所述第一存储器单元的一第一输入/输出总线、一第二存储器单元与用于所述第二存储器单元的一第二输入/输出总线,所述第一存储器单元与所述第二存储器单元具有多个实体区块,所述存储器管理与写入方法包括:
配置多个逻辑单元,并且将每一逻辑单元区分为对应所述第一输入/输出总线的一第一逻辑部与对应所述第二输入/输出总线的一第二逻辑部;
将所述多个逻辑单元映射至所述第一存储器单元与所述第二存储器单元的所述多个实体区块的至少一部分,其中每一逻辑单元的所述第一逻辑部映射所述第一存储器单元的所述多个实体区块的其中之一并且每一逻辑单元的所述第二逻辑部映射所述第二存储器单元的所述多个实体区块的其中之一;
建立对应所述第一输入/输出总线的一第一映射表以记录所述多个逻辑单元的所述多个第一逻辑部与所述第一存储器单元的所述多个实体区块之间的一第一映射关系;
建立对应所述第二输入/输出总线的一第二映射表以记录所述多个逻辑单元的所述多个第二逻辑部与所述第二存储器单元的所述多个实体区块之间的一第二映射关系;
接收一写入指令与对应所述写入指令的数据,其中所述数据欲被写入至所述多个逻辑单元的所述多个第一逻辑部的其中之一;以及
依据对应所述第一输入/输出总线的所述第一映射表仅使用所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中;
判断是否需在所述第一存储器单元的所述多个实体区块之间复制数据;
倘若需在所述第一存储器单元的所述多个实体区块之间复制数据时,则判断是否需在所述第二存储器单元的所述多个实体区块之间复制数据;以及
倘若需在所述第二存储器单元的所述多个实体区块之间复制数据时,则依据所述第一映射表在所述第一存储器单元的所述多个实体区块之间复制数据同时依据所述第二映射表在所述第二存储器单元的所述多个实体区块之间复制数据。
2.根据权利要求1所述的存储器管理与写入方法,其中依据对应所述第一输入/输出总线的所述第一映射表仅使用所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中的步骤包括:
下达一个晶片致能指令,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元;
下达一第一控制指令给所述第一存储器单元;以及
依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中。
3.根据权利要求1所述的存储器管理与写入方法,其中依据所述第一映射表在所述第一存储器单元的所述多个实体区块之间复制数据同时依据所述第二映射表在所述第二存储器单元的所述多个实体区块之间复制数据的步骤包括:
下达一个晶片致能指令,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元;
依据所述第一映射表下达一第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据;以及
依据所述第二映射表下达一第二控制指令给所述第二存储器单元以在所述第二存储器单元的所述多个实体区块之间复制数据。
4.根据权利要求3所述的存储器管理与写入方法,还包括:
倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述晶片致能指令,并且依据所述第一映射表下达所述第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据。
5.根据权利要求1所述的存储器管理与写入方法,其中依据对应所述第一输入/输出总线的所述第一映射表仅使用所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中的步骤包括:
下达一第一晶片致能指令给所述第一存储器单元;
下达一个控制指令,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元;以及
依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中。
6.根据权利要求1所述的存储器管理与写入方法,其中依据所述第一映射表在所述第一存储器单元的所述多个实体区块之间复制数据同时依据所述第二映射表在所述第二存储器单元的所述多个实体区块之间复制数据的步骤包括:
下达一第一晶片致能指令给所述第一存储器单元;下达一第二晶片致能指令给所述第二存储器单元;以及依据所述第一映射表与所述第二映射表下达一个控制指令以在所述第一存储器单元的所述多个实体区块之间及所述第二存储器单元的所述多个实体区块之间复制数据,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元。
7.根据权利要求6所述的存储器管理与写入方法,还包括:
倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述第一晶片致能指令给所述第一存储器单元,并且依据所述第一映射表下达所述控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据。
8.根据权利要求1所述的存储器管理与写入方法,其中依据对应所述第一输入/输出总线的所述第一映射表仅使用所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中的步骤包括:
下达一个晶片致能指令,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元;
下达一个控制指令,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元;以及
依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中,并且传送一空数据给所述第二存储器单元以执行一无效写入。
9.根据权利要求1所述的存储器管理与写入方法,其中依据所述第一映射表在所述第一存储器单元的所述多个实体区块之间复制数据同时依据所述第二映射表在所述第二存储器单元的所述多个实体区块之间复制数据的步骤包括:
下达一个晶片致能指令,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元;以及
依据所述第一映射表与所述第二映射表下达一个控制指令以在所述第一存储器单元的所述多个实体区块之间及所述第二存储器单元的所述多个实体区块之间复制数据,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元。
10.根据权利要求9所述的存储器管理与写入方法,还包括:
倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述晶片致能指令,并且依据所述第一映射表下达所述控制指令以在所述第一存储器单元的所述多个实体区块之间复制数据且在所述第二存储器单元中执行一无效存取。
11.根据权利要求1所述的存储器管理与写入方法,其中依据对应所述第一输入/输出总线的所述第一映射表仅使用所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中的步骤包括:
下达一第一晶片致能指令给所述第一存储器单元;
下达一第一控制指令给所述第一存储器单元;以及
依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中。
12.根据权利要求1所述的存储器管理与写入方法,其中依据所述第一映射表在所述第一存储器单元的所述多个实体区块之间复制数据同时依据所述第二映射表在所述第二存储器单元的所述多个实体区块之间复制数据的步骤包括:
下达一第一晶片致能指令给所述第一存储器单元;
下达一第二晶片致能指令给所述第二存储器单元;
依据所述第一映射表下达一第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据;以及依据所述第二映射表下达一第二控制指令给所述第二存储器单元以在所述第二存储器单元的所述多个实体区块之间复制数据。
13.根据权利要求12所述的存储器管理与写入方法,还包括:
倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述第一晶片致能指令给所述第一存储器单元,并且依据所述第一映射表下达所述第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据。
14.一种存储器管理与写入***,用于管理一存储器模组,其中所述存储器模组包括一第一存储器单元、用于所述第一存储器单元的一第一输入/输出总线、一第二存储器单元与用于所述第二存储器单元的一第二输入/输出总线,所述第一存储器单元与所述第二存储器单元具有多个实体区块,所述存储器管理与写入***包括:
一第一模块,用以配置多个逻辑单元,并且将每一逻辑单元区分为对应所述第一输入/输出总线的一第一逻辑部与对应所述第二输入/输出总线的一第二逻辑部;
一第二模块,用以将所述多个逻辑单元映射至所述第一存储器单元与所述第二存储器单元的所述多个实体区块的至少一部分,其中每一逻辑单元的所述第一逻辑部映射所述第一存储器单元的所述多个实体区块的其中之一并且每一逻辑单元的所述第二逻辑部映射所述第二存储器单元的所述多个实体区块的其中之一;
一第三模块,用以建立对应所述第一输入/输出总线的一第一映射表以记录所述多个逻辑单元的所述多个第一逻辑部与所述第一存储器单元的所述多个实体区块之间的一第一映射关系;
一第四模块,用以建立对应所述第二输入/输出总线的一第二映射表以记录所述多个逻辑单元的所述多个第二逻辑部与所述第二存储器单元的所述多个实体区块之间的一第二映射关系;
一第五模块,用以接收一写入指令与对应所述写入指令的数据,其中所述数据欲被写入至所述多个逻辑单元的所述多个第一逻辑部的其中之一;
一第六模块,用以依据对应所述第一输入/输出总线的所述第一映射表仅使用所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中;
一第七模块,用以判断是否需在所述第一存储器单元的所述多个实体区块之间复制数据;
一第八模块,用以倘若需在所述第一存储器单元的所述多个实体区块之间复制数据时,则判断是否需在所述第二存储器单元的所述多个实体区块之间复制数据;以及
一第九模块,用以倘若需在所述第二存储器单元的所述多个实体区块之间复制数据时,则依据所述第一映射表在所述第一存储器单元的所述多个实体区块之间复制数据同时依据所述第二映射表在所述第二存储器单元的所述多个实体区块之间复制数据。
15.根据权利要求14所述的存储器管理与写入***,
其中所述第六模块下达一个晶片致能指令,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元,
其中所述第六模块下达一第一控制指令给所述第一存储器单元以及依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中。
16.根据权利要求14所述的存储器管理与写入***,
其中所述第九模块下达一个晶片致能指令,依据所述第一映射表下达一第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据以及依据所述第二映射表下达一第二控制指令给所述第二存储器单元以在所述第二存储器单元的所述多个实体区块之间复制数据,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元。
17.根据权利要求16所述的存储器管理与写入***,还包括:
一第十模块,用以倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述晶片致能指令,并且依据所述第一映射表下达所述第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据。
18.根据权利要求14所述的存储器管理与写入***,
其中所述第六模块下达一第一晶片致能指令给所述第一存储器单元并且下达一个控制指令,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元,
其中所述第六模块依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中。
19.根据权利要求14所述的存储器管理与写入***,
其中所述第九模块下达一第一晶片致能指令给所述第一存储器单元,下达一第二晶片致能指令给所述第二存储器单元,以及依据所述第一映射表与所述第二映射表下达一个控制指令以在所述第一存储器单元的所述多个实体区块之间及所述第二存储器单元的所述多个实体区块之间复制数据,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元。
20.根据权利要求19所述的存储器管理与写入***,还包括:
一第十一模块,用以倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述第一晶片致能指令给所述第一存储器单元,并且依据所述第一映射表下达所述控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据。
21.根据权利要求14所述的存储器管理与写入***,
其中所述第六模块下达一个晶片致能指令,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元,
其中所述第六模块下达一个控制指令,其中所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元,
其中所述第六模块依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中,并且传送一空数据给所述第二存储器单元以执行一无效写入。
22.根据权利要求14所述的存储器管理与写入***,
其中所述第九模块下达一个晶片致能指令,以及依据所述第一映射表与所述第二映射表下达一个控制指令以在所述第一存储器单元的所述多个实体区块之间及所述第二存储器单元的所述多个实体区块之间复制数据,其中所述晶片致能指令同时致能所述第一存储器单元与所述第二存储器单元并且所述控制指令被同时传送给所述第一存储器单元与所述第二存储器单元。
23.根据权利要求22所述的存储器管理与写入***,还包括:
一第十二模块,用以倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述晶片致能指令,并且依据所述第一映射表下达所述控制指令以在所述第一存储器单元的所述多个实体区块之间复制数据且在所述第二存储器单元中执行一无效存取。
24.根据权利要求14所述的存储器管理与写入***,
其中所述第六模块下达一第一晶片致能指令给所述第一存储器单元,下达一第一控制指令给所述第一存储器单元,并且依据对应所述第一输入/输出总线的所述第一映射表经由所述第一输入/输出总线以将对应所述写入指令的数据写入至所述第一存储器单元中。
25.根据权利要求14所述的存储器管理与写入***,
其中所述第九模块下达一第一晶片致能指令给所述第一存储器单元,下达一第二晶片致能指令给所述第二存储器单元,依据所述第一映射表下达一第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据,以及依据所述第二映射表下达一第二控制指令给所述第二存储器单元以在所述第二存储器单元的所述多个实体区块之间复制数据。
26.根据权利要求25所述的存储器管理与写入***,还包括:
一第十三模块,用以倘若无需在所述第二存储器单元的所述多个实体区块之间复制数据时,则下达所述第一晶片致能指令给所述第一存储器单元,并且依据所述第一映射表下达所述第一控制指令给所述第一存储器单元以在所述第一存储器单元的所述多个实体区块之间复制数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010129216.XA CN102193870B (zh) | 2010-03-09 | 2010-03-09 | 存储器管理与写入方法、存储器控制器与存储器存储*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010129216.XA CN102193870B (zh) | 2010-03-09 | 2010-03-09 | 存储器管理与写入方法、存储器控制器与存储器存储*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102193870A CN102193870A (zh) | 2011-09-21 |
CN102193870B true CN102193870B (zh) | 2014-06-25 |
Family
ID=44601965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010129216.XA Active CN102193870B (zh) | 2010-03-09 | 2010-03-09 | 存储器管理与写入方法、存储器控制器与存储器存储*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102193870B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104809082B (zh) * | 2014-01-29 | 2018-02-02 | 群联电子股份有限公司 | 数据保护方法、存储器存储装置及存储器控制电路单元 |
CN105005450B (zh) * | 2014-04-25 | 2018-11-02 | 群联电子股份有限公司 | 数据写入方法、存储器存储装置及存储器控制电路单元 |
CN107844259B (zh) | 2016-09-18 | 2020-06-16 | 华为技术有限公司 | 数据访问方法、路由装置和存储*** |
CN110888820B (zh) * | 2018-09-07 | 2022-01-25 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1348191A (zh) * | 2000-10-11 | 2002-05-08 | 三星电子株式会社 | 闪速存储器中驱动再映射的方法及其闪速存储器体系结构 |
CN101556555A (zh) * | 2008-04-08 | 2009-10-14 | 群联电子股份有限公司 | 用于闪存的区块管理方法、其控制器与储存*** |
CN101593156A (zh) * | 2008-05-28 | 2009-12-02 | 群联电子股份有限公司 | 多种存储器的管理方法、***及控制器 |
CN101661432A (zh) * | 2008-08-26 | 2010-03-03 | 群联电子股份有限公司 | 闪存区块管理方法、闪存储存***及控制器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWM332248U (en) * | 2007-11-16 | 2008-05-11 | Carry Technology Co Ltd | Display apparatus for phonic recording and playing electronically digital picture |
-
2010
- 2010-03-09 CN CN201010129216.XA patent/CN102193870B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1348191A (zh) * | 2000-10-11 | 2002-05-08 | 三星电子株式会社 | 闪速存储器中驱动再映射的方法及其闪速存储器体系结构 |
CN101556555A (zh) * | 2008-04-08 | 2009-10-14 | 群联电子股份有限公司 | 用于闪存的区块管理方法、其控制器与储存*** |
CN101593156A (zh) * | 2008-05-28 | 2009-12-02 | 群联电子股份有限公司 | 多种存储器的管理方法、***及控制器 |
CN101661432A (zh) * | 2008-08-26 | 2010-03-03 | 群联电子股份有限公司 | 闪存区块管理方法、闪存储存***及控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN102193870A (zh) | 2011-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103514096B (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN102890655B (zh) | 存储器储存装置、其存储器控制器与有效数据识别方法 | |
TWI421870B (zh) | 用於快閃記憶體的資料寫入方法及其控制器與儲存系統 | |
CN103377129A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102902626B (zh) | 区块管理方法、存储器控制器与存储器储存装置 | |
CN102592670B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102193869A (zh) | 存储器管理与写入方法及其存储器控制器与储存*** | |
CN103593296A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN102968385B (zh) | 数据写入方法、存储器控制器与储存装置 | |
CN102446137B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102193870B (zh) | 存储器管理与写入方法、存储器控制器与存储器存储*** | |
CN102866861B (zh) | 闪存储存***、闪存控制器与数据写入方法 | |
CN102567221B (zh) | 数据管理方法、存储器控制器与存储器储存装置 | |
CN102200946B (zh) | 资料存取方法、记忆体控制器与储存*** | |
CN103678162A (zh) | ***数据储存方法、存储器控制器与存储器储存装置 | |
TWI440044B (zh) | 記憶體管理與寫入方法、記憶體控制器與記憶體儲存系統 | |
CN103513930A (zh) | 存储器管理方法、存储器控制器与存储器储存装置 | |
CN102999437A (zh) | 数据搬移方法、存储器控制器与存储器储存装置 | |
CN102890653A (zh) | 指令执行方法、存储器控制器与存储器储存装置 | |
CN102053920B (zh) | 数据写入方法及闪存控制器与闪存存储*** | |
CN103984635A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN104731710A (zh) | 存储器管理方法、存储器控制电路单元与存储器储存装置 | |
CN104238956A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
CN102543183B (zh) | 数据写入方法、存储器控制器与储存装置 | |
CN102467459B (zh) | 数据写入方法、存储器控制器与存储器储存装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |