提升闪存的控制器的验证效率的方法、记忆装置及控制器.pdf

上传人:1520****312 文档编号:1280794 上传时间:2018-04-12 格式:PDF 页数:15 大小:538.26KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910204794.2

申请日:

2009.09.25

公开号:

CN102033791A

公开日:

2011.04.27

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 11/08申请日:20090925|||公开

IPC分类号:

G06F11/08

主分类号:

G06F11/08

申请人:

慧荣科技股份有限公司

发明人:

钱昱玮

地址:

中国台湾新竹县竹北市台元街三十六号八楼之一

优先权:

专利代理机构:

深圳市顺天达专利商标代理有限公司 44217

代理人:

易钊

PDF下载: PDF下载
内容摘要

本发明涉及一种提升闪存的控制器的验证效率的方法,该方法包含有:提供一错误产生模块,用来产生错误;以及触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。本发明另提供相关的记忆装置及其控制器,其中该控制器包含:一只读存储器,用来储存一程序代码;一微处理器,用来执行该程序代码以控制对该闪存的存取以及管理多个区块,并且另针对该控制器的错误管理机制来提升验证效率;以及一错误产生模块,用来产生错误;该控制器触发该错误产生模块主动地产生错误。本发明还涉及一种相关的记忆装置及其控制器。本发明针对错误管理机制,可显著地提升验证效率,大幅地节省时间与人力,且可增加测试的完整性。

权利要求书

1: 一种提升闪存的控制器的验证效率的方法, 其特征在于, 该方法包含有 : 提供一错误产生模块, 用来产生错误 ; 以及 触发该错误产生模块主动地产生至少一特定类型的错误, 以增加对应于该特定类型的 错误发生率。
2: 根据权利要求 1 所述的方法, 其特征在于, 其另包含有 : 针对该特定类型的错误, 验 证该错误管理机制。
3: 根据权利要求 1 所述的方法, 其特征在于, 其另包含有 : 利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作 ; 或 利用该特定元件依据一预定排程触发该触发步骤所触发的运作。
4: 根据权利要求 1 所述的的方法, 其特征在于, 其中该错误产生模块包含一错误产生 器; 以及该方法另包含有 : 利用该错误产生器随机地触发该触发步骤所触发的运作 ; 或 利用该错误产生器依据一预定排程触发该触发步骤所触发的运作。
5: 根据权利要求 1 所述的方法, 其特征在于, 其中该错误产生模块包含一计时器与一 错误产生器 ; 以及该方法另包含有 : 利用该计时器进行计时控制 ; 以及 利用该错误产生器依据该计时器的计时控制来产生和时间相关的错误或调整产生错 误的时间点。
6: 根据权利要求 1 所述的方法, 其特征在于, 其中该错误产生模块包含一错误产生器 与一修改单元 ; 以及该方法另包含有 : 利用该错误产生器来产生错误 ; 以及利用该修改单元依据该错误产生器所产生的错误 来改变该闪存与该控制器之间的讯号, 以产生该特定类型的错误。
7: 根据权利要求 1 所述的方法, 其特征在于, 其中该错误产生模块包含一错误产生器 ; 以及该方法另包含有 : 利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。
8: 根据权利要求 1 所述的方法, 其特征在于, 其中该错误产生模块包含一错误产生器 ; 以及该方法另包含有 : 利用该错误产生器来改变该控制器内的至少一元件的至少一参数, 以产生该特定类型 的错误。
9: 根据权利要求 8 所述的方法, 其特征在于, 其中该至少一元件包含一时间控制器 ; 一 验证与错误回报单元 ; 及 / 或一错误更正码解码器。
10: 根据权利要求 1 所述的方法, 其特征在于, 其中该错误产生模块包含一错误产生 器, 其为可编程错误产生器。
11: 根据权利要求 1 所述的方法, 其特征在于, 其中该至少一特定类型的错误包含有 : 错误更正码错误 ; 抹除错误 ; 写入错误 ; 及 / 或数据传输错误。
12: 一种记忆装置, 其特征在于, 其包含有 : 一闪存, 该闪存包含多个区块 ; 以及 一控制器, 用来存取该闪存以及管理该多个区块, 并且另针对该控制器本身的错误管 理机制来提升验证效率, 其中该控制器包含有 : 2 一错误产生模块, 用来产生错误 ; 其中该控制器触发该错误产生模块主动地产生至少一特定类型的错误, 以增加对应于 该特定类型的错误发生率。
13: 一种记忆装置的控制器, 该控制器用来存取一闪存, 该闪存包含多个区块, 其特征 在于, 该控制器包含有 : 一只读存储器, 用来储存一程序代码 ; 一微处理器, 用来执行该程序代码以控制对该闪存的存取以及管理该多个区块, 并且 另针对该控制器的错误管理机制来提升验证效率 ; 以及 一错误产生模块, 用来产生错误 ; 其中通过该微处理器执行该程序代码的该控制器触发该错误产生模块主动地产生至 少一特定类型的错误, 以增加对应于该特定类型的错误发生率。
14: 根据权利要求 13 所述的控制器, 其特征在于, 其中通过该微处理器执行该程序代 码的该控制器针对该特定类型的错误, 验证该错误管理机制。
15: 根据权利要求 13 所述的控制器, 其特征在于, 其中通过该微处理器执行该程序代 码的该控制器利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发 的运作、 或利用该特定元件依据一预定排程触发该触发步骤所触发的运作。
16: 根据权利要求 13 所述的控制器, 其特征在于, 其中该错误产生模块包含一错误产 生器 ; 以及通过该微处理器执行该程序代码的该控制器利用该错误产生器随机地触发该 触发步骤所触发的运作、 或利用该错误产生器依据一预定排程触发该触发步骤所触发的运 作。
17: 根据权利要求 13 所述的控制器, 其特征在于, 其中该错误产生模块包含一计时器 与一错误产生器 ; 该错误产生模块利用该计时器进行计时控制, 并利用该错误产生器依据 该计时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。
18: 根据权利要求 13 所述的控制器, 其特征在于, 其中该错误产生模块包含一错误产 生器与一修改单元 ; 以及该错误产生模块利用该错误产生器来产生错误, 并利用该修改单 元依据该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号, 以产生该特定类 型的错误。
19: 根据权利要求 13 所述的控制器, 其特征在于, 其中该错误产生模块包含一错误产 生器 ; 以及通过该微处理器执行该程序代码的该控制器利用该错误产生器迫使该控制器内 的至少一元件回报该特定类型的错误。
20: 根据权利要求 13 所述的控制器, 其特征在于, 其中该错误产生模块包含一错误产 生器 ; 以及通过该微处理器执行该程序代码的该控制器利用该错误产生器来改变该控制器 内的至少一元件的至少一参数, 以产生该特定类型的错误。
21: 根据权利要求 20 所述的控制器, 其特征在于, 其中该至少一元件包含 : 一时间控制 器; 一验证与错误回报单元 ; 及 / 或一错误更正码解码器。
22: 根据权利要求 13 所述的控制器, 其特征在于, 其中该错误产生模块包含一错误产 生器, 其为可编程错误产生器。
23: 根据权利要求 13 所述的控制器, 其特征在于, 其中该至少一特定类型的错误包含 有: 错误更正码错误 ; 抹除错误 ; 写入错误 ; 及 / 或数据传输错误。

说明书


提升闪存的控制器的验证效率的方法、 记忆装置及控制器

    技术领域 本发明涉及闪存 (Flash Memory) 的存取 (Access) 相关技术领域, 更具体地说, 涉 及一种针对闪存的控制器的错误管理 (Error Handling) 机制来提升闪存的控制器的验证 效率的方法、 相关的记忆装置及其控制器。
     背景技术
     近年来由于闪存的技术不断地发展, 各种可携式记忆装置 ( 例如 : 符合 SD/MMC、 CF、 MS、 XD 标准的记忆卡 ) 被广泛地实施于诸多应用中。因此, 这些可携式记忆装置中的闪 存的存取控制遂成为相当热门的议题。
     以常用的 NAND 型闪存而言, 其主要可区分为单阶细胞 (Single LevelCell, SLC) 与多阶细胞 (Multiple Level Cell, MLC) 两大类闪存。单阶细胞闪存中的每个被当作记忆 单元的晶体管只有两种电荷值, 分别用来表示逻辑值 0 与逻辑值 1。另外, 多阶细胞闪存中 的每个被当作记忆单元的晶体管的储存能力则被充分利用, 采用较高的电压来驱动, 以通 过不同级别的电压在一个晶体管中记录两组位元信息 (00、 01、 11、 10) ; 理论上, 多阶细胞 闪存的记录密度可以达到单阶细胞闪存的记录密度的两倍, 这对于曾经在发展过程中遇到 瓶颈的 NAND 型闪存的相关产业而言, 是非常好的消息。 相较于单阶细胞闪存, 由于多阶细胞闪存的价格较便宜, 并且在有限的空间里可 提供较大的容量, 故多阶细胞闪存很快地成为市面上的可携式记忆装置竞相采用的主流。 然而, 多阶细胞闪存的不稳定性所导致的问题也一一浮现。为了确保可携式记忆装置对闪 存的访问控制能符合相关规范, 闪存的控制器必须有错误管理机制 ( 例如软件错误管理机 制 ) 以妥善地管理发生各种错误的状况。
     依据相关技术, 若要验证上述的错误管理机制, 往往必须进行烧机测试, 例如利用 主装置 (Host) 不断地对可携式记忆装置进行存取。然而, 许多类型的错误都是随机发生 的, 且由于这些错误发生的机率不高, 故测试时间通常很长, 可达数百小时之久 ; 非常浪费 时间与人力。因此, 需要一种新颖的方法针对上述的错误管理机制来提升验证效率。
     发明内容
     本发明要解决的技术问题在于, 针对现有技术的上述缺陷, 提供一种针对闪存的 控制器的错误管理 (Error Handling) 机制来提升闪存的控制器的验证效率的方法、 相关的 记忆装置及其控制器, 以解决上述问题。
     本发明解决其技术问题所采用的技术方案之一是 : 构造一种提升闪存的控制器的 验证效率的方法, 该方法包含有 : 提供一错误产生模块, 用来产生错误 ; 以及触发该错误产 生模块主动地产生至少一特定类型的错误, 以增加对应于该特定类型的错误发生率。
     进一步地, 上述本发明所述的方法, 其另包含有 : 针对该特定类型的错误, 验证该 错误管理机制。
     进一步地, 上述本发明所述的方法, 其另包含有 :利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作; 或 利用该特定元件依据一预定排程触发该触发步骤所触发的运作。
     进一步地, 上述本发明所述的方法, 其中该错误产生模块包含一错误产生器 ; 以及 该方法另包含有 :
     利用该错误产生器随机地触发该触发步骤所触发的运作 ; 或
     利用该错误产生器依据一预定排程触发该触发步骤所触发的运作。
     进一步地, 上述本发明所述的方法, 其中该错误产生模块包含一计时器与一错误 产生器 ; 以及该方法另包含有 :
     利用该计时器计时器进行计时控制 ; 以及利用该错误产生器依据该计时器的计时 控制来产生和时间相关的错误或调整产生错误的时间点。
     进一步地, 上述本发明所述的方法, 其中该错误产生模块包含一错误产生器与一 修改单元 ; 以及该方法另包含有 :
     利用该错误产生器来产生错误 ; 以及利用该修改单元依据该错误产生器所产生的 错误来改变该闪存与该控制器之间的讯号, 以产生该特定类型的错误。
     进一步地, 上述本发明所述的方法, 其中该错误产生模块包含一错误产生器 ; 以及 该方法另包含有 :
     利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。
     进一步地, 上述本发明所述的方法, 其中该错误产生模块包含一错误产生器 ; 以及 该方法另包含有 :
     利用该错误产生器来改变该控制器内的至少一元件的至少一参数, 以产生该特定 类型的错误。
     进一步地, 上述本发明所述的方法, 其中该至少一元件包含一时间控制器 ; 一验证 与错误回报单元 ; 及 / 或一错误更正码解码器。
     进一步地, 上述本发明所述的方法, 其中该错误产生模块包含一错误产生器, 其为 可编程错误产生器。
     进一步地, 上述本发明所述的方法, 其中该至少一特定类型的错误包含有 : 错误更 正码错误 ; 抹除错误 ; 写入错误 ; 及 / 或数据传输错误。
     本发明本发明解决其技术问题所采用的技术方案之二是 : 构造一种记忆装置, 其 包含有 : 一闪存, 该闪存包含多个区块 ; 以及一控制器, 用来存取该闪存以及管理该多个区 块, 并且另针对该控制器本身的错误管理机制来提升验证效率, 其中该控制器包含有一错 误产生模块, 用来产生错误 ; 其中该控制器触发该错误产生模块主动地产生至少一特定类 型的错误, 以增加对应于该特定类型的错误发生率。
     进一步地, 上述本发明所述的记忆装置, 其中该控制器针对该特定类型的错误, 验 证该错误管理机制。
     进一步地, 上述本发明所述的记忆装置, 其中该控制器利用位于该错误产生模块 之外的一特定元件随机地触发该触发步骤所触发的运作、 或利用该特定元件依据一预定排 程触发该触发步骤所触发的运作。
     进一步地, 上述本发明所述的记忆装置, 其中该错误产生模块包含一错误产生器 ;
     以及该控制器利用该错误产生器随机地触发该触发步骤所触发的运作、 或利用该错误产生 器依据一预定排程触发该触发步骤所触发的运作。
     进一步地, 上述本发明所述的记忆装置, 其中该错误产生模块包含一计时器与一 错误产生器 ; 该错误产生模块利用该计时器进行计时控制, 并利用该错误产生器依据该计 时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。
     进一步地, 上述本发明所述的记忆装置, 其中该错误产生模块包含一错误产生器 与一修改单元 ; 以及该错误产生模块利用该错误产生器来产生错误, 并利用该修改单元依 据该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号, 以产生该特定类型的 错误。
     进一步地, 上述本发明所述的记忆装置, 其中该错误产生模块包含一错误产生器 ; 以及该控制器利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。
     进一步地, 上述本发明所述的记忆装置, 其中该错误产生模块包含一错误产生器 ; 以及该控制器利用该错误产生器来改变该控制器内的至少一元件的至少一参数, 以产生该 特定类型的错误。
     进一步地, 上述本发明所述的记忆装置, 其中该至少一元件包含一时间控制器 ; 一 验证与错误回报单元 ; 及 / 或一错误更正码解码器。 进一步地, 上述本发明所述的记忆装置, 其中该错误产生模块包含一错误产生器, 其为可编程错误产生器。
     进一步地, 上述本发明所述的记忆装置, 其中该至少一特定类型的错误包含有 : 错 误更正码错误 ; 抹除错误 ; 写入错误 ; 及 / 或数据传输错误。
     本发明解决其技术问题所采用的技术方案之三是 : 构造一种记忆装置的控制器, 该控制器用来存取一闪存, 该闪存包含多个区块, 该控制器包含有 : 一只读存储器 (Read Only Memory, ROM), 用来储存一程序代码 ; 一微处理器, 用来执行该程序代码以控制对该闪 存的存取以及管理该多个区块, 并且另针对该控制器的错误管理机制来提升验证效率 ; 以 及一错误产生模块, 用来产生错误 ; 其中通过该微处理器执行该程序代码的该控制器触发 该错误产生模块主动地产生至少一特定类型的错误, 以增加对应于该特定类型的错误发生 率。
     进一步地, 上述本发明所述的控制器, 其中通过该微处理器执行该程序代码的该 控制器针对该特定类型的错误, 验证该错误管理机制。
     进一步地, 上述本发明所述的控制器, 其中通过该微处理器执行该程序代码的该 控制器利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作、 或利用该特定元件依据一预定排程触发该触发步骤所触发的运作。
     进一步地, 上述本发明所述的控制器, 其中该错误产生模块包含一错误产生器 ; 以 及通过该微处理器执行该程序代码的该控制器利用该错误产生器随机地触发该触发步骤 所触发的运作、 或利用该错误产生器依据一预定排程触发该触发步骤所触发的运作。
     进一步地, 上述本发明所述的控制器, 其中该错误产生模块包含一计时器与一错 误产生器 ; 该错误产生模块利用该计时器进行计时控制, 并利用该错误产生器依据该计时 器的计时控制来产生和时间相关的错误或调整产生错误的时间点。
     进一步地, 上述本发明所述的控制器, 其中该错误产生模块包含一错误产生器与
     一修改单元 ; 以及该错误产生模块利用该错误产生器来产生错误, 并利用该修改单元依据 该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号, 以产生该特定类型的错 误。
     进一步地, 上述本发明所述的控制器, 其中该错误产生模块包含一错误产生器 ; 以 及通过该微处理器执行该程序代码的该控制器利用该错误产生器迫使该控制器内的至少 一元件回报该特定类型的错误。
     进一步地, 上述本发明所述的控制器, 其中该错误产生模块包含一错误产生器 ; 以 及通过该微处理器执行该程序代码的该控制器利用该错误产生器来改变该控制器内的至 少一元件的至少一参数, 以产生该特定类型的错误。
     进一步地, 上述本发明所述的控制器, 其中该至少一元件包含 : 一时间控制器 ; 一 验证与错误回报单元 ; 及 / 或一错误更正码解码器。
     进一步地, 上述本发明所述的控制器, 其中该错误产生模块包含一错误产生器, 其 为可编程错误产生器。
     进一步地, 上述本发明所述的控制器, 其中该至少一特定类型的错误包含有 : 错误 更正码错误 ; 抹除错误 ; 写入错误 ; 及 / 或数据传输错误。 实施本发明的技术方案, 具有以下有益效果 : 本发明的控制器可利用设置于其内 的错误产生器主动地产生某一或某些特定类型的错误, 以增加对应于该特定类型的错误发 生率, 也可利用错误产生器迫使控制器的任何元件回报错误。故本发明能提升产品出厂前 的验证效率 ; 针对错误管理机制, 例如软件错误管理机制, 本发明尤其能显著地提升验证效 率。因此, 本发明可大幅地节省时间与人力。另外, 由于本发明的控制器可利用设置于其内 的错误产生器主动地产生某一或某些特定类型的错误, 故本发明可增加测试的完整性。
     附图说明
     图 1 是本发明一第一实施例的一种记忆装置的示意图 ; 图 2 是本发明一实施例的一种提升闪存的控制器的验证效率的方法的流程图 ; 图 3 为图 2 所示的方法在一实施例中所涉及的错误发生率的示意图 ; 图 4 是本发明一第二实施例的一种记忆装置的示意图。 【主要元件符号说明】
     具体实施方式
     请参考图 1, 图 1 是本发明一第一实施例的一种记忆装置 100 的示意图, 其中本实 施例的记忆装置 100 优选为可携式记忆装置 ( 例如 : 符合 SD/MMC、 CF、 MS、 XD 标准的记忆 卡 )。 记忆装置 100 包含有 : 一闪存 120 ; 以及一控制器, 用来存取闪存 120, 其中该控制器例 如一存储器控制器 110。 依据本实施例, 存储器控制器 110 包含一微处理器 112、 一只读存储 器 (Read Only Memory, ROM)112M、 一控制逻辑 114、 一缓冲存储器 116、 一接口逻辑 118、 与 一错误产生模块 119。 另外, 控制逻辑 114 包含一错误更正码 (Error CorrectionCode, ECC) 解码器 1141 与一时间控制器, 其中该时间控制器例如一快闪时间控制器 (Flash Timing Controller)1142。此外, 错误产生模块 119 包含一计时器 1190、 一错误产生器 1191、 与一 修改单元 1192。
     在本实施例中, 只读存储器 112M 用来储存一程序代码 112C, 而微处理器 112 则用 来执行程序代码 112C 以控制对闪存 120 的存取。在典型状况下, 闪存 120 包含多个区块 (Block), 而该控制器 ( 例如 : 通过微处理器 112 执行程序代码 112C 的存储器控制器 110) 对闪存 120 进行抹除数据的运作时以区块为单位来进行抹除。另外, 一区块可记录特定数 量的页 (Page), 其中该控制器对闪存 120 进行写入数据的运作是以页为单位来进行写入。
     实作上, 通过微处理器 112 执行程序代码 112C 的存储器控制器 110 可利用其本身内部的元件来进行诸多控制运作, 例如 : 利用控制逻辑 114 来控制闪存 120 的存取运作 ( 尤 其是对至少一区块或至少一页的存取运作 )、 利用缓冲存储器 116 进行所需的缓冲处理、 以 及利用接口逻辑 118 来与一主装置 (Host Device) 沟通。
     依据本实施例, 除了能存取闪存 120, 该控制器 ( 尤其是通过微处理器 112 执行程 序代码 112C 的存储器控制器 110) 还能妥善地管理该多个区块。另外, 该控制器还可针对 该控制器本身的错误管理 (Error Handl ing) 机制, 尤其是针对微处理器 112 的软件错误 管理 (Software Error Handl ing) 机制, 来提升验证效率, 其中, 软件错误管理机制可以软 件或轫体的形式储存在记忆装置 100, 例如 : 包含于程序代码 112C。于本实施例中, 错误产 生器 1191 用来产生错误, 而该控制器触发错误产生器 1191 主动地产生至少一特定类型的 错误, 以增加对应于该特定类型的错误发生率。 于是, 该控制器就可以针对该特定类型的错 误, 验证该错误管理机制 ( 尤其是该软件错误管理机制 )。 相关细节可参考图 2 来进一步说 明。
     图 2 是本发明一实施例的一种提升闪存的控制器的验证效率的方法 910 的流程 图。该方法可应用于图 1 所示的记忆装置 100, 尤其是上述的控制器 ( 例如 : 通过微处理器 112 执行程序代码 112C 的存储器控制器 110)。另外, 该方法可利用图 1 所示的记忆装置 100 来实施, 尤其是利用上述的控制器来实施。该方法说明如下 :
     于步骤 912 中, 提供一错误产生模块, 用来产生错误 ; 例如 : 在存储器控制器 110 中提供错误产生模块 119, 其中错误产生模块 119( 尤其是其内的错误产生器 1191) 用来产 生错误。
     于步骤 914 中, 上述的控制器 ( 例如 : 通过微处理器 112 执行程序代码 112C 的存 储器控制器 110) 触发错误产生模块 119( 尤其是其内的错误产生器 1191) 主动地产生至少 一特定类型的错误, 以增加对应于该特定类型的错误发生率。举例来说, 存储器控制器 110 得触发错误产生器 1191, 以利用错误产生器 1191 在实际上无任何存取错误的状况下, 迫使 存储器控制器 110 内任何元件回报任何类型的错误至微处理器 112, 尤其是迫使存储器控 制器 110 内的至少一元件回报该特定类型的错误至微处理器 112。例如 : 该控制器可利用 位于错误产生模块 119 之外的一特定元件随机地触发本步骤所触发的运作 ; 又例如 : 该控 制器可利用该特定元件依据一预定排程触发本步骤所触发的运作。然而, 这只是为了说明 的目的而已, 并非对本发明的限制。依据本实施例的一变化例, 错误产生器 1191 可进行自 我触发, 以主动地产生该特定类型的错误。例如 : 该控制器可利用错误产生器 1191 随机地 触发本步骤所触发的运作 ; 又例如 : 该控制器可利用错误产生器 1191 依据一预定排程触发 本步骤所触发的运作。
     在本实施例中, 错误产生模块 119 利用计时器 1190 进行计时控制, 并可利用错误 产生器 1191 依据计时器 1190 的计时控制来产生和时间相关的错误或调整产生错误的时间 点。另外, 错误产生模块 119 可利用错误产生器 1191 来产生错误, 并可利用修改单元 1192 依据错误产生器 1191 所产生的错误来改变闪存 120 与该控制器之间的讯号, 以产生该特定 类型的错误。例如 : 利用修改单元 1192, 错误产生器 1191 将其本身所主动产生的错误导入 闪存 120 与控制逻辑 114 之间的一个或多个数据传输路径, 尤其是修改该 ( 些 ) 数据传输 路径上的数据的一个或多个位元。实作上, 修改单元 1192 可采用一种或数种逻辑闸的组合 来实施。依据本实施例, 该控制器亦可利用错误产生器 1191 来改变该控制器内的至少一 元件的至少一参数, 以产生该特定类型的错误。 例如 : 上述的至少一元件包含上述的时间控 制器 ; 此状况下, 错误产生器 1191 将其本身所主动产生的错误导入快闪时间控制器 1142, 尤其是修改快闪时间控制器 1142 的至少一参数, 以产生该特定类型的错误。然而, 这只是 为了说明的目的而已, 并非对本发明的限制。错误产生器 1191 亦得强迫快闪时间控制器 1142 回报错误或错误信息至微处理器 112。依据本实施例的一变化例, 上述的至少一元件 包含错误更正码解码器 1141 ; 此状况下, 错误产生器 1191 将其本身所主动产生的错误导入 错误更正码解码器 1141, 尤其是修改错误更正码解码器 1141 的至少一参数, 以产生该特定 类型的错误。
     另外, 上述的至少一特定类型 ( 例如一个或多个特定类型 ) 的错误包含有 : 错误 更正码错误 ; 抹除错误 ; 写入 (write/program) 错误 ; 及 / 或数据传输错误。举例来说, 错 误产生器 1191 可通过修改单元 1192 来修改该 ( 些 ) 数据传输路径上的数据的 1 个或多 个位元, 以产生错误更正码错误及 / 或数据传输错误, 例如原本数据传输路径上的数据为 “00000000” , 而错误产生器 1191 是通过修改单元 1192 将其修改为 “01010101” , 如此一来, 存入 / 或读自闪存的 120 的数据就具有四个位元的错误 ; 于是, 错误更正码错误及 / 或数据 传输错误的错误发生率就提高了且可被控制。另外, 错误产生器 1191 亦可修改快闪时间控 制器 1142 的至少一参数, 以产生抹除错误及 / 或写入错误 ; 于是, 抹除错误及 / 或写入错误 的错误发生率就提高了。 实作上, 在存储器控制器 110 读取闪存 120 时, 错误更正码解码器 1141 会对所 读取的数据进行错误更正码检查, 以确认所读取的数据是否为正确的数据。进行错误 更正码检查可能会有数种结果 ( 状态 ), 例如 : 读取的数据正确、 读取的数据具有可更正 (correctable) 的错误、 与读取的数据具有不可更正 (uncorrectable) 的错误。 错误更正码 解码器 1141 会将进行错误更正码检查的结果回报给微处理器 112, 尤其是将 “错误更正码 状态” 回报给微处理器 112。错误产生器 1191 亦得强迫错误更正码解码器 1141 回报任何 错误更正码状态 ( 包含 : 可更正的错误、 不可更正的错误 ) 至微处理器 112。
     当 “错误更正码状态” 指出有错误 ( 例如 : 可更正的错误或是不可更正的错误 ) 发 生时, 微处理器 112 就针对不同类型的错误进行不同的处理。 例如 : 当读取过程中发生不可 更正的错误时, 微处理器 112 会回复该主装置 ( 未显示于图 1 中 ), 以告知所欲读取的数据 已损坏。
     另外, 当该主装置通过存储器控制器 110 对闪存 120 进行存取时, 数据暂存在缓冲 存储器 116 中, 其中快闪时间控制器 1142 会控制传输数据的时序 (Timing)。当存储器控 制器 110 欲将一笔数据自缓冲存储器 116 写入闪存 120 时, 快闪时间控制器 1142 会控制且 查知写入这笔数据的时间。一旦写入的时间过长而且超过某些规范 ( 例如 : SD 卡的规范 ) 所定义的时间限制时, 则快闪时间控制器 1142 就回报微处理器 112, 以告知写入该笔数据 时发生写入错误 (program error) ; 于是, 微处理器 112 就对此错误进行处理, 例如命令控 制逻辑 114 再写一次。错误产生器 1191 得控制快闪时间控制器 1142, 使快闪时间控制器 1142 发生上述的写入错误、 或任何可能的错误, 以使快闪时间控制器 1142 将该些错误回报 给微处理器 112。错误产生器 1191 亦得强迫快闪时间控制器 1142 回报任何错误或错误信 息至微处理器 112。
     图 3 是图 2 所示的方法于一实施例中所涉及的错误发生率的示意图。如图 3 的 左半部所示, 在采用图 2 所示的方法之前的几个错误位元数 (Error BitCount)4、 3、 2、 1、 与 0 所对应的错误发生率分别为 1%、 5%、 10%、 15%、 与 68%。如图 3 的右半部所示, 在本实 施例中, 在主动产生的错误导致额外增加一个错误位元的状况下, 错误发生率的数据就往 上移一列 ; 于是, 错误位元数 5、 4、 3、 2、 1、 与 0 所对应的错误发生率分别为 1%、 5%、 10%、 15%、 68%、 与 0%。然而, 这只是为了说明的目的而已, 并非对本发明的限制。依据本实施 例的一变化例, 在主动产生的错误导致额外增加 X 个错误位元的状况下, 错误发生率的数 据就往上移 X 列, 其中 X 为正整数 ( 例如在本变化例中 X 尤其是大于 1 的正整数 ) ; 于是, 错误位元数 (X+4)、 (X+3)、 (X+2)、 (X+1)、 与 X 所对应的错误发生率分别为 1%、 5%、 10%、 15%、 与 68%, 其中凡是落入区间 [0, (X-1)] 当中的错误位元数所对应的错误发生率均为 0%。
     依据本实施例的多个变化例, 该控制器可于多个预定值当中选择其一作为 X 值。 例如 : 该多个预定值内建于错误产生器 1191, 且由错误产生器 1191 自行选择其一作为 X 值; 又例如 : 该多个预定值内建于错误产生器 1191, 以供微处理器 112 进行选择 ; 又例如 : 该多个预定值由程序代码 112C 所提供, 而微处理器 112 自行选择其一作为 X 值之后, 据以 控制错误产生器 1191 主动地产生错误, 导致额外增加 X 个错误位元。如此一来, 即可快速 且轻易地诱发多个位元错误, 以此检验该控制器处理多个位元错误的能力。 图 4 是本发明一第二实施例的一种记忆装置 200 的示意图, 其中本实施例为第一 实施例的变化例。 如图 4 所示, 上述的错误产生器 1191 被代换为可编程 (Programmable) 错 误产生器 219, 且本实施例不需要设置计时器 1190 与修改单元 1192 ; 如此, 本实施例的错误 产生模块包含可编程错误产生器 219。另外, 上述的控制逻辑 114 被代换为控制逻辑 214, 其包含一验证与错误回报单元 (Verification and Error Report Unit)2141。 因应上述的 架构上的改变, 该控制器在本实施例中改称为存储器控制器 210。
     请注意, 记忆装置 200 尤其适合应用于前述的某些变化例, 例如 : 该控制器可于该 多个预定值当中选择其一作为 X 值的多个变化例。利用可编程错误产生器 219 的可编程特 性, 不论是针对将该多个预定值内建于可编程错误产生器 219 以供其自行选择或供微处理 器 112 进行选择的架构, 或是针对仅将微处理器 112 自行选定的 X 值传送给可编程错误产 生器 219 的架构, 本发明均可实施无碍, 且具备相当大的弹性。
     相较于习知技术, 由于本发明的控制器 ( 例如存储器控制器 110 或 210) 可利用设 置于其内的错误产生器 ( 例如错误产生器 1191 或 219) 主动地产生某一或某些特定类型的 错误, 以增加对应于该 ( 些 ) 特定类型的错误发生率, 也可利用错误产生器迫使控制器的任 何元件回报错误。 故本发明能提升产品出厂前的验证效率 ; 针对错误管理机制, 例如软件错 误管理机制, 本发明尤其能显著地提升验证效率。 本发明具体成效例如 : 将验证时间从数百 个小时缩短到两、 三个小时。因此, 本发明可大幅地节省时间与人力。另外, 由于本发明的 控制器可利用设置于其内的错误产生器主动地产生某一或某些特定类型的错误, 故本发明 可增加测试的完整性。
     以上所述仅为本发明的较佳实施例, 凡依本发明申请专利范围所做的均等变化与 修饰, 皆应属本发明的涵盖范围。
    

提升闪存的控制器的验证效率的方法、记忆装置及控制器.pdf_第1页
第1页 / 共15页
提升闪存的控制器的验证效率的方法、记忆装置及控制器.pdf_第2页
第2页 / 共15页
提升闪存的控制器的验证效率的方法、记忆装置及控制器.pdf_第3页
第3页 / 共15页
点击查看更多>>
资源描述

《提升闪存的控制器的验证效率的方法、记忆装置及控制器.pdf》由会员分享,可在线阅读,更多相关《提升闪存的控制器的验证效率的方法、记忆装置及控制器.pdf(15页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102033791A43申请公布日20110427CN102033791ACN102033791A21申请号200910204794222申请日20090925G06F11/0820060171申请人慧荣科技股份有限公司地址中国台湾新竹县竹北市台元街三十六号八楼之一72发明人钱昱玮74专利代理机构深圳市顺天达专利商标代理有限公司44217代理人易钊54发明名称提升闪存的控制器的验证效率的方法、记忆装置及控制器57摘要本发明涉及一种提升闪存的控制器的验证效率的方法,该方法包含有提供一错误产生模块,用来产生错误;以及触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该。

2、特定类型的错误发生率。本发明另提供相关的记忆装置及其控制器,其中该控制器包含一只读存储器,用来储存一程序代码;一微处理器,用来执行该程序代码以控制对该闪存的存取以及管理多个区块,并且另针对该控制器的错误管理机制来提升验证效率;以及一错误产生模块,用来产生错误;该控制器触发该错误产生模块主动地产生错误。本发明还涉及一种相关的记忆装置及其控制器。本发明针对错误管理机制,可显著地提升验证效率,大幅地节省时间与人力,且可增加测试的完整性。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书8页附图4页CN102033794A1/2页21一种提升闪存的控制器的验证效率的方法。

3、,其特征在于,该方法包含有提供一错误产生模块,用来产生错误;以及触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。2根据权利要求1所述的方法,其特征在于,其另包含有针对该特定类型的错误,验证该错误管理机制。3根据权利要求1所述的方法,其特征在于,其另包含有利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作;或利用该特定元件依据一预定排程触发该触发步骤所触发的运作。4根据权利要求1所述的的方法,其特征在于,其中该错误产生模块包含一错误产生器;以及该方法另包含有利用该错误产生器随机地触发该触发步骤所触发的运作;或利用该错误产生器依据一预定排程。

4、触发该触发步骤所触发的运作。5根据权利要求1所述的方法,其特征在于,其中该错误产生模块包含一计时器与一错误产生器;以及该方法另包含有利用该计时器进行计时控制;以及利用该错误产生器依据该计时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。6根据权利要求1所述的方法,其特征在于,其中该错误产生模块包含一错误产生器与一修改单元;以及该方法另包含有利用该错误产生器来产生错误;以及利用该修改单元依据该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号,以产生该特定类型的错误。7根据权利要求1所述的方法,其特征在于,其中该错误产生模块包含一错误产生器;以及该方法另包含有利用该错误产生器迫使该。

5、控制器内的至少一元件回报该特定类型的错误。8根据权利要求1所述的方法,其特征在于,其中该错误产生模块包含一错误产生器;以及该方法另包含有利用该错误产生器来改变该控制器内的至少一元件的至少一参数,以产生该特定类型的错误。9根据权利要求8所述的方法,其特征在于,其中该至少一元件包含一时间控制器;一验证与错误回报单元;及/或一错误更正码解码器。10根据权利要求1所述的方法,其特征在于,其中该错误产生模块包含一错误产生器,其为可编程错误产生器。11根据权利要求1所述的方法,其特征在于,其中该至少一特定类型的错误包含有错误更正码错误;抹除错误;写入错误;及/或数据传输错误。12一种记忆装置,其特征在于,。

6、其包含有一闪存,该闪存包含多个区块;以及一控制器,用来存取该闪存以及管理该多个区块,并且另针对该控制器本身的错误管理机制来提升验证效率,其中该控制器包含有权利要求书CN102033791ACN102033794A2/2页3一错误产生模块,用来产生错误;其中该控制器触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。13一种记忆装置的控制器,该控制器用来存取一闪存,该闪存包含多个区块,其特征在于,该控制器包含有一只读存储器,用来储存一程序代码;一微处理器,用来执行该程序代码以控制对该闪存的存取以及管理该多个区块,并且另针对该控制器的错误管理机制来提升验证效率;以。

7、及一错误产生模块,用来产生错误;其中通过该微处理器执行该程序代码的该控制器触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。14根据权利要求13所述的控制器,其特征在于,其中通过该微处理器执行该程序代码的该控制器针对该特定类型的错误,验证该错误管理机制。15根据权利要求13所述的控制器,其特征在于,其中通过该微处理器执行该程序代码的该控制器利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作、或利用该特定元件依据一预定排程触发该触发步骤所触发的运作。16根据权利要求13所述的控制器,其特征在于,其中该错误产生模块包含一错误产生器;以及通过该。

8、微处理器执行该程序代码的该控制器利用该错误产生器随机地触发该触发步骤所触发的运作、或利用该错误产生器依据一预定排程触发该触发步骤所触发的运作。17根据权利要求13所述的控制器,其特征在于,其中该错误产生模块包含一计时器与一错误产生器;该错误产生模块利用该计时器进行计时控制,并利用该错误产生器依据该计时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。18根据权利要求13所述的控制器,其特征在于,其中该错误产生模块包含一错误产生器与一修改单元;以及该错误产生模块利用该错误产生器来产生错误,并利用该修改单元依据该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号,以产生该特定类型的错误。

9、。19根据权利要求13所述的控制器,其特征在于,其中该错误产生模块包含一错误产生器;以及通过该微处理器执行该程序代码的该控制器利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。20根据权利要求13所述的控制器,其特征在于,其中该错误产生模块包含一错误产生器;以及通过该微处理器执行该程序代码的该控制器利用该错误产生器来改变该控制器内的至少一元件的至少一参数,以产生该特定类型的错误。21根据权利要求20所述的控制器,其特征在于,其中该至少一元件包含一时间控制器;一验证与错误回报单元;及/或一错误更正码解码器。22根据权利要求13所述的控制器,其特征在于,其中该错误产生模块包含一错误产。

10、生器,其为可编程错误产生器。23根据权利要求13所述的控制器,其特征在于,其中该至少一特定类型的错误包含有错误更正码错误;抹除错误;写入错误;及/或数据传输错误。权利要求书CN102033791ACN102033794A1/8页4提升闪存的控制器的验证效率的方法、记忆装置及控制器技术领域0001本发明涉及闪存FLASHMEMORY的存取ACCESS相关技术领域,更具体地说,涉及一种针对闪存的控制器的错误管理ERRORHANDLING机制来提升闪存的控制器的验证效率的方法、相关的记忆装置及其控制器。背景技术0002近年来由于闪存的技术不断地发展,各种可携式记忆装置例如符合SD/MMC、CF、MS。

11、、XD标准的记忆卡被广泛地实施于诸多应用中。因此,这些可携式记忆装置中的闪存的存取控制遂成为相当热门的议题。0003以常用的NAND型闪存而言,其主要可区分为单阶细胞SINGLELEVELCELL,SLC与多阶细胞MULTIPLELEVELCELL,MLC两大类闪存。单阶细胞闪存中的每个被当作记忆单元的晶体管只有两种电荷值,分别用来表示逻辑值0与逻辑值1。另外,多阶细胞闪存中的每个被当作记忆单元的晶体管的储存能力则被充分利用,采用较高的电压来驱动,以通过不同级别的电压在一个晶体管中记录两组位元信息00、01、11、10;理论上,多阶细胞闪存的记录密度可以达到单阶细胞闪存的记录密度的两倍,这对于。

12、曾经在发展过程中遇到瓶颈的NAND型闪存的相关产业而言,是非常好的消息。0004相较于单阶细胞闪存,由于多阶细胞闪存的价格较便宜,并且在有限的空间里可提供较大的容量,故多阶细胞闪存很快地成为市面上的可携式记忆装置竞相采用的主流。然而,多阶细胞闪存的不稳定性所导致的问题也一一浮现。为了确保可携式记忆装置对闪存的访问控制能符合相关规范,闪存的控制器必须有错误管理机制例如软件错误管理机制以妥善地管理发生各种错误的状况。0005依据相关技术,若要验证上述的错误管理机制,往往必须进行烧机测试,例如利用主装置HOST不断地对可携式记忆装置进行存取。然而,许多类型的错误都是随机发生的,且由于这些错误发生的机。

13、率不高,故测试时间通常很长,可达数百小时之久;非常浪费时间与人力。因此,需要一种新颖的方法针对上述的错误管理机制来提升验证效率。发明内容0006本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种针对闪存的控制器的错误管理ERRORHANDLING机制来提升闪存的控制器的验证效率的方法、相关的记忆装置及其控制器,以解决上述问题。0007本发明解决其技术问题所采用的技术方案之一是构造一种提升闪存的控制器的验证效率的方法,该方法包含有提供一错误产生模块,用来产生错误;以及触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。0008进一步地,上述本发明所述的。

14、方法,其另包含有针对该特定类型的错误,验证该错误管理机制。0009进一步地,上述本发明所述的方法,其另包含有说明书CN102033791ACN102033794A2/8页50010利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作;或0011利用该特定元件依据一预定排程触发该触发步骤所触发的运作。0012进一步地,上述本发明所述的方法,其中该错误产生模块包含一错误产生器;以及该方法另包含有0013利用该错误产生器随机地触发该触发步骤所触发的运作;或0014利用该错误产生器依据一预定排程触发该触发步骤所触发的运作。0015进一步地,上述本发明所述的方法,其中该错误产生模块包含。

15、一计时器与一错误产生器;以及该方法另包含有0016利用该计时器计时器进行计时控制;以及利用该错误产生器依据该计时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。0017进一步地,上述本发明所述的方法,其中该错误产生模块包含一错误产生器与一修改单元;以及该方法另包含有0018利用该错误产生器来产生错误;以及利用该修改单元依据该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号,以产生该特定类型的错误。0019进一步地,上述本发明所述的方法,其中该错误产生模块包含一错误产生器;以及该方法另包含有0020利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。0021进一步地,。

16、上述本发明所述的方法,其中该错误产生模块包含一错误产生器;以及该方法另包含有0022利用该错误产生器来改变该控制器内的至少一元件的至少一参数,以产生该特定类型的错误。0023进一步地,上述本发明所述的方法,其中该至少一元件包含一时间控制器;一验证与错误回报单元;及/或一错误更正码解码器。0024进一步地,上述本发明所述的方法,其中该错误产生模块包含一错误产生器,其为可编程错误产生器。0025进一步地,上述本发明所述的方法,其中该至少一特定类型的错误包含有错误更正码错误;抹除错误;写入错误;及/或数据传输错误。0026本发明本发明解决其技术问题所采用的技术方案之二是构造一种记忆装置,其包含有一闪。

17、存,该闪存包含多个区块;以及一控制器,用来存取该闪存以及管理该多个区块,并且另针对该控制器本身的错误管理机制来提升验证效率,其中该控制器包含有一错误产生模块,用来产生错误;其中该控制器触发该错误产生模块主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。0027进一步地,上述本发明所述的记忆装置,其中该控制器针对该特定类型的错误,验证该错误管理机制。0028进一步地,上述本发明所述的记忆装置,其中该控制器利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作、或利用该特定元件依据一预定排程触发该触发步骤所触发的运作。0029进一步地,上述本发明所述的记忆装置,其。

18、中该错误产生模块包含一错误产生器;说明书CN102033791ACN102033794A3/8页6以及该控制器利用该错误产生器随机地触发该触发步骤所触发的运作、或利用该错误产生器依据一预定排程触发该触发步骤所触发的运作。0030进一步地,上述本发明所述的记忆装置,其中该错误产生模块包含一计时器与一错误产生器;该错误产生模块利用该计时器进行计时控制,并利用该错误产生器依据该计时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。0031进一步地,上述本发明所述的记忆装置,其中该错误产生模块包含一错误产生器与一修改单元;以及该错误产生模块利用该错误产生器来产生错误,并利用该修改单元依据该错误。

19、产生器所产生的错误来改变该闪存与该控制器之间的讯号,以产生该特定类型的错误。0032进一步地,上述本发明所述的记忆装置,其中该错误产生模块包含一错误产生器;以及该控制器利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。0033进一步地,上述本发明所述的记忆装置,其中该错误产生模块包含一错误产生器;以及该控制器利用该错误产生器来改变该控制器内的至少一元件的至少一参数,以产生该特定类型的错误。0034进一步地,上述本发明所述的记忆装置,其中该至少一元件包含一时间控制器;一验证与错误回报单元;及/或一错误更正码解码器。0035进一步地,上述本发明所述的记忆装置,其中该错误产生模块包含一。

20、错误产生器,其为可编程错误产生器。0036进一步地,上述本发明所述的记忆装置,其中该至少一特定类型的错误包含有错误更正码错误;抹除错误;写入错误;及/或数据传输错误。0037本发明解决其技术问题所采用的技术方案之三是构造一种记忆装置的控制器,该控制器用来存取一闪存,该闪存包含多个区块,该控制器包含有一只读存储器READONLYMEMORY,ROM,用来储存一程序代码;一微处理器,用来执行该程序代码以控制对该闪存的存取以及管理该多个区块,并且另针对该控制器的错误管理机制来提升验证效率;以及一错误产生模块,用来产生错误;其中通过该微处理器执行该程序代码的该控制器触发该错误产生模块主动地产生至少一特。

21、定类型的错误,以增加对应于该特定类型的错误发生率。0038进一步地,上述本发明所述的控制器,其中通过该微处理器执行该程序代码的该控制器针对该特定类型的错误,验证该错误管理机制。0039进一步地,上述本发明所述的控制器,其中通过该微处理器执行该程序代码的该控制器利用位于该错误产生模块之外的一特定元件随机地触发该触发步骤所触发的运作、或利用该特定元件依据一预定排程触发该触发步骤所触发的运作。0040进一步地,上述本发明所述的控制器,其中该错误产生模块包含一错误产生器;以及通过该微处理器执行该程序代码的该控制器利用该错误产生器随机地触发该触发步骤所触发的运作、或利用该错误产生器依据一预定排程触发该触。

22、发步骤所触发的运作。0041进一步地,上述本发明所述的控制器,其中该错误产生模块包含一计时器与一错误产生器;该错误产生模块利用该计时器进行计时控制,并利用该错误产生器依据该计时器的计时控制来产生和时间相关的错误或调整产生错误的时间点。0042进一步地,上述本发明所述的控制器,其中该错误产生模块包含一错误产生器与说明书CN102033791ACN102033794A4/8页7一修改单元;以及该错误产生模块利用该错误产生器来产生错误,并利用该修改单元依据该错误产生器所产生的错误来改变该闪存与该控制器之间的讯号,以产生该特定类型的错误。0043进一步地,上述本发明所述的控制器,其中该错误产生模块包含。

23、一错误产生器;以及通过该微处理器执行该程序代码的该控制器利用该错误产生器迫使该控制器内的至少一元件回报该特定类型的错误。0044进一步地,上述本发明所述的控制器,其中该错误产生模块包含一错误产生器;以及通过该微处理器执行该程序代码的该控制器利用该错误产生器来改变该控制器内的至少一元件的至少一参数,以产生该特定类型的错误。0045进一步地,上述本发明所述的控制器,其中该至少一元件包含一时间控制器;一验证与错误回报单元;及/或一错误更正码解码器。0046进一步地,上述本发明所述的控制器,其中该错误产生模块包含一错误产生器,其为可编程错误产生器。0047进一步地,上述本发明所述的控制器,其中该至少一。

24、特定类型的错误包含有错误更正码错误;抹除错误;写入错误;及/或数据传输错误。0048实施本发明的技术方案,具有以下有益效果本发明的控制器可利用设置于其内的错误产生器主动地产生某一或某些特定类型的错误,以增加对应于该特定类型的错误发生率,也可利用错误产生器迫使控制器的任何元件回报错误。故本发明能提升产品出厂前的验证效率;针对错误管理机制,例如软件错误管理机制,本发明尤其能显著地提升验证效率。因此,本发明可大幅地节省时间与人力。另外,由于本发明的控制器可利用设置于其内的错误产生器主动地产生某一或某些特定类型的错误,故本发明可增加测试的完整性。附图说明0049图1是本发明一第一实施例的一种记忆装置的。

25、示意图;0050图2是本发明一实施例的一种提升闪存的控制器的验证效率的方法的流程图;0051图3为图2所示的方法在一实施例中所涉及的错误发生率的示意图;0052图4是本发明一第二实施例的一种记忆装置的示意图。0053【主要元件符号说明】0054说明书CN102033791ACN102033794A5/8页80055具体实施方式0056请参考图1,图1是本发明一第一实施例的一种记忆装置100的示意图,其中本实施例的记忆装置100优选为可携式记忆装置例如符合SD/MMC、CF、MS、XD标准的记忆卡。记忆装置100包含有一闪存120;以及一控制器,用来存取闪存120,其中该控制器例如一存储器控制器。

26、110。依据本实施例,存储器控制器110包含一微处理器112、一只读存储器READONLYMEMORY,ROM112M、一控制逻辑114、一缓冲存储器116、一接口逻辑118、与一错误产生模块119。另外,控制逻辑114包含一错误更正码ERRORCORRECTIONCODE,ECC解码器1141与一时间控制器,其中该时间控制器例如一快闪时间控制器FLASHTIMINGCONTROLLER1142。此外,错误产生模块119包含一计时器1190、一错误产生器1191、与一修改单元1192。0057在本实施例中,只读存储器112M用来储存一程序代码112C,而微处理器112则用来执行程序代码112C。

27、以控制对闪存120的存取。在典型状况下,闪存120包含多个区块BLOCK,而该控制器例如通过微处理器112执行程序代码112C的存储器控制器110对闪存120进行抹除数据的运作时以区块为单位来进行抹除。另外,一区块可记录特定数量的页PAGE,其中该控制器对闪存120进行写入数据的运作是以页为单位来进行写入。0058实作上,通过微处理器112执行程序代码112C的存储器控制器110可利用其本身说明书CN102033791ACN102033794A6/8页9内部的元件来进行诸多控制运作,例如利用控制逻辑114来控制闪存120的存取运作尤其是对至少一区块或至少一页的存取运作、利用缓冲存储器116进行。

28、所需的缓冲处理、以及利用接口逻辑118来与一主装置HOSTDEVICE沟通。0059依据本实施例,除了能存取闪存120,该控制器尤其是通过微处理器112执行程序代码112C的存储器控制器110还能妥善地管理该多个区块。另外,该控制器还可针对该控制器本身的错误管理ERRORHANDLING机制,尤其是针对微处理器112的软件错误管理SOFTWAREERRORHANDLING机制,来提升验证效率,其中,软件错误管理机制可以软件或轫体的形式储存在记忆装置100,例如包含于程序代码112C。于本实施例中,错误产生器1191用来产生错误,而该控制器触发错误产生器1191主动地产生至少一特定类型的错误,以。

29、增加对应于该特定类型的错误发生率。于是,该控制器就可以针对该特定类型的错误,验证该错误管理机制尤其是该软件错误管理机制。相关细节可参考图2来进一步说明。0060图2是本发明一实施例的一种提升闪存的控制器的验证效率的方法910的流程图。该方法可应用于图1所示的记忆装置100,尤其是上述的控制器例如通过微处理器112执行程序代码112C的存储器控制器110。另外,该方法可利用图1所示的记忆装置100来实施,尤其是利用上述的控制器来实施。该方法说明如下0061于步骤912中,提供一错误产生模块,用来产生错误;例如在存储器控制器110中提供错误产生模块119,其中错误产生模块119尤其是其内的错误产生。

30、器1191用来产生错误。0062于步骤914中,上述的控制器例如通过微处理器112执行程序代码112C的存储器控制器110触发错误产生模块119尤其是其内的错误产生器1191主动地产生至少一特定类型的错误,以增加对应于该特定类型的错误发生率。举例来说,存储器控制器110得触发错误产生器1191,以利用错误产生器1191在实际上无任何存取错误的状况下,迫使存储器控制器110内任何元件回报任何类型的错误至微处理器112,尤其是迫使存储器控制器110内的至少一元件回报该特定类型的错误至微处理器112。例如该控制器可利用位于错误产生模块119之外的一特定元件随机地触发本步骤所触发的运作;又例如该控制器。

31、可利用该特定元件依据一预定排程触发本步骤所触发的运作。然而,这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的一变化例,错误产生器1191可进行自我触发,以主动地产生该特定类型的错误。例如该控制器可利用错误产生器1191随机地触发本步骤所触发的运作;又例如该控制器可利用错误产生器1191依据一预定排程触发本步骤所触发的运作。0063在本实施例中,错误产生模块119利用计时器1190进行计时控制,并可利用错误产生器1191依据计时器1190的计时控制来产生和时间相关的错误或调整产生错误的时间点。另外,错误产生模块119可利用错误产生器1191来产生错误,并可利用修改单元1192依据错误。

32、产生器1191所产生的错误来改变闪存120与该控制器之间的讯号,以产生该特定类型的错误。例如利用修改单元1192,错误产生器1191将其本身所主动产生的错误导入闪存120与控制逻辑114之间的一个或多个数据传输路径,尤其是修改该些数据传输路径上的数据的一个或多个位元。实作上,修改单元1192可采用一种或数种逻辑闸的组合来实施。说明书CN102033791ACN102033794A7/8页100064依据本实施例,该控制器亦可利用错误产生器1191来改变该控制器内的至少一元件的至少一参数,以产生该特定类型的错误。例如上述的至少一元件包含上述的时间控制器;此状况下,错误产生器1191将其本身所主动。

33、产生的错误导入快闪时间控制器1142,尤其是修改快闪时间控制器1142的至少一参数,以产生该特定类型的错误。然而,这只是为了说明的目的而已,并非对本发明的限制。错误产生器1191亦得强迫快闪时间控制器1142回报错误或错误信息至微处理器112。依据本实施例的一变化例,上述的至少一元件包含错误更正码解码器1141;此状况下,错误产生器1191将其本身所主动产生的错误导入错误更正码解码器1141,尤其是修改错误更正码解码器1141的至少一参数,以产生该特定类型的错误。0065另外,上述的至少一特定类型例如一个或多个特定类型的错误包含有错误更正码错误;抹除错误;写入WRITE/PROGRAM错误;及。

34、/或数据传输错误。举例来说,错误产生器1191可通过修改单元1192来修改该些数据传输路径上的数据的1个或多个位元,以产生错误更正码错误及/或数据传输错误,例如原本数据传输路径上的数据为“00000000”,而错误产生器1191是通过修改单元1192将其修改为“01010101”,如此一来,存入/或读自闪存的120的数据就具有四个位元的错误;于是,错误更正码错误及/或数据传输错误的错误发生率就提高了且可被控制。另外,错误产生器1191亦可修改快闪时间控制器1142的至少一参数,以产生抹除错误及/或写入错误;于是,抹除错误及/或写入错误的错误发生率就提高了。0066实作上,在存储器控制器110读。

35、取闪存120时,错误更正码解码器1141会对所读取的数据进行错误更正码检查,以确认所读取的数据是否为正确的数据。进行错误更正码检查可能会有数种结果状态,例如读取的数据正确、读取的数据具有可更正CORRECTABLE的错误、与读取的数据具有不可更正UNCORRECTABLE的错误。错误更正码解码器1141会将进行错误更正码检查的结果回报给微处理器112,尤其是将“错误更正码状态”回报给微处理器112。错误产生器1191亦得强迫错误更正码解码器1141回报任何错误更正码状态包含可更正的错误、不可更正的错误至微处理器112。0067当“错误更正码状态”指出有错误例如可更正的错误或是不可更正的错误发生。

36、时,微处理器112就针对不同类型的错误进行不同的处理。例如当读取过程中发生不可更正的错误时,微处理器112会回复该主装置未显示于图1中,以告知所欲读取的数据已损坏。0068另外,当该主装置通过存储器控制器110对闪存120进行存取时,数据暂存在缓冲存储器116中,其中快闪时间控制器1142会控制传输数据的时序TIMING。当存储器控制器110欲将一笔数据自缓冲存储器116写入闪存120时,快闪时间控制器1142会控制且查知写入这笔数据的时间。一旦写入的时间过长而且超过某些规范例如SD卡的规范所定义的时间限制时,则快闪时间控制器1142就回报微处理器112,以告知写入该笔数据时发生写入错误PRO。

37、GRAMERROR;于是,微处理器112就对此错误进行处理,例如命令控制逻辑114再写一次。错误产生器1191得控制快闪时间控制器1142,使快闪时间控制器1142发生上述的写入错误、或任何可能的错误,以使快闪时间控制器1142将该些错误回报给微处理器112。错误产生器1191亦得强迫快闪时间控制器1142回报任何错误或错误信息至微处理器112。说明书CN102033791ACN102033794A8/8页110069图3是图2所示的方法于一实施例中所涉及的错误发生率的示意图。如图3的左半部所示,在采用图2所示的方法之前的几个错误位元数ERRORBITCOUNT4、3、2、1、与0所对应的错误。

38、发生率分别为1、5、10、15、与68。如图3的右半部所示,在本实施例中,在主动产生的错误导致额外增加一个错误位元的状况下,错误发生率的数据就往上移一列;于是,错误位元数5、4、3、2、1、与0所对应的错误发生率分别为1、5、10、15、68、与0。然而,这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的一变化例,在主动产生的错误导致额外增加X个错误位元的状况下,错误发生率的数据就往上移X列,其中X为正整数例如在本变化例中X尤其是大于1的正整数;于是,错误位元数X4、X3、X2、X1、与X所对应的错误发生率分别为1、5、10、15、与68,其中凡是落入区间0,X1当中的错误位元数所对。

39、应的错误发生率均为0。0070依据本实施例的多个变化例,该控制器可于多个预定值当中选择其一作为X值。例如该多个预定值内建于错误产生器1191,且由错误产生器1191自行选择其一作为X值;又例如该多个预定值内建于错误产生器1191,以供微处理器112进行选择;又例如该多个预定值由程序代码112C所提供,而微处理器112自行选择其一作为X值之后,据以控制错误产生器1191主动地产生错误,导致额外增加X个错误位元。如此一来,即可快速且轻易地诱发多个位元错误,以此检验该控制器处理多个位元错误的能力。0071图4是本发明一第二实施例的一种记忆装置200的示意图,其中本实施例为第一实施例的变化例。如图4所。

40、示,上述的错误产生器1191被代换为可编程PROGRAMMABLE错误产生器219,且本实施例不需要设置计时器1190与修改单元1192;如此,本实施例的错误产生模块包含可编程错误产生器219。另外,上述的控制逻辑114被代换为控制逻辑214,其包含一验证与错误回报单元VERIFICATIONANDERRORREPORTUNIT2141。因应上述的架构上的改变,该控制器在本实施例中改称为存储器控制器210。0072请注意,记忆装置200尤其适合应用于前述的某些变化例,例如该控制器可于该多个预定值当中选择其一作为X值的多个变化例。利用可编程错误产生器219的可编程特性,不论是针对将该多个预定值内。

41、建于可编程错误产生器219以供其自行选择或供微处理器112进行选择的架构,或是针对仅将微处理器112自行选定的X值传送给可编程错误产生器219的架构,本发明均可实施无碍,且具备相当大的弹性。0073相较于习知技术,由于本发明的控制器例如存储器控制器110或210可利用设置于其内的错误产生器例如错误产生器1191或219主动地产生某一或某些特定类型的错误,以增加对应于该些特定类型的错误发生率,也可利用错误产生器迫使控制器的任何元件回报错误。故本发明能提升产品出厂前的验证效率;针对错误管理机制,例如软件错误管理机制,本发明尤其能显著地提升验证效率。本发明具体成效例如将验证时间从数百个小时缩短到两、三个小时。因此,本发明可大幅地节省时间与人力。另外,由于本发明的控制器可利用设置于其内的错误产生器主动地产生某一或某些特定类型的错误,故本发明可增加测试的完整性。0074以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。说明书CN102033791ACN102033794A1/4页12图1说明书附图CN102033791ACN102033794A2/4页13图2说明书附图CN102033791ACN102033794A3/4页14图3说明书附图CN102033791ACN102033794A4/4页15图4说明书附图CN102033791A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1