CN112166470A - 用于串行存储器设备控制的方法和系统 - Google Patents

用于串行存储器设备控制的方法和系统 Download PDF

Info

Publication number
CN112166470A
CN112166470A CN201980035743.3A CN201980035743A CN112166470A CN 112166470 A CN112166470 A CN 112166470A CN 201980035743 A CN201980035743 A CN 201980035743A CN 112166470 A CN112166470 A CN 112166470A
Authority
CN
China
Prior art keywords
signal
value
memory device
memory controller
serial memory
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
Application number
CN201980035743.3A
Other languages
English (en)
Inventor
K·哈尔达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN112166470A publication Critical patent/CN112166470A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • G11C5/066Means for reducing external access-lines for a semiconductor memory clip, e.g. by multiplexing at least address and data signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/105Aspects related to pads, pins or terminals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/107Serial-parallel conversion of data or prefetch
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/30Reduction of number of input/output pins by using a serial interface to transmit or receive addresses or data, i.e. serial access memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Abstract

本公开的各个方面涉及用于确定串行存储器设备的繁忙/就绪状态的系统和方法。一种方法包括:存储器控制器(104)启用串行存储器设备(串行外设相间、SPI、NAND、110),将芯片选择信号(CS#)的值从第一值改变为第二值;基于芯片选择信号(CS#)的值从第一值改变为第二值,存储器控制器(104)启用时钟信号(SCLK);存储器控制器(104)从串行存储器设备(110)接收标志,该标志基于使用芯片选择信号(CS#)的串行存储器设备(110)的启用而指示串行存储器设备(110)的状态,其中串行存储器设备(110)被配置为以与芯片选择信号(CS#)从第一值改变为第二值的时钟信号(SCLK)的时钟周期相同的时钟周期处经由从输出信号(SO)发送标志。

Description

用于串行存储器设备控制的方法和系统
优先权要求
本专利申请要求于2018年5月31日提交的题为“用于串行存储器设备控制的方法和系统(METHODS AND SYSTEMS FOR SERIAL MEMORY DEVICE CONTROL)”的美国非临时专利申请第15/993,926号的优先权,该非临时申请转让给本发明的受让人,并且在此明确并入本文。
概述
本公开的方面涉及串行存储器设备,并且具体涉及用于确定串行存储器设备状态的系统和方法。
一种类型的存储器设备是闪存。闪存是非易失性计算机存储芯片,可以对该非易失性计算机存储芯片进行电擦除和重新编程。NAND闪存(还称为“NAND存储器设备”或简称为“NAND”)是高密度型读写存储器,可以按块或页对该读写存储器进行编程和读取。单级单元(SLC)NAND闪存是一类闪存的示例,该闪存可以适用于高性能、高耐用性并且低功耗的小形状因数应用(例如,用于物联网(IoT)设备)。NAND存储器设备用于存储器卡、USB闪存驱动器、固态驱动器以及类似产品,用于数据的一般存储和传送,以及将配置数据存储在包括计算设备的众多数字设备中。NAND的特性如下:可以重写存储在其中的全部或部分数据图像,从而得以更新。如本文中所使用的,术语“数据图像”是指在NAND的一个或多个存储器单元中存储的信息。
NAND通常被组织成多个块,每个块由多个页面组成。与闪存有关的“块”,并且特别地NAND,包括具有标称长度的存储字节或位序列。该长度被称为块大小。通常,将数据存储到块中的过程一次完成整个页面,而擦除数据则以块为单位进行。
NAND闪存设备可以通过利用NAND闪存设备进行数据存储的其他设备(例如,片上系统(SoC)设备、IoT设备、计算设备等)接口。例如,其他设备可以使用存储器控制器与NAND闪存设备接口。存储器控制器可以根据标准化接口格式(诸如根据开放式NAND闪存接口(ONFI)标准(例如,ONFI 1.0))与NAND闪存接口以及通信。因而,存储器控制器和NAND闪存设备两者均可以遵循相同接口标准以用于通信。
在某些方面中,NAND闪存设备和存储器控制器可以使用并行接口进行通信。使用并行接口进行通信的这种NAND闪存设备可以被称为并行NAND设备。并行接口可以包括(例如,通过电线、线、迹线、导体等)在互连的NAND闪存设备和存储器控制器上的大量引脚(例如,13个引脚)。因而,不同的信号可以在大量并行引脚上传递,以使NAND闪存设备与存储器控制器进行通信。为了便于参考,NAND闪存设备与存储器控制器之间的连接可以是指“引脚”的术语。
然而,用于并行接口的大量引脚可以不适合用于利用NAND闪存的某些场景。例如,IoT设备在市场上变得无处不在。IoT设备可以包括嵌有电子器件、软件、传感器、执行器和连接性的不同设备,该连接性使得这些设备能够彼此通信并且交换数据。许多此类IoT设备可以需要是小巧节能的。例如,因为这种IoT设备可以需要依靠电池功率连续运行(例如,若干年),所以它们可以需要足够小以嵌入或定位在许多不同的区域中,并且可以需要提高能源效率。如果需要大量引脚来将存储器控制器连接到IoT设备的NAND闪存设备,则可以损害IoT设备的大小以容纳用于将存储器控制器耦合到NAND闪存设备的空间(例如,片上空间、管芯空间等)。
因而,在某些方面中,NAND闪存设备和存储器控制器可以利用串行接口进行通信。使用串行接口进行通信的这种NAND闪存设备可以被称为串行外设接口(SPI)NAND设备。因而,SPI NAND设备是串行存储器设备的示例。在SPI NAND设备中,与用于耦合到存储器控制器的并行NAND设备相比,可以使用更少(例如,4或6)引脚。这种SPI NAND设备可以有利地使用更少的空间以在诸如IoT设备的设备上实现。随着利用更多的SPI NAND设备,还需要对SPI NAND设备进一步改善。
发明内容
某些实施例提供了一种确定串行存储器设备的状态的方法。该方法包括:使用第一信号启用串行存储器设备。该方法还包括:基于使用第一信号对串行存储器设备的启用,来接收指示串行存储器设备的状态的标志。
其他实施例提供了一种电子设备,其包括串行存储器设备和存储器控制器。存储器控制器被配置为使用第一信号启用串行存储器设备。存储器控制器还被配置为基于对第一信号启用串行存储器设备的启用,来接收指示串行存储器设备的状态的标志。
其他实施例提供了一种非暂时性计算机可读介质,其包括指令,这些指令在由电子设备的处理器执行时,使得电子设备执行确定串行存储器设备的状态的方法。该方法包括:使用第一信号启用串行存储器设备。该方法还包括:基于使用第一信号启用串行存储器设备来接收指示串行存储器设备的状态的标志。
以下描述和相关附图详细阐述了一个或多个实施例的某些说明性特征。
附图说明
附图描绘了一个或多个实施例的某些方面,因此不应视为限制本公开的范围。
图1图示了根据本文中所公开的方面的包括SPI NAND存储器设备的计算设备的框图。
图2图示了用于在存储器控制器与SPI NAND设备之间执行获取特征(GETFEATURE)命令的示例信号图。
图3图示了根据本文中所公开的方面的用于在存储器控制器与SPI NAND设备之间执行获取特征命令的示例信号图。
图4是图示了根据本公开的某些方面的用于确定串行存储器设备的状态的示例操作的流程图。
为了便于理解,如果可以,则已经使用相同的附图标记来指定附图所共有的相同元件。应当设想,一个实施例的元件和特征可以有益地并入其他实施例中,而无需进一步叙述。
具体实施方式
本公开的各个方面提供了串行存储器设备的控制方法和装置,具体提供了串行存储器设备状态的确定系统和方法。
以下描述提供了示例,并不限制权利要求中所阐述的范围、适用性或实施例。在没有背离本公开的范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种示例可以适当省略、替代或添加各种过程或部件。例如,所描述的方法可以以与所描述的次序不同的次序执行,并且可以添加、省略或组合各种步骤。此外,关于一些示例所描述的特征可以在一些其他示例中组合。例如,可以使用本文中所阐述的任何数目的方面来实现一种装置或实践一种方法。另外,本公开的范围旨在覆盖这种装置或方法,该装置或方法使用附加于或不同于本文中所阐述的本公开的各个方面的其他结构、功能、或结构和功能来实践。应当理解,本文中所公开的本公开的任何方面可以由权利要求的一个或多个要素来体现。
尽管按照作为示例串行存储器设备的SPI NAND设备对本公开的某些教导进行了说明,但是该教导可应用于其他领域,诸如应用于其他串行存储器设备。所公开的教导不应被解释为限于SPI NAND设备或所说明的实施例。所说明的实施例仅是描述和说明本文中所公开的发明教导的示例的载体。
图1图示了根据本文中所公开的方面的包括SPI NAND存储器设备110的计算设备100(例如,IoT设备)的框图。计算设备100可以包括系统总线101,该系统总线101允许(一个或多个)处理器102、只读存储器(ROM)106、一个或多个输入/输出端口108以及存储器控制器104进行通信。附加地,SPI NAND存储器设备110可以被配置为通过存储器控制器104与系统总线101接口。计算设备100可以包括未图示的其他部件,诸如显示/输出设备、网络设备、或传感器。此外,计算设备100可以被实现在单个计算机芯片上或被实现为片上系统(SOC)。
SPI NAND存储器设备110可以被包括在计算设备100的硬件中作为永久存储器设备,或可以经由在计算设备100上的接口可移除地耦合到计算设备100。此外,SPI NAND存储器设备110可以被实现为多芯片模块或可以被实现在可以形成芯片集合并且一起使用的多个分立部件上。可以从SPI NAND存储器设备110存储、访问和读取数据。附加地,可以适当地写入和擦除在SPI NAND存储器设备110中存储的数据。存储器控制器104可以并入到SPINAND存储器设备110中作为单个芯片或作为单独部件。在其他方面中,存储器控制器104可以与SPI NAND存储器设备110分离。存储器控制器104可以被配置为控制NAND存储器设备110,诸如以下项的处理:分区数据、更新一个或多个分区表、读取数据、复制数据、存储数据和擦除数据。如所讨论的,可以存在将存储器控制器104连接到SPI NAND存储器设备110的多个引脚112。
常规地,对于NAND存储器设备(例如,SPI和并行),存储器控制器可以向NAND存储器设备发出命令以执行在该命令中发出的操作(诸如复位、读取、编程、擦除等),其可以指命令和/或操作。当接收命令时,NAND存储器设备进入繁忙状态,直到它完成请求的操作为止。繁忙状态的持续时间(例如,5μs、25μs、75μs等)可以基于所发出的命令而有所不同。
在NAND存储器设备处于繁忙状态时,NAND存储器设备无法执行附加存储器阵列相关操作。特别地,在诸如ONFI的某些标准中,在NAND存储器设备处于繁忙状态时,不允许该存储器控制器向该NAND存储器设备发出针对存储器阵列的相关操作(例如,复位、读取、编程、擦除等)的命令。因而,在某些方面中,存储器控制器需要能够确定NAND存储器设备是否处于繁忙状态。如果NAND存储器设备处于繁忙状态,则存储器控制器避免向NAND存储器设备发出存储器阵列相关命令,诸如直到NAND存储器设备不再处于繁忙状态为止。如果NAND存储器设备不是处于繁忙状态,则存储器控制器可以向NAND存储器设备发出存储器阵列相关命令。
在某些方面中,并行NAND存储器设备可以被配置为基于并行NAND存储器设备的状态来选择性地调整在并行NAND存储器设备的引脚中的一个引脚(例如,其被称为繁忙引脚)上的繁忙信号。例如,如果并行NAND存储器设备处于繁忙状态,则并行NAND存储器设备可以设置繁忙信号(例如,将繁忙信号设置为负极性信号)以指示并行NAND存储器设备处于繁忙状态。如果并行NAND存储器设备不是处于繁忙状态,则并行NAND存储器设备可以设置繁忙信号(例如,将繁忙信号设置为正极性信号)以指示并行NAND存储器设备不是处于繁忙状态。对于这种并行NAND存储器设备,存储器控制器可以通过检查在繁忙引脚上连续可用的繁忙信号来简单地确定并行NAND存储器设备的状态。例如,存储器控制器可以在任何给定时钟周期(甚至仅单个时钟周期)简单地检查并行NAND存储器设备的繁忙信号,以确定并行NAND存储器设备的状态。
在某些方面中,SPI NAND设备不具有专用于传输繁忙信号的引脚。因而,其他技术用于确定SPI NAND设备的状态。特别地,即使在处于繁忙状态时,SPI NAND设备也可以被配置为接受来自存储器控制器的获取特征命令。特别地,获取特征命令可以不是存储器阵列相关命令,这是因为它没有对在SPI NAND设备的存储器阵列中的实际数据执行操作,而是使得SPI NAND设备返回关于SPI NAND设备的操作的信息,该信息包括SPI NAND设备的状态。因此,SPI NAND设备被配置为响应于获取特征命令而返回关于SPI NAND设备的状态(例如,繁忙或不忙)的信息。例如,SPI NAND设备返回操作进行中(OIP)标志,并且OIP标志的值指示:操作是在SPI NAND设备处进行,从而意味着SPI NAND设备繁忙;还是操作没有在SPINAND设备处进行,从而意味着SPI NAND设备不忙(例如,空闲)。
图2图示了用于在存储器控制器与SPI NAND设备之间执行获取特征命令的示例信号图200。在某些方面中,在信号图200中的信号在SPI NAND设备的引脚上由存储器控制器(例如,存储器控制器104)和SPI NAND设备(例如,SPI NAND设备110)生成并且在其之间传递。
信号图200图示了四个单独信号:芯片选择信号(CS#)、串行时钟信号(SCLK)、从输出信号(SO)(例如,主输入从输出(MISO)信号)、以及从输入信号(SI)(例如,主输出从输入(MOSI)信号)。因此,在某些方面中,信号图200指示4引脚SPI NAND设备,4个引脚中的每个引脚在存储器控制器104与SPI NAND设备110之间携载信号中的一个不同信号。
可以由存储器控制器104驱动/控制CS#信号。可以由存储器控制器104使用CS#信号来选择/启用对SPI NAND设备110的控制。在某些方面中,存储器控制器104可以被耦合到多个从设备并且控制多个从设备,诸如SPI NAND设备110,并且存储器控制器104可以利用CS#信号来使能一次控制从设备中的一个从设备。特别地,在某些方面中,存储器控制器104可以具有与被配置为携载CS#信号的每个从设备上的引脚的单独连接。因此,每个从设备可以从存储器控制器104接收不同CS#信号。进一步地,针对SCLK信号、SO信号和SI信号中的每个信号,存储器控制器104和从设备中的每项可以使用共享的连接。例如,存储器控制器104可以具有与用于多个从设备的携载SCLK信号的引脚的每个引脚的一个共享连接、与用于多个从设备的携载SO信号的引脚中的每个引脚的另一共享连接、以及与用于多个从设备的携载SI信号的引脚中的每个引脚的另一共享连接。在某些方面中,由对应CS#信号一次仅启用一个从设备(诸如SPI NAND设备110)作用于来自存储器控制器104的SCLK信号、SO信号和SI信号,而未启用的任何从设备都忽略这些信号。
特别地,当SPI NAND设备110未被启用时,用于SPI NAND设备110的CS#信号可以通过存储器控制器104被设置为第一值/禁用(例如,高,诸如正极性信号)。另外,当SPI NAND设备110被启用时,用于SPI NAND设备110的CS#信号可以通过存储器控制器104被设置为第二值/启用(例如,低,诸如负极性信号)。
可以由存储器控制器104驱动/控制SCLK信号。SCLK信号是由存储器控制器104和/或SPI NAND设备110用于基于时钟信号的时钟周期执行操作的时钟信号。在某些方面中,存储器控制器104仅在其启用使用对应CS#信号的SPI NAND设备110(或其他从设备)时驱动/启用时钟信号。当没有SPI NAND设备110(或其他从设备)被启用时,存储器控制器104可以不驱动/可以禁用时钟信号(例如,让其处于低或高,无需循环/切换为时钟信号)。
可以由存储器控制器104驱动/控制SI信号。可以由存储器控制器104使用SI信号以从存储器控制器104(例如,主设备)向SPI NAND设备110(例如,从设备)发送数据/信息(例如,命令、地址、将要写入的数据等)。
可以由SPI NAND设备110驱动/控制SO信号。可以由SPI NAND设备110使用SO信号以从SPI NAND设备110向存储器控制器104发送数据/信息(例如,读取的数据、SPI NAND设备110的状态信息等)。
应当指出,尽管关于4引脚SPI NAND设备设计对某些方面进行了描述,但是本文中所讨论的技术也可以与具有不同数目的引脚的SPI NAND设备一起使用。例如,本文中所讨论的某些方面可以与6引脚SPI NAND设备设计一起使用。6引脚SPI NAND设备可以利用与4引脚SPI NAND设备设计相同的CS#信号和SCLK信号。因而,在4引脚SPI NAND设备设计和6引脚SPI NAND设备设计中,可以以相同方式利用2引脚。在某些方面中,6引脚SPI NAND设备设计的其余4个引脚中的一个引脚可以用于SI信号和SO信号。特别地,一次仅SPI NAND设备110中的一个SPI NAND设备可以向存储器控制器104通信数据,或存储器控制器104可以向SPI NAND设备110传达数据,从而意味着一次仅发送SI信号或SO信号中的一个信号。因此,一个引脚可以共享SI信号和SO信号的携载。在某些方面中,6引脚SPI NAND设备的其余3个引脚用于携载SO信号。因而,6引脚SPI NAND设备中的4个引脚一次可以并行携载SO信号,使得数据可以更快地从SPI NAND设备传送到存储器控制器。
如所讨论的,在某些方面中,存储器控制器104被配置为确定SPI NAND设备110的状态(例如,繁忙或不忙)。信号图200指示通过存储器控制器104发出获取特征命令以确定SPI NAND设备110的状态的一种常规方法。
如所示出的,存储器控制器104首先通过启用与SPI NAND设备110相关联的CS#信号来启用SPI NAND设备110。基于启用CS#信号,存储器控制器104启用SCLK信号。在时钟周期0的上升处,存储器控制器104发起在SI信号上发出获取特征命令205。特别地,存储器控制器104可以在8个时钟周期(例如,从周期0到周期7)上切换SI信号,以发出与获取特征命令205相对应的位流(例如,0Fh)。在发出获取特征命令205之后,存储器控制器104可以发起发出与在SI信号上的命令相对应的地址210(例如,在SPI NAND设备110的存储器阵列中的位置的地址)。特别地,存储器控制器104可以在8个时钟周期(例如,从周期8到周期15)上切换SI信号,以发出与地址210相对应的位流。尽管获取特征命令不可以使用地址,但是无论如何,地址都可以根据在存储器控制器104与SPI NAND设备110之间的接口标准发送。
基于接收获取特征命令205,SPI NAND设备110被配置为根据所讨论的SO信号向存储器控制器104发送信息,包括发送OIP标志215。特别地,SPI NAND设备110可以在8个时钟周期(例如,从周期16到周期23)上切换SO信号,以发出与该信息相对应的位流。位流的最后一位(例如,与周期23相对应的第8位)可以与OIP标志215相对应。在某些方面中,在SPINAND设备110在SO信号上发送信息之后,存储器控制器104禁用CS#信号和SCLK信号。
因而,基于信号图200,为了接收OIP标志并且确定SPI NAND设备110的状态,存储器控制器104可以花费24个时钟周期。在每个时钟周期期间,消耗了附加功率以在存储器控制器104与SPI NAND设备110之间进行通信,诸如用于以下各项的功率:有限状态机(FSM)、用于传递信号的总线、将存储器控制器104和/或SPI NAND设备110连接到基板的焊盘、(例如,设备100的)设备接口逻辑等。因此,由于大量时钟周期被用于确定状态,所以消耗了大量功率。
另外,如所讨论的,SPI NAND设备110可以在很长的一段时间中(例如,5μs、25μs、75μs等)处于繁忙状态,并且存储器控制器104可以需要在该时间段期间重复(例如,周期性)检查SPI NAND设备110的状态,以确定SPI NAND设备110何时不再处于繁忙状态。因此,花费24个时钟周期来多次确定SPI NAND设备110的状态这一事实进一步加剧了功耗问题。
因此,使用信号图200的信令的用于确定SPI NAND设备110的状态的常规技术可以是功率效率低下的。例如,这些技术可以不适用于IoT设备。
本文中的某些方面涉及用于确定SPI NAND设备或其他串行存储器设备的状态的系统和方法,该系统和方法的功率效率高于常规技术的功率效率。特别地,在某些方面中,该系统和方法减少了由存储器控制器确定SPI NAND设备的状态所花费的时钟周期数。通过花费较少的时钟周期,改善了用于确定SPI NAND设备状态的功率效率,因此改善了诸如包括SPI NAND设备的设备100的设备的整体功率效率。这对于功率效率是关键性能指标的情况(诸如在IoT设备中)尤其有利。
如所讨论的,可以通过多个从设备共享用于将SO信号携载到存储器控制器104的连接。因而,一次仅允许诸如SPI NAND设备110的一个从设备来驱动/发送SO信号。进一步地,如在信号图200中所示出的,当存储器控制器104正在发出获取特征命令和地址时,SPINAND设备110不驱动SO信号。然而,在该时间期间,SO信号也不由另一从设备驱动,因此SPINAND设备110可以在该时间段中驱动SO信号。另外,如果在完成命令和地址的发送之前,由存储器控制器104禁用/取消断言CS#信号,则SPI NAND设备110被配置为将CS#信号的禁用视为不完整命令、并且在没有故障的情况下返回(例如,返回到空闲状态/不忙状态)。基于此,本文中的某些方面涉及一种SPI NAND设备,该SPI NAND设备被配置为当其在由存储器控制器104用于发出命令和/或地址的时间段的至少一部分期间通过CS#信号被启用时,使用指示SPI NAND设备的状态(例如,繁忙或空闲)的信息(例如,1位、信号电平等)驱动SO信号。
在某些方面中,SPI NAND设备被配置为使用在CS#信号被启用的第一时钟周期处开始的一个时钟周期内的信息来驱动SO信号。在其他方面中,SPI NAND设备被配置为使用在由存储器控制器104用于发出命令和/或地址的时间段的至少一部分期间的任何合适时钟周期(例如,时钟周期0至时钟周期15)处开始的多个时钟周期(例如,从1至16中的任何位置)的信息驱动SO信号。
图3图示了根据本文中所公开的方面的用于在存储器控制器与SPI NAND设备之间执行获取特征命令的示例信号图300。在某些方面中,在信号图300中的信号通过SPI NAND设备的引脚由存储器控制器(例如,存储器控制器104)和SPI NAND设备(例如,SPI NAND设备110)生成并且在其之间传递。
如所示出的,存储器控制器104首先通过启用与SPI NAND设备110相关联的CS#信号来启用SPI NAND设备110。基于启用CS#信号,存储器控制器104启用SCLK信号。在CS#信号被启用的相同时钟周期(例如,第一时钟周期,时钟周期0(例如,在上升沿、下降沿等))处,基于接收启用的CS#信号,SPI NAND设备110被配置为在指示SPI NAND设备110的状态的SO信号上向存储器控制器104发送信息。例如,SPI NAND设备110被配置为在指示SPI NAND设备110的状态(例如,繁忙或空闲)的时钟周期0处驱动具有标志315(例如,1位,其值由SO信号是高(例如,正极性信号)还是低(例如,负极性信号)指示)的SO信号,该标志与图2的OIP标志215类似。标志315可以被称为OIP标志、就绪(RDY)标志等。存储器控制器104可以感测SO信号,并且基于标志315来确定SPI NAND设备110的状态。
在某些方面中,SPI NAND设备110在任何命令和/或地址周期期间驱动具有标志315的SO信号,而与通过存储器控制器104在SI信号上驱动的命令和/或地址无关。
在某些方面中,在使标志315被发信号通知之后(例如,在第一时钟周期,时钟周期0之后),存储器控制器104禁用/解除断言CS#信号。因而,存储器控制器104禁用SCLK信号(例如,在时钟周期0之后)。基于在SI信号上以少于发信号通知命令和地址所需的周期数来断言(例如,仅在1个周期内断言)CS#信号,SPI NAND设备110将CS#信号的断言视为不完整命令,然后返回到空闲。
基于信号图300,为了接收标志315并且确定SPI NAND设备110的状态,存储器控制器104可以仅花费1个时钟周期(或在其他实施例中,16个或更少时钟周期)。与使用获取特征命令相比较,功耗降低了多达24倍,从而极大地减少了功耗。进一步地,因为存储器控制器104的有限状态机无需改变状态(例如,改变门的状态)以发送命令信息和地址信息,所以当SPI NAND设备110处于繁忙状态时,该有限状态机仍然可以处于单个状态(等待标志315指示SPI NAND设备110处于空闲/就绪)。这进一步减少了确定SPI NAND设备110的状态的功耗。
另外,SPI NAND设备110自身不必通过使用其有限状态机来解码传入命令并且递送状态信息来节省功率。例如,在某些方面中,SPI NAND设备110可以被配置为使用简单多路复用器来驱动在SO信号上的标志315。特别地,多路复用器可以具有CS#信号和SPI NAND设备110的状态作为输入。当接收到CS#信号时,多路复用器可以被配置为在SO信号上输出SPI NAND设备110的状态。
图4是图示了根据本公开的某些方面的用于确定串行存储器设备的状态的示例操作的流程图。例如,可以由存储器控制器104和/或SPI NAND设备110或另一合适电路执行图4的操作步骤。
在步骤405处,使用第一信号启用串行存储器设备。例如,存储器控制器104断言CS#信号以启用SPI NAND设备110,并且CS#信号是第一信号。在另一示例中,存储器控制器104基于CS#信号的断言来断言SCLK信号,并且SCLK信号的一个或多个时钟周期是第一信号。
在步骤410处,基于使用第一信号对串行存储器设备的启用,来接收指示串行存储器设备的状态的标志。例如,SPI NAND设备110断言具有指示SPI NAND设备110的状态的标志的SO信号,并且存储器控制器104接收具有指示SPI NAND设备110的状态的标志的SO信号。在某些方面中,SPI NAND设备110在单个时钟周期(例如,串行存储器设备被启用的第一时钟周期时)上断言该标志。
提供前面描述以使得本领域的任何技术人员能够实践本文中所描述的各种实施例。对这些实施例的各种修改对于本领域技术人员而言是显而易见的,并且本文中所定义的一般原理可以应用于其他实施例。例如,在没有背离本公开的范围的情况下,可以对所讨论的元件的功能和布置做出改变。各种示例可以适当省略、替代或添加各种过程或部件。此外,关于一些示例所描述的特征可以在一些其他示例中组合。例如,可以使用本文中所阐述的任何数目的方面来实现一种装置或实践一种方法。另外,本公开的范围旨在覆盖这种装置或方法,该装置或方法使用附加于或不同于本文中所阐述的本公开的各个方面的其他结构、功能、或结构和功能来实践。应当理解,本文中所公开的本公开的任何方面可以由权利要求的一个或多个要素来体现。
如本文中所使用的,词语“示例性”意指“用作示例、实例或说明”。本文中被描述为“示例性”的任何方面不必被解释为比其他方面更优选或更有利。
如本文中所使用的,短语“至少一个”是指是指项目列表中的那些项目的任何组合,其包括单个成员。例如,“a、b或c中的至少一个”旨在覆盖a、b、c、a-b、a-c、b-c和a-b-c、以及与同一元素的倍数的任何组合(例如,a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c和c-c-c或a、b和c的任何其他次序)。
如本文中所使用的,术语“确定”涵盖广泛的多种动作。例如,“确定”可以包括算术、计算、处理、推导、调查、查找(例如,在表、数据库或另一数据结构中查找)、确信等。此外,“确定”可以包括接收(例如,接收信息)、访问(例如,访问存储器中的数据)等。此外,“确定”可以包括解析、选择、选定、建立等。
本文中所公开的方法包括用于实现方法的一个或多个步骤或动作。在没有背离权利要求的范围的情况下,方法步骤和/或动作可以彼此互换。换句话说,除非指定了步骤或动作的特定次序,否则在没有背离权利要求的范围的情况下,可以修改特定步骤和/或动作的次序和/或使用。进一步地,上文所描述的方法的各种操作可以通过能够执行对应功能的任何合适器件来执行。该器件可以包括各种硬件部件和/或软件部件和/或模块,其包括但不限于电路、专用集成电路(ASIC)或处理器。通常,在附图中图示了操作的情况下,那些操作可以具有编号相似的对应配对器件加功能部件。
结合本公开所描述的各种说明性逻辑块、模块和电路可以使用被设计为执行本文中所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑设备(PLD)、分立门或晶体管逻辑、分立硬件部件或其任何组合控制器来实现或执行。通用处理器可以是微处理器,但备选地,处理器可以是任何市售处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、与DSP核心结合的一个或多个微处理器、或任何其他这样的配置。
处理系统可以使用总线架构来实现。总线可以包括任何数目的互连总线和桥接器,这取决于处理系统的特定应用和总体设计约束。总线可以将包括处理器、机器可读介质和输入设备/输出设备等的各种电路链接在一起。用户接口(例如,键盘、显示器、鼠标、操纵杆等)也可以连接到总线。总线还可以链接各种其他电路,诸如定时源、外设、电压调节器、功率管理电路等,这些在本领域中是众所周知的,因此不再赘述。该处理器可以使用一个或多个通用处理器和/或专用处理器来实现。示例包括微处理器、微控制器、DSP处理器、以及可以执行软件的其他电路。本领域技术人员应当认识到,依据特定应用和强加于整个系统的总体设计约束,如何最佳实现针对处理系统所描述的功能。
如果以软件实现,则功能可以作为一个或多个指令或代码而存储在计算机可读介质上或通过其传输。软件应当广义地解释为意指指令、数据或其任何组合,无论被称为软件、固件、中间件、微码、硬件描述语言、还是其他方式。计算机可读介质包括计算机存储介质和通信介质,诸如有助于将计算机程序从一个地方传送到另一地方的任何介质。处理器可以负责管理总线和一般处理,其包括执行计算机可读存储介质上存储的软件模块。计算机可读存储介质可以耦合到处理器,使得处理器可以从该存储介质读取信息,并且可以向该存储介质写入信息。作为备选,存储介质可以与处理器集成在一起。通过示例,计算机可读介质可以包括传输线、数据所调制的载波、和/或计算机可读存储介质,其上存储的指令与无线节点分开,处理器可以通过总线接口访问所有这些指令。备选地或附加地,计算机可读介质或其任何部分可以集成到处理器中,诸如高速缓存和/或通用寄存器文件可以存在的情况。通过示例,机器可读存储介质的示例可以包括RAM(随机存取存储器)、闪存、ROM(只读存储器)、PROM(可编程只读存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦可编程只读存储器)、寄存器、磁盘、光盘、硬盘驱动器、或任何其他合适存储介质、或其任何组合。机器可读介质可以体现在计算机程序产品中。
软件模块可以包括单个指令或多个指令,并且可以被分布在数个不同的代码段上、不同的程序之间、以及多个存储介质上。计算机可读介质可以包括若干个软件模块。软件模块包括指令,这些指令当由诸如处理器之类的装置执行时,使得处理系统执行各种功能。软件模块可以包括传输模块和接收模块。每个软件模块可以驻留在单个存储设备中,还可以分布在多个存储设备中。通过示例,当触发事件发生时,软件模块可以从硬盘驱动器加载到RAM中。在执行软件模块期间,处理器可以将指令中的一些指令加载到高速缓存中以提高访问速度。然后,一个或多个高速缓存行可以加载到通用寄存器文件中,以供处理器执行。当提及软件模块的功能时,应当理解,这种功能当执行来自该软件模块的指令时,通过处理器实现。
以下权利要求书并不旨在限于本文中所示出的实施例,而是符合与权利要求书的语言一致的最大范围。在权利要求内,除非特别声明,以单数形式提及元件并不旨在意指“一个且仅一个”,而是“一个或多个”。除非另有明确说明,否则术语“一些”是指一个或多个。根据35U.S.C.§112(f)的规定,除非使用短语“用于……的器件”明确表述元素,或在方法权利要求的情况下使用短语“用于……的步骤”陈述元素,否则不建立权利要求元素。本领域普通技术人员已知或以后得知的贯穿本公开内容所描述的各个方面的元件的所有结构等同物和功能等同物均通过引用明确并入本文,并且旨在由权利要求书涵盖。而且,无论在权利要求书中是否明确叙述了本文中所公开的内容,这种公开内容都不旨在奉献于公众。

Claims (20)

1.一种确定串行存储器设备的状态的方法,包括:
使用第一信号启用所述串行存储器设备;以及
基于使用所述第一信号对所述串行存储器设备的启用,来接收指示所述串行存储器设备的状态的标志。
2.根据权利要求1所述的方法,其中使用所述第一信号启用所述串行存储器设备包括:将所述第一信号的值从第一值改变为第二值,其中接收所述标志发生在所述第一信号从所述第一值改变为所述第二值的相同时钟周期中。
3.根据权利要求2所述的方法,还包括:基于将所述第一信号的所述值从所述第一值改变为所述第二值来启用时钟信号,其中所述相同时钟周期是所述时钟信号的时钟周期。
4.根据权利要求2所述的方法,还包括:在接收到所述标志之后,通过将所述第一信号的所述值改变为所述第一值,来使用所述第一信号禁用所述串行存储器设备。
5.根据权利要求4所述的方法,其中所述禁用发生在所述相同时钟周期期间。
6.根据权利要求1所述的方法,其中所述串行存储器设备包括串行外设接口NAND存储器设备。
7.根据权利要求1所述的方法,其中所述第一信号包括由存储器控制器所控制的芯片选择信号;并且其中所述标志由所述存储器控制器接收,作为由所述串行存储器设备控制的从输出信号的一部分。
8.根据权利要求7所述的方法,其中接收所述标志的发生与以下信息无关,所述信息是在由所述存储器控制器去往所述串行存储器设备的从输入信号上指示的。
9.一种电子设备,包括:
串行存储器设备;以及
存储器控制器,被配置为:
使用第一信号启用所述串行存储器设备;以及
基于使用所述第一信号对所述串行存储器设备的启用,来接收指示所述串行存储器设备的状态的标志。
10.根据权利要求9所述的电子设备,其中使用所述第一信号启用所述串行存储器设备包括:将所述第一信号的值从第一值改变为第二值,其中接收所述标志发生在所述第一信号从所述第一值改变为所述第二值的相同时钟周期中。
11.根据权利要求10所述的电子设备,其中所述存储器控制器还被配置为:基于将所述第一信号的所述值从所述第一值改变为所述第二值来启用时钟信号,其中所述相同时钟周期是所述时钟信号的时钟周期。
12.根据权利要求10所述的电子设备,其中所述存储器控制器还被配置为:在接收到所述标志之后,通过将所述第一信号的所述值改变为所述第一值,来使用所述第一信号禁用所述串行存储器设备。
13.根据权利要求12所述的电子设备,其中所述禁用发生在所述相同时钟周期期间。
14.根据权利要求9所述的电子设备,其中所述串行存储器设备包括串行外设接口NAND存储器设备。
15.根据权利要求9所述的电子设备,其中所述第一信号包括由存储器控制器控制的芯片选择信号;并且其中所述标志由所述存储器控制器接收,作为由所述串行存储器设备控制的从输出信号的一部分。
16.根据权利要求15所述的电子设备,其中接收所述标志的发生与以下信息无关,所述信息是在由所述存储器控制器去往所述串行存储器设备的从输入信号上指示的。
17.一种非暂时性计算机可读介质,包括指令,所述指令在由电子设备的处理器执行时,使得所述电子设备执行确定串行存储器设备的状态的方法,所述方法包括:
使用第一信号启用所述串行存储器设备;以及
基于使用所述第一信号对所述串行存储器设备的启用,来接收指示所述串行存储器设备的状态的标志。
18.根据权利要求17所述的非暂时性计算机可读介质,其中使用所述第一信号启用所述串行存储器设备包括:将所述第一信号的值从第一值改变为第二值,其中接收所述标志发生在所述第一信号从所述第一值改变为所述第二值的相同时钟周期中。
19.根据权利要求18所述的非暂时性计算机可读介质,其中所述方法还包括:基于将所述第一信号的所述值从所述第一值改变为所述第二值来启用时钟信号,其中所述相同时钟周期是所述时钟信号的时钟周期。
20.根据权利要求18所述的非暂时性计算机可读介质,其中所述方法还包括:在接收到所述标志之后,通过将所述第一信号的所述值改变为所述第一值,来使用所述第一信号禁用所述串行存储器设备。
CN201980035743.3A 2018-05-31 2019-04-25 用于串行存储器设备控制的方法和系统 Pending CN112166470A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/993,926 2018-05-31
US15/993,926 US10522201B2 (en) 2018-05-31 2018-05-31 Methods and systems for serial memory device control
PCT/US2019/029110 WO2019231589A1 (en) 2018-05-31 2019-04-25 Methods and systems for serial memory device control

Publications (1)

Publication Number Publication Date
CN112166470A true CN112166470A (zh) 2021-01-01

Family

ID=66857972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980035743.3A Pending CN112166470A (zh) 2018-05-31 2019-04-25 用于串行存储器设备控制的方法和系统

Country Status (3)

Country Link
US (1) US10522201B2 (zh)
CN (1) CN112166470A (zh)
WO (1) WO2019231589A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210012439A (ko) * 2019-07-25 2021-02-03 삼성전자주식회사 마스터 지능 소자 및 이의 제어 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102968393A (zh) * 2011-08-31 2013-03-13 辉达公司 存储器控制器和动态随机存取存储器接口
US20140095764A1 (en) * 2012-09-28 2014-04-03 Atmel Corporation Microcontroller with integrated interface enabling reading data randomly from serial flash memory
US20180024763A1 (en) * 2016-07-22 2018-01-25 Toshiba Memory Corporation Memory system storing block protection information
US20180052639A1 (en) * 2016-08-16 2018-02-22 Samsung Electronics Co., Ltd. Apparatus for outputting internal state of memory apparatus and memory system using the apparatus

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100442091B1 (ko) 2002-07-09 2004-07-27 삼성전자주식회사 내장된 각 칩들의 성능을 충분히 동작시킬 수 있는 멀티 칩
JP2008212775A (ja) * 2007-02-28 2008-09-18 Mitsubishi Materials Corp 塗布工具
US8843692B2 (en) 2010-04-27 2014-09-23 Conversant Intellectual Property Management Inc. System of interconnected nonvolatile memories having automatic status packet
CN102385556B (zh) * 2011-11-08 2014-11-26 聚辰半导体(上海)有限公司 串行非易失性存储器及解除存储器写保护的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102968393A (zh) * 2011-08-31 2013-03-13 辉达公司 存储器控制器和动态随机存取存储器接口
US20140095764A1 (en) * 2012-09-28 2014-04-03 Atmel Corporation Microcontroller with integrated interface enabling reading data randomly from serial flash memory
US20180024763A1 (en) * 2016-07-22 2018-01-25 Toshiba Memory Corporation Memory system storing block protection information
US20180052639A1 (en) * 2016-08-16 2018-02-22 Samsung Electronics Co., Ltd. Apparatus for outputting internal state of memory apparatus and memory system using the apparatus

Also Published As

Publication number Publication date
WO2019231589A1 (en) 2019-12-05
US20190371373A1 (en) 2019-12-05
US10522201B2 (en) 2019-12-31

Similar Documents

Publication Publication Date Title
US11151027B2 (en) Methods and apparatuses for requesting ready status information from a memory
US7171526B2 (en) Memory controller useable in a data processing system
US10338846B2 (en) Method for reducing read buffer size requirements in NVMe based solid state drives
US8392649B2 (en) Memory storage device, controller, and method for responding to host write commands triggering data movement
CN108121672A (zh) 一种基于NandFlash存储器多通道的存储阵列控制方法与装置
US10372338B2 (en) Memory controller and data processing circuit with improved system efficiency
US9092322B2 (en) Processor system and control method thereof
CN104239229A (zh) 数据储存装置及用于快闪存储器的数据读取方法
KR20140035772A (ko) 임베디드 멀티미디어 카드, 상기 임베디드 멀티미디어 카드를 포함하는 임베디드 멀티미디어 카드 시스템 및 상기 임베디드 멀티미디어 카드의 동작 방법
US20160154747A1 (en) State change in systems having devices coupled in a chained configuration
US9274860B2 (en) Multi-processor device and inter-process communication method thereof
US9804983B2 (en) Controlling method, connector, and memory storage device
US9037842B2 (en) Booting in systems having devices coupled in a chained configuration
US9697163B2 (en) Data path configuration component, signal processing device and method therefor
US10522201B2 (en) Methods and systems for serial memory device control
US20080155366A1 (en) Data access method for serial bus
US20210034294A1 (en) Non-volatile dual in-line memory module (nvdimm) device assisted operations management
US20150046669A1 (en) Storage system and method for operating same
US6952750B2 (en) Method and device for providing a low power embedded system bus architecture
US20140281759A1 (en) Bus protocol checker, system on chip including the same, bus protocol checking method
TWI820952B (zh) 藉助於預定命令來進行記憶體裝置的資料存取控制的方法及設備
TWI807936B (zh) 藉助於輔助設定管理來進行在預定通訊架構中的記憶體裝置的自動設定控制的方法、記憶體裝置、電子裝置以及記憶體裝置的記憶體控制器
WO2016053146A1 (ru) Компьютерная система
CN116680223A (zh) 总线接口转接方法、逻辑器件及设备
CN117253518A (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