CN113495693A - 用于处理响应的核心的动态选择 - Google Patents
用于处理响应的核心的动态选择 Download PDFInfo
- Publication number
- CN113495693A CN113495693A CN202110266070.1A CN202110266070A CN113495693A CN 113495693 A CN113495693 A CN 113495693A CN 202110266070 A CN202110266070 A CN 202110266070A CN 113495693 A CN113495693 A CN 113495693A
- Authority
- CN
- China
- Prior art keywords
- core
- command
- read
- memory
- memory subsystem
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 91
- 230000004044 response Effects 0.000 title claims abstract description 71
- 230000015654 memory Effects 0.000 claims abstract description 184
- 238000000034 method Methods 0.000 claims abstract description 82
- 230000008569 process Effects 0.000 claims abstract description 57
- 238000004891 communication Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 description 16
- 238000013519 translation Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 6
- 238000003491 array Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 150000004770 chalcogenides Chemical class 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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/061—Improving I/O performance
-
- 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
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
- 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/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- 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
- G06F3/0658—Controller construction arrangements
-
- 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
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
本申请案是针对用于处理响应的核心的动态选择。存储器子系统可从主机系统接收检索数据的读取命令。所述存储器子系统可包含第一核心和第二核心。所述第一核心可基于接收到所述读取命令而处理所述读取命令。所述第一核心可识别所述第二核心来处理与所述读取命令相关联的读取响应。所述第一核心可发出从所述存储器子系统的存储器装置检索所述数据的内部命令。所述内部命令可包含经选择以处理所述读取响应的所述第二核心的指示。
Description
交叉参考
本专利申请案主张2020年3月18日由伊什(Ish)等人申请的标题为“用于处理响应的核心的动态选择(DYNAMIC SELECTION OF CORES FOR PROCESSING RESPONSES)”的第16/822,916号美国专利申请案的优先权,所述美国专利申请案转让给本受让人且明确地以全文引用的方式并入本文中。
技术领域
技术领域涉及用于处理响应的核心的动态选择。
背景技术
一种存储器子系统可包含存储数据的一或多个存储器装置。存储器装置可为例如非易失性存储器装置和易失性存储器装置。一般来说,主机系统可利用存储器子系统以在存储器装置处存储数据且从存储器装置检索数据。
发明内容
描述了一种方法。所述方法可包含从主机系统接收从存储器子系统检索数据的读取命令;使用所述存储器子系统的第一核心至少部分地基于接收到所述读取命令而处理所述读取命令;通过所述第一核心识别所述存储器子系统的第二核心来处理与所述读取命令相关联的读取响应;和通过所述第一核心发出从所述存储器子系统的存储器装置检索所述数据的内部命令,所述内部命令包含经选择以处理所述读取响应的所述第二核心的指示。
描述了一种系统。所述系统可包含多个存储器组件;和处理装置,其与所述多个存储器组件操作性地耦合以进行以下操作:从主机系统接收从存储器子系统检索数据的读取命令;使用所述存储器子系统的第一核心至少部分地基于接收到所述读取命令而处理所述读取命令;通过所述第一核心识别所述存储器子系统的第二核心来处理与所述读取命令相关联的读取响应;和通过所述第一核心发出从所述存储器子系统的存储器装置检索所述数据的内部命令,所述内部命令包含经选择以处理所述读取响应的所述第二核心的指示。
描述一种存储用于无线通信的代码的非暂时性计算机可读媒体。所述代码可包含可由处理器执行以进行以下操作的指令:从主机系统接收从存储器子系统检索数据的读取命令;使用所述存储器子系统的第一核心至少部分地基于接收到所述读取命令而处理所述读取命令;通过所述第一核心识别所述存储器子系统的第二核心来处理与所述读取命令相关联的读取响应;和通过所述第一核心发出从所述存储器子系统的存储器装置检索所述数据的内部命令,所述内部命令包含经选择以处理所述读取响应的所述第二核心的指示。
附图说明
根据下文给出的详细描述和本公开的各种实施例的附图,将更充分地理解本公开。然而,图式不应视为将本公开限制于具体实施例,而是仅用于解释和理解。
图1说明根据本公开的一些实例的包含存储器子系统的计算系统的实例。
图2是根据本公开的一些实例的用于处理响应的核心的动态选择的实例方法的流程图。
图3是根据本公开的一些实例的用于用于处理响应的核心的动态选择的实例系统的框图。
图4是根据本公开的一些实例的用于用于处理响应的核心的动态选择的实例存储器子系统的框图。
图5是其中可操作本公开的实例的实例计算机系统的框图。
具体实施方式
本公开的方面针对于用于处理响应的核心的动态选择。存储器子系统可以是存储装置、存储器模块,或存储装置和存储器模块的混合。下文结合图1描述存储装置和存储器模块的实例。一般来说,主机系统可利用包含一或多个组件(例如存储数据的存储器装置)的存储器子系统。主机系统可提供数据以存储于存储器子系统处,且可请求从存储器子系统检索数据。
一些存储器子系统可包含执行存储器系统的各种操作和功能的多个核心。使用多个核心可增加通过允许并行处理形式执行操作的速度。不同核心可分配给不同类型的操作。举例来说,存储器系统或存储器子系统可包含用于处理读取操作的第一核心、用于处理写入操作的第二核心、用于处理控制操作的第三核心,以及用于处理错误检测和/或校正操作的第四核心。在各个时间,可能并不同等地利用所有核心,处理资源可在一些核心处保持空闲,而其它核心却有积压的操作待执行。
本公开的方面通过可动态地选择处理核心处置存取操作的第二部分的存储器子系统来解决以上和其它缺陷。举例来说,第一核心可处理从主机系统接收的读取操作(例如,第一部分),且不同于第一核心的第二核心可经选择以处理传出到与读取操作相关联的主机系统的响应(例如,第二部分)。在一些存储器子系统中,处理所接收的读取命令的同一核心还经指配以处理所述响应并且将所述响应发射给读取命令。在本文中所描述的技术中,可选择不同于第一核心的第二核心来处理读取响应。举例来说,读取核心可处理传入的读取命令并且可指配写入核心以处理读取响应,进而释放读取核心的处理资源来处置从主机系统接收的更多读取操作。在此类技术中,同一存取操作的部分可由不同核心执行,存取操作的一些部分可动态地指配给核心,且可交换指示经动态指配核心的指示符。
此类技术可利用原本在使用传统技术的情况下保持空闲的处理资源来执行操作。此类技术也可改进执行一些操作的时延情况并且改进与执行一些操作相关联的电力消耗情况(例如,减少电力消耗)。
首先在如参考图1所描述的计算环境的上下文中描述本公开的特征。在如参考图2-4所描述的流程图和框图的上下文中描述本公开的特征。通过参考图5所描述的涉及用于处理响应的核心的动态选择的计算机系统来进一步说明并且参考所述计算机系统来描述本公开的这些和其它特征。
图1说明根据本公开的一些实施例的包含存储器子系统110的实例计算系统100。存储器子系统110可包含媒体,例如一或多个非易失性存储器装置(例如存储器装置130)、一或多个易失性存储器装置(例如存储器装置140),或其组合。
存储器子系统110可为存储装置、存储器模块,或存储装置和存储器模块的混合。存储装置的实例包含固态驱动器(SSD)、快闪驱动器、通用串行总线(USB)快闪驱动器、嵌入式多媒体控制器(eMMC)驱动器、通用快闪存储(UFS)驱动器、安全数字(SD)卡和硬盘驱动器(HDD)。存储器模块的实例包含双列直插式存储器模块(DIMM)、小外形DIMM(SO-DIMM)以及各种类型的非易失性DIMM(NVDIMM)。
计算系统100可以是计算装置,例如台式计算机、手提式计算机、网络服务器、移动装置、运载工具(例如,飞机、无人机、火车、汽车或其它运输工具)、支持物联网(IoT)的装置、嵌入式计算机(例如,包含在运载工具、工业设备或联网市售装置中的计算机),或这类包含存储器和处理装置(例如,处理器)的计算装置。
计算系统100可包含与一或多个存储器子系统110耦合的主机系统105。在一些实例中,主机系统105与不同类型的存储器子系统110耦合。图1说明与一个存储器子系统110耦合的主机系统105的一个实例。如本文中所使用,“耦合到”或“与……耦合”通常是指组件之间的连接,其可以是间接通信连接或直接通信连接(例如不具有介入组件),无论有线或无线,包含例如电连接、光学连接、磁连接等连接。
主机系统105可包含处理器芯片组以及由处理器芯片组执行的软件堆栈。处理器芯片组可包含一或多个核心、一或多个高速缓存器、存储器控制器(例如,NVDIMM控制器),和存储协议控制器(例如,PCIe控制器、SATA控制器)。主机系统105使用存储器子系统110,例如,将数据写入到存储器子系统110以及从存储器子系统110读取数据。
主机系统105可经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含但不限于串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、USB接口、光纤信道、小型计算机系统接口(SCSI)、串行附接SCSI(SAS)、双数据速率(DDR)存储器总线、双列直插式存储器模块(DIMM)接口(例如,支持双数据速率(DDR)的DIMM套接接口)、开放NAND快闪接口(ONFI)、双数据速率(DDR)、低功率双数据速率(LPDDR)或任何其它接口。物理主机接口可用于在主机系统105与存储器子系统110之间发射数据。在存储器子系统110通过PCIe接口与主机系统105耦合时,主机系统105可进一步利用非易失性存储器快速(NVMe)接口来存取组件(例如,一或多个存储器装置130)。物理主机接口可提供用于在存储器子系统110与主机系统105之间传送控制、地址、数据和其它信号的接口。图1说明作为实例的存储器子系统110。一般来说,主机系统105可经由同一通信连接、多个单独通信连接和/或通信连接的组合存取多个存储器子系统。
存储器装置130、140可包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合。易失性存储器装置(例如,存储器装置140)可以是但不限于随机存取存储器(RAM),例如动态RAM(DRAM)和同步DRAM(SDRAM)。
非易失性存储器装置(例如存储器装置130)的一些实例包含“与非”(NAND)型快闪存储器和就地写入存储器,例如三维交叉点(“3D交叉点”)存储器装置,其是非易失性存储器单元的交叉点阵列。非易失性存储器的交叉点阵列可结合可堆叠交叉网格化数据存取阵列而基于体电阻的改变来进行位存储。另外,与许多基于闪存的存储器对比,交叉点非易失性存储器可执行就地写入操作,其中可在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。NAND型快闪存储器包含(例如)二维NAND(2D NAND)和三维NAND(3D NAND)。
存储器装置130中的每一个可包含一或多个存储器单元阵列。一种类型的存储器单元,例如,单层级单元(SLC)可每单元存储一个位。其它类型的存储器单元,例如多层级单元(MLC),三层级单元(TLC),四层级单元(QLC),和五到层级单元(PLC)可每单元存储多个位。在一些实施例中,存储器装置130中的每一个可包含一或多个存储器单元阵列,例如SLC、MLC、TLC、QLC或此类存储器单元阵列的任何组合。在一些实施例中,特定存储器装置可包含存储器单元的SLC部分,以及MLC部分、TLC部分或QLC部分。存储器装置130的存储器单元可分组为页,所述页可指用于存储数据的存储器装置的逻辑单元。对于一些类型的存储器(例如,NAND),页可进行分组以形成块。
虽然描述了非易失性存储器组件,例如NAND型快闪存储器(例如,2D NAND、3DNAND)和3D交叉点非易失性存储器单元阵列,但存储器装置130可基于任何其它类型的非易失性存储器,例如只读存储器(ROM)、相变存储器(PCM)、自选存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(FeTRAM)、铁电随机存取存储器(FeRAM)、磁随机存取存储器(MRAM)、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻性随机存取存储器(RRAM)、基于氧化物的RRAM(OxRAM)、或非(NOR)快闪存储器和电可擦除可编程只读存储器(EEPROM)。
存储器子系统控制器115(或简称为控制器115)可与存储器装置130通信以执行操作,例如在存储器装置130处读取数据、写入数据或擦除数据,以及其它这类操作。存储器子系统控制器115可以包含硬件,例如一或多个集成电路和/或离散组件、缓冲存储器或其组合。硬件可包含具有专用(即,硬译码)逻辑的数字电路系统以执行本文所描述的操作。存储器子系统控制器115可包含处理器芯片组,其包含一或多个核心。存储器子系统控制器115可为微控制器、专用逻辑电路(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理器(DSP)),或其它合适的处理器。
存储器子系统控制器115可包含被配置成执行存储在本地存储器125中的指令的处理器120(例如,处理装置)。在所说明的实例中,存储器子系统控制器115的本地存储器125包含被配置成存储指令以用于执行控制存储器子系统110的操作(包含处置存储器子系统110与主机系统105之间的通信)的各种过程、操作、逻辑流程和例程的嵌入式存储器。
在一些实例中,本地存储器125可包含存储存储器指针、所获取数据等的存储器寄存器。本地存储器125还可包含用于存储微码的ROM。虽然在图1中的实例存储器子系统110已说明为包含存储器子系统控制器115,但在本公开的另一个实施例中,存储器子系统110不包含存储器子系统控制器115,而是替代地可依靠外部控制(例如,由外部主机,或由与存储器子系统分开的处理器或控制器提供)。
一般来说,存储器子系统控制器115可从主机系统105接收命令或操作并且可将所述命令或操作转换成指令或适当命令以实现对存储器装置130和/或存储器装置140的所要存取。存储器子系统控制器115可负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测和错误校正码(ECC)操作、加密操作、高速缓存操作,以及与存储器装置130相关联的逻辑地址(例如,逻辑块地址(LBA)、名字空间)与物理地址(例如,物理块地址)之间的地址转译。存储器子系统控制器115可另外包含主机接口电路系统以经由物理主机接口与主机系统105通信。主机接口电路可将从主机系统接收的命令转换为命令指令以存取存储器装置130和/或存储器装置140,以及将与存储器装置130和/或存储器装置140相关联的响应转换为用于主机系统105的信息。
存储器子系统110还可包含未说明的额外电路或组件。在一些实例中,存储器子系统110可包含高速缓冲存储器或缓冲器(例如,DRAM)以及地址电路(例如,行解码器和列解码器),所述地址电路可从存储器子系统控制器115接收地址,并对地址进行解码以存取存储器装置130。
在一些实施例中,存储器装置130包含本地媒体控制器135,其与存储器子系统控制器115结合操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子系统控制器115)可在外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130是受管理存储器装置,其为与本地控制器(例如,本地控制器135)组合以在同一存储器装置封装内进行媒体管理的原始存储器装置。受管理存储器装置的实例是受管理NAND(MNAND)装置。
存储器子系统110包含可处置存储器子系统110和主机系统105之间的通信的核心管理器150。一些存储器子系统110可包含执行操作的多于一个处理核心。举例来说,存储器子系统110可包含执行读取操作的第一处理核心和执行写入操作的第二处理核心。在一些实施方案中,与写入操作相比,读取操作可更多地被共同执行。在这类实施方案中,一些核心与其它核心相比可更多地被使用。为降低归因于使用同一处理核心执行大量操作引起的时延,核心管理器150可被配置成动态选择执行操作的不同部分的核心。举例来说,核心管理器150可被配置成选择核心作为读取操作的部分来处理响应,所述核心不同于用于处理读取命令从主机系统105的接收的核心。
在一些实例中,存储器子系统控制器115包含核心管理器150的至少一部分。举例来说,存储器子系统控制器115可包含处理器120(例如,处理装置),其被配置成执行存储于本地存储器125中的指令以用于执行本文中所描述的操作。在一些实例中,核心管理器150是主机系统105、应用程序或操作系统的部分。
核心管理器150可响应于接收到读取命令,动态选择不同于用以处理读取命令的核心的用以处理读取响应的核心。通过允许核心管理器150动态选择用于存取操作的部分的核心,核心管理器150可减少用于执行读取操作的部分的时延。在一些情况下,读取操作可由多于一个核心执行。下文描述关于核心管理器150的操作的另外细节。
图2是根据本公开的一些实例的用于处理响应的核心的动态选择的实例方法200的流程图。方法200可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实例中,方法200由图1的核心管理器150执行。虽然以特定顺序或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,所说明实例应仅作为实例理解,并且所说明过程可以不同次序执行,并且一些过程可并行执行。另外,可在各种实例中省略一或多个过程。因此,在每个实例中并不需要所有过程。其它过程流程也是可能的。
在操作205处,存储器子系统可从主机系统接收存取命令。此类存取命令可为读取命令、写入命令或擦除命令,其可将数据读取、擦除、写入和/或重写到存储器子系统的存储器装置中的特定存储器单元。在一些情况下,存取命令可致使存储器子系统从存储器装置检索数据以供主机系统使用。在一些实例中,每一读取命令包含读取存储器子系统的相应源地址处的数据块中的一或多个的指令。
在操作210处,存储器子系统可使用存储器子系统的第一核心处理存取命令。第一核心可与固件的前端部分相关联,使得第一核心用以执行与固件的前端管理器相关的功能。固件的前端管理器可被配置成与主机系统介接。在一些实例中,第一核心可为读取核心,或用以处理读取操作的处理核心的实例。存储器子系统的前端的第一核心可接收从主机系统检索数据的读取命令。在一些实例中,读取命令可对应于存取存储器子系统内的前端管理器的第一核心。
在操作215处,存储器子系统的第一核心可识别或选择存储器子系统的第二核心来处理读取响应。第二核心可与固件的前端部分相关联,使得第一核心用以执行与固件的前端管理器相关的功能。在一些实例中,第二核心可为写入核心,或用以处理写入操作的处理核心的实例。在一些实例中,所识别的处理读取响应的第二核心可不同于第一核心。在其它实例中,所识别的处理读取响应的第二核心可与第一核心相同。在其它情况下,第一核心和第二核心可为一起工作的一或多个核心的实例。另外或替代地,处理所接收的读取命令的第一核心可查询一个核心或多个核心。一旦一个或多个核心经查询,第一核心便可将读取操作的部分委托给一个或多个核心来执行。经选择以处理存取命令的第二部分的核心可动态地被选择。
在操作220处,存储器子系统的第一核心可发出检索数据的内部命令。在一些实例中,内部命令可包含经识别为处理读取响应的第二核心的指示。后端管理器可接收内部命令,致使从存储器装置检索所请求的数据,并且可发出所请求的数据准备好发送到主机系统的第二内部命令第二内部命令可发送到内部命令中识别的第二核心,或第二内部命令可包含经识别为处理读取响应的第二核心的指示。第二核心可处理所请求的数据和/或第二内部命令以产生读取响应。第二核心可基于所述产生而发射读取响应。
图3说明根据本文所公开的实例的用于处理响应的核心的动态选择的系统300的实例。系统300可包含与存储器子系统310通信的主机系统305。主机系统305可为参考图1所描述的主机系统105的实例。存储器子系统310可为参考图1所描述的存储器子系统110的实例。存储器子系统310的组件可接收和发射与读取操作相关联的通信。
读取操作可分割成一或多个部分且每一部分可由不同处理核心执行。举例来说,读取操作的第一部分可涉及通过前端管理器处理读取命令,读取操作的第二部分可涉及通过后端管理器和/或存储器装置组件从存储器装置检索数据,且第三部分可涉及通过前端管理器处理读取响应并且将读取响应发射到主机系统305。读取操作的部分可由与各个管理器和/或装置相关联的一或多个处理核心执行。由与前端管理器相关联的一或多个处理核心处理的信息可穿过与快闪转译管理器相关联的一或多个处理核心指向与后端管理器相关联的一或多个处理核心。参考图4描述关于各个管理器的处理核心的额外细节。
系统300可包含与存储器子系统310通信的主机系统305。存储器子系统310可包含第一核心315-a、第二核心315-b和存储器装置320。存储器子系统310的第一核心315-a和第二核心315-b可为与存储器子系统310的前端管理器相关联的处理核心的实例。存储器子系统310可包含固件,且包含前端管理器(例如,前端层)、转译管理器(例如,快闪转译层)和后端管理器,其各自与处理核心相关联。
主机系统305可发出从存储器子系统310检索数据的存取命令325(例如,读取命令、写入命令或其它类型的命令)。存储器子系统310可代表主机系统305接收从存储器装置320检索数据的存取命令325。
一旦存储器子系统310接收到存取命令325,第一核心315-a便可在操作330处处理所述存取命令325。当处理存取命令325时,第一核心315可识别从主机系统305接收的存取命令325的类型或识别存取命令325的一或多个参数。
在操作335处,第一核心315-a可选择处理核心来处置存取操作(例如,读取操作)的至少一部分。举例来说,第一核心315-a可选择处理核心来处理和/或发射存取操作的响应360(例如,读取响应)。如参考图4更详细地描述,存储器子系统310可具有任何数目个核心315。第一核心315-a可表示用以处理接收到的存取命令(例如,读取命令)的处理核心。第二核心315-b可表示用以处理对存取命令的响应(例如,读取响应)的处理核心。
通过选择处理核心来处置存取操作的部分,可更高效地使用或分配处理资源。举例来说,第一核心315-a可为被配置成执行读取操作的功能的读取核心的实例,且第二核心315-b可为被配置成执行写入操作的功能的写入核心的实例。在接收到读取命令(例如,存取命令325)之后,与读取核心(例如,第一核心315-a)相比,写入核心(例如,第二核心315-b)可相对空闲(或在一持续时间内未充分利用)。为消减读取核心处的瓶颈,读取操作的部分可分担给其它核心,例如写入核心。
在选择用以处理对存取命令325的响应的第二核心315-b之后,第一核心315-a可将检索存取命令325所请求的数据的第一内部命令340发到存储器装置320(通过后端管理器)。第一内部命令340可包含关于所选择的第二核心315-b的信息。举例来说,第一内部命令340可包含识别已选择哪个处理核心作为处理响应360的第二核心315-b的指示符。在一些实施例中,第一核心315-a可选择不同核心来处理响应360,在此情况下,第二核心315-b表示不同于第一核心315-a的核心。在一些实施例中,第一核心315-a可选择自身来处理响应360,在此情况下,第二核心315-b表示与第一核心315-a相同的核心。
在一些实例中,作为选择处理核心来处理响应360的部分,第一核心315-a可查询一或多个核心以确定所述一或多个核心的利用率。其它核心可用在一持续时间内与每一核心的使用情况相关的利用率信息对查询作出响应。第一核心315-a可使用利用率信息选择哪个核心充当第二核心315-b并且处理响应360。
在接收到第一内部命令340后,存储器装置320即刻可从包含在存储器装置320中的一或多个存储器单元检索所请求的数据。举例来说,在操作345处,作为响应360的部分,存储器装置320可检索待发送的数据。存储器装置320可响应于接收到内部命令而执行操作。在一些情况下,存储器装置320可识别经选择以处理响应360的第二核心315-b。存储器装置320可基于完成第一内部命令340起始的内部操作,将第二内部命令350发到经动态选择的核心(例如,第二核心315-b)。在一些情况下,第二内部命令350可包含从存储器装置320检索的数据。在一些情况下,第二内部命令350可包含经动态选择的核心(例如,第二核心315-b)的指示符。
在操作355处,存储器子系统310的第二核心315-b可基于接收到第二内部命令350来处理响应360。第二核心315-b可识别包含在第二内部命令350中的数据,所识别的数据可包含从存储器单元检索的控制信息或数据,并且可产生响应360以供发射到主机系统305。举例来说,当存取命令325是读取命令时,第二核心315-b可使用从存储器装置320检索的数据产生读取响应。第二核心315-b可将响应360发射到主机系统305。第二内部命令350可直接发送到经选择用于处理响应360的第二核心315-b。第二内部命令350可发送到具有经选择用于处理响应360的第二核心315-b的指示的队列。处理核心可查询所述队列,且经指配处理核心可被配置成执行包含在队列中的操作。
图4说明根据本文所公开的实例的用于处理响应的核心的动态选择的存储器子系统400的实例。存储器子系统可包含固件405。固件405可包含前端管理器410(有时被称为前端层)、转译管理器415(有时被称为快闪转译层或FTL)和后端管理器420(有时被称为后端层)。如本文中所描述,核心可为处理器(例如,处理器120)、处理器的一或多个部分、处理装置(例如,处理装置505)、处理装置的一或多个部分或其组合的实例。核心可以是被配置成执行一或多个指令以执行一或多个操作的任何电路、处理器硬件或装置。
前端管理器410可配置为主机系统和存储器子系统之间的接口。举例来说,前端管理器410可被配置成接收、处理和/或解译从主机系统接收以及发射到主机系统的命令和其它通信。一或多个核心425可用以执行前端管理器410的功能。举例来说,第一核心425-a、第二核心425-b和第N核心425-N可用以实施前端管理器410的功能。在一些实施例中,这些核心425可专用于执行前端管理器410的功能。在一些实施例中,这些核心425中的一或多个可用以执行前端管理器410、转译管理器415或后端管理器420或其组合的功能。N可表示任何正整数个核心。
后端管理器420可配置为存储器子系统和存储器子系统的存储器装置之间的接口。举例来说,后端管理器420可被配置成接收、处理和/或解译从存储器装置接收以及发射到存储器装置的数据和其它通信。一或多个核心435可用以执行后端管理器420的功能。举例来说,第一核心435-a、第二核心435-b和第N核心435-n可用以实施后端管理器420的功能。在一些实施例中,这些核心435可专用于执行后端管理器420的功能。在一些实施例中,这些核心435中的一或多个可用以执行前端管理器410、转译管理器415或后端管理器420或其组合的功能。N可表示任何正整数个核心。
转译管理器415可配置为前端管理器410和后端管理器420之间的接口。在一些实施方案中,供主机系统使用的命令和信令方案可不同于供存储器装置使用的命令和信令方案。为了促进主机系统和代表主机系统存储数据的存储器装置之间的通信,转译管理器415可将主机系统信息转译或以其它方式转换成存储器装置信息且反之亦然。一或多个核心430可用以执行转译管理器415的功能。举例来说,第一核心430-a、第二核心430-b和第N核心430-N可用以实施转译管理器415的功能。在一些实施例中,这些核心430可专用于执行转译管理器415的功能。在一些实施例中,这些核心430中的一或多个可用以执行转译管理器415、转译管理器415或后端管理器420或其组合的功能。N可表示任何正整数个核心。
参考图3所描述的第一核心315-a和第二核心315-b可为前端管理器410的核心425的实例。在此类实例中,处理存取命令的第一核心315-a可为第N核心425-N中的任一个,且处理响应的第二核心可为第N核心425-N中的任一个。在一些情况下,前端管理器410的第一核心425-a可执行读取操作的第一部分(例如,处理所接收的存取命令)。读取操作的检索数据或以其它方式执行存取操作的第二部分可由转译管理器415的一或多个核心430、后端管理器420的一或多个核心435、存储器装置或其组合执行。举例来说,一或多个核心430和一或多个核心435可用以基于核心425发出内部命令而执行命令。前端管理器410的第二核心425-b可执行读取操作的第三部分(例如,处理响应)。
图5说明根据本文所公开的实例的支持用于维持序列性的折叠记分板的计算机系统500的实例机器。计算机系统500可包含用于致使机器执行本文中所描述的技术中的任何一或多种的指令集。在一些实例中,计算机系统500可对应于包含、耦合到或使用存储器子系统(例如,参考图1所描述的存储器子系统110)或可用以执行控制器的操作(例如,以执行操作系统以执行对应于参考图1所描述的核心管理器150的操作)的主机系统(例如,参考图1所描述的主机系统105)。在一些实例中,机器可与局域网(LAN)、内联网、外联网和/或因特网中的其它机器连接(例如,联网)。机器可作为对等(或分布式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器而以客户端-服务器网络环境中的服务器或客户端机器的容量进行操作。
机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂巢式电话、网络器具、服务器、网络路由器、交换机或桥接器,或能够(依序或以其它方式)执行指定将由所述机器采取的动作的一组指令的任何机器。另外,虽然说明单个机器,但还应认为术语“机器”包含机器的任何总集,所述总集单独地或共同地执行一(或多个)指令集以执行本文中所论述的方法中的任何一或多种。
实例计算机系统500可包含处理装置505、主存储器510(例如,ROM、快闪存储器、例如SDRAM或Rambus DRAM(RDRAM)等DRAM等)、静态存储器515(例如,快闪存储器、静态RAM(SRAM)等),以及数据存储系统525,其经由总线545彼此通信。
处理装置505表示一或多个通用处理装置,例如微处理器、中央处理单元等。更特定来说,处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置505也可以是一或多个专用处理装置,例如ASIC、FPGA、DSP、网络处理器等等。处理装置505被配置成执行指令535以用于执行本文中所论述的操作和步骤。计算机系统500可另外包含网络接口装置520以在网络540上通信。
数据存储系统525可包含机器可读存储媒体530(也称为计算机可读媒体),其上存储有一或多个指令集535或体现本文中所描述的方法或功能中的任一或多种的软件。指令535还可在由计算机系统500执行期间完全或至少部分地驻存在主存储器510内和/或处理装置505内,主存储器510和处理装置505也构成机器可读存储媒体。机器可读存储媒体530、数据存储系统525和/或主存储器510可对应于存储器子系统。
在一个实例中,指令535包含用以实施对应于核心管理器550(例如参考图1描述的核心管理器150)的功能性的指令。虽然机器可读存储媒体530示出为单个媒体,但术语“机器可读存储媒体”可包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”还可包含能够存储或编码供机器执行的指令集合且致使机器执行本公开的方法中的任何一或多种的任何媒体。术语“机器可读存储媒体”可包含但不限于固态存储器、光学媒体和磁性媒体。
已在针对计算机存储器内的数据位的操作的算法和符号表示方面呈现了先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用以将其工作的主旨最有效地传达给所属领域的其他技术人员的方式。在本文中,一般将算法构想为产生所要结果的步骤的自洽序列。操作是要求对物理量进行物理操纵的操作。通常(但未必),这些量采用能够存储、组合、比较以及以其它方式操纵的电或磁信号的形式。已经证实,主要出于常用的原因,将这些信号称为位、值、元素、符号、字符、项、编号等等有时是便利的。
然而,应牢记,所有这些和类似术语将与适当物理量相关联,且仅仅为应用于这些量的便利标记。本公开可涉及将计算机系统的寄存器和存储器内的表示为物理(电子)量的数据操纵和变换为计算机系统的存储器或寄存器或其它这类信息存储系统内的类似地表示为物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。
本公开还涉及用于执行本文中的操作的设备。此设备可以出于所需目的而专门构造,或其可以包含通过存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此计算机程序可存储在计算机可读存储媒体中,例如但不限于任何类型的盘,包含软盘、光盘、CD-ROM及磁光盘、ROM、RAM、EPROM、EEPROM、磁卡或光卡,或适合于存储电子指令并且各自耦合到计算机系统总线的任何类型的媒体。
本文中呈现的算法和显示器在本质上并不与任何特定计算机或其它设备相关。各种通用系统可以与根据本文中的教示的程序一起使用,或可以证明构造用以执行所述方法更加专用的设备是方便的。将如下文描述中所阐述的那样来呈现各种这些系统的结构。另外,不参考任何特定编程语言来描述本公开。应了解,可使用各种编程语言来实施如本文中所描述的本公开的教示内容。
本公开可提供为计算机程序产品或软件,其可包含在其上存储有可用以编程计算机系统(或其它电子装置)以执行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机构。在一些实例中,机器可读(例如,计算机可读)媒体包含机器(例如,计算机)可读存储媒体,例如ROM、RAM、磁盘存储媒体、光学存储媒体、快闪存储器组件等。
在前述说明书中,已参考其特定实例描述了本公开的实例。将显而易见的是,可在不脱离所附权利要求书中阐述的本公开的实例的更广精神和范围的情况下对其进行各种修改和变化。因此,应在说明性意义上而非限制性意义上看待说明书和图式。
Claims (20)
1.一种方法,其包括:
从主机系统接收从存储器子系统检索数据的读取命令;
使用所述存储器子系统的第一核心至少部分地基于接收到所述读取命令而处理所述读取命令;
通过所述第一核心识别所述存储器子系统的第二核心来处理与所述读取命令相关联的读取响应;和
通过所述第一核心发出从所述存储器子系统的存储器装置检索所述数据的内部命令,所述内部命令包含经选择以处理所述读取响应的所述第二核心的指示。
2.根据权利要求1所述的方法,其另外包括:
通过所述第二核心至少部分地基于发出所述内部命令而发射所述读取响应,所述读取响应包含所述读取命令中所指示的所述数据。
3.根据权利要求2所述的方法,其另外包括:
至少部分地基于发出所述内部命令,从所述存储器装置检索所述读取命令所请求的所述数据;和
将发射具有所述数据的所述读取响应的第二内部命令发到所述第二核心。
4.根据权利要求3所述的方法,其另外包括:
识别包含在所述内部命令中的所述第二核心,其中发出所述第二内部命令至少部分地基于识别包含在所述内部命令中的所述第二命令。
5.根据权利要求1所述的方法,其另外包括:
识别所述第二核心经分配用于处理一或多个写入命令,其中识别所述第二核心至少部分地基于识别所述第二核心经分配用于处理所述一或多个写入命令。
6.根据权利要求1所述的方法,其另外包括:
通过所述第一核心查询多个核心的利用率,所述多个核心包括所述第二核心,其中识别所述第二核心至少部分地基于查询所述多个核心的所述利用率。
7.根据权利要求1所述的方法,其中读取操作的第一部分是由所述第一核心执行,且所述读取操作的第二部分是由所述第二核心执行。
8.根据权利要求1所述的方法,其中所述第一核心不同于所述第二核心。
9.根据权利要求1所述的方法,其中所述第一核心包括所述第二核心。
10.根据权利要求1所述的方法,其中用于发射所述读取响应的核心可由所述第一核心从所述存储器子系统的多个核心中进行配置。
11.一种系统,其包括:
多个存储器组件;和
处理装置,其与所述多个存储器组件操作性地耦合以进行以下操作:
从主机系统接收从存储器子系统检索数据的读取命令;
使用所述存储器子系统的第一核心至少部分地基于接收到所述读取命令而处理所述读取命令;
通过所述第一核心识别所述存储器子系统的第二核心来处理与所述读取命令相关联的读取响应;和
通过所述第一核心发出从所述存储器子系统的存储器装置检索所述数据的内部命令,所述内部命令包含经选择以处理所述读取响应的所述第二核心的指示。
12.根据权利要求11所述的系统,其中所述处理装置进行以下操作:
通过所述第二核心至少部分地基于发出所述内部命令而发射所述读取响应,所述读取响应包含所述读取命令中所指示的所述数据。
13.根据权利要求12所述的系统,其中所述处理装置进行以下操作:
至少部分地基于发出所述内部命令,从所述存储器装置检索所述读取命令所请求的所述数据;和
将发射具有所述数据的所述读取响应的第二内部命令发到所述第二核心。
14.根据权利要求13所述的系统,其中所述处理装置进行以下操作:
识别包含在所述内部命令中的所述第二核心,其中发出所述第二内部命令至少部分地基于识别包含在所述内部命令中的所述第二命令。
15.根据权利要求11所述的系统,其中所述处理装置进行以下操作:
识别所述第二核心经分配用于处理一或多个写入命令,其中识别所述第二核心至少部分地基于识别所述第二核心经分配用于处理所述一或多个写入命令。
16.根据权利要求11所述的系统,其中所述处理装置进行以下操作:
通过所述第一核心查询多个核心的利用率,所述多个核心包括所述第二核心,其中识别所述第二核心至少部分地基于查询所述多个核心的所述利用率。
17.一种存储用于无线通信的代码的非暂时性计算机可读媒体,所述代码包括可由处理器执行以进行以下操作的指令:
从主机系统接收从存储器子系统检索数据的读取命令;
使用所述存储器子系统的第一核心至少部分地基于接收到所述读取命令而处理所述读取命令;
通过所述第一核心识别所述存储器子系统的第二核心来处理与所述读取命令相关联的读取响应;和
通过所述第一核心发出从所述存储器子系统的存储器装置检索所述数据的内部命令,所述内部命令包含经选择以处理所述读取响应的所述第二核心的指示。
18.根据权利要求17所述的非暂时性计算机可读媒体,所述代码包括可由所述处理器执行以进行以下操作的指令:
通过所述第二核心至少部分地基于发出所述内部命令而发射所述读取响应,所述读取响应包含所述读取命令中所指示的所述数据。
19.根据权利要求18所述的非暂时性计算机可读媒体,所述代码包括可由所述处理器执行以进行以下操作的指令:
至少部分地基于发出所述内部命令,从所述存储器装置检索所述读取命令所请求的所述数据;和
将发射具有所述数据的所述读取响应的第二内部命令发到所述第二核心。
20.根据权利要求19所述的非暂时性计算机可读媒体,所述代码包括可由所述处理器执行以进行以下操作的指令:
识别包含在所述内部命令中的所述第二核心,其中发出所述第二内部命令至少部分地基于识别包含在所述内部命令中的所述第二命令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/822,916 US11579799B2 (en) | 2020-03-18 | 2020-03-18 | Dynamic selection of cores for processing responses |
US16/822,916 | 2020-03-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113495693A true CN113495693A (zh) | 2021-10-12 |
Family
ID=77748947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110266070.1A Pending CN113495693A (zh) | 2020-03-18 | 2021-03-11 | 用于处理响应的核心的动态选择 |
Country Status (2)
Country | Link |
---|---|
US (2) | US11579799B2 (zh) |
CN (1) | CN113495693A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220137632A (ko) * | 2020-02-03 | 2022-10-12 | 삼성전자주식회사 | 데이터 관리 시스템 및 제어 방법 |
KR20220046221A (ko) * | 2020-10-07 | 2022-04-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160170886A1 (en) * | 2014-12-10 | 2016-06-16 | Alibaba Group Holding Limited | Multi-core processor supporting cache consistency, method, apparatus and system for data reading and writing by use thereof |
US20170031632A1 (en) * | 2015-07-28 | 2017-02-02 | Samsung Electronics Co., Ltd. | Data storage device, method of operating the same, and data processing system including the same |
US20170212568A1 (en) * | 2016-01-22 | 2017-07-27 | Microsoft Technology Licensing, Llc | Power control for use of volatile memory as non-volatile memory |
CN107870742A (zh) * | 2016-09-27 | 2018-04-03 | 三星电子株式会社 | 向存储装置提供旁路的电子装置、存储装置和计算系统 |
CN109840050A (zh) * | 2017-11-24 | 2019-06-04 | 三星电子株式会社 | 存储设备及其操作方法,控制存储设备的主机设备 |
US20200089889A1 (en) * | 2018-09-19 | 2020-03-19 | SK Hynix Inc. | Memory system and operation method thereof |
CN111414312A (zh) * | 2019-01-07 | 2020-07-14 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9218852B2 (en) * | 2011-06-30 | 2015-12-22 | Sandisk Technologies Inc. | Smart bridge for memory core |
IN2013CH04449A (zh) * | 2013-09-30 | 2015-04-03 | Empire Technology Dev Llc | |
KR102076858B1 (ko) * | 2013-12-24 | 2020-02-12 | 에스케이하이닉스 주식회사 | 반도체장치 및 이를 포함하는 반도체시스템 |
US10423568B2 (en) * | 2015-12-21 | 2019-09-24 | Microsemi Solutions (U.S.), Inc. | Apparatus and method for transferring data and commands in a memory management environment |
US10775859B2 (en) * | 2016-09-23 | 2020-09-15 | Hewlett Packard Enterprise Development Lp | Assignment of core identifier |
US10346226B2 (en) * | 2017-08-07 | 2019-07-09 | Time Warner Cable Enterprises Llc | Methods and apparatus for transmitting time sensitive data over a tunneled bus interface |
US10409511B1 (en) * | 2018-06-30 | 2019-09-10 | Western Digital Technologies, Inc. | Multi-device storage system with distributed read/write processing |
US11176063B2 (en) * | 2019-11-01 | 2021-11-16 | EMC IP Holding Company LLC | Optimized use of processor memory for I/O operations |
-
2020
- 2020-03-18 US US16/822,916 patent/US11579799B2/en active Active
-
2021
- 2021-03-11 CN CN202110266070.1A patent/CN113495693A/zh active Pending
-
2023
- 2023-01-20 US US18/099,504 patent/US20230161509A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160170886A1 (en) * | 2014-12-10 | 2016-06-16 | Alibaba Group Holding Limited | Multi-core processor supporting cache consistency, method, apparatus and system for data reading and writing by use thereof |
US20170031632A1 (en) * | 2015-07-28 | 2017-02-02 | Samsung Electronics Co., Ltd. | Data storage device, method of operating the same, and data processing system including the same |
US20170212568A1 (en) * | 2016-01-22 | 2017-07-27 | Microsoft Technology Licensing, Llc | Power control for use of volatile memory as non-volatile memory |
CN107870742A (zh) * | 2016-09-27 | 2018-04-03 | 三星电子株式会社 | 向存储装置提供旁路的电子装置、存储装置和计算系统 |
CN109840050A (zh) * | 2017-11-24 | 2019-06-04 | 三星电子株式会社 | 存储设备及其操作方法,控制存储设备的主机设备 |
US20200089889A1 (en) * | 2018-09-19 | 2020-03-19 | SK Hynix Inc. | Memory system and operation method thereof |
CN111414312A (zh) * | 2019-01-07 | 2020-07-14 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
US20230161509A1 (en) | 2023-05-25 |
US20210294522A1 (en) | 2021-09-23 |
US11579799B2 (en) | 2023-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11656983B2 (en) | Host-resident translation layer write command | |
US20230161509A1 (en) | Dynamic selection of cores for processing responses | |
US11687282B2 (en) | Time to live for load commands | |
US20240028239A1 (en) | Zone block staging component for a memory sub-system with zoned namespace | |
CN113360089A (zh) | 用于存储器子系统的命令批处理 | |
US11720490B2 (en) | Managing host input/output in a memory system executing a table flush | |
US20230195350A1 (en) | Resequencing data programmed to multiple level memory cells at a memory sub-system | |
CN113360091B (zh) | 用于存取操作的内部命令 | |
US20220291860A1 (en) | Operation based on consolidated memory region description data | |
US20210406167A1 (en) | Namespace management for memory sub-systems | |
JP2023516786A (ja) | メモリサブシステムのキューの管理のための方法、システム、及び可読ストレージ媒体 | |
US11847349B2 (en) | Dynamic partition command queues for a memory device | |
US11868642B2 (en) | Managing trim commands in a memory sub-system | |
CN113094293B (zh) | 存储器系统及相关方法和计算机可读存储介质 | |
CN113495695B (zh) | 用于存取命令的高速缓存标识符 | |
US20210287750A1 (en) | Resource management for memory die-specific operations | |
CN115843379A (zh) | 用来改进顺序存储器命令性能的存储器命令聚合 | |
CN113126900A (zh) | 用于存储器子系统的媒体管理的单独核心 | |
CN113127385A (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 |