存储器协议的制作方法


存储器协议
1.本技术是申请日为2017年05月25日,申请号为“201780034967.3”,而发明名称为“存储器协议”的发明专利申请的分案申请。
技术领域
2.本发明大体上涉及存储器装置,且更特定来说,本发明涉及用于存储器协议的设备及方法。


背景技术:



3.存储器装置通常提供为计算机或其它电子装置中的内部电路半导体电路集成电路。存在许多不同类型存储器,包含易失性存储器及非易失性存储器。易失性存储器可需要电力以维持其数据,且包含随机存取存储器(ram)、动态随机存取存储器(dram)及同步动态随机存取存储器(sdram)等等。非易失性存储器可通过在未被供电时保持所存储数据来提供持久性数据且可包含nand快闪存储器、nor快闪存储器、只读存储器(rom)、电可擦除可编程rom(eeprom)、可擦除可编程rom(eprom)及电阻可变存储器(例如,相变随机存取存储器(pcram)、电阻性随机存取存储器(rram)及磁阻性随机存取存储器(mram))等等。
4.存储器还用作宽广范围的电子应用的易失性及非易失性数据存储装置。非易失性存储器可用于(例如)个人计算机、便携式存储器棒、数码相机、蜂窝电话、便携式音乐播放器(例如mp3播放器)、电影播放器及其它电子装置中。存储器单元可经布置为阵列,其中所述阵列用于存储器装置中。
5.存储器可为计算装置中使用的存储器模块(例如,双列直插存储器模块(dimm))的部分。存储器模块可包含易失性存储器(例如dram)及/或非易失性存储器(例如快闪存储器或rram)。dimm可用作计算系统中的主存储器。


技术实现要素:



6.有鉴于此,本技术提供一种存储器装置以解决上述问题
7.依据本技术的一实施例,提出一种设备。所述设备包括存储器装置及控制器。所述控制器其耦合到所述存储器装置。所述控制器经配置以:依据从主机接收到的屏障命令在所述存储器装置上执行命令,其中所述屏障命令指示先前被所述存储器装置所接收到的命令将在所述存储装置在所述屏障命令之后所接收到的命令之前执行。
8.依据本技术的一实施例,提出一种用以执行命令的方法,其包括:在存储器装置处接收屏障命令和第一数量的命令;以及响应所述屏障命令的接收,在执行所述第一数量的命令之前执行在所述第一数量的命令之前被接收的命令。
9.依据本技术的一实施例,提出一种用以传送命令的方法,包括:向存储器装置传送第一数量的命令;以及向所述存储器装置传送屏障命令和第二数量的命令,其中所述屏障命令指示所述第二数量的命令将在执行所述第一数量的命令之后执行。
附图说明
10.图1是根据本发明的若干实施例的呈包含存储器系统的计算系统的形式的设备的框图。
11.图2a到2c说明根据本发明的若干实施例的与块缓冲器相关联的寄存器及命令。
12.图3说明根据本发明的若干实施例的包含读取增量信息的读取命令。
13.图4说明根据本发明的若干实施例的若干读取命令及屏障命令。
14.图5说明根据本发明的若干实施例的包含突发长度信息的读取命令及写入命令。
15.图6a到6d说明根据本发明的若干实施例的用以指示读取缓冲器的大小及写入缓冲器的大小的寄存器。
具体实施方式
16.本发明包含与存储器协议相关的设备及方法。实例设备可基于使用块配置寄存器从主机接收的命令对存储器装置上的若干块缓冲器执行操作,其中所述操作可从所述若干块缓冲器读取数据及将数据写入到存储器装置上的所述若干块缓冲器。
17.在本发明的一或多个实施例中,块配置寄存器可用于界定存储器装置上的若干块缓冲器。主机可直接存取所述块缓冲器且对所述块缓冲器执行读取及/或写入命令。块配置寄存器可包含关联的块缓冲器寄存器及目标地址寄存器对,其中所述块缓冲器寄存器各自包含用于每一块缓冲器的起始地址及结束地址且所述目标地址寄存器各自包含与每一块缓冲器相关联的存储器阵列中的目标地址。主机可将读取及/或写入命令发送到存储器装置以从与起始地址、结束地址及目标地址相关联的所述块缓冲器读取及/或写入数据。块配置寄存器还可包含状态寄存器,其包含用于块缓冲器中的数据的状态信息,所述状态信息当由存储器装置接收及执行读取及/或写入命令时由主机更新。
18.在本发明的一或多个实施例中,所述存储器协议可用于以确定性及/或非确定性时序执行操作。所述存储器协议可包含发送具有读取增量值的读取命令,其中所述读取增量值向所述控制器指示使用于将存储器装置读取识别号指派到读取命令的计数器递增的值。所述存储器协议可包含从主机发送屏障命令,其中所述屏障命令指示由存储器装置先前接收的命令在由存储器装置在屏障命令后接收的命令之前执行。
19.在一或多个实施例中,所述存储器协议可包含发送具有指示用于所述存储器装置的突发长度的突发长度信号的命令。所述突发长度信号可基于对于命令的请求的大小及/或基于将对其执行命令的某一类型存储器装置。所述存储器协议可包含发送命令以设置缓冲器寄存器,所述缓冲器寄存器配置具有第一特定大小的读取缓冲器部分及第二特定大小的写入缓冲器部分的缓冲器。
20.在本发明的以下详细描述中,参考附图,所述附图形成本发明的一部分且其中以说明的方式展示本发明的若干实施例可如何实践。这些实施例经充分详细地描述以使所属领域的一般技术人员能够实践本发明的所述实施例,且应理解可利用其它实施例且可在不脱离本发明的范围的情况下作出过程改变、电改变及/或结构改变。如本文中所使用,指示符“n”指示本发明的若干实施例中可包含若干如此指示的特定特征。
21.如本文中所使用,“若干”某物可指代一或多个此类事物。举例来说,若干存储器装置可指代一或多个存储器装置。此外,如本文中所使用的指示符“n”(尤其相对于图式中的
参考数字)指示本发明的若干实施例中可包含若干如此指示的特定特征。
22.本文中的图式遵循编号惯例,其中第一数字或前几个数字对应于图式编号且其余数字识别图式中的元件或组件。可通过使用类似数字而识别不同图式之间的类似元件或组件。如应了解,可添加、交换及/或消除本文中在各种实施例中所展示的元件以便提供本发明的若干额外实施例。另外,图中所提供组件的比例及相对尺寸希望说明本发明的各个实施例,而不应被视为意指限制。
23.图1是根据本发明的一或多个实施例的包含呈若干存储器系统104-1

104-n的形式的设备的计算系统100的功能框图。如本文中所使用,“设备”可指代(但不限于)多种结构或结构的组合中的任何者,例如电路或电路系统、裸片或若干裸片、模块或若干模块、装置或若干装置、系统或若干系统。在图1中所说明的实施例中,存储器系统104-1

104-n可包含一或多个存储器装置110-1、

、110-x、110-y。在一或多个实施例中,存储器装置110-1、

、110-x、110-y可为双列直插存储器模块(dimm)。dimm可包含易失性存储器及/或非易失性存储器,分别例如(举例来说)nvdimm及dram dimm。在若干实施例中,存储器系统104-1、

、104-n可包含多芯片装置。多芯片装置可包含若干不同存储器类型及/或存储器模块。举例来说,存储器系统可包含任何类型的模块上的非易失性或易失性存储器。下文关于图1到4描述的实例将dimm用作存储器模块,但本发明的协议可用于其中存储器可执行确定性及/或非确定性命令的任何存储器系统上。图1中,存储器系统104-1经由通道112-1耦合到主机且可包含存储器装置110-1、

、110-x且存储器系统104-n经由通道112-n耦合到主机且可包含存储器装置110-1、

、110-y。在此实例中,每一存储器装置110-1、

、110-x、110-y包含控制器114。控制器114可从主机102接收命令且控制对存储器装置执行所述命令。而且,在若干实施例中,本发明的协议可在没有控制器的情况下由存储器装置(例如,dimm)实施,且使用本发明的协议执行所述命令可内建于所述存储器装置中。取决于存储器装置的类型,主机102可使用本发明的协议及/或现有协议将命令发送到存储器装置110-1、

、110-x、110-y。举例来说,主机可使用本发明的协议与nvdimm在相同通道(例如,通道112-1)上通信且使用现有协议与都处于相同存储器系统上的dram dimm通信。
24.如图1中所说明,主机102可耦合到存储器系统104-1

104-n。在若干实施例中,每一存储器系统104-1

104-n可经由通道耦合到主机102。在图1中,存储器系统104-1经由通道112-1耦合到主机102且存储器系统104-n经由通道112-n耦合到主机102。主机102可为膝上型计算机、个人计算机、数码相机、数字记录及播放装置、移动电话、pda、记忆卡读取器、接口集线器、其它主机系统且可包含存储器存取装置(例如,处理器)。所属领域的一般技术人员将了解“处理器”可意指一或多个处理器,例如并行处理系统、若干协同处理器等。
25.主机102包含主机控制器108以与存储器系统104-1

104-n通信。主机控制器108可经由通道112-1

112-n将命令发送到存储器装置110-1、

、110-x、110-y。主机控制器108可与存储器装置110-1、

、110-x、110-y及/或存储器装置110-1、

、110-x、110-y中的每一者上的控制器114通信以读取、写入及擦除数据等等操作。物理主机接口可提供用于在存储器系统104-1

104-n与具有用于物理主机接口的兼容接纳器的主机102之间传递控制、地址、数据及其它信号的接口。所述信号可(例如)经由通道112-1

112-n在102在若干总线(例如数据总线及/或地址总线)上在存储器装置110-1、

、110-x、110-y之间传达。
26.主机控制器108及/或存储器装置上的控制器114可包含控制电路(例如硬件、固件
及/或软件)。在一或多个实施例中,主机控制器108及/或控制器114可为耦合到包含物理接口的印刷电路板的专用集成电路(asic)。而且,每一存储器装置110-1、

、110-x、110-y可包含易失性及/或非易失性存储器的缓冲器116及寄存器118。缓冲器116可用于缓冲执行读取命令及/或写入命令期间使用的数据。缓冲器116可分成写入缓冲器、读取缓冲器及若干块缓冲器。专用于写入缓冲器的空间量及专用于读取缓冲器的空间量可由主机控制器108编程若干寄存器118而控制。主机可基于将发送到特定存储器装置的命令的类型控制缓冲器116中专用于写入缓冲器及读取缓冲器的空间量。在若干实施例中,每一存储器装置110-1、

、110-x、110-y可具有固定写入缓冲器大小及/或固定读取缓冲器大小。缓冲器116可包含若干块缓冲器。所述若干块缓冲器中的每一者的大小可由所述主机编程若干寄存器118而控制。寄存器118可经编程以设置每一块寄存器的起始地址及结束地址及在与每一块寄存器相关联的存储器阵列中的目标地址。主机可通过将命令发送到存储器装置110-1、

、110-x、110-y而将数据读取及/或写入到块寄存器。
27.存储器装置110-1、

、110-x、110-y可提供用于存储器系统的主存储器或可用作整个存储器系统中的额外存储器或存储装置。每一存储器装置110-1、

、110-x、110-y可包含一或多个存储器单元阵列,例如非易失性存储器单元。例如,所述阵列可为具有nand架构的快闪存储器阵列。实施例不受限于特定类型的存储器装置。例如,存储器装置可包含ram、rom、dram、sdram、pcram、rram及快闪存储器等等。
28.图1的实施例可包含未说明的额外存储器电路以不模糊本发明的实施例。举例来说,存储器系统104-1

104-n可包含地址电路以锁存经由i/o连接通过i/o电路提供的地址信号。地址信号可由行解码器及列解码器接收及解码以存取存储器装置110-1、

、110-n。所属领域的技术人员将了解地址输入连接的数目可取决于存储器装置110-1、

、101-x、110-y的密度及架构。
29.图2a到2c说明根据本发明的若干实施例的与块缓冲器相关联的寄存器及命令。在若干实施例中,存储器装置可包含可由主机寻址的若干块缓冲器,其中所述主机可发送命令以对所述块缓冲器执行读取及/或写入命令。所述块缓冲器的大小可通过可由主机编程的块配置寄存器而指示。所述块缓冲器的大小可经编程以匹配存储器装置的存储器阵列中的块的大小。图2a说明所述块配置寄存器的块缓冲器地址寄存器230-0、

、230-r且图2b说明块配置寄存器的目标地址寄存器232-0、

、232-r。块配置寄存器包含关联的块缓冲器地址寄存器及目标地址寄存器对。每一块缓冲器地址寄存器与存储器装置的存储器阵列中的目标地址相关联。写入到由对应块缓冲器寄存器中的信息指示的块缓冲器的数据将在所述数据被提交到存储器时被写入到存储器阵列中的关联目标地址。从块缓冲器读取的数据位于与块关联的关联目标地址且从所述地址移动。每一块缓冲器地址寄存器可包含缓冲器起始地址235-0、

、235-r、缓冲器结束地址233-0、

、233-r及状态信息231-0、

、231-r。用于每一缓冲器的缓冲器起始地址及缓冲器结束地址可用于确定缓冲器的大小。状态信息可包含:块缓冲器中是否存在有效数据;与命令相关联的数据是否已移动;及/或块缓冲器数据中是否存在可恢复错误及/或致命错误的信息指示。还可存在状态寄存器,其存储用于每一块缓冲器的状态信息使得仅所述状态寄存器需要被读取以确定特定块缓冲器的状态。
30.图2c说明用于执行块缓冲器中的操作的命令234。命令234包含块缓冲器窗信息、块缓冲器选择信息及块缓冲器地址信息,其中:块缓冲器窗信息指示将对块缓冲器执行命
令;块缓冲器选择信息指示将对其执行所述命令的块缓冲器;块缓冲器地址信息指示块缓冲器上与所述命令相关联的数据将被写入及/读取的地址。
31.图3说明根据本发明的若干实施例的包含读取增量信息的读取命令。图3中,读取命令344可包含读取识别号(rid)及读取增量信息(rid_inc)。读取识别号可用于识别命令。举例来说,主机可将特定读取识别号指派到命令且将所述命令发送到所述存储器装置。接着,所述存储器装置可将读取识别号指派到所述命令。所述存储器装置可包含计数器以记录指派到命令的读取识别号。计数器在0处初始化且每当读取命令由存储器装置接收时计数器递增1。在用非确定性时序执行命令的存储器装置中,可由存储器装置以任何顺序执行命令,因此使计数器每次递增1可导致由主机指派到特定命令的读取识别号不同于由存储器装置指派到特定命令的读取识别号。举例来说,主机及存储器装置可各自具有4个可用读取识别号以指派到读取命令且在任何给定时间处任何给定读取识别号可仅为一次性的。当主机已将所有4个命令指派及发送到存储器装置但仅从存储器装置接收到已执行第一、第二及第四命令的指示时,那么主机无法将第三识别号指派到另一命令直到具有第三识别号的命令已由存储器装置执行。所述第一及第二读取识别号可由主机再次使用,但所述第三读取识别号不应由主机使用。读取增量信息可与读取命令一起发送以指示所述存储器装置应跳过读取识别号。在以上实例中,读取增量信息可包含读取增量1,从而指示应跳过第三识别号。存储器装置通过基于读取增量信息可递增识别号以指派到命令,使得由主机指派到命令的下一个可用读取识别号也将由所述存储器装置指派到所述命令。在图3中,存储器装置304可从主机302接收命令344且将基于将1和与读取增量(rid_inc)信息相关联的值相加的读取识别号345指派到由存储器装置304指派到命令的最近读取识别号。
32.图4说明根据本发明的若干实施例的若干读取命令及屏障命令。在图4中,主机402可将读取命令444-1、444-2及444-3及屏障命令446发送到存储器装置404。屏障命令446可指示先于屏障命令446发送到存储器装置404的命令444-1、444-2及444-3将在屏障命令446后发送到存储器装置404的命令444-4、444-5及444-6之前执行。图4中,指示读取命令444-3已执行的读取识别(rid3)448-3在屏障命令446经发送到存储器装置之前发送到主机。屏障命令446指示在任何后续命令之前执行读取命令444-1及444-2。主机在屏障命令446后将读取命令444-4、444-5及444-6发送到存储器装置,读取命令444-4、444-5及444-6将在读取命令444-1及444-2之后执行。存储器装置执行读取命令444-1及444-2且发送读取识别448-1及448-2。一旦屏障命令前发送到存储器装置的所有命令已执行,就可执行屏障命令后发送到所述存储器装置的所述命令。因此,存储器装置执行读取命令444-4、444-5、444-6且将读取识别448-4、448-5及448-6发送到主机402。
33.在若干实施例中,屏障命令可仅适用于所有类型的命令、仅适用于读取命令、或仅适用于写入命令。举例来说,读取屏障命令可经发送以指示先于屏障命令发送的所有读取命令将在屏障命令后发送的任何读取命令前执行。当存储器装置可以非确定性时序执行命令时,屏障命令可由主机使用以控制执行命令的时序。
34.图5说明根据本发明的若干实施例的包含突发长度信息的读取命令及写入命令。在图5中,读取命令544可包含突发长度指示且写入命令562可包含突发长度指示。突发长度可经由读取及/或写入命令中的指示由主机动态地改变。突发长度指示可由主机502以任何类型的命令(包含突发长度指示命令)发送到存储器装置504。突发长度可基于与命令、某一
类型的命令、将对其执行命令的类型的存储器装置相关联的一定量的数据及是否期望延时或带宽优化由主机而改变。
35.图6a到6d说明根据本发明的若干实施例的用以指示读取缓冲器及写入缓冲器的大小的寄存器。在图6a及6b中,寄存器可经编程以指示读取条目652-1及652-2的数目及写入条目654-1及654-2的数目。寄存器可定位于存储器装置上且主机可编程所述寄存器。寄存器中指示的读取条目652-1及652-2的数目及写入条目654-1及654-2的数目可用于控制读取缓冲器及写入缓冲器的大小。举例来说,读取条目指示652-1可对应于具有特定大小的读取缓冲器656-1且写入条目指示654-1可对应于具有特定大小的写入缓冲器658-1。读取缓冲器656-1的大小可小于写入缓冲器658-1的大小。读取条目指示651-2可对应于具有特定大小的读取缓冲器656-2且写入条目指示654-2可对应于具有特定大小的写入缓冲器658-2。读取缓冲器656-2的大小可大于写入缓冲器658-1及读取缓冲器656-1的大小。寄存器中的读取条目指示652及写入条目指示654可基于由主机发出的读取命令及写入命令的相对量而由主机更新。每当所述当前读取条目及/或所述写入缓冲器条目可通过更新读取及/或写入指示而容纳时,读取条目指示652及写入条目指示654可更新。
36.在若干实施例中,缓冲器可包含读取及写入条目两者且寄存器可经编程以界定用于所述缓冲器的读取条目的阈值数目及用于所述缓冲器的写入条目的阈值数目。主机可跟踪缓冲器中的未完成的读取条目及写入条目的数目以确保缓冲器不包含比由寄存器界定的读取条目的阈值数目及写入条目的阈值数目更多的条目。寄存器可经更新以改变缓冲器的读取条目的阈值数目及缓冲器的写入条目的阈值数目。
37.尽管已在本文中说明及描述特定实施例,但所属领域的一般技术人员将了解经计算以实现相同结果的布置可取代展示的特定实施例。本发明希望涵盖本发明的各种实施例的调适或变化。应理解,已以说明性方式而非限制性方式做出上述描述。所属领域的技术人员在审查上文描述后将明白未在本文中特别描述的上述实施例的组合及其它实施例。本发明的各种实施例的范围包含其中使用上文结构及方法的其它应用。因此,应参考所附权利要求书以及涵括此类权利要求的等效物的全部范围确定本发明的各种实施例的范围。
38.在前述实施方式中,出于简化本发明的目的,各种特征共同分组于单个实施例中。本发明的此方法不应解释为反映本发明的所揭示实施例必须使用多于在每一权利要求中明确叙述的特征的意图。而是,如所附权利要求书反映,发明标的物在于少于单个所揭示实施例的所有特征。因此,所附权利要求书并入实施方式中,其中每一权利要求本身单独作为独立实施例。

技术特征:


1.一种设备,其包括:存储器装置(104,404);及控制器(114),其耦合到所述存储器装置,所述控制器经配置以:依据从主机(102,402)接收到的屏障命令(446)在所述存储器装置上执行命令,其中所述屏障命令指示先前被所述存储器装置所接收到的命令将在所述存储装置在所述屏障命令之后所接收到的命令之前执行。2.根据权利要求1所述的设备,其中所述屏障命令是写入屏障命令,其指示先前被所述存储器装置所接收的写入命令将在所述存储器装置在所述写入屏障命令之后所接收到的写入命令之前执行。3.根据权利要求1所述的设备,其中所述屏障命令是读取屏障命令,其指示先前被所述存储器装置所接收的读取命令将在所述存储器装置在所述读取屏障命令之后所接收到的读取命令之前执行。4.根据权利要求1到3中任一权利要求所述的设备,其中所述屏障命令对所述控制器上的寄存器(118)进行编程。5.根据权利要求1到3中任一权利要求所述的设备,其中所述屏障命令由列命令中的位指示。6.根据权利要求1到3中任一权利要求所述的设备,其中所述屏障命令指示先前被所述存储器装置所接收的命令将由所述控制器接收所述命令的顺序而依序执行。7.一种用以执行命令的方法,其包括:在存储器装置处接收屏障命令(446)和第一数量的命令(444-4,444-5,444-6);以及响应所述屏障命令的接收,在执行所述第一数量的命令之前执行在所述第一数量的命令之前被接收的命令(444-1,444-2,444-3)。8.根据权利要求7所述的方法,其中接收所述屏障命令指示先前接收到的命令将在随后接收到的命令之前被执行。9.根据权利要求7所述的方法,其中接收所述屏障命令指示先前接收到的读取命令将在随后接收到的读取命令之前被执行。10.根据权利要求7所述的方法,其中接收所述屏障命令指示先前接收到的写入命令将在随后接收到的写入命令之前被执行。11.根据权利要求7所述的方法,其中执行在所述第一数量的命令之前被接收的所述命令包括向主机传送数据。12.根据权利要求7所述的方法,其中执行在所述第一数量的命令之前被接收的所述命令包括将数据写入所述存储器装置。13.根据权利要求7-12中任一权利要求所述的方法,另包括:响应在所述第一数量的命令之前被接收的命令的执行完成,执行所述第一数量的命令。14.根据权利要求7-12中任一权利要求所述的方法,另包括:在完成所述第一数量的命令的执行前接收第二数量的命令。15.根据权利要求14所述的方法,另包括响应在所述第一数量的命令之前被接收的命令的执行完成,执行所述第二数量的命令。16.一种用以传送命令的方法,包括:
向存储器装置传送第一数量的命令(444-1,444-2,444-3);以及向所述存储器装置传送屏障命令(446)和第二数量的命令(444-4,444-5,444-6),其中所述屏障命令指示所述第二数量的命令将在执行所述第一数量的命令之后执行。17.根据权利要求16所述的方法,另包括:在接收与所述第二数量的命令相关联的数据之前接收与所述第一数量的命令相关联的数据。18.根据权利要求16所述的方法,另包括:在向所述存储器装置传送与所述第二数量的命令相关联的数据之前向所述存储器装置传送与所述第一数量的命令相关联的数据。19.根据权利要求16-18中任一权利要求所述的方法,另包括:向所述存储器装置传送第三数量的命令。20.根据权利要求19所述的方法,另包括:响应与所述第一数量的命令相关联的数据的接收,接收与所述第二数量的命令和所述第三数量的命令相关联的数据。

技术总结


本发明提供包含与存储器协议有关的设备及方法。实例设备可使用块配置寄存器基于从主机接收的命令对所述存储器装置的若干块缓冲器执行操作,其中所述操作可从所述若干块缓冲器读取数据且将数据写入到所述存储器装置上的所述若干块缓冲器。的所述若干块缓冲器。的所述若干块缓冲器。


技术研发人员:

罗伯特

受保护的技术使用者:

美光科技公司

技术研发日:

2017.05.25

技术公布日:

2022/12/26

本文发布于:2024-09-23 03:14:20,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/49230.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:存储器   命令   所述   缓冲器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议