CN106874223A - 数据传输方法、存储器存储装置及存储器控制电路单元 - Google Patents
数据传输方法、存储器存储装置及存储器控制电路单元 Download PDFInfo
- Publication number
- CN106874223A CN106874223A CN201710059469.6A CN201710059469A CN106874223A CN 106874223 A CN106874223 A CN 106874223A CN 201710059469 A CN201710059469 A CN 201710059469A CN 106874223 A CN106874223 A CN 106874223A
- Authority
- CN
- China
- Prior art keywords
- instruction
- data
- array
- data volume
- submission
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据传输方法、存储器存储装置及存储器控制电路单元。所述方法用于所述存储器存储装置与主机系统之间的数据传输操作,其中所述主机系统记录多个提交阵列,且所述方法包括:从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件;当所述第一数据量符合所述第一预定条件时,从主机系统获得第二提交阵列中的至少一第二指令;以及对所述存储器存储装置中的可复写式非易失性存储器模块依序地执行对应至少一第一指令与至少一第二指令的数据存取操作。本发明能够满足对应不同操作的指令被执行的即时性,进而提升使用者的操作体验。
Description
技术领域
本发明涉及一种数据传输机制,且特别涉及一种数据传输方法、存储器存储装置及存储器控制电路单元。
背景技术
数码相机、移动电话与MP3播放器在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(例如,快闪存储器)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内建于上述所举例的各种可携式多媒体装置中。
为了配合可复写式非挥发性存储器的存储器存储装置(如,固态硬盘)的较高的写入/读取速度,许多数据传输接口(例如,高速周边零件连接接口,PCIe接口)也开始支援更高阶的数据传输协定,例如,快速非挥发性存储器(Non-Volatile Memory express,NVMe)接口标准,以发挥高速的可复写式非挥发性存储器存储装置的工作效率。
在快速非挥发性存储器接口标准下,存储器存储装置的存储器管理电路会主动地从主机系统依序地读取主机系统所记录的每一个提交阵列中的指令,并依照所读取的先后顺序将此些指令暂存于存储器存储装置中的指令阵列中。之后,存储器管理电路即可根据指令阵列中的指令对可复写式非易失性存储器模块进行数据存取。然而,若一个提交阵列中记录有对应于使用者所执行的操作的大量指令时,存储器存储装置中的指令阵列的空间将很快地被此提交阵列中的指令用尽。此时,倘若主机系统收到使用者的另一操作,则存储器存储装置中将没有足够的空间存储对应此另一操作的指令,且对应此另一操作的指令必须待已暂存于指令阵列中的大量指令都被处理后才能被执行。
由此可知,现有的数据传输机制并无法满足对应不同操作的指令被执行的即时性。特别是,当上述使用者的另一操作仅需对少量数据进行存取时,使用者仍需经长时间的等待才能得到系统的回应,进而带给使用者不佳的操作体验。
发明内容
本发明提供一种数据传输方法、存储器存储装置与存储器控制电路单元,其能够满足对应不同操作的指令被执行的即时性,进而提升使用者的操作体验。
本发明的一范例实施例提出一种数据传输方法,用于存储器存储装置与主机系统之间的数据传输操作,其中所述主机系统记录多个提交阵列。本数据传输方法包括:从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的一第一数据量是否符合第一预定条件;当所述第一数据量符合所述第一预定条件时,从所述主机系统获得第二提交阵列中的至少一第二指令;以及对所述存储器存储装置中的可复写式非易失性存储器模块依序地执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作。
在本发明的一范例实施例中,所述判断至少一第一指令的第一数据量是否符合第一预定数据量的步骤包括:依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量;以及当所述第一数据量大于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令。
在本发明的一范例实施例中,所述第二提交阵列的至少一第二指令符合第二预定条件,且第二预定条件为至少一第二指令的第二数据量大于或等于第二预定数据量,其中所述第二预定数据量不同于所述第一预定数据量。
在本发明的一范例实施例中,所述判断至少一第一指令的第一数据量是否符合第一预定数据量的步骤包括:依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量;以及当所述第一数据量非大于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从主机系统读取第一提交阵列中的指令,其中第一数据量与第一预定数据量之间的差值小于第一数据量门槛值。
在本发明的一范例实施例中,所述第二提交阵列的至少一第二指令符合第二预定条件,且第二预定条件为至少一第二指令的第二数据量非大于第二预定数据量。其中所述第二数据量与所述第二预定数据量之间的差值小于第二数据量门槛值,其中所述第二预定数据量不同于所述第一预定数据量,且所述第二数据量门槛值不同于所述第一数据量门槛值。
在本发明的一范例实施例中,所述当第一数据量符合第一预定条件时,从主机系统获得第二提交阵列中符合第二预定条件的至少一第二指令的步骤还包括:将符合第一预定条件的至少一第一指令放入指令阵列中;以及将所述至少一第二指令放入所述指令阵列中的所述至少一第一指令之后。
在本发明的一范例实施例中,所述至少一第一指令包括写入指令或读取指令,以及所述至少一第二指令包括写入指令或读取指令。
在本发明的一范例实施例中,所述从主机系统获得第一提交阵列中的至少一第一指令的步骤是反应于来自所述主机系统的一指令通知。所述指令通知指示所述提交阵列中至少一提交阵列存储有至少一指令。
在本发明的一范例实施例中,所述存储器存储装置相容于一快速非挥发性存储器(NVM express)接口标准。
本发明的另一范例实施例提供一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块及存储器控制电路单元。所述连接接口单元用以耦接至主机系统,且所述主机系统记录多个提交阵列。所述存储器控制电路单元耦接至所述连接接口单元与所述可复写式非易失性存储器模块,所述存储器控制电路单元用以从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件。所述存储器控制电路单元还用以当所述第一数据量符合所述第一预定条件时,从所述主机系统获得第二提交阵列中的至少一第二指令。所述存储器控制电路单元还用以发送第一存取指令阵列以指示对所述可复写式非易失性存储器模块依序地执行对应至少一第一指令与所述至少一第二指令的数据存取操作。
在本发明的一范例实施例中,所述判断至少一第一指令的第一数据量是否符合第一预定条件的操作中,所述存储器控制电路单元还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量。所述存储器控制电路单元还用以当所述第一数据量大于或等于第一预定数据量时,判定所述第一数据量符合所述第一预定数据量,并停止从所述主机系统读取所述第一提交阵列中的指令。
在本发明的一范例实施例中,所述第二提交阵列的至少一第二指令符合第二预定条件,且所述第二预定条件为至少一第二指令的第二数据量或等于第二预定数据量,其中所述第二预定数据量不同于所述第一预定数据量。
在本发明的一范例实施例中,所述判断至少一第一指令的第一数据量是否符合第一预定条件的操作中,所述存储器控制电路单元还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量。所述存储器控制电路单元还用以当所述第一数据量非大于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取该第一提交阵列中的指令,其中所述第一数据量与所述第一预定数据量之间的差值小于第一数据量门槛值。
在本发明的一范例实施例中,所述第二提交阵列的至少一第二指令符合第二预定条件,且所述第二预定条件为所述至少一第二指令的第二数据量非大于第二预定数据量,其中所述第二数据量与第二预定数据量之间的差值小于第二数据量门槛值。其中所述第二预定数据量不同于所述第一预定数据量,且所述第二数据量门槛值不同于所述第一数据量门槛值。
在本发明的一范例实施例中,在当第一数据量符合第一预定条件时,从主机系统获得第二提交阵列中的至少一第二指令的操作中,所述存储器控制电路单元还用以将符合所述第一预定条件的所述至少一第一指令放入指令阵列中,以及将所述至少一第二指令放入所述指令阵列中的所述至少一第一指令之后。
在本发明的一范例实施例中,所述至少一第一指令包括写入指令或读取指令,以及所述至少一第二指令包括写入指令或读取指令。
在本发明的一范例实施例中,所述从主机系统获得第一提交阵列中的至少一第一指令的的操作是反应于来自所述主机系统的指令通知。所述指令通知指示所述提交阵列中至少一提交阵列存储有至少一指令。
在本发明的一范例实施例中,所述存储器存储装置相容于一快速非挥发性存储器接口标准。
本发明的另一范例实施例提供一种存储器控制电路单元,其用于控制可复写式非易失性存储器模块,所述存储器控制电路单元包括主机接口、存储器接口及存储器管理电路。所述主机接口用以耦接至主机系统,且所述主机系统记录多个提交阵列。所述存储器接口用以耦接至所述可复写式非易失性存储器模块。所述存储器管理电路耦接至所述主机接口与所述存储器接口,且包括多个监视电路,各个监视电路分别对应至所述提交阵列中的至少一提交阵列。所述存储器管理电路用以从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件。所述存储器管理电路还用以当所述第一数据量符合所述第一预定条件时,从所述主机系统获得第二提交阵列中的至少一第二指令。所述存储器管理电路还用以发送第一存取指令阵列以指示对所述可复写式非易失性存储器模块执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作。
在本发明的一范例实施例中,上述监视电路中的第一监视电路用以记录第一预定数据量,且在判断至少一第一指令的第一数据量是否符合第一预定条件的操作中,所述存储器管理电路还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量。所述存储器管理电路还用以当所述第一数据量大于或等于所述第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令。
在本发明的一范例实施例中,所述监视电路中的第二监视电路用以记录第二预定数据量,且所述第二提交阵列的所述至少一第二指令符合所述第二预定条件,其中第二预定条件为至少一第二指令的第二数据量大于或等于所述第二预定数据量,其中所述第二预定数据量不同于所述第一预定数据量。
在本发明的一范例实施例中,上述监视电路中的第一监视电路用以记录第一预定数据量,且在判断至少一第一指令的第一数据量是否符合第一预定条件的操作中,所述存储器管理电路还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量。所述存储器管理电路还用以当所述第一数据量非大于所述第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令。其中所述第一数据量与所述第一预定数据量之间的差值小于第一数据量门槛值。
在本发明的一范例实施例中,所述监视电路中的第二监视电路用以记录第二预定数据量,且所述第二提交阵列的所述至少一第二指令符合所述第二预定条件。其中第二预定条件为至少一第二指令的第二数据量非大于所述第二预定数据量,且所述第二数据量与所述第二预定数据量之间的差值小于第二数据量门槛值。其中所述第二预定数据量不同于所述第一预定数据量,且所述第二数据量门槛值不同于所述第一数据量门槛值。
在本发明的一范例实施例中,在当第一数据量符合第一预定条件时,从主机系统获得第二提交阵列中的至少一第二指令的操作中,所述存储器管理电路还用以将符合所述第一预定条件的所述至少一第一指令放入指令阵列中,以及将所述至少一第二指令放入所述指令阵列中的所述至少一第一指令之后。
在本发明的一范例实施例中,所述至少一第一指令包括写入指令或读取指令,以及所述至少一第二指令包括写入指令或读取指令。
在本发明的一范例实施例中,所述从主机系统获得第一提交阵列中的至少一第一指令的操作是反应于来自所述主机系统的指令通知。所述指令通知指示所述提交阵列中至少一提交阵列存储有至少一指令。
在本发明的一范例实施例中,所述存储器控制电路单元相容于快速非挥发性存储器接口标准。
基于上述,上述范例实施例是通过存储器管理电路根据对应每一提交阵列的预定数据量来分别地从每一提交阵列中获取符合预定条件的指令,进而依序地将每一提交阵列中具有特定数据量的指令缓存至存储器存储装置。借此,提升对应不同操作的指令被执行的即时性。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所示附图作详细说明如下。
附图说明
图1是根据本发明的一范例实施例所显示的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。
图2是根据本发明的另一范例实施例所显示的主机系统、存储器存储装置及I/O装置的示意图。
图3是根据本发明的另一范例实施例所显示的主机系统与存储器存储装置的示意图。
图4是根据本发明的一范例实施例所显示的存储器存储装置的概要方块图。
图5是根据本发明的一范例实施例所显示的存储器控制电路单元的概要方块图。
图6是根据本发明的一范例实施例所显示的管理可复写式非易失性存储器模块的示意图。
图7是根据本发明的一范例实施例所显示的数据传输操作的示意图。
图8A是根据本发明的一范例实施例所显示的NVM express接口标准所定义的指令获取机制的示意图。
图8B是根据本发明的一范例实施例所显示的NVM express接口标准所定义的另一指令获取机制的示意图。
图9是根据本发明的一范例实施例所显示的指令获取机制与数据传输的示意图。
图10是根据本发明的一范例实施例所显示的从一个提交阵列中获得符合预定条件的指令的流程图。
图11是根据本发明的另一范例实施例所显示的从一个提交阵列中获得符合预定条件的指令的流程图。
图12是根据本发明的一范例实施例所显示的数据传输方法的流程图。
附图标记说明:
10:存储器存储装置
11:主机系统
110:系统总线
111:处理器
112:随机存取存储器
113:只读存储器
114:数据传输接口
12:输入/输出(I/O)装置
20:主机板
201:U盘
202:存储卡
203:固态硬盘
204:无线存储器存储装置
205:全球定位系统模块
206:网络接口卡
207:无线传输装置
208:键盘
209:屏幕
210:喇叭
32:SD卡
33:CF卡
34:嵌入式存储装置
341:嵌入式多媒体卡
342:嵌入式多芯片封装存储装置
402:连接接口单元
404:存储器控制电路单元
406:可复写式非易失性存储器模块
502:存储器管理电路
504:主机接口
506:存储器接口
508:错误检查与校正电路
510:缓冲存储器
512:电源管理电路
601:存储区
602:取代区
610(0)~610(B):实体单元
612(0)~612(C):逻辑单元
711、721:指令阵列
712、722:数据缓存
713、723:完成阵列
S701:步骤(传送指令通知)
S702:步骤(获得指令)
S703:步骤(传送读取数据或获得写入数据)
S704:步骤(传送完成数据)
ASQ:管理员提交阵列
SQ(0)~SQ(N):提交阵列
CQ(0)~CQ(M):待完成指令阵列
S81~S84:循环机制的获取指令操作
S85_1~S85_2、S86_1~S86_2、S87_1~S87_2、S801~S803:权重循环机制的获取指令操作
900(0)~900(N):监视电路
S1001:步骤(依序地读取多笔具有第一数量的第一指令,并累加每一笔具有此第一数量的第一指令的数据量以获得第一数据量)
S1003:步骤(判断第一数据量是否大于或等于第一预定数据量)
S1005:步骤(停止从主机系统读取第一提交阵列中的指令)
S1101:步骤(依序地读取多笔具有第一数量的第一指令,并累加每一笔具有此第一数量的第一指令的数据量以获得第一数据量)
S1103:步骤(判断第一数据量是否非大于第一预定数据量,其中第一数据量与第一预定数据量之间的差值小于第一数据量门槛值)
S1105:步骤(停止从主机系统读取第一提交阵列中的指令)
S1201:步骤(从主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件)
S1203:步骤(当所述第一数据量符合所述第一预定条件时,获得第二提交阵列中的至少一第二指令)
S1205:步骤(对存储器存储装置中的可复写式非易失性存储器模块依序地执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作)
具体实施方式
一般而言,记忆体存储器储存存储装置(亦称,记忆体存储器储存存储系统)包括可复写式非挥发性记忆体模组非易失性存储器模块(rewritable non-volatile memorymodule)与控制器(也称,控制电路)。通常记忆体存储器储存存储装置是与主机系统一起使用,以使主机系统可将资料数据写入至记忆体存储器储存存储装置或从记忆体存储器储存存储装置中读取资料数据。
图1是根据本发明的一范例实施例所显示的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。图2是根据本发明的另一范例实施例所显示的主机系统、存储器存储装置及I/O装置的示意图。
请参照图1与图2,主机系统11一般包括处理器111、随机存取存储器(randomaccess memory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆耦接至系统总线(system bus)110。
在本范例实施例中,主机系统11是透过通过数据传输接口114与存储器存储装置10耦接。例如,主机系统11可经由数据传输接口114将数据存储至存储器存储装置10或从存储器存储装置10中读取数据。此外,主机系统11是透过系统总线110与I/O装置12耦接。例如,主机系统11可经由系统总线110将输出讯号传送至I/O装置12或从I/O装置12接收输入讯号。
在本范例实施例中,处理器111、随机存取存储器112、只读存储器113及数据传输接口114可设置在主机系统11的主机板20上。数据传输接口114的数目可以是一或多个。透过数据传输接口114,主机板20可以经由有线或无线方式耦接至存储器存储装置10。存储器存储装置10可例如是U盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近距离无线通讯(Near FieldCommunication,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通讯技术为基础的存储器存储装置。此外,主机板20也可以透过系统总线110耦接至全球定位系统(Global Positioning System,GPS)模组205、网路网络接口卡206、无线传输装置207、键盘208、萤幕屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可透过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,所提及的主机系统为可实质地与存储器存储装置配合以存储数据的任意系统。虽然在上述范例实施例中,主机系统是以电脑系统来作说明,然而,图3是根据本发明的另一范例实施例所显示的主机系统与存储器存储装置的示意图。请参照图3,在另一范例实施例中,主机系统31也可以是数码相机、摄影机、通讯装置、音频播放器、视频播放器或平板电脑等系统,而存储器存储装置30可为其所使用的安全数位数字(SecureDigital,SD)卡32、小型快闪(Compact Flash,CF)卡33或嵌入式存储装置34等各式非挥发性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embedded Multi MediaCard,eMMC)341和/或嵌入式多晶片芯片芯片封装(embedded Multi Chip Package,eMCP)存储装置342等各类型将存储器模组直接耦接于主机系统的基板上的嵌入式存储装置。
图4是根据本发明的一范例实施例所显示的存储器存储装置的概要方块图。
请参照图4,存储器存储装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。
连接接口单元402用以将存储器存储装置10耦接至主机系统11。在本范例实施例中,连接接口单元402是符合高速周边零件连接接口(Peripheral ComponentInterconnect Express,PCI Express)标准,且相容于快速非挥发性存储器(NVM express)接口标准。具体而言,快速非挥发性存储器接口标准为一种主机系统与存储器装置之间通讯的协议,其定义了存储器存储装置之控制器与主机系统之作业系统之间的暂存器接口、指令集与功能集,并通过对存储器存储装置的接口标准最佳化,来促进以PCIe接口为主的存储器存储装置之数据存取速度与数据传输速率。然而,在另一范例实施例中,连接接口单元402亦可以是符合其他适合的标准。此外,连接接口单元402可与存储器控制电路单元404封装在一个晶片芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元404的芯片外。
存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令并且根据主机系统11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块406是耦接至存储器控制电路单元404并且用以存储主机系统11所写入的数据。可复写式非易失性存储器模块406可以是单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模组(即,一个存储单元中可存储1个位元的快闪存储器模组)、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模组(即,一个存储单元中可存储2个位元的快闪存储器模组)、复数阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模组(即,一个存储单元中可存储3个位元的快闪存储器模组)、其他快闪存储器模组或其他具有相同特性的存储器模组。
可复写式非易失性存储器模块406中的每一个记忆胞存储单元是以电压(以下亦称为临界电压)的改变来存储一或多个位元。具体来说,每一个记忆胞存储单元的控制栅极(control gate)与通道之间有一个电荷捕捉层。透过施予一写入电压至控制栅极,可以改变电荷补捉层的电子量,进而改变记忆胞存储单元的临界电压。此改变记忆胞存储单元之临界电压的操作亦称为“把数据写入至记忆胞存储单元”或“程式化(programming)记忆胞存储单元”。随着临界电压的改变,可复写式非易失性存储器模块406中的每一个记忆胞存储单元具有多个存储状态。透过施予读取电压可以判断一个记忆胞存储单元是属于哪一个存储状态,借此取得此记忆胞存储单元所存储的一或多个位元。
在本范例实施例中,可复写式非易失性存储器模块406的记忆胞存储单元会构成多个实体程式化单元,并且此些实体程式化单元会构成多个实体抹除单元。具体来说,同一条字符线上的记忆胞存储单元会组成一或多个实体程序化单元。若每一个记忆胞存储单元可存储2个以上的二进制位,则同一条字元线上的实体程式化单元至少可被分类为下实体程式化单元与上实体程式化单元。例如,一记忆胞存储单元的最低有效位元(LeastSignificant Bit,LSB)是属于下实体程式化单元,并且一记忆胞存储单元的最高有效位元(Most Significant Bit,MSB)是属于上实体程式化单元。一般来说,在MLC NAND型快闪存储器中,下实体程式化单元的写入速度会大于上实体程式化单元的写入速度,和/或下实体程式化单元的可靠度是高于上实体程式化单元的可靠度。
在本范例实施例中,实体程式化单元为程式化的最小单元。即,实体程式化单元为写入数据的最小单元。例如,实体程式化单元为实体页面(page)或是实体扇(sector)。若实体程式化单元为实体页面,则此些实体程式化单元通常包括数据位元区与冗余(redundancy)位元区。数据位元区包含多个实体扇,用以存储使用者数据,而冗余位元区用以存储系统数据(例如,错误更正码等管理数据)。在本范例实施例中,数据位元区包含32个实体扇,且一个实体扇的大小为512位元组(byte,B)。然而,在其他范例实施例中,数据位元区中也可包含8个、16个或数目更多或更少的实体扇,并且每一个实体扇的大小也可以是更大或更小。另一方面,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目之一并被抹除之的记忆胞存储单元。例如,实体抹除单元为实体区块(block)。
图5是根据本发明的一范例实施例所显示的存储器控制电路单元的概要方块图。
请参照图5,存储器控制电路单元404包括存储器管理电路502、主机接口504及存储器接口506。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。以下说明存储器管理电路502的操作时,等同于说明存储器控制电路单元404的操作。
在本范例实施例中,存储器管理电路502的控制指令是以韧体型式来实作。例如,存储器管理电路502具有微处理器单元(未显示)与只读存储器(未显示),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在另一范例实施例中,存储器管理电路502的控制指令亦可以程序码型式存储于可复写式非易失性存储器模块406的特定区域(例如,存储器模组中专用于存放系统数据的系统区)中。此外,存储器管理电路502具有微处理器单元(未显示)、只读存储器(未显示)及随机存取存储器(未显示)。特别是,此只读存储器具有开机码(boot code),并且当存储器控制电路单元404被致能时,微处理器单元会先执行此开机码来将存储于可复写式非易失性存储器模块406中之控制指令载入至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在另一范例实施例中,存储器管理电路502的控制指令亦可以一硬体型式来实作。例如,存储器管理电路502包括微控制器、记忆胞存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。记忆胞存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是耦接至微控制器。记忆胞存储单元管理电路用以管理可复写式非易失性存储器模块406的记忆胞存储单元或其群组。存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令阵列以将数据写入至可复写式非易失性存储器模块406中。存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令阵列以从可复写式非易失性存储器模块406中读取数据。存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令阵列以将数据从可复写式非易失性存储器模块406中抹除。数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。写入指令阵列、读取指令阵列及抹除指令阵列可各别包括一或多个程式码或指令码并且用以指示可复写式非易失性存储器模块406执行相对应的写入、读取及抹除等操作。在一范例实施例中,存储器管理电路502还可以下达其他类型的指令阵列给可复写式非易失性存储器模块406以指示执行相对应的操作。
主机接口504是耦接至存储器管理电路502并且用以接收与识别主机系统11所传送的指令与数据。也就是说,主机系统11所传送的指令与数据会透过主机接口504来传送至存储器管理电路502。在本范例实施例中,主机接口504是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504亦可也可以是相容于PATA标准、IEEE 1394标准、PCIExpress标准、USB标准、SD标准、UHS-I标准、UHS-II标准、MS标准、MMC标准、eMMC标准、UFS标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是耦接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。具体来说,若存储器管理电路502要存取可复写式非易失性存储器模块406,存储器接口506会传送对应的指令阵列。例如,这些指令阵列可包括指示写入数据的写入指令阵列、指示读取数据的读取指令阵列、指示抹除数据的抹除指令阵列、以及用以指示各种存储器操作(例如,改变读取电压准位或执行垃圾回收操作等等)的相对应的指令阵列。这些指令阵列例如是由存储器管理电路502产生并且透过存储器接口506传送至可复写式非易失性存储器模块406。这些指令阵列可包括一或多个讯号信号,或是在总线上的数据。这些讯号或数据可包括指令码或程式码。例如,在读取指令阵列中,会包括读取的辨识识别码、存储器位址地址等资讯。
在一范例实施例中,存储器控制电路单元404还包括错误检查与校正电路508、缓冲存储器510与电源管理电路512。
错误检查与校正电路508是耦接至存储器管理电路502并且用以执行错误检查与校正操作以确保数据的正确性。具体来说,当存储器管理电路502从主机系统11中接收到写入指令时,错误检查与校正电路508会为对应此写入指令的数据产生对应的错误更正码(error correcting code,ECC)和/或错误检查码(error detecting code,EDC),并且存储器管理电路502会将对应此写入指令的数据与对应的错误更正码和/或错误检查码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误更正码和/或错误检查码,并且错误检查与校正电路508会依据此错误更正码和/或错误检查码对所读取的数据执行错误检查与校正操作。
缓冲存储器510是耦接至存储器管理电路502并且用以暂存来自于主机系统11的数据与指令或来自于可复写式非易失性存储器模块406的数据。电源管理电路512是耦接至存储器管理电路502并且用以控制存储器存储装置10的电源。
图6是根据本发明的一范例实施例所显示的管理可复写式非易失性存储器模块的示意图。须注意的是,在此描述可复写式非易失性存储器模块406的管理时,“选择”与“分组”等词是逻辑上的操作概念。也就是说,可复写式非易失性存储器模块406中各实体元件的实际位置并未更动,而是逻辑上对可复写式非易失性存储器模块406的部分实体元件进行操作。
请参照图6,存储器管理电路502会将可复写式非易失性存储器模块406的实体单元610(0)~610(B)逻辑地分组至存储区601与替换区602。存储区601中的实体单元610(0)~610(A)是用以存储数据,而替换区602中的实体单元610(A+1)~610(B)则是用以替换存储区601中损坏的实体单元。例如,若从某一个实体单元中读取的数据所包含的错误过多而无法被更正时,此实体单元会被视为是损坏的实体单元。须注意的是,若替换区602中没有可用的实体抹除单元,则存储器管理电路502可能会将整个存储器存储装置10宣告为写入保护(write protect)状态,而无法再写入数据。
在本范例实施例中,每一个实体单元是指一个实体抹除单元。然而,在另一范例实施例中,一个实体单元亦可以是指一个实体位址、一个实体程式化单元或由多个连续或不连续的实体位址组成。存储器管理电路502会配置逻辑单元612(0)~612(C)以映射存储区601中的实体单元610(0)~610(A)。在本范例实施例中,每一个逻辑单元是指一个逻辑位址。然而,在另一范例实施例中,一个逻辑单元也可以是指一个逻辑程式化单元、一个逻辑抹除单元或者由多个连续或不连续的逻辑位址组成。此外,逻辑单元612(0)~612(C)中的每一者可被映射至一或多个实体单元。
存储器管理电路502会将逻辑单元与实体单元之间的映射关系(亦称为逻辑-实体位址映射关系)记录于至少一逻辑-实体位址映射表。当主机系统11欲从存储器存储装置10读取数据或写入数据至存储器存储装置10时,存储器管理电路502可根据此逻辑-实体位址映射表来执行对于存储器存储装置10的存取操作。
图7是根据本发明的一范例实施例所显示的数据传输操作的示意图。在本范例实施例中,存储器存储装置10是相容于NVM express接口标准。相对于采用阵列先进附件(Serial Advanced Technology Attachment,SATA)标准的存储装置,存储器存储装置10与主机系统11之间的沟通机制有些许不同。以下将参照图7来说明本发明的范例实施例的存储器存储装置10与主机系统11之间的数据传输机制。
请参照图7,当主机系统11欲对存储器存储装置10执行存取操作(例如,从存储器存储装置10读取数据或将数据写入至存储器存储装置10)时,主机系统11的处理器111会将准备好的指令放置在一个指令阵列(command queue)711中。具体而言,指令阵列711记录有一个管理员提交阵列(admin submission queue)ASQ与多个提交阵列(submission queue)SQ(0)~SQ(N),其中管理员提交阵列用以存放管理员指令(admin command),且提交阵列用以存放输出/输入指令(I/O command)。管理员指令用以配置与管理主机系统,以及用以控制存储器存储装置,而输出/输入指令用于主机系统与存储器存储装置之间的数据传输。据此,主机系统11的处理器111是将准备好的指令(例如,写入指令或读取指令)放置在指令阵列711中的至少一提交阵列中。需注意的是,每一个提交阵列所存放的指令可分别对应于不同使用者所执行的操作,或者同一个使用者所执行的不同类型的操作。举例而言,不同的提交阵列用以存放执行不同应用程式时所下达或产生的指令(例如,存取指令)。
承上,由于指令阵列711中的至少一提交阵列中存储有指令,因此,处理器111会传送一个指令通知给存储器存储装置10(步骤S701),换言之,指令通知用以指示多个提交阵列中至少一提交阵列存储有至少一指令。须注意的是,在NVM express接口标准下,在主机系统11发出指令通知之后,主机系统11对于存储器存储装置10的主动行为至此结束。
接着,存储器管理电路502会接收此指令通知并主动地从指令阵列711中读取并获得对应于此指令通知的至少一提交阵列中的一或多个指令(步骤S702)。并且,存储器管理电路502会依照此些指令被读取的先后顺序来将所获得的指令缓存在一个指令阵列721中。例如,指令阵列721包括多个待完成指令阵列(outstanding command queue)CQ(0)~CQ(M),且所获得的指令会依序地被缓存至至少一待完成指令阵列中。
之后,存储器管理电路502会依序地根据待完成指令阵列CQ(0)~CQ(M)中的指令来对可复写式非易失性存储器模块406执行相应的数据存取操作。举例而言,根据一个读取指令,存储器管理电路502会对可复写式非易失性存储器模块406执行一个数据读取操作并且将所获得的读取数据从数据缓存(data buffer)722传送给主机系统11(步骤S703)。例如,此读取数据会被存入主机系统11的数据缓存712。或者,根据一个写入指令,存储器管理电路502会主动地从主机系统11的数据缓存712中读取写入数据并将其缓存于数据缓存722中(步骤S703)。然后,存储器管理电路502会对可复写式非易失性存储器模块406执行一个数据写入操作以将缓存在数据缓存722的写入数据写入至可复写式非易失性存储器模块406。
对应于一个存取操作之完成,存储器管理电路502会产生一个完成信息,并且此完成信息会被缓存在一个完成阵列(completion queue)723中。此完成信息用于通知主机系统11相应于一个指令的一个存取操作已完成。在特定的时间点,包含完成信息的完成数据会被依序地传送给主机系统11并被缓存在主机系统11的一个完成阵列713中(步骤S704)。根据完成阵列723中的数据,主机系统11可以获得存储器存储装置10对应于一或多个存取指令的存取数据量以及数据存取速度等等。
在图7的范例实施例中,指令阵列711例如记录有65536个提交阵列SQ(0)~SQ(N),而指令阵列721例如包括256个待完成指令阵列CQ(0)~CQ(M),然而,本发明并不限于此。例如,在另一范例实施例中,可视主机系统11的存储器容量来配置指令阵列711的大小,且提交阵列的数量可大于或小于65536个;并且可根据存储器存储装置10的存储空间配置需求与执行性能来调整指令阵列721的大小,例如,待完成指令阵列可大于或小于256个。此外,指令阵列711、数据缓存712及完成阵列713是位于主机系统11的随机存取存储器112中,并且指令阵列721、数据缓存722及完成阵列723是位于存储器存储装置10的缓冲存储器510中。然而,在另一范例实施例中,指令阵列711、数据缓存712及完成阵列713中的任一者亦可以是位于主机系统11之其他的存储媒体中,并且指令阵列721、数据缓存722及完成阵列723中的任一者也可以是位于存储器存储装置10之的其他的存储媒体(例如,可复写式非易失性存储器模块406中)。
图8A是根据本发明的一范例实施例所显示的NVM express接口标准所定义的指令获取机制的示意图。图8B是根据本发明的一范例实施例所显示的NVM express接口标准所定义的另一指令获取机制的示意图。
具体而言,NVM express接口标准的规格中定义了两种指令获取机制,即,循环(Round Robin,RR)机制与加权循环(Weighted Round Robin,WRR)机制。请参照图8A,图8A显示为以RR机制从主机系统11获取指令的示意图。为了方便说明,在此以4个提交阵列SQ(0)~SQ(3)为例来说明存储器存储装置10透过RR机制来获取指令的操作,然而,本领域技术人员应可理解一个指令阵列711可包括更多个提交阵列,在此并不赘述。需注意的是,在此并不将管理员提交阵列ASQ列入讨论,由于管理员提交阵列ASQ所记录的管理员指令是用以配置、管理主机系统以及控制存储器存储装置,因此其可随时插入指令且即时地被处理。
详言之,当主机系统11所记录的提交阵列SQ(0)~SQ(3)皆存储有指令时,存储器存储装置10的存储器管理电路502会在接收到主机系统11的指令通知后依序从提交阵列SQ(0)~SQ(3)中读取特定数量的指令,例如,存储器管理电路502会依序在获取指令操作S81~S84中从提交阵列SQ(0)~SQ(3)中分别读取10个指令至指令阵列721中。特别是,在RR机制下,存储器管理电路502会根据所设定的读取数量来重复执行获取指令操作S81~S84。
另一方面,图8B显示为以WRR机制从主机系统11获取指令的示意图。具体而言,WRR机制是基于RR机制的获取指令操作,不同之处在于,在WRR机制中,提交阵列SQ(0)~SQ(N)可被划分为具有不同的优先权,且不同的优先权的提交阵列会被设定为对应至不同的读取数量(即,权重值),亦即,存储器管理电路502会分别对具有不同优先权的提交阵列读取不同数量的指令。请参照图8B,为了方便说明,在此以6个提交阵列SQ(0)~SQ(5)为例来说明存储器存储装置10透过WRR机制来获取指令的操作。
举例而言,提交阵列SQ(0)与提交阵列SQ(1)为高优先权,提交阵列SQ(2)与提交阵列SQ(3)为中优先权,而提交阵列SQ(4)与提交阵列SQ(5)为低优先权,并且对应高优先权、中优先权与低优先权的读取数量例如分别被设为10个、8个与6个。据此,存储器管理电路502会依序在获取指令操作S85_1~S85_2中从提交阵列SQ(0)~SQ(1)中分别读取10个指令,依序在获取指令操作S86_1~S86_2中从提交阵列SQ(2)~SQ(3)中分别读取8个指令,以及依序在获取指令操作S87_1~S87_2中从提交阵列SQ(4)~SQ(5)中分别读取6个指令,其中分别对应不同优先权之提交阵列的获取指令操作S85_1~S85_2、获取指令操作S86_1~S86_2与获取指令操作S87_1~S87_2会被存储器管理电路502重复执行。之后,由存储器管理电路502从提交阵列SQ(0)~SQ(1)所读取的共20个指令,从提交阵列SQ(2)~SQ(3)所读取的共16个指令,以及从提交阵列SQ(4)~SQ(5)所读取的共12个指令会依序在获取指令操作S801~S803中被缓存至指令阵列721中。并且类似地,存储器管理电路502会重复执行获取指令操作S801~S803。
根据上述可知,现有的RR机制或WRR机制皆是以特定数量来限制存储器管理电路502每一次从提交阵列所提取的指令个数。然而,在此些指令获取机制下,若一个提交阵列SQ(0)(如图7所示)中记录有对应于使用者所执行之操作的大量指令,且其他的提交阵列SQ(1)~提交阵列SQ(N)尚未存有指令时,存储器管理电路502会持续地从提交阵列SQ(0)读取至指令阵列721中,则指令阵列721的空间会很快地被提交阵列SQ(0)中的指令用尽。此时,倘若主机系统11收到使用者之另一操作,而将对应于此另一操作的指令记录于提交阵列SQ(1)中,则指令阵列721中将没有足够的空间存储提交阵列SQ(1)中的指令,且提交阵列SQ(1)中的指令必须待已暂存于指令阵列721中的大量指令皆被处理后才能被执行。或者,在另一情况中,若一个提交阵列SQ(0)中记录有对应于使用者所执行之操作的大量指令,且每一指令的数据量皆都很大;而提交阵列SQ(1)中仅记录有数据量很小的少量指令时,存储器管理电路502在从提交阵列SQ(0)中读取特定数量的指令至指令阵列721后,指令阵列721的空间可能随即被此特定数量的指令占满。换言之,在存储器管理电路502还未读取提交阵列SQ(1)中的指令时,指令阵列721就已没有足够的存储空间。
据此,不论是上述何种情况下,提交阵列SQ(1)中的指令必须待已暂存于指令阵列721中的大量指令皆被处理后才能被执行。亦即,尽管使用者的某一个操作仅需对少量数据进行存取时,使用者仍需经长时间的等待才能得到系统的回应,由此可知,现有的数据传输机制并无法满足对应不同操作之指令被执行的即时性。有鉴于此,在本发明范例实施例中,存储器管理电路502中会配置有对应每一提交阵列的监视电路,以对每一提交阵列读取特定数据量的指令。
图9是根据本发明的一范例实施例所显示的指令获取机制与数据传输的示意图。
请参照图9,存储器管理电路502会配置有监视电路900(0)~监视电路900(N),监视电路900(0)~监视电路900(N)分别对应至提交阵列SQ(0)~提交阵列SQ(N),每一监视电路会记录有其预定抓取的数据量(亦称为预定数据量),且每一监视电路所记录的预定数据量可不相同。特别是,存储器管理电路502会将预定数据量做为抓取数据的条件(亦称为预定条件),例如,存储器管理电路502可根据监视电路900(0)~监视电路900(N)所记录的预定数据量来从对应的提交阵列SQ(0)~提交阵列SQ(N)获取具特定数据量的指令。详言之,符合预定条件之指令的数据量可以是达到预定数据量、超过预定数据量或者未达到预定数据量,且在一范例实施例中,存储器管理电路502会尽可能将最终所抓取之的指令的数据量与预定数据量之间的差值维持在一容忍范围(亦称为数据量门槛值)内。据此,存储器管理电路502透过监视电路900(0)~监视电路900(N)所读取的分别对应提交阵列SQ(0)~提交阵列SQ(N)之指令会分别具有特定的数据量,而非特定的数量。
举例而言,监视电路900(0)(亦称为第一监视电路900(0))所记录的预定数据量(亦称为第一预定数据量)为6MB(megabyte),而监视电路900(1)(亦称为第二监视电路900(1))所记预定数据量(亦称为第二预定数据量)为4MB。当仅第一监视电路900(0)与第二监视电路900(1)所分别对应的提交阵列SQ(0)(亦称为第一提交阵列SQ(0))与提交阵列SQ(1)(亦称为第二提交阵列SQ(1))存储有对应使用者执行不同应用程式所需执行的指令时,存储器管理电路502会根据来自主机系统11的指令通知先从提交阵列SQ(0)中读取数据量符合预定条件(亦称为第一预定条件)的指令(亦称为至少一第一指令),再从提交阵列SQ(1)中读取数据量符合预定条件(亦称为第二预定条件)的指令(亦称为至少一第二指令)。在此,第一预定条件对应至第一预定数据量(即,6MB),而第二预定条件对应至第二预定数据量(即,4MB)。并且,存储器管理电路502会重复执行从提交阵列SQ(0)中读取数据量符合第一预定条件的至少一第一指令与从提交阵列SQ(1)中读取数据量符合第二预定条件的至少一第二指令的操作,直到提交阵列SQ(0)与提交阵列SQ(1)中未存放指令或暂时未存放指令时。
存储器管理电路502会将从提交阵列SQ(0)中所读取之数据量符合第一预定条件的至少一第一指令与将从提交阵列SQ(1)中所读取之数据量符合第二预定条件的至少一第二指令缓存至指令阵列721中。详言之,假设指令阵列721中每一待完成指令阵列CQ(0)~CQ(M)的容量为1MB,则存储器管理电路502会先将具有特定数据量(例如,约6MB)的至少一第一指令缓存至待完成指令阵列CQ(0)~CQ(5),再将具有特定数据量(例如,约4MB)的至少一第二指令缓存至指令阵列712中,即,将具有特定数据量(例如,约4MB)的至少一第二指令缓存至待完成指令阵列CQ(6)~CQ(9),其中在指令阵列712中至少一第二指令接续于至少一第一指令之后。
据此,在上述第一提交阵列SQ(0)中记录有对应于使用者所执行之操作的大量指令且每一指令的数据量皆很大(例如,此些大量指令的总数据量大于256MB),且提交阵列SQ(1)中仅记录有数据量很小的少量指令(例如,此些少量指令的总数据量小于4MB)的情况下,由于存储器管理电路502会先将具有特定数据量(例如,约6MB)的至少一第一指令缓存至待完成指令阵列CQ(0)~CQ(5),再将上述数据量很小(例如,小于4MB)的至少一第二指令接续地缓存至待完成指令阵列CQ(6)~CQ(9),因此在存储器管理电路502处理完待完成指令阵列CQ(0)~CQ(5)中之至少一第一指令后,提交阵列SQ(1)中仅存的数据量很小的至少一第二指令即可随即地被执行。亦或是,若第一提交阵列SQ(0)中记录有对应于使用者所执行之操作的大量指令,且其他的提交阵列SQ(1)~提交阵列SQ(N)尚未存有指令时,由于存储器管理电路502会在每读取完具有特定数据量(例如,约6MB)的至少一第一指令时检查其他的提交阵列SQ(1)~提交阵列SQ(N)是否有指令被写入,因此,倘若主机系统11突然收到使用者之的另一操作,对应此另一操作的指令亦可以在被记录于提交阵列SQ(1)~提交阵列SQ(N)中的其中之一后,即时地被存储器管理电路502所读取。
如此一来,通过本发明范例实施例的指令获取机制,仅管某个操作具有大量的指令需被执行,对应于其他操作的指令亦可即时地被执行,由此使用者可感受到其所执行或运作的多个操作被执行的即时性。换言之,在本发明范例实施例中,可避免某个操作占去存储器存储装置10的大量资源所造成的其他的操作需等待大量之延迟时间才被执行的问题。
图10是根据本发明的一范例实施例所显示的从一个提交阵列中获得符合预定条件的指令的流程图。
以下将参照图10来说明本发明是如何判断从一个提交阵列中所获得的指令的数据量是否符合预定条件的方法,在此以上述从主机系统11获得第一提交阵列SQ(0)中符合第一预定条件的至少一第一指令的例子,以及从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令的例子进行说明。在此,所述符合第一预定条件例如是指至少一第一指令的总数据量大于或等于第一预定数据量(例如,6MB)时;而所述符合第二预定条件例如是指至少一第二指令的总数据量大于或等于第二预定数据量(例如,4MB)时。请参照图10,在步骤S1001中,存储器管理电路502会依序地读取多笔具有一数量(亦称为第一数量)的第一指令,并累加每一笔具有此第一数量的第一指令的数据量以获得总数据量(亦称为第一数据量)。接着,在步骤S1003中,存储器管理电路502会判断第一数据量是否大于或等于第一预定数据量以决定是否要继续读取第一提交阵列中的指令(步骤S1001),或者停止从主机系统11读取第一提交阵列中的指令(步骤S1005)。
举例而言,所述第一数量例如为4,第一预定数据量为6MB。在步骤S1001中,存储器管理电路502会先从第一提交阵列SQ(0)读取4个指令,并解码此4个指令以计算其总数据量。假设此时此4个指令的总数据量为7MB,则存储器管理电路502会将7MB视为第一数据量,并判断第一数据量大于第一预定数据量(即,6MB),因此,在步骤S1005中,存储器管理电路502会停止从主机系统11读取第一提交阵列SQ(0)中的指令。换言之,在所累加的第一数据量(即,7MB)一旦超过所述第一预定数据量(即,6MB)时,存储器管理电路502会判定目前所获得的具第一数据量(即,7MB)的第一指令已符合所述第一预定条件,并停止从主机系统11读取第一提交阵列SQ(0)中的指令。此后,存储器管理电路502会接着从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令。
所述从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令的操作相同或相似于上述从主机系统11获得第一提交阵列SQ(0)中符合第一预定条件的至少一第一指令的操作,且亦适用上述图10的步骤。不同之处在于,第一监视电路900(0)与第二监视电路900(1)所记录的预定数据量可以不相同。类似地,存储器管理电路502会先从第二提交阵列SQ(1)读取4个指令,并解码此4个指令以计算其总数据量。假设此时此4个指令的总数据量为4MB,则存储器管理电路502会将此4MB视为第二数据量,并判断此第二数据量(即,4MB)等于(即,非大于)第二预定数据量(即,4MB)。换言之,此时的第二数据量(即,4MB)刚好达到第二预定数据量(即,4MB),因此,存储器管理电路502会判定具第二数据量的第二指令符合第二预定条件,并停止从主机系统11读取第二提交阵列SQ(1)中的指令。
本发明上述范例实施例是在所累加的数据量一旦达到或超过预定数据量时,就停止从主机系统11中当前的提交阵列中抓取指令,并切换至下一个提交阵列中抓取指令。如此一来,若当前的提交阵列中存储有大量数据时,其他提交阵列中之指令亦不会被延迟执行。然而,本发明并不限于此,例如,在另一范例实施例中,存储器管理电路502是在所累加的数据量还未达到所述预定数据量时,即停止从主机系统11读取当前的提交阵列中的指令。
图11是根据本发明的另一范例实施例所显示的从一个提交阵列中获得符合预定条件的指令的流程图。
请参照图11,在此仍以上述从主机系统11获得第一提交阵列SQ(0)中符合第一预定条件的至少一第一指令的例子,以及从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令的例子进行说明。举例而言,所述第一数量例如为4,第一预定数据量为6MB,而所述第一数据量门槛值例如为1MB。在步骤S1101中,存储器管理电路502会先从第一提交阵列SQ(0)读取4个指令,并解码此4个指令以计算其总数据量。假设此时此4个指令的总数据量为2.5MB,则存储器管理电路502会将2.5MB视为第一数据量,并在步骤S1103中,判断第一数据量虽未大于第一预定数据量,但第一数据量与第一预定数据量之间的差值(即,3.5MB)非小于第一数据量门槛值(即,1MB),因此,存储器管理电路502会执行步骤S1101以再读取下一笔具有第一数量的第一指令。例如,存储器管理电路502接着从第一提交阵列SQ(0)所读取的下一笔4个指令的总数据量为3MB,则存储器管理电路502会累加此两笔指令的总数据量以获得第一数据量,此时,第一数据量为5.5MB。因此,在步骤S1103中,存储器管理电路502会判断目前的第一数据量非大于第一预定数据量,且目前的第一数据量与第一预定数据量之间的差值(即,0.5MB)小于第一数据量门槛值(即,1MB),并执行步骤S1105以停止从主机系统11读取第一提交阵列SQ(0)中的指令。也就是说,在所累加的第一数据量(即,5.5MB)未达到所述第一预定数据量(即,6MB),但第一数据量与第一预定数据量两者之间的差值小于第一数据量门槛值时,存储器管理电路502会判断再继续从第一提交阵列SQ(0)读取下一笔4个指令后所累加的总数据量可能会超过所述第一预定数据量(即,6MB),进而判定目前所获得的具第一数据量(即,5.5MB)的第一指令已符合所述第一预定条件。
类似地,在判定所取得之至少一第一指令的第一数据量已符合第一预定条件之后,存储器管理电路502会接续地从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令。所述从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令的操作相同或相似于上述从主机系统11获得第一提交阵列SQ(0)中符合第一预定条件的至少一第一指令的操作,且亦适用上述图11中的步骤。不同之处在于,由于第一监视电路900(0)与第二监视电路900(1)所记录的预定数据量并不相同,因此,第一监视电路900(0)与第二监视电路900(1)各自作为判断条件的数据量门槛值亦可被设为不同的值,例如,在从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令的操作中,第二数据量门槛值是被设为0.5MB。然而,本发明并不限于此,例如,在另一范例实施例中,第二数据量门槛值亦可被设为与第一数据量门槛值相同的值。
举例而言,假设第二提交阵列SQ(1)中仅记录有数据量很小的少量指令,例如,此些少量指令的总数据量为3MB,则存储器管理电路502会读取第二提交阵列SQ(1)中所有的指令(亦称为至少一第二指令),并将此3MB的数据视为第二数据量。特别是,由于存储器管理电路502已将第二提交阵列SQ(1)中所有的指令皆都读取出来,且此第二数据量(即,3MB)非大于第二预定数据量(即,4MB)。因此,存储器管理电路502不会考虑第二数据量(即,3MB)与第二预定数据量(即,4MB)之间的差值是否小于第二数据量门槛值(即,0.5MB),且存储器管理电路502会判定具第二数据量的第二指令符合第二预定条件,并直接停止从主机系统11读取第二提交阵列SQ(1)中的指令。如此一来,对应于第二提交阵列SQ(1)中的指令的操作,可即时地被执行且完成,进而使得使用者可感受到其所执行或运作的多个不同的操作被执行的即时性。
应理解,本发明上述第一预定数据量、第二预定数据量、第一数据量门槛值、第二数据量门槛值、第一数量与第二数量的值仅为范例值,而非用以限制本发明。此外,上述第一指令与第二指令例如为写入指令或读取指令,具体而言,在本发明范例实施例中,上述从主机系统11获得第一提交阵列SQ(0)中符合第一预定条件的至少一第一指令的操作中,存储器管理电路502仅将第一提交阵列SQ(0)中写入指令或读取指令的数据量做为判断是否符合第一预定条件的指令;或者上述从主机系统11获得第二提交阵列SQ(1)中符合第二预定条件的至少一第二指令的操作中,存储器管理电路502仅将第二提交阵列SQ(1)中写入指令或读取指令的数据量做为判断是否符合第二预定条件的指令。然而,本发明并不限于此,例如,在另一范例实施例中,第一指令包括写入指令或读取指令以外的指令,且第二指令包括写入指令或读取指令以外的指令。
需注意的是,本发明并不欲限制每一提交阵列所对应的预定数据量,举例而言,在本发明范例实施例中,每一个提交阵列所存放的指令可分别对应于不同使用者所执行的操作,或者同一个使用者所执行的不同类型的操作。例如,不同的提交阵列用以存放执行不同应用程式时所下达或产生的指令。据此,存储器管理电路502可根据对应每一个提交阵列所存储之指令类型,来设定监视电路900(0)~监视电路900(N)所记录的预定数据量。也就是说,每一个提交阵列所对应的预定数据量可根据其所存储之指令类型、性质与重要程度而动态地被调整,例如,在本范例实施例中,对应第二提交阵列SQ(1)的第二预定数据量不同于对应第一提交阵列SQ(0)的第一预定数据量。然而,本发明并不限于此。在另一范例实施例中,不同的提交阵列所对应的监视电路亦可记录相同的预定数据量,例如,对应第二提交阵列SQ(1)的第二预定数据量可相同于对应第一提交阵列SQ(0)的第一预定数据量。
此外,本发明上述从对应的提交阵列SQ(0)~提交阵列SQ(N)获取符合预定数据量之指令的操作,是透过硬体电路(即,监视电路900(0)~监视电路900(N))来实作。然而,在另一范例实施例中,从对应的提交阵列SQ(0)~提交阵列SQ(N)获取符合预定数据量之指令的操作亦可以软体的形式来实作,本发明并不加以限制。
值的一提的是,在现有的WRR机制底下,每一提交阵列虽可被划分为具有不同的优先权,例如,不同的优先权的提交阵列对应至不同的权重值(即,指令读取数量)。然而,由于每一笔指令的数据量并不相同,因此,从不同的优先权的提交指令所提取的不同数量的指令,仍可能具有相同的总数据量。举例而言,请再参照图8,存储器管理电路502根据权重值,从高优先权的提交阵列SQ(0)~SQ(1)中分别读取10个指令,以及从中优先权的提交阵列SQ(2)~SQ(3)中分别读取8个指令。倘若提交阵列SQ(0)~SQ(1)中每一笔指令的数据量为4MB,而提交阵列SQ(2)~SQ(3)中每一笔指令的数据量为5MB,则存储器管理电路502从提交阵列SQ(0)~SQ(1)所读取的共20个指令的总数据量为80MB,从提交阵列SQ(2)~SQ(3)所读取的共16个指令的总数据量亦为80MB。亦即,仅管不同的优先权的提交阵列具有不同的权重值,从不同的优先权的提交阵列所读取之指令的总数据量仍可能会相同。换言之,现有的WRR机制底下的权重机制并不客观,且并未考量到提交阵列中所存储之指令的类型,也未考量到所读取之指令的总数据量在存储器存储装置中所占的资源。反观本发明,在本发明范例实施例中,存储器管理电路502可根据指令类型、性质与重要程度来设定每一个提交阵列所对应的预定数据量,且所读取的分别对应提交阵列SQ(0)~提交阵列SQ(N)之指令会实质上分别具有特定的数据量。据此,本发明范例实施例不仅可解决某个操作占去存储器存储装置10的大量资源所造成的其他的操作需等待大量之延迟时间才被执行的问题,更考量到每一个提交阵列中指令的类型、性质与重要程度,以有效地达到赋予每一提交阵列之权重值的目的。
图12是根据本发明的一范例实施例所显示的数据传输方法的流程图。
请参照图12,在步骤S1201中,存储器管理电路502从主机系统11获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件。
在步骤S1203中,当所述第一数据量符合所述第一预定条件时,获得第二提交阵列中的至少一第二指令。
接着,在步骤S1205中,存储器管理电路502对存储器存储装置10中的可复写式非易失性存储器模块406依序地执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作。
然而,图12中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图12中各步骤可以实作为多个程式码或是电路,本发明不加以限制。此外,图12的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,本发明范例实施例提出的数据传输方法、存储器存储装置与存储器控制电路单元,可根据对应每一提交阵列的预定数据量来分别地从每一提交阵列中获取具特定数据量的指令,进而依序地将每一提交阵列中具特定数据量的指令缓存至存储器存储装置。如此一来,存储器存储装置将不会因某个具有大量指令的操作而被占去的大量资源与空间,进而满足对应不同操作的指令被执行的即时性,由此使用者端将不会产生部分操作需等待大量的延迟时间才被执行的问题。另一方面,透过本发明根据指令类型、性质与重要程度来设定每一个提交阵列所对应的预定数据量的操作,可有效地控制从每一提交阵列所读取之指令的特定数据量,进而达到赋予每一提交阵列的权重值的目的。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,这些更改与润饰均应落入本发明的保护范围内。
Claims (27)
1.一种数据传输方法,用于存储器存储装置与主机系统之间的数据传输操作,其特征在于,所述主机系统记录多个提交阵列,所述数据传输方法包括:
从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件;
当所述第一数据量符合所述第一预定条件时,从所述主机系统获得第二提交阵列的至少一第二指令;以及
对所述存储器存储装置中的可复写式非易失性存储器模块依序地执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作。
2.根据权利要求1所述的数据传输方法,其特征在于,判断所述至少一第一指令的所述第一数据量是否符合所述第一预定条件的步骤包括:
依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量;以及
当所述第一数据量大于或等于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令。
3.根据权利要求2所述的数据传输方法,其特征在于,所述第二提交阵列的所述至少一第二指令符合第二预定条件,且所述第二预定条件为所述至少一第二指令的第二数据量大于或等于第二预定数据量,其中所述第二预定数据量不同于所述第一预定数据量。
4.根据权利要求1所述的数据传输方法,其特征在于,判断所述至少一第一指令的所述第一数据量是否符合所述第一预定条件的步骤还包括:
依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量;以及
当所述第一数据量非大于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令,其中所述第一数据量与所述第一预定数据量之间的差值小于第一数据量门槛值。
5.根据权利要求4所述的数据传输方法,其特征在于,所述第二提交阵列的所述至少一第二指令符合一第二预定条件,且所述第二预定条件为所述至少一第二指令的第二数据量非大于一第二预定数据量,其中所述第二数据量与所述第二预定数据量之间的差值小于第二数据量门槛值,其中所述第二预定数据量不同于所述第一预定数据量,且所述第二数据量门槛值不同于所述第一数据量门槛值。
6.根据权利要求1所述的数据传输方法,其特征在于,当所述第一数据量符合所述第一预定条件时,从所述主机系统获得所述第二提交阵列中的所述至少一第二指令的步骤还包括:
将符合所述第一预定条件的所述至少一第一指令放入指令阵列中;以及
将所述至少一第二指令放入所述指令阵列中的所述至少一第一指令之后。
7.根据权利要求1所述的数据传输方法,其特征在于,所述至少一第一指令包括写入指令或读取指令,以及所述至少一第二指令包括写入指令或读取指令。
8.根据权利要求1所述的数据传输方法,其特征在于,从所述主机系统获得所述第一提交阵列中的所述至少一第一指令的步骤是反应于来自所述主机系统的指令通知,
其中所述指令通知指示所述多个提交阵列中至少一提交阵列存储有至少一指令。
9.根据权利要求1所述的数据传输方法,其特征在于,所述存储器存储装置相容于快速非挥发性存储器接口标准。
10.一种存储器存储装置,其特征在于,包括:
连接接口单元,用以耦接至主机系统,其中所述主机系统记录多个提交阵列;
可复写式非易失性存储器模块;以及
存储器控制电路单元,耦接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件,
其中所述存储器控制电路单元还用以当所述第一数据量符合所述第一预定条件时,从所述主机系统获得第二提交阵列中的至少一第二指令,
其中所述存储器控制电路单元还用以发送第一存取指令阵列以指示对所述可复写式非易失性存储器模块依序地执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作。
11.根据权利要求10所述的存储器存储装置,其特征在于,在判断所述至少一第一指令的所述第一数据量是否符合所述第一预定条件的操作中,所述存储器控制电路单元还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量,
其中所述存储器控制电路单元还用以当所述第一数据量大于或等于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令。
12.根据权利要求11所述的存储器存储装置,其特征在于,所述第二提交阵列的所述至少一第二指令符合第二预定条件,且所述第二预定条件为所述至少一第二指令的第二数据量大于或等于第二预定数据量,其中所述第二预定数据量不同于所述第一预定数据量。
13.根据权利要求10所述的存储器存储装置,其特征在于,在判断所述至少一第一指令的所述第一数据量是否符合所述第一预定条件的操作中,所述存储器控制电路单元还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量,
其中所述存储器控制电路单元还用以当所述第一数据量非大于第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令,其中所述第一数据量与所述第一预定数据量之间的差值小于第一数据量门槛值。
14.根据权利要求13所述的存储器存储装置,其特征在于,所述第二提交阵列的所述至少一第二指令符合第二预定条件,且所述第二预定条件为所述至少一第二指令的第二数据量非大于第二预定数据量,其中所述第二数据量与所述第二预定数据量之间的差值小于第二数据量门槛值,其中所述第二预定数据量不同于所述第一预定数据量,且所述第二数据量门槛值不同于所述第一数据量门槛值。
15.根据权利要求10所述的存储器存储装置,其特征在于,当所述第一数据量符合所述第一预定条件时,从所述主机系统获得所述第二提交阵列中的所述至少一第二指令的操作中,所述存储器控制电路单元还用以将符合所述第一预定条件的所述至少一第一指令放入指令阵列中,以及将所述至少一第二指令放入所述指令阵列中的所述至少一第一指令之后。
16.根据权利要求10所述的存储器存储装置,其特征在于,所述至少一第一指令包括写入指令或读取指令,以及所述至少一第二指令包括写入指令或读取指令。
17.根据权利要求10所述的存储器存储装置,其特征在于,从所述主机系统获得所述第一提交阵列中的所述至少一第一指令的操作是反应于来自所述主机系统的指令通知,
其中所述指令通知指示所述多个提交阵列中至少一提交阵列存储有至少一指令。
18.根据权利要求10所述的存储器存储装置,其特征在于,所述存储器存储装置相容于快速非挥发性存储器接口标准。
19.一种存储器控制电路单元,用于控制一可复写式非易失性存储器模块,其特征在于,所述存储器控制电路单元包括:
主机接口,用以耦接至主机系统,其中所述主机系统记录多个提交阵列;
存储器接口,用以耦接至所述可复写式非易失性存储器模块;以及
存储器管理电路,耦接至所述主机接口与所述存储器接口,其中所述存储器管理电路包括多个监视电路,且各个监视电路分别对应至所述多个提交阵列中的至少一提交阵列,
其中所述存储器管理电路用以从所述主机系统获得第一提交阵列中的至少一第一指令,并判断所述至少一第一指令的第一数据量是否符合第一预定条件,
其中所述存储器管理电路用以当所述第一数据量符合所述第一预定条件时,从所述主机系统获得第二提交阵列中的至少一第二指令,
其中所述存储器管理电路还用以发送第一存取指令阵列以指示对所述可复写式非易失性存储器模块依序地执行对应所述至少一第一指令与所述至少一第二指令的数据存取操作。
20.根据权利要求19所述的存储器控制电路单元,其特征在于,所述多个监视电路中的一第一监视电路用以记录第一预定数据量,且在判断所述至少一第一指令的所述第一数据量是否符合所述第一预定条件的操作中,所述存储器管理电路还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量,
其中所述存储器管理电路还用以当所述第一数据量大于或等于所述第一预定数据量时,判定所述第一数据量符合所述第一预定数据量,并停止从所述主机系统读取所述第一提交阵列中的指令。
21.根据权利要求20所述的存储器控制电路单元,其特征在于,所述多个监视电路中的第二监视电路用以记录第二预定数据量,且所述第二提交阵列的所述至少一第二指令符合所述第二预定条件,其中所述第二预定条件为所述至少一第二指令的第二数据量大于或等于所述第二预定数据量,且所述第二预定数据量不同于所述第一预定数据量。
22.根据权利要求19所述的存储器控制电路单元,其特征在于,所述多个监视电路中的第一监视电路用以记录第一预定数据量,且在判断所述至少一第一指令的所述第一数据量是否符合所述第一预定条件的操作中,所述存储器管理电路还用以依序地读取多笔具有第一数量的第一指令,并累加每一笔具有所述第一数量的第一指令的数据量以获得所述第一数据量,
其中所述存储器管理电路还用以当所述第一数据量非大于所述第一预定数据量时,判定所述第一数据量符合所述第一预定条件,并停止从所述主机系统读取所述第一提交阵列中的指令,其中所述第一数据量与所述第一预定数据量之间的差值小于第一数据量门槛值。
23.根据权利要求22所述的存储器控制电路单元,其特征在于,所述多个监视电路中的一第二监视电路用以记录第二预定数据量,且所述第二提交阵列的所述至少一第二指令符合所述第二预定条件,其中所述第二预定条件为所述至少一第二指令的第二数据量非大于所述第二预定数据量,且所述第二数据量与所述第二预定数据量之间的差值小于第二数据量门槛值,其中所述第二预定数据量不同于所述第一预定数据量,且所述第二数据量门槛值不同于所述第一数据量门槛值。
24.根据权利要求19所述的存储器控制电路单元,其特征在于,当所述第一数据量符合所述第一预定条件时,从所述主机系统获得所述第二提交阵列中的所述至少一第二指令的操作中,所述存储器管理电路还用以将符合所述第一预定条件的所述至少一第一指令放入指令阵列中,以及将所述至少一第二指令放入所述指令阵列中的所述至少一第一指令之后。
25.根据权利要求19所述的存储器控制电路单元,其特征在于,所述至少一第一指令包括写入指令或读取指令,以及所述至少一第二指令包括写入指令或读取指令。
26.根据权利要求19所述的存储器控制电路单元,其特征在于,从所述主机系统获得所述第一提交阵列中的所述至少一第一指令的操作是反应于来自所述主机系统的指令通知,
其中所述指令通知指示所述多个提交阵列中至少一提交阵列存储有至少一指令。
27.根据权利要求19所述的存储器控制电路单元,其特征在于,所述存储器控制电路单元相容于快速非挥发性存储器接口标准。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710059469.6A CN106874223B (zh) | 2017-01-24 | 2017-01-24 | 数据传输方法、存储器存储装置及存储器控制电路单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710059469.6A CN106874223B (zh) | 2017-01-24 | 2017-01-24 | 数据传输方法、存储器存储装置及存储器控制电路单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106874223A true CN106874223A (zh) | 2017-06-20 |
CN106874223B CN106874223B (zh) | 2021-04-20 |
Family
ID=59159193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710059469.6A Active CN106874223B (zh) | 2017-01-24 | 2017-01-24 | 数据传输方法、存储器存储装置及存储器控制电路单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106874223B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107861894A (zh) * | 2017-11-03 | 2018-03-30 | 郑州云海信息技术有限公司 | NVMe协议的队列命令的执行方法、装置及存储介质 |
CN110908591A (zh) * | 2018-09-17 | 2020-03-24 | 群联电子股份有限公司 | 存储器管理方法、存储器储存装置及存储器控制电路单元 |
CN113345476A (zh) * | 2020-03-03 | 2021-09-03 | 株式会社东芝 | 磁盘装置以及磁盘装置的存储管理方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050094563A1 (en) * | 2003-10-30 | 2005-05-05 | Fusayuki Takeshita | Method and device for reproducing data |
CN101202741A (zh) * | 2006-12-14 | 2008-06-18 | 英业达股份有限公司 | 动态调整任务请求数的方法 |
CN101895403A (zh) * | 2009-05-22 | 2010-11-24 | 华为技术有限公司 | 一种数据传送方法、装置和通信系统 |
CN102141897A (zh) * | 2010-02-02 | 2011-08-03 | 慧荣科技股份有限公司 | 用来增进存取效能的方法以及相关的个人电脑及储存媒体 |
CN104008072A (zh) * | 2013-02-22 | 2014-08-27 | 群联电子股份有限公司 | 控制方法、连接器与存储器存储装置 |
CN104898982A (zh) * | 2014-03-03 | 2015-09-09 | 群联电子股份有限公司 | 数据传输方法、存储器控制电路单元与存储器储存装置 |
CN105740178A (zh) * | 2014-12-09 | 2016-07-06 | 扬智科技股份有限公司 | 芯片网络系统以及其形成方法 |
-
2017
- 2017-01-24 CN CN201710059469.6A patent/CN106874223B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050094563A1 (en) * | 2003-10-30 | 2005-05-05 | Fusayuki Takeshita | Method and device for reproducing data |
CN101202741A (zh) * | 2006-12-14 | 2008-06-18 | 英业达股份有限公司 | 动态调整任务请求数的方法 |
CN101895403A (zh) * | 2009-05-22 | 2010-11-24 | 华为技术有限公司 | 一种数据传送方法、装置和通信系统 |
CN102141897A (zh) * | 2010-02-02 | 2011-08-03 | 慧荣科技股份有限公司 | 用来增进存取效能的方法以及相关的个人电脑及储存媒体 |
CN104008072A (zh) * | 2013-02-22 | 2014-08-27 | 群联电子股份有限公司 | 控制方法、连接器与存储器存储装置 |
CN104898982A (zh) * | 2014-03-03 | 2015-09-09 | 群联电子股份有限公司 | 数据传输方法、存储器控制电路单元与存储器储存装置 |
CN105740178A (zh) * | 2014-12-09 | 2016-07-06 | 扬智科技股份有限公司 | 芯片网络系统以及其形成方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107861894A (zh) * | 2017-11-03 | 2018-03-30 | 郑州云海信息技术有限公司 | NVMe协议的队列命令的执行方法、装置及存储介质 |
CN107861894B (zh) * | 2017-11-03 | 2021-08-31 | 郑州云海信息技术有限公司 | NVMe协议的队列命令的执行方法、装置及存储介质 |
CN110908591A (zh) * | 2018-09-17 | 2020-03-24 | 群联电子股份有限公司 | 存储器管理方法、存储器储存装置及存储器控制电路单元 |
CN110908591B (zh) * | 2018-09-17 | 2023-05-30 | 群联电子股份有限公司 | 存储器管理方法、存储器储存装置及存储器控制电路单元 |
CN113345476A (zh) * | 2020-03-03 | 2021-09-03 | 株式会社东芝 | 磁盘装置以及磁盘装置的存储管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106874223B (zh) | 2021-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106681654B (zh) | 映射表载入方法与存储器存储装置 | |
CN106681652B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
TWI700635B (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
TWI615711B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW201945936A (zh) | 記憶體管理方法以及儲存控制器 | |
TW201828035A (zh) | 資料傳輸方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN106681932A (zh) | 存储器管理方法、存储器控制电路单元及存储器存储装置 | |
CN107818808A (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
US20230266884A1 (en) | Operating method for storage controller and storage system including same | |
CN111258505B (zh) | 快闪存储器的数据合并方法、控制电路单元与存储装置 | |
CN106874223A (zh) | 数据传输方法、存储器存储装置及存储器控制电路单元 | |
CN107817943A (zh) | 数据传输方法、存储器存储装置及存储器控制电路单元 | |
CN106959818A (zh) | 数据写入方法、内存控制电路单元与内存储存装置 | |
US11144245B2 (en) | Memory control method, memory storage device and memory control circuit unit | |
TWI635495B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN112230849A (zh) | 存储器控制方法、存储器存储装置及存储器控制器 | |
CN107103930B (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
US10824340B2 (en) | Method for managing association relationship of physical units between storage area and temporary area, memory control circuit unit, and memory storage apparatus | |
TWI760697B (zh) | 記憶體之資料整理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN107132989B (zh) | 数据程序化方法、存储器控制电路单元及存储器存储装置 | |
TWI596477B (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 | |
CN111309642B (zh) | 一种存储器及其控制方法与存储系统 | |
CN108959109A (zh) | 数据读取方法、存储器控制电路单元与存储器存储装置 | |
TWI818370B (zh) | 資料儲存分配方法、記憶體儲存裝置及記憶體控制電路單元 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |