闪存装置及其数据保护方法

文档序号:6768597阅读:182来源:国知局
专利名称:闪存装置及其数据保护方法
技术领域
本发明涉及一种闪存装置及其数据保护方法,特别是涉及一种根据温度感测结果 而进行数据保护的闪存装置及其数据保护方法。
背景技术
闪速存储器是利用将电子注入或拉出悬浮栅极(floating gate)以进行数据存储 的非易失性(non-volatile)半导体存储元件,浮动栅极的作法是在编程闪速存储器的存 储单元(flash cell)时,将控制栅极(Control Gate)连接至高电压,并将漏极(drain)连 接至低电压间,通过此压差而使浮动栅极产生并保持一电压Vt。当将上述的高电压及低电 压移除时,由于浮动栅极被绝缘层所包裹,因此电子可以保存在浮动栅极中,达到保存电荷 (数据)的目的。闪速存储器因为具有耐震、容易控制、无噪音与低耗电等特性,近年来,闪存装置 (flash memory storage device)的应用日益普及。除了被用来作为随身使用的数据存储 媒介如大姆哥(thumb drive)、小型闪存装置(compact flash,简称CF卡)、安全数字存储 装置(secure digital,简称SD卡)、多媒体卡存储装置(multi media card,简称MMC卡) 等用途外,随着技术的进步,闪速存储器还被应用在个人计算机中,并企图取代传统硬盘的 地位,而被开发成为用以存储大量数据的固态硬盘(Solid State Drive,简称SSD)。依照不同的电路组合,闪速存储器可被分成不同种类,如与非门闪速存储器 (Nand-Flash memory)、或非门闪速存储器(Nor-flash memory)等。由于与非门闪速存储 器的抹写时间较快,且具有较高的存储密度及可擦除次数高出或非门闪速存储器十倍等特 性,因此就数据存储应用而言,皆以与非门闪速存储器为主。一般来说,闪存装置是由与非 门闪速存储器(Nand-Flash memory)与控制芯片所组成,市面上的与非门闪速存储器在工 艺技术上可被区分成单层式存储单元闪速存储器(Signal Level CellNand-Flash,简称为 SLC型闪速存储器)以及多层式存储单元闪速存储器(Multi Level Cell Nand-Flash,简 称为MLC型闪速存储器)两种类型。简单来说,SLC型闪速存储器内的浮动栅极只能存储一位的数据,而MLC型闪速存 储器的浮动栅极则能存储两位(或两位以上)的数据,因此后者的单位存储容量较大,但 MLC型闪速存储器具有写入数据的错误率较高,使用寿命较短、区块擦除时间及页写入时间 较长等缺失。尽管MLC型闪速存储器的功能不如SLC型闪速存储器,但MLC型闪速存储器 具有单价较低与较高数据密度(high density)的优点,因此就大量数据的存储应用而言, 特别是固态硬盘的情况,通常仍会选用MLC型闪速存储器。一般在读写闪速存储器时,为了避免数据的错误存取,会在存取闪速存储器的过 程顺带进行相关的数据管理控制,例如进行故障区块管理(BadBlock Management,简称为 BBM),目的是检测并标示闪速存储器内的问题区块,避免将数据写入问题区块内;利用平 均抹写存储区块技术(wear-leveling)来维持闪速存储器内的存储区块被平均写入的次 数,藉以降低特定区块被反复存取而减损其使用寿命;利用错误校正码(errorcorrectingcodes,简称ECC)对读写的数据进行错误检测与修正;此外,闪存装置内还可能提供相关的 控制机制,用来消除电力不稳定所造成的数据毁损或提升读写速度等。错误校正码的功能包含了位错误调校(Bit Error Correction)与位错误检测 (Bits Error Detection)两种类型,而根据系统的应用不同,目前习用技术可能使用汉明 码(Hamming Code)、瑞德所罗门码(Reed SolomomCode)、或是其它类型的错误校正码。无论所选用的错误校正码为哪一种类型,错误校正码的功能仍有其极限,S卩,一旦 闪速存储器内的错误数据过多时,错误校正码仍然无法将错误的数据加以复原,而这将使 得闪存装置所读取到的数据发生错误。举例来说,对于一个大小为4k bytes的页(page)来说,在使用时可能是通过两个 大小为浊bytes的配置单元(allocation unit)来存取,另外,一页的数据将搭配长度为 64bytes的错误校正码来辅助使用,这样长度的错误校正码配置可以让在同一页内的数据 内容的错误位数在32位以内时,找出错误的内容并加以修正。换句话说,错误校正码的功能达到极限而无法对闪速存储器内所存储的错误数据 内容加以调校时的情况,即于前述例子中,若是错误的位数超过32位时,错误校正码便无 法找出错误的内容并加以修正,其将导致数据毁损的情况,而这种现象对于数据存储装置 而言是相当致命的。由于错误校正码的功能有限,如何确保闪速存储器的数据存放是正确 的也相当令人关切,特别是对于最常被用来存储大量数据的MLC型闪速存储器来说,由于 本身在写入数据时的错误率较高而成为主要改善的标的。再者,由于闪速存储器采用浮动栅极的方式存储数据,其在高温的情况下,存 储在浮动栅极的电荷很容易流失,而在低温的情况下,电子将不易注入或拉出悬浮栅极 (floating gate),上述的情况皆会造成所存储的数据发生错误,而这种现象在工艺越趋精 密的情况将更为明显,为了避免存储在闪速存储器内的数据产生过多的错误,而错误校正 码又无法加以调校的情形,本发明便以此作为改进的目标。

发明内容
本发明提出一种闪存装置,其包含一存储模块,用以存储数据;一控制单元,电 连接于该存储模块,用以读写在该存储模块内的数据;以及一感测单元,电连接于该控制单 元,用以将一温度感测结果传送至该控制单元,且该控制单元根据该温度感测结果来决定 是否启动一数据保护动作。再者,本发明还提出一种闪存装置,其包含一存储模块,用以存储数据;以及一 控制单元,电连接于该存储模块,其中,当该闪存装置处于待机模式时,该控制单元读取该 存储模块内的一来源区段所存储的一区段数据并进行一错误检查,且若该错误检查的结果 符合一预设条件时,则对该区段数据进行错误校正,并将错误校正后的该区段数据存储于 该存储模块内的一目标区段。再者,本发明提出一种闪存装置的数据保护方法,该方法包含以下步骤取得一温 度感测结果;以及比较该温度感测结果是否超出一温度阈值,若是,则启动一数据保护动 作。再者,本发明提出另一种闪存装置的数据保护方法,该方法包含以下步骤当该闪 存装置处于待机模式时,读取一来源区段内的一区段数据并进行一错误检查;以及若该错
5误检查的结果符合一预设条件时,则对该区段数据进行一错误校正,并将错误校正后的该 区段数据另存储于一目标区段内。


本发明得藉由下列图式及说明,俾得更深入之了解
图1,其是本发明所使用的闪存装置示意图。
图2,其是本发明所提出的闪存装置的数据保护流程图。
附图符号说明
本发明附图中所包含的各组件列示如下
10闪存装置
101控制单元
103感测单元
105闪速存储器模块
107内部总线
20外部总线
12主机
S21 S27步骤
具体实施例方式请参见图1,其为本发明所使用的闪存装置示意图。闪存装置10中包括控制单 元101、感测单元103与闪速存储器模块105,其中闪速存储器模块105根据数据读取、写 入与擦除的方式而被进一步划分成很多的区块(block),其中每个区块又可被细分为多页 (pages),这些区块与页则被用来作为擦除数据与数据读取、写入时的单位。通过主机总线 20,主机(host) 12可对闪存装置10内的数据进行存取。基于闪速存储器的先天限制,存储器内的同一区块可被用来重复擦除及写入的次 数是有限的,因此控制单元101对个别闪速存储器内的区块使用情形,都必须加以掌握,藉 以避免数据错误过多而毁损的情况发生,而这正是控制单元101必须提供兼顾闪速存储器 模块105的故障区块管理功能、平均抹写存储区块技术与错误校正码的缘故。而本发明提 出以错误校正为核心作法,对闪速存储器模块105内的数据存取进行管理,藉以确保存储 在闪速存储器模块105的数据受到完善的保护。一般说来,主机12在对闪存装置10使用错误校正码的时机有二,分别为在主机12 将数据写入闪存装置10时,对数据进行运算并产生错误校正码,再通过控制单元101发出 写入指令将写入数据、错误校正码通过内部总线107写入闪速存储器模块105内;以及当主 机12读取闪速存储器模块105内的数据时,令控制单元101发出读取指令至闪速存储器模 块105,而使闪速存储器模块105同时输出读取数据以及错误校正码,经由内部总线107传 送至控制单元101 ;接着根据错误校正码来检测读取数据是否有错误。在判定读取数据无误时,控制单元101便通过主机总线20将读取数据传送至主机 12 ;反之,在判定读取数据有误时,控制单元101便通过错误校正码的算法来更正所读取的 数据,并将更正后的数据通过主机总线11传送至主机12。
除了在主机12读取闪速存储器模块105内的数据时,才利用所纪录的错误校正码 来对存储于闪速存储器模块105的数据进行校正功能外。本发明提出在该主机未与该控制 单元联系时,进行一数据保护动作,即主机12未对闪存装置10进行存取时,利用控制单元 101自行读取存储于闪速存储器模块105的一来源区段内的区段数据,并利用错误校正码 来对区段数据进行错误检查,并根据错误检查结果来决定是否对该区段数据进行错误校正 及存储。其中,若错误检查的结果符合预设条件时,则对区段数据进行错误校正,并将经过 错误校正后的区段数据另存储于闪速存储器模块105内的目标区段;若错误检查结果尚未 到达预设条件时,代表区段数据内的错误位数目尚可接受,则不需对此区段数据的内容进 行错误校正,亦不需另外存储。此处的预设条件可以根据错误校正码的能力来定义,延续前述现有技术的例子, 若是错误校正码可支持的能力是可检测出32位的错误位数并进行校正,则此处的阈值便 可以定义为8位或其它小于等于32位的位数值。设定错误位数作为阈值的目的在于藉此 当作检查错误的防护机制,亦即,在错误位数达到错误校正码的算法所能负担的极限前,将 已经有错的区段数据加以修正并存储至另一个区段。换句话说,根据本发明提出的数据保护动作,其通过控制单元101自行读出区段 数据并确认错误位数,并在发现错误位数达到预设的错误位阈值时,便利用错误校正码的 算法来将来源区段内的区段数据进行错误校正,并将经过错误校正后的区段数据另外存储 在新的目标区段内。当然,若是错误的数据位数尚未达预设的错误位阈值,则控制单元101 不需特别将读出的区段数据另外进行错误校正及存储。需注意的是,此处的错误位阈值可以根据系统需要而定义,例如在具有较大容量 的闪存装置10中,便可以将预设阈值的错误位数定义为较低的位数;或是针对同一个闪存 装置10,根据所存储的数据量不同而动态改变阈值的位数定义等。除了通过控制单元自行启动上述利用错误校正来进行的数据保护动作外,本发明 还提出一通过温度的感测结果来启动数据保护动作的方法,且除了利用错误校正的数据保 护动作外,本发明亦提出其它的数据保护动作。相较于常温的情形,由于闪速存储器在高温时,电荷流失的情形较为严重,而在低 温时电子不易注入或拉出悬浮栅极(floating gate),其数据的存储也较容易发生错误,为 了避免这样的情形,本发明提出利用电连接于控制单元101的感测单元103来将温度感测 结果传送给控制单元101,并根据温度感测结果是否超出一预设温度阈值来决定是否启动 数据保护动作。其中,温度阈值可为一温度上限阈值或一温度下限阈值。若温度感测结果 超出预设温度阈值,即温度感测结果高于预设温度上限阈值或低于预设温度下限阈值,则 启动数据保护动作;若温度感测结果未超出预设温度阈值,则进行一般的闪存装置的控制 动作。下面将以数据保护动作为错误校正的作法为实施例进一步作说明。当控制单元 101因应主机12的控制而将区段数据写入闪速存储器模块105内的一存储器来源区段时, 若温度感测结果高于温度上限阈值或低于温度下限阈值,则控制单元101会启动数据保护 动作,将写入于来源区段的区段数据进一步读取出来并进行错误检查,且若错误检查的结 果符合预设条件,即错误位阈值时,则对区段数据进行错误校正,并将错误校正后的区段数 据另存储于闪速存储器模块105内的一目标区段。
同样的,为了避免在高温或低温时,原本被存储在闪速存储器内的数据产生错误, 因此本发明还进一步提出控制单元101根据温度感测结果来启动并进行不同的数据保护 动作。请参见图2,其为本发明所提供的闪存装置的数据保护流程图。首先,先取得温度 感测结果(步骤S21);在取得温度感测结果后,接着对温度感测结果进行比对,看其是否超 出预设温度阈值,如高于温度上限阈值或低于温度下限阈值(步骤S2!3);根据比对的结果, 若尚未超出预设温度阈值,则进行一般的闪存装置的控制动作(步骤S27);另一方面,若已 经超出预设温度阈值的情形,则启动相关的数据保护动作(步骤S25)。关于步骤S25所进行的数据保护动作可以利用不同的方式来进行,例如在本发明提出另一种数据保护动作中,其是用于控制单元201写入数据至闪速存 储器的过程中。当控制单元101将数据写入于闪速存储器模块105时,若是感测单元103 检测到的温度感测结果高于预设的温度上限阈值或低于预设的温度下限阈值,则提高数据 内部总线107上写入的驱动电流。在此实施例中,数据保护动作是通过提高数据内部总线 107上写入的驱动电流来达成。而本发明所提出的另一种数据保护动作则是在当控制单元101写入数据至闪速 存储器模块105时,若是感测单元103检测到的温度感测结果高于预设的温度上限阈值或 低于预设的温度下限阈值,则延长将数据写入闪速存储器模块105的期间,用以确保将数 据写入至闪速存储器模块105的过程是正确无误的。在此实施例中,数据保护动作是通过 延长将数据写入闪速存储器模块105的期间来实现。除了在主机12与闪存装置10的沟通过程中,根据温度感测结果来启动错误校正、 变动驱动电流或延长写入期间的数据保护动作外,本发明还提出的一种利用待机模式时, 即主机12并不需要对闪存装置10进行存取的期间,搭配温度感测及错误位阈值,通过控制 单元101对闪速存储器模块105的内部控制方式来改善数据可能发生错误的问题。首先,定义一个温度阈值(如定义摄氏70度为一温度上限阈值,或定义摄氏5度 为一温度下限阈值)与一个错误位阈值(如30位)。当闪存装置10于待机模式时,即主 机12未与控制单元101进行联系时,利用感测单元103来检测闪存装置10的温度,若控制 单元101通过感测单元103而得知周围温度已经超出温度阈值,则控制单元101便主动开 始相关的数据保护动作,藉以对闪速存储器模块105内的数据区块提供检查与保护。进一步来说,在主机12未对闪存装置10进行存取,即闪存装置10处于一般的待 机情况时,一旦感测单元103检测得到的温度感测结果超出温度阈值时(如高于温度上限 阈值的摄氏70度,或低于温度下限阈值的摄氏5度),则控制单元101便逐一读取闪速存储 器模块105内的数据内容,将读取的来源区段所存储的区段数据利用错误校正码来进行错 误检查。若错误检查的结果符合预设条件时,即错误位数达到预设的错误位阈值时,则将区 段数据的内容进行错误校正后另行存储于存储模块内的另外一个数据区块,即另外由控制 单元101存储一份正确无误的区段数据在闪速存储器模块105的一目标区段内。换句话说,在感测单元103所检测得到的温度感测结果未超出温度阈值时,数据 保护动作便不会被启动。至于温度感测结果超出温度阈值时,则会进一步判断区段数据中 的错误位数是否达到预设的错误位阈值,若未达到错误位阈值,则不启动错误校正与存储 至目标区段的动作,若已达错误位阈值,则对区段数据进行校正,并存储校正后的区段数据
8于目标区段内。上述几种作法仅用来说明相关的数据保护动作可以如何进行,其它的数据保护动 作亦可能被采用,且在实施上述几种作法时,所设定的温度阈值可以相同或相异,无须受到 特别限制。综上所述,闪速存储器对于温度的反应对于闪速存储器本身在写入数据时的影响 相当大,且这些反应还因为工艺的进步而越显敏感,而本发明所提出的几种作法便可以利 用感测单元103来反应周围温度,并将温度感测结果回馈予控制单元101,让控制单元101 得以依照周围温度的变化进行适当的数据读写控制。需要说明的是,尽管上述的说明是以MLC型闪速存储器作为较佳实施例来进行说 明,但是使用浮动栅极的技术的闪速存储器同样存在前述受到温度的影响而改变写入特性 的现象,因此相关的技术同样可被套用到其它类型的闪速存储器所构成的存储装置中。以上所述仅为本发明的较佳实施例,凡依本发明的权利要求所做的均等变化与修 饰,皆应属本发明的涵盖范围。
权利要求
1.一种闪存装置,其包含一存储模块,用以存储数据;一控制单元,电连接于该存储模块,用以读写在该存储模块内的数据;以及一感测单元,电连接于该控制单元,用以将一温度感测结果传送至该控制单元,且该控 制单元根据该温度感测结果来决定是否启动一数据保护动作。
2.如权利要求1所述的闪存装置,其中若该温度感测结果高于一温度上限阈值或低于 一温度下限阈值时,启动该数据保护动作,其中该数据保护动作包含该控制单元读取该存 储模块内的一来源区段所存储的一区段数据并进行一错误检查,且若该错误检查的结果符 合一预设条件时,对该区段数据进行一错误校正,并将错误校正后的该区段数据存储于该 存储模块内的一目标区段。
3.如权利要求1所述的闪存装置,其中若该温度感测结果高于一温度上限阈值或低于 一温度下限阈值时,启动该数据保护动作,其中该数据保护动作包含当该控制单元将数据 写入于该存储模块时,延长该数据写入于该存储模块的期间。
4.如权利要求1所述的闪存装置,其中若该温度感测结果高于一温度上限阈值或低于 一温度下限阈值时,启动该数据保护动作,其中该数据保护动作包含当该控制单元写入数 据于该存储模块时,其数据写入的驱动电流不同于温度在阈值内时的驱动电流。
5.如权利要求1所述的闪存装置,其中若该温度感测结果高于一温度上限阈值或低于 一温度下限阈值时时,启动该数据保护动作,其中该数据保护动作包含当该控制单元将一 区段数据写入该存储模块内的一来源区段后,该控制单元进一步将该区段数据读出并进行 一错误检查,且若该错误检查的结果符合一预设条件时,则对该区段数据进行错误校正,并 将错误校正后的该区段数据存储于该存储模块内的一目标区段。
6.一种闪存装置,其包含一存储模块,用以存储数据;以及一控制单元,电连接于该存储模块,用以读写在该存储模块内的数据;其中,当该闪存装置处于待机模式时,该控制单元读取该存储模块内的一来源区段所 存储的一区段数据并进行一错误检查,且若该错误检查的结果符合一预设条件时,则对该 区段数据进行错误校正,并将错误校正后的该区段数据存储于该存储模块内的一目标区 段。
7.—种闪存装置的数据保护方法,该方法包含以下步骤取得一温度感测结果;以及比较该温度感测结果是否超出一温度阈值,若是,则启动一数据保护动作。
8.如权利要求7所述的数据保护方法,其中该数据保护动作包括下列步骤当该闪存装置处于待机模式时,从一来源区段读出一区段数据;进行该区段数据的一错误检查;以及若该错误检查的结果符合一预设条件时,则对该区段数据进行一错误校正,并将错误 校正后的该区段数据另存储于一目标区段。
9.如权利要求7所述的数据保护方法,其中该数据保护动作包括下列步骤当该闪存 装置于写入数据的过程时,延长该数据写入的期间。
10.如权利要求7所述的数据保护方法,其中该数据保护动作包括下列步骤当该闪存装置于写入数据的过程时,其数据写入的驱动电流不同于温度在阈值内时的驱动电流。
11.如权利要求7所述的数据保护方法,其中该数据保护动作包含以下步骤当该闪存装置将一区段数据写入一来源区段后,读取该来源区段内的区段数据并进行 一错误检查;以及若该错误检查的结果符合一预设条件时,则对该区段数据进行一错误校正,并将错误 校正后的该区段数据另存储于一目标区段。
12.如权利要求7所述的数据保护方法,其中该温度阈值为一温度上限阈值,且超出该 温度阈值为高于该温度上限阈值。
13.如权利要求7所述的数据保护方法,其中该温度阈值为一温度下限阈值,且超出该 温度阈值为低于该温度下限阈值。
14.一种闪存装置的数据保护方法,该方法包含以下步骤当该闪存装置处于待机模式时,读取一来源区段内的一区段数据并进行一错误检查;以及若该错误检查的结果符合一预设条件时,则对该区段数据进行一错误校正,并将错误 校正后的该区段数据另存储于一目标区段内。
全文摘要
本发明提出一种闪存装置及其数据保护方法。该闪存装置,其包含一存储模块,用以存储数据;一控制单元,电连接于该存储模块,用以读写在该存储模块内的数据;以及一感测单元,电连接于该控制单元,用以将一温度感测结果传送至该控制单元,且该控制单元根据该温度感测结果来决定是否启动一数据保护动作。
文档编号G11C16/10GK102141943SQ201010105760
公开日2011年8月3日 申请日期2010年1月28日 优先权日2010年1月28日
发明者徐正煜, 杨文宗, 蔡松峰 申请人:建兴电子科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1