CN115427939A - 基于操作模式对存储器装置的主机接口进行配置 - Google Patents
基于操作模式对存储器装置的主机接口进行配置 Download PDFInfo
- Publication number
- CN115427939A CN115427939A CN202180015291.XA CN202180015291A CN115427939A CN 115427939 A CN115427939 A CN 115427939A CN 202180015291 A CN202180015291 A CN 202180015291A CN 115427939 A CN115427939 A CN 115427939A
- Authority
- CN
- China
- Prior art keywords
- mode
- memory device
- host interface
- command
- type
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1045—Read-write mode select circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/17—Embedded application
- G06F2212/173—Vehicle or other transportation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7206—Reconfiguration of flash memory system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Information Transfer Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Stored Programmes (AREA)
Abstract
一种存储器装置存储用于主机装置的数据。在一种方式中,方法包括:由所述存储器装置选择用于主机接口的操作的第一模式,所述第一模式实施用于所述存储器装置与主机装置之间的通信的通信协议。所述主机接口被配置为使用由所述存储器装置从若干可用模式中之一中选择的模式来实施所述通信协议。响应于选择所述第一模式,对所述存储器装置的资源进行配置以定制用于在所述第一模式下进行操作的所述主机接口。
Description
相关申请
本申请主张在2020年2月6日提交且标题为“基于操作模式对存储器装置的主机接口进行配置”的美国专利申请序列号16/783,611的优先权,其全部公开内容通过引用并入本文。
技术领域
本文中公开的至少一些实施例总体上涉及存储器装置,更具体地,但不限于基于操作模式对存储器装置的主机接口进行配置。
背景技术
各种类型的非易失性存储装置可用于存储数据。非易失性存储装置可包括NAND闪存装置。NAND快闪是使用NAND逻辑门来构造的一种闪存。替代地,NOR快闪是使用NOR逻辑门来构造的一种类型的闪存。目前,NAND闪存的使用占闪存市场的主导地位。
典型计算机存储装置具有从主机计算机接收数据存取请求且实行经过编程的计算任务以实施所述请求的控制器,其方式可特定用于在存储装置中配置的介质和结构。在一个实例中,闪存控制器管理存储在闪存中的数据且与计算机装置通信。在一些情况下,闪存控制器用于在移动装置中使用的固态驱动器中,或在数码相机中使用的SD卡或类似介质中。
固件可用于操作特定存储装置的闪存控制器。在一个实例中,当计算机系统或装置从闪存装置读取数据或将数据写入到闪存装置时,其与闪存控制器通信。
附图说明
实施例是借助于实例而非限制在附图的图中来说明的,在附图中相似参考指示类似元件。
图1示出了根据一些实施例的具有主机接口的存储器装置,主机接口可被配置为在操作的若干模式中的一个下进行操作。
图2示出了根据一些实施例的用于基于操作的选定模式来对存储器装置的主机接口进行配置的方法。
图3示出了根据一些实施例的基于从主机接收的命令实行分析以确定操作环境的存储器装置。
图4示出了根据一些实施例的基于确定的操作环境来对存储装置的资源进行配置的方法。
图5示出了根据一些实施例的包括存储装置的载具,存储装置可被配置为在若干操作模式中的一个模式下进行操作。
具体实施方式
以下公开内容描述了用于基于操作模式对存储器装置的主机接口进行配置的各种实施例。本文中至少一些实施例涉及闪存装置。存储器装置可例如存储由主机装置(例如自主载具的计算装置,或存取存储在存储器装置中的数据的另一计算装置)使用的数据。在一个实例中,存储器装置是安装在电动载具中的固态驱动器。
闪存和SSD制造商一直在寻找提高产品性能的方法。一些应用(例如捕获科学传感器数据)需要高性能,但具有不对称的写入/读取工作负载。
大多数快闪/SSD装置支持完整的标准接口(例如,ONFI、CFI、NVMe、SATA等)。标准接口为混合写入/读取工作负载而设计。它们未针对只写或只读工作负载进行优化。这提出了一个技术问题,因为存储器主机接口在资源使用方面效率低,和/或由于资源未正确分配给工作负载所需的功能类型而导致性能比期望的慢。
在一个实例中,只写工作负载包括例如汽车或航空公司黑匣子等应用。载具操作数据被连续写入。只有在发生碰撞事件后,才会从装置读取载具操作数据。写入繁重工作负载的另一实例是存储来自科学实验的传感器数据。科学实验可从传感器收集大量数据。需要捕获并快速写入这些数据,以避免数据丢失。
在一个实例中,只读工作负载包括一次写入多次读取的应用。实例包括在线百科全书或产品目录。这些数据被写入后,会被频繁读取,但很少被重写。读取繁重工作负载的另一实例是读取已捕获和存储的科学传感器数据。在传感器数据已被存储之后,数据稍后被读出用于后处理。这导致了大量的只读取数据集。
本公开的各种实施例提供针对以上技术问题中的一或多个的技术解决方案。在一个实施例中,通过优化或以其他方式配置只写或只读工作负载,对于只写或只读应用,存储器装置可以改进的或峰值的性能发挥作用。例如,用于具有不对称写入/读取工作负载的应用的闪存/SSD装置通过为只写入操作或只读取操作配置快闪/SSD装置(例如,通过定制存储器和/或处理逻辑资源)来实现改进的性能。
在一个实施例中,在存储器装置的启动过程期间,确定(例如,通过控制器)存储器将针对其进行操作的应用的类型(例如,黑匣子等)用于定制快闪/SSD主机接口以提高性能。例如,当快闪/SSD装置用于只写应用(例如,载具黑匣子)时,主机接口和/或存储器装置的其他部分的读取相关方面可被暂停以优化性能。
在一个实施例中,以只写模式配置的闪存或SSD装置不实施对读取操作的接口协议支持。在一个实施例中,以只读模式配置的闪存或SSD装置不实施对写入操作的接口协议支持。
在一个实施例中,当快闪/SSD装置通电时,其检索指示操作模式(例如,读取/写入、只写或只读取操作)的配置信息。在一个实施例中,读取/写入配置数据存储在快闪/SSD装置内的非易失性存储器中。在一个实施例中,读取/写入配置数据由通过接口(例如,JTAG、ONFI、SATA等)接收的命令传输到快闪/SSD装置。
在一个实施例中,存储器装置具有用于实施主机接口的一组资源(例如,处理带宽、一或多个寄存器、专用于读取或写入操作的接口信号、一或多个高速缓存、总存储器容量、对各种存储器区域的访问,存储器区域各自具有不同的等待时间,一些快一些慢)。当存储器装置检测到其将在第一模式(例如,来自所述装置可操作的若干模式中的一个的可用的模式)下进行操作时,存储器装置以第一方式来配置所述一组资源,以用于第一模式定制主机接口。当存储器装置检测到其将在第二模式下进行操作时,存储器装置以第二方式来配置所述一组资源,以用于第二模式定制主机接口。
第一模式和第二模式可基于用于存储器装置与主机之间的通信的相同标准(例如,接口/通信协议)。然而,第一模式可能限于标准允许的子集,使得在第二模式中允许的某些命令在第一模式中不被允许。替代地,第一模式和第二模式都可被限制为子集,并且子集是不同的。这种资源可包括快速存储器(例如,低存储器等待时间)、寄存器、处理逻辑、主机接口信号等。例如,当存储器装置知道(例如,基于配置数据)其将总是只接收来自主机的读取命令时,存储器装置不必实施被设计成区分/解释/解码读取命令和写入命令的协议处理。存储器装置的这部分资源(例如,存储器、时间、处理逻辑)可用于其他目的(例如,处理其他命令,例如稍后接收的命令、维护功能、纠错功能等)。
在一个实施例中,存储器装置含有由通信协议(例如,PCIe、NVMe、ONFI等)定义的主机接口信号)用于传输读取数据、以及定义用于传输写入数据的其他主机接口信号。当存储器装置知道(例如,基于配置数据)其将总是只接收写入命令时,其可将用于传输读取数据的一些或全部主机接口信号重新定义为用于传输写入数据的主机接口信号。当存储器装置知道其将总是只接收读取命令时,其可将用于传输写入数据的一些或全部主机接口信号重新定义为用于传输读取数据的主机接口信号。
例如,存储器装置可具有带有八个数据通道(具有互补数据信号对)的PCIe主机接口。更具体地,每个数据通道由定义用于传输写入数据的一对信号和定义用于传输读取数据的一对信号构成。八通道PCIe主机接口总共有八组写入信号和八组读取信号。如果存储器装置知道其将仅接收写入命令(例如,其被配置为在正常操作中作为载具黑匣子来操作),则其可将用于传输读取数据的八组数据信号重新定义为用于传输写入数据的另外八组数据信号,总共十六组数据信号用于传输写入数据。如果存储器装置知道其将只接收读取命令(例如,在从存储器装置读取软件的起动时间期间),则其可将用于传输写入数据的所述八组数据信号重新定义为用于传输读取数据的另外八组数据信号,总共十六组数据信号用于传输读取数据。
在一个实施例中,存储器装置可动态地改变用于传输读取数据和写入数据的主机接口信号的数目。例如,当存储器装置知道(例如,基于应用环境)其将接收的读取命令和写入命令的工作负荷时,其可重新定义为传输读取数据而定义的一些主机接口信号以用于传输写入数据,或者重新定义为传输写入数据而定义的主机接口信号以用于传输读取数据。例如,主机装置可运行产生25%读取命令和75%写入命令的应用。存储器装置可将主机接口配置为使用例如四组PCIe数据信号来传输读取数据,以及使用十二组PCIe信号来传输写入数据。
在一个实施例中,例如通用快闪/SSD驱动器的存储器装置实施支持在接口标准中定义的任何可能的用途(例如,命令、功能等)的标准。然而,如果设计者知道特定驱动器仅用于特定类型的访问(例如,只写或只读),或特定模式的数据访问(例如,读取和写入命令的相应比例,或命令模式),则设计者可为用于特定类型的访问配置或优化快闪/SSD主机接口(并且不需要实施将不被使用的其他协议)。例如,如果SSD是只读的,则可消除用于处理写入命令的资源。
在一个实例中,代替使用只读SSD,优选地提供可在启动SSD时重新配置的驱动器。将向SSD提供如何使用SSD的指示;当SSD起动时,其会用于特定的使用类型进行自我设定,以获得最佳性能。
在一个实例中,黑匣子SSD通常可为只写的。但是,在诊断或事故调查时,SSD以只读或读写方式起动。
图1示出了根据一些实施例的可被配置用于两种或多种操作模式中的一个的存储器装置102。存储器装置102被配置为接收命令(例如,来自主机装置122的命令124)并存储和检索数据(例如,在存储器106中)。存储器装置102包括处理装置(例如,例如控制器、FPGA和/或ASIC等处理装置104)、存储器(例如,存储器106)和连接到主机装置122的主机接口110。作为实例,处理装置104可为微处理器或嵌入式控制器,主机装置122可为计算系统或嵌入式计算机,并且存储器106可为例如闪存等非易失性存储器。
主机装置122可运行需要访问存储器装置102的应用。这些应用可具有对存储器装置102的不同的数据访问模式。例如,被配置用于载具黑匣子应用或者用于存储来自科学实验的传感器数据的主机装置122在正常操作中使用时可具有只写入数据模式。在例如碰撞等事件之后,载具黑匣子的数据访问模式可改变为只读(例如,由黑匣子的控制器自动地,或者由于碰撞之后的手动用户设定)。在数据收集完成并且数据后处理开始之后,科学传感器应用可将数据模式改变为只读。其他应用程序,例如通用计算系统,可能需要读取及写入访问才能正常操作。
存储器装置102通过主机接口110从主机装置122接收命令124(例如,读取或写入)。主机接口110被配置为实施通信协议112(例如,NVMe、SATA、ONFI、CFI)。主机接口110可被配置为多种操作模式114(例如,可由处理装置104进行选择)。不同的操作模式114可包括对相同通信协议的不同子集的支持。例如,主机接口110可被配置为在只读模式116、只写模式118或读取/写入模式120下进行操作。
在读取/写入模式120中,主机接口110被配置为处理通信协议112的读取和写入命令。在只写模式118中,主机接口110被配置为仅处理通信协议写入命令。在只写模式118中,处理读取命令通常需要的资源(例如,处理逻辑、寄存器、缓冲器、快速存储器、存储器区域等)可用于其他用途。在只读模式116中,处理写入命令通常需要的资源(例如,处理逻辑、寄存器、缓冲器、快速存储器、存储器区域等)可用于其他用途。当资源被配置为只写模式118或只读模式116时,主机接口110处理来自主机装置122的命令124所需的时间可减少。
在一个实施例中,处理装置104处理由主机接口110接收的命令124。处理装置104被配置为基于主机接口110的操作模式114来处理命令124。在一个实例中,当从主机装置122接收到命令时,处理装置104确定操作模式114。
处理装置104使用指令(例如,软件指令108)来对存储器装置102的部分(例如,主机接口110和存储器106)进行配置和/或执行本公开中描述的其他方法。指令108存储在存储器装置中。在一个实例中,指令108存储在处理装置104外部的存储器装置106中。在另一实例中,指令108存储在处理装置104内部的存储器中。
在一个实施例中,从存储器106检索的指令108指示处理装置104选择用于主机接口110选择第一操作模式114。响应于选择主机接口110的第一操作模式114,定制用于在第一模式下进行操作的存储器装置102资源(例如,存储器106和处理装置104)。例如,如果第一操作模式是只写模式118,则可将用于处理读取命令的资源(例如,处理逻辑、寄存器、缓冲器、快速存储器、存储区域等)重定向到其他功能。
在一个实施例中,通过命令124从主机装置122接收主机接口110的操作模式114,命令124通过主机接口110传输。响应于选择主机接口110的第一操作模式114的命令124,定制用于在第一模式下进行操作的存储器装置102资源(例如,存储器106和处理装置104)。
存储器装置102可在默认的第一操作模式114下使用主机接口110加电。在加电之后,可将主机接口110的操作模式114改变为第二操作模式114。例如,存储器装置102可在读取/写入模式120下加电。在通电之后,来自主机装置122的命令124可使得操作模式114改变为只写模式118或只读模式116。在一个实例中,处理装置104响应于接收到命令而实施所述改变。
在一个实施例中,存储器装置102确定操作环境,并且响应于确定出操作环境,用于主机接口110选择操作模式114。例如,如果存储器装置102确定当前应用是正常操作模式下的载具黑匣子,则存储器装置102将主机接口110操作模式114设定为只写模式118。
在另一实施例中,确定存储器装置102的操作环境。所述环境至少部分基于主机装置122提供的环境数据。在一个实例中,环境数据指示将被发送到存储器装置102的命令类型。在另一实例中,环境数据指示将由主机装置122执行的应用类型。
响应于确定出操作环境,用于主机接口110选择不同的操作模式。响应于选择不同模式,存储器装置102的资源被配置为定制用于在不同模式下进行操作的主机接口110。在一个实例中,对资源进行配置包括改变存储器106的区域对处理装置104的分配。在一个实例中,改变分配包括改变存储空间的为处理指令108的执行而分配的一部分。在一个实例中,改变存储空间的所述部分包括增加存储空间的分配以存储从主机装置122接收的数据和/或命令。
在另一实施例中,至少部分基于从存储器装置102的一或多个传感器和/或主机装置122的传感器获得的传感器数据来确定存储器装置102的操作环境。在一个实例中,传感器包括温度传感器和/或加速度计。
图2示出了根据一些实施例的用于基于选定的操作模式来对存储器装置的主机接口进行配置的方法。例如,图2的方法可在图1的系统中实施。在一个实例中,主机接口110提供主机装置122之间的接口,用于访问存储在存储器106的各种存储区域(例如,不同等待时间和/或不同类型的存储器)中的数据。在一个实例中,存储器装置102的控制器实施通信协议112并选择操作模式114。在一个实例中,对资源进行配置包括选择特定类型、等待时间或其他特性的存储器,其将被使用和/或与来自主机的特定类型命令的服务相关联。在新的操作模式中对此命令的处理可被配置为不同于针对先前模式(例如,先前的读取/写入模式或正常模式)实施的对命令的处理。
图2的方法可由处理逻辑来实行,处理逻辑可包括硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,图2的方法至少部分地由一或多个处理装置(例如,图1的控制器或其他处理装置104)来实行。
虽然以特定顺序或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,应理解,所说明实施例仅为实例,且所说明过程可以不同次序实行,且一些过程可并行地实行。另外,在各个实施例中可省略一或多个过程。因此,在每个实施例中并不需要所有过程。其它过程流程也是可能的。
在框202处,提供存储器装置的主机接口。主机接口可被配置为使用由存储器装置从多种模式中的一个选择的模式来实施通信协议。在一个实例中,主机接口是主机接口110。在一个实例中,所述多个模式包括模式116、118、120。
在框204处,针对主机接口选择第一操作模式。主机接口实施用于存储器装置与主机装置之间通信的通信协议。在一个实例中,主机装置是主机装置122。
在框206处,响应于选择第一模式,存储器装置的资源被配置为定制用于在第一模式下进行操作的主机接口。在一个实例中,资源是存储器装置102的存储器和处理资源。在一个实例中,处理资源是存储在存储器106中的处理装置104的固件。
在一个实施例中,一种用于存储器装置的方法包含:由存储器装置针对主机接口选择第一操作模式,所述第一操作模式实施用于存储器装置与主机装置之间的通信的通信协议,其中所述主机接口被配置为使用由所述存储器装置从多个模式中的一个选择的模式来实施通信协议;以及响应于选择第一模式,对存储器装置的资源进行配置以定制用于在所述第一模式下进行操作的主机接口。在一个实例中,存储器装置102选择只读模式116。主机接口110然后被配置为定制用于只读取操作的资源。
在一个实施例中,通信协议允许使用第一类型的命令和第二类型的命令;并且当在第一模式下进行操作时,主机接口允许使用第一类型的命令,并暂停使用第二类型的命令。在一个实例中,通信协议(例如,NVMe、PCIe、SATA、SAS、CFI、ONFI)允许读取命令和写入命令。当被配置用于第一操作模式114时,主机接口110允许读取命令,并暂停使用写入命令。
在一个实施例中,所述多个模式包括第二模式;并且当在第二模式下进行操作时,主机接口允许使用第一类型命令和第二类型命令。在一个实例中,当被配置用于第二操作模式114时,主机接口110允许读取命令和写入命令。
在一个实施例中,所述多个模式包括第二模式;并且当在第二模式下进行操作时,主机接口允许使用第二类型的命令,并暂停使用第一类型的命令。在一个实例中,当被配置用于第二操作模式114时,主机接口110允许写入命令,并暂停使用读取命令。
在一个实施例中,方法进一步包含:确定存储器装置的操作环境;响应于确定出操作环境,针对主机接口选择第二操作模式;以及响应于选择第二模式,对存储器装置的资源进行配置以定制用于在第二模式下进行操作的主机接口。在一个实例中,存储器装置102是非易失性存储器装置(例如,SSD、硬盘驱动器、3D XPoint存储器装置、闪存装置)。存储器装置102的操作环境被确定(例如,由主机装置122或由存储器装置102)为特定应用(例如,正常操作中的载具黑匣子)。响应于将环境识别为正常操作中的载具黑匣子应用,主机接口110的操作模式114被设定为只写模式118。在只写入模式118中,存储器装置102的资源被定制用于只写模式118中的操作。例如,可为其他目的重新分配读取缓冲器,可扩展写入缓冲器等。
在一个实施例中,资源包括存储资源或处理资源中的至少一个。在一个实例中,处理资源是微处理器或嵌入式处理器。存储资源可包括例如SSD、硬盘驱动器、3D XPoint存储器装置、闪存装置等。
在一个实施例中,资源包括存储区域、寄存器或处理装置中的至少一个。在一个实例中,多级每单元快闪装置(例如,MLC、TLC、QLC等)内的存储器区域)被配置为单级每单元(SLC)区域,并用作快速写入缓冲器。在只写模式118中,可通过扩展SLC快写入缓冲器来定制主机接口110。
在一个实施例中,在选择第一模式之前,主机接口使用存储器装置的第一资源来处理第一类型的命令,并且使用存储器装置的第二资源来处理第二类型的命令;并且对存储器装置的资源进行配置包括暂停使用第二资源来处理第二类型的命令。在一个实例中,存储器装置102(例如,SSD或闪存装置)在读取/写入模式120下起动。主机接口110随后被配置(例如,通过来自主机装置122的命令124或者通过确定操作环境的存储器装置102)为第二模式,例如,只读模式116。在只读模式116中,可将例如写入缓冲器等资源重新分配用于其他用途。
在一个实施例中,第一模式是只读模式;第一种类型的命令是读取命令;并且第二种类型的命令是写入命令。
在一个实施例中,所述方法进一步包含,当主机接口在第一模式下进行操作时,使用第二资源来实行存储器装置的处理,而不是处理第二类型的命令。在一个实例中,存储器装置102被配置为在只写模式118下进行操作。可对被配置为读取缓冲器的存储器或寄存器进行重新分配以用作写入缓冲器。
在一个实施例中,对资源进行配置使得主机接口对从主机装置接收的命令的处理时间减少。在一个实例中,存储器装置102在只写模式118下进行操作。将用于处理读取命令的处理逻辑重新分配作为用于处理写入命令的并行流水线,从而减少了处理写入命令所需的平均时间。在另一实例中,如果写入缓冲器填满,主机装置122必须延迟发送进一步的写入命令,直到写入缓冲器空间可用。在只写模式118中重新分配读取缓冲器用作写入缓冲器使得主机装置122能够发送更多的写入命令而没有延迟或延迟时间减少。
在一个实施例中,一种存储器装置包含:主机接口,被配置为实施用于从主机装置接收命令的通信协议;存储资源或处理资源中的至少一个,用于基于从主机接口的多种操作模式中的一个选择的模式来处理所接收的命令;至少一个处理装置;以及含有指令的存储器,被配置成指示所述至少一个处理装置进行以下操作:针对主机接口选择第一操作模式;以及响应于选择第一模式,对存储资源或处理资源中的所述至少一个进行配置,以定制用于在第一模式下进行操作的主机接口。在一个实例中,存储器装置102含有使得存储器装置102在例如只读模式116下起动并定制用于只读模式116的主机接口110的指令。
在一个实施例中,通信协议允许使用第一类型的命令和第二类型的命令;并且当在第一模式下进行操作时,主机接口允许使用第一类型的命令,并暂停使用第二类型的命令。
在一个实施例中,第一模式是只写模式,第一类型的命令是写入命令,且第二类型的命令是读取命令。
在一个实施例中,一种存储指令的非暂时性计算机存储介质,当在存储器装置上执行所述指令时,所述指令使得所述存储器装置至少进行以下操作:针对主机接口选择第一操作模式,所述第一模式实施用于存储器装置与主机装置之间的通信的通信协议,其中主机接口被配置为使用从多个模式中的一个选择的模式来实施通信协议;以及响应于选择第一模式,对存储器装置的资源进行配置以定制用于在第一模式下进行操作的主机接口。
在一个实施例中,选择第一模式包含从主机装置接收指示第一模式的通信。在一个实例中,主机装置122向存储器装置102发送命令124以在例如只写模式118下进行操作。
在一个实施例中,选择第一模式包含从存储器装置的存储器读取第一数据,并且第一数据指示第一模式。在一个实例中,处理装置104从存储器106读取数据,并且响应于从存储器106读取数据,将主机接口110的操作模式114设定为例如只读模式116。
在一个实施例中,资源被配置为实施预定的第一数据访问模式。在一个实例中,存储器装置102被配置为在例如读取/写入模式120下起动。
在一个实施例中,指令还使得存储器装置响应于选择第一模式而从存储器装置的非易失性存储器获得第一模式;并且非易失性存储器存储包括第一模式的多个数据访问模式。
在一个实施例中,选择第一模式包含确定要由主机装置执行的应用或软件。在一个实例中,存储器装置102确定应用是正常操作中的载具黑匣子,并将主机接口110的操作模式114设定为只写模式118。
现在描述各种附加实施例。在一个实施例中,一种方法包含:确定存储器装置的第一操作模式,其中所述存储器装置经由主机接口与主机装置通信,并且存储器装置被配置为在多种模式下进行操作,所述模式包括读取/写入模式,并且还包括只读模式或只写模式中的至少一种;以及响应于确定第一模式,定制主机接口。
在一个实施例中,定制主机接口包含:确定对应于第一模式的配置数据;以及基于配置数据修改主机接口的操作。
在一个实施例中,第一模式是只读模式,并且定制主机接口包含暂停主机接口的写入功能。
在一个实施例中,第一模式是只写模式,并且定制主机接口包含暂停主机接口的读取功能。
在一个实施例中,主机接口从主机装置接收通信。
在一个实施例中,确定第一模式包含:由存储器装置的控制器对机器学习模型的输出进行评估;以及基于所述输出选择第一模式。
在一个实施例中,确定第一模式包含:由存储器装置的传感器收集传感器数据;以及基于传感器数据选择第一模式。
在一个实施例中,定制主机接口包含对存储器装置的控制器进行配置以暂停存储器装置的读取或写入操作。
在一个实施例中,方法进一步包含起动存储器装置的控制器,其中在起动控制器之后实行确定第一模式。
在一个实施例中,方法进一步包含起动存储器装置的控制器,其中在起动控制器之前实行确定第一模式。
在一个实施例中,存储器装置的软件被配置为从载具的至少一个传感器收集数据,存储器装置被配置为作为载具的黑匣子进行操作,并且在载具操作期间由存储器装置存储收集的数据。
图3示出了根据一些实施例的存储装置303,存储装置303实行分析以基于通过主机接口305从主机301接收的命令来确定操作环境。存储装置303是图1的存储器装置102的实例。
存储装置303包括控制器307,控制器307基于从主机301接收的命令实行各种功能。控制器307包括处理器323和流分析器321。处理器323执行固件304提供的指令。在使用流分析器321实行命令和/或数据的分析期间,处理器323将数据存储在易失性DRAM 306中。
流分析器321对从主机301接收的命令和/或数据进行分析。在一个实施例中,控制器307基于对命令和/或数据进行分析的结果来确定存储装置303的环境操作。控制器307可基于所确定的操作环境和/或如本文所述的其他方式来选择操作模式。响应于选择操作模式,控制器307对存储装置303的资源进行配置,以定制用于在所选模式下进行操作的存储装置303的操作。
控制器307将数据存储在非易失性存储介质309中。控制器307响应来自主机301的命令访问存储的数据。
图4示出了根据一些实施例的基于确定的操作环境来配置存储装置的资源的方法。例如,图4的方法可在图3的系统中实施。在一个实例中,存储装置是存储装置303。
图4的方法可由处理逻辑来实行,处理逻辑可包括硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,图4的方法至少部分由一或多个处理装置(例如,图3的控制器307)实行。
虽然以特定顺序或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,应理解,所说明实施例仅为实例,且所说明过程可以不同次序实行,且一些过程可并行地实行。另外,在各个实施例中可省略一或多个过程。因此,在每个实施例中并不需要所有过程。其它过程流程也是可能的。
在框402处,存储器装置从主机接收针对数据流的多个初始命令。在一个实例中,主机是主机301。
在框404处,对命令进行分析以确定数据流的类型。在一个实例中,对数据流进行分析以确定从主机301接收的读取命令和/或写入命令的比例。
在框406处,基于所确定的数据流类型来确定存储器装置的操作环境。在一个实例中,操作环境对应于黑匣子应用,或者对应于在主机上执行的软件。
在框408处,基于所确定的环境操作来对存储装置的资源进行配置。在一个实例中,存储装置303被配置为在只读模式或只写模式下进行操作。在一个实施例中,还基于存储装置的选定操作模式来配置资源。
图5示出了根据一些实施例的包括存储装置511的载具502,存储装置511可被配置为在若干操作模式中的一个模式下进行操作。载具502例如是自主载具,如汽车或无人驾驶飞机。存储装置511是图1的存储器装置102的实例。
存储装置511针对控制器510存储数据。控制器510至少部分从载具502的传感器512接收数据。在一个实例中,传感器512是加速度计或温度传感器。基于从传感器512接收的数据,控制器510控制发动机508和/或其他载具部件的操作。在一个实例中,发动机508是内燃机。在替代实施例中,可使用电动马达来代替发动机508。
存储装置511包括传感器513。在一个实例中,传感器513提供关于存储装置511的非易失性存储介质(未示出)的温度的数据,存储装置511用于存储从控制器510接收的数据。
在一个实施例中,针对存储装置511确定操作环境。存储装置511至少部分基于所确定的操作环境来选择操作模式。在一些情况下,操作模式进一步基于由控制器510提供的数据。控制器510提供的数据可基于从传感器512接收的数据和/或载具部件(例如发动机508)的操作状态。在一个实施例中,响应于选择操作模式,存储装置511对存储装置511的资源进行配置,如上针对图1所述。在一个实例中,所选模式是只读模式116或只写模式118。
本公开包括实行所述方法且实施上文所描述的系统的各种装置,包括实行这些方法的数据处理系统,和含有指令的计算机可读介质,所述指令在数据处理系统上执行时使得系统实行这些方法。
描述和图式是说明性的且不应理解为限制性。描述许多具体细节以提供透彻理解。然而,在某些情况下,为了避免模糊描述,没有描述众所周知的或常规的细节。在本公开中对一或一个实施例的引用不一定是对同一实施例的引用;并且,这样的引用意味着至少一个。
在本说明书中对“一个实施例”或“实施例”的参考意指结合实施例描述的特定特征、结构或特性包括在本公开的至少一个实施例中。在说明书中不同地方出现的短语“在一个实施例中”不一定都指同一个实施例,也不是与其他实施例相互排斥的单独或替代实施例。此外,描述了可由一些实施例而不是由其它实施例呈现的各种特征。类似地,描述了各种要求,这些要求可能是一些实施例的要求而不是其它实施例的要求。
在此描述中,各种功能和操作可被描述为由软件代码实行或由软件代码引起以简化描述。然而,本领域的技术人员将认识到,这类表达的意思是所述功能由一或多个处理器执行代码所引起,所述处理器例如微处理器、专用集成电路(ASIC)、图形处理器或现场可编程门阵列(FPGA)。替代地或组合地,可使用专用电路系统(例如逻辑电路系统)在有或没有软件指令的情况下实施功能和操作。实施例可使用不带软件指令的硬接线电路系统来实施,或者与软件指令相结合。因此,所述技术既不限于硬件电路系统和软件的任何特定组合,也不限于由计算装置执行的指令的任何特定来源。
虽然一些实施例可在充分起作用的计算机和计算机系统中实施,但各种实施例能够分布为多种形式的计算产品,且不论用于实际上实现所述分布的机器或计算机可读介质的特定类型如何都能够适用。
所揭露的至少一些方面可至少部分体现于软件中。也就是说,可在计算装置或其它系统中响应于其处理器(例如,微处理器)施行存储器(例如,ROM、易失性RAM、非易失性存储器、高速缓冲存储器或远程存储装置)中所含的指令序列而进行所述技术。
经执行以实施实施例的例程可实施为操作系统、中间件、业务交付平台、软件开发工具包(SDK)部件、网络服务或其它被称为“计算机程序”的特定应用程序、部件、程序、对象、模块或指令序列的一部分。这些例程的调用接口可作为应用程序编程接口(API)暴露给软件开发团体。计算机程序通常在各种时间在计算机中的各种存储器和存储装置中包含一或多个指令集,且所述指令集在由计算机中的一或多个处理器读取和执行时使所述计算机实行对进行涉及各个方面的要素来说必要的操作。
机器可读介质可用于存储软件和数据,所述软件和数据当由计算装置执行时使所述装置实行各种方法。可执行软件和数据可存储在各种地方,包括例如ROM、易失性RAM、非易失性存储器和/或高速缓存。此软件和/或数据的部分可存储在这些存储装置中的任何一个中。此外,数据和指令可从集中式服务器或对等网络获得。数据和指令的不同部分可在不同的时间和在不同的通信会话中或者在相同的通信会话中从不同的集中式服务器和/或对等网络获得。可在执行应用程序之前获得全部数据和指令。替代地,可动态地、及时地在需要执行时获得数据和指令的部分。因此,并不要求数据及指令在特定时刻全部处于机器可读介质上。
计算机可读介质的实例包括但不限于可记录和不可记录类型的介质,例如易失性及非易失性存储器装置、只读存储器(ROM)、随机存取存储器(RAM)、闪存装置、固态驱动器存储介质、可装卸式磁盘、磁盘存储介质、光学存储介质(例如光盘只读存储器(CD ROM)、数字通用光盘(DVD)等)和其它介质。计算机可读介质可存储指令。
大体来说,有形的或非暂时性机器可读介质包括以机器(例如,计算机、移动装置、网络装置、个人数字助理、制造工具、具有一组一或多个处理器的任何装置等)可存取的形式提供(例如,存储)信息的任何机构。
在各种实施例中,硬接线电路系统可与软件和固件指令组合使用以实施所述技术。因此,所述技术既不限于硬件电路和软件的任何特定组合,也不限于由计算装置执行的指令的任何特定来源。
可使用广泛多种不同类型的计算装置来实施本文中阐述的各种实施例。如本文中所使用,“计算装置”的实例包括但不限于服务器、集中式计算平台、多个计算处理器和/或部件的系统、移动装置、用户终端、载具、个人通信装置、可佩戴数字装置、电子自助服务终端、通用计算机、电子文档阅读器、平板计算机、手提式计算机、智能手机、数码相机、住宅家庭设备、电视或数字音乐播放器。计算装置的附加实例包括被称为“物联网”(IOT)的装置的部分。这类“事物”可与其拥有者或管理员偶然交互,所述拥有者或管理员可监控所述事物或修改对这些物的设定。在一些情况下,这些所有者或管理员扮演着与“事物”装置相关的用户角色。在一些实例中,用户的主要移动装置(例如,苹果iPhone(Apple iPhone))可为关于由用户佩戴的配对的“事物”装置(例如,苹果手表(Apple watch))的管理员服务器。
在一些实施例中,计算装置可为计算机或主机系统,其例如实施为台式计算机、手提式计算机、网络服务器、移动装置,或包括存储器和处理装置的另一计算装置。主机系统可包括或耦合到存储器子系统,使得主机系统可从存储器子系统读取数据或将数据写入所述存储器子系统。主机系统可经由物理主机接口耦合到存储器子系统。大体来说,主机系统可经由同一通信连接、多个单独通信连接和/或通信连接的组合存取多个存储器子系统。
在一些实施例中,计算装置为包括一或多个处理装置的系统。处理装置的实例可包括微控制器、中央处理单元(CPU)、专用逻辑电路(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)、片上系统(SoC)或其他合适的处理器。
虽然图式中的一些以特定次序说明数个操作,但可将非次序相依性操作重新排序且可组合或分解其它操作。虽然具体提及了一些重新排序或其它分组,但是其它重新排序或分组对于本领域的普通技术人员来说是显而易见的,因此不提供详尽的替代方案列表。此外,应认识到,阶段可用硬件、固件、软件或其任何组合来实施。
在前述说明书中,已参考本发明的具体示范性实施例描述了本发明。将显而易见的是,可在不脱离如所附权利要求书中阐述的更广精神和范围的情况下进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书及图式。
Claims (20)
1.一种方法,其包含:
由存储器装置选择用于主机接口的第一操作模式,所述第一模式实施用于所述存储器装置与主机装置之间的通信的通信协议,其中所述主机接口被配置为使用由所述存储器装置从多个模式中的一个选择的模式来实施所述通信协议;以及
响应于选择所述第一模式,对所述存储器装置的资源进行配置以定制用于在所述第一模式下进行操作的所述主机接口。
2.根据权利要求1所述的方法,其中:
所述通信协议允许使用第一类型的命令和第二类型的命令;以及
当在所述第一模式下进行操作时,所述主机接口允许使用所述第一类型的命令,并且暂停使用所述第二类型的命令。
3.根据权利要求2所述的方法,其中:
所述多个模式包括第二模式;以及
当在所述第二模式下进行操作时,所述主机接口允许使用所述第一类型的命令和所述第二类型的命令。
4.根据权利要求2所述的方法,其中:
所述多个模式包括第二模式;以及
当在所述第二模式下进行操作时,所述主机接口允许使用所述第二类型的命令,并且暂停使用所述第一类型的命令。
5.根据权利要求1所述的方法,其进一步包含:
确定用于所述存储器装置的操作环境;
响应于确定出所述操作环境,选择用于所述主机接口的第二操作模式;以及
响应于选择所述第二模式,对所述存储器装置的所述资源进行配置以定制用于在所述第二模式下进行操作的所述主机接口。
6.根据权利要求1所述的方法,其中所述资源包括存储资源或处理资源中的至少一个。
7.根据权利要求1所述的方法,其中所述资源包括存储区域、寄存器或处理装置中的至少一个。
8.根据权利要求1所述的方法,其中:
在选择所述第一模式之前,所述主机接口使用所述存储器装置的第一资源来处理第一类型的命令,并且使用所述存储器装置的第二资源来处理第二类型的命令;以及
对所述存储器装置的所述资源进行配置包括暂停使用所述第二资源来处理所述第二类型的命令。
9.根据权利要求8所述的方法,其中:
所述第一模式是只读模式;
所述第一类型的命令是读取命令;以及
所述第二类型的命令是写入命令。
10.根据权利要求8所述的方法,其进一步包含,当所述主机接口在所述第一模式下进行操作时,使用所述第二资源处理所述存储器装置,而不是处理所述第二类型的命令。
11.根据权利要求1所述的方法,其中对所述资源进行配置使得所述主机接口对从所述主机装置接收的命令的处理时间减少。
12.一种存储器装置,其包含:
主机接口,所述主机接口被配置为实施用于从主机装置接收命令的通信协议;
存储资源或处理资源中的至少一个,用于基于从所述主机接口的多种操作模式中的一个选择的模式来处理所接收的命令;
至少一个处理装置;以及
含有指令的存储器,所述存储器被配置成指示所述至少一个处理装置进行以下操作:
选择用于所述主机接口的第一操作模式;以及
响应于选择所述第一模式,对存储资源或处理资源中的所述至少一个进行配置,以定制用于在所述第一模式下进行操作的所述主机接口。
13.根据权利要求12所述的存储器装置,其中:
所述通信协议允许使用第一类型的命令和第二类型的命令;以及
当在所述第一模式下进行操作时,所述主机接口允许使用所述第一类型的命令,并且暂停使用所述第二类型的命令。
14.根据权利要求13所述的存储器装置,其中所述第一模式是只写模式,所述第一类型的命令是写入命令,并且所述第二类型的命令是读取命令。
15.一种存储指令的非暂时性计算机存储介质,当在存储器装置上执行所述指令时,所述指令使得所述存储器装置至少进行以下操作:
选择用于主机接口的第一操作模式,所述第一模式实施用于所述存储器装置与主机装置之间的通信的通信协议,其中所述主机接口被配置为使用从多个模式中的一个选择的模式来实施所述通信协议;以及
响应于选择所述第一模式,对所述存储器装置的资源进行配置以定制用于在所述第一模式下进行操作的所述主机接口。
16.根据权利要求15所述的非暂时性计算机存储介质,其中选择所述第一模式包含从所述主机装置接收指示所述第一模式的通信。
17.根据权利要求15所述的非暂时性计算机存储介质,其中选择所述第一模式包含从所述存储器装置的存储器读取第一数据,并且其中所述第一数据指示所述第一模式。
18.根据权利要求15所述的非暂时性计算机存储介质,其中所述资源被配置为实施预定的第一数据访问模式。
19.根据权利要求18所述的非暂时性计算机存储介质,其中:
所述指令进一步使得所述存储器装置响应于选择所述第一模式而从所述存储器装置的非易失性存储器获得所述第一模式;以及
所述非易失性存储器存储包括所述第一模式的多个数据访问模式。
20.根据权利要求15所述的非暂时性计算机存储介质,其中选择所述第一模式包含确定要由所述主机装置执行的应用。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/783,611 US11087801B1 (en) | 2020-02-06 | 2020-02-06 | Configuring a host interface of a memory device based on mode of operation |
US16/783,611 | 2020-02-06 | ||
PCT/US2021/015512 WO2021158425A1 (en) | 2020-02-06 | 2021-01-28 | Configuring a host interface of a memory device based on mode of operation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115427939A true CN115427939A (zh) | 2022-12-02 |
Family
ID=77177508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180015291.XA Pending CN115427939A (zh) | 2020-02-06 | 2021-01-28 | 基于操作模式对存储器装置的主机接口进行配置 |
Country Status (5)
Country | Link |
---|---|
US (3) | US11087801B1 (zh) |
EP (1) | EP4100841A4 (zh) |
KR (1) | KR20220130227A (zh) |
CN (1) | CN115427939A (zh) |
WO (1) | WO2021158425A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11087801B1 (en) | 2020-02-06 | 2021-08-10 | Micron Technology, Inc. | Configuring a host interface of a memory device based on mode of operation |
US11243896B2 (en) | 2020-03-25 | 2022-02-08 | Micron Technology, Inc. | Multiple pin configurations of memory devices |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003107199A2 (en) | 2002-06-12 | 2003-12-24 | Koninklijke Philips Electronics N.V. | Bus system, station for use in a bus system, and bus interface |
US7076588B2 (en) | 2003-02-18 | 2006-07-11 | Hewlett-Packard Development Company, L.P. | High speed multiple ported bus interface control |
KR100560761B1 (ko) | 2003-07-08 | 2006-03-13 | 삼성전자주식회사 | 인터페이스 변환 시스템 및 그 방법 |
JP2007172574A (ja) | 2005-11-25 | 2007-07-05 | Seiko Epson Corp | 集積回路装置及び電子機器 |
JP2007184044A (ja) * | 2006-01-06 | 2007-07-19 | Hitachi Global Storage Technologies Netherlands Bv | ディスク装置、磁気ディスク装置及び情報記憶装置 |
JP4945186B2 (ja) | 2006-07-28 | 2012-06-06 | 株式会社東芝 | 記憶装置およびこれを含むメモリシステム |
JP5002719B1 (ja) * | 2011-03-10 | 2012-08-15 | 株式会社東芝 | 情報処理装置、外部記憶装置、ホスト装置、中継装置、制御プログラム及び情報処理装置の制御方法 |
US9244872B2 (en) | 2012-12-21 | 2016-01-26 | Ati Technologies Ulc | Configurable communications controller |
US9009370B2 (en) | 2013-03-04 | 2015-04-14 | Lsi Corporation | Intelligent data buffering between interfaces |
US9405717B2 (en) | 2013-11-21 | 2016-08-02 | Sandisk Technologies Llc | Memory device debugging on host platforms |
US9448742B2 (en) * | 2014-03-27 | 2016-09-20 | Western Digital Technologies, Inc. | Communication between a host and a secondary storage device |
US10394731B2 (en) | 2014-12-19 | 2019-08-27 | Amazon Technologies, Inc. | System on a chip comprising reconfigurable resources for multiple compute sub-systems |
US9912902B2 (en) * | 2015-12-16 | 2018-03-06 | Intel Corporation | Automatic event recorder |
US10210123B2 (en) | 2016-07-26 | 2019-02-19 | Samsung Electronics Co., Ltd. | System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices |
US10606767B2 (en) * | 2017-05-19 | 2020-03-31 | Samsung Electronics Co., Ltd. | Ethernet-attached SSD for automotive applications |
US20180357076A1 (en) | 2017-06-12 | 2018-12-13 | Qualcomm Incorporated | Method to establish operating configuration in a vgmi interface |
CN109901782A (zh) * | 2017-12-07 | 2019-06-18 | 上海宝存信息科技有限公司 | 数据储存装置与数据储存方法 |
US10613952B2 (en) | 2017-12-21 | 2020-04-07 | Acroname, Inc. | Multi-port communications switch with automated flip emulation |
KR20190097930A (ko) * | 2018-02-13 | 2019-08-21 | 삼성전자주식회사 | 채널 별 메모리 용량을 조절하는 메모리 장치 및 이를 포함하는 메모리 시스템 |
US11018444B2 (en) | 2018-03-09 | 2021-05-25 | Samsung Electronics Co., Ltd. | Multi-mode and/or multi-speed non-volatile memory (NVM) express (NVMe) over fabrics (NVMe-of) device |
US10541010B2 (en) | 2018-03-19 | 2020-01-21 | Micron Technology, Inc. | Memory device with configurable input/output interface |
US11238005B2 (en) | 2018-07-20 | 2022-02-01 | Samsung Electronics Co., Ltd. | SFF-TA-100X based multi-mode protocols solid state devices |
US11500593B2 (en) | 2019-03-20 | 2022-11-15 | Samsung Electronics Co., Ltd. | High-speed data transfers through storage device connectors |
US11087801B1 (en) | 2020-02-06 | 2021-08-10 | Micron Technology, Inc. | Configuring a host interface of a memory device based on mode of operation |
US11243896B2 (en) | 2020-03-25 | 2022-02-08 | Micron Technology, Inc. | Multiple pin configurations of memory devices |
US11630785B2 (en) | 2020-11-03 | 2023-04-18 | Western Digital Technologies, Inc. | Data storage with improved data transfer |
-
2020
- 2020-02-06 US US16/783,611 patent/US11087801B1/en active Active
-
2021
- 2021-01-28 WO PCT/US2021/015512 patent/WO2021158425A1/en unknown
- 2021-01-28 KR KR1020227030293A patent/KR20220130227A/ko active Pending
- 2021-01-28 CN CN202180015291.XA patent/CN115427939A/zh active Pending
- 2021-01-28 EP EP21750320.0A patent/EP4100841A4/en active Pending
- 2021-06-23 US US17/356,431 patent/US11894097B2/en active Active
-
2023
- 2023-12-21 US US18/393,375 patent/US20240127870A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US11087801B1 (en) | 2021-08-10 |
US20210327475A1 (en) | 2021-10-21 |
US20240127870A1 (en) | 2024-04-18 |
EP4100841A4 (en) | 2024-03-06 |
KR20220130227A (ko) | 2022-09-26 |
US20210249054A1 (en) | 2021-08-12 |
EP4100841A1 (en) | 2022-12-14 |
WO2021158425A1 (en) | 2021-08-12 |
US11894097B2 (en) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6602823B2 (ja) | メモリ機器のための拡張利用範囲 | |
US11842065B2 (en) | Controlling firmware storage density based on temperature detection | |
JP5701259B2 (ja) | ホストからのメモリ装置のブーティング | |
US20240127870A1 (en) | Configuring a host interface of a memory device based on mode of operation | |
JP2011513823A5 (zh) | ||
US10067676B2 (en) | Hybrid memory drives, computer system, and related method for operating a multi-mode hybrid drive | |
US12112050B2 (en) | Microservice storage device system | |
EP4148572B1 (en) | Computational storage device and storage system including the computational storage device | |
KR20220134769A (ko) | 온도 기반 데이터 저장 처리 | |
CN114968949A (zh) | 缓存数据的方法、主机设备和存储系统 | |
CN106951268A (zh) | 一种申威平台支持NVMe硬盘启动的实现方法 | |
US12112058B2 (en) | Reconfigurable microservice storage device system | |
US11966609B1 (en) | Zoned namespace storage device system | |
CN114063899B (zh) | 主从管理存储器存储 | |
US10768816B2 (en) | Method and apparatus to manipulate customer data without using the host interface | |
KR101417010B1 (ko) | 휴대단말기 및 그 부팅방법 | |
JP2003296130A (ja) | マイクロコンピュータ |
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 |