非易失性存储器系统及用于非易失性存储器系统的数据读/写方法

文档序号:6455540阅读:256来源:国知局
专利名称:非易失性存储器系统及用于非易失性存储器系统的数据读/写方法
技术领域
本发明涉及一种非易失性存储器系统及非易失性存储器系统的 数据读/写方法,该存储器系统包括非易失性存储器和可操作来执行该 存储器的读/写控制的存储器控制器。
背景技术
已知与非(NAND)型闪速存储器作为电可擦可编程非易失性半 导体存储器(EEPROM)的 一种。与或非(NOR)型相比,与非(NAND ) 型闪速存储器的单位单元面积更小,且易于实现大容量存储。尽管可 以扩大对于在单元阵列和页緩冲器之间同时地执行读/写是有效的单 元范围(物理页长度,以基本实现快速的读/写,但是与或非(NOR) 型相比,每单元读/写速度较慢。
随着这种性能的有效使用,在多种记录介质中,包括文件存储器 和存储卡中,已采用与非(NAND)型闪速存储器。
在存储卡等中,非易失性存储器和存储器控制器被封装在一起, 以根据从主机馈送的命令和逻辑地址,执行非易失性存储器的读/写控 制。例如,(JP2006/155335A)提出了 ,从主机馈送逻辑地址和扇区 计数(sector count),以从多个扇区读取数据。

发明内容
在一个方面,本发明提供一种可连接到主机设备的非易失性存储 器系统。该系统包括具有多个数据区的非易失性存储器;以及可操 作来控制对非易失性存储器的读取和写入的存储器控制器。该存储器 控制器根据从主机设备馈送的命令、扇区计数和扇区地址,对非易失
6性存储器中的所选数据区内的多个扇区连续地执行读/写。
在一个方面,本发明提供一种用于可连接到主机设备的非易失性 存储器系统的数据读/写方法。该系统包括具有多个数据区的非易失性 存储器和可操作来控制对非易失性存储器的读和写操作的存储器控
制器。该方法包括提供来自主机设备的命令、扇区计数和扇区地址; 以及在存储器控制器的控制下,根据命令、扇区计数和扇区地址,对 非易失性存储器中的所选数据区内的多个扇区连续地执行读/写。


图l是说明根据本发明实施例的LBA-NAND存储器系统结构的视图。
图2是说明LBA-NAND存储器的功能块的视图。
图3是说明LBA-NAND存储器中的存储器单元阵列结构的视图。
图4是说明LBA-NAND存储器的管脚布置的视图。 图5是说明LBA-NAND存储器的管脚名称与功能的视图。 图6是说明LBA-NAND存储器中记录的系统数据的视图。 图7是说明LBA-NAND存储器的操作模式以及命令的视图。 图8是说明LBA-NAND存储器的操作模式当中的切换的例子的视图。
图9是说明LBA-NAND存储器的操作模式当中的切换的另一例 子的视图。
图IO是说明LBA-NAND存储器中的数据结构的视图。
图IIA是说明用于LBA-NAND存储器的命令结构的视图(部分
1) 。
图IIB是说明用于LBA-NAND存储器的命令结构的视图(部分
2) 。
图IIC是说明用于LBA-NAND存储器的命令结构的视图(部分
3) 。图11D是说明用于LBA-NAND存储器的命令结构的视图(部分4)。
图IIE是说明用于LBA-NAND存储器的命令结构的视图(部分 图IIF是说明用于LBA-NAND存储器的命令结构的视图(部分
6) 。
图IIG是说明用于LBA-NAND存储器的命令结构的视图(部分
7) 。
图IIH是说明用于LBA-NAND存储器的命令结构的视图(部分
8) 。
图111是说明用于LBA-NAND存储器的命令结构的视图(部分
9) 。
图IIJ是说明用于LBA-NAND存储器的命令结构的视图(部分
10) 。
图12是用于LBA-NAND存储器的命令列表。
图13是说明对LBA-NAND存储器的各种信号的锁存时序的图。
图14是说明以同样方式的命令输入周期(cycle)时序图。
图15是说明以同样方式的用于节能模式的命令输入周期时序的图。
图16是说明以同样方式的在数据读取之后的命令输入时序的图。
图17是说明以同样方式的地址输入周期时序的图。 图18是说明以同样方式的用于峰值电流减小模式的地址输入周 期时序的图。
图19是说明以同样方式的数据输入时序的图。 图20是说明以同样方式的串行读取时序的图。 图21是说明以同样方式的状态读取时序的图。 图22是以同样方式的读取周期时序的图。
图23是说明以同样方式的串行-EEP模式建立(set-up)时序的图。
图24是说明使用公共管脚从PNR模式和串行-EEP模式中选择 的例子视图。
图25是具有错误检查的PNR模式中的时序图(1-1)。 图26是具有错误检查的PNR模式中的时序图(1-2)。 图27是具有错误检查的PNR模式中的时序图(1-3)。 图28是具有错误检查的PNR模式中的时序图(1-4)。 图29是具有错误检查的PNR模式中的时序图(1-5)。 图30是PNR模式的流程图。
图31是缺省类型的MDA模式中的读访问的时序图(在l个扇 区的情况下)。
图32是缺省类型的MDA模式中的读访问的时序图(在256个
扇区的情况下)。
图33是缺省类型的MDA模式中的读访问的时序图(在64K个
扇区的情况下)。
图34是在要使用终止命令中断的MDA模式中的读时序图。 图35是具有重传请求的MDA模式中的读时序图。 图36是在输入终止命令之后重起动新的序列时的时序图。 图37是可选读类型B ( 1)的MDA模式中的读访问的时序图。 图38是可选读类型B (2)的MDA模式中的读访问的时序图。 图39是可选读类型B (3)的MDA模式中的读访问的时序图。 图40是可选读类型B (4)的MDA模式中的读访问的时序图。 图41是可选读类型C (1)的MDA模式中的读访问的时序图。 图42是可选读类型C (2)的MDA模式中的读访问的时序图。 图43是可选读类型C (3)的MDA模式中的读访问的时序图。 图44是可选读类型C (4)的MDA模式中的读访问的时序图。 图45是当发生非法访问(情况l)时MDA模式中的读时序图。 图46是当发生非法访问(情况2)时MDA模式中的读时序图。 图47是MDA模式中的写访问的时序图(在l个扇区的情况下)。图48是MDA模式中的写访问的时序图(在256个扇区的情况下)。
图49是MDA模式中的写访问的时序图(在64K个扇区的情况下)。
图50是在要使用终止命令中断的MDA模式中的写访问的时序图。
图51是具有数据重传的MDA模式中的写访问的时序图。
图52是说明关于MDA模式写的写错误类型的视图。
图53是可选写类型的MDA模式写的时序图。
图54是当发生非法访问(情况l)时的MDA模式写的时序图。
图55是当发生非法访问(情况2)时的MDA模式写的时序图。
图56是缺省类型的PNA模式中的读访问的时序图。
图57是在要使用终止命令中断的PNA模式中的读访问的时序图。
图58是具有重读的PNA模式中的读访问的时序图。 图59是可选读类型B ( 1)的PNA模式中的读访问的时序图。 图60是可选读类型B (2)的PNA模式中的读访问的时序图。 图61是可选读类型B (3)的PNA模式中的读访问的时序图。 图62是可选读类型B (4)的PNA模式中的读访问的时序图。 图63是可选读类型C (1)的PNA模式中的读访问的时序图。 图64是可选读类型C (2)的PNA模式中的读访问的时序图。 图65是可选读类型C (3)的PNA模式中的读访问的时序图。 图66是PNA;f莫式中的读访问的时序图。
图67是在要使用终止命令中断的PNA模式中的写访问的时序图。
图68是关于与传送错误相关联的数据重传的PNA模式中的写访 问的时序图。
图69是可选写类型的PNA模式中的写访问的时序图。 图70是缺省写类型的VFA模式中的写访问的时序图。图71是在要使用终止命令中断的VFA模式中的读时序图。 图72是用于重读的VFA模式中的读访问的时序图。 图73是可选读类型B (1)的VFA模式中的读访问的时序图。 图74是可选读类型B (2)的VFA模式中的读访问的时序图。 图75是可选读类型B (3)的VFA模式中的读访问的时序图。 图76是可选读类型B (4)的VFA模式中的读访问的时序图。 图77是可选读类型C (1)的VFA模式中的读访问的时序图。 图78是可选读类型C (2)的VFA模式中的读访问的时序图。 图79是可选读类型C (3)的VFA模式中的读访问的时序图。 图80是VFA模式中的写访问的时序图(1个扇区)。 图81是VFA模式中的写访问的时序图(256个扇区)。 图82是在要使用终止命令中断的VFA模式中的写访问的时序图。
图83是具有错误恢复的VFA模式中的写访问的时序图。
图84是可选写类型的VFA模式中的写访问的时序图。
图85是包括错误处理的PNR模式中的流程视图。
图86是说明在读访问时包括错误处理的PNR、 VFA、 MDA模
式中的流程的视图。
图87是说明在写访问时包括错误处理的PNR、 VFA、 MDA模
式中的流程的视图。
图88是执行用于将特定模式改变到MDA模式的改变命令的时序图。
图89是执行用于将特定模式改变到PNA模式的改变命令的时序图。
图卯是执行用于将特定模式改变到VFA模式的改变命令的时序图。
图91是NOP命令的注册(registration)的时序图。
图92是另一 NOP命令的注册的时序图。
图93是与固件重加栽命令相关的操作的时序图。图94是繁忙/就绪改变命令的时序图。 图95是ID读命令的时序图。 图96是状态读命令的时序图。 图97是密码设置命令的时序图。 图98是VFA单元设置命令的时序图。 图99是固件更新执行命令的时序图。 图100是地址复位命令的时序图。 图101是固件重加载命令的时序图。 图102是读/写终止命令的时序图。 图103是固件更新发送命令的时序图。
图104是说明主机I/O和LBA-NAND存储器内部操作之间关系 的视图。
图105是说明固件更新中的错误处理流程的视图。
图106是数据刷新执行命令的时序图。
图107是MDA区擦除命令的时序图。
图108是闪存高速緩存(flash cache)执行命令的时序图。
图109是传送协议设置命令的时序图。
图IIO是最小繁忙时间设置命令的时序图。
图lll是节能模式设置命令的时序图。
图112是应用了节能模式设置命令的读时序图。
图113是应用了节能模式设置命令的命令锁存时序图。
图114是节能模式退出命令的时序图。
图115是地址信息获取命令的时序图。
图116是最大容量信息获取命令的时序图。
图117是管脚信息获取命令的时序图。
图118是与读重试命令相关的读时序图。
图119是伴随有状态信息读取的扇区读类型A的时序图。
图120是伴随有状态信息读取的扇区读类型B的时序图。
图121是伴随有状态信息读取的扇区读类型C的时序图。图122是伴随有状态信息读取的扇区写类型A的时序图。 图123是伴随有状态信息读取的扇区写类型B的时序图。 图124是用于说明PNR模式下的状态信息读取操作的图形。 图125是用于说明VFA/MDA模式下的状态信息读取操作的图形。
图126是用于说明启动(boc)t)代码维护模式下的状态信息读取 操作的图形。
图127是共同地示出了 LBA-NAND存储器的每种操作模式和波 -模(wave-mode)切才奐的图形。
具体实施例方式
现在将参考附图描述本发明的实施例。 [存储器系统概述
本实施例的非易失性存储器系统用存储模块来配置,该存储模块 包括一个或多个NAND型闪速存储器,以及可操作来执行存储器的读 /写控制的存储器控制器。所有安装的闪速存储器可以由单个存储器控 制器控制作为逻辑存储器,这在下面称为逻辑块地址(Logical Block Address) NAND闪速存储器(下面缩写为LBA-NAND存储器)。
LBA-NAND存储器具有可根据命令改变的多个数据区(逻辑块 访问区)。具体地,本实施例包括以下三个数据区,该三个数据区基 于数据的用途和可靠性来划分。
(1) 用于厂商(vender)应用的程序区"厂商应用程序固件区", 下面称为"VFA"区。
(2) 用于最终用户应用的程序区,"音乐数据区",下面称为 "MDA,,区。
(3) 用于记录主机系统的启动数据的系统数据记录区,除VFA 和MDA区外的"纯NAND区",下面称为"PNA"区。
PNA区被给予普通访问模式,用于根据输入命令和地址执行读/
13写操作(下面称为"PNA"模式),以及附加地在通电(power-on)时 设置的两种只读模式。
一种模式是通电之后用第一 PNA读模式命令的输入设置的读模 式。这在下面称为"PNR (纯NAND读取)"模式。
另一种模式是通电之后用第二 PNA读模式命令的输入设置的读 模式,用于与外部时钟同步地在SPI (串行外围接口 )模式中的串行 读取。下面该模式被称为"串行-EEP"模式。
对于读取对LBA-NAND存储器的读/写操作所需的系统数据和 从LBA-NAND存储器读取主机本身的启动数椐,这两种读模式是相 同的。因此,PNR模式可以被解释为在广义上包含这两种模式,而串 行-EEP模式可以被认为是PNR模式当中的特定模式。
在通电之后自动地执行的初始化操作(通电初始建立操作)中, 从闪速存储器自动地读出存储器控制器所需的系统数据(固件FW) 和启动数据,并传送到数据寄存器(緩冲器RAM)。例如,在存储 器控制器中制备的硬件序列发生器上,执行该读控制。
当通电之后流逝一定的时间主机输入命令时,建立PNR模式或 串行-EEP模式,以读出设置在LBA-NAND存储器的数据寄存器中的 系统数据。可以在数据被读到主机中的PNR区中之后(或与此并行 地),启动存储器控制器。
除了在通电时用于PNR区的读模式以外,还可以根据命令建立 用于对PNA、 MDA和VFA区的读和写访问的才莫式。下面,这些才莫 式被称为PNA访问模式、MDA访问模式和VFA访问模式。
在应用程序区中,或者VFA和MDA区中,读/写访问的数据传 送单元是扇区(512字节或528字节),数据传送格式是SSFDC (固 态软盘卡)格式。LBA-NAND存储器使用扇区倍数来选择使用访问 命令时可访问的扇区数目。例如,用户可以在l、 4和8的扇区倍数 当中来选择。
扇区计数(sector count)的使用允许每一个命令访问许多连续 的扇区。总而言之,与该命令一起,主机设备提供表示数据量的扇区计数和扇区地址(逻辑地址)初始值,以便可以从由此限定的多个扇 区连续地读取数据,或将数据连续地写入由此限定的多个扇区。
具体地,地址输入由5个字节构成,其中前半部分,2字节被分 配给扇区计数,而后半部分,3个字节被分配给扇区地址。该访问模 式允许使用地址条件ID命令识别扇区计数和扇区地址。地址输入的 字节数可扩展。
为了改变LBA-NAND存储器的模式,输入模式改变命令。总而 言之,利用特定的命令的输入,通电时的PNR模式或串行-EEP模式 被改变为MDA访问模式。此外,特定的改变命令的输入使得在PNR 模式、VFA访问模式和MDA访问模式当中改变。
在存储器控制器处产生内部芯片使能信号/CE。使用该信号控制 每个闪速存储器检查。
LBA-NAND存储器的擦除命令和复位命令是NOP。在发出该命 令时,该控制什么都不执行,并将就绪(Ready)返回到主机。《F8h、 (B2R)-[数据]...;或
(3 ) <00h>- ( SC:2字节)-(SA:3字节)-<30h>- ( B2R)-[数据画(B2R)-[数据]-(B2R)-[数据]..,写
(1) <80h>-(SC:2字节)國(SA:3字节)-<数据>-<10h>-( B2R)-" <80h>-(虛Add )-<数据>國<1011>- ( B2R)...;或
(2) <80h>-(SC:2字节)画(SA:3字节)-<数据>-<1511>画(B2R)4211>誦<数据>-<1011>- ( B2R )《F2h〉《数据〉《10h》(B2R )…
类似于MDA访问模式,执行PNA访问模式(图IIA中的命令3)。在写入的时候,利用4224字节的区域写入2112字节的写数据/命令。在写入的时候,所有数据被存储有ECC。
VFA访问模式也类似于MDA访问模式(图11A中的命令4)。模式改变命令码被制备分别用于从PNR模式到MDA访问模式的改变、从串行-EEP模式到MDA访问模式的改变、以及在MDA访问模式-PNA访问模式-VFA访问模式当中的改变(图11A中的命令5)。
固件(FW)重加载命令,"Command-911",图11A中的命令7,用于重读闪速存储器芯片中存储的控制器的FW。当存储器控制暴的操作变得无序时,需要緩沖器RAM的重新构建,且因此执行该命令。利用该命令,緩冲器RAM中的数据被备份,以及在执行系统启动之后,系统返回到MDA访问模式。最小繁忙时间是l秒。
IF读命令的执行使得能够读出分配给各个I/O端口的ID码,如图11B中的命令9所示。具体地,根据ID码,可以使用这些命令区别地读出用于二进制存储类型的4Gbit NAND闪速存储器(具有128K字节的擦除块大小和2K字节的页长)的仿真的ID数据以及用于实际的LBA-NAND存储器的ID数据。如图11C所示,利用状态读命令,状态信息可以被输出到主机。具体地,如图11C所示,可以使用这些命令选择诸如一般的通过/失败(Pass/Fail)、传送错误通过/失败、就绪/繁忙的信息,和对于LBA-NAND独特的特定的信息,例如节能模式、操作模式等等。除了就绪/繁忙端子以外,这些项状态信息被提供到输入/输出端口 I/O。
至于与I/Ol和1/02相关的通过/失败,前者当使用一个命令传送大量扇区时,以概要位(summary bit)表示命令的概要。相反,后者表示针对就在状态检查实施之前的数据传送的通过/失败的结果。两者都包括传送错误通过/失败。
使用定制命令(custom command)执4亍密码的i殳置和修改(图11D中的命令ll)。
VFA单元设置命令用于以256KB的单元将VFA区的容量大小设置直至32MB (图11D中的命令12)。输入值是256KB的整数倍(从"04h OOh"至"OOh OOh")。该命令用来擦除旧的VFA数据和MDA数据。
FW更新执行指令用来验证从主机更新到存储器控制器的緩冲器RAM的FW数据,并将它传送和写入NAND闪速存储器中(图11D中的命令13.1)。
地址复位命令用来清除扇区计数和扇区地址(图11D中的命令
13.2) 。在完成该命令之后,系统返回到PNR模式,并可以从地址00h起再次执行PNR模式。在PNR中该命令是有效的。
FW重加载命令被应用来从闪速存储器重读取FW,并且当来自主机的FW更新失败时使用该FW重加载命令(图11D中的命令
13.3) 。
终止命令用来强制终止读/写。 一旦该命令被输入,不再接收更多的新数据,并且緩沖器RAM中留下的所有数据被写入闪速存储器中(图11D中的命令14)。在写入完成之后,系统将"就绪"返回给主机。进行写入直到它通过。如果在写时间tPROG中不能完成写入,那么该控制转到错误终止。FW更新发送命令(图11D中的命令15)用来当在发货给用户之后发现由FW引起的缺陷(bug)时更新FW。在用户的设置过程中,制备FW重写命令,以在市场上提供允许执行容易的FW更新的环境。
在命令的操作序列中,在緩冲器RAM中更新数据,然后验证该数据。该数据被以512K字节的间隔给予附加的CRC16数据。存储器控制器执行数据比较,以及,在失败的情况下,存储器控制器将传送错误返回到主机。不执行SSFDC的数据校正。
数据刷新(refresh )命令(图11D中的命令16 )作为推荐的命令呈现给用户。在此情况下,清楚地表示出有害影响(如电源中断的可能性和功耗的问题)。
安全擦除命令(图11D中的命令17)是用来仅仅从闪速存储器擦除MDA区中的整个数据的命令。
清刷(flush )高速緩存(闪存-高速緩存)命令(图11D中的命令18 )是被推荐在断电之前从主机发出的命令。这使得系统能够终止控制器中的全部的未完成的处理,并将"就绪"返回到主机。
传送协议设置命令(图11E中的命令19)用来修改系统中使用的条件。在表中示出了可修改的条件。
第一字节用来设置ECC/CRC16检查/纠错的条件以及传送扇区大小(亦即,扇区倍数)。当用ECC检查使能(ECC Check Enable)检测错误位时,将传送结果通知给状态寄存器。利用在该阶段的数据的重新传送,可以写入无错误的正确数据。
图11E的表中的笫二字节用来设置可选的读/写风格。具体地,作为读风格,与普通读类型A相反,可以设置类型B,类型B借助于继续命令〈48h/F81^继续读操作。也可以在不使用继续命令的情况下,设置类型C,借助于繁忙状态信号(B2R)继续读取,以重复(B2R)-[数据]-(B2R)。
作为写风格,可以设置普通写类型A和继续写操作而不包括地址输入的类型B。
24最小繁忙时间设置命令(图11F中的命令20)用来设置主机可 检测的最小繁忙时间,如表中所示。存储器控制器将该繁忙时间设置 得长于最小繁忙时间。
节能模式设置和取消命令(图11F中的命令21和图IIG中的命 令22)用来设置和取消LBA-NAND模块的低功耗模式。
地址信息获取命令(图11F中的命令23)用来提供地址空间信 息,如表中所示。地址空间信息包括示出分别分配给扇区地址和扇区 计数的字节数目的信息。
MDA区容量获取命令(图11G中的命令24)用来标识每个产 品上的MDA区的分配大小。具体地,它4皮提供到输入/输出端口 ,作 为用5-字节逻辑地址表示的最大地址。例如,在4G字节的情况下, 形成5-字节数据,如表中所示。
管脚信息获取命令(图11H中的命令25 )用来表示通过 LBA-NAND模块检测的定制控制管脚的情况。具体地,COME、 COM0、 COM1的情况可以如表中所示。
还有其他命令,如通过模式(pass through mode)命令,用 于通过直接通知NAND闪速存储器21从主机i殳备对LBA-NAND存 储器20中的主机I/F25的访问来执行模式改变,而在控制器中不翻译 命令的含义(图11H中的命令26);固件更新命令,用于在存储器 控制器中的MPU上固件的更新(图11H中的命令27);以及读重试 命令,用于指示重读取(图11H中的命令28 )。
VFA单元获取命令(图111中的命令29)用来标识每个产品上 的VFA区的分配大小。
传送协议获取命令(图111中的命令30)用来标识LBA-NAND 存储器的数据传送协议,如表中所示。
最小繁忙时间获取命令(图11J中的命令31),允许主机识别 LBA-NAND存储器的操作情况,如表中所示。
图12概括地示出了上述命令。[基本时序图
下面具体描述不同操作模式中的命令、地址和数据的输入/输出时序。
图13是通常应用于命令、地址和数据输入的基本时序图。地址 锁存使能ALE、命令锁存使能CLE等被验证。然后,在等候一定的 建立(set-up)时间之后,使写使能/WE成为"L",以允许命令的信 号输入等。响应于/WE到"H"的转变,输入信号被锁存。
图14是命令输入的时序图。在使命令锁存CLE成为"H"之后, 使芯片使能/CE成为"L",地址锁存使能ALE被无效,以及使写使能 /WE成为"L",命令"CMD,,被允许与/WE到"H"的转变同步地输入。
图15是用于节能模式的命令输入的时序图,该图基本上与图14相同。
图16是数据读取之后的下一个命令输入的时序图。夹在命令 <0011>和<3011>之间的地址输入允许数据读取。然后,在一定的繁忙之 后,输入读使能/RE,以允许与其同步地将读数据DoutO-DoutN以扇 区为基义出输出。
此后,当命令锁存使能CLE再次成为"H,,和写使能/WE成为"L" 时,允许输入数据读取之后的下一个命令<0011>。
图17是地址输入的时序图。在地址锁存使能ALE成为"H,,之 后和在"H"的持续时间期间,与写使能/WE同步地输入2字节SC0、 SC1的扇区计数和3字节SA0、 SA1、 SA2的后续扇区地址。这允许 在由扇区计数和扇区地址(初始值)决定的逻辑地址范围内进行连续 的数据访问。
图18是节能模式中的地址输入的时序图,该图与图17基本上相 同。通过对命令锁存使能CLE的有效时段(period) tADDP以及写 使能/WE的"H"和"L,,电平的时段tWHP和tWPP的选择,可以设置 节能模式。
图19是数据输入的时序图。在命令和地址输入之后,可以与写 使能/WE同步地输入数据。图20是从单元阵列读出并串行地读到外部的数据的时序图。从 该单元阵列读出的数据可以以l-字节为基础与读使能/RE同步地串行 传送并输出。在该输出操作过程中,可以执行对NAND闪速存储器的 写操作,且由此LBA-NAND存储器输出"就绪"。
图21是状态数据(通过/失败、就绪/繁忙等)的读时序。与写使 能/WE同步地输入状态读命令"CMD"。然后,可以与读使能/RE同 步地读出状态"ST"。
图22示出了包含命令输入和地址输入的数据读周期的时序图。 如先前描述,夹在第一命令<0011>和第二命令<3011>之间,扇区计数 SC和扇区地址SA被输入,以执行对单元阵列的读操作。
然后,在一定的繁忙时间之后,利用读使能/RE的切换(toggle), 如图20所述地串行输出读数据。
图23示出了通电时的串行-EEP模式的建立时序。在通电时的初 始建立之后,以及当LBA-NAND存储器变为就绪时,识别定制控制 管脚上的信号电平以用于模式设置。
具体地,利用COME-"H", COM0—'H"和COMl-"L",设置 SPI模式(亦即,串行-EEP模式)。命令〈FCb的输入取消该模式。
图24概括地示出了用于PNR模式选择的条件。串行-EEP模式 用"具有SPI的PNR,,表示。可以仅仅利用COME="L,,,以及 COME="H"且 COMO=COM1="H,,, 或者 COME="H"且 COMO-COM1-"L"来设置普通PNR模式。替换地,可以在这些定制 控制管脚之一被开路及其他两个管脚处于适当的电平时,实现设置。
PNR模式读时序
图25-28是PNR模式的时序图,PNR模式是PNR区中在通电 时的读操作,图25-28示出了具有错误检查的情况。在图25-28当中, 图25示出了无错误数据传送。
如上所述,利用命令输入和虚地址输入,在一定的繁忙时间之后 开始读取。当该状态为通过("P")时,类似地重复相同的读操作,直至第256个扇区。
图26示出了用于其中获得了表示错误"E,,的状态的情况的一种 处理方法。在收到错误"E,,时,输入地址清除命令"FFh",以从第一 地址再次执行读取。
图27示出了类似地在获得表示错误"E"的状态时强制断电、重 新启动以及再次读取的例子。
图28示出了用于其中主机执行数据检查并检测到数据传送错误 的情况的处理方法。在此情况下,主机在收到错误检测时,输入地址 清除命令"FFh",以从第一地址再次执行读取。
图29示出了主机检测数据传送错误然后输入该数据的相同扇区 地址以再次读取相同数据的情况的例子。
图30示出了被概述为一系列流程的图25-28中描述的PNR模式 操作。该系统被起动(步骤S1),以及输入命令和地址(步骤S2), 以开始读取。
如果利用状态检查检测到错误(步骤S3),那么执行错误序列 (步骤S4)。在此情况下,输入地址清除命令"FFh",以清除该地址, 从而从头重新开始读操作。替换地,电源被关断,以从头重新开始读 操作。
如果在主机处利用传送数据检查检测到错误(步骤S6),那么 选择处理方法(步骤7),以执行错误序列(步骤S4)或重新发送在 相同的地址地数据(步骤S5 )。
如果在一个传送单元的数据传送中没有错误,那么确定是否读出 了所有数据(步骤S8)。如果没有,那么利用地址增加来重复相同的 读操作(步骤S9),直到所有数据被读出。
MDA访问模式…用于读取] 下面描述MD A访问模式中的多种访问时序。 图31是其中从MDA区读出一个扇区的情况的时序图。如上所 述,与命令一起,输入扇区计数M和扇区地址(开始地址LBA) N。然后,在一定的繁忙之后,可以与读使能/RE同步地读出数据。
图32是以同样的方式连续地从第一扇区(LBA-30h)到第256 个扇区(LBA=12Fh )进行读取的时序图。在每个扇区读取之后,输 入命令和地址,但是这是虚地址。根据最初输入的扇区地址(初始值) 和扇区计数连续地在内部增加实际地址。
图33是以同样的方式从第一扇区(LBA=30h)到第64K个扇区 (LBA=1002Fh)连续读取的时序图。
图34示出了在读序列中在主机的待机(就绪)期间使用终止命 令〈FBh〉中断的读操作。
图35是在多扇区读取过程中发生数据传送错误的情况的处理视 图。当主机检测到数据传送错误时,它发出重试命令<3111>,以请求 LBA-NAND重新传送。这使得能够重读相同的数据。
图36是以同样的方式发生数据传送错误的情况的另一处理视 图。在此情况下,主机检测到传送错误,并发出终止命令〈FBh〉。这 使得可以终止读操作一次,然后利用读命令和地址输入再次读出。
图37-40是可选读类型B的读取的时序图。
图37是在使用传送协议设置命令来设置可选读类型B的情况 下,亦即,在每个扇区数据读取之后输入继续命令〈F81^以继续读操 作时的时序图。如果输入继续命令时钟超过输出请求数目(扇区计 数),那么输出固定值〈FFI^。总之,LBA-NAND输出固定值并变为 待机以等待从主机发送的终止命令。
图38是类似地使用继续命令〈F8h〉来继续该读操作和使用终止 命令<1^11>来终止该继续了的读操作的情况的时序图。
图39是类似地使用继续命令〈F81^来继续该读操作以及使用重 试命令<3111>来重新传送与前一读取相同的扇区数据的情况的时序 图。
图40是类似地使用继续命令〈F8h〉来继续该读操作以及使用相 同的继续命令〈F8b来执行中断以跳过(skip)数据读操作的情况的 时序图。在该例子中, 一个扇区包括2112字节的数据D0-D2112。在第二扇区读取过程中,就在数据D0-D256被读出时输入继续命令 <F8h>,由此跳过该数据读操作。
接下来参考图41-44描述在MDA访问模式中使用可选读风格C 的读访问。
图41-44是继续读操作而不是以扇区为基础每个读操作定位命令 周期的情况的时序图。图41示出了仅仅利用读使能/RE连续地执行 数据读取,并且在/RE输入超过输出请求的数目时输出固定值〈FF1^ 的例子。LBA-NAND存储器输出固定值,并等待从主机发送的终止 命令。
图42是在与图41相同的读操作中应用终止命令〈FB1^来终止读
操作的情况的时序图。
图43是例如在与图41相同的读操作中,主机检测到数据传送错 误,然后发出数据传送重试命令<3111>,并重新发送相同数据的情况 的时序图。
图44是在与图41相同的读操作中,在应用终止命令〈FBb来终 止读操作一次并发出新命令以再次执行该读操作的情况的时序图。
图45和46是在读操作过程中发生非法访问时MDA访问模式中 的读取的时序图。VFA访问才莫式和PNA访问才莫式对于该非法访问具 有相同规定(provisions)。
图45涉及在执行读命令过程中输入新命令而不终止命令的情 况。在该例子中,在读取LBA-30h的扇区数据之后,输入新命令和 新地址。在此情况下,新地址被作为虚地址对待,并根据先前输入的 地址继续执行读取。
图46涉及在执行读命令过程中输入新的写命令而不终止命令的 情况。在该例子中,先前的读命令被自动地终止,以使该写命令有效。
在SM-4或8的扇区倍数的情况下,为了终止读取并在小于扇区 计数的级(stage)上变换到下一个,需要发出终止命令。
图85-87示出了上述读/写访问的命令视图概述。
图85涉及在通电时设置PNR模式的情况。在建立(setup ) PNR
冲莫式之后,输入命令"CMD"和地址"ADD",以及一定的繁忙时间流
逝后,检查状态"ST"。
对于状态错误提供两种处理方法。 一种是利用命令〈FFh〉返回到
初始PNR才莫式建立,以重试建立而不关闭电源(地址复位)的方法。
另一种是关闭电源然后再次从通电开始的方法。读数据经受传送检验。当检测到传送错误时,相同数据被再一次传送。
图86涉及PNA、 VFA、 MDA访问模式中的读访问。在使用初 始命令开始建立之后,输入命令和地址。然后,在一定的繁忙之后, 检查状态"ST"。
对于状态错误提供两种处理方法。 一种是利用命令〈FF1^返回到 初始建立,以重试建立(软复位)的方法。另一种是发出终止命令 〈FBh〉并转到初始命令的方法。
读数据经受传送检验。当检测到传送错误时,相同数椐被再一次传送。
图87涉及PNA、 VFA、 MDA访问模式中的写访问。在使用初 始命令开始建立之后,输入命令、地址和写数据。如果通过状态"ST,, 的检查,检测到数据传送错误,那么再次输入该写数据。
在写序列期间中可以发出终止命令〈FBh、以终止该写操作,并 从头开始重试它。
[其他命令序列

下面描述其他命令序列的具体时序图。图88-90示出了用于模式 改变的命令序列。
图88示出了用于改变到MDA访问模式的改变命令〈FCh〉的输 入时序。在一定的繁忙时段流逝后,模式被改变。这也可以用于(a) 从PNA访问模式或VFA访问模式到MDA访问模式的改变;以及(b) 退出PNR访问模式或串行-EEP模式。在U)的情况下,可以返回 到原始模式。但是,在(b)的情况下,不可以返回到原始模式,因 为原始模式是仅在通电时可以设置的读模式。
图89示出了用于从MDA或VFA访问模式到PNA访问模式的 改变的命令序列,而图90示出了用于从MDA或PNA访问模式到VFA 访问模式的改变的命令序列。
图91和92示出了在先前使用的命令当中要被注册为NOP命令的命令。在图91中,<6011>-<0011>是在适当的地址上注册的旧的擦 除命令。在图91中,〈FFb是旧的复位命令,在PNR模式中使其有 效作为地址复位命令(参见图85)。图93示出了存储器控制器所需的固件(FW )重加载命令<0\ )> 的序列。当控制器接收该命令时,它终止当前命令,并执行从緩冲器 RAM到闪速存储器芯片的数据备份写入(步骤1)。此后,它从闪速 存储器芯片读出FW,并传送它以用于重加栽(步骤2)。在执行该 命令之后,它执行系统启动,并返回到就绪状态。图94示出了命令〈FEh〉的时序图,该命令〈FEh〉用于在 LBA-NAND存储器陷于(stuck)繁忙状态时使LBA-NAND存储器 强制返回到就绪状态。图95示出了 ID数据读取命令序列,该ID数据读取命令序列准 备了用于伪ID码数据读取的命令和用于如早先描述(参见图11B) 的从原始LBA--NAND存储器读取的ID码的命令 图96示出了状态读取命令序列。LBA-NAND存储器具有两种状 态使用命令<7011>输出的一般状态;以及使用命令<7111>输出的 LBA-NAND专用状态,如图11C所示。图97是密码设置命令的时序图。默认密码是"FFhFFh",以及在 该时段期间,密码鉴权功能被禁止。在使用该命令来设置用户专用的 密码之后,密码鉴权功能被使能。在执行该命令时,优选执行状态检 查。图97示出了使用状态命令〈lb获得通过"P"的情况。图98是VFA单元设置命令的时序图。如上所述,VFA区是可 扩展的。可以使用该命令来改变VFA区的容量。当VFA区的容量增 加时,MDA区失去该增加量的双倍的容量。在执4亍该命令时,也优 选执行状态检查。图98示出了使用状态命令〈71b获得通过"P"的情 况。图99是在控制器中的FW更新之后的复位命令的时序图。当输 入该命令时,在緩冲器RAM中FW被刷新(步骤1),以及这被写 入在存储器芯片中(步骤2)。可以使用硬件序列发生器27来控制到37存储器芯片中的这数据清刷(flush)。图100是地址清除命令〈FFb的时序图。该命令仅仅在PNR模 式中是有效的。图101是FW重加载命令〈FDI^的时序图。借助于该命令,可以 从清刷存储器重读FW,并将其加载到控制器中的緩冲器SRAM中。 也可以使用硬件序列发生器27来控制该数据读取和传送。图102示出了用于终止当前进行的读/写的命令〈FBl^的序列。 该命令如下响应。在就绪时段中的数据读取过程中,在完成数据输出之后,数据緩 冲器被清除(clear)。如果正在输入写数据,那么在将该接收的写数据 写入清刷存储器中之后,清除该数据緩冲器,以终止该命令。如果未 在读取数据,那么清除数据緩冲器以终止该命令。如果没有在输入写 数据,那么在将已经接收的写数据写入清刷存储器之后,清除数据緩 沖器,以终止该命令。在繁忙时段期间,不接受命令。图103是从主机到LBA-NAND存储器的用于FW更新的数据传 送的命令序列。528字节的数据结构包含512字节数据体+2字节虚数 据+2字节CRC16+11字节虚数据+1字节地址。最后的第528字节对 应于地址。数据总是经受以528字节为基础倍数=4的数据传送。该图形示 出了 2K字节数据传送单元,其中共同发送5字节地址和2K字节数 据。在所示的例子中,当通过状态检查检测到传送错误"失败(Fail)" 时,相同数据被再次传送。在5字节地址中,第一、第二、第四和笫五字节是虚的,而第三 字节是码页(code page)。图104示出了控制器FW更新的序列。主机设备(音乐引擎)顺 序发送命令和FW数据到LBA-NAND存储器。当LBA-NAND存储 器上的主机接口接收它们时,存储器控制器将FW下载在緩沖器 SRAM中。当主机输入复位命令〈FAl^和LBA-NAND存储器变为繁忙时, 在緩冲器SRAM上刷新FW,并顺序地写入闪速存储器中。图105示出了用于上述FW更新命令的错误处理的概述。在开始 建立之后,第一命令和地址以及数据被传送到LBA-NAND存储器。 根据状态"ST,,检查该数据传送,以及当主机检测到错误时,该数据经 受重新传送。在输入第二命令之后,放入一定的繁忙时段,然后重复相同的操 作。当在最后的FW更新状态检查中发现错误时,该命令被软复位, 以放弃FW更新。当没有发现错误时,发出用于在NAND闪速存储 器中写FW的写命令以更新FW。图106是数据刷新命令的时序图。该命令用来识别闪速存储器中 记录的数据的一致性。如果在验证-读取数据中发现包含错误的块,则 用备用块替换它,以及该原始块被再用作备用块。该命令用作背景命令,并且就绪/繁忙管脚输出就绪状态。该命 令的采用需要新建立数据刷新状态命令和数据刷新终止命令。图107示出了用于为了安全从闪速存储器擦除MDA区中的所有 数据的命令。图108示出了用于终止LBA-NAND存储器中执行的所有处理的 闪存高速緩存命令,推荐在断电之前输入该命令。总之,在执行该命 令〈F9b和一定的繁忙时段之后,建立就绪状态,以指示所有处理的 终止。在该状态下断电可以避免由于在处理没有完全终止的状态下断 电所引起的系统问题。图109是传送协议设置命令的时序图。默认数据传送格式被以1 扇区=528字节的形式ECC-纠正。配置命令随后的数据输入使得可以 ^没置如图IID所示的数据传送协议。图110是最小繁忙时间设置命令的时序图。在配置命令之后1 字节数据的输入使得可以确定最小繁忙时间,如图IIF所示。图111是节能模式设置命令的时序图。该命令使读/写访问进入 功耗比正常操作低的操作模式。图112涉及将节能模式特别应用于读操作的情况。节能模式的设 置使得可以将繁忙时段设置得比正常情况更长。图113示出了另一节能模式设置方法。在节能模式命令和后续地 址的输入之后的繁忙时段与命令锁存使能CLE的时序之间,设置偏 移(offset)时间,以减小功耗。图114是节能模式退出命令的时序图。该命令使得可以将节能模 式复位到正常模式。图115是地址获取命令的时序图。该命令使得可以将在 LBA-NAND存储器的地址锁存周期中的默认情况通知主机。图116是最大容量获取命令的时序图。该命令使得可以使用5 字节数据来表示LBA-NAND存储器所支持的MDA区和VFA区的总 和的扇区总数。 一个扇区包括512个字节。图117是管脚信息获取命令的时序图。该命令允许主机识别 LBA-NAND存储器中检测的公共管脚(COME、 COM0、 COM1)上 的电平。图118是读数据重发送请求命令的时序图。当主机检测到传送失 败并输入该命令<3111>时,LBA-NAND存储器重发送相同的读数据。[附加实施例图119、 120和121示出了应用于MDA和VFA的三种类型扇区 读取的时序图,即,分别为具有状态信息"Status一l"的类型A、 B和C 的时序图。它们的每一个是通过2字节扇区计数SC和和3字节扇区 地址AD指定开始地址的例子。尽管传送数据大小选自六个任选项512字节.N或(512+16字 节)*N(N=I, 4, 8)。在该例子中,N被设为4。数据长度中的+16 字节是通过CRC、 ECC等的传送-数据校验位。图119中示出的类型A是其中在扇区N至N+3的数据读取之后 执行虚扇区地址〈00h》〈xx、〈30h〉 (xx是5字节虚地址)的输入及 继续后面的扇区读取的例子。图120中所示的类型B是其中在扇区N至N+3的读取之后通过 输入继续命令〈F8h、继续后面的扇区读取的例子。图121中所示的类型C是其中在扇区N至N+3的读取之后,在 不输入继续命令〈F8I^的情况下,继续后面的扇区读取的例子。图119-121每个示出了其中除内部就绪/繁忙以外,使用1/01至 1/08当中的1/06,自第一数据被读取开始且直到到达扇区读取的最后 的数据包,在"StatusJ"读取中连续地指示繁忙状态(I/O6="0,,)的 例子。"Status—l"读取用作后面的命令序列<70h>-[Status_l值。图122和123示出了应用于MDA和VFA的两种类型扇区写入 的时序图,即,分别为具有状态信息"Status一l"的类型A和B的时序 图。它们的每一个是通过2字节扇区计数SC和3-字节扇区地址AD 指定开始地址的例子。图122中所示的类型A是其中在扇区N至N+3的数据写入之后 执行虛扇区地址〈80h、〈xx〉的输入以及继续后面的扇区写入的例子。图123中所示的类型B是其中在扇区N至N+3的写入之后在不 输入虛扇区地址的情况下继续后面的扇区读取的例子。注意,状态信息"StatusJ,,的读模式包括在PNR模式(图124) 下的情况、在VFA/MDA模式(图125)下的情况、以及在启动代码 维护模式下的情况(图126)。在每一种情况下,当根据上述命令序列在读取[StatusJ值之后 连续地执行数据读取或写入时,需通过输入<0011>返回到数据读模式 或数据写模式。图119-123中所示的状态"StatusJ"是图125中所示的 状态,其中利用1/06,连续地显示繁忙状态至扇区读取或扇区写入的 最后数据包。利用"Status l"的1/06,主机可以检测是否LBA-NAND存储器 系统正在进行一 系列扇区读/写操作,或LBA-NAND存储器系统已经 完成这一 系列操作并准备就绪来执行新操作。例如,设想在多任务操作主机中运行进行扇区读取的应用程序的同时,产生具有高优先级的新任务,并试图对LBA-NAND存储器系 统的新的访问时的情况。在此情况下,如果"Status一l"的1/06是繁忙 的,那么可以发出图50中所示的终止命令〈FBb。然后,在完成了 在处理的这一系列操作之后,可以开始对应于该新任务的对 LBA-NAND存储器系统的访问。[LBA-NAND系统-概述图127示出了 LBA-NAND存储器的操作模式概述,包括如图8 和9所述的操作模式改变。在通电时的初始建立之后,输入特定命令 以设置PNR模式或串行-EEP模式,从而读出PNA数据,由此执行 启动代码加载和系统启动。可以使用改变命令〈FCh〉将PNR模式或串行-EEP模式改变为 MDA访问才莫式。该改变命令可用来在对三个区域的访问当中,亦即 在MDA访问模式、PNA访问模式和VFA访问模式当中,改变 LBA-NAND访问模式。在最后将来自緩冲器RAM的所有数据写入闪 速存储器中的闪存高速緩存完成之后,终止这些访问模式。
权利要求
1. 一种能够连接到主机设备的非易失性存储器系统,包括具有多个数据区的非易失性存储器;以及操作来控制对所述非易失性存储器的读和写操作的存储器控制器,其中,该存储器控制器根据从主机设备馈送的命令、扇区计数和扇区地址,对该非易失性存储器中的选定的数据区内的多个扇区连续地执行读/写操作。
2. 根据权利要求l的非易失性存储器系统,其中,作为所述多个 数据区,提供第一应用程序区、第二应用程序区以及用于主机系统的 启动数据记录区,该第一应用程序区具有能够根据容量改变命令的输 入而增加/减小的容量,该第二应用程序区具有响应于所述第一应用程 序区的容量的增加或减小而减小或增加的容量。
3. 根据权利要求2的非易失性存储器系统,其中该第一应用程序 区是用于厂商应用的程序区,而该第二应用程序区是用于最终用户成 用的程序区。
4. 根据权利要求1的非易失性存储器系统,其中,所述非易失性 存储器包括存储器单元阵列,在该存储器单元阵列中,排列具有多个 串联连接的电可重写非易失性存储器单元的多个NAND基本单元,位 线经由选择栅极晶体管连接到NAND基本单元的一端,公共源极线经 由选择晶体管连接到NAND基本单元的另一端。
5. 根据权利要求4的非易失性存储器系统,其中,所述存储器控 制器在所述启动数据记录区中执行写控制,以使得不执行对邻近该选 择栅极晶体管的单元的写入。
6. 根据权利要求4的非易失性存储器系统,其中,所述存储器控 制器在启动数据记录区中执行写控制,以使得仅仅对所述存储器单元 阵列的奇数页和偶数页其中之一执行写入。
7. 根据权利要求4的非易失性存储器系统,其中,所述非易失性 存储器单元阵列被配置为每个非易失性存储器单元存储多值位的数 据,以及所述存储器控制器在启动数据记录区中执行写控制,以使得 每个非易失性存储器单元执行1位数据存储。
8. 根据权利要求1的非易失性存储器系统,其中,所述存储器控 制器包括执行与所述非易失性存储器的数据传送的第 一接口 ; 执行与所述主机设备的数据传送的第二接口 ; 临时保持由所述第一和第二接口传送的数据的数据寄存器;以及 控制经由所述第一和第二接口的数据传送的处理单元。
9. 根据权利要求2的非易失性存储器系统,其中该第一和第二应 用程序区具有读/写数据传送单元,该读/写数据传送单元能够被设置 为利用扇区倍数的选择而可变。
10. 根据权利要求1的非易失性存储器系统,其中,作为所述多 个数据区,提供第一应用程序区、第二应用程序区、用于主机系统的 启动数据记录区、以及用于存储器控制器的系统数据记录区,该第一 应用程序区具有根据容量改变命令的输入而增加/减小的容量,该第二 应用程序区具有响应于所述第一应用程序区的容量的增加或减小而 减小或增加的容量。
11. 根据权利要求10的非易失性存储器系统,其中,在通电的时候,从所述启动数据记录区和系统数据记录区自动地读取数据到所述 存储器控制器中,然后输入读命令以设置其中将所述启动数据读到主 机设备中的读模式。
12. 根据权利要求10的非易失性存储器系统,其中,该第一和第 二应用程序区具有读/写数据传送单元,该读/写数据传送单元能够被 设置为利用扇区倍数的选择而可变。
13. —种用于非易失性存储器系统的数据读/写方法,该非易失性 存储器系统包括具有多个数据区的非易失性存储器以及操作来控制 对所述非易失性存储器的读和写操作的存储器控制器,该系统能够连 接到主机设备,该方法包括从所述主机设备提供命令、扇区计数和扇区地址;以及 在所述存储器控制器的控制下,根据命令、扇区计数和扇区地址,对所述非易失性存储器中的选定的数据区内的多个扇区连续地执行读/写。
14. 根据权利要求13的用于非易失性存储器系统的数据读/写方 法,其中,作为所述多个数据区,提供第一应用程序区、第二应用程 序区、以及用于主机系统的启动数据记录区,该第一应用程序区具有 能根据容量改变命令的输入而增加/减小的容量,该第二应用程序区具 有响应于所述第一应用程序区的容量的增加或减小而减小或增加的 容量。
15. 根据权利要求13的用于非易失性存储器系统的数据读/写方 法,其中所述第一和第二应用程序区具有读/写数据传送单元,该读/ 写数据传送单元能够被设置为利用扇区倍数的选择而可变。
16.根据权利要求13的用于非易失性存储器系统的数据读/写方 法,其中作为所述多个数据区,提供第一应用程序区、第二应用程序 区、用于主机系统的启动数据记录区、以及用于存储器控制器的系统 数据记录区,该第一应用程序区具有根据容量改变命令的输入而增加 /减小的容量,该第二应用程序区具有响应于所迷第一应用程序区的容 量的增加或减小而减小或增加的容量。
全文摘要
一种非易失性存储器系统,包括具有多个数据区的非易失性存储器;以及可操作来控制对所述非易失性存储器的读和写操作的存储器控制器。该存储器控制器根据从主机设备馈送的命令、扇区计数和扇区地址,对该非易失性存储器中的选定的数据区内的多个扇区连续地执行读/写操作。
文档编号G06K19/07GK101506780SQ20078002781
公开日2009年8月12日 申请日期2007年7月31日 优先权日2006年7月31日
发明者助川博, 工藤靖雄, 河本和也 申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1