集成电路和用于集成电路的存储器自我测试方法_2

文档序号:9709513阅读:来源:国知局
n)。当第二子系统23a运行时,第二修复系统23b检测第二RAM23中是否发生故障。当所述第二修复系统23b检测到所述第二 RAM23中的故障,则根据一预先设定的修复途径修复所述故障,例如使用一冗余的存储器列替代出故障的存储器列。当第三子系统24a运行时,第三修复系统24b检测第三RAM24中是否发生故障。当所述第三修复系统24b检测到所述第三RAM24中的故障,则根据一预先设定的修复途径修复所述故障。
[0024]所述修复系统22b、23b以及24b可为一硬件(hardware)电路或所述核心电路21所执行的软件(software)或固件(firmware)。尽管图1和图2揭示了一种BIST机制,但是所述BIST机制会由于修复机制的失败或不能正常工作而不能正常地发挥作用。
[0025]图3为本发明的一个实施例的存储器自我测试方法的流程图。该存储器自我测试方法被应用于包括有嵌入式存储器的集成电路的芯片,并由所述芯片的核心电路所执行。所述芯片包括一核心电路和一存储器,所述存储器中存储有子系统。在本实施例中,提供一修复系统来检测并修复所述存储器中的故障。所述修复系统可为由所述核心电路激活的子系统的一部分,也可为所述核心电路的一部分。该存储器自我测试方法并不仅仅是一个测试-修复方法,而是一个可以检测并修复嵌入式存储器的故障以及验证所述修复系统是否失败的方法。
[0026]在步骤S31,所述修复系统检测所述芯片的嵌入式存储器是否存在故障。如果所述修复系统未检测到故障,执行步骤S34。如果所述修复系统检测到故障,执行步骤S32。
[0027]在步骤S32,所述修复系统根据预先设定的修复途径修复所述故障。在本实施例中,所述修复系统可包括故障修复库(detect-repair library),存储有大量的被检测到的故障的故障类型以及对应的故障修复途径。例如,假设检测到的故障为一个存储器列失效;而其对应的修复途径可为使用一个冗余的存储器列替代所述失效的存储器列。当修复所述故障后,则执行步骤S33。所述修复系统验证所述故障是否已经被修复。在另一个实施例中,步骤S33包括两阶段的验证。首先,所述修复系统验证所述故障是否被修复(例如,可再次执行步骤S31,检测所述嵌入式存储器是否存在故障,如果再次执行步骤S31的结果是未检测到故障,则可认为验证所述故障是否被修复的验证通过)。其次,所述核心电路根据所检测到的故障类型和所述修复系统所采用的修复途径验证所述修复系统(例如,可执行后续所描述的步骤S34-S36的步骤来进行验证)。
[0028]回到步骤S34。当所述修复系统未检测到故障并不意味着所述嵌入式存储器中没有故障。其可能是所述修复系统出故障了。为确保步骤S31的结果是正确的,所述修复系统需要首先被验证。在步骤S34,一主动的自我测试模式(active self-testing mode)被激活。所述核心电路向所述嵌入式存储器注入一故障(例如一假故障)并通知所述修复系统修复所述故障。具体的,一故障模型库(defect model library)被提供给所述核心电路。该故障模型库包括多个故障类型和对应的修复途径。例如,故障类型可为存储器列的失效,而对应的修复途径可为使用冗余的存储器列替换所述失效的存储器列。请注意,一个故障类型可有多个修复途径。所述核心电路从该故障模型库中选择至少一种故障类型,并获取至少一种与之对应的正确的修复途径。在步骤S35,所述修复电路修复所述被注入的故障,并产生一修复结果。所述修复电路也可包括一个与所述故障模型库相同的故障修复库(defect-repair library),或者所述故障修复库中所包括的内容与所述故障模型库所包括的内容相同。请注意,所述故障模型库中所包括的所有故障类型必须也包括在所述故障修复库中,并且故障类型对应的故障修复途径在两个数据库中也要相同。在步骤S35,所述修复电路利用所述故障修复库中与所述故障类型对应的修复途径修复所述被注入的故障。在步骤S36,所述核心电路验证所述修复结果并确定所述修复系统是否通过修复测试。步骤S36可采取后续实施例中步骤S45相同的手段来对修复系统进行验证,在此不进行赘述。
[0029]如果所述修复系统通过所述修复测试,执行步骤S38。所述核心电路关闭所述芯片的所述主动的自我测试模式。如果所述修复系统没有通过所述修复测试,执行步骤S37来输出一警报信号,并且所述芯片被归类为故障。在本实施例中,应用在芯片上的BIST机制包括两部分:用于检测并修复故障的修复系统,以及验证所述修复系统的验证机制。根据所揭露的方法,由于图3所示的方法可验证BIST机制以确保所述BIST机制能正常地运行,由此BIST机制变得更加完善。
[0030]图4为本发明的另一个实施例的存储器自我测试方法的流程图。该存储器自我测试方法被应用于包括有嵌入式存储器的芯片,并由所述芯片的核心电路所执行。所述芯片包括一核心电路和一存储器,所述存储器中存储有子系统。所述存储器运行在两种不同的模式:一个普通模式(normal mode)和一个主动的自我测试模式(active self-testingmode)。当所述存储器运行在所述普通模式,所述存储器可被读和写,并且当发现所述存储器故障,修复系统可修复其故障。在本实施例中,所述故障可为一硬件故障,例如,存储器列或行被毁坏。在接下来的段落中将讨论所述存储器运行在所述主动的自我测试模式的情形。
[0031]在步骤S41,开启所述存储器的所述主动的自我测试模式。在一个实施例中,核心电路基于用户发送的指令开启所述主动的自我测试模式。在另一个实施例中,所述存储器包括一个特殊的引脚,当所述特殊的引脚的逻辑状态从第一状态改变为第二状态时,所述存储器的主动的自我测试模式被开启。在步骤S42,核心电路向所述存储器注入一个故障(例如一假故障)并指示修复系统修复所述故障。
[0032]具体的,提供一故障模型库给所述核心电路,该故障模型库包括多个故障类型和对应的修复途径。例如,故障类型可为存储器列的失效,而对应的修复途径可为使用冗余的存储器列替换所述失效的存储器列。请注意,一个故障类型可有多个修复途径。所述核心电路选择至少一种故障类型,并获取至少一种与之对应的正确的修复途径。则在步骤S42,所述核心电路将选择的故障注入所述存储器。
[0033]在步骤S43,所述修复系统修复所述注入的故障。所述修复系统也可包括一个与所述故障模型库相同的故障修复库(defect-repair library),或者所述故障修复库中所包括的内容与所述故障模型库所包括的内容相同。请注意,所述故障模型库中所包括的所有故障类型必须也包括在所述故障修复库中,并且故障类型对应的故障修复途径在两个数据库中也要相同。具体实现中,在步骤S43可利用故障修复库中与所述注入的故障对应的修复途径修复所注入的故障。在步骤S44,所述核心电路从所述修复系统获取一修复结果。所述修复结果可包括一个故障类型及所采用的修复途径。
[0034]在步骤S45,所述核心电路验证所述修复结果并确定所述修复系统是否通过修复测试(也即,所述核心电路验证所述修复结果是否与一预先设定的结果吻合,所述预先设定的结果可为故障模型库中定义的故障类型及其对应的修复途径)。如果所述核心电路确认所述修复结果与预先设定的结果吻合,则在步骤S46,所述修复系统通过所述验证。如果所述核心电路确认所述修复结果与预先设定的结果不吻合,则在步骤S47,所述修复系统未通过所述验证。依照图4的方法,可通过过滤掉使用失效的BIST机制的芯片来增强芯片的可靠性。
[0035]图5为本发明的一个实施例的使用BIST机制的芯片的示意图。如图5所示,芯片50包括一核心电路51、一第一存储器52和一第二存储器53,其中所述第一存储器52包括一第一测试引脚52a,标记为HDEN,所述第二存储器53包括一第二测试引脚53a,标记为HDEN。所述第一存储器52和所述第二存储器53分别存储一第一子系统和一第二子系统。所述第一子系统包括一第一修复系统来修复所述第一存储器52的故障,所述第二子系统包一第二修复系统来修复所述第二存储器53的故障。
[0036]在本实施例中,所述第一修复系统和所述第二修复系统包括一个自我验证功能(self
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1