CN109388593B - 进行动态资源管理的方法、记忆装置及记忆装置的控制器 - Google Patents

进行动态资源管理的方法、记忆装置及记忆装置的控制器 Download PDF

Info

Publication number
CN109388593B
CN109388593B CN201710941733.9A CN201710941733A CN109388593B CN 109388593 B CN109388593 B CN 109388593B CN 201710941733 A CN201710941733 A CN 201710941733A CN 109388593 B CN109388593 B CN 109388593B
Authority
CN
China
Prior art keywords
queue
entity region
region descriptor
descriptors
controller
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
Application number
CN201710941733.9A
Other languages
English (en)
Other versions
CN109388593A (zh
Inventor
许哲玮
曾新翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Silicon Motion Inc
Original Assignee
Silicon Motion Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Silicon Motion Inc filed Critical Silicon Motion Inc
Priority to CN202111488799.XA priority Critical patent/CN114153764B/zh
Publication of CN109388593A publication Critical patent/CN109388593A/zh
Application granted granted Critical
Publication of CN109388593B publication Critical patent/CN109388593B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种用来于一记忆装置中进行动态资源管理的方法以及所述记忆装置及其控制器。所述方法可包括:分别存储涉及多个主装置指令的多组实体区域描述符信息,且将分别对应于所述多组实体区域描述符信息的多个中间实体区域描述符存储进入一第一队列;从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入一第二队列;依据所述第二队列中的所述中间实体区域描述符,传送一指令至所述非挥发性存储器,以存取资料;以及当存取成功,将所述中间实体区域描述符从所述第二队列释放至所述第一队列。通过本发明的动态资源管理,可避免记忆装置中用来进行存取管理的硬件资源不足的问题。

Description

进行动态资源管理的方法、记忆装置及记忆装置的控制器
技术领域
本发明涉及闪存(Flash memory)的存取(access),尤其涉及一种用来于一记忆装置中进行动态资源管理的方法以及相关的记忆装置及其控制器。
背景技术
近年来由于存储器的技术不断地发展,各种可携式记忆装置(例如:符合SD/MMC、CF、MS、或XD标准的记忆卡)被广泛地实施于诸多应用中。因此,这些可携式记忆装置中的存储器的访问控制遂成为相当热门的议题。
以常用的NAND型闪存而言,其主要可区分为单阶细胞(single level cell,SLC)与多阶细胞(multiple level cell,MLC)两大类的闪存。单阶细胞闪存中的每个被当作记忆细胞(memory cell)的晶体管只有两种电荷值,分别用来表示逻辑值0与逻辑值1。另外,多阶细胞闪存中的每个被当作记忆单元的晶体管的存储能力则被充分利用,采用较高的电压来驱动,以通过不同级别的电压在一个晶体管中记录至少两组位信息(诸如00、01、11、10);理论上,多阶细胞闪存的记录密度可以达到单阶细胞闪存的记录密度的至少两倍,这对于曾经在发展过程中遇到瓶颈的NAND型闪存的相关产业而言,是非常好的消息。
相较于单阶细胞闪存,由于多阶细胞闪存的价格较便宜,并且在有限的空间里可提供较大的容量,故多阶细胞闪存很快地成为市面上的可携式记忆装置竞相采用的主流。然而,多阶细胞闪存的不稳定性所导致的问题也一一浮现。为了确保可携式记忆装置对闪存的访问控制能符合相关规范,闪存的控制器通常备有某些管理机制以妥善地管理数据的存取。
依据相关技术,有了这些管理机制的记忆装置还是有不足之处。举例来说,因应的某些类型的读取(read)运作,记忆装置中用来进行存取管理的硬件资源可能不敷使用而导致整体效能变差。因此,需要一种新颖的方法及存储器存取架构,以在没有副作用或较不可能带来副作用的状况下达到记忆装置的优化(optimal)效能。
发明内容
本发明的一目的在于公开一种用来于一记忆装置中进行动态资源管理的方法以及相关的记忆装置及其控制器,以解决上述问题。
本发明的另一目的在于公开一种用来于一记忆装置中进行动态资源管理的方法以及相关的记忆装置及其控制器,以在没有副作用或较不可能带来副作用的状况下达到记忆装置的优化(optimal)效能。
本发明的至少一实施例公开一种用来于一记忆装置中进行动态资源管理的方法,其中所述记忆装置包括一非挥发性存储器(non-volatile memory,NV memory),且所述非挥发性存储器包括多个非挥发性存储器组件(NV memory element)。例如,所述方法可包括:分别存储涉及多个主装置指令(host command)的多组实体区域描述符(physicalregion descriptor,PRD)信息,且将分别对应于所述多组实体区域描述符信息的多个中间(intermediate)实体区域描述符存储进入一第一队列(queue),其中所述多个主装置指令是接收自所述记忆装置以外,且所述多个中间实体区域描述符中的任一者包括所述多组实体区域描述符信息中的一组的辨识符(identifier,ID);从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入一第二队列;依据所述第二队列中的所述中间实体区域描述符,传送一指令至所述非挥发性存储器,以存取(access)所述多个非挥发性存储器组件的至少一非挥发性存储器组件中的数据;以及当存取所述数据的运作成功,将所述中间实体区域描述符从所述第二队列释放(release)至所述第一队列。
本发明的至少一实施例公开一种记忆装置,其包括有:一非挥发性存储器,用来存储信息,其中所述非挥发性存储器包括多个非挥发性存储器组件;以及一控制器,耦接至所述非挥发性存储器,用来控制所述记忆装置的运作。例如:所述控制器可包括一多队列型(multi-queue type)实体区域描述符存储模块,其可用来存储至少一实体区域描述符,其中所述多队列型实体区域描述符存储模块包括一实体区域描述符信息缓存器、一第一队列(queue)以及一第二队列。另外,所述控制器可还包括一处理电路,而所述处理电路可用来依据来自一主装置(host device)的多个主装置指令控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器。此外,所述控制器于所述实体区域描述符信息缓存器中分别存储涉及所述多个主装置指令的多组实体区域描述符信息,且将分别对应于所述多组实体区域描述符信息的多个中间实体区域描述符存储进入所述第一队列,其中所述多个中间实体区域描述符中的任一者包括所述多组实体区域描述符信息中的一组的辨识符。所述控制器从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入所述第二队列;依据所述第二队列中的所述中间实体区域描述符,所述控制器传送一指令至所述非挥发性存储器,以存取所述多个非挥发性存储器组件的至少一非挥发性存储器组件中的数据。当存取所述数据的运作成功,所述控制器将所述中间实体区域描述符从所述第二队列释放至所述第一队列。
本发明的至少一实施例公开一种记忆装置的控制器,其中所述记忆装置包括所述控制器与一非挥发性存储器,且所述非挥发性存储器包括多个非挥发性存储器组件。例如,所述控制器可包括一多队列型实体区域描述符存储模块,其可用来存储至少一实体区域描述符,其中所述多队列型实体区域描述符存储模块包括一实体区域描述符信息缓存器、一第一队列以及一第二队列。另外,所述控制器可还包括一处理电路,而所述处理电路可用来依据来自一主装置的多个主装置指令控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器。此外,所述控制器于所述实体区域描述符信息缓存器中分别存储涉及所述多个主装置指令的多组实体区域描述符信息,且将分别对应于所述多组实体区域描述符信息的多个中间实体区域描述符存储进入所述第一队列,其中所述多个中间实体区域描述符中的任一者包括所述多组实体区域描述符信息中的一组的辨识符。所述控制器从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入所述第二队列;依据所述第二队列中的所述中间实体区域描述符,所述控制器传送一指令至所述非挥发性存储器,以存取所述多个非挥发性存储器组件的至少一非挥发性存储器组件中的数据。当存取所述数据的运作成功,所述控制器将所述中间实体区域描述符从所述第二队列释放至所述第一队列。
本发明的好处之一在于,通过适当地进行动态资源管理,本发明能针对所述控制器的运作进行妥善的控制,以避免记忆装置中用来进行存取管理的硬件资源不足。另外,依据本发明的相关实施例来实施并不会增加许多额外的成本,甚至比相关技术更能节省成本。因此,相关技术的问题可被解决,且整体成本不会增加太多。相较于相关技术,本发明能在没有副作用或较不可能带来副作用的状况下达到记忆装置的优化效能。
附图说明
图1为依据本发明一第一实施例的一种记忆装置与一主装置(host device)的示意图。
图2绘示图1所示实体区域描述符存储模块于一实施例中的实施细节。
图3为依据本发明一实施例的一种用来于一记忆装置中进行动态资源管理的方法的流程图。
图4绘示图3所示方法于一实施例中之后指派(post-assign)控制方案。
图5绘示图3所示方法于一实施例中的多队列(multi-queue)控制方案。
图6绘示图3所示方法于一实施例中的分时缓冲器(time sharing buffer,TSB)资源管理方案。
其中,附图标记说明如下:
50 主装置
100 记忆装置
110 存储器控制器
112 微处理器
112C 程序代码
112M 只读存储器
114 控制逻辑电路
115 实体区域描述符存储模块
116 缓冲存储器
118 传输接口电路
120 非挥发性存储器
122-1,122-2,…,122-N 非挥发性存储器组件
210 实体区域描述符信息缓存器
300 用来于记忆装置中进行动态资源管理的方法
S310 接收主装置指令的步骤
S312 存储实体区域描述符信息的步骤
S314 将中间实体区域描述符存储进入第一队列的步骤
S316 将第一队列中的部分中间实体区域描述符搬移到第二队列的步骤
S318 检查第二队列的中间实体区域描述符中操作同一非挥发性存储器组件者的数量是否达到预定数量门坎值的步骤
S320 调整第二队列的中间实体区域描述符的顺序的步骤
S322 操作非挥发性存储器以取得操作结果的步骤
S324 输出操作结果至主装置的步骤
S326 将中间实体区域描述符从第二队列搬移至第一队列的步骤
S328 检查第一队列中是否有尚未被搬移的中间实体区域描述符的步骤
S330 检查第二队列中是否有尚未被处理的中间实体区域描述符的步骤
F1,F2,F3,F4,F5,F6,
F7,F8,F9,F10,F11 中间实体区域描述符
H1,H2,H3,H4 硬件实体区域描述符
Head_ptr(A),Head_ptr(B) 头部指标
HWPRD 硬件实体区域描述符存储模块
PRDINF,PRDINF(1),
PRDINF(2),
PRDINF(3),PRDINF(4),… 实体区域描述符信息
Queue(A) 第一队列
Queue(B) 第二队列
Tail_ptr(A),Tail_ptr(B) 尾部指标
具体实施方式
I.存储器系统
请参考图1,图1为依据本发明一第一实施例的一种记忆装置100与一主装置(hostdevice)50的示意图。例如:记忆装置100可为一可携式记忆装置(例如:符合SD/MMC、CF、MS、或XD标准的记忆卡)或固态硬盘(solid state drive,SSD)。另外,主装置50的例子可包括(但不限于):多功能移动电话(multifunctional mobile phone)、平板计算机(tablet)、可穿戴装置(wearable device)、以及个人计算机(personal computer)诸如桌面计算机与膝上型计算机。依据本实施例,记忆装置100可包括一控制器诸如存储器控制器110,且可还包括一非挥发性存储器(non-volatile memory,NV memory)120,其中所述控制器是用来存取(access)非挥发性存储器120,且非挥发性存储器120是用来存储信息。非挥发性存储器120可包括多个非挥发性存储器组件(NV memory element)122-1、122-2、…与122-N,其中符号「N」可代表大于一的正整数。例如:非挥发性存储器120可为一闪存(Flash memory),而非挥发性存储器组件122-1、122-2、…与122-N可分别为多个闪存芯片(Flash memory chip)或多个闪存裸晶(Flash memory die),但本发明不限于此。
如图1所示,存储器控制器110可包括处理电路诸如微处理器112、存储器诸如只读存储器(Read Only Memory,ROM)112M、控制逻辑电路114、实体区域描述符(PhysicalRegion Descriptor,PRD)存储模块115、缓冲存储器116、与传输接口电路118,其中这些组件可通过总线彼此耦接。缓冲存储器116是以随机存取存储器(Random Access Memory,RAM)来实施。实体区域描述符存储模块115可用来存储至少一实体区域描述符,且可用任何形式的存储器(例如:所述随机存取存储器或任何其它存储器)来实施,但本发明不限于此。另外,本实施例的只读存储器112M是用来存储一程序代码112C,而微处理器112则用来执行程序代码112C以控制对非挥发性存储器120的存取。请注意,程序代码112C也可以存储在缓冲存储器116或任何形式的存储器内。此外,控制逻辑电路114可包括一错误更正码电路(未显示),以保护数据、或进行错误更正,而传输接口电路118可符合一特定通信标准(诸如串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准、通用串行总线(Universal Serial Bus,USB)标准、或快捷外设互联(Peripheral ComponentInterconnect Express,PCIE)标准)且可依据所述特定通信标准进行通信。
于本实施例中,主装置50可通过传送主装置指令(Host Command)与对应的逻辑地址予存储器控制器110来间接地存取记忆装置100。存储器控制器110接收主装置指令与逻辑地址,并将主装置指令转译成存储器操作指令(简称操作指令),再以操作指令控制非挥发性存储器120读取、写入(Write)/编程(Program)非挥发性存储器120当中特定实体地址的记忆单位(Memory Unit)或数据页(Page),其中实体地址对应于逻辑地址。在下述说明中,将以非挥发性存储器120的读取操作为例进行说明,但本发明不以此为限。
II.多队列架构
存储器控制器110可以队列多个主装置指令,并依序执行主装置指令,最后,回传操作结果至主装置50。然而,主装置指令的完成时间或成功与否可能与预期不符,如果于接收主装置指令时即对主装置指令预留系统资源,这可能造成系统资源的长期占用及低效率。因此,本发明采用多队列架构并赋予其每一队列不同的功能,且于回传操作结果至主装置50时才占用系统资源,如此一来,可有效地克服主装置指令执行时所造成的问题。
图2绘示图1所示实体区域描述符存储模块115于一实施例中的实施细节。实体区域描述符存储模块115可包括实体区域描述符信息(Physical Region DescriptorInformation,PRD Information)缓存器210、第一队列Queue(A)以及第二队列Queue(B)。例如第一队列Queue(A)与第二队列Queue(B)可实施成循环(Cyclic)缓冲器,但本发明不限于此。
存储器控制器110的微处理器112接收多个主装置指令后,可于实体区域描述符信息缓存器210中分别存储涉及所述多个主装置指令的多组实体区域描述符信息PRDINF。所述多组实体区域描述符信息PRDINF可包括图2所示的各组实体区域描述符信息PRDINF(1)、PRDINF(2)、PRDINF(3)、PRDINF(4)…等。依据本实施例,实体区域描述符信息PRDINF是涉及这些主装置指令的参数,例如所述多组实体区域描述符信息PRDINF中的任一组(尤其是每一组)可包括:指令标识符(Command ID)、目标数据的逻辑区块地址(Logical BlockAddress,LBA)、主装置存储器的地址、数据读取量(Data-Transfer Amount)、指令型态等等。
另外,微处理器112依据闪存转换层(Flash Translation Layer,FTL)或是逻辑地址-物理地址对照表(Host Logical-to-Flash Physical Address Mapping Table;或H2FTable)可以得知操作非挥发性存储器组件所需的操作参数,例如,通道(Channel,CH)参数、芯片启用(Chip Enable,CE)等参数等,操作参数也可记录至实体区域描述符信息PRDINF。如果是写入操作时,存储实体区域描述符信息PRDINF更包括记录用户数据目前所暂存的地址,例如:用户数据在存储器控制器110内建的分时缓冲器(time sharing buffer,TSB)或缓冲存储器116中的地址。
在微处理器112的控制下,存储器控制器110可将分别对应于所述多组实体区域描述符信息PRDINF的多个中间(Intermediate)实体区域描述符存储进入第一队列Queue(A)。所述多个中间实体区域描述符中的任一者可包括所述多组实体区域描述符信息PRDINF中的一组的辨识符(Identifier,ID),或是所述多组实体区域描述符信息PRDINF中的所述组的地址,或是指向所述多组实体区域描述符信息PRDINF中的所述组的地址的指标(Pointer),但本发明不限于此。
在微处理器112的控制下,存储器控制器110可安排所述多个中间实体区域描述符队列(Queuing)在第一队列Queue(A)或第二队列Queue(B)中,犹如所述多组实体区域描述符信息PRDINF队列在第一队列Queue(A)或第二队列Queue(B)中。例如:存储器控制器110可保持所述多个中间实体区域描述符中的至少一部分(例如一部分或全部)队列在第一队列Queue(A)中。又例如:于需要时,存储器控制器110可将所述多个中间实体区域描述符中的一个或多个中间实体区域描述符从第一队列Queue(A)移动至第二队列Queue(B)。又例如:于需要时,存储器控制器110可将所述一个或多个中间实体区域描述符从第二队列Queue(B)移动至第一队列Queue(A)。
依据本实施例,存储于第一队列Queue(A)中的多个中间实体区域描述符可代表待处理的第一层排队中实体区域描述符(first layer of queued PRD),而存储于第二队列Queue(B)中的多个中间实体区域描述符可代表处理中的第二层排队中实体区域描述符(second layer of queued PRD);其中,处理中的第二层排队中实体区域描述符较佳取自于待处理的第一层排队中实体区域描述符,但本发明不限于此。
如图2所示,存储器控制器110可分别利用头部指标Head_ptr(A)与尾部指标Tail_ptr(A)来指出第一队列Queue(A)中的所述第一层排队中实体区域描述符的序列的头部与尾部。依据本实施例,存储器控制器110可从第一队列Queue(A)中的这个序列的尾部取出某一中间实体区域描述符、并将此中间实体区域描述符搬移至第二队列Queue(B)、执行此中间实体区域描述符、于执行完毕后将此中间实体区域描述符搬移至第一队列Queue(A)中的这个序列的头部,但本发明不限于此。
例如:在第一时刻,第一队列Queue(A)包括分别对应于四组实体区域描述符信息PRDINF(1)、PRDINF(2)、PRDINF(3)与PRDINF(4)的四个中间实体区域描述符F1、F2、F3与F4,其中中间实体区域描述符F4与F1可分别位于第一队列Queue(A)的头部与尾部,并且在中间实体区域描述符F1、F2、F3与F4依序加入第一队列Queue(A)的过程中,存储器控制器110可对应地将头部指标Head_ptr(A)指向最新加入的中间实体区域描述符,以更新第一队列Queue(A)的头部的位置。
在另一时刻,存储器控制器110可从第一队列Queue(A)的尾部取出中间实体区域描述符F1,且对应地将尾部指标Tail_ptr(A)指向中间实体区域描述符F2,这表示这个序列变得更短。
在又一时刻,存储器控制器110可将被执行完成的中间实体区域描述符F1加入到第一队列Queue(A),即第一队列Queue(A)中目前序列以外的下一个位置,诸如紧邻于中间实体区域描述符F4的位置,其中在加入中间实体区域描述符F1至第一队列Queue(A)之前,存储器控制器110已触发主装置50读取对应于中间实体区域描述符F1的数据。此状况下,对应于中间实体区域描述符F1的这一组实体区域描述符信息PRDINF(1)已变成无效(invalid)信息。当收到新的主装置指令,存储器控制器110可将所述无效信息取代为对应至新的主装置指令的新的一组实体区域描述符信息PRDINF’(1)、且对应地将头部指标Head_ptr(A)移到中间实体区域描述符F4右侧的位置以记录新的中间实体区域描述符F1’(其紧邻于中间实体区域描述符F4右侧),这表示这个序列变得更长。如此,随着这个序列变化,头部指标Head_ptr(A)与尾部指标Tail_ptr(A)可对应地变化。
相仿地,存储器控制器110可分别利用头部指标Head_ptr(B)与尾部指标Tail_ptr(B)来指出第二队列Queue(B)中的所述第二层排队中实体区域描述符的序列的头部与尾部。依据本实施例,存储器控制器110可将从第一队列Queue(A)所取得的某一中间实体区域描述符搬移到第二队列Queue(B)中的这个序列的头部以等待被处理,但本发明不限于此。例如:在第二时刻,这个序列包括分别对应于二组实体区域描述符信息PRDINF(1)与PRDINF(2)的二个中间实体区域描述符F1与F2,其中中间实体区域描述符F2与F1可分别位于这个序列的头部与尾部,并且在中间实体区域描述符F1与F2依序加入这个序列的过程中,存储器控制器110可对应地将头部指标Head_ptr(B)移到最新加入的中间实体区域描述符,以更新这个序列的头部的位置。
存储器控制器110依据中间实体区域描述符F1所对应的实体区域描述符信息PRDINF(1)操作非挥发性存储器120。当操作成功并产生操作结果后,存储器控制器110依据中间实体区域描述符F1所对应的实体区域描述符信息PRDINF(1)回传操作结果至主装置50,此时,存储器控制器110已将中间实体区域描述符F1处理完毕。存储器控制器110可将处理完成后的中间实体区域描述符F1从第二队列Queue(B)搬移至第一队列Queue(A),且对应地将尾部指标Tail_ptr(B)指向中间实体区域描述符F2。假设存储器控制器110接着将中间实体区域描述符F2处理完毕。存储器控制器110可将被处理后的中间实体区域描述符F2从第二队列Queue(B)搬移至第一队列Queue(A)、且将尾部指标Tail_ptr(B)指向第二队列Queue(B)中的下一个中间实体区域描述符(诸如刚加入的中间实体区域描述符F3)。如此,随着这个序列变化,头部指标Head_ptr(B)与尾部指标Tail_ptr(B)可对应地变化。
在另一实施方式中,存储器控制器110依据中间实体区域描述符所对应的实体区域描述符信息PRDINF回传操作结果至主装置50后,直接将中间实体区域描述符自第二队列Queue(B)中移除,而不再将中间实体区域描述符搬移到第一队列Queue(A),以增快主装置指令的执行速度。
依据本实施例,实体区域描述符信息缓存器210的存储容量可足以存储M组实体区域描述符信息,第一队列Queue(A)的存储容量可足以存储MA个中间实体区域描述符,且第二队列Queue(B)的存储容量可足以存储MB个中间实体区域描述符,其中符号「M」、「MA」与「MB」中的任一者可代表大于一的正整数。例如:M=64,MA=64,且MB=256;但本发明不限于此。
III.动态资源管理
存储器控制器110可以队列多个主装置指令,并依序执行主装置指令,最后,回传操作结果至主装置50。如果多个连续主装置指令都操作同一非挥发性存储器组件,而非均匀地操作每一非挥发性存储器组件,这将造成系统效能低落。本发明采用动态资源管理来决定主装置指令的执行顺序,通过延迟或调整主装置指令的执行,可有效地提升主装置指令执行的效能。
图3为依据本发明一实施例的一种用来于一记忆装置中进行动态资源管理的方法300的流程图,其中方法300可应用于记忆装置100,且可应用于所述控制器诸如存储器控制器110。例如:在所述处理电路诸如微处理器112的控制下,存储器控制器110可进行方法300的运作。
于步骤S310中,存储器控制器110可接收多个主装置指令。
于步骤S312中,存储器控制器110可存储对应至多个主装置指令的多组实体区域描述符信息PRDINF(诸如PRDINF(1)、PRDINF(2)、PRDINF(3)、PRDINF(4)…等)。例如:存储器控制器110可于实体区域描述符信息缓存器210中存储涉及多个主装置指令的多组实体区域描述符信息PRDINF。
于步骤S314中,存储器控制器110将对应至多组实体区域描述符信息PRDINF的多个中间实体区域描述符存储进入第一队列Queue(A)。
于步骤S316中,存储器控制器110将第一队列Queue(A)中的部分中间实体区域描述符搬移到第二队列Queue(B)。
于步骤S318中,存储器控制器110检查第二队列Queue(B)的中间实体区域描述符中欲操作同一非挥发性存储器组件者的数量是否达到一预定数量门坎值。由中间实体区域描述符、或中间实体区域描述符所对应至实体区域描述符信息PRDINF中的各组详细实体区域描述符信息可以得知欲读取的非挥发性存储器组件为何。以非挥发性存储器组件122-1为例,存储器控制器110可以判断在第二队列Queue(B)当中欲操作非挥发性存储器组件122-1的中间实体区域描述符的数量是否达到预定数量门坎值(例如3)。达到预定数量门坎值表示存储器控制器110将频繁地操作非挥发性存储器组件122-1,而频繁地操作同一非挥发性存储器组件而非均匀地操作每一非挥发性存储器组件将导致系统效能低落。当步骤S318的判断结果为真时,进入步骤S320;否则,进入步骤S322。
于步骤S320中,存储器控制器110调整第二队列Queue(B)的中间实体区域描述符的顺序,接着进入步骤S322。存储器控制器110将至少一排队中实体区域描述符诸如超过所述预定数量门坎值的中间实体区域描述符搬移至第二队列Queue(B)的尾部,即第二层排队中实体区域描述符的序列的尾部,以推迟(postpone)所述至少一中间实体区域描述符的执行(诸如其至少一存取运作),但本发明不限于此。在另一实施例中,存储器控制器110可依预设间隔重新排列第二队列Queue(B)的中间实体区域描述符,例如,每4个中间实体区域描述符中仅有一个中间实体区域描述符与非挥发性存储器组件122-1的操作有关。在另一实施例中,存储器控制器110可于任两个相邻且与非挥发性存储器组件122-1的操作有关的中间实体区域描述符之间插入另一个与非挥发性存储器组件122-1的操作无关的中间实体区域描述符。通过调整第二队列Queue(B)的多个中间实体区域描述符的顺序,使每一非挥发性存储器组件可被均匀地操作,以达到提升系统效能的目标。
于步骤S322中,存储器控制器110依序依据第二队列Queue(B)的中间实体区域描述符所对应的多组实体区域描述符信息,诸如实体区域描述符信息PRDINF的至少一部分(例如一部分或全部),操作非挥发性存储器120以取得多个操作结果。基于方法300的工作流程,存储器控制器110依据第二队列Queue(B)的中间实体区域描述符所对应的多组实体区域描述符信息PRDINF依序操作非挥发性存储器组件122-1、122-2、…与122-N以取得操作结果,例如:取得目标数据,并可将操作结果存储于分时缓冲器(TSB)或缓冲存储器116。
于步骤S324中,存储器控制器110输出多个操作结果至主装置50。存储器控制器110可依据实体区域描述符信息PRDINF的所述至少一部分(例如一部分或全部),将操作结果自分时缓冲器或缓冲存储器116输出至主装置50,例如,通知主装置50某一(些)主装置指令已执行完毕或触发主装置50读取存储器控制器110所备妥的目标数据,但本发明不限于此。依据某些实施例,步骤S322的运作和步骤S324的运作可同时或交替地进行。
于步骤S326中,存储器控制器110可将中间实体区域描述符从第二队列Queue(B)搬移至第一队列Queue(A)。
于步骤S328中,存储器控制器110可检查第一队列Queue(A)中是否有尚未被搬移的任何中间实体区域描述符,诸如未曾被搬移到第二队列Queue(B)的任何中间实体区域描述符。当第一队列Queue(A)中有尚未被搬移的任何中间实体区域描述符,进入步骤S316;否则,进入步骤S330。
于步骤S330中,存储器控制器110可检查第二队列Queue(B)中是否有尚未被处理的任何中间实体区域描述符,诸如未曾执行对应的存取运作的任何中间实体区域描述符。当第二队列Queue(B)中有尚未被处理的任何中间实体区域描述符,进入步骤S318以执行从S318开始的对应于此中间实体区域描述符的相关运作(诸如存取运作);否则,方法300的工作流程结束,但本发明并不限于此(例如:工作流程结束可改成进入步骤S310)。
依据本实施例,针对步骤S316所述的所述部分中间实体区域描述符中的任一中间实体区域描述符,在所述中间实体区域描述符从第一队列Queue(A)被搬移至第二队列Queue(B)之前,所述中间实体区域描述符是所述第一层排队中实体区域描述符的其中的一。当所述中间实体区域描述符从第一队列Queue(A)被搬移至第二队列Queue(B)之后,所述中间实体区域描述符从所述第一层排队中实体区域描述符中被移除。例如,在所述中间实体区域描述符从第一队列Queue(A)被搬移之前,所述中间实体区域描述符可位于所述第一层排队中实体区域描述符的序列的尾部。当所述中间实体区域描述符从第一队列Queue(A)被搬移时,存储器控制器110可移动尾部指标Tail_ptr(A)以指出这个序列的尾部的最新位置。另外,在步骤S316所述的所述部分中间实体区域描述符中的所述中间实体区域描述符从第一队列Queue(A)被搬移至第二队列Queue(B)之前,所述中间实体区域描述符尚未成为所述第二层排队中实体区域描述符的其中的一。当所述中间实体区域描述符从第一队列Queue(A)被搬移至第二队列Queue(B)之后,所述中间实体区域描述符成为所述第二层排队中实体区域描述符的其中的一。
依据某些实施例,涉及步骤S324的输出操作结果,在主装置50读取某一中间实体区域描述符的操作结果之后,对应于所述中间实体区域描述符的那一组实体区域描述符信息可变成无效的(invalid)实体区域描述符信息,但本发明不限于此。
依据某些实施例,所述中间实体区域描述符也可称为韧体实体区域描述符(firmware PRD),但本发明不限于此。
图4绘示图3所示方法300于一实施例中之后指派(post-assign)控制方案。存储器控制器110可还包括硬件实体区域描述符存储模块HWPRD,其属于存储器控制器110的硬件资源、且可供主装置50直接存取,其中硬件实体区域描述符存储模块HWPRD的容量足以存储MH个硬件实体区域描述符,且符号「MH」可代表大于一的正整数,诸如64;但本发明不限于此。另外,存储器控制器110可基于方法300进行某些运作。例如,步骤S312中可存储分别对应至八个主装置指令的八组实体区域描述符信息PRDINF,且存储器控制器110已存储分别对应于这八个主装置指令的八个中间实体区域描述符F1、F2、F3、F4、F5、F6、F7与F8至实体区域描述符存储模块115中的第一队列Queue(A)。在分别对应于四个中间实体区域描述符F1、F2、F3与F5的存取操作之后,中间实体区域描述符F1、F2、F3与F5已经从第二队列Queue(B)被释放至第一队列Queue(A)且对应的操作结果已经备妥于分时缓冲器中,并且中间实体区域描述符F4被搬移到第二层排队中实体区域描述符的序列的尾部以推迟涉及中间实体区域描述符F4的一存取操作。存储器控制器110可触发主装置50自行读取操作结果(例如将中间实体区域描述符F1、F2、F3与F5分别映像到硬件实体区域描述符存储模块HWPRD中的硬件实体区域描述符H1、H2、H3与H4),同时避免相关技术的问题。尤其是,在涉及中间实体区域描述符F4的存取操作尚未完成以前,存储器控制器110不自硬件实体区域描述符存储模块HWPRD占用任何资源,如此一来,可以避免硬件实体区域描述符存储模块HWPRD被占用的问题。因此,在硬件实体区域描述符存储模块HWPRD的容量有限的状况下,存储器控制器110可在没有副作用或较不可能带来副作用的状况下达到记忆装置100的优化(optimal)效能。
图5绘示图3所示方法300于一实施例中的多队列(multi-queue)控制方案。存储器控制器110可基于方法300进行某些运作。例如,存储器控制器110存储分别对应至十一个主装置指令的十一组实体区域描述符信息PRDINF,且存储分别对应于这十一个主装置指令的十一个中间实体区域描述符F1、F2、F3、F4、F5、F6、F7、F8、F9、F10与F11至第一队列Queue(A)。在第二队列Queue(B)中分别对应于中间实体区域描述符F1、F2、F3、F4、F7与F9的存取操作成功之后,中间实体区域描述符F1、F2、F3、F4、F7与F9已经从第二队列Queue(B)被搬移至第一队列Queue(A)且操作结果已经被存储至分时缓冲器中,其中中间实体区域描述符F5、F6、F8、F10与F11可停留在第二队列Queue(B)排队且等待被处理,而不会妨碍分别对应于中间实体区域描述符F1、F2、F3、F4、F7与F9的存取操作。因此,藉助于多队列控制,存储器控制器110可进行动态资源管理,以在没有副作用或较不可能带来副作用的状况下达到记忆装置100的优化效能。
图6绘示图3所示方法300于一实施例中的分时缓冲器资源管理方案。存储器控制器110可检查(第二队列Queue(B)中的)第二层排队中实体区域描述符当中用来存取同一非挥发性存储器组件(诸如非挥发性存储器组件122-1、122-2、…与122-N中的某一者)的排队中实体区域描述符的数量是否达到所述预定数量门坎值,诸如3。例如,所述预定数量门坎值可等于3,但本发明并不以此为限。假设在中间实体区域描述符F1、F2、F3、F4、F5、F6、F7、F8、F9、F10与F11当中,只有中间实体区域描述符F4、F5、F6与F7是用来存取同一非挥发性存储器组件。此状况下,存储器控制器110可将中间实体区域描述符F7推到所述第二层排队中实体区域描述符的序列的尾部,以推迟对应于中间实体区域描述符F7的存取运作,藉此重分配所述分时缓冲器的硬件资源。因此,存储器控制器110可因应所述分时缓冲器的循序运作特性来妥善地管理所述分时缓冲器的硬件资源,以在没有副作用或较不可能带来副作用的状况下达到记忆装置100的优化效能。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (20)

1.一种用来于一记忆装置中进行动态资源管理的方法,其特征在于,所述方法是应用于所述记忆装置,所述记忆装置包括一控制器以及一非挥发性存储器,所述非挥发性存储器包括多个非挥发性存储器组件,所述方法包括有:
分别存储涉及多个主装置指令的多组实体区域描述符信息,且将分别对应于所述多组实体区域描述符信息的多个中间实体区域描述符存储进入一第一队列,其中所述多个主装置指令是接收自所述记忆装置以外,所述多组实体区域描述符信息是涉及所述多个主装置指令的参数以容许所述控制器通过所述动态资源管理来控制分别对应于所述多个主装置指令的操作,且所述多个中间实体区域描述符中的任一者包括所述多组实体区域描述符信息中的一组的辨识符以容许所述多个中间实体区域描述符分别代表所述多组实体区域描述符信息;
从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入一第二队列;
依据所述第二队列中的所述中间实体区域描述符,传送一指令至所述非挥发性存储器,以存取所述多个非挥发性存储器组件的至少一非挥发性存储器组件中的数据;以及
当存取所述数据的运作成功,将所述中间实体区域描述符从所述第二队列释放至所述第一队列。
2.如权利要求1所述的方法,其特征在于,存储于所述第一队列中的多个实体区域描述符代表待处理的一第一层排队中实体区域描述符;以及存储于所述第二队列中的多个实体区域描述符代表处理中的一第二层排队中实体区域描述符。
3.如权利要求2所述的方法,其还包括:
分别利用一第一指标与一第二指标来指出所述第一层排队中实体区域描述符的序列的头部与尾部。
4.如权利要求2所述的方法,其特征在于,在所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之前,所述中间实体区域描述符是所述第一层排队中实体区域描述符的其中的一;以及当所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之后,所述中间实体区域描述符从所述第一层排队中实体区域描述符中被移除。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
分别利用一第一指标与一第二指标来指出所述第一层排队中实体区域描述符的序列的头部与尾部,其中在所述中间实体区域描述符从所述第一队列被搬移之前,所述中间实体区域描述符位于所述序列的所述尾部;以及
当所述中间实体区域描述符从所述第一队列被搬移时,移动所述第二指标以指出所述序列的所述尾部的一最新位置。
6.如权利要求2所述的方法,其特征在于,所述方法还包括:
分别利用一第一指标与一第二指标来指出所述第二层排队中实体区域描述符的序列的头部与尾部。
7.如权利要求2所述的方法,其特征在于,在所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之前,所述中间实体区域描述符尚未成为所述第二层排队中实体区域描述符的其中的一;以及当所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之后,所述中间实体区域描述符成为所述第二层排队中实体区域描述符的其中的一。
8.如权利要求2所述的方法,其特征在于,所述方法还包括:
检查所述第二层排队中实体区域描述符当中用来存取所述多个非挥发性存储器组件中的同一非挥发性存储器组件的排队中实体区域描述符的数量是否达到一预定数量门坎值;以及
当用来存取所述同一非挥发性存储器组件的所述排队中实体区域描述符的所述数量达到所述预定数量门坎值时,将所述排队中实体区域描述符中的至少一排队中实体区域描述符搬移至所述第二层排队中实体区域描述符的序列的尾部,以推迟所述至少一排队中实体区域描述符的至少一存取运作。
9.如权利要求2所述的方法,其特征在于,所述多个主装置指令是接收自位于所述记忆装置以外的一主装置;以及所述方法还包括:
触发所述主装置读取所述数据,其中在所述主装置读取所述数据之后,对应于所述中间实体区域描述符的一组实体区域描述符信息变成无效信息。
10.如权利要求1所述的方法,其特征在于,所述多组实体区域描述符信息中的任一组实体区域描述符信息包括一指令标识符、目标数据的一逻辑区块地址、一数据读取量以及一指令型态。
11.一种记忆装置,其特征在于,包括有:
一非挥发性存储器,用来存储信息,其中所述非挥发性存储器包括多个非挥发性存储器组件;以及
一控制器,耦接至所述非挥发性存储器,用来控制所述记忆装置的运作,其中所述控制器包括:
一多队列型实体区域描述符存储模块,用来存储至少一实体区域描述符,其中所述多队列型实体区域描述符存储模块包括:
一实体区域描述符信息缓存器;
一第一队列;以及
一第二队列;以及
一处理电路,用来依据来自一主装置的多个主装置指令控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器,其中:
所述控制器于所述实体区域描述符信息缓存器中分别存储涉及所述多个主装置指令的多组实体区域描述符信息,且将分别对应于所述多组实体区域描述符信息的多个中间实体区域描述符存储进入所述第一队列,其中所述多组实体区域描述符信息是涉及所述多个主装置指令的参数以容许所述控制器通过动态资源管理来控制分别对应于所述多个主装置指令的操作,且所述多个中间实体区域描述符中的任一者包括所述多组实体区域描述符信息中的一组的辨识符以容许所述多个中间实体区域描述符分别代表所述多组实体区域描述符信息;
所述控制器从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入所述第二队列;
依据所述第二队列中的所述中间实体区域描述符,所述控制器传送一指令至所述非挥发性存储器,以存取所述多个非挥发性存储器组件的至少一非挥发性存储器组件中的数据;以及
当存取所述数据的运作成功,所述控制器将所述中间实体区域描述符从所述第二队列释放至所述第一队列。
12.如权利要求11所述的记忆装置,其特征在于,存储于所述第一队列中的多个实体区域描述符代表待处理的一第一层排队中实体区域描述符;以及存储于所述第二队列中的多个实体区域描述符代表处理中的一第二层排队中实体区域描述符。
13.如权利要求12所述的记忆装置,其特征在于,所述控制器分别利用一第一指标与一第二指标来指出所述第一层排队中实体区域描述符的序列的头部与尾部。
14.如权利要求12所述的记忆装置,其特征在于,在所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之前,所述中间实体区域描述符是所述第一层排队中实体区域描述符的其中的一;以及当所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之后,所述中间实体区域描述符从所述第一层排队中实体区域描述符中被移除。
15.如权利要求14所述的记忆装置,其特征在于,所述控制器分别利用一第一指标与一第二指标来指出所述第一层排队中实体区域描述符的序列的头部与尾部,其中在所述中间实体区域描述符从所述第一队列被搬移之前,所述中间实体区域描述符位于所述序列的所述尾部;以及当所述中间实体区域描述符从所述第一队列被搬移时,所述控制器移动所述第二指标以指出所述序列的所述尾部的一最新位置。
16.一种记忆装置的控制器,其特征在于,所述记忆装置包括所述控制器与一非挥发性存储器,所述非挥发性存储器包括多个非挥发性存储器组件,所述控制器包括有:
一多队列型实体区域描述符存储模块,用来存储至少一实体区域描述符,其中所述多队列型实体区域描述符存储模块包括:
一实体区域描述符信息缓存器;
一第一队列;以及
一第二队列;以及
一处理电路,用来依据来自一主装置的多个主装置指令控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器,其中:
所述控制器于所述实体区域描述符信息缓存器中分别存储涉及所述多个主装置指令的多组实体区域描述符信息,且将分别对应于所述多组实体区域描述符信息的多个中间实体区域描述符存储进入所述第一队列,其中所述多组实体区域描述符信息是涉及所述多个主装置指令的参数以容许所述控制器通过动态资源管理来控制分别对应于所述多个主装置指令的操作,且所述多个中间实体区域描述符中的任一者包括所述多组实体区域描述符信息中的一组的辨识符以容许所述多个中间实体区域描述符分别代表所述多组实体区域描述符信息;
所述控制器从所述第一队列取得所述多个中间实体区域描述符中的一中间实体区域描述符,且将所述中间实体区域描述符存储进入所述第二队列;
依据所述第二队列中的所述中间实体区域描述符,所述控制器传送一指令至所述非挥发性存储器,以存取所述多个非挥发性存储器组件的至少一非挥发性存储器组件中的数据;以及
当存取所述数据的运作成功,所述控制器将所述中间实体区域描述符从所述第二队列释放至所述第一队列。
17.如权利要求16所述的控制器,其特征在于,存储于所述第一队列中的多个实体区域描述符代表待处理的一第一层排队中实体区域描述符;以及存储于所述第二队列中的多个实体区域描述符代表处理中的一第二层排队中实体区域描述符。
18.如权利要求17所述的控制器,其特征在于,所述控制器分别利用一第一指标与一第二指标来指出所述第一层排队中实体区域描述符的序列的头部与尾部。
19.如权利要求17所述的控制器,其特征在于,在所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之前,所述中间实体区域描述符是所述第一层排队中实体区域描述符的其中的一;以及当所述中间实体区域描述符从所述第一队列被搬移至所述第二队列中之后,所述中间实体区域描述符从所述第一层排队中实体区域描述符中被移除。
20.如权利要求19所述的控制器,其特征在于,所述控制器分别利用一第一指标与一第二指标来指出所述第一层排队中实体区域描述符的序列的头部与尾部,其中在所述中间实体区域描述符从所述第一队列被搬移之前,所述中间实体区域描述符位于所述序列的所述尾部;以及当所述中间实体区域描述符从所述第一队列被搬移时,所述控制器移动所述第二指标以指出所述序列的所述尾部的一最新位置。
CN201710941733.9A 2017-08-08 2017-10-11 进行动态资源管理的方法、记忆装置及记忆装置的控制器 Active CN109388593B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111488799.XA CN114153764B (zh) 2017-08-08 2017-10-11 进行动态资源管理的方法、记忆装置及记忆装置的控制器

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW106126636A TWI636363B (zh) 2017-08-08 2017-08-08 用來於一記憶裝置中進行動態資源管理之方法以及記憶裝置及其控制器
TW106126636 2017-08-08

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202111488799.XA Division CN114153764B (zh) 2017-08-08 2017-10-11 进行动态资源管理的方法、记忆装置及记忆装置的控制器

Publications (2)

Publication Number Publication Date
CN109388593A CN109388593A (zh) 2019-02-26
CN109388593B true CN109388593B (zh) 2021-12-28

Family

ID=64453161

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710941733.9A Active CN109388593B (zh) 2017-08-08 2017-10-11 进行动态资源管理的方法、记忆装置及记忆装置的控制器
CN202111488799.XA Active CN114153764B (zh) 2017-08-08 2017-10-11 进行动态资源管理的方法、记忆装置及记忆装置的控制器

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202111488799.XA Active CN114153764B (zh) 2017-08-08 2017-10-11 进行动态资源管理的方法、记忆装置及记忆装置的控制器

Country Status (3)

Country Link
US (1) US10310746B2 (zh)
CN (2) CN109388593B (zh)
TW (1) TWI636363B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112714092B (zh) * 2019-10-24 2022-03-18 珠海格力电器股份有限公司 一种注册登录方法、设备和计算机可读存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330623B1 (en) * 1999-01-08 2001-12-11 Vlsi Technology, Inc. System and method for maximizing DMA transfers of arbitrarily aligned data
US6697885B1 (en) * 1999-05-22 2004-02-24 Anthony E. B. Goodfellow Automated DMA engine for ATA control
US8930583B1 (en) * 2003-09-18 2015-01-06 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for controlling data transfer in a serial-ATA system
US20050235072A1 (en) * 2004-04-17 2005-10-20 Smith Wilfred A Data storage controller
CN101082852B (zh) * 2006-05-29 2012-07-18 联阳半导体股份有限公司 用于存储器的控制装置及控制方法
CN100452007C (zh) * 2007-06-13 2009-01-14 威盛电子股份有限公司 直接内存存取处理单元的实体区域描述元预取方法
TWI334541B (en) * 2007-06-22 2010-12-11 Via Tech Inc Prd (physical region descriptor) pre-fetch methods for dma (direct memory access) unit
US7962314B2 (en) * 2007-12-18 2011-06-14 Global Foundries Inc. Mechanism for profiling program software running on a processor
TW200947216A (en) * 2008-05-08 2009-11-16 Accusys Inc Job-based structure for processing and transmitting data
US9128699B2 (en) * 2008-12-22 2015-09-08 Intel Corporation Method and system for queuing transfers of multiple non-contiguous address ranges with a single command
CN101498994B (zh) * 2009-02-16 2011-04-20 华中科技大学 一种固态硬盘控制器
JP2012234363A (ja) * 2011-04-28 2012-11-29 Toshiba Corp メモリシステム
TWI447580B (zh) * 2012-04-03 2014-08-01 Phison Electronics Corp 管理記憶體空間的方法、記憶體控制器與記憶體儲存裝置
CN107741913B (zh) * 2013-08-05 2021-09-07 慧荣科技股份有限公司 用来管理一记忆装置的方法、记忆装置与控制器
US9612970B2 (en) * 2014-07-17 2017-04-04 Qualcomm Incorporated Method and apparatus for flexible cache partitioning by sets and ways into component caches
US9645744B2 (en) * 2014-07-22 2017-05-09 Sandisk Technologies Llc Suspending and resuming non-volatile memory operations
US9588701B2 (en) * 2014-09-09 2017-03-07 Sandisk Technologies Llc Multi-stage programming at a storage device using multiple instructions from a host
CN105988954B (zh) * 2015-03-05 2018-09-11 光宝科技股份有限公司 区域描述元管理方法及其电子装置
US20160299844A1 (en) * 2015-04-08 2016-10-13 Sandisk Enterprise Ip Llc Mapping Logical Groups of Data to Physical Locations In Memory
TWI566253B (zh) * 2015-09-02 2017-01-11 慧榮科技股份有限公司 用來管理一記憶裝置之方法以及記憶裝置與控制器
TWI581092B (zh) * 2016-03-30 2017-05-01 威盛電子股份有限公司 記憶體裝置及其節能控制方法

Also Published As

Publication number Publication date
CN109388593A (zh) 2019-02-26
US20190050154A1 (en) 2019-02-14
TWI636363B (zh) 2018-09-21
US10310746B2 (en) 2019-06-04
CN114153764B (zh) 2023-08-29
CN114153764A (zh) 2022-03-08
TW201911056A (zh) 2019-03-16

Similar Documents

Publication Publication Date Title
US20170322897A1 (en) Systems and methods for processing a submission queue
US9176865B2 (en) Data writing method, memory controller, and memory storage device
US10664167B2 (en) Data transmitting method, memory storage device and memory control circuit unit
US9304900B2 (en) Data reading method, memory controller, and memory storage device
US11294586B2 (en) Method for performing read acceleration, associated data storage device and controller thereof
EP3070715A1 (en) Solid state disk and data movement method
US9965194B2 (en) Data writing method, memory control circuit unit and memory storage apparatus which performs data arrangement operation according to usage frequency of physical erasing unit of memory storage apparatus
TWI698749B (zh) 資料儲存裝置與資料處理方法
CN102723099A (zh) 包括用于处理多命令描述符块以便利用并发性的主机接口的闪存装置
US11334493B2 (en) Memory system and operating method thereof
US8775760B2 (en) Modifying a host interface setting for a non-volatile memory module
US10776042B2 (en) Methods for garbage collection and apparatuses using the same
US20120210045A1 (en) Data access method, and memory controller and memory storage apparatus using the same
CN114063893A (zh) 数据储存装置与数据处理方法
US10055356B2 (en) Memory device and method for controlling memory device
US10776280B1 (en) Data storage device and method for updating logical-to-physical mapping table
US9804983B2 (en) Controlling method, connector, and memory storage device
US9733832B2 (en) Buffer memory accessing method, memory controller and memory storage device
CN109388593B (zh) 进行动态资源管理的方法、记忆装置及记忆装置的控制器
CN114067867A (zh) 于记忆装置中进行编程管理的方法、记忆装置及控制器
US9710374B2 (en) Data writing method, memory controller and memory storage device
US9152348B2 (en) Data transmitting method, memory controller and data transmitting system
US20150254011A1 (en) Memory system, memory controller and control method of non-volatile memory
CN112463018A (zh) 指令传送方法、存储器控制电路单元及存储器存储装置
US11144244B2 (en) Command transmitting method with temporary storing commands by memory interfaces for rewritable non-volatile memory modules, memory control circuit unit and memory storage device

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