DE60212271T2 - Eingebauter Selbsttest mit eingebautem Speicher und Prozessor in einer ASIC Vorrichtung - Google Patents

Eingebauter Selbsttest mit eingebautem Speicher und Prozessor in einer ASIC Vorrichtung Download PDF

Info

Publication number
DE60212271T2
DE60212271T2 DE60212271T DE60212271T DE60212271T2 DE 60212271 T2 DE60212271 T2 DE 60212271T2 DE 60212271 T DE60212271 T DE 60212271T DE 60212271 T DE60212271 T DE 60212271T DE 60212271 T2 DE60212271 T2 DE 60212271T2
Authority
DE
Germany
Prior art keywords
test
bisterror
signal
integrated circuit
routines
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 - Lifetime
Application number
DE60212271T
Other languages
English (en)
Other versions
DE60212271D1 (de
Inventor
D. Richard Eagle Taylor
D. Mark Meridian Montierth
D. Melvin Boise Bodily
Gary Boise Zimmermann
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.)
Marvell International Technology Ltd
Original Assignee
Avago Technologies General IP Singapore Pte 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
Application filed by Avago Technologies General IP Singapore Pte Ltd filed Critical Avago Technologies General IP Singapore Pte Ltd
Application granted granted Critical
Publication of DE60212271D1 publication Critical patent/DE60212271D1/de
Publication of DE60212271T2 publication Critical patent/DE60212271T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/27Built-in tests
    • 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/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • 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/26Testing of individual semiconductor devices
    • 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/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31905Interface with the device under test [DUT], e.g. arrangements between the test head and the DUT, mechanical aspects, fixture
    • 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/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

  • Hintergrund
  • Anwendungsspezifische integrierte Schaltungen (ASICs) müssen unter einer Vielfalt von Umständen getestet werden. Beispielsweise erfordert eine ASIC während der Entwicklung im Allgemeinen gründliches Testen und Fehlerbeseitigung, um den Entwurf der integrierten Schaltung zu verifizieren oder festzulegen. Während der Herstellung müssen ASICs im Allgemeinen getestet werden, um gute Chips von schlechten Chips zu trennen. Während der Verwendung wird eine ASIC häufig getestet, um zu bestimmen, ob die integrierte Schaltung in einem System ordnungsgemäß funktioniert.
  • Ein Verfahren zum Testen einer ASIC während der Herstellung verwendet einen herkömmlichen ASIC-Tester, wie z. B. einen Agilent-83000-F330, um Testmuster an die Anschlüsse der ASIC anzulegen. Die Testmuster führen idealerweise alle funktionalen Wege der ASIC aus und können alle Defekte in der ASIC aufdecken. Das Entwickeln der Testmuster, die für gründliches Testen erforderlich sind, kann erheblichen Entwicklungsaufwand bedeuten. Insbesondere kann das Entwickeln eines Testmusters, das alle funktionalen Wege in mehreren funktionalen Einheiten, einschließlich eingebettetem Speicher, ausführt, schwierig sein. Wenn eine ASIC außerdem eine Schnittstelle zu einem externen Speicher umfasst, müssen die Testmuster den externen Speicher emulieren, und das Entwickeln eines Testmusters, das die Zeitgebung eines externen Hochgeschwindigkeitsspeichers emuliert, kann zeitaufwändig sein, insbesondere wenn die ASIC eine serielle Schnittstelle verwendet, um den Pinzählwert zu reduzieren.
  • Selbst wenn ein erschöpfendes Testmuster entwickelt wird, erfordert das Durchführen eines komplexen Testmusters während des Testens einer ASIC im Allgemeinen Zeit, was potentiell die Herstellungskosten der ASIC erhöht. Weniger erschöpfende Testmuster können Testzeiten reduzieren, aber es kann sein, dass einfachere Testmuster nicht so viele Defekte erfassen, was dazu führt, dass mehr defekte Chips zu Kunden geliefert werden.
  • Eine weitere Beschränkung von ASIC-Tests, die einen Tester erfordern, ist, dass solche Tests auf die Herstellung oder Entwicklung der ASICs beschränkt sind, und allgemein unpraktisch sind zum Testen einer ASIC in einem kommerziellen Produkt oder System. Folglich benötigen ASICs zumindest zwei Typen von Tests, einen Test, der mit einem externen Test implementiert wird, und einen eingebauten Selbsttest (BIST; BIST = built-in-self-test), den die ASIC in einem Produkt durchführt. Das Entwickeln beider Tests erfordert doppelten Aufwand und doppelte Kosten.
  • BIST-Tests werden allgemein unter Verwendung spezieller BIST-Logik implementiert, die bei einem Versuch, die Logikwege auszuführen, deterministische Signalmuster anlegt. Das Entwickeln von BIST-Logik, die erschöpfende Tests durchführt, ist schwierig, sowohl weil es keine Garantie gibt, dass die ausgeübten Wege die tatsächlichen funktionalen Wege sind, und weil das Erzeugen der Testlogik häufig spezialisierte Entwicklungstools erfordert. Sobald sie hergestellt ist, ist eine solche Logik häufig kompliziert, erhöht die Größe und Kosten der ASICs und kann Mehraufwand sein, der die Leistungsfähigkeit der ASIC verringert.
  • Bezüglich der Schwierigkeiten im Zusammenhang mit dem Testen werden effizientere Testverfahren und Strukturen gesucht zum Testen von ASICs während Entwicklung, Herstellung und Verwendung.
  • Die US 6,230,290 B1 offenbart ein Verfahren eines selbstprogrammierbaren eingebauten Selbsttests (BIST) für einen DRAM. Der DRAM, der ein DRAM-Chip sein kann, umfasst einen DRAM-Kern, einen Mikrocode oder Anfangsbefehls-ROM, eine BIST-Maschine, ein Befehlsregister und eine Selbstprogrammierschaltung. Während des Selbsttests kann die BIST-Maschine den DRAM normalerweise testen, bis ein Fehler auftritt, und der Fehler ausgegeben wird. Wenn ein Fehler auftritt, startet die Selbstprogrammierschaltung die Selbsttestprozedur neu bei weniger strengen Bedingungen. Optional, wenn der DRAM DRAM-fehlerfrei getestet wird, kann die Selbstprogrammierschaltung das Testen bei strengeren Bedingungen neu starten, um die DRAM-Funktionalitätsgrenzen zu bestimmen.
  • Die DE 198 35 258 A beschreibt eine integrierte Schaltung mit einer Selbsttestvorrichtung. Die integrierte Schaltung umfasst einen Programmspeicher mit zumindest einem externen Anschluss zum Empfangen externer Testprogramme. Ferner ist eine Selbsttestvorrichtung vorgesehen, die mit dem Programmspeicher zum Ausführen eines Selbsttests der Schaltung verbunden ist. Die Selbsttestvorrichtung weist einen Eingang auf zum Empfangen eines Unterbrechungssignals, auf der Basis dessen ein ausgeführtes Testprogramm unterbrochen werden kann. Während des Testens liefert die Selbsttestvorrichtung Testsignale an die Schaltungseinheit, die zu testen ist, und empfängt ansprechend darauf Ausgabesignale von der Schaltungseinheit, die zu testen ist. Die Selbsttestvorrichtung vergleicht ferner die Signale, die von der Schaltungseinheit empfangen werden, die zu testen ist, mit erwarteten Werten für die Signale und gibt ein jeweiliges Ergebnissignal aus.
  • Es ist die Aufgabe der vorliegenden Erfindung, effizientere Teststrukturen und Verfahren zum Testen von ASICs während Entwicklung, Herstellung und Verwendung zu schaffen.
  • Diese Aufgabe wird durch eine integrierte Schaltung gemäß Anspruch 1 und durch ein Verfahren gemäß Anspruch 4 gelöst.
  • Zusammenfassung
  • Gemäß einem Aspekt der Erfindung führt eine ASIC mit einem eingebetteten Prozessor Testroutinen aus, um den Betrieb der ASIC zu testen. Die Testroutinen können Bei-Geschwindigkeit-Funktionstests von Schaltungsblöcken wie z. B. eingebettetem Speicher, Codierern und Decodierern und Schnittstellen zu externen Geräten durchführen. Die Testimplementierung erfordert eine kleine Menge an IC-Fläche, die dem Speicher zugeordnet ist, der die Testroutinen speichert. Externe Testausrüstung kann ein einfaches Testmuster verwenden, das bei einem Ausführungsbeispiel der Erfindung nur drei Pins der ASIC umfasst. Folglich kann das Herstellungstesten schnell durchgeführt werden, mit einfacher Testausrüstung und ohne die ASIC mit komplexer Testlogik zu belasten. Außerdem können die gleichen oder ähnlichen Testroutinen in dem eingebetteten Speicher in einem Selbsttest verwendet werden, wenn die ASIC in einem Produkt ist.
  • Ein Ausführungsbeispiel der Erfindung ist eine integrierte Schaltung, die einen Verarbeitungskern und einen nichtflüchtigen Speicher umfasst, der Testroutinen enthält, die der Verarbeitungskern ausführt, um die integrierte Schaltung zu testen. Ein Schnittstellenblock in der integrierten Schaltung kann Signale handhaben, die dem Testen zugeordnet sind. Insbesondere führt der Verarbeitungskern die Testroutinen aus, die gemäß Steuersignalen ausgewählt werden, die über den Schnittstellenblock eingegeben werden.
  • Bei einem Ausführungsbeispiel umfasst der Schnittstellenblock einen ersten und einen zweiten Anschluss. Der Verarbeitungskern verwendet ein erstes Signal auf dem ersten Anschluss, um ein Testergebnis anzuzeigen, d. h. um anzuzeigen, ob die Ausführung der Testroutinen einen Defekt in der integrierten Schaltung erfasst hat. Auf dem zweiten Anschluss aktiviert der Verarbeitungskern ein zweites Signal, um anzuzeigen, wenn das erste Signal das Testergeb nis anzeigt. Ein dritter Anschluss kann ein Steuersignal empfangen für die Auswahl der Testroutinen von dem eingebetteten Speicher für einen Herstellungstest oder einen Systemebenentest oder für die Auswahl der Ausführung von Firmware, die von dem externen Speicher heruntergeladen wird.
  • Funktionsblöcke in der integrierten Schaltung können Datenwege umfassen, die Softwaretesten der Blöcke ermöglichen. Beispielsweise kann ein Eingabepuffer, der normalerweise Dateneingabe von einer externen Quelle empfängt, verbunden sein, so dass der Prozessor in den Eingabepuffer schreiben kann, um Datenfluss durch den Eingabepuffer zu testen. Um den Bedarf an Testroutinen zu reduzieren, die einen gesamten Datenstrom überwachen, können Prüfcode- oder CRC-Rechner zu spezifischen Einheiten hinzugefügt werden, um einen Code zu liefern, der ohne weiteres geprüft werden kann, um Fehler zu erfassen. Weitere Rückschleifenfähigkeiten können hinzugefügt werden, um das Testen der Daten in die und aus den Netzwerkschnittstellen zu ermöglichen.
  • Ein weiteres Ausführungsbeispiel der Erfindung ist ein Testverfahren für eine integrierte Schaltung. Das Testverfahren verwendet einen eingebetteten Verarbeitungskern in der integrierten Schaltung, um Testroutinen auszuführen, die in einem eingebetteten nicht-flüchtigen Speicher in der integrierten Schaltung gespeichert sind. Die Testroutinen können komplizierte Tests implementieren, wie z. B. erschöpfendes Testen eines internen Speichers oder anderer Funktionsblöcke der integrierten Schaltung, und ein Signal ausgeben, das ein Tester beobachtet, um ein Testergebnis zu bestimmen. Allgemein zeigt ein erstes Signal an, ob die Ausführung der Testroutinen einen Ausfall in der integrierten Schaltung erfasst hat. Der Verarbeitungskern beim Ausführen der Testroutinen kann ein zweites Signal aktivieren, um anzuzeigen, wenn ein Zustand des ersten Signals anzeigt, ob die Testroutinen einen Ausfall erfasst haben. Das erste Signal kann vor der Aktivierung des zweiten Signals aktiviert werden, um zu bestätigen oder zu signalisieren, dass der Verarbeitungskern die Testroutinen ausführt. Ein oder mehrere zusätzliche Signale von der integrierten Schaltung können einen Typ oder Position eines Ausfalls anzeigen, den das Ausführen der Testroutinen erfasst hat.
  • Ein Tester weist somit während des Herstellungstestens der integrierten Schaltung ein einfaches Testmuster auf, das nur wenige Pins umfasst, aber ein Testergebnis von einem erschöpfenden Test erhält, der in den Testroutinen implementiert ist. Außerdem kann die Schaltungsanordnung des Systems während der Verwendung der integrierten Schaltung in einem System ohne weiteres einen Test in der integrierten Schaltung einleiten und Ergebnisse überwachen.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm einer ASIC mit Selbsttestfähigkeiten gemäß einem Ausführungsbeispiel der Erfindung.
  • 2A und 2B sind Zeitdiagramme von Ausgangssignalen für einen bestandenen Selbsttest bzw. einen fehlgeschlagenen Selbsttest.
  • 3 ist ein Flussdiagramm eines externen Speicherabschnitts eines Testprozesses gemäß der Erfindung.
  • 4 ist ein Blockdiagramm einer ASIC, die mit Testausrüstung für die Herstellungstesten gemäß einem Ausführungsbeispiel der Erfindung verbunden ist.
  • 5 ist ein Blockdiagramm einer ASIC in einem System, die in der Lage ist für Systemebenentesten gemäß einem Ausführungsbeispiel des Testens.
  • Die Verwendung der gleichen Bezugssymbole in unterschiedlichen Figuren zeigt ähnliche oder identische Elemente an.
  • Detaillierte Beschreibung
  • Gemäß einem Aspekt der Erfindung weist eine ASIC mit einem eingebetteten Prozessor Testroutinen in einem eingebetteten Speicher auf. Der eingebettete Prozessor führt die Testroutinen aus, um den Betrieb der ASIC zu testen. Die Testroutinen können für ASIC-Herstellungstests und Systemebenen-Einschaltselbsttests verwendet werden. Für hochintegrierte Schaltungen, die bereits einen eingebetteten ROM enthalten, ist die Mehraufwandlogik für diese Selbsttestfunktionen minimal.
  • 1 ist ein Blockdiagramm einer ASIC 100 gemäß einem beispielhaften Ausführungsbeispiel der Erfindung. In 1 ist die ASIC 100 ein Formatierer für einen Drucker und würde bei einem Endprodukt teilnehmen bei der Kommunikation zwischen einem Drucker und einem Host-Computer (nicht gezeigt). Dieses beispielhafte Ausführungsbeispiel ist hier beschrieben, um ein konkretes Beispiel einer ASIC-Anwendung zu liefern, aber breite Aspekte der Erfindung können weiter in jeder integrierten Schaltung oder ASIC verwendet werden, die einen eingebetteten Prozessor mit ausreichend Verarbeitungsleistung enthält, um die Testroutinen auszuführen. Ausführungsbeispiele der Erfindung sind eindeutig nicht auf integrierte Schaltungen begrenzt, die die spezifischen Funktionseinheiten der ASIC 100 enthalten.
  • Wie es in 1 dargestellt ist, umfasst die ASIC 100 einen Verarbeitungskern 110, einen internen Speicher 120, eine universelle Eingabe-/Ausgabe-(GPIO-)Schnittstelle 130 und Funktionseinheiten, die einen Codec 140, eine externe Vorrichtungsschnittstelle 150, eine Druckmaschinenkommunikationseinheit 160, eine DMA-Einheit 170 und Zeitschaltungen 180 umfassen. Ein mittels Entscheidungen be triebener interner Bus 190 leitet Kommunikationssignale zwischen den verschiedenen Blöcken der ASIC 100.
  • Der Verarbeitungskern 110 führt Befehle aus, die in dem internen Speicher 120 oder dem externen Speicher (nicht gezeigt) gespeichert werden können. Jeder Prozessortyp kann für den Prozessor 100 geeignet sein, aber bei einem beispielhaften Ausführungsbeispiel der Erfindung ist der Verarbeitungskern 110 ein ARM7-Verarbeitungskern, der von ARM-Ltd lizenziert werden kann.
  • Der interne Speicher 120 umfasst flüchtigen Speicher, wie z. B. DRAM 122 und SRAM 124, und nicht-flüchtigen Speicher, wie z. B. ROM 126. Der ROM 126 kann jeder nicht-flüchtige Speichertyp sein, wie z. B. ein Masken-ROM, ein EPROM oder ein EEPROM und speichert Firmware, einschließlich, aber nicht beschränkt auf Testroutinen 128. Ein beispielhafter Satz von Testroutinen 128 ist nachfolgend näher beschrieben und umfasst allgemein Tests des Betriebs des internen Speichers 120 und zugeordneter Speicherschnittstellenschaltungen und Tests der anderen Funktionseinheiten 140, 150, 160, 170 und 180.
  • Bei dem beispielhaften Ausführungsbeispiel arbeitet die Schnittstelle 150 in normalem Modus, um eine Universeller-Serieller-Bus-(USB-)Schnittstelle zu implementieren, für eine Kommunikation mit einem Host-Computer, aber die Schnittstelle 150 kann auch arbeiten, um Firmware herunterzuladen, wie es nachfolgend beschrieben ist. Alternativ kann die GPIO-Schnittstelle 130 als eine Speicherschnittstelle verwendet werden, um Firmware von einem externen Speicher herunterzuladen, wie z. B. einem seriellen EEPROM. Heruntergeladene Firmware kann die gesamte oder Teile der Testroutine 128 ersetzen, wie es nachfolgend näher beschrieben ist. Die Druckmaschinenkommunikation 160 implementiert eine Kommunikationsschnittstelle zu einem Drucker, und DMA 170 implementiert einen direkten Speicherzugriff für die Übertragung von Druckbildern. Der Codec 140 führt Codier- und Decodieroperationen an Druckbildern durch.
  • Die GPIO-Schnittstelle 130 liefert die Steuer- und Ausgabeschnittstelle für Selbsttestfunktionen der ASIC 100. Insbesondere verwendet die GPIO-Schnittstelle 130 drei Signale, ASICTEST, BISTERROR und BISTDONE. Der Verarbeitungskern 110 prüft das Eingabesignal ASICTEST über die GPIO-Schnittstelle 130, um zu bestimmen, ob der Systempegel-Selbsttest oder ein ASIC-Herstellungstest auszuführen ist. Die Testroutinen 128 umfassen im Allgemeinen leichte Unterschiede für Systempegeltests oder Herstellungstests. Der Verarbeitungskern 110 steuert die Signale BISTERROR und BISTDONE, um Testergebnisse anzuzeigen.
  • 2A und 2B sind Zeitdiagramme für die Signale BISTERROR und BISTDONE und stellen jeweils einen bestandenen Selbsttest und einen fehlgeschlagenen Selbsttest bei dem beispielhaften Ausführungsbeispiel der Erfindung dar.
  • Bei 2A führt der Verarbeitungskern 110 Testcode 128 aus (für Herstellungs- oder Systemebenentesten), ansprechend auf ein Zurücksetzen der ASIC 100. Der Verarbeitungskern 110 beginnt durch Aktivieren eines einzelnen BISTERROR für eine kurze Periode (z. B. etwa 100 ns), um zu zeigen, dass das Signal BISTERROR funktional ist. Externe Testausrüstung (nicht gezeigt) erfasst ein Versagen, falls der Verarbeitungskern 110 nicht in der Lage ist, das Signal BISTERROR innerhalb einer Periode nach der Aktivierung des Rücksetzsignals zu aktivieren. Nach dem Deaktivieren des Signals BISTERROR führt der Verarbeitungskern 110 die Abschnitte der Testroutinen 128 aus, die Eingangssteuersignale, wie z. B. das Signal ASICTEST, bestimmen. Für das Beispiel von 2A ist kein Fehler erfasst und der Verarbeitungskern 110 aktiviert das Signal BISTDONE auf den Abschluss der Ausführung der Testroutine 128 hin. Externe Testausrüstung während des Herstellungstestens oder der Systemschaltungsanordnung während des In-System-Testens identifiziert den bestandenen Selbsttest von dem Hin- und Herschalten des Signals BISTERROR gefolgt von der Aktivierung des Signals BISTDONE, während das Signal BISTERROR in einem Zustand ist, das keinen Fehler anzeigt (z. B. inaktiv).
  • Bei 2B schaltet der Verarbeitungskern 110 das einzelne BISTERROR erneut hin und her, um zu zeigen, dass das Signal BISTERROR funktional ist, und führt dann die Abschnitte der Testroutinen 128 aus, die durch die Eingangssteuersignale bestimmt werden. Für das Beispiel von 2B erfasst die Ausführung der Testroutinen 128 ein Versagen und der Verarbeitungskern 110 reaktiviert das Signal BISTERROR und aktiviert dann das Signal BISTDONE, um die Erfassung eines Testversagens anzuzeigen. Externe Testausrüstung oder Systemschaltungsanordnung identifiziert den fehlgeschlagenen Selbsttest von der Aktivierung des Signals BISTDONE, während das Signal BISTERROR in einem Zustand ist, der einen Fehler anzeigt (z. B. aktiv). Der Verarbeitungskern 100 kann ferner Ausgangssignale von der GPIO-Schnittstelle 130 verwenden, um den Typ und/oder die Position des Defekts oder Versagens anzuzeigen.
  • Bei dem beispielhaften Ausführungsbeispiel der Erfindung sind Testroutinen 128 Teil des Boot-Codes, den die ASIC 100 während des Einschaltens ausführt, und die Testroutinen 128 umfassen drei Hauptabschnitte, die hierin als BIST, EEPROM und Selbsttest bezeichnet werden. Bei dem beispielhaften Ausführungsbeispiel der Erfindung steuert ein Steuersignal, das über die GPIO-Schnittstelle 130 eingegeben wird, ob der Verarbeitungskern 110 die Testroutinen 128 ausführt oder versucht, Firmware über die Schnittstelle 130 oder 150 von dem externen Speicher herunterzuladen. Falls Testroutinen 128 ausgeführt werden, beginnt der Verarbeitungskern 110 mit dem BIST-Abschnitt der Testroutinen 128.
  • Der BIST-Abschnitt wird ausgeführt, bevor das System eingerichtet wird, um internen Speicher oder das interne Be triebssystem der ASIC 100 zu verwenden. Der BIST-Abschnitt testet internen DRAM 122 und SRAM 124, z. B. durch Durchführen ausführlicher Schreib- und Lesemuster und Validieren, ob die gelesenen Daten korrekt sind. Der Verarbeitungskern 110 prüft einen Fehlercode, der sich von dem internen Speichertest ergibt, und aktiviert das Signal BISTERROR und dann BISTDONE, falls ein Fehler erfasst wird. Falls die ASIC 100 den BIST-Test besteht, ermöglichen Testroutinen 128 die Verwendung einer Speichersteuerung in der Schnittstelle 150 zum Herunterladen von Firmware von einer externen Vorrichtung.
  • Bei einem Ausführungsbeispiel der Erfindung wird der BIST-Test des internen Speichers nur für Systemebenenselbsttests und nicht für Herstellungstests durchgeführt. Herstellungstesten von ASICs, die internen Speicher, wie z. B. DRAM umfassen, müssen häufig die Position von Defekten in dem Speicher identifizieren, um herkömmliche Laserreparaturoperationen zu ermöglichen. Um die Position eines Defekts in einem Speicherarray zu identifizieren, kann die einfache Fehlersignalzeitgebung, die in 2A und 2B gezeigt ist, vergrößert werden, um zusätzliche Ausgangssignale zu liefern, die die exakte Position jedes reparierbaren Defekts in einem Speicherarray anzeigen. Der resultierende Anstieg der Komplexität der Ausgabe der Fehlersignale erhöht jedoch die Komplexität der Testroutinen 128, so dass ein herkömmliches Speicherarraytestverfahren für Herstellungstesten geeignet sein kann. Für einen Systempegeltest ist die Reparatur allgemein keine Option und der Speicher, der diese Testroutinen 128 testet, liefert alle erforderlichen Informationen. Wie es oben angemerkt wurde, wird bei dem beispielhaften Ausführungsbeispiel das Signal ASICTEST aktiviert oder nicht, um anzuzeigen, ob ein BIST von internem Speicher erforderlich ist.
  • Nachdem die ASIC 100 den Test in dem BIST-Abschnitt der Testroutinen 128 besteht, führt der Verarbeitungskern 110 den EEPROM-Abschnitt der Testroutinen 128 aus. 3 ist ein Flussdiagramm eines Prozesses 300, der in dem EEPROM-Abschnitt implementiert ist. Der Prozess 300 in einem anfänglichen Entscheidungsschritt 310 prüft ein Steuersignal, das über eine GPIO-Schnittstelle 130 (z. B. einen Pin GPIO [13]) eingegeben wird. Falls das Steuersignal nicht aktiviert ist, führt der Verarbeitungskern 110 den Selbsttestabschnitt 370 der Testroutinen 128 aus.
  • Falls das Steuersignal aktiviert ist, versucht der Verarbeitungskern 110 bei Schritt 320, einen externen Speicher zurückzusetzen, wie z. B. einen externen seriellen EEPROM, und springt dann zum Ausführen der Selbsttestroutinen 370, falls die Rücksetzoperation fehlgeschlagen ist (z. B. weil kein externer Speicher verbunden ist). Falls die Rücksetzoperation erfolgreich ist, liest oder prüft der Verarbeitungskern 110 bei Schritt 340 Identifizierungsdaten, die in dem externen Speicher gespeichert sein sollten, und bestimmt dann in einem Entscheidungsschritt 350, ob der externe Speicher erwartete Informationen enthält, z. B. ob das erste Wort einen Wert nicht gleich xFFFF hat. Falls der externe Speicher die erwarteten Informationen enthält, lädt der Verarbeitungskern 110 bei Schritt 350 Firmware zu dem internen Speicher 120 herunter und führt diese Firmware aus, anstatt das Ausführen der Testroutinen 128 fortzusetzen. Falls der externe Speicher nicht die erwarteten Informationen liefert, springt der Verarbeitungskern 110 von dem Entscheidungsschritt 350 zum Ausführen des Selbsttestabschnitts 370 der Testroutinen 128.
  • Die Fähigkeit, während des Boot-Prozesses Firmware von externem Speicher zu laden, ermöglicht die Implementierung von Tests, die spezialisiert sind für die Fehlerbeseitigung des Entwurfs von ASIC 100, oder spezialisiert sind für das bestimmte System, das die ASIC 100 verwendet. Eine der vorliegenden Anmelderin gehörende U.S.-Patentanmeldung mit dem Titel „Point-Of-Sale Demonstration of Computer Peripherals" beschreibt die Verwendung der Firmwareherunterladefä higkeit zum Implementieren von Nicht-Test-Funktionen (z. B. Bereitstellen einer Systemdemonstration).
  • Der Selbsttestabschnitt der Testroutinen 128 verifiziert den Betrieb der Hauptblöcke in der ASIC 100. Insbesondere prüft der Selbsttestabschnitt der Testroutinen 128 bei dem beispielhaften Ausführungsbeispiel die Schnittstelle 150, den DMA-Block 170 und Codec 140. Zusätzliches Testen des internen Speichers 120 kann ebenfalls durchgeführt werden.
  • Die spezifischen Tests bestimmter Blöcke hängen von den spezifischen Funktionen des Blocks ab. Beispielsweise kann der Verarbeitungskern 110 für den Codec 140 Daten von dem internen Speicher 120 zu dem Codec 140 richten, zum Codieren oder Decodieren. Der Verarbeitungskern 110 bestimmt dann, ob die Ausgangsdaten von dem Codec 140 mit korrekt codierten oder decodierten Daten übereinstimmen, die in dem ROM 126 gespeichert sind.
  • Um Tests zu liefern, die den tatsächlichen Systembetrieb reproduzieren, können Testroutinen versuchen, den normalen Datenfluss in der ASIC 100 zu emulieren. Beispielsweise beginnt ein normaler Datenfluss in dem beispielhaften Ausführungsbeispiel mit der Eingabe von Daten in einen Eingabe-FIFO-Puffer in der USB-Schnittstelle 150. Der Eingabe-FIFO-Puffer kann einen normalen Eingabeweg von externen Schaltungen umfassen, und einen alternativen Eingabeweg, der es dem Verarbeitungskern 110 ermöglicht, Daten in den Eingabe-FIFO-Puffer zu schreiben, um einen Datenfluss zu beginnen. Gleichartig dazu kann der Verarbeitungskern 110 Daten in einem Ausgabepuffer lesen, um die Datenausgabe zu prüfen.
  • Ein Datenfluss kann von dem Eingabe-FIFO-Puffer zu dem internen Speicher 120, von dem internen Speicher 120 zu dem Codec 140 zum Codieren, zurück zu dem internen Speicher 120, von dem internen Speicher 120 zu dem Codec 140 zum Decodieren oder zu dem DMA-Block 170 verlaufen. Der ord nungsgemäße Durchgang von Daten durch das gesamte System liefert einen hohen Grad an Verifizierung des Betriebs der ASIC 100. Außerdem kann das Testen eines Datenflusses durch mehrere Funktionsblöcke den Bedarf vermeiden, jeden Datenübertragungsschritt getrennt zu testen, weil der Verarbeitungskern 110 die Daten an der Endstufe des Flusses beobachten kann, um Fehler zu erfassen. Um Fehlerprüfen weiter zu ermöglichen, kann der letzte Funktionsblock in dem Datenfluss, z. B. DMA-Block 170, einen CRC-Code-Rechner umfassen, so dass der Verarbeitungskern 110 nur einen CRC-Code anstatt des gesamten Ausgabedatenstroms prüfen muss.
  • Obwohl die Funktionsblöcke des ASIC 100 in der Implementierung herkömmlich sein können, können spezifische Merkmale in verschiedenen Funktionsblöcken eingebaut sein, um Testoperationen zu ermöglichen, die durch den eingebetteten Prozessor 110 ausgeführt werden. Beispielsweise kann der DMA-Block 170 Schaltungsanordnung umfassen, die die CRC-Berechnungen durchführt, um Fehlererfassung zu ermöglichen, ohne zu erfordern, dass der Verarbeitungskern 110 den gesamten Datenstrom überwacht. Eingabeblöcke, wie z. B. die USB-Schnittstelle 150 können Wege liefern, die es dem Verarbeitungskern 110 erlauben, Eingangswerte in die Eingabe-FIFO-Puffer zu schreiben, um Dateneingabe zu simulieren, wenn ein Datenfluss getestet wird. Implementierungen von „Rückschleifentest"-Fähigkeiten in dem Funktionsblock können Tests ermöglichen, die durch den Verarbeitungskern 110 ausgeführt werden. Solche Tests wären besonders sinnvoll zum Testen von chipinternen Netzwerk-Schnittstellen.
  • Der Verarbeitungskern 110 kann auch Datenfluss durch die Blöcke der ASIC 100 bei spezifischen Taktgeschwindigkeiten testen, die bei der ASIC 100 verwendet werden, und bestimmen, ob die Blöcke die erforderliche Zeitgebung erfüllen. Für dieses Testen können die Takt- und Rücksetzpins der ASIC 100 während der Herstellung oder des Systempegeltestens auf die Weise getrieben werden, die für den normalen Betrieb der ASIC 100 erforderlich ist. Herkömmliche Test ausrüstung 400, wie sie in 4 dargestellt ist, kann ohne weiteres das Zeitsignal CLK und die Steuersignale ASICTEST implementieren, um die ASIC bei voller Geschwindigkeit oder bei einer erhöhten Geschwindigkeit zu testen, beispielsweise um Zeitgrenzwerte während des Herstellungstestens zu beweisen.
  • Bei dem obigen Testprozess kann der Verarbeitungskern 110 einen Ausfallcode CODE liefern, zusätzlich zum Aktivieren des Signals BISTERROR. Der Ausfallcode CODE würde die Art oder die Position des Ausfalls anzeigen, der während des Testens gefunden wird. Der Wert eines 2-Bit-Ausfallcodes kann beispielsweise bestimmen, ob der erfasste Ausfall in dem internen Speicher 120, dem Codec 140, dem DMA-Block 170 oder dem Schnittstellenblock 150 ist.
  • Bei einem Produkt ist die ASIC 100 mit anderen Systemkomponenten 500 verbunden, wie es z. B. in 5 dargestellt ist. Bei dem Ausführungsbeispiel von 5 ist beispielsweise die externe Schnittstelle 150 mit einem Host-Verbinder 510 verbunden, für die Verbindung zu einem Host-Computer oder externen Speicher, und die Druckmaschinenkommunikation 160 verbindet mit einem Druckerverbinder 520 eines Druckers. Die Takt- und Systemsteuerschaltung 540 und ein optionaler externer Speicher 530 verbinden mit Zeitschaltungen 180 und der GPIO-Schnittstelle 130. Für Systempegeltesten steuert die Systemsteuerung 540 das Signal ASICTEST, um einen Systempegeltest auszuwählen, und überwacht die Signale BISTDONE und BISTERROR, um zu bestimmen, ob die ASIC 100 ordnungsgemäß funktioniert. Wenn bei einem System, wie es in 5 dargestellt ist, Testroutinen ausgeführt werden, die von einem internen Speicher 120 sein können oder von dem Speicher 530 zu der ASIC 100 heruntergeladen werden können, kann der Verarbeitungskern 110 die ASIC 100 und alle anderen Systemkomponenten 500 testen.
  • Obwohl die Erfindung mit Bezugnahme auf bestimmte Ausführungsbeispiele beschrieben wurde, ist die Beschreibung nur ein Beispiel der Anwendung der Erfindung und sollte nicht als Beschränkung angesehen werden. Obwohl das oben beschriebene Ausführungsbeispiel ein Formatierer für einen Drucker ist, können Ausführungsbeispiele der Erfindung beispielsweise in anderen integrierten Schaltungstypen verwendet werden. Verschiedene andere Adaptionen und Kombinationen von Merkmalen der offenbarten Ausführungsbeispiele liegen innerhalb des Schutzbereichs der Erfindung, wie er durch die folgenden Ansprüche definiert ist.

Claims (5)

  1. Eine integrierte Schaltung, die folgende Merkmale umfasst: einen Verarbeitungskern (110); einen internen Speicher (120), der Testroutinen (128) enthält, die der Verarbeitungskern ausführt, um die integrierte Schaltung zu testen; und eine Schnittstelle (130), die ein Steuersignaleingangssignal (ASICTEST) empfängt, das anzeigt, ob ein Herstellungs- oder ein Im-Produkt-Test auf der Basis der Testroutinen (128) in dem internen Speicher (120) auszuführen ist, oder ob Firmware, die von einem externen Speicher heruntergeladen wird, auszuführen ist, wobei die Schnittstelle (130) ein erstes Ausgangssignal (BISTERROR) und ein zweites Ausgangssignal (BISTDONE) liefert, wobei die Schnittstelle (130) mit dem Verarbeitungskern (110) gekoppelt ist, um die Aktivierung des ersten Ausgangssignals (BISTERROR) zu ermöglichen, das einen Fehler beim Ausführen der Testroutine (128) für den Herstellungs- oder den Im-Produkt-Test anzeigt, und eines zweiten Ausgangssignals (BISTDONE), das anzeigt, wann das erste Ausgangssignal (BISTERROR) das Testergebnis anzeigt, wobei der Verarbeitungskern (110) das erste Ausgangssignal (BISTERROR) hin- und herschaltet, um zu verifizieren, dass das erste Ausgangssignal (BISTERROR) funktionsfähig ist, wobei ein bestandener Selbsttest der integrierten Schaltung (100) durch das Hin- und Herschalten des ersten Ausgangssignals (BISTERROR) identifiziert wird, gefolgt von der Aktivierung des zweiten Ausgangssignals (BISTDONE), während das erste Ausgangssignal (BISTERROR) inaktiv ist, und wobei ein fehlgeschlagener Selbsttest der integrierten Schaltung (100) durch die Aktivierung des zweiten Ausgangssignals (BISTDONE) identifiziert wird, während das erste Ausgangssignal (BISTERROR) aktiv ist.
  2. Die integrierte Schaltung gemäß Anspruch 1, bei der der Verarbeitungskern (110) die Testroutinen (128) von dem internen Speicher (120) während eines Herstellungstests der integrierten Schaltung (100) ausführt.
  3. Die integrierte Schaltung gemäß Anspruch 1 oder 2, bei der der interne Speicher (120) einen ersten Satz von Testroutinen für die Ausführung während des Herstellungstests der integrierten Schaltung (100) und einen zweiten Satz von Testroutinen für die Ausführung während des Im-Produkt-Tests der integrierten Schaltung (100) enthält, wobei das Steuersignaleingangssignal (ASICTEST) in die integrierte Schaltung (100) steuert, ob der erste oder der zweite Satz von Routinen ausgeführt wird.
  4. Ein Testverfahren für eine integrierte Schaltung, das folgende Schritte umfasst: Empfangen eines Steuersignaleingangssignals (ASIC-TEST), das anzeigt, ob ein Herstellungs- oder ein Im-Produkt-Test auszuführen ist, oder ob Firmware, die von einem externen Speicher heruntergeladen wird, auszuführen ist; wenn ein Herstellungs- oder ein Im-Produkt-Test auszuführen ist, Verwenden eines Verarbeitungskerns (110) in der integrierten Schaltung (100), um Testroutinen (128) für den Herstellungs- oder den Im-Produkt-Test auszuführen, die in der integrierten Schaltung gespeichert sind; Beobachten eines ersten Signals (BISTERROR), das von der integrierten Schaltung (100) ausgegeben wird, wobei das erste Signal (BISTERROR) einen Fehler beim Ausführen der Testroutinen (128) durch den Verarbeitungskern (110) anzeigt; Beobachten eines zweiten Signals (BISTDONE), das von der integrierten Schaltung (100) ausgegeben wird, wobei das zweite Signal (BISTDONE) anzeigt, wenn das erste Ausgangssignal (BISTERROR) das Testergebnis anzeigt; und Hin- und Herschalten des ersten Signals (BISTERROR) vor der Aktivierung des zweiten Signals (BISTDONE), um zu verifizieren, dass das erste Signal (BISTERROR) funktionsfähig ist; wobei ein bestandener Selbsttest der integrierten Schaltung (100) durch das Hin- und Herschalten des ersten Signals (BISTERROR) identifiziert wird, gefolgt von der Aktivierung des zweiten Signals (BISTDONE), während das erste Signal (BISTERROR) inaktiv ist, und wobei ein fehlgeschlagener Selbsttest der integrierten Schaltung (100) durch die Aktivierung des zweiten Signals (BISTDONE) identifiziert wird, während das erste Signal (BISTERROR) aktiv ist.
  5. Das Testverfahren gemäß Anspruch 4, das ferner folgende Schritte umfasst: Anlegen des Steuersignals (ASICTEST) an die integrierte Schaltung (100); und Auswählen der Testroutinen gemäß dem Steuersignal, wobei: wenn das Steuersignal einen ersten Zustand aufweist, die gewählten Testroutinen den Herstellungstest der integrierten Schaltung (100) implementieren; und wenn das Steuersignal einen zweiten Zustand hat, die ausgewählten Testroutinen den Im-Produkt-Test der integrierten Schaltung (100) implementieren.
DE60212271T 2001-07-30 2002-04-15 Eingebauter Selbsttest mit eingebautem Speicher und Prozessor in einer ASIC Vorrichtung Expired - Lifetime DE60212271T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US917972 2001-07-30
US09/917,972 US7418642B2 (en) 2001-07-30 2001-07-30 Built-in-self-test using embedded memory and processor in an application specific integrated circuit

Publications (2)

Publication Number Publication Date
DE60212271D1 DE60212271D1 (de) 2006-07-27
DE60212271T2 true DE60212271T2 (de) 2007-07-19

Family

ID=25439587

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60212271T Expired - Lifetime DE60212271T2 (de) 2001-07-30 2002-04-15 Eingebauter Selbsttest mit eingebautem Speicher und Prozessor in einer ASIC Vorrichtung

Country Status (7)

Country Link
US (6) US7418642B2 (de)
EP (1) EP1282041B1 (de)
JP (1) JP2003114260A (de)
KR (1) KR100932562B1 (de)
DE (1) DE60212271T2 (de)
SG (1) SG94870A1 (de)
TW (1) TWI276107B (de)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418642B2 (en) 2001-07-30 2008-08-26 Marvell International Technology Ltd. Built-in-self-test using embedded memory and processor in an application specific integrated circuit
US7181649B2 (en) * 2003-05-09 2007-02-20 Stmicroelectronics, Inc. Universal serial bus (USB) smart card having enhanced testing features and related system, integrated circuit, and methods
US7525679B2 (en) * 2003-09-03 2009-04-28 Marvell International Technology Ltd. Efficient printer control electronics
US7975094B2 (en) * 2004-04-15 2011-07-05 Marvell International Technology Ltd. Programmable I/O interface
US8621304B2 (en) * 2004-10-07 2013-12-31 Hewlett-Packard Development Company, L.P. Built-in self-test system and method for an integrated circuit
US7053470B1 (en) 2005-02-19 2006-05-30 Azul Systems, Inc. Multi-chip package having repairable embedded memories on a system chip with an EEPROM chip storing repair information
JP4839841B2 (ja) * 2006-01-04 2011-12-21 株式会社日立製作所 スナップショット再起動方法
US7421361B2 (en) * 2006-03-27 2008-09-02 Dell Products L.P. Automated factory install printer test process
ATE485527T1 (de) * 2007-02-16 2010-11-15 Freescale Semiconductor Inc System und rechnerprogrammprodukt zum testen einer logischen schaltung
US8484524B2 (en) * 2007-08-21 2013-07-09 Qualcomm Incorporated Integrated circuit with self-test feature for validating functionality of external interfaces
US8122445B2 (en) * 2007-08-24 2012-02-21 Mediatek Inc. Processing system capable of downloading firmware code and being tested at same site during MP phase
US7673200B2 (en) * 2007-10-10 2010-03-02 Asix Electronics Corporation Reprogrammable built-in-self-test integrated circuit and test method for the same
US7856577B2 (en) * 2007-11-21 2010-12-21 Lsi Corporation Command language for memory testing
US7882406B2 (en) 2008-05-09 2011-02-01 Lsi Corporation Built in test controller with a downloadable testing program
JP5509568B2 (ja) * 2008-10-03 2014-06-04 富士通株式会社 コンピュータ装置、プロセッサ診断方法、及びプロセッサ診断制御プログラム
TWI387973B (zh) * 2008-10-30 2013-03-01 Silicon Motion Inc 資料儲存裝置、資料儲存控制器及相關自動化測試的方法
US7817655B1 (en) * 2008-10-30 2010-10-19 Xilinx, Inc. Determining sizes of FIFO buffers between functional blocks in an electronic circuit
US8341476B1 (en) * 2008-10-31 2012-12-25 Marvell International Ltd. I-R voltage drop screening when executing a memory built-in self test
CN101907683B (zh) * 2009-06-02 2013-05-08 上海摩波彼克半导体有限公司 数字基带芯片中i2c模块的自动测试方法
CN102332308B (zh) * 2009-11-11 2015-06-03 盛科网络(苏州)有限公司 一种对存储器接口电路进行在线调试的方法
US8239582B2 (en) 2010-05-27 2012-08-07 Cilag Gmbh International Hand-held test meter with disruption avoidance circuitry
US8825948B2 (en) * 2010-11-17 2014-09-02 Broadcom Corporation Memory controller with emulative internal memory buffer
US9082474B2 (en) 2011-04-21 2015-07-14 Micron Technology, Inc. Method and apparatus for providing preloaded non-volatile memory content
US8850277B2 (en) * 2011-07-15 2014-09-30 Synopsys, Inc. Detecting random telegraph noise induced failures in an electronic memory
CN102890970B (zh) * 2011-07-21 2017-04-19 广东新岸线计算机系统芯片有限公司 一种pop封装的soc芯片dram输入/输出测试方法和装置
US9117552B2 (en) * 2012-08-28 2015-08-25 Kingtiger Technology(Canada), Inc. Systems and methods for testing memory
US8677306B1 (en) * 2012-10-11 2014-03-18 Easic Corporation Microcontroller controlled or direct mode controlled network-fabric on a structured ASIC
US9024657B2 (en) 2012-10-11 2015-05-05 Easic Corporation Architectural floorplan for a structured ASIC manufactured on a 28 NM CMOS process lithographic node or smaller
US9384108B2 (en) * 2012-12-04 2016-07-05 International Business Machines Corporation Functional built-in self test for a chip
US20150026528A1 (en) * 2013-07-16 2015-01-22 Manuel A. d'Abreu Controller based memory evaluation
US10126362B2 (en) 2014-12-15 2018-11-13 International Business Machines Corporation Controlling a test run on a device under test without controlling the test equipment testing the device under test
US9417952B2 (en) 2014-12-18 2016-08-16 Freescale Semiconductor, Inc. Direct memory access (DMA) unit with error detection
US9690681B1 (en) * 2015-09-03 2017-06-27 Cadence Design Systems, Inc. Method and system for automatically generating executable system-level tests
CN106646191A (zh) * 2016-11-25 2017-05-10 天津津航计算技术研究所 针对SiP内嵌存储器的功能测试方法
US10490291B1 (en) 2018-04-24 2019-11-26 The United States Of America, As Represented By The Secretary Of The Navy Memory check ASIC for fuzes and safety and arming devices
US10930364B2 (en) 2018-11-16 2021-02-23 International Business Machines Corporation Iterative functional test exerciser reload and execution
DE102019207868A1 (de) * 2019-05-29 2020-12-03 Continental Teves Ag & Co. Ohg Modul und Verfahren zur Initialisierung und Kalibrierung eines Produkts während dessen Herstellung
DE102020121109A1 (de) * 2019-09-20 2021-03-25 Samsung Electronics Co., Ltd. Speicher-controller, speichervorrichtungen und betriebsverfahren der speichervorrichtungen
KR102416994B1 (ko) * 2020-10-23 2022-07-05 연세대학교 산학협력단 리던던시 분석 방법 및 리던던시 분석 장치

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58221453A (ja) * 1982-06-17 1983-12-23 Toshiba Corp 多重系情報処理装置
US6085336A (en) * 1987-06-02 2000-07-04 Texas Instruments Incorporated Data processing devices, systems and methods with mode driven stops
JP2673298B2 (ja) * 1987-12-17 1997-11-05 三菱電機株式会社 セルフテスト機能付半導体集積回路
US5416919A (en) * 1989-07-19 1995-05-16 Sharp Kabushiki Kaisha Semiconductor integrated circuit with functional blocks capable of being individually tested externally
EP0503117B1 (de) * 1991-03-13 1995-06-28 Siemens Aktiengesellschaft Prozessorschaltung
JPH0721054A (ja) * 1993-07-05 1995-01-24 Fujitsu Ltd 半導体集積回路のテスト方法
TW421761B (en) * 1994-04-12 2001-02-11 Yokogawa Electric Corp Verification support system
US5751158A (en) * 1995-11-07 1998-05-12 Micron Technology, Inc. Method and apparatus for selectively deriving a boosted voltage exceeding an internal voltage
US5732209A (en) * 1995-11-29 1998-03-24 Exponential Technology, Inc. Self-testing multi-processor die with internal compare points
JPH1069799A (ja) * 1996-04-30 1998-03-10 Texas Instr Inc <Ti> 集積回路メモリ・デバイス用組込み自己テスト装置
US5668815A (en) * 1996-08-14 1997-09-16 Advanced Micro Devices, Inc. Method for testing integrated memory using an integrated DMA controller
US6112298A (en) * 1996-12-20 2000-08-29 Texas Instruments Incorporated Method for managing an instruction execution pipeline during debugging of a data processing system
US5961653A (en) 1997-02-19 1999-10-05 International Business Machines Corporation Processor based BIST for an embedded memory
US6230290B1 (en) 1997-07-02 2001-05-08 International Business Machines Corporation Method of self programmed built in self test
US5764655A (en) * 1997-07-02 1998-06-09 International Business Machines Corporation Built in self test with memory
US6948794B2 (en) * 1997-07-15 2005-09-27 Silverbrook Reserach Pty Ltd Printhead re-capping assembly for a print and demand digital camera system
US6055649A (en) * 1997-11-19 2000-04-25 Texas Instruments Incorporated Processor test port with scan chains and data streaming
DE19861088A1 (de) * 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
JPH11306039A (ja) * 1998-04-23 1999-11-05 Fujitsu Ltd 試験プログラム実行制御装置,試験プログラム実行制御方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
DE19833208C1 (de) * 1998-07-23 1999-10-28 Siemens Ag Integrierte Schaltung mit einer Selbsttesteinrichtung zur Durchführung eines Selbsttests der integrierten Schaltung
DE19834976A1 (de) 1998-08-03 2000-03-02 Siemens Ag Integrierte Schaltung mit eingebautem Baugruppentest
DE19835258B4 (de) * 1998-08-04 2006-07-27 Infineon Technologies Ag Integrierte dynamische Speicherschaltung mit einer Selbsttesteinrichtung
US6237054B1 (en) * 1998-09-14 2001-05-22 Advanced Micro Devices, Inc. Network interface unit including a microcontroller having multiple configurable logic blocks, with a test/program bus for performing a plurality of selected functions
US6249889B1 (en) * 1998-10-13 2001-06-19 Advantest Corp. Method and structure for testing embedded memories
US6249893B1 (en) * 1998-10-30 2001-06-19 Advantest Corp. Method and structure for testing embedded cores based system-on-a-chip
US6067262A (en) * 1998-12-11 2000-05-23 Lsi Logic Corporation Redundancy analysis for embedded memories with built-in self test and built-in self repair
US6427216B1 (en) * 1999-03-11 2002-07-30 Agere Systems Guardian Corp. Integrated circuit testing using a high speed data interface bus
US6564347B1 (en) * 1999-07-29 2003-05-13 Intel Corporation Method and apparatus for testing an integrated circuit using an on-chip logic analyzer unit
EP1087233A1 (de) * 1999-09-23 2001-03-28 Infineon Technologies AG Verfahren und Anordnung zum datenschützenden Selbsttest für Microcontroller
US6550020B1 (en) * 2000-01-10 2003-04-15 International Business Machines Corporation Method and system for dynamically configuring a central processing unit with multiple processing cores
US6681354B2 (en) * 2001-01-31 2004-01-20 Stmicroelectronics, Inc. Embedded field programmable gate array for performing built-in self test functions in a system on a chip and method of operation
US7418642B2 (en) 2001-07-30 2008-08-26 Marvell International Technology Ltd. Built-in-self-test using embedded memory and processor in an application specific integrated circuit
US6983398B2 (en) * 2002-04-24 2006-01-03 Hewlett-Packard Development Company, L.P. Testing processors

Also Published As

Publication number Publication date
US8321731B2 (en) 2012-11-27
US8046652B2 (en) 2011-10-25
EP1282041A3 (de) 2003-10-22
EP1282041A2 (de) 2003-02-05
US7890828B2 (en) 2011-02-15
US8566660B2 (en) 2013-10-22
KR20030011650A (ko) 2003-02-11
US20110138241A1 (en) 2011-06-09
US20090013229A1 (en) 2009-01-08
JP2003114260A (ja) 2003-04-18
TWI276107B (en) 2007-03-11
DE60212271D1 (de) 2006-07-27
SG94870A1 (en) 2003-03-18
KR100932562B1 (ko) 2009-12-17
US20120036396A1 (en) 2012-02-09
US7418642B2 (en) 2008-08-26
US20030023914A1 (en) 2003-01-30
US8874983B2 (en) 2014-10-28
EP1282041B1 (de) 2006-06-14
US20130080835A1 (en) 2013-03-28
US20140068333A1 (en) 2014-03-06

Similar Documents

Publication Publication Date Title
DE60212271T2 (de) Eingebauter Selbsttest mit eingebautem Speicher und Prozessor in einer ASIC Vorrichtung
DE102006009224B4 (de) Auswahl eines Testalgorithmus in einer Steuerung für eingebauten Speicherselbsttest
DE102004023407B4 (de) Testvorrichtung und Verfahren zum Testen eines eingebetteten Speicherkerns sowie zugehöriger Halbleiterchip
DE10010043C2 (de) Halbleitervorrichtung-Simulationseinrichtung und zugehörige Halbleitertestprogramm-Debugging-Einrichtung
DE69729771T2 (de) Integrierte Schaltung mit einer eingebauten Selbsttestanordnung
DE4313594C2 (de) Mikroprozessor
DE3903835C2 (de)
DE60212962T2 (de) Hierarchischer intergrierter selbsttest
DE19952272B4 (de) Verfahren und System zum Prüfen von auf eingebetteten Bausteinen basierenden integrierten Systemchip-Schaltungen
DE60220511T2 (de) Verfahren und system zur optimierung der testkosten und deaktivierungsdefekte für scan- und bist-speicher
DE60008088T2 (de) Mehrprozessorsystem Prüfungsschaltung
DE3901579C2 (de)
DE60023882T2 (de) System auf einem Chip mit reprogrammierbarem Testgerät, Fehlerbeseitiger und Busüberwachung
DE102004009693A1 (de) Technik zum Kombinieren eines Abtasttests und eines eingebauten Speicherselbsttests
DE19948388A1 (de) Verfahren und System zum Prüfen eingebetteter Speicher
EP0104635A2 (de) Verfahren und Anordnung zum Prüfen eines digitalen Rechners
DE102016204623A1 (de) Arbitrierung zur speicherdiagnose
EP1565825A2 (de) Einrichtung und verfahren zur analyse von eingebetteten systemen
DE10004198C2 (de) System und Verfahren für eine intelligente Analysesonde
DE102019131865A1 (de) Verfahren und vorrichtung zur eigendiagnose der ram-fehlererkennungslogik eines antriebsstrangcontrollers
DE102004026521A1 (de) Vorrichtung und Verfahren zum Testen von Speichern
DE10226948A1 (de) Vorrichtung und Verfahren für eine eingebaute Zufallsmusterselbstprüfung
DE102009010886A1 (de) Erkennung der Verzögerungszeit in einem eingebauten Speicherselbsttest unter Anwendung eines Ping-Signals
DE102004043063B4 (de) Verfahren zum Betreiben eines Halbleiter-Bauelements mit einem Test-Modul
DE102006026448B4 (de) Verfahren und/oder Vorrichtung zum Erkennen und Behandeln von Fehlern in einem Speicher

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE., SG

8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: DILG HAEUSLER SCHINDELMANN PATENTANWALTSGESELLSCHA

8328 Change in the person/name/address of the agent

Representative=s name: DILG HAEUSLER SCHINDELMANN PATENTANWALTSGESELLSCHA

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

Owner name: MARVELL INTERNATIONAL TECHNOLOGY LTD., HAMILTO, BM

8328 Change in the person/name/address of the agent

Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUSSER,