首页 / 存储装置和存储方法

存储装置和存储方法有效专利 发明

技术领域

[0001] 本发明涉及存储装置和存储方法,并且例如涉及存储状态标志的存储装置和存储方法。

相关背景技术

[0002] 已知例如在日本未审专利申请公开No.2008-117510中描述了互补读取闪速存储器。在互补读取闪速存储器中,两个可重写非易失性存储器单元形成一对,并且在该一对存储器单元(以下也可以称为双单元)中存储1位信息。构成双单元的单元可以处于低阈值电压状态或高阈值电压状态。低阈值电压状态是形成单元的晶体管的阈值电压(Vth)低于特定参考值的状态。高阈值电压状态是形成单元的晶体管的阈值电压(Vth)等于或高于特定参考值的状态。
[0003] 在互补读取闪速存储器中,通过将形成双单元的两个存储器单元设置为彼此不同的阈值电压状态来存储信息。具体地,例如,当双单元的第一存储器单元处于高阈值电压状态并且双单元的第二存储器单元处于低阈值电压状态时,存储值“0”。另一方面,当第一存储器单元处于低阈值电压状态并且第二存储器单元处于高阈值电压状态时,存储值“1”。此外,当第一存储器单元和第二存储器单元两者都处于低阈值电压状态时,它们处于擦除状态(其也被称为初始化状态)。在擦除状态的情况下,双单元的读取结果是未定义的。具体地,读取值可以是“1”或可以是“0”,其不是唯一定义的值。

具体实施方式

[0024] 以下描述和附图被适当缩短和简化以阐明说明。在附图中,相同的附图标记表示相同的结构元件,并且省略其冗余的解释。
[0025] <示例性实施例的概述>
[0026] 在描述示例性实施例的细节之前,首先描述示例性实施例的概述。图1是示出根据示例性实施例的概述的存储装置1的一个示例的框图。如图1所示,存储装置1包括数据存储器单元(数据存储器电路)2和状态存储器单元(状态存储器电路)3。
[0027] 数据存储器单元2包括一对闪速存储器单元4。通过互补读取模式读取该一对闪速存储器单元4。1位数据被存储在该一对闪速存储器单元4中。具体地,一对闪速存储器单元4是双单元,其中一个闪速存储器单元4处于低阈值电压状态并且另一个闪速存储器单元4处于高阈值电压状态从而存储1位数据。因为通过互补读取模式读取数据存储器单元2,所以通过比较流经双单元的一个闪速存储器单元4的电流和流经双单元的另一个闪速存储器单元4的电流来读取数据。流经存储器单元的电流根据存储器单元的阈值电压而不同。因此,通过比较流经双单元的一个闪速存储器单元4的电流和流经双单元的另一个闪速存储器单元4的电流,可以检测双单元的阈值电压的状态,从而启用数据的读取。注意,虽然在图1所示的示例中,存储装置1包括一个数据存储器单元2,但是存储装置1也可以包括多个数据存储器单元2。具体地,存储装置1可以包括多对双单元。
[0028] 状态存储器单元3包括至少一个闪速存储器单元5。通过参考读取模式读取闪速存储器单元5。1位信息被存储在一个闪速存储器单元5中。注意,状态标志被存储在状态存储器单元3的闪速存储器单元5中。状态标志是指示任意特定目标的状态的标志。
[0029] 此外,在参考读取模式中,通过改变闪速存储器单元5的阈值电压来存储信息。具体地,取决于阈值电压是否等于或高于参考值(即,处于高阈值电压状态)或低于参考值(即,处于低阈值电压状态)而存储1位信息。例如,当闪速存储器单元5处于高阈值电压状态时存储值“0”,并且当闪速存储器单元5处于低阈值电压状态时存储值“1”。在参考读取模式的情况下,在执行擦除之后阈值电压被改变为预定电压。更具体地,通过擦除将闪速存储器单元5设置为例如低阈值电压状态。因此,在参考读取模式中,在擦除之后的读取结果是唯一确定的。具体地,例如在通过擦除将闪速存储器单元5设置为低阈值电压状态的情况下,读取结果是值“1”。
[0030] 通过参考读取模式读取状态存储器单元3,并且通过将流经闪速存储器单元5的电流与参考电流进行比较来读取状态标志。因为参考电流具有恒定的电流值,所以可以通过将流经闪速存储器单元5的电流与参考电流进行比较来检测闪速存储器单元5的阈值电压的状态,从而启用数据的读取。注意,在图1所示的示例中,虽然存储装置1包括一个状态存储器单元3,但是存储装置1也可以包括多个状态存储器单元3。
[0031] 在存储装置1中,作为除状态标志以外的信息的数据被存储在通过互补读取模式读取的数据存储器单元2中,并且状态标志被存储在通过参考读取模式读取的状态存储器单元3中。因此,在擦除之后的状态标志的读取结果是唯一定义的。由此可以在存储装置1中通过互补读取模式存储数据,并在擦除之后唯一地定义状态标志的值。
[0032] <第一示例性实施例>
[0033] 以下描述示例性实施例的细节。图2是示出根据第一示例性实施例的闪速存储器100的配置示例的框图。注意,闪速存储器100对应于图1所示的存储装置1。如图2所示,闪速存储器100包括电源电路101、写入电路102、地址缓冲器103、预解码电路104、解码器105、WL驱动器106、读出放大器电路107、读出放大器控制电路108、输出驱动器109和存储器单元阵列110。
[0034] 电源电路101是提供用于写入、擦除和读取的电力的电路。写入电路102是将要写入的信息提供给存储器单元阵列110的电路。地址缓冲器103是接收用于访问(写入访问、擦除访问和读取访问)存储器单元阵列110的地址的电路。
[0035] 预解码电路104是对从地址缓冲器103输出的地址进行预解码的电路。解码器105是根据从预解码电路104输出的行预解码信号生成用于选择要访问的字线WL的行选择信号的电路。WL驱动器106是根据行预解码信号驱动字线WL的电路。
[0036] 字线WL是用于选择存储器单元阵列110中的一个任意行的信号线。位线BL是用于输出与选择的字线WL连接的闪速存储器单元的存储器单元电流的信号线。
[0037] 读出放大器电路107是读出位线BL的电流并输出从存储器单元阵列110读取的值的电路,并且其包括读出放大器SA1和SA2以及晶体管Tr。晶体管Tr是切换与输入到读出放大器SA1或SA2的位线BL的连接状态的开关。注意,尽管一对位线通过特定地址从多对位线中选择并且在实际配置中连接到读出放大器,但是在图2中以代表性方式将位线选择电路示为开关2以便简化图。读出放大器控制电路108是控制读出放大器电路107的操作的控制电路。注意,读出放大器电路107和读出放大器控制电路108也可以称为确定电路。
[0038] 输出驱动器109是通过锁存器电路L锁存从读出放大器电路107输出的值,然后将该值作为读取结果输出到闪速存储器100的外部的电路。
[0039] 存储器单元阵列110包括多个闪速存储器单元,这些闪速存储器单元是可重写非易失性存储器单元,其位置由字线WL和位线BL指定。包括在存储器单元阵列110中的闪速存储器单元被分类为形成数据存储器单元150的闪速存储器单元和形成状态存储器单元151的闪速存储器单元。
[0040] 数据存储器单元150对应于图1中的数据存储器单元2。数据存储器单元150是包括由存储器单元M1a和存储器单元M1b组成的一对存储器单元的存储器单元区域。数据存储器单元150通过以下两个存储器单元存储1位数据:存储器单元M1a和存储器单元M1b。例如,当在数据存储器单元150中存储数据“0”时,存储器单元M1a被设置为高阈值电压状态,并且存储器单元M1b被设置为低阈值电压状态,并且当在数据存储器单元150中存储数据“1”时,存储器单元M1a被设置为低阈值电压状态,并且存储器单元M1b被设置为高阈值电压状态。
[0041] 在图2所示的示例中,为每个字线WL放置32个数据存储器单元150。具体地,对于每个字线WL,使用64个存储器单元作为用于数据存储器单元150的存储器单元。注意,这些数字仅仅是示例,并且理所当然可以为每个字线WL放置任意数量的数据存储器单元150。在图2所示的示例中,32个数据存储器单元150分别存储数据D31至D0。数据D31至D0中的每一个都是1位数据。
[0042] 通过互补读取模式读取存储在数据存储器单元150中的数据。因此,数据存储器单元150的两个位线BL(即,存储器单元M1a的位线BL和存储器单元M1b的位线BL)连接到读出放大器SA1。具体地,两个位线BL连接到读出放大器SA1,以读出存储器单元M1a和存储器单元M1b之间的电流差。更具体地,位线BL通过晶体管Tr连接到读出放大器SA1的输入侧。
[0043] 读出放大器SA1是通过比较流经数据存储器单元150的一个存储器单元M1a的电流(存储器单元电流)和流经数据存储器单元150的另一个存储器单元M1b的电流(存储器单元电流)来确定存储在数据存储器单元150中的数据的值的电路。读出放大器SA1将所确定的数据值作为读取结果输出到输出驱动器109。结果,从输出驱动器109输出数据D31到D0。
[0044] 状态存储器单元151对应于图1中的状态存储器单元3。在本示例性实施例中,状态存储器单元151是包括四个存储器单元M2a、M2b、M2c和M2d的存储器单元区域。状态存储器单元151存储状态标志并且通过参考读取模式读取。注意,状态标志写入控制可以由任意控制电路执行。例如,可以通过写入电路102或者通过诸如闪速存储器定序器的控制电路来执行控制。存储器单元M2a、M2b、M2c和M2d中的每一个可以存储1位信息。在该示例性实施例中,具有相同值的状态标志被存储在存储器单元M2a、M2b、M2c和M2d中的每一个中。具体地,作为1位信息的状态标志的值被存储在所有存储器单元M2a、M2b、M2c和M2d中。因此,在该示例性实施例中,在状态存储器单元151的每个存储器单元中存储大致相同的状态标志。
[0045] 在该示例性实施例中,存储在状态存储器单元151的每个存储器单元中的状态标志是指示数据存储器单元150的数据写入状态的标志。更具体地,其是指示数据存储器单元150是否处于写入数据的状态或者针对连接到相同字线WL的32个数据存储器单元150中的每一个擦除数据的状态的标志。写入数据的状态,换句话说,是数据被存储或数据有效的状态。同样,擦除数据的状态,换句话说,是数据未被写入或数据无效的状态。
[0046] 在该示例性实施例中,当数据存储器单元150处于擦除状态时,状态标志值“1”被存储在存储器单元M2a、M2b、M2c和M2d中的每一个中。因此,例如,存储器单元M2a、M2b、M2c和M2d中的每一个都被设置为低阈值电压状态。另一方面,当数据存储器单元150处于写入数据的状态时,状态标志值“0”被存储在存储器单元M2a、M2b、M2c和M2d中的每一个中。因此,例如,存储器单元M2a、M2b、M2c和M2d中的每一个都被设置为高阈值电压状态。
[0047] 尽管在本示例性实施例中状态存储器单元151由四个存储器单元组成,但这仅仅是示例,并且状态存储器单元151可以由一个或多个存储器单元组成。此外,尽管在本示例性实施例中将一个状态存储器单元151放置为指示连接到相同字线WL的32个数据存储器单元150的写入状态的状态标志,但是可以对于N个数据存储器单元150(N是一个或多个的整数)放置一个状态存储器单元151。
[0048] 通过参考读取模式读取存储在状态存储器单元151中的状态标志。因此,状态存储器单元151的位线BL连接到读出放大器SA2,其中参考电流Iref能够流经的信号线IL连接到输入侧。具体地,位线BL和信号线IL连接到读出放大器SA2,以读出状态存储器单元151的电流和参考电流之间的电流差。具体地,在本示例性实施例中,存储器单元M2a、M2b、M2c和M2d的位线BL连接到读出放大器SA2。注意,更具体地,位线BL通过晶体管Tr连接到读出放大器SA2。
[0049] 读出放大器SA2是通过比较流经状态存储器单元151的存储器单元的电流(存储器单元电流)的总和与参考电流来确定存储在状态存储器单元151中的状态标志的值的电路。具体地,读出放大器SA2通过将存储器单元M2a的存储器单元电流、存储器单元M2b的存储器单元电流、存储器单元M2c的存储器单元电流和存储器单元M2d的存储器单元电流的总和电流与参考电流进行比较确定状态标志的值。因此,将与存储器单元电流进行比较的参考电流Iref流经的信号线IL连接到读出放大器SA2的输入侧。信号线IL连接到提供参考电流Iref的恒流源CCS1。读出放大器SA2将所确定的状态标志值作为读取结果输出到输出驱动器109。由此从输出驱动器109输出状态标志。
[0050] 如上所述,响应于来自外部的读取请求,闪速存储器100可以输出数据D31至D0和状态标志。
[0051] 下面描述通过参考读取模式执行读取的读出放大器SA2的操作和通过互补读取模式执行读取的读出放大器SA1的操作。首先,描述读出放大器SA2的操作。图3是解释通过参考读取模式执行读取的读出放大器SA2的视图。在图3中,上部视图是示出读出放大器SA2的输入/输出关系的示意图,并且下部视图是示出输入到读出放大器SA2的信号线的电压的时间迁移的曲线图。注意,图3图示状态存储器单元151仅包括一个存储器单元的情况,以便更容易理解构成状态存储器单元151的存储器单元的数量的差的影响。具体地,在图3的示例中,存储器单元M2a的位线BL和参考电流Iref可以流经的信号线IL连接到读出放大器SA2的输入侧。
[0052] 如图3的曲线图所示,在参考读取模式中,通过读出放大器控制电路108的控制,连接到存储器单元M2a的位线BL和信号线IL被预充电以到达特定电压。之后,在特定的放电开始时刻t1,通过控制读出放大器控制电路108,执行通过流经存储器单元M2a的存储器单元电流的位线BL的放电和通过参考电流Iref的信号线IL的放电。然后,在特定的读出时刻t2,读出放大器SA2读出位线BL的电压与信号线IL的电压之间的电压差,从而确定存储在存储器单元M2a中的值。注意,在放电期间位线BL的电压降取决于流经位线BL的电流值(存储器单元电流的电流值),并且随着电流增加,电压降增加。此外,存储器单元电流的电流值取决于存储器单元的阈值电压。另一方面,在放电期间信号线IL的电压降取决于流经信号线IL的参考电流的电流值。因此,读出放大器SA2在放电之后通过比较位线BL的电压和信号线IL的电压来比较存储器单元电流和参考电流。读出放大器SA2基于比较结果确定存储值。
[0053] 为了正确地读取存储值,存储器单元M2a的信号线IL的电压与位线BL的电压之间的差需要等于或大于可读出电压差。更具体地,为了正确地读取例如为“0”的高阈值电压状态下的存储器单元M2a的值,存储器单元M2a的信号线IL的电压与位线BL的电压之间的差需要在读出时刻t2处等于或大于可读出电压差,如图3的曲线图所示(第一条件)。同样地,为了正确地读取例如为“1”的低阈值电压状态下的存储器单元M2a的值,存储器单元M2a的信号线IL的电压与位线BL的电压之间的差需要在读出时刻t2处等于或大于可读出电压差,如图3的曲线图所示(第二条件)。因为需要正确地读取数据写入状态处于高阈值电压状态的存储器单元M2a的值和其处于低阈值电压状态的存储器单元M2a的值两者,所以第一条件和第二条件两者都需要被满足。
[0054] 接下来,在下文中描述读出放大器SA1的操作。图4是解释通过互补读取模式执行读取的读出放大器SA1的视图。在图4中,上部视图是示出读出放大器SA1的输入/输出关系的示意图,并且下部视图是示出输入到读出放大器SA1的信号线的电压的时间迁移的曲线图。
[0055] 如图4的曲线图所示,在互补读取模式中,通过控制读出放大器控制电路108连接到存储器单元M1a的位线BL和连接到存储器单元M1b的位线BL被预充电以到达特定电压。之后,在特定的放电开始时刻t1,通过控制读出放大器控制电路108,执行通过流经存储器单元M1a的存储器单元电流的位线BL的放电和通过流经存储器单元M1b的存储器单元电流的位线BL的放电。然后,在特定的读出时刻t2,读出放大器SA1读出两个位线BL之间的电压差,从而确定存储在数据存储器单元150中的值。以这样的方式,在放电之后读出放大器SA1通过比较两个位线BL的电压来比较存储器单元M1a和M1b的存储器单元电流。读出放大器SA1基于比较结果确定存储值。
[0056] 在互补读取模式下在存储器单元中存储值的状态下,存储器单元M1a和M1b中的一个存储器单元处于高阈值电压状态,而另一个存储器单元处于低阈值电压状态。因此,为了在互补读取模式下正确读取存储值,只需要处于高阈值电压状态的存储器单元的位线BL的电压与处于低阈值电压状态的存储器单元的位线BL的电压之间的差等于或大于可读出电压差。因此,当存储器单元处于高阈值电压状态时的位线BL的电压与当存储器单元处于低阈值电压状态时的位线BL的电压之间的差可以小于处于参考读取模式的位线BL的电压之间的差。
[0057] 在下文中描述当关注由温度条件和电压条件引起的存储器单元电流的变化时参考读取模式和互补读取模式之间的差。存储器单元中的电流量取决于温度条件和电压条件趋于变化。图5是解释通过参考读取模式进行读取的读出放大器SA2中的电流量的变化的影响的图。在图5中,上部视图是示出读出放大器SA2的输入/输出关系的示意图,并且下部视图是示出输入到读出放大器SA2的信号线的电压的时间迁移的曲线图。注意,图5与图3相同,示出状态存储器单元151仅包括一个存储器单元的情况。
[0058] 在参考读取模式中,如上所述需要满足第一条件和第二条件两者。因此,当存储器单元M2a处于高阈值电压状态时位线BL的电压的变化的下限与信号线IL的电压之间的差需要等于或大于可读出电压差,并且当存储器单元M2a处于低阈值电压状态时位线BL的电压的变化的上限与信号线IL的电压之间的差需要等于或大于可读出电压差。因此,在参考读取模式中,当考虑存储器单元电流的变化时与当不考虑存储器单元电流的变化时相比,需要更大的电压差。
[0059] 图6是解释通过互补读取模式执行读取的读出放大器SA1中的电流量变化的影响的视图。在图6中,上部视图是示出读出放大器SA1的输入/输出关系的示意图,并且下部视图是示出输入到读出放大器SA1的信号线的电压的时间迁移的曲线图。取决于温度条件和电压条件的存储器单元电流的变化对于处于高阈值电压状态的存储器单元和处于低阈值电压状态的存储器单元具有相同的特性。具体地,在读出时刻t2,当存储器单元M1a的位线BL的电压受到变化的影响时,存储器单元M1b的位线BL的电压也以相同的方式受到影响。因此,在互补读取模式中,如果处于高阈值电压状态的存储器单元的位线BL的电压的变化的上限与处于低阈值电压状态的存储器单元的位线BL的电压的变化的上限之间的电压差或处于高阈值电压状态的存储器单元的位线BL的电压的下限与处于低阈值电压状态的存储器单元的位线BL的电压的下限之间的电压差等于或大于可读出电压差,则数据可以被正确地读取。因此,在互补读取模式下,由于这样的原理,不存在由温度条件和电压条件导致的存储器单元电流变化的影响。
[0060] 如上所述,当考虑到变化时,在与参考读取模式中的差相比的互补读取模式中,能够进一步减小当存储器单元处于高阈值电压状态时位线BL的电压与当存储器单元处于低阈值电压状态时位线BL的电压之间的差。能够减小处于高阈值电压状态的位线BL的电压和处于低阈值电压状态的位线BL的电压之间的电压差的事实意味着能够减小处于高阈值电压状态的阈值电压与处于低阈值电压状态的阈值电压之间的差。因此,一般来说,即使在被设定为高阈值电压状态的存储器单元和被设定为低阈值电压状态的存储器单元之间的阈值电压的差随着写入次数和擦除次数的增加或数据保留周期的增加而减小的情况下,在互补读取模式中也能够正确地读取数据。因此,一般来说,互补读取模式具有比参考读取模式更好的数据保持特性。
[0061] 尽管互补读取模式具有这样的优点,但是擦除之后的读取结果是不确定的,如前所述。另一方面,在参考读取模式中,可以定义擦除之后的值,因为它是通过使用参考电流进行比较而读取的。这是因为通过擦除设定为高阈值电压状态的存储器单元的位线BL的电压低于信号线IL的电压。根据该示例性实施例的闪速存储器100包括通过互补读取模式读取的数据存储器单元150和通过参考读取模式读取的状态存储器单元151。由此,在闪速存储器100中能够在擦除之后唯一地定义状态标志的值,并通过互补读取模式存储数据。
[0062] 优选通过参考读取模式读取的状态存储器单元151可以实现与互补读取模式相同的保持特性。通过增加构成状态存储器单元151的存储器单元的位线BL的电压与在读出时刻的信号线IL的电压之间的差,可以实现与互补读取模式相同的保持特性。这可以通过将具有相同值的多个存储器单元连接到位线BL来获得更大的存储器单元电流来实现。因此,在根据该示例性实施例的闪速存储器100中,状态存储器单元151包括多个闪速存储器单元,其中存储了相同值的状态值。
[0063] 作为示例描述了在参考读取模式中一个存储器单元M2a保持值并且四个存储器单元M2a至M2d保持相同值的情况之间的差。图7是解释在通过参考读取模式在一个存储器单元M2a中保持值的情况下的读出放大器SA2的视图。在图7中,上部视图是示出读出放大器SA2的输入/输出关系的示意图,并且下部视图是示出输入到读出放大器SA2的信号线的电压的时间迁移的曲线图。注意,该曲线图考虑了存储器单元电流的变化。在图7所示的示例中,在读出时刻t2没有实现读出所需的电压差。
[0064] 图8是解释在通过参考读取模式在四个存储器单元M2a至M2d中保持相同值的情况下的读出放大器SA2的视图。在图8中,上部视图是示出读出放大器SA2的输入/输出关系的示意图,并且下部视图是示出输入到读出放大器SA2的信号线的电压的时间迁移的曲线图。注意,该曲线图考虑了存储器单元电流的变化。通过将四个存储器单元并联连接到读出放大器SA2,能够增加处于高阈值电压状态的位线BL的电压和处于低阈值电压状态的位线BL的电压之间的差。注意,在图8的曲线图中,参考电流的电流值被设置使得信号线IL的电压是处于高阈值电压状态的位线BL的电压和处于低阈值电压状态的位线BL的电压之间的电压。
[0065] 因此,处于高阈值电压状态的存储器单元M2a至M2d的位线BL的电压的变化的下限与信号线IL的电压之间的差以及处于低阈值电压状态的存储器单元M2a至M2d的位线BL的电压的变化的上限与信号线IL的电压之间的差可以等于或大于读出所需的电压差。从而能够正确读取该值。以这种方式,因为在该示例性实施例中通过参考读取模式读取的状态存储器单元151包括多个闪速存储器单元,所以与状态存储器单元151仅包括一个闪速存储器的情况相比,能够改进保持特性。注意,尽管在本示例性实施例中作为示例使用四个存储器单元作为状态存储器单元151的一个集合,但该数量仅是示例。该数量可以基于实验、模拟等来确定,以便即使用与在互补读取模式中的数据存储器单元150相同的写入的次数和擦除的次数或保留周期之后也生成足够的电压差。
[0066] 因此,在根据该示例性实施例的闪速存储器100中,如下读取状态存储器单元151。首先,通过控制读出放大器控制电路108,分别连接到存储器单元M2a至M2d和信号线IL的位线BL被预充电到达特定电压。之后,在特定的放电开始时刻t1,通过控制读出放大器控制电路108,执行通过流经存储器单元M2a至M2d的电流的总和电流的位线BL的放电和通过参考电流Iref的信号线IL的放电。然后,在特定的读出时刻t2,读出放大器SA2通过比较放电之后的位线BL的电压和信号线IL的电压来确定存储在状态存储器单元151中的值。换句话说,读出放大器SA2通过比较放电之后位线BL的电压和信号线IL的电压来实现总和电流与参考电流之间的比较,并由此确定该值。
[0067] 在根据本示例性实施例的闪速存储器100中,相同字线WL上的数据存储器单元150和状态存储器单元151优选同时被擦除。这是因为,当数据存储器单元150处于擦除状态时,保证获得指示擦除状态的状态标志值作为状态存储器单元151的读取结果。此外,根据该示例性实施例的闪速存储器100被配置为使得状态存储器单元151的写入与数据存储器单元150在与状态存储器单元151相同的字线WL上的写入分开地执行。因此,通过在写入数据存储器单元150之后执行写入状态存储器单元151,当获得指示数据被写入数据存储器单元
150的状态的值作为状态标志值的读取结果时,保证有效数据被存储在数据存储器单元150中。注意,相同字线WL上的数据存储器单元150和状态存储器单元151可以彼此独立地被擦除,或者可以彼此同时地执行写入。这可以基于状态标志被用于指示的状态适当地选择。
[0068] 上面描述了根据第一示例性实施例的闪速存储器100。闪速存储器100包括通过参考读取模式读取的状态存储器单元3。因此,擦除之后的状态标志的读取结果被唯一地定义。此外,在本示例性实施例中,状态标志是指示数据存储器单元150的数据写入状态的标志。因此,即使在擦除之后,闪速存储器100也可以准确地确定数据存储器单元150是否处于写入数据或擦除数据的状态。
[0069] 此外,通过参考读取模式读取的状态存储器单元151包括存储相同值的状态值的多个闪速存储器单元。由此可以改进通过参考读取模式读取的状态存储器单元151的保持特性。
[0070] 此外,根据闪速存储器100,能够以低成本创建具有良好保持特性的闪速存储器。为了描述这一点,假设通过参考读取模式读取32位数据的情况,其不同于根据该示例性实施例的闪速存储器100。假设在参考读取模式下,通过使用四个存储器单元获得与互补读取模式相同的保持特性。在这种情况下,与在互补读取模式下实现数据存储器单元150的情况相比,需要两倍数量的存储器单元。具体地,在这种情况下,需要用于数据存储器单元150的
128(=32×4)个存储器单元。另一方面,根据该示例性实施例的闪速存储器100可以用总共
68个存储器单元来实现,其是用于数据存储器单元150的64(=32×2)个存储器单元和用于状态存储器单元151的4个存储器单元的总和。因此可以用较少数量的存储器单元获得良好的保持特性。
[0071] <第二示例性实施例>
[0072] 下面描述第二示例性实施例。图9是示出根据第二示例性实施例的闪速存储器200的配置示例的框图。闪速存储器200与根据第一示例性实施例的闪速存储器100的不同之处在于,由输出驱动器111代替输出驱动器109。注意,在该示例性实施例中,假定擦除同时进行并且还在相同字线WL上的数据存储器单元150和状态存储器单元151中同时执行写入。
[0073] 输出驱动器111与输出驱动器109的不同之处在于,添加了执行来自数据存储器单元150的读取值和来自状态存储器单元151的读取值之间的逻辑或的逻辑和电路OR(或)。在该配置中,输出驱动器111可以执行来自数据存储器单元150的读取值与来自状态存储器单元151的读取值之间的逻辑或,并且输出结果作为数据存储器单元150的读取结果。具体地,由读出放大器SA1读取的数据D31至D0与状态标志之间的逻辑或被执行。然后,作为逻辑或运算的结果的数据E31至E0被输出作为数据存储器单元150的读取结果。注意,输出驱动器111也可以被称为输出单元(输出电路)。
[0074] 因为通过互补读取模式读取数据存储器单元150,所以在擦除状态下的读取值没有被定义。另一方面,因为通过参考读取模式读取状态存储器单元151,所以与擦除数据存储器单元150一起执行擦除的状态存储器单元151的读取值是“1”。因此,当数据存储器单元150处于擦除状态时,在逻辑运算之后作为读取结果而获得的数据E31至E0的值全部是“1”。
另一方面,当数据被写入数据存储器单元150中时,与写入数据存储器单元150一起执行写入的状态存储器单元151的读取值是“0”。因此,当数据被写入数据存储器单元150时,在逻辑运算之后作为读取结果获得的数据E31至E0的值与数据D31至D0的值相同。
[0075] 为参考读取闪速存储器开发的算法或软件通常基于存储器单元处于擦除状态时的数据读取结果被固定为“1”的假设来确定数据的状态。在根据该示例性实施例的闪速存储器200中,来自数据存储器单元150的读取值和状态标志之间的逻辑或被输出作为数据存储器单元150的读取结果。因此,作为处于擦除状态的存储器单元的读取结果,可以获得与只在参考读取模式下完成读取的闪速存储器中相同的结果。因此,根据该示例性实施例,也能够使用为参考读取闪速存储器也为是包括互补读取模式的闪速存储器的闪速存储器200而开发的算法或软件。
[0076] <第三示例性实施例>
[0077] 下面描述第三示例性实施例。第三示例性实施例与第二示例性实施例的不同之处在于可以将由于错误等而中断的指示写入数据存储器单元150的中断检测标志存储在闪速存储器中。图10是示出在其上安装根据第三示例性实施例的闪速存储器300的微控制器10的配置示例的框图。微控制器10也可以被称为存储装置。
[0078] 如图10所示,微控制器10包括CPU(中央处理单元)400、RAM(随机存取存储器)500、闪速存储器300、电压监视电路600、闪速存储器定序器700和外围总线800。外围总线800是CPU 400、电压监视电路600和闪速存储器定序器700连接到的总线。
[0079] CPU 400基于存储在闪速存储器300或RAM 500中的程序(软件)和数据执行处理。注意,当由于在闪速存储器300的写入或擦除等期间不能执行闪速存储器300的读取时,CPU 
400可以通过预先将程序从闪速存储器300复制到RAM 500而基于程序继续处理。RAM 500是存储由CPU 400要使用的数据等的易失性存储器。闪速存储器300与根据第二示例性实施例的闪速存储器200基本相同,并且不同之处在于具有存储中断检测标志的存储器区域。稍后描述闪速存储器300的细节。
[0080] 电压监视电路600是监视提供给微控制器10的电源电压的电路。电压监视电路600也可以称为电压检测单元(电压检测电路)。注意,提供给微控制器10的电源电压是微控制器10的元件操作所需的电源的电压,并且其包括例如提供给闪速存储器300的电源电压。电压监视电路600检测到电源电压变为等于或低于特定值。当电压监视电路600检测到电源电压变为等于或低于特定值时,它向闪速存储器定序器700输出电压降低检测信号。在以下描述中,该特定值被称为电压降低检测电平。注意,在本示例性实施例中,电压监视电路600包括存储用于确定是否输出电压降低检测信号的上述电压降低检测电平的存储器单元(例如寄存器),以及通过重写存储单元的内容可以改变电压降低检测电平。由此能够灵活地改变用于确定电压降低检测信号的输出的阈值。具体地,为了进行改变,CPU 400可以重写与外围总线800连接的电压监视电路600的存储单元的存储内容。注意,电压监视电路600可以包括存储单元,该存储单元存储用于确定电压监视目标的设定值。
[0081] 在该示例性实施例中,CPU 400通过闪速存储器定序器700执行闪速存储器300的写入和擦除。注意,CPU 400从闪速存储器300读取数据可以通过闪速存储器定序器700执行,或者可以直接执行而不通过闪速存储器定序器700。
[0082] 闪速存储器定序器700是控制闪速存储器300的写入、擦除等的电路。闪速存储器定序器700也可以被称为控制单元(控制电路)。闪速存储器定序器700包括地址指定寄存器,用于存储用于指定要执行写入或擦除的闪速存储器300的地址的地址数据。在地址指定寄存器中,存储从CPU 400发送的地址数据。此外,闪速存储器定序器700包括用于存储指示写入、擦除等的命令的命令指定寄存器。在命令指定寄存器中,存储从CPU 400发送的命令数据。
[0083] CPU 400以预定顺序将命令数据写入闪速存储器定序器700中,由此指定要由闪速存储器定序器700执行的控制的细节。闪速存储器定序器700在由写入地址指定寄存器的地址数据指示的闪速存储器300中的地址上执行与写入命令指定寄存器的一系列命令数据相对应的控制。
[0084] 作为具体示例,参照图11描述闪速存储器定序器700的命令。如图11所示,准备数据写入命令和数据擦除命令作为控制闪速存储器定序器700的命令。
[0085] 在将数据写入闪速存储器300的情况下,CPU 400通过外围总线800将地址数据写入地址指定寄存器,从而指定闪速存储器300中要写入数据的地址。然后,CPU 400将指示写入命令的命令数据顺序地写入命令指定寄存器。更具体地,当将4字节数据写入闪速存储器300时,CPU 400将命令数据H'E8、H'02、4字节数据(2字节数据×2)和H'D0顺序地写入该命令指定寄存器,如图11所示。另外,当将16字节数据写入闪速存储器300时,CPU 400将命令数据H'E8、H'08、16字节数据(2字节数据×8)和H'D0顺序地写入命令指定寄存器,如图11所示。注意“H'”是指随后的数值以十六进制表示。
[0086] 响应于此,闪速存储器定序器700将写入命令指定寄存器的数据写入由写入地址指定寄存器中的地址数据指示的闪速存储器300中的地址。具体地,当在第二次写入中写入H'02时,闪速存储器定序器700将在第三次至第四次写入中所写入的4字节数据写入从由地址数据指定的地址开始的4字节区域。另一方面,当在第二次写入中写入H'08时,闪速存储器定序器700将第三次至第十次写入中所写入的16字节数据写入从由地址数据指定的地址开始的16字节区域。
[0087] 在擦除闪速存储器300中的数据的情况下,CPU 400通过外围总线800将地址数据写入地址指定寄存器,从而指定闪速存储器300中将从其擦除数据的块的地址。然后,CPU 400将指示数据擦除命令的命令数据顺序地写入命令指定寄存器。更具体地,CPU 400将命令数据H'20和H'D0顺序地写入命令指定寄存器。响应于此,闪速存储器定序器700擦除由写入地址指定寄存器中的地址数据指示的闪速存储器300中的地址中的块的数据。
[0088] 下面描述根据该示例性实施例的闪速存储器300。图12是示出根据第三示例性实施例的闪速存储器300的配置示例的框图。闪速存储器300与根据第二示例性实施例的闪速存储器200的不同之处在于存储器单元阵列110包括中断检测存储器单元(中断检测存储器电路)152。因此,在闪速存储器300中,数据存储器单元150和状态存储器单元151的配置和操作与根据第二示例性实施例的闪速存储器200的配置和操作相同。下面描述不同于第二示例性实施例中的配置和操作。注意,在该示例性实施例中假设中断检测存储器单元152与数据存储器单元150和状态存储器单元151在相同字线WL上同时被擦除作为示例。还假定中断检测存储器单元152可以在相同字线WL上在与数据存储器单元150和状态存储器单元151不同的时刻执行写入。
[0089] 包括在根据本示例性实施例的存储器单元阵列110中的闪速存储器单元分类为形成数据存储器单元150的闪速存储器单元、形成状态存储器单元151的闪速存储器单元以及形成中断检测存储器单元152的闪速存储器单元。
[0090] 在该示例性实施例中,中断检测存储器单元152是包括四个存储器单元M3a、M3b、M3c和M3d的存储器单元区域。尽管中断检测存储器单元152与状态存储器单元151的不同之处在于其存储中断检测标志,但其具有与状态存储器单元151相同的配置。因此,中断检测存储器单元152包括通过参考读取模式读取的闪速存储器单元。通过这些闪速存储器单元,存储指示是否存在写入中断的中断检测标志。
[0091] 因为中断检测存储器单元152是通过参考读取模式读取的存储器单元,所以存储器单元M3a、M3b、M3c和M3d中的每一个可以存储1位信息。然而,与状态存储器单元151一样,具有相同值的中断检测标志被存储在存储器单元M3a、M3b、M3c和M3d中的每一个中。具体地,是1位信息的中断检测标志的值被存储在所有的存储器单元M3a、M3b、M3c和M3d中。因此,在该示例性实施例中,中断检测存储器单元152实质上存储1位信息。
[0092] 如上所述,存储在中断检测存储器单元152中的中断检测标志是指示对数据存储器单元150的写入已被中断的标志。更具体地,它是指示在写入连接到相同字线WL的32个数据存储器单元150期间是否发生写入中断的标志。
[0093] 在该示例性实施例中,当不中断对数据存储器单元150的写入时,将“1”作为中断检测标志值存储在存储器单元M3a、M3b、M3c和M3d中的每一个中。因此,例如,存储器单元M3a、M3b、M3c和M3d中的每一个都被设置为低阈值电压状态。另一方面,当中断对数据存储器单元150的写入时,在存储器单元M3a、M3b、M3c和M3d中的每一个中存储“0”作为中断检测标志值。因此,例如,存储器单元M3a、M3b、M3c和M3d中的每一个都被设置为高阈值电压状态。
[0094] 虽然在本示例性实施例中中断检测存储器单元152由四个存储器单元组成,但这仅仅是示例,并且中断检测存储器单元152可以由一个或多个存储器单元组成。然而,应注意,为了获得期望的保持属性,中断检测存储器单元152优选地由多个存储器单元组成,就像状态存储器单元151一样。另外,虽然在本示例性实施例中一个中断检测存储器单元152被放置为指示连接到相同字线WL的32个数据存储器单元150的状态的中断检测标志,但是可以将一个中断检测存储器单元152放置为用于N个(N是一或多于一的整数)数据存储器单元150。
[0095] 通过参考读取模式读取存储在中断检测存储器单元152中的中断检测标志。因此,中断检测存储器单元152的位线BL连接到读出放大器SA3,其中通过其参考电流Iref可以流经的信号线IL连接到输入侧。具体地,位线BL和信号线IL连接到读出放大器SA3,以便读出中断检测存储器单元152的电流和参考电流之间的电流差。具体地,在本示例性实施例中,存储器单元M3a、M3b、M3c和M3d的位线BL连接到读出放大器SA3。注意,更具体地,位线BL通过晶体管Tr连接到读出放大器SA3。
[0096] 与读出放大器SA2一样,读出放大器SA3是通过比较流经中断检测存储器单元152的存储器单元的电流(存储器单元电流)与参考电流之和来确定存储在中断检测存储器单元152中的中断检测标志的值的电路。因此,将要与存储器单元电流进行比较的参考电流Iref流经的信号线IL连接到读出放大器SA3的输入侧。信号线IL连接到提供参考电流Iref的恒流源CCS2。读出放大器SA3将所确定的中断检测标志值作为读取结果输出到输出驱动器109。由此从输出驱动器109输出中断检测标志。
[0097] 如上所述,闪速存储器300可以响应于来自外部的读取请求而输出数据D31至D0、状态标志和中断检测标志。
[0098] 以下将详细描述由于某些原因而使提供给微控制器10的电源电压降低至低于指定电压的情况。当在写入数据存储器单元150和状态存储器单元151期间电源电压降低时,在可以保持写入可以正常执行的电压期间的时间周期内写入没有正常完成,并且可能出现在存储器单元中存储错误的值。数据存储器单元150和状态存储器单元151由总共68个存储器单元组成。另一方面,中断检测存储器单元152由4个存储器单元组成。因此,构成中断检测存储器单元152的存储器单元的数量小于构成数据存储器单元150和状态存储器单元151的存储器单元的数量。此外,构成中断检测存储器单元152的存储器单元的数量小于数据存储器单元150中的存储器单元的数量。在用于写入存储器单元的写入电流的当前值相同的情况下,当要写入的存储器单元的数量较小时在较短的时间内完成写入。因此,可以在比写入数据存储器单元150和状态存储器单元151短的时间内完成中断检测标志的写入。
[0099] 在该示例性实施例中,当电压监视电路600检测到在写入数据存储器单元150期间电源电压变为等于或低于电压降低检测电平时,闪速存储器定序器700执行控制以中断写入数据存储器单元150并且将指示中断的中断检测标志值写入中断检测存储器单元152。因此,在电源电压降低之后,在电压变为低于可以正常执行写入的电平之前,写入处理被中断并执行中断检测标志的写入。因为如上所述可以在短时间内完成中断检测标志的写入,所以可以正常完成中断检测标志的写入。此外,特别地,在本示例性实施例中,闪速存储器定序器700执行控制以在中断向数据存储器单元150的写入之后将指示中断的中断检测标志写入中断检测存储器单元152。由此,能够使中断检测存储器单元152的写入电流最大化。在向中断检测存储器单元152执行写入同时继续写入数据存储器单元150的情况下,写入电流以分布方式用于写入数据存储器单元150并写入中断检测存储器单元152两者。另一方面,在本示例性实施例中,在中断对数据存储器单元150的写入之后执行向中断检测存储器单元152的写入,从而能够仅将写入电流用于写入中断检测存储器单元152。由此能够进一步减小对中断检测存储器单元152的写入时间。
[0100] 在该示例性实施例中,电压监视电路600执行检测,以便在检测到电源电压的降低之后确保足够的时间用于写入中断检测存储器单元152以正常结束。下面参考图13描述决定设置到电压监视电路600的电压降低检测电平的方法。每单位时间的电源电压降低率可以通过微控制器10中的消耗电流以及电源侧的能力(例如,添加到电源线等的电容器的容量)来获得。因此,可以通过计算在根据该降低率写入中断检测标志所需的处理时间期间降低的电压值ΔV并将电压值ΔV添加到可写入电压的下限来获得电压降低检测电平。
[0101] 注意,因为对数据存储器单元150和状态存储器单元151的写入时间比对中断检测存储器单元152的写入时间长,所以在写入数据存储器单元150和状态存储器单元151所需的处理时间期间降低的电压值(其被称为ΔVds)大于上述值ΔV。因此,如果将ΔVds添加到可写入电压的下限,则超过了正常操作电压,从而无法设置电压降低检测电平。此外,如果在电源电压达到基于ΔV设定的电压降低检测电平之后继续向数据存储器单元150和状态存储器单元151写入,则存在写入不能在电源电压达到可写入电压的下限时完成。为了避免这种情况,在该示例性实施例中,设置电压降低检测电平并且执行写入中断控制,如上所述。
[0102] 下面描述根据该示例性实施例的微控制器10中的写入操作。图14是示出在写入数据存储器单元150期间闪速存储器定序器700的操作的示例的流程图。参考图14描述该操作。假设中断检测存储器单元152的擦除在图14所示的流程图的操作之前已经执行,并且在擦除期间设置的“1”被存储为中断检测标志值。
[0103] 在步骤10(S10)中,闪速存储器定序器700接收对数据存储器单元150的写入命令,并开始写入数据存储器单元150。具体地,在该示例性实施例中,同时执行写入数据存储器单元151的状态标志以及写入数据存储器单元150。
[0104] 当没有接收到来自电压监视电路600的电压降低检测信号时,闪速存储器定序器700继续处理,直到数据写入完成。另一方面,当在写入期间接收到来自电压监视电路600的电压降低检测信号时,闪速存储器定序器700开始写入中断检测标志。
[0105] 在该处理中,闪速存储器定序器700首先在步骤11(S11)中中断对数据存储器单元150的写入。具体地,在该示例性实施例中,闪速存储器定序器700中断对数据存储器单元
150的写入和状态存储器单元151的写入。接下来,在步骤12(S12)中,闪速存储器定序器700执行中断检测标志的写入。更具体地,在与已经在步骤10中执行了写入的数据存储器单元
150相对应的中断检测存储器单元152中执行中断检测标志的写入。当中断检测标志的写入完成时,“0”作为中断检测标志值存储到中断检测存储器单元152中。
[0106] 以上描述了第三示例性实施例。在该示例性实施例中,放置通过参考读取模式读取并存储指示是否发生写入中断的中断检测标志的中断检测存储器单元152。由此能够确定数据存储器单元150和状态存储器单元151中是否存在写入中断。如果通过互补读取模式读取中断检测标志,则当检测到中断并且中断检测标志过去已写入时,即使在中断检测存储器单元152中擦除之后也可以读取“0”。这可以导致无法确定中断的存在或不存在。另一方面,因为在该示例性实施例中通过参考读取模式读取中断检测存储器单元152,所以擦除状态中的值被唯一地定义,从而防止了上述问题。
[0107] 应该注意,尽管在本示例性实施例中同时执行写入并且在数据存储器单元150和状态存储器单元151中同时执行擦除,但是可以分开执行写入,并且可以分开执行擦除。
[0108] 此外,在本示例性实施例中,描述从包括在微控制器10中的电压监视电路600向闪速存储器定序器700通知电压降低的情况,并且闪速存储器定序器700控制通知之后的处理作为示例。但是,这可以通过其他配置来实现。例如,用于通知电压降低的方法可以是以下三种方法中的任何一种。
[0109] 通知方法1:通过微控制器10内部的电压监视电路进行检测,并且通过内部信号给出通知(作为第三示例性实施例描述的通知方法)。
[0110] 通知方法2:通过微控制器10外部的电源控制电路进行检测,并且通过微控制器10的中断端子给出通知。
[0111] 通知方法3:通过微控制器10外部的电源控制电路进行检测,并且通过微控制器10的重置端子给出通知。
[0112] 电压监视电路和电源控制电路也可以被称为电压检测单元(电压检测电路)。此外,例如,在通知之后关于电压降低的通知的目的地和处理方法可以是以下三种方法中的任何一种。
[0113] 控制方法1:关于电压降低的通知被给予闪速存储器定序器700。闪速存储器定序器700中断数据写入并执行中断检测标志的写入(作为第三示例性实施例描述的控制方法)。
[0114] 控制方法2:关于电压降低的通知被给予微控制器10的中断控制器(未示出)。中断检测标志的数据写入和写入的中断通过CPU 400的软件处理被指令给闪速存储器定序器700,并执行中断检测标志的写入。
[0115] 控制方法3:关于电压降低的通知被给予微控制器10的系统控制单元(未示出)。在除了闪速存储器定序器700和闪速存储器100之外的元件被重置的状态下,指示中断检测标志的写入的信号从系统控制单元输出到闪速存储器定序器700,并且闪速存储器定序器700中断数据写入并执行中断检测标志的写入。
[0116] 例如,上述通知方法和控制方法的组合可以是以下五种组合。具体地,组合通知方法1和控制方法1的示例性实施例,组合通知方法1和控制方法2的示例性实施例,组合通知方法2和控制方法1的示例性实施例,组合通知方法2和控制方法2的示例性实施例,组合通知方法3和控制方法3的示例性实施例可以作为组合的示例来实现。
[0117] 虽然使用以上若干示例性实施例具体描述了本发明人完成的本发明,但是本发明不限于上述示例性实施例,并且可以在不脱离本发明的范围的情况下进行各种改变和修改。例如,虽然在第三示例性实施例中将根据第二示例性实施例的中断检测存储器单元152添加到闪速存储器200,但是中断检测存储器单元152可以被添加到根据第一示例性实施例的闪速存储器100中。
[0118] 本领域的普通技术人员可以根据需要组合第一至第三实施例。
[0119] 虽然已经根据若干实施例描述了本发明,但是本领域的技术人员将认识到,可以在所附权利要求书的精神和范围内以各种修改来实践本发明,并且本发明不限于上述示例。
[0120] 此外,权利要求的范围不受上述实施例的限制。
[0121] 此外,注意到,申请人的意图是包含所有权利要求要素的等同物,即使之后在审查期间进行了修改。

当前第1页 第1页 第2页 第3页