快闪存储器和平衡磨损率的闪存编程方法 技术领域 本发明涉及一种快闪存储器, 尤其是, 涉及一种用于平衡磨损率快闪存储器的快 闪存储器和快闪存储器编程方法。
背景技术 快闪存储器, 作为及非易失性存储器半导体, 其作为 PC 或服务器中的硬盘的替代 存储介质已在许多领域成为关注的焦点, 由于快闪存储器耐冲击、 具有低功耗可操作性并 具有高集成度, 其同样也用于便携终端和嵌入式系统。
不像硬盘之类的一般数据块, 快闪存储器需要执行对应位置的擦除操作以更新一 次存储的数据。
也就是说, 在所有存储器存储单元的值被初始化为 “1” 的状态下, 通过将所需存储 器存储单元的值改变为 “0” , 来执行快闪存储器的写入操作。 如上所述, 要更新存储的数据, 在对应位置的每个存储单元都被初始化为 “1” , 之后再次执行写入操作。
在这种情况下, 读取操作和写入操作在页面单元被执行。所述快闪存储器的页面 表示具有物理连续地址的字节。擦除操作不像读取操作和写入操作, 其在数据块单元被执 行。 所述快闪存储器的数据块表示多个物理连续页面。 根据现有实施例, 页面的大小为 512B 至 4KB, 数据块的大小为 16KB 至 512KB。
根据传统的示例性实施例, 所述快闪存储器的页面分为主要区域和辅助区域。所 述主要区域存储数据, 而辅助区域存储被存储在主要区域中的数据相关信息和页面的相关 信息。 存储在辅助区域中的信息被称为元信息 (meta-information)。 元信息的例子包括循 环冗余校验 (CRC ; Cyclic Redundancy Check) 或纠错码 (ECC ; Error Correction Codes) 信息。在写入操作或读取操作期间, 当检测页面错误或检验页面物理损坏时, 可使用所述 CRC 或 ECC。
快闪存储器的所有读取、 写入和擦除操作可能会对存储数据的存储器存储单元造 成电子压力并导致微小的磨损 (minute wear)。因此, 长时间使用快闪存储器时, 存储器存 储单元最后可能会进入的无法正常区分 “1” 和 “0” 的状态。
由于写入操作和擦除操作的磨损率远远超过读取操作的磨损率, 为延长快闪存储 器寿命, 需要尽可能地努力减少发生在单一存储器存储单元内的写入操作和擦除操作的次 数。
用于平衡磨损率的现有发明, 是在数据块程度内, 也就是用于擦除操作的单元内 平衡磨损率方法。也就是, 通过录制擦除操作和将擦除操作的次数维持在等于或少于建议 的一定次数来管理快闪存储器的方法。用于平衡磨损率的所述现有方法, 假设属于单一数 据块的每个存储器存储单元都具有相同的磨损率。此外, 现有方法可能无法考虑每个存储 器存储单元级的磨损率差异。
发明内容 技术目的
本发明的一个方面, 提供一种使用新的编程体系来延长存储器存储单元寿命的装 置和方法。
本发明的另一个方面, 还提供一种使用新的数据检测体系来平衡存储器存储单元 级的磨损率的装置和方法。
技术方案
根据本发明的一个方面, 提供一种内存装置, 其包括 : 存储器存储单元阵列 ; 反转决 定单元, 其通过基于数据页面中 “1” 和 “0” 的数目反转或不反转所述数据页面来生成编程页 面; 编程单元, 其在所述存储器存储单元阵列中存储生成的所述编程页面 ; 和数据检验单元, 其读取存储在所述存储器存储单元阵列中的所述编程页面, 以根据读取的所述编程页面中是 否存在错误来从所述编程页面恢复所述数据页面, 并输出恢复的所述数据页面。
根据本发明的另一个方面, 提供一种内存装置, 其包括 : 存储器存储单元阵列 ; 页 面划分单元, 其将数据页面划分为多个数据子页面 ; 反转决定单元, 其通过基于每个数据子 页面中的 “1” 和 “0” 的数目反转或不反转每个所述数据子页面, 生成对应每个所述数据子 页面的每个编程页面 ; 和编程单元, 其将每个生成的编程页面存储至所述存储器存储单元 阵列。
根据本发明的另一个方面, 提供一种内存编程方法, 其包括 : 基于数据页面中 “1” 和 “0” 的数目, 决定是否执行所述数据页面的反转 ; 根据是否执行所述数据页面的反转的 决定, 从所述数据页面生成编程页面 ; 在存储器存储单元阵列中存储生成的所述编程页面 ; 读取存储在所述存储器存储单元阵列中的所述编程页面 ; 根据读取编程页面中是否存在错 误, 决定是否执行所述读取编程页面的反转 ; 根据是否执行所述读取编程页面的反转的决 定, 从所述读取编程页面恢复所述数据页面。
根据本发明的另一个方面, 提供一种内存编程方法, 其包括 : 将数据页面划分为多 个数据子页面 ; 基于每个所述数据子页面中 “1” 和 “0” 的数目, 决定是否执行每个所述数据 子页面的反转 ; 根据是否执行每个所述数据子页面的反转的决定, 从每个所述数据子页面 生成对应每个所述数据子页面的编程页面 ; 和将每个生成的编程页面存储至所述存储器存 储单元阵列。
附图说明
图 1 示出根据一个示例性实施例的快闪存储器 ; 图 2 示出根据另一个示例性实施例的快闪存储器 ; 图 3 示出根据另一个示例性实施例的存储器存储单元阵列 ; 图 4 示出根据一个示例性实施例的在快闪存储器中执行的内存编程方法 ; 图 5 是示出在图 4 的快闪存储器中执行的存储器编程方法的操作流程图 ; 图 6 是示出根据一个示例性实施例的存储器读取方法的操作流程图 ; 图 7 示出根据另一个示例性实施例的在快闪存储器中执行的内存编程方法 ; 和 图 8 是示出根据另一个示例性实施例的存储器读取方法操作流程图。具体实施方式
虽然本发明的几个实施例将被展示和描述, 本发明不仅限于所描述的示例性实施 例, 其中, 相同数字始终表示相同元素。
作为用于擦除操作目标的数据块中的每个快闪存储器存储单元, 不具有同等水平 的磨损率。擦除操作就是将对应数据块中的每个存储器存储单元的值初始化为 “1” 。在执 行擦除操作的数据块中, 有具有从 “0” 到 “1” 的变化值的存储器存储单元, 和不发生改变的 具有维持为 “1” 的值的存储器存储单元。在这种情况下, 所述具有通过写入操作而最初从 “1” 改变为 “0” 的值并之后通过擦除操作而从 “1” 改变为 “0” 的存储器存储单元, 比具有维 持为 “1” 的值的存储器存储单元具有更大的磨损率。
因此, 由于一些存储器存储单元具有即使反复执行写入操作和擦除操作也一直维 持为 “1” 的值, 所以其对应数据块的磨损率降低, 因此可延长整个快闪存储器信元的寿命。
本发明的快闪存储器, 可提供一种对每个存储器存储单元最小化磨损率的方法, 由此可以延长整个快闪存储器的寿命。
当作为用于写入操作目标的页面中, 具有值 “0” 的比特的数目大于具有值 “1” 的 比特的数量时, 本发明的快闪存储器可反转 “0” 和 “1” , 并存储反转的值, 由此最小化具有 改变为 “0” 的值的存储器存储单元的数目。 图 1 示出根据一个示例性实施例的快闪存储器 100。
参考图 1, 所述快闪存储器 100 包括存储器存储单元阵列 110、 编程单元 120、 反转 决定单元 130 和数据检验单元 140。
所述存储器存储单元阵列 110 可包括页面 111。
所述编程单元 120、 反转决定单元 130 和数据检验单元 140 中的每一个, 可被包括 在所述快闪存储器的外围电路 (peripheral circuit) 或快闪存储器 100 预定的计算机系 统的控制器中。
所述反转决定单元 130, 通过基于数据页面中的 “1” 和 “0” 的数目反转或不反转数 据页面来生成编程页面。
在本说明书中, 作为被同时编程并被快闪存储器 100 的控制器 ( 未示出 ) 处理的 单元的数据, 被称为数据页面。此外, 在说明书中, 作为被同时编程并被物理编程至存储器 存储单元阵列 110 的页面 111 的单位的数据, 被称为编程页面。
贯穿整个说明书指示的项目 “数据页面” 和 “编程页面” , 被上面描述的功能和使用 所规定, 但是, 其权利范围不局限于所述项目。
所述反转决定单元 130, 当数据页面中 “0” 的数目大于 “1” 的数目时, 通过反转数 据页面生成编程页面。
对存储器存储单元阵列 110 的物理编程操作, 可以是将值从 “0” 改变为 “1” 的操 作, 但是不再加以详细介绍。在这种情况下, 当数据页面中 “1” 的数目大于 “0” 的数目时, 所述反转决定单元 130 可反转数据页面并生成编程页面。
由于快闪存储器 100 用于减少存储器存储单元的磨损率, 所以改变对应物理编程 操作的反转决定单元 130 的操作对那些精通该技术的人来说是显而易见的。
所述编程单元 120, 可在存储器存储单元阵列中存储生成的编程页面 111。
在这种情况下, 所述编程单元 120 的数据存储操作, 可以是在一定时间内对页面
111 中的每个存储器存储单元应用高电压的操作。所述高电压的施加可包括每个存储器存 储单元上的压力, 并可能导致每个存储器存储单元的物理损坏。
所述编程单元 120 的数据存储操作, 可以是改变页面 111 中的每个存储器存储单 元的阈值电压的操作。由于数据存储操作可能会增加每个存储器存储单元的磨损率, 所以 调整数据存储操作以减少具有变化的阈值电压的存储器存储单元的数目是可取的。
根据示例性实施例的所述反转决定单元 130, 可在编程单元 120 的数据存储操作 期间, 决定是否在页面 111 的存储器存储单元中执行数据页面的反转, 以调整使具有变化 的阈值电压的存储器存储单元的数目少于具有不变化的阈值电压的存储器存储单元的数 目。
所述快闪存储器 100, 可在如所上述的配置中减少页面 111 中的存储器存储单元 的压力, 并还可以减少对存储器存储单元的磨损率和物理损坏。
所述快闪存储器 100 可不存储反转决定单元 130 是否在存储器存储单元阵列 110 中反转数据页面的相关信息。
所述数据检验单元 140 可读取存储在存储器存储单元阵列 110 中的页面 111 中的 编程页面。数据检验单元 140 可根据读取编程页面中是否存在错误从编程页面恢复数据页 面, 并输出恢复的所述数据页面。 当读取编程页面中存在错误时, 所述数据检验单元 140, 可反转读取编程页面并恢 复数据页面。当数据页面和编程页面之间的关系的相关信息没有存储在存储器存储单元 阵列 110 中时, 所述数据检验单元 140 可假设数据页面是没有被反转就作为编程页面生成 的, 并可对读取编程页面执行错误检测。 当读取编程页面中存在错误时, 所述数据检验单元 140, 可检验所述关于编程页面的假设是不正确的。当读取编程页面中存在错误时, 数据检 验单元 140 可反转读取编程页面以恢复数据页面, 并输出恢复的数据页面。
根据应用编程, 存储在存储器存储单元阵列 110 中的 “0” 的频率可能比存储在存 储器存储单元阵列中的 “1” 的频率高。在这种情况下, 数据检验单元 140 可假设数据页面 被反转和作为编程页面生成, 并可反转读取编程页面并执行错误检测。
数据检验单元 140 读取的对编程页面的错误检测方法, 包括来自包括在读取编程 页面中的错误控制代码 (ECC) 的错误的检测、 读取编程页面的 ECC 解码、 和包括在读取编程 页面中的奇偶校性 (parity) 检测。
所述快闪存储器 100, 可以不单独存储在存储器存储单元阵列 110 中数据页面是 否被反转的相关信息, 并可在恢复数据页面期间使用已包含在数据页面中的 ECC 或奇偶 性, 由此可以减少用于存储数据的空间的开销 (overhead)。
图 2 示出根据另一个示例性实施例的快闪存储器 200。
参考图 2, 快闪存储器 200 包括存储器存储单元阵列 210、 编程单元 220、 反转决定 单元 230 和页面划分单元 240。
所述存储器存储单元阵列 210 可包括页面 211。
所述编程单元 220、 反转决定单元 230、 和页面划分单元 240 中的每一个, 都可包含 在快闪存储器的外围电路或快闪存储器 200 的控制器中。
所述页面划分单元 240, 可将数据页面划分为多个数据子页面。
反转决定单元 230, 决定是否对每个数据子页面执行反转。反转决定单元 230, 通
过基于每个数据子页面中的 “1” 和 “0” 的数目反转或不反转每个数据子页面, 生成对应每 个数据子页面的每个编程页面。
页面划分单元 240 将单一数据页面划分为四个数据子页面的示例性实施例如图 2 所示。
反转决定单元 230 决定是否对四个数据子页面中每一个执行反转
所述编程单元 220, 在存储器存储单元阵列 210 的页面 211 中存储每个生成的编程 页面。
所述编程单元 220 在存储器存储单元阵列中存储表示编程页面是否通过反转数 据子页面而生成的标志旗。反转标志旗可针对每个数据子页面生成。所述编程单元 220 可 在页面 211 的辅助区域存储所述反转标志旗。
反转决定单元 230 可决定是否对每个数据子页面执行反转。当第一数据子页面中 的 “0” 的数目大于 “1” 的数目时, 反转决定单元 230 可反转第一数据子页面并生成第一编 程页面, 而当第二数据子页面中的 “0” 的数目不大于 “1” 的数目时, 反转决定单元 230 可不 反转第二数据子页面并生成第二编程页面。
编程单元 220 的数据存储操作, 可以是改变页面 211 中的每个存储器存储单元的 阈值电压的操作。在这种情况下, 反转决定单元 230 可在编程单元 220 的数据存储操作期 间, 决定是否执行所述数据页面的反转, 以调整使页面 211 中的存储器存储单元中具有变 化的阈值电压的存储器存储单元的数目少于具有不变化的阈值电压的存储器存储单元的 数目。
快闪存储器 200 可进一步包括数据检验单元 ( 未示出 )。所述数据检验单元可读 取存储在存储器存储单元阵列 210 的页面 211 中的每个编程页面和存储在存储器存储单元 阵列 210 中的反转标志旗。所述数据检验单元, 可根据读取反转标志旗通过反转或不反转 读取编程页面来恢复数据页面。所述数据检验单元, 可通过将恢复的数据子页面结合来恢 复数据页面。
作为另一个示例性实施例, 快闪存储器 200 可进一步包括数据检验单元 ( 未示 出 )。所述数据检验单元, 可读取存储在所述存储器存储单元阵列 210 中的页面 211 中的 每个编程页面。所述数据检验单元, 可根据每个读取编程页面中是否存在错误从每个编程 页面恢复每个数据子页面。所述数据检验单元, 可通过将恢复的数据子页面结合来恢复数 据页面。在这种情况下, 快闪存储器 200 可不在存储器存储单元阵列 210 存储是否每个数 据子页面被反转的相关信息。 所述数据检验单元可决定是否对每个读取编程页面执行反转 面。也就是说, 当第一读取编程页面中存在错误时, 所述数据检验单元, 反转第一读取编程 页面并生成第一数据子页面, 当第二读取编程页面中不存在错误时, 所述数据检验单元, 可 不反转第二读取编程页面并生成第二数据子页面。所述数据检验单元, 可执行解码每个读 取编程页面的 ECC 或检查所述读取编程页面奇偶性, 以检验所述错误的存在。
另一个本发明的快闪存储器 ( 未示出 ), 当在页面的辅助区域中存储了作为元信 息的 ECC 或奇偶性时, 即使其没有存储每个区域的反转信息, 其也可检验页面是否在读取 操作中被反转, 并由此可以恢复正常的数据。
图 3 示出根据另一个示例性实施例的存储器存储单元阵列。
参考图 3, 存储器存储单元阵列包括 (N+1) 个数据块。所述存储器存储单元阵列包括数据块 0 310、 数据块 1 320、 和数据块 N 340。 每个 数据块都是用于执行擦除操作的单位。
每个数据块包含 M 个页面。
在图 3 中, 包括页面 0 331、 页面 1 332、 页面 2 333、 页面 3 334 等。
每个页面都是用于执行编程操作的单元。
当存储在单一页面中的数据被更新时, 更新的数据被存储在包含在被擦除和初始 化的页面中的整个数据块之后。
图 4 示出根据一个示例性实施例的在快闪存储器 100 中执行的存储器编程方法。
参考图 4, 初始化的数据块 K 410 可包括四个页面。为了方便描述, 假设在图 4 的 存储器编程方法中的数据块已被初始化。
由控制器转移至快闪存储器 100 的数据页面, 是第一数据页面 431 和第二数据页 面 441。第一数据页面和第二数据页面的分别对应初始化的数据块 K 410 的第二页面和第 三页面。
所述快闪存储器 100 比较第一数据页面 431 中的 “0” 的数目和 “1” 的数目。为了 方便描述, 假设第一数据页面 431 是 8 比特。由于第一数据页面 431 中的 “0” 的数目为六 个而 “1” 的数目为两个, 快闪存储器可反转第一数据页面 431 并生成第一编程页面 432。 所述快闪存储器 100 比较第二数据页面 441 中的 “0” 的数目和 “1” 的数目。由于 第一数据页面 441 中的 “0” 的数目为两个而 “1” 的数目为六个, 快闪存储器可不反转第二 数据页面 441 并生成第二编程页面 442。
所述快闪存储器 100, 可将被生成的第一编程页面 432 存储在数据块 K 420 的第二 页面 422 中, 并将被生成的第二编程页面 442 存储在数据块 K 420 的第三页面 423 中。
在数据块 K 420 中的第一页面 421 和第四页面 424 保持处于初始化状态。
图 5 是示出在图 4 的存储器编程方法的操作流程图。
参考图 5, 在操作 S510 中, 存储器编程方法计算数据页面中的 “1” 和 “0” 的数目。
所述存储器编程方法, 可基于计算的 “1” 和 “0” 的数目, 决定是否执行所述数据页 面的反转。
所述存储器编程方法, 可基于是否执行反转的决定, 从数据页面生成编程页面。
在操作 S520 中, 当数据页面中 “0” 的数目大于 “1” 的数目时, 所述存储器编程方 法反转 “0” 和 “1” 。在这种情况下, 存储器编程方法生成具有 “0” 和 “1” 被反转了的数据的 编程页面。
当数据页面中 “0” 的数目不大于 “1” 的数目时, 存储器编程方法可生成具有数据 页面的编程页面。
在操作 S530 中, 所述存储器编程方法, 在存储器存储单元阵列中存储生成的编程 页面。
图 6 是示出根据另一个示例性实施例的存储器读取方法的操作流程图。
参考图 6, 在操作 S610 中, 所述存储器读取方法, 读取存储在存储器存储单元阵列 中的编程页面。
在操作 S620 中, 所述存储器读取方法, 检验在读取编程页面中是否检测到了错 误。
所述存储器读取方法, 可根据所述读取编程页面中是否存在错误, 决定是否执行 所述读取编程页面的反转。
所述内存读取方法, 可基于是否执行反转的决定, 从读取编程页面恢复数据页面。
在操作 S630 中, 当在所述读取编程页面中检测到了错误时, 所述存储器读取方 法, 反转读取编程页面中的 “0” 和 “1” 。
在操作 S640 中, 所述存储器读取方法, 检验反转的编程页面中是否检测到了错 误。
当在反转的编程页面中检测到了错误时, 所述存储器读取方法, 决定读取编程页 面包含错误。在这种情况下, 所述存储器读取方法可再次读取编程页面。
当在反转的编程页面中没检测到错误时, 所述方法将反转的编程页面恢复为数据 页面。
图 7 示出根据另一个示例性实施例的在快闪存储器中执行的存储器编程方法。
参考图 7, 初始化的数据块 K 710 包括四个页面。为了方便描述, 假设图 7 的存储 器编程方法中的数据块已被初始化。
由控制器转移至存储器装置 200 的数据页面对应初始化的数据块 K 710 的第二页 面。 所述快闪存储器 200, 将所述数据页面划分为两个数据子页面。
划分出的第一数据子页面 731 包括一个 “0” 和三个 “1” 。
快闪存储器 200 无需反转第一数据子页面 731, 就可生成第一编程子页面 733。
划分出的第二数据子页面 732 包括三个 “0” 和1个 “1” 。
快闪存储器 200, 通过反转第二数据子页面 732, 生成第二编程子页面 734。
快闪存储器 200, 在数据块 K 720 中的第二页面 722 中存储生成的第一编程子页面 733 和第二编程子页面 734。
数据块 720K 中的第一页面 721、 第三页面 723 和第四页面 724 保持在初始化状态。
图 8 是示出在快闪存储器中执行的存储器读取方法操作流程图。
参考图 8, 在操作 S810 中, 所述存储器读取方法, 从存储器存储单元阵列 210 读取 编程页面。
在操作 S820 中, 所述存储器读取方法, 计算编程页面中划分的区域的数目。在这 种情况下, 编程页面的划分的相关信息, 可作为元信息存储在编程页面的辅助区域。
在操作 S830 中, 所述存储读取方法, 检验在读取编程页面中是否检测到了错误。
当没有检测到错误时, 所述存储读取方法, 可恢复读取编程页面作为数据页面, 并 输出恢复的数据页面至控制器。
在操作 S840 中, 当检测到了错误时, 所述存储器读取方法, 可针对读取编程页面 搜索未检查的划分的区域的反转结合。
在操作 S850 中, 所述存储器读取方法, 根据检索的反转结合, 反转划分的区域中 的 “0” 和 “1” 。
在操作 S830 中, 所述存储器读取方法, 再次检验是否在反转的编程页面中检测到 了错误。
作为操作 S840 的搜索结果, 当没有更多的反转结合时, 所述存储器读取方法, 可
最终决定所述读取编程页面包含错误。
当最终决定为所述页面包含错误时, 所述存储器读取方法, 可从存储器存储单元 阵列再次读取编程页面。
当划分的区域的数目是 N = 2k 时, 所述存储器读取方法, 可使用作为在辅助区域 中的元信息存储的值, 或预设为 k 的值。所述存储器读取方法, 可使用 ECC 或奇偶校验对页 面执行错误检测, 且作为错误检测的结果, 当不存在错误时, 所述存储器读取方法可决定为 不存在反转的区域。
当编程页面被划分为 N 个区域时, 可最多 2N 次反复进行使用 ECC 或奇偶校验的错 误检测, 并可进行使用硬件电路的并行处理。
再次参考图 2, 所述页面划分单元 240, 可将数据页面划分一定数目的具有一定大 小的数据子页面, 以最小化物理存储的 “0” 的数目。 在这种情况下, 划分和反转的有关信息, 可被存储在页面 211 的辅助区域。所述存储的划分和反转信息, 可用于在读取操作期间恢 复数据页面。
当将数据页面划分为四个数据子页面时, 所述页面划分单元 240, 可允许第一数据 子页面包括 a 比特、 第二数据子页面包括 b 比特、 第三数据子页面包括 c 比特和第四个数据 子页面包括 d 比特。 在这种情况下, 编程页面 220 可存储关于页面 211 中的四个数据子页面的四个划 分信息。每个划分信息可包括划分的数据子页面的大小 a 比特、 b 比特、 c 比特和 d 比特。 所述编程单元 220 可将四个划分信息与页面 211 中每个数据子页面是否被反转的相关反转 信息一起存储。
当划分和反转信息是元信息时, 由于元信息表示每个数据子页面的大小 ( 比特 ), 且每个数据子页面是否被反转, 当每个数据子页面的大小被表示为 x 比特时, 所述元信息 可能需要 (x+1) 比特。
随着划分的数据子页面数目的增加, 元信息的大小也增加, 并且用于恢复数据页 面的处理也变得复杂。 所述页面划分单元 240, 可基于元信息的大小和恢复处理的复杂性决 定划分的最佳数目。
根据本发明, 可通过使用新的编程方法, 延长快闪存储器的寿命。
此外, 根据本发明, 可通过使用新的编程方法和新的数据检测方法, 均衡存储器存 储单元的负载程度。
根据示例性实施例的所述内存编程方法和内存读取控制方法, 可被记录在包括由 计算机执行各种操作的编程指令的计算机可读介质中。所述介质还可包括, 单个或组合的 编程指令、 数据文件、 数据结构等。所述媒体和编程指令, 可以是用于本示例性实施例目的 而特别设计构成的, 或者是擅长电脑软件技术的人员熟知并可以使用的。计算机可读介质 的例子包括 : 硬盘、 软盘和磁带之类的磁介质, CD ROM 和 DVD 之类的光记录介质, 光盘之类 的磁光介质, 以及专门配置为存储和执行编程指令的硬件装置如只读内存 (ROM)、 随机存取 内存 (RAM)、 快闪存储器等。 编程指令的例子不仅包括机器代码, 如由编译器产生的, 也可包 括含有可由计算机使用解译器执行的更高级代码的文件。所述硬件装置, 可配置为为执行 本示例性实施例的操作而运行的一个或一个以上软件模块。
根据示例性实施例的快闪存储器和 / 或内存控制器可使用各种类型的封装
(package) 来 实 施。 例 如, 快 闪 存 储 器 和 / 或 内 存 控 制 器 可 使 用 下 列 封 装 来 实 施, 如 PoPs(Package on Packages)、 球 栅 阵 列 (Ball Grid Arrays : BGAs)、 芯 片 级 封 装 (Chip Scale Packages : CSPs)、 塑料有引线芯片载体 (Plastic Leaded Chip Carrier : PLCC)、 塑料双列直插式封装 (Plastic DualIn-Line Package : PDIP)、 Die in Waffle Pack、 Die in Wafer Form、 板上芯片封装 (Chip On Board : COB)、 陶瓷双列直插式封装 (Ceramic DualIn-Line Package : CERDIP)、 塑 料 公 制 四 方 扁 平 封 装 (Plastic Metric Quad Flat Pack : MQFP)、 四 方 扁 平 封 装 (Quad Flat pack : QFP)、 小 外 形 集 成 电 路 (Small Outline Integrated Circuit : SOIC)、 收缩小外形封装 (Shrink Small Outline Package : SSOP)、 薄 型小外形封装 (Thin Small Outline : TSOP)、 薄型四方扁平封装 (Thin Quad Flat pack : TQFP)、 系统封装 (System In Package : SIP)、 多芯片封装 (Multi Chip Package : MCP)、 晶圆 级制备封装 (Wafer-level Fabricated Package : WFP)、 晶圆级堆叠工艺封装 (Wafer-Level Processed Stack Package : WSP) 等。
所述快闪存储器和 / 或存储器控制器可构成内存卡。在这种情况下, 存储器控 制器可被构建为用于与外部装置通信, 如使用下列各种类型协议中任何一种的主机, 即 通用串行总线 (USB)、 多媒体卡 (MMC)、 外设部件互连标准总线 (Peripheral Component Interconnect-Express : PCI-E)、串 行 高 级 技 术 附 件 (Serial Advanced Technology Attachment : SATA)、 并行 ATA(Parallel ATA : PATA)、 小型计算机系统接口 (Small Computer System Interface : SCSI)、 增强小型装置接口 (Enhanced Small Device Interface : ESDI) 和集成驱动器电子 (Integrated Drive Electronic : IDE)。
所述快闪存储器可为非易失性存储器, 即使在电源被切断时其存储的数据也可以 保持。随着移动装置使用的增加, 如手机、 个人数字助理 (PDA)、 数码相机、 便携式游戏机和 MP3 播放器, 快闪存储器可被更广泛地用作数据存储和代码存储。 快闪存储器可用于家庭电 器, 如高清晰度电视 (HDTV)、 数字视频光盘 (DVD)、 路由器和全球定位系统 (GPS)。
根据示例性实施例的计算机系统可包括 : 与总线、 用户界面、 调制解调器如基带芯 片组、 存储器控制器和快闪存储器电子连接的微处理器。快闪存储器可经由存储器控制器 存储 N 位数据。所述 N 位数据已经或者将要被微处理器处理, 且 N 可以是 1 或大于 1 的整 数。 当计算机系统是移动装置时, 可额外提供电池来供应用于计算机系统的操作电压电源。
对于掌握本技术一般技巧的人员来说, 很明显, 根据示例性实施例的计算机系统 可进一步包括应用编程芯片组、 摄像头图像处理器 (camera image processor : CIS)、 移动 动态随机存取内存体 (Dynamic Random Access Memory : DRAM) 等。 所述存储器控制器和快 闪存储器可构成使用非易失性存储器来存储数据的固态驱动器 / 磁盘 (SSD)。
虽然本发明一些实施例已被展示和描述, 但是本发明不仅限于所描述的实施例。 相反, 本技术领域的技术人员可以理解, 在不脱离本发明的原则和精神范围内可对这些实 施例执行改变, 其范围由权利要求书及其等同物决定。