DE102021103853A1 - Speicherarray-testverfahren und -system - Google Patents

Speicherarray-testverfahren und -system Download PDF

Info

Publication number
DE102021103853A1
DE102021103853A1 DE102021103853.7A DE102021103853A DE102021103853A1 DE 102021103853 A1 DE102021103853 A1 DE 102021103853A1 DE 102021103853 A DE102021103853 A DE 102021103853A DE 102021103853 A1 DE102021103853 A1 DE 102021103853A1
Authority
DE
Germany
Prior art keywords
nvm
array
tests
cell
test
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.)
Pending
Application number
DE102021103853.7A
Other languages
English (en)
Inventor
Chien-Hao Huang
Katherine H. Chiang
Cheng-Yi Wu
Cheng-Te Lin
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.)
Taiwan Semiconductor Manufacturing Co TSMC Ltd
Original Assignee
Taiwan Semiconductor Manufacturing Co TSMC 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 US17/175,027 external-priority patent/US11450399B2/en
Application filed by Taiwan Semiconductor Manufacturing Co TSMC Ltd filed Critical Taiwan Semiconductor Manufacturing Co TSMC Ltd
Publication of DE102021103853A1 publication Critical patent/DE102021103853A1/de
Pending legal-status Critical Current

Links

Images

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
    • G11C29/38Response verification devices
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • G01R31/2855Environmental, reliability or burn-in testing
    • G01R31/286External aspects, e.g. related to chambers, contacting devices or handlers
    • G01R31/2868Complete testing stations; systems; procedures; software aspects
    • G01R31/287Procedures; Software aspects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • G01R31/2855Environmental, reliability or burn-in testing
    • G01R31/2872Environmental, reliability or burn-in testing related to electrical or environmental aspects, e.g. temperature, humidity, vibration, nuclear radiation
    • G01R31/2874Environmental, reliability or burn-in testing related to electrical or environmental aspects, e.g. temperature, humidity, vibration, nuclear radiation related to temperature
    • G01R31/2875Environmental, reliability or burn-in testing related to electrical or environmental aspects, e.g. temperature, humidity, vibration, nuclear radiation related to temperature related to heating
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • G01R31/2855Environmental, reliability or burn-in testing
    • G01R31/2872Environmental, reliability or burn-in testing related to electrical or environmental aspects, e.g. temperature, humidity, vibration, nuclear radiation
    • G01R31/2879Environmental, reliability or burn-in testing related to electrical or environmental aspects, e.g. temperature, humidity, vibration, nuclear radiation related to electrical aspects, e.g. to voltage or current supply or stimuli or to electrical loads
    • 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
    • G11C11/165Auxiliary circuits
    • G11C11/1673Reading or sensing circuits or methods
    • 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
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/006Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation at wafer scale level, i.e. wafer scale integration [WSI]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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/06Acceleration testing
    • 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
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50016Marginal testing, e.g. race, voltage or current testing of retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56008Error analysis, representation of errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/702Masking faults in memories by using spares or by reconfiguring by replacing auxiliary circuits, e.g. spare voltage generators, decoders or sense amplifiers, to be used instead of defective ones
    • 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
    • G11C2029/0403Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals during or with feedback to manufacture
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5002Characteristic
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5006Current

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Environmental & Geological Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

Ein Verfahren zum Testen eines nichtflüchtigen Speicherarrays (NVM-Arrays) umfasst Erwärmen des NVM-Arrays auf eine Solltemperatur. Während das NVM-Array auf die Solltemperatur erwärmt ist, wird eine Stromverteilung durch Messen einer Vielzahl von Strömen einer Teilmenge von NVM-Zellen des NVM-Arrays erhalten, jede NVM-Zelle des NVM-Arrays wird in einen von zwei Zuständen, nämlich einen logisch hohen oder einen logisch niedrigen Zustand, programmiert, und an jeder NVM-Zelle des NVM-Arrays werden erste und zweite Bestehen/Nichtbestehen-Tests (P/F-Tests) durchgeführt. Basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests wird eine Bitfehlerrate berechnet.

Description

  • PRIORITÄTSANSPRUCH
  • Die vorliegende Anmeldung beansprucht die Priorität der vorläufigen US-Anmeldung 63/031,185 , eingereicht am Donnerstag, 28. Mai 2020, die vorliegend durch Bezugnahme vollständig aufgenommen wird.
  • HINTERGRUND
  • Bei einigen Anwendungen umfassen integrierte Schaltungen (ICs) Speicherschaltungen, die Daten in nichtflüchtigen Speicherzellen (NVM-Zellen, wobei NVM für Non-Volative Memory steht) speichern, in denen Daten nicht verloren gehen, wenn der IC nicht mehr mit Strom versorgt wird. Zu Typen von NVM-Zellen gehören magnetoresistive Direktzugriffsspeicherzellen (MRAM-Zellen), welche Magnettunnelübergänge (MTJs - Magnetic Tunnel Junctions) und resistive Direktzugriffsspeicherzellen (RRAM-Zellen) mit Festkörperschichten umfassen. NVM-Zellen, wie etwa MRAM- und RRAM-Zellen, können in Zustände mit relativ hohem oder relativ niedrigem Widerstand programmiert werden, die gespeicherte Logikzustände darstellen. Um einen Logikzustand, der in einer NVM-Zelle gespeichert ist, zu bestimmen, wird oftmals ein Stromsignal erzeugt, das einen Stromwert aufweist, der auf dem Widerstand der NVM-Zelle basiert.
  • Figurenliste
  • Aspekte der vorliegenden Offenbarung werden am besten anhand der folgenden detaillierten Beschreibung verständlich, wenn diese in Verbindung mit den beigefügten Figuren gelesen wird. Es sei noch angemerkt, dass entsprechend der üblichen Branchenpraxis verschiedene Merkmale nicht maßstabsgetreu gezeichnet sind. Tatsächlich können die Abmessungen der verschiedenen Merkmale zur Klarheit der Diskussion beliebig vergrößert oder verkleinert sein.
    • 1 ist ein Ablaufdiagramm eines Verfahrens zum Testen eines NVM-Arrays gemäß einigen Ausführungsformen.
    • 2A-2D sind Darstellungen von NVM-Array-Testparametern gemäß einigen Ausführungsformen.
    • 3A und 3B sind Diagramme eines Halbleiterwafers, welcher eine NVM-Zelle umfasst, gemäß einigen Ausführungsformen.
    • 4 ist ein Diagramm eines NVM-Array-Testsystems gemäß einigen Ausführungsformen.
    • 5 ist ein Blockdiagramm einer Testsystemsteuerung gemäß einigen Ausführungsformen.
    • 6 ist ein Blockdiagramm eines IC-Herstellungssystems und eines zugehörigen IC-Herstellungsablaufs gemäß einigen Ausführungsformen.
  • DETAILLIERTE BESCHREIBUNG
  • Die folgende Offenbarung stellt viele unterschiedliche Ausführungsformen bzw. Ausführungsbeispiele zum Implementieren unterschiedlicher Merkmale des bereitgestellten Gegenstands bereit. Konkrete Beispiele für Komponenten, Werte, Vorgänge, Materialien, Anordnungen oder dergleichen werden nachstehend beschrieben, um die vorliegende Offenbarung zu vereinfachen. Diese sind natürlich lediglich Ausführungsbeispiele und sollen nicht einschränkend sein. Andere Komponenten, Werte, Vorgänge, Materialien, Anordnungen und dergleichen werden in Betracht gezogen. Zum Beispiel kann die Ausbildung eines ersten Merkmals über oder auf einem zweiten Merkmal in der folgenden Beschreibung Ausführungsformen umfassen, bei welchen das erste und das zweite Merkmal in direktem Kontakt ausgebildet werden, und auch Ausführungsformen umfassen, bei welchen zusätzliche Merkmale derart zwischen dem ersten und dem zweiten Merkmal ausgebildet werden können, dass das erste und das zweite Merkmal möglicherweise nicht in direktem Kontakt sind. Außerdem kann die vorliegende Offenbarung in den verschiedenen Beispielen Bezugszeichen und/oder Buchstaben wiederholen. Diese Wiederholung dient der Einfachheit und Klarheit und gibt an sich keine Beziehung zwischen den verschiedenen diskutierten Ausführungsformen und/oder Ausgestaltungen vor.
  • Ferner können räumlich relative Begriffe wie „unter“, „unterhalb“, „untere/r/s“, „über“, „obere/r/s“ und dergleichen hier zur Vereinfachung der Beschreibung verwendet werden, um die Beziehung eines Elementes oder Merkmals zu einem anderen Element (anderen Elementen) oder Merkmal(en), wie in den Figuren veranschaulicht, zu beschreiben. Die räumlich relativen Begriffe sollen zusätzlich zu der in den Figuren gezeigten Ausrichtung unterschiedliche Ausrichtungen der Vorrichtung im Gebrauch oder Betrieb umfassen. Der Gegenstand kann anders ausgerichtet sein (um 90 Grad gedreht oder in anderen Ausrichtungen), und die vorliegend verwendeten räumlich relativen Beschreibungen können ebenso entsprechend interpretiert werden.
  • In verschiedenen Ausführungsformen ist ein Verfahren auf einem Testsystem ausführbar und umfasst Durchführen einer Abfolge von Vorgängen, während ein NVM-Array auf eine Solltemperatur erwärmt ist, wodurch eine Stromverteilung, die von einer Teilmenge der NVM-Zellen erhalten wird, verwendet wird, um Bitzustandsbestimmungsfehler zu kompensieren. Die Stromverteilung wird durch Messen von Strömen jeder NVM-Zelle der Teilmenge von NVM-Zellen erhalten, jeweils nachdem diese in einen logisch hohen bzw. einen logisch niedrigen Zustand programmiert wurden. Jede NVM-Zelle des NVM-Arrays wird dann in einen logisch hohen oder einen logisch niedrigen Zustand programmiert, wonach an jeder NVM-Zelle des NVM-Arrays erste und zweite Bestanden-Nichtbestanden-Tests (Pass/Fail-Tests bzw. P/F-Tests) durchgeführt werden. In einigen Ausführungsformen wird für jede NVM-Zelle, die die zweiten P/F-Tests nicht besteht, auch ein Ausfallstrom gemessen. Durch Berechnen einer Bitfehlerrate basierend auf der Stromverteilung, den P/F-Tests und, falls anwendbar, den Ausfallströmen basiert die Bitfehlerrate auf Daten, die bei der Solltemperatur erhalten werden, ohne dass Strommessungen an allen NVM-Zellen des NVM-Arrays erforderlich sind.
  • Bei Herangehensweisen, bei denen Daten durch Programmieren von NVM-Zellen vor dem Hochfahren auf eine Solltemperatur und Bestimmen von Bitzuständen nach dem Herunterfahren von der Solltemperatur erhalten werden, können während der Heiz- und der Abkühlphase Bithaltefehler eingeführt werden. Im Vergleich zu solchen Herangehensweisen weisen Bitfehlerraten basierend auf bei der Solltemperatur erhaltenen Daten eine erhöhte Genauigkeit auf, da Fehler vermieden werden, die während der Heiz- und der Abkühlphase eingeführt werden. Da außerdem NVM-Lesefenster mit zunehmender Temperatur oft kleiner werden, können durch die Verwendung der Stromverteilung - und, falls anwendbar, von Ausfallströmen - zur Berechnung der Bitfehlerrate Fehleinschätzungen bei vergleichsweise raschen P/F-Tests bei Solltemperaturen kompensiert werden. Im Vergleich zu Herangehensweisen, die Strommessungen aller NVM-Zellen eines NVM-Arrays bei einer Solltemperatur umfassen, sind daher Testzeiten verkürzt, und Bitfehlerratenberechnungen können bei hohen Solltemperaturen mit signifikanter Verschlechterung der NVM-Lesefenster durchgeführt werden.
  • 1 ist ein Ablaufdiagramm eines Verfahrens 100 zum Testen eines Speicherarrays gemäß einigen Ausführungsformen. Das Verfahren 100 kann bei einem Speicherarray-Testsystem verwendet werden, z. B. einem NVM-Array-Testsystem 400, das nachstehend mit Bezug auf 4 erörtert wird.
  • Die Abfolge, in der die Vorgänge des Verfahrens 100 in 1 abgebildet sind, dient lediglich der Veranschaulichung; die Vorgänge des Verfahrens 100 können gleichzeitig oder in einer anderen als der in 1 abgebildeten Reihenfolge ausgeführt werden. In einigen Ausführungsformen werden zusätzliche Vorgänge zu den in 1 abgebildeten vor, zwischen, während und/oder nach den in 1 abgebildeten Vorgängen durchgeführt. In einigen Ausführungsformen sind die Vorgänge des Verfahrens 100 eine Teilmenge eines Verfahrens zum Herstellen eines IC, z. B. eines Prozessors, einer Logik, eines Speichers oder einer Signalverarbeitungsschaltung oder dergleichen.
  • Einige oder alle Vorgänge des Verfahrens 100 können unter Verwendung eines Halbleiterwafers durchgeführt werden, der ein Speicherarray umfasst, z.B. eines Halbleiterwafers 300, der ein MRAM-Array 300MA umfasst, das nachfolgend mit Bezug auf 3A und 3B erörtert wird.
  • Einige oder alle Vorgänge des Verfahrens 100 können durch einen Prozessor durchgeführt werden, z. B. einen Prozessor 502, der nachstehend mit Bezug auf 5 erörtert wird. Einige oder alle Vorgänge des Verfahrens 100 können als Teil einer Herstellungsprozedur durchgeführt werden, die in einem IC-Fertigungsunternehmen durchgeführt wird, z. B. in einer IC-Fab 650, die nachstehend mit Bezug auf 6 erörtert wird.
  • 2A-2D sind Darstellungen von NVM-Array-Testparametern gemäß einigen Ausführungsformen. In 2A-2D sind nicht einschränkende Beispiele gemäß einer oder mehreren Ausführungsformen abgebildet, die der teilweisen oder vollständigen Ausführung des Verfahrens 100 entsprechen. In 2A ist ein nicht einschränkendes Beispiel für eine Stromverteilung 200 abgebildet, in 2B ist ein nicht einschränkendes Beispiel für eine Stromverteilung 200H abgebildet und in 2C und 2D ist jeweils ein nicht einschränkendes Beispiel für eine Bitfehlerverteilung 200BE abgebildet.
  • In Vorgang 110 wird in einigen Ausführungsformen ein NVM-Array auf eine Solltemperatur erwärmt, z. B. eine Solltemperatur Tg, die nachstehend mit Bezug auf 2A-2D und 4 erörtert wird. Das NVM-Array ist ein IC, der eine Vielzahl von NVM-Zellen umfasst, z. B. ein MRAM-Array 300MA, das Exemplare einer MRAM-Zelle 300MC umfasst, die nachstehend mit Bezug auf 3A und 3B erörtert wird, wobei jede NVM-Zelle dazu konfiguriert ist, durch einen oder mehrere Auswahltransistoren, die auf ein oder mehrere Auswahlsignale, z. B. ein Wortleitungssignal, reagieren, mit einer Bitleitung und/oder Ausleseleitung gekoppelt zu sein. Jede NVM-Zelle ist ein IC, der ein oder mehrere Elemente umfasst, die dazu konfiguriert sind, auf einen ersten und einen zweiten Widerstandswert programmierbar zu sein, die unabhängig von dem Stromversorgungszustand gehalten werden; die NVM-Zelle wird daher als nichtflüchtig und rekonfigurierbar betrachtet. Der erste und der zweite Widerstandswert können somit einen ersten und zweiten programmierbaren Logikzustand darstellen. In verschiedenen Ausführungsformen entspricht der erste Widerstandswert einem von zwei gespeicherten Zuständen, nämlich einem logisch hohen oder einem logisch niedrigen Zustand, und der zweite Widerstandswert entspricht dem anderen der zwei gespeicherten Zustände.
  • In einigen Ausführungsformen umfasst das NVM-Array NVM-Zellen, die als eine oder mehrere Bänke und/oder Array-Abschnitte, z. B. Schichten, angeordnet sind. In einigen Ausführungsformen umfasst das NVM-Array eine Anzahl von NVM-Zellen im Bereich von 128 Kilobit (kb) bis 64 Megabit (Mb). In einigen Ausführungsformen umfasst das NVM-Array eine Anzahl von NVM-Zellen im Bereich von 1 Mb bis 16 Mb. Mit zunehmender Anzahl von NVM-Zellen steigt die Zeit, die bei verschiedenen Vorgängen, z. B. Programmier- und Lesevorgängen, benötigt wird, um auf jede NVM-Zelle des NVM-Arrays zuzugreifen.
  • Das Erwärmen des NVM-Arrays umfasst Erwärmen des NVM-Arrays auf die Solltemperatur über Raumtemperatur, z. B. 23 Grad Celsius (°C). In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Erwärmen auf die Solltemperatur im Bereich von 50 °C bis 200 °C. In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Erwärmen auf die Solltemperatur im Bereich von 75 °C bis 125 °C. Das Erhöhen der Solltemperatur entspricht einer Änderung einer oder mehrerer Eigenschaften des NVM: Zunahme von Ausfällen (Nichtbestehen) basierend auf dem Halten von programmierten Logikzuständen; Weitung der Widerstandswertverteilungen, wodurch Fenster zum Messen resultierender Ströme, die verwendet werden, um bei Lesevorgängen zwischen programmierten Logikzuständen zu unterscheiden, kleiner werden; und/oder erhöhte Empfindlichkeit gegenüber Fehlern beim Unterscheiden von programmierten Logikzuständen basierend auf Lesevorgängen, die verwendet werden, um Haltefehlerraten zu bestimmen.
  • In verschiedenen Ausführungsformen ist das NVM-Array in einem Halbleiterwafer oder einem IC-Paket enthalten, und das Erwärmen des NVM-Arrays umfasst Erwärmen des entsprechenden Halbleiterwafers bzw. IC-Pakets auf die Solltemperatur. In einigen Ausführungsformen ist das NVM-Array in einem Halbleiterwafer oder einem IC-Paket enthalten, der bzw. das sich in einer Testkammer befindet, z. B. einer Testkammer 430, die nachstehend mit Bezug auf 4 erörtert wird und in einigen Ausführungsformen auch als thermische Kammer bezeichnet wird, und das Erwärmen des NVM-Arrays umfasst Einstellen der Testkammer auf die Solltemperatur, z. B. die Solltemperatur Tg. In einigen Ausführungsformen ist das NVM-Array in dem Halbleiterwafer enthalten, der auf einer Platte positioniert ist, die eine Heizvorrichtung aufweist und in einigen Ausführungsformen auch als „Hot Chuck“ (Heißspannfutter) bezeichnet, und das Erwärmen des NVM-Arrays umfasst Einstellen der Platte auf die Solltemperatur, z. B. die Solltemperatur Tg.
  • In verschiedenen Ausführungsformen umfasst das Erwärmen des NVM-Arrays elektrisches Verbinden des NVM-Arrays mit einer Testvorrichtung, z. B. einer Testvorrichtung 420, die nachstehend mit Bezug auf 4 erörtert wird. In verschiedenen Ausführungsformen umfasst das elektrische Verbinden des NVM-Arrays mit der Testvorrichtung Kontaktieren des Halbleiterwafers, der das NVM-Array umfasst, mit einer oder mehreren Wafersonden oder Einführen des IC-Pakets, das das NVM-Array umfasst, in eine Steckvorrichtung, die z. B. auf einer Lastplatine positioniert ist.
  • In einigen Ausführungsformen ist das NVM-Array ein eingebetteter NVM, z. B. ein eingebetteter MRAM (eMRAM), der in einem IC enthalten ist, z. B. ein Ein-Chip-System (System-on-Chip bzw. SoC), und das Erwärmen des NVM-Arrays umfasst Erwärmen des IC. In einigen Ausführungsformen ist das NVM-Array ein Array einer Vielzahl von NVM-Arrays, die in dem Halbleiterwafer bzw. IC-Paket enthalten sind, und das Erwärmen des NVM-Arrays umfasst Erwärmen der Vielzahl von NVM-Arrays.
  • In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Verwenden einer Teststeuerung, z. B. der Teststeuerung 410, die nachstehend mit Bezug auf 4 erörtert wird, um die Testkammer auf die Solltemperatur, z. B. die Solltemperatur Tg, einzustellen. In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Verwenden einer Temperatursteuerschaltung, z. B. einer Temperatursteuerschaltung 422 der Testvorrichtung 420, die nachstehend mit Bezug auf 4 erörtert wird.
  • In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Verwenden eines Prozessors, z. B. des Prozessors 502, der nachstehend mit Bezug auf 5 erörtert wird, um die Testkammer bzw. die Platte auf die Solltemperatur einzustellen. In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Ausführen eines oder mehrerer Sätze von Anweisungen, z.B. eines Temperatursteuerprogramms 507 eines Computerprogrammcodes 506, der auf einem nichttransitorischen computerlesbaren Speichermedium 504 gespeichert ist, das nachstehend mit Bezug auf 5 erörtert wird.
  • In einigen Ausführungsformen umfasst das Erwärmen des NVM-Arrays Empfangen der Solltemperatur von einem nichttransitorischen computerlesbaren Speichermedium oder einem Netzwerk oder einer Benutzerschnittstelle, z. B. Empfangen von Testkriterien 522, die die Solltemperatur umfassen, von dem nichttransitorischen computerlesbaren Speichermedium 504, einer Netzwerkschnittstelle 512 oder einer E/A-Schnittstelle 510 und einer Benutzerschnittstelle 542, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In Vorgang 120 wird durch Messen einer Vielzahl von Strömen einer Teilmenge von NVM-Zellen des NVM-Arrays eine Stromverteilung erhalten. Das Erhalten der Stromverteilung wird durchgeführt, während der NVM-Array auf die Solltemperatur erwärmt ist, z. B., während die Testkammer, z. B. die nachstehend mit Bezug auf 4 erörterte Testkammer 430, auf die Solltemperatur, z. B. die Solltemperatur Tg, eingestellt ist.
  • In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Messen der Vielzahl von Strömen einer vorbestimmten Teilmenge von NVM-Zellen. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Auswählen der Teilmenge von NVM-Zellen des NVM-Arrays. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Empfangen einer Auswahl der Teilmenge von NVM-Zellen von einem nichttransitorischen computerlesbaren Speichermedium oder einem Netzwerk oder einer Benutzerschnittstelle, z. B. Empfangen von Testkriterien 522, die die Auswahl umfassen, von dem nichttransitorischen computerlesbaren Speichermedium 504, der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In verschiedenen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Messen von Strömen eines einzelnen Blocks von NVM-Zellen oder von nicht kontinuierlichen einzelnen NVM-Zellen und/oder Gruppen von NVM-Zellen, die über das NVM-Array verteilt sind.
  • In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen, dass die Teilmenge von NVM-Zellen eine Anzahl von NVM-Zellen umfasst, die auf der Anzahl von NVM-Zellen des NVM-Arrays basiert, z. B. einen vorbestimmten Bruchteil, wie 1/1000. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen, dass die Teilmenge von NVM-Zellen eine Anzahl von NVM-Zellen umfasst, die auf einer zuvor berechneten Bitfehlerrate basiert, z. B. einen vorbestimmten Bruchteil, wie 1/10.
  • In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen, dass die Teilmenge von NVM-Zellen eine Anzahl von NVM-Zellen im Bereich von 128 Bit bis 256kb umfasst. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen, dass die Teilmenge von NVM-Zellen eine Anzahl von NVM-Zellen im Bereich von 512 Bit bis 128 kb umfasst. Mit zunehmender Anzahl von NVM-Zellen steigt die Zeit, die bei verschiedenen Vorgängen, z. B. Programmier- und Lesevorgängen, benötigt wird, um auf jede NVM-Zelle in der Teilmenge von NVM-Zellen zuzugreifen.
  • Das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen umfasst Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in einen von zwei Zuständen, nämlich den logisch hohen Zustand oder den logisch niedrigen Zustand, Messen eines ersten Stromwerts jeder NVM-Zelle der Teilmenge von NVM-Zellen nach dem Programmieren in den einen der zwei Zustände, wodurch ein erster Abschnitt der Stromverteilung erhalten wird; und Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in den anderen der zwei Zustände und Messen eines zweiten Stromwerts jeder NVM-Zelle der Teilmenge von NVM-Zellen nach dem Programmieren in den anderen der zwei Zustände, wodurch ein zweiter Abschnitt der Stromverteilung erhalten wird.
  • Das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen umfasst damit Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in den logisch hohen und den logisch niedrigen Zustand und, nach dem Programmieren in den logisch hohen beziehungsweise logisch niedrigen Zustand, Messen eines entsprechenden ersten beziehungsweise zweiten Stromwerts für jede NVM-Zelle der Teilmenge von NVM-Zellen, wodurch ein entsprechender erster beziehungsweise zweiter Abschnitt der Stromverteilung erhalten wird.
  • In einigen Ausführungsformen umfasst das Programmieren einer NVM-Zelle, z. B. das Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen, in den logisch hohen und den logisch niedrigen Zustand Ändern einer magnetischen Ausrichtung einer magnetischen Schicht einer MRAM-Zelle, z. B. der magnetischen Schicht 300M1, die nachfolgend mit Bezug auf 3B erörtert wird.
  • In dem in 2A abgebildeten nicht einschränkenden Beispiel umfasst eine Stromverteilung 200 gemessene NVM-Zellenstromwerte Ic, die auf der x-Achse aufgetragen sind, und entsprechende Anzahlen von NVM-Zellen N, die auf der y-Achse aufgetragen sind. Die Stromverteilung 200 umfasst einen Abschnitt 200A, der Stromwerte Ic umfasst, die gemessen wurden, nachdem jede NVM-Zelle der Teilmenge von NVM-Zellen in den logisch hohen Zustand programmiert wurde, und einen Abschnitt 200B, der Stromwerte Ic umfasst, die gemessen wurden, nachdem jede NVM-Zelle der Teilmenge von NVM-Zellen in den logisch niedrigen Zustand programmiert wurde.
  • In der in 2A abgebildeten Ausführungsform ist jeder der Abschnitte 200A und 200B zum Zwecke der Veranschaulichung eine beste Ausgleichskurve basierend auf diskreten Stromwerten Ic und entsprechenden Anzahlen N von NVM-Zellen. In einigen Ausführungsformen umfasst eine Stromverteilung, z. B. die Stromverteilung 200, Abschnitte, in welchen diskrete Werte Ic und NVM-Zellenanzahlen N beibehalten werden, z. B. ein Histogramm, bei dem die Stromwerte Ic auf eine Vielzahl von Intervallen aufgeteilt werden und die jeweilige NVM-Zellenanzahl N der Anzahl von NVM-Zellen entspricht, deren gemessener Stromwert Ic innerhalb des entsprechenden Intervalls der Vielzahl von Intervallen liegt.
  • Ein Stromwert I1 stellt einen minimalen Stromwert Ic des Abschnitts 200B dar, und ein Stromwert 12 stellt einen maximalen Stromwert Ic des Abschnitts 200A dar. In der in 2A abgebildeten Ausführungsform ist der Stromwert 12 größer als der Stromwert I1, sodass sich die Abschnitte 200A und 200B in einem Bereich von Stromwerten Ic von dem Stromwert I1 bis zu dem Stromwert 12 überlappen. In einigen Ausführungsformen ist der Stromwert 12 kleiner als der Stromwert I1, sodass sich die Abschnitte 200A und 200B nicht überlappen.
  • Ein Schwellenwert Isa stellt einen Stromwert dar, der bei einem Lesevorgang, z. B. durch eine externe Schaltung oder einen Erfassungsverstärker, wie etwa den nachstehend mit Bezug auf 3A und 3B erörterten Erfassungsverstärker 300SA, verwendet werden kann, um eine Bestimmung eines Logikzustands einer gegebenen NVM-Zelle durchzuführen, wie nachstehend weiter erörtert. In einigen Ausführungsformen entspricht der logisch hohe Zustand gemessenen Stromwerten, die kleiner oder gleich dem Schwellenwert Isa sind, und der logisch niedrige Zustand entspricht gemessenen Stromwerten, die größer als der Schwellenwert Isa sind.
  • In der in 2A abgebildeten Ausführungsform liegt der Schwellenwert Isa derart zwischen den Stromwerten I1 und I2, dass der überlappende Bereich der Abschnitte 200A und 200B sowohl kleinere als auch größere Stromwerte Ic als der Schwellenwert Isa aufweist. In verschiedenen Ausführungsformen ist der Schwellenwert Isa kleiner als der Stromwert I1, sodass der Überlappungsbereich der Abschnitte 200A und 200B nur Stromwerte Ic aufweist, die größer als der Schwellenwert Isa sind, oder der Schwellenwert Isa ist größer als der Stromwert 12, sodass der Überlappungsbereich der Abschnitte 200A und 200B nur Stromwerte Ic aufweist, die kleiner als der Schwellenwert Isa sind.
  • Die Fläche Aa unter dem Abschnitt 200A und die Fläche Ab unter dem Abschnitt 200B entsprechen jeweils der Gesamtanzahl von NVM-Zellen in der Teilmenge von NVM-Zellen. Eine Fläche Aam entspricht dem Bruchteil der Gesamtanzahl von NVM-Zellen, die nach dem Programmieren in den logisch hohen Zustand Stromwerte Ic aufweisen, die größer sind als der Schwellenwert Isa, und eine Fläche Abm entspricht dem Bruchteil der Gesamtanzahl von NVM-Zellen, die nach dem Programmieren in den logisch niedrigen Zustand Stromwerte Ic aufweisen, die kleiner sind als der Schwellenwert Isa,.
  • Demgemäß würde nach dem Programmieren der Teilmenge von NVM-Zellen in den logisch hohen Zustand ein Lesevorgang basierend auf dem Schwellenwert Isa für die Anzahl Aam von NVM-Zellen eine falsche Bestimmung des logisch niedrigen Zustands durchführen und für die Anzahl von NVM-Zellen gleich Aa - Aam eine korrekte Bestimmung des logisch hohen Zustands durchführen. In ähnlicher Weise würde nach dem Programmieren der Teilmenge von NVM-Zellen in den logisch niedrigen Zustand ein Lesevorgang basierend auf dem Schwellenwert Isa für die Anzahl Abm von NVM-Zellen eine falsche Bestimmung des logisch hohen Zustands durchführen und für die Anzahl von NVM-Zellen gleich Ab - Abm eine korrekte Bestimmung des logisch niedrigen Zustands durchführen.
  • Demgemäß weisen lediglich auf einem Vergleich des Stromwerts Ic mit dem Schwellenwert Isa basierende Lesevorgänge für NVM-Zellen, die einen unbekannten Zustand aufweisen, mögliche Fehler auf, die auf falschen Bestimmungen basieren. Basierend auf der Stromverteilung 200 ist für jeden von zwei Fällen der Prozentsatz falscher Bestimmungen des NVM-Logikzustands gegeben durch die Anzahl falscher Bestimmungen dividiert durch die Anzahl korrekter Bestimmungen.
  • Im ersten Fall sind gemessene Werte von Ic kleiner oder gleich dem Schwellenwert Isa, die korrekte Bestimmung entspricht dem logisch hohen Zustand und eine Fehlerrate Herr gleich dem Prozentsatz falscher Bestimmungen, dass die NVM-Zellen den logisch niedrigen Zustand aufweisen, ist gegeben durch: Herr = Abm / ( Aa Aam ) .
    Figure DE102021103853A1_0001
  • Die Fehlerrate Herr weist für jeden von null verschiedenen Wert der Anzahl Abm einen von null verschiedenen Wert auf und weist einen maximalen Wert gleich der Anzahl Abm auf, der einem Wert von Aam gleich null entspricht.
  • Im zweiten Fall sind gemessene Werte von Ic größer als der Schwellenwert Isa, die korrekte Bestimmung entspricht dem logisch niedrigen Zustand und eine Fehlerrate Lerr gleich dem Prozentsatz falscher Bestimmungen, dass die NVM-Zellen den logisch hohen Zustand aufweisen, ist gegeben durch: Lerr = Aam / ( Ab Abm ) .
    Figure DE102021103853A1_0002
  • Die Fehlerrate Lerr weist für jeden von null verschiedenen Wert der Anzahl Abm einen von null verschiedenen Wert auf und weist einen maximalen Wert gleich der Anzahl Aam auf, der einem Wert von Abm gleich null entspricht.
  • In 2B ist ein nicht einschränkendes Beispiel einer Verteilung 200H abgebildet, die dem ersten Fall entspricht, in dem gemessene Werte Ic kleiner oder gleich dem Schwellenwert Isa sind. Ein erster Abschnitt 200HT und ein zweiter Abschnitt 200HF der Verteilung 200H entsprechen NVM-Zellen, deren logisch hoher Zustand basierend darauf, dass die gemessenen Werte Ic kleiner oder gleich dem Schwellenwert Isa sind, korrekt bzw. falsch bestimmt wurde.
  • Zum Zwecke der Veranschaulichung ist die in 2B abgebildete Ausführungsform vereinfacht. In einigen Ausführungsformen überlappen sich der erste Abschnitt 200HT und der zweite Abschnitt 200HF und/oder sie weisen andere relative Größen und Formen als in 2B abgebildet auf.
  • In dem in 2B abgebildeten nicht einschränkenden Beispiel entspricht die Fehlerrate Herr basierend auf der Stromverteilung 200 dem Verhältnis der Fläche unter dem Abschnitt 200HF zu der Fläche unter dem Abschnitt 200HT. Die Anzahl von NVM-Zellen NHmeas, die der Verteilung 200H entspricht, kann basierend auf Herr modifiziert werden, um eine angepasste Anzahl von NVM-Zellen NHadj bereitzustellen, die dem Abschnitt 200HT entspricht, und zwar gegeben durch: NHadj = NHmeas ( 1 Herr ) .
    Figure DE102021103853A1_0003
  • In diesem nicht einschränkenden Beispiel wird damit für jeden von null verschiedenen Wert der Fehlerrate Herr die Anzahl NHmeas von NVM-Zellen, von denen basierend auf dem Schwellenwert Isa bestimmt wurde, dass sie den logisch hohen Zustand aufweisen, um die Fehlerrate Herr verringert, um die angepasste Anzahl NHadj von NVM-Zellen bereitzustellen, die NVM-Zellen entspricht, von denen korrekt bestimmt wurde, dass sie den logisch hohen Zustand aufweisen.
  • Wie durch das nicht einschränkende Beispiel veranschaulicht, das in 2B abgebildet ist und nachstehend mit Bezug auf Vorgang 160 weiter erörtert wird, können somit beide Fehlerraten Herr und Lerr, die auf dem Schwellenwert Isa und der Stromverteilung 200 basieren, bei Bitfehlerratenberechnungen verwendet werden.
  • In verschiedenen Ausführungsformen weist der Schwellenwert Isa einen vorbestimmten Wert oder einen Wert auf, der basierend auf den gemessenen Stromwerten berechnet ist. In einigen Ausführungsformen wird der vorbestimmte Wert von einem nichttransitorischen computerlesbaren Speichermedium oder einem Netzwerk oder einer Benutzerschnittstelle empfangen, und ist z. B. in Testkriterien 522 enthalten, die von dem nichttransitorischen computerlesbaren Speichermedium 504, der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510 und der Benutzerschnittstelle 542 empfangen werden, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In einigen Ausführungsformen umfasst das Berechnen des Schwellenwerts Isa Definieren eines Stromwerts, der dem Schwellenwert Isa entspricht, sodass ein Anteil von Stromwerten Ic des Abschnitts 200A, die kleiner oder gleich dem Schwellenwert Isa sind, und/oder ein Anteil von Stromwerten Ic des Abschnitts 200B, die größer als der Schwellenwert Isa sind, oder eine Kombination, z. B. ein Mittelwert davon maximiert wird.
  • In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Verwenden einer Testvorrichtung, z. B. der Testvorrichtung 420, die in einigen Ausführungsformen eine Lese/Schreib-Schaltung (R/W-Schaltung) 424 umfasst, die nachstehend mit Bezug auf 4 erörtert wird. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Verwenden einer Teststeuerung, z. B. der nachstehend mit Bezug auf 4 erörterten Teststeuerung 410, um eine entsprechende Vielzahl von Strommessungen auszuführen.
  • In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Verwenden eines Prozessors, z. B. eines nachstehend mit Bezug auf 5 erörterten Prozessors 502, um eine entsprechende Vielzahl von Strommessungen auszuführen. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Ausführen eines oder mehrerer Sätze von Anweisungen, z. B. eines NVM-Array-Steuerprogramms 509 des Computerprogrammcodes 506, der auf dem nichttransitorischen computerlesbaren Speichermedium 504 gespeichert ist, das nachstehend mit Bezug auf 5 erörtert wird.
  • In einigen Ausführungsformen umfasst das Erhalten der Stromverteilung durch Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Ausgeben und/oder Speichern der Stromverteilung und/oder des Schwellenwerts Isa auf einem nichttransitorischen computerlesbaren Speichermedium oder in einem Netzwerk oder einer Benutzerschnittstelle, z. B. Ausgeben und/oder Speichern der Stromverteilung 524 und/oder der Testkriterien 522, die den Schwellenwert Isa umfassen, auf dem nichttransitorischen computerlesbaren Speichermedium 504, in der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In Vorgang 130 wird jede NVM-Zelle des NVM-Arrays in den logisch hohen Zustand oder den logisch niedrigen Zustand programmiert. Das Programmieren jeder NVM-Zelle des NVM-Arrays wird durchgeführt, während das NVM-Array auf die Solltemperatur erwärmt ist, z. B., während die Testkammer, z. B. die nachstehend mit Bezug auf 4 erörterte Testkammer 430, auf die Solltemperatur, z. B. die Solltemperatur Tg, eingestellt ist.
  • Das Programmieren jeder NVM-Zelle des NVM-Arrays wird auf die vorstehend mit Bezug auf das Programmieren von NVM-Zellen als Teil des Messens der Vielzahl von Strömen der Teilmenge von NVM-Zellen in Vorgang 120 erörterte Weise durchgeführt. In einigen Ausführungsformen umfasst das Programmieren jeder NVM-Zelle des NVM-Arrays Programmieren jeder MRAM-Zelle 300MC des MRAM-Arrays 300MA, das nachstehend mit Bezug auf 3A und 3B erörtert wird.
  • In Vorgang 140 werden an jeder MRAM-Zelle des MRAM-Arrays erste und zweite P/F-Tests durchgeführt. Die ersten P/F-Tests werden unmittelbar nach dem Programmieren jeder NVM-Zelle des NVM-Arrays in den logisch hohen Zustand oder den logisch niedrigen Zustand in Vorgang 130 durchgeführt. In einigen Ausführungsformen entspricht der Ausdruck „unmittelbar“ dem Durchführen der ersten P/F-Tests nach dem Ausführen einer kurzen Verzögerung oder ohne Ausführen einer Verzögerung nach dem Programmieren der NVM-Zellen des NVM-Arrays, wobei ein verstrichenes Zeitintervall eine Dauer aufweist, die kürzer als eine vorbestimmte Dauer ist. In einigen Ausführungsformen umfasst das unmittelbare Durchführen der ersten P/F-Tests kontinuierliches Ausführen von Computerprogrammcode, z. B. des Computerprogrammcodes 506, der nachstehend mit Bezug auf 5 erörtert wird.
  • In einigen Ausführungsformen beträgt die Dauer des verstrichenen Zeitintervalls weniger als 30 Sekunden. In einigen Ausführungsformen beträgt die Dauer des verstrichenen Zeitintervalls weniger als 5 Sekunden. In einigen Ausführungsformen beträgt die Dauer des verstrichenen Zeitintervalls weniger als 1 Sekunde.
  • In einigen Ausführungsformen umfasst das Durchführen der ersten P/F-Tests Verwenden eines Erfassungsverstärkers des NVM-Arrays, um für jede NVM-Zelle des NVM-Arrays basierend auf einem ersten NVM-Zellenstromwert und einem Schwellenwert, z. B. dem vorstehend mit Bezug auf Vorgang 120 erörterten Schwellenwert Isa, eine erste Logikzustandsbestimmung durchzuführen. Nach dem Durchführen der ersten P/F-Tests wird eine Verzögerung ausgeführt; in einigen Ausführungsformen ist die Verzögerung eine vorbestimmte Verzögerung. Nach dem Ausführen der Verzögerung werden die zweiten P/F-Tests durch Verwenden des Erfassungsverstärkers durchgeführt, um für jede NVM-Zelle des NVM-Arrays basierend auf einem zweiten NVM-Zellenstromwert und dem Schwellenwert eine zweite Logikzustandsbestimmung durchzuführen. In einigen Ausführungsformen umfasst das Durchführen der ersten und zweiten P/F-Tests Verwenden einer externen Schaltung außerhalb des NVM-Arrays, z. B. einer Entscheidungsschaltung 426, die nachstehend mit Bezug auf 4 erörtert wird.
  • Die ersten P/F-Tests, die Verzögerungsausführung sowie die zweiten P/F-Tests werden durchgeführt, während das NVM-Array auf die Solltemperatur erwärmt ist, z. B., während die Testkammer, z. B. die nachstehend mit Bezug auf 4 erörterte Testkammer 430, auf die Solltemperatur, z. B. die Solltemperatur Tg, eingestellt ist.
  • Der Schwellenwert definiert eine erste Menge von Stromwerten, die kleiner oder gleich dem Schwellenwert sind und einem von zwei Zuständen, nämlich dem logisch hohen oder dem logisch niedrigen Zustand, entsprechen, und eine zweite Menge von Stromwerten, die größer als der Schwellenwert sind und dem anderen der zwei Zustände entsprechen. Das Bestimmen des Logikzustands einer NVM-Zelle umfasst Verwenden des Erfassungsverstärkers oder der externen Schaltung, um den Stromwert der entsprechenden NVM-Zelle zu messen, Vergleichen des gemessenen Werts mit dem Schwellenwert und Ausgeben eines Datensignals, z. B. eines Logikbits, das angibt, ob der gemessene Stromwert der ersten oder der zweiten Menge von Stromwerten entspricht.
  • Ein erster bzw. zweiter P/F-Test einer NVM-Zelle wird als bestanden betrachtet, wenn der logische hohe oder niedrige Zustand, der durch das Datensignal angegeben wird, das durch den Erfassungsverstärker oder die externe Schaltung ausgegeben wird, mit einem zuvor, z. B. in Vorgang 130 programmierten logischen hohen bzw. niedrigen Zustand übereinstimmt. Der P/F-Test der NVM-Zelle wird als nicht bestanden betrachtet, wenn der logische hohe oder niedrige Zustand, der durch das Datensignal angegeben wird, das durch den Erfassungsverstärker oder die externe Schaltung ausgegeben wird, nicht mit dem zuvor programmierten logischen hohen bzw. niedrigen Zustand übereinstimmt.
  • In verschiedenen Ausführungsformen ist der Schwellenwert ein vorbestimmter Schwellenwert, z. B. ein Stromwert, der in das NVM-Array einprogrammiert oder in diesem fest codiert ist, oder ein variabler Schwellenwert, z. B. ein Stromwert, der durch das NVM-Array bestimmt wird oder den das NVM-Array von einer externen Schaltung empfängt. In einigen Ausführungsformen wird der Schwellenwert von einer Testvorrichtung empfangen, z. B. der Testvorrichtung 420, die die Entscheidungsschaltung 426 umfasst, die nachstehend mit Bezug auf 4 erörtert wird. In einigen Ausführungsformen ist der Schwellenwert der Schwellenwert Isa, der vorstehend mit Bezug auf Vorgang 120 erörtert wurde.
  • In 2C ist ein nicht einschränkendes Beispiel für eine Bitfehlerverteilung 200BE abgebildet, die - basierend auf dem Programmieren jeder NVM-Zelle des NVM-Arrays in den logisch hohen oder niedrigen Zustand in Vorgang 130 und dem Durchführen der ersten und zweiten P/F-Tests in Vorgang 140 - bestandenen und nicht bestandenen NVM-Zellen entspricht. 2C veranschaulicht die Bitfehlerverteilung 200BE basierend auf der Zeit entlang der x-Achse und der Anzahl von NVM-Zellen N entlang der y-Achse. Eine Anzahl von bestandenen Zellen NP und eine Anzahl von nicht bestandenen Zellen NF sind jeweils zu einem Zeitpunkt T0, der den ersten P/F-Tests entspricht, und einem Zeitpunkt TD, der den zweiten P/F-Tests entspricht, aufgetragen.
  • Zum Zeitpunkt T0 beträgt die Anzahl von bestandenen Zellen NP P0, und die Anzahl von nicht bestandenen Zellen NF beträgt F0. Zum Zeitpunkt TD beträgt die Anzahl von bestandenen Zellen NP PD, und die Anzahl von nicht bestandenen Zellen NF beträgt FD. Wie in 2C abgebildet ist, ist PD kleiner als P0, was eine Verringerung der Anzahl bestandener Zellen NP mit der Zeit widerspiegelt, und FD ist größer als F0, was eine Zunahme der Anzahl nicht bestandener Zellen NF mit der Zeit widergespiegelt.
  • P0, PD, F0 und FD basieren auf den ersten und zweiten P/F-Tests, bei denen Zellenzustände unter Verwendung des Schwellenwerts Isa derart bestimmt werden, dass jeder der Werte P0, PD, F0 und FD möglicherweise eine Anzahl von Zellen umfasst, von denen, wie vorstehend mit Bezug auf Vorgang 120 erörtert, fälschlicherweise bestimmt wurde, dass sie den logisch hohen bzw. niedrigen Zustand aufweisen. Somit kann jeder der Werte P0, PD, F0 und FD angepasst werden, um solche falschen Bestimmungen zu kompensieren, wie nachfolgend mit Bezug auf Vorgang 160 und 2D erörtert wird.
  • Das Durchführen der ersten und zweiten P/F-Tests für jede NVM-Zelle des NVM-Arrays umfasst Speichern von Adressen von NVM-Zellen, die den ersten und/oder den zweiten P/F-Test nicht bestanden haben. Das Speichern der Adressen der NVM-Zellen umfasst Speichern der Adresse jeder NVM-Zelle, die den ersten P/F-Test nicht besteht. In einigen Ausführungsformen umfasst das Speichern der Adressen der NVM-Zellen außerdem Speichern der Adresse jeder NVM-Zelle, die den zweiten P/F-Test nicht besteht. In verschiedenen Ausführungsformen umfasst das Speichern der Adressen Ausgeben und/oder Speichern der Adressen auf einem nichttransitorischen computerlesbaren Speichermedium oder einem Netzwerk oder einer Benutzerschnittstelle, z. B. Ausgeben und/oder Speichern von Adressen 526 nicht bestandener Zellen auf dem nichttransitorischen computerlesbaren Speichermedium 504, in der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In verschiedenen Ausführungsformen umfasst das Ausführen der Verzögerung Ausführen einer vorbestimmten Verzögerung oder Ausführen einer Verzögerung, die von einem oder mehreren Testkriterien abgeleitet ist, z.B. der Solltemperatur. In einigen Ausführungsformen umfasst das Ausführen der Verzögerung Ausführen der Verzögerung, die von einem nichttransitorischen computerlesbaren Speichermedium oder einem Netzwerk oder einer Benutzerschnittstelle empfangen wird, z. B. Empfangen der Testkriterien 522, die die Verzögerung umfassen, von dem nichttransitorischen computerlesbaren Speichermedium 504, der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In einigen Ausführungsformen umfasst das Ausführen der Verzögerung Ausführen der Verzögerung mit einer Dauer von 1 Minute bis 60 Minuten. In einigen Ausführungsformen umfasst das Ausführen der Verzögerung Ausführen der Verzögerung mit einer Dauer von 5 Minuten bis 15 Minuten. Bei gegebener Solltemperatur entsprechen längere Verzögerungen einer höheren Anzahl von Ausfällen, die auf dem Halten von programmierten Logikzuständen basieren, und einer längeren Gesamttestzeit.
  • In einigen Ausführungsformen umfasst das Durchführen der ersten und zweiten P/F-Tests an jeder NVM-Zelle des NVM-Arrays Verwenden einer Testvorrichtung, z. B. der Testvorrichtung 420, die in einigen Ausführungsformen die Entscheidungsschaltung 426 umfasst, die nachstehend mit Bezug auf 4 erörtert wird. In einigen Ausführungsformen umfasst das Durchführen der ersten und zweiten P/F-Tests an jeder NVM-Zelle des NVM-Arrays Verwenden einer Teststeuerung, z. B. der Teststeuerung 410, die nachstehend mit Bezug auf 4 erörtert wird.
  • In einigen Ausführungsformen umfasst das Durchführen der ersten und zweiten P/F-Tests an jeder NVM-Zelle des NVM-Arrays Verwenden eines Prozessors, z. B. des Prozessors 502, der nachstehend mit Bezug auf 5 erörtert wird. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Ausführen eines oder mehrerer Sätze von Anweisungen, z. B. des NVM-Array-Steuerprogramms 509 des Computerprogrammcodes 506, der auf dem nichttransitorischen computerlesbaren Speichermedium 504 gespeichert ist, das nachstehend mit Bezug auf 5 erörtert wird.
  • In Vorgang 150 werden in einigen Ausführungsformen Ausfallströme von NVM-Zellen gemessen, die den zweiten P/F-Test nicht bestanden haben. Das Messen der Ausfallströme der NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben, wird durchgeführt, während das NVM-Array auf die Solltemperatur erwärmt ist, z. B., während die Testkammer, z. B. die nachstehend mit Bezug auf 4 erörterte Testkammer 430, auf die Solltemperatur, z. B. die Solltemperatur Tg, eingestellt ist.
  • Das Messen der Ausfallströme der NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben, wird auf die vorstehend mit Bezug auf das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen in Vorgang 120 erörterte Weise durchgeführt.
  • In einigen Ausführungsformen umfasst das Messen der Ausfallströme der NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben, Verwenden von gespeicherten Adressinformationen der NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben, z. B. von Adressinformationen, die in dem nachstehend mit Bezug auf 3A und 3B erörterten MRAM-Array 300MA oder der nachstehend mit Bezug auf 4 erörterten Testvorrichtung 420 gespeichert sind, oder von nachstehend mit Bezug auf 5 erörterten Adressen 526 nicht bestandener Zellen, die auf einem nichttransitorischen computerlesbaren Speichermedium 504 gespeichert sind.
  • In einigen Ausführungsformen umfasst das Messen der Ausfallströme der NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben, Ausgeben und/oder Speichern der gemessenen Ausfallströme auf einem nichttransitorischen computerlesbaren Speichermedium oder in einem Netzwerk oder einer Benutzerschnittstelle, z. B. Ausgeben und/oder Speichern der Testkriterien 522, der Stromverteilung 524 oder der Adressen 526 nicht bestandener Zellen zusammen mit den Ausfallströmen auf dem nichttransitorischen computerlesbaren Speichermedium 504, in der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In Vorgang 160 wird basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests eine Bitfehlerrate berechnet. In einigen Ausführungsformen wird das Berechnen der Bitfehlerrate durchgeführt, während das NVM-Array auf die Solltemperatur erwärmt ist, z. B., während die Testkammer, z. B. die nachstehend mit Bezug auf 4 erörterte Testkammer 430, auf die Solltemperatur, z. B. die Solltemperatur Tg, eingestellt ist. In einigen Ausführungsformen wird das Berechnen der Bitfehlerrate durchgeführt, während und/oder nach dem Abkühlen des NVM-Arrays von der Solltemperatur oder dem Einstellen auf eine neue Solltemperatur, z. B., während die Testkammer, z. B. die nachstehend mit Bezug auf 4 erörterte Testkammer 430, auf Raumtemperatur oder eine Temperatur, die von der Solltemperatur verschieden ist, eingestellt ist.
  • Das Berechnen der Bitfehlerrate, die in einigen Ausführungsformen als Haltefehlerrate bezeichnet wird, umfasst Berechnen des Verhältnisses einer Anzahl von Bitfehlern, die NVM-Zellen entspricht, die die ersten und/oder die zweiten P/F-Tests nicht bestanden haben, zur Gesamtzahl der NVM-Zellen in dem NVM-Array. In verschiedenen Ausführungsformen basiert das Verhältnis auf der Anzahl von NVM-Zellen, die die ersten P/F-Tests nicht bestanden haben, der Anzahl von NVM-Zellen, die die zweiten P/F-Tests nicht bestanden haben, oder der Differenz zwischen der jeweiligen Anzahl von NVM-Zellen, die die ersten bzw. die zweiten P/F-Tests nicht bestanden haben.
  • In einigen Ausführungsformen umfasst das Berechnen der Bitfehlerrate für jede NVM-Zelle, die den zweiten P/F-Test nicht bestanden hat, Erhalten des entsprechenden Ergebnisses des ersten P/F-Tests, z. B. durch Vergleichen der Adresse der NVM-Zelle mit den gespeicherten Adressen der NVM-Zellen, die zuvor die ersten P/F-Tests nicht bestanden haben. Das zweite P/F-Testergebnis wird mit dem ersten P/F-Testergebnis verglichen, und es wird bestimmt, dass NVM-Zellen, die den ersten P/F-Test bestanden haben und den zweiten P/F-Test nicht bestanden haben, den Bithaltetest nicht bestanden haben.
  • In einigen Ausführungsformen umfasst das Berechnen der Bitfehlerrate Berechnen einer anfänglichen Bitfehlerrate Ri, auch als anfängliche Bithaltefehlerrate Ri bezeichnet, gemäß dem Verhältnis der Anzahl der NVM-Zellen, von denen bestimmt wurde, dass sie den Bithaltetest nicht bestanden haben, zur Gesamtzahl der NVM-Zellen in dem NVM-Array. Die anfängliche Bitfehlerrate Ri wird basierend auf der Stromverteilung angepasst, z. B. basierend auf der Fehlerrate Herr oder Lerr, die aus der Stromverteilung 200 berechnet werden, die vorstehend mit Bezug auf 2A und 2B erörtert wurde.
  • In einigen Ausführungsformen wird jede NVM-Zelle des NVM-Arrays in Vorgang 130 in den logisch niedrigen Zustand programmiert, und die anfängliche Bitfehlerrate Ri entspricht NVM-Zellen, von denen dadurch, dass sie die ersten und/oder zweiten P/F-Tests basierend auf Stromwerten größer als der Schwellenwert Isa nicht bestanden haben, bestimmt wurde, dass sie auf den logisch hohen Zustand umgesprungen sind. Wie vorstehend mit Bezug auf 2B erörtert, wird die Anzahl von NVM-Zellen, von denen basierend auf dem Schwellenwert Isa bestimmt wurde, dass sie den logisch hohen Zustand aufweisen, basierend auf der Stromverteilung 200 um die Fehlerrate Herr verringert. Demzufolge wird die anfängliche Bitfehlerrate Ri, die auf der Anzahl von NVM-Zellen basiert, von denen bestimmt wurde, dass sie den logisch hohen Zustand aufweisen, in ähnlicher Weise angepasst, um eine Bitfehlerrate BER zu berechnen: BER = Ri * ( 1 Herr )
    Figure DE102021103853A1_0004
  • In einigen Ausführungsformen wird jede NVM-Zelle des NVM-Arrays in Vorgang 130 in den logisch hohen Zustand programmiert, und die anfängliche Bitfehlerrate Ri entspricht NVM-Zellen, von denen dadurch, dass sie die ersten und/oder zweiten P/F-Tests basierend auf Stromwerten kleiner oder gleich dem Schwellenwert Isa nicht bestanden haben, bestimmt wurde, dass sie auf den logisch niedrigen Zustand umgesprungen sind. In diesem Fall wird die anfängliche Bitfehlerrate Ri, die auf der Anzahl von NVM-Zellen basiert, von denen bestimmt wurde, dass sie den logisch niedrigen Zustand aufweisen, in ähnlicher Weise basierend auf der Fehlerrate Lerr angepasst, um eine Bitfehlerrate BER zu berechnen: BER = Ri * ( 1 Lerr )
    Figure DE102021103853A1_0005
  • In 2D ist ein nicht einschränkendes Beispiel der Bitfehlerverteilung 200BE abgebildet, das vorstehend mit Bezug auf Vorgang 140 und 2C erörtert wurde, einschließlich der durch die Fehlerrate Herr bzw. Lerr entsprechend der jeweiligen Ausführungsform angepassten Anzahl von NVM-Zellen.
  • Zum Zeitpunkt T0 bewirkt die Anwendung der Fehlerrate Herr bzw. Lerr, dass die Anzahl nicht bestandener Zellen NF von F0 auf einen angepassten Wert F0A verringert wird, wodurch die Anzahl bestandener Zellen NP von P0 auf einen angepassten Wert P0A erhöht wird.
  • Zum Zeitpunkt TD bewirkt die Anwendung der Fehlerrate Herr bzw. Lerr, dass die Anzahl nicht bestandener Zellen NF von FD auf einen angepassten Wert FDA verringert wird, wodurch die Anzahl bestandener Zellen NP von PD auf einen angepassten Wert PDA erhöht wird.
  • In verschiedenen Ausführungsformen wird das Verhältnis der Anzahl von Bitfehlern, die NVM-Zellen entsprechen, die die ersten und/oder die zweiten P/F-Tests nicht bestanden haben, zur Gesamtanzahl von NVM-Zellen in dem NVM-Array wie in 2D veranschaulicht derart verringert, dass die Bitfehlerrate so angepasst ist, dass Zustandsbestimmungsfehler in den P/F-Tests wie vorstehend erörtert kompensiert werden.
  • Die vorstehend erörterte Bitfehlerratenberechnungen sind nicht einschränkende Beispiele, die zu Veranschaulichungszwecken bereitgestellt sind. In verschiedenen Ausführungsformen umfasst das Berechnen der Bitfehlerrate Berechnen der Bitfehlerrate basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests auf andere Weise.
  • In einigen Ausführungsformen umfasst das Berechnen der Bitfehlerrate Verwenden eines Prozessors, z. B. des Prozessors 502, der nachstehend mit Bezug auf 5 erörtert wird.
  • In Vorgang 170 werden in einigen Ausführungsformen einige oder alle Vorgänge 110 bis 160 wiederholt. In einigen Ausführungsformen ist die Solltemperatur eine Solltemperatur einer Vielzahl von Solltemperaturen, die z. B. in den Testkriterien 522 enthalten sind, die auf dem nichttransitorischen computerlesbaren Speichermedium 504 gespeichert sind, das nachstehend mit Bezug auf 5 erörtert wird, und das Wiederholen einiger oder aller Vorgänge 110 bis 160 umfasst Wiederholen von Vorgang 110, wodurch das NVM-Array auf jede Solltemperatur der Vielzahl von Solltemperaturen erwärmt wird.
  • In einigen Ausführungsformen umfasst das Wiederholen einiger oder aller Vorgänge 110 bis 160 Wiederholen von Vorgang 120, wodurch eine oder mehrere andere Stromverteilungen erhalten werden, indem Ströme bei jeder Solltemperatur der Vielzahl von Solltemperaturen gemessen werden und/oder indem Ströme einer oder mehrerer anderer Teilmengen von NVM-Zellen des NVM-Arrays gemessen werden, z. B. einer zweiten Teilmenge, die basierend darauf, dass eine berechnete Bitfehlerrate einen Grenzwert überschreitet, eine größere Anzahl von NVM-Zellen umfasst als die erste Teilmenge.
  • In einigen Ausführungsformen umfasst das Wiederholen einiger oder aller Vorgänge 110 bis 160 Wiederholen von Vorgang 130 bis 160, wodurch basierend darauf, dass jede NVM-Zelle des NVM-Arrays in einen von zwei Zuständen, nämlich den logisch hohen oder niedrigen Zustand, programmiert ist, eine erste Bitfehlerrate berechnet wird und basierend darauf, dass jede NVM-Zelle des NVM-Arrays in den anderen der zwei Zustände programmiert ist, eine zweite Bitfehlerrate berechnet wird.
  • In einigen Ausführungsformen ist das Wiederholen einiger oder aller Vorgänge 110 bis 160 Teil eines Charakterisierungsprozesses, z. B. einer Zuverlässigkeitsuntersuchung eines Herstellungsprozesses, z. B. eines nachstehend mit Bezug auf 6 erörterten Herstellungsablaufs.
  • In Vorgang 180 werden in einigen Ausführungsformen NVM-Array-Statusinformationen in einer Speichervorrichtung gespeichert. Die NVM-Array-Statusinformationen sind Informationen, die auf der Ausführung einiger oder aller Vorgänge 110 bis 170 basieren, bei der mindestens eine Bitfehlerrate berechnet wird.
  • In verschiedenen Ausführungsformen umfassen die NVM-Array-Statusinformation die mindestens eine Bitfehlerrate, NVM-Zellen-PIF-Statusindikatoren, einen oder mehrere NVM-Array-P/F-Statusindikatoren oder -Qualifikationsindikatoren, NVM-Array-Fehlerkorrekturinformationen und/oder einen Wafer-P/F-Statusindikator oder -Qualifikationsindikator.
  • In verschiedenen Ausführungsformen umfasst das Speichern der NVM-Array-Statusinformationen in der Speichervorrichtung Ausgeben und/oder Speichern der gemessenen Ausfallströme auf einem nichttransitorischen computerlesbaren Speichermedium oder in einem Netzwerk oder einer Benutzerschnittstelle, z. B. Ausgeben und/oder Speichern von Statusinformationen 528 auf dem nichttransitorischen computerlesbaren Speichermedium 504, in der Netzwerkschnittstelle 512 oder der E/A-Schnittstelle 510, die jeweils nachstehend mit Bezug auf 5 erörtert werden.
  • In Schritt 190 wird in einigen Ausführungsformen eine Herstellungstätigkeit durchgeführt, die auf der Bitfehlerratenberechnung basiert. In einigen Ausführungsformen umfasst das Durchführen der Herstellungstätigkeit Akzeptieren des Wafers und/oder des NVM-Arrays basierend darauf, dass die berechnete Bitfehlerrate kleiner oder gleich einem Fehlergrenzwert ist, sodass ein Herstellungsablauf, z. B. durch Durchführen eines oder mehrerer Chipvereinzelungs- und Einkapselungsvorgänge, fortgesetzt wird. In einigen Ausführungsformen umfasst das Durchführen der Herstellungstätigkeit Verwerfen des Wafers und/oder des NVM-Arrays basierend darauf, dass die berechnete Bitfehlerrate größer als der Fehlergrenzwert ist, sodass der Herstellungsablauf, z. B. durch Herausnehmen des Wafers bzw. des NVM aus dem Herstellungsablauf und Durchführen einer Fehleranalyse, geändert oder abgebrochen wird.
  • In einigen Ausführungsformen umfasst das Durchführen der Herstellungstätigkeit Durchführen eines NVM-Array-Fehlerkorrekturvorgangs, z. B. Rekonfigurieren eines NVM-Arrays basierend auf der Bitfehlerratenberechnung, z. B. basierend auf den Adressen 526 nicht bestandener Zellen, die vorstehend und nachfolgend mit Bezug auf 5 erläutert sind.
  • In einigen Ausführungsformen umfasst das Durchführen der Herstellungstätigkeit Anpassen einer oder mehrerer Herstellungsablaufkriterien basierend auf der Bitfehlerratenberechnung, z. B. Anpassen eines oder mehrerer Kriterien, die auf den Herstellungsablauf anwendbar sind, der nachstehend mit Bezug auf 6 erörtert wird, basierend auf einer Rückinformation von der Bitfehlerratenberechnung, z. B. der Stromverteilung 524, den Adressen 526 nicht bestandener Zellen und/oder den Statusinformationen 528, die vorstehend und nachstehend mit Bezug auf 5 erörtert sind.
  • Durch Ausführen einiger oder aller Vorgänge des Verfahrens 100 wird basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests eine Bitfehlerrate derart berechnet, dass die Bitfehlerrate auf Daten basiert, die bei der Solltemperatur erhalten werden, ohne dass Strommessungen an allen NVM-Zellen des NVM-Arrays erforderlich sind.
  • Im Vergleich zu Herangehensweisen, bei denen Daten vor und nach dem Hochfahren auf bzw. dem Herunterfahren von einer Solltemperatur erhalten werden, weisen Bitfehlerraten, die auf Daten basieren, die durch Ausführen der relevanten Vorgänge des Verfahrens 100 bei der Solltemperatur erhalten werden, durch Vermeidung von Fehlern, die während der Heiz- und der Abkühlphase eingeführt werden, eine verbesserte Genauigkeit auf. Da außerdem NVM-Lesefenster mit zunehmender Temperatur oft kleiner werden, können durch die Verwendung der Stromverteilung zur Berechnung der Bitfehlerrate Fehleinschätzungen bei vergleichsweise raschen P/F-Tests bei der Solltemperatur kompensiert werden. Im Vergleich zu Herangehensweisen, die Strommessungen aller NVM-Zellen eines NVM-Arrays bei einer Solltemperatur umfassen, sind daher Testzeiten verkürzt, und Bitfehlerratenberechnungen können bei hohen Solltemperaturen mit signifikanter Verschlechterung der NVM-Lesefenster durchgeführt werden.
  • 3A und 3B sind Diagramme des Halbleiterwafers 300, der mindestens ein Exemplar des Speicherarrays 300MA umfasst, das Exemplare der Speicherzelle 300MC umfasst, gemäß einigen Ausführungsformen. Der Halbleiterwafer 300 ist als Teil des Berechnens einer oder mehrerer NVM-Array-Bitfehlerraten basierend auf dem mindestens einen Exemplar des MRAM-Arrays 300MA, das Exemplare der MRAM-Zelle 300MC umfasst, in dem Verfahren 100 verwendbar, wie vorstehend mit Bezug auf 1-2D erörtert.
  • 3A ist ein Diagramm des Halbleiterwafers 300 mit mindestens einem Exemplar des MRAM-Arrays 300MA, wobei in 3A ein einziges Exemplar abgebildet ist. Zu Veranschaulichungszwecken ist 3A vereinfacht. In verschiedenen Ausführungsformen umfasst der Halbleiterwafer 300 zusätzlich zu dem und/oder einschließlich des mindestens einen Exemplars des MRAM-Arrays eine oder mehrere Schaltungen (nicht gezeigt), z. B. eine oder mehrere Prozessor-, Logik- und/oder SoC-Schaltungen oder dergleichen. In verschiedenen Ausführungsformen weisen die Elemente des Halbleiterwafers 300 eine andere relative Größe, Form und/oder Position auf als in 3A abgebildet.
  • Jedes Exemplar des MRAM-Arrays 300MA ist eine Speicherschaltung, die eine Vielzahl von Exemplaren der MRAM-Zelle 300MC und mindestens ein Exemplar des Erfassungsverstärkers 300SA umfasst. Zusätzlich zu den in 3A abgebildeten Elementen kann jedes Exemplar des MRAM-Arrays 300MA Schaltungen, z. B. eine Eingangs-/Ausgangsschaltung (E/A-Schaltung), und elektrische Verbindungsstrukturen, z. B. Bitleitungen, Ausleseleitungen, Wortleitungen und/oder Sondenkontaktstellen, umfassen, die derart konfiguriert sind, dass das MRAM-Array 300MA dazu verwendet werden kann, das Verfahren 100 ganz oder teilweise auszuführen.
  • Der Erfassungsverstärker 300SA ist eine elektronische Schaltung, die dazu konfiguriert ist, im Betrieb einen Strom von einer oder mehreren ausgewählten MRAM-Zellen 300MC anzunehmen und basierend auf einem Vergleich mit einem Schwellenwert, z. B. dem vorstehend mit Bezug auf 1-2D erörterten Schwellenwert Isa, ein Datensignal, z. B. ein Logikbit, auszugeben, das ein Ergebnis des Vergleichs angibt. In einigen Ausführungsformen ist der Erfassungsverstärker 300SA dazu konfiguriert, ein oder mehrere Datensignale auszugeben, die für jeden angenommenen MRAM-Zellenstrom einen gemessenen Stromwert ausgeben.
  • 3B ist ein schematisches Diagramm der MRAM-Zelle 300MC, die in einigen Ausführungsformen auch als MRAM-Bauelement 300MC bezeichnet wird und hier zum Zwecke der Veranschaulichung vereinfacht ist. In verschiedenen Ausführungsformen umfasst die MRAM-Zelle 300MC ein oder mehrere Elemente zusätzlich zu den in 3B abgebildeten Elementen.
  • Die MRAM-Zelle 300MC umfasst eine MTJ-Struktur 300S und einen Transistor 300T. Die MTJ-Struktur 300S umfasst einen ersten Anschluss, der mit einer lokalen Bitleitung 300BL gekoppelt ist, und einen zweiten Anschluss, der mit einem ersten Source-/Drain-Anschluss (S/D-Anschluss) des Transistors 300T gekoppelt ist, und der Transistor 300T umfasst einen zweiten S/D-Anschluss, der mit einer lokalen Sourceleitung 300SL gekoppelt ist. Ein Gate des Transistors 300T ist dazu konfiguriert, ein Spannungssignal WL zu empfangen, die lokale Bitleitung 300BL ist dazu konfiguriert, ein Spannungssignal VSIG1 zu empfangen, und die lokale Sourceleitung 300SL ist dazu konfiguriert, ein Spannungssignal VSIG2 zu empfangen.
  • In der in 3B abgebildeten Ausführungsform ist der Transistor 300T ein n-leitender Transistor, der zwischen die MTJ-Struktur 300S und die lokale Sourceleitung 300SL gekoppelt ist. In verschiedenen Ausführungsformen ist der Transistor 300T ein p-leitender Transistor und/oder zwischen die MTJ-Struktur 300S und die lokale Bitleitung 300BL gekoppelt.
  • Magnetische Schichten 300M1 und 300M2 sind zwischen den beiden Anschlüssen der MTJ-Struktur 300S positioniert und durch eine Isolationsschicht 300I getrennt. Die magnetische Schicht 300M2 weist eine feste magnetische Ausrichtung auf, und die magnetische Schicht 300M1 weist eine magnetische Ausrichtung auf, die so konfiguriert werden kann, dass sie entweder mit der magnetischen Schicht 300M2 gleichgerichtet ist oder ihr entgegengesetzt ist. Die Isolationsschicht 300I ist dazu konfiguriert, einen Tunnelstrom derart zu leiten, dass ein Widerstand 300R des MTJ300 einen ersten Widerstandswert, der einer gleichgerichteten Ausrichtung der magnetischen Schichten 300M1 und 300M2 entspricht, oder einen zweiten Widerstandswert, der einer entgegengesetzten Ausrichtung der magnetischen Schichten 300M1 und 300M2 entspricht, aufweist, wobei der zweite Widerstandswert größer als der erste Widerstandswert ist.
  • In einem ersten Programmiervorgang sind die Spannungssignale WL, VSIG1 und VSIG2 dazu konfiguriert, zu bewirken, dass der vorstehend mit Bezug auf 1-2D erörterte Strom Ic eine erste Polarität und eine Größe aufweist, die groß genug ist, zu bewirken, dass die magnetische Ausrichtung der magnetischen Schicht 300M1 derart mit der magnetischen Ausrichtung der magnetischen Schicht 300M2 gleichgerichtet wird, dass die MRAM-Zelle 300MC in einen ersten Logikzustand programmiert wird, der dem ersten Widerstandswert des Widerstands 300R entspricht.
  • In einem zweiten Programmiervorgang sind die Spannungssignale WL, VSIG1 und VSIG2 dazu konfiguriert, zu bewirken, dass der Strom Ic eine zweite Polarität und eine Größe aufweist, die groß genug ist, zu bewirken, dass die magnetische Ausrichtung der magnetischen Schicht 300M1 derart der magnetischen Ausrichtung der magnetischen Schicht 300M2 entgegengesetzt wird, dass die MRAM-Zelle 300MC in einen zweiten Logikzustand programmiert wird, der dem zweiten Widerstandswert des Widerstands 300R entspricht.
  • In einem Lesevorgang sind die Spannungssignale WL, VSIG1 und VSIG2 dazu konfiguriert, zu bewirken, dass der Strom Ic eine Größe aufweist, die klein genug ist, um ein Ändern der Ausrichtung der Magnetschicht 300M1 zu vermeiden, und groß genug, um von dem Erfassungsverstärker 300SA angenommen und mit dem Schwellenwert verglichen zu werden. In verschiedenen Ausführungsformen weist ein Strom IRN in dem Lesevorgang die erste oder die zweite Polarität auf.
  • Der Halbleiterwafer 300 mit mindestens einem Exemplar des MRAM-Arrays 300MA, das Exemplare der MRAM-Zelle 300MC umfasst, ist damit derart konfiguriert, dass eine NVM-Array-Bitfehlerrate gemäß dem Verfahren 100 berechnet werden kann, um einige oder alle der vorstehend mit Bezug auf das Verfahren 100 erörterten Vorteile zu erzielen.
  • 4 ist ein Diagramm des NVM-Array-Testsystems 400 gemäß einigen Ausführungsformen. Das NVM-Array-Testsystem 400 kann als Teil des Berechnens einer oder mehrerer Bitfehlerraten in dem Verfahren 100 verwendet werden, wie vorstehend mit Bezug auf 1-2D erörtert.
  • Das NVM-Array-Testsystem 400 umfasst die Steuerung 410, die über einen Steuersignalbus CTRLB elektrisch mit der Testvorrichtung 420 gekoppelt ist, und die Testvorrichtung 420, die über einen Temperatursteuerbus TCB elektrisch mit der Testkammer 430 gekoppelt ist.
  • Zwei oder mehr Elemente werden basierend auf einer oder mehreren direkten elektrischen Verbindungen oder Leitungswegen, die ein oder mehrere zusätzliche Schaltungselemente, z. B. ein oder mehrere Schaltbauelemente oder Logik- oder Übertragungsgatter, umfassen und somit gesteuert werden können, z. B. durch einen Transistor oder ein anderes Schaltbauelement in einen resistiven oder einen offenen Zustand versetzt werden können, als elektrisch gekoppelt betrachtet.
  • Die Steuerung 410 ist eine Computervorrichtung, die dazu konfiguriert ist, ein oder mehrere Steuersignale CRTL auf dem Steuersignalbus CTRLB gemäß dem Durchführen eines oder mehrerer Vorgänge des vorstehend mit Bezug auf 1 erörterten Verfahrens 100 zu erzeugen. In einigen Ausführungsformen ist die Steuerung 410 eine nachstehend mit Bezug auf 5 erörterte Testsystemsteuerung 500.
  • Die Testvorrichtung 420 ist gebildet durch eine oder mehrere elektrische und/oder elektromechanische Baugruppen, die dazu konfiguriert sind, Steuersignale CTRL über den Steuersignalbus CTRLB zu empfangen und als Antwort auf die Steuersignale CTRL den einen oder die mehreren Vorgänge des Verfahrens 100 wie nachstehend erörtert durchzuführen, z. B. durch Erzeugen eines oder mehrerer Temperatursteuersignale TCS auf dem Temperatursteuerbus TCB.
  • Die Testkammer 430 ist eine elektromechanische Baugruppe, die ein Gehäuse (nicht gezeigt) umfasst und dazu konfiguriert ist, einen Halbleiterwafer zu enthalten, z. B. den Halbleiterwafer 300 mit mindestens einem Exemplar des MRAM-Arrays 300MA, der vorstehend mit Bezug auf 3A und 3B erörtert wurde, und als Antwort auf das eine oder die mehreren Temperatursteuersignale TCS eine Umgebungstemperatur des Gehäuses zu steuern, z. B. die Umgebungstemperatur auf oder nahe der Solltemperatur Tg zu halten.
  • In der in 4 abgebildeten Ausführungsform erstreckt sich ein Abschnitt (nicht bezeichnet) der Testvorrichtung 420 in die Testkammer 430 hinein und kontaktiert das MRAM-Array 300MA, z. B. mittels eines oder mehrerer Sondenstifte, wodurch die Testvorrichtung 420 und die Testkammer 430 dazu konfiguriert sind, die Testvorrichtung 420 elektrisch mit einem NVM-Array wie dem MRAM-Array 300MA zu verbinden. In verschiedenen Ausführungsformen sind die Testvorrichtung 420 und die Testkammer 430 auf andere Weise konfiguriert, z. B. derart, dass die Testkammer 430 einen Abschnitt aufweist, der das NVM-Array kontaktiert, um die Testvorrichtung 420 elektrisch mit dem NVM-Array zu verbinden.
  • In einigen Ausführungsformen sind die Testvorrichtung 420 und die Testkammer 430 dazu konfiguriert, die Testvorrichtung 420 elektrisch parallel mit mehreren Exemplaren des NVM-Arrays 300MA zu verbinden. In einigen Ausführungsformen ist das NVM-Array in einem IC-Paket enthalten, und die Testvorrichtung 420 und die Testkammer 430 sind in geeigneter Weise, z. B. durch Umfassen einer oder mehrerer Lastplatinen (nicht gezeigt), dazu konfiguriert, die Testvorrichtung 420 mit einem oder mehreren Exemplaren des NVM-Arrays, z. B. des MRAM-Arrays 300MA, zu verbinden.
  • In der in 4 abgebildeten Ausführungsform umfasst die Testvorrichtung 420 die Temperatursteuerschaltung 422, die R/W-Schaltung 424 und die Entscheidungsschaltung 426. Die Temperatursteuerschaltung 422, die R/W-Schaltung 424 und die Entscheidungsschaltung 426 sind jeweils elektronische Schaltungen, die dazu konfiguriert sind, die nachstehend erörterten Funktionen als Antwort auf ein oder mehrere auf dem Steuersignalbus CTRLB empfangene Steuersignale CTRL durchzuführen.
  • Die Temperatursteuerschaltung 422 umfasst Hardware und/oder Softwareanweisungen, die dazu konfiguriert sind, im Betrieb auf eines oder mehrere der Steuersignale CTRL zu reagieren, indem sie Temperatursteuersignale TCS auf den Temperatursteuerbus TCB ausgeben, die dazu konfiguriert sind, die Testkammer auf eine oder mehrere Instanzen der Solltemperatur Tg einzustellen.
  • In einigen Ausführungsformen umfasst die Testvorrichtung 420 keine Temperatursteuerschaltung 422, und das NVM-Array-Testsystem 400 ist auf andere Weise dazu konfiguriert, die Testkammer 430 auf eine oder mehrere Instanzen der Solltemperatur Tg einzustellen. In einigen Ausführungsformen umfasst das NVM-Array-Testsystem 400 keinen Temperatursteuerbus TCB, die Steuerung 410 ist über den Steuersignalbus CTRLB elektrisch mit der Testkammer 430 gekoppelt und die Steuerung 410 ist, z. B. durch Umfassen der Temperatursteuerung 507, die nachstehend mit Bezug auf 5 erörtert wird, dazu konfiguriert, ein oder mehrere Steuersignale CTRL auszugeben, die dazu konfiguriert sind, die Testkammer 430 auf eine oder mehrere Instanzen der Solltemperatur Tg einzustellen.
  • Die R/W-Schaltung 424 umfasst Hardware und/oder Softwareanweisungen, die dazu konfiguriert sind, im Betrieb auf eines oder mehrere der Steuersignale CTRL zu reagieren, indem sie ein oder mehrere Signale (in 4 nicht gezeigt), z. B. die Spannungssignale VSIG1 und VSIG2 und die Ströme Ic, die vorstehend mit Bezug auf 1-3B erörtert wurden, an das MRAM-Array 300MA ausgeben und/oder eingeben, die dazu konfiguriert sind, gemäß den verschiedenen vorstehend mit Bezug auf 1-3B erörterten Vorgängen NVM-Zellen, z. B. die MRAM-Zellen 300MC, in den logisch hohen und den logisch niedrigen Zustand zu programmieren und NVM-Zellenstromwerte, z. B. Stromwerte der MRAM-Zelle 300MC, zu messen.
  • Die Entscheidungsschaltung 426 umfasst Hardware und/oder Softwareanweisungen, die dazu konfiguriert sind, im Betrieb auf eines oder mehrere der Steuersignale CTRL zu reagieren, indem sie ein oder mehrere Signale (nicht gezeigt) an das NVM-Array, z. B. das MRAM-Array 300MA, ausgeben und/oder eingeben, die dazu konfiguriert sind, gemäß den verschiedenen vorstehend mit Bezug auf 1-3B erörterten Vorgängen Logikzustandsbestimmungen von NVM-Zellen, z. B. der MRAM-Zellen 300MC, durchzuführen.
  • Durch die vorstehend erörterte Konfiguration ist die Testvorrichtung 420, die die R/W-Schaltung 424 und die Entscheidungsschaltung 426 umfasst, dazu konfiguriert, im Betrieb auf eines oder mehrere der Steuersignale CTRL zu reagieren, indem sie die verschiedenen vorstehend erörterten NVM-Array-Programmiervorgänge und Messvorgänge durchführt. In einigen Ausführungsformen ist die Testvorrichtung 420 auf andere Weise, z. B. ohne die R/W-Schaltung 424 und/oder die Entscheidungsschaltung 426 zu umfassen, dazu konfiguriert, im Betrieb auf eines oder mehrere der Steuersignale CTRL zu reagieren, indem sie die verschiedenen vorstehend erörterten NVM-Array-Programmiervorgänge und Messvorgänge durchführt, z. B. indem sie als Schnittstelle zu einem oder mehreren Exemplaren des vorstehend mit Bezug auf 3A und 3B erörterten Erfassungsverstärkers 300SA dient.
  • Das NVM-Array-Testsystem 400 ist dadurch derart konfiguriert, dass eine Bitfehlerrate gemäß dem Verfahren 100 berechnet werden kann, um einige oder alle der vorstehend mit Bezug auf das Verfahren 100 erörterten Vorteile zu erzielen.
  • 5 ist ein Blockdiagramm der Testsystemsteuerung 500 gemäß einigen Ausführungsformen. Vorliegend beschriebene Verfahren zum Testen von Speicherarrays gemäß einer oder mehreren Ausführungsformen sind zum Beispiel unter Verwendung der Testsystemsteuerung 500 gemäß einigen Ausführungsformen implementierbar. Die Testsystemsteuerung 500 ist als die vorstehend mit Bezug auf 4 erörterte Steuerung 410 verwendbar.
  • In einigen Ausführungsformen ist die Testsystemsteuerung 500 eine Allzweck-Computervorrichtung, die den Hardwareprozessor 502 und das nichttransitorische computerlesbare Speichermedium 504 umfasst. Das nichttransitorische computerlesbare Speichermedium 504 ist unter anderem mit dem Computerprogrammcode 506, d. h. einem Satz von ausführbaren Anweisungen, codiert, d. h., der Computerprogrammcode ist auf dem Speichermedium gespeichert. Die Ausführung der Anweisungen 506 durch den Hardwareprozessor 502 stellt (zumindest teilweise) ein Testsystem dar, das einen Abschnitt oder die Gesamtheit eines Verfahrens, z. B. des vorstehend mit Bezug auf 1 erörterten Verfahrens 100 (im Folgenden als aufgeführte Prozesse und/oder Verfahren bezeichnet) implementiert.
  • Der Prozessor 502 ist über einen Bus 508 elektrisch mit dem nichttransitorischen computerlesbaren Speichermedium 504 gekoppelt. Der Prozessor 502 ist außerdem über den Bus 508 elektrisch mit der E/A-Schnittstelle 510 gekoppelt. Die Netzwerkschnittstelle 512 ist auch über den Bus 508 elektrisch mit dem Prozessor 502 verbunden. Die Netzwerkschnittstelle 512 ist mit einem Netzwerk 514 verbunden, sodass der Prozessor 502 und das nichttransitorische computerlesbare Speichermedium 504 sich über das Netzwerk 514 mit externen Elementen verbinden können. Der Prozessor 502 ist dazu konfiguriert, den Computerprogrammcode 506 auszuführen, der in dem nichttransitorischen computerlesbaren Speichermedium 504 codiert ist, um zu bewirken, dass die Testsystemsteuerung 500 zum Durchführen eines Abschnitts oder der Gesamtheit der aufgeführten Prozesse und/oder Verfahren verwendbar ist. In einer oder mehreren Ausführungsformen ist der Prozessor 502 eine zentrale Verarbeitungseinheit (CPU), ein Multiprozessor, ein verteiltes Verarbeitungssystem, eine anwendungsspezifische integrierte Schaltung (ASIC) und/oder eine geeignete Verarbeitungseinheit.
  • In einer oder mehreren Ausführungsformen ist das nichttransitorische computerlesbare Speichermedium 504 ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- und/oder Halbleiter-System (bzw. -Vorrichtung). Zum Beispiel umfasst das nichttransitorische computerlesbare Speichermedium 504 einen Halbleiter- oder Festkörperspeicher, ein Magnetband, eine entnehmbare Computerdiskette, einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher (ROM), eine magnetische Festplatte und/oder eine optische Platte. In einer oder mehreren Ausführungsformen mit Verwendung von optischen Platten umfasst das nichttransitorische computerlesbare Speichermedium 504 eine CD-ROM (Compact Disc Read-Only Memory), eine CD-RW (Compact Disc ReWritable) und/oder eine DVD (Digital Video Disc).
  • In einer oder mehreren Ausführungsformen ist auf dem nichttransitorischen computerlesbaren Speichermedium 504 der Computerprogrammcode 506 gespeichert, der dazu konfiguriert ist, zu bewirken, dass die Testsystemsteuerung 500 zum Durchführen eines Abschnitts oder der Gesamtheit der aufgeführten Prozesse und/oder Verfahren verwendbar ist. In einer oder mehreren Ausführungsformen ist auf dem nichttransitorischen computerlesbaren Speichermedium 504 der Computerprogrammcode 506, der die Temperatursteuerung 507 und/oder die NVM-Array-Steuerung 509 umfasst, gespeichert, um zu bewirken, dass die Testsystemsteuerung 500 zum Durchführen eines Abschnitts oder der Gesamtheit der aufgeführten Prozesse und/oder Verfahren verwendbar ist.
  • In einer oder mehreren Ausführungsformen sind auf dem nichttransitorischen Speichermedium 504 auch Informationen gespeichert, die das Durchführen eines Abschnitts oder der Gesamtheit der aufgeführten Prozesse und/oder Verfahren fördern. In einer oder mehreren Ausführungsformen sind auf dem nichttransitorischen computerlesbaren Speichermedium 504 die Testkriterien 522, die Stromverteilung 524, die Adressen 526 nicht bestandener Zellen und/oder die Statusinformationen 528 gespeichert, die jeweils das Durchführen eines Abschnitts oder der Gesamtheit der aufgeführten Prozesse und/oder Verfahren fördern.
  • Das IC-Layout-Erzeugungssystem 500 umfasst die E/A-Schnittstelle 510. Die E/A-Schnittstelle 510 ist mit externen Schaltungen gekoppelt. In einer oder mehreren Ausführungsformen umfasst die E/A-Schnittstelle 510 eine Tastatur, ein Tastenfeld, eine Maus, eine Rollkugel, ein Trackpad, einen Touchbildschirm und/oder Cursor-Richtungstasten zum Übermitteln von Informationen und Befehlen an den Prozessor 502.
  • Das IC-Layout-Erzeugungssystem 500 umfasst außerdem die Netzwerkschnittstelle 512, die mit dem Prozessor 502 gekoppelt ist. Die Netzwerkschnittstelle 512 ermöglicht dem System 500, mit dem Netzwerk 514 zu kommunizieren, mit dem ein oder mehrere andere Computersysteme verbunden sind. Die Netzwerkschnittstelle 512 umfasst Drahtlosnetzwerkschnittstellen wie Bluetooth, Wi-Fi, WiMAX, GPRS oder WCDMA; oder drahtgebundene Netzwerkschnittstellen wie Ethernet, USB oder IEEE-1364. In einer oder mehreren Ausführungsformen ist ein Abschnitt oder die Gesamtheit der aufgeführten Prozesse und/oder Verfahren in zwei oder mehr IC-Layout-Erzeugungssystemen 500 implementiert.
  • Das IC-Layout-Erzeugungssystem 500 ist dazu konfiguriert, Informationen über die E/A-Schnittstelle 510 zu empfangen. Die über die E/A-Schnittstelle 510 empfangenen Informationen umfassen Anweisungen, Daten, Designregeln, Bibliotheken von Standardzellen und/oder andere Parameter zum Verarbeiten durch den Prozessor 502. Die Informationen werden über den Bus 508 an den Prozessor 502 übertragen. Das IC-Layout-Erzeugungssystem 500 ist dazu konfiguriert, über die E/A-Schnittstelle 510 Informationen zu empfangen, die eine UI betreffen. Die Informationen werden auf einem nichttransitorischen computerlesbaren Speichermedium 504 als Benutzerschnittstelle (UI) 542 gespeichert.
  • Bei einigen Ausführungsformen ist ein Abschnitt oder die Gesamtheit der aufgeführten Prozesse und/oder Verfahren als unabhängige Softwareapplikation zur Ausführung durch einen Prozessor implementiert. Bei einigen Ausführungsformen ist ein Abschnitt oder die Gesamtheit der aufgeführten Prozesse und/oder Verfahren als Softwareapplikation implementiert, die ein Teil einer zusätzlichen Softwareapplikation ist. Bei einigen Ausführungsformen ist ein Abschnitt oder die Gesamtheit der aufgeführten Prozesse und/oder Verfahren als Zusatzmodul für eine Softwareapplikation implementiert. In einigen Ausführungsformen ist mindestens einer der aufgeführten Prozesse und/oder Verfahren als Softwareapplikation implementiert, die ein Abschnitt eines NVM-Testsystems ist, z. B. des vorstehend mit Bezug auf 4 erörterten NVM-Array-Testsystems 400. In einigen Ausführungsformen ist ein Abschnitt oder die Gesamtheit der aufgeführten Prozesse und/oder Verfahren als Softwareapplikation implementiert, die von der Testsystemsteuerung 500 verwendet wird.
  • 6 ist ein Blockdiagramm des IC-Herstellungssystems 600 und eines zugehörigen IC-Herstellungsablaufs gemäß einigen Ausführungsformen. In einigen Ausführungsformen werden basierend auf einem IC-Layoutdiagramm (A) eine oder mehrere Halbleitermasken und/oder (B) mindestens eine Komponente in einer Schicht einer integrierten Halbleiterschaltung unter Verwendung des Herstellungssystems 600 gefertigt.
  • In 6 umfasst das IC-Herstellungssystem 600 Entitäten wie ein Designhaus 620, ein Maskenhaus 630 und einen IC-Hersteller/-Fertiger (eine „Fab“) 650, die bei den Design-, Entwicklungs- und Herstellungszyklen und/oder Diensten miteinander interagieren, die mit der Herstellung einer IC-Vorrichtung 660 in Zusammenhang stehen. Die Entitäten im System 600 sind über ein Kommunikationsnetzwerk verbunden. Bei einigen Ausführungsformen ist das Kommunikationsnetzwerk ein einziges Netzwerk. Bei einigen Ausführungsformen ist das Kommunikationsnetzwerk eine Vielzahl verschiedener Netze, etwa ein Intranet und das Internet. Das Kommunikationsnetzwerk umfasst drahtgebundene und/oder drahtlose Kommunikationskanäle. Jede Entität interagiert mit einer oder mehreren anderen Entitäten und stellt einer oder mehreren anderen Entitäten Dienste bereit und/oder empfängt Dienste von diesen. In einigen Ausführungsformen sind zwei oder mehr von dem Designhaus 620, dem Maskenhaus 630 und der IC-Fab 650 im Besitz einer einzigen, größeren Firma. In einigen Ausführungsformen koexistieren zwei oder mehr von dem Designhaus 620, dem Maskenhaus 630 und der IC-Fab 650 in einer gemeinsamen Einrichtung und verwenden gemeinsame Ressourcen.
  • Das Designhaus (bzw. Designteam) 620 erzeugt ein IC-Design-Layoutdiagramm 622. Das IC-Design-Layoutdiagramm 622 umfasst verschiedene geometrische Strukturen, z. B. ein vorstehend erörtertes IC-Layoutdiagramm. Die geometrischen Strukturen entsprechen Strukturen aus Metall-, Oxid- oder Halbleiterschichten, die die verschiedenen Komponenten des zu fertigenden IC-Bauelements 660 bilden. Die verschiedenen Schichten kombinieren, um verschiedene IC-Merkmale zu formen. Zum Beispiel umfasst ein Abschnitt des IC-Design-Layoutdiagramms 622 verschiedene IC-Merkmale, zum Beispiel einen aktiven Bereich, eine Gate-Elektrode, Source und Drain, Metallleitungen oder Durchkontaktierungen einer Zwischenschichtverbindung und Öffnungen für Bondpads, die in einem Halbleitersubstrat (z. B. einem Siliziumwafer) und verschiedenen auf dem Halbleitersubstrat angeordneten Materialschichten auszubilden sind. Das Designhaus 620 implementiert eine geeignete Designprozedur, um das IC-Design-Layoutdiagramm 622 auszubilden. Die Designprozedur umfasst logisches Design, physisches Design und/oder Ort und Weg. Das IC-Design-Layoutdiagramm 622 wird in einer oder mehreren Dateien präsentiert, die Informationen zu den geometrischen Strukturen aufweisen. Zum Beispiel kann das IC-Design-Layoutdiagramm 622 in einem GDSII-Dateiformat oder einem DFII-Dateiformat ausgedrückt werden.
  • Das Maskenhaus 630 umfasst die Datenaufbereitung 632 und die Maskenfertigung 644. Das Maskenhaus 630 verwendet das IC-Design-Layoutdiagramm 622, um eine oder mehrere Masken 645 herzustellen, die zum Fertigen der verschiedenen Schichten der IC-Vorrichtung 660 gemäß dem IC-Design-Layoutdiagramm 622 zu verwenden sind. Das Maskenhaus 630 führt eine Maskendatenaufbereitung 632 durch, bei der das IC-Design-Layoutdiagramm 622 in eine repräsentative Datei („RDF“ - Representative Data File) übersetzt wird. Die Maskendatenvorbereitung 632 stellt die RDF der Maskenfertigung 644 bereit. Die Maskenfertigung 644 umfasst einen Maskenschreiber. Der Maskenschreiber wandelt die RDF in ein Bild auf einem Substrat um, etwa einer Maske (Retikel) 645 oder einem Halbleiterwafer 653. Das Design-Layoutdiagramm 622 wird durch die Maskendatenaufbereitung 632 so bearbeitet, dass speziellen Eigenschaften des Maskenschreibers und/oder Anforderungen der IC-Fab 650 erfüllt wird. In 6 sind die Maskendatenvorbereitung 632 und die Maskenfertigung 644 als separate Elemente veranschaulicht. In einigen Ausführungsformen können die Maskendatenvorbereitung 632 und die Maskenfertigung 644 gemeinsam als Maskendatenvorbereitung bezeichnet werden.
  • In einigen Ausführungsformen umfasst die Maskendatenvorbereitung 632 eine Korrektur von optischen Naheffekten (OPC - Optical Proximity Correction), die Lithografieverbesserungstechniken verwendet, um Bildfehler zu kompensieren, etwa solche, die durch Beugung, Interferenz, andere Prozesseffekte und dergleichen verursacht werden können. Die OPC passt das IC-Design-Layoutdiagramm 622 an. In einigen Ausführungsformen umfasst die Maskendatenvorbereitung 632 weitere Auflösungsverbesserungstechniken (RET - Resolution Enhancement Techniques), etwa Schrägbeleuchtung, Subauflösungshilfsmerkmale, Phasenverschiebungsmasken, andere geeignete Techniken und dergleichen oder Kombinationen davon. Bei einigen Ausführungsformen wird auch eine inverse Lithografietechnik (ILT) verwendet, die die OPC als ein inverses Abbildungsproblem behandelt.
  • In einigen Ausführungsformen umfasst die Maskendatenaufbereitung 632 einen Maskenregelprüfer (MRC - Mask Rule Checker), der das IC-Design-Layoutdiagramm 622, das OPC-Prozessen unterzogen wurde, mit einem Satz von Maskenerzeugungsregeln überprüft, die bestimmte geometrische und/oder Verbindungs-Beschränkungen enthalten, um ausreichende Randabstände sicherzustellen, um Schwankungen der Halbleiterherstellungsprozesse zu berücksichtigen und dergleichen. In einigen Ausführungsformen modifiziert der MRC das IC-Design-Layoutdiagramm 622, um Einschränkungen bei der Maskenfertigung 644, die möglicherweise einen Teil der durch die OPC durchgeführten Modifikation rückgängig machen, zu kompensieren, um den Maskenerzeugungsregeln zu entsprechen.
  • In einigen Ausführungsformen umfasst die Maskendatenaufbereitung 632 eine Lithografieprozessprüfung (LPC - Lithography Process Checking), die eine Verarbeitung simuliert, die durch die IC-Fab 650 implementiert wird, um die IC-Vorrichtung 660 fertigen. Die LPC simuliert diese Verarbeitung auf der Grundlage des IC-Design-Layoutdiagramms 622, um eine simulierte hergestellte Vorrichtung wie die IC-Vorrichtung 660 zu erzeugen. Verarbeitungsparameter bei der LPC-Simulation können verschiedenen Prozessen im IC-Herstellungszyklus zugeordnete Parameter, Werkzeugen, die zum Herstellen des ICs verwendet werden, zugeordnete Parameter und/oder andere Aspekte des Herstellungsprozesses umfassen. Die LPC berücksichtigt verschiedene Faktoren, wie Luftbildkontrast, Tiefenschärfe (DOF - depth of focus), Maskenfehlerverstärkungsfaktor (MEEF - mask error enhancement factor), andere geeignete Faktoren und dergleichen oder Kombinationen davon. In einigen Ausführungsformen werden nach der Erzeugung eines simulierten produzierten Bauelements durch die LPC die OPC und/oder die MRC zum weiteren Verfeinern des IC-Design-Layoutdiagramms 622 wiederholt, wenn die Form des simulierten Bauelements zu weit von der Erfüllung der Designregeln entfernt ist.
  • Es versteht sich, dass die vorstehende Beschreibung der Maskendatenvorbereitung 632 der Klarheit halber vereinfacht worden ist. In einigen Ausführungsformen umfasst die Datenvorbereitung 632 zusätzliche Merkmale wie beispielsweise eine logische Verknüpfung (LOP - Logic Operation), um das IC-Design-Layoutdiagramm 622 gemäß Herstellungsregeln zu modifizieren. Außerdem können die bei der Datenvorbereitung 632 auf das IC-Design-Layoutdiagramm 622 angewendeten Prozesse in vielen unterschiedlichen Reihenfolgen ausgeführt werden.
  • Nach der Maskendatenvorbereitung 632 und während der Maskenfertigung 644 wird die Maske 645 oder eine Gruppe von Masken 645 basierend auf dem modifizierten IC-Design-Layoutdiagramm 622 gefertigt. In einigen Ausführungsformen umfasst die Maskenfertigung 644 Durchführen einer oder mehrerer lithografischer Belichtungen basierend auf dem IC-Design-Layoutdiagramm 622. In einigen Ausführungsformen wird ein Elektronenstrahl (e-beam) oder ein Mechanismus mit mehreren Elektronenstrahlen verwendet, um basierend auf dem modifizierten IC-Design-Layoutdiagramm 622 eine Struktur auf einer Maske (Fotomaske oder Retikel) 645 auszubilden. Die Maske 645 kann gemäß verschiedenen Technologien ausgebildet werden. In einigen Ausführungsformen wird die Maske 645 unter Verwendung von binärer Technologie ausgebildet. Bei einigen Ausführungsformen weist eine Maskenstruktur undurchlässige Bereiche und transparente Bereiche auf. Ein Strahlungsbündel, etwa aus Ultraviolett- (UV-) oder EUV-Strahlen, das zum Belichten der Schicht aus bildempfindlichem Material (z. B. Fotolack), mit der ein Wafer beschichtet worden ist, verwendet wird, wird durch den undurchlässigen Bereich blockiert und durch die transparenten Bereiche durchgelassen. In einem Beispiel umfasst eine binäre Maskenversion der Maske 645 ein transparentes Substrat (z. B. Quarzglas) und ein lichtundurchlässiges Material (z. B. Chrom), das in den lichtundurchlässigen Bereichen der binären Maske aufgebracht wurde. In einem anderen Beispiel wird die Maske 645 unter Verwendung einer Phasenverschiebungstechnik ausgebildet. Bei einer Phasenverschiebungsmasken (PSM - phase shift mask) -Version der Maske 645 sind verschiedene Merkmale in der auf der Phasenverschiebungsmaske ausgebildeten Struktur dazu konfiguriert, eine geeignete Phasendifferenz aufzuweisen, um die Auflösung und die Abbildungsqualität zu verbessern. In verschiedenen Beispielen kann die Phasenverschiebungsmaske eine gedämpfte PSM oder eine alternierende PSM sein. Die durch die Maskenfertigung 644 erzeugte(n) Maske(n) wird in vielen unterschiedlichen Prozessen verwendet. Beispielsweise wird eine solche Maske/werden solche Masken in einem Ionenimplantationsprozess, um verschiedene dotierte Bereiche im Halbleiterwafer 653 auszubilden, in einem Ätzprozess, um verschiedene Ätzbereiche im Halbleiterwafer 653 auszubilden und/oder in anderen geeigneten Prozessen verwendet.
  • Die IC-Fab 650 ist ein IC-Fertigungsunternehmen, das eine oder mehrere Herstellungseinrichtungen zur Fertigung verschiedener IC-Produkte umfasst. In einigen Ausführungsformen ist die IC-Fab 650 eine Halbleiterfabrik. Zum Beispiel kann es eine Herstellungseinrichtung für die Front-End-Fertigung mehrerer IC-Produkte (Front-End-of-Line (FEOL) -Fertigung) geben, während eine zweite Herstellungseinrichtung die Back-End-Fertigung für die Verschaltung und Verpackung der IC-Produkte (Back-End-of-Line (BEOL) - Fertigung) bereitstellen kann und eine dritte Herstellungseinrichtung andere Dienstleistungen für die Fabrik bereitstellen kann.
  • Die IC-Fab 650 umfasst Wafer-Fertigungswerkzeuge 652, die dazu konfiguriert sind, verschiedene Herstellungsvorgänge an dem Halbleiterwafer 653 derart auszuführen, dass das IC-Bauelement 660 entsprechend der/den Maske(n), z. B. Maske 645, gefertigt wird. In verschiedenen Ausführungsformen umfassen die Fertigungswerkzeuge 652 einen Wafer-Stepper, einen Ionenimplantierer, einen Fotolackbeschichter, eine Prozesskammer, z. B. eine CVD-Kammer oder ein LPCVD-Ofen, ein CMP-System, ein Plasmaätzsystem, ein Waferreinigungssystem und/oder andere Herstellungsausrüstung, die einen oder mehrere geeignete Herstellungsprozesse wie vorliegend erörtert ausführen kann.
  • Die IC-Fab 650 verwendet die vom Maskenhaus 630 gefertigte(n) Maske(n) 645, um das IC-Bauelement 660 zu fertigen. Somit verwendet die IC-Fab 650 zumindest indirekt das IC-Design-Layoutdiagramm 622, um das IC-Bauelement 660 zu fertigen. In einigen Ausführungsformen wird der Halbleiterwafer 653 von der IC-Fab 650 unter Verwendung der Maske(n) 645 gefertigt, um das IC-Bauelement 660 auszubilden. In einigen Ausführungsformen umfasst die IC-Fertigung Durchführen einer oder mehrerer lithografischer Belichtungen zumindest indirekt basierend auf dem IC-Design-Layoutdiagramm 622. Der Halbleiterwafer 653 umfasst ein Siliziumsubstrat oder ein anderes geeignetes Substrat mit darauf ausgebildeten Materialschichten. Der Halbleiterwafer 653 umfasst ferner verschiedene dotierte Bereiche, dielektrische Merkmale, mehrlagige Verbindungen und/oder dergleichen (die in nachfolgenden Herstellungsschritten ausgebildet werden).
  • Details betreffend ein Herstellungssystem für integrierte Schaltungen (ICs) (z. B. das System 600 aus 6) und einen zugehörigen IC-Herstellungsablauf finden sich z. B. in dem US-Patent Nr. 9,256,709 , erteilt am 9. Februar 2016, der US-Vorabveröffentlichung Nr. 20150278429 , veröffentlicht am 1. Oktober 2015, der US-Vorabveröffentlichung Nr. 20140040838 , veröffentlicht am 6. Februar 2014, und dem US-Patent Nr. 7,260,442 , erteilt am 21. August 2007, die alle hiermit durch Bezugnahme jeweils vollständig aufgenommen werden.
  • In einigen Ausführungsformen umfasst ein Verfahren zum Testen eines NVM-Arrays Erwärmen des NVM-Arrays auf eine Solltemperatur, während das NVM-Array auf die Solltemperatur erwärmt ist, Messen einer Vielzahl von Strömen einer Teilmenge von NVM-Zellen des NVM-Arrays, wodurch eine Stromverteilung erhalten wird, Programmieren jeder NVM-Zelle des NVM-Arrays in einen von zwei Zuständen, nämlich einen logisch hohen Zustand oder einen logisch niedrigen Zustand, und Durchführen von ersten und zweiten Bestehen/Nichtbestehen-Tests (P/F-Tests) für jede NVM-Zelle des NVM-Arrays, und Berechnen einer Bitfehlerrate basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests. In einigen Ausführungsformen umfasst das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in einen von zwei Zuständen, nämlich den logisch hohen Zustand oder den logisch niedrigen Zustand, Messen eines ersten Stromwerts jeder NVM-Zelle der Teilmenge von NVM-Zellen nach dem Programmieren in den einen der zwei Zustände, wodurch ein erster Abschnitt der Stromverteilung erhalten wird, Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in den anderen der zwei Zustände und Messen eines zweiten Stromwerts jeder NVM-Zelle der Teilmenge von NVM-Zellen nach dem Programmieren in den anderen der zwei Zustände, wodurch ein zweiter Abschnitt der Stromverteilung erhalten wird. In einigen Ausführungsformen umfasst das Berechnen der Bitfehlerrate Anpassen einer anfänglichen Fehlerbestimmung basierend auf einer Überlappung des ersten Abschnitts und des zweiten Abschnitts der Stromverteilung. In einigen Ausführungsformen umfasst das Verfahren Messen von Fehlerströmen von NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben, während das NVM-Array auf die Solltemperatur erwärmt ist. In einigen Ausführungsformen umfasst das Durchführen der ersten und zweiten P/F-Tests Durchführen der ersten P/F-Tests durch Verwenden eines Erfassungsverstärkers des NVM-Arrays, um für jede NVM-Zelle des NVM-Arrays basierend auf einem ersten NVM-Zellenstromwert und einem Schwellenwert eine erste Logikzustandsbestimmung durchzuführen, nach dem Durchführen der ersten P/F-Tests, Ausführen einer Verzögerung und, nach dem Ausführen der Verzögerung, Durchführen der zweiten P/F-Tests durch Verwenden des Erfassungsverstärkers, um für jede NVM-Zelle des NVM-Arrays basierend auf einem zweiten NVM-Zellenstromwert und dem Schwellenwert eine zweite Logikzustandsbestimmung durchzuführen. In einigen Ausführungsformen umfasst das Berechnen der Bitfehlerrate Vergleichen von Ergebnissen der zweiten P/F-Tests mit Ergebnissen der ersten P/F-Tests. In einigen Ausführungsformen umfasst das Durchführen der ersten P/F-Tests Speichern einer Adresse jeder NVM-Zelle des NVM-Arrays, die die ersten P/F-Tests nicht bestanden hat, und das Vergleichen der Ergebnisse der zweiten P/F-Tests mit den Ergebnissen der ersten P/F-Tests basiert auf den gespeicherten Adressen. In einigen Ausführungsformen umfasst das Programmieren jeder NVM-Zelle des NVM-Arrays in den einen der zwei Zustände Ändern einer magnetischen Ausrichtung einer magnetischen Schicht einer MRAM-Zelle. In einigen Ausführungsformen umfasst das Verfahren Ausführen einer Herstellungstätigkeit basierend auf der Bitfehlerratenberechnung.
  • In einigen Ausführungsformen umfasst ein NVM-Array-Testsystem eine Testkammer, eine Testvorrichtung, einen Prozessor und ein nichttransitorisches computerlesbares Speichermedium, das Computerprogrammcode für ein oder mehrere Programme umfasst. Das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode sind dazu konfiguriert, zusammen mit dem Prozessor das System dazu zu veranlassen, die Testkammer auf eine Solltemperatur einzustellen, wobei die Testkammer das NVM-Array enthält, während die Testkammer auf die Solltemperatur eingestellt ist, die Testvorrichtung dazu zu verwenden, um eine Vielzahl von Strömen einer Teilmenge von NVM-Zellen des NVM-Arrays zu messen, wodurch eine Stromverteilung erhalten wird, jede NVM-Zelle des NVM-Arrays in einen von zwei Zuständen, nämlich einen logisch hohen Zustand oder einen logisch niedrigen Zustand, zu programmieren und unmittelbar nach dem Programmieren jeder NVM-Zelle einen ersten P/F-Test an jeder NVM-Zelle des NVM-Arrays durchzuführen und nach Ausführen einer Verzögerung einen zweiten P/F-Test an jeder NVM-Zelle des NVM-Arrays durchzuführen und basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests eine Bitfehlerrate zu berechnen. In einigen Ausführungsformen sind das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, die Stromverteilung durch Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in den logisch hohen und den logisch niedrigen Zustand und, nach dem Programmieren in den logisch hohen beziehungsweise den logisch niedrigen Zustand, Messen eines entsprechenden ersten beziehungsweise zweiten Stromwerts für jede NVM-Zelle der Teilmenge von NVM-Zellen, wodurch der entsprechende erste beziehungsweise zweite Abschnitt der Stromverteilung erhalten wird, zu erhalten. In einigen Ausführungsformen sind das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, während die Testkammer auf die Solltemperatur eingestellt ist, die Testvorrichtung dazu zu verwenden, einen Ausfallstrom jeder NVM-Zelle des NVM-Arrays zu messen, die den zweiten P/F-Test nicht bestanden hat. In einigen Ausführungsformen entspricht einem Nichtbestehen der ersten oder der zweiten P/F-Tests, dass ein NVM-Zellenstromwert ein Wert aus einer ersten Menge von Stromwerten größer als ein Schwellenwert oder einer zweiten Menge von Stromwerten kleiner oder gleich dem Schwellenwert ist. In einigen Ausführungsformen sind das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, die Bitfehlerrate durch Speichern von Adressen von NVM-Zellen, die den ersten P/F-Test nicht bestanden haben, Erzeugen einer anfänglichen Bitfehlerrate basierend auf NVM-Zellen, die den ersten P/F-Test bestanden haben und den zweiten P/F-Test nicht bestanden haben, und Anpassen der anfänglichen Bitfehlerrate basierend auf der Stromverteilung zu berechnen. In einigen Ausführungsformen sind das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, einen Erfassungsverstärker des NVM-Arrays dazu zu verwenden, um an jeder NVM-Zelle des NVM-Arrays den ersten P/F-Test und den zweiten P/F-Test durchzuführen. In einigen Ausführungsformen sind das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, basierend auf der berechneten Bitfehlerrate NVM-Array-Statusinformationen auf dem nichttransitorischen computerlesbaren Speichermedium oder einer anderen Speichervorrichtung zu speichern.
  • In einigen Ausführungsformen umfasst ein Verfahren zum Testen eines MRAM-Arrays Einstellen einer Testkammer auf eine Solltemperatur, wobei die Testkammer einen Wafer enthält, der das MRAM-Array umfasst, während die Testkammer auf die Solltemperatur eingestellt ist, Programmieren jeder MRAM-Zelle einer Teilmenge von MRAM-Zellen in einen logisch hohen Zustand und einen logisch niedrigen Zustand, nach dem Programmieren jeder der MRAM-Zellen der Teilmenge von MRAM-Zellen in den logisch hohen beziehungsweise den logisch niedrigen Zustand, Messen eines entsprechenden ersten beziehungsweise zweiten Stromwerts für jede MRAM-Zelle der Teilmenge von MRAM-Zellen, wodurch ein entsprechender erster beziehungsweise zweiter Abschnitt einer Stromverteilung erhalten wird, Programmieren jeder MRAM-Zelle des MRAM-Arrays in einen von zwei Zuständen, nämlich den logisch hohen oder den logisch niedrigen Zustand, Durchführen von ersten P/F-Tests durch Verwenden eines Erfassungsverstärkers des MRAM-Arrays, um für jede MRAM-Zelle des MRAM-Arrays basierend auf einem ersten MRAM-Zellenstromwert und einem Schwellenwert eine erste Logikzustandsbestimmung durchzuführen, nach dem Durchführen der ersten P/F-Tests, Ausführen einer vorbestimmten Verzögerung und, nach dem Ausführen der vorbestimmten Verzögerung, Durchführen von zweiten P/F-Tests durch Verwenden des Erfassungsverstärkers, um für jede MRAM-Zelle des MRAM-Arrays basierend auf einem zweiten MRAM-Zellenstromwert und dem Schwellenwert eine zweite Logikzustandsbestimmung durchzuführen, Berechnen einer Bitfehlerrate durch Vergleichen von Ergebnissen der zweiten P/F-Tests mit Ergebnissen der ersten P/F-Tests und Anpassen der Bitfehlerrate basierend auf der Stromverteilung. In einigen Ausführungsformen umfassen Fehlerkriterien der ersten P/F-Tests, dass sich eine erste Logikzustandsbestimmung von dem programmierten Zustand, nämlich dem logisch hohen oder dem logisch niedrigen Zustand, unterscheidet, und Fehlerkriterien der zweitens P/F-Tests umfassen, dass sich eine zweite Logikzustandsbestimmung von dem programmierten Zustand, nämlich dem logisch hohen oder dem logisch niedrigen Zustand, unterscheidet, und das Vergleichen der Ergebnisse der zweiten P/F-Tests mit den Ergebnissen der ersten P/F-Tests umfasst Bestimmen von Haltefehlern basierend auf MRAM-Zellen, die die ersten P/F-Tests bestehen und die zweiten P/F-Tests nicht bestehen. In einigen Ausführungsformen basieren das Durchführen der ersten Logikzustandsbestimmung und das Durchführen der zweiten Logikzustandsbestimmung jeweils darauf, dass ein MRAM-Zellenstromwert ein Wert aus einer ersten Menge von Stromwerten größer als der Schwellenwert oder einer zweiten Menge von Stromwerten kleiner oder gleich dem Schwellenwert ist. In einigen Ausführungsformen wird das Einstellen der Testkammer auf die Solltemperatur, das Programmieren jeder MRAM-Zelle der Teilmenge von MRAM-Zellen in den logisch hohen und den logisch niedrigen Zustand, das Messen des entsprechenden ersten beziehungsweise zweiten Stromwerts jeder MRAM-Zelle der Teilmenge von MRAM-Zellen, das Programmieren jeder MRAM-Zelle des MRAM-Arrays in den einen von zwei Zuständen, nämlich den logisch hohen oder den logisch niedrigen Zustand, das Durchführen des ersten P/F-Tests, das Ausführen der vorbestimmten Verzögerung, das Durchführen des zweiten P/F-Tests und/oder das Berechnen der Bitfehlerrate durch einen Prozessor durchgeführt.
  • Das Vorstehende umreißt Merkmale mehrerer Ausführungsformen, sodass die Fachperson die Aspekte der vorliegenden Offenbarung besser verstehen kann. Die Fachperson sollte sich darüber im Klaren sein, dass sie die vorliegende Offenbarung ohne Weiteres als Grundlage für das Entwerfen oder Abwandeln anderer Prozesse und Strukturen verwenden kann, um dieselben Zwecke auszuführen und/oder dieselben Vorteile der vorliegend vorgestellten Ausführungsformen zu erzielen. Die Fachperson sollte auch erkennen, dass derartige äquivalente Konstruktionen nicht von dem Geist und Umfang der vorliegenden Offenbarung abweichen und dass sie verschiedene Änderungen, Ersetzungen und Modifikationen hieran vornehmen kann, ohne von dem Geist und Umfang der vorliegenden Offenbarung abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 63/031185 [0001]
    • US 9256709 [0146]
    • US 20150278429 [0146]
    • US 20140040838 [0146]
    • US 7260442 [0146]

Claims (20)

  1. Verfahren zum Testen eines nichtflüchtigen Speicherarrays (NVM-Arrays), wobei das Verfahren umfasst: Erwärmen des NVM-Arrays auf eine Solltemperatur; während das NVM-Array auf die Solltemperatur erwärmt ist: Messen einer Vielzahl von Strömen einer Teilmenge von NVM-Zellen des NVM-Arrays, wodurch eine Stromverteilung erhalten wird; Programmieren jeder NVM-Zelle des NVM-Arrays in einen von zwei Zuständen, nämlich einen logisch hohen Zustand oder einen logisch niedrigen Zustand; und Durchführen von ersten und zweiten Bestehen/Nichtbestehen-Tests (P/F-Tests) für jede NVM-Zelle des NVM-Arrays; und Berechnen einer Bitfehlerrate basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests.
  2. Verfahren nach Anspruch 1, wobei das Messen der Vielzahl von Strömen der Teilmenge von NVM-Zellen umfasst: Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in einen von zwei Zuständen, nämlich den logisch hohen Zustand oder den logisch niedrigen Zustand; Messen eines ersten Stromwerts jeder NVM-Zelle der Teilmenge von NVM-Zellen nach dem Programmieren in den einen der zwei Zustände, wodurch ein erster Abschnitt der Stromverteilung erhalten wird; Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in den anderen der zwei Zustände; und Messen eines zweiten Stromwerts jeder NVM-Zelle der Teilmenge von NVM-Zellen nach dem Programmieren in den anderen der zwei Zustände, wodurch ein zweiter Abschnitt der Stromverteilung erhalten wird.
  3. Verfahren nach Anspruch 2, wobei das Berechnen der Bitfehlerrate Anpassen einer anfänglichen Fehlerbestimmung basierend auf einer Überlappung des ersten Abschnitts und des zweiten Abschnitts der Stromverteilung umfasst.
  4. Verfahren nach einem der vorangehenden Ansprüche, ferner umfassend: während das NVM-Array auf die Solltemperatur erwärmt ist, Messen von Fehlerströmen von NVM-Zellen, die den zweiten P/F-Test nicht bestanden haben.
  5. Verfahren nach einem der vorangehenden Ansprüche, wobei das Durchführen der ersten und zweiten P/F-Tests umfasst: Durchführen der ersten P/F-Tests durch Verwenden eines Erfassungsverstärkers des NVM-Arrays, um für jede NVM-Zelle des NVM-Arrays basierend auf einem ersten NVM-Zellenstromwert und einem Schwellenwert eine erste Logikzustandsbestimmung durchzuführen; nach dem Durchführen der ersten P/F-Tests, Ausführen einer Verzögerung; und, nach dem Ausführen der Verzögerung, Durchführen der zweiten P/F-Tests durch Verwenden des Erfassungsverstärkers, um für jede NVM-Zelle des NVM-Arrays basierend auf einem zweiten NVM-Zellenstromwert und dem Schwellenwert eine zweite Logikzustandsbestimmung durchzuführen;
  6. Verfahren nach einem der vorangehenden Ansprüche, wobei das Berechnen der Bitfehlerrate Vergleichen von Ergebnissen der zweiten P/F-Tests mit Ergebnissen der ersten P/F-Tests umfasst.
  7. Verfahren nach Anspruch 6, wobei das Durchführen der ersten P/F-Tests Speichern einer Adresse jeder NVM-Zelle des NVM-Arrays umfasst, die die ersten P/F-Tests nicht bestanden hat, und das Vergleichen der Ergebnisse der zweiten P/F-Tests mit den Ergebnissen der ersten P/F-Tests auf den gespeicherten Adressen basiert.
  8. Verfahren nach einem der vorangehenden Ansprüche, wobei das Programmieren jeder NVM-Zelle des NVM-Arrays in den einen der zwei Zustände Ändern einer magnetischen Ausrichtung einer magnetischen Schicht einer MRAM-Zelle umfasst.
  9. Verfahren nach einem der vorangehenden Ansprüche, ferner umfassend Durchführen einer Herstellungstätigkeit basierend auf der Bitfehlerratenberechnung.
  10. Nichtflüchtiges Speicherarray-Testsystem (NVM-Array-Testsystem), umfassend: eine Testkammer; eine Testvorrichtung; einen Prozessor; und ein nichttransitorisches computerlesbares Speichermedium, das Computerprogrammcode für ein oder mehrere Programme umfasst, wobei das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert sind, zusammen mit dem Prozessor das System dazu zu veranlassen: die Testkammer auf eine Solltemperatur einzustellen, wobei die Testkammer das NVM-Array enthält; während die Testkammer auf die Solltemperatur eingestellt ist: die Testvorrichtung dazu zu verwenden, um eine Vielzahl von Strömen einer Teilmenge von NVM-Zellen des NVM-Arrays zu messen, wodurch eine Stromverteilung erhalten wird; jede NVM-Zelle des NVM-Arrays in einen von zwei Zuständen, nämlich einen logisch hohen Zustand oder einen logisch niedrigen Zustand, zu programmieren; und unmittelbar nach dem Programmieren jeder NVM-Zelle einen ersten Bestehen/Nichtbestehen-Test (P/F-Test) an jeder NVM-Zelle des NVM-Arrays durchzuführen; und nach Ausführen einer Verzögerung einen zweiten P/F-Test an jeder NVM-Zelle des NVM-Arrays durchzuführen; und basierend auf der Stromverteilung und den ersten und zweiten P/F-Tests eine Bitfehlerrate zu berechnen.
  11. NVM-Array-Testsystem nach Anspruch 10, wobei das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert sind, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, die Stromverteilung zu erhalten durch: Programmieren jeder NVM-Zelle der Teilmenge von NVM-Zellen in den logisch hohen und den logisch niedrigen Zustand; und nach dem Programmieren in den logisch hohen beziehungsweise den logisch niedrigen Zustand, Messen eines entsprechenden ersten beziehungsweise zweiten Stromwerts für jede NVM-Zelle der Teilmenge von NVM-Zellen, wodurch ein entsprechender erster beziehungsweise zweiter Abschnitt der Stromverteilung erhalten wird.
  12. NVM-Array-Testsystem nach Anspruch 11, wobei das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert sind, zusammen mit dem Prozessor das System ferner dazu zu veranlassen: während die Testkammer auf die Solltemperatur eingestellt ist, die Testvorrichtung dazu zu verwenden, einen Ausfallstrom jeder NVM-Zelle des NVM-Arrays zu messen, die den zweiten P/F-Test nicht bestanden hat.
  13. NVM-Array-Testsystem nach einem der Ansprüche 10 bis 12, wobei einem Nichtbestehen der ersten oder der zweiten P/F-Tests entspricht, dass ein NVM-Zellenstromwert ein Wert aus einer ersten Menge von Stromwerten größer als ein Schwellenwert oder einer zweiten Menge von Stromwerten kleiner oder gleich dem Schwellenwert ist.
  14. NVM-Array-Testsystem nach einem der Ansprüche 10 bis 13, wobei das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert sind, zusammen mit dem Prozessor das System ferner dazu zu veranlassen, die Bitfehlerrate zu berechnen durch: Speichern von Adressen von NVM-Zellen, die den ersten P/F-Test nicht bestanden haben, Erzeugen einer anfänglichen Bitfehlerrate basierend auf NVM-Zellen, die den ersten P/F-Test bestanden haben und den zweiten P/F-Test nicht bestanden haben, und Anpassen der anfänglichen Bitfehlerrate basierend auf der Stromverteilung.
  15. NVM-Array-Testsystem nach einem der Ansprüche 10 bis 14, wobei das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert sind, zusammen mit dem Prozessor das System ferner dazu zu veranlassen: einen Erfassungsverstärker des NVM-Arrays dazu zu verwenden, um an jeder NVM-Zelle des NVM-Arrays den ersten P/F-Test und den zweiten P/F-Test durchzuführen.
  16. NVM-Array-Testsystem nach einem der Ansprüche 10 bis 15, wobei das nichttransitorische computerlesbare Speichermedium und der Computerprogrammcode dazu konfiguriert sind, zusammen mit dem Prozessor das System ferner dazu zu veranlassen: basierend auf der berechneten Bitfehlerrate NVM-Array-Statusinformationen auf dem nichttransitorischen computerlesbaren Speichermedium oder einer anderen Speichervorrichtung zu speichern.
  17. Verfahren zum Testen eines magnetoresistiven Direktzugriffsspeicherarrays (MRAM-Arrays), wobei das Verfahren umfasst: Einstellen einer Testkammer auf eine Solltemperatur, wobei die Testkammer einen Wafer enthält, der das MRAM-Array umfasst; während die Testkammer auf die Solltemperatur eingestellt ist: Programmieren jeder MRAM-Zelle einer Teilmenge von MRAM-Zellen in einen logisch hohen Zustand und einen logisch niedrigen Zustand; nach dem Programmieren jeder der MRAM-Zellen der Teilmenge von MRAM-Zellen in den logisch hohen beziehungsweise den logisch niedrigen Zustand, Messen eines entsprechenden ersten beziehungsweise zweiten Stromwerts für jede MRAM-Zelle der Teilmenge von MRAM-Zellen, wodurch ein entsprechender erster beziehungsweise zweiter Abschnitt einer Stromverteilung erhalten wird; Programmieren jeder MRAM-Zelle des MRAM-Arrays in einen von zwei Zuständen, nämlich den logisch hohen oder den logisch niedrigen Zustand; Durchführen von ersten Bestehen/Nichtbestehen-Tests (P/F-Tests) durch Verwenden eines Erfassungsverstärkers des MRAM-Arrays, um für jede MRAM-Zelle des MRAM-Arrays basierend auf einem ersten MRAM-Zellenstromwert und einem Schwellenwert eine erste Logikzustandsbestimmung durchzuführen; nach dem Durchführen der ersten P/F-Tests, Ausführen einer vorbestimmten Verzögerung; und, nach dem Ausführen der vorbestimmten Verzögerung, Durchführen von zweiten P/F-Tests durch Verwenden des Erfassungsverstärkers, um für jede MRAM-Zelle des MRAM-Arrays basierend auf einem zweiten MRAM-Zellenstromwert und dem Schwellenwert eine zweite Logikzustandsbestimmung durchzuführen; Berechnen einer Bitfehlerrate durch Vergleichen von Ergebnissen der zweiten P/F-Tests mit Ergebnissen der ersten P/F-Tests und Anpassen der Bitfehlerrate basierend auf der Stromverteilung.
  18. Verfahren nach Anspruch 17, wobei Fehlerkriterien der ersten P/F-Tests umfassen, dass sich eine erste Logikzustandsbestimmung von dem programmierten Zustand, nämlich dem logisch hohen Zustand oder dem logisch niedrigen Zustand, unterscheidet, Fehlerkriterien der zweiten P/F-Tests umfassen, dass sich eine zweite Logikzustandsbestimmung von dem programmierten Zustand, nämlich dem logisch hohen oder dem logisch niedrigen Zustand, unterscheidet, und das Vergleichen der Ergebnisse der zweiten P/F-Tests mit den Ergebnissen der ersten P/F-Tests Bestimmen von Haltefehlern basierend auf MRAM-Zellen umfasst, die die ersten P/F-Tests bestehen und die zweiten P/F-Tests nicht bestehen.
  19. Verfahren nach Anspruch 17 oder 18, wobei das Durchführen der ersten Logikzustandsbestimmung und das Durchführen der zweiten Logikzustandsbestimmung jeweils darauf basieren, dass ein MRAM-Zellenstromwert ein Wert aus einer ersten Menge von Stromwerten größer als der Schwellenwert oder einer zweiten Menge von Stromwerten kleiner oder gleich dem Schwellenwert ist.
  20. Verfahren nach einem der Ansprüche 17 bis 19, wobei das Einstellen der Testkammer auf die Solltemperatur, das Programmieren jeder MRAM-Zelle der Teilmenge von MRAM-Zellen in den logisch hohen und den logisch niedrigen Zustand, das Messen des entsprechenden ersten beziehungsweise zweiten Stromwerts jeder MRAM-Zelle der Teilmenge von MRAM-Zellen, das Programmieren jeder MRAM-Zelle des MRAM-Arrays in den einen von zwei Zuständen, nämlich den logisch hohen oder den logisch niedrigen Zustand, das Durchführen des ersten P/F-Tests, das Ausführen der vorbestimmten Verzögerung, das Durchführen des zweiten P/F-Tests und/oder das Berechnen der Bitfehlerrate durch einen Prozessor durchgeführt wird.
DE102021103853.7A 2020-05-28 2021-02-18 Speicherarray-testverfahren und -system Pending DE102021103853A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202063031185P 2020-05-28 2020-05-28
US63/031,185 2020-05-28
US17/175,027 US11450399B2 (en) 2020-05-28 2021-02-12 Memory array test method and system
US17/175,027 2021-02-12

Publications (1)

Publication Number Publication Date
DE102021103853A1 true DE102021103853A1 (de) 2021-12-02

Family

ID=77574847

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021103853.7A Pending DE102021103853A1 (de) 2020-05-28 2021-02-18 Speicherarray-testverfahren und -system

Country Status (5)

Country Link
US (2) US11715546B2 (de)
KR (1) KR102521867B1 (de)
CN (1) CN113380312B (de)
DE (1) DE102021103853A1 (de)
TW (1) TWI760207B (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114490200A (zh) * 2021-12-17 2022-05-13 宁畅信息产业(北京)有限公司 内存测试方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7260442B2 (en) 2004-03-03 2007-08-21 Taiwan Semiconductor Manufacturing Co., Ltd. Method and system for mask fabrication process control
US20140040838A1 (en) 2012-08-01 2014-02-06 Taiwan Semiconductor Manufacturing Company, Ltd. Methods For Making A Mask For An Integrated Circuit Design
US20150278429A1 (en) 2014-04-01 2015-10-01 Taiwan Semiconductor Manufacturing Company, Ltd. System and Method for Integrated Circuit Manufacturing
US9256709B2 (en) 2014-02-13 2016-02-09 Taiwan Semiconductor Manufacturing Company, Ltd. Method for integrated circuit mask patterning

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812572A (en) * 1996-07-01 1998-09-22 Pacific Fiberoptics, Inc. Intelligent fiberoptic transmitters and methods of operating and manufacturing the same
JP3888631B2 (ja) * 2000-11-02 2007-03-07 株式会社ルネサステクノロジ 半導体メモリおよび半導体メモリの検査方法並びに製造方法
US6744651B2 (en) 2002-09-20 2004-06-01 Taiwan Semiconductor Manufacturing Company Local thermal enhancement of magnetic memory cell during programming
JP4229715B2 (ja) * 2003-01-29 2009-02-25 Necエレクトロニクス株式会社 テスト回路及び半導体装置
JP4237109B2 (ja) * 2004-06-18 2009-03-11 エルピーダメモリ株式会社 半導体記憶装置及びリフレッシュ周期制御方法
US8078918B2 (en) * 2008-02-07 2011-12-13 Siliconsystems, Inc. Solid state storage subsystem that maintains and provides access to data reflective of a failure risk
US8027187B2 (en) * 2008-09-12 2011-09-27 Micron Technology, Inc. Memory sensing devices, methods, and systems
US7929368B2 (en) * 2008-12-30 2011-04-19 Micron Technology, Inc. Variable memory refresh devices and methods
US8645776B2 (en) * 2010-03-24 2014-02-04 Apple Inc. Run-time testing of memory locations in a non-volatile memory
US8954824B2 (en) * 2012-02-28 2015-02-10 Micron Technology, Inc. Error detection or correction of stored signals after one or more heat events in one or more memory devices
US9355024B2 (en) * 2012-10-10 2016-05-31 Apple Inc. Systems and methods for nonvolatile memory performance throttling
US9164832B2 (en) * 2013-02-27 2015-10-20 Seagate Technology Llc ECC management for variable resistance memory cells
US9224478B2 (en) 2013-03-06 2015-12-29 Freescale Semiconductor, Inc. Temperature-based adaptive erase or program parallelism
US9368232B2 (en) * 2013-03-07 2016-06-14 Qualcomm Incorporated Magnetic automatic test equipment (ATE) memory tester device and method employing temperature control
US8908445B2 (en) * 2013-03-15 2014-12-09 Freescale Semiconductor, Inc. Non-volatile memory (NVM) with block-size-aware program/erase
US9032264B2 (en) * 2013-03-21 2015-05-12 Kabushiki Kaisha Toshiba Test method for nonvolatile memory
US8995200B1 (en) * 2013-09-23 2015-03-31 Freescale Semiconductor, Inc. Non-volatile memory (NVM) with dynamically adjusted reference current
WO2015094242A1 (en) 2013-12-18 2015-06-25 Hewlett-Packard Development Company, L.P. Non-volatile memory element with thermal-assisted switching control
US9159455B2 (en) * 2013-12-21 2015-10-13 Qualcomm Incorporated Data retention error detection system
US9991001B2 (en) * 2014-05-22 2018-06-05 Cypress Semiconductor Corporation Methods, circuits, devices and systems for sensing an NVM cell
US9478315B2 (en) * 2014-06-03 2016-10-25 Sandisk Technologies Llc Bit error rate mapping in a memory system
US9653184B2 (en) * 2014-06-16 2017-05-16 Sandisk Technologies Llc Non-volatile memory module with physical-to-physical address remapping
US9613715B2 (en) * 2014-06-16 2017-04-04 Sandisk Technologies Llc Low-test memory stack for non-volatile storage
US9455038B2 (en) * 2014-08-20 2016-09-27 Sandisk Technologies Llc Storage module and method for using healing effects of a quarantine process
US9275741B1 (en) * 2014-09-10 2016-03-01 Western Digital Technologies, Inc. Temperature compensation management in solid-state memory
US10564900B2 (en) * 2016-03-04 2020-02-18 Western Digital Technologies, Inc. Temperature variation compensation
US10254982B2 (en) 2016-11-10 2019-04-09 Western Digital Technologies, Inc. System and methodology for low latency error management within a shared non-volatile memory architecture
US10216571B2 (en) * 2016-11-10 2019-02-26 Western Digital Technologies, Inc. System and methodology for error management within a shared non-volatile memory architecture using bloom filters
US10482983B2 (en) * 2016-12-22 2019-11-19 Seagate Technology Llc Read disturb detection based on dynamic bit error rate estimation
US10014465B1 (en) 2017-04-03 2018-07-03 Headway Technologies, Inc. Maintaining coercive field after high temperature anneal for magnetic device applications with perpendicular magnetic anisotropy
US10665321B2 (en) 2017-08-30 2020-05-26 Taiwan Semiconductor Manufacturing Co., Ltd. Method for testing MRAM device and test apparatus thereof
US10489086B1 (en) * 2018-05-02 2019-11-26 International Business Machines Corporation Reducing read errors by performing mitigation reads to blocks of non-volatile memory
IT201800005084A1 (it) * 2018-05-04 2019-11-04 Dispositivo di memoria non volatile, in particolare a cambiamento di fase e relativo metodo di lettura
US10839886B2 (en) * 2018-06-11 2020-11-17 Western Digital Technologies, Inc. Method and apparatus for adaptive data retention management in non-volatile memory
US10847245B2 (en) 2018-08-24 2020-11-24 Intel Corporation Failure indicator predictor (FIP)
CN111199767B (zh) * 2018-11-16 2022-08-16 力旺电子股份有限公司 非易失性存储器良率提升的设计及测试方法
US10956064B2 (en) 2019-06-28 2021-03-23 Seagate Technology Llc Adjusting code rates to mitigate cross-temperature effects in a non-volatile memory (NVM)
US11017850B2 (en) * 2019-08-22 2021-05-25 Seagate Technology Llc Master set of read voltages for a non-volatile memory (NVM) to mitigate cross-temperature effects

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7260442B2 (en) 2004-03-03 2007-08-21 Taiwan Semiconductor Manufacturing Co., Ltd. Method and system for mask fabrication process control
US20140040838A1 (en) 2012-08-01 2014-02-06 Taiwan Semiconductor Manufacturing Company, Ltd. Methods For Making A Mask For An Integrated Circuit Design
US9256709B2 (en) 2014-02-13 2016-02-09 Taiwan Semiconductor Manufacturing Company, Ltd. Method for integrated circuit mask patterning
US20150278429A1 (en) 2014-04-01 2015-10-01 Taiwan Semiconductor Manufacturing Company, Ltd. System and Method for Integrated Circuit Manufacturing

Also Published As

Publication number Publication date
CN113380312B (zh) 2023-09-22
CN113380312A (zh) 2021-09-10
US20220383974A1 (en) 2022-12-01
US20230377670A1 (en) 2023-11-23
KR102521867B1 (ko) 2023-04-13
US11715546B2 (en) 2023-08-01
TWI760207B (zh) 2022-04-01
TW202145244A (zh) 2021-12-01
KR20210148886A (ko) 2021-12-08

Similar Documents

Publication Publication Date Title
DE102019101570B4 (de) Layout, struktur, system und verfahren eines integrierten schaltkreises
DE102019120605B4 (de) Speicherschaltung und verfahren zu deren herstellung
US20210383052A1 (en) Method of certifying safety levels of semiconductor memories in integrated circuits
DE102020100119B4 (de) Halbleiter-bauelement mit antifuse-zelle
DE102021103853A1 (de) Speicherarray-testverfahren und -system
DE102021111423B4 (de) Halbleitervorrichtung und Verfahren zu ihrer Herstellung
DE102020115617B4 (de) Halbleitervorrichtung, integrierte Schaltung und darauf basierendes System
DE102020132547A1 (de) Speichervorrichtung, ic-bauteil und verfahren
DE102023100725A1 (de) Ic-logikbauteil, layout, system und verfahren
DE102021119369B4 (de) Pegelverschiebungsschaltkreis und verfahren
CN110853693B (zh) 电路、确定电熔丝的状态的方法和集成电路结构
DE102021109749A1 (de) Schmelzbare strukturen und verfahren zu deren herstellung
DE102020125643A1 (de) Multi-gated-e/a-system, halbleitervorrichtung und verfahren zum erzeugen von gatingsignalen für diese
DE102020132752A1 (de) Speichervorrichtung mit verbessertem antifuse-lesestrom
US11450399B2 (en) Memory array test method and system
DE102021100627A1 (de) Integrierte schaltungsvorrichtung und verfahren
DE102021106752B4 (de) Speichervorichtung, integrierte schaltungsvorrichtung und verfahren
DE102019101615A1 (de) Ausfallsichere Schaltung, Layout, Vorrichtung und Verfahren
DE102019114436A1 (de) Efuse-schaltung, verfahren, aufbau und struktur
DE102021109463B4 (de) Halbleiterbauelement und verfahren
DE102022105252A1 (de) Verfahren differenzierter thermischer Drosselung von Speichern und System dafür
DE102023111399A1 (de) Integrierter schaltkreis mit einem latch, das transistoren mit verschiedenen gatebreiten aufweist
DE102021107795A1 (de) Speichermakro mit silizium-durchkontaktierung
US20240071442A1 (en) Memory device and manufacturing method and test method of the same
DE102021120345A1 (de) Verfahren zur prüfung einer integrierten schaltung und eines testsystems

Legal Events

Date Code Title Description
R012 Request for examination validly filed