闪存设备和方法

文档序号:6741497阅读:185来源:国知局
专利名称:闪存设备和方法
技术领域
本发明涉及闪存设备领域。更具体地说,本发明涉及在闪存设备内使用高速缓存读取操作。
背景技术
闪存设备已经已知很多年了。现有技术中已知的标准闪存设备在存储器阵列中存储数据,成组排列,称为页面和/或模块。现有技术中已知的NAND闪存设备的实例是Micron Technologies公司的设备N0.MT29F2G08AABWP。该设备的数据页(下文缩写为DS)被合并在本文中用于说明的所有目的。当闪存设备所连接的主机(例如闪存所连接的计算机、控制器或其他类似设备)和闪存设备交换数据时,通常在一次操作内,将一个完整的数据页面从称作页面缓冲器的内部缓冲器(或寄存器)写入存储器阵列内或同时把数据页面从存储器阵列中读出到页面缓冲器。当主机发送一个请求以指示闪存设备读取一页数据时,该页数据从存储器阵列被传输到页面缓 冲器。主机被允许发出一个请求,指示闪存设备仅当该页数据被完全读入页面缓冲器之后才启动一个新操作。主机和闪存设备之间的数据交换所需时间包括主机缓冲器以及缓冲器存储器阵列之间的传输周期。随着现有闪存设备的数据页面大小的增加,主机缓冲器之间的传输时间也增加了,并变得可以和缓冲器存储器阵列传输时间相比较。例如,在现有技术中已知的具有2K字节数据页面的NAND闪存设备中,主机缓冲器传输时间通常是每页50 - 100微秒,而缓冲器存储器阵列读取时间是每页20 - 50微秒,缓冲器存储器阵列页面编程(写)时间是每页200 - 800微秒。因此,为了增加系统的整体吞吐量,一些闪存设备包括一个附加的数据缓冲器一高速缓存缓冲器一用于在主机和该高速缓存缓冲器之间以及在页面缓冲器和存储器阵列之间同时进行数据传输。当闪存设备内采用了高速缓存缓冲器时,数据页面从存储器阵列被读入页面缓冲器,然后立即传输到高速缓存缓冲器,因此“释放” 了页面缓冲器,用于从存储器阵列接收下一页数据。换句话说,即使在前一页数据完全从缓存缓冲器中读出之前,主机被允许向闪存设备发送一个请求,从存储器阵列中读取下一页数据。因此,采用高速缓存缓冲器进行页面读取操作同时减小了传输延迟时间,增加了系统的整体吞吐量。使用高速缓存缓冲器的读取操作被称作“高速缓存读取”或“用高速缓存读取”或“高速缓存模式页面读取”(完全取决于特定闪存设备经营商)。读取操作响应于由主机触发的特殊命令。实际上,闪存设备用于读取被顺序写入闪存设备的大量数据。例如包括几千字节数据的文件系统簇,其总是由操作系统作为一个“块(chunk)”写入闪存设备和从中读出。其他实例包括信息,由多媒体源(例如视频、音频记录系统)进行“流”传输,或者数码相机所拍摄的图像。在这些情况下,可能需要从闪存设备读取下一页数据,即存储在存储器阵列内的物理连续的数据页面。现有技术中已知的闪存设备假定使用高速缓存缓冲器进行页面读取操作。例如,如果当前读取操作从存储器阵列的地址N读取一页数据,随后接下来的高速缓存读取操作总是从存储器阵列的地址N+1获取一个数据页面。但是,存在“下一个连续页面”不再有效的可能性。其中一种情况是一种应用程序,其中需要以“反向”顺序读取数据页面,即例如执行LIFO (后入先出)过程。在以下系统内可能需要执行该应用程序:该系统记录随着时间发生的不同类型的事件,并且有时可能需要查阅最近记录的特定类型的事件。在这样的系统内,使用最后记录(例如数据页面)的地址来快速读取“之前”的数据页面可能是非常有利的。现有的用于高速缓存读取操作的闪存设备不能够解决所述需求。换句话说,现有技术中已知的包括一个高速缓存缓冲器的闪存设备不能够提供“反向”顺序(即页面地址是递减的)的数据页面读取。为了读取“前一个”数据页面,现有的方法简单地应用了 “规则的”(不经过高速缓存的)页面读取操作,没有使用高速缓存缓冲器。但是,与规则的高速缓存读取操作相比,应用“规则的”页面读取操作会降低系统的整体吞吐量。

发明内容

因此,本发明的一个主要目的是通过引入一种闪存设备克服现有技术中的缺陷,其被配置为允许对前一页数据进行高速缓存读取操作。本发明的闪存设备还被配置为允许对任意地址执行高速缓存读取操作。逻辑机构响应于从主机接收到的命令,将数据页面从闪存设备传输到主机,或者从主机传输到闪存设备。逻辑机构响应两种不同的命令一“正常”缓存读取命令(即递增地址)以及“反向”缓存读取命令(即递减地址)。根据本发明的一个方面,提供一种闪存设备,其包括:用于存储多个数据页面的存储器单元阵列;两个缓冲器,用于获取多个数据页面,其中所述两个缓冲器中的一个缓冲器是页面缓冲器,而所述两个缓冲器中的另一个缓冲器是高速缓存缓冲器,所述两个缓冲器能够同时传输多个数据页面中的两个数据页面的数据,所述两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而当所述闪存设备被耦合于主机时所述两个数据页面中的另一个数据页面在所述高速缓存缓冲器和所述主机之间传输;以及一逻辑机构,其响应于多个命令,用于当所述闪存设备被耦合于主机时将所述多个数据页面传输到所述主机,所述多个命令如下:在所述多个命令中的第一命令之后的每个命令指示所述闪存设备从任意规定的地址获取相应的数据页面,其中,所述逻辑机构经由页面缓冲器和高速缓存缓冲器将所述多个数据页面传输到主机,其中,从存储器单元阵列向所述页面缓冲器传输响应于每个命令而从任意规定的地址获取的每个数据页面,而从所述高速缓存缓冲器向所述主机传输响应于在每个命令之前的前一个命令而获取的数据页面,其中,所述每个命令包括相应的参数值,该参数值规定了响应于每个命令而获取的相应的数据页面的地址与在所述命令之前的前一个命令而获取的数据页面的地址相差多少。根据本发明的另一个方面,提供一种从闪存读取数据页面的方法,所述方法包括:从所述闪存的主机接收第一命令,指示闪存获取第一数据页面;由闪存的逻辑机构响应于所述第一命令获取所述第一数据页面;从所述主机接收一个或多个高速缓存读取命令,指示闪存从任意规定的地址处获取所述相应的第二数据页面;以及由所述逻辑机构响应于所述一个或多个高速缓存读取命令中的每个而获取所述相应的第二数据页面,其中,所述一个或多个高速缓存读取命令的每个包括相应的参数值,该参数值规定了响应于所述一个或多个高速缓存读取命令的每个而获取的相应的第二数据页面的地址与响应于在所述一个或多个高速缓存读取命令的每个之前的命令而获取的数据页面的地址相差多少。根据本发明的另一个方面,提供一种闪存设备,包括:存储器单元阵列,用于存储多个数据页面;页面缓冲器和高速缓存缓冲器,用于获取多个数据页面,其中,所述页面缓冲器和高速缓存缓冲器能够同时传输多个数据页面中的两个数据页面的数据,所述两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而所述两个数据页面中的另一个数据页面在所述高速缓存缓冲器和主机之间传输;以及一逻辑机构,其响应于多个命令,用于当所述闪存设备被耦合于主机时将所述多个数据页面传输到所述主机,所述多个命令如下:在所述多个命令中的第一命令之后的每个命令指示所述闪存设备从任意规定的地址获取相应的数据页面,其中,所述逻辑机构经由页面缓冲器和高速缓存缓冲器将所述多个数据页面传输到主机,其中,从存储器单元阵列向所述页面缓冲器传输响应于每个命令而从任意规定的地址获取的每个数据页面,而从所述高速缓存缓冲器向所述主机传输响应于在每个命令之前的前一个命令而获取的数据页面。根据本发明的另一个方面,提供一种用于从闪存读取数据页面的方法,该方法包括:接收指示所述闪存获取第一数据页面的第一命令;响应于第一命令,由所述闪存的逻辑机构获取第一数据页面;接收指示所述闪存从任`意规定的地址获取相应的第二数据页面的一个或多个高速缓存读取命令;以及响应于所述一个或多个高速缓存读取命令的每个,由所述逻辑机构获取相应的第二数据页面,其中,所述一个或多个高速缓存读取命令的每个包括相应的参数值,该参数值规定了响应于所述一个或多个高速缓存读取命令的每个而获取的相应的第二数据页面的地址与响应于在所述一个或多个高速缓存读取命令的每个之前的命令而获取的数据页面的地址相差多少。根据本发明,提供了一种闪存设备,其包括:(a)用于存储多个数据页面的存储器单元阵列;(b)至少一个用于获取所述多个数据页面的缓冲器;以及(c) 一逻辑机构,其响应于多个命令,将所述获取的多个数据页面传输到主机,其中第二命令和随后的命令中的每一个命令都指示闪存设备获取一个数据页面,该数据页面的地址位于所述阵列内由前一个命令获取的数据页面地址之前,并且其中所述多个命令的至少一个没有明确规定所获取的数据页面的地址。根据本发明的第一闪存设备,应用了连续读取的数据页面的递减地址,而且没有明确规定数据页面的地址。第一闪存设备包括用于存储多个数据页面的存储器单元阵列,一个或多个获取数据页面的缓冲器,以及在缓冲器和主机之间传输由前一个命令所获取的数据页面的逻辑机构。最后一个限定,即至少一个命令没有明确规定地址,以及本发明所述的其他方法和闪存设备的类似限定,将本发明与现有技术中明确规定了所有地址以及不能明确规定所有增量区分开来。优选地,由所述第二命令和随后的命令所获取的数据页面的地址位于由前一个命令所获取的数据页面的地址之前的固定减量处。更优选的是,所述固定减量是-1。优选地,所述第二命令和随后的命令包括一个相应的参数值,这个参数值规定了由该命令所获取的数据页面的地址位于由前一个命令所获取的数据页面的地址之前多远处。优选地,闪存设备包括两个缓冲器,一个是页面缓冲器,另一个是高速缓存缓冲器,从而能够同时传输两个数据页面的数据,其中两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而另一个数据页面在所述高速缓存缓冲器和所述主机之间传输。根据本发明,其还提供了一种从闪存设备中读取数据页面的方法,该方法包括如下步骤:(a)由主机发出第一命令,指示闪存设备获取第一数据页面;(b)由闪存设备的逻辑机构响应于所述第一命令获取所述第一数据页面;(C)由所述主机发出至少一个第二命令,指示闪存设备获取相应的数据页面,该页面的地址在响应于前一个命令所获取的数据页面的地址之前,所述至少一个第二命令没有明确规定所述相应数据页面的地址;以及Cd)由所述逻辑机构响应于每个所述第二命令获取所述相应数据页面。优选地,在由第一命令所获取的数据页面之后的每个所获取的数据页面的地址都直接位于闪存阵列内由前一个命令所获取的数据页面的地址之前。优选地,每个第二·命令包括一个相应的参数值,该参数值规定了由该命令所获取的数据页面的地址位于由前一个命令所获取的数据页面的地址之前多远处。优选地,每个第二命令被实现为一个高速缓存读取命令。根据本发明,其还提供了一种闪存设备,其包括:(a)用于存储多个数据页面的存储器单元阵列;(b)至少一个用于获取所述多个数据页面的缓冲器;以及(c) 一逻辑机构,其响应于多个命令,将所获取的多个数据页面传输到主机,其中第二命令和随后的命令中的每一个命令都指示闪存设备获取一个数据页面,该数据页面的地址在所述阵列内超过由前一个命令所获取的数据页面的地址不止一个地址,并且所述至少一个随后的命令没有明确规定所获取的数据页面的地址。优选地,所述第二命令和随后的命令包括一个相应的参数值,这个参数值规定了由该命令所获取的数据页面的地址位于由前一个命令所获取的数据页面的地址之前多远处。优选地,闪存设备包括两个缓冲器,一个是页面缓冲器,另一个是高速缓存缓冲器,从而能够同时传输两个数据页面的数据,其中两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而另一个数据页面在所述高速缓存缓冲器和所述主机之间传输。根据本发明,还提供了一种从闪存设备读取数据页面的方法,所述方法包括如下步骤:(a)由主机发出第一命令,指示闪存设备获取第一数据页面;(b)由闪存设备的逻辑机构响应于所述第一命令获取所述第一数据页面;(C)由所述主机发出至少一个第二命令,指示闪存设备获取相应的数据页面,该页面的地址超过由前一个命令所获取的数据页面的地址不止一个地址,其中至少一个第二命令中的至少一个没有明确规定所述相应数据页面的地址;以及(d)由所述逻辑机构响应于每个所述第二命令获取所述相应数据页面。优选地,每个第二命令包括一个相应的参数值,这个参数值规定了由该命令所获取的数据页面的地址超过由前一个命令所获取的数据页面的地址多远。优选地,所述每个第二命令被实现为一个高速缓存读取命令。根据本发明,还提供了一种闪存设备,其包括:Ca)用于存储多个数据页面的存储器单元阵列;(b)用于获取多个数据页面的两个缓冲器,其中一个缓冲器是页面缓冲器,而另一个缓冲器是高速缓存缓冲器,从而能够至少部分地同时传输两个数据页面的数据,其中两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而另一个数据页面在所述高速缓存缓冲器和所述主机之间传输;以及(C) 一逻辑机构,其响应于多个命令,将所获取的多个数据页面中的至少两个传输到主机,其中所述传输是通过所述页面缓冲器和所述高速缓存缓冲器实现的,并且其中所述多个命令中的第二命令和随后的命令中的每个命令指示闪存设备从任意指定的地址获取一个数据页面。优选地,每个第二命令和随后的命令包括一个相应的参数值,这个参数值规定了由该命令所获取的相应数据页面的地址与由前一个命令所获取的数据页面的地址相差多少。优选地,所述任意地址是明确规定的。根据本发明,还提供了一种从闪存设备读取数据页面的方法,所述方法包括如下步骤:(a)由主机发出第一命令,指示闪存设备获取第一数据页面;(b)由闪存设备的逻辑机构响应于所述第一命令获取所述第一数据页面;(C)由所述主机发出至少一个高速缓存读取命令,指示闪存设备从任意规定的地址处获取相应的数据页面;以及(d)所述逻辑机构响应于每个所述第二命令获取所述相应数据页面。优选地,每个高速缓存读取命令包括一个相应的参数值,该参数值规定了由该命令所获取的相应数据页面 的地址与由前一个命令所获取的数据页面的地址相差多少。优选地,所述高速缓存读取命令明确规定了由该命令所获取的相应数据页面的地址。根据本发明,还提供了一种闪存设备,其包括:Ca)用于存储多个数据页面的存储器单元阵列;(b) —页面缓冲器;(C) 一高速缓存缓冲器;以及(d)—逻辑机构,其响应于多个命令至少部分地同时在所述存储器单元阵列和所述页面缓冲器之间传输所述多个数据页面中的一个数据页面,并在所述高速缓存缓冲器和所述主机之间传输所述多个数据页面中的另一个数据页面,其中,在所述存储器阵列和所述页面缓冲器之间传输的数据页面的地址在所述阵列内位于在所述高速缓存缓冲器和所述主机之间传输的数据页面的地址之
N /.刖。优选地,在所述存储器阵列和所述页面缓冲器之间传输的数据页面的地址在所述阵列内位于在所述高速缓存缓冲器和所述主机之间传输的数据页面的地址之前的固定减量处。更优选的是,所述固定减量是-1。
根据本发明,还提供了一种方法,该方法包括如下步骤:(a)由主机发出第一命令,指示闪存设备获取第一数据页面;(b)由主机发出第二命令,指示闪存设备获取第二数据页面;(c)响应于所述第一和第二命令,至少部分地基本同时地从存储器单元阵列把第二数据页面获取到页面缓冲器,并从高速缓存缓冲器把第一数据页面获取到主机,其中所述第二数据页面的地址在所述阵列内位于第一数据页面的地址之前。优选地,所述第二数据页面的地址在所述阵列内直接位于所述第一数据页面的地址之前。根据本发明,还提供了一种闪存设备,其包括:Ca)用于存储多个数据页面的存储器单元阵列;(b) —页面缓冲器;(C) 一高速缓存缓冲器;(d)—逻辑机构,其响应于多个命令,至少部分地同时在所述存储器单元阵列和所述页面缓冲器之间传输所述多个数据页面中的一个数据页面传输,并在所述高速缓存缓冲器和所述主机之间传输所述多个数据页面中的另一个数据页面,其中在所述存储器阵列和所述页面缓冲器之间传输的数据页面在所述阵列内的地址超过在所述高速缓存缓冲器和所述主机之间传输的数据页面的地址不止一个地址。 根据本发明,还提供了一种方法,该方法包括如下步骤:(a)由主机发出第一命令,指示闪存设备接收第一数据页面;(b)由主机发出第二命令,指示闪存设备接收第二数据页面;(C)响应于所述第一和第二命令,至少部分地基本同时地从存储器单元阵列把第二数据页面获取到页面缓冲器,并从高速缓存缓冲器把第一数据页面获取到主机,其中所述第二数据页面在所述阵列内的地址超过第一数据页面的地址不止一个地址。本发明的其他特征和优点通过下列附图和说明将更加清楚。


为了通过实施例更好地理解本发明,可以参照附图,其中全文中相同的附图标记表示相应的部分或元件,并且其中:图1是本发明的闪存设备的框图;以及图2是本发明的方法的时序图,阐释了主机和闪存设备之间用于读取之前的数据页面所应用的过程。
具体实施例方式本发明是一种闪存设备和被配置为允许在一个模块内对前一个数据页面和下一个数据页面进行高速缓存读取操作的方法。该配置例如用在记录随时间发生的不同类型的事件并且有时可能需要快速回查并读取特定类型的最近记录事件的系统中。现有方法解决所述需求时应用了规则的(不经过高速缓存的)页面读取操作。因此,与现有技术的规则读取命令不同一本发明的闪存设备配置解决了以任意顺序读取数据页面的需求,同时利用了高速缓存缓冲器的优点。本发明的闪存设备包括用于存储数据页面的存储器单元的存储器阵列。闪存设备所连接的主机设备借助于输入/输出(I/O)接口单元通过数据信号传输数据页面。本发明的闪存设备包括两个缓冲器一一个页面缓冲器和一个高速缓存缓冲器。一个完整的数据页面从页面缓冲器被写入到存储器阵列,或者从存储器阵列读出到页面缓冲器,其中提供了高速缓存缓冲器,用于在主机设备和高速缓存缓冲器之间以及在页面缓冲器和存储器阵列之间同时进行数据传输。同时数据传输增加了闪存设备的整体吞吐量。逻辑机构响应从主机接收到的高速缓存读取命令,将数据页面从闪存设备传输到主机,或者从主机传输到闪存设备。高速缓存读取命令在本文中被定义为指示闪存设备同时使用页面缓冲器和高速缓存缓冲器的命令。逻辑机构响应两种不同的命令一“正常”高速缓存读取命令(即表示递增地址的正向增加)以及“反向”高速缓存读取命令(即表示递减地址的反向增加)。因此,一旦从主机接收到“以 高速缓存读取”命令,最后一个所获取的数据页面的地址被递减或者被递增,被用于随后的读取操作。该方法增加了设计的灵活性,同时保持了
最大吞吐量。本文中示例性的命令代码和序列参照了根据本发明的原理调整的Mi cronTechnology公司的设备N0.MT29F2G08AABWP的方式。但是,本领域技术人员应清楚本发明的原理可以一般地应用于类似的命令代码和序列来调整本领域内任何闪存设备。“反向”高速缓存读取命令的操作方式遵循了现有技术中已知的“正常”高速缓存读取命令的操作方式,区别仅在于当“正常”高速缓存读取命令操作逻辑机构以递增要从存储器阵列中获取的数据页面的地址时,“反向”高速缓存读取命令操作逻辑机构将该地址递减。除此之外,这两种高速缓存读取命令的实现(包括就绪/忙信号以及规则读取命令的命令代码0X30和获取最后所需的数据页面的命令代码OX3F)是基于相同的逻辑。提供两个“正常”和“反向”高速缓存读取命令的一种方式是使用相似的命令代码——例如0X32读取命令代码,因此生成了一对高速缓存读取命令,如下:0X31命令代码表示“正常”高速缓存读取命令,OX 32命令代码表示“反向”高速缓存读取命令。生成这样一对高速缓存读取命令不是对于生产商特定的,其也可以被用于调整现有技术中已知的任何闪存设备的高速缓存读取命令集。参看图1,其示出了本发明的闪存设备10的框图。闪存设备10包括用于存储数据页面的存储单元Cl到Cn所组成的存储器阵列12。闪存设备10所连接的主机18借助于输入/输出(I/O)接口单元28通过数据信号22传输数据页面。一个完整的数据页面从页面缓冲器14被写入到存储器阵列12,或者从存储器阵列12读出到页面缓冲器14。闪存设备10包括一个附加的数据缓冲器一高速缓存缓冲器16,用于在主机18和高速缓存缓冲器16之间以及在页面缓冲器14和存储器阵列12之间同时进行数据传输。提供了逻辑机构20,用于将数据页面从闪存设备10传输到主机18,或者从主机18传输到闪存设备10。逻辑机构20响应于通过控制信号24和数据信号22从主机18接收的“正常”和“反向”缓存读取命令。状态信息可选地从连接到逻辑机构20的存储状态寄存器27提供给主机18,通知主机18页面“N”已经可以被主机18读取。状态信息从存储状态寄存器27通过输入/输出(I/O)接口单元28传输到主机设备20。现在参看图2,其示出了本发明的方法的时序图30,阐释了主机18和闪存设备10之间为读取之前的数据页面所交换的信号。一旦从闪存设备10接收到通知主机18可以读取闪存设备10的“就绪”信号32,主机18向闪存设备10发送一个规则读取命令34 (例如命令代码0X30)和五个地址周期,要求闪存设备10获取存储在地址“N”处的数据页面(本文称为页面“N”),并等待读取完成。一旦从主机18接收到规则读取命令34,闪存设备10从存储器阵列把数据页面“N”获取到页面缓冲器(步骤36)(—般持续30微秒)。当数据页面“N”从存储器阵列完全获取到页面缓冲器之后,闪存设备10发送第二“就绪”信号38,通知主机18页面“N”可以被主机12读取。作为替代,主机18轮询闪存设备10内的存储状态寄存器27,通知主机18页面“N”可以被主机18读取。此时,主机18向闪存设备10发送下一个命令~"反向”高速缓存读取命令40(例如命令代码0X32),要求闪存设备10从闪存设备10中获取前一个数据页面(页面“N-1”),而不是从页面缓冲器读取页面“N”。这个“反向”高速缓存读取命令40触发闪存设备10,把页面“N”的内容(存储最近从存储器阵列读取的数据页面)从页面缓冲器传输到高速缓存缓冲器(步骤42)。该步骤一般持续1.5微秒。当页面“N”被完全从页面缓冲器传输到缓存缓冲器之后,数据页面地址递减I (即数据页面地址变为N-1),闪存设备10发送第三个“就绪”信号44,通知主机18页面“N”可以被主机18读取。此时,闪存设备10在发送第三个“就绪”信号44的同时,从存储器阵列中把前一个数据页面(页面“N-1”)获取到页面缓冲器中(步骤46)。一旦从闪存设备接收到第三个“就绪”信号44,主机18从缓存缓冲器读取页面“N”(步骤48)。该读取操作在从存储器阵列把页面“N-1”获取到页面缓冲器的同时由主机18执行(步骤46)。当主机18从高速缓存缓冲器完全读取页面“N”之后,主机18发送第二“反向”读取命令50,要求闪存设备10从闪 存设备10获取前一个数据页面(页面“N-2”)。第二 “反向”高速缓存读取命令触发闪存设备10,只有在从存储器阵列把页面“N-1”传输到页面缓冲器结束之后才把页面“N-1”的内容从页面缓冲器传输到高速缓存缓冲器(步骤52)。当页面“N-1”被完全从页面缓冲器传输到高速缓存缓冲器之后,数据页面地址递减I (即数据页面地址变为N-2),闪存设备10发送第四个“就绪”信号54,通知主机18页面“N-1”可以被主机18读取。此时,闪存设备10在发送第四个“就绪”信号54的同时,从存储器阵列中把前一个数据页面(页面“N-2”)获取到页面缓冲器中(步骤56)。一旦从闪存设备10接收到第四个“就绪”信号54,主机18从高速缓存缓冲器读取页面“N-1”。该读取操作在从存储器阵列把页面“N-2”获取到页面缓冲器的同时由主机18执行(步骤56)。为了结束“反向”缓存读取操作的序列,主机18向闪存设备10发送一个高速缓存读取结束命令60(例如,命令代码0 X 3F),从闪存设备10读取最后一个所需的数据页面(例如页面“N-M”,其中M>2)。高速缓存读取结束命令60触发闪存设备10把页面“N-M”的内容从页面缓冲器传输到高速缓存缓冲器(步骤62)。当页面“N-M”被完全从页面缓冲器传输到高速缓存缓冲器之后,闪存设备10发送最后一个“就绪”信号64,通知主机18页面“N-M”可以被主机18读取。
在最后阶段,一旦从闪存设备接收到最后一个“就绪”信号64,主机18从高速缓存缓冲器读取最后一个页面“N-M”(步骤68)。根据本发明的第二实施例,本发明的闪存设备同时使用页面缓冲器和高速缓存缓冲器,响应从主机接收的高速缓存读取命令进行操作,该命令规定了在连续读取的数据页面之间的任意地址增量(例如任何非零整数)。这样,逻辑机构响应任何高速缓存读取命令,指示闪存设备从任意地址增量获取数据页面,而不仅仅是像现有技术中那样固定为+ I的增量,也不仅仅是如本发明第一实施例中那样固定为一 I的增量。注意,任意增量所指向的地址必须在存储器阵列大小的限制内。注意,负的地址“增量”在本文中被定义为地址减量。因此,例如向闪存发送地址增量为+ 5,指示闪存返回地址“N”、“N+5”、“N+10”等处存储的页面,直到高速缓存读取结束;向闪存发送地址增量为一 5,指示闪存返回地址“N”、“N - 5”、“N - 10”等处存储的页面,直到高速缓存读取结束。优选地,该任意地址增量由主机设定,并作为参数命令发送给闪存设备。这个参数命令与接下来所有的高速缓存读取操作相关,直到该命令被撤销。这可以通过例如最初向闪存设备发送一个命令代码0 X AA来实现,该命令规定了闪存设备的任意地址增量的数值(例如“5”),使得此接下来的高速缓存读取命令(“反向”或者“正常”)均与该数值相关。在“反向”高速缓存读取命令的情况下,通过命令代码0 X AA获得的数值表示递减数值(“一 5”)。在“正常”高速缓存读取命令的情况下,这个数值表示递增数值(“+ 5”)。只要从主机接收到的连续的高速缓存读取命令伴随有地址增量命令,该过程就持续执行(或者直到发出了高速缓存读取结束命令为止)。作为替代,从主机接收到的每个高速缓存读取命令伴随有一个相应的设置参数命令,其规定了该高速缓存读取命令的地址增量。这种情况例如可以通过在每个高速缓存读取命令之后向闪存设备发送一个相应的命令代码OXAA来实现。作为替代,从主机接收到的伴随每个高速缓存读取命令的相应参数表示一个明确规定的数据页面地址,而不是地址增量。由于在第一读取命令之后的所有读取命令都作为高速缓存读取命令来执行,第二实施例的这个替代实施方式与现有技术中规定了明确地址的无高速缓存读取命令不同。因此,与现有技术的规则读取命令不同一本发明的闪存设备的配置满足了以任意顺序读取数据页面的需求,同时利用了高速缓存缓冲器的优点。需要注意的是,本发明与NAND闪存设备相关。但是,可以理解其他实施方式也在本发明的范围之内,因此可以应用于响应从主机接收到的高速缓存读取命令操作的任何设备和方法。所述通过特定的实施例描述了本发明,应该理解该说明并不意味着限制,因为进一步的修正对于本领域 技术人员是可以理解的,其试图覆盖落入所附权利要求书的范围内的这类修正。
权利要求
1.一种闪存设备,其包括: 用于存储多个数据页面的存储器单元阵列; 两个缓冲器,用于获取多个数据页面,其中所述两个缓冲器中的一个缓冲器是页面缓冲器,而所述两个缓冲器中的另一个缓冲器是高速缓存缓冲器,所述两个缓冲器能够同时传输多个数据页面中的两个数据页面的数据,所述两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而当所述闪存设备被耦合于主机时所述两个数据页面中的另一个数据页面在所述高速缓存缓冲器和所述主机之间传输;以及 一逻辑机构,其响应于多个命令,用于当所述闪存设备被耦合于主机时将所述多个数据页面传输到所述主机,所述多个命令如下:在所述多个命令中的第一命令之后的每个命令指示所述闪存设备从任意规定的地址获取相应的数据页面,其中,所述逻辑机构经由页面缓冲器和高速缓存缓冲器将所述多个数据页面传输到主机,其中,从存储器单元阵列向所述页面缓冲器传输响应于每个命令而从任意规定的地址获取的每个数据页面,而从所述高速缓存缓冲器向所述主机传输响应于在每个命令之前的前一个命令而获取的数据页面,其中,所述每个命令包括相应的参数值,该参数值规定了响应于每个命令而获取的相应的数据页面的地址与在所述命令之前的前一个命令而获取的数据页面的地址相差多少。
2.如权利要求1所述的闪存设备,其中所述相应的参数值规定了任意的地址增量。
3.如权利要求1所述的闪存设备,其中所述任意规定的地址是明确规定的。
4.一种从闪存读取数据页面的方法,所述方法包括: 从所述闪存的主机接收第一命令,指示闪存获取第一数据页面; 由闪存的逻辑机构响应于所述第一命令获取所述第一数据页面; 从所述主机接收一个或多个高速缓存`读取命令,指示闪存从任意规定的地址处获取所述相应的第二数据页面;以及 由所述逻辑机构响应于所述一个或多个高速缓存读取命令中的每个而获取所述相应的第二数据页面,其中,所述一个或多个高速缓存读取命令的每个包括相应的参数值,该参数值规定了响应于所述一个或多个高速缓存读取命令的每个而获取的相应的第二数据页面的地址与响应于在所述一个或多个高速缓存读取命令的每个之前的命令而获取的数据页面的地址相差多少。
5.如机利要求4所述的方法,其中所述相应的参数值规定了任意的地址增量。
6.如权利要求4所述的方法,其中所述一个或多个高速缓存读取命令中的每个明确规定了响应于所述一个或多个高速缓存读取命令的每个而获取的相应的第二数据页面的所述地址。
7.根据权利要求4所述的方法,其中,所述一个或多个高速缓存读取命令中的多个是由主机发出的。
8.—种闪存设备,包括: 存储器单元阵列,用于存储多个数据页面; 页面缓冲器和高速缓存缓冲器,用于获取多个数据页面,其中,所述页面缓冲器和高速缓存缓冲器能够同时传输多个数据页面中的两个数据页面的数据,所述两个数据页面中的一个数据页面在所述存储器单元阵列和所述页面缓冲器之间传输,而所述两个数据页面中的另一个数据页面在所述高速缓存缓冲器和主机之间传输;以及一逻辑机构,其响应于多个命令,用于当所述闪存设备被耦合于主机时将所述多个数据页面传输到所述主机,所述多个命令如下:在所述多个命令中的第一命令之后的每个命令指示所述闪存设备从任意规定的地址获取相应的数据页面,其中,所述逻辑机构经由页面缓冲器和高速缓存缓冲器将所述多个数据页面传输到主机,其中,从存储器单元阵列向所述页面缓冲器传输响应于每个命令而从任意规定的地址获取的每个数据页面,而从所述高速缓存缓冲器向所述主机传输响应于在每个命令之前的前一个命令而获取的数据页面。
9.一种用于从闪存读取数据页面的方法,该方法包括: 接收指示所述闪存获取第一数据页面的第一命令; 响应于第一命令,由所述闪存的逻辑机构获取第一数据页面; 接收指示所述闪存从任意规定的地址获取相应的第二数据页面的一个或多个高速缓存读取命令;以及 响应于所述一个或多个高速缓存 读取命令的每个,由所述逻辑机构获取相应的第二数据页面,其中,所述一个或多个高速缓存读取命令的每个包括相应的参数值,该参数值规定了响应于所述一个或多个高速缓存读取命令的每个而获取的相应的第二数据页面的地址与响应于在所述一个或多个高速缓存读取命令的每个之前的命令而获取的数据页面的地址相差多少。
全文摘要
一种闪存包括存储器单元阵列,存储多个页面;页面缓冲器和缓存缓冲器,获取多个页面,能同时传输两页面的数据,两页面之一在存储器单元阵列和页面缓冲器间传输,另一当闪存耦合主机时在缓存缓冲器和主机间传输;和逻辑机构,响应如下多个命令当闪存耦合主机时将多个页面传到主机在多个命令的第一命令后的每个命令指示闪存从任意地址获取页面;逻辑机构经页面缓冲器和缓存缓冲器将多个页面传到主机,从存储器单元阵列向页面缓冲器传输响应每个命令从任意地址获取的页面,从缓存缓冲器向主机传输响应每个命令的前一命令获取的页面,每个命令包括规定响应每个命令获取的页面的地址与在该命令的前一命令获取的页面的地址相差多少的参数值。
文档编号G11C16/26GK103236270SQ201310043248
公开日2013年8月7日 申请日期2006年11月13日 优先权日2005年11月15日
发明者M.穆里恩, A.埃亚尔 申请人:晟碟以色列有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1