用于存储器装置的初始化技术的制作方法


用于存储器装置的初始化技术
1.交叉引用
2.本专利申请案主张波利奥(pollio)等人在2020年11月19日申请的标题为“用于存储器装置的初始化技术(initialization techniques for memory devices)”的第16/952,880号美国专利申请案的优先权,所述美国专利申请案转让给本受让人且明确地以全文引用的方式并入本文中。
技术领域
3.下文大体上涉及用于存储器的一或多个系统,且更具体来说,涉及用于存储器装置的初始化技术。


背景技术:



4.存储器装置广泛用于将信息存储在例如计算机、无线通信装置、相机、数字显示器等的各种电子装置中。通过将存储器装置内的存储器单元编程为各种状态来存储信息。举例来说,二进制存储器单元可被编程为常常对应于逻辑1或逻辑0的两个支持状态中的一个。在一些实例中,单个存储器单元可支持多于两个可能状态,存储器单元可存储所述两个可能状态中的任一个。为了存取由存储器装置存储的信息,组件可读取或感测存储器装置内的一或多个存储器单元的状态。为了存储信息,组件可将存储器装置内的一或多个存储器单元写入或编程到相应状态。
5.存在各种类型的存储器装置,包含磁性硬盘、随机存取存储器(ram)、只读存储器(rom)、动态ram(dram)、同步动态ram(sdram)、铁电ram(feram)、磁性ram(mram)、电阻式ram(rram)、快闪存储器、相变存储器(pcm)、3维交叉点存储器(3d交叉点)、或非(nor)和与非(nand)存储器装置等。存储器装置可以是易失性或非易失性的。除非由外部电源周期性地刷新,否则易失性存储器单元(例如,dram单元)可能随时间推移而丢失其编程状态。非易失性存储器单元(例如,nand存储器单元)即使在不存在外部电源的情况下仍可在很长一段时间内维持其编程状态。


技术实现要素:



6.描述一种设备。所述设备可包含处于第一裸片上的存储器阵列;和处于第二裸片上的控制器,其中所述第二裸片与所述第一裸片耦合,且其中所述控制器被配置成致使所述设备:作为用于所述控制器的初始化程序的部分,从所述第二裸片上的只读存储器读取用于所述控制器的第一操作指令集;至少部分地基于所述第一操作指令集,识别所述存储器阵列的存储器块;至少部分地基于所述识别,从所述存储器阵列的所述存储器块读取用于所述控制器的第二操作指令集;和至少部分地基于从所述存储器阵列的所述存储器块读取的所述第二操作指令集,完成用于所述控制器的所述初始化程序。
7.描述一种由存储器装置执行的方法。由存储器装置执行的方法可包含作为用于所述存储器装置内的第二裸片上的控制器的初始化程序的部分,从所述第二裸片上的只读存
储器读取用于所述控制器的第一操作指令集;至少部分地基于所述第一操作指令集,识别所述存储器装置内的第一裸片上的存储器阵列的存储器块;至少部分地基于所述识别,从所述存储器阵列的所述存储器块读取用于所述控制器的第二操作指令集;和至少部分地基于从所述存储器阵列的所述存储器块读取的所述第二操作指令集,完成用于所述控制器的所述初始化程序。
8.描述一种设备。所述设备可包含:包括存储器阵列的第一裸片,其中所述存储器阵列包括多个存储器块;和与所述第一裸片耦合的第二裸片,其中所述第二裸片包括用于所述存储器阵列的控制器,其中:所述第二裸片上的只读存储器被配置成存储用于所述控制器的第一操作指令集;所述第一裸片上的所述存储器阵列的存储器块被配置成存储用于所述控制器的第二操作指令集;且所述第一操作指令集被配置成指示所述第一裸片上的所述存储器阵列的被配置成存储用于所述控制器的所述第二操作指令集的所述存储器块。
9.描述一种设备。所述设备可包含在封装或模块内与第二裸片耦合的第一裸片;处于所述第一裸片上的存储器阵列;处于所述第二裸片上的只读存储器;和处于所述第二裸片上的用于所述存储器阵列的控制器,其中所述第二裸片上的所述只读存储器被配置成存储用于所述控制器的初始化程序的第一操作指令集,且其中所述存储器阵列包括被配置成存储用于所述控制器的所述初始化程序的第二操作指令集的存储器块。
10.描述了一种方法。所述方法可包含在第一裸片上形成存储器阵列;在第二裸片上形成用于所述存储器阵列的控制器;在所述第二裸片上形成只读存储器,且其中形成所述控制器包括将用于所述控制器的第一操作指令集编码给所述只读存储器;和将用于所述控制器的第二操作指令集写入到所述存储器阵列的存储器块,其中所述第一操作指令集包含到被写入用于所述控制器的所述第二操作指令集的所述存储器块的映射。
附图说明
11.图1说明根据本文所公开的实例的支持用于存储器装置的初始化技术的系统的实例。
12.图2说明根据本文所公开的实例的支持用于存储器装置的初始化技术的框图的实例。
13.图3示出根据本公开的方面的支持用于存储器装置的初始化技术的存储器装置的框图。
14.图4和5示出说明根据本文所公开的实例的支持用于存储器装置的初始化技术的一或多种方法的流程图。
具体实施方式
15.存储器系统可包含一或多个存储器装置,例如“与非”(nand)存储器装置。举例来说,存储器系统可为耦合到主机装置的受管理nand(mnand)系统的实例。存储器系统可包含和与相应存储器装置相关联的本地控制器一起或替代地管理一或多个存储器装置的操作的存储器系统控制器(例如,mnand控制器)。在一些情况下,nand装置可各自处于相应裸片上,用于nand装置的相应裸片还包含用于nand装置的本地控制器,且mnand控制器可处于与nand装置裸片隔开的一或多个裸片上。
16.存储器系统控制器可例如在存储器系统起动之后即刻执行初始化程序(例如,以初始化存储器系统控制器)。存储器系统控制器可基于操作来自与存储器系统控制器相关联(例如,处于同一裸片上)的只读存储器(rom)的指令(例如,启动码)而执行初始化程序。rom可在一些情况下概念化为存储器系统控制器的部分,但本文中的教示不取决于此类概念化。在一些情况下,操作指令可在存储器系统的制造期间编码给rom(例如,rom可硬接线以基于在包含rom和存储器系统控制器的裸片的制造过程期间使用的一或多个制造掩模,例如用于裸片的一或多种金属层的掩模,存储用于存储器系统控制器的操作指令)。因此,更改与存储器系统控制器相关联的rom的内容可相对具有挑战性。举例来说,可需要更改用于包含rom的裸片的制造过程的一或多个制造掩模或其它方面以便更改rom的内容。
17.根据本文中所描述的技术,存储器系统可实施经增强初始化技术,这可提高校正或修改用于存储器系统控制器的操作指令(包含用以初始化存储器系统控制器的指令,其可被称为启动码或指令)的错误的效率,以及其它优点。举例来说,用于存储器系统控制器的初始化程序的第一操作指令集可存储于与存储器系统控制器关联的rom中(例如,与存储器系统控制器处于同一裸片上的rom可编码有(例如,经制造以便存储)第一操作指令集)。另外,用于初始化程序的第二(例如,剩余)操作指令集可存储于耦合到存储器系统控制器的存储器装置内的存储器阵列的一或多个存储器块(例如,第二裸片上的存储器阵列的一或多个存储器块,例如一或多个nand块,其可为单次可编程(otp)块)中。第一操作指令集可指示第二操作指令集的方位(例如,第二裸片上存储器阵列的哪些存储器块存储第二操作指令集),且存储器系统可基于所指示的方位,从存储器装置获得第二操作指令集。因此,举例来说,用于存储器系统控制器的启动码的第一部分可存储于用于存储器系统控制器的裸片上rom中,且启动码的第二部分可存储于第二裸片上的存储器阵列(例如,nand阵列)的一或多个块中,其中启动码的第一部分指示启动码的第二部分。因此,启动码的至少第二部分与包含在用于存储器系统控制器的裸片上rom中的相似指令相比可更易于被修改。
18.在一些实例中,存储第二操作指令集(例如,启动码的第二部分)的存储器块可被配置成不可被耦合到存储器系统的主机装置存取。在一些实例中,存储器阵列的存储器块可被配置成当存储器系统被配置于测试模式中时为可编程的(例如,可重新编程的)并且当存储器系统不被配置于测试模式中时为只读的。
19.存储器系统可执行用于第二操作指令集的错误校正或检测。举例来说,存储器阵列可包含第二操作指令集的多个副本。存储器系统(例如,与存储器阵列包含在同一裸片上的本地存储器控制器)可读取多个副本并且验证多个副本的至少一个子集(例如,大部分所述副本)是相同副本并且将相同副本中的一个传送到控制器。另外或替代地,存储器系统控制器可使用错误信息检测或校正第二操作指令集中的错误。举例来说,存储器系统控制器可读取第二操作指令集(例如,包含相关联的奇偶校验信息)并且使用所述奇偶校验信息检测和/或校正第二操作指令集中的错误。
20.此类技术可使用于存储器系统控制器初始化的操作指令的修改灵活性增强。举例来说,可校正指令错误,或者基于存储器阵列的较多块上无法重新编程而实施指令更新,而非更改与包含存储器系统控制器的裸片相关联的一或多个制造过程。此类技术也可支持提高如本文所描述的各种操作的效率,以及其它益处。
21.首先在如参考图1和2所描述的系统和框图的上下文中描述本公开的特征。通过涉
及参考图3-5所描述的用于存储器装置的初始化技术的设备图和流程图进一步说明并且参考所述设备图和流程图进一步描述本公开的这些和其它特征。
22.图1是根据本文所公开的实例的支持用于存储器装置的初始化技术的系统100的实例。系统100包含与存储器系统110耦合的主机系统105。
23.存储器系统110可以是或包含任何装置或装置的集合,其中装置或装置的集合包含至少一个存储器阵列。例如,存储器系统110可为或包含通用快闪存储(ufs)装置、嵌入式多媒体控制器(emmc)装置、快闪装置、通用串行总线(usb)快闪装置、安全数字(sd)卡、固态驱动器(ssd)、硬盘驱动器(hdd)、双列直插式存储器模块(dimm)、小型dimm(so-dimm),或非易失性dimm(nvdimm),以及其它可能性。
24.系统100可包含在计算装置中,所述计算装置如台式计算机、手提式计算机、网络服务器、移动装置、交通工具(例如,飞机、无人机、火车、汽车或其它运输工具)、具物联网(iot)功能的装置、嵌入式计算机(例如,包含在交通工具、工业设备或联网商业装置中的嵌入式计算机),或包含存储器和处理装置的任何其它计算装置。
25.系统100可包含可与存储器系统110耦合的主机系统105。在一些实例中,此耦合可包含与主机系统控制器106的接口,所述主机系统控制器106可以是配置成使得主机系统105根据如本文中所描述的实例执行各种操作的控制组件的实例。主机系统105可包含一或多个装置,且在一些情况下可包含处理器芯片组和通过处理器芯片组执行的软件堆栈。举例来说,主机系统105可包含被配置成用于与存储器系统110或其中的装置通信的应用程序。处理器芯片组可包含一或多个核心、一或多个高速缓存器(例如,在主机系统105本地的或包含在所述主机系统中的存储器)、存储器控制器(例如,nvdimm控制器)和存储协议控制器(例如,pcie控制器、串行高级技术附件(sata)控制器)。主机系统105可使用存储器系统110例如将数据写入到存储器系统110以及从存储器系统110读取数据。虽然图1中示出一个存储器系统110,但应理解,主机系统105可与任何数量的存储器系统110耦合。
26.主机系统105可经由至少一个物理主机接口与存储器系统110耦合。在一些情况下,主机系统105及存储器系统110可经配置以使用相关联协议经由物理主机接口通信(例如,以在存储器系统110与主机系统105之间交换或以其它方式传达控制、地址、数据及其它信号)。物理主机接口的实例可包含但不限于sata接口、ufs接口、emmc接口、外围组件互连高速(pcie)接口、usb接口、光纤通道、小型计算机系统接口(scsi)、串行附接scsi(sas)、双数据速率(ddr)、双列直插式存储器模块(dimm)接口(例如,支持ddr的dimm套接接口)、开放nand快闪接口(onfi)、低功率双数据速率(lpddr)。在一些实例中,一或多个此类接口可包含在主机系统105的主机系统控制器106与存储器系统110的存储器系统控制器115中或以其它方式在其间得到支持。在一些实例中,主机系统105可经由用于包含在存储器系统110中的每一存储器装置130或存储器装置140的相应物理主机接口,或经由用于包含在存储器系统110中的每一类型的存储器装置130或存储器装置140的相应物理主机接口而与存储器系统110耦合(例如,主机系统控制器106可与存储器系统控制器115耦合)。
27.存储器系统110可包含存储器系统控制器115、存储器装置130和存储器装置140。存储器装置130可包含第一类型的存储器单元(例如,非易失性存储器单元的类型)的一或多个存储器阵列,且存储器装置140可包含第二类型的存储器单元(例如,易失性存储器单元的类型)的一或多个存储器阵列。虽然在图1的实例中展示一个存储器装置130和一个存
储器装置140,但应理解,存储器系统110可包含任何数量的存储器装置130和存储器装置140,且在一些情况下,存储器系统110可不具有存储器装置130或存储器装置140。
28.存储器系统控制器115可与主机系统105耦合和通信(例如,经由物理主机接口),并且可以是被配置成致使存储器系统110根据如本文所描述的实例执行各种操作的控制组件的实例。存储器系统控制器115还可与存储器装置130或存储器装置140耦合和通信以进行例如在存储器装置130或存储器装置140处读取数据、写入数据、擦除数据或刷新数据的操作,以及可通常被称为存取操作的其它此类操作。在一些情况下,存储器系统控制器115可从主机系统105接收命令且与一或多个存储器装置130或存储器装置140通信以执行此类命令(例如,在一或多个存储器装置130或存储器装置140内的存储器阵列处)。举例来说,存储器系统控制器115可从主机系统105接收命令或操作并且可将所述命令或操作转换成指令或适当命令以实现对存储器装置130或存储器装置140的所要存取。且在一些情况下,存储器系统控制器115可与主机系统105以及一或多个存储器装置130或存储器装置140交换数据(例如,响应于或以其它方式结合来自主机系统105的命令)。举例来说,存储器系统控制器115可将与存储器装置130或存储器装置140相关联的响应(例如,数据包或其它信号)转换成用于主机系统105的对应信号。
29.存储器系统控制器115可配置成用于与存储器装置130或存储器装置140相关联的其它操作。例如,存储器系统控制器115可执行或管理操作,例如耗损均衡操作、垃圾收集操作、错误检测操作或错误校正操作等错误控制操作、加密操作、高速缓存操作、媒体管理操作、背景刷新、健康监测,以及与来自主机系统105的命令相关联的逻辑地址(例如,逻辑块地址(lba))和与存储器装置130或存储器装置140内的存储器单元相关联的物理地址(例如,物理块地址)之间的地址转换。
30.存储器系统控制器115可包含硬件,如一或多个集成电路或离散组件、缓冲存储器或其组合。硬件可包含具有专用(例如,硬译码)逻辑的电路系统,以执行本文中归于存储器系统控制器115的操作。存储器系统控制器115可以是或包含微控制器、专用逻辑电路(例如,现场可编程门阵列(fpga)、专用集成电路(asic)、数字信号处理器(dsp)),或任何其它合适的处理器或处理电路。
31.存储器系统控制器115还可包含本地存储器120。在一些情况下,本地存储器120可包含只读存储器(rom)或其它可存储操作代码(例如,可执行指令)的存储器,所述操作代码可由存储器系统控制器115执行以执行本文中属于存储器系统控制器115的功能。在一些情况下,本地存储器120可另外或替代地包含静态随机存取存储器(sram)或其它可供存储器系统控制器115用于内部存储或计算的存储器,例如,与本文中属于存储器系统控制器115的功能有关的内部存储或计算。另外或替代地,本地存储器120可用作存储器系统控制器115的高速缓存。例如,在从存储器装置130或存储器装置140读取或向其写入时,数据可以存储到本地存储器120,并且可在本地存储器120内供主机系统105(例如,相对于存储器装置130或存储器装置140具有减小的时延)用于后续根据高速缓存策略进行检索或操控(例如,更新)。
32.尽管图1中的存储器系统110的实例已说明为包含存储器系统控制器115,但在一些情况下,存储器系统110可不包含存储器系统控制器115。举例来说,存储器系统110可另外或替代地依赖于外部控制器(例如,由主机系统105实施)或可分别在存储器装置130或存
储器装置140内部的一或多个本地控制器135或本地控制器145,以执行本文中归因于存储器系统控制器115的功能。一般来说,本文中归因于存储器系统控制器115的一或多个功能可在一些情况下改为由主机系统105、本地控制器135或本地控制器145或其任何组合执行。
33.存储器装置140可包含易失性存储器单元的一或多个阵列。举例来说,存储器装置140可包含随机存取存储器(ram)存储器单元,如动态ram(dram)存储器单元和同步dram(sdram)存储器单元。在一些实例中,存储器装置140可(例如,由主机系统105)支持相对于存储器装置130具有减少的等待时间的随机存取操作,或可提供相对于存储器装置130的一或多个其它性能差异。
34.存储器装置130可包含非易失性存储器单元的一或多个阵列。举例来说,存储器装置130可包含nand(例如,nand快闪)存储器、rom、相变存储器(pcm)、自选存储器、其它基于硫族化物的存储器、铁电ram(feram)、磁性ram(mram)、nor(例如,nor快闪)存储器、自旋转移力矩(stt)-mram、导电桥接ram(cbram)、电阻式随机存取存储器(rram)、基于氧化物的rram(oxram)和电可擦除可编程rom(eeprom)。
35.在一些实例中,存储器装置130或存储器装置140可分别包含(例如,在同一裸片上或同一封装内)本地控制器135或本地控制器145,其可执行存储器装置130或存储器装置140的一或多个存储器单元上的操作。本地控制器135或本地控制器145可结合存储器系统控制器115操作,或可执行本文中归于存储器系统控制器115的一或多个功能。在一些情况下,包含本地控制器135或本地控制器145的存储器装置130或存储器装置140可称作受管理存储器装置,且可包含与本地(例如,裸片上或封装内)控制器(例如,本地控制器135或本地控制器145)组合的存储器阵列和相关电路。受管理存储器装置的实例是受管理nand(mnand)装置。
36.在一些情况下,存储器装置130可以是或包含nand装置(例如,nand快闪装置)。存储器装置130可为或包含存储器裸片160。举例来说,在一些情况下,存储器装置130可以是包含一或多个裸片160的封装。在一些实例中,裸片160可以是从晶片切割的一块电子级半导体(例如,从硅晶片切割的硅裸片)。每个裸片160可包含一或多个平面165,并且每个平面165可包含相应的块170的集,其中每个块170可包含相应的页175的集,并且每个页175可包含存储器单元集。
37.在一些情况下,nand存储器装置130可包含被配置成各自存储一个信息位的存储器单元,其可被称为单层级单元(slc)。另外或替代地,nand存储器装置130可包含配置成各自存储多个信息位的存储器单元,如果配置成各自存储两个信息位,则其可称为多层级单元(mlc),如果配置成各自存储三个信息位,则其可称为三层级单元(tlc),如果配置成各自存储四个信息位,则其可称为四层级单元(qlc),或更一般地称为多层级存储器单元。多层级存储器单元可相对于slc存储器单元提供更大的存储密度,但在一些情况下,可能涉及用于支持电路系统的更窄读取或写入裕度或更大复杂度。
38.在一些情况下,平面165可以指块170的组,并且在一些情况下,并行操作可在不同平面165内进行。例如,并行操作可在不同块170内的存储器单元上执行,只要不同块170是在不同平面165中即可。在一些情况下,在不同平面165中执行并行操作可具有一或多个限制,例如相同操作是在相应平面165内具有相同页地址的不同页175内的存储器单元上执行的(例如,涉及命令解码、页地址解码电路系统或跨平面165共享的其它电路系统)。
39.在一些情况下,块170可包含组织成行(页175)和列(例如,串,未展示)的存储器单元。例如,同一页175中的存储器单元可共享共同字线(例如,与其耦合),并且同一串中的存储器单元可共享共同数字线(其可替代地被称为位线)(例如,与其耦合)。
40.对于一些nand架构,存储器单元可在第一粒度级别(例如,在页粒度级别)读取和编程(例如,写入),但可在第二粒度级别(例如,在块粒度级别)擦除。也就是说,页175可为可独立地编程或读取(例如,作为单个编程或读取操作的一部分同时编程或读取)的存储器(例如,存储器单元的集合)的最小单元,且块170可为可独立地擦除(例如,作为单个擦除操作的一部分同时擦除)的存储器(例如,存储器单元的集合)的最小单元。此外,在一些情况下,nand存储器单元可在其可用新数据重写之前进行擦除。因此,举例来说,在一些情况下,可直到包含页175的整个块170已被擦除才更新所使用的页175。
41.在一些情况下,为了更新块170内的一些数据同时保留块170内的其它数据,存储器装置130可将待保留的数据复制到新块170且将更新后的数据写入到新块170的一或多个其余页。存储器装置130(例如,本地控制器135)或存储器系统控制器115可将保持在旧块170中的数据标记或以其它方式指定为无效或过时,且更新l2p映射表以使数据的逻辑地址(例如,lba)与新的有效块170而不是旧的无效块170相关联。在一些情况下,例如由于时延或耗损考虑,此类复制和重新映射可能比擦除和重写整个旧块170更佳。在一些情况下,l2p映射表的一或多个副本可存储在存储器装置130的存储器单元内(例如,或多个块170或平面165内),以供本地控制器135或存储器系统控制器115使用(例如,参考和更新)。
42.在一些实例中,存储器系统110可为mnand装置的实例,其包含与本地控制器(例如,本地控制器135或本地控制器145)一起或替代地管理用于一或多个存储器装置(例如,存储器装置130、存储器装置140)的操作的mnand控制器(例如,存储器系统控制器115)。存储器系统控制器115可例如在存储器系统110起动之后即刻执行初始化程序。作为初始化程序的部分,存储器系统控制器115可从与存储器系统控制器115相关联的rom(例如,本地存储器120可以是或包含此类rom)读取操作指令。在一些情况下,操作指令可在存储器系统110的制造期间编码给与存储器系统控制器115相关联的rom(例如,与存储器系统控制器115耦合的rom可基于在期间使用的一或多个掩模(例如用以形成rom的一或多个金属化层的一或多个掩模)经硬接线。
43.根据本文中所描述的技术,系统100可实施经增强rom技术,这可提高修改用于存储器系统控制器115的操作指令的效率,以及其它优点。举例来说,用于初始化程序的第一操作指令集可存储于与存储器系统控制器115相关联的rom中(例如,存储器系统控制器115的rom可编码有第一操作指令集)。另外,用于初始化程序的第二操作指令集可存储于存储器装置130的一或多个存储器块170中。举例来说,第一操作指令集可指示第二操作指令集的方位,且存储器系统控制器115可基于所指示的方位,从一或多个存储器块170(例如,一或多个otp存储器块170)获得第二操作指令集。在一些实例中,一或多个存储器块170可被配置成不可被耦合到存储器系统110的主机系统105存取。在一些实例中,一或多个存储器块170可被配置成当存储器系统110被配置于测试模式中时为可编程的并且当存储器系统110不被配置于测试模式中时为只读的。
44.系统100可包含支持用于存储器装置的初始化技术的任何数量的非暂时性计算机可读媒体。举例来说,主机系统105、存储器系统控制器115、存储器装置130或存储器装置
140可包含或以其它方式可存取存储指令(例如,固件)的一或多个非暂时性计算机可读媒体以用于执行本文中归属于主机系统105、存储器系统控制器115、存储器装置130或存储器装置140的功能。举例来说,此类指令当由主机系统105(例如,由主机系统控制器106)、由存储器系统控制器115、由存储器装置130(例如,由本地控制器135)或由存储器装置140(例如,由本地控制器145)执行时可致使主机系统105、存储器系统控制器115、存储器装置130或存储器装置140执行本文所描述的相关联功能。
45.图2说明根据本文所公开的实例的支持用于存储器装置的初始化技术的框图200的实例。在一些实例中,框图200可实施系统100的方面。举例来说,框图200可包含耦合到主机装置205的存储器系统210,其可分别为参考图1所描述的存储器系统110和主机系统105的实例。
46.存储器系统210可包含控制器215,其可为参考图1所描述的存储器系统控制器115的实例。举例来说,控制器215可为管理一或多个存储器装置240(例如,nand存储器装置)的操作的mnand控制器的实例,所述存储器装置可为参考图1所描述的存储器装置130或存储器装置140的实例。举例来说,控制器215可耦合到存储器装置240-a和主机装置205。
47.控制器215可以包含一或多个组件。举例来说,控制器215可包含用于与主机装置205通信的主机接口、与存储器装置240-a通信的nand接口、模拟模块、缓冲存储器,或其任何组合,以及组件的其它实例。另外或替代地,控制器215可包含中央处理单元(cpu)225-a、rom 220、指令紧密耦合的存储器(iccm)230-a、数据紧密耦合的存储器(dccm)235-a,或其任何组合。
48.存储器装置240-a可为耦合到控制器215的nand存储器的实例。举例来说,存储器装置240-a可包含存储器块250的存储器阵列245(例如,nand存储器单元)。存储器装置240-a可包含一或多个模块,例如用于与控制器215通信的模拟模块或nand接口,以及模块的其它实例。存储器装置240-a可包含本地存储器控制器255,其可为如本文中参考图1所描述的本地存储器控制器135或本地存储器控制器145的实例。举例来说,本地存储器控制器255可包含iccm 230-b、cpu 225-b和dccm 235-b。在一些实例中,本地存储器控制器255可相对小于控制器215。作为说明性实例,本地存储器控制器255与控制器215相比可使用相对较小组件或与控制器215相比可配置有相对较少组件(例如,本地存储器控制器255与控制器215相比可相对较简单,举例来说,本地存储器控制器255相较于控制器215可被配置成执行较不复杂或较小数量的操作)。
49.本文中的技术可实现存储器系统210的制造的方面。举例来说,一或多个裸片可形成为用于存储器系统210的制造过程的部分。存储器阵列245可形成于第一裸片上(例如,存储器装置240-a可为第一裸片的实例),且控制器215可形成于第二裸片上。第一裸片和第二裸片可放置于同一封装或模块内。在一些实例中,制造过程可包含形成第一裸片和第二裸片之间的接口、第二裸片之间用于与主机装置205耦合的接口等,以及形成如本文中所描述的一或多个模块或组件的其它实例。
50.制造过程可包含在第二裸片上形成rom 220。在此类实例中,形成控制器215可包含使用于控制器215的第一操作指令集编码给rom 220。举例来说,可基于在制造过程期间使用的一或多个掩模,编码rom 220的内容(例如,可基于其中的一或多种金属层的物理结构,将第一操作指令集经编码给控制器215的rom 220,此类物理结构是基于一或多个相关
联的制造掩模或其它制造过程)。换句话说,第一操作指令集可硬接线到rom 220。
51.另外,用于控制器215的操作指令可写入到存储器阵列245的存储器块250。举例来说,作为制造过程的部分,在制造过程之后,或这两者,可将第二操作指令集写入到存储器块250-a。第一操作指令集可被配置成指示第二操作指令集的方位。第二操作指令集可指示其它操作指令的方位(例如,用于控制器215的固件的额外存储器块)并且可用于完成控制器215处的初始化程序或至少推进其完成。在一些实例中,第二操作指令集可与用于本地存储器控制器255的初始化指令存储于同一块(例如,存储器块250-a可存储用于本地存储器控制器255的操作指令和用于控制器215的第二操作指令集)。虽然参考和说明为单个存储器块250-a,但应理解,在一些情况下,存储器块250-a可对应于多个存储器块170,或存储器阵列内的一些其它存储器单元分组。
52.在一些实例中,存储器块250-a可被配置成不可被主机装置存取。作为说明性实例,存储于存储器块250-a处的操作指令可对应于可由主机装置205存取的地址范围之外的一或多个地址。换句话说,存储器系统210可包含被配置成从主机装置205接收命令的地址总线,且所述命令可与用于不包含存储器块250-a的存储器阵列245的地址空间(例如,存储器块250-a可处于可由主机装置205存取的地址空间之外)相关联。其它存储器块250(例如,存储器块250-b、250-c或250-d)可包含在地址空间中(例如,其它存储器块250可可由主机装置205存取)。存储器块250-a可为nand otp存储器块250的实例(例如,存储器块250-a可在物理上与其它存储器块250相同,且第二操作指令集可写入到用于主机装置和/或用于本地存储器控制器215的rom)。
53.在一些实例中,存储器块250-a可为使用测试模式可编程的。举例来说,存储器系统210可配置于测试模式中(例如,在测试模式中操作),这可使得能够存取、擦除、重新编程等存储器块250-a(例如,当存储器系统210被配置于测试模式中时,存储第二操作指令集的nand otp块可为可重新编程的、可修改的或可擦除的,且当存储器系统210不配置于测试模式中时,存储器块可为只读的)。这类测试模式可使例如存储器系统210的制造者能够修改存储于存储器块250-a处的指令,同时确保用户不修改启动码。
54.这类存储器系统210可改进用于控制器215的操作指令的修改(例如,以校正错误或实施更新),以及其它优点。举例来说,控制器215可使用操作指令执行初始化程序(例如,启动程序)。作为说明性实例,作为用于管理存储器系统210的操作的起动固件的部分,cpu 225-a可使用操作指令(例如,启动码)初始化控制器。作为初始化程序的部分,控制器215可从rom 220读取第一操作指令集(例如,在控制器215的制造期间,第一操作指令集硬接线到rom 220)。控制器215可基于读取第一操作指令集,识别存储第二操作指令集的存储器块250-a。举例来说,第一操作指令集可指示第二操作指令集的方位(例如,第一操作指令集可包含对包含第二操作指令集的存储器块250-a的指示,例如第二操作指令集和存储器块250-a之间的对应关系的映射或其它实例)。
55.控制器215可从存储器装置240-a获得第二操作指令集。举例来说,控制器215可将向存储器块250-a请求数据(例如,第二操作指令集)的命令发送到本地存储器控制器255(例如,经由nand接口)。举例来说,所述命令可指示第二操作指令集在存储器块250-a中的地址。本地存储器控制器255可响应于接收到所述命令而从存储器块250-a读取第二操作指令集并将第二操作指令集发送到控制器215(例如,经由nand接口)。控制器215可使用第二
操作指令集完成或推进初始化程序。
56.在一些实例中,存储器阵列245可包含用于管理存储器装置240-a的操作(例如,管理存储器阵列245的后初始化操作)的额外操作指令(例如固件)。举例来说,第二操作指令集可指示一或多个额外存储器块250。控制器215可基于第二操作指令集(例如,经由本地存储器控制器255)获得用于控制器215的第三操作指令集。举例来说,第三操作指令集可存储于一或多个额外存储器块处,且本地存储器控制器255可读取第三操作指令集并将所述指令发送到控制器215。
57.在一些实例中,本地存储器控制器255可执行用于存储于存储器阵列245中的操作指令的错误校正或检测程序(例如,存储器装置240-a可在本地执行错误校正,这可减少cpu 225-a的处理负载)。在一些实例中,存储器系统210可实施冗余方案以确保操作指令不含有错误。在此类实例中,本地存储器控制器255可存储存储于存储器阵列245中的第二操作指令集的副本。举例来说,存储器块250-a可被配置成存储用于控制器215的第二操作指令集的副本集(不过所述副本可存储于存储器块250中的任一个中)。当检索用于控制器215的第二操作指令集时,本地存储器控制器255可读取所述副本集中的每一个。本地存储器控制器255可比较所述副本并且将所述副本的至少一个子集识别为相同副本(例如,本地存储器控制器255可识别包含相同数据的大部分副本,且本地存储器控制器可确定包含在大部分副本中的数据是正确数据)。本地存储器控制器255可将与副本子集相关联的数据传送到控制器215(例如,本地存储器控制器255可经由nand接口,将第二操作指令集的相同副本中的一个发送到包含控制器215的第二裸片)。
58.另外或替代地,存储器系统210可实施用于错误校正或检测程序的奇偶校验信息。举例来说,控制器215可产生用于第二操作指令集的奇偶校验位并且将所述奇偶校验位存储于包含存储器阵列245的裸片上(例如,所述奇偶校验位可存储于存储器块250-a或另一存储器块250中)。控制器215使用所述奇偶校验位执行错误校正或检测。举例来说,控制器215可读取第二操作指令集并且将所存储的奇偶校验位与当读取第二操作指令集时产生的奇偶校验位集进行比较。如果控制器215未检测到任何错误,那么所接收数据可被视为有效的。替代地,控制器215可使用所接收数据校正一或多个错误并且将存储器块250-a修改为存储经校正数据。
59.通过将用于控制器215的操作指令的至少一部分存储于存储器阵列245中,存储器系统210可实现一或多个潜在优点。举例来说,存储于存储器装置240-a处的操作指令可相对灵活。也就是说,存储于存储器装置240-a处的操作指令可为可擦除的、可编程的或可重新编程的(例如,如本文中所描述,在测试模式中),这可促进相对高效的错误校正操作、固件更新或修改操作指令的其它实例。举例来说,如果在第二操作指令集中检测到错误,那么本地存储器控制器255可校正所述错误并且修改存储器块250-a处的第二操作指令集以存储经校正数据。举例来说,可在无需更改制造掩模的情况下执行此类修改(例如,rom 220处的操作指令可硬接线并且相较于存储器阵列245中的操作指令在修改上可为相对时间和资源密集型)。作为一个实例,如果在存储器系统210的制造之后或期间,在操作指令中发现漏洞(bug),那么可启用存储器系统210以在不更改用于rom 220的制造过程的情况下修补漏洞。另外或替代地,启动码(例如,操作指令)可存储于相对固定位置(例如,可能不可被主机装置205存取的存储器块250-a中)且可能不频繁地重新映射,这可产生相对低的处理开销
和用于存储控制器215的固件的存储器利用,以及其它益处。
60.图3示出根据本文所公开的实例的支持用于存储器装置的初始化技术的存储器装置305(例如,存储器系统,例如mnand装置)的框图300。存储器装置305可为参考图1和2所描述的存储器装置或存储器系统的方面的实例。举例来说,存储器装置305可包含第一裸片306(例如,包含存储器阵列和本地存储器控制器)和第二裸片307(例如,包含只读存储器和存储器系统控制器),其可为如本文中所描述的各种组件的实例。举例来说,第一裸片306和第二裸片307可经由参考图2所描述的nand接口进行通信。
61.存储器装置305可包含第一读取组件310、第二读取组件311、识别组件315、初始化组件320、管理组件325、验证组件330、第二验证组件331、传送组件335和命令组件340。这些模块中的每一个可彼此直接或间接(例如,经由一或多个总线)通信。举例来说,第一裸片306可包含第二读取组件311、验证组件330和传送组件335。第二裸片307可包含第一读取组件310、识别组件315、初始化组件320和管理组件325、第二验证组件331和命令组件340。虽然为说明清晰起见将框图300的各种组件示出为位于第一裸片306或第二裸片307上,但应理解,可移除一些组件,可添加一些组件,裸片上的组件可另外或替代地位于不同裸片上,或其任何组合。
62.作为用于存储器装置305内的第二裸片307上的控制器的初始化程序的部分,第一读取组件310可从第二裸片307上的只读存储器读取用于控制器的第一操作指令集。识别组件315可基于第一操作指令集,识别第一裸片306上的存储器阵列的存储器块。在一些实例中,第二读取组件311可基于所述识别,从存储器阵列的存储器块读取用于控制器的第二操作指令集。初始化组件320可基于从存储器阵列的存储器块读取的第二操作指令集,完成用于控制器的初始化程序。
63.在一些实例中,识别组件315可基于第二操作指令集,识别存储器阵列的一或多个额外存储器块。在一些实例中,第二读取组件311可从一或多个额外存储器块读取用于控制器的第三操作指令集。管理组件325可基于第三操作指令集,管理存储器阵列的操作。
64.在一些实例中,作为用于第一裸片306上的第二控制器的初始化程序的部分,第二读取组件311可从存储器阵列的存储器块读取用于第二控制器的操作指令集。
65.在一些实例中,第二读取组件311可从存储器阵列的存储器块读取第二操作指令集的副本集。验证组件330可将所述副本集的至少一个子集识别为第二操作指令集的相同副本。传送组件335可将第二操作指令集的相同副本中的一个从第一裸片306传送到第二裸片307。
66.在一些情况下,存储器阵列的存储器块被配置成当存储器装置被配置于测试模式中时为可编程的并且当存储器装置不被配置于测试模式中时为只读的。在一些情况下,存储器阵列的存储器块被配置成不可被用于存储器装置的主机装置存取。在一些情况下,存储器阵列的存储器块被配置成用于存储器装置的主机装置的只读存储器。在一些情况下,存储器阵列的存储器块包括nand存储器单元。
67.命令组件340可在存储器装置的地址总线处从主机装置接收与用于存储器阵列的地址空间内的地址相关联的命令,其中存储器阵列的存储器块处于所述地址空间外部。
68.在一些情况下,只读存储器被配置成基于用于第二裸片307的制造掩模而存储第一操作指令集。在一些情况下,第二裸片307上的只读存储器并非可重新编程的。在一些情
况下,存储器块被配置成当所述设备被配置于测试模式中时通过第二裸片307上的控制器可擦除、可修改或这两者。
69.在一些实例中,第一读取组件310可从存储器阵列的存储器块读取用于第二操作指令集的奇偶校验信息。第二验证组件331可基于从存储器阵列的存储器块读取的奇偶校验信息,检测第二操作指令集中的错误。在一些实例中,第二验证组件331可基于所述奇偶校验信息,校正第二操作指令集中所检测到的错误。
70.图4示出说明根据本公开的方面的支持用于存储器装置的初始化技术的一或多种方法400的流程图。方法400的操作可由如本文所描述的存储器装置或其组件实施。举例来说,可由如参考图3所描述的存储器装置执行方法400的操作。在一些实例中,存储器装置可执行指令集以控制存储器装置的功能元件以执行所描述的功能。另外或替代地,存储器装置可使用专用硬件执行所描述的功能的方面。
71.在405处,作为用于存储器装置内的第二裸片上的控制器的初始化程序的部分,存储器装置可从第二裸片上的只读存储器读取用于控制器的第一操作指令集。可根据本文中所描述的方法执行405的操作。在一些实例中,可由参考图3所描述的第一读取组件执行405的操作的方面。
72.在410处,存储器装置可基于第一操作指令集,识别存储器装置内的第一裸片上的存储器阵列的存储器块。可根据本文中所描述的方法执行410的操作。在一些实例中,可由参考图3所描述的识别组件执行410的操作的方面。
73.在415处,存储器装置可基于所述识别,从存储器阵列的存储器块读取用于控制器的第二操作指令集。可根据本文中所描述的方法执行415的操作。在一些实例中,可由参考图3所描述的第二读取组件执行415的操作的方面。
74.在420处,存储器装置可基于从存储器阵列的存储器块读取的第二操作指令集,完成用于控制器的初始化程序。可根据本文中所描述的方法执行420的操作。在一些实例中,可由参考图3所描述的初始化组件执行420的操作的方面。
75.在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法400。所述设备可包含用于以下操作的特征:作为用于所述存储器装置内的第二裸片上的控制器的初始化程序的部分,从所述第二裸片上的只读存储器读取用于所述控制器的第一操作指令集;至少部分地基于所述第一操作指令集,识别所述存储器装置内的第一裸片上的存储器阵列的存储器块;至少部分地基于所述识别,从所述存储器阵列的所述存储器块读取用于所述控制器的第二操作指令集;和至少部分地基于从所述存储器阵列的所述存储器块读取的所述第二操作指令集,完成用于所述控制器的所述初始化程序。
76.本文所描述的方法400和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:基于所述第二操作指令集,识别所述存储器阵列的一或多个额外存储器块;从所述一或多个额外存储器块读取用于所述控制器的第三操作指令集;和基于所述第三操作指令集,管理所述存储器阵列的操作。
77.本文所描述的方法400和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:作为用于第一裸片上的第二控制器的初始化程序的部分,从所述存储器阵列的所述存储器块读取用于所述第二控制器的操作指令集。
78.在本文所描述的方法400和设备的一些实例中,所述存储器块存储用于所述控制
器的所述第二操作指令集的多个副本,用于读取第二操作指令集的操作、特征、装置或指令可另外包含用于以下操作的操作、特征、装置或指令:从所述存储器阵列的所述存储器块读取所述第二操作指令集的副本集;将所述副本集的至少一个子集识别为所述第二操作指令集的相同副本;和将所述第二操作指令集的所述相同副本中的一个从所述第一裸片传送到所述第二裸片。
79.在本文所描述的方法400和设备的一些实例中,所述存储器阵列的所述存储器块可被配置成当所述存储器装置被配置于测试模式中(例如,在测试模式中操作)时为可编程的并且当所述存储器装置不被配置于测试模式中(例如,不在测试模式中操作)时为只读的。
80.在本文所描述的方法400和设备的一些实例中,所述存储器阵列的所述存储器块可被配置成不可被用于存储器装置的主机装置存取。
81.在本文所描述的方法400和设备的一些实例中,所述存储器阵列的所述存储器块可被配置成用于所述存储器装置的主机装置的只读存储器。
82.本文所描述的方法400和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:在存储器装置的地址总线处从主机装置接收与用于存储器阵列的地址空间内的地址相关联的命令,其中存储器阵列的存储器块可处于所述地址空间外部。
83.在本文所描述的方法400和设备的一些实例中,只读存储器可被配置成基于用于第二裸片的制造掩模而存储第一操作指令集。
84.在本文所描述的方法400和设备的一些实例中,第二裸片上的只读存储器可能并非可重新编程的。
85.在本文所描述的方法400和设备的一些实例中,存储器阵列的存储器块可被配置成当存储器装置被配置于测试模式中(例如,在测试模式中操作)时为可编程的(例如,可擦除、可修改或这两者),且存储器块可被配置成当存储器装置不被配置于测试模式中(例如,不在测试模式中操作)时为只读的。
86.本文所描述的方法400和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:从所述存储器阵列的所述存储器块读取用于所述第二操作指令集的奇偶校验信息;基于从所述存储器阵列的所述存储器块读取的所述奇偶校验信息,检测所述第二操作指令集中的错误;和基于所述奇偶校验信息,校正所述第二操作指令集中的所述检测到的错误。
87.在本文所描述的方法400和设备的一些实例中,存储器阵列的存储器块可包括nand存储器单元。
88.图5示出说明根据本公开的方面的支持用于存储器装置的初始化技术的一或多种方法500的流程图。可由用于存储器装置的制造设备实施方法500的操作。
89.在505处,制造设备可在第一裸片上形成存储器阵列。可根据本文中所描述的方法执行505的操作。
90.在510处,制造设备可在第二裸片上形成用于存储器阵列的控制器。可根据本文中所描述的方法执行510的操作。
91.在515处,制造设备可在第二裸片上形成只读存储器,其中形成控制器可包含将用于所述控制器的第一操作指令集编码给只读存储器。可根据本文中所描述的方法执行515
的操作。
92.在520处,制造设备可将用于控制器的第二操作指令集写入到存储器阵列的存储器块,其中第一操作指令集可包含到被写入用于控制器的第二操作指令集的存储器块的映射。可根据本文中所描述的方法执行520的操作。
93.在一些实例中,如本文中所描述的设备可执行一或多种方法,例如方法500。所述设备可包含用于以下操作的特征:在第一裸片上形成存储器阵列;在第二裸片上形成用于所述存储器阵列的控制器;在所述第二裸片上形成只读存储器,其中形成所述控制器可包含将用于所述控制器的第一操作指令集编码给所述只读存储器;和将用于所述控制器的第二操作指令集写入到所述存储器阵列的存储器块,其中所述第一操作指令集可包含到被写入用于所述控制器的所述第二操作指令集的所述存储器块的映射。
94.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:在所述第一裸片上形成用于所述存储器阵列的第二控制器;和将用于所述第二控制器的操作指令集写入到所述存储器阵列的所述存储器块。
95.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:将用于所述控制器的所述第二操作指令集的副本写入到所述存储器阵列的所述存储器块。
96.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:将用于所述第二操作指令集的奇偶校验信息编码给所述存储器阵列的所述存储器块。
97.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:在所述第一裸片和所述第二裸片之间形成接口,其中所述控制器可被配置成经由所述接口从所述第一裸片接收用于所述控制器的所述第二操作指令集。
98.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:将所述第一裸片和所述第二裸片放置到同一封装或模块中。
99.在本文所描述的方法500和设备的一些实例中,所述第二裸片可被配置成可与主机装置耦合,且所述第二裸片上的所述只读存储器可被配置成不可被所述主机装置存取。
100.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:在所述第一裸片和所述第二裸片之间形成接口,其中所述第二裸片可被配置成可与主机装置耦合,其中可被写入所述第二操作指令集的所述存储器块可被配置成不可被所述主机装置存取,且其中所述存储器阵列的第二存储器块可被配置成可被所述主机装置存取。
101.本文所描述的方法500和设备的一些实例可另外包含用于以下操作的操作、特征、装置或指令:根据测试模式操作所述存储器阵列;基于根据所述测试模式操作所述存储器阵列,从所述存储器阵列的所述存储器块擦除所述第二操作指令集的前一版本;和将所述第二操作指令集写入到所述存储器阵列的所述存储器块或第二存储器块。
102.应注意,上文所描述的方法描述了可能的实施方案,且操作和步骤可经重新布置或以其它方式修改,且其它实施方案是可能的。另外,可组合来自所述方法中的两种或更多种的部分。
103.描述一种设备。所述设备可包含第一裸片上的存储器阵列和第二裸片上的控制
器,其中所述第二裸片与所述第一裸片耦合,且其中所述控制器被配置成致使所述设备:作为用于所述控制器的初始化程序的部分,从所述第二裸片上的只读存储器读取用于所述控制器的第一操作指令集;基于所述第一操作指令集,识别所述存储器阵列的存储器块;基于所述识别,从所述存储器阵列的所述存储器块读取用于所述控制器的第二操作指令集;和基于从所述存储器阵列的所述存储器块读取的所述第二操作指令集,完成用于所述控制器的所述初始化程序。
104.在一些实例中,控制器可被进一步配置成致使所述设备基于第二操作指令集,识别存储器阵列的一或多个额外存储器块;从一或多个额外存储器块读取用于控制器的第三操作指令集;和基于第三操作指令集,管理存储器阵列的操作。
105.所述设备的一些实例可包含处于所述第一裸片上并且与所述存储器阵列耦合的第二控制器,其中所述第二控制器可被配置成致使所述设备:作为用于所述第二控制器的初始化程序的部分,从所述存储器阵列的所述存储器块读取用于所述第二控制器的操作指令集。
106.在一些实例中,所述存储器块可被配置成存储用于所述控制器的所述第二操作指令集的多个副本,且为了从所述存储器阵列的所述存储器块读取用于所述控制器的所述第二操作指令集,所述第二控制器可被配置成致使所述设备:从所述存储器阵列的所述存储器块读取所述第二操作指令集的副本集;将所述副本集的至少一个子集识别为所述第二操作指令集的相同副本;和将所述第二操作指令集的所述相同副本中的一个从所述第一裸片传送到所述第二裸片。
107.在一些实例中,所述存储器阵列的所述存储器块可被配置成当所述设备被配置于测试模式中(例如,在测试模式中操作)时为可编程的并且当所述设备不被配置于所述测试模式中(例如,不在测试模式中操作)时为只读的。
108.在一些实例中,所述存储器阵列的所述存储器块可被配置成不可被所述设备的主机装置存取。
109.在一些实例中,所述存储器阵列的所述存储器块可被配置成用于所述设备的主机装置的只读存储器。
110.所述设备的一些实例可包含地址总线,其被配置成从所述设备的主机装置接收与用于所述存储器阵列的地址空间内的地址相关联的命令,其中所述存储器阵列的所述存储器块可处于所述地址空间外部。
111.在一些实例中,所述只读存储器可被配置成基于用于所述第二裸片的制造掩模而存储所述第一操作指令集。
112.在一些实例中,所述第二裸片上的所述只读存储器可为不可重新编程的。
113.在一些实例中,所述存储器块可被配置成当(例如,仅当)所述设备被配置于测试模式中时可被控制器擦除、可被控制器修改,或这两者。
114.在一些实例中,控制器可被进一步配置成致使所述设备:从所述存储器阵列的所述存储器块读取用于所述第二操作指令集的奇偶校验信息;基于从所述存储器阵列的所述存储器块读取的所述奇偶校验信息,检测所述第二操作指令集中的错误;和基于所述奇偶校验信息,校正所述第二操作指令集中的所述检测到的错误。
115.在一些实例中,存储器阵列的存储器块可包含nand存储器单元。
116.描述一种设备。所述设备可包含:包括存储器阵列的第一裸片,其中所述存储器阵列包含存储器块集;和与所述第一裸片耦合的第二裸片,其中所述第二裸片包含用于所述存储器阵列的控制器。所述第二裸片上的只读存储器可被配置成存储用于所述控制器的第一操作指令集;所述第一裸片上的所述存储器阵列的存储器块可被配置成存储用于所述控制器的第二操作指令集;且所述第一操作指令集可被配置成指示所述第一裸片上的所述存储器阵列的被配置成存储用于所述控制器的所述第二操作指令集的所述存储器块。
117.所述设备的一些实例可包含所述第一裸片和所述第二裸片之间的接口,其中所述第二裸片上的所述控制器可被配置成经由所述接口从所述第一裸片接收用于所述控制器的所述第二操作指令集。
118.所述设备的一些实例可包含处于所述第一裸片上并与所述存储器阵列耦合的第二控制器,其中被配置成存储用于所述控制器的所述第二操作指令集的所述存储器块还被配置成存储用于所述第二控制器的操作指令集。
119.描述一种设备。所述设备可包含在封装或模块内与第二裸片耦合的第一裸片;处于所述第一裸片上的存储器阵列;处于所述第二裸片上的只读存储器;和处于所述第二裸片上的用于所述存储器阵列的控制器。所述第二裸片上的所述只读存储器可被配置成存储用于所述控制器的初始化程序的第一操作指令集,且其中所述存储器阵列可包含被配置成存储用于所述控制器的所述初始化程序的第二操作指令集的存储器块。
120.所述设备的一些实例可另外包含处于所述第一裸片上的用于所述存储器阵列的第二控制器,其中所述存储器块可被进一步配置成存储用于所述第二控制器的第二初始化程序的操作指令集。
121.可使用多种不同技术和技艺中的任一种来表示本文中所描述的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。一些图式可将信令说明为单个信号;然而,所属领域的一般技术人员应理解,信号可表示信号的总线,其中总线可具有各种位宽度。
122.术语“电子连通”、“导电接触”、“连接”和“耦合”可以指组件之间支持电子在组件之间流动的关系。如果组件之间存在可在任何时间支持信号在组件之间流动的任何导电路径,那么组件被视为彼此电子通信(或彼此导电接触,或彼此连接,或彼此耦合)。在任何给定时间,基于包含所连接组件的装置的操作,彼此电子连通(或导电接触或连接或耦合)的组件之间的导电路径可以是开路或闭路。所连接组件之间的导电路径可以是组件之间的直接导电路径,或所连接组件之间的导电路径可以是可包含如开关、晶体管或其它组件的中间组件的间接导电路径。在一些实例中,可例如使用例如开关或晶体管等一或多个中间组件来中断所连接组件之间的信号流一段时间。
123.术语“耦合”是指从组件之间的开路关系移动到组件之间的闭路关系的条件,在开路关系中,信号当前无法通过导电路径在组件之间传达,在闭路关系中,信号能够通过导电路径在组件之间传达。当例如控制器等组件将其它组件耦合在一起时,组件起始允许信号经由先前不准许信号流动的导电路径在其它组件之间流动的改变。
124.术语“隔离”是指信号当前不能在组件之间流动的组件之间的关系。如果组件之间存在开路,则组件彼此隔离。举例来说,由定位在两个组件之间的开关间隔开的组件在开关
断开时彼此隔离。当控制器分隔开两个组件时,所述控制器实现以下改变:阻止信号使用先前准许信号流动的导电路径在组件之间流动。
125.本文中使用的术语“层”或“层级”是指几何结构(例如,相对于衬底)的层或薄片。每一层或层级可具有三个维度(例如,高度、宽度和深度),并且可覆盖表面的至少部分。举例来说,层或层级可为三维结构,其中两个维度大于第三维,例如薄膜。层或层级可包含不同元件、组件和/或材料。在一些实例中,一个层或层级可由两个或更多个子层或子层级构成。
126.本文中论述的装置,包含存储器阵列,可形成于例如硅、锗、硅锗合金、砷化镓、氮化镓等半导体衬底上。在一些实例中,衬底是半导体晶片。在其它实例中,衬底可以是绝缘体上硅(soi)衬底,例如玻璃上硅(sog)或蓝宝石上硅(sop),或另一衬底上的半导体材料的外延层。可通过使用包含但不限于磷、硼或砷的各种化学物质的掺杂来控制衬底或衬底的子区的导电性。可在衬底的初始形成或生长期间,通过离子植入或通过任何其它掺杂方法执行掺杂。
127.本文中所论述的开关组件或晶体管可表示场效应晶体管(fet),且包括包含源极、漏极和栅极的三端装置。所述端子可通过导电材料(例如金属)连接到其它电子元件。源极和漏极可为导电的,且可包括经重掺杂,例如简并,半导体区。源极与漏极可通过经轻掺杂半导体区或沟道分离。如果沟道是n型的(即,大部分载体为电子),那么fet可被称为n型fet。如果沟道是p型的(即,大部分载体为电洞),那么fet可被称为p型fet。通道可由绝缘栅极氧化物封端。可通过将电压施加到栅极来控制通道导电性。例如,将正电压或负电压分别施加到n型fet或p型fet可导致通道变得导电。当大于或等于晶体管的阈值电压的电压被施加到晶体管栅极时,晶体管可“接通”或“激活”。当小于晶体管的阈值电压的电压施加到晶体管栅极时,晶体管可“断开”或“解除激活”。
128.本文结合附图阐述的描述内容描述了实例配置,且并不表示可以实施的或在权利要求书的范围内的所有实例。本文中所使用的术语“示范性”是指“充当实例、例子或说明”,且不“优选于”或“优于”其它实例。详细描述包含具体细节,以提供对所描述技术的理解。然而,可在没有这些具体细节的情况下实践这些技术。在一些情况下,以框图形式示出熟知结构和装置,以免混淆所描述实例的概念。
129.在附图中,类似组件或特征可以具有相同的参考标记。另外,可通过在参考标记之后跟着短划线及在类似组件当中进行区分的第二标记来区分相同类型的各种组件。如果说明书中仅使用第一参考标记,那么描述适用于具有相同第一参考标记的类似组件中的任一者,与第二参考标记无关。
130.本文中所描述的功能可在硬件、由处理器执行的软件、固件或其任何组合中实施。如果以由处理器执行的软件来实施,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或通过计算机可读媒体予以传输。其它实例和实施在本公开和所附权利要求书的范围内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器执行的软件、硬件、固件、硬连线或任何这些的组合实施。实施功能的特征还可物理上位于各种位置处,包含经分布以使得功能的部分在不同物理位置处实施。
131.举例来说,可用通用处理器、dsp、asic、fpga或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其设计成执行本文中所描述的功能的任何组合来实施或执行结
合本文中的公开内容而描述的各种说明性块和模块。通用处理器可为微处理器,但在替代方案中,处理器可为任何处理器、控制器、微控制器或状态机。处理器还可被实施为计算装置的组合(例如,dsp与微处理器的组合、多个微处理器、结合dsp核心的一或多个微处理器,或任何其它此配置)。
132.如本文中所使用,包含在权利要求书中,如在项列表(例如,后加例如“中的至少一个”或“中的一或多个”的短语的项列表)中所使用的“或”指示包含端点的列表,使得例如a、b或c中的至少一个的列表意指a或b或c或ab或ac或bc或abc(即,a和b和c)。另外,如本文所用,短语“基于”不应理解为提及封闭条件集。举例来说,在不脱离本公开的范围的情况下,描述为“基于条件a”的示范性步骤可基于条件a和条件b两者。换句话说,如本文所用,短语“基于”应同样地解释为短语“至少部分地基于”。
133.提供本文中的描述使得所属领域的技术人员能够进行或使用本公开。所属领域技术人员将清楚对本公开的各种修改,且本文中所定义的一般原理可应用于其它变化形式而不会脱离本公开的范围。因此,本公开不限于本文所述的实例和设计,而是被赋予与本文所公开的原理和新颖特征一致的最宽范围。

技术特征:


1.一种设备,其包括:处于第一裸片上的存储器阵列;和处于第二裸片上的控制器,其中所述第二裸片与所述第一裸片耦合,且其中所述控制器被配置成致使所述设备:作为用于所述控制器的初始化程序的部分,从所述第二裸片上的只读存储器读取用于所述控制器的第一操作指令集;至少部分地基于所述第一操作指令集,识别所述存储器阵列的存储器块;至少部分地基于所述识别,从所述存储器阵列的所述存储器块读取用于所述控制器的第二操作指令集;和至少部分地基于从所述存储器阵列的所述存储器块读取的所述第二操作指令集,完成用于所述控制器的所述初始化程序。2.根据权利要求1所述的设备,其中所述控制器被进一步配置成致使所述设备:至少部分地基于所述第二操作指令集,识别所述存储器阵列的一或多个额外存储器块;从所述一或多个额外存储器块读取用于所述控制器的第三操作指令集;和至少部分地基于所述第三操作指令集,管理所述存储器阵列的操作。3.根据权利要求1所述的设备,其另外包括:处于所述第一裸片上并且与所述存储器阵列耦合的第二控制器,其中所述第二控制器被配置成致使所述设备:作为用于所述第二控制器的初始化程序的部分,从所述存储器阵列的所述存储器块读取用于所述第二控制器的操作指令集。4.根据权利要求3所述的设备,其中所述存储器块被配置成存储用于所述控制器的所述第二操作指令集的多个副本,且其中为了从所述存储器阵列的所述存储器块读取用于所述控制器的所述第二操作指令集,所述第二控制器被配置成致使所述设备:从所述存储器阵列的所述存储器块读取所述第二操作指令集的多个副本;将所述多个副本的至少一个子集识别为所述第二操作指令集的相同副本;和将所述第二操作指令集的所述相同副本中的一个从所述第一裸片传送到所述第二裸片。5.根据权利要求1所述的设备,其中所述存储器阵列的所述存储器块被配置成当所述设备被配置于测试模式中时为可编程的并且当所述设备不被配置于所述测试模式中时为只读的。6.根据权利要求1所述的设备,其中所述存储器阵列的所述存储器块被配置成不可被所述设备的主机装置存取。7.根据权利要求1所述的设备,其中所述存储器阵列的所述存储器块被配置成用于所述设备的主机装置的只读存储器。8.根据权利要求1所述的设备,其另外包括:地址总线,其被配置成从所述设备的主机装置接收与用于所述存储器阵列的地址空间内的地址相关联的命令,且其中所述存储器阵列的所述存储器块处于所述地址空间外部。9.根据权利要求1所述的设备,其中所述只读存储器被配置成至少部分地基于用于所
述第二裸片的制造掩模而存储所述第一操作指令集。10.根据权利要求1所述的设备,其中所述第二裸片上的所述只读存储器是不可重新编程的。11.根据权利要求1所述的设备,其中所述存储器块被配置成当所述设备被配置于测试模式中时可被控制器擦除、可被控制器修改,或这两者。12.根据权利要求1所述的设备,其中所述控制器被进一步配置成致使所述设备:从所述存储器阵列的所述存储器块读取用于所述第二操作指令集的奇偶校验信息;至少部分地基于从所述存储器阵列的所述存储器块读取的所述奇偶校验信息,检测所述第二操作指令集中的错误;和至少部分地基于所述奇偶校验信息,校正所述第二操作指令集中的所述检测到的错误。13.根据权利要求1所述的设备,其中所述存储器阵列的所述存储器块包括“与非”nand存储器单元。14.一种由存储器装置执行的方法,所述方法包括:作为用于所述存储器装置内的第二裸片上的控制器的初始化程序的部分,从所述第二裸片上的只读存储器读取用于所述控制器的第一操作指令集;至少部分地基于所述第一操作指令集,识别所述存储器装置内的第一裸片上的存储器阵列的存储器块;至少部分地基于所述识别,从所述存储器阵列的所述存储器块读取用于所述控制器的第二操作指令集;和至少部分地基于从所述存储器阵列的所述存储器块读取的所述第二操作指令集,完成用于所述控制器的所述初始化程序。15.根据权利要求14所述的方法,其另外包括:至少部分地基于所述第二操作指令集,识别所述存储器阵列的一或多个额外存储器块;从所述一或多个额外存储器块读取用于所述控制器的第三操作指令集;和至少部分地基于所述第三操作指令集,管理所述存储器阵列的操作。16.根据权利要求14所述的方法,其另外包括:作为用于所述第一裸片上的第二控制器的初始化程序的部分,从所述存储器阵列的所述存储器块读取用于所述第二控制器的操作指令集。17.根据权利要求14所述的方法,其中所述存储器块存储用于所述控制器的所述第二操作指令集的多个副本,且其中读取所述第二操作指令集另外包括:从所述存储器阵列的所述存储器块读取所述第二操作指令集的所述多个副本;将所述多个副本的至少一个子集识别为所述第二操作指令集的相同副本;和将所述第二操作指令集的所述相同副本中的一个从所述第一裸片传送到所述第二裸片。18.根据权利要求14所述的方法,其中所述只读存储器至少部分地基于用于所述第二裸片的制造掩模而存储所述第一操作指令集。19.根据权利要求14所述的方法,其中所述存储器阵列的所述存储器块被配置成当所
述存储器装置在测试模式中操作时为可编程的,且所述存储器块被配置成当所述存储器装置不在所述测试模式中操作时为只读的。20.根据权利要求14所述的方法,其中所述存储器阵列的所述存储器块被配置成用于所述存储器装置的主机装置的只读存储器。21.根据权利要求14所述的方法,其另外包括:从所述存储器阵列的所述存储器块读取用于所述第二操作指令集的奇偶校验信息;至少部分地基于从所述存储器阵列的所述存储器块读取的所述奇偶校验信息,检测所述第二操作指令集中的错误;和至少部分地基于所述奇偶校验信息,校正所述第二操作指令集中的所述检测到的错误。22.一种设备,其包括:包括存储器阵列的第一裸片,其中所述存储器阵列包括多个存储器块;和与所述第一裸片耦合的第二裸片,其中所述第二裸片包括用于所述存储器阵列的控制器,其中:所述第二裸片上的只读存储器被配置成存储用于所述控制器的第一操作指令集;所述第一裸片上的所述存储器阵列的存储器块被配置成存储用于所述控制器的第二操作指令集;且所述第一操作指令集被配置成指示所述第一裸片上的所述存储器阵列的被配置成存储用于所述控制器的所述第二操作指令集的所述存储器块。23.根据权利要求22所述的设备,其另外包括:所述第一裸片和所述第二裸片之间的接口,其中所述第二裸片上的所述控制器被配置成经由所述接口从所述第一裸片接收用于所述控制器的所述第二操作指令集。24.根据权利要求22所述的设备,其另外包括:处于所述第一裸片上并与所述存储器阵列耦合的第二控制器,其中被配置成存储用于所述控制器的所述第二操作指令集的所述存储器块还被配置成存储用于所述第二控制器的操作指令集。25.一种设备,其包括:在封装或模块内与第二裸片耦合的第一裸片;处于所述第一裸片上的存储器阵列;处于所述第二裸片上的只读存储器;和处于所述第二裸片上的用于所述存储器阵列的控制器,其中所述第二裸片上的所述只读存储器被配置成存储用于所述控制器的初始化程序的第一操作指令集,且其中所述存储器阵列包括被配置成存储用于所述控制器的所述初始化程序的第二操作指令集的存储器块。26.根据权利要求25所述的设备,其另外包括:处于所述第一裸片上的用于所述存储器阵列的第二控制器,其中所述存储器块被进一步配置成存储用于所述第二控制器的第二初始化程序的操作指令集。27.一种方法,其包括:在第一裸片上形成存储器阵列;
在第二裸片上形成用于所述存储器阵列的控制器;在所述第二裸片上形成只读存储器,且其中形成所述控制器包括将用于所述控制器的第一操作指令集编码给所述只读存储器;和将用于所述控制器的第二操作指令集写入到所述存储器阵列的存储器块,其中所述第一操作指令集包含到被写入用于所述控制器的所述第二操作指令集的所述存储器块的映射。28.根据权利要求27所述的方法,其另外包括:在所述第一裸片上形成用于所述存储器阵列的第二控制器;和将用于所述第二控制器的操作指令集写入到所述存储器阵列的所述存储器块。29.根据权利要求27所述的方法,其另外包括:将用于所述控制器的所述第二操作指令集的副本写入到所述存储器阵列的所述存储器块。30.根据权利要求27所述的方法,其另外包括:将用于所述第二操作指令集的奇偶校验信息编码给所述存储器阵列的所述存储器块。31.根据权利要求27所述的方法,其另外包括:在所述第一裸片和所述第二裸片之间形成接口,其中所述控制器被配置成经由所述接口从所述第一裸片接收用于所述控制器的所述第二操作指令集。32.根据权利要求27所述的方法,其另外包括:将所述第一裸片和所述第二裸片放置到同一封装或模块中。33.根据权利要求27所述的方法,其中:所述第二裸片被配置成可与主机装置耦合;且所述第二裸片上的所述只读存储器被配置成不可被所述主机装置存取。34.根据权利要求27所述的方法,其另外包括:在所述第一裸片和所述第二裸片之间形成接口,其中所述第二裸片被配置成可与主机装置耦合,其中被写入所述第二操作指令集的所述存储器块被配置成不可被所述主机装置存取,且其中所述存储器阵列的第二存储器块被配置成可被所述主机装置存取。35.根据权利要求27所述的方法,其另外包括:根据测试模式操作所述存储器阵列;至少部分地基于根据所述测试模式操作所述存储器阵列,从所述存储器阵列的所述存储器块擦除所述第二操作指令集的前一版本;和将所述第二操作指令集写入到所述存储器阵列的所述存储器块或第二存储器块。

技术总结


本申请案是针对用于存储器装置的初始化技术。一种存储器系统可包含第一裸片上的存储器阵列和第二裸片上的控制器,其中所述第二裸片与所述第一裸片耦合。所述控制器可基于存储在所述存储器系统内的操作指令,执行初始化程序。举例来说,所述控制器可从所述第二裸片上的只读存储器读取第一操作指令集。所述控制器可获得存储于所述第一裸片上的所述存储器阵列的存储器块处的第二操作指令集,其中所述存储器块由所述第一操作指令集指示。所述控制器可基于所述第二操作指令集,完成或至少推进初始化程序。始化程序。始化程序。


技术研发人员:

A

受保护的技术使用者:

美光科技公司

技术研发日:

2021.11.19

技术公布日:

2022/5/31

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

本文链接:https://www.17tex.com/tex/3/28021.html

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

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