相变存储器器件及其操作方法与流程



1.本公开涉及相变存储器(phase-change memory,pcm)器件及其操作方法。


背景技术:



2.pcm单元可以基于相变材料的电热加热和淬火而利用相变材料(例如硫属化物合金)中非晶相和结晶相电阻率之间的差异。pcm单元中的相变材料可以位于两个电极之间,并且可以施加电流以在两相之间重复切换材料(或至少材料的阻挡电流路径的部分)以存储数据
3.可以根据写命令和与写命令一致的地址来触发存储单元阵列的存储体(bank)中的存储单元(例如pcm单元)的写操作。然后根据地址将数据发送到相应行和列中的存储单元。


技术实现要素:



4.一方面,一种存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;多个高速缓存模块,每个高速缓存模块被配置为存储相应存储体的地址和数据,以及多个控制模块,每个控制模块被配置为确定每个高速缓存模块中是否存储有任何地址和数据,响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块取回存储的地址和存储的数据,并且根据存储的地址对存储体的相应存储单元执行写操作,并且响应于从高速缓存模块取回存储的地址和存储的数据,允许存储体接收下一个控制信号。
5.在另一方面,一种系统包括存储器件,该存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;接口,该接口被配置为将包括命令、地址和数据的控制信号引导到存储体中;多个高速缓存模块;以及多个控制模块,以及耦合到存储器件并且被配置为控制存储器件的存储器控制器。每个高速缓存模块被配置为存储相应存储体的地址和数据。每个控制模块被配置为确定每个高速缓存模块中是否存储有任何地址和数据,响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块中取回存储的地址和存储的数据,并且根据存储的地址对存储体的相应存储单元执行写操作,并且响应于从高速缓存模块中取回存储的地址和存储的数据,允许存储体接收下一个控制信号。
6.在又一方面,一种用于操作存储器件的方法,该存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;高速缓存模块;以及耦合到高速缓存模块的控制模块,该方法包括:响应于接收到包括命令、地址和数据的控制信号,确定该命令是否对应于写操作,响应于确定该命令对应于写操作,将所述地址和数据发送至存储体的高速缓存模块,确定每个高速缓存模块中是否存储有任何地址和数据,并且响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块中取回存储的地址以及存储的数据,并且对存储体的相应存储单元执行写操作。
附图说明
7.并入本文并且构成说明书一部分的附图示出了本公开的各方面,并且与描述一起进一步用于解释本公开的原理并且使相关领域技术人员能够制作和使用本公开。
8.图1示出了根据本公开的一些方面的具有存储器件的示例性系统的框图。
9.图2示出了根据本公开的一些方面的包括外围电路的示例性存储器件的示意图。
10.图3示出了根据本公开的一些方面的包括相变存储器(pcm)单元的示例性存储器件的示意图。
11.图4示出了根据本公开的一些方面的包括存储单元阵列和外围电路的示例性存储器件的框图。
12.图5示出了根据本公开的一些方面的包括具有控制模块和先进先出(first-in-first-out,fifo)模块的存储体的示例性存储器件的框图。
13.图6示出了根据本公开的一些方面的用于在写操作中操作存储器件的示例性方法的流程图。
14.图7示出了根据本公开的一些方面的示出存储器件的示例性写操作的时序图。
15.将参考附图描述本公开。
具体实施方式
16.虽然讨论了特定的配置和布置,但应该理解,这仅用于说明目的。因此,在不脱离本公开的范围的情况下可以使用其他配置和布置。此外,本公开可用于多种其他应用。本公开中描述的功能和结构特征可以彼此之间以附图中未具体描绘的方式组合、调整和修改,使得这些组合、调整和修改在本公开的范围内。
17.一般来说,术语可以至少部分地从上下文中的用法来理解。例如,本文使用的术语“一个或多个”至少部分取决于上下文,可用于描述任何单数意义上的特征、结构或特性,或可用于描述复数意义上的特征、结构或特性的组合。类似地,至少部分地取决于上下文,诸如“一”、“一个”或“该”之类的术语同样可以被理解为表达单数用法或表达复数用法。此外,术语“基于”可被理解为不一定旨在传达一组排他性的因素,而是可能允许存在不一定明确描述的额外因素,同样至少部分地取决于上下文。此外,术语“耦合”、“耦合到”或“耦合于之间”可以理解为不一定旨在“物理地连接或附接”,即直接附接,但也可以解释为通过中间组件间接连接。
18.相变存储器(pcm)单元是使用相变材料存储数据的非易失性存储器件。基于相变材料的电热加热和淬火,pcm可以利用相变材料(例如硫属化物合金)中非晶相和结晶相的电阻率之间的差异。pcm单元中的相变材料可以位于两个电极之间,并且可以施加电流以在两相之间重复切换材料(或至少材料的阻挡电流路径的部分)以存储数据。“设置”状态是可以通过在硫属化物材料中创建结晶区域来获得的pcm单元的低电阻状态。当硫属化物材料在结晶温度处加热足够长的持续时间时发生结晶。相反,“重置”状态是可以通过在硫属化物材料中创建非晶区域来获得的pcm单元的高电阻状态。当硫属化物材料被加热到其熔化温度以上并且然后快速淬火以产生非晶的形成时,可以产生非晶。“设置”状态可以被称为“开”状态,而“重置”状态可以被称为“关”状态。
19.一个存储单元阵列可以包括多个存储体。每个存储体可以包括多行和多列的存储
单位(例如,存储单元)。存储单元阵列中的每个存储体可以根据读或写命令开始读或写操作。然后,根据相应命令后的地址,读取或写入存储体中相应行和列的选定存储单元。然后根据地址将数据发送到选定的存储单元。在操作过程中,命令、地址和数据的传输在一个或多个时钟周期或时钟沿(例如,上升沿或下降沿)期间触发。然而,在同一时钟周期或时钟沿期间,对存储器件进行读或写操作的命令、地址和数据并不重合,因为数据是在接收到读/写命令和读/写地址后从存储器件中读取/写入存储器件的,从而在读操作或写操作期间产生延迟以排队等待从存储器阵列读取的数据/写入存储器阵列的数据。延迟可以包括一个或多个时钟周期,并且在连续执行多个操作时可能会显著增加操作时间。这种延迟在诸如相变随机存取存储器(phase-change random access memory,pcram)应用之类的存储器件的写操作中尤为显著。
20.可以根据写命令和与写命令一致的地址来触发存储器件(诸如pcm器件)的写操作。然后,根据地址将数据发送到存储器件的相应行和列中的存储单元。然而,由于每个存储体一次只能被写操作访问一次,在触发后续写操作之前,写操作之间的切换可能需要额外的时间来排队。切换之间的时间延迟降低了存储器件的整体性能。
21.一般而言,pcm器件中的存储体的写操作可能需要500纳秒(ns)才能完成一个写操作周期,这比动态随机存取存储器(dynamic random access memory,dram)设备或nand设备要长得多。因此,从一个写命令到下一个写命令大约需要500ns。这些写命令、对应的地址和数据由pcm器件的存储器控制器控制并且经由数据输入/输出(i/o)发送到每个存储体。当写命令、地址和数据被从存储器控制器传输到相应的存储体时,写命令、地址和数据可能会占用数据i/o。对存储体的存储单元的长写请求可能会阻塞关键路径(例如,数据i/o或其之前或之后的任何缓冲器或高速缓存)上的读请求或其他请求,对整个存储器件的性能产生不利影响。
22.为了解决上述一个或多个问题,本公开提出了一种解决方案,其中高速缓存模块,例如先进先出(fifo)模块,以及耦合到高速缓存模块的控制模块,被引入到pcm器件的存储单元阵列的每个存储体中。控制模块被配置为确定每个存储体中的fifo模块是否有要取回的和数据。响应于fifo模块有和数据要取回,控制模块被配置为取出和数据,并且根据和数据执行对存储体的写操作。控制模块被配置为迭代或重复这些过程,直到fifo模块变空(即,没有地址和数据存储在fifo模块中)。此外,pcm器件的存储器控制器被配置为向每个存储体发送写命令、地址和数据。并且控制模块被配置为接收具有新命令、地址和数据的新(即,下一个)控制信号,并且响应于存储在fifo模块中的旧的(即,先前的)地址和数据已被取回,将和数据存储在相应存储体的fifo模块中。通过在每个存储体的fifo模块中存储地址和数据,并且在取回地址和数据后自动对每个存储体的存储单元执行写操作(即写数据),由于写命令、地址和数据已经保存在每个存储体的fifo模块中,也因为存储器控制器和数据i/o无需等待写操作完成即可进行其他操作,原来由写命令、地址和数据所占用的存储器控制器和数据i/o可被释放并且可供其他操作使用。因此,写操作的过程可以耗时较少,从而提高存储器件的整体效率和性能。
23.图1示出了根据本公开的一些方面的具有存储器件的示例性系统100的框图。系统100可以是移动电话、台式电脑、膝上型电脑、平板电脑、车载电脑、游戏机、打印机、定位设备、可穿戴电子设备、智能传感器、虚拟现实(virtual reality,vr)设备、增强现实
(argument reality,ar)设备,或任何其他合适的其中有存储装置的电子设备。如图1所示,系统100可以包括主机108以及具有一个或多个存储器件104和存储器控制器106的存储器系统102。主机108可以是电子设备的处理器,例如中央处理单元(central processing unit,cpu),或片上系统(system-on-chip,soc),例如应用处理器(application processor,ap)。在一些实施方式中,主机108可以被配置为向存储器件104发送数据或从存储器件104接收数据。在一些实施方式中,主机可以是用户逻辑或用户接口,使得用户可以向主机发出指令并且将指令发送到存储器件或存储器阵列。
24.存储器件104可以是本公开中公开的任何存储器件。根据一些实施方式,如下文详细公开的,诸如pcram、dram或nand闪存设备的存储器件104可以包括时钟输入、命令总线、地址总线、数据输入、多个存储体、多个接口模块和多个有限状态机(finite state machine,fsm)模块。
25.根据一些实施方式,存储器控制器106耦合到存储器件104和主机108并且被配置为控制存储器件104。存储器控制器106可以管理存储在存储器件104中的数据并且与主机108通信。在一些实施方式中,存储器控制器106被设计用于在低占空比环境中操作,例如安全数字(secure digital,sd)卡、紧凑型闪存(compact flash,cf)卡、通用串行总线(universal serial bus,usb)闪存驱动器或用于电子设备(例如个人计算机、数码相机、移动电话等)的其他介质。在一些实施方式中,存储器控制器106设计用于在高占空比环境中操作用作移动设备(如智能手机、平板电脑、膝上型电脑等)的数据存储和企业存储阵列的固态驱动器(solid-state drive,ssd)或嵌入式多媒体卡(embedded multi-media-cards,emmc)。存储器控制器106可以被配置为控制存储器件104的操作,例如读操作、擦除操作和编程操作。存储器控制器106还可以被配置为管理关于存储或将要存储在存储器件104中的数据的各种功能,包括但不限于坏块管理、垃圾收集、逻辑到物理地址转换、磨损均衡等。在一些实施方式中,存储器控制器106还被配置为处理关于从存储器件104读取或写入到存储器件104的数据的纠错码(error correction codes,ecc)。存储器控制器106也可以执行任何其他合适的功能,例如,格式化存储器件104。存储器控制器106可以根据特定的通信协议与外部设备(例如,主机108)通信。例如,存储器控制器106可以通过各种接口协议中的至少一种接口协议与外部设备通信,各种接口协议例如为usb协议、mmc协议、外围组件互连(peripheral component interconnection,pci)协议、pci-express(pci-e)协议、高级技术附件(advanced technology attachment,ata)协议、串行ata协议、并行ata协议、小型计算机小型接口(small computer small interface,scsi)协议、增强型小型磁盘接口(enhanced small disk interface,esdi)协议、集成驱动电子(integrated drive electronics,ide)协议、火线(firewire)协议等。此外,存储器控制器106还可以被配置为控制存储器件104的操作以执行根据本公开的一些实施方式的方法。
26.图2示出了根据本公开的一些方面的包括外围电路的示例性存储器件200的示意性电路图。存储器件200可以是图1中的存储器件104的示例。存储器件200可以包括存储单元阵列201和耦合到存储单元阵列201的外围电路202。存储单元阵列201可以包括一个或多个存储体204。每个存储体204包括字线214、位线216以及形成在字线214和位线216之间的存储单元208。在一些实施方式中,每个存储单元208可以包括与选择器(未示出)串联的pcm元件(未示出)。在一些实施方式中,存储单元208也可以是包括成对的晶体管和电容器的
dram单元。为了操作存储单元阵列201的每个存储体204,可以向每条字线214施加字线电压(vw),并且可以向每条位线216施加位线电压(vb)。
27.图3说明具有与选择器串联的pcm元件的存储器件300的横截面的侧视图。存储器件300包括位于衬底302上方的一条或多条平行位线304(即,对应于图2中的位线216)和位于位线304上方的一条或多条平行字线316(即,对应于图2中的字线214)。存储器件300还包括一个或多个pcm单元301(即,对应于图2中的存储单元208),每个pcm单元301设置在位线304和字线316的相应对的交叉处。相邻的pcm单元301由绝缘结构322隔开。每个pcm单元301包括选择器308和位于选择器308上方的pcm元件312。每个pcm单元301还包括分别垂直地(例如,在z方向上)在相应的位线304、选择器308、pcm元件312和相应的字线316之间的三个电极306、310和314。
28.选择器308可以包括双向阈值开关(ovonic threshold switch,ots)选择器,ots选择器具有ots材料,例如碲化锌(znte),当外部偏置电压(va)高于施加的阈值电压(vth)时,该ots材料展现场相关易失性电阻开关行为(称为“ots现象”)。在较低电压(|va|《vth)下,ots选择器在其关断状态下的高电阻使关断状态电流(ioff)保持在较低水平。在较高电压(|va|》vth)下,ots选择器发生ots现象,并且切换到低阻导通状态;因此,通过处于导通状态(ion)的ots选择器的电流增加。只要提供高电压,就会保持易失性导通状态。
29.注意到,pcm元件312可以基于相变材料的电热加热和淬火来利用相变材料(例如,硫属化物合金)中的非晶相和结晶相的电阻率之间的差异。相变元件可以位于两个电极之间,并且可以施加电流以在两相之间重复地切换材料(或者至少材料的阻挡电流路径的部分)以存储数据。因此,如上所述,存储单元的写操作可能成为存储器件的性能瓶颈,其需要最长的操作时间。这是因为,在写操作的“设置”或“重置”过程中,pcm单元会持续很长时间,直到非晶-结晶转变完成并且电阻达到目标范围。
30.图4示出了根据本公开的一些方面的包括存储单元阵列401(例如,对应于图2中的201)和外围电路的示例性存储器件400(例如,对应于图1中的104)的框图。存储单元阵列401可以包括一个或多个存储体404(例如,对应于图2中的204),例如存储体0、存储体1、存储体2、存储体3等。在一些实施方式中,存储单元阵列401的存储单元405包括如图3中的pcm单元301。
31.如图4所示,页缓冲器/读出放大器402可以耦合到存储单元405并且被配置为根据来自控制模块411的控制信号从存储单元405读取数据以及向存储单元405编程(写入)数据。在一个示例中,页缓冲器/读出放大器402可以存储要被编程到存储单元阵列201(例如,在图2中)中的一页的编程数据(写数据)的一页。在另一个示例中,页缓冲器/读出放大器402可以执行编程验证操作以确保数据已经被正确地编程到耦合到选定字线214的存储单元208中。在又一个示例中,页缓冲器/读出放大器402还可以感测来自选定位线216的代表存储在存储单元208中的数据位的低功率信号并且在读操作中将小电压摆幅放大到可识别的逻辑水平。
32.列解码器/位线驱动器406可以耦合到存储单元405和控制模块411并且被配置为由控制模块411控制并且选择一个或多个存储单元(例如,选定的存储单元208)和位线(例如,选定的位线216)。列解码器/位线驱动器406可进一步被配置为驱动选定的位线216。
33.输入/输出(i/o)数据总线418可以耦合到页缓冲器/读出放大器402和/或列解码
器/位线驱动器406并且被配置为引导(路由)到存储单元阵列201的选定的存储单元208的数据输入,以及从选定的存储单元的数据输出。
34.行解码器/字线驱动器408可以耦合到控制模块411和存储单元405并且被配置为由控制模块411控制并且选择存储单元阵列201的一个或多个存储单元(例如,选定的存储单元208)和选定的字线(例如,选定的字线214)。行解码器/字线驱动器408可进一步被配置为驱动选定的字线214。
35.接口416被配置为从主机(例如,图1中的108)接收包括时钟信号、命令信号、地址信号或数据信号的控制信号。时钟信号经由与接口416耦合的时钟总线421被接收。命令信号经由与接口416耦合的命令总线423被接收。地址信号经由与接口416耦合的地址总线425被接收。数据信号经由与接口416耦合的数据总线427被接收。
36.控制模块411可以包括固定逻辑单元,例如逻辑门、多路复用器、触发器、状态机或执行在设备制造时已知的给定逻辑功能的分立硬件电路。
37.在一些实施方式中,控制模块411可以由微处理器、微控制器(又名微控制器单元(microcontroller units,mcu))、数字信号处理器(digital signal processor,dsp)、专用集成电路(application-specific integrated circuits,asic)、现场可编程门阵列(field-programmable gate arrays,fpga)、可编程逻辑器件(programmable logic device,pld)、状态机、门控逻辑、分立硬件电路和其他合适的配置为执行所描述的各种功能的硬件、固件和/或软件来实现。在一些实施方式中,控制模块411耦合到字线驱动器408并且被配置为经由字线驱动器408将从接口416接收的控制信号引导到存储单元阵列401的存储体404中。
38.高速缓存模块/寄存器413可以耦合到控制模块411或包含在控制模块411中。控制模块/寄存器413可以包括状态寄存器、命令寄存器和地址寄存器,用于存储状态信息、命令操作代码(op代码)和命令地址。在一些实施方式中,从i/o数据总线418接收的地址和数据可以存储在高速缓存模块/寄存器413中。每个高速缓存模块/寄存器413可以包括一个或多个高速缓存(未示出)。每个高速缓存包括至少两个高速缓存页(未示出),例如第一高速缓存页和第二高速缓存页。每个高速缓存页可以在单个写操作中至少存储地址和数据。存储在高速缓存模块/寄存器413中的地址和数据可由控制模块411取回并且执行以写入相应的存储单元405。
39.每个存储体404还可以包括时钟路径420,该时钟路径420耦合到页缓冲器/读出放大器402以及从页缓冲器/读出放大器402耦合并且被配置为传送往来于页缓冲器/读出放大器402的时钟信号。时钟路径420也可以耦合到接口416以将时钟信号传送到接口416,以便在读操作或写操作中同步进出i/o数据总线418的数据输入和输出。
40.根据本公开的一些方面,每个存储体404包括布置为行和列的存储单元405、耦合到存储单元405的一个或多个高速缓存模块/寄存器413、以及耦合到相应高速缓存模块/寄存器413的一个或多个控制模块411。注意,每个控制模块411和每个高速缓存模块/寄存器413可以被包括在每个存储体404中或耦合到每个存储体404。
41.图5示出包括存储单元阵列501(例如,对应于图2中的存储单元阵列201或图4中的存储单元阵列401)中的一个或多个存储体504(例如,对应于图2中的存储体204或图4中的404)的存储器件500(例如,对应于图1中的104)的框图。根据本公开的一些方面,每个存储
体504包括控制模块511(例如,对应于控制模块411)和耦合到相应控制模块511的fifo模块513(例如,对应于高速缓存模块413)。如图5所示,存储单元阵列501的多个存储体504耦合到接口416,其中,时钟总线421、命令总线423、地址总线425和数据总线427连接到该接口416。
42.每个控制模块511可以包括固定逻辑单元,例如执行在设备制造时已知的给定逻辑功能的逻辑门、多路复用器、触发器、状态机或分立硬件电路。在一些实施方式中,每个控制模块511被配置为确定相应存储体504中的每个fifo模块513是否存储有地址和数据。并且,响应于每个fifo模块513已经存储有地址和数据,每个控制模块511被配置为取回存储在每个fifo模块513中的地址和数据并且执行写操作以根据地址将数据写入相应存储体504的相应的存储单元(例如,图4中的存储单元405)。在从fifo模块513取回地址和数据后,每个控制模块511被配置为允许接收从接口416到存储体504的下一个控制信号。一旦存储体504允许接收下一个控制信号,控制模块511可以再次控制将新地址和数据存储到fifo模块513。在一些实施方式中,每个控制模块511还可以包括诸如可编程逻辑阵列(programable logic array,pla)的可编程逻辑单元。每个pla可以包括多个可编程的与门阵列,这些与门阵列链接到多个可编程的或门阵列,其中它们之间的连接可以由用户修改或更改以执行预期的功能。
43.每个fifo模块513可以包括一个或多个fifo高速缓存。在一些实施方式中,fifo模块513可以包括fifo高速缓存(未示出),该fifo高速缓存包括至少两个高速缓存页(未示出),例如,第一高速缓存页和第二高速缓存页。每个高速缓存页可以在单个写操作中至少存储地址和数据。当由于第一高速缓存页是最旧的高速缓存页所以第一高速缓存页中的存储的地址和存储的数据被从fifo模块513的fifo高速缓存中取回时,从i/o数据总线418接收的新地址和数据可以替换或覆盖第一高速缓存页,从而成为最新的高速缓存页。并且第二高速缓存页现在成为最旧的高速缓存页。在一些实施方式中,如果第二高速缓存页为空,则从i/o数据总线418接收的新地址和数据可以存储在第二高速缓存页中。需要说明的是,最旧的高速缓存页是指所有高速缓存页中地址和数据在该高速缓存页中存储时间最长的高速缓存页,而最新的高速缓存页是指在所有高速缓存页中地址和数据在该高速缓存页中存储时间最短的高速缓存页。还要注意的是,fifo高速缓存中可以有两个以上的高速缓存页,并且每个fifo模块513中可以有一个以上的fifo高速缓存,这样可以在存储体404的fifo模块513中存储更多的写命令、地址和数据,而不是在存储器控制器106、接口416或在其之前、之后的任何其他缓冲器中存储。因此,最初占用的存储器控制器106、接口416或在其之前、之后的任何其他缓冲器可以被释放和可用。每个fifo模块中fifo高速缓存的数量和每个fifo高速缓存中高速缓存页的数量可以取决于每个存储体504中的硬件开销。例如,每个fifo模块513可以包括不超过4个高速缓存页,使得硬件开销和设计这种fifo模块的复杂度可能不会太高。还需要注意的是,这里的高速缓存页是指用于简单地通过页替换来加速访问的任何合适的存储单位。因此,每个高速缓存页可以具有固定的大小,例如用于存储数据的16位的大小。
44.存储单元阵列501的每个存储体504可以包括阵列fsm(未示出),其被配置为对每个存储体504执行写操作。也就是说,阵列fsm被配置为将数据写入存储体504的存储单元中。在一些实施方式中,阵列fsm包括状态寄存器和耦合到状态寄存器的触发器。
45.图6示出了根据本公开的一些方面的用于操作存储器件的示例性方法600的流程图。存储器件可以是本文公开的任何合适的存储器件。方法600可以由控制模块411、控制模块511和fifo模块513实现。应当理解,方法600中所示的操作可能不是穷尽的,并且其他操作也可以在任何图示的操作之前、之后或之间执行。此外,一些操作可以同时执行,或者以与图6所示不同的顺序执行。图5-6可以一起讨论。
46.参考图6,方法600开始于操作602,其中响应于接收到包括命令、地址和数据的控制信号,确定对应于写操作的命令。例如,控制模块411(例如,在图4中)被配置为在开始对存储体504的后续写操作之前识别控制信号包括写操作命令。写操作包括根据地址将数据写到存储体504的相应行和列的存储单元405中。
47.方法600进行到操作604,如图6所示,其中,响应于确定命令对应于写操作,地址和数据被发送到相应存储体的相应fifo模块。例如,在确定该命令对应写操作后,将地址和数据发送到并且存储在相应存储体504的相应fifo模块513中,如图5所示。地址和数据可以被存储在空的高速缓存页中,也可以在取回存储的地址和存储的数据后被存储在最旧的高速缓存页中。
48.方法600进行到操作606,如图6所示,其中,确定每个fifo模块中是否存储有任何地址和数据(例如,存储的地址和存储的数据,这包括存储在空高速缓存页中的新接收的地址和数据),并且响应于确定每个fifo模块中具有存储的地址和存储的数据,执行对存储体的相应存储单元的写操作。对相应存储单元的写操作可以包括设置或重置相应存储单元。例如,每个控制模块511被配置为确定每个fifo模块513中是否具有存储的地址和存储的数据。并且响应于确定每个fifo模块513中具有存储的地址和存储的数据,每个控制模块511被配置为从fifo模块513取回存储的地址和存储的数据并且根据取回的地址对存储体404的相应存储单元405执行写操作(例如,写入取回的数据)。如果在fifo模块513中没有预先存在的存储的地址和数据,则也可以从fifo模块513中取回存储在空高速缓存页中的新接收的地址和数据。
49.方法600进行到操作608,如图6所示,其中,响应于从fifo模块取回存储的地址和存储的数据,存储体被允许接收下一个控制信号。例如,响应于从fifo模块513取回存储的地址和存储的数据,存储体504被允许接收下一个控制信号。由于先前的地址和数据已经被取回,下一个控制信号中的下一个地址和数据可以被存储在fifo模块513中并且替换或覆盖先前的地址和数据或者被存储在空的高速缓存页中。在一些实施方式中,可以重复或迭代上述过程直到fifo模块513变空(即,没有命令、地址和数据存储在fifo模块513中)。之后,存储体504的阵列fsm变为空闲。
50.图7示出了根据本公开的一些方面的示出存储器件的写操作的示例性方法600的时序图。如图7所示,数据(即,数据队列,又名dq)经由接口(例如,图5中的接口416)在命令和地址(即,ca)之后传输。在接收控制信号期间,相应存储体504的fifo模块(例如,fifo模块513)和阵列fsm可以保持在空闲状态。在地址和数据被发送到相应存储体(例如,存储体504)的相应fifo模块(例如,fifo模块513)之后,标记为fifo_push的fifo推送fsm可以被触发以启动fifo模块513。在fifo推送fsm被触发后,它可以将地址和数据存储在fifo模块513的fifo高速缓存中。并且响应于相应存储体504的阵列fsm处于空闲状态,或者先前的写操作完成,可以触发fifo推送fsm执行下一个写操作,即根据地址将数据写入相应存储体504
的存储单元中。在一些实施方式中,fifo推送fsm也可以表示启动fifo并且转发到下一个状态,例如从空状态到使用中状态。fifo模块513还可以包括fifo计数fsm,标记为fifo_cnt,被配置成记录和计数执行对地址和数据进行存储的次数。这个fifo计数fsm允许用户监控地址和数据被存储的次数,通过在它们之间插入其他操作来修改进程,或者根据地址和数据被存储的次数停止写操作一定次数。fifo模块513还可以包括fifo弹出fsm,标记为fifo_pop,被配置为用作终止先前写操作并且激活下一个写操作的开关。在一些实施方式中,fifo弹出fsm还可以表示结束先前状态并且前进到下一状态,例如,从使用中状态到空状态。fifo推送fsm、fifo计数fsm和fifo弹出fsm可以由相应存储体504的控制模块511控制。在一些实施方式中,fifo推送fsm、fifo计数fsm或fifo弹出fsm可以包括状态寄存器和耦合到状态寄存器的触发器。
51.此外,如图7所示,根据一些实施方式,对于每次写操作,命令和地址可能需要8个时钟周期(即,一个周期用于命令,七个周期用于地址)。并且对于每次写操作,对于16位数据,数据可能需要8个时钟周期。此外,如图7所示,由于两个连续命令之间有16个时钟周期,因此在接收下一个命令之前需要最少16ns的时间间隔。然而,写操作可能需要500ns,因此成为连续操作的瓶颈。传统上,下一个命令可能必须等到先前写操作完成并且阻塞关键路径(例如,接口416或其之前或之后的任何缓冲器或高速缓存)上的读请求或其他请求,从而导致对整个存储器件的性能有不利影响。在本公开中,下一个命令可以不必等到先前写操作完成,并且可以在先前命令、地址和数据从fifo模块513中取回并且执行先前写操作后立即被接收并且存储在相应存储体504的fifo模块513中。在先前命令、地址和数据被从fifo模块513中取回以在存储单元的写操作中执行并且因此使fifo模块513的高速缓存页(例如,最旧的高速缓存页)为空或准备被下一个命令、地址和数据替换或覆盖之后,下一个命令、地址和数据随后可以存储在相应存储体504的fifo模块513中。通过使用本公开中提供的方案,解决了瓶颈问题,并且可以显著提升存储器件的性能。
52.根据本公开的一个方面,一种存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;多个高速缓存模块,每个高速缓存模块被配置为存储相应存储体的地址和数据,以及多个控制模块,每个控制模块被配置为确定每个高速缓存模块中是否存储有任何地址和数据,响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块取回存储的地址和存储的数据,并且根据存储的地址对存储体的相应存储单元执行写操作,并且响应于从高速缓存模块取回存储的地址和存储的数据,允许存储体接收下一个控制信号。
53.在一些实施方式中,高速缓存模块包括先进先出(fifo)模块。
54.在一些实施方式中,fifo模块包括具有至少两个能够存储地址和数据的高速缓存页的fifo高速缓存。
55.在一些实施方式中,两个高速缓存页包括第一高速缓存页和第二高速缓存页。控制信号的地址和数据存储在第一高速缓存页中,并且下一个控制信号的下一个地址和下一个数据存储在第二高速缓存页中。
56.在一些实施方式中,每个fifo模块包括fifo推送有限状态机(fsm),其被配置为被触发以启动fifo模块并且将地址和数据存储在fifo模块中。
57.在一些实施方式中,每个fifo模块包括fifo计数fsm,其被配置为记录执行对地址
和数据进行存储的次数。
58.在一些实施方式中,每个fifo模块包括fifo弹出fsm,其被配置为终止先前写操作并且激活下一个写操作。
59.在一些实施方式中,每个存储体包括多个高速缓存模块中的相应高速缓存模块,以及多个控制模块中的耦合到相应高速缓存模块的相应控制模块。
60.在一些实施方式中,每个存储体包括阵列fsm,其被配置为将数据写入到存储体的存储单元中。
61.在一些实施方式中,存储单元包括相变存储器(pcm)器件。
62.在一些实施方式中,写操作包括设置或重置pcm器件。
63.根据本公开的另一方面,一种系统包括存储器件,存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;接口,被配置为将包括命令、地址以及数据的控制信号引导到存储体中;多个高速缓存模块;以及多个控制模块,以及耦合到存储器件并且被配置为控制存储器件的存储器控制器。每个高速缓存模块被配置为在相应的存储体中存储地址和数据。每个控制模块被配置为确定每个高速缓存模块中是否存储有任何地址和数据,响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块取回存储的地址和存储的数据,并且根据存储的地址对存储体的相应存储单元执行写操作,并且响应于从高速缓存模块中取回存储的地址和存储的数据,允许存储体接收下一个控制信号。
64.在一些实施方式中,该系统还包括主机,其耦合到存储器控制器并且被配置为传输往来于存储器件的数据。
65.在一些实施方式中,控制模块被配置为响应于接收到控制信号,确定命令对应于写操作,并且引导要存储在高速缓存模块中的地址和数据。
66.在一些实施方式中,该系统还包括被配置为传输时钟信号的时钟总线、被配置为传输地址的地址总线以及被配置为传输数据的数据总线。时钟总线、地址总线和数据总线耦合到接口。
67.在一些实施方式中,高速缓存模块包括先进先出(fifo)模块。
68.在一些实施方式中,fifo模块包括具有至少两个能够存储地址和数据的高速缓存页的fifo高速缓存。
69.在一些实施方式中,两个高速缓存页包括第一高速缓存页和第二高速缓存页,控制信号的地址和数据存储在第一高速缓存页中,并且下一个控制信号的下一个地址和下一个数据存储在第二高速缓存页中。
70.在一些实施方式中,每个fifo模块包括fifo推送有限状态机(fsm),其被配置为被触发以启动fifo模块并且将地址和数据存储在fifo模块中。
71.在一些实施方式中,每个fifo模块包括fifo计数fsm,其被配置为记录执行对地址和数据进行存储的次数。
72.在一些实施方式中,每个fifo模块包括fifo弹出fsm,其被配置为终止先前写操作并且激活下一个写操作。
73.在一些实施方式中,每个存储体包括多个高速缓存模块中的相应高速缓存模块,以及多个控制模块中的耦合到相应高速缓存模块的相应控制模块。
74.在一些实施方式中,每个存储体包括阵列fsm,其被配置为将数据写入到存储体的存储单元中。
75.在一些实施方式中,存储单元包括相变存储器(pcm)器件。
76.在一些实施方式中,写操作包括设置或重置pcm器件。
77.根据本公开的又一方面,一种用于操作存储器件的方法,存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;高速缓存模块;以及耦合到高速缓存模块的控制模块,该方法包括:响应于接收到包括命令、地址和数据的控制信号,确定该命令是否对应于写操作,响应于确定该命令对应于写操作,将地址和数据发送至存储体的高速缓存模块,确定每个高速缓存模块中是否存储有任何地址和数据,并且响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块中取回存储的地址以及存储的数据,并且对存储体的相应存储单元执行写操作。
78.在一些实施方式中,该方法还包括接收下一个控制信号并且重复处理直到高速缓存模块变空。重复的过程包括响应于接收包含下一个命令、下一个地址和下一个数据的下一个控制信号,确定下一个命令是否对应于写操作,响应于确定下一个命令对应于写操作,将下一个地址和下一个数据发送给存储体的高速缓存模块,确定每个高速缓存模块中是否存储有任何地址和数据,并且响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块中取回存储的地址和存储的数据,并且对存储体的相应存储单元执行写操作。
79.在一些实施方式中,高速缓存模块包括先进先出(fifo)模块。
80.在一些实施方式中,fifo模块包括具有至少两个能够存储地址和数据的高速缓存页的fifo高速缓存。
81.在一些实施方式中,两个高速缓存页包括第一高速缓存页和第二高速缓存页,并且当从高速缓存模块中取回第一高速缓存页中的存储的地址和存储的数据时,第一高速缓存页是最旧的高速缓存页。
82.具体实施方式的前述描述可以容易地修改和/或适用于各种应用。因此,基于在此呈现的教导和指导,这样的改编和修改旨在在所公开的实施方式的等价物的含义和范围内。
83.本公开的广度和范围不应受任何上述示例性实施方式的限制,而应仅根据以下权利要求及其等效物来定义。

技术特征:


1.一种存储器件,包括:多个存储体,每个存储体包括布置为行和列的存储单元;多个高速缓存模块,其中,每个高速缓存模块被配置为存储所述存储体中的相应存储体的地址和数据;以及多个控制模块,其中,每个控制模块被配置为:确定每个高速缓存模块中是否存储有任何地址和数据;响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从所述高速缓存模块取回所述存储的地址和所述存储的数据,并且根据所述存储的地址对所述存储体的相应存储单元执行写操作;并且响应于从所述高速缓存模块取回所述存储的地址和所述存储的数据,允许所述存储体接收下一个控制信号。2.如权利要求1所述的存储器件,其中,所述高速缓存模块包括先进先出(fifo)模块。3.如权利要求2所述的存储器件,其中,所述fifo模块包括具有至少两个能够存储所述地址和所述数据的高速缓存页的fifo高速缓存。4.如权利要求3所述的存储器件,其中,两个所述高速缓存页包括第一高速缓存页和第二高速缓存页,所述地址和所述数据存储在所述第一高速缓存页中,并且所述下一个控制信号的下一个地址和下一个数据存储在所述第二高速缓存页中。5.如权利要求2-4中任一项所述的存储器件,其中,每个fifo模块包括fifo推送fsm,所述fifo推送fsm被配置为被触发以启动所述fifo模块并且将所述地址和所述数据存储在所述fifo模块中。6.如权利要求2-5中任一项所述的存储器件,其中,每个fifo模块包括fifo计数有限状态机(fsm),所述fifo计数有限状态机(fsm)被配置为对执行对所述地址和所述数据进行存储的次数进行记录。7.如权利要求2-6中任一项所述的存储器件,其中,每个fifo模块包括fifo弹出fsm,所述fifo弹出fsm被配置为终止先前写操作并且激活下一个写操作。8.如权利要求1-7中任一项所述的存储器件,其中,每个存储体包括:所述多个高速缓存模块中的相应高速缓存模块;以及所述多个控制模块中的耦合到所述相应高速缓存模块的相应控制模块。9.如权利要求1-8中任一项所述的存储器件,其中,每个存储体包括:阵列fsm,所述阵列fsm被配置为将所述数据写入所述存储体的所述存储单元中。10.如权利要求1-9中任一项所述的存储器件,其中,所述存储单元包括相变存储器(pcm)器件。11.如权利要求10所述的存储器件,其中,所述写操作包括设置或重置所述pcm器件。12.一种系统,包括:存储器件,包括:多个存储体,每个存储体包括布置为行和列的存储单元;接口,所述接口被配置为将包括命令、地址和数据的控制信号引导到所述多个存储体中;多个高速缓存模块,其中,每个高速缓存模块被配置为存储所述存储体中的相应存储
体的所述地址和所述数据;以及多个控制模块,其中,每个控制模块被配置为:确定每个高速缓存模块中是否存储有任何地址和数据;响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从所述高速缓存模块取回所述存储的地址和所述存储的数据,并且根据所述存储的地址对所述存储体的相应存储单元执行写操作;并且响应于从所述高速缓存模块取回所述存储的地址和所述存储的数据,允许所述存储体接收下一个控制信号;以及存储器控制器,所述存储器控制器耦合到所述存储器件并且被配置为控制所述存储器件。13.如权利要求12所述的系统,还包括主机,所述主机耦合到所述存储器控制器并且被配置为传输往来于所述存储器件的所述数据。14.如权利要求12或13所述的系统,其中,所述接口被配置为响应于接收到所述控制信号,确定所述命令对应于所述写操作,并且引导要存储在所述相应高速缓存模块中的所述地址和所述数据。15.如权利要求12-14中任一项所述的系统,还包括:时钟总线,所述时钟总线被配置为传输时钟信号;地址总线,所述地址总线被配置为传输所述地址;以及数据总线,所述数据总线被配置为传输所述数据,其中,所述时钟总线、所述地址总线和所述数据总线耦合到所述接口。16.如权利要求12-15中任一项所述的系统,其中,所述高速缓存模块包括先进先出(fifo)模块。17.如权利要求16所述的系统,其中,所述fifo模块包括具有至少两个能够存储所述地址和所述数据的高速缓存页的fifo高速缓存。18.如权利要求17所述的系统,其中,两个所述高速缓存页包括第一高速缓存页和第二高速缓存页,所述控制信号的所述地址和所述数据存储在所述第一高速缓存页中,并且所述下一个控制信号的下一个地址和下一个数据存储在所述第二高速缓存页中。19.如权利要求16-18中任一项所述的系统,其中,每个fifo模块包括fifo推送有限状态机(fsm),所述fifo推送有限状态机(fsm)被配置为被触发以启动所述fifo模块并且将所述地址和所述数据存储在所述fifo模块中。20.如权利要求16-19中任一项所述的系统,其中,每个fifo模块包括fifo计数fsm,所述fifo计数fsm被配置为对执行对所述地址和所述数据进行存储的次数进行记录。21.如权利要求16-20中任一项所述的系统,其中,每个fifo模块包括fifo弹出fsm,所述fifo弹出fsm被配置为终止先前写操作并且激活下一个写操作。22.如权利要求11-21中任一项所述的系统,其中,每个存储体包括:所述多个高速缓存模块中的相应高速缓存模块;以及所述多个控制模块中的耦合到所述相应高速缓存模块的相应控制模块。23.如权利要求11-22中任一项所述的系统,其中,每个存储体包括:阵列fsm,所述阵列fsm被配置为将所述数据写入所述存储体的所述存储单元中。
24.如权利要求11-23中任一项所述的系统,其中,所述存储单元包括相变存储器(pcm)器件。25.如权利要求24所述的系统,其中,所述写操作包括设置或重置所述pcm器件。26.一种用于操作存储器件的方法,所述存储器件包括:多个存储体,每个存储体包括布置为行和列的存储单元;耦合到所述存储单元的高速缓存模块;以及耦合到所述高速缓存模块的控制模块,所述方法包括:响应于接收到包括命令、地址和数据的控制信号,确定所述命令是否对应于写操作;响应于确定所述命令对应于所述写操作,将所述地址和所述数据发送到所述存储体的高速缓存模块;确定所述高速缓存模块中是否存储有任何地址和数据;以及响应于确定所述高速缓存模块中具有存储的地址和存储的数据,从所述高速缓存模块取回所述存储的地址和所述存储的数据,并且对所述存储体的相应存储单元执行所述写操作。27.如权利要求26所述的方法,还包括:接收下一个控制信号并且重复处理直到所述高速缓存模块变空,其中,所述处理包括:响应于接收到包括下一个命令、下一个地址和下一个数据的所述下一个控制信号,确定所述下一个命令是否对应于所述写操作;响应于确定所述下一个命令对应于所述写操作,将所述下一个地址和所述下一个数据发送至所述存储体的高速缓存模块;确定所述高速缓存模块中是否存储有任何地址和数据;并且响应于确定所述高速缓存模块中具有存储的地址和存储的数据,从所述高速缓存模块取回所述存储的地址和所述存储的数据,并且对所述存储体的相应存储单元执行所述写操作。28.如权利要求26或27所述的方法,其中,所述高速缓存模块包括先进先出(fifo)模块。29.如权利要求28所述的方法,其中,所述fifo模块包括具有至少两个能够存储所述地址和所述数据的高速缓存页的fifo高速缓存。30.如权利要求29所述的方法,其中,两个所述高速缓存页包括第一高速缓存页和第二高速缓存页,并且当从所述高速缓存模块取回所述第一高速缓存页中的所述存储的地址和所述存储的数据时,所述第一高速缓存页为最旧的高速缓存页。

技术总结


一种存储器件包括:多个存储体,每个存储体包括存储单元;多个高速缓存模块,每个高速缓存模块被配置为存储相应存储体的地址和数据;以及多个控制模块,每个控制模块被配置为确定每个高速缓存模块中是否存储有任何地址和数据,响应于确定每个高速缓存模块中具有存储的地址和存储的数据,从高速缓存模块取回存储的地址和存储的数据并且对存储体的相应的存储单元执行写操作,并且响应于从高速缓存模块取回存储的地址和存储的数据,允许存储体接收下一个控制信号。收下一个控制信号。收下一个控制信号。


技术研发人员:

孙晓军 付祥 李建平 马明超 张曙泽 杜吉刚 高帅

受保护的技术使用者:

长江先进存储产业创新中心有限责任公司

技术研发日:

2021.10.22

技术公布日:

2023/3/24

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

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

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

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