DE10334801B3 - Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung - Google Patents

Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung Download PDF

Info

Publication number
DE10334801B3
DE10334801B3 DE10334801A DE10334801A DE10334801B3 DE 10334801 B3 DE10334801 B3 DE 10334801B3 DE 10334801 A DE10334801 A DE 10334801A DE 10334801 A DE10334801 A DE 10334801A DE 10334801 B3 DE10334801 B3 DE 10334801B3
Authority
DE
Germany
Prior art keywords
test
semiconductor
program code
semiconductor circuit
bist controller
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.)
Expired - Fee Related
Application number
DE10334801A
Other languages
English (en)
Inventor
Martin Dr. Perner
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.)
Polaris Innovations Ltd
Original Assignee
Infineon Technologies AG
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
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10334801A priority Critical patent/DE10334801B3/de
Priority to CNB200410055952XA priority patent/CN100361231C/zh
Priority to US10/902,105 priority patent/US7249301B2/en
Application granted granted Critical
Publication of DE10334801B3 publication Critical patent/DE10334801B3/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • 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/14Implementation of control logic, e.g. test mode decoders
    • G11C29/16Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • 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/0407Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals on power on
    • 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
    • G11C2029/1208Error catch memory
    • 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
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

Die vorliegende Erfindung betrifft eine Halbleiterschaltung (1) und ein Verfahren zum Testen, Überwachen und applikationsnahen Einstellen der Halbleiterschaltung (1), wobei die Halbleiterschaltung (1) ein Standard-Interface (6) zum externen Daten-, Adreß- und/oder Kommandoaustausch im Normalbetrieb und ein weiteres für einen Testbetrieb vorgesehenes Test-Interface (7) aufweist, mit einem Halbleiterbauelement (2) und mit einer dem Halbleiterbauelement (2) zugeordneten BIST-Einheit (4) (buil-in self-test), aufweisend einen BIST-Controller (11) zum Initialisieren, Testen und applikationsnahen Einstellen des Halbleiterbauelementes (2), einen nur lesbaren nichtflüchtigen Speicher (9), in dem ein Standard-Programmcode zur Konfiguration und zum Testen des Halbleiterbauelementes, Standard-Test- und Standard-Boot-Parameter abgelegt sind, einen programmierbaren nichtflüchtigen Speicher (10), in dem zumindest ein Programmcode zur Konfiguration und zum Testen des Halbleiterbauelementes (2), Funktionstests, Betriebs-Parameter, Test- und Boot-Parameter abgelegt sind, und einen dem BIST-Controller zugeordneten flüchtigen Speicher (17), in den beim Booten der Standard- oder der zumindest eine Programmcode zur Ausführung ladbar ist, wobei der BIST-Controller (11) beim Booten eine Konfiguration vornimmt und im anschließenden Normalbetrieb durch Ausführung von Funktionstests ein optionales Testen des Halbleiterbauelementes (2) vornimmt und die beim Testen ermittelten Daten als Betriebs-, ...

Description

  • Die vorliegende Erfindung betrifft eine Halbleiterschaltung mit einem Halbleiterbauelement und mit einer dem Halbleiterbauelement zugeordneten BIST-Einheit sowie ein Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung.
  • Integrierte Halbleiterschaltungen mit Halbleiterbauelementen, wie beispielsweise DRAMs (Dynamic Random Access Memories) werden im Herstellungsprozeß im allgemeinen umfangreichen Funktionstests unterzogen. Unter anderem dienen diese Funktionstest dazu, fehlerhafte Speicherzellen bzw. fehlerhafte Spaltenleitungen oder Reihenleitungen oder allgemein fehlerhafte Schaltungsteile des Halbleiterbauelementes zu identifizieren. Um einen fehlerfreien Betrieb des Speicherbausteins zu garantieren, werden die Halbleiterbauelemente unter verschiedenen Betriebsbedingungen getestet, wobei beispielsweise vorgegebene Datenwerte in Speicherzellen eines Speicherzellenfeldes eingeschrieben und anschließend wieder ausgelesen werden, um mit den vorgegebenen Datenwerten verglichen zu werden.
  • Integrierte Halbleiterschaltungen besitzen häufig eine integrierte Schalteinheit, die bei Inbetriebnahme der Halbleiterschaltung automatisch einen Funktionstest des integrierten Halbleiterbauelementes durchführt. Eine solche Schalteinheit wird entsprechend ihrer Funktion als BIST (Build-In Self-Test)-Einheit bezeichnet, da ein Microprozessor, in den diese Schalteinheit integriert ist, automtisch einen Selbsttest seines eigenen Halbleiterbauelementes durchführt, wenn er in Betrieb genommen, d.h. mit Strom versorgt wird: Die BIST-Einheit weist einen BIST-Controller auf, der als Schaltbereich in der Halbleiterschaltung als ASIC (Application Specific In tegrated Circuit) integriert ist. Vom BIST-Controller abgegebene Befehle werden an das Halbleiterbauelement weitergeleitet, wobei der BIST-Controller die Ausführung der Befehle überwacht und auswertet. Die vom Halbleiterbauelement übermittelten Daten bezüglich seiner Betriebszustände werden beispielsweise von externen Testsystemen zu Testergebnissen verarbeitet, anhand derer eine Aussage darüber getroffen werden kann, ob und gegebenenfalls welche Speicherbereiche nicht wie vorgesehen funktionieren.
  • Der BIST-Controller zum Testen von Halbleiterbauelementen, insbesondere von dynamischen Halbleiterspeichern, ist so konzipiert, daß das Zellenfeld timingkritisch adressiert werden kann und binäre als Spannungswerte codierte Potential-Datentopologien in den Halbleiterspeicher in geeigneter Schreib-/Lese-Reihenfolge adreßabhängig geschrieben und ausgelesen werden können. Dabei werden bei jedem Lesevorgang die elektrisch detektierten und binär dargestellten Informationen mit den logisch ermittelten Erwartungswerten verglichen. Wird nach einer Reihe von positiv bewerteten Schreib-/Lese-Zugriffen während des Testablaufs keine Fehlspeicherung entdeckt, wird das Halbleiterbauelement als "Pass" eingestuft, andernfalls als "Fail" betrachtet.
  • Die. Halbleiterschaltung kann weiterhin zum Testen an ein externes Testgerät angeschlossen werden, wobei das Testgerät die zum Testen des Halbleiterbauelementes erforderlichen Testbefehle, nämlich Steuerbefehle, Adreßbefehle und zu speichernde Datenwerte sowie das erforderliche Taktsignal selbst erzeugt und die Befehle über ein Standard-Interface des Halbleiterbauelementes absetzt bzw. die Testergebnisse ausliest.
  • Sogenannte Testmodi, die Funktionstests beinhalten, können den Zugang zu bausteinrelevanten Parametern oder Einstellungen ermöglichen und mit Hilfe des BIST-Controllers oder über das Standard-Interface der Halbleiterschaltung durch eine nur vom Hersteller bekannte Aktivierung aufgerufen und einge stellt werden. wie der BIST-Controller sind auch die Testmodi als ASIC in der Halbleiterschaltung implementiert und somit nicht flexibel einstellbar. Somit schlägt sich der Platz, der für diese Art von ASICs zu Testzwecken investiert werden muß, auf die Kosten bei der Herstellung der Halbleiterschaltung nieder.
  • Um ein aussagekräftiges Testergebnis zu erhalten, ist es wichtig, daß das Halbleiterbauelement auch bei einer Betriebsfrequenz, die es im Normalbetrieb aufweist, getestet wird. Es ist jedoch nicht möglich, eine charakteristische Betriebsweise der Applikation mit der Betriebsweise des Funktionstests direkt zu vergleichen, um feststellen zu können, ob die integrierte Schaltung applikationsnah getestet wurde. Es kann somit keine Aussage darüber getroffen werden, daß die im Herstellungsprozeß getestete Schaltung alle in der späteren Applikation auftretenden Betriebsmodi durchlaufen hat, da oftmals viele Probleme erst im Feldeinsatz aufgedeckt werden und daher erst nach der Entwicklungsphase nachträglich korrigiert werden.
  • BIST-Einheiten, zum Testen von Microprozessoren bzw. zur Überwachung der Funktionalität und zum Testen von Halbleiterschaltungen und Detektion von Fehlfunktionen sind bereits in der US 6,374,370 B1 bzw. in der WO 02/08904 A2, US 6,330,681 B1 und US 6,321,320 beschrieben.
  • In der DE 100 34 878 A1 ist ein Verfahren beschrieben, bei dem Testinhalte codiert in Form von Fuses oder anderen nichtflüchtigen Speichern auf dem Halbleiterbauelement abgespeichert werden, um sie für spätere Auswertungen bei Reparatur- bzw. Degradationsuntersuchungen bausteinindividuell bereitzuhalten.
  • Ein Verfahren zum Abspeichern der mit der BIST-Einheit erhaltenen Testergebnisse in der Halbleiterschaltung selbst ist in der DE 198 31 572 A1 offenbart.
  • Nachteilig bei den bisherigen Testkonzepten ist insbesondere, daß die BIST-Einheit nur während des Testens in der Fertigung Verwendung findet. Während des Betriebs der Halbleiterschaltung gesammelte Betriebsparameter können vom Hersteller nur für den Fall analysiert werden, daß ein eine defekte Halbleiterschaltung aufweisendes Speichermodul zum Hersteller zurückgesandt wird. Somit sind eventuell einprogrammierte Kenndaten, wie beispielsweise Chips-ID, Testdaten oder Einstellparameter nur für eine historische Nachverfolgung der Fertigung nicht aber für benutzerspezifische Einstellung während des Betriebs verwendbar.
  • Aus der US 6,347,056 ist ein solches Halbleiterbauelement mit BIST-Einheit bekannt, das jedoch keinen, im nur lesbaren nichtflüchtigen Speicher angeordneten Standard-Programmcode besitzt.
  • Die Aufgabe der vorliegenden Erfindung ist es, die Halbleiterschaltung dergestalt weiter zu entwickeln, daß diese so wohl in einem Bootmodus getestet und konfiguriert als auch während des Normalbetriebs applikationsnah getestet, analysiert und eingestellt werden kann.
  • Weiterhin ist es die Aufgabe der vorliegenden Erfindung, ein entsprechendes Verfahren zum Testen, Überwachen und applikationsnahen Einstellen der Halbleiterschaltung zur Verfügung zu stellen.
  • Die Aufgabe wird gelöst durch eine Halbleiterschaltung gemäß Patentanspruch 1 und durch ein Verfahren zum Testen, Überwachen und applikationsnahen Einstellen der Halbleiterschaltung gemäß Patentanspruch 12.
  • Die Halbleiterschaltung, die ein Standard-Interface zum externen Daten-, Adreß- und/oder Kommandoaustausch im Normalbetrieb und ein weiteres für einen Testbetrieb vorgesehenes Test-Interface aufweist, weist neben einem Halbleiterbauelement eine dem Halbleiterbauelement zugeordnete BIST-Einheit auf, die zur Konfiguration und zum Testen des Halbleiterbauelementes vorgesehen ist. Die BIST-Einheit weist einen Con troller auf, der die Konfigurations- und Testabläufe steuert. Erfindungsgemäß ist ein der BIST-Einheit zugeordneter nur lesbarer nichtflüchtiger Speicher vorgesehen, aus dem ein Standard-Programmcode zur Konfiguration und zum Testen des Halbleiterbauelementes, Standard-Test- und Standard-Boot-Parameter abgerufen werden können. Weiterhin ist ein programmierbarer nichtflüchtiger Speicher vorgesehen, in dem ein Programmcode zur Konfiguration und zum Testen des Halbleiterbauelementes während des Normalbetriebs, Funktionstest, Betriebs-, Test- und Boot-Parameter abgespeichert sind. In einem dem BIST-Controller zugeordneten flüchtigen Speicher, beispielsweise einem RAM, werden beim Booten der Halbleiterschaltung entweder der Standard-Programmcode oder der im programmierbaren nichtflüchtig Speicher abgelegte zumindest eine Programmcode zur Ausführung geladen. Die in programmierbaren nichtflüchtigen Speicher abgelegten Programmcodes weisen zu Test-, Monitor- oder Bootzwecken angepaßte, variabel gestatete Testsequenzen auf.
  • Die BIST-Einheit ist hierbei derart ausgelegt, daß der BIST-Controller beim Booten der Halbleiterschaltung eine Betriebsart des Halbleiterbauelementes einstellt, d.h. ein Testen und eine Konfiguration vornimmt, und optional, falls im Programmcode vorgesehen, im anschließenden Normalbetrieb durch Ausführung von Funktionstests das Halbleiterbauelement testet.
  • Während dieses Testbetriebs sind in vorteilhafter Weise im programmierbaren nichtflüchtigen Speicher abgelegte Funktionstests oder weitere in Testeinheiten abgelegte Funktionstests, die als Bestandteil der Halbleiterschaltung als ASIC implementiert sind, abrufbar und ausführbar. Die im Testbetrieb ermittelten Daten werden von dem BIST-Controller verarbeitet und als Betriebs-, Test- und/oder Boot-Parameter im programmierbaren nichtflüchtigen Speicher abgelegt. Ebenso besteht die Möglichkeit, diese verarbeiteten Parameter über das Standard-Interface und/oder das weitere für den Testbetrieb vorgesehene Test-Interface nach extern auszugeben.
  • Wird eine Halbleiterschaltung in Betrieb genommen, werden beim Bootvorgang über vielfältige Testprozeduren bausteininterne elektrische Parameter, wie beispielsweise Spannungen oder Timings zur Generierung eines Betriebszustands der Halbleiterschaltung bzw. zur Generierung eines definierten Startzustands, eingestellt. Zur Einstellung der Zustände werden normalerweise nur die im lesbaren nichtflüchtigen Speicher abgelegten Parameter verwendet. Fehlfunktionen bzw. Abweichungen der im Normalbetrieb des Halbleiterbauelementes vorgesehenen Spezifikationsbereiche bedingen eine gegenüber der ursprünglich vorgenommenen Einstellung in der Fertigung abweichende Einstellung des Halbleiterbauelementes zur Erzielung eines korrekten Betriebszustands. Besonders vorteilhaft ist es hierbei, daß die BIST-Einheit die im Testbetrieb ermittelten Daten dergestalt verarbeitet, daß sie als Boot-Parameter oder Test-Parameter beim nächsten Hochfahren der Halbleiterschaltung zu Test- und Konfigurationszwecken in einer Boot-Sequenz eines geladenen Programmcodes verarbeitet werden bzw. als Test-Parameter im Normalbetrieb bei der Ausführung von Funktionstests verwendet werden, um firmenspezifische Einstellungen des Halbleiterbauelementes zu ermöglichen.
  • Damit die BIST-Einheit in vorteilhafter Weise dergestalt steuerbar ist, daß entweder der Standard-Programmcode oder der Programmcode in das RAM zur Ausführung geladen werden, sind im programmierbaren nichtflüchtigen Speicher Flags zur Steuerung des BIST-Controllers abgelegt, die anzeigen, ob der BIST-Controller gestartet werden soll oder nicht und die auf den zu ladenden Programmcode verweisen.
  • Wird ein Programmcode aus dem programmierbaren nichtflüchtigen Speicher geladen und ausgeführt, weist dieser zumindest eine Bootup-Sequenz auf, die ein Testen und Einstellen des Halbleiterbauelementes mittels dieser Sequenz zugeordneter Boot-Parameter durchführt. Beinhaltet der Programmcode weitere Bootup-Sequenzen, zeigen im nichtflüchtigen programmierbaren Speicher vorgesehene weitere Flags an, welche Bootup-Sequenz abzuarbeiten ist.
  • Hierbei ist es steuerbar, daß beispielsweise der BIST-Controller alle im Programmcode implementierten Bootup-Sequenzen ausführt, bis eine erfolgreiche Konfiguration und/oder Testsequenzabarbeitung erzielt wurde oder nur diejenige Bootup-Sequenz ausführt, die eine sofortige erfolgreiche Konfiguration und/oder Testsequenzabarbeitung erzielt.
  • In einer weiteren vorteilhaften Ausführungsform werden die im Normalbetrieb durch die Funktionstests ermittelten Daten, die als Betriebs-Parameter im programmierbaren nichtflüchtigen Speicher abgelegt werden, zur Baustein- und/oder Fehleranalyse verwendet. Hierzu sind ihnen Flags zugeordnet, die beispielsweise die Betriebsfähigkeit des Halbleiterbauelementes anzeigen und/oder ein Auslesen der Parameter mittels einer Signalcode-Sequenz in Mode-Register-Set-Modus über das Standard-Interface der Halbleiterschaltung erlauben.
  • Sämtliche Funktionstests können prinzipiell ohne den BIST-Controller von extern angesteuert oder über den BIST-Controller angesteuert und ausgeführt werden. Dabei sind insbesondere solche Testmodi bzw. Funktionstests vorgesehen, die keinen Speicherzugriff über das Standard-Interface der Halbleiterschaltung benötigen und somit die normale Funktion der Halbleiterschaltung nicht beeinträchtigen. Die durch den BIST-Controller abzuarbeitenden Befehle erzeugen bausteininterne Teststimuli über ein bausteininternes Interface. Funktionstests werden in vorteilhafter Weise so lange ausgeführt, bis der BIST-Controller einen von extern zugeführten Stopbefehl codiert, der den Funktionstest anhält oder bis der Halbleiterspeicher abgeschaltet wird.
  • Gemäß einer weiteren Ausführungsform der Erfindung ist in vorteilhafter Weise ein Befehl des Programmcodes aus einem Microcode-Befehl und einem Test-Vektor kombiniert. Der Microcode-Befehl wird zur Steuerung des BIST-Controllers und der Test-Vektor zum Absetzen eines Testbefehls über das interne Testinterface verwendet. Im Befehl selbst ist ein dem Test-Vektor zugeordnetes Flag angeordnet, welches im gesetzten Zustand, beispielsweise bei einer logischen "1", die Test-Vektor-Funktionalität, die Speicherzugriffe auf das Halbleiterbauelement zur Abfrage und zum Setzen von Betriebszuständen der Halbleiterschaltung ausführt, freischaltet.
  • Üblicherweise wird die Test-Vektor-Funktionalität für sich genommen im Standard-Programmcode, zum Testen der Halbleiterschaltung im Herstellungsprozeß, aktiviert, wobei das Absetzen von Test-Vektoren hierbei immer über das Standard-Interface erfolgt. Die Kombination des Microcode-Befehls und des Test-Vektors zu einem einzigen Befehl ermöglicht die Ausführung des Befehls ohne Beeinflussung der Halbleiterschaltung, da die im Befehl beinhaltete Test-Vektor-Funktionalität nur noch über das interne Interface und nicht mehr über das Standard-Interface ausgeführt wird. Die Abarbeitung von Microcode-Befehl und Test-Vektor erfolgt im gleichen Taktzyklus.
  • Erfindungsgemäß wird somit eine BIST-Einheit bereitgestellt, durch die es ermöglicht ist, eine flexible Konfiguration eines Halbleiterbauelementes während des Bootens vorzunehmen und im Normalbetrieb jederzeit das Halbleiterbauelement applikationsnah zu testen und einzustellen, ohne das Standard-Interface zu belasten und die Halbleiterschaltung in ihrer Funktion zu beeinträchtigen.
  • Die BIST-Einheit ist somit
    • – in der Fertigung als Test- und Konfigurationseinheit,
    • – beim Booten der Halbleiterschaltung als Initialisierungscontroller, zur Überprüfung eines fehlerfreien Bootens, wobei im Falle einer fehlgeschlagenen Konfiguration/Initialisierung verschiedene Bootup-Sequenzen mit sequenzspezifischen Bootup-Parametern als Relaxionsparametersätze verwendbar sind,
    • – im Normalbetrieb zum permanenten Überwachen der Bausteinfunktion und zum Ermitteln betriebsspezifischer Parameter,
    • – generell zum Einspielen von Funktionstests, wie Monitoringscripte, Testprogramme und Initialisierungsscripte, sowohl für die Fertigung als auch für den Betrieb und
    • – zum Abrufen von gesammelten Daten zu Analysezwecken
    einsetzbar.
  • Weitere vorteilhafte Aus- und Weiterbildungen der Erfindung sind in Unteransprüchen angegeben.
  • Die Erfindung wird im folgenden anhand der in den Zeichnungen dargestellten Figuren, die Ausführungsbeispiele der vorliegenden Erfindung darstellen, näher erläutert.
  • Es zeigen:
  • 1 eine schematische Darstellung der Funktionseinheiten einer erfindungsgemäßen Halbleiterschaltung,
  • 2 eine detailliertere schematische Darstellung der in der 1 gezeigten Halbleiterschaltung,
  • 3 ein Ablaufdiagramm eines erfindungsgemäßen Verfahrens zum Booten und anschließendem Ausführen von Funktionstests während eines Normalbetriebs,
  • 4 eine Struktur eines Befehls eines Programmcodes und
  • 5 ein beispielhafter Aufbau eines aus dem programmierbaren nichtflüchtigen Speicher geladenen Programmcodes.
  • In 1 ist eine erfindungsgemäße Halbleiterschaltung schematisch dargestellt. Die Halbleiterschaltung 1 weist ein Halbleiterbauelement 2 mit vier adressierbaren Speicherbänken 3, eine BIST-Einheit 4 sowie eine Funktionstests aufweisende Testeinheit 5 auf. Weiterhin weist die Halbleiterschaltung 1 ein kundenspezifisches Standard-Interface 6 sowie ein Testinterface 7 auf. Bei Inbetriebnahme der Halbleiterschaltung 1 sowohl in der Fertigung als auch im Normalbetrieb ist die BIST-Einheit 4, von extern über das Standard-Interface 6 oder das Testinterface 7 angesteuert, in der Lage, in der BIST-Einheit 4 abgelegte Programmcodes auszuführen und Funktionstests bzw. in der Testeinheit 5 abgelegte weitere Funktionstests anzustoßen und auszuführen, so daß eine Initialisierung bzw. Konfiguration des Halbleiterbauelementes 2 vorgenommen wird und in einem Normalbetrieb der Halbleiterschaltung 1 ein applikationsnahes Einstellen und Testen des Halbleiterbauelementes 2 ermöglicht ist.
  • Das Standard-Interface 6 dient in der Regel zum externen Daten-, Adreß- und Kommandoaustausch im Normalbetrieb zwischen einer hier nicht dargestellten Controllereinheit und der Halbleiterschaltung 1. Generell ist das Test-Interface 7 für einen Testbetrieb vorgesehen, so daß jederzeit von extern Funktionstests oder die weiteren Funktionstests der Testeinheit 5 anstoßbar sind und ermittelte Daten über das Testinterface 7 ausgebbar sind. Über ein internes Interface 8 werden Testbefehle auf die einzelnen Speicherbänke 3 des Halbleiterbauelementes 2 abgesetzt, die aus Speicherzellen Parameter abfragen bzw. Daten einlesen und/oder Betriebszustände des Halbleiterbauelementes 2 setzen.
  • In 2 ist die in der 1 dargestellte Halbleiterschaltung 1 detaillierter ausgeführt. Die BIST-Einheit 4 weist einen nur lesbaren nichtflüchtigen Speicher 9 auf, in den, beispielsweise für Test- und Konfigurationszwecke während der Fertigung der Halbleiteschaltung 1, ein Standard-Programmcode und entsprechende Standard-Boot-, Standard-Test- und/oder Betriebs-Parameter abgelegt sind. In einem programmierbaren nichtflüchtigen Speicher 10 sind zumindest ein Programmcode und Funktionstests, Boot-, Test- und Betriebs-Parameter gespeichert. Die BIST-Einheit 4 zum Konfigurieren, Testen und applikationsnahen Einstellen des Halbleiterbauelementes 2 wird von einem BIST-Controller 11 gesteuert, der über bekannte und hier nicht weiter aufgezeigte und diskutierte Funktionseinheiten wie eine ALU (Arithmetische Logische Einheit), Register, Interface-Kontrolleinheiten, Steuereinheiten etc. verfügt.
  • In dem programmierbaren nichtflüchtigen Speicher 10 sind weiterhin Flags abgelegt, die beim Booten der Halbleiterschaltung 1 vom BIST-Controller 11 abgefragt und ausgewertet werden. Ein Start-Flag 12 zeigt an, ob der BIST-Controller 11 automatisch startet oder nicht startet. Bei einem Start, d.h. beim Booten des BIST-Controllers 11, zeigt ein Programmcode-Flag 13 an, ob der im nur lesbaren nichtflüchtigen Speicher 9 abgelegte Standard-Programmcode oder der im programmierbaren nichtflüchtigen Speicher 10 abgelegte zumindest eine Programmcode in einen den BIST-Controller 11 zugeordneten flüchtigen Speicher 17 zur Ausführung geladen werden soll.
  • Wird ein Programmcode geladen, werden Bootup-Flags 14, 15, 16 abgefragt, die bestimmen, welche in dem Programmcode beinhaltete Bootup-Sequenz auszuführen ist. Der geladene Programmcode sieht optional nach dem Booten das Laden und Ausführen von Funktionstests vor, die im Normalbetrieb das Halbleiterbauelement 2 testen bzw. applikationsnahe Einstellungen vornehmen. Wahlweise können hierbei die im nichtflüchtigen programmierbaren Speicher 10 abgespeicherten Funktionstests, wie beispielsweise Monitoringscripte, Konfigurationsscripte etc., oder die weiteren in der Testeinheit 5 abgelegten Funk tionstests ausgeführt werden. Die hierbei ermittelten Testergebnisse werden vom BIST-Controller 11 ausgewertet und verarbeitet, wobei die verarbeiteten Daten als Betriebs-, Test- und/oder Boot-Parameter im programmierbaren nichtflüchtigen Speicher 10 zur weiteren Verarbeitung abgelegt werden. Eine weitere Verarbeitung bedeutet in diesem Zusammenhang beispielsweise die Verwendung der Boot-Parameter nach einem Neustart der Halbleisterschaltung 1 in einer Bootup-Sequenz, die Verwendung der Test-Parameter zum Testen und applikationsnahen Einstellen des Halbleiterbauelementes 2 während des Normalbetriebs und die Auswertung der Betriebsparameter zu Analysezwecken.
  • Jederzeit ist über das Testinterface 7 die BIST-Einheit 4 dergestalt steuerbar, daß der BIST-Controller 11 angehalten werden kann bzw. aktuelle Daten über das Standard-Interface 6 oder über das Testinterface 7 nach extern ausgegeben werden können, so daß der aktuelle Status der Halbleiterschaltung 1 abgefragt und analysiert werden kann.
  • Während des Konfigurations- und Testablaufs im Boot- und Normalbetrieb steuert der BIST-Controller 11 die Abgabe der Befehle an das Halbleiterbauelement 2 über das interne Interface 8, so daß auch bei Durchführung von Schreib- und Lesebefehlen die Halbleiterschaltung in ihrer Funktion nicht beeinträchtigt wird. Somit ermöglicht die BIST-Einheit 4 einen störungsfreien und unabhängigen Zugriff auf die Speicherbereiche des Halbleiterbauelementes 2.
  • 3 zeigt ein Ablaufdiagramm eines erfindungsgemäßen Verfahrens zum Booten und anschließenden Ausführen von Funktionstests während eines Normalbetriebs zum Testen und applikationsnahen Einstellen der Halbleiterschaltung 1. Ein Hochfahren der Halbleiterschaltung 1, durch beispielsweise Zuführung von Strom, startet auch den der BIST-Einheit 4 zugeordneten BIST-Controller 11 (310). Der BIST-Controller 11 fragt zuerst das im programmierbaren nichtflüchtigen Speicher 10 abgelegte Start-Flag 12 ab, welches beispielsweise in gesetztem Zustand ein automatisches Starten, d.h. ein Booten, des BIST-Controllers 11 anzeigt, sowie das Programm-Flag 13, welches anzeigt, ob der Standard-Programmcode aus dem nur lesbaren nichtflüchtigen Speicher 9 oder ein Programmcode aus dem programmierbaren nichtflüchtigen Speicher 10 geladen werden soll (311).
  • Mit Schritt 312 wird eine Taktfrequenz des BIST-Controllers 11 und somit die Taktrate abzuarbeitender Testvektoren festgelegt. Auch wenn die Festlegung der Taktfrequenz in diesem Ausführungsbeispiel nur beim Bootvorgang ausgeführt ist, erlaubt die BIST-Einheit 4 die Einstellung der Taktfrequenz zu jedem beliebigen Zeitpunkt, da für Testzwecke, beispielsweise beim Booten möglichst hohe Taktraten und für sporadische Abfragen von Bausteinparametern, insbesondere zur Reduzierung des Stromverbrauchs, vergleichsweise niedrige Taktraten benötigt werden.
  • Nach dem Laden des Programmcodes wird der BIST-Controller 11 von dem Programmcode gesteuert. Aufgrund der variablen Gestaltung des Programmcodes sind im Programmcode verschiedene Bootup-Sequenzen vorsehbar, wobei im Schritt 313 bestimmt wird, welche Bootup-Sequenz auszuführen ist.
  • Hierzu fragt der BIST-Controller 11 die weiteren im pogrammierbaren nichtflüchtigen Speicher 10 abgelegte Bootup-Flags 14, 15, 16 ab, die anzeigen, ob und-welche im Programmcode vorgesehenen Bootup-Sequenzen sequentiell auszuführen sind, bis eine erfolgreiche Konfiguration und/oder fehlerfreie Testsequenzabarbeitung erzielt ist. Über das Pass-Bootup-Flag 16 kann beispielsweise gesteuert werden, daß nur diejenige im Programmcode implementierte Bootup-Sequenz ausgeführt wird, die eine erfolgreiche Konfiguration und/oder fehlerfreie Testsequenzabarbeitung erzielt.
  • Bei der Abarbeitung der Bootup-Sequenzen werden jeweilige im programmierbaren nichtflüchtigen Speicher 10 abgelegte sequenzspezifische Boot-Parameter verwendet. Ein erfolgreiches Booten führt im Schritt 314 dazu, daß die Halbleiterschaltung 1 in einen Monitorbetrieb wechselt. Führt keine der Bootup-Sequenzen zu einer erfolgreichen Konfiguration, wird die Halbleiterschaltung 1 angehalten (315).
  • Im Monitormodus werden die im Programmcode vorgesehenen Funktionstests initiiert, d.h. im programmierbaren nichtflüchtigen Speicherbereich 10 abgelegte Funktionstests oder in der Testeinheit 5 abgelegte Funktionstests geladen und ausgeführt (Schritt 316). Zur applikationsnahen Einstellung bzw. zum Testen der Halbleiterschaltung 1 werden im nachfolgenden Schritt 317 die notwendigen Test-Parameter geladen.
  • Im nachfolgenden Schritt 318 wird ein geladener Funktionstest ausgeführt, wobei zuerst im Schritt 319 der Funktionstest gestartet wird und ermittelte Daten im Schritt 319 verarbeitet werden. Den ermittelten bzw. weiter verarbeiteten Daten können im Schritt 321 weitere Flags zugeordnet werden, die eine Betriebsfähigkeit des Halbleiterbauelementes anzeigen und/oder ein Auslesen der Parameter mittels einer Signalcode-Sequenz im Mode-Register-Set-Modus über die Standard-Interface 6 oder das Testinterface 7 der Halbleiterschaltung 1 erlauben.
  • Der Funktionstest wird so lange ausgeführt, bis der BIST-Controller 11 einen von extern zugeführten Stop-Befehl codiert, der den Funktionstest anhält (Schritt 322) oder bis die Halbleiterschaltung 1 abgeschaltet wird.
  • In 4 ist beispielhaft die Struktur eines Befehls eines Programmcodes dargestellt. Der Befehl weist eine Struktur auf, bei der einzelne Bits bzw. Bitgruppen eines Microcode-Befehls und eines Test-Vektors kombiniert sind. Der Microcode-Befehl, der den BIST-Controller 11 steuert, weist in Feld 181 eine Bitgruppe zur Steuerung einer ALU (Arithmetische Logische Einheit) auf, die ermittelte und/oder abgespeicherte Daten zu absoluten und relativen Mittelwerten verrechnet sowie bedingte oder unbedingte, relative und absolute Microcode-Adreßsprünge zum nächsten zu ladenden Microcode-Befehl berechnet. Mit Bits im Feld 182 sind interne Register adressierbar. weiterhin ist eine Bitgruppe im Feld 183 vorgesehen, die Lese- und Schreibaktionen zum Ablegen von berechneten Daten und/oder zum Laden von Daten, steuert. Die Bitgruppe im Feld 184 wird dazu verwendet, Test-Modi während des Ausführens des Mikrocode-Befehl-Teils abzusenden, ohne diese wie üblich unter Anlegen eines Test-Vektors abzusenden.
  • Der Test-Vektor weist im Feld 191 mehrere Bitgruppen auf, die zum Setzen von Betriebszuständen des Halbleiterbauelementes 2 eine timingkritische Schreib-Lese-Adressierung der Speicherbänke des Halbleiterbauelementes 2, bei der beispielsweise binäre als Spannungswerte codierte Daten adreßabhängig geschrieben oder gelesen werden, ausführen. Weiterhin sind im Feld 191 Bits zur Aktivierung bestimmter Funktionstests vorgesehen, die Daten in bestimmte Speicherbereiche des Halbleiterbauelementes 2 ablegen oder Daten aus bestimmten Speicherbereichen des Halbleiterbauelementes 2 abrufen.
  • Zur Ausführung des Test-Vektors weist der Befehl ein Bit im Feld 192 auf, welches die Test-Vektor-Funktionalität freischaltet. Die Kombination von Microcode-Befehl und Test-Vektor in einem Befehl erlaubt die Durchführung von Tests und Konfigurationen der Halbleiterschaltung 1 im Normalbetrieb ohne Beeinträchtigung der Funktion der Halbleiterschaltung 1, da mittels dieser Befehle nur bausteininterne Teststimuli über das interne Interface 8 abgesetzt werden und das Standardinterface nicht für Test- und Konfigurationszwecke benutzt wird.
  • Die zeitliche Abfolge der Ausführung der einzelnen Kommandos im Mikrocode-Befehl und Test-Vektor (Felder 18 und 19) sollte vorzugsweise geschickt verteilt werden, so dass Testergebnisse nach Absenden eines Test-Vektors anschließend mit einem entsprechend gewählten Mikrocode-Befehl ausgewertet und verarbeitet werden können. Üblicherweise wird ein Test-Vektor während eines Taktes ausgeführt, der Mikrocode-Befehl wird hingegen in untergeordneten Taktabschnitten (Phasen) aufgeteilt, um zu verrechnende Daten aus Registern zu holen oder aus einem zugeordneten Speicher zu laden, miteinander zu verrechnen und anschließend zurückzuschreiben oder zu speichern.
  • 5 zeigt den Aufbau eines aus dem programmierbaren nichtflüchtigen Speicher 10 geladenen Programmcodes. Der Programmcode weist Programmzeilen 50 auf, die jeweils einen Befehl aus der Kombination eines Mikrocode-Befehls und eines Test-Vektor-Befehls umfassen und sequentiell abgearbeitet werden.
  • Der Programmcode beinhaltet in Feldern 51, 52, 53 mehrere Bootup-Sequenzen, die in Abhängigkeit des Zustands abzufragender Bootup-Flags, wie vorab beschrieben, ausgeführt werden. Führt eine Bootup-Sequenz zur erfolgreichen Konfiguration und/oder fehlerfreien Testsequenzabarbeitung wird ein Sprung zu einer Adresse 100 in ein Feld 54 ausgeführt. An dieser Stelle erfolgt ein Laden von Test-Parametern aus dem programmierbaren nichtflüchtigen Speicher 10, die in einem nachfolgenden auszuführenden Testscript in Feld 55 verwendet werden. Nach Beendigung des Testscripts wird das Testscript neu gestartet und endlos ausgeführt.
  • Die vorliegende Erfiridung ermöglicht die Verwendung der BIST-Einheit als flexibles, frei programmierbares Testsystem, welches sowohl in der Fertigung insbesondere jedoch bei einem Kunden während des Normalbetriebs der Halbleiterschaltung zum Einsatz kommen kann.
  • 1
    Halbleiterschaltung
    2
    Halbleiterbauelement
    3
    Speicherbank
    4
    BIST-Einheit
    5
    Testeinheit
    6
    Standard-Interface
    7
    Test-Interface
    8
    internes Interface
    9
    lesbarer nichtflüchtiger Speicher
    10
    programmierbarer nichtflüchtiger Speicher
    11
    BIST-Controller
    12
    Flag
    13
    Flag
    14
    Flag
    15
    Flag
    16
    Flag
    17
    flüchtiger Speicher
    18
    Microcode-Befehl
    19
    Test-Vektor

Claims (35)

  1. Halbleiterschaltung (1), die ein Standard-Interface (6) zum externen Daten-, Adreß- und/oder Kommandoaustausch im Normalbetrieb und ein weiteres für einen Testbetrieb vorgesehenes Test-Interface (7) aufweist, mit einem Halbleiterbauelement (2) und mit einer dem Halbleiterbauelement (2) zugeordneten BIST-Einheit (4) (built-in self-test), aufweisend – einen BIST-Controller (11) zum Initialisieren, Testen und applikationsnahen Einstellen des Halbleiterbauelementes (2), – einen nur lesbaren nichtflüchtigen Speicher (9), in dem ein Standard-Programmcode zur Konfiguration und zum Testen des Halbleiterbauelementes (2), Standard-Test- und Standard-Boot-Parameter abgelegt sind, – einen programmierbaren nichtflüchtigen Speicher (10), in dem zumindest ein Programmcode zur Konfiguration und zum Testen des Halbleiterbauelementes (2), Funktionstests, Betriebs-Parameter, Test- und Boot-Parameter abgelegt sind und – einen dem BIST-Controller (11) zugeordneten flüchtigen Speicher (17), in den beim Booten der Standard- oder der zumindest eine Programmcode zur Ausführung ladbar ist, wobei der BIST-Controller (11) beim Booten eine Konfiguration vornimmt und im anschließenden Normalbetrieb durch Ausführung von Funktionstests ein optionales Testen des Halbleiterbauelementes (2) vornimmt und die beim Testen ermittelten Daten als Betriebs-, Test- und/oder Boot-Parameter im programmierbaren nichtflüchtigen Speicher (10) ablegt und/oder über das Standard-Interface (6) oder das Test-Interface (7) der Halbleiterschaltung (1) nach extern ausgibt.
  2. Halbleiterschaltung (1) nach Anspruch 1, dadurch gekennzeichnet, dass das Halbleiterbauelement (2) ein Halbleiterspeicher ist.
  3. Halbleiterschaltung (1) nach Anspruch 1, dadurch gekennzeichnet, dass im programmierbaren nichtflüchtigen Speicher (10) Flags (12, 13) zur Steuerung des BIST-Controllers (11) abgelegt sind, wobei der BIST-Controller (11) in Abhängigkeit des Status der Flags (12, 13) – automatisch gestartet oder nicht gestartet wird und – beim automatischen Start den Standard-Programmcode oder den Programmcode zur Ausführung in den flüchtigen Speicher (17) lädt.
  4. Halbleiterschaltung (1) nach Anspruch 1, gekennzeichnet, durch weitere im programmierbaren nichtflüchtigen Speicher (10) angeordnete Bootup-Sequenzen zugeordnete Flags (14, 15, 16), die anzeigen, welcher der im Programmcode implementierten Bootup-Sequenzen durch den BIST-Controller (11) auszuführen sind, so daß unterschiedliche Bootup-Prozeduren und unterschiedliche Konfigurationen des Halbleiterbauelementes (2) initiierbar sind.
  5. Halbleiterschaltung (1) nach Anspruch 1, gekennzeichnet, durch Testeinheiten (5), die weitere Funktionstests aufweisen, die sowohl durch den BIST-Controller (11) als auch extern über das Standard-Interface (6) oder über das Test-Interface (7) aufrufbar sind.
  6. Halbleiterschaltung (1) nach Anspruch 1, gekennzeichnet, durch ein zwischen der BIST-Einheit (4) und dem Halbleiterspeicher angeordnetes bausteininternes Interface (8), über das der BIST-Controller (11) an den Halbleiterspeicher Befehle der Funktionstests abgibt und die vom Halbleiterbauelement (2) ausgegebenen Daten empfängt.
  7. Halbleiterschaltung (1) nach Anspruch 1, dadurch gekennzeichnet, dass der nur lesbare nichtflüchtige Speicher (9) ein ROM (Read Only Memory) ist.
  8. Halbleiterschaltung (1) nach Anspruch 1, dadurch gekennzeichnet, dass der programmierbare nichtflüchtige Speicher (9) ein FLASH ist.
  9. Halbleiterschaltung (1) nach Anspruch 5, dadurch gekennzeichnet, dass die Testeinheiten (5) als ASIC (Application Specific Integrated Circuit) in der Halbleiterschaltung (1) implementiert sind.
  10. Halbleiterschaltung (1) nach Anspruch 1, dadurch gekennzeichnet, dass die Befehle des Programmcodes eine Struktur aufweisen, bei der einzelne Bits bzw. Bitgruppen eines Mikrocode-Befehls zur Steuerung des BIST-Controllers (11) mit einzelnen Bits bzw. Bitgruppen eines Test-Vektors (19), der einen Testbefehl über das bausteininterne Interface (8) an das Halbleiterbauelement (2) absetzt, kombiniert sind.
  11. Halbleiterschaltung (1) nach Anspruch 10, dadurch gekennzeichnet, dass die Befehle zumindest ein zusätzliches Bit oder eine Bitgruppe aufweisen, welche zur Aktivierung eines Test-Vektors (19) gesetzt ist.
  12. Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung (1), die ein Standard-Interface (6) zum externen Daten-, Adreß- und/oder Kommandoaustausch in einem Normalbetrieb und ein Test-Interface (7) für einen Testbetrieb verwendet, mit einem Halbleiterbauelement (2), bei dem – beim Booten der Halbleiterschaltung (1) eine zu Konfigurations- und Testzwecken dem Halbleiterspeicher zugeordnete BIST-Einheit (4) in einem programmierbaren nichtflüchtigen (10) abgelegte Flags (12, 13) abfragt und in Abhängigkeit des Status der Flags (12, 13) – zunächst ein Flag (12) bestimmt, ob ein BIST-Controller (11) der BIST-Einheit (4) automatisch bootet oder nicht bootet, – beim Booten ein weiteres Flag (13) bestimmt, ob der BIST-Controller (11) einen Standard-Programmcode aus einem nur lesbaren nichtflüchtigen Speicher (9) oder einen Programmcode aus dem programmierbaren nichtflüchtigen (10) in einen flüchtigen Speicher (17) zur Ausführung lädt, wobei der BIST-Controller (11) beim Booten zumindest eine im Standard-Programmcode oder im Programmcode implementierte Bootup-Sequenz ausführt, die eine Betriebsart des Halbleiterbauelementes (2) konfiguriert und nach dem Booten im Normalbetrieb im Standard-Programmcode oder im Programmcode vorgesehene optionale Funktionstests initiiert und ausführt.
  13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass insbesondere beim Booten der Halbleiterschaltung (1) und/oder zu jedem beliebigen Zeitpunkt die BIST-Einheit (4) die Taktfrequenz des BIST-Controllers (11) und somit die Rate abzuarbeitender Testvektoren festlegt.
  14. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass der BIST-Controller (11) im programmierbaren nichtflüchtigen Speicher (10) angeordnete weiteren Bootup-Sequenzen zugeordnete Flags (14, 15, 16) abfragt und auswertet und diejenigen im geladenen Programmcode implementierten Bootup-Sequenzen ausführt, für die die weiteren Flags (14, 15, 16) gesetzt sind.
  15. Verfahren nach Anspruch 12 oder 14, dadurch gekennzeichnet, dass jede Bootup-Sequenz zur Konfiguration einer Betriebsart und Testen des Halbleiterbauelementes (2) im programmierbaren nichtflüchtigen Speicher (10) abgelegte sequenzspezifische Boot-Parameter verwendet.
  16. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass die Auswertung der weiteren den Bootup-Sequenzen zugeordnete Flags (14, 15, 16) steuert, daß der BIST-Controller (11) alle im Programmcode implementierten Bootup-Sequenzen sequenziell ausführt, bis eine erfolgreiche Konfiguration und/oder fehlerfreie Testsequenzabarbeitung erzielt ist.
  17. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass diejenige Bootup-Sequenz, die eine erfolgreiche Konfiguration und/oder Testsequenzabarbeitung des Halbleiterbauelementes (2) erzielt, durch das ihr zugeordnete Flag (16) als Pass-Bootup-Sequenz identifizierbar ist.
  18. Verfahren nach einem der Ansprüche 14 bis 16, dadurch gekennzeichnet, dass die Auswertung der weiteren den Bootup-Sequenzen zugeordnete Flags (14, 15, 16) steuert, daß der BIST-Controller (11) nur die im Programmcode als Pass-Bootup-Sequenz implementierte Bootup-Sequenz ausführt.
  19. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass der BIST-Controller (11) die im Programmcode vorgesehenen Funktionstests aus dem programmierbaren nichtflüchtigen Speicher (10) oder von einer als ASIC implementierten Testeinheit (5) der Halbleiterschaltung (1) lädt.
  20. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass im Normalbetrieb durch die Ausführung der Funktionstest ermittelten Daten vom BIST-Controller (11) verarbeitet und als Betriebs-, Test- oder Boot-Parameter in dem programmierbaren nichtflüchtigen Speicher (10) abgelegt werden und/oder über das Standard-Interface (6) oder das Test-Interface (7) der Halbleiterschaltung (1) nach extern ausgegeben werden.
  21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, dass die erzeugten Boot-Parameter bei einem erneuten Booten des Halbleiterspeichers in einer beliebigen Boot-Sequenz verwendbar sind.
  22. Verfahren nach Anspruch 20, dadurch gekennzeichnet, dass die im im Normalbetrieb ermittelten Daten zur Baustein- und/oder Fehleranalyse verwendbar sind.
  23. Verfahren nach Anspruch 20, dadurch gekennzeichnet, dass den abgespeicherten Betriebsparametern Flags zugeordnet sind, die eine Betriebsfähigkeit des Halbleiterbausteins (2) anzeigen und/oder ein Auslesen der Parameter mittels einer Signalcode-Sequenz im Mode-Register-Set-Modus über das Standard-Interface (6) der Halbleiterschaltung (1) erlauben.
  24. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass der Funktionstest solange ausgeführt wird, bis der BIST-Controller (11) einen von extern zugeführten Stoppbefehl codiert, der den Funktionstest anhält oder bis die Halbleiterschaltung (1) abgeschaltet wird.
  25. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass über das Test-Interface (7) codierte Befehle anlegbar sind, die die Ausführung der Funktionstests unterbrechen, anhalten oder stoppen und/oder aktuelle Betriebsparameter über das Test-Interface (7) abrufen.
  26. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass über das Test-Interface (7) die Funktionstests, wie Testprogramme, Monitoringscripte oder Initialisierungsscripte, im programmierbaren nichtflüchtigen Speicherbereich (10) programmierbar sind.
  27. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass ein Befehl des Programmcodes aus einem Mikrocode-Befehl zur Steuerung des BIST-Controllers (11) und einem Test-Vektor (19), der einen Testbefehl über das bausteininterne Interface (8) an den Halbleiterspeicher absetzt, kombiniert ist und ein im Befehl dem Test-Vektor (19) zugeordnetes Flag anzeigt, ob der Test-Vektor (19) ausgeführt wird oder nicht.
  28. Verfahren nach Anspruch 27, dadurch gekennzeichnet, dass der Test-Vektor (19) ausgeführt wird, wenn das Bit auf eine logische "1" gesetzt ist.
  29. Verfahren nach Anspruch 27, dadurch gekennzeichnet, dass bei gesetztem Bit die Abarbeitung des Test-Vektors (19) und des Mikrocode-Befehls im gleichen Taktzyklus erfolgt.
  30. Verfahren nach Anspruch 27, dadurch gekennzeichnet, dass der Mikrocode-Befehl zumindest eine ALU (arithmetische logische Einheit) des BIST-Controllers (11) steuert, die ermittelte und/oder abgespeicherte Daten zu absoluten und/oder relativen Mittelwerten verrechnet sowie bedingte oder unbedingte, relative und absolute Mikrocode-Adresssprünge zum nächsten zu ladenden Mikrocode-Befehl berechnet.
  31. Verfahren nach Anspruch 27, dadurch gekennzeichnet, dass der Mikrocode-Befehl interne Registerinhalte adressiert.
  32. Verfahren nach Anspruch 27, dadurch gekennzeichnet, dass der Mikrocode-Befehl Lese- und/oder Schreibaktionen zum Laden oder zur Speicherung von Daten ausführt.
  33. Verfahren nach Anspruch 27 oder 29, dadurch gekennzeichnet, dass der Test-Vektor (19) zur Abfrage und zum Setzen von Betriebszuständen des Halbleiterbauelementes (2) eine timingkritische Adressierung von Speicherbänken des Halbleiterbauelementes (2) ausführt und binäre als Spannungswerte kodierte Daten adressabhängig schreibt oder liest.
  34. Verfahren nach Anspruch 27 oder 29, dadurch gekennzeichnet, dass mittels des Test-Vektors (19) definierte Funktionstest aktivierbar sind, die Daten in definierte Speicherbereiche ablegen oder Daten aus definierten Speicherbereichen abrufen.
  35. Verfahren nach Anspruch 27 oder 29, dadurch gekennzeichnet, dass die taktweise Abarbeitung des Test-Vektors (19) und des phasenweise abzuarbeitenden Mikrocode-Befehls innerhalb eines Taktes so koordiniert ist, dass Test-Vektor-Ergebnisse mit bereits gesammelten Daten verrechnet werden können.
DE10334801A 2003-07-30 2003-07-30 Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung Expired - Fee Related DE10334801B3 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10334801A DE10334801B3 (de) 2003-07-30 2003-07-30 Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung
CNB200410055952XA CN100361231C (zh) 2003-07-30 2004-07-30 半导体电路及测试、监控及接近应用设定半导体电路之方法
US10/902,105 US7249301B2 (en) 2003-07-30 2004-07-30 Semiconductor circuit and method for testing, monitoring and application-near setting of a semiconductor circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10334801A DE10334801B3 (de) 2003-07-30 2003-07-30 Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung

Publications (1)

Publication Number Publication Date
DE10334801B3 true DE10334801B3 (de) 2005-01-27

Family

ID=33547042

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10334801A Expired - Fee Related DE10334801B3 (de) 2003-07-30 2003-07-30 Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung

Country Status (3)

Country Link
US (1) US7249301B2 (de)
CN (1) CN100361231C (de)
DE (1) DE10334801B3 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005032514B3 (de) * 2005-06-08 2007-01-11 Infineon Technologies Flash Gmbh & Co. Kg Speicher und Verfahren zum Betrieb des Speichers

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7673193B1 (en) * 2005-08-18 2010-03-02 Rambus Inc. Processor-memory unit for use in system-in-package and system-in-module devices
US7627798B2 (en) * 2004-10-08 2009-12-01 Kabushiki Kaisha Toshiba Systems and methods for circuit testing using LBIST
US7299388B2 (en) * 2005-07-07 2007-11-20 Infineon Technologies, Ag Method and apparatus for selectively accessing and configuring individual chips of a semi-conductor wafer
JP4686350B2 (ja) * 2005-12-09 2011-05-25 株式会社東芝 不揮発性半導体記憶装置及びその自己テスト方法
JP2008108326A (ja) * 2006-10-24 2008-05-08 Toshiba Corp 記憶装置およびその自己テスト方法
US7610532B2 (en) * 2006-11-01 2009-10-27 Avago Technologies General Ip (Singapore) Pte. Ltd. Serializer/de-serializer bus controller interface
US7797596B2 (en) * 2007-09-26 2010-09-14 Oracle America, Inc. Method for monitoring and adjusting circuit performance
US7882406B2 (en) * 2008-05-09 2011-02-01 Lsi Corporation Built in test controller with a downloadable testing program
US8156391B2 (en) * 2008-05-27 2012-04-10 Lsi Corporation Data controlling in the MBIST chain architecture
US8046643B2 (en) * 2008-06-09 2011-10-25 Lsi Corporation Transport subsystem for an MBIST chain architecture
TWI438623B (zh) * 2010-10-11 2014-05-21 Hoy Technologies Co 演算法整合系統及其整合方法
KR101138835B1 (ko) * 2010-10-29 2012-05-15 에스케이하이닉스 주식회사 반도체 메모리 장치
CN102540059B (zh) * 2010-12-27 2014-07-09 上海华虹宏力半导体制造有限公司 数字半导体器件的测试装置及方法
US20140032826A1 (en) * 2012-07-25 2014-01-30 Samsung Electronics Co., Ltd. Method of training memory core and memory system
KR20140042312A (ko) * 2012-09-28 2014-04-07 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법
KR20150064452A (ko) * 2013-12-03 2015-06-11 에스케이하이닉스 주식회사 내장형 셀프 테스트 회로 및 이를 포함한 반도체 장치
US9449717B2 (en) 2014-06-20 2016-09-20 Arm Limited Memory built-in self-test for a data processing apparatus
CN107430167B (zh) * 2015-06-18 2021-02-02 瑞萨电子株式会社 半导体装置和诊断测试方法
KR20170007927A (ko) * 2015-07-13 2017-01-23 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
CN105655268B (zh) * 2016-01-08 2018-03-27 沛顿科技(深圳)有限公司 Dram不良晶粒的回收再利用方法
CN107436842A (zh) * 2016-05-25 2017-12-05 中兴通讯股份有限公司 一种微码调试方法及单板
CN106448740B (zh) * 2016-10-10 2020-01-24 上海华虹宏力半导体制造有限公司 一种嵌入式闪存提升良率的筛选办法
US10503849B2 (en) * 2016-12-15 2019-12-10 Taiwan Semiconductor Manufacturing Co., Ltd. Circuit testing and manufacture using multiple timing libraries
JP7089440B2 (ja) * 2018-08-28 2022-06-22 ルネサスエレクトロニクス株式会社 半導体装置及びその自己診断の制御方法
KR102099355B1 (ko) * 2018-11-26 2020-04-10 현대오트론 주식회사 집적회로 진단 장치
CN111552599B (zh) * 2020-04-26 2024-04-09 武汉精测电子集团股份有限公司 一种分布式进程处理系统、半导体老化测试方法及系统、分布式系统
CN115015742B (zh) * 2022-08-10 2022-10-11 南京派格测控科技有限公司 多站异步并行测试芯片的方法、系统、电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19831572A1 (de) * 1998-07-14 2000-01-20 Siemens Ag Anordnung und Verfahren zum Speichern der mit einer BIST-Schaltung erhaltenen Testergebnisse
US6321320B1 (en) * 1998-10-30 2001-11-20 Hewlett-Packard Company Flexible and programmable BIST engine for on-chip memory array testing and characterization
US6330681B1 (en) * 1997-12-31 2001-12-11 Logicvision, Inc. Method and apparatus for controlling power level during BIST
WO2002008904A2 (en) * 2000-07-26 2002-01-31 International Business Machines Corporation System initialization of microcode-based memory built-in self-test
US6347056B1 (en) * 2001-05-16 2002-02-12 Motorola, Inc. Recording of result information in a built-in self-test circuit and method therefor
DE10034878A1 (de) * 2000-07-18 2002-03-07 Infineon Technologies Ag Verfahren zum Überprüfen eines Bauelementes und Bauelement mit Testspeicher
US6374370B1 (en) * 1998-10-30 2002-04-16 Hewlett-Packard Company Method and system for flexible control of BIST registers based upon on-chip events

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764655A (en) * 1997-07-02 1998-06-09 International Business Machines Corporation Built in self test with memory
US6591389B1 (en) * 1999-01-29 2003-07-08 Lucent Technologies Inc. Testing system for circuit board self-test
JP4475618B2 (ja) * 2000-07-07 2010-06-09 インターナショナル・ビジネス・マシーンズ・コーポレーション 装置の起動制御方法、装置の自己診断試験方法、制御基板、機器、検査システム
US7168005B2 (en) * 2000-09-14 2007-01-23 Cadence Design Systems, Inc. Programable multi-port memory BIST with compact microcode
US6983398B2 (en) * 2002-04-24 2006-01-03 Hewlett-Packard Development Company, L.P. Testing processors
DE10246789B3 (de) 2002-10-08 2004-04-15 Infineon Technologies Ag Schaltungsanordnung und Verfahren zur Messung wenigstens einer Betriebskenngröße einer integrierten Schaltung
DE10248753B4 (de) 2002-10-18 2005-09-15 Infineon Technologies Ag Halbleiterbaustein sowie Verfahren zum Funktionstest und zur Konfiguration eines Halbleiterbausteins

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330681B1 (en) * 1997-12-31 2001-12-11 Logicvision, Inc. Method and apparatus for controlling power level during BIST
DE19831572A1 (de) * 1998-07-14 2000-01-20 Siemens Ag Anordnung und Verfahren zum Speichern der mit einer BIST-Schaltung erhaltenen Testergebnisse
US6321320B1 (en) * 1998-10-30 2001-11-20 Hewlett-Packard Company Flexible and programmable BIST engine for on-chip memory array testing and characterization
US6374370B1 (en) * 1998-10-30 2002-04-16 Hewlett-Packard Company Method and system for flexible control of BIST registers based upon on-chip events
DE10034878A1 (de) * 2000-07-18 2002-03-07 Infineon Technologies Ag Verfahren zum Überprüfen eines Bauelementes und Bauelement mit Testspeicher
WO2002008904A2 (en) * 2000-07-26 2002-01-31 International Business Machines Corporation System initialization of microcode-based memory built-in self-test
US6347056B1 (en) * 2001-05-16 2002-02-12 Motorola, Inc. Recording of result information in a built-in self-test circuit and method therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005032514B3 (de) * 2005-06-08 2007-01-11 Infineon Technologies Flash Gmbh & Co. Kg Speicher und Verfahren zum Betrieb des Speichers

Also Published As

Publication number Publication date
CN100361231C (zh) 2008-01-09
US7249301B2 (en) 2007-07-24
US20050028058A1 (en) 2005-02-03
CN1577630A (zh) 2005-02-09

Similar Documents

Publication Publication Date Title
DE10334801B3 (de) Halbleiterschaltung und Verfahren zum Testen, Überwachen und applikationsnahen Einstellen einer Halbleiterschaltung
DE69729771T2 (de) Integrierte Schaltung mit einer eingebauten Selbsttestanordnung
DE102004021267B4 (de) Verfahren zum Testen eines Speicherbausteins und Prüfanordnung
EP2318920B1 (de) Steuergerät für ein fahrzeug und verfahren für eine datenaktualisierung für ein steuergerät für ein fahrzeug
DE10296986T5 (de) Automatischer Austausch einer detekten BIOS-Abbildung
CN101501782B (zh) 具有被控编程/擦除的非易失性存储器
EP1854007A2 (de) Verfahren, betriebssysem und rechengerät zum abarbeiten eines computerprogramms
EP1262856B1 (de) Programmgesteuerte Einheit
DE102004012279B3 (de) Verfahren und Vorrichtung zum Speicherselbsttest von eingebetteten Speichern in Halbleiterchips
DE19964003A1 (de) Schaltungsanordnung und Verfahren zur Erzeugung und zum Auslesen von Ersatzdaten
DE102014223035A1 (de) Verfahren und Speicherverwaltungsvorrichtung zum Übertragen von Daten innerhalb eines Compuer-Systems, Speichersystem und Computer-System
DE10316931B4 (de) Verfahren und Vorrichtung zum Testen von DRAM-Speicherbausteinen in Multichip-Speichermodulen
DE10344877B3 (de) Vorrichtung zum Testen eines Speichermoduls
DE102004013493B4 (de) Zugriffs-Verfahren für einen NAND-Flash-Speicherbaustein und ein entsprechender NAND-Flash-Speicherbaustein
DE69517758T2 (de) Prüfung einer integrierten Schaltungsanordnung
EP1182555B1 (de) Verfahren zum Testen eines Mikrocontrollers durch eine externe Testvorrichtung
US7409609B2 (en) Integrated circuit with a control input that can be disabled
DE10312195B4 (de) Integrierte Schaltung und Verfahren zum Setzen einer integrierten Schaltung in einen voreingestellten, generischen Operationsmodus
DE10335132B3 (de) Speicheranordnung eines Computersystems
DE102004043063A1 (de) Halbleiter-Bauelement mit Test-Schnittstellen-Einrichtung
DE102005017298B4 (de) Verfahren und Vorrichtung zum Schreiben eines Ablaufsprogramms in eine Speichervorrichtung einer programmgesteuerten Steuervorrichtung
DE102013216558B4 (de) Verfahren zur Diagnose eines steuerbaren Schaltelements eines Motorsteuergeräts
DE10255542B4 (de) Speicheranordnung für eine Mikrorechnerschaltung
EP1543528A2 (de) Beschleunigung der programmierung eines speicherbausteins mit hilfe eines boundary scan (bscan)-registers
DE102023201932A1 (de) Chip und verfahren zum ansteuern von speicherbänken

Legal Events

Date Code Title Description
8100 Publication of the examined application without publication of unexamined application
8364 No opposition during term of opposition
8325 Change of the main classification

Ipc: G11C 29/00 AFI20030730BHDE

8327 Change in the person/name/address of the patent owner

Owner name: QIMONDA AG, 81739 MUENCHEN, DE

R081 Change of applicant/patentee

Owner name: INFINEON TECHNOLOGIES AG, DE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

R081 Change of applicant/patentee

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee