CN103854705B - 用于提供智能存储器架构的方法和系统 - Google Patents

用于提供智能存储器架构的方法和系统 Download PDF

Info

Publication number
CN103854705B
CN103854705B CN201310629755.3A CN201310629755A CN103854705B CN 103854705 B CN103854705 B CN 103854705B CN 201310629755 A CN201310629755 A CN 201310629755A CN 103854705 B CN103854705 B CN 103854705B
Authority
CN
China
Prior art keywords
error rate
memory
write
test
built
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310629755.3A
Other languages
English (en)
Other versions
CN103854705A (zh
Inventor
A.E.昂格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/691,639 external-priority patent/US9069719B2/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN103854705A publication Critical patent/CN103854705A/zh
Application granted granted Critical
Publication of CN103854705B publication Critical patent/CN103854705B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7821Tightly coupled to memory, e.g. computational memory, smart memory, processor in memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/14Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using thin-film elements
    • G11C11/15Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using thin-film elements using multiple magnetic layers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/10Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Mram Or Spin Memory Techniques (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Semiconductor Memories (AREA)
  • Hall/Mr Elements (AREA)

Abstract

提供了一种智能存储器系统,其优选地包括存储器和处理器,其中存储器包括一个或多个存储器芯片,处理器包括一个或多个存储器处理器芯片。所述系统可以包括能够执行误比特率内置自测试的智能存储器控制器。所述智能存储器控制器可以包括误比特率控制逻辑,其被配置成控制误比特率内置自测试。写错误率测试图案生成器可以生成用于误比特率内置自测试的写错误测试图案。读错误率测试图案生成器可以生成用于内置自测试的读错误测试图案。智能存储器控制器可以在内部生成错误率定时图案,执行内置自测试,测量得到的错误率,基于所测量的错误率自动调整一个或多个测试参数,以及使用调整后的参数重复内置自测试。

Description

用于提供智能存储器架构的方法和系统
相关申请的交叉引用
本申请是于2012年11月30日提交的名称为“用于提供智能存储器架构的系统和方法”的共同受让的申请第13/691,639号的部分继续申请,其要求于2012年2月11日提交的名称为“用于提供智能存储器架构的方法和系统”的共同受让的临时申请第61/597,773号的权益,其内容通过整体引用合并于此。
技术领域
本发明构思涉及智能存储器架构,更具体地,涉及用于提供用于电阻型存储器的智能存储器架构的方法和系统。
背景技术
本发明构思涉及用于存储信息以及从存储器集成电路检索信息的存储器系统,包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、快闪存储器、相变随机存取存储器(PCRAM)、自旋转移矩随机存取存储器(STT-RAM)、磁性随机存取存储器(MRAM)、电阻式随机存取存储器(RRAM)、和未来存储器件。这里描述的本发明的各个方面尤其适于表现出概率型特性(probabilistic-type characteristic)和相对较高的错误率的存储器,诸如STT-RAM、MRAM、和RRAM存储器。
半导体存储器已经被广泛地在电子系统中用于存储数据。存在两种常见类型的半导体存储器:非易失性存储器和易失性存储器。易失性存储器件,诸如静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM),当施加在其上的电力被关断时,丢失其数据。然而,非易失性半导体存储器件,诸如快闪存储器、可擦可编程只读存储器(EPROM)、或磁性随机存取存储器(MRAM),即使在施加于其上的电力被关断之后仍然保持其电荷。在由于电力故障或终止引起的数据丢失不可接受的情况下,非易失性存储器由此被用来存储数据。
图1A到图1D是用于形成自旋转移矩(STT)MRAM单元(cell)的磁隧道结(MTJ)结构10的简化示意性截面例示图。参考图1A到图1D,MTJ10被示出为部分地包括参考层12、隧穿层14、和自由层16。参考层12和自由层16可以是铁磁层,而隧穿层14是非磁性层。参考层12的磁化方向在制造期间被固定,因此在STT-RAM存储器件的操作期间不发生改变。然而,自由层16的磁化方向在操作期间可以通过使所需强度的电流流经MTJ结构而变化。
在图1A中,参考层12和自由层16被示出为具有相同的磁化方向,即处于平行磁化状态。在图1B中,参考层12和自由层16被示出为具有相反的磁化方向,即处于反平行状态。在图1C中,参考层12和自由层16被示出为具有相同的磁化方向(平行状态),该磁化方向垂直于由自由层16和隧穿层14的界面所定义的平面。在图1D中,参考层12和自由层16被示出为具有相反的磁化方向(反平行状态),其中该磁化方向垂直于由自由层16和隧穿层14的界面所定义的平面。
为了从如图1A和图1C中所示的平行状态切换到如图1B和图1D中所示的反平行状态,参考层12的电压电势相对于自由层16的电压电势被提高。这个电压差引起自旋极化电子从自由层16流向参考层12以传递其角动量并且将自由层16的磁化方向改变为反平行状态。为了从反平行状态切换到平行状态,自由层16的电压电势相对于参考层12的电压电势被提高。这个电压差引起自旋极化电子从参考层12流向自由层16以传递其角动量并且将自由层16的磁化方向改变为平行状态。
为了从平行状态切换到非平行状态或者从非平行状态切换到平行状态,施加在MTJ10的电压以及相应的流经MTJ的电流必须分别大于一对各自的阈值。必须超过阈值电压以使得切换发生的电压也被称为切换电压Vc。类似地,必须超过阈值电流以使得切换发生的电流也被称为切换电流Ic
如所熟知的,当自由层16和参考层12具有相同的磁化方向(即,平行状态)时,MTJ10具有相对较低的电阻。相反,当自由层16和参考层12具有相反的磁化方向(即,反平行状态)时,MTJ10具有相对较高的电阻。这个电阻值差提供了MTJ10充当存储器存储器件的能力。由于MTJ的物理特性,将MTJ从平行状态改变为反平行状态所需的临界电流常常大于将MTJ从反平行状态改变为平行状态所需的临界电流。
图2A示出了形成STT-MRAM型存储单元中的可变电阻器的磁隧道结(MTJ)10与相关联的选择晶体管20一起形成STT-MRAM单元30。MTJ10包括参考层或钉扎层(pinned layer)12、自由层16、和布置在参考层12和自由层16之间的隧穿层14。晶体管20通常是NMOS晶体管,因为NMOS晶体管相对于PMOS晶体管具有固有的更高的电流驱动、更低的阈值电压、和更小的面积。用来在MRAM30中写入“1”的电流可以不同于用来写入“0”的电流。在这两种写情况期间的电流流动方向的不对称是由晶体管20的栅极-源极电压的不对称引起的。
在下面的描述中,当与MRAM单元相关联的MTJ的自由层和参考层处于平行(P)状态时,即,当MTJ表现出低电阻时,该MRAM单元被定义为处于逻辑“0”状态。相反,当与MRAM单元相关联的MTJ的自由层和参考层处于反平行(AP)状态时,即,当MTJ表现出高电阻时,该MRAM单元被定义为处于逻辑“1”状态。要理解,在其它实施例中,当MRAM单元处于AP状态时其可以被定义为处于逻辑“0”状态,而当MRAM单元处于P状态时其可以被定义为处于逻辑“1”状态。另外,在下面,假设MTJ10的参考层面向与其相关联的选择晶体管,如图2A中所示。
因此,根据以上讨论,沿着箭头35的方向(即,向上方向)流动的电流要么(i)引起从P状态到AP状态的切换从而写入“1”,要么(ii)稳定相关联的MTJ的、先前建立的AP状态。类似地,沿着箭头40的方向(即,向下方向)流动的电流要么(i)引起从AP状态到P状态的切换从而写入“0”,要么(ii)稳定相关联的MTJ的、先前建立的P状态。然而,要理解,在其它实施例中,这个朝向可以被反转从而MTJ的自由层面向与其相关联的选择晶体管。在这样的实施例(未示出)中,沿着箭头35的方向流动的电流要么(i)引起从AP状态到P状态的切换,要么(ii)稳定相关联的MTJ的、先前建立的P状态。类似地,在这样的实施例中,沿着箭头40的方向流动的电流要么(i)引起从P状态到AP状态的切换,要么(ii)稳定先前建立的AP状态。
图2B是图2A的MRAM30的示意性表示,其中MTJ10被示出为其电阻根据存储于其中的数据而变化的存储元件。(i)当电流沿着箭头35流动时,MTJ10将其状态从P改变为AP,和/或(ii)当电流沿着箭头40流动时,MTJ10将其状态从AP改变为P。
将MTJ10从AP状态切换成P状态或者从P状态切换成AP状态所需的电压必须超过临界切换电压Vc0。对应于这个电压的电流被称为临界或切换电流Ic0。虽然指定的临界值Vc0和相关的临界切换电流Ic0可以以各种方式定义,但是这些值也可以基于指定时间内存储单元的50%的切换概率来选择。换句话说,可以基于MTJ10的设计和/或基于在特定临界值Vc0和/或切换电流Ic0处切换概率的测量结果来选择或以其它方式确定临界切换电流Ic0。当满足阈值临界切换电流Ic0时,能够有50%的几率发生下面的情况:所存储的存储器比特切换值(例如,从“0”到“1”或者从“1”到“0”)。过驱动电流被施加以便保证以足以满足标准可靠性期望(standard reliability expectation)的错误率发生切换。这个过驱动电流,或切换电流,Isw,可以是Ic0的值的1.3倍、1.5倍、2倍、或高于2倍。例如,如果在20纳秒(ns)写脉冲宽度用于MTJ器件的Ic0是7微安(uA),则用来可靠地切换MTJ的状态的Isw可以是11uA或更大。
在一些情况下,对于某个时段,例如10纳秒,“安全”写电流(例如,其中写错误率低于大约10e-9)可以是临界切换电流Ic0的1.5到2倍。为了从存储单元读出比特值,可以施加相对“安全”的读电流(例如,其中读错误率低于大约10e-9)。例如,“安全”读电流可以是临界切换电流Ic0的0.2倍(即20%)。另举一例,如果临界切换电流Ic0是6微安(uA),则正常操作模式下的写电流可以是至少12uA,或者大约12uA,而正常操作模式下的读电流可以小于1.2uA,或者大约1.2uA。以这种方式,在正常写条件下存储单元正确(properly)切换的概率非常高,在某些情况下接近100%。类似地,在正常读条件下意外(accidentally)切换存储单元的值的概率可能非常低,在某些情况下接近零。
一旦处于AP状态,移除所施加的电压不影响MTJ10的状态。类似地,为了在正常操作模式下从AP状态过渡到P状态,至少为Vc0的负电压被施加,从而至少为切换电流Ic0的电流电平按相反方向流经存储单元。一旦处于P状态,移除所施加的电压不影响MTJ10的状态。
换句话说,MTJ10可以从反平行状态(即,高电阻状态,或逻辑“1”状态)被切换到平行状态(即,低电阻状态,或逻辑“0”状态)以便存储“0”。假设MTJ10初始处于逻辑“1”或AP状态,为了存储“0”,在正常操作模式下,使至少临界电流Ic0那么大的或者大于临界电流Ic0的电流按箭头40的方向流经晶体管20。为了实现这个目的,晶体管20的源极节点(SL或源极线)被经由电阻路径(未示出)耦接至地电势,正电压被施加到晶体管20的栅极节点(WL或字线),并且正电压被施加到晶体管20的漏极节点(BL或位线)。
如以上所提及的,MTJ10也可以从平行状态被切换到反平行状态以便存储“1”。假设MTJ10初始处于逻辑“0”或P状态,为了存储“1”,在正常操作模式下,使至少临界电流Ic0那么大的或者大于临界电流Ic0的电流按箭头35的方向流经晶体管20。为了实现这个目的,经由电阻路径(未示出)为节点SL提供正电压,为节点WL提供正电压,并且节点BL被经由电阻路径(未示出)耦接至地电势。
图3表示在各种写周期期间MTJ状态(或其电阻)的变化。为了从P状态(低电阻状态)过渡到AP状态(高电阻状态),至少临界切换电压Vc0那么高的或者高于临界切换电压Vc0的正电压被施加。一旦处于AP状态,移除所施加的电压不影响MTJ的状态。类似地,为了从AP状态过渡到P状态,低于临界切换电压Vc0的负电压被施加。一旦处于P状态,移除所施加的电压不影响MTJ的状态。当MTJ处于AP状态时其电阻为Rhigh。类似地,当MTJ处于P状态时其电阻为Rlow
图4A示出了MTJ10被编程为从反平行状态(即,高电阻状态,或逻辑“1”状态)切换到平行状态(即,低电阻状态,或逻辑“0”状态)以便存储“0”。在该图中,假设MTJ10初始处于逻辑“1”或AP状态。如上所述,为了存储“0”,使至少临界电流Ic0那么大的或者大于临界电流Ic0的电流Isw按箭头40的方向流经晶体管20。为了实现这个目的,晶体管20的源极节点(SL)被经由电阻路径(未示出)耦接至地电势,正电压VPP被施加到晶体管20的栅极节点(WL或字线),并且正电压VCC被施加到晶体管20的漏极节点(BL或位线)。
图5是针对诸如图4A和图4B中示出的MTJ10的传统MTJ的、大约在时间25ns和35ns之间发生的写“0”操作以及大约在时间45ns和55ns之间发生的写“1”操作期间,节点WL、SL、SN、和BL处的电压电平的示范性定时图。电源电压VCC被假定为大约1.8伏。字线信号WL以及列选择信号CS被示出为已经升压到更高的大小为3伏的VPP编程电压。在写“0”操作期间,节点BL、SL、和SN处的电压被示出为分别大约等于1.43V、0.34V、和0.88V。在写“1”操作期间,节点BL、SL、和SN处的电压被示出为分别大约等于0.23V、1.43V、和0.84V。虽然未示出,为了这个示范性计算机仿真,在写“0”和“1”操作期间流经MTJ的电流分别为是121μA和99.2μA。
图4B示出了MTJ10被编程为从平行状态切换到反平行状态以便存储“1”。假设MTJ10初始处于逻辑“0”或P状态。为了存储“1”,使大于临界电流Ic0的电流Isw按箭头35的方向流经晶体管20。为了实现这个,经由电阻路径(未示出)为节点SL提供电压VCC,为节点WL提供电压VPP,并且节点BL被经由电阻路径(未示出)耦接至地电势。因此,在写“1”操作期间,晶体管20的栅极-源极电压被设定为(VWL-VSN),而晶体管20的漏极-源极电压被设定为(VSL-VSN)。这个STT-RAM型存储单元能够提供出色的非易失性存储器解决方案。
遗憾的是,利用STT-RAM或任何其它类型的存储器芯片,制造缺陷或其它缺陷可能导致存储器芯片上的存储单元并非全部都正确工作。在存储器修复期间,存储器芯片可以被测试并且故障的存储器元件被冗余的存储器元件替换。典型的一种修复被称为激光修复,这种存储器修复通常在第一晶圆分类测试(wafer sort test)之后被执行。激光被用来熔断(blow)存储器熔丝排(memory fuse bank)以便禁用有缺陷的存储器元件并且将其替换为冗余的元件。存储器修复不能由存储器的终端用户来执行。
已经提出了各种存储器系统以便提供存储器访问、安全的数据存储、数据验证和恢复、数据测试、以及存储器修复。这些系统包括,例如:美国专利第6,657,914号,名称为“CONFIGURABLE ADDRESSING FOR MULTIPLE CHIPS IN A PACKAGE(用于封装中的多个芯片的可配置寻址)”;美国专利第6,754,866号,名称为““TESTING OF INTEGRATED CIRCUITDEVICE(集成电路设备的测试)”;美国专利第7,365,557号,题目为“INTEGRATED TESTINGMODULE INCLUDING DATA GENERATOR(包括数据生成器的集成测试模块)”;美国专利第7,466,160号,名称为“SHARED MEMORY BUS ARCHITECTURE FOR SYSTEM WITH PROCESSOR ANDMEMORY UNITS(用于具有处理器和存储单元的系统的共享存储器总线架构)”;美国专利第7,466,603号,名称为“MEMORY ACCESSING CIRCUIT SYSTEM(存储器存取电路系统)”;美国专利第7,673,193号,名称为“PROCESSOR-MEMORYUNIT FOR USE IN SYSTEM-IN-PACKAGEAND SYSTEM-IN-MODULEDEVICES(用于在系统级封装和系统级模块设备中使用的处理器-存储单元)”;美国专利第7,768,847号,名称为“PROGRAMMABLE MEMORY REPAIR SCHEME(可编程存储器修复方案)”;以及美国专利第7,779,311号,名称为“TESTING AND RECOVERY OFMULTILAYER DEVICE(多层设备的测试及修复)”,其中每一个的内容通过整体引用合并于此。
虽然这些及其它系统解决了与被本发明原理所解决的问题相似的问题,但是它们并没有被设计为用于或者专门应用于具有高错误率和概率趋势(probabilistictendency)的存储器,诸如PCRAM、MRAM、和RRAM器件。具体地,美国专利第7,673,193号描述了用于在系统级封装(SiP)和系统级模块(SiM)集成电路设备中使用的,包括处理模块、存储器模块、和可编程系统模块的处理器存储单元的装置和方法。该可编程系统模块被配置为充当存储器模块和测试设备之间的接口,从而便利包括具有不同通信协议的功能组件的处理器-存储单元的集成和测试。接口层(系统模块)120可以包括用于良率提升(yieldenhancement)、数据压缩、测试算法、电力管理等等的特定于过程的信号处理算法。这个系统对于多芯片DRAM和逻辑接口产品尤其有用。然而,根据结合了本发明构思的原理的附加的特征和实施例,这种类型的系统的有用性可以扩展到快闪存储器、PCRAM、MRAM、RRAM、和未来存储器件。
发明内容
根据本发明构思的特征和原理,智能存储器系统优选地允许相对于逻辑处理器而言具有高错误率和较慢读/写时间的存储器可靠地并且无缝地工作。这些发明特征能够为遭受概率性倾向和较高错误率的存储器提供特别有用的益处。在这些事情中,结合了本发明构思的原理的智能存储器系统能够被配置为通过对发生故障的位置和相应的数据加标签然后在方便的时间执行重写或者通过简单地屏蔽发生故障的位置并且将数据重新写入不同的位置,来允许具有较高写错误率的非易失性存储器比特被使用。
结合了本发明构思中的一个或多个的实施例的一些特征可以包括具有应答信令的公共异步存储器总线,以保证写和读成功。握手存储器接口可以通过使用内部读和写追踪和验证方案来允许与过程无关、与电压无关、并与温度无关的操作。
系统还可以被配置为动态监视存储器系统故障,并且通过将故障位置和错误类型存储在存储器控制器非易失性存储器(NVM)中来记录故障位置和错误类型。系统还可以被配置成从NVM表格回调起故障位置和故障类型并且基于故障类型执行适当的修复。这些修复可以包括,例如,重写数据、修复存储器、隔离发生故障的存储器位置、或者其它适当的修复。
系统可以进一步被配置成向具有较差保持特性的存储器提供刷新周期。可以通过智能控制器提供初始的压力(stress)测试以便甄别存储器中的弱点。基于故障模式和压力水平(电压、电流、温度、等等)统计数据,智能存储器能够被自动配置成提供一定的修复刷新间隔。例如,所述刷新间隔可以是3秒、10天、5星期、2个月、或者更多。该时间可以通过内部的非常低的电源时钟来确定。刷新周期包括读取整个存储器然后重写相同的数据。该电路可以在存储器内部以便实施与写-验证重写电路相似的读和重写功能。
智能存储器系统还可以被配置成通过允许外部自动化测试设备(ATE)直接访问系统存储器来准许即使实施在终端用户设备中之后也可以执行片上测试。ATE能够安排和执行测试图案以便基于,例如,用户请求、自动测试安排,或者响应于所检测到的存储器错误,来测试系统存储器。
智能存储器系统也能够被配置成实施电力管理技术,这些电力管理技术能够,例如,控制SA读电流、控制SA钳位电压、控制SA读延时、控制写电压、控制待机期间的外围设备电压、和/或管理存储器件的其它电力要求。
RISC处理器或者其它类型的处理器也能够被包括在智能存储器系统中,诸如被包括在存储器控制器中,以便在将数据存储在主系统存储器中之前对数据执行简单和/或复杂的计算。这能够通过允许设备处理器将各种任务卸载给存储器控制器处理器并由此腾出设备资源以用于其它过程,来为智能存储器系统提供另外的价值。
根据结合了本发明构思的原理的一个特定实施例,智能存储器系统能够包括存储器和处理器,存储器由使用存储器制程来制造的一个或多个存储器芯片组成,处理器由使用各种逻辑制程来制造的一个或多个存储器处理器芯片组成。处理器可以,例如,包括被配置为在存储器阵列与存储器处理器之间提供异步握手接口的公共地址/数据/控制存储器总线。处理器也能够包括用于将写错误标签存储器数据从存储器芯片卸载以用于分析的机制。也可以包括用于存储器地址重配置的程序逻辑、以及电力管理逻辑。
存储器也可以包括公共地址/数据/控制存储器总线,其在存储器阵列与存储器处理器之间提供异步握手接口。写错误标签(Write Error Tag)与写/验证写(write/verifyWRITE)电路也能够与测试设计(Design for Test,DFT)电路一起被包括在存储器中,以用于执行快速并行保持测试。测试接口也可以被包括,以用于SiP存储器测试。控制寄存器和复用电路也被优选地提供用于地址重配置,并且单独的电源平面和门电路可以被包括以用于电力管理。
本发明构思原理可以提供各种益处,其中包括使能对多个系统的兼容性。支持多个处理器和外围设备的可配置寻址方案能够,例如,与可编程且与存储器类型无关的I/O接口一起使用。
可以通过将某些发明特征实施在系统级封装(SiP)或者片上系统(SoC)中来最好地实现所述某些发明特征。这样的实施方式需要存储器阵列和存储器处理器芯片之间的良好的连接性。这可以,例如使用真硅通孔(TSV)或者其它SiP技术来实现。使用低延时高吞吐量的SiP互连能够提供改进的系统性能。由于SiP互连技术的成本持续降低,因此这样的系统的成本上的缺点可以最小化。
本发明原理也能够通过使用SiP解决方案减少I/O负载、通过提供无时钟存储器操作、和/或通过关闭不使用的存储器部件来使得电力消耗减少。电压控制、温度补偿、和异步定时电路也能够帮助减少电力消耗并提供更高效的操作。
其它原理允许设备处理器将重复性计算或者其它任务卸载给智能存储器系统。例如,ARM、MIP、或其它期望的专利处理器组合能够提供在存储器控制器中或者智能存储器系统的其它区域中,以便执行各种处理任务以腾出设备资源。
根据本发明构思的原理的智能存储器控制器也能够执行存储器监视、修复、纠正、和重分配。ECC、反熔丝修复、错误屏蔽、读-比较-写、弱比特替换、和其它的纠错技术可以被实施在智能存储器系统中以提高数据稳定性以及降低错误率。
根据结合了本发明构思的原理的一个实施例,存储器电路能够部分地包括比较块,比较块被配置为将被适配为存储在存储单元中的第一数据与先前存储在该存储单元中的第二数据进行比较。该比较块还被配置为,如果第二数据与第一数据不匹配,则存储其中存储了第二数据的存储单元的地址。在随后的写周期期间,存储单元被写入。所述地址可以存储在标签存储器中。存储单元可以是,例如,DRAM、SRAM、ROM、PROM、EEPROM、FLASH、FeRAM、PCRAM、RRAM、MRAM、或STT-MRAM单元。
在一些实施例中,存储单元还能够包括存储器阵列、写块、和读块。写块可以耦合在存储器阵列与比较块之间。读块可以耦合在存储器阵列与比较块之间,使得读块被适配为感测第二数据。存储器电路还可以包括控制逻辑,其被配置为当存储器外部的设备对于正常写操作没有访问存储单元时,将第二数据的反相值存储在该存储单元中。
在一个实施例中,存储器阵列能够包括耦合至多个存储单元的至少一个列。列包括第一信号线和第二信号线。存储单元包括耦合至第一信号线的第一载流端子、耦合至第二信号线的第二载流端子、和耦合至字线的控制端子。存储单元还可以包括磁隧道结和第一晶体管。磁隧道结可以具有耦合至存储单元的第一载流端子的第一端子。第一晶体管可以具有耦合至非易失性存储单元的第二载流端子的第一载流端子、耦合至非易失性存储单元的控制端子的栅极端子、和耦合至磁隧道结的第二端子的第二载流端子。
根据一个实施例,在存储器电路中的写操作期间纠正写错误的方法可以包括将被适配为存储在存储单元中的第一数据与先前在写操作期间存储在存储单元中的第二数据进行比较,如果第二数据与第一数据不匹配,则存储其中存储了第二数据的存储单元的地址,并且在随后的写周期期间写入该存储单元以纠正写错误。该方法还可以包括锁存存储单元的地址、锁存第一数据、在存储单元的地址处将第一数据写入存储器阵列、以及在写操作期间感测第二数据。
根据另一个方面,在存储器电路中的写操作期间纠正写错误的方法可以包括将适配为存储在存储单元中的第一数据与先前在写操作期间存储在存储单元中的第二数据进行比较,如果第二数据与第一数据不匹配,则将第二数据反相,如果第二数据与第一数据不匹配,将反相的第二数据写入其中存储了第二数据的存储单元的地址以纠正写错误。该方法还可以包括锁存存储单元的地址、锁存第一数据、在存储单元的地址处将第一数据写入存储器阵列、以及在写操作期间感测第二数据。
根据又一个方面,在存储器电路中的写操作之后纠正写错误的方法可以包括:如果在写操作之后第二数据与第一数据不匹配,则加载其中存储了第二数据的存储单元的地址,感测第二数据,将第二数据反相,以及将反相的第二数据写入其中存储了第二数据的存储单元的地址以纠正写错误。
一些实施例可以包括一种用于在存储器件上提供误比特率内置自测试的方法。该方法可以包括,例如:进入测试模式;由存储器件在内部生成错误率定时图案;由存储器件基于内部生成的错误率定时图案,执行误比特率内置自测试;测量从误比特率内置自测试得到的错误率;基于所测量的错误率调整一个或多个测试参数;以及使用调整后的参数重复误比特率内置自测试。
一些实施例可以包括一种用于在存储器件上提供误比特率内置自测试的方法。该方法可以包括:由存储器件执行写错误率内置自测试和读错误率内置自测试中的至少一个;分析写错误率内置自测试和读错误率内置自测试中的至少一个的结果;以及响应于所述分析自动调整一个或多个测试参数。
根据一些实施例,存储器件包括:误比特率控制逻辑,被配置成控制误比特率内置自测试;地址与数据生成器,耦合至误比特率控制逻辑;片上振荡器,被配置成生成用于误比特率内置自测试的内部参考时钟;写错误率测试图案生成器,被配置成生成用于误比特率内置自测试的写错误测试图案;以及读错误率测试图案生成器,被配置成生成用于误比特率内置自测试的读错误测试图案。
在又一些实施例中,非易失性存储器(NVM)程序存储器可以被利用来存储关于发生故障的地址位置和错误类型的信息。NVM程序存储器可以被进一步用来将发生故障的存储器位置重新分配给新的存储器位置。智能存储器系统的存储器控制器能够与NVM程序存储器接口,以便基于存储在NVM程序存储器中的错误信息执行存储器测试、重新分配存储器地址、执行存储器刷新、或者采取其它适当动作。
附图说明
从下面参考附图的详细描述中,本发明原理的前述和另外的特征与优点将变得更加清楚,其中:
图1A是如相关技术中所熟知的、当处于平行磁化状态时磁性随机存取存储单元的磁隧道结的结构的简化示意性截面图。
图1B是示出如相关技术中所熟知的、当处于反平行磁化状态时图1A中的磁隧道结的结构的简化示意性截面图。
图1C是如相关技术中所熟知的、当处于平行磁化状态时磁性随机存取存储器(MRAM)单元的磁隧道结的结构的简化示意性截面图。
图1D是示出如相关技术中所熟知的、当处于反平行磁化状态时图1C中的磁隧道结的结构的简化示意性截面图。
图2A是示出如相关技术中所熟知的、耦合至相关联的选择晶体管的磁隧道结的结构的层的示意性说明。
图2B是如相关技术中所熟知的、图2A中的磁隧道结的结构及其相关联的选择晶体管的示意性表示。
图3是示出如相关技术中所熟知的、图2A中的磁隧道结的结构的电阻响应于所施加的电压的变化的图形化说明。
图4A是示出如相关技术中所熟知的、被编程为从反平行状态切换到平行状态的磁隧道结的结构的示意图。
图4B是示出如相关技术中所熟知的、被编程为从平行状态切换到反平行状态的磁隧道结的结构的示意图。
图5是表示如相关技术中所熟知的、在写“0”和写“1”期间与磁性随机存取存储器相关联的若干信号的定时图。
图6A是根据本发明构思的、存储器系统和相关联的电路的示意性框图。
图6B是根据本发明构思的原理的、包括非易失性存储器(NVM)程序存储器和存储器控制器的智能存储器系统和相关联的电路的示意性框图。
图7是根据本发明构思的、表示存储器系统的各个部分和相关联的读与写电路的示意性电路图。
图8是根据本发明构思的、表示存储器系统的另外的部分和相关联的写电路的示意性电路图。
图9A是示出根据本发明构思的、存储器系统的写方法的步骤的流程图。
图9B是示出根据本发明构思的、存储器系统的写方法的步骤的流程图。
图10是示出根据本发明构思的、存储器系统的重写方法的步骤的流程图。
图11是传统的存储器系统的示意性框图。
图12是根据本发明构思构建的智能存储器系统的示意性框图。
图13是根据本发明构思的具有智能存储器和逻辑接口的存储器控制器的示意性框图。
图14A和图14B提供根据本发明构思的结合了智能存储器系统的实施例的示意性框图。
图15A和图15B分别是根据本发明构思的引脚输出表格和命令表格。
图15C是示出根据本发明构思的另外的原理的、与图15A和图15B中的表格相关联的读/写操作握手电路的示意图。
图16A是根据本发明构思的信号表格。
图16B是根据本发明构思的、与图16A中的表格相关联的、具有应答的异步读操作的示意性定时图。
图17A是根据本发明构思的信号表格。
图17B是根据本发明构思的、与图17A中的表格相关联的、具有应答的异步写操作的示意性定时图。
图18A是用于控制图16A到图17B中表示的异步写和读操作的存储器控制电路的示意性方框和逻辑图。
图18B是示出图18A中的控制电路的信号的定时的信号定时图。
图19是可以在图16A到图17B中表示的读和写操作中使用的可扩展分层读/写架构的示意性方框和电路图。
图20A是提供根据本发明构思的存储器阵列和控制电路的示意性电路图。
图20B是根据本发明构思构建的写确认电路的示意性电路与逻辑图。
图21是根据本发明构思构建的读追踪电路的示意图。
图22是根据本发明构思的电流电压转换器与放大电路的示意图。
图23A和图23B包括根据本发明构思的SAE定时追踪与控制电路的示意性框图。
图24是根据进一步的发明构思的模数转换电路的示意图。
图25A是根据进一步的发明构思的温度补偿电压生成电路的示意性方框和电路图。
图25B是包括图25A中的电路的示意性系统框图。
图26A和图26B是示出根据本发明构思的系统级封装(SiP)智能存储器系统的示意性框图。
图27是根据本发明构思的示意性存储器框图。
图28A、图28B、图29-30、图31A、和图31B是根据本发明构思的图27中的存储器框图中的误比特率控制逻辑的示意性框图。
图32是示出根据本发明构思的、执行写错误率内置自测试的步骤的流程图。
图33是示出根据本发明构思的、执行读错误率内置自测试的步骤的流程图。
图34是示出根据本发明构思的、执行误比特率内置自测试的步骤的流程图。
图35是根据本发明构思的数据“1”写错误率内置自测试的示例波形定时图。
图36是根据本发明构思的数据“0”写错误率内置自测试的示例波形定时图。
图37是示出根据本发明构思的、执行误比特率内置自测试的步骤的流程图。
图38是根据本发明构思的、包括误比特率内置自测试生成器与控制逻辑的示例系统图。
具体实施方式
现在将详细参考本发明构思的实施例,其示例被例示在附图中。在下面的详细描述中,大量的具体细节被阐述以使能对本发明构思的全面理解。然而,将理解,本领域普通技术人员可以无需这些具体细节而实践本发明构思。在其它实例中,熟知的方法、程序、组件、电路、和网络没有被详细描述,从而不会不必要地模糊所述实施例的各个方面。
将理解,虽然属于第一、第二等等可以在这里被用来描述各个元素,但是这些元素不应当被这些术语限制。这些术语仅仅被用来区分一个元素与另一个元素。例如,第一电路可以被命名为第二电路,类似地,第二电路可以被命名为第一电路而不脱离本发明构思的范围。
在这里的本发明构思的描述中所使用的术语仅仅是为了描述特定的实施例的目的,而不是意图限制本发明构思。如在本发明构思的描述中和所附权利要求中所使用的,单数形式“一”、“该”意图也包括复数形式,除非上下文清楚地另外指出。还将理解,如这里所使用的术语“和/或”表示并且包含一个或多个相关联的列出的项目的任何及全部可能的组合。还将理解,术语“包括”和/或“包含”,当在这里的说明书中使用时,说明存在所述特征、整数、步骤、操作、元素、和/或组件,但是并不排除一个或多个其它的特征、整数、步骤、操作、元素、组件、和/或它们的组的存在或添加。附图中的组件和特征并不一定按比例绘制。
在写操作期间,存储单元在不同的时机即使在相同的稳定的条件下仍可能表现出随机不同的写时间。这样的行为可能不是由本可以在工厂测试期间筛选出的磨损机构(wear-out mechanism)所引起的,而是可能由存储单元的写特性的概率性行为所引起的。在工厂中执行的测试和修复操作期间,被确定为由于非概率性原因而具有缺陷的存储单元可以从单元群体中被移除。例如,某些缺陷可以在冗余操作期间通过用芯片上的冗余单元替换缺陷单元来修复。在缺陷不能被修复的情况下,坏的芯片可以被报废。然而,即使在测试和修复操作之后,剩余的存储单元群体仍然可能表现出影响存储器芯片的可靠性的概率性行为。
在完成了工厂测试和修复之后,芯片被运出并且合并到被终端用户使用的设备中。当芯片被终端用户常规地使用时,存储器系统可能能够通过将有缺陷的单元(诸如写入慢(slow to write)的单元)映射出可使用地址空间之外,来标记(flag)和修复与所述有缺陷的单元的对应的地址位置。然而,将写入慢的单元的存储器位置映射出去的过程引起可使用地址位置的数量随着时间逐渐减少,这是因为不期望已经映射出去的单元恢复正常并且它们的地址位置因此被永久地重新路由(reroute)。由此,由概率性单元行为所引起的有缺陷的存储器的操作将会导致这样的情况:由于耗尽有限的冗余元件而出现低工厂产量,或者终端用户在实际应用中随时间耗尽可使用的地址空间。
具体地,在写操作期间,存储单元可能在稳定的环境条件下在不同的时机表现出随机不同的写时间。因此,在不同的时间,即使对于被另外确定为无缺陷的单元群体,这种行为也可能在将数据写入存储器系统期间产生错误。需要一种新的存储器电路解决方案来克服这种概率性单元行为问题。
根据本发明原理的某些实施例,标签存储器(tag memory)或非易失性存储器(NVM)存储由于概率性行为而未能正确写入的数据的地址位置。所存储的标签地址位置可以被用来在用户启动常规写操作之后重写和校正该数据。可替换地,当单元由于概率性行为而未能在所分配的时间进行写入时,可以在用户启动常规写操作期间执行不为用户所知的写入。
图6A是根据本发明构思的存储器系统及相关联的电路100的示意性框图。参考图6A,存储器系统100包括存储器阵列102、行解码器110、列解码器120、寻址电路130、控制逻辑140、感测与写驱动器150、隐藏读比较部件160、写错误地址标签存储器170(这里可替换地称为标签存储器)、和数据输入输出部件180。
寻址电路130还包括地址缓冲器与锁存器132和预解码器134。数据输入输出(I/O)部件180还包括输入缓冲器数据输入锁存器(input buffer data-in latch)182和数据输出锁存器输出缓冲器(data-out latch output buffer)184。应当注意到,术语感测和读可以在这里互换使用。
存储器阵列102包括许多列、字线、以及位于行和字线的交叉处的存储单元。每个存储单元能够存储一个数据比特。取决于技术,存储单元可以是,例如,DRAM、SRAM、ROM、PROM、EEPROM、FLASH、FeRAM、PCRAM、MRAM、STT-MRAM、RRAM、或其它类型的存储单元。举例来说但不限于此,下面描述的一些实施例将使用STT-MRAM单元,如先前已经描述的。
行解码器110选择和驱动由其被预解码器134驱动的输入总线所确定的字线之一。类似地,列解码器120选择和驱动由其同样被预解码器134驱动的输入总线所确定的列之一。预解码器134响应于来自地址缓冲器与锁存器132的地址总线信号以及响应于来自控制逻辑的地址(ADDR)使能信号135驱动行解码器和列解码器的输入总线信号。地址缓冲器与锁存器132响应于来自地址总线A(n:0)的信号进行操作并且能够锁存从存储器系统外部接收的与所期望的数据比特的位置对应于的n+1个地址信号。地址缓冲器与锁存器132也响应于控制逻辑140进行操作。
控制逻辑140在命令总线CMD(m:0)上接收来自存储器系统外部的信号并且响应于来自隐藏读比较部件160的错误标记(error flag)165进行操作。控制逻辑发送用来控制存储器系统的操作的各种信号。所述信号包括,例如:读写(R/W)控制信号142,其被发送到感测与写驱动器150;数据锁存控制(DQ控制)信号144,其被发送到数据I/O180;和控制信号146,其被发送到写错误地址标签存储器(write error address tag memory)170。
写错误地址标签存储器170响应于控制逻辑140以及响应于错误标记165经由双向总线172向地址缓冲器与锁存器132发送和从地址缓冲器与锁存器132接收地址信号,如下面将更详细地描述的。写错误地址标签存储器170最好能够存储表现出概率性行为并由此在存储器系统的写周期期间没有成功地写入的存储单元的地址。存储在写错误地址标签存储器170中的地址表示存储器中存储的能够被逻辑地反转以正确表示原始输入到存储器系统的数据的数据比特。
本实施例的写错误地址标签存储器可以是,例如,非易失性存储器、FIFO、SRAM、或D触发器寄存器。写错误地址标签存储器170中的存储单元可以基于与存储器阵列102中的存储单元相同的技术类型和/或设计,或者可以具有不同的技术类型和/或设计。写错误地址标签存储器170中的存储器宽度可以对应于地址信号的数量(即,n+1)。写错误地址标签存储器170中的存储器深度可以取决于每个重写操作所期望的或所需要的可纠错比特的数量。例如,如果对于平均存储单元群体而言概率性写错误率较高,则写错误地址标签存储器深度可以被选择为大于该错误率较小的情况下的存储器深度。
输入缓冲器数据输入锁存器182在双向总线DQ(x:0)上从存储器系统外部接收并锁存数据,并且经由单独的双向总线将该数据传送到隐藏读比较部件160,其中隐藏读比较部件160可以被集成在感测电路和写驱动器之间,如将在下面更详细地说明的。数据输出锁存器输出缓冲器184在双向总线186上从感测与写驱动器150接收并锁存数据,并且经由双向总线DQ(x:0)将该数据传送到存储器系统外部。
图6B是与图6A中所示的相似、但是结合了本发明构思的进一步原理的错误检测和地址表格生成电路的示意性框图。具体地,与图6A中所示的电路不同,图6B的错误检测和地址表格生成电路还包括外部智能存储器控制器190和非易失性存储器(NVM)程序存储器195。智能存储器控制器190可以被称为智能存储器处理器、存储器处理器、或智能控制器,并且这些术语可以在这里互换地使用。NVM程序存储器195是对先前的实施例中的写错误地址标签存储器170的补充,在这种情况下写错误地址标签存储器170可以是FIFO。NVM程序存储器195可以在这里被称为非易失性错误保持存储器。
参考图6B,智能存储器控制器190可以包括存储器控制器191、存储器配置器192、和电力管理器193。智能存储器控制器190可以通过存储器总线194与智能存储器100和NVM存储器195通信。系统可以被配置为动态监视存储器系统故障,并且通过将故障位置和故障/错误类型存储在非易失性存储器(NVM)196中来记录故障位置和故障/错误类型。具体地,暂时存储在FIFO170中的写错误地址标签信息可以在智能存储器控制器190的控制下经由存储器总线194被传递到NVM程序存储器195。NVM程序存储器195可以从智能存储器控制器190接收错误指针199。NVM程序存储器195能够积累发生故障的存储器地址的数据库196以及错误类型的表格197。然后该系统能够够从NVM表格回调(recall)故障位置(即,回调198),并且基于故障类型执行适当的修复操作。存储器配置器193可以被用来将具有不可修复错误的地址位置映射出去。
通过使得发生故障的存储器地址能够与数据错误类型197一起被存储在标签存储器170和/或NVM程序存储器195中,存储器控制器190可以被配置为访问该标签或NVM程序存储器,并且被配置为基于所指示的错误的类型针对该地址位置执行适当的修复操作。这些修复操作可以包括,例如,存储器重写、用来隔离发生故障的存储器位置的地址重配置、存储器修复操作、或者其它适当的修复。由此根据本发明构思的原理的智能存储器控制器能够执行存储器监视、修复、校正、和重分配。ECC、反熔丝修复(anti-fuse repair)、错误屏蔽、读-比较-写、弱比特刷新、和其它的纠错技术可以被实施在智能存储器系统中以提高数据稳定性以及降低错误率。
图7是示出根据本发明构思的存储器系统100的部分200以及相关联的写和读电路的示意性方框电路图。电路200包括存储器阵列瓦片(memory array tile,MAT)102、本地列选择电路(LCS)104、感测与写驱动器150、和隐藏读比较160。虽然本实施例包括STT-MRAM单元,但是其不限于此,并且可以包括如以上所讨论的其它存储器类型。
参考图7,MAT102包括许多STT-MRAM单元30,它们的选择晶体管被耦接至由如以上结合图6A和图6B所描述的行解码器驱动的字线(WL0-WLn)。STT-MRAM单元还被耦接至与存储器阵列102中的一列对应的源极线(SL)210与位线(BL)212对。MAT102包括可以由LCS104选择的SL与BL对。LCS104包括具有多对n通道选择晶体管的选择电路,所述多对n通道选择晶体管在列选择信号(CS)215、预充电信号(PRE)235、隔离顶部信号(isolation topsignal,ISOT)、和隔离底部信号(isolation bottom signal,ISOB)的控制下,将MAT102中的被选择的SL与BL对耦接至LCS104中的源极线与位线对(例如,MSL220与MBL230)。
本实施例中示出了两个分开的存储器阵列102,分别布置在LCS104的顶部和底部。LCS104通过使能各个ISOT或ISOB信号之一来确定选择相邻的MAT102中的哪一个。在图7中示出的示例中,通过使能ISOT并禁用ISOB来选择顶部的MAT。然后,SL与BL对之一通过CS信号(如列解码器所驱动的)被选择,以便将顶部的MAT阵列中的所选择的SL与BL对耦接至相应的MSL和MBL线。然后,当预充电信号PRE被禁用时,SL/BL对和相应的MSL/MBL对准备好针对所选择的存储单元执行写或读操作。
MSL220和MBL230从LCS104被耦接至感测电路255(这里可替换地称为读块)和写驱动器250(这里可替换地称为写块)。在替换的实施例(未示出)中,可以从列和相关联的电路中省略SL和MSL信号,以便为不需要互补的列对来工作并且其源极在MAT内(例如在一些ROM、PROM、EPROM、EEPROM、和快闪存储器,如现有技术中所公知的)被耦接至地的存储单元提供单一线列。
如图7中所示,写驱动器250耦接至由控制逻辑驱动的使能写信号(ENW)以及来自隐藏读比较160的输出(Y),其中所述输出(Y)耦接至该写驱动器的数据(D)输入。在写模式操作期间,写驱动器250在ENW的控制下以稍后将详细描述的互补方式驱动MSL和MBL线(以及相应的SL与BL线对)。当ENW被禁用时,写驱动器250不驱动MSL和MBL线。
感测电路(即,读块)255被使能读(ENR)240信号启动,并且包括耦接至电源的晶体管M5和耦接至地的晶体管M3。M5和M3分别耦接至ENR信号及其互补信号。ENR和ENW信号不同时被使能。当ENR被使能为高时,晶体管M3被关断,而由ENR控制的晶体管M4被导通并且将MBL信号传递到电流镜M1和M2,并且晶体管M5将MSL220耦接至电源。电流ID1在MBL中通过晶体管M4流到电流镜的晶体管M1。
感测放大器(SA)245耦接至电流参考信号IREF和第二电流ID2,第二电流ID2流经电流镜的第二晶体管M2。SA将这两个电流(ID2和IREF)进行比较,并且在数据读线285上发出数据输出信号(DR)。数据读线285经由双向总线(见图6A和图6B)耦接至数据输出锁存器输出缓冲器184和隐藏读比较160。当ENR被禁用为低时,M4将MBL230与电流镜隔离,并且M3将电流镜输入耦接至地电压。SA245也可以本地放置在MAT102内或者与全局感测放大器和全局写驱动器(未示出)放置在一起。
隐藏读比较160(这里可替换地称为比较块)可以包括异或非门(XNOR)275、反相器(inverter)、和复用器270。隐藏读比较被ENW260和重写(REW)信号290控制,这两者都是从控制逻辑140发送的(见图6A和图6B)。XNOR门275的输入是响应于ENW260的、来自感测电路255的数据读信号(DR)285和来自输入缓冲器数据输入锁存器182的数据写信号(DW)280。所述复用器响应于REW选择其两个输入中的哪一个,即,反相的DR285信号或DW信号,从其输出Y传递到写驱动器的输入D。比较块160可以可替换地本地放置在MAT102内或者与全局感测放大器和全局写驱动器放置在一起。
图8是示出根据本发明构思的、存储器系统的写驱动器300和相关联的写电路100的一个实施例的示意性电路和逻辑图。图8的写驱动器电路300可以,例如,提供图7的写驱动器250。参考图7和图8,写驱动器300(250)可以包括在ENW260的控制下分别驱动SL信号和BL信号的反相器驱动器351和352。源极线(SL)耦接至MSL,而反相的位线信号(BL)耦接至MBL。当EN(ENW)被使能为高时,来自隐藏读比较160的输入D的反相后版本被耦接至BL信号,而输入D的未反相版本被耦接至SL信号,从而BL信号和SL信号成为逻辑互补。当EN(ENW)被禁用为低时,反相器驱动器351和352两者中的晶体管都被关断,而与输入D的状态无关,并且MSL和MBL线的控制权归还到感测电路。
每个写周期后可以跟随相同存储器位置的隐藏读周期。然后,来自隐藏读操作(数据输出)的数据可以与刚刚写入的数据比特值进行比较。如果数据匹配,则写周期结束。如果数据不匹配,则XNOR的输出将变成低电平有效,并且ERROR标记被生成。然后这个位置的存储器地址可以被“加标签”或存储在写错误地址标签存储器中,以用于稍后的重写操作。
根据本发明的一个方面,上述存储器阵列也可以包括用于执行以下操作的电路:将数据比特的地址锁存在寻址电路中;将该数据比特锁存在数据输入输出电路中;在该数据比特的地址处将该数据比特写入存储器阵列;在所述比特的地址处从存储器阵列读取数据输出(data-out)比特;将该数据比特与所述数据输出比特进行比较以确定该数据比特是否等于所述数据输出比特;如果比较步骤确定该数据比特不等于所述数据输出比特,则将该数据比特的地址写入写错误地址标签存储器中;如果比较步骤确定该数据比特等于所述数据输出比特,则不将数据比特的地址写入写错误地址标签存储器中。
图9A是示出存储器系统的写方法的各种步骤的流程图400。参考图7到图9A,在开始写操作410之后,在锁存地址与数据步骤420期间,数据(这里可替换地称为第一数据)被锁存在输入缓冲器数据输入锁存器182中,并且通过隐藏读比较部件160中的复用器270被传递到写驱动器250的D输入。同样在锁存地址与数据步骤420期间,数据比特的地址被锁存在地址缓冲器与锁存器132中并且被传递到预解码器134,预解码器134驱动行解码器和列解码器的输入总线,行解码器和列解码器进而在存储器阵列中选择字线和列。写数据步骤430通过使能ENW将数据写入位于存储器阵列中的所选择的地址的存储单元。
在写数据步骤430之后,隐藏读数据步骤440在相同的地址位置上被执行,从而将数据输出比特传递到隐藏读比较部件160。所述读被认为是隐藏的,因为它是作为写操作的一部分被自动执行的,而不必经由CMD总线指令存储器系统。接下来,在比较步骤450期间,将来自输入缓冲器数据输入锁存器182的数据比特(即,“真”或者第一数据比特)与来自SA245的数据输出比特(即,写入存储器的数据比特,其可能已成功写入或者未成功写入,并且在这里可替换地称为第二数据)进行比较,以确定第一数据比特是否等于第二数据比特。该逻辑比较是通过隐藏读比较部件160中的异或非或XNOR门275执行的。如果第一数据比特等于第二数据比特,则写操作成功并且下一个操作470能够继续进行。然而,如果第一数据比特不等于第二数据比特,则异或非或XNOR门275设置错误标记(ERR)165,ERR165用信号通知控制器140通过双向总线将“加标签的”地址从地址缓冲器与锁存器传递到写错误地址标签存储器170,其中该地址被写入(在步骤460中)并存储在其中直到重写操作能够被执行为止,如下面将进一步描述的。标签存储器存储操作460是透明的步骤,并且能够在下一个存储器周期开始时容易地执行,从而其不拖延下一个存储器操作470。
在本发明构思的另一个方面,总的写周期可以被扩展为包括另外的隐藏写操作。在这种情况下,写纠正操作(重写)可以对用户透明。可以使得写定时规范包括这个透明的重写时间。因此,无论是否需要重写,写周期时间都可以是相同的。
图9B是示出根据本发明构思的、存储器系统的写方法的各个步骤的流程图500。图9B的步骤510到550与图9A中的步骤410到450相同,因此将不再对其进行描述。然而,在步骤560,位于存储器阵列中的当前地址位置的数据输出被传递到SA输出DR285。接下来,反相数据读取步骤560被隐藏读比较部件160中的反相器执行,以便将该数据输出比特反相。然后,反相的数据输出比特响应于来自控制逻辑的REW信号290,经由复用器270被引导至写驱动器250的D输入。然后,执行写入反相的数据的步骤570,以便将现在纠正的反相的数据输出比特写入存储器阵列中的当前地址中。然后,接下来的580操作能够被执行。
现在将更详细地说明重写操作。根据存储器系统规范,来自有缺陷的写操作的加标签的地址可以被用来在当处理器或系统外围设备没有访问存储器时的方便的时间重写位于加标签的地址的存储单元。在重写周期期间,加标签的地址中的数据可以被简单地反相。为了将数据反相,必须首先使用隐藏读特征读取存储器比特,然后相反的数据可以被写入该单元。从而,由该单元的先前的概率性冗长写行为所引起的原始写错误可以被纠正。
替代等待稍后执行重写操作,数据在其中存储器在重写周期正在进行的同时向处理器或主系统发送“停止访问”信号的握手系统中可以被立即纠正。然后,一旦重写操作完成,“重写完成”信号可以被发送到主系统。下面将进一步讨论用于保证正确的写操作的另外的握手系统。
根据另一个实施例,上述存储器阵列还可以包括用于执行下面的操作的电路:将数据比特的地址从些错误地址标签存储器加载到寻址电路中;在该数据比特的地址处读取存储器阵列中的数据输出比特;在隐藏读比较电路中将该数据输出比特反相;以及,在该数据比特的地址处将反相的数据输出比特写入存储器阵列中。
图10是示出根据本发明构思的、存储器系统的重写方法的各个步骤的流程图600。参考图10,在重写操作610开始之后,在将错误地址从写地址标签存储器加载到寻址电路的步骤620期间,来自写错误地址标签存储器170的“加标签的”地址通过双向总线被加载到地址缓冲器与锁存器132中。然后,在读取数据630步骤期间,位于先前“加标签的”地址的数据被读出。位于存储器阵列中的“加标签的”地址位置的数据输出被传递到SA输出DR285。接下来,通过隐藏读比较160中的反相器执行将数据反相的步骤640以便将数据输出比特反相。然后,反相的数据输出比特响应于来自控制逻辑的REW信号经由复用器270被引导至写驱动器250的D输出。然后执行写入反相数据的步骤650,以便将现在纠正的反相的数据输出比特写入存储器阵列中的先前“加标签的”地址。然后可以在步骤600中执行下一个存储器操作。被存储在写错误地址标签存储器中的先前“加标签的”地址所占用的存储器空间能够在随后的写周期中对新的“加标签的”地址可用。
图11是传统的存储器系统700的示意性框图。参考图11,传统的存储器系统700是使用规范702和硬件/软件分区部件704提供的,其中硬件/软件分区部件704将软件功能706分发给处理器核730,并将硬件功能708分发给合成硬件部件712。存储器系统700可以由具有少量的嵌入式存储器和被提供为单独的、独立的存储器件715的大量的存储器组成,其中所述少量的嵌入式存储器诸如嵌入式指令存储器705和嵌入式数据存储器710,所述大量的存储器诸如单独的RAM740或闪存芯片745或芯片封装。嵌入式存储器能够包括指令存储器705和数据存储器710(包括数据高速缓存720和便笺式(scratch pad)存储器725两者),其中指令存储器705用于向处理器提供程序指令,而数据存储器710用于存储在设备和单独的存储器715之间正在递送的、或者用于正被处理器核730所执行的计算或其它过程的少量数据。
传统的存储器系统一般依赖于由工厂所执行的、用来在终端用户设备中实施之前找出和修复存储器错误的纠错过程。因而这样的系统不能良好适应与表现出概率性特性的存储器(例如,PCRAM、MRAM、和RRAM)一起使用,从而导致更高的错误率和更慢的读/写时间。
根据本发明构思的特征和原理,智能存储器系统优选地允许相对于逻辑处理器而言具有高错误率和较慢读/写时间的存储器可靠地并且无缝地工作。图12是根据本发明构思的原理构建的智能存储器系统800的一个实施例的示意性框图。参考图12,智能存储器系统800能够包括智能存储器802,其可以被配置为在存储器815和智能存储器控制器820之间提供具有超宽输入输出(I/O)的握手接口805,以便保证成功的读和写操作。更具体地,公共异步存储器总线810能够被提供为具有应答信令(acknowledge signaling),以便保证读操作和写操作成功。公共异步存储器总线优选地在读操作和写操作两者期间实施握手程序,以便保证所需数据已经从主系统存储器815成功读出或者已经成功写入主系统存储器815。此外,握手存储器接口805也能够帮助避免瓶颈,并且提供重新路由能力。虽然这里标注了新兴的存储器(STT-MRAM、RRAM)815,但是主系统存储器815可以是任何类型的存储器,包括,例如,DRAM、SRAM、ROM、PROM、EEPROM、FLASH、FeRAM、PCRAM、RRAM、MRAM、STT-MRAM、RRAM、或者未来存储器类型。
智能存储器系统800能够进一步提供各种另外的错误率降低方案,包括,例如,通过对具有较差保持能力的非易失性存储器比特或扇区加标签并且执行偶尔的刷新操作来维护存储于其中的数据,从而使其能够被使用。也可以提供纠错码、信号处理、和可编程修复操作以便减少和纠正存储器错误。智能存储器控制器820能够执行重配置和优化过程以便保证正确的存储器保持和读/写操作。可以在智能控制器820与系统总线810之间包括高速接口825以便与逻辑过程的速度匹配。
智能存储器802能够,例如,实施在具有多个逻辑处理器中的任何一个或多个的设备或者其它设备中,或者能够与其相关联。在本实施例中,设备逻辑830被示出为具有应用逻辑835、处理器840、内部存储器与控制器845、和模拟器件功能850。智能存储器802能够被配置为通过系统总线810与逻辑组件中的任何一个或多个通信。结合本发明构思的实施例能够被进一步配置为使能对多个系统的兼容性。支持多个处理器和外围设备的可配置寻址方案能够,例如,与可编程且与存储器类型无关的I/O接口一起使用。
图13是根据本发明构思的原理的、具有智能存储器和逻辑接口的存储器系统900存储器控制器的示意性框图。参考图13,智能存储器控制器190能够包括存储器控制器191,其监视用户设备与存储器之间的通信,并且控制智能控制器的其它操作。存储器配置器192也能够被提供来基于实际使用期间的错误重新配置可使用的地址空间,并且提供其它的存储器配置过程。电力管理器193能够被进一步包括,以便补偿温度波动和其它电力变量,从而为存储器操作提供稳定的供电电压。
系统900可以被进一步配置为动态监视存储器故障,并且通过将故障位置存储在存储器控制器非易失性存储器(NVM)195中来记录故障位置。然后系统能够从NVM表格196回调故障位置并且基于故障类型197执行适当的修复操作。这些修复可以包括,例如,重写数据、修复存储器、隔离发生故障的存储器位置、或者其它适当的修复。智能存储器控制器190能够,例如,包括部件905中的存储器监视与恢复系统的能力,或者要不然与部件905中的存储器监视与恢复系统的能力相关联,以便诊断存储器问题并且根据所检测到的错误的类型提供适当的修复。可以包括NVM程序存储器195以便存储有缺陷的存储单元的地址位置以及所检测到的错误的类型。在本实施例中,NVM程序存储器195能够被用来存储关于发生故障的地址位置196和错误类型197的信息。NVM程序存储器195能够被进一步用来将发生故障的存储器位置的地址重新分配给新的存储器位置。智能存储器系统900的智能存储器控制器190能够与NVM程序存储器195接口,以便基于存储在NVM程序存储器195中的错误信息执行存储器测试、重新分配存储器地址、执行存储器刷新、或者采取其它适当动作。
其它原理能够为智能存储器控制器190提供允许设备处理器将重复性计算或者其它任务卸载给智能存储器系统900的能力。例如,ARM、MIP、或其它期望的处理器组合910(例如,32位RISC处理器)能够合并在智能存储器系统900的智能控制器190中或者要不然与智能存储器系统900的智能控制器190相关联,以便执行各种处理操作,从而腾出设备资源。
更具体地,ARM、MIP、或者其它RISC处理器或者其它类型的CPU910也能够被包括在智能存储器系统900中,诸如被包括在智能存储器控制器190中,以便在经由存储器接口194将数据存储在主系统存储器中之前对数据执行简单和/或复杂的计算。这能够通过允许设备处理器将各种任务卸载给存储器控制器处理器910并由此腾出设备资源用于其它过程,来为智能存储器系统提供另外的价值。智能存储器系统总线935能够将智能存储器系统的各种组件连接在一起,所述各种组件诸如智能存储器控制器190、卸载处理器910、存储器监视器与恢复部件905、NVM程序存储器195、存储器接口194、和/或FIFO/SRAM部件915。
智能存储器控制器190能够进一步包括FIFO和/或SRAM存储器部件915或者要不然与FIFO和/或SRAM存储器部件915相关联,以便缓冲从设备和/或逻辑组件920到智能存储器控制器190的存储器递送。ASIC(逻辑和/或模拟)接口920可以被包括以便在智能存储器控制器190与ASIC(逻辑和/或模拟)组件925之间提供接口。存储器总线和/或接口194能够在智能控制器190与存储器阵列和/或存储器元件930之间提供连接。
图14A和图14B提供结合了根据本发明构思的智能存储器系统的设备的示意性框图。参考图14A,根据结合了本发明构思的原理的一个实施例,智能存储器系统1000能够包括存储器1002和智能存储器控制器190,存储器1002包括使用各种存储器制程来制造的一个或多个存储器芯片(例如,1005、1015、和/或1010),智能存储器控制器190包括使用各种逻辑制程来制造的一个或多个存储器处理器芯片(未示出)。智能存储器控制器190可以,例如,包括被配置为在存储器阵列1002与智能存储器控制器190之间提供异步握手接口的公共地址、数据、和/或控制存储器总线1020或者要不然与公共地址、数据、和/或控制存储器总线1020相关联。智能存储器控制器190也能够包括用于将写错误标签存储器数据从存储器芯片1002卸载以用于分析的机制,以及用于将较差保持比特地址信息存储在较差保持地址表格(PRAT)中以用于未来刷新的机制,如上所述。程序逻辑以及电力管理逻辑也可以被包括,以用于存储器地址重配置,同样如上所述。
存储器系统可以包括公共地址、数据、和/或控制存储器总线1020,其在存储器阵列1002与智能存储器控制器190之间提供异步握手接口。写错误标签与写/验证电路1003也能够与测试设计(Design for Test,DFT)电路1006一起被包括在存储器中,以用于执行快速并行保持测试。测试接口1008也可以被包括,以用于SiP存储器测试。控制寄存器和复用电路也被优选地提供用于地址重配置,并且单独的电源平面和门电路可以被包括以用于电力管理,如上所述。本发明原理也能够通过使用SiP解决方案减少I/O负载、通过提供无时钟存储器操作、和通过关闭不使用存储器部件来使得电力消耗减少。电压控制、温度补偿、和异步定时电路也能够帮助减少电力消耗并提供更高效的操作。
更具体地,如图14A中所示,智能存储器控制器可以被提供作为各种类型的存储器解决方案1004(例如,DRAM1005、STT-RAM1015、和MLC NAND存储器1010)与各种设备逻辑和处理组件(例如,ASIC多核处理器1030、现场可编程门阵列(FPGA)1035、模拟RF电力管理与音频/视频处理1040、和各种输入/输出(I/O)设备1045)之间的接口,其中每种类型的存储器解决方案1004具有不同的益处和能力。智能存储器控制器190经由存储器总线1020与各种存储器件通信,存储器总线1020优选地提供握手电路1012以便保证读和写成功。智能存储器控制器190经由系统总线1025与各种设备逻辑和处理组件1004通信。智能存储器控制器能够包括诸如以上关于图12和图13所描绘和描述的那些的组件,它们为系统提供进一步的错误减少和纠正能力以及其它价值。
参考图14B,计算机系统1105能够通过SATA、SCSI、USB、或者其它接口1112与诸如硬盘驱动器或其它大容量存储设备(SSD/HDD)的数据存储系统1110通信。根据本发明构思的原理,计算机系统1105可以被进一步配置为,例如,通过高速存储器总线1125与SiP中提供的工作存储器1120(例如,智能存储器系统)通信。在工作存储器1120内,智能存储器控制器190(这里,STT-MRAM控制器)可以被配置为通过异步握手接口1130与存储器1115(非易失性工作存储器,例如,STT-MRAM、RRAM)通信。握手接口1130优选地提供读/写应答以及写错误加标签和重写能力。恒定电压和/或电流控制系统也可以与快速错误率甄别能力一起被提供。
图15A和图15B分别是根据本发明构思的引脚输出表格和命令表格。图15C是示出根据本发明构思的其它原理的、与图15A和图15B的表格相关联的读/写操作握手电路的示意图。图16A是根据本发明构思的信号表格。图16B是根据本发明构思的、与图16A的表格相关联的具有应答的异步读操作的示意性定时图。图17A是根据本发明构思的信号表格。图17B是根据本发明构思的、与图17A的表格相关联的具有应答的异步写操作的示意性定时图。
参考图15A到图17B,智能存储器控制器优选地包括具有应答的握手接口以保证正确的读和/或写操作,从而提供存储错误的降低。具体参考图15A-15C和图16A-16B,在具有握手的异步读操作期间,地址(例如,A0-Aj)被放置在地址线1505上,并且读信号(RD)1510被发送到控制逻辑140以便使能读操作。随着有效地址(例如,有效地址1605)出现在地址线1505上,应答信号(ACK)1515从高过渡到低。一旦从所指示的地址位置成功读出数据,应答信号(ACK)就从低过渡回高以指示该数据有效。然后该数据通过数据I/O1520输出。
现在参考图15A-15C和图17A-17B,在具有握手的异步写操作期间,将被写入存储器的数据被放置在数据I/O线1520上并且地址被放置在地址线1505上。写信号(WR)1525D被发送以启动对于地址线1505上所指定的地址位置处的存储单元的写操作。一旦写过程已经开始,应答信号(ACK)1515就从高降为低。一旦写操作完成并且数据被验证为已经正确写入所选择的存储单元,应答信号(ACK)1515就从低过渡回高以指示写操作是成功的。
I/O读/写评估部件1530可以从控制逻辑140接收RD和/或WR信号并且处理所述读或写信号。部件1530也可以基于所述处理向控制逻辑140发送返回信号1540。DQ输入/输出部件1520可以经由控制信号1545被控制逻辑140控制。通过提供具有应答的读和写操作,诸如那些表现出概率性倾向或者较慢读/写时间的存储器可以被实施为具有较低的错误率。
图18A是能够用于控制如以上关于图15A到图17B所描述的具有应答的读和写操作的存储器控制电路示意性方框和逻辑图。图18B是示出由图18A的电路生成和使用的信号的定时图。现在参考图18A和图18B,所述设备响应于用户指令生成读(RD)信号1510和/或写(WR)信号1525。当RD或WR信号被激活时,电路将生成信号脉冲PRW,该信号脉冲PRW进而通过使得应答(ACK)信号1515从高降到低来启动应答信号1515。
更具体地,激活的写信号WR1525经过输入缓冲器(IB)以提供写使能信号(WEN)。类似地,激活的读信号RD1510经过输入缓冲器(IB)以提供读使能信号(REN)。当使能信号WEN或REN经过OR(或)门1805时,OR门1805将生成高RW信号1810。当高RW信号1810与其在NAND(与非)门1820中的延时的补信号(complement)1815组合并且然后被反相器1825反相时,创建脉冲PRW。
在读周期中,RD信号1510开启读路径和读追踪电路1830(如下面参考图21所进一步描述的)。当从存储单元读取的数据被成功检索并且锁存在数据输出锁存器中时,SAE定时追踪与控制电路1840(如下面参考图23A所进一步示出和描述的)生成读好(RD_OK)信号1835,从而从OR门1850产生OK信号1845,OK信号1845将应答(ACK)信号1515变回高,以便指示读周期已经成功完成。
类似地,在写周期期间中,写(WR)信号1525开启写路径和写确认电路1855(如下面参考图20B所进一步示出和描述的)。一旦数据已经被写入,并且使用写确认电路1855被验证,则生成写好(WR_OK)信号1860,其也从OR门1850产生OK信号1845,OK信号1845将应答(ACK)信号1515变回高,以便指示写周期已经成功完成。
更具体地,当来自写确认电路1855的WR_OK信号1860或者来自读追踪电路1830的RD_OK信号1835经过OR门时,将生成OK信号1845。然后OK信号1845被传送到锁存器1865,锁存器1865输出应答触发信号(ACTB)1870。然后ACTB信号1870通过可编程延时器1875传递到输出缓冲器(OB)以便将ACK信号1515变回高。
图19是能够在图16A到图17B的读和写操作中使用的可扩展分层读/写架构的示意图。参考图19,存储器件的读或写操作关于使用字线和位线/选择线从存储器阵列中选择的存储单元进行。从所选择的存储单元检索的数据被传递到全局感测放大器(SA)(例如,1905),以便读取从该单元输出的数据。将被写入所选择的存储单元的数据通过全局写电路(例如,1905)被提供给该单元。
图20A提供存储器阵列和控制电路的示意图。图20B是写确认电路1855的示意图。现在参考图20B描述写验证和重写操作。在写操作期间,通过激活存储器阵列瓦片(MAT)区域中的存储单元的对应的字线(WL)和位线(BL)来选择该存储单元。然后数据被写入所选择的存储单元。在所需的写脉冲宽度(tWP),例如,5ns之后写控制电路禁用本地写使能信号(ENW)。然后生成本地读使能信号(ENR)以便从刚刚在写操作期间被写入的同一个地址位置读取数据。数据输入(DW)线被保持有效并且经由XNOR门2005与数据输出(DR)线进行比较。如果这两个数据信号(DW和DR)不同,则写好(WR_OK)信号1860保持低,从而指示写操作还没有成功。如果这两个数据信号(DW和DR)相同(指示应该被写入存储单元的数据与从该单元读取的数据相同),则然后WR_OK信号1860变成高,从而用信号通知成功的写操作。如先前所讨论的,接下来WR_OK信号1860能够被用来生成应答信号1515,其向存储器控制器指示写操作成功。可替换地,可重置寄存器或者使能电路(未示出)能够被用来保证WR_OK被重置为低并且保持为低,直到写操作开始并且DR有效之后为止。
读追踪能够被用来完成写-验证读操作,以及选通所述比较输出(WR_OK)信号1860。当WR_OK信号1860变成高时,写周期完成。如果在WR_OK信号1860中检测到低信号,则写控制电路在同一个地址位置生成新的写周期以便重写数据,并且验证过程重复自身。这个过程能够持续直到写操作成功或者直到该单元被确定为有缺陷并且其地址被报告给NVM程序存储器195。
图21是读追踪电路1830的示意图。图22是电流电压转换器和放大电路的示意图。图23A和图23B包括SAE定时追踪和控制电路的示意性框图。图24是模数转换电路的示意图。
现在参考图20A、图20B、图21、图22、图23A、图23B、和图24,在读追踪电路1830中,伪读路径(dummy read path)能够被用来追踪读电路(RC)延时。读追踪电路1830可以包括电流电压转换和电压放大电路以及电流表预放大器电路(类似于关于图7所示出和描述的)。本地列选择(LCS)电路2105与MAT区域2110通信,并且将位线预充电信号(BLPR)2115与在所选择的真位线和补位线(true and complement bitline)(TBLH2120和TBLL2125)上感测的数据一起传递到读追踪电路1830。
伪读路径可以包括位线(BL)、列选择晶体管、预放大器、和全局感测放大器。真伪位线和补伪位线(true and complement dummy bitline)(Rhigh,TBLH,Rlow,和TBLL)被用来生成感测延时。当生成与第一级(TDX/TDXB)的足够的间隔时,伪感测放大器的输出追踪感测放大信号(例如,图24的TSAE2)激活。激活的TSAE2信号触发(图23A和图23B中的)SAE2以便将正常数据锁存在常规感测放大器(SA)2315中并且隔离每个SA级中的电流路径。
读使能信号(REN)和TSAE2被输入到(图23A中的)感测放大器定时控制电路2305。感测放大器定时控制电路2305生成位线预充电(BLPR)信号2115和感测放大器使能信号(SAE和SAE2)。位线预充电(BLPR)信号2115被保持为高直到大约将要执行读操作的时间为止。在它被释放(即,切断)之后,执行读。更具体地,REN或WEN能够将BLPR信号灭活,这会释放用于读或写的位线。感测放大器使能信号(SAE)经过(图23A中的)可编程延时器2310以便产生RD_OK信号1835。(图23B中的)感测放大器(SA)2315接收感测放大器使能信号(SAE和SAE2)和全局位线电压(GBL和GRBL)(见图19)并且输出读数据信号DR2320。
图25A是根据进一步的发明构思的温度补偿电压生成电路2505的示意性方框和电路图。图25B是包括图25A的电路的示意性系统框图。现在参考图25A和图25B。
在STT-RAM存储器应用中电力管理系统可能是重要的,例如,因为较低的读电压和电流会在读操作期间帮助防止读干扰。太高的读电流可能,例如,通过使得数据从值“1”切换到值“0”,而导致数据损坏。
智能存储器控制器190可以包括电力管理器193。电力管理器193可以包括过程电压温度(PVT)补偿电压生成器2505。PVT补偿电压生成器2505控制使能读(enable read,ENR)信号的电压电平,以便提供经过M1晶体管的稳定并且恒定的读电流。PVT补偿电压生成器2505能够补偿温度波动和其它电力变量,以便为存储器操作提供稳定的供电电压。PVT补偿电压生成器2505可以耦合至MOS晶体管(例如,M1、M2、M3、和M4)的多个组(例如,2510、2515、和2520)。PVT补偿电压生成器2505可以将电压电平受控的ENR信号传送到MOS晶体管的组。ENR和ENRB信号使得稳定并且恒定的读电流流过MOS晶体管。例如,电流IRL1和IRL2与组2510相关联,电流IRH1和IRH2与组2520相关联,而电流IR1和IR2与组2515相关联。
因此,智能存储器系统能够根据本发明构思的另外的原理被配置,以便实施能够控制感测放大器(SA)读电流、控制SA钳位电压、控制SA读延时、控制写电压、控制待机期间的外围设备电压、和/或控制存储器件2515的其它电力要求的电力管理技术。电力管理系统能够进一步为电压电平提供基于温度的补偿。
图26A和图26B是示出根据本发明构思的系统级封装(SiP)智能存储器系统2605的示意性框图。智能存储器系统2605可以包括存储器堆叠2610、智能存储器控制器190、以及一个或多个通用处理器2620。本发明构思的某些特征和益处可以,例如,通过将所述智能存储器系统结合在系统级封装(SiP)或片上系统(SoC)设计中来实现。
应当注意到,SiP设备中的某些发明特征的实施方式受益于存储器阵列和存储器处理器芯片之间的良好的连接性,从而提供改进的系统性能。这可以,例如通过利用诸如真硅通孔(true silicon via,TSV)的低延迟和高吞吐量的SiP互连(interconnect)或者其它系统级封装(SiP)技术来实现。例如,TSV互连2625可以在存储器堆叠2610与智能存储器控制器190之间提供连接性。类似地,TSV互连2630可以在智能存储器控制器190与一个或多个ARM处理器2620之间提供连接性。由于互连技术的成本持续降低,因此这样的系统的任何成本上的缺点都可以最小化。
具体参考图26B,根据本发明构思的各种原理的智能存储器系统可以实施为SiP设备。所述SiP设备能够包括排列在智能存储器控制器190上的存储器堆叠(举例来说,诸如STT-MRAM存储器堆叠2620),而智能存储器控制器190又排列在一个或多个RISC处理器(举例来说,诸如通用ARM处理器2620)上。分别地,存储器堆叠能够通过真硅通孔(TSV)2625与智能存储器处理器190通信,而智能存储器控制器190能够通过真硅通孔(TSV)2630与处理器2620通信。
图27是根据本发明构思的示意性存储器框图2705。图28A、图28B、图29-30、图31A、和图31B是根据本发明构思的图27的存储器框图中的误比特率控制逻辑2740的示意性框图。
关于这些附图所讨论的发明构思提供了在存储器件上执行误比特率(BER)内置自测试的能力。在进入测试模式后,错误率定时图案在内部生成。BER内置自测试是基于内部生成的错误率定时图案来执行的。从BER内置自测试得到的错误率被测量。基于所测量的错误率,一个或多个测试参数可以被自动调整,并且能够使用调整后的参数来重复误比特率内置自测试。可以针对地址位置、地址段,或者针对与存储器件相关联的整个芯片来自动调整电压电平和/或脉冲宽度。随后的测试可以结合调整后的电压电平和/或脉冲宽度,这能够改善和提升内置自测试。下面详细讨论这些和其它发明方面。
本发明构思可以以诸如STT-MRAM、PCM、和ReRAM存储器产品的电阻型存储器来实施,以便甄别具有高错误率的存储器位。本发明构思可以扩展到简单的功能测试、稳定性测试、和/或保持测试。单个或多个测试模式可以被用来自动评估WER和RER,并且可以在完成测试之后或者在每个电压步长和地址位置之后读出结果。智能存储器控制器能够监视实际应用中的存储器位的健康状态并且例如当BER超出系统纠错码(ECC)的能力时,自动重新分配存储器空间。智能存储器控制器可以使用WER和/或RER结果对针对每个地址位置、地址段或者针对整个存储器芯片的写或读电压以及脉冲宽度做出调整。单一的智能存储器控制器或ATE能够启动多个芯片中的测试。在晶圆级或封装级测试中,ATE能够启动测试模式,存储器芯片能够完成自测试,然后ATE能够读取最终结果。在一些实施例中,尤其当存储器芯片已经被部署在实际应用中时,存储在存储器芯片中的数据可以在测试之前被卸载到另一个模块,接着在测试之后恢复,以便保证在测试期间不发生数据损坏。在一些实施例中,在测试期间施加的电压是在外部控制或施加的。因此,发生故障的存储器位置能够被识别和修复或者被隔离。此外,RER和WER内置自测试允许用于存储器芯片的简易测试生成和数据收集。
参考图27的存储器框图2705,存储器件可以包括一个或多个存储器核2710、一个或多个行列驱动器2715、以及一个或多个数据读/写逻辑部件2720。这样的存储器核2710、驱动器2715、以及逻辑部件2720可以布置在块(即,BK[0:i])中。误比特率(BER)控制逻辑2740可以控制误比特率内置自测试。智能存储器控制器和/或ATE可以发送用来使存储器2705进入BER测试模式的代码。BER控制逻辑2740可以接收一个或多个输入地址(例如,IA[0:k])信号。BER控制逻辑2740可以生成用于读/写电压调整(即,Vrd和Vwr)的稳压器控制信号,其可以被分发到如图所示的存储器2705的各个组件。地址与数据生成器2780耦合至BER控制逻辑2740。地址与数据生成器2780可以接收一个或多个输入地址(例如,IA[0:k])并且可以在内部生成用于BER内置自测试的一个或多个地址和/或数据。地址与数据生成器2780可以包括写错误率测试图案生成器,用来生成用于误比特率内置自测试的写错误测试图案,以及读错误率测试图案生成器,用来生成用于误比特率内置自测试的读错误测试图案。
BER控制逻辑2740可以耦合至命令控制与测试模式逻辑2745。命令控制与测试模式逻辑2745可以接收一个或多个外部命令XCMD[0:n]信号、和来自输入地址缓冲器2750的输入地址,以便设置测试模式寄存器。输入地址缓冲器在正常操作中从外部地址信号XA[0:k]接收输入地址,或者在BER测试模式中接收内部生成的地址IA[0:k]。命令控制与测试模式逻辑2745可以生成一个或多个测试信号2742,其可以包括写重置(RSTW)、写(WR)、读(RD)、和/或退出测试(EXTST)信号,并且可以被BER控制逻辑2740接收。BER控制逻辑2740可以生成一个或多个信号2743,其可以包括测试(TEST)、测试写错误率(TWER)、测试读错误率(TRER)、测试脉冲宽度(TPWS)、和/或测试稳压器(TVRG)信号,并且可以被命令控制与测试模式逻辑2745接收。BER控制逻辑2740也可以生成一个或多个测试数据输出(例如,TDO[0:x])信号,其可以被数据I/O缓冲器与寄存器测试输出串化器2735接收。
存储器2705也可以包括读和/或写定时控制逻辑2775,其可以耦合至命令控制与测试模式逻辑2745以及耦合至BER控制逻辑2740。读和/或写定时控制逻辑2775也可以耦合至对应的数据读/写逻辑2720。
地址与数据生成器2780可以生成一个或多个信号形式的测试数据(例如,TDIN[0:m]),其可以被送入诸如复用器的选择器2790。选择器2790也可以接收一个或多个信号形式的数据(例如,DIN[0:m]),并且将所选择的信号传送到数据路径逻辑2725。数据路径逻辑2725可以与对应的数据读/写逻辑2720接口。数据路径逻辑2725也可以生成和传送一个或多个数据读(例如,DR[0:m])信号到数据I/O缓冲器与寄存器测试输出串化器2735。数据I/O缓冲器与寄存器测试输出串化器2735可以接收一个或多个外部数据I/O(例如,XDQ[0:m])信号、处理这些信号、并且生成信号形式的一个或多个数据(DIN[0:m])。
输入地址缓冲器2750可以接收一个或多个内部生成的地址(例如,IA[0:k])信号以及一个或多个外部地址(例如,XA[0:k])信号。输入地址缓冲器2750耦合至命令控制与测试模式逻辑2745并且耦合至地址解码器2770。地址解码器2770能够解码地址并且与行列驱动器2715接口。
输入时钟缓冲器2755能够接收测试时钟信号(例如,TCK)、XCLK时钟信号、和/或TEST信号。输入时钟缓冲器2755输出时钟信号CLK,其可以被馈入输入地址缓冲器2750、地址解码器2770、命令控制与测试模式逻辑2745、读/写定时控制逻辑2775、BER控制逻辑2740、和/或地址与数据生成器2780。
片上振荡器时钟生成器2760可以接收TEST信号并且可以生成内部测试时钟(例如,TCK)信号。TCK时钟信号可以被馈入向上/向下计数器2765,其中向上/向下计数器2765的输出可以耦合至电压生成器2730和读/写定时控制逻辑2775。电压生成器2730可以接收向上/向下计数器2765的输出以及来自BER控制逻辑2740的VRG[0:j]信号。VRG[0:j]信号可以选择j+1个电压电平。电压生成器2730可以输出可以被数据读/写逻辑2720接收的分开的(j+1)个读电压(Vrd)电平和(j+1)个写电压(Vwr)电平。Vrd电力总线能够驱动感测放大器、尤其是读电流偏置电路。Vwr电力总线能够驱动写驱动器。
图28A、图28B、图29-30、图31A、和图31B是根据本发明构思的图27的存储器2705的BER控制逻辑2740的电路的示意性框图。
参考图28A,顺序计数器2810可以接收TEST信号和时钟信号CLK,并且生成顺序信号2850,顺序信号2850可以被传送到写错误率(WER)命令寄存器2815、读错误率(RER)命令寄存器2820、WER周期计数寄存器2825、和/或RER周期计数寄存器2830。WER命令寄存器2815和WER周期计数寄存器2825中的每一个可以接收TWER信号。RER命令寄存器2820和RER周期计数寄存器2830中的每一个可以接收TRER信号。选择器2845在WER命令寄存器2815和RER命令寄存器2820的输出之间进行选择。选择器2845能够输出RSTW信号、WR信号、和/或RD信号。选择器2855在WER周期计数寄存器2825和RER周期计数寄存器2830的输出之间进行选择。选择器2855能够输出用于移往下一个电压和/或脉冲宽度的NXT信号。
1eN周期比较器2840接收WER周期计数寄存器2825或者RER周期计数寄存器2830的输出,并且产生用来递增到下一个存储器地址位置的下一个地址(例如,NXADR)脉冲信号。对于WER测试,写电压能够从Vsw0开始并且在1eN个WER周期之后按dV递增。一个WER周期包括重置-验证-写-验证序列。所述重置可以以最大写电压实施。所述验证可以以微小的读电压来实施。然后可以检验比特的切换。Vsw0是起始写(例如,设置)电压,其可以是,例如,0.5伏或者大约0.5伏。dV是写电压的递增量,其可以是,例如,0.1伏或者大约0.1伏。终止写电压是可编程的。例如,终止写电压能够被配置成在Vsw0+(N x dV)处终止。例如,终止写电压可以被配置成在0.5V+(10x0.1V)=1.5V处终止。
对于RER测试,读电压能够从Vrd0开始并且在1eM个读周期之后按dV递增。在一个实施例中,每个RER图案包括跟随在1eK个读周期之后的重置-验证序列。在一些实施例中,M=图案数K x重复次数N。在一些实施例中,RER=1e-(K+N)
在一个实施例中,数据输出被智能存储器控制器或者ATE正常读取并且捕获。在另一个实施例中,在每个电压步长(step)之后,可以读取WER和/或RER结果以及相关联的发生故障的地址位置。这样的结果和地址位置可以经由预先分配的DQ引脚读取。
参考图28B,最终地址比较器2835能够接收TEST信号、IA[0:k]信号、和CLK信号,并且产生EXTST信号。
参考图29,计数器2905能够对重置错误、写错误、和/或读错误进行计数。计数器2905可以包括XOR门2925。XOR门2925可以接收DR[0:m]和TDIN[0:m]信号。XOR门2925的输出可以被馈入重置错误计数器2910、写错误计数器2915、和读错误计数器2920。重置错误计数器2910能够对内置自测试中的重置错误的数目进行计数。写错误计数器2915能够对内置自测试中的写错误的数目进行计数。读错误计数器2920能够对内置自测试中的读错误的数目进行计数。
重置错误计数器2910可以接收RSTW信号。写错误计数器2915可以接收WR信号。而读错误计数器2920可以接收RD信号。重置错误计数器2910可以产生重置错误计数(例如,RSERC[0:x])信号。写错误计数器2915可以产生写错误计数(例如,WRERC[0:x])信号。读错误计数器2920可以产生读错误计数(例如,RDERC[0:x])信号。例如,40位计数器可以计数多达1.1e-12。在这种情况下,x=39;即,RSERC[0:39],WRERC[0:39],和RDERC[0:39]。为了节约面积,仅仅一个计数器能够被用于重置错误、写错误、和读错误。在这样的实施例中,图30中示出的3选1复用器不被需要并且被移除。
参考图30,选择器3010可以在RSERC[0:x]、WRERC[0:x]、和RDERC[0:x]信号之间进行选择。所选择的信号被选择器3010输出为测试数据输出(例如,TDO[0:x])信号。选择器3010可以是,例如,复用器。
参考图31A,脉冲宽度寄存器3105能够存储脉冲宽度。脉冲宽度寄存器3105能够接收TPWS信号、CLK信号、IA[0:k]信号、和/或NXT信号。脉冲宽度寄存器3105能够产生一个或多个脉冲宽度(例如,PWS[0:j])信号。脉冲宽度寄存器3105提供用来在脉冲宽度生成器电路中选择所意图的脉冲宽度延时的代码。例如,4位代码,即PWS[0:3],能够选择16个不同的脉冲宽度。写错误率和读错误率取决于流经存储单元的电流量。本发明构思的实施例提供可编程的脉冲宽度和可编程的Vbias电压。
参考图31B,稳压器寄存器3110能够产生电压电平选择器信号,VRG[0:j]。稳压器寄存器3110能够接收TVRG信号、CLK信号、IA[0:k]信号、和/或NXT信号。稳压器寄存器3110能够产生用来在电压生成器中选择电压偏置电平的代码。例如,4位代码,即VRG[0:3],能够选择16个不同的电平。存储在稳压器寄存器3110中的、或者要不然由稳压器寄存器3110生成的值可以是基于重置错误计数、写错误计数、和/或读错误计数。
图32是示出根据本发明构思的、执行写错误率内置自测试的步骤的流程图3205。所述流程在起始阶段3207沿着两条路径3210和3215之一开始,其中加载针对用于写入“1”的WER测试的模式寄存器设置命令(即,路径3210),或者加载针对用于写入“0”的WER测试的模式寄存器设置命令(即,路径3215)。在3220,内部时钟启动。流程前进到3225,其中错误计数器被重置。所有的错误计数器和周期计数器都应该在测试的起始时被重置。在起始阶段3207之后,在3230,下一个地址和数据被生成和/或更新。在3235,定序器生成WER定时图案。然后,分别在3240、3245、3250、和3255,存储器被重置、重置被验证、数据被写入、以及数据被验证。例如,为了写入数据“1”,存储器首先被重置为“0”(写入“0”,不管初始存储的是什么)。然后读取存储器以验证是否写入了“0”。然后执行实际的写“1”。然后再次读取数据以验证是否写入了“1”。如果第一重置失败,则意味着要么该比特被困在(stuck at)“1”,要么初始比特是“0”并且翻转成了“1”,这被认为是回跳现象。为了确定是否发生了回跳,首先必须识别被困住的比特。
当在3245验证了重置之后,在3247检验重置是否失败。如果否,则流程前进到用于写/验证操作的3250。否则,如果是,则意味着重置失败,然后流程直接前进到3260,在3260中重置错误计数寄存器被更新。
在3265,评估得到的数据并且确定写操作是否失败。如果写操作失败,则流程前进到3270,在3270中写错误计数寄存器被更新。在此之后流程前进到3275,在3275中周期计数寄存器被更新。否则,如果写操作成功,则流程聚集到3275,在3275中周期计数寄存器被更新。
在3280,确定周期的数目是否达到了1eN。N的值可以是,例如,15。如果否,则流程前进到3290,在3290中单元位置(即,存储器位置)和错误计数被读取,在3290之后流程返回到3240以用于另外的重置-验证-写-验证顺序测试。在大多数情况下,利用多种DQ配置(例如,X8、X16、或X32等等)同时测试多个单元。利用地址压缩,每个DQ的多个比特能够被同时测试。根据配置,得到的错误率可能不准确并且测试时间可以极大地缩短。可以通过,例如预先分配的DQ引脚顺序地、并行地、或以组合了这两者的方式来读出结果。块3290可以被可选地配置为被跳过以便节省测试时间,或者被启动以便在每个步骤调试或分析测试结果。否则,如果是,则意味着周期的数目小于1eN,则流程继续到3285,在3285中另外确定是否到达了最终地址。如果是,则流程前进到3295并且读出具有大于1e-N的WER的比特的数目(即读出失败的比特的数目)和与它们相关联的地址,在此之后测试完成。如前面的,可以通过,例如预先分配的DQ引脚顺序地、并行地、或以组合了这两者的方式来读出结果。否则,如果否,则意味着还没有到达最终地址,则流程返回到其中错误计数器被重置的3225,并且测试继续进行。
图33是示出根据本发明构思的、执行读错误率内置自测试的步骤的流程图3305。所述流程在起始阶段3307沿着两条路径3310和3315之一开始,其中加载针对用于读取“1”的RER测试的模式寄存器设置命令(即,路径3310),或者加载针对用于读取“0”的RER测试的模式寄存器设置命令(即,路径3315)。在3320,内部时钟启动。流程前进到3340,其中K值被预先设置,在此之后流程前进到3325,在3325中错误计数器被重置。所有的错误计数器和周期计数器都应该在测试的起始时被重置。
在起始阶段3307之后,在3330,下一个地址和数据被生成和/或更新。在3335,定序器生成RER定时图案。然后,在3345,写-验证操作被执行一次。
在3345中的写-验证操作之后,在3347确定写是否失败。如果是,则流程前进到3365,其中写错误计数寄存器被更新,在此之后,流程前进到3367,其中3367分支到3330以便处理下一个地址或者采用可替换的路线回到3345以用于另一个写-验证操作(其可以针对J个重写操作而重复,其中J是,例如,在5到20之间或者大约在5到20之间)。否则,如果否,则意味着写没有失败,然后流程前进到3350,在3350中所存储的比特被读取K次。
在3355,评估得到的数据并且确定读操作是否失败。如果读操作失败,则流程前进到3360,在3360中读错误计数寄存器被更新。否则,如果读操作成功,则流程聚集到3370,在3370中图案计数寄存器被更新。
在3375,确定图案的数目是否达到了1eN。N的值可以是,例如,15。总的读周期可以是,例如,N x K。如果否,则流程前进到3385,在3385中单元位置和读错误计数寄存器被读出,在3385之后流程返回到3345以用于写-验证序列测试。可以通过,例如预先分配的DQ引脚顺序地、并行地、或以组合了这两者的方式来读出结果。否则,如果是,则意味着图案的数目小于1eN,则流程继续到3380,在3380中另外确定是否到达了最终地址。如果是,则流程前进到3390并且读出具有大于1e-(N+K)的RER的比特的数目(即读出失败的比特的数目)和与它们相关联的地址,在此之后测试完成。如前面的,可以通过,例如预先分配的DQ引脚顺序地、并行地、或以组合了这两者的方式来读出结果。否则,如果否,则意味着还没有到达最终地址,则流程返回到其中错误计数器被重置的3225,然后到达3330,其中下一个地址和数据被生成和/或更新,并且测试继续进行。
图34是示出根据本发明构思的、执行误比特率内置自测试的步骤的流程图3405。该流程从3410开始,在3410中进入测试模式,并且启动对于数据“0”或“1”的WER测试或者启动对于数据“0”或“1”的RER测试。流程前进到3415,其中写和读脉冲宽度被设置。在3420,电压范围和步长可以被设置。换句话说,用于读/写电压范围和电压步长的寄存器可以被配置。在3425,可以设置起始电压和方向。例如,可以配置起始电压以及递增或递减标记(flag)。在3430,可以开始测试。在3435,WER和/或RER测试流程可以被执行,如参考图32和图33所说明和描述的那样。在3440,可以通过,例如预先分配的DQ引脚顺序地、并行地、或以组合了这两者的方式来读出结果。在3445,确定是否已经测试了全部的电压范围或者是否已经测试了全部的脉冲宽度范围。如果是,则测试完成。否则,如果否,则意味着电压范围内的另外的电压还将要被测试,或者另外的脉冲宽度还将要被测试,流程前进到3450,在3450中测试电压可以被设置为下一个编程的电压电平或者脉冲宽度可以被设置为下一个编程的脉冲宽度。然后流程返回到3435,其中另外的WER和/或RER测试继续进行或者被重复。
在一些实施例中,WER数据可以被绘制成不切换的概率(1/p)与写电压的关系(或者1/P与写脉冲宽度的关系);其中p=切换的概率(未示出)。可以在每个电压或脉冲宽度进行错误计数,而不管先前的错误计数。写错误率可以等于写错误计数除以总的有效写尝试。在这种情况下,无效的写尝试是重置失败的情况。重置失败可以意味着两件事情:(1)该比特被困住;或者(2)发生回跳。例如,在执行WER“0”的情况下,“1”首先被写入(即重置操作),然后它被验证(即,期望读出“1”),然后“0”被写入,并且期望稍后将读出“0”。如果重置失败,则在期望读出“1”的情况下读出“0”。重置失败的周期可以从WER计算中排除。如果该比特的初始状态是“0”,则意味着它没有切换(或者被困在了“0”)。如果该比特的初始状态是“1”,则意味着即使写入了“1”它仍切换到了“0”。这被称为回跳,回跳通常在较高的写电压时发生。另外,人们可以推断出当重置和写周期同时失败时发生回跳。
RER情况是类似的,虽然其在概念上稍有不同,那就是RER数据可以被绘制成切换的概率与电压或脉冲宽度的关系。本发明构思的实施例允许所有的原始数据被读入测试器或微控制器。分析该数据的工程师或技术员能够决定使用什么数据。
图35是根据本发明构思的数据“1”WER内置自测试的示例波形定时图3505。如可以从图中看到的,写命令跟随在读命令之后,并这个顺序重复。如可以从图中看到的,当IOx被拉低时,在3510,位线BLx确立(assert)在相对较高的电压电平,并且WR0(即,“0”)被写入。在3525,BLx确立在相对较低的电压电平,并且在3515数据被读取。在3520,源极线SLx确立在相对较高的电压电平,并且WR1(即,“1”)被写入。然后,在3535,BLx确立在相对较低的电压电平,并且在3530数据被读取。
虽然未示出,但是数据“1”RER内置自测试是类似的,其主要差别在于:在初始写之后,读操作(例如,在3525、3535)可以重复许多次(例如,1000次、10000次,等等)。可以测试不同的图案。例如,每个图案可以被测试10000个周期。在最后的周期之后,可以评估存储单元的数据值,以确定该数据是否被干扰。这样的测试能够,例如,整夜运行,并且在早晨检验以便审查和分析结果。
图36是根据本发明构思的数据“0”WER内置自测试的示例波形定时图3505。如可以从图中看到的,写命令跟随在读命令之后,并这个顺序重复。如可以从图中看到的,当IOx被拉高时,在3610,源极线SLx确立在相对较高的电压电平,并且WR1(即,“1”)被写入。在3625,BLx确立在相对较低的电压电平,并且在3615数据被读取。在3620,位线BLx确立在相对较高的电压电平,并且WR0(即,“0”)被写入。然后,在3635,BLx显示在相对较低的电压电平,并且在3630数据被读取。
虽然未示出,但是数据“0”RER内置自测试是类似的,其主要差别在于:在初始写之后,读操作(例如,在3625、3635)可以重复许多次(例如,1000次、10000次,等等)。可以测试不同的图案。例如,每个图案可以被测试10000个周期。在最后的周期之后,可以评估存储单元的数据值,以确定该数据是否被干扰。这样的测试能够,例如,整夜运行,并且在早晨检验以便审查和分析结果。
图37是示出根据本发明构思的、执行误比特率内置自测试的步骤的流程图3705。该流程在3710开始,在3710中确定是否执行了WER测试。如果是,则流程前进到3715,其中WER测试结果被分析。然后,在3720,可以针对地址位置调整电压电平和/或脉冲宽度。在替换的实施例中,在3725,可以针对地址段调整电压电平和/或脉冲宽度。在又一个替换的实施例中,在3730,可以针对整个芯片调整电压电平和/或脉冲宽度。
否则,如果否,则意味着WER测试还没有被执行,则流程前进到3735,在3735中确定是否已经执行了RER测试。如果否,则流程返回到3710以进行进一步确定和处理。否则,如果是,则流程前进到3740,其中RER测试结果被分析。然后,在3745,可以针对地址位置调整电压电平和/或脉冲宽度。在替换的实施例中,在3750,可以针对地址段调整电压电平和/或脉冲宽度。在又一个替换的实施例中,在3755,可以针对整个芯片调整电压电平和/或脉冲宽度。分析WER或RER数据需要足够的、运行适当的分析软件程序的电力。执行片外分析可能会更加高效。这样的片外分析可以在耦合至存储器的具有这样的能力的SoC中(在SiP的情况中)进行,或者在测试器计算机(例如,PC)上进行。分析的结果可以被用来执行,例如,3720、3725、3730、3745、3750、和3755。此外,存储器芯片可以被设计为具有这样的内置的特征。
将理解,这里所例示和描述的流程图中的元素和确定不需要按照所描述的特定次序发生,更确切地说,这些元素和确定能够在不同的时间或者按照不同的次序进行。
图38是根据本发明构思的、包括误比特率内置自测试生成器与控制逻辑3830的示例系统图3800。BER控制逻辑3830可以电连接至系统总线3805。计算系统3800也可以包括:时钟3810;随机存取存储器(RAM)、闪存、或者MTT存储器3815;智能存储器控制器3845;用户接口3820;诸如基带芯片集的调制解调器3825;和/或自动化测试设备(ATE)3835,以上各项的任何或全部可以电耦合至系统总线3805。
如果计算系统3800是移动设备,则它还可以包括电池3840,其给计算系统3800供电。虽然图38中未示出,但是计算系统3800还可以包括应用芯片集、照相机图像处理器(CIS)、移动DRAM、等等。智能存储器控制器3845和存储器3815可以构成固态驱动器/硬盘(SSD),其使用非易失性存储器来存储数据。
在示例实施例中,计算系统3800可以用作计算机、便携式计算机、超级移动PC(UMPC)、工作站、上网本、PDA、网络平板计算机、无线电话、移动电话、智能电话、电子书、PMP(便携式多媒体播放器)、数码相机、数字音频记录器/播放器、数字图片/视频记录器/播放器、便携式游戏机、导航系统、黑盒子、3维电视机、能够在无线环境中传送和接收信息的设备、构成家庭网络的各种电子设备之一、构成计算机网络的各种电子设备之一、构成车载网络(telematics network)的各种电子设备之一、或者构成计算网络的各种电子设备之一。
下面的讨论意图提供对其中能够实施本发明的某些方面的合适的机器的简明的、概括性的描述。典型地,所述机器包括系统总线,其中处理器、存储器(例如,随机存取存储器(RAM)、只读存储器(ROM)、或者其它的状态保存介质)、存储设备、视频接口、和输入/输出接口端口附在系统总线上。所述机器可以至少部分地通过来自诸如键盘、鼠标等的传统输入设备的输入,以及通过从另一个机器接收的指示、与虚拟现实(VR)环境的交互、生物计量反馈、或者其它输入信号来控制。如这里所使用的,术语“机器”意图广泛地包含单一的机器、虚拟机、或者通信地耦合了机器、虚拟机、或一起操作的设备的系统。示范性机器包括计算设备,诸如个人计算机、工作站、服务器、便携式计算机、手持设备、电话、平板计算机等,以及运输设备,诸如个人或公共运输工具,例如,汽车、火车、计程车等。
所述机器能够包括嵌入式控制器,诸如可编程或不可编程逻辑器件或这列、专用集成电路(ASIC)、嵌入式计算机、智能卡等等。所述机器能够利用与一个或多个远程机器的一个或多个连接,诸如通过网络接口、调制解调器、或者其它通信耦合。机器可以通过物理和/或逻辑网络的方式相互连接,诸如内联网、因特网、局域网、广域网、等等。本领域技术人员将理解,网络通信能够利用各种有线和/或无线近程或远程载波和协议,包括射频(RF)、卫星、微波、电气与电子工程师协会(IEEE)545.11、光学、红外、电缆、激光、等等。
可以通过参考或结合相关联的数据来描述本发明的实施例,所述相关联的数据包括函数、程序、数据结构、应用程序等等,当其被机器访问时使得该机器执行任务或者定义抽象数据类型或低级硬件上下文。相关联的数据可以,例如,存储在例如RAM、ROM等的易失性和/或非易失性存储器中,或者存储在其它存储设备及与其相关联的存储介质中,包括硬件驱动、软盘、光学存储装置、磁带、闪存、记忆棒、数字视频光盘、生物存储装置等等。相关联的数据可以通过包括物理和/或逻辑网络的传输环境,以分组、串行数据、并行数据、传播信号等形式来分发,并且可以以压缩或加密的格式使用。相关联的数据可以在分布式环境中使用,并且被本地和/或远程存储以用于机器访问。
已经参考所例示的实施例描述和说明了本发明的原理,将认识到,可以对所例示的实施例进行布置和细节上的修改而不脱离这些原理,并且可以以任何期望的方式组合所例示的实施例。并且虽然前述的讨论已经专注于具体的实施例,但是其它的配置也是可以预期的。具体地,即使在这里使用了诸如“根据本发明的实施例”等等这样的表达,这些短语旨在概括性地参考实施例可能性,并且并不意图将本发明限制在具体的实施例配置。如这里所使用的,这些术语能够参考可以组合到其它实施例中的相同的或不同的实施例。
本发明的实施例可以包括非临时性机器可读介质,其包括能够被一个或多个处理器执行的指令,所述指令包括用来执行如这里所描述的本发明构思的元素的指令。
应当注意到,本发明构思并不被前述发明内容中所描述的任何特定实施例所限制,并且本领域普通技术人员从这里提供的公开将容易地理解利用本发明构思的许多其它方面和实施例。这些和其它实施例的细节包括在详细描述和附图中。
前述例示的实施例不会被理解为限制本发明。虽然已经描述了少数实施例,但是本领域技术人员将容易地理解,对那些实施例进行许多修改而不实质性地脱离本公开的新颖教导和优点是可能的。因此,所有这样的修改意图被包括在如权利要求中所定义的本发明构思的范围内。

Claims (30)

1.一种用于提供存储器件上的误比特率内置自测试的方法,该方法包括:
进入测试模式;
由存储器件在内部生成错误率定时图案;
由存储器件基于内部生成的错误率定时图案,执行误比特率内置自测试;
测量从误比特率内置自测试得到的错误率,以及
重复误比特率内置自测试,
其中执行误比特率内置自测试包括:
接收用于写误比特率内置自测试的模式寄存器设置命令;
响应于接收所述模式寄存器设置命令进入测试模式;
生成下一地址;
通过写入“0”重置在下一地址的存储器值;
更新周期计数寄存器;
确定基于周期计数寄存器的周期的数目是否已经达到预定阈值;以及
响应于确定周期的数目还没有达到预定阈值:
基于测量的错误率,调整一个或多个测试参数;以及
重复误比特率内置自测试,
其中所述重复包括使用调整的一个或多个参数重复误比特率内置自测试。
2.如权利要求1所述的方法,其中执行误比特率内置自测试还包括:
接收针对用于写入“1”的写误比特率内置自测试的模式寄存器设置命令;
读取在下一地址的存储器值并验证已经写入“0”;
确定存储器值的重置是否失败;
响应于确定重置失败,更新重置错误计数寄存器;
响应于确定重置没有失败:
用“1”写入在下一地址的存储器值;
读取在下一地址的存储器值并且验证已经写入“1”;
确定用“1”在下一地址的存储器值的写入是否失败;以及
响应于确定所述写入失败,更新写入错误计数寄存器。
3.如权利要求2所述的方法,其中:
执行误比特率内置自测试包括执行写错误率测试;
测量包括测量写错误率;
调整包括基于所测量的写错误率调整一个或多个测试参数;以及
重复包括使用调整后的参数重复写错误率测试。
4.如权利要求2所述的方法,其中:
执行误比特率内置自测试包括执行读错误率测试;
测量包括测量读错误率;
调整包括基于所测量的读错误率调整一个或多个测试参数;以及
重复包括使用调整后的参数重复读错误率测试。
5.如权利要求1所述的方法,其中进入测试模式还包括:
接收一个或多个模式寄存器设置命令;以及
响应于所述一个或多个模式寄存器设置命令进入测试模式。
6.如权利要求1所述的方法,还包括:
接收一个或多个模式寄存器设置命令;以及
响应于所述一个或多个模式寄存器设置命令配置一个或多个测试参数。
7.如权利要求6所述的方法,其中配置一个或多个测试参数还包括:
设置起始电压、电压范围和电压步长中的至少一个。
8.如权利要求6所述 的方法,其中配置一个或多个测试参数还包括:
设置读脉冲宽度和写脉冲宽度中的至少一个。
9.如权利要求1所述的方法,其中调整一个或多个测试参数还包括:
将读电压自动设置成下一个编程的电压电平。
10.如权利要求1所述 的方法,其中调整一个或多个测试参数还包括:
将写电压自动设置成下一个编程的电压电平。
11.如权利要求1所述的方法,还包括:
当所测量的错误率超过预先定义的阈值时,自动重新分配存储器件内的存储器空间。
12.一种用于提供存储器件上的误比特率内置自测试的方法,该方法包括:
由存储器件执行写错误率内置自测试和读错误率内置自测试中的至少一个;
测量从写错误率内置自测试和读错误率内置自测试中的至少一个得出的错误率,
其中执行写错误率内置自测试和读错误率内置自测试中的至少一个还包括:
接收用于写错误率内置自测试的模式寄存器设置命令;
响应于接收所述模式寄存器设置命令进入测试模式;
生成下一地址;
通过写入“0”重置在下一地址的存储器值;
更新周期计数寄存器;
确定基于周期计数寄存器的周期的数目是否已经达到预定阈值;以及
响应于确定周期的数目还没有达到预定阈值:
基于测量的错误率,自动调整一个或多个测试参数;以及
重复写错误率内置自测试和读错误率内置自测试中的至少一个,
其中所述重复包括使用调整的一个或多个参数重复写错误率内置自测试和读错误率内置自测试中的至少一个。
13.如权利要求12所述的方法,其中自动调整还包括:
针对地址位置自动调整电压电平。
14.如权利要求12所述的方法,其中自动调整还包括:
针对地址段自动调整电压电平。
15.如权利要求12所述的方法,其中自动调整还包括:
针对与存储器件相关联的整个芯片自动调整电压电平。
16.如权利要求12所述的方法,其中自动调整还包括:
针对地址位置自动调整脉冲宽度。
17.如权利要求12所述的方法,其中自动调整还包括:
针对地址段自动调整脉冲宽度。
18.如权利要求12所述的方法,其中自动调整还包括:
针对与存储器件相关联的整个芯片自动调整脉冲宽度。
19.一种存储器件,包括:
误比特率控制逻辑,被配置成控制误比特率内置自测试;
片上振荡器,被配置成生成用于误比特率内置自测试的内部参考时钟;
写错误率测试图案生成器,被配置成生成用于误比特率内置自测试的写错误测试图案;以及
读错误率测试图案生成器,被配置成生成用于误比特率内置自测试的读错误测试图案,
测量从写错误率内置自测试和读错误率内置自测试中的至少一个得出的错误率,
其中所述误比特率控制逻辑配置为:
接收用于误比特率内置自测试的模式寄存器设置命令;
响应于接收所述模式寄存器设置命令进入测试模式;
生成下一地址;
通过写入“0”重置在下一地址的存储器值;
更新周期计数寄存器;
确定基于周期计数寄存器的周期的数目是否已经达到预定阈值;以及
响应于确定周期的数目还没有达到预定阈值:
基于测量的错误率,自动调整一个或多个测试参数;以及
使用调整的一个或多个参数重复误比特率内置自测试。
20.如权利要求19所述的存储器件,还包括:
逻辑,被配置成对误比特率内置自测试的周期进行计数。
21.如权利要求19所述的存储器件,还包括:
写错误率周期计数寄存器,被配置成存储写周期的数目;和
读错误率周期计数寄存器,被配置成存储读周期的数目。
22.如权利要求19所述的存储器件,还包括:
脉冲宽度生成器电路;和
脉冲宽度寄存器,被配置成提供用来在脉冲宽度生成器电路中选择所期望的脉冲宽度延时的代码。
23.如权利要求19所述的存储器件,还包括:
电压生成器;和
稳压器寄存器,被配置成产生用来在电压生成器中选择电压偏置电平的代码。
24.如权利要求23所述的存储器件,还包括:
写错误计数器,被配置成对误比特率内置自测试的写错误的数目进行计数;和
读错误计数器,被配置成对误比特率内置自测试的读错误的数目进行计数。
25.一种用于提供误比特率内置自测试的系统,包括:
总线;
耦合至总线的存储器;和
智能存储器控制器,包括:
误比特率控制逻辑,被配置成控制误比特率内置自测试;
片上振荡器,被配置成生成用于误比特率内置自测试的内部参考时钟;
写错误率测试图案生成器,被配置成生成用于误比特率内置自测试的写错误测试图案;以及
读错误率测试图案生成器,被配置成生成用于误比特率内置自测试的读错误测试图案;
测量从用于误比特率内置自测试的写错误测试图案和读错误测试图案中的至少一个得出的错误率,
其中所述误比特率控制逻辑配置为:
接收用于误比特率内置自测试的模式寄存器设置命令;
响应于接收所述模式寄存器设置命令进入测试模式;
生成下一地址;
通过写入“0”重置在下一地址的存储器值;
更新周期计数寄存器;
确定基于周期计数寄存器的周期的数目是否已经达到预定阈值;以及
响应于确定周期的数目还没有达到预定阈值:
基于测量的错误率,自动调整一个或多个测试参数;以及
使用调整的一个或多个参数重复误比特率内置自测试。
26.如权利要求25所述的系统,其中所述智能存储器控制器还包括:
逻辑,被配置成对误比特率内置自测试的周期进行计数。
27.如权利要求25所述的系统,其中所述智能存储器控制器还包括:
写错误率周期计数寄存器,被配置成存储写周期的数目;和
读错误率周期计数寄存器,被配置成存储读周期的数目。
28.如权利要求25所述的系统,其中所述智能存储器控制器还包括:
脉冲宽度生成器电路;和
脉冲宽度寄存器,被配置成提供用来在脉冲宽度生成器电路中选择所期望的脉冲宽度延时的代码。
29.如权利要求25所述的系统,其中所述智能存储器控制器还包括:
电压生成器;和
稳压器寄存器,被配置成产生用来在电压生成器中选择电压偏置电平的代码。
30.如权利要求29所述的系统,其中所述智能存储器控制器还包括:
写错误计数器,被配置成对误比特率内置自测试的写错误的数目进行计数;和
读错误计数器,被配置成对误比特率内置自测试的读错误的数目进行计数。
CN201310629755.3A 2012-11-30 2013-11-29 用于提供智能存储器架构的方法和系统 Active CN103854705B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/691,639 2012-11-30
US13/691,639 US9069719B2 (en) 2012-02-11 2012-11-30 Method and system for providing a smart memory architecture
US13/936,134 US9679664B2 (en) 2012-02-11 2013-07-05 Method and system for providing a smart memory architecture
US13/936,134 2013-07-05

Publications (2)

Publication Number Publication Date
CN103854705A CN103854705A (zh) 2014-06-11
CN103854705B true CN103854705B (zh) 2018-10-19

Family

ID=50726152

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310629755.3A Active CN103854705B (zh) 2012-11-30 2013-11-29 用于提供智能存储器架构的方法和系统

Country Status (5)

Country Link
US (1) US9679664B2 (zh)
JP (1) JP6320008B2 (zh)
KR (1) KR101898885B1 (zh)
CN (1) CN103854705B (zh)
DE (1) DE102013112900A1 (zh)

Families Citing this family (140)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751755B2 (en) 2007-12-27 2014-06-10 Sandisk Enterprise Ip Llc Mass storage controller volatile memory containing metadata related to flash memory storage
FR2992466A1 (fr) 2012-06-22 2013-12-27 Soitec Silicon On Insulator Procede de realisation de contact pour led et structure resultante
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9196384B2 (en) * 2012-12-28 2015-11-24 Intel Corporation Memory subsystem performance based on in-system weak bit detection
US9076499B2 (en) * 2012-12-28 2015-07-07 Intel Corporation Refresh rate performance based on in-system weak bit detection
US9536626B2 (en) 2013-02-08 2017-01-03 Intel Corporation Memory subsystem I/O performance based on in-system empirical testing
US9281079B2 (en) * 2013-02-12 2016-03-08 International Business Machines Corporation Dynamic hard error detection
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
CN104243222A (zh) * 2013-06-06 2014-12-24 鸿富锦精密工业(深圳)有限公司 网络设备性能测试方法及测试装置和测试系统
US20150026528A1 (en) * 2013-07-16 2015-01-22 Manuel A. d'Abreu Controller based memory evaluation
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
KR102097522B1 (ko) 2013-09-09 2020-04-07 삼성디스플레이 주식회사 화소 회로, 이를 구비한 유기 발광 표시 장치 및 유기 발광 표시 장치의 구동 방법
US9461242B2 (en) 2013-09-13 2016-10-04 Micron Technology, Inc. Magnetic memory cells, methods of fabrication, semiconductor devices, memory systems, and electronic systems
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9494647B1 (en) * 2013-12-31 2016-11-15 Gsi Technology, Inc. Systems and methods involving data inversion devices, circuitry, schemes and/or related aspects
US10454024B2 (en) 2014-02-28 2019-10-22 Micron Technology, Inc. Memory cells, methods of fabrication, and memory devices
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
JP6027567B2 (ja) * 2014-03-07 2016-11-16 株式会社東芝 キャッシュメモリおよびプロセッサシステム
US9454448B2 (en) * 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9448876B2 (en) * 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
JP2015185179A (ja) 2014-03-20 2015-10-22 株式会社東芝 抵抗変化メモリ
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US9281466B2 (en) 2014-04-09 2016-03-08 Micron Technology, Inc. Memory cells, semiconductor structures, semiconductor devices, and methods of fabrication
US9859013B2 (en) * 2014-05-06 2018-01-02 Sandisk Technologies Llc Data operations in non-volatile memory
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
KR102249810B1 (ko) * 2014-07-23 2021-05-11 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
CN106796819B (zh) * 2014-09-12 2020-06-16 东芝存储器株式会社 非易失性半导体存储装置
US9349945B2 (en) 2014-10-16 2016-05-24 Micron Technology, Inc. Memory cells, semiconductor devices, and methods of fabrication
US9768377B2 (en) * 2014-12-02 2017-09-19 Micron Technology, Inc. Magnetic cell structures, and methods of fabrication
KR102239755B1 (ko) * 2014-12-05 2021-04-14 에스케이하이닉스 주식회사 리페어 정보 저장 회로 및 이를 포함하는 반도체 장치
US10439131B2 (en) 2015-01-15 2019-10-08 Micron Technology, Inc. Methods of forming semiconductor devices including tunnel barrier materials
US9940457B2 (en) 2015-02-13 2018-04-10 International Business Machines Corporation Detecting a cryogenic attack on a memory device with embedded error correction
US9606851B2 (en) 2015-02-02 2017-03-28 International Business Machines Corporation Error monitoring of a memory device containing embedded error correction
RU2682843C1 (ru) 2015-03-10 2019-03-21 Тосиба Мемори Корпорейшн Устройство памяти и система памяти
US9455014B1 (en) 2015-03-19 2016-09-27 Qualcomm Incorporated Adjusting resistive memory write driver strength based on write error rate (WER) to improve WER yield, and related methods and systems
US9495000B1 (en) * 2015-04-30 2016-11-15 Qualcomm Technologies International, Ltd. Power management of a wireless device
JP6749021B2 (ja) * 2015-05-15 2020-09-02 国立大学法人東北大学 抵抗変化型素子を備えた記憶回路
US10063263B2 (en) 2015-05-20 2018-08-28 International Business Machines Corporation Extended error correction coding data storage
US10020031B2 (en) * 2015-05-21 2018-07-10 Arm Limited Location-based optimization for memory systems
CN106484557B (zh) * 2015-08-31 2019-06-18 联芯科技有限公司 选择读参数的方法及装置
KR20170034176A (ko) 2015-09-18 2017-03-28 에스케이하이닉스 주식회사 반도체 장치
KR20170051039A (ko) 2015-11-02 2017-05-11 에스케이하이닉스 주식회사 반도체 장치 및 그 구동 방법
US10105189B2 (en) * 2015-11-10 2018-10-23 Mako Surgical Corp. Techniques for correcting an error in a nonvolatile memory of an embedded component for an end effector in a robotic surgical system
US9928924B2 (en) * 2015-12-15 2018-03-27 Qualcomm Incorporated Systems, methods, and computer programs for resolving dram defects
US9916195B2 (en) * 2016-01-12 2018-03-13 International Business Machines Corporation Performing a repair operation in arrays
KR102529171B1 (ko) 2016-02-26 2023-05-04 삼성전자주식회사 메모리 장치 진단 시스템
US9767878B1 (en) * 2016-03-25 2017-09-19 Taiwan Semiconductor Manufacturing Compant Ltd. Semiconductor memory device and method for controlling the same
US10593727B2 (en) 2016-05-18 2020-03-17 Avalanche Technology, Inc. Magnetic memory cell including two-terminal selector device
US11538857B2 (en) 2016-05-18 2022-12-27 Avalanche Technology, Inc. Bidirectional selector device for memory applications
US11848039B2 (en) 2016-05-18 2023-12-19 Avalanche Technology, Inc. Cross-point MRAM including self-compliance selector
JP2017224372A (ja) * 2016-06-16 2017-12-21 東芝メモリ株式会社 磁気メモリ装置
US9812499B1 (en) * 2016-07-27 2017-11-07 Avalanche Technology, Inc. Memory device incorporating selector element with multiple thresholds
FR3055062B1 (fr) * 2016-08-11 2018-08-31 Stmicroelectronics Sa Procede d'ecriture autocorrective d'un dispositif de memoire vive statique multiports, et dispositif correspondant
TWI645400B (zh) 2016-09-13 2018-12-21 東芝記憶體股份有限公司 Semiconductor memory device
JP2018049672A (ja) * 2016-09-20 2018-03-29 東芝メモリ株式会社 メモリシステムおよびプロセッサシステム
US10283212B2 (en) * 2016-11-29 2019-05-07 International Business Machines Corporation Built-in self-test for embedded spin-transfer torque magnetic random access memory
KR20180068095A (ko) * 2016-12-13 2018-06-21 에스케이하이닉스 주식회사 반도체 장치 및 이를 포함하는 반도체 시스템
KR102646755B1 (ko) * 2017-01-06 2024-03-11 삼성전자주식회사 저항 변화 물질을 포함하는 메모리 장치 및 그 구동 방법
JP2018156978A (ja) 2017-03-15 2018-10-04 東芝メモリ株式会社 磁気記憶装置のスクリーニング方法、そのスクリーニング装置及び磁気記憶装置の製造方法
CN107068188A (zh) * 2017-03-22 2017-08-18 合肥仁德电子科技有限公司 电子存储调试设备
US10140040B1 (en) 2017-05-25 2018-11-27 Micron Technology, Inc. Memory device with dynamic program-verify voltage calibration
US10242750B2 (en) * 2017-05-31 2019-03-26 Sandisk Technologies Llc High-speed data path testing techniques for non-volatile memory
CN107301024B (zh) * 2017-06-09 2020-07-17 珠海艾派克微电子有限公司 成像盒芯片、成像盒及数据处理方法
US10394647B2 (en) 2017-06-22 2019-08-27 International Business Machines Corporation Bad bit register for memory
US10452102B2 (en) 2017-06-23 2019-10-22 Dell Products L.P. Power delivery contract establishment in a power storage adapter
US10476288B2 (en) 2017-06-23 2019-11-12 Dell Products L.P. Power storage adapter for peak shift operation with a portable information handling system
US10381844B2 (en) 2017-06-23 2019-08-13 Dell Products L.P. Sourcing power from a battery or AC-DC converter of a power storage adapter
US10978896B2 (en) 2017-06-23 2021-04-13 Dell Products L.P. High efficiency power storage adapter
US10389154B2 (en) 2017-06-23 2019-08-20 Dell Products L.P. Power storage adapter using a high efficiency charging method
US10928880B2 (en) 2017-06-23 2021-02-23 Dell Products L.P. Power storage adapter for communicating battery data with a portable information handling system
US10403385B2 (en) 2017-06-30 2019-09-03 Taiwan Semiconductor Manufacturing Co., Ltd. Apparatus for memory device testing and field applications
CN109213624B (zh) * 2017-06-30 2022-04-05 慧荣科技股份有限公司 降低快闪储存介面中传收数据错误方法及装置
US10608443B2 (en) 2017-08-15 2020-03-31 Dell Products L.P. Battery management using battery temperature distribution
US10642333B2 (en) 2017-08-24 2020-05-05 Dell Products L.P. Power storage adapter for efficient supply of power of multiple portable information handling systems
US10620679B2 (en) 2017-09-01 2020-04-14 Dell Products L.P. Prioritizing supplying electrical power by a power storage adapter to connected devices
US10673271B2 (en) 2017-09-01 2020-06-02 Dell Products L.P. Efficient charging of multiple portable information handling systems based on learned charging characteristics
CN107729229B (zh) * 2017-09-01 2020-04-24 北京东土军悦科技有限公司 一种设计代码中替换单元的验证方法、装置和设备
JP2019053794A (ja) 2017-09-13 2019-04-04 東芝メモリ株式会社 半導体記憶装置
US10404105B2 (en) 2017-09-14 2019-09-03 Dell Products L.P. Power storage adapter for wireless power transmission
US11513928B2 (en) * 2017-09-18 2022-11-29 Dell Products L.P. Power storage adapter with power cable validation
US10714797B2 (en) 2017-09-18 2020-07-14 Dell Products L.P. Multilayer thermal laminate with aerogel for battery cell enclosures
US10488906B2 (en) 2017-09-26 2019-11-26 Dell Products L.P. Power delivery based on temperature and other factors in a power storage adapter
CN107911158B (zh) * 2017-09-27 2020-05-08 西安空间无线电技术研究所 一种基于虚拟数据平面的服务系统以及提供服务的方法
US11290110B2 (en) * 2017-10-26 2022-03-29 Samsung Electronics Co., Ltd. Method and system for providing a variation resistant magnetic junction-based XNOR cell usable in neuromorphic computing
JP2019082897A (ja) * 2017-10-31 2019-05-30 富士通株式会社 情報処理装置、情報処理システム及びプログラム
KR102388803B1 (ko) * 2017-11-02 2022-04-20 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
KR102387099B1 (ko) * 2017-12-27 2022-04-15 삼성전자주식회사 타겟 게이트 라인의 전압 강하를 보상하는 비휘발성 메모리 장치
KR102401182B1 (ko) * 2018-01-19 2022-05-24 삼성전자주식회사 메모리 장치 및 메모리 패키지
US10777295B2 (en) * 2018-04-12 2020-09-15 Micron Technology, Inc. Defective memory unit screening in a memory system
US10664194B2 (en) 2018-05-16 2020-05-26 Micron Technology, Inc. Memory system with dynamic calibration using a variable adjustment mechanism
US10990466B2 (en) 2018-06-20 2021-04-27 Micron Technology, Inc. Memory sub-system with dynamic calibration using component-based function(s)
CN110658977B (zh) * 2018-06-28 2023-02-24 深圳大心电子科技有限公司 存储器管理方法以及存储控制器
US11188416B2 (en) 2018-07-12 2021-11-30 Micron Technology, Inc. Enhanced block management for a memory sub-system
US11113129B2 (en) * 2018-07-13 2021-09-07 Micron Technology, Inc. Real time block failure analysis for a memory sub-system
CN109256173A (zh) * 2018-08-13 2019-01-22 中国航空无线电电子研究所 机载存储设备测试系统
US10936246B2 (en) 2018-10-10 2021-03-02 Micron Technology, Inc. Dynamic background scan optimization in a memory sub-system
US10990524B2 (en) 2018-10-11 2021-04-27 Powerchip Semiconductor Manufacturing Corporation Memory with processing in memory architecture and operating method thereof
EP3867657B1 (en) * 2018-10-16 2024-03-27 Minima Processor Oy Applications of adaptive microelectronic circuits that are designed for testability
JP2020087491A (ja) * 2018-11-21 2020-06-04 キオクシア株式会社 半導体記憶装置
CN109814525B (zh) * 2018-12-29 2022-03-22 惠州市德赛西威汽车电子股份有限公司 一种检测汽车ecu can总线通信电压范围的自动化测试方法
JP6989541B2 (ja) * 2019-01-30 2022-01-05 株式会社東芝 演算デバイス
US11010234B2 (en) 2019-02-01 2021-05-18 Winbond Electronics Corp. Memory device and error detection method thereof
KR20200126178A (ko) 2019-04-29 2020-11-06 삼성전자주식회사 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 컨트롤러의 동작 방법
US10937495B2 (en) * 2019-07-02 2021-03-02 Winbond Electronics Corp. Resistive memory apparatus and method for writing data thereof
KR102651229B1 (ko) * 2019-07-22 2024-03-25 삼성전자주식회사 자기접합 메모리 장치 및 자기접합 메모리 장치의 데이터 라이트 방법
CN115066728A (zh) * 2019-12-09 2022-09-16 西门子工业软件有限公司 具有自动化多步参考微调的存储器内建自测试
US11373695B2 (en) 2019-12-18 2022-06-28 Micron Technology, Inc. Memory accessing with auto-precharge
US11042432B1 (en) 2019-12-20 2021-06-22 Western Digital Technologies, Inc. Data storage device with dynamic stripe length manager
CN113051199A (zh) 2019-12-26 2021-06-29 阿里巴巴集团控股有限公司 数据传输方法及装置
CN113284533B (zh) * 2020-02-20 2023-10-13 华邦电子股份有限公司 存储器装置和调整用于存储器装置的参数的方法
TWI714475B (zh) * 2020-03-17 2020-12-21 華邦電子股份有限公司 控制裝置以及記憶體系統
CN113448424B (zh) * 2020-03-27 2023-12-08 华邦电子股份有限公司 控制装置以及存储器系统
TWI747231B (zh) * 2020-04-08 2021-11-21 慧榮科技股份有限公司 閃存裝置的開卡電腦程式產品及方法以及裝置
CN111797033A (zh) * 2020-06-23 2020-10-20 山东华芯半导体有限公司 一种SSD中处理NAND Flash读干扰的方法
KR20220033146A (ko) * 2020-09-09 2022-03-16 삼성전자주식회사 저항성 메모리 장치 및 저항성 메모리 장치의 데이터 리드 방법
US20220139490A1 (en) * 2020-11-05 2022-05-05 Changxin Memory Technologies, Inc. Method, device, apparatus and storage medium for repairing failed bits
KR20220070997A (ko) 2020-11-23 2022-05-31 에스케이하이닉스 주식회사 컨트롤러 및 이를 포함하는 메모리 시스템
CN112614536A (zh) * 2020-12-09 2021-04-06 北京智芯微电子科技有限公司 Mram存储阵列温度自检测方法、存储控制方法和系统
US11605427B2 (en) 2021-01-04 2023-03-14 Taiwan Semiconductor Manufacturing Company Ltd. Memory device with write pulse trimming
US11977778B2 (en) * 2022-03-09 2024-05-07 Micron Technology, Inc. Workload-based scan optimization
TWI819608B (zh) * 2022-05-17 2023-10-21 瑞昱半導體股份有限公司 具有電源穩定測試機制的多核處理電路及其測試方法
WO2023235216A1 (en) * 2022-06-02 2023-12-07 Rambus Inc. 3d memory device with local column decoding
US20230403011A1 (en) * 2022-06-09 2023-12-14 Everspin Technologies, Inc. Mram device with integrated controller for fpga system and methods therefor
US20240069764A1 (en) * 2022-08-24 2024-02-29 Micron Technology, Inc. Single-bit error indication for a memory built-in self-test

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272588B1 (en) * 1997-05-30 2001-08-07 Motorola Inc. Method and apparatus for verifying and characterizing data retention time in a DRAM using built-in test circuitry
US7733686B2 (en) * 2006-12-30 2010-06-08 Texas Instruments Incorporated Pulse width control for read and write assist for SRAM circuits
CN102467976A (zh) * 2010-11-18 2012-05-23 格兰迪斯股份有限公司 存储器写入错误校正电路
CN102542971A (zh) * 2010-12-13 2012-07-04 三星电子株式会社 显示驱动器电路、其操作方法、以及包括其的用户设备

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6138249A (en) 1997-12-11 2000-10-24 Emc Corporation Method and apparatus for monitoring computer systems during manufacturing, testing and in the field
US6480972B1 (en) 1999-02-24 2002-11-12 International Business Machines Corporation Data processing system and method for permitting a server to remotely perform diagnostics on a malfunctioning client computer system
US6584589B1 (en) 2000-02-04 2003-06-24 Hewlett-Packard Development Company, L.P. Self-testing of magneto-resistive memory arrays
US6754866B1 (en) 2001-09-28 2004-06-22 Inapac Technology, Inc. Testing of integrated circuit devices
US6904389B2 (en) 2001-03-06 2005-06-07 Hewlett-Packard Development Company, L.P. Remote computer testing
US6760865B2 (en) 2001-05-16 2004-07-06 Freescale Semiconductor, Inc. Multiple level built-in self-test controller and method therefor
US6657914B1 (en) 2001-07-19 2003-12-02 Inapac Technology, Inc. Configurable addressing for multiple chips in a package
US7365557B1 (en) 2001-09-28 2008-04-29 Inapac Technology, Inc. Integrated circuit testing module including data generator
US7673193B1 (en) 2005-08-18 2010-03-02 Rambus Inc. Processor-memory unit for use in system-in-package and system-in-module devices
US7466160B2 (en) 2002-11-27 2008-12-16 Inapac Technology, Inc. Shared memory bus architecture for system with processor and memory units
US7409621B2 (en) * 2002-12-26 2008-08-05 Intel Corporation On-chip jitter testing
JP3866701B2 (ja) 2003-08-25 2007-01-10 株式会社東芝 磁気ランダムアクセスメモリ及びそのテスト方法
US7533309B2 (en) * 2004-02-26 2009-05-12 Nilanjan Mukherjee Testing memories using algorithm selection
JP4237109B2 (ja) * 2004-06-18 2009-03-11 エルピーダメモリ株式会社 半導体記憶装置及びリフレッシュ周期制御方法
JP2006065922A (ja) * 2004-08-25 2006-03-09 Toshiba Corp 半導体記憶装置
GB0426005D0 (en) * 2004-11-26 2004-12-29 Koninkl Philips Electronics Nv Sram test method and sram test arrangement
US7356744B2 (en) 2005-05-12 2008-04-08 Pc-Doctor, Inc. Method and system for optimizing testing of memory stores
US7779311B2 (en) 2005-10-24 2010-08-17 Rambus Inc. Testing and recovery in a multilayer device
WO2007063264A1 (en) * 2005-12-02 2007-06-07 Arm Limited Data processing system
WO2008042403A2 (en) 2006-10-03 2008-04-10 Inapac Technologies, Inc. Memory accessing circuit system
US7945840B2 (en) 2007-02-12 2011-05-17 Micron Technology, Inc. Memory array error correction apparatus, systems, and methods
US7664993B2 (en) 2007-02-27 2010-02-16 Microsoft Corporation Automation of testing in remote sessions
KR100872861B1 (ko) * 2007-04-04 2008-12-09 주식회사 루프 Prbs 패턴에서 비트 에러율 테스트 방법
US7818638B2 (en) 2007-06-15 2010-10-19 Micron Technology, Inc. Systems and devices including memory with built-in self test and methods of making and using the same
US7768847B2 (en) 2008-04-09 2010-08-03 Rambus Inc. Programmable memory repair scheme
US20100332942A1 (en) * 2008-09-10 2010-12-30 Arm Limited Memory controller for NAND memory using forward error correction
US8718574B2 (en) * 2008-11-25 2014-05-06 Qualcomm Incorporated Duty cycle adjustment for a local oscillator signal
JP5314491B2 (ja) * 2009-05-08 2013-10-16 株式会社アドバンテスト 試験装置、試験方法、および、デバイス
KR101792868B1 (ko) 2010-11-25 2017-11-02 삼성전자주식회사 플래시 메모리 장치 및 그것의 읽기 방법
JP2012221545A (ja) * 2011-04-14 2012-11-12 Elpida Memory Inc 半導体装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272588B1 (en) * 1997-05-30 2001-08-07 Motorola Inc. Method and apparatus for verifying and characterizing data retention time in a DRAM using built-in test circuitry
US7733686B2 (en) * 2006-12-30 2010-06-08 Texas Instruments Incorporated Pulse width control for read and write assist for SRAM circuits
CN102467976A (zh) * 2010-11-18 2012-05-23 格兰迪斯股份有限公司 存储器写入错误校正电路
CN102542971A (zh) * 2010-12-13 2012-07-04 三星电子株式会社 显示驱动器电路、其操作方法、以及包括其的用户设备

Also Published As

Publication number Publication date
JP6320008B2 (ja) 2018-05-09
KR20140070441A (ko) 2014-06-10
US20160284422A9 (en) 2016-09-29
US9679664B2 (en) 2017-06-13
JP2014110073A (ja) 2014-06-12
CN103854705A (zh) 2014-06-11
KR101898885B1 (ko) 2018-09-14
DE102013112900A1 (de) 2014-06-05
US20140157065A1 (en) 2014-06-05

Similar Documents

Publication Publication Date Title
CN103854705B (zh) 用于提供智能存储器架构的方法和系统
CN103247347B (zh) 提供智能存储器架构的方法和系统
KR102060835B1 (ko) 메모리 시스템 및 그것의 쓰기 방법
KR101863552B1 (ko) 메모리 쓰기 에러 정정 회로
CN107039083A (zh) 执行封装后修复操作的存储器设备
US20130326295A1 (en) Semiconductor memory device including self-contained test unit and test method thereof
CN107230499A (zh) 非易失性存储器装置及其编程验证操作的方法
JP2010009642A (ja) 半導体記憶装置およびそのテスト方法
Hsiao et al. Built-in self-repair schemes for flash memories
KR102615027B1 (ko) 시리얼라이저 및 이를 포함하는 메모리 디바이스
CN108182962A (zh) 包括虚拟故障产生器的存储器装置及其存储单元修复方法
CN109726141A (zh) 用于防止对故障地址重复编程的存储装置及其操作方法
US20230119341A1 (en) Error correcting code poisoning for memory devices and associated methods and systems
JP2010182349A (ja) 半導体記憶装置及びその自己テスト方法
CN106847343A (zh) 基于自动测试设备的mram存储器的测试方法
CN110890125A (zh) 存储器装置及其操作方法
CN108062965A (zh) 半导体存储装置、控制器及其操作方法
US8194437B2 (en) Computer memory device with multiple interfaces
CN112927745A (zh) 具有tsv健康监测电路的存储器
KR102604620B1 (ko) 시리얼라이저 및 이를 포함하는 메모리 디바이스
US7719908B1 (en) Memory having read disturb test mode
WO2011142966A1 (en) Multi-bank read/write to reduce test-time in memories
CN105261394B (zh) 半导体器件及其操作方法
CN111951876A (zh) 具有写检测功能和动态冗余的mram芯片及其数据读写方法
Bosio et al. Basics on SRAM testing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant