首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】存储控制器及其操作方法和包括该存储控制器的存储设备_三星电子株式会社_201811530971.1 

申请/专利权人:三星电子株式会社

申请日:2018-12-14

公开(公告)日:2024-06-18

公开(公告)号:CN110059034B

主分类号:G06F13/16

分类号:G06F13/16;G06F1/324

优先权:["20171218 KR 10-2017-0174347"]

专利状态码:有效-授权

法律状态:2024.06.18#授权;2020.11.06#实质审查的生效;2019.07.26#公开

摘要:存储控制器与包括提交队列和完成队列的外部设备通信。存储控制器的操作方法包括:基于第一时钟从外部设备接收与命令相关联的通知,基于第二时钟从提交队列获取命令,基于第三时钟执行与所获取的命令相对应的操作,基于第四时钟将完成信息写入完成队列,以及基于第五时钟向外部设备发送中断信号。第一时钟至第五时钟中的每一个取决于每个操作阶段选择性地被激活。

主权项:1.一种被配置为与包括提交队列和完成队列的外部设备进行通信的存储控制器的操作方法,所述方法包括:基于第一时钟,在第一操作阶段从外部设备接收与命令相关联的通知;基于第二时钟,在第二操作阶段从提交队列获取命令;基于第三时钟,在第三操作阶段执行与所获取的命令相对应的操作;基于第四时钟,在第四操作阶段将完成信息写入完成队列;以及基于第五时钟,在第五操作阶段向所述外部设备发送中断信号,其中,取决于要执行的操作阶段,选择性地激活第一时钟至第五时钟中的与要执行的操作阶段对应的时钟。

全文数据:存储控制器及其操作方法和包括该存储控制器的存储设备相关申请的交叉引用本申请要求于2017年12月18日向韩国知识产权局提交的韩国专利申请第10-2017-0174347号的优先权,其公开内容通过引用整体被并入本文。技术领域本文公开的本公开的实施例涉及半导体存储器。更具体地,本公开涉及用于半导体存储器的存储控制器,和该存储控制器的操作方法。背景技术半导体存储器设备分为易失性存储器设备和非易失性存储器设备。易失性存储器设备在断电时丢失存储在其中的数据,并且包括静态随机存取存储器StaticRandomAccessMemory,SRAM、动态RAMDynamicRAM,DRAM、同步DRAMSynchronousDRAM,SDRAM等。非易失性存储器设备即使在断电时也保持存储在其中的数据,并且包括只读存储器ReadOnlyMemory,ROM、可编程ROMProgrammableROM,PROM、电可编程ROMElectricallyProgrammableROM,EPROM、电可擦除可编程ROMElectricallyErasableAndProgrammableROM,EEPROM、闪存设备、相变RAMPhase-ChangeRAM,PRAM、磁RAMMagneticRAM,MRAM、电阻RAMResistiveRAM,RRAM、铁电RAMFerroelectricRAM,FRAM等。闪存被广泛用作大容量存储介质。基于闪存的大容量存储介质可以包括用于控制闪存的控制设备。通常,控制设备基于时钟信号操作。例如,控制设备可以包括基于输入时钟操作的各种知识产权IntellectualProperty,IP块。如本文所使用的术语,知识产权块可以是逻辑单元、单元或集成电路,所述逻辑单元、单元或集成电路作为逻辑单元、单元或集成电路的独特单元可以是可重复使用的并且可以受到单方的知识产权的影响。提供给各种知识产权块的时钟是功耗的主要因素。为此,正在开发各种用于降低与时钟有关的功耗的技术。发明内容本公开的实施例提供了一种存储控制器,包括该存储控制器的存储设备和存储控制器的操作方法,所述存储控制器通过基于取决于知识产权块的操作状态来选择性地控制要提供给每个知识产权块的时钟来降低功耗。根据示例性实施例,存储控制器与包括提交队列和完成队列的外部设备通信。存储控制器的操作方法包括操作阶段,所述操作阶段包括:基于第一时钟接收与来自外部设备的命令相关联的通知;基于第二时钟从提交队列获取命令;基于第三时钟执行与所获取的命令相对应的操作;基于第四时钟将完成信息写入完成队列;基于第五时钟向外部设备发送中断信号。第一时钟到第五时钟中的每一个取决于方法的每个操作阶段选择性地被激活。根据示例性实施例,存储控制器包括:物理层,其与外部设备通信;NVMe控制单元,其通过系统总线与物理层连接;以及时钟管理单元,其取决于NVMe控制单元的操作,选择性地激活或停用第一时钟至第五时钟中的每一个。NVMe控制单元包括:控制寄存器块,其基于第一时钟从外部设备接收信息;命令获取块,其基于第二时钟从外部设备获取命令;直接存储器存取DirectMemoryAccess,DMA引擎,其基于第三时钟与外部设备执行DMA操作;完成块,其基于第四时钟将完成信息写入外部设备;以及中断块,其基于第五时钟向外部设备发送中断信号。根据示例性实施例,存储设备包括多个非易失性存储器设备,和控制多个非易失性存储器设备的存储控制器。存储控制器包括NVMe控制单元和时钟管理单元。基于多个时钟,NVMe控制单元从外部设备获取命令,运行与所获取的命令相对应的操作,向外部设备发送关于操作的完成信息,以及向外部设备发送中断信号。时钟管理单元取决于NVMe控制单元的操作状态选择性地激活或停用的多个时钟中的每一个。附图说明通过参考附图详细描述本公开的示例性实施例,本公开的上述和其他目的以及特征将变得显而易见。图1是示出根据本公开的实施例的存储系统的框图。图2是示出图1的存储系统的存储控制器的框图。图3是示出图1的存储系统的操作的流程图。图4是示出图2的存储控制器的NVMe控制单元和时钟管理单元的框图。图5是示出图4的时钟管理单元的操作的流程图。图6是示出根据图5的操作方法提供的第一时钟至第六时钟的时序图。图7是示出图1的存储系统的操作的流程图。图8是示出根据图7的操作的第一时钟至第六时钟的时序图。图9和图10是用于描述时钟管理单元检测主机开销的操作的视图。图11是示出时钟管理单元设置关于主机开销的信息的方法的流程图。图12是示出图1的存储系统的操作的流程图。图13是示出根据图12的操作方法的第一时钟至第六时钟的时序图。图14是用于描述时钟管理单元检测设备开销的操作的视图。图15是示出根据本公开的实施例的第一时钟至第六时钟的视图。图16A至图16C是示出根据本公开的存储系统的各种拓扑的框图。图17是示出应用本公开的固态驱动系统的框图。具体实施方式下面,可以详细描述本公开的实施例,并且清楚地达到本领域普通技术人员容易实施本公开的程度。下面,描述附图中所示的元素并执行特定功能或包括特定功能的诸如“块”、“单元”、“模块”、“驱动器”、“电路”等的术语可以由或以软件、硬件或其组合的形式实施。图1是示出根据本公开的实施例的存储系统10的框图。参考图1,存储系统10可以包括主机11和存储设备12。存储设备可以由单个、全面的、整体外壳限定,所述外壳包括如图1和其他附图中所显示并且如本文所描述的有形元件。主机11可以将数据存储在存储设备12中,或者可以读取存储在存储设备12中的数据。主机11可以通过第一端口PT1与存储设备12通信。在实施例中,第一端口PT1可以是基于PCIe外围组件互连高速协议的物理端口。然而,本公开不限于此。下面,为了简要描述本发明的一个或多个技术特征,假设主机11和存储设备12通过基于PCIe协议的物理端口诸如第一端口PT1和第二端口PT2相互通信。并且,假设存储设备12是基于NVMe接口操作的NVMe非易失性存储器高速设备。然而,本公开不限于此。主机11可以包括主机存储器缓冲器HMB。主机存储器缓冲器HMB可以包括提交队列SQ和完成队列CQ。提交队列SQ可以是诸如存储要提供给存储设备12的命令的专用存储装置的存储装置。完成队列CQ可以是诸如存储关于基于命令在存储设备12中完成的操作的完成信息的专用存储装置的存储装置。存储设备12可以包括存储控制器100和多个非易失性存储设备101至10i。如上所述,在实施例中,存储控制器100可以是基于NVMe接口操作的NVMe设备。也就是说,存储控制器100可以被配置为基于NVMe接口以预定义的方式与主机11通信。在本文的描述中,参考各种控制器例如,存储控制器100、单元例如,下面描述的NVMe控制单元110和块例如,知识产权块。任何这些控制器、单元和块可以由运行特定专用软件指令集例如软件模块的处理器实现。处理器运行指令以控制一个或多个控制器、一个或多个单元和或块的操作。多个控制器、单元和块可以由单个公共处理器和不同的专用软件指令集定义。本文所描述的控制器、单元或块的任何处理器都是有形的和非暂时性的。如本文所使用的,术语“非暂时性”不应该被解释为状态的永恒特性,而是应该被解释为将持续一段时间的状态的特性。术语“非暂时性”明确地否定了稍纵即逝的特性,诸如特定载波或信号的特性或在任何时间在任何地方仅暂时存在的其他形式。处理器是制品和或机器组件。处理器被配置为运行软件指令以便执行如本文的各种实施例中所描述的功能。处理器可以是通用处理器,或者可以是专用集成电路ApplicationSpecificIntegratedCircuit,ASIC的部分。处理器还可以是微处理器、微计算机、处理器芯片、控制器、微控制器、数字信号处理器DigitalSignalProcessor,DSP、状态机或可编程逻辑设备。处理器也可以是逻辑电路或包括分立栅极和或晶体管逻辑的其他类型的电路,所述逻辑电路包括诸如现场可编程门阵列FieldProgrammableGateArray,FPGA的可编程门阵列ProgrammableGateArray,PGA。处理器可以是中央处理单元CentralProcessingUnit,CPU、图形处理单元GraphicsProcessingUnit,GPU或两者。另外,本文所描述的任何处理器可包括多个处理器、并行处理器或两者。多个处理器可以包括在单个设备或多个设备中或耦合到单个设备或多个设备。可以从计算机可读介质读取指令集。此外,当指令由处理器运行时,指令能够用于执行如本文所描述的一个或多个方法和处理。在特定实施例中,指令可在运行期间完全或至少部分地驻留在主存储器、静态存储器内和或处理器内。在可替代实施例中,可以构造诸如专用集成电路ASIC的专用硬件实施方式、可编程逻辑阵列和其他硬件组件,以实施本文所描述的一个或多个控制器、一个或多个单元和或控制器中的一个或多个。本文所描述的一个或多个实施例可以使用两个或多个特定互连硬件模块或设备来实施功能,所述硬件模块或设备具有可以在模块之间和通过模块来进行通信传达的相关控制和数据信号。因此,本公开包含软件、固件和硬件实施方式。本申请中的任何内容都不应该被解释为仅用软件而不用诸如有形非暂时性处理器和或存储器的硬件来实施或可实施。存储控制器100可以用具有运行软件指令的处理器的电路或者电路和运行指令的处理器的组合来实施。非易失性存储器设备101至10i可以在存储控制器100的控制下操作。在实施例中,非易失性存储器设备101至10i中的每一个可以是NAND快闪存储器设备,但是本公开的非易失性存储器设备不限于此。存储控制器100可以包括NVMe控制单元110、时钟管理单元120和缓冲存储器130。NVMe控制单元110可以被配置为分析或解释通过第二端口PT2从主机11提供的各种信号,以及执行与分析或解释的结果相对应的操作。在实施例中,NVMe控制单元110可以包括用于执行上面描述的操作的各种功能块或知识产权IP块。如先前所描述的,控制器、单元和块包括功能块和知识产权块中的任何一个可以用具有运行指令的处理器的电路或者电路和运行指令的处理器的组合来实施。在实施例中,NVMe控制单元110的功能块或多个功能块可包括存储指令的存储器和运行指令的处理器。时钟管理单元120可以被配置为管理在存储控制器100中使用的各种时钟。例如,时钟管理单元120可以向NVMe控制单元110提供多个时钟。可以将多个时钟分别提供给NVMe控制单元110中包括的多个功能块。在实施例中,时钟管理单元120可以取决于NVMe控制单元110中包括的多个功能块中的每个功能块的操作状态来控制或管理要提供给每个功能块的时钟。控制可以包括基于确定或识别功能块的操作状态来肯定地affirmatively提供或不提供时钟。例如,NVMe控制单元110可以包括命令获取块,所述命令获取块被配置为从主机11的提交队列SQ获取命令。时钟管理单元120可以在命令获取块从提交队列SQ获取命令时向命令获取块提供时钟。在命令获取块完成命令获取操作之后,时钟管理单元120可以阻塞或停用提供给命令获取块的时钟。下面,将参考附图更全面地描述根据本公开的时钟管理单元120的操作。在实施例中,时钟管理单元120在图1中被示出为与NVMe控制单元110分离。然而,本公开的时钟管理单元不限于此。例如,时钟管理单元120可以被包括在NVMe控制单元110中。缓冲存储器130可以被配置为存储从主机11提供的写入数据或从多个非易失性存储设备101至10i提供的读取数据。在可替代实施例中,缓冲存储器130可以放置在存储控制器100外部。如上所描述的,根据本公开的存储控制器100可以取决于内部功能块的操作状态仅向正在执行相关操作的功能块提供时钟。换句话说,根据本公开的存储控制器100可以不向不执行操作的功能块即,当它们不正在执行操作时提供时钟。因此,由于阻止了不必要地提供时钟或者由于提供时钟的整个时间减少,因此减少了存储设备12的功耗。图2是示出图1的存储控制器100的框图。参考图1和图2,存储控制器100可以包括NVMe控制单元110、时钟管理单元120、缓冲存储器130、物理层140和系统总线150。如上所描述的,存储控制器100可以是基于NVMe接口操作的NVMe设备。也就是说,存储控制器100可以根据定义NVMe接口的NVM规范操作。然而,本公开的存储控制器不限于此。NVMe控制单元110可以被配置为处理通过系统总线150输入到物理层140的信号。例如,主机11可以被配置为通过第二端口PT2向物理层140提供信息,并且NVMe控制单元110可以被配置为分析或解释输入到物理层140的信息。NVMe控制单元110和物理层140可以通过系统总线150彼此通信。NVMe控制单元110可以包括控制寄存器块111、命令获取块112、主控制块113、DMA引擎块114直接存储器存取DMA引擎、完成块115和中断块116。控制寄存器块111可以被配置为包括能够由主机11设置的寄存器,或者被配置为处理用于识别由主机11设置的寄存器值的一个或一系列操作。例如,控制寄存器块111可以包括用于确定从主机11提供的信息的各种寄存器。主机11可以通过设置控制寄存器块111的寄存器值来向NVMe控制单元110通知各种信息。命令获取块112可以执行或处理用于获取存储在主机11的提交队列SQ中的命令的一个或一系列操作。例如,命令获取块112可以向主机11发送存储器读取请求,并且可以从主机11接收存储在提交队列SQ中的命令。换句话说,涉及NVMe控制单元110的命令获取块112的处理可以包括向外部设备发送存储器读取请求并从外部设备即,主机11接收存储在提交队列SQ中的命令。主控制块113可以控制NVMe控制单元110的整体操作,或者可以处理要在NVMe控制单元110中执行的一个或一系列操作。在实施例中,主控制块113可以管理或控制DMA引擎块114的DMA操作。DMA引擎块114可以处理与主机11交换数据的DMA操作。例如,DMA引擎块114可以处理从主机11接收写入数据或向主机11发送读取数据的DMA操作。完成块115可以处理向主机11的完成队列CQ写入指示操作完成的完成信息的一个或一系列操作。例如,当完成与从主机11获取的命令相关联的操作时,完成块115可以向主机11的完成队列CQ写入指示操作完成的完成信息。也就是说,完成块115可以被配置为向外部设备即,向主机11的完成队列CQ写入完成信息。中断块116可以处理向主机11提供中断信号的一个或一系列操作。例如,在完成块115将完成信息写入完成队列CQ之后,中断块116可以通过向主机11提供中断信号来通知主机11完成信息被写入完成队列CQ。在实施例中,可以以信令方式提供中断信号,例如基于引脚的中断、MSI消息信号中断、MSI-X等。如上所描述的,NVMe控制单元110中包括的功能块可以被配置为执行如本文所描述的一个或一系列操作。由功能块执行的一个或多个操作可以仅是NVMe控制单元110和存储控制器100执行的操作中的一些。NVMe控制单元110中包括的全部或部分功能块可以以软件、硬件或其组合的形式实施。时钟管理单元120可以向NVMe控制单元110提供第一时钟CLK1至第六时钟CLK6。在实施例中,第一时钟CLK1至第六时钟CLK6可以分别提供给NVMe控制单元110的功能块。在这种情况下,时钟管理单元120可以控制或管理第一时钟CLK1至第六时钟CLK6,使得取决于控制寄存器块111、命令获取块112、主控制块113、DMA引擎块114、完成块115、中断块116即,NVMe控制单元110的功能块中的每一个的操作状态而仅激活或提供相关时钟。将参考以下附图更全面地描述时钟管理单元120的配置和操作。缓冲存储器130可以存储从主机11提供的写入数据或从非易失性存储设备101至10i提供的读取数据。物理层140可以被配置为处理通过第二端口PT2从主机11接收的信号。在实施例中,物理层140可以是基于PCIe的物理层。系统总线150可以提供存储控制器100中包括的组件之间的通信信道。存储控制器100中包括的组件可以通过系统总线150彼此通信,或者可以通过系统总线150彼此交换信号或信息。在实施例中,系统总线150可以利用诸如AHB高级高性能总线、AXI高级可扩展接口、AMBA高级微控制器总线架构等的各种总线协议中的一个。图3是示出图1的存储系统10的操作的流程图。在实施例中,为了容易地描述本公开的一个或多个技术构思,将参考图3描述用于处理一个命令的存储系统10的操作方法。然而,图3中示出的操作方法是一般操作方法,并且本公开的一个或多个发明构思不限于此。参考图1至图3,在操作S110中,主机11可以将命令CMD写入提交队列SQ。例如,主机11可以向提交队列SQ写入用于将数据存储到存储设备12的写入命令、用于从存储设备12读取数据的读取命令、或者用于控制存储设备12的各种命令诸如刷新命令、擦除命令等。在操作S120中,主机11可以向存储控制器100提供门铃doorbell。例如,主机11可以通过信令方式通过对控制寄存器块111中包括的门铃寄存器设置新值来向存储控制器100通知新命令CMD被写入提交队列SQ。换句话说,与来自外部设备即主机11的命令相关联的通知可以是通过门铃信令从外部设备即,主机11接收的通知。在操作S130中,存储控制器100可以获取写入提交队列SQ的命令CMD。例如,存储控制器100可以响应于门铃,识别新命令CMD被存储在提交队列SQ中。响应于所识别的结果,存储控制器100中的NVMe控制单元110的命令获取块112可以获取被写入到提交队列SQ的命令CMD。在操作S140中,存储控制器100可以执行与所获取的命令CMD相对应的操作。例如,当所获取的命令CMD是写入命令时,存储控制器100可以从主机11接收写入数据,并且可以将接收的写入数据存储在缓冲存储器130或非易失性存储器设备101至10i中。可替代地,当所获取的命令CMD是读取命令时,存储控制器100可以将读取数据从非易失性存储器设备101到10i发送到主机11。在执行与所获取的命令CMD相对应的操作之后,在操作S150中,存储控制器100可以将完成信息写入完成队列CQ。例如,完成块115可以将指示完成与所获取的命令CMD相关联的操作的完成信息写入主机11的完成队列CQ。在操作S160中,存储控制器100可以向主机11发送中断信号。例如,存储控制器100的中断块116可以向主机11发送用于提供完成信息被写入完成队列CQ的通知的中断信号。在操作S170中,主机11可以向存储控制器100提供用于提供检查写入完成队列CQ的完成信息的通知的门铃。根据本公开的实施例的主机11和存储控制器100可以取决于上面描述的操作方法执行各种操作。在这种情况下,存储控制器100的时钟管理单元120可以控制多个时钟CLK1至CLK6,使得仅向在每个阶段中操作的功能块提供时钟。图4是示出图2的NVMe控制单元110和时钟管理单元120的框图。为了简要描述,省略了描述时钟管理单元120的操作的不必要的组件。参考图2至图4,NVMe控制单元110可以包括控制寄存器块111、命令获取块112、主控制块113、DMA引擎块114、完成块115和中断块116。参考图2描述了NVMe控制单元110和NVMe控制单元110的组件,因此,这里将不再重复其详细描述。时钟管理单元120可以包括第一AND门121至第六AND门126、时钟生成器127和使能信号生成器128。参考时钟CLK可以共同地施加到第一AND门121到第六AND门126,第一使能信号EN1到第六使能信号EN6可以分别施加到第一AND门121到第六AND门126。第一AND门121至第六AND门126可以响应于接收的信号分别输出第一时钟CLK1至第六时钟CLK6。例如,第一AND门121可以响应于参考时钟CLK和第一使能信号EN1输出第一时钟CLK1。当第一使能信号EN1被激活时例如,当第一使能信号EN1为逻辑高时,第一时钟CLK1可以以与参考时钟CLK相同的形式输出;当第一使能信号EN1被停用时例如,当第一使能信号EN1为逻辑低时,第一时钟CLK1可以被停用或者可以是逻辑低。也就是说,取决于第一使能信号EN1,可以激活或停用第一时钟CLK1。同样地,第二AND门122至第六AND门126可以响应于参考时钟CLK和第二使能信号EN2至第六使能信号EN6分别输出第二时钟CLK2和第六时钟CLK6。来自第一AND门121到第六AND门126的第一时钟CLK1至第六时钟CLK6可以分别提供给控制寄存器块111、命令获取块112、主控制块113、DMA引擎块114、完成块115、中断块116即,NVMe控制单元110的功能块。例如,第一时钟CLK1可以提供给控制寄存器块111,并且控制寄存器块111可以基于第一时钟CLK1操作。因此,第一时钟可以在NVMe控制单元110控制寄存器块111执行相应的操作时由时钟管理单元120激活。第二时钟CLK2可以提供给命令获取块112,并且命令获取块112可以基于第二时钟CLK2操作。因此,第二时钟可以在NVMe控制单元110命令获取块112执行相应的操作时由时钟管理单元120激活。第三时钟CLK3可以提供给主控制块113,并且主控制块113可以基于第三时钟CLK3操作。因此,第三时钟可以在NVMe控制单元110主控制块113执行相应的操作时由时钟管理单元120激活。第四时钟CLK4可以提供给DMA引擎块114,并且DMA引擎块114可以基于第四时钟CLK4操作。因此,第四时钟可以在NVMe控制单元110DMA引擎块114执行相应的操作时由时钟管理单元120激活。第五时钟CLK5可以提供给完成块115,并且完成块115可以基于第五时钟CLK5操作。因此,第五时钟可以在NVMe控制单元110完成块115执行相应的操作时由时钟管理单元120激活。第六时钟CLK6可以提供给中断块116,并且中断块116可以基于第六时钟CLK6操作。因此,第六时钟可以在NVMe控制单元110中断块116执行相应的操作时由时钟管理单元120激活。时钟生成器127可以生成参考时钟CLK。在实施例中,可以省略时钟生成器127,并且在这种情况下,可以从外部设备例如,单独的时钟生成器或主机11提供参考时钟CLK。使能信号生成器128可以根据控制寄存器块111、命令获取块112、主控制块113、DMA引擎块114、完成块115、中断块116即,NVMe控制单元110的功能块的操作状态生成第一使能信号EN1至第六使能信号EN6。例如,当由命令获取块112从提交队列SQ获取命令CMD时换句话说,当命令获取块112操作时,使能信号生成器128可以生成第二使能信号EN2,使得要被提供给命令获取块112的第二时钟CLK2被激活。同样地,当由完成块115将完成信息写入完成队列CQ时换句话说,当完成块115操作时,使能信号生成器128可以生成第五使能信号EN5,使得要被提供给完成块115的第五时钟CLK5被激活。在实施例中,使能信号生成器128可以检测通过系统总线150交换的信息,并且可以基于检测到的信息生成第一使能信号EN1至第六使能信号EN6。可替代地,使能信号生成器128可以取决于预定义的方式生成第一使能信号EN1至第六使能信号EN6。在实施例中,图4中示出的NVMe控制单元110和时钟管理单元120的配置是示例性的,并且与本公开的教导兼容的NVMe控制单元和时钟管理单元不限于此。例如,除了图4所示的功能块之外,NVMe控制单元110还可以包括任何其他功能块,并且时钟管理单元120可以被配置为取决于其他功能块的操作状态提供不同的时钟。图5是示出图4的时钟管理单元120的操作的流程图。参考图4和图5,在操作S121中,时钟管理单元120可以向控制寄存器块111提供第一时钟CLK1。例如,时钟管理单元120可以通过激活第一使能信号EN1向控制寄存器块111提供第一时钟CLK1。在操作S122中,时钟管理单元120可以确定是否更新了提交队列SQ。当未更新提交队列SQ时即,当不存在来自主机11的单独的门铃信令时,时钟管理单元120继续执行操作S121。也就是说,在未更新提交队列SQ的情况下即,当不存在来自主机11的单独的门铃信令时,时钟管理单元120可以继续向控制寄存器块111提供第一时钟CLK1。在实施例中,操作S121和操作S122可以被包括在图3的操作S120中或与图3的操作S120相对应。当更新提交队列SQ时,在操作S131中,时钟管理单元120可以向命令获取块112提供第二时钟CLK2。命令获取块112可以通过使用第二时钟CLK2来处理从提交队列SQ获取命令CMD的一个或一系列操作。在实施例中,当更新提交队列SQ时,时钟管理单元120可以阻塞或停用提供给控制寄存器块111的第一时钟CLK1。在操作S132中,时钟管理单元120可以确定命令CMD是否被完全获取。当未完全获取命令CMD时,时钟管理单元120执行操作S131。在实施例中,操作S131和操作S132可以被包括在图3的操作S130中或与图3的操作S130相对应。当完全获取命令CMD时,在操作S141中,时钟管理单元120可以分别向主控制块113和DMA引擎块114提供第三时钟CLK3和第四时钟CLK4。主控制块113和DMA引擎块114可以基于第三时钟CLK3和第四时钟CLK4执行与所获取的命令相对应的操作。在实施例中,当完全获取命令CMD时,时钟管理单元120可以阻塞或停用提供给命令获取块112的第二时钟CLK2。在操作S142中,时钟管理单元120可以确定与所获取的命令CMD相对应的操作是否完成。当与所获取的命令CMD相对应的操作未结束时,时钟管理单元120执行操作S141。在实施例中,操作S141和操作S142可以被包括在图3的操作S140中或与图3的操作S140相对应。当结束与所获取的命令CMD相对应的操作时,时钟管理单元120可以向完成块115提供第五时钟CLK5。完成块115可以基于第五时钟CLK5处理将完成信息写入完成队列CQ的一个或一系列操作。在实施例中,当完成与所获取的命令CMD相对应的操作时,时钟管理单元120可以阻塞或停用提供给主控制块113和DMA引擎块114的第三时钟CLK3和第四时钟CLK4。在操作S152中,时钟管理单元120可以确定完成信息是否被完全写入。当未完全写入完成信息时,时钟管理单元120执行操作S151。在实施例中,操作S151和操作S152可以被包括在图3的操作S150中或与图3的操作S150相对应。当完成信息被完全写入时,在操作S161中,时钟管理单元120可以向中断块116提供第六时钟CLK6。中断块116可以基于第六时钟CLK6向主机11发送中断信号。在实施例中,当完成信息被完全写入时,时钟管理单元120可以阻塞或停用提供给完成块115的第五时钟CLK5。尽管未在图5中示出,但是在中断块116向主机11发送中断信号之后,时钟管理单元120可以阻塞或停用提供给中断块116的第六时钟CLK6,并且可以向控制寄存器块111提供第一时钟CLK1。在实施例中,操作S122、操作S132、操作S142和操作S152可以基于通过单独的信号线提供的信息来执行,或者可以基于通过系统总线150提供的信息来执行。可替代地,时钟管理单元120可基于预定义的时间确定与每个步骤相对应的操作是否完成。图6是示出根据图5的操作方法提供的第一时钟CLK1至第六时钟CLK6的时序图。为了说明的简洁和描述的方便,省略了描述本公开的实施例的不必要的组件。参考图4至图6,可以在提交队列SubmissionQueue,SQ更新时段中激活第一时钟CLK1。如图4所示,第一时钟CLK1被提供给控制寄存器块111。也就是说,控制寄存器块111可以在提交队列更新时段期间基于激活的第一时钟CLK1进行操作。提交队列更新时段可以与图5的操作S121相对应。接下来,可以在命令获取时段期间激活第二时钟CLK2。如图4所示,第二时钟CLK2被提供给命令获取块112。也就是说,在命令获取时段期间,命令获取块112可以基于激活的第二时钟CLK2从提交队列SQ获取命令CMD。命令获取时段可以与图5的操作S131相对应。在命令运行时段期间,可以激活第三时钟CLK3和第四时钟CLK4。如图4所示,第三时钟CLK3被提供给主控制块113,第四时钟CLK4被提供给DMA引擎块114。也就是说,在命令运行时段期间,主控制块113和DMA引擎块114可以基于激活的第三时钟CLK3和第四时钟CLK3执行与所获取的命令CMD相对应的操作。命令运行时段可以与图5的操作S141相对应。在上述实施例的上下文中,当所获取的命令CMD是写入命令时,DMA引擎块114可以向外部设备即,向主机11发送写入DMA请求,并执行与外部设备即,主机11的、用于写入数据的写入DMA操作。可替代地,当所获取的命令CMD是读取命令时,DMA引擎块114可以向外部设备即,向主机11发送读取DMA请求,并执行与外部设备即,主机11的、用于读取数据的读取DMA操作。可以在完成时段期间激活第五时钟CLK5。如图4所示,第五时钟CLK5被提供给完成块115。也就是说,在完成时段期间,完成块115可以基于激活的第五时钟CLK5处理将完成信息写入完成队列CQ的一个或一系列操作。完成时段可以与图5的操作S151相对应。可以在中断时段期间激活第六时钟CLK6。如图4所示,第六时钟CLK6被提供给中断模块116。也就是说,在中断时段期间,中断块116可以基于激活的第六时钟CLK6向主机11发送中断信号。尽管未在图6中示出,但是当主控制块113被配置为控制NVMe控制单元110的整体操作时,可以在每个操作时段中激活第三时钟CLK3。如图6所示,在每个操作时段中,可以仅激活与每个操作时段相对应的时钟。例如,在命令获取时段期间,可以仅激活要提供给命令获取块112的第二时钟CLK2,并且可以停用剩余时钟CLK1和CLK3至CLK6。换句话说,第一时钟CLK1至第六时钟CLK6可以用于执行不同的操作,并且可以不彼此重叠地被激活。作为提醒,当没有激活任何时钟时,即与时钟被激活时相比,功耗降低。可替代地,可以取决于每个操作时段或每个功能块的操作状态选择性地激活每个时钟。这样,在每个操作时段中,由于在功能块不正在执行操作时停用将提供给功能块的时钟,因此降低了存储设备12的整体功耗。在每个操作时段中,当不正在执行操作和不必执行操作时停用功能块,降低了存储设备12的整体功耗。图7是示出图1的存储系统10的操作的流程图。在实施例中,将参考图7描述存储系统10的写入操作。参考图1、图4和图7,主机11可以执行操作S210和操作S220。操作S210和操作S220可以类似于图3的操作S110和操作S120,因此,这里将不再重复其详细描述。当主机11和存储控制器100执行操作S230时,存储控制器100可以获取提交队列SQ中包括的命令CMD。操作S230可以包括操作S231至操作S233。在操作S231中,存储控制器100可以向主机11发送存储器读取Memoryread,Mrd请求。存储器读取请求可以是用于从主机11的主机存储器缓冲器HMB中包括的提交队列SQ读取命令CMD的请求。换句话说,DMA引擎块114可以向外部设备即,主机11发送读取DMA请求,并且执行与外部设备即,主机11的、用于读取数据的读取DMA操作。在操作S232中,主机11可以处于开销overhead,OH状态。例如,主机11可能需要预定时间来处理接收的存储器读取请求。下面,为了便于描述,主机11的处理延迟时间被称为“主机开销”。也就是说,主机11的主机开销状态可以指示主机11为了处理特定操作的目的而在预定时间期间不能响应另一操作或特定操作的状态。也就是说,主机11可以在主机开销状态之后执行特定操作。在操作S233中,主机11可以在主机开销之后向存储控制器100发送命令CMD。在操作S240中,存储控制器100可以执行与所获取的命令CMD相对应的操作。例如,当所获取的命令CMD是写入命令时,存储控制器100可以执行操作S241至操作S246。在操作S241中,存储控制器100可以向主机11发送DMA请求。DMA请求可以是与存储在主机11的主机存储器缓冲器HMB中的与写入数据相关联的DMA请求。在操作S242中,主机11可以处于开销OH状态。也就是说,主机11可以在预定时间期间准备与第一写入数据WRD1相关联的DMA操作。在主机开销之后,在操作S243中,主机11可以向存储控制器100发送第一写入数据WRD1。也就是说,主机11和存储控制器100可以执行与第一写入数据WRD1相关联的DMA操作。在操作S244中,主机11可以处于开销OH状态。也就是说,主机11可以在预定时间期间准备与第二写入数据WRD2相关联的DMA操作。在主机开销之后,在操作S245中,主机11可以向存储控制器100发送第二写入数据WRD2。也就是说,主机11和存储控制器100可以执行与第二写入数据WRD2相关联的DMA操作。在实施例中,存储控制器100和主机11可以通过重复执行操作S242至操作S245来执行与多个写入数据相关联的DMA操作。在操作S246中,存储控制器100可以将完成DMA操作的写入数据编程到非易失性存储设备101至10i中。在实施例中,非易失性存储器设备101至10i的编程操作可以是设备开销或设备开销状态。设备开销可以指示由于在存储设备12内执行的操作而导致的延迟。在实施例中,在通用写入命令的情况下,可以省略操作S246。之后,主机11和存储控制器100可以执行操作S250至操作S270。操作S250至操作S270可以类似于图3的操作S150至操作S170,因此,这里将不再重复其详细描述。在实施例中,在主机开销时段中,时钟管理单元120可以不向相应的功能块提供相应的时钟。例如,在操作S232中,时钟管理单元120可以不向命令获取块112提供第二时钟CLK2。在操作S242和操作S244中,时钟管理单元120可以不向主控制块113和DMA引擎块114提供第三时钟CLK3和第四时钟CLK4。换句话说,除了取决于NVMe控制单元110的每个功能块的操作状态控制时钟之外,时钟管理单元120还可以识别主机开销状态并且在主机开销状态中可以不向相应的功能块提供相应的时钟。因此,由于提供时钟的整个时间减少,因此存储设备12的功耗降低。要清楚的是,当没有提供时钟时,这是由于肯定的确定或识别,使得在没有肯定的确定或识别时例如当主机开销状态未被识别时另外提供时钟。图8是示出根据图7的操作的第一时钟CLK1至第六时钟CLK6的时序图。为了简要描述,省略了根据图7的操作描述第一时钟CLK1至第六时钟CLK6的不必要的组件。参考图4、图7和图8,时钟管理单元120可以在提交队列SQ更新时段、命令CMD获取时段、写入数据WriteData,WRDDMA时段、完成时段和中断时段中选择性地激活第一时钟CLK1至第六时钟CLK6。提交队列更新时段、命令获取时段、写入数据DMA时段、完成时段和中断时段可以分别与图7的操作S220至操作S260相对应。提交队列更新时段、完成时段和中断时段类似于参考图6描述的那些,因此,这里将不再重复其详细描述。与图6的实施例不同,在图8的实施例中,在命令获取时段器件,时钟管理单元120可以检测主机开销并且可以在主机开销时段中停用第二时钟CLK2。例如,时钟管理单元120可以在发送存储器读取请求的时段即,图7的操作S231中激活第二时钟CLK2,并且命令获取块112可以基于激活的第二时钟CLK2向主机11发送存储器读取请求。之后,在主机开销时段即,图7的操作S232中,时钟管理单元120可以停用第二时钟CLK2。由于命令获取块112由于主机开销而不能执行单独的操作,因此即使第二时钟CLK2被停用,也可以防止发生异常操作。之后,时钟管理单元120可以在从主机11获取命令CMD即,图7的操作S233时激活第二时钟CLK2,并且命令获取块112可以基于激活的第二时钟CLK2获取命令CMD。如在命令获取时段中那样,在写入数据DMA时段期间,时钟管理单元120可以检测主机开销并且可以在主机开销时段中停用第三时钟CLK3和第四时钟CLK4。例如,在DMA请求时段即,图7的操作S241和DMA操作运行时段即,图7的操作S243和操作S245中,时钟管理单元120可以激活第三时钟CLK3和第四时钟CLK4,并且主控制块113和DMA引擎块114可以基于激活的第三时钟CLK3和第四时钟CLK4发送DMA请求,以及主控制块113和DMA引擎块114可以基于激活的第三时钟CLK3和第四时钟CLK4执行与写入数据相关联的DMA操作。在主机开销时段即,图7的操作S242和操作S244中,时钟管理单元120可以停用第三时钟CLK3和第四时钟CLK4。如上所述,根据本公开的存储控制器100可以取决于功能块的操作状态来选择性地激活时钟。根据本公开的存储控制器100可以识别主机开销并且可以在主机开销时段中停用相关时钟。因此,由于提供时钟的整个时间减少,因此存储设备12的功耗降低。图9和图10是用于描述时钟管理单元检测主机开销的操作的视图。为了说明的简洁和描述的方便,省略了描述时钟管理单元检测主机开销的操作的不必要的组件。参考图9,存储控制器200可以包括NVMe控制单元210、时钟管理单元220、缓冲存储器230、物理层240和系统总线250。NVMe控制单元210可以包括控制寄存器块211、命令获取块212、主控制块213、DMA引擎214、完成块215和中断块216。参考图1至图8描述了存储控制器200的组件,因此,这里将不再重复其详细描述。时钟管理单元220可以通过检测通过系统总线250提供命令CMD来检测主机开销。例如,在由命令获取块212将命令读取请求发送到主机11之后,时钟管理单元220可以停用第二时钟CLK2。之后,可以将从主机11接收的命令CMD设置在物理层240中,并且可以通过系统总线250将该命令CMD提供给命令获取块212即,在命令获取块212获取命令时。在这种情况下,时钟管理单元220可以通过系统总线250识别到命令CMD被设置在物理层240中,并且可以基于所识别的结果来激活第二时钟CLK2。也就是说,时钟管理单元220可以通过系统总线250通过识别到命令CMD被设置在物理层240中来识别主机开销端点。换句话说,时钟管理单元220检测指示通过系统总线250来提供来自外部设备即,主机11的命令的信息,选择性地停用第二时钟CLK2,然后识别到命令CMD被设置在物理层240中,并基于所识别的结果激活第二CLK2。因此,时钟管理单元220还通过识别命令CMD被设置在物理层240中来从物理层240检测关于主机开销即,主机开销端点的信息。参考图10,存储控制器300可以包括NVMe控制单元310、时钟管理单元320、缓冲存储器330、物理层340和系统总线350。NVMe控制单元310可以包括控制寄存器块311、命令获取块312、主控制块313、DMA引擎314、完成块315和中断块316。参考图1至图8描述了存储控制器300的组件,因此,这里将不再重复其详细描述。时钟管理单元320可以基于从物理层340提供的单独的开销信号OH来识别主机开销。例如,在命令获取时段中,当命令CMD被设置时,物理层340可以通过单独的信号线或单独的信道将开销信号OH提供给时钟管理单元320。时钟管理单元320可以基于接收的开销信号OH来识别主机开销,并且可以基于上述方法来控制每个时钟。在实施例中,开销信号OH可以从物理层340提供,或者可以从主机11提供。例如,主机11可以通过边带信道向时钟管理单元320提供关于主机开销的信息。图11是示出时钟管理单元设置关于主机开销的信息的方法的流程图。参考图1和图11,在操作S310中,存储控制器100可以执行初始化以设置关于主机开销的信息。可以取决于主机11的特性来确定主机开销。例如,在命令获取时段中,主机11可以为在预定义的时间期间发送命令CMD准备。存储控制器100可以确定初始化操作中的预定义的时间。在实施例中,可以通过重复执行特定操作来确定预定义的时间,或者可以通过单独的操作来确定预定义的时间。在操作S320中,存储控制器100可以基于所确定的主机开销来执行时钟控制。例如,如上所述,存储控制器100可以基于所确定的主机开销即,主机开销时间来控制要提供给NVMe控制单元110的功能块的时钟。上面描述了基于主机开销的时钟控制,因此,这里将不再重复其详细描述。图12是示出图1的存储系统10的操作的流程图。在实施例中,将参考图12描述存储系统10的读取操作。为了简要描述,省略与上述内容相同的描述。参考图1和图12,主机11可以执行操作S410和操作S420。操作S410和操作S420类似于图3的操作S110和操作S120,因此,这里将不再重复其详细描述。存储控制器100可以通过包括操作S431至操作S433的操作S430来获取命令CMD。属于操作S430的操作S431至操作S433类似于属于图7的操作S230的操作S231至操作S233,因此,这里将不再重复其详细描述。在操作S440中,存储控制器100可以执行与所获取的命令CMD相对应的操作。例如,当所获取的命令CMD是读取命令时,存储控制器100可以执行操作S441至操作S443。在操作S441中,存储控制器100可以处于设备开销OH状态。例如,存储控制器100可以响应于所获取的命令CMD即,读取命令准备相关的读取数据。准备读取数据的时间可以充当设备开销。在实施例中,数据的准备可以指示从非易失性存储器设备101至10i读取读取数据并将读取数据存储在缓冲存储器130中的操作或者准备数据使得读取数据被发送到主机11的操作。在设备开销期间,时钟管理单元120可以停用提供给相应的功能块的相应的时钟。例如,时钟管理单元120可以在设备开销期间停用提供给主控制块113和DMA引擎块114的第三时钟CLK3和第四时钟CLK4。在设备开销之后,在操作S442中,存储控制器100可以向主机11发送DMA请求。DMA请求可以是将读取数据发送到主机11的DMA操作的请求。在步骤S443中,存储控制器100可以通过DMA操作将读取数据RDD发送到主机11。换句话说,当所获取的命令CMD是读取命令时,与所获取的命令CMD相对应的操作可以包括向外部设备即,主机11发送直接存储器存取DMA请求,以及然后通过DMA操作将读取数据发送到外部设备。之后,存储控制器100和主机11可以执行操作S450至操作S470。操作S450至操作S470类似于图3的操作S150至操作S170,因此,这里将不再重复其详细描述。如上所述,在存储系统10的读取操作中,存储控制器100可以检测设备开销以及主机开销,并且可以在检测到的设备开销时段中停用时钟。因此,降低了存储系统10的功耗。图13是示出根据图12的操作方法的第一时钟CLK1至第六时钟CLK6的时序图。为了简要描述,省略了描述根据图12的操作方法的第一时钟CLK1至第六时钟CLK6的不必要的上述描述和组件。参考图1、图12和图13,时钟管理单元120可以在提交队列SQ更新时段、命令CMD获取时段、读取数据ReadData,RDDDMA时段、完成时段和中断时段中选择性地激活第一时钟CLK1至第六时钟CLK6。提交队列更新时段、命令获取时段、读取数据DMA时段、完成时段和中断时段可以分别与图12的操作S420至操作S460相对应。命令获取时段的子操作可以分别与图12的操作S431至操作S433相对应。提交队列更新时段、命令获取时段、完成时段和中断时段类似于参考图6和8描述的那些,因此,这里将不再重复其详细描述。在图12的实施例中,在读取数据DMA时段DMAperiod,RDDDMA期间,时钟管理单元120可以检测设备开销并且可以在设备开销时段中停用第三时钟CLK3和第四时钟CLK4。例如,在设备开销时段即,图12的操作S441中,时钟管理单元120可以停用第三时钟CLK3和第四时钟CLK4。在设备开销期间,由于读取数据是从非易失性存储器设备101至10i读取的并且读取数据被存储在缓冲存储器130中,因此即使第三时钟CLK3和第四时钟CLK4被停用,也可以防止发生异常操作。也就是说,即使第三时钟CLK3和第四时钟CLK4被停用,也可以防止异常操作,因为在设备开销期间读取数据被存储在缓冲存储器130中。在设备开销时段之后的时段即,图12的操作S442和操作S443中,时钟管理单元120可以激活第三时钟CLK3和第四时钟CLK4。如上所述,根据本公开的存储控制器100可以取决于每个功能块的操作状态选择性地激活或停用相应的时钟。存储控制器100可以识别主机开销或设备开销,并且可以基于所识别的开销来控制时钟。因此,由于提供时钟的整个时间减少,因此存储设备12的功耗降低。图14是用于描述时钟管理单元检测设备开销的操作的视图。参考图14,存储控制器400可以包括NVMe控制单元410、时钟管理单元420、缓冲存储器430、物理层440和系统总线450。NVMe控制单元410可以包括控制寄存器块411、命令获取块412、主控制块413、DMA引擎414、完成块415和中断块416。参考图1至图8描述了存储控制器400的组件,因此,这里将不再重复其详细描述。时钟管理单元420可以通过系统总线450从缓冲存储器430接收指示读取数据被存储的信息,并且可以基于接收的信息控制第三时钟CLK3和第四时钟CLK4。例如,在通过系统总线450接收到指示读取数据被存储的信息的情况下,时钟管理单元420可以激活第三时钟CLK3和第四时钟CLK4。尽管在图14中未示出,但是NVMe控制单元410可以包括用于控制非易失性存储器设备101至10i的闪存控制器FlashMemoryController,FMC,并且可以从闪存控制器接收指示读取数据被准备的信息。在实施例中,尽管在图14中未示出,但是时钟管理单元420可以被配置为通过根据本公开的实施例的上面描述的方法来控制提供给闪存控制器FMC的时钟。也就是说,时钟管理单元420可以被配置为仅在闪存控制器操作的时段中向闪存控制器提供时钟。图15是示出根据本公开的实施例的第一时钟至第六时钟的视图。为了简要描述,将仅参考图15描述与参考上面的实施例描述的组件不同的组件。参考图1和图15,时钟管理单元120可以在提交队列SQ更新时段、命令CMD获取时段、读取数据RDDDMA时段、完成时段和中断时段中选择性地激活第一时钟CLK1至第六时钟CLK6。参考图1至图14描述了控制每个时段中的时钟的方式,因此,这里将不再重复其详细描述。在图15的实施例中,时钟管理单元120可以在当前时段中提前预定时间激活在下一个时段中要提供的时钟。例如,在上述实施例中,在命令获取时段期间,时钟管理单元120可以仅激活第二时钟CLK2并且可以停用剩余时钟CLK1和CLK3至CLK6。相反,如图15的时段“A”中所示,时钟管理单元120可以在命令获取时段中激活第三时钟CLK3和第四时钟CLK4。也就是说,与对应于第三时钟CLK3和第四时钟CLK4的命令运行时段相比,可以提前预定时间激活第三时钟CLK3和第四时钟CLK4。由于每个时钟都提前预定时间被激活,因此可以稳定提供给每个功能块的时钟,因此,可以提高每个功能块的操作的可靠性。上面描述的本公开的实施例可以被例示为清楚且详细地描述本公开的一个或多个技术构思,而本公开的一个或多个发明构思不限于此。图16A至图16C是示出根据本公开的存储系统的各种拓扑的框图。参考图16A,存储系统1000可以包括主机1100和存储设备1200。存储设备1200可以包括存储控制器1210和非易失性存储设备101至10i。存储控制器1210可以包括第一NVMe控制单元1211和第二NVMe控制单元1212以及时钟管理单元1213。第一NVMe控制单元1211和第二NVMe控制单元1212中的每一个可以是参考图1至图15描述的NVMe控制单元,并且时钟管理单元1213可以是参考图1至图15描述的时钟管理单元。主机1100可以包括第一端口PT1,并且存储控制器1210可以包括第二端口PT2。主机1100和存储控制器1210可以通过第一端口PT1和第二端口PT2彼此通信。第一端口PT1和第二端口PT2可以是基于PCIe协议的物理端口,但是本公开的端口不限于此。在实施例中,第一NVMe控制单元1211和第二NVMe控制单元1212可以在物理上分离以执行物理功能。可替代地,第一NVMe控制单元1211和第二NVMe控制单元1212可以在逻辑上被划分以执行虚拟化功能。在实施例中,第一NVMe控制单元1211和第二NVMe控制单元1212可以通过单-根single-root输入输出虚拟化Single-RootInputOutputVirtualization,SR-IOV来实施。参考图16B,存储系统2000可以包括主机2100和存储设备2200。存储设备2200可以包括存储控制器2210和非易失性存储设备101至10i。存储控制器2210可以包括第一NVMe控制单元2211和第二NVMe控制单元2212以及时钟管理单元2213。时钟管理单元2213可以是参考图1至15描述的时钟管理单元。主机2100可以包括第一端口PT1,并且存储控制器2210可以包括第二端口PT2和第三端口PT3。主机2100和存储控制器2210可以通过第一端口PT1至第三端口PT3彼此通信。在这种情况下,第一NVMe控制单元2211可以基于通过第二端口PT2提供的信号操作,第二NVMe控制单元2212可以基于通过第三端口PT3提供的信号操作。也就是说,第一NVMe控制单元2211和第二NVMe控制单元2212可以被实施为物理上彼此分离的控制设备。参考图16C,存储系统3000可以包括主机3110和主机3120以及存储设备3200。存储设备3200可以包括存储控制器3210和非易失性存储设备101至10i。存储控制器3210可以包括NVMe控制单元3211和时钟管理单元3213。NVMe控制单元3211和时钟管理单元3213可以是参考图1至15描述的NVMe控制单元和时钟管理单元。主机3110可以包括第一端口PT1,主机3120可以包括第二端口PT2,存储控制器3210可以包括第三端口PT3。主机3110和主机3120以及存储控制器3210可以通过第一端口PT1至第三端口PT3彼此通信。在实施例中,存储系统1000至存储系统3000是示例性的,并且存储系统1000至存储系统3000不限于此。除了物理端口或信道之外,主机和存储设备可以通过任何其他通信方式例如,网络结构等彼此通信。图17是示出应用本公开的固态驱动器Solid-StateDrive,SSD系统的框图。参考图17,SSD系统4000可以包括主机4100和SSD4200。SSD4200通过信号连接器4201向主机4100发送信号SIG以及从主机4100接收信号SIG,并通过电源连接器4202向SSD4200供应电力PWR。在实施例中,信号连接器4201可以是基于PCIe协议的物理端口,但是信号连接器4201不限于此。SSD4200包括SSD控制器4210、多个闪存NVM、辅助电源4230和缓冲存储器4240。SSD控制器4210可以响应于从主机4100接收的信号SIG来控制闪存NVM。闪存NVM可以在SSD控制器4210的控制下操作。在实施例中,SSD控制器4210可以包括参考图1至图15描述的NVMe控制单元和时钟管理单元。辅助电源4230经由电源连接器4202与主机4100连接。辅助电源4230可以由来自主机4100的电力PWR充电。当没有从主机4100平稳地供应电力PWR时,辅助电源4230可以提供SSD4200的电力。缓冲存储器4240作为SSD4200的缓冲存储器操作。例如,缓冲存储器4240可以临时存储从主机4100或从闪存NVM接收的数据,或者可以临时存储闪存NVM的元数据例如,映射表。可替代地,缓冲存储器4240可以临时存储SSD控制器4210操作所需的各种信息。根据上面描述的本公开的实施例,存储控制器可以取决于每个功能块的操作状态选择性地激活或停用要提供给每个功能块的时钟。可替代地,存储控制器可以检测主机开销或设备开销,并且可以基于检测到的开销来控制要提供给每个功能块的时钟。因此,由于提供时钟的整个时间减少,因此降低了存储设备的功耗。根据本公开,存储控制器可以通过取决于每个功能块的操作状态选择性地控制要提供给每个功能块的时钟来减少提供时钟的整个时间。可替代地,根据本公开,存储控制器可以检测主机开销或设备开销,并且可以基于检测到的开销来控制要提供给每个功能块的时钟。因此,提供了具有降低的功耗的存储控制器、包括存储控制器的存储设备、以及存储控制器的操作方法。虽然已经参考本公开的示例性实施例描述了本公开中描述的一个或多个发明构思,但是对于本领域普通技术人员来说显而易见的是,在不脱离如在以下权利要求中阐述的、在本公开中描述的一个或多个发明构思的精神和范围的情况下,可以对其进行各种改变和修改。作为简单示例,通常本公开描述了完成块可以基于第五时钟写入完成信息。然而,在本文描述的实施例中的时钟的编号可以变化,并且可以提供比在本文的实施例中描述的更多或更少的时钟。因此,完成块可以基于第四时钟或基于第五时钟或基于不同的时钟来写入完成信息,这取决于时钟如何编号以及使用多少个不同的时钟。

权利要求:1.一种被配置为与包括提交队列和完成队列的外部设备进行通信的存储控制器的操作方法,所述方法包括:基于第一时钟从外部设备接收与命令相关联的通知;基于第二时钟从提交队列获取命令;基于第三时钟执行与所获取的命令相对应的操作;基于第四时钟将完成信息写入完成队列;以及基于第五时钟向所述外部设备发送中断信号,其中,取决于每个操作阶段,选择性地激活第一时钟至第五时钟中的每一个时钟。2.如权利要求1所述的方法,其中从提交队列获取命令的阶段包括:向外部设备发送存储器读请求;以及从外部设备接收命令。3.如权利要求2所述的方法,其中,从发送存储器读取请求的时间到接收命令的时间停用所述第二时钟。4.如权利要求1所述的方法,其中,当所获取的命令是写入命令时,执行与所获取的命令相对应的操作的阶段包括:向所述外部设备发送直接存储器存取DMA请求;通过第一DMA操作从所述外部设备接收第一写入数据;以及通过第二DMA操作从所述外部设备接收第二写入数据。5.如权利要求4所述的方法,其中,从发送所述DMA请求的时间到开始接收所述第一写入数据的时间停用所述第三时钟,以及其中从完全接收所述第一写入数据的时间到开始接收所述第二写入数据的时间停用所述第三时钟。6.如权利要求1所述的方法,其中,当所获取的命令是读取命令时,执行与所获取的命令相对应的操作的阶段包括:响应于所获取的命令,从非易失性存储设备读取与所获取的命令相对应的读取数据;向所述外部设备发送直接存储器存取DMA请求;以及通过DMA操作将读取数据发送到所述外部设备。7.如权利要求6所述的方法,其中,在从非易失性存储器设备读取读取数据时停用所述第三时钟。8.根据权利要求1所述的方法,其中,通过门铃信令来从所述外部设备的接收所述通知。9.如权利要求1所述的方法,其中,所述存储控制器基于非易失性存储器快速NVMe接口与外部设备通信。10.一种存储控制器,包括:物理层,被配置为与外部设备通信;NVMe控制单元,通过系统总线与物理层连接;和时钟管理单元,被配置为取决于NVMe控制单元的操作选择性地激活或停用第一时钟、第二时钟、第三时钟、第四时钟和第五时钟中的每一个,其中所述NVMe控制单元包括:控制寄存器块,被配置为基于所述第一时钟从外部设备接收信息;命令获取块,被配置为基于所述第二时钟从外部设备获取命令;直接存储器存取DMA引擎,被配置为基于所述第三时钟与所述外部设备执行DMA操作;完成块,被配置为基于所述第四时钟将完成信息写入所述外部设备;和中断块,被配置为基于所述第五时钟向所述外部设备发送中断信号。11.如权利要求10所述的存储控制器,其中,取决于控制寄存器块、命令获取块、DMA引擎、完成块和中断块中的每一个的操作状态,选择性地激活所述第一时钟至所述第五时钟中的每一个。12.如权利要求10所述的存储控制器,其中,所述时钟管理单元通过系统总线检测指示来自外部设备的命令被设置在物理层中的信息;以及在命令获取块从外部设备获取命令时,基于检测到的信息选择性地停用所述第二时钟。13.如权利要求10所述的存储控制器,其中,所述时钟管理单元从物理层检测关于主机开销的信息;以及当命令获取块从外部设备获取命令时,基于关于主机开销的信息选择性地停用所述第二时钟。14.如权利要求10所述的存储控制器,其中,当命令获取块从外部设备获取命令时,所述时钟管理单元基于关于主机开销的信息选择性地停用所述第二时钟,以及其中关于所述主机开销的信息指示所述外部设备准备将要获取的命令的预定义的时间。15.如权利要求10所述的存储控制器,其中,当所获取的命令是写入命令时,所述DMA引擎向外部设备发送写入DMA请求,并执行与外部设备的、用于写入数据的写入DMA操作,以及其中,所述时钟管理单元在写入DMA请求被发送时激活所述第三时钟,从发送写入DMA请求的时间到开始写入DMA操作的时间停用所述第三时钟,以及在写入DMA操作被执行时激活所述第三时钟。16.如权利要求10所述的存储控制器,其中,当所获取的命令是读取命令时,所述DMA引擎向所述外部设备发送读取DMA请求,并执行与外部设备的、用于读取数据的读取DMA操作,以及其中,所述时钟管理单元从获取命令的时间到发送读取DMA请求的时间停用所述第三时钟,并在读取DMA请求被发送时以及在读取DMA操作被执行时激活所述第三时钟。17.如权利要求10所述的存储控制器,其中,所述NVMe控制单元基于NVMe接口与外部设备通信。18.一种存储设备,包括:多个非易失性存储器设备;和存储控制器,被配置为控制所述多个非易失性存储器设备,其中,所述存储控制器包括:NVMe控制单元,被配置为从外部设备获取命令,执行与所获取的命令相对应的操作,向外部设备发送关于所述操作的完成信息,以及基于多个时钟向所述外部设备发送中断信号;和时钟管理单元,被配置为取决于所述NVMe控制单元的操作状态选择性地激活或停用所述多个时钟中的每一个。19.如权利要求18所述的存储设备,其中,所述多个时钟包括第一时钟、第二时钟、第三时钟和第四时钟,其中,所述时钟管理单元在所述NVMe控制单元从外部设备获取命令时激活所述第一时钟,在所述NVMe控制单元执行相应的操作时激活所述第二时钟,在所述NVMe控制单元向所述外部设备发送完成信息时激活所述第三时钟,在所述NVMe控制单元向所述外部设备发送中断信号时激活所述第四时钟。20.如权利要求19所述的存储设备,其中,所述时钟管理单元在所述NVMe控制单元从外部设备获取命令时取决于外部设备的开销选择性地激活或停用所述第一时钟。21.如权利要求19所述的存储设备,其中,所述时钟管理单元在所述NVMe控制单元执行相应的操作时取决于外部设备的开销或所述多个非易失性存储器设备的开销选择性地激活或停用所述第三时钟。

百度查询: 三星电子株式会社 存储控制器及其操作方法和包括该存储控制器的存储设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术