CN101681301B - 存储器页大小自动检测 - Google Patents
存储器页大小自动检测 Download PDFInfo
- Publication number
- CN101681301B CN101681301B CN2008800158111A CN200880015811A CN101681301B CN 101681301 B CN101681301 B CN 101681301B CN 2008800158111 A CN2008800158111 A CN 2008800158111A CN 200880015811 A CN200880015811 A CN 200880015811A CN 101681301 B CN101681301 B CN 101681301B
- Authority
- CN
- China
- Prior art keywords
- page
- leaf
- storage arrangement
- data
- certification mark
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- 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/10—Program control for peripheral devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Storing Facsimile Image Data (AREA)
Abstract
本发明提出了用于存储器页大小自动检测的方法及设备。一种用于自动确定存储器装置的页大小的方法包括:接收所述存储器装置的页大小范围;确定所述存储器装置的总线宽度;检测具有自动检测标记的页的数目;及基于所述所检测的页数目及所述所接收的页大小范围来确定所述存储器装置的所述页大小。一种用于自动确定页大小检测的设备包括用于执行上文所呈现的方法的逻辑。
Description
根据35 U.S.C.§119主张优先权
本专利申请案主张2007年5月14日申请的标题为“快闪装置页大小自动检测”(“Flash device page size auto-detection”)的第60/917,901号临时申请案及2007年10月1日申请的标题为“存储器页大小自动检测”(“Memory Page Size Auto Detection”)的第60/976,543号临时申请案的优先权,所述临时申请案均让渡给本发明的受让人且特此以引用的方式明确并入本文中。
技术领域
本发明的实施例大体上涉及存储器装置的配置,且更确切地说涉及在信息处理装置的启动序列期间自动确定非易失性存储器装置的页大小以使得能够与密度(例如,存储器容量大小)无关地支持存储器装置。
背景技术
当信息处理装置(IPD)被通电时,其可首先经历启动序列以初始化其各种硬件及/或软件组件。可由具有多图像启动架构的软件来执行所述启动序列,所述多图像启动架构可包括许多可单独编译及维护的代码图像。所述启动序列可通过首先执行初级启动代码而开始。大体来说,所述初级启动代码可存储在芯片上非易失性存储器中且可在制造IPD时固定。在一些情况下,所述初级启动代码可存储在芯片外非易失性存储器中。
在功率循环(完全的切断状态到接通状态或半切断状态到接通状态)之后,IPD可开始执行初级启动代码。作为初级启动代码执行的一部分,IPD可下载二级启动代码或图像,此可为IPD启动过程中的下一步骤。所述二级启动代码可驻存在芯片外非易失性存储器中,并可随产品且也随产品配置而变化。可使用不同类型的存储器装置(例如,NAND快闪、oneNAND快闪、m系统快闪、NOR快闪、EEPROM、ROM等等)来存储二级启动代码。为下载二级启动代码图像,IPD应知道二级启动代码所驻存的装置的细节(装置类型)及如何下载二级启动代码(用以存取装置的协议、如何存取装置、如何将数据存储在装置中等等)。当在初级启动代码执行期间发生二级启动代码下载时,IPD应具有初级启动代码自身中的信息(关于存储有二级代码的装置及如何下载二级启动代码)。或者,IPD可能能够在初级启动代码执行期间导出此信息。
一旦IPD完成初级启动代码执行,其便可完成以下检测:具有二级代码的装置、二级代码在所述装置中的位置(例如,地址)及如何存取二级代码。在一些情况下,IPD可将二级代码从装置下载到芯片上存储器或芯片外存储器,且在一些其它情况下,其可仅识别二级代码位置及如何对其进行存取。在完成初级启动代码执行之后,IPD开始执行二级代码。在二级代码图像执行期间,IPD可识别/获悉系统的硬件配置的更多细节(系统类型、所连接的装置、系统的特征、系统存储器大小、宽度、位置、用以存取系统存储器的协议等等)还有某一级别的SW配置。
如上文所描述,为下载二级代码,IPD应确定装置类型及其存取方法。由于可能存在不同类型的需要在初级启动期间存取的装置,所以IPD可执行三个一般步骤来实现对存储器装置的存取:(i)装置类型检测;(ii)总线接口宽度检测;及(iii)装置的页/扇区大小确定(当所述装置是页/扇区导向时)。IPD在其可存取装置中的二级代码之前应完成这些步骤。
因此,为了实现正确的操作,IPD可识别其可连接到的非易失性快闪存储器装置的页/扇区大小。假设IPD识别了存储有二级启动代码的装置类型,则其可接着检测存储数据的格式。特定类型的快闪装置以页格式来存储数据(例如,NAND、oneNAND、m系统、超AND等等)。装置的页大小可随其密度及装置的类型而变化。给定快闪装置的页大小可低达(例如)128个字节及高达8千字节或更高。
随着快闪装置密度的增加,页大小相应地增加。可使用不同技术以通过IPD来检测装置的页大小及接口总线宽度。一种常规技术可通过具有专用于IPD的外部引脚来编码页大小及/或总线宽度,且被驱动到这些引脚的值可指示所述装置的页大小及/或总线宽度。此方法可非常简单;然而,支持所有不同页大小所需的专用引脚的数目可变大。
另一可能的解决方案可将页大小及总线宽度信息存储在快闪装置的第一页中,且硬件逻辑可在初级启动执行期间从所述快闪装置读取所述第一页(IPD迫使硬件执行此功能性,或硬件逻辑自动检测并读取所述第一页)。所述解决方案可能不具有针对可在第一页读取期间出现的随机错误的保护。快闪装置可倾向于随机错误,且如果第一页中的数据在快闪存储器中被破坏或在IPD从快闪存储器读取数据时被破坏,则存在IPD可能错误地检测页大小(这可能产生灾难性故障)的可能性。由于在启动时IPD并不知道页及数据格式,所以无法在此阶段按照惯例添加错误保护。
为改进针对读取故障的保护,可使用独特数字(称为幻数)来编码页大小及总线宽度,所述独特数字提供针对随机错误的保护。可将页大小及总线宽度编码为独特幻数且将其置于装置的第一页中。IPD可基于存储在第一页中的幻数来检测页大小且接着基于所述页大小来存取二级启动代码。这暗示必须针对每一快闪装置(页及总线宽度大小)来编译并维护二级启动代码/图像。由于不同类型的快闪存储器装置的数目持续增长,所以开发、管理及维护对应于不同快闪装置的单独软件构造可能变得昂贵。
因此,需要一种新的自动页大小检测方法,其可利用普通软件来支持快闪装置配置以便降低开发及维护成本。
发明内容
本发明的示范性实施例是针对用于存储器页大小自动检测的方法及设备。
本发明的一实施例可包括一种用于自动确定存储器装置的页大小的方法,所述方法包含:接收存储器装置的页大小范围;确定存储器装置的总线宽度;检测具有自动检测标记的页的数目;及基于所检测的具有自动检测标记的页的数目及所接收的页大小范围来确定存储器装置的页大小。
另一实施例可包括一种用于自动确定存储器装置的页大小的设备,所述设备包含:经配置以接收存储器装置的页大小范围的逻辑;经配置以确定存储器装置的总线宽度的逻辑;经配置以检测具有自动检测标记的页的数目的逻辑;及经配置以基于所检测的具有自动检测标记的页的数目及所接收的页大小范围来确定存储器装置的页大小的逻辑。
另一实施例可包括一种用于自动确定存储器装置的页大小的设备,所述设备包含:用于接收存储器装置的页大小范围的装置;用于确定存储器装置的总线宽度的装置;用于检测具有自动检测标记的页的数目的装置;及用于基于所检测的具有自动检测标记的页的数目及所接收的页大小范围来确定存储器装置的页大小的装置。
附图说明
呈现附图以辅助对本发明的实施例的描述,且提供附图只是为了说明实施例而非对其进行限制。
图1是信息处理装置的框图,所述信息处理装置可包括处理器、存储器控制器及各种不同类型的存储器装置。
图2A是驻存在存储器装置内的示范性第一页的图式,所述第一页可用以确定所述存储器装置的总线宽度。
图2B是展示如何从具有8位总线宽度及16位总线宽度的存储器装置读取示范性第一页中的数据的图式。
图3是示范性数据结构的图式,所述数据结构可用以确定存储器装置的总线宽度及页大小两者。
图4是展示如何将图3中所示的示范性数据结构包含在具有不同页大小的存储器装置内的图式。
图5是描绘用于检测快闪装置的页大小的示范性过程的流程图。
图6是展示为自动检测标记的数目计数的另一示范性过程的图式。
图7是描绘用于确定与存储器装置相关联的参数的示范性过程的流程图。
图8是描绘快闪存储器装置中的数据结构组织的图式。
具体实施方式
在针对本发明的特定实施例的以下描述及相关图式中揭示了本发明的若干方面。可在不脱离本发明的范围的情况下设计替代性实施例。另外,将不详细描述或将省略本发明的众所周知的元件以免混淆本发明的相关细节。
本文中使用词语“示范性”来意味着“充当实例、例子或说明”。不必将在本文中被描述为“示范性”的任何实施例解释为比其它实施例更优选或具优势。同样,术语“本发明的实施例”不要求本发明的所有实施例均包括所论述的特征、优势或操作模式。本文中使用术语“幻数”来定义基于最小加权算法所确定并用于各种实施例中使得存储器读取错误可能不具有相关性的数字。本文中使用词语“外部存储器”来意味着并非位于处理单元的范围内的存储器装置,这又可意味着所述存储器装置并非形成于与处理单元相同的裸片上。本文中使用词语“内部存储器”来意味着存储器装置形成在与处理单元相同的裸片上。
此外,将关于(例如)计算装置的元件待执行的动作序列来描述许多实施例。将认识到,可通过特定电路(例如,专用集成电路(ASIC))、通过由一个或一个以上处理器执行的程序指令或通过两者的组合来执行本文中所描述的各种动作。另外,可认为本文中所描述的这些动作序列被完全具体化在任何形式的计算机可读存储媒体内,所述计算机可读媒体具有存储于其中的对应的计算机指令集,在执行后,所述指令集将使相关联的处理器执行本文中所描述的功能性。因此,可以多个不同形式来具体化本发明的各种方面,所述形式均已被涵盖于所主张的标的物的范围内。另外,就本文中所描述的实施例中的每一者而言,可在本文中将任何所述实施例的对应形式描述为(例如)“经配置以”执行所描述的动作的“逻辑”。
图1是信息处理装置(IPD)100的框图,所述IPD 100可包括处理器单元110、存储器控制器120及外部存储器装置130。所述外部存储器装置130可包括各种不同类型的外部存储器装置,其可包括NAND快闪存储器132、OneNAND快闪存储器134及/或任何其它已知类型的存储器装置136(例如m系统快闪、NOR快闪存储器、EEPROM、ROM、SDRAM等等)。存储器控制器120可为用以与上文所提及的不同类型的存储器装置介接的多个控制器的组合。在完成启动序列之后的正常操作期间,处理器单元110可经由存储器控制器120从外部存储器装置130读取数据及/或将数据写入到外部存储器装置130。在完成启动序列之后发生的所述通信可以常规方式发生。
IPD 100可进一步包括图1中未展示的其它装置(例如,图形、视频、音频、CDMA及/或GSM/GPRS处理器;I/O接口;等等)。IPD 100可为任何类型的基于计算机的系统(包括可用于膝上型计算机、个人数字助理(PDA)及/或移动通信装置中的便携型及/或嵌入式系统)的一部分。举例来说,移动通信装置可为用于移动通信系统中的手机,且IPD 100可为用于所述手机内的移动台调制解调器(MSMTM)芯片组。处理器可为任何类型的微处理器及/或微控制器(例如来自ARM9系列的处理器)。存储器控制器可包括一个或一个以上总线接口及/或多个存储器控制器,以用于多种不同存储器类型。举例来说,存储器控制器120可具有用以与所有类型的存储器装置介接的单个存储器控制器,或用以存取所述存储器装置的多个存储器控制器。在图1所示的实施例中,IPD 100可与NAND 132、OneNAND快闪存储器134及/或其它类型的存储器136(例如,m系统快闪、NOR快闪存储器等等)介接。
当IPD 100被接通或进行功率循环时,处理器单元110可执行冷启动序列以初始化其各种硬件及/或软件组件。执行启动序列的软件/固件可包括多个单独编译的例行程序,其中每一例行程序执行启动序列中的一不同功能性。所述启动序列中的初始例行程序可为初级启动加载程序(PBL),所述PBL设立IPD 100以从非易失性外部存储器装置130存取及/或下载代码。设立IPD 100可包括识别所连接的非易失性存储器的类型、从此存储器读取配置数据、处理所述数据并识别系统的存储器配置、按需要配置所述系统中的存储器装置及将所述代码从非易失性存储器复制到主存储器。PBL可驻存在用于MSMTM芯片组系列中的各种芯片组的芯片上启动ROM中。当从复位释放处理器单元110时,可对所述PBL求向量。当在冷启动期间由处理器单元110执行时,PBL可初始化IPD 100的硬件、初始化处理器单元110内的内部RAM或外部RAM、检测非易失性外部存储器装置130、加载并处理来自非易失性外部存储器的配置数据、加载随后的启动例行程序。
在一个实施例中,PBL 100可使用非易失性外部存储器装置130中的配置信息来配置存储器接口,所述非易失性外部存储器装置130包括NAND快闪存储器132、OneNAND快闪存储器134及/或NOR快闪存储器(未图示)。存储器控制器120可能能够支持与多种存储器装置(包括NAND装置及OneNAND装置)的不同接口数据。
为寻址外部存储器装置130中的任何数据,存储器控制器120应识别外部存储器装置的类型及如何对其进行存取。IPD 100可找到所使用的非易失性存储器装置的类型及其用以存取装置中的数据的协议,以及装置的接口总线宽度。举例来说,如果外部非易失性存储器是NOR快闪存储器,则IPD 100应知道所述NOR快闪存储器的大小(以检测存取所述NOR快闪存储器所需的地址位的数目)、接口数据总线宽度及如何存取所述装置中的数据。就NAND、oneNAND、m系统及超AND快闪装置而言,IPD 100应知道页/扇区大小、块大小、接口数据宽度及用以存取数据的协议。页/扇区大小及块大小指示装置的大小。这可通过检测外部存储器装置130的页大小及总线宽度来实现。一旦进行了此操作,便可适当地配置存储器控制器120,因此使得处理器110能够寻址外部存储器装置130的任何页。本发明的各种实施例可执行对基于页/扇区的快闪装置的页/扇区大小检测,使得IPD可适当地配置存储器控制器120以存取所连接的快闪装置130。可以与所连接的快闪大小(例如,页大小、块大小及接口宽度)无关的方式来执行此操作。
对于页大小小于或等于512个字节及大于512个字节的NAND及超AND装置而言,存取协议可能不同。为存取NAND快闪装置,IPD 100应知道装置页大小是否大于512个字节,使得其可使用正确的协议来存取所述装置。如果IPD 100仅需要支持大于512个字节的NAND/超AND快闪装置页大小,则可跳过此步骤。类似地,可执行检测接口数据总线宽度(8位/16位或更大),使得IPD 100可正确地存取数据。如果IPD 100仅需要支持固定接口宽度的快闪装置,则也可跳过此步骤。在2005年9月20申请的第11/231,389号美国专利申请案中描述了一种用于确定NAND快闪装置大小是否大于512个字节及检测接口数据总线宽度的示范性方法,所述专利申请案被公开为第2007/0067529号美国专利公开案,其全文以引用的方式并入本文中。下文简要描述了其细节。
硬件页大小检测
本发明的各种实施例可包括用于基于硬件方法来估计外部存储器130的页大小的过程。此方法可能能够确定页大小是较小的页大小(512个字节或更小)还是大于或等于较大的页大小(高于512个字节)。可由存储器控制器120来执行硬件页大小检测,所述存储器控制器120可首先对外部存储器130执行读取初始化命令(所述命令的细节在随后的段落中描述)。存储器控制器120可接着等待特定时间周期(通常大约为几百毫微秒)。接着,存储器控制器120可通过检查繁忙(BSY)信号来确定存储器装置130是否正在执行读取命令。如果存储器装置130繁忙,则所述存储器装置具有较小的页大小。另一方面,如果装置不繁忙,则所述存储器装置具有较大的页大小。之所以发生此行为,是因为具有较小页装置的存储器装置可用单个命令或操作码(读取初始化命令)来对读取命令做出反应,而大页大小装置需要两个用于读取操作的读取命令(读取初始化命令及读取开始命令)。大页装置等待读取开始命令且直到发出读取开始命令其才将移到繁忙状态。存储器控制器120可检测此差异且识别所连接的NAND/超AND快闪装置是否为较大页大小。
下文在NAND型存储器装置的上下文中呈现硬件页大小检测的一实例。当外部存储器装置130是NAND型快闪存储器132时,较小的页大小可为512个字节或更小,且较大的页大小可大于512个字节(例如,2千字节或更大)。
具有512字节页装置的NAND存储器可使用以下读取命令序列:
·读取初始化命令(1循环命令);及
·数据/页地址命令(3或4或5或更多循环)(如果发出的地址循环比装置所要求的地址循环多,则所述装置将接受开始时所要求的地址并忽略最后地址循环)。
在发出地址循环之后的特定时间但不迟于几微秒内,装置将通过断言BSY信号而移到BUSY状态以指示其正在执行读取命令。如果装置用BSY信号来做出响应,则其为较小页(512个字节或更小)装置。
具有大于512个字节(例如,2千字节的页大小或更大)的NAND存储器在地址循环之后将不移到BUSY状态。这些装置需要第二读取开始命令或操作码以移到BUSY状态。并且用于这些装置的读取命令序列为:
·读取初始化命令(1循环命令);
·数据/页地址命令(3或4或5或更多循环)(如果发出更多地址循环,则NAND装置可接受从开始时所要求的地址并忽略最后的地址循环);及
·读取开始命令(1循环命令)。
在发出读取开始命令之后的特定时间但不迟于几微秒内,装置将通过断言BSY信号而移到BUSY状态以指示其正在执行读取命令。
存储器控制器120可使用以上机制来检测NAND/超AND装置页大小。控制器可在状态机内执行一过程,所述状态机执行以下动作:1)复位所述装置;2)发出读取命令;3)发出地址循环;4)等待某时间但不迟于几微秒;及5)检查以确定装置是否移到了繁忙状态,且如果移到了繁忙状态,则所述装置具有512个字节或更小的页大小;6)如果未移到繁忙状态,则发出读取开始命令;7)等待某时间但不迟于几微秒;及8)检查以确定装置是否移到了繁忙状态,且如果移到了繁忙状态,则所述装置具有大于512个字节(例如,2千字节或更大)的页大小。
在检测装置页大小之后,存储器控制器120可同时或在其后以8位模式来执行读取数据传递(即使所连接的装置是16位或更大,所述控制器仍仅使用来自装置的较低8位数据)。可使用从快闪装置读取的数据来检测总线大小及快闪的任何其它参数。将在下文更详细地解释总线宽度检测。如上文所提及,第一页中的数据是以独特数字格式(例如,幻数)来存储的以减小随机错误的可能性。挑选幻数,使得即使在错误的情况下所得数字仍将并非另一幻数。IPD将检测所述随机错误,因为其知道所预期的幻数且如果第一页中的数据(使用页大小检测传递的数据)不正确,则PBL可从装置读取另一页(位于装置的一不同位置中的冗余页)。在不检测页大小的情况下,PBL无法进一步进行下去且可报告已发生错误状况。
硬件页大小检测方法可能在以下方面受到限制:其可能仅能够检测外部存储器装置130的页大小是小于(例如,512个字节或更小)还是大于或等于较大的页大小(例如,2千字节或更大)。本文中所呈现的实施例可利用可结合基于硬件的方法而使用的软件页大小检测技术以克服此限制。
总线宽度检测
图2A是驻存在存储器装置内的示范性数据结构的图式,所述数据结构可用以确定总线宽度。因为不同类型的外部存储器装置利用不同数据字大小,所以应由PBL在启动序列期间确定总线宽度。可使用在数据结构中存储在存储器装置130上的配置数据来确定总线宽度。可通过在使用给定总线宽度来读取代码字之后检查所述代码字而执行此确定。当使用较窄总线宽度来读取时,可未经更改地返回第一代码字。然而,当使用较宽的总线宽度时,所述代码字可改变(例如,如下文在图2B的描述中所示,第一代码字可与第二代码字交错)。通过检查读取命令产生什么数字,可确定存储器装置130的总线宽度。
进一步参看图2A,配置数据可包括一个或一个以上代码字210、220。可将所述代码字写入外部存储器装置130的第一块内的第一页200的最初八个字节中。将代码字210称作8位幻数,且将220称作配置幻数。所述页的剩余部分可含有所有一(0xFF)。因为错误校正编码(ECC)在此过程期间可能不被启用,所以所述代码字可为经特殊选择的数字以便使读取错误最小化。可使用的一种类别的数字是使用最小加权算法产生的数字。可将这些数字称为“幻数”,且其可减少相关读取错误。也可使用其它具有避免读取错误的能力的数字。
在本发明的一实施例(其中外部存储器装置130包括NAND及/或OneNAND装置)中,呈现以下实例。当前仅可获得16个位的OneNAND快闪装置,当与oneNAND装置介接时,存储器控制器120可默认被设置为16个位。如果需要,可应用此实施例中描述的技术来检测oneNAND装置的页大小。然而,存储器控制器可在初始化期间被设置为8个位。为检测快闪装置的总线宽度是8个位还是16个位或甚至更大,将也被称作幻数的8个字节的独特数字置于含有配置数据的页的开端。最初4字节数据结构210(8位幻数)可保持幻数0x83838383,接下来的4字节数据结构220(配置幻数)可保持幻数0x73D71034,而所述页的剩余部分可保持数据0XFF,如图2A中所示。在硬件页大小检测方法(如上文所解释)期间,软件可请求存储器控制器120从配置数据的块0的页0读取4个字节的数据。当读取4个字节的数据时,ECC引擎被停用。选择幻数(使用最小加权算法)而使得当读取数据时,错误不具有相关性。
图2B是展示如何从具有8位总线宽度及16位总线宽度的存储器装置读取数据结构200中的数据的图式。因为对于不同总线宽度的装置而言,所读取的4个字节的数据将不同,所以可使用执行读取操作之后所接收的数据来确定存储器装置130的总线宽度。当装置使用8位总线宽度来读取最初4个字节时,第一代码字可经读取而未被更改。然而,当装置具有16位总线宽度时,读取命令将返回一值,所述值使第一代码字与第二代码字的最低有效位交错。
更具体来说,就8位快闪装置而言,应返回原始8位幻数值0x83838383。就16位快闪装置而言,快闪存储器应在读取操作期间返回16个位的数据。在16位装置中发生此交错,因为存储器控制器130仍被配置为具有8位宽的总线,因此其将仅读取8个最低有效位且忽视8个最高有效位。因此,控制器将读取交错值0xD7348383。基于所返回的数据,IPD检测总线接口宽度。尽管仅针对8位及16位来描述此实施例中给出的实例,但可将相同技术应用于具有更高位宽度的接口。
软件页大小检测
图3是存储器装置130内的示范性数据结构300的图式,所述数据结构300可用以确定存储器装置130的总线宽度及页大小两者。为执行自动页大小检测算法,存储器装置130可具有所添加的用于确定存储器装置130的页大小的若干区段的“虚数据”。每一区段305可包括三个代码字310到330,其中所述区段的剩余部分含有虚数据。此虚数据可为全部为“1”的数据或加载有在制造之后伴随快闪装置一起而来的预设数据。唯一的条件是存储在三个幻数(8位幻数、配置幻数、自动检测幻数)之后的数据应为已知值,以便可对数据进行错误校正。如上文所描述,可使用代码字310及320来确定总线宽度。第三代码字可为自动检测标记,可由算法使用所述自动检测标记来确定存储器装置130的页大小。尽管图3将代码字的示范性大小指示为4个字节,但当然可使用其它大小。在各种实施例中,所述代码字中的每一者可为幻数以便使读取错误最小化。下文将在图5的描述中呈现所述算法的细节。
PBL 100可能遇到的页大小的范围将为已知的,因为其将表示可支持的最大(MAX)及最小(MIN)可允许页大小,其可被预定义。在一些情况下,MAX及MIN页大小在制造IPD时被固定,且在一些其它情况下,这些数字可在制造IPD之后编程,但在将其发送给客户之前被固定。每一区段305的大小可等于MIN页大小。所支持的MAX及MIN页大小将确定需要添加的区段的数目。由以下比率来表达区段的数目:
区段数目=(MAX页大小/MIN页大小)
在本发明的一实施例中,可用幻数来标记每一区段305的最初12个字节,如图3中所示。类似于上文所描述的总线宽度检测方法,每一区段305的最初8个字节可保持8位幻数310及配置幻数320。可将一幻数的另外4个字节(自动检测幻数)放置在最初8个字节后面。软件页大小检测方法将检查所述自动检测幻数以使用下文所解释的算法导出页大小。
图4是展示如何将图3中所示的示范性数据结构包含在具有不同页大小的存储器装置内的图式。随着存储器装置130的页大小改变,可存储在每一页中的区段的数目也将改变。可使用以下等式通过所附接的装置的页大小来确定配合所有区段可能需要的页的数目:
下文针对不同页大小呈现多个实例。图4中图示表示每一实例,其展示了与三种不同页大小(512千字节(410)、2千字节(420)及4千字节(430))相关联的数据结构。数字实例如下。
假设MAX页大小=4千字节且MIN页大小=512个字节,则区段数目将为8。此暗示用以配合所有8个区段的页的数目将为:
-对于512字节页大小的装置而言为8页(因为装置的页大小是512个字节,所以需要8个页来配合8个区段、512个字节的数据);
-对于2千字节页大小的装置而言为2页(因为装置的页大小是2千字节,所以需要2个页来配合8个区段、512个字节的数据(每页4个512字节));及
-对于4千字节页大小的存储器装置而言为1页(8个区段、512个字节的数据将配合在4千字节页装置的单页中)。
如下文将在图5的描述中解释,可直接由处理器单元110通过为自动检测标记计数来确定页大小的数目(示范说明为图4中所示的“自动检测幻数”)。
图5是描绘用于确定快闪存储器装置的页大小的示范性过程500的流程图。所述过程将通过确定所支持的存储器装置130的页大小的范围(亦即,确定MIN值及MAX值)而开始。MIN值及MAX值可为预设值。可接着通过获得MAX页大小值与MIN页大小值的比率来确定所标记的区段的数目(方框510)。可接着由存储器控制器120执行硬件页大小检测以确定存储器装置130是否具有大于512字节的页大小(方框520)。可接着由处理器单元110来检测存储器装置130的总线宽度(方框530)。处理器单元110可接着检测具有自动检测标记的页的数目(方框540)。处理器单元110将执行读取操作序列以检测具有自动检测标记的页的数目(方框540)。处理器单元110可接着基于所读取的具有自动检测标记的页的数目来计算存储器装置130的页大小(方框550)。注意,当IPD100正在存取NAND快闪装置时,其可使用硬件页大小检测来检测所连接的装置的页大小是否大于512个字节,并使用此信息以向装置发出读取命令。
因为可将存储器装置130中的数据存储在页中,所以从存储器控制器120到存储器装置130的存取可导致存取整个页。因此,与存储器装置130相关联的写入或读取将为页定向的。因为具有较大页大小的存储器装置130能够存储较多数目的区段305,所以从存储器装置130读取数据的存储器控制器120将读取含有幻数的较少页。如果用正确的自动检测标记(例如,幻数)来标记存储器装置130中的最初两页,则处理器单元110可使用下文所示的公式(512*8/2=2K)来断定所附接的装置具有2千字节页大小。如果自动检测标记仅存在于第一页而不存在于第二页中,则可再次基于下文所示的公式(512*8/1=4K)来断定所附接的装置大于4千字节页大小。
可使用下文的公式来找到装置的页大小:
一旦确定了存储器装置的页大小及总线宽度,现在便可将存储器控制器120配置成正确设定。
图6是描绘用于确定与存储器装置相关联的参数的另一示范性过程600的流程图。首先,可获得MAX页大小及MIN页大小,因为这些页大小通常是预定义的值(方框615)。可计算用自动页检测标记来标记的区段的数目(方框620)。如果需要,则可接着执行硬件页大小检测以确定页大小是否大于512个字节(方框625)。如果不需要,则可跳过此步骤。
方框630可执行以下动作:将用幻数标记的最大页设置成所标记的MAX页;将幻数的字节位置设置成8;及设置指针位置以存储来自装置的数据。接下来,可调用一用以检测用幻数标记的页的数目的函数调用(下文在图7中及在相关联的描述中呈现其细节)(方框635)。所述函数调用可返回所读取的具有自动检测幻数的页的数目。可接着执行一条件以检查由函数调用返回的页的数目是否为零(方框640)。如果为零,则将从其读取配置数据的页的数目设置成0(方框645),且所述过程返回。如果所标记的页的数目在方框640中不是零,则计算装置页大小(方框650)且所述过程接着返回。
图7是描绘用于为自动检测标记的数目计数的示范性过程的流程图。首先,可获得以下参数:用幻数标记的MAX页;幻数的字节位置(将“x”设置成此值(作为一实例,所述位置被展示为8));及用以存储可从装置读取的数据的指针位置(方框715)。可接着将所读取的页的数目初始化为0(方框720)。可执行一条件以确定所读取的页的数目是否小于或等于用幻数标记的最大页(方框725)。如果如此,则可读取所述页(方框730),且可接着执行另一条件以检查所读取的页的字节“x”是否用代码字标记(方框735)。如果如此,则使页计数器递增(方框755),且所述过程返回到方框725。如果未达到方框735中的条件,则可执行另一条件检查以确定所读取的页的数目是否小于或等于用幻数标记的页的最大数目(方框740)。如果方框740中执行的条件成立,则过程700返回所读取的页的数目(方框750);且如果方框740中的条件不成立,则调用一错误控制处理程序(方框745)。又,如果方框725中执行的条件不成立,则调用所述错误处理程序(方框745)。
存储器控制器120可在于方框735中检查幻数的字节x之前在方框730中对读取的数据执行错误校正。存储器控制器120可在错误校正检查期间检查数据完整性。此错误校正检查的结果可包括以下情形。控制器可检测从装置读取的数据是完整的且未检测到错误。在此情况下,处理将相应地继续进行。或者,控制器120可检测到错误,其中所检测的错误的数目小于可校正错误的最大数目(基于所使用的ECC算法)。在此情况下,控制器120可校正错误且接着相应地继续进行。或者,控制器120可检测到无法校正的错误。在此情况下,控制器120可将处理控制返回到错误处理程序。错误校正将为存储在装置中的幻数提供额外保护以防随机错误。
本发明的各种实施例可启用ECC操作,以便可由幻数以及常规ECC算法来保护页检测过程的完整性。此方法组合可提供一种用以确定快闪装置的页大小的更稳固的方式。
图8是展示具有一区段的虚数据的另一示范性数据结构800的图式。基于系统要求,可将配置数据存储在紧接具有自动检测幻数的最后页的页中,或可将多个页的虚数据添加在具有自动检测幻数的最后页与配置数据之间(如图8中所示)。也可针对IPD预定义具有虚数据的页的数目,使得在检测装置页大小之后,IPD可跳过虚数据页并读取配置数据。在图8中,IPD仅检测到最初2页(页0及页1)具有自动检测幻数。如上文所给出的实例,基于以上公式,如果MIN页大小=512个字节,则具有自动检测幻数的区段的数目=8,装置页大小=2千字节(512*8/2)。其还具有2页虚数据,且因此IPD将跳到页数4以读取二级启动代码。有可能IPD未将虚数据页插入到具有自动检测幻数的最后页后面,且在此情况下,如图8中所示,IPD将开始从页2读取二级代码。
所属领域的技术人员将了解,可使用多种不同技艺及技术中的任一者来表示信息及信号。举例来说,可通过电压、电流、电磁波、磁场或粒子、光场或粒子或其任何组合来表示可贯穿以上描述而引用的数据、指令、命令、信息、信号、位、符号及码片。
此外,所属领域的技术人员将了解,可将结合本文中所揭示的实施例描述的各种说明性逻辑块、模块、电路及算法步骤实施为电子硬件、计算机软件或两者的组合。为清楚地说明硬件与软件的此互换性,各种说明性组件、块、模块、电路及步骤大体已在上文就其功能性而描述。将此功能性实施为硬件还是软件取决于特定应用及强加于整个系统的设计约束。熟练技工可针对每一特定应用而以不同方式来实施所描述的功能性,但所述实施决策不应解释为导致脱离本发明的范围。
可直接以硬件、以由处理器执行的软件模块或以所述两者的组合来体现结合本文中所揭示的实施例来描述的方法、序列及/或算法。软件模块可驻存在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器或此项技术中已知的任何其它形式的存储媒体中。将示范性存储媒体耦合到处理器,使得所述处理器可从所述存储媒体读取信息及将信息写入到所述存储媒体。在替代方案中,所述存储媒体可与所述处理器成一体。
因此,本发明的一实施例可包括体现一种用于存储器页大小自动检测的方法的计算机可读媒体。因此,本发明并不限于所说明的实例且用于执行本文中所描述的功能性的任何装置均包括在本发明的实施例中。
尽管上述揭示内容展示了本发明的说明性实施例,但应注意,可在不脱离如随附权利要求书界定的本发明的范围的情况下在本文中做出各种改变及修改。无需以任何特定次序来执行根据本文中所描述的本发明的实施例的方法技术方案的功能、步骤及/或动作。此外,尽管可以单数来描述或主张本发明的元件,但除非明确声明限于单数,否则涵盖复数。
Claims (18)
1.一种用于自动确定存储器装置的页大小的方法,其包含:
接收所述存储器装置的页大小范围;
确定所述存储器装置的总线宽度;
检测具有自动检测标记的页的数目;以及
基于所述所检测的具有所述自动检测标记的页的数目及所述所接收的页大小范围来确定所述存储器装置的所述页大小,其中所述页大小范围包括所述存储器装置的最大可能页大小及最小可能页大小,且所述方法进一步包含:
通过计算所述最大可能页大小与所述最小可能页大小的比率来确定所标记的区段的数目;以及
通过以下方式来计算所述存储器装置的所述页大小:确定所标记的区段的所述数目与所述最小可能页大小的乘积,以及将所述乘积除以具有所述自动检测标记的页的所述数目。
2.根据权利要求1所述的方法,其中所述确定所述总线宽度进一步包含:
在所述存储器装置中,邻近地提供第一四字节字及第二四字节字;
当以八位模式来配置存储器控制器时,从所述存储器装置读取第一四字节;以及
确定所述所读取的字节是否对应于所述第一四字节字与所述第二四字节字的交错,其中所述交错对应于具有16位总线宽度的所述存储器装置。
3.根据权利要求2所述的方法,其中所述第一四字节字对应于第一幻数,且所述第二四字节字对应于第二幻数。
4.根据权利要求1所述的方法,其中所述检测所述页数目进一步包含:
从所述存储器装置循序读取一系列页;以及
对含有所述自动检测标记的页的所述数目进行计数。
5.根据权利要求4所述的方法,其进一步包含:
从所述存储器装置读取一页数据;以及
测试所述数据是否含有所述自动检测标记。
6.根据权利要求5所述的方法,其中当确定所述数据含有所述自动检测标记时,所述方法进一步包含:
使对应于所读取的页的所述数目的计数器递增;以及
重复所述读取所述页及所述测试直到所述数据未能含有所述自动检测标记为止。
7.根据权利要求6所述的方法,其中当确定所述数据不含有所述自动检测标记时,所述方法进一步包含:
确定所述计数器是否超过用所述自动检测标记来标记的页的最大数目,且如果如此,则发信号通知错误状况。
8.根据权利要求1所述的方法,其中所述自动检测标记是幻数。
9.根据权利要求1所述的方法,其进一步包含:
在硬件中确定所述存储器装置是利用较小页大小还是较大页大小。
10.根据权利要求1所述的方法,其进一步包含:
执行读取初始化命令;以及
检查以确定所述存储器装置在预定时间周期之后是否繁忙。
11.根据权利要求1所述的方法,其进一步包含:
提供关于所述存储器装置的数据,所述数据被划分为所述数目的区段,每一区段含有至少一个代码字、所述自动检测标记及虚数据。
12.根据权利要求11所述的方法,其中所述至少一个代码字包括NAND8位代码字及配置数字。
13.根据权利要求12所述的方法,其中所述至少一个代码字及所述自动检测标记是幻数。
14.根据权利要求1所述的方法,其中所述存储器装置包括NAND快闪存储器、m系统快闪存储器或OneNAND快闪存储器。
15.一种用于自动确定存储器装置的页大小的设备,其包含:
用于接收所述存储器装置的页大小范围的装置;
用于确定所述存储器装置的总线宽度的装置;
用于检测具有自动检测标记的页的数目的装置;以及
用于基于所述所检测的具有所述自动检测标记的页的数目及所述所接收的页大小范围来确定所述存储器装置的所述页大小的装置,其中所述页大小范围包括所述存储器装置的最大可能页大小及最小可能页大小,且所述设备进一步包含:
用于通过计算所述最大可能页大小与所述最小可能页大小的比率来确定所标记的区段的数目的装置;以及
用于通过以下方式来计算所述存储器装置的所述页大小的装置:确定所标记的区段的所述数目与所述最小可能页大小的乘积,且将所述乘积除以具有所述自动检测标记的页的所述数目。
16.根据权利要求15所述的设备,其中所述用于确定所述总线宽度的装置进一步包含:
用于在所述存储器装置中邻近地提供第一四字节字及第二四字节字的装置;
用于在存储器控制器以八位模式配置时从所述存储器装置读取第一四字节的装置;以及
用于确定所述所读取的字节是否对应于所述第一四字节字与所述第二四字节字的交错的装置,其中所述交错对应于具有16位总线宽度的所述存储器装置,其中
所述第一四字节字对应于第一幻数,且所述第二四字节字对应于第二幻数,且所述自动检测标记是幻数。
17.根据权利要求15所述的设备,其中所述用于检测所述页数目的装置进一步包含:
用于从所述存储器装置循序读取一系列页的装置;
用于对含有所述自动检测标记的页的所述数目进行计数的装置;
用于从所述存储器装置读取一页数据的装置;以及
用于测试所述数据是否含有所述自动检测标记的装置。
18.根据权利要求17所述的设备,其中当确定所述数据含有所述自动检测标记时,所述设备进一步包含:
用于使对应于所读取的页的所述数目的计数器递增的装置;以及
用于重复所述读取所述页及所述测试直到所述数据未能含有所述自动检测标记为止的装置,且
其中当确定所述数据不含有所述自动检测标记时,所述设备进一步包含:
用于确定所述计数器是否超过用所述自动检测标记来标记的页的最大数目且如果如此则发信号通知错误状况的装置。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US91790107P | 2007-05-14 | 2007-05-14 | |
US60/917,901 | 2007-05-14 | ||
US97654307P | 2007-10-01 | 2007-10-01 | |
US60/976,543 | 2007-10-01 | ||
US12/119,587 US7873779B2 (en) | 2007-05-14 | 2008-05-13 | Memory page size auto detection |
US12/119,587 | 2008-05-13 | ||
PCT/US2008/006256 WO2008143950A2 (en) | 2007-05-14 | 2008-05-14 | Memory page size auto detection |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101681301A CN101681301A (zh) | 2010-03-24 |
CN101681301B true CN101681301B (zh) | 2012-06-27 |
Family
ID=40028695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800158111A Expired - Fee Related CN101681301B (zh) | 2007-05-14 | 2008-05-14 | 存储器页大小自动检测 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7873779B2 (zh) |
EP (1) | EP2156300B1 (zh) |
JP (1) | JP5378360B2 (zh) |
KR (1) | KR101026633B1 (zh) |
CN (1) | CN101681301B (zh) |
TW (1) | TW200903252A (zh) |
WO (1) | WO2008143950A2 (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8370718B2 (en) * | 2009-04-08 | 2013-02-05 | Stmicroelectronics S.R.L. | Method for identifying a flash memory device and related hosting device |
US8112551B2 (en) * | 2009-05-07 | 2012-02-07 | Cypress Semiconductor Corporation | Addressing scheme to allow flexible mapping of functions in a programmable logic array |
US8281065B2 (en) | 2009-09-01 | 2012-10-02 | Apple Inc. | Systems and methods for determining the status of memory locations in a non-volatile memory |
US8375173B2 (en) * | 2009-10-09 | 2013-02-12 | Qualcomm Incorporated | Accessing a multi-channel memory system having non-uniform page sizes |
CN102402485B (zh) * | 2010-09-16 | 2014-05-28 | 安凯(广州)微电子技术有限公司 | Nandflash参数探测方法 |
US8417880B2 (en) | 2010-11-01 | 2013-04-09 | Hong Kong Applied Science and Technology Research Institute Company Limited | System for NAND flash parameter auto-detection |
TWI467579B (zh) * | 2011-01-14 | 2015-01-01 | Mstar Semiconductor Inc | 電子裝置及其記憶體控制方法以及相關電腦可讀取儲存媒體 |
KR20130096881A (ko) * | 2012-02-23 | 2013-09-02 | 삼성전자주식회사 | 플래시 메모리 장치 |
US9026887B2 (en) | 2012-03-15 | 2015-05-05 | Micron Technology, Inc. | Physical page, logical page, and codeword correspondence |
US8719519B2 (en) | 2012-03-30 | 2014-05-06 | Intel Corporation | Split-word memory |
US8856431B2 (en) * | 2012-08-02 | 2014-10-07 | Lsi Corporation | Mixed granularity higher-level redundancy for non-volatile memory |
US9519591B2 (en) | 2013-06-22 | 2016-12-13 | Microsoft Technology Licensing, Llc | Latch-free, log-structured storage for multiple access methods |
KR102065665B1 (ko) | 2013-10-17 | 2020-01-13 | 삼성전자 주식회사 | 더미 워드라인을 포함하는 불휘발성 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작방법 |
KR101482971B1 (ko) * | 2014-06-25 | 2015-01-16 | 주식회사 엔트리브 | 듀얼 에뮬레이터를 이용한 실시간 데이터 백업시스템 및 백업방법 |
KR102265052B1 (ko) | 2014-12-17 | 2021-06-15 | 삼성전자주식회사 | 적응적으로 인터리빙 깊이를 결정하는 인터리빙 방법 및 장치 |
TWI684915B (zh) | 2018-11-28 | 2020-02-11 | 智微科技股份有限公司 | 記憶體區塊大小判定方法 |
CN111273852A (zh) * | 2018-12-04 | 2020-06-12 | 智微科技股份有限公司 | 存储器区块大小判定方法 |
US11113007B2 (en) | 2019-05-13 | 2021-09-07 | Micron Technology, Inc. | Partial execution of a write command from a host system |
TWI779610B (zh) * | 2021-05-17 | 2022-10-01 | 瑞昱半導體股份有限公司 | 偵測快閃記憶體模組的方法及相關的系統晶片 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04346153A (ja) * | 1991-05-24 | 1992-12-02 | Canon Inc | メモリアクセスバス制御方法とその情報処理装置 |
JPH1145206A (ja) * | 1997-07-29 | 1999-02-16 | Casio Comput Co Ltd | 電子装置、メモリ起動方法及びメモリ起動プログラムを記録した記録媒体 |
US7657696B2 (en) * | 2005-02-25 | 2010-02-02 | Lsi Corporation | Method to detect NAND-flash parameters by hardware automatically |
US8171192B2 (en) * | 2005-09-20 | 2012-05-01 | Qualcomm Incorporated | Hardware-assisted device configuration detection |
-
2008
- 2008-05-13 US US12/119,587 patent/US7873779B2/en active Active
- 2008-05-14 TW TW097117730A patent/TW200903252A/zh unknown
- 2008-05-14 KR KR1020097026040A patent/KR101026633B1/ko not_active IP Right Cessation
- 2008-05-14 EP EP08767725.8A patent/EP2156300B1/en not_active Not-in-force
- 2008-05-14 WO PCT/US2008/006256 patent/WO2008143950A2/en active Application Filing
- 2008-05-14 JP JP2010508430A patent/JP5378360B2/ja not_active Expired - Fee Related
- 2008-05-14 CN CN2008800158111A patent/CN101681301B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7873779B2 (en) | 2011-01-18 |
WO2008143950A2 (en) | 2008-11-27 |
TW200903252A (en) | 2009-01-16 |
KR20100013323A (ko) | 2010-02-09 |
US20080288715A1 (en) | 2008-11-20 |
CN101681301A (zh) | 2010-03-24 |
KR101026633B1 (ko) | 2011-04-04 |
JP5378360B2 (ja) | 2013-12-25 |
EP2156300A2 (en) | 2010-02-24 |
EP2156300B1 (en) | 2018-06-13 |
JP2010527484A (ja) | 2010-08-12 |
WO2008143950A3 (en) | 2009-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101681301B (zh) | 存储器页大小自动检测 | |
US7873778B2 (en) | Apparatus for storing page data | |
US10901837B2 (en) | Error correction code (ECC) operations in memory | |
CN107506257B (zh) | 错误检查纠正解码方法与装置 | |
CN101361043B (zh) | 从mmc/sd设备引导主机设备的方法,可从mmc/sd设备引导的主机设备以及可以从其引导主机设备的mmc/sd设备方法 | |
US20070234143A1 (en) | Semiconductor memory devices and methods of testing for failed bits of semiconductor memory devices | |
EP2003569A9 (en) | Flash memory controller | |
EP1959345A1 (en) | Bios file switching method and controller device thereof | |
US20140095956A1 (en) | Endurance aware error-correcting code (ecc) protection for non-volatile memories | |
US8867289B2 (en) | Chip with embedded non-volatile memory and testing method therefor | |
EP2960777B1 (en) | Data protection method, apparatus and device | |
GB2526647A (en) | Decoding base instructions that are modified by a postfix instruction | |
CN109783297A (zh) | 一种固态硬盘使用温宽提升方法与固态硬盘 | |
CN105446856A (zh) | 电子设备接口的检测方法、装置 | |
CN111857882B (zh) | 可扩展的ssd开卡固件加载方法、装置、计算机设备及存储介质 | |
CN102096610A (zh) | 利用纠错码和同步信息的数据行存储及传输 | |
CN115858396B (zh) | 用于芯片验证的方法及装置、电子设备、存储介质 | |
US10416908B2 (en) | Memory system and method for detecting error section and reprocessing tasks | |
EP1814037A1 (en) | Semiconductor storage device | |
JPH06303222A (ja) | デジタルデータ伝送方法 | |
CN109710445B (zh) | 内存校正方法和电子设备 | |
CN111858135B (zh) | 数据存储、校验方法、装置、终端设备及存储介质 | |
CN109828794B (zh) | 固态储存装置及其相关程序的载入方法 | |
US20230206972A1 (en) | Circuit and method for setting synchronous dynamic random access memory | |
US20070050534A1 (en) | A method for supporting unrecognizable flash memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120627 Termination date: 20210514 |