CN118363447A - 用于控制控制器的时钟的方法和存储系统 - Google Patents
用于控制控制器的时钟的方法和存储系统 Download PDFInfo
- Publication number
- CN118363447A CN118363447A CN202410055345.0A CN202410055345A CN118363447A CN 118363447 A CN118363447 A CN 118363447A CN 202410055345 A CN202410055345 A CN 202410055345A CN 118363447 A CN118363447 A CN 118363447A
- Authority
- CN
- China
- Prior art keywords
- module
- clock
- modules
- controller
- idle
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000008569 process Effects 0.000 claims description 13
- 230000007704 transition Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 239000000470 constituent Substances 0.000 description 8
- 238000012545 processing Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/06—Clock generators producing several clock signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
- Power Sources (AREA)
- Read Only Memory (AREA)
Abstract
提供了存储系统的控制器、存储系统、以及用于控制存储系统的从模块的时钟的方法。存储系统的控制器包括各自包括知识产权(IP)模块和核心模块的多个模块,其中,基于IP模块作为多个模块中的第一模块的主装置操作,第一模块的空闲时钟是第一时钟,其中,基于核心模块作为多个模块中的第二模块的主装置操作,第二模块的空闲时钟是第二时钟,其中,第一时钟的时钟频率大于零并且小于最大时钟频率,并且其中,第二时钟的时钟频率是零。
Description
相关申请的交叉引用
本申请要求于2023年1月19日在韩国知识产权局提交的韩国专利申请No.10-2023-0008085的优先权并要求其权益,该申请的全部内容以引用方式并入本文中。
技术领域
本公开涉及控制控制器的时钟的方法和存储系统。
背景技术
随着对高计算机能力和大存储容量的需求的增加,高性能和高容量的固态驱动器(SSD)变得更加必要。然而,高性能和高容量的固态驱动器消耗大量功率。因此,对于功率节省技术和功率管理优化的需要正在增加。目前,正在研究与在主机系统处于空闲状态时的功率管理相关的技术。然而,这些方法无法优化固态装置的功耗。
发明内容
一个或多个实施例提供了存储系统的控制器。
另一实施例提供了存储系统。
另一实施例提供了用于控制存储系统的从模块的时钟的方法。
根据一个或多个实施例,一种存储系统的控制器包括各自包括知识产权(IP)模块和核心模块的多个模块,其中,基于IP模块作为多个模块中的第一模块的主装置操作,第一模块的空闲时钟是第一时钟,其中,基于核心模块作为多个模块中的第二模块的主装置操作,第二模块的空闲时钟是第二时钟,其中,第一时钟的时钟频率大于零并且小于最大时钟频率,并且其中,第二时钟的时钟频率是零。
根据一个或多个实施例,一种存储系统包括:控制器;以及多个存储器装置,其中,控制器被配置为根据来自主机系统的服务请求来控制多个存储器装置,并且控制器还被配置为在将各自映射到多个存储器装置中的相应存储器装置的多个闪存组中的第一闪存组中的多个模块转换为空闲状态时,将多个模块中的第一模块的第一空闲时钟和第二模块的第二空闲时钟改变为不同的时钟级别。
根据一个或多个实施例,一种用于控制存储系统的从模块的时钟的方法,包括:检查存储系统中的存储器以确定存储器是否包括需要处理的命令;以及基于确定在存储器中不存在需要处理的命令后,向多个从模块中的每个从模块供应相应的空闲时钟,每个空闲时钟具有不同的时钟频率,其中,空闲时钟的时钟频率大于零并且小于最大时钟频率。
通过独立地控制控制器中的模块的时钟级别,可提供可最小化功耗并且以低功率支持相同性能的SSD。
附图说明
图1示出了根据一个或多个实施例的网络系统的框图。
图2示出了根据一个或多个实施例的计算装置的框图。
图3示出了根据一个或多个实施例的存储系统的控制器。
图4示出了根据一个或多个实施例的时钟控制方法的流程图。
图5示出了根据一个或多个实施例的时钟控制方法的示意图。
图6示出了根据一个或多个实施例的存储系统的控制器的框图。
具体实施方式
下文将参照附图更全面地描述本公开,在附图中示出了本公开的实施例。如本领域技术人员将认识到的,可以在不偏离本公开的精神或范围的情况下以各种不同的方式修改所描述的实施例。
因此,附图和说明书应被认为本质上是说明性的而非限制性的。贯穿说明书中,相同的附图标记指定相同的元件。在本说明书中参照附图描述的流程图中,可以改变操作顺序、可以合并各种操作、可以划分某些操作,并且可以不执行某些操作。
另外,单数形式也可旨在包括复数形式,除非使用诸如“一个”或“单个”的明确表达。包括诸如第一、第二等序数的术语将仅用于描述各种构成元件,并且不应解释为限制这些构成元件。这些术语可被用于将一个构成元件与其它构成元件区分开的目的。
本文描述的实施例是示例实施例,并且因此,本公开不限于此,并且可以以各种其它形式实现。应当理解的是,当元件或层被称为在另一元件或层“上面”、“上方”、“上”、“下面”、“下”、“下方”、“连接到”或“耦接到”另一元件或层时,该元件或层可以直接在另一元件或层上面、直接在另一元件或层上方、直接在另一元件或层上、直接在另一元件或层下面、直接在另一元件或层下、直接在另一元件或层下方、直接连接到另一元件或层或直接耦接到另一元件或层,或者可以存在中间元件或层。相反,当元件或层被称为“直接在另一元件或层上面”、“直接在另一元件或层上方”、“直接在另一元件或层上”、“直接在另一元件或层下面”、“直接在另一元件或层下”、“直接在另一元件或层下方”、“直接连接到另一元件或层”或者“直接耦接到另一元件或层”时,不存在中间元件或层。为了便于描述,在本文中可以使用诸如“上面”、“上方”、“上”、“上部”、“下面”、“下方”、“下”、“下部”、“左”、“右”等空间相对术语来描述在附图中示出的一个元件或特征与另外的(一个或多个)元件或(一个或多个)特征的关系。将要理解的是,除了在附图中绘出的取向之外,空间相对术语还旨在涵盖正在使用或操作中的装置的不同取向。例如,当附图中的装置可以被翻转时,描述为在其它元件或特征的“下面”或“下方”的元件或特征将被定向为在其它元件或特征的“上方”。因此,术语“下方”可以涵盖上方和下方的取向。装置可以以其它方式定向(例如旋转90度或处于其它取向)并且因此对在本文中使用的空间相对描述词进行相应地解释。
图1示出了根据一个或多个实施例的网络系统的框图。
参照图1,根据一个或多个实施例的网络系统1可以包括计算装置10和通过网络20通信的至少一个终端(例如,计算节点)30_1至30_n。可以通过使用根据上述实施例的数据处理系统来实施计算装置10。
计算装置10可以包括主机系统和存储系统。主机系统可以执行服务器或任何其它合适的计算装置的功能,并且存储系统可以是闪速存储器装置(例如,NAND闪速存储器装置)或任何其它合适的存储器结构。在一个或多个实施例中,闪速存储器装置可包括固态驱动器(SSD)100。
主机系统可以处理从连接到网络20的多个终端30_1至30_n发送的请求。网络20可以是任何合适的网络,诸如因特网。在一个或多个实施例中,主机系统可将从多个终端30_1至30_n提供的数据存储在SSD 100中,并且可将存储在SSD 100中的数据发送到多个终端30_1至30_n。
图2示出了根据一个或多个实施例的计算装置的框图。
参照图2,计算装置可以包括主机系统和存储系统。主机系统和存储系统可以通过接口通信。接口可以是物理接口或无线接口。存储系统可以是SSD 100,并且SSD 100可包括控制器110和至少一个存储器装置120。
控制器110可以响应于通过SSD 100的第一端口PT1从主机系统接收的信号SIG而控制存储器装置120。控制器110可以通过多个通道Ch1至Chn连接到存储器装置120。SSD100可以通过第一端口PT1输出处理主机系统HOST的服务请求的结果SIG。
SSD 100还可以包括辅助电源,并且辅助电源可以通过第二端口PT2从主机系统HOST接收电力PWR。在一个或多个示例中,SSD 100可以从除了主机系统HOST之外的外部装置接收电力。
在一个或多个实例中,控制器110可通过响应于来自主机系统的请求而将信号提供到存储器装置120来控制存储器装置120的存储器操作。信号可以包括指令和地址。控制器110可通过将读取信号提供到存储器装置120来读取存储在存储器装置120中的数据。在一个或多个实例中,控制器110可通过将写入信号和数据提供到存储器装置120来将数据写入到存储器装置120中。
在一些实施例中,存储器装置120可以包括易失性存储器,诸如动态随机存取存储器(DRAM)。在一些实施例中,存储器装置120可包括非易失性存储器,诸如闪存、相变存储器、电阻式存储器、磁阻存储器、铁电存储器或聚合物存储器。在一些实施例中,存储器装置120可用作主机系统的系统存储器。在这种情况下,控制器110可以作为与主机系统的处理器分开的芯片被提供,或者可以作为处理器的内部组件被提供。在一些实施例中,存储系统可以用作主机系统的存储装置。
图3示出了根据一个或多个实施例的存储系统的控制器。
参照图3,存储系统的控制器110可以包括主机接口111和闪存接口112。在一个或多个实施例中,主机接口111和闪存接口112可以各自包括多个模块。在一个或多个示例中,每个模块可以是核心模块或知识产权(IP)模块。
在一个或多个示例中,主机接口111可以从主机系统接收服务请求,并且可以将针对所接收的服务请求的命令发送给闪存接口112。服务请求可以对应于信息的检索、信息的存储等。闪存接口112可以处理来自主机接口111的命令,以执行针对映射到服务请求的存储器装置120的请求(读取或写入)。
在一个或多个实施例中,主机接口111和闪存接口112中的核心模块和IP模块可以以主从架构操作。参照图3,主机接口111和闪存接口112中设置在相对较高处的上模块可以相对于设置在相对较低处的下模块作为主装置操作,并且下模块可以作为上模块的从装置操作。例如,主机接口中的核心模块和IP模块可以相对于闪存接口中的模块作为主装置操作,并且闪存接口中的核心模块和IP模块可以相对于主机接口中的每个模块作为从装置操作。在一个或多个实施例中,主机接口111和闪存接口112的主装置可以将根据主机系统的服务请求的命令发送至从装置。主机接口111的核心模块和IP模块可以用作主从结构的管理器。在一个或多个示例中,一个或多个模块可以根据层级(hierarchical)关系来布置,其中第一模块被称为高于或低于第二模块可以指代第一模块和第二模块之间的层级关系。例如,如果第一模块高于第二模块,则第一模块在层级关系中可以高于第二模块。
在一个或多个实施例中,软件可以在核心模块上运行,并且硬件逻辑可以在IP模块上运行。IP模块可以处理在存储系统中执行的操作,诸如数据的读取/写入操作,并且核心模块可以执行针对存储系统的主操作的异常处理。参照图3,主机接口111中的上IP模块可从主机系统接收服务请求,并可根据接收到的服务请求的类型将针对请求服务的命令发送到下核心模块或下IP模块。
例如,当接收到的服务请求是数据读取操作时,主机接口111内的较高IP模块可以将根据服务请求的命令发送到主机接口111内的较低IP模块。在一个或多个示例中,IP模块是可以通过快速处理存储系统的主要操作来改进存储系统的性能的硬件逻辑。
在一个或多个示例中,当主机接口111中的上IP模块正在执行后处理操作以解决在接收到的服务请求的读取操作或写入操作中发生的问题时,上IP模块可以将根据服务请求的命令发送到主机接口111中的下核心模块。核心模块是用于处理存储系统的异常的软件逻辑,并且可以通过处理在存储系统中发生的各种异常操作来改进存储系统的稳定性。
在一个或多个实施例中,来自主机系统的命令可以在闪存接口的层中的相应模块之间传输。在图3中,闪存接口可以包括三层。然而,如本领域普通技术人员所理解的,闪存接口不限于这些配置,并且可以包括任何合适数量的层。
在一个或多个示例中,闪存接口的层中的第一层可以从主机接口的模块接收命令,并且将命令发送至闪存接口的第二层。闪存接口的最后一层可以将命令发送至映射的存储器装置120。
在主机接口和闪存接口中,较高层的模块可以将根据服务请求的命令发送至较低层的模块。例如,参照图3,闪存接口的第一层的IP模块#1可以从主机接口的核心模块接收命令,并且IP模块#2可以从主机接口的IP模块接收命令。
参照图3,主机接口的每个模块可以用作闪存接口的第一层的每个模块的主装置,并且闪存接口的第一层的每个模块可以用作主机接口的每个模块的从装置。在一个或多个示例中,闪存接口的第一层的每个模块可以用作闪存接口的第二层的每个模块的主装置,并且闪存接口的第二层的每个模块可以用作闪存接口的第一层的每个模块的从装置。在一个或多个示例中,闪存接口的第二层的每个模块可以用作闪存接口的第三层的每个模块的主装置,并且闪存接口的第三层的每个模块可以用作闪存接口的第二层的每个模块的从装置。
在根据一个或多个实施例的主从结构中,主装置可以将根据服务请求的命令发送至从装置。当接收到根据服务请求的命令时,主从结构的主装置可以将接收到的命令发送到从装置。当从装置的时钟处于关闭状态(例如,当从装置不能处理命令时)并且当命令从主装置发送到从装置时,在存储系统中可能发生或检测到诸如总线挂起的错误操作。
在一个或多个实施例中,当从装置的主装置控制从装置的时钟时,主装置可以唤醒从装置,使得从装置处于活动状态,并且之后可以将命令发送到活动的从装置。因此,即使当从装置处于空闲状态时的空闲时钟是零时钟(例如,从装置时钟处于非活动状态),从装置也可以处理来自从装置的主装置的命令。然而,当从装置的主装置不控制从装置的时钟时,在不供应时钟时从装置可能无法处理从主装置发送的命令。因此,在从主装置发送命令之前,从装置的空闲时钟需要不利地保持在非零级别,从而不必要地增加了功耗。
在一个或多个实施例中,核心模块可以控制从装置的时钟,而IP模块不控制从装置的时钟。例如,核心模块可以在向从装置发送命令之前唤醒从装置。在一个或多个示例中,从装置的时钟控制功能可以安装在核心模块的软件逻辑中。然而,在一个或多个示例中,IP模块不唤醒空闲从装置。
在一个或多个实施例中,闪存接口可以以映射到每个存储器装置120的闪存组为单位独立地操作。主机接口的模块作为管理器可以通过将根据服务请求的命令发送到映射到每个存储器装置120的闪存组来从存储器装置120读取数据或者可以将数据写入到存储器装置120。因此,控制器110可以选择性地控制与存储器装置120相对应的闪存组的状态。
在一个或多个实施例中,控制器110可以将对应于与服务请求相关的存储器装置120的闪存组转换为活动状态,并且可以保持与服务请求无关的闪存组的空闲状态。在一个或多个示例中,控制器110可以将处于空闲状态的闪存组中的模块的空闲时钟控制为低时钟(例如,具有低频率或低占空比的时钟)或零时钟(例如,关闭的时钟)。
根据一个或多个实施例,控制器110可以将模块的状态管理为活动状态或空闲状态。处于活动状态的模块和处于空闲状态的模块可以被供应不同级别的时钟。在一个或多个实施例中,控制器110可以向处于活动状态的模块供应1级时钟(例如,活动时钟或最大时钟),并且可以向处于空闲状态的模块供应2级时钟(例如,具有低于1级时钟的频率或占空比的低时钟)或3级时钟(例如,时钟关闭的零时钟)。
在一个或多个实施例中,控制器110可以根据来自主机系统的服务请求唤醒处于空闲状态的闪存组(例如,图3中的闪存组#2和/或闪存组#3)的模块,以将闪存组转换为活动状态。
在一个或多个示例中,控制器110可以根据来自主机系统的服务请求的处理结果将闪存组中的每个模块的状态转换为空闲状态。当每个模块处于空闲状态时,可以根据每个模块的主装置的类型来预先确定空闲时钟的级别。
在一个或多个实施例中,当从装置仅具有作为主装置的核心模块时,从模块的空闲时钟可以是1级(零时钟),因为仅具有作为主装置的核心模块(其能够唤醒从模块)的从装置即使在时钟为零时也可以处理从主模块发送的命令。
然而,当IP模块包括在每个模块的主装置中时,从模块的空闲时钟的级别可以是大于零的预定级别。在一个或多个实施例中,从模块的空闲时钟可以是2级。2级的时钟可以大于零时钟并且小于最大时钟(例如,3级)。最大时钟可以具有比与2级相关联的时钟的时钟频率更大的时钟频率。由于即使存在要被发送到较低从装置的命令,IP模块也可不唤醒从模块,因此,当IP模块被包括在主模块中时,从装置的空闲时钟需要维持在大于零的时钟级别,以处理可以从IP模块发送的命令。在一个或多个实施例中,2级可以是从装置可以在没有主装置的唤醒的情况下唤醒其自身的最小级别(例如,空闲状态可以被转换为活动状态的级别)。
在一个或多个实施例中,2级可以被确定为最大时钟频率的1/n。可根据处于空闲状态的SSD 100的功率限制值来确定2级的特定值。例如,2级可以被确定为具有IP模块作为主装置并且以2级进行操作的m个从模块的功耗不超过处于空闲状态的SSD 100的功率限制的值。例如,当处于空闲状态的SSD 100的功率限制是5W时,2级可以是最大时钟(例如,3级)的2.5%。
在一个或多个实施例中,闪存接口中的每个层的模块的空闲时钟的级别可以不同。例如,参照图3,在闪存接口112的第一层中的模块中,IP模块#1的空闲时钟的级别可以是1级,并且IP模块#2的空闲时钟的级别可以是2级。由于IP模块#1的主装置是主机接口111的核心模块,所以IP模块#1的空闲时钟可以是零时钟,并且由于IP模块#2的主装置是主机接口111的IP模块,所以IP模块#2的空闲时钟可以是低时钟。主机接口111的核心模块可以是每个闪存组的IP模块#1的主装置,并且主机接口111的IP模块可以是每个闪存组的IP模块#2的主装置。
在图3中,由于闪存组#1中的模块处于从主机接口111接收并处理命令的活动状态,因此闪存组#1中的模块的时钟可以处于3级。另一方面,由于闪存组#2和闪存组#3处于空闲状态,所以闪存组#2和闪存组#3中的模块的时钟可以处于1级或2级。
由于第二层的核心模块的主装置是第一层的IP模块#1和IP模块#2,所以第二层的核心模块的空闲时钟的级别可以是2级。
由于第三层的IP模块#3的主装置是第二层的核心模块,所以第三层中的IP模块#3的空闲时钟的级别可以是1级。例如,由于第二层的核心模块可以唤醒IP模块#3以向IP模块#3发送根据服务请求的命令,所以IP模块#3可以在空闲状态下以零时钟进行操作。
在图3中,由于第三层中的IP模块#4的主装置是第一层的IP模块#2和第二层的核心模块,所以第三层中的IP模块#4的空闲时钟可以处于2级。由于IP模块#4可以从除了第二层的核心模块之外的另一路径的IP模块(即,第一层的IP模块#2)接收命令,并且该另一路径的IP模块可以不唤醒IP模块#4,所以IP模块#4的空闲时钟可以不顾第二层的核心模块而处于2级。
如上所述,通过独立地控制控制器中的各个模块的时钟级别,可以提供可以最小化功耗并以低功率支持相同性能的SSD,从而优化SSD的功率节省。
图4示出了根据一个或多个实施例的时钟控制方法的流程图,并且图5示出了根据一个或多个实施例的时钟控制方法的示意图。
在一个或多个实施例中,主机接口111和闪存接口112中的核心模块可以检查控制器110中的存储器,并且根据是否存在剩余的服务请求或剩余的命令来切换从装置的状态。
在一个或多个实施例中,核心模块可以指示时钟控制器在没有剩余服务请求或没有剩余命令时将要提供给每个从装置的时钟切换为空闲时钟,并且时钟控制器可以根据来自核心模块的指令向每个从装置供应预定级别的空闲时钟。
参照图4,主机接口111和闪存接口112中的核心模块可以处理根据来自主机系统的服务请求的命令(S110),并且当处理命令时,主机接口111中的核心模块可以根据预定的时段检查存储器,以检查是否存在需要处理的服务请求或命令(S120)。在一个或多个示例中,存储器可包括控制器110中的静态随机存取存储器(SRAM)或紧耦接存储器(TCM)。
在一个或多个实施例中,当在存储器中存在需要处理的请求或命令时,核心模块可以处理剩余的命令。然而,当在存储器中不存在需要处理的请求或命令(S130:否)时,核心模块可以指示时钟控制器向从装置供应空闲时钟(S140)。在一个或多个实施例中,时钟控制器可以是具有时钟控制功能的IP模块。当核心模块指示时钟控制器将包括核心模块的闪存组中的模块或核心模块的从装置的状态切换到空闲状态时,时钟控制器可以向每个模块供应预定的空闲时钟。例如,时钟控制器可以指示时钟产生器向闪存组中的每个模块供应空闲时钟。
参照图3和图5,当在存储器中不存在需要处理的命令时,主机接口111的核心模块可以指示时钟控制器向闪存接口112的IP模块#1和IP模块#2供应空闲时钟。此外,当在存储器中不存在需要处理的命令时,闪存接口112的第二层的核心模块可以指示时钟控制器向第三层的IP模块#3和IP模块#4供应空闲时钟。
在一个或多个实施例中,关于每个从装置的空闲时钟级别的信息可以被预先存储在核心模块中。在这种情况下,核心模块可以向时钟控制器指示要供应给从装置的空闲时钟的级别,并且时钟控制器可以将所指示的时钟级别发送给从装置。例如,图3的闪存接口112中的核心模块可以指示时钟控制器向IP模块#3供应1级的空闲时钟,并且向IP模块#4供应2级的空闲时钟。此后,时钟控制器可以根据核心模块的指示向IP模块#3供应1级的空闲时钟并且向IP模块#4供应2级的空闲时钟。
在一个或多个示例中,关于每个从装置的空闲时钟级别的信息可在时钟控制器中预先注册。在这种情况下,核心模块可以指示时钟控制器根据预先存储的针对每个从装置的信息向从装置供应空闲时钟。例如,图3的闪存接口112中的核心模块可以指示时钟控制器向IP模块#3和IP模块#4提供空闲时钟。此后,时钟控制器可以根据在时钟控制器中预先注册的信息向IP模块#3供应1级的空闲时钟,并且向IP模块#4供应2级的空闲时钟。
图6示出了根据一个或多个实施例的存储系统的控制器的框图。
参照图6,存储系统的控制器600包括处理器610和存储器620。存储器620可以连接到处理器610,并且可以存储用于驱动处理器610的各种信息或由处理器610执行的至少一个程序。
处理器610可以实施在一个或多个实施例中提出的功能、处理或方法。根据一个或多个实施例的控制器600的操作可以由处理器610实施。
在本公开的一个或多个实施例中,存储器620可设置在处理器内部或外部,并且存储器可通过各种已知的元件耦接到处理器。存储器是各种形式的易失性存储介质或非易失性存储介质,并且可以包括例如只读存储器(ROM)或随机存取存储器(RAM)。
在一些实施例中,根据一个或多个实施例,在图1至图4中表示为块的每个构成元件、模块或单元可以被实施为执行上述每个功能的可变数量的硬件、软件和/或固件结构。例如,至少一个构成元件、模块或单元可以包括各种硬件构成元件(包括数字电路、可编程或不可编程逻辑装置、或阵列)、专用集成电路(ASIC)、或使用可以在一个或多个微处理器或其它控制装置的控制下执行每个功能的数字电路结构(诸如,存储器、处理器、逻辑电路、和查找表)的其它电路。另外,至少一个构成元件、模块或单元可以包括用于执行特定逻辑功能的一个或多个可执行指令字,并且可以通过一个或多个微处理器或其它控制装置来执行。另外,至少一个构成元件、模块或单元可以包括执行每个功能的处理器(诸如,CPU或微处理器),或者可以通过处理器来实施。一些实施例的功能性特征可以被实施为在一个或多个处理器上运行的算法。
虽然已经结合被认为目前实际的实施例描述了本公开,但是应当理解的是,本公开不限于所公开的实施例,而且相反,本公开意图覆盖包括在所附权利要求的精神和范围内的各种修改和等效布置。
Claims (20)
1.一种存储系统的控制器,包括:
各自包括知识产权模块和核心模块的多个模块,
其中,基于所述知识产权模块作为所述多个模块中的第一模块的主装置操作,所述第一模块的空闲时钟是第一时钟,
其中,基于所述核心模块作为所述多个模块中的第二模块的主装置操作,所述第二模块的空闲时钟是第二时钟,
其中,所述第一时钟的时钟频率大于零并且小于最大时钟频率,并且
其中,所述第二时钟的时钟频率是零。
2.根据权利要求1所述的控制器,其中,基于所述存储系统处于空闲状态,根据所述存储系统的功率限制来确定所述第一时钟的时钟频率。
3.根据权利要求1所述的控制器,其中,基于所述核心模块和所述知识产权模块作为所述第一模块的所述主装置操作,所述第一模块的所述空闲时钟是所述第一时钟。
4.根据权利要求1所述的控制器,其中,所述多个模块中的每个模块在闪存接口中的多个层中的相应层中,所述知识产权模块在所述多个层中的第一层中,并且所述多个模块中的所述第一模块在所述多个层中的比所述第一层低的层级层中。
5.根据权利要求3所述的控制器,其中:
所述多个模块中的每个模块在闪存接口中的多个层中的相应层中,所述知识产权模块在所述多个层中的第一层中,所述核心模块在所述多个层中的第二层中,并且所述第一模块在所述多个层中的第三层中;并且
所述第一层是所述第二层的上层级层,并且所述第二层是所述第三层的上层级层。
6.根据权利要求3所述的控制器,其中:
所述多个模块中的每个模块在闪存接口中的多个层中的相应层中,所述知识产权模块和所述核心模块在所述多个层中的第一层中,并且所述第一模块在所述多个层中的第二层中;并且
所述第一层是所述第二层的上层级层。
7.根据权利要求1所述的控制器,其中,所述知识产权模块是主机接口的模块,并且所述第一模块是闪存接口的模块。
8.根据权利要求1所述的控制器,其中,基于确定在所述存储系统中的存储器中不存在要处理的命令,所述核心模块指示时钟控制器向所述核心模块的从模块供应不同级别的相应空闲时钟。
9.根据权利要求1所述的控制器,其中,所述第一模块和所述第二模块在一个闪存组中,并且所述闪存组被映射到至少一个存储器装置。
10.一种存储系统,包括:
控制器;以及
多个存储器装置,
其中,所述控制器被配置为根据来自主机系统的服务请求来控制所述多个存储器装置,并且
其中,所述控制器还被配置为:当将各自映射到所述多个存储器装置中的相应存储器装置的多个闪存组中的第一闪存组中的多个模块转换为空闲状态时,将所述多个模块中的第一模块的第一空闲时钟和第二模块的第二空闲时钟改变为不同的时钟级别。
11.根据权利要求10所述的存储系统,其中,所述控制器还被配置为根据所述服务请求将所述第一闪存组转换为活动状态,并且将所述多个闪存组中的第二闪存组保持在空闲状态。
12.根据权利要求11所述的存储系统,其中:
所述控制器被配置为向所述第一模块供应具有第一时钟频率的时钟,并且向所述第二模块供应具有第二时钟频率的时钟;并且
所述第一时钟频率是零,并且所述第二时钟频率大于零并且小于所述多个模块中处于所述活动状态的模块的操作时钟的时钟频率。
13.根据权利要求10所述的存储系统,其中,根据基于所述存储系统处于空闲状态的功率限制来确定供应给所述第二模块的第二时钟的时钟频率。
14.根据权利要求10所述的存储系统,其中,基于所述多个模块中的一个知识产权模块作为所述第二模块的主装置操作,所述第二模块的空闲时钟频率大于0并且小于所述多个模块中的处于活动状态的模块的操作时钟的时钟频率。
15.根据权利要求14所述的存储系统,其中,所述多个模块中的每个模块在闪存接口中的多个层中的相应层中,所述知识产权模块在所述多个层中的第一层中,并且所述第一模块和所述第二模块在所述多个层中的比所述第一层低的层级层中。
16.根据权利要求10所述的存储系统,其中,基于所述多个模块中的核心模块和知识产权模块作为所述第二模块的主装置操作,所述第二模块的空闲时钟的时钟频率大于0并且小于所述多个模块中的处于活动状态的模块的操作时钟的时钟频率。
17.根据权利要求16所述的存储系统,其中:
所述多个模块中的每个模块在闪存接口中的多个层中的相应层中,所述知识产权模块和所述核心模块在所述多个层中的第一层中,并且所述第一模块和所述第二模块在所述多个层中的第二层中;并且
所述第一层是所述第二层的上层级层。
18.根据权利要求14所述的存储系统,其中,所述知识产权模块是主机接口的模块,并且所述第二模块是闪存接口的模块。
19.一种用于控制存储系统的从模块的时钟的方法,包括:
检查所述存储系统中的存储器以确定所述存储器是否包括需要处理的命令;以及
基于确定在所述存储器中不存在需要处理的命令后,向多个从模块中的每个从模块供应相应的空闲时钟,每个空闲时钟具有不同的时钟频率,
其中,所述空闲时钟的时钟频率中的每一个大于零并且小于最大时钟频率。
20.根据权利要求19所述的方法,其中,所述向所述多个从模块中的每个从模块供应所述相应的空闲时钟还包括:
指示时钟控制器向所述多个从模块中的第一从模块供应第一空闲时钟,并且向所述多个从模块中的第二从模块供应第二空闲时钟,
其中,所述第一空闲时钟的时钟频率是零。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230008085A KR20240115575A (ko) | 2023-01-19 | 2023-01-19 | 컨트롤러의 클록을 제어하는 방법 및 스토리지 시스템 |
KR10-2023-0008085 | 2023-01-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118363447A true CN118363447A (zh) | 2024-07-19 |
Family
ID=91882256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410055345.0A Pending CN118363447A (zh) | 2023-01-19 | 2024-01-15 | 用于控制控制器的时钟的方法和存储系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240248636A1 (zh) |
KR (1) | KR20240115575A (zh) |
CN (1) | CN118363447A (zh) |
-
2023
- 2023-01-19 KR KR1020230008085A patent/KR20240115575A/ko unknown
- 2023-07-25 US US18/225,980 patent/US20240248636A1/en active Pending
-
2024
- 2024-01-15 CN CN202410055345.0A patent/CN118363447A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20240115575A (ko) | 2024-07-26 |
US20240248636A1 (en) | 2024-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9817596B2 (en) | Non-volatile memory systems and methods of managing power of the same | |
EP3033749B1 (en) | Apparatuses and methods for configuring i/o of memory for hybrid memory modules | |
US12067285B2 (en) | Buffer circuit with data bit inversion | |
TWI581181B (zh) | 用於管理操作狀態資料之方法、記憶體模組及主機裝置 | |
US8315122B2 (en) | Multi-chip package semiconductor memory device providing active termination control | |
US11514955B2 (en) | Power management integrated circuit with dual power feed | |
CN116189728A (zh) | 在存储器插槽中支持多个存储器类型 | |
US9747963B2 (en) | Multi-channel memory system using asymmetric channel frequency scaling and related power management method | |
CN106227683B (zh) | 电子设备及信息处理方法 | |
US20140068125A1 (en) | Memory throughput improvement using address interleaving | |
US10032494B2 (en) | Data processing systems and a plurality of memory modules | |
EP3142015A1 (en) | Low-power memory-access method and associated apparatus | |
KR20190127310A (ko) | 데이터 처리 시스템 및 그 구동방법 | |
US10303241B2 (en) | System and method for fine-grained power control management in a high capacity computer cluster | |
US20190027195A1 (en) | Nonvolatile memory device and operating method of the same | |
US20200334119A1 (en) | Data processing system and operating method thereof | |
CN118363447A (zh) | 用于控制控制器的时钟的方法和存储系统 | |
US20220171551A1 (en) | Available memory optimization to manage multiple memory channels | |
US20220326962A1 (en) | Accelerator capable of executing fast dynamic change in acceleration type | |
US11726711B2 (en) | Destructive read type memory circuit and information processing circuit and apparatus utilizing destructive read type memory circuit | |
US20210151083A1 (en) | Power control of a memory device in connected standby state | |
TW202427206A (zh) | 用於互連協定於休眠運作時的組態資料處理方法、控制器以及電子裝置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |