DE102019124122A1 - Ein-Chip-System für einen At-Speed-Test einer Logikschaltung und Betriebsverfahren desselben - Google Patents

Ein-Chip-System für einen At-Speed-Test einer Logikschaltung und Betriebsverfahren desselben Download PDF

Info

Publication number
DE102019124122A1
DE102019124122A1 DE102019124122.7A DE102019124122A DE102019124122A1 DE 102019124122 A1 DE102019124122 A1 DE 102019124122A1 DE 102019124122 A DE102019124122 A DE 102019124122A DE 102019124122 A1 DE102019124122 A1 DE 102019124122A1
Authority
DE
Germany
Prior art keywords
data
register
scan register
scan
test
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102019124122.7A
Other languages
English (en)
Inventor
Beom Seok SHIN
Jin-Soo Park
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102019124122A1 publication Critical patent/DE102019124122A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318544Scanning methods, algorithms and patterns
    • G01R31/318547Data generators or compressors
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318594Timing aspects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2832Specific tests of electronic circuits not provided for elsewhere
    • G01R31/2836Fault-finding or characterising
    • 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/31712Input or output aspects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31724Test controller, e.g. BIST state machine
    • 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/31725Timing aspects, e.g. clock distribution, skew, propagation delay
    • 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/31727Clock circuits aspects, e.g. test clock circuit details, timing aspects for signal generation, circuits for testing clocks
    • 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/3177Testing of logic operation, e.g. by logic analysers
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318536Scan chain arrangements, e.g. connections, test bus, analog signals
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318552Clock circuits details
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318569Error indication, logging circuits

Abstract

Ein Ein-Chip-System (100) enthält ein erstes Scan-Register (101), das in einem Prozessorkern ist und einem Eingabeport des ersten Prozessorkerns am nächsten ist; eine Invertierschaltung (102) auf einem Rückführungspfad des ersten Scan-Registers (101); ein zweites Scan-Registers (106) im ersten Prozessorkern; und eine Logikschaltung (105) auf einem Datenpfad zwischen dem ersten Scan-Register (101) und dem zweiten Scan-Register (106). In einem Testmodus für einen At-Speed-Test der Logikschaltung erzeugt die Invertierschaltung (102) Testdaten (TD) durch Invertieren von vom ersten Scan-Register (101) ausgegebenen Scandaten, wobei das erste Scan-Register (101) die Testdaten (TD) als Reaktion auf einen ersten Impuls eines Taktsignals (CLK) speichert, die Logikschaltung (105) basierend auf den vom ersten Scan-Register (101) ausgegebenen Testdaten (TD) Ergebnisdaten erzeugt, und das zweite Scan-Register (106) die Ergebnisdaten als Reaktion auf einen zweiten Impuls des Taktsignals (CLK) speichert.

Description

  • Querverweis auf ähnliche Anmeldungen
  • Die koreanische Patentanmeldung Nr. 10-2019-0003372 , eingereicht am 10. Januar 2019 im koreanischen Patentamt, mit dem Titel „Ein-Chip-System für einen At-Speed-Test einer Logikschaltung und Betriebsverfahren desselben“ ist durch Bezug in ihrer Gesamtheit hier integriert.
  • Hintergrund
  • Gebiet
  • Ausführungsformen des hierin beschriebenen erfinderischen Konzepts beziehen sich auf ein Ein-Chip-System und beziehen sich insbesondere auf ein Ein-Chip-System, das einen At-Speed-Test einer Logikschaltung und ein Betriebsverfahren des Ein-Chip-Systems durchführt.
  • Beschreibung des Stands der Technik
  • Ein Ein-Chip-System (SoC) ist ein Halbleiterchip, in dem ein System zur Durchführung verschiedener Funktionen implementiert ist. Eine Technik zum prüfgerechten Entwurf (Design for Testability = DFT) wurde verwendet, um Logikschaltungen im Ein-Chip-System zu testen. Bei der DFT-Technik ist ein Scan-Test eine Testtechnik zum Testen einer Logikschaltung durch Verifizieren von Ausgabedaten basierend auf Eingabe-Scanmusterdaten. Fehler der Logikschaltung, z.B. ein Haftfehler, ein Transition- bzw. Übergang-Verzögerungsfehler, etc. können basierend auf dem Scan-Test erkannt werden. Ein At-Speed-Test kann als ein Scan-Test durchgeführt werden, um den Übergang-Verzögerungsfehler der Logikschaltung erkennen.
  • Da der Bedarf an komplizierteren Berechnungen ansteigt, wird häufig ein SoC (nachfolgend als ein „Mehrprozessorkern-SoC“ bezeichnet) verwendet, auf dem eine Mehrzahl an Prozessorkernen angebracht ist. Da die Datenaustauschmengen zwischen der Mehrzahl an Prozessorkernen beim Testen des Multiprozessorkern-SoC ansteigen, kann es wünschenswert sein, Schnittstellenschaltungen zwischen der Mehrzahl an Prozessorkernen zu testen. Wenn die Prozessorkerne allerdings einzeln getestet werden, kann der At-Speed-Test womöglich nicht ordentlich und effektiv an den Schnittstellenschaltungen durchgeführt werden.
  • Kurzfassung
  • Ausführungsformen sind ein Ein-Chip-System, das eine Mehrzahl an Prozessorkernen, die ein erstes Scan-Register enthalten, das in einem ersten Prozessorkern einer Mehrzahl an Prozessorkernen ist und einem Eingangs- bzw. Eingabeport des ersten Prozessorkerns am nächsten ist; eine Invertierschaltung auf einem Rückführungspfad des ersten Scan-Registers; ein zweites Scan-Register im ersten Prozessorkern; und eine Logikschaltung auf einem Datenpfad zwischen dem ersten Scan-Register und dem zweiten Scan-Register enthalten. In einem Testmodus für einen At-Speed-Test der Logikschaltung erzeugt die Invertierschaltung Testdaten durch Invertieren von vom ersten Scan-Register ausgegebenen Scandaten, wobei das erste Scan-Register die Testdaten als Reaktion auf einen ersten Impuls eines Taktsignals speichert, die Logikschaltung basierend auf den vom ersten Scan-Register ausgegebenen Testdaten Ergebnisdaten erzeugt, und das zweite Scan-Register die Ergebnisdaten als Reaktion auf einen zweiten Impuls des Taktsignals speichert.
  • Ausführungsformen sind ein Ein-Chip-System, das eine Mehrzahl an Prozessorkernen, die ein erstes Scan-Register enthalten, das in einem ersten Prozessorkern der Mehrzahl an Prozessorkernen ist und einem Eingangs- bzw. Eingabeport des ersten Prozessorkerns am nächsten ist; eine erste Invertierschaltung auf einem Rückführungspfad des ersten Scan-Registers; ein zweites Scan-Register, das in einem zweiten Prozessorkern der Mehrzahl an Prozessorkernen ist und einem Eingangs- bzw. Eingabeport des zweiten Prozessorkerns am nächsten ist; und eine Logikschaltung auf einem Datenpfad zwischen dem ersten Scan-Register und dem zweiten Scan-Register enthalten. In einem Testmodus für einen At-Speed-Test der Logikschaltung erzeugt die erste Invertierschaltung erste Testdaten durch Invertieren von vom ersten Scan-Register ausgegebenen Scandaten, wobei das erste Scan-Register die ersten Testdaten als Reaktion auf einen ersten Impuls eines Taktsignals speichert, die Logikschaltung basierend auf den vom ersten Scan-Register ausgegebenen ersten Testdaten Ergebnisdaten erzeugt, und das zweite Scan-Register die Ergebnisdaten als Reaktion auf einen zweiten Impuls des Taktsignals speichert.
  • Ausführungsformen sind ein Betriebsverfahren eines Ein-Chip-Systems für einen At-Speed-Test einer Logikschaltung auf einem Datenpfad zwischen einem ersten Scan-Register und einem zweiten Scan-Register. Das Verfahren enthält Ausgeben von Scandaten durch das erste Scan-Register als Reaktion auf ein Taktsignal, das eine erste Frequenz aufweist; Versorgen des ersten Scan-Registers mit Testdaten, die durch Invertieren der vom ersten Scan-Register ausgegebenen Scandaten erzeugt werden; Ausgeben der Testdaten durch das erste Scan-Register als Reaktion auf einen ersten Impuls des Taktsignals, das eine zweite Frequenz aufweist; Ausgeben von Ergebnisdaten durch die Logikschaltung, basierend auf den vom ersten Scan-Register ausgegebenen Testdaten; und Ausgeben der Ergebnisdaten durch das zweite Scan-Register als Reaktion auf einen zweiten Impuls des Taktsignals, das die zweite Frequenz aufweist.
  • Figurenliste
  • Merkmale werden einem Fachmann durch das detaillierte Beschreiben von Ausführungsbeispielen mit Bezug auf die beigefügten Zeichnungen deutlich werden, wobei:
    • 1 ein Ein-Chip-System (SoC) nach einem Ausführungsbeispiel darstellt.
    • 2 ein Beispiel eines ersten Prozessorkerns aus 1 darstellt.
    • 3A ein Register nach einem Ausführungsbeispiel darstellt.
    • 3B ein Beispiel eines Registers aus 3A darstellt.
    • 4 ein SoC für einen At-Speed-Test einer Logikschaltung nach einem Ausführungsbeispiel darstellt.
    • 5 ein Zeitdiagramm eines Taktsignals und eines Scan-Aktivierungssignals für einen At-Speed-Test nach einem Ausführungsbeispiel darstellt.
    • 6 einen Beispielbetrieb eines SoC aus 4 basierend auf einem Taktsignal und einem Scan-Aktivierungssignal aus 5 darstellt.
    • 7 ein Flussdiagramm eines Beispielbetriebs eines SoC aus 4 für einen At-Speed-Test darstellt.
    • 8 ein SoC für einen At-Speed-Test einer Logikschaltung nach einem Ausführungsbeispiel darstellt.
    • 9 ein SoC für einen At-Speed-Test einer Logikschaltung nach einem Ausführungsbeispiel darstellt.
    • 10 ein SoC für einen At-Speed-Test einer Logikschaltung nach einem Ausführungsbeispiel darstellt.
    • 11 ein SoC für einen At-Speed-Test einer Logikschaltung nach einem Ausführungsbeispiel darstellt.
    • 12 ein Testsystem nach einem Ausführungsbeispiel darstellt.
    • 13 ein Ausbildungsbeispiel eines elektronischen Systems darstellt, an dem ein SoC nach einem Ausführungsbeispiel angewandt wird.
  • Detaillierte Beschreibung
  • Nachfolgend werden Ausführungsformen deutlich und im Detail in solch einem Maße beschrieben, dass ein Durchschnittsfachmann die Ausführungsformen einfach umsetzen kann.
  • 1 zeigt ein Ein-Chip-System (SoC) 100 nach einem Ausführungsbeispiel auf. Bezugnehmend auf 1 kann das SoC 100 eine Mehrzahl an Prozessorkernen 110_0 bis 110_n und einen Bus 150 enthalten. Zum Beispiel kann das SoC 100 0-te bis n-te Prozessorkerne 110_0 bis 100_n enthalten. Zum Beispiel kann der 0-te Prozessorkern 110_0 ein Top-Level-Prozessorkern sein und die ersten bis n-ten Prozessorkerne 110_1 bis 110 n können Low-Level-Prozessorkerne sein. Jeder der Mehrzahl an Prozessorkernen 110 0 bis 110_n kann Eingabedaten verarbeiten. Zum Beispiel kann jeder der Mehrzahl an Prozessorkernen 110_0 bis 110 n basierend auf den Eingabedaten verschiedene Operationen durchführen.
  • Die Mehrzahl an Prozessorkernen 110_0 bis 110 n kann jeweils Logikschaltungen CL0 bis CLn enthalten. Jede der Logikschaltungen CL0 bis CLn kann eine Mehrzahl an kombinatorischen Logikschaltungen und eine Mehrzahl an sequentiellen Logikschaltungen enthalten. Jeder der Mehrzahl an Prozessorkernen 110_0 bis 110 n kann Daten durch eine darin enthaltene interne Logikschaltung verarbeiten. Zum Beispiel kann der Top-Level-Prozessorkern 110_0 Daten durch die darin enthaltene 0-te Logikschaltung CL0 verarbeiten. Ein erster Prozessorkern 110_1 kann Daten durch die darin enthaltene erste Logikschaltung CL1 verarbeiten.
  • Zum Beispiel kann die Mehrzahl an Prozessorkernen 110_0 bis 110 n in einem Funktionsblock einer zentralen Verarbeitungseinheit (GPU), eines digitalen Signalprozessor (DSP), einer neuronalen Verarbeitungseinheit (NPU), etc. enthalten sein. Zum Beispiel kann die Mehrzahl an Prozessorkernen 110_0 bis 110 n in getrennten Funktionsblöcken enthalten sein.
  • Der Top-Level-Prozessorkern 110_0 kann Operationen der Low-Level-Prozessorkerne 110_1 und 110_n steuern. Der Top-Level-Prozessorkern 110_0 kann einen Top-Controller 111 enthalten. Der Top-Controller 111 kann Steuersignale zur Steuerung der Low-Level-Prozessorkerne 110_1 bis 110_n erzeugen und kann die erzeugten Steuersignale an die Low-Level-Prozessorkerne 110_1 bis 110 n übermitteln.
  • Die Low-Level-Prozessorkerne 110_0 bis 110_n können basierend auf den Steuersignalen des Top-Level-Prozessorkerns 110 0 operieren. Zum Beispiel kann der erste Prozessorkern 110_1 als Reaktion auf ein Steuersignal Daten durch die darin enthaltene erste Logikschaltung CL1 verarbeiten. Zum Beispiel können die Low-Level-Prozessorkerne 110_1 bis 110 n gemeinsam mit dem Bus 150 verbunden sein. Alternativ können die Low-Level-Prozessorkerne 110_1 bis 110_n mit verschiedenen Bussen verbunden sein.
  • Der Bus 150 kann einen Datenpfad zur Kommunikation zwischen der Mehrzahl an Prozessorkernen 110_0 bis 110_n vorsehen. Zum Beispiel kann der Top-Level-Prozessorkern 110 0 durch den Bus 150 Daten oder ein Steuersignal an den ersten Prozessorkern 110_1 übermitteln. Der erste Prozessorkern 110_1 kann durch den Bus 150 Daten an den Top-Level-Prozessorkern 110_0 übermitteln. Der erste Prozessorkern 110_1 und der zweite Prozessorkern 110 2 können durch den Bus 150 Daten miteinander austauschen.
  • Um zu bestimmen, ob die Logikschaltungen CL0 bis CLn der Mehrzahl an Prozessorkernen 110 0 bis 110_n fehlerhaft sind, kann die Mehrzahl an Prozessorkernen 110_0 bis 110_n mit Rücksicht auf Testfähigkeit entwickelt werden. Zum Beispiel kann die Mehrzahl an Prozessorkernen eine Schaltung zum prüfgerechten Entwurf (DFT) aufweisen. Zum Beispiel können die Prozessorkerne 110_0 bis 110_n mindestens eine Scan-Kette für einen Scan-Test derart bilden, dass Defekte der Logikschaltung CL0 bis CLn durch einen Scan-Test erfasst werden. Zum Beispiel können Scanmusterdaten (nachfolgend als „Scandaten“ bezeichnet) für den Scan-Test in die Mehrzahl an Prozessorkernen 110_0 bis 110 n eingegeben werden. Die Scandaten können Datenwerte aufweisen, die im Voraus für den Scan-Test gesetzt werden. Die Logikschaltungen CL0 bis CLn der Mehrzahl an Prozessorkernen 110_0 bis 110_n können Daten basierend auf den Scandaten verarbeiten, um Ausgabedaten als ein Verarbeitungsergebnis zu erzeugen. Die Defekte der Logikschaltungen CL0 bis CLn können basierend auf den Ausgabedaten erkannt werden. Zum Beispiel kann ein Übergang-Verzögerungsfehler der Logikschaltungen CL0 bis CLn durch Verwenden des Scan-Tests erkannt werden.
  • In einem Ausführungsbeispiel kann ein At-Speed-Test an den Logikschaltungen CL0 bis CLn durchgeführt werden, um den Übergang-Verzögerungsfehler der Logikschaltungen CL0 bis CLn zu erkennen. Der At-Speed-Test kann ein Test sein zur Bestimmung, ob die Logikschaltungen CL0 bis CLn bei einer Betriebsgeschwindigkeit (d.h. einer Betriebs-Taktfrequenz) des SoC 100 Daten ohne eine unnormale Verzögerung übertragen. Zum Beispiel können die Logikschaltungen CL0 bis CLn im At-Speed-Test basierend auf einem Antriebs-Taktsignal für einen normalen Betrieb (nachfolgend als „normale Funktionsweise“ bezeichnet) des SoC 100 getestet werden. Zum Beispiel kann der At-Speed-Test, obwohl der normale Betrieb des SoC 100 und der At-Speed-Test unter Verwendung des gleichen Taktsignals mit der gleichen Taktfrequenz durchgeführt werden kann, anders sein als der normale Betrieb des SoC 100, da der At-Speed-Test durchgeführt wird, um den Übergang-Verzögerungsfehler der Logikschaltungen CL0 bis CLn basierend auf den Scandaten zu erkennen.
  • Der Top-Controller 111 kann den Scan-Test an der Mehrzahl an Prozessorkernen 110_0 bis 110_n steuern. Der Top-Controller 111 kann Steuersignale für den Scan-Test an die Mehrzahl an Prozessorkernen 110_0 bis 110_n übermitteln. Wenn die Mehrzahl an Prozessorkernen 110_0 bis 110_n zum Beispiel als Reaktion auf die Steuersignale des Top-Controllers 111 operiert, kann der Scan-Test an den Logikschaltungen CL0 bis CLn durchgeführt werden.
  • Die Mehrzahl an Prozessorkernen 110 bis 140 kann für den Scan-Test einzeln getestet werden. Zum Beispiel kann jeweils der Scan-Test für den Top-Level-Prozessorkern 110 und der Scan-Test für den ersten Prozessorkern 110_1 durchgeführt werden. Zum Beispiel kann ein hierarchischer Scan-Test für die Mehrzahl an Prozessorkernen 110_0 bis 110_n durchgeführt werden. Wenn im Gegensatz dazu der Scan-Test an allen Prozessorkernen 110 0 bis 110 n des SoC 100 durchgeführt wird (d.h., wenn der hierarchische Scan-Test für die Prozessorkerne 110_0 bis 110_n nicht durchgeführt wird), können eine Ressource und eine Testzeit für den Scan-Test erhöht werden. Somit kann der hierarchische Scan-Test durchgeführt werden, um die Ressource und die Betriebszeit zu senken.
  • Allgemein, wenn ein hierarchischer Scan-Test für Prozessorkerne durchgeführt wird, kann ein At-Speed-Test für eine Logikschaltung in einer Schnittstelle zwischen den Prozessorkernen womöglich nicht effektiv durchgeführt werden. Nach einem Ausführungsbeispiel kann der At-Speed-Test allerdings, wenn der hierarchische Scan-Test für die Mehrzahl an Prozessorkernen 110_0 bis 110_n durchgeführt wird, unabhängig von den Positionen der Logikschaltungen CL0 bis CLn der Mehrzahl an Prozessorkernen 110_0 bis 110_n ordentlich durchgeführt werden.
  • 2 zeigt ein Beispiel des ersten Prozessorkerns 110_1 aus 1 auf. Zum Beispiel werden Komponenten der Low-Level-Prozessorkerne 110_1 bis 110_n mit Bezug auf 2 beschrieben. Obwohl in 2 der erste Prozessorkern 110_1 aufgezeigt ist, können die verbleibenden Prozessorkerne 110_2 bis 110 n implementiert werden, um dem ersten Prozessorkern 110_1 im Wesentlichen gleich oder ähnlich zu sein.
  • Bezugnehmend auf 2 kann der erste Prozessorkern 110_1 eine Mehrzahl an Eingangs- bzw. Eingabeports IP1 bis IP6, eine Mehrzahl an Registern R1 bis R13, eine Mehrzahl an Logikschaltungen CL1 bis CL10 und eine Mehrzahl an Ausgangs- bzw. Ausgabeports OP1 bis OP6 enthalten.
  • Die Eingabeports IP1 bis IP6 können Daten empfangen, die an den ersten Prozessorkern 110_1 übermittelt werden. Zum Beispiel kann der sechste Eingabeport IP6 Scandaten für den Scan-Test empfangen. Die Register R1 bis R13 können Daten speichern, die als Reaktion auf ein an den ersten Prozessorkern 110_1 übermitteltes Taktsignal eingegeben werden. Die Logikschaltungen CL1 bis CL10 können basierend auf den empfangen Daten operieren. Die Ausgabeports OP1 bis OP6 können Daten des ersten Prozessorkerns 110_1 ausgeben. Zum Beispiel kann der sechste Ausgabeport OP6 Ergebnisdaten ausgeben, die von den Logikschaltungen CL1 bis CL10 basierend auf den Scandaten erzeugt werden.
  • Die Register R1 bis R5, die den Eingabeports IP1-IP5 jeweils am nächsten sind, aus den Registern R1 bis R13 können als Eingabe-Wrapper-Register definiert werden. Jedes der Eingabe-Wrapper-Register kann an einem Eingabe-Grenzbereich des ersten Prozessorkerns 110_1 positioniert werden. Zum Beispiel kann ein Eingabe-Wrapper-Register als der erste unter den Registern, die auf jedem Datenpfad zwischen einem Eingabeport und einem Ausgabeport positioniert sind, definiert werden. Jedes der Register R9-R13, die den Ausgabeports OP1 bis OP5 am nächsten sind, aus den Registern R1 bis R13 kann als Ausgabe-Wrapper-Register definiert werden. Jedes der Ausgabe-Wrapper-Register kann an einem Ausgabe-Grenzbereich des ersten Prozessorkerns 110_1 positioniert werden. Zum Beispiel kann ein Ausgabe-Wrapper-Register der letzte unter den Registern sein, die auf jedem Datenpfad zwischen einem Eingabeport und einem Ausgabeport positioniert sind.
  • Wenn der erste Prozessorkern 110_1 eine normal Funktionsweise (d.h. einen normalen Betrieb) durchführt, können Eingabedaten, die in jeden der Eingabeports IP1 bis IP5 eingegeben werden, von einem Register (Registern) und einer Logikschaltung (Logikschaltungen), die in einem Datenpfad angeordnet sind, verarbeitet werden. Die verarbeiteten Eingabedaten können durch die Ausgabeports OP1 bis OP5 ausgegeben werden. Zum Beispiel können die Eingabedaten, die in den ersten Eingabeport IP1 eingegeben werden, im ersten Register R1 gespeichert werden. Die im ersten Register R1 gespeicherten Daten können an die erste Logikschaltung CL1 ausgegeben werden. Die erste Logikschaltung CL1 kann die Daten des ersten Registers R1 verarbeiten und kann die verarbeiteten Daten an das achte Register R8 übermitteln. Das achte Register R8 kann Daten, die von der ersten Logikschaltung CL1 ausgegeben werden, speichern. Die sechste Logikschaltung CL6 kann basierend auf den vom achten Register R8 ausgegebenen Daten eine Operation durchführen. Daten, die von der sechsten Logikschaltung R6 (d.h. als ein Ergebnis der Operation der sechsten Logikschaltung CL6) ausgegeben werden, können im neunten Register R9 gespeichert werden. Daten, die vom neunten Register R9 ausgegeben werden, können vom ersten Prozessorkern 110_1 durch den ersten Ausgabeport OP1 ausgegeben werden.
  • Zum Beispiel können Scandaten, wenn der Scan-Test des ersten Prozessorkerns 110_1 durchgeführt wird, in den sechsten Eingabeport IP6 eingegeben werden. Die eingegebenen Scandaten können vom ersten Register R1 sequenziell an das dreizehnte Register R13 übertragen werden. Zum Beispiel kann jedes des ersten bis dreizehnten Registers R1 bis R13 ein Scan-Register sein, das für den Scan-Test verwendet wird. Wenn die Scandaten zum Beispiel basierend auf 13 Taktimpulsen (z.B. erster bis dreizehnter Taktimpuls) eingegeben werden, kann jedes des ersten bis dreizehnten Registers R1 bis R13 entsprechende Scandaten (z.B. erste bis dreizehnte Scandaten) speichern. Zum Beispiel können das erste bis dreizehnte Register R1 bis R13 eine Scan-Kette bilden. Die entsprechenden Scandaten können als Reaktion auf den ersten bis dreizehnten Taktimpuls durch die Scan-Kette des ersten bis dreizehnten Registers R1 bis R13 sequenziell verschoben werden. Wie oben beschrieben, können die ersten bis dreizehnten Scandaten übertragen werden, ohne die Logikschaltungen CL1 bis CL10 zu passieren, und Zieldatenwerte (z.B. die ersten bis dreizehnten Scandaten) können jeweils im ersten bis dreizehnten Register R1-R13 gespeichert werden. Zum Beispiel werden die ersten bis dreizehnten Scandaten nicht von den Logikschaltungen CL1 bis CL10 verarbeitet. Nachdem die ersten und dreizehnten Scandaten, die nicht verarbeitet werden, im ersten bis dreizehnten Register R1-R13 gespeichert werden, kann der Scan-Test für die Logikschaltungen CL1 bis CL10 basierend auf den gespeicherten ersten und dreizehnten Scandaten durchgeführt werden. Die Fehler der Logikschaltungen CL1 bis CL10 können durch den Scan-Test erkannt werden. Zum Beispiel können der Haftfehler und der Übergang-Verzögerungsfehler der Logikschaltungen CL1 bis CL10 durch den Scan-Test erkannt werden.
  • Zur Vereinfachung der Beschreibung wird ein Pfad, durch den in einem Register gespeicherte Scandaten an einen anderen Register übertragen werden, ohne eine Logikschaltung zu passieren, als „Scan-Pfad“ bezeichnet und ein Pfad, durch den in einem Register gespeicherte Daten an einen anderen Register übertragen werden, indem sie eine Logikschaltung passieren, als ein „Funktionspfad“ bezeichnet.
  • Um einen Übergang-Verzögerungsfehler einer Logikschaltung durch den Scan-Test zu erkennen, kann der At-Speed-Test unter Verwendung von drei Registern durchgeführt werden. Wenn der At-Speed-Test zum Beispiel an der sechsten Logikschaltung CL6 durchgeführt wird, können das erste Register R1, das achte Register R8 und das neunte Register R9 verwendet werden, um den Übergang-Verzögerungsfehler der sechsten Logikschaltung CL6 zu erkennen. Zum Beispiel kann der At-Speed-Test der sechsten Logikschaltung CL6 unter Verwendung der im ersten Register R1 gespeicherten ersten Scandaten durchgeführt werden. Genauer gesagt können die im ersten Register R1 gespeicherten ersten Scandaten von der ersten Logikschaltung CL1 verarbeitet werden. Von der ersten Logikschaltung CL1 verarbeitete Daten können im achten Register R8 gespeichert werden. Die im achten Register R8 gespeicherten Daten können von der sechsten Logikschaltung CL6 verarbeitet werden und die verarbeiteten Daten können im neunten Register R9 gespeichert werden. Die im neunten Register R9 gespeicherten Daten können durch den sechsten Ausgabeport OP6 durch das zehnte Register R10 an das dreizehnte Register R13 ausgegeben werden. Der Übergang-Verzögerungsfehler der sechsten Logikschaltung CL6 kann durch Vergleichen eines Werts der Ausgabedaten mit einem Zielwert erkannt werden. Zum Beispiel kann die sechste Logikschaltung CL6 unter der Annahme getestet werden, dass die erste Logikschaltung CL1 keine Defekte aufweist.
  • Wenn der At-Speed-Test zum Beispiel in der obigen Weise an einer Logikschaltung durchgeführt wird, kann der At-Speed-Test bei der Durchführung an Logikschaltungen, die direkt mit Ausgabeterminals des Eingabe-Wrapper-Registers oder mit Ausgabeterminals des Ausgabe-Wrapper-Registers verbunden sind, versagen. Zum Beispiel kann der At-Speed-Test bei der Durchführung an der ersten Logikschaltung CL1, welche mit dem Ausgabeterminal des ersten Registers R1 verbunden ist, versagen.
  • Nach einem Ausführungsbeispiel kann der At-Speed-Test basierend auf zwei Registern an einer Logikschaltung durchgeführt werden. Zum Beispiel kann der At-Speed-Test basierend auf dem ersten Register R1 und dem achten Register R8 an der ersten Logikschaltung CL1 durchgeführt werden. Somit können die Übergang-Verzögerungsfehler der Logikschaltungen, die mit Ausgabeterminals des Eingabe-Wrapper-Registers oder des Ausgabe-Wrapper-Registers verbunden sind, unter Verwendung von zwei Registern erkannt werden.
  • Um den At-Speed-Test an einer Logikschaltung basierend auf zwei Registern durchzuführen, kann der erste Prozessorkern 110_1 ferner Komponenten enthalten, die in 2 nicht aufgezeigt sind. Ausführungsbeispiele für einen At-Speed-Test einer Logikschaltung basierend auf zwei Registern werden wie unten mit Bezug auf 3A bis 7 beschrieben.
  • 3A zeigt ein Register nach einem Ausführungsbeispiel auf und 3B zeigt ein Beispiel zur Implementierung eines Registers aus 3A auf. Bezugnehmend auf 3A kann ein Register „R“ vier Eingabeterminals und ein Ausgabeterminal enthalten. Zum Beispiel können die vier Eingabeterminals ein Eingabedatenterminal „D“ und ein Scandatenterminal SI enthalten. Die vier Eingabeterminals können Eingabedaten ID, Scandaten SD, ein Scan-Aktivierungssignal SE und ein Taktsignal CLK empfangen. Die Eingabedaten ID können durch das Eingabedatenterminal „D“ in das Register „R“ eingegeben werden und die Scandaten SD können durch das Scandatenterminal SI in das Register „R“ eingegeben werden. Ausgabedaten OD können von einem Ausgabeterminal „Q“ ausgegeben werden.
  • Das Register „R“ kann die Eingabedaten ID oder die Scandaten SD basierend auf dem Scan-Aktivierungssignal SE und dem Taktsignal CLK selektiv speichern und kann die gespeicherten Daten als die Ausgabedaten OD ausgeben. Zum Beispiel kann das Register „R“ die Scandaten SD als Reaktion auf einen hohen Logikwert (d.h. „1“) des Scan-Aktivierungssignals SE und einer ansteigenden Flanke des Taktsignals CLK speichern und kann die Scandaten SD als die Ausgabedaten OD ausgeben. Zum Beispiel kann das Register „R“ die Eingabedaten ID als Reaktion auf einen niedrigen Logikwert (d.h. „0“) des Scan-Aktivierungssignals SE und einer ansteigenden Flanke des Taktsignals CLK speichern und kann die Eingabedaten ID als die Ausgabedaten OD ausgeben.
  • Bezugnehmend auf 3B kann das Register „R“ einen Multiplexer MP und einen Flipflop FF enthalten. Der Multiplexer kann die Eingabedaten ID und die Scandaten SD empfangen. Der Multiplexer kann die Eingabedaten ID oder die Scandaten SD basierend auf dem Scan-Aktivierungssignal SE selektiv als Zwischendaten MD ausgeben. Der Flipflop FF kann die Zwischendaten MD, die als Reaktion auf das Taktsignal CLK eingegeben werden, speichern und kann die Zwischendaten MD als die Ausgabedaten OD ausgeben.
  • 4 zeigt das SoC 100 für einen At-Speed-Test einer Logikschaltung nach einem Ausführungsbeispiel auf. Bezugnehmend auf 4 kann das SoC 100 ein erstes Register 101, eine Invertierschaltung 102, eine Auswahlschaltung 103, einen Modus-Controller 104, eine Logikschaltung 105 und ein zweites Register 106 enthalten.
  • Das erste Register 101 kann erste Eingabedaten ID1, Scandaten SD, ein Scan-Aktivierungssignal SE und ein Taktsignal CLK empfangen. Das erste Register 101 kann die ersten Eingabedaten ID1 oder die Scandaten SD basierend auf dem Scan-Aktivierungssignal SE und dem Taktsignal CLK als erste Ausgabedaten OD1 ausgeben. Wie in 2 aufgezeigt, können die Scandaten SD durch einen Eingabeport oder ein weiteres Register an das erste Register 101 übermittelt werden. Die ersten Ausgabedaten OD1 können an die Invertierschaltung 102, die Logikschaltung 105 und ein Scandatenterminal SI eines weiteren Registers übermittelt werden. Zum Beispiel können die ersten Ausgabedaten OD1 an ein Scandatenterminal SI des zweiten Registers 106 übermittelt werden.
  • Die Invertierschaltung 102 kann die ersten Ausgabedaten OD1 invertieren, um Testdaten TD zu erzeugen. Wenn zum Beispiel ein Wert der ersten Ausgabedaten OD1 ,,1" ist, kann ein Wert der Testdaten TD „0“ sein. Die von der Invertierschaltung 102 ausgegebenen Testdaten TD können an die Auswahlschaltung 103 übermittelt werden. Zum Beispiel kann die Invertierschaltung 102 mit einem Wechselrichter implementiert werden. Zum Beispiel kann die Invertierschaltung 102 mit jeder Schaltung, die imstande ist, die ersten Ausgabedaten OD1 zu invertieren, oder mit einer Kombination jeglicher Schaltungen implementiert werden.
  • Die Auswahlschaltung 103 kann die Testdaten TD und Funktionsdaten FD empfangen. Die Auswahlschaltung 103 kann basierend auf einem Auswahlsignal CS des Modus-Controllers 104 die Testdaten TD oder die Funktionsdaten FD selektiv als die ersten Eingabedaten ID1 ausgeben. Die Funktionsdaten FD können von einem Eingabeport oder einem Ausgabeterminal „Q“ eines weiteren Registers übermittelt werden. Das SoC 100 kann basierend auf den Funktionsdaten FD eine normale Funktion durchführen. Zum Beispiel kann die Auswahlschaltung 103 mit einem Multiplexer implementiert werden. Zum Beispiel kann die Auswahlschaltung 103 mit jeder Schaltung implementiert werden, die imstande ist, Signale auszuwählen.
  • Der Modus-Controller 104 kann ein Modus-Signal MODE und das Scan-Aktivierungssignal SE empfangen. Der Modus-Controller 104 kann das Auswahlsignal CS basierend auf dem Modus-Signal MODE und dem Scan-Aktivierungssignal SE erzeugen. Das Modus-Signal MODE kann einen von verschiedenen Betriebsmodi des SoC 100 angeben. Zum Beispiel kann das Modus-Signal MODE vom Top-Controller 111 aus 1 übermittelt werden. Zum Beispiel kann das Modus-Signal MODE einen Modus für den At-Speed-Test der Logikschaltung 105 (nachfolgend als „At-Speed-Testmodus“ bezeichnet) angeben.
  • Wenn zum Beispiel das Modus-Signal MODE den At-Speed-Testmodus der Logikschaltung 105 angibt und das Scan-Aktivierungssignal SE einen niedrigen Logikwert angibt, kann der Modus-Controller 104 das Auswahlsignal CS erzeugen. Zum Beispiel kann die Auswahlschaltung 103 die Testdaten TD durch das Auswahlsignal CS als die ersten Eingabedaten ID1 ausgeben. Zum Beispiel können die ersten Eingabedaten ID1 (d.h. die Testdaten TD) an das erste Register 101 übermittelt werden. Das erste Register 101 kann die Testdaten TD basierend auf einem niedrigen Logikwert des Scan-Aktivierungssignals SE und des Taktsignals CLK speichern und kann die Testdaten TD als die ersten Ausgabedaten OD1 ausgeben.
  • Die Logikschaltung 105 kann basierend auf den ersten Ausgabedaten OD1 zweite Eingabedaten ID2 erzeugen. Die Logikschaltung 105 kann die zweiten Eingabedaten ID2 an das zweite Register 106 übermitteln.
  • Das zweite Register 106 kann die zweiten Eingabedaten ID2, das Scan-Aktivierungssignal SE und das Taktsignal CLK empfangen. Ein Scandatenterminal SI des zweiten Registers 106 kann mit einem Ausgabeterminal „Q“ eines weiteren Registers verbunden sein. Zum Beispiel kann das Scandatenterminal SI des zweiten Registers 106 mit dem Ausgabeterminal „Q“ des ersten Registers 101 verbunden sein. Das zweite Register 106 kann basierend auf dem Scan-Aktivierungssignal SE und dem Taktsignal CLK zweite Ausgabedaten OD2 als die zweiten Eingabedaten ID2 oder Daten, die in das Scandatenterminal SI des zweiten Registers 106 eingegeben werden, ausgeben. Zum Beispiel können die Daten, welche in das Scandatenterminal SI eingegeben werden, Scandaten sein, die von einem weiteren Register zugeführt werden.
  • Das erste Register 101 und das zweite Register 106 können im gleichen Prozessorkern enthalten sein. Zum Beispiel können das erste Register 101 und das zweite Register 106 im ersten Prozessorkern 110_1 aus 1 enthalten sein. Alternativ können das erste Register 101 und das zweite Register 106 jeweils in verschiedenen Prozessorkernen enthalten sein. Zum Beispiel kann das erste Register 101 im ersten Prozessorkern 110_1 aus 1 enthalten sein und das zweite Register 106 kann im Top-Level-Prozessorkern 110_0 aus 1 enthalten sein. Zum Beispiel können sowohl das erste Register 101 als auch das zweite Register 106 in jedem beliebigen Prozessorkern des SoC 100 enthalten sein.
  • Das erste Register 101 kann in einem Eingabe-Wrapper-Register oder einem Ausgabe-Wrapper-Register enthalten sein. Zum Beispiel können die Invertierschaltung 102 und die Auswahlschaltung 103 auf einem Rückführungspfad des Eingabe-Wrapper-Registers oder des Ausgabe-Wrapper-Registers positioniert sein.
  • 5 zeigt ein Zeitdiagramm des Taktsignals CLK und des Scan-Aktivierungssignals SE für einen At-Speed-Test nach einem Ausführungsbeispiel auf. Zum Beispiel können das Taktsignal CLK und das Scan-Aktivierungssignal SE aus 5 zusammen mit dem Modus-Signal MODE für einen At-Speed-Test einer Logikschaltung vorgesehen sein.
  • In 5 kann eine Horizontalachse eine Zeit angeben. Der At-Speed-Test der Logikschaltung kann basierend auf einem ersten Verschiebungszyklus, einem Erfassungszyklus und einem zweiten Verschiebungszyklus durchgeführt werden. Im ersten Verschiebungszyklus können Scandaten in Registern gespeichert werden. Im Erfassungszyklus können Ergebnisdaten, die basierend auf den gespeicherten Scandaten von einer Logikschaltung ausgegeben werden, in Registern gespeichert werden. Im zweiten Verschiebungszyklus können die Ergebnisdaten, welche in den Registern gespeichert sind, ausgegeben werden. Ein Übergang-Verzögerungsfehler der Logikschaltung kann basierend auf den ausgegebenen Ergebnisdaten erkannt werden. Zum Beispiel können Daten in einem Verschiebungszyklus durch Register entlang eines Scan-Pfads sequentiell übertragen werden. In einem Erfassungszyklus können Daten, die in Registern entlang eines Funktionspfads gespeichert sind, durch eine Logikschaltung verarbeitet werden.
  • Das Taktsignal CLK kann im Verschiebungszyklus eine erste Frequenz und im Erfassungszyklus eine zweite Frequenz aufweisen. Zum Beispiel kann die erste Frequenz niedriger sein als die zweite Frequenz. Zum Beispiel kann eine Impulsbreite des Taktsignals CLK im Verschiebungszyklus länger sein als eine Impulsbreite des Taktsignals CLK im Erfassungszyklus. Zum Beispiel kann der Verschiebungszyklus einem Zeitraum entsprechen, während dessen Daten durch Register übertragen werden (d.h. ein Zeitraum, wenn Scandaten in Register eingegeben werden oder in Registern gespeicherte Ergebnisdaten ausgegeben werden). Somit hat die Frequenz des Taktsignals CLK womöglich keinen Einfluss auf den At-Speed-Test. Zum Beispiel kann das Taktsignal CLK im Verschiebungszyklus eine niedrigere Frequenz aufweisen als im Erfassungszyklus. Somit kann der Leistungsverbrauch im Verschiebungszyklus aufgrund der niedrigeren Frequenz des Taktsignals CLK im Verschiebungszyklus reduziert werden. Mit anderen Worten kann das Eingeben von Scandaten und das Ausgeben von Ergebnisdaten im Verschiebungszyklus mit einer niedrigen Leistung durchgeführt werden. Im Erfassungszyklus kann die Frequenz des Taktsignals CLK für den At-Speed-Test gleich sein wie eine Frequenz des Antriebs-Taktsignals CLK (d.h. das Taktsignal CLK zur Durchführung einer normalen Funktion). Zum Beispiel kann der At-Speed-Test der Logikschaltung basierend auf dem Taktsignal CLK des Erfassungszyklus' durchgeführt werden.
  • 5 zeigt auf, dass das Taktsignal CLK in jedem Verschiebungszyklus zwei Impulse aufweist, allerdings sind Ausführungsformen nicht darauf beschränkt. Zum Beispiel kann die Anzahl an Impulsen des Taktsignals CLK in jedem Verschiebungszyklus gemäß der Anzahl an Registern, in welche Scandaten eingegeben werden, variieren. Wenn zum Beispiel N Anzahlen an Registern für den Scan-Test verwendet werden, kann die Anzahl an Impulsen des Taktsignals N sein (N ist eine natürliche Zahl größer als 1).
  • Ein Betrieb des SoC 100 aus 4 wird mit Bezug auf 6 näher beschrieben. Zur Vereinfachung der Beschreibung kann das Ausgabeterminal „Q“ des ersten Registers 101 mit dem Scandatenterminal SI des zweiten Registers 106 verbunden werden.
  • 6 zeigt einen Beispielbetrieb des SoC 100 aus 4 basierend auf dem Taktsignal CLK und dem Scan-Aktivierungssignal SE aus 5 auf. Bezugnehmend auf 5 und 6 können das erste und zweite Register 101 und 106 im ersten Verschiebungszyklus als Reaktion auf einen hohen Logikwert (d.h. „1“) des Scan-Aktivierungssignals SE Scandaten auswählen, welche in das Scandatenterminal SI eingegeben werden. Zum Beispiel werden zu einer ersten Zeit t1 erste Scandaten SD1 in das erste Register 101 eingegeben. Das erste Register 101 kann die ersten Scandaten SD1 als Reaktion auf eine erste ansteigende Flanke des Taktsignals CLK speichern und kann die ersten Scandaten SD1 als die ersten Ausgabedaten OD1 ausgeben. Die ersten Scandaten SD1 können an das Scandatenterminal SI des zweiten Registers 106 übermittelt werden.
  • Zu einer zweiten Zeit t2 können die zweiten Scandaten SD2 in das erste Register 101 eingegeben werden. Das erste Register 101 kann die zweiten Scandaten SD2 als Reaktion auf eine zweite ansteigende Flanke des Taktsignals CLK speichern und kann die zweiten Scandaten SD2 als die ersten Ausgabedaten OD1 ausgeben. Das zweite Register 106 kann die ersten Scandaten SD1, welche in das Scandatenterminal S1 eingegeben werden, als Reaktion auf die zweite ansteigende Flanke des Taktsignals CLK speichern. Die zweiten Scandaten SD2 können an die Invertierschaltung 102 übermittelt werden. Die Invertierschaltung 102 kann die zweiten Scandaten SD2 invertieren, um die Testdaten TD zu erzeugen. Die Testdaten TD der Invertierschaltung 102 können an die Auswahlschaltung 103 übermittelt werden.
  • Die Auswahlschaltung 103 kann die Testdaten TD und die Funktionsdaten FD empfangen. Die Auswahlschaltung 103 kann vor einer Zeit t3 basierend auf dem Auswahlsignal CS, das vom Modus-Controller 104 übermittelt wird, die Funktionsdaten FD als die ersten Eingabedaten ID1 ausgeben. Zu der dritten Zeit t3 kann der Modus-Controller 104 das Auswahlsignal CS basierend auf dem Modus-Signal MODE und einem niedrigen Wert des Scan-Aktivierungssignals SE derart erzeugen, dass die Testdaten TD von der Auswahlschaltung 103 ausgegeben werden. Zum Beispiel kann das Modus-Signal MODE den At-Speed-Testmodus der Logikschaltung 105 angeben. Somit kann die Auswahlschaltung 103 zu der dritten Zeit t3 die Testdaten TD als Reaktion auf das Auswahlsignal CS als die ersten Eingabedaten ID1 ausgeben. Die ausgegebenen Testdaten TD können in das Eingabedatenterminal „D“ des ersten Registers 101 eingegeben werden.
  • Im Erfassungszyklus (z.B. von der dritten Zeit t3 bis zu einer sechsten Zeit t6) können das erste und zweite Register 101 und 106 basierend auf einem niedrigen Logikwert (d.h. „0“) des Scan-Aktivierungssignals SE Eingabedaten auswählen, welche in die Eingabedatenterminals „D“ derselben eingegeben werden. Zu einer vierten Zeit t4 kann das erste Register 101 die Testdaten TD, welche in das Eingabedatenterminal „D“ desselben eingegeben werden, als Reaktion auf eine dritte ansteigende Flanke des Taktsignals CLK speichern. Somit können die Testdaten TD als die ersten Ausgabedaten OD1 des ersten Registers 101 ausgegeben werden. Die Testdaten TD können an die Logikschaltung 105 übermittelt werden. Die Logikschaltung 105 kann basierend auf den Testdaten TD eine Operation durchführen und kann Ergebnisdaten RD als ein Ergebnis der Operation ausgeben. Zum Beispiel können die Ergebnisdaten RD als die zweiten Eingabedaten ID2 in das zweite Register 106 eingegeben werden.
  • Zu einer fünften Zeit t5 kann das zweite Register 106 die Ergebnisdaten RD, welche in das Eingabedatenterminal „D“ desselben eingegeben werden, als Reaktion auf eine vierte ansteigende Flanke des Taktsignals CLK speichern. Das zweite Register 106 kann die Ergebnisdaten RD als die zweiten Ausgabedaten OD2 ausgeben. Im zweiten Verschiebungszyklus (d.h. nach der sechsten Zeit t6) können die im zweiten Register 106 gespeicherten Ergebnisdaten RD vom SoC 100 durch einen Scan-Pfad ausgegeben werden. Zum Beispiel können die Ergebnisdaten RD zu einer siebten Zeit t7 und einer achten Zeit t8 durch Register auf dem Scan-Pfad sequentiell übertragen werden (z.B. als Reaktion auf eine sechste und siebte ansteigende Flanke des Taktsignals CLK). Somit können die Ergebnisdaten RD vom SoC 100 durch einen Ausgabeport ausgegeben werden.
  • Der Übergang-Verzögerungsfehler der Logikschaltung 105 kann basierend auf einem Wert der ausgegebenen Ergebnisdaten RD erkannt werden. Wenn zum Beispiel der Wert der Ergebnisdaten RD anders ist als ein Zielwert, kann bestimmt werden, dass die Logikschaltung 105 den Übergang-Verzögerungsfehler aufweist.
  • Wenn zum Beispiel der Wert der Testdaten TD gleich ist wie ein Wert der zweiten Scandaten SD2, kann ein Wert der Ergebnisdaten TD, welche von der Logikschaltung 105 ausgegeben werden, identisch erhalten bleiben. Somit kann der At-Speed-Test der Logikschaltung 105 womöglich nicht ordentlich durchgeführt werden, da der Haftfehler und der Übergang-Verzögerungsfehler der Logikschaltung 105 nicht voneinander unterschieden werden. Wenn die Testdaten TD im Gegensatz dazu durch Invertieren der zweiten Scandaten SD2 erzeugt werden, kann der Wert der Testdaten TD anders sein als der Wert der zweiten Scandaten SD2. Somit kann der At-Speed-Test der Logikschaltung 105 ordentlich und effektiv durchgeführt werden.
  • Wie oben beschrieben, können die Testdaten im ersten Verschiebungszyklus an das erste Register 101 übermittelt werden. Im Erfassungszyklus können die Testdaten TD als Reaktion auf einen ersten Impuls P1 des Taktsignals CLK vom ersten Register 101 ausgegeben werden. Zum Beispiel können die Testdaten TD vom ersten Register 101 als Reaktion auf eine ansteigende/fallende Flanke des ersten Impulses P1 des Taktsignals CLK im Erfassungszyklus ausgegeben werden. Das zweite Register 106 kann die Ergebnisdaten RD als Reaktion auf einen zweiten Impuls P2 des Taktsignals CLK, der sofort auf den ersten Impuls P1 im Erfassungszyklus folgt, speichern. Zum Beispiel kann der zweite Impuls P2 des Taktsignals CLK direkt benachbart zu dem ersten Impuls P1 des Taktsignals CLK sein. Zum Beispiel kann die Logikschaltung 105 die Ergebnisdaten RD während eines Intervalls zwischen der ansteigenden Flanke des ersten Impulses P1 und der ansteigenden Flanke des zweiten Impulses P2 basierend auf den Testdaten TD erzeugen. Zum Beispiel kann die Logikschaltung 105 die Ergebnisdaten RD während eines Intervalls zwischen der fallenden Flanke des ersten Impulses P1 und der fallenden Flanke des zweiten Impulses P2 basierend auf den Testdaten TD erzeugen. Somit können die Ergebnisdaten RD durch eine Operation der Logikschaltung 105 während eines Intervalls zwischen der vierten Zeit t4 und der fünften Zeit t5 erzeugt werden. Ferner, wenn der At-Speed-Test der Logikschaltung 105 basierend auf den Ergebnisdaten RD, welche durch die Operation der Logikschaltung 105 während des Intervalls zwischen der vierten Zeit t4 und der fünften Zeit t5 erzeugt werden, durchgeführt wird, ist eine Frequenz des Taktsignals CLK im Erfassungszyklus einer Frequenz des Taktsignals CLK zur Durchführung einer normalen Funktion gleich. Somit kann der Übergang-Verzögerungsfehler der Logikschaltung 105 unter Verwendung des Taktsignals CLK, das die gleiche Frequenz aufweist wie das Taktsignal CLK für die normale Funktion, erkannt werden.
  • Wie oben beschrieben, kann der At-Speed-Test der Logikschaltung 105 nach einem Ausführungsbeispiel basierend auf den zwei Registern 101 und 106 durchgeführt werden. In diesem Fall kann die Invertierschaltung 102 auf einem Rückführungspfad des ersten Registers 101 eine Rolle einer Logikschaltung, welche Daten an das erste Register 101 übermittelt, durchführen. Dementsprechend kann das erste Register 101 im At-Speed-Test der Logikschaltung 105 eine Rolle von zwei Registern auf einem Funktionspfad durchführen.
  • 7 zeigt einen Beispielbetrieb des SoC 100 aus 4 für einen At-Speed-Test auf. Bezugnehmend auf 4, 5 und 7 kann das erste Register 101 in Operation S101 Scandaten SD als Reaktion auf das Taktsignal CLK, das eine erste Frequenz aufweist, ausgeben. In Operation S102 kann die Invertierschaltung 102 das erste Register 101 mit den Testdaten TD, welche durch Invertieren der vom ersten Register 101 ausgegeben Scandaten SD erzeugt werden, versorgen. Zum Beispiel kann die Auswahlschaltung 103 die Testdaten TD basierend auf dem Auswahlsignal CS als die ersten Eingabedaten ID1 ausgeben. Die von der Auswahlschaltung 103 ausgegebenen Testdaten TD können an das erste Register 101 übermittelt werden.
  • In Operation S103 kann das erste Register 101 die Testdaten TD als Reaktion auf den ersten Impuls P1 des Taktsignals CLK, das eine zweite Frequenz aufweist, ausgeben. Das erste Register 101 kann die Testdaten TD als die ersten Ausgabedaten OD 1 ausgeben. In Operation S104 kann die Logikschaltung 105 Ergebnisdaten basierend auf den vom ersten Register 101 ausgegebenen Testdaten TD erzeugen. Die Logikschaltung 105 kann die Ergebnisdaten als die zweiten Eingabedaten ID2 an das zweite Register 106 übermitteln. In Operation S105 kann das zweite Register 106 die Ergebnisdaten als Reaktion auf den zweiten Impuls P2 des Taktsignals CLK, das die zweite Frequenz aufweist, speichem. Der Übergang-Verzögerungsfehler der Logikschaltung 105 kann basierend auf den gespeicherten Ergebnisdaten unter Verwendung des ersten und zweiten Impulses P1 und P2, welche die zweite Frequenz aufweisen, erkannt werden.
  • Das erste Register 101 aus 1 kann nach einem Ausführungsbeispiel in einem Eingabe-Wrapper-Register oder einem Ausgabe-Wrapper-Register enthalten sein. Zum Beispiel können die Invertierschaltung 102 und die Auswahlschaltung 103 auf einem Rückführungspfad des Eingabe-Wrapper-Registers oder des Ausgabe-Wrapper-Registers positioniert sein. Beispiele für At-Speed-Tests von Logikschaltungen, welche an verschiedenen Positionen positioniert sind, werden mit Bezug auf 8 bis 11 beschrieben.
  • 8 zeigt ein SoC 200 für einen At-Speed-Test einer Logikschaltung 225 nach einem Ausführungsbeispiel auf. Bezugnehmend auf 8 kann das SoC 200 einen ersten Prozessorkern 220 enthalten. Der erste Prozessorkern 220 kann einer von Low-Level-Prozessorkernen des SoC 200 sein, wie mit Bezug auf 1 beschrieben. Der erste Prozessorkern 220 kann ein erstes Register 221, eine Invertierschaltung 222, eine Auswahlschaltung 223, einen Modus-Controller 224, eine Logikschaltung 225, ein zweites Register 226 und einen Eingabeport 227 enthalten. Operationen des ersten Registers 221, der Invertierschaltung 222, der Auswahlschaltung 223, des Modus-Controllers 224, der Logikschaltung 225 und des zweiten Registers 226 können den Operationen des ersten Registers 101, der Invertierschaltung 102, der Auswahlschaltung 103, des Modus-Controllers 104, der Logikschaltung 105 und des zweiten Registers 106 aus 4 im Wesentlichen gleich oder ähnlich sein.
  • Das erste Register 221 kann in einem Eingabe-Wrapper-Register enthalten sein, das dem Eingabeport 227 am nächsten ist. Funktionsdaten FD, welche durch den Eingabeport 227 übermittelt werden, können an die Auswahlschaltung 223 übertragen werden. Zum Beispiel können die Funktionsdaten FD von einem separaten Prozessorkern übermittelt werden. Zum Beispiel können die Funktionsdaten FD von einem Top-Level-Prozessorkern oder einem weiteren Low-Level-Prozessorkern übermittelt werden.
  • Wie oben mit Bezug auf 4 bis 6 beschrieben, kann der At-Speed-Test der Logikschaltung 225 zwischen dem ersten Register 221 und dem zweiten Register 226 basierend auf dem ersten und zweiten Register 221 und 226 durchgeführt werden. Zum Beispiel kann die Logikschaltung 225 Daten, welche vom ersten Register 221 als das Eingabe-Wrapper-Register ausgegeben werden, verarbeiten, um einen At-Speed-Test desselben unter Verwendung der Invertierschaltung 222 auf einem Rückführungspfad des ersten Registers 221 durchzuführen. Somit kann ein At-Speed-Test einer Logikschaltung, welche ausgegebene Daten, die von einem Eingabe-Wrapper-Register ausgegeben werden, verarbeitet, unter Verwendung einer Invertierschaltung auf einem Rückführungspfad des Eingabe-Wrapper-Registers durchgeführt werden.
  • 9 zeigt ein SoC 300 für einen At-Speed-Test einer Logikschaltung 325 nach einem Ausführungsbeispiel auf. Bezugnehmend auf 9 kann das SoC 300 einen Top-Level-Prozessorkern 310 und einen ersten Prozessorkern 320 enthalten. Der erste Prozessorkern 320 kann einer von Low-Level-Prozessorkernen des SoC 300 sein, wie mit Bezug auf 1 beschrieben. Der Top-Level-Prozessorkern 310 kann ein zweites Register 311 und einen Eingabeport 312 enthalten. Der erste Prozessorkern 320 kann ein erstes Register 321, eine Invertierschaltung 322, eine Auswahlschaltung 323, einen Modus-Controller 324, die Logikschaltung 325 und einen Ausgabeport 326 enthalten.
  • Das erste Register 321 kann in einem Ausgabe-Wrapper-Register enthalten sein, das dem Ausgabeport 326 am nächsten ist. Der Ausgabeport 326 des ersten Prozessorkerns 320 kann mit dem Eingabeport 312 des Top-Level-Prozessorkerns 310 verbunden sein. Zum Beispiel können Daten, welche von der Logikschaltung 325 ausgegeben werden, durch den Ausgabeport 326 und den Eingabeport 312 an das zweite Register 311 des Top-Level-Prozessorkerns 310 übertragen werden. Die Ausgabedaten der Logikschaltung 325 können als die zweiten Eingabedaten ID2 an das zweite Register 311 übermittelt werden. Da das erste Register 321 und das zweite Register 311 auf einem Funktionspfad positioniert sind, kann der At-Speed-Test der Logikschaltung 325 somit unter Verwendung des ersten Registers 321 und des zweiten Registers 311 durchgeführt werden.
  • Bezugnehmend auf 5 und 9 kann das erste Register 321 zu der zweiten Zeit t2 die Scandaten SD als Reaktion auf die ansteigende Flanke des Taktsignals CLK speichern. Das erste Register 321 kann die ausgegebenen Scandaten SD als die ersten Ausgabedaten OD1 ausgeben. Die Invertierschaltung 322 kann die Testdaten TD durch Invertieren der vom ersten Register 321 ausgegebenen Scandaten SD erzeugen. Die Testdaten TD können an die Auswahlschaltung 323 übermittelt werden.
  • Zu der Zeit t3 kann der Modus-Controller 324 das Auswahlsignal CS basierend auf dem Modus-Signal MODE und einem niedrigen Logikwert des Scan-Aktivierungssignals SE derart erzeugen, dass die Testdaten TD von der Auswahlschaltung 323 an das erste Register 321 ausgegeben werden. Zum Beispiel kann das Modus-Signal MODE den At-Speed-Testmodus der Logikschaltung 325 angeben. Die Auswahlschaltung 323 kann die Testdaten TD oder die Funktionsdaten FD basierend auf einem Auswahlsignal CS auswählen, um die ausgewählten Daten als die ersten Eingabedaten ID1 auszugeben. Somit können die Testdaten TD in das Eingabedatenterminal „D“ des ersten Registers 321 eingegeben werden.
  • Zu der vierten Zeit t4 kann das erste Register 321 die Testdaten TD als Reaktion auf eine ansteigende Flanke des Taktsignals CLK als die ersten Ausgabedaten OD1 ausgeben. Die Logikschaltung 325 kann basierend auf den Testdaten TD eine Operation durchführen und kann Ergebnisdaten als ein Ergebnis der Operation ausgeben. Die Ergebnisdaten können durch den Ausgabeport 326 und den Eingabeport 312 als die zweiten Eingabedaten ID2 an das zweite Register 311 übermittelt werden. Zu der fünften Zeit t5 kann das zweite Register 311 die Ergebnisdaten als Reaktion auf eine ansteigende Flanke des Taktsignals CLK speichern. Die Ergebnisdaten können als die zweiten Ausgabedaten OD2 ausgegeben werden. Somit kann der Übergang-Verzögerungsfehler der Logikschaltung 325 basierend auf den zweiten Ausgabedaten OD2 erkannt werden.
  • Wie oben beschrieben, kann der At-Speed-Test in dem Fall, in dem der At-Speed-Test der Logikschaltung 325 durchgeführt wird, an einer Schnittstelle (z.B. der Logikschaltung 325) zwischen dem Top-Level-Prozessorkern 310 und dem ersten Prozessorkern 320 durchgeführt werden.
  • 9 zeigt auf, dass die Logikschaltung 325 im ersten Prozessorkern 320 enthalten ist. Alternativ kann die Logikschaltung 325 im Top-Level-Prozessorkern 310 enthalten sein. Zum Beispiel kann der At-Speed-Test an einer Logikschaltung durchgeführt werden, die zwischen dem ersten Register 321 und dem zweiten Register 311 positioniert ist.
  • 10 zeigt ein SoC 400 für einen At-Speed-Test einer Logikschaltung 414 nach einem Ausführungsbeispiel auf. Bezugnehmend auf 10 kann das SoC 400 einen Top-Level-Prozessorkern 410 und einen ersten Prozessorkern 420 enthalten. Der erste Prozessorkern 420 kann einer von Low-Level-Prozessorkernen des SoC 400 sein, wie mit Bezug auf 1 beschrieben. Der Top-Level-Prozessorkern 410 kann ein erstes Register 411, eine erste Logikschaltung 412, ein zweites Register 413, eine zweite Logikschaltung 414 und einen Ausgabeport 415 enthalten. Der erste Prozessorkern 420 kann ein drittes Register 421, eine Invertierschaltung 422, eine Auswahlschaltung 423, einen Modus-Controller 424 und einen Eingabeport 425 enthalten. Für den At-Speed-Test der zweiten Logikschaltung 414 wird angenommen, dass die erste Logikschaltung 412 keine Defekte aufweist.
  • Das dritte Register 421 kann in einem Eingabe-Wrapper-Register enthalten sein, das dem Eingabeport 425 am nächsten ist. Der Ausgabeport 415 des Top-Level-Prozessorkerns 410 kann mit dem Eingabeport 425 des ersten Prozessorkerns 420 verbunden sein. Zum Beispiel können von der zweiten Logikschaltung 414 ausgegebene Daten durch den Ausgabeport 415 und den Eingabeport 425 an die Auswahlschaltung 423 des ersten Prozessorkerns 420 übertragen werden. Somit können die Ausgabedaten der zweiten Logikschaltung 414 als die Funktionsdaten FD vorgesehen sein. Zum Beispiel können das erste Register 411, das zweite Register 413 und das dritte Register 421 auf einem Funktionspfad positioniert sein. Somit kann der At-Speed-Test der zweiten Logikschaltung 414 unter Verwendung des ersten, zweiten und dritten Registers 411, 413 und 421 durchgeführt werden.
  • Das Modus-Signal MODE kann den At-Speed-Testmodus der zweiten Logikschaltung 414 angeben. Der Modus-Controller 424 kann das Auswahlsignal CS basierend auf dem Modus-Signal MODE derart erzeugen, dass die Auswahlschaltung 423 die Funktionsdaten FD ausgibt. Zum Beispiel kann der Modus-Controller 424 das Auswahlsignal CS unabhängig von einem Wert des Scan-Aktivierungssignals SE derart erzeugen, dass die Funktionsdaten FD von der Auswahlschaltung 423 ausgegeben werden. Somit können die von der Invertierschaltung 422 ausgegebenen Testdaten TD womöglich nicht für den At-Speed-Test der zweiten Logikschaltung 414 verwendet.
  • Bezugnehmend auf 5 und 10 kann das erste Register 411 die Scandaten SD als Reaktion auf eine ansteigende Flanke des Taktsignals CLK zu der zweiten Zeit t2 speichern. Das erste Register 411 kann die Scandaten SD als die ersten Ausgabedaten OD1 ausgeben. Die erste Logikschaltung 412 kann basierend auf den Scandaten SD eine Operation durchführen und kann ein Ergebnis der Operation ausgeben. Somit kann das Operationsergebnis als die zweiten Eingabedaten ID2 an ein Eingabedatenterminal „D“ des zweiten Registers 413 übermittelt werden.
  • Zu der vierten Zeit t4 kann das zweite Register 413 das Operationsergebnis als Reaktion auf eine ansteigende Flanke des Taktsignals CLK als die zweiten Ausgabedaten OD2 ausgeben. Die zweite Logikschaltung 414 kann basierend auf den zweiten Ausgabedaten OD2 eine Operation durchführen und kann Ergebnisdaten als ein Ergebnis der Operation ausgegeben. Die Ergebnisdaten können durch den Ausgabeport 415 und den Eingabeport 425 als die Funktionsdaten FD an die Auswahlschaltung 423 übermittelt werden. Die Auswahlschaltung 423 kann die Ergebnisdaten als Reaktion auf das Auswahlsignal CS ausgeben. Somit können die Ergebnisdaten als dritte Eingabedaten ID3 in das dritte Register 421 eingegeben werden.
  • Zu der fünften Zeit t5 kann das dritte Register 421 die Ergebnisdaten als Reaktion auf eine ansteigende Flanke des Taktsignals CLK speichern. Die Ergebnisdaten können als dritte Ausgabedaten OD3 ausgegeben werden. Zum Beispiel kann der Übergang-Verzögerungsfehler der zweiten Logikschaltung 414 basierend auf den dritten Ausgabedaten OD3 erkannt werden.
  • Wie oben beschrieben, kann der At-Speed-Test, wenn der At-Speed-Test der zweiten Logikschaltung 414 durchgeführt wird, an einer Schnittstelle zwischen dem Top-Level-Prozessorkern 410 und dem ersten Prozessorkern 420 durchgeführt werden.
  • Ein Beispiel wird in 10 aufgezeigt, in dem die zweite Logikschaltung 414 in dem Top-Level-Prozessorkern 410 enthalten ist, Ausführungsformen müssen aber nicht darauf beschränkt sein. Zum Beispiel kann die zweite Logikschaltung 414 im ersten Prozessorkern 420 enthalten sein. Somit kann der At-Speed-Test an einer Logikschaltung durchgeführt werden, die zwischen dem zweiten Register 413 und dem dritten Register 421 positioniert ist.
  • Wie in 9 und 10 aufgezeigt, kann ein At-Speed-Test nach einem Ausführungsbeispiel auf einer Schnittstelle zwischen einem Top-Level-Prozessorkern und einem Low-Level-Prozessorkern ordentlich durchgeführt werden.
  • 11 zeigt ein SoC 500 für einen At-Speed-Test einer Logikschaltung 525 nach einem Ausführungsbeispiel auf. Bezugnehmend auf 11 kann das SoC 500 einen ersten Prozessorkern 520 und einen zweiten Prozessorkern 530 enthalten. Sowohl der erste als auch der zweite Prozessorkern 520 und 530 können einer von Low-Level-Prozessorkernen des SoC 500 sein, wie mit Bezug auf 1 beschrieben. Der erste Prozessorkern 520 kann ein erstes Register 521, eine erste Invertierschaltung 522, eine erste Auswahlschaltung 523, einen ersten Modus-Controller 524, die Logikschaltung 525 und einen Ausgabeport 526 enthalten. Der zweite Prozessorkern 530 kann ein zweites Register 531, eine zweite Invertierschaltung 532, eine zweite Auswahlschaltung 533, einen zweiten Modus-Controller 534 und einen Eingabeport 535 enthalten.
  • Das erste Register 521 kann in einem Ausgabe-Wrapper-Register enthalten sein, das dem Ausgabeport 526 am nächsten ist. Das zweite Register 531 kann in einem Eingabe-Wrapper-Register enthalten sein, das dem Eingabeport 535 am nächsten ist. Der Ausgabeport 526 des ersten Prozessorkerns 520 kann mit dem Eingabeport 535 des zweiten Prozessorkerns 530 verbunden sein. Zum Beispiel können von der Logikschaltung 525 ausgegebene Daten durch den Ausgabeport 526 und den Eingabeport 535 an die zweite Auswahlschaltung 533 des zweiten Prozessorkerns 530 übertragen werden. Die Ausgabedaten der Logikschaltung 525 können als zweite Funktionsdaten FD2 vorgesehen sein. Zum Beispiel können das erste Register 521 und das zweite Register 531 auf einem Funktionspfad positioniert sein. Somit kann der At-Speed-Test der Logikschaltung 525 unter Verwendung des ersten und zweiten Registers 521 und 531 durchgeführt werden.
  • Das Modus-Signal MODE kann den At-Speed-Testmodus der Logikschaltung 525 angeben. Der zweite Modus-Controller 534 kann basierend auf dem Modus-Signal MODE ein zweites Auswahlsignal CS2 derart erzeugen, dass die zweite Auswahlschaltung 533 die zweiten Funktionsdaten FD2 ausgibt. Der zweite Modus-Controller 534 kann das zweite Auswahlsignal CS2 unabhängig von einem Wert des Scan-Aktivierungssignals SE derart erzeugen, dass die zweiten Funktionsdaten FD2 von der zweiten Auswahlschaltung 533 ausgegeben werden. Somit können die von der zweiten Invertierschaltung 532 ausgegebenen Testdaten TD2 womöglich nicht für den At-Speed-Test der Logikschaltung 525 verwendet werden.
  • Bezugnehmend auf 5 und 11 kann das erste Register 521 als Reaktion auf eine ansteigende Flanke des Taktsignals CLK die Scandaten SD zu der zweiten Zeit t2 speichem. Das erste Register 521 kann die Scandaten SD als die ersten Ausgabedaten OD1 ausgeben. Die erste Invertierschaltung 522 kann die vom ersten Register 521 ausgegebenen Scandaten SD invertieren, um erste Testdaten TD1 zu erzeugen. Die ersten Testdaten TD1 können an die erste Auswahlschaltung 523 übermittelt werden.
  • Zu der dritten Zeit t3 kann der erste Modus-Controller 524 das erste Auswahlsignal CS1 basierend auf dem Modus-Signal MODE und einem niedrigen Logikwert des Scan-Aktivierungssignals SE derart erzeugen, dass die ersten Testdaten TD1 von der ersten Auswahlschaltung 523 ausgegeben werden. Die erste Auswahlschaltung 523 kann die ersten Testdaten TD1 basierend auf dem ersten Auswahlsignal CS1 als die ersten Eingabedaten ID1 ausgeben. Somit können die ersten Testdaten TD1 in ein Eingabedatenterminal „D“ des ersten Registers 521 eingegeben werden.
  • Zu der vierten Zeit t4 kann das erste Register 521 die ersten Testdaten TD1 als Reaktion auf eine ansteigende Flanke des Taktsignals CLK als die ersten Ausgabedaten OD1 ausgeben. Die Logikschaltung 525 kann basierend auf den ersten Testdaten TD1 eine Operation durchführen und kann Ergebnisdaten als ein Ergebnis der Operation ausgeben. Die Ergebnisdaten können durch den Ausgabeport 526 und den Eingabeport 535 als die zweiten Funktionsdaten FD2 an die zweite Auswahlschaltung 533 übermittelt werden. Die zweite Auswahlschaltung 533 kann die Ergebnisdaten als Reaktion auf das zweite Auswahlsignal CS2 ausgeben. Somit können die Ergebnisdaten als die zweiten Eingabedaten ID2 an das zweite Register 531 übermittelt werden.
  • Zu der fünften Zeit t5 kann das zweite Register 531 die Ergebnisdaten als Reaktion auf eine ansteigende Flanke des Taktsignals CLK speichern. Die Ergebnisdaten können als die zweiten Ausgabedaten OD2 ausgegeben werden. Somit kann der Übergang-Verzögerungsfehler der Logikschaltung 525 basierend auf den zweiten Ausgabedaten OD2 erkannt werden.
  • Wie oben beschrieben, kann der At-Speed-Test, wenn der At-Speed-Test der zweiten Logikschaltung 525 durchgeführt wird, an einer Schnittstelle zwischen dem ersten Prozessorkern 520 und dem zweiten Prozessorkern 530 durchgeführt werden. Nach Ausführungsbeispielen kann ein At-Speed-Test an einer Schnittstelle zwischen Low-Level-Prozessorkernen ordentlich durchgeführt werden.
  • Wie in 11 aufgezeigt, können der erste Modus-Controller 524 und der zweite Modus-Controller 534 als Reaktion auf das gleiche Modus-Signal MODE unterschiedlich voneinander operieren. Sowohl der erste als auch der zweite Modus-Controller 524 und 534 können das Auswahlsignal CS basierend auf einer Lage der Logikschaltung 525, die für einen Test bestimmt ist, erzeugen. Da die Logikschaltung 525 zum Beispiel auf einem Ausgabedatenpfad mit Bezug auf die erste Auswahlschaltung 523 positioniert ist, kann der erste Modus-Controller 524 das erste Auswahlsignal CS1 derart erzeugen, dass die ersten Testdaten TD1 von der ersten Auswahlschaltung 523 ausgegeben werden. Da die Logikschaltung 525 zum Beispiel auf einem Eingabedatenpfad mit Bezug auf die zweite Auswahlschaltung 533 positioniert ist, kann der zweite Modus-Controller 534 das zweite Auswahlsignal CS2 derart erzeugen, dass die zweiten Funktionsdaten FD2 von der zweiten Auswahlschaltung 533 ausgegeben werden.
  • 11 zeigt auf, dass die Logikschaltung 525 im ersten Prozessorkern 520 enthalten ist, Ausführungsbeispiele müssen aber nicht darauf beschränkt sein. Zum Beispiel kann die Logikschaltung 525 im zweiten Prozessorkern 530 enthalten sein. Somit kann der At-Speed-Test an einer Logikschaltung durchgeführt werden, die zwischen dem ersten Register 521 und dem zweiten Register 531 positioniert ist.
  • 12 zeigt ein Testsystem 1000 nach einem Ausführungsbeispiel auf. Bezugnehmend auf 12 kann das Testsystem 1000 eine Testvorrichtung 600 und ein SoC 700 enthalten. Das SoC 700 kann einen Top-Controller 710 und eine Logikschaltung 720 enthalten.
  • Die Testvorrichtung 600 kann einen Scan-Test an der Logikschaltung 720 des SoC 700 durchführen, um einen Defekt der Logikschaltung 720 zu erkennen. Die Testvorrichtung 600 kann für den Scan-Test Scandaten SD an das SoC 700 übermitteln. Die Testvorrichtung 600 kann basierend auf den Scandaten SD vom SoC 700 ausgegebene Ergebnisdaten RD empfangen. Die Ergebnisdaten RD können basierend auf den Scandaten SD von der Logikschaltung 720 erzeugt werden und können von der Logikschaltung 720 ausgegeben werden. Die Testvorrichtung 600 kann einen Defekt der Logikschaltung 720 basierend auf den Ergebnisdaten RD erkennen. Wenn die Logikschaltung 720 zum Beispiel den Defekt aufweist, können die Ergebnisdaten RD anders sein als Zieldaten.
  • Die Testvorrichtung 600 kann für den Scan-Test der Logikschaltung 720 Steuersignale CTRL an das SoC 700 übermitteln. Die Steuersignale CTRL können verschiedene Signale für den Scan-Test enthalten. Zum Beispiel können die Steuersignale CTRL das Scan-Aktivierungssignal SE, das Taktsignal CLK, Informationen zu einem Testziel, Informationen zu einem Testmodus, etc. enthalten. Das SoC 700 kann eine Operation zum Testen der Logikschaltung 720 basierend auf den Steuersignalen CTRL durchführen.
  • Der Top-Controller 710 kann basierend auf den Steuersignalen CTRL interne Steuersignale zur Steuerung von Vorgängen von internen Schaltungen des SoC 700 erzeugen. Zum Beispiel kann der Top-Controller 710 das Modus-Signal MODE, das einen Testmodus der Logikschaltung 720 angibt, erzeugen. Eine Operation zum Testen der Logikschaltung 720 kann basierend auf den internen Steuersignalen, die vom Top-Controller 710 erzeugt werden, durchgeführt werden.
  • Zum Beispiel kann die Testvorrichtung 600 für den At-Speed-Test der Logikschaltung 720 die Scandaten SD und die Scan-Steuersignale CTRL an das SoC 700 übermitteln. Der Top-Controller 710 kann das Modus-Signal MODE basierend auf den Steuersignalen CTRL erzeugen. Das Modus-Signal MODE kann den At-Speed-Testmodus der Logikschaltung 720 angeben. Wie mit Bezug auf 1 bis 11 beschrieben, kann der At-Speed-Test der Logikschaltung 720 basierend auf den Scandaten SD, dem Modus-Signal MODE, dem Scan-Aktivierungssignal SE und dem Taktsignal CLK durchgeführt werden. Somit kann der At-Speed-Test der Logikschaltung 720 unabhängig von einer Position der Logikschaltung 720 durchgeführt werden.
  • 13 zeigt ein Ausbildungsbeispiel eines elektronischen Systems 2000 auf, an dem ein SoC nach einem Ausführungsbeispiel angewandt wird.
  • Das elektronische System 2000 kann einen Hauptprozessor 2100, einen Arbeitsspeicher 2200, eine Speichervorrichtung 2300, eine Verarbeitungsvorrichtung 2400, eine Benutzeroberfläche 2500 und einen Bus 2600 enthalten. Das elektronische System 2000 kann zum Beispiel eines von einem Tischcomputer, einem Laptop, einem Tablet-Computer, einem Smartphone, einer tragbaren Vorrichtung, eines Elektrofahrzeugs, einer Workstation, etc. sein. Das elektronische System 2000 kann zum Beispiel eine elektronische Vorrichtung sein, die von einem Endverbraucher verwendet wird. Alternativ kann das elektronische System 2000 eine Komponente eines umfangreichen Systems sein, z.B. eines Serversystems, einer Datenzentrale, etc.
  • Der Hauptprozessor 2100 kann die Gesamtoperationen des elektronischen Systems 2000 steuern. Der Hauptprozessor 2100 kann verschiedene Arten von arithmetischen Operationen und/oder logischen Operationen verarbeiten. Wie mit Bezug auf 1 bis 12 beschrieben, kann der Hauptprozessor 2100 in Form eines SoC, das eine Mehrzahl an Prozessorkernen enthält, umgesetzt werden. Somit kann der At-Speed-Test an einer Logikschaltung des Hauptprozessors 2100 ordentlich durchgeführt werden.
  • Der Arbeitsspeicher 2200 kann Daten für eine Operation des elektronischen Systems 2000 speichern. In einer Ausführungsform kann der Arbeitsspeicher 2200 vorübergehend Daten speichern, die vom Hauptprozessor 2100 verarbeitet wurden oder verarbeitet werden sollen. Zum Beispiel kann der Arbeitsspeicher 2200 einen flüchtigen Speicher (z.B. einen dynamischer Direktzugriffsspeicher (DRAM), einen Synchron-DRAM (SDRAM), oder Ähnliches) und/oder einen nichtflüchtigen Speicher (z.B. einen Phasen-übergangs-RAM (PRAM), einen magnetoresistiven RAM (MRAM), einen resistiven RAM (ReRAM), einen ferroelektrischen RAM (FRAM), oder Ähnliches) enthalten.
  • Die Speichervorrichtung 2300 kann Daten unabhängig davon, ob Leistung zugeführt wird, speichern. Die Speichervorrichtung 2300 kann zum Beispiel einen nichtflüchtigen Speicher enthalten, z.B. einen Flash-Speicher, einen PRAM, einen MRAM, einen ReRAM, einen FRAM, etc. Die Speichervorrichtung 2300 kann zum Beispiel ein Speichermedium enthalten, z.B. ein Festplattenlaufwerk (HDD), ein Solid-State-Laufwerk (SSD), einen Kartenspeicher, einen integrierten Speicher, etc.
  • Die Verarbeitungsvorrichtung 2400 kann unter Steuerung des Hauptprozessors 2100 Eingabedaten verarbeiten. Die Verarbeitungsvorrichtung 2400 kann die Eingabedaten durch verschiedene Operationen verarbeiten. Die Verarbeitungsvorrichtung 2400 kann die verarbeiteten Eingabedaten an den Hauptprozessor 2100 übermitteln. Die Verarbeitungsvorrichtung 2400 kann ein dedizierter Prozessor sein, der auf eine spezielle Operation spezialisiert ist. Zum Beispiel kann die Verarbeitungsvorrichtung 2400 mit einer Graphikverarbeitungseinheit (GPU), einer neuronalen Verarbeitungseinheit (NPU), einem digitalen Signalprozessor (DSP), etc. umgesetzt werden. Wie mit Bezug auf 1 bis 12 beschrieben, kann die Verarbeitungsvorrichtung 2400 in Form eines SoC, das eine Mehrzahl an Prozessorkernen enthält, umgesetzt werden. Somit kann der At-Speed-Test an einer Logikschaltung der Verarbeitungsvorrichtung 2400 ordentlich durchgeführt werden.
  • Die Benutzeroberfläche 2500 kann eine Kommunikationsvermittlung zwischen einem Benutzer und dem elektronischen System 2000 durchführen. Die Benutzeroberfläche 2500 kann zum Beispiel Eingabeoberflächen enthalten, z.B. eine Tastatur, eine Maus, einen Ziffernblock, einen Knopf, ein Touchpanel, einen Touchscreen, ein Touchpad, einen Touchball, eine Kamera, ein Mikrofon, einen Gyroskopsensor, einen Vibrationssensor, etc. Die Benutzeroberfläche 2500 kann zum Beispiel Ausgabeoberflächen enthalten, z.B. eine Flüssigkristall-Anzeige(LCD)vorrichtung, eine Leuchtdioden(LED)-Anzeigevorrichtung, eine organische LED(OLED)-Anzeigevorrichtung, eine Aktiv-matrix-OLED(AMOLED)-Anzeigevorrichtung, einen Lautsprecher, einen Motor, etc.
  • Der Bus 2600 kann Kommunikationspfade zwischen Komponenten des elektronischen Systems 2000 vorsehen. Die Komponenten des elektronischen Systems 2000 können basierend auf einem Busformat des Buses 2600 Daten miteinander austauschen. Das Busformat kann zum Beispiel ein oder mehrere verschiedene Schnittstellenprotokolle enthalten, wie zum Beispiel einen USB, ein Small Computer System Interface (SCSI), einen Peripheral Component Interconnect Express (PCIe), einen mobilen PCIe (M-PCIe), ein Advanced Technology Attachment (ATA), ein Parallel-ATA (PATA), ein Serien-ATA (SATA), ein Serial Attached SCSI (SAS), eine integrierte Antriebselektronik (IDE), eine verbesserte IDE (EIDE), einen nichtflüchtigen Speicherexpress (NVMe), einen Universal-Flash-Speicher (UFS), etc.
  • Nach Ausführungsformen können ein SoC, in dem ein At-Speed-Test einer Logikschaltung unabhängig von einer Position der Logikschaltung durchgeführt werden kann, und ein Betriebsverfahren desselben vorgesehen sein.
  • Außerdem können nach Ausführungsformen ein SoC, in dem ein Übergang-Verzögerungsfehler einer Schnittstellenschaltung zwischen Low-Level-Prozessorkernen und einer Schnittstellenschaltung zwischen einem Top-Level-Prozessorkern und einem Low-Level-Prozessorkern ordentlich und effektiv erkannt werden kann, und ein Betriebsverfahren desselben vorgesehen sein.
  • Hierin wurden Ausführungsbeispiele beschrieben, und obwohl spezifische Begriffe verwendet werden, werden diese lediglich in einem allgemeinen und beschreibenden Sinn verwendet und interpretiert und nicht zwecks einer Beschränkung. In manchen Fällen, was für einen Fachmann, welcher mit der Einreichung einer Anmeldung vertraut ist, offensichtlich ist, können Merkmale, Eigenschaften und/oder Elemente, die in Verbindung mit einer bestimmten Ausführungsform beschrieben sind, alleine oder in Kombination mit Merkmalen, Eigenschaften und/oder Elementen, die in Verbindung mit anderen Ausführungsformen beschrieben sind, verwendet werden, sofern nicht anderweitig speziell angegeben. Dementsprechend wird ein Fachmann verstehen, dass verschiedene Änderungen in Form und Detail gemacht werden können, ohne dabei vom Geist und Umfang der vorliegenden Erfindung, wie sie in den nachfolgenden Ansprüchen dargelegt wird, abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • KR 1020190003372 [0001]

Claims (20)

  1. Ein-Chip-System, das eine Mehrzahl an Prozessorkernen (110_0, 110_1, 110_2, 110_n; 220) enthält, aufweisend: ein erstes Scan-Register (101; 221) in einem ersten Prozessorkern (220) der Mehrzahl an Prozessorkernen (110_0, 110_1, 110_2, 110_n; 220), wobei das erste Scan-Register (101; 221) einem Eingabeport (227) des ersten Prozessorkerns (220) am nächsten ist; eine Invertierschaltung (102; 222) auf einem Rückführungspfad des ersten Scan-Registers (101; 221); ein zweites Scan-Register (106; 226) im ersten Prozessorkern (220); und eine Logikschaltung (105; 225) auf einem Datenpfad zwischen dem ersten Scan-Register (101; 221) und dem zweiten Scan-Register (106; 226), wobei: die Invertierschaltung (102; 222) in einem Testmodus für einen At-Speed-Test der Logikschaltung (105; 225) Testdaten (TD) durch Invertieren von vom ersten Scan-Register (101; 221) ausgegebenen Scandaten erzeugt, das erste Scan-Register (101; 221) die Testdaten (TD) als Reaktion auf einen ersten Impuls eines Taktsignals (CLK) speichert, die Logikschaltung (105; 225) basierend auf den vom ersten Scan-Register (101; 221) ausgegebenen Testdaten (TD) Ergebnisdaten erzeugt, und das zweite Scan-Register (106; 226) die Ergebnisdaten als Reaktion auf einen zweiten Impuls des Taktsignals (CLK) speichert.
  2. Ein-Chip-System nach Anspruch 1, wobei der zweite Impuls benachbart zum ersten Impuls ist.
  3. Ein-Chip-System nach Anspruch 1, wobei eine Frequenz des Taktsignals (CLK) gleich einer Frequenz eines Betriebs-Taktsignals in einer normalen Funktionsweise des Ein-Chip-Systems ist.
  4. Ein-Chip-System nach Anspruch 1, wobei ein Übergang-Verzögerungsfehler der Logikschaltung (105; 225) durch Vergleichen von Zieldaten mit den im zweiten Scan-Register (106; 226) gespeicherten Ergebnisdaten erkannt wird.
  5. Ein-Chip-System nach Anspruch 1, ferner aufweisend: eine Auswahlschaltung (103; 223), um das erste Scan-Register (101; 221) mit vom Eingabeport (227) ausgegebenen Funktionsdaten (FD) und mit den von der Invertierschaltung (102; 222) ausgegebenen Testdaten (TD) zu versorgen, wobei die Auswahlschaltung (223) im Testmodus die Testdaten (TD) auswählt, um die Testdaten (TD) an das erste Scan-Register (101; 221) zu übermitteln.
  6. Ein-Chip-System nach Anspruch 5, wobei die Funktionsdaten (FD) von einem Top-Level-Prozessorkern (110_0) der Mehrzahl an Prozessorkernen (110_0, 110_1, 110_2, 110_n; 220)übermittelt werden.
  7. Ein-Chip-System, das eine Mehrzahl an Prozessorkernen enthält, aufweisend: ein erstes Scan-Register (321; 521) in einem ersten Prozessorkern (320; 520) der Mehrzahl an Prozessorkernen, wobei das erste Scan-Register (321; 521) einem Ausgabeport (326; 526) des ersten Prozessorkerns (320; 520) am nächsten ist; eine erste Invertierschaltung (322; 522) auf einem Rückführungspfad des ersten Scan-Registers (321; 521); ein zweites Scan-Register (311; 531) in einem zweiten Prozessorkern (310; 530) der Mehrzahl an Prozessorkernen, wobei das zweite Scan-Register (311; 531) einem Eingabeport (312; 535) des zweiten Prozessorkerns (310; 530) am nächsten ist; und eine Logikschaltung (325; 525) auf einem Datenpfad zwischen dem ersten Scan-Register (321; 521) und dem zweiten Scan-Register (311; 531), wobei: die erste Invertierschaltung (322; 522) in einem Testmodus für einen At-Speed-Test der Logikschaltung (325; 525) erste Testdaten durch Invertieren von vom ersten Scan-Register (321; 521) ausgegebenen Scandaten erzeugt, das erste Scan-Register (321; 521) die ersten Testdaten als Reaktion auf einen ersten Impuls eines Taktsignals (CLK) speichert, die Logikschaltung (325; 525) basierend auf den vom ersten Scan-Register (321; 521) ausgegebenen ersten Testdaten Ergebnisdaten erzeugt, und das zweite Scan-Register (311; 531) die Ergebnisdaten als Reaktion auf einen zweiten Impuls des Taktsignals (CLK) speichert.
  8. Ein-Chip-System nach Anspruch 7, wobei der zweite Impuls benachbart zum ersten Impuls ist.
  9. Ein-Chip-System nach Anspruch 7, wobei eine Frequenz des Taktsignals (CLK) gleich einer Frequenz eines Betriebs-Taktsignals in einer normalen Funktionsweise des Ein-Chip-Systems ist.
  10. Ein-Chip-System nach Anspruch 7, wobei ein Übergang-Verzögerungsfehler der Logikschaltung (325: 525) durch Vergleichen von Zieldaten mit den im zweiten Scan-Register (311; 531) gespeicherten Ergebnisdaten erkannt wird.
  11. Ein-Chip-System nach Anspruch 7, ferner aufweisend: eine erste Auswahlschaltung (323; 523), um Funktionsdaten (FD) und die von der ersten Invertierschaltung (322; 522) ausgegebenen ersten Testdaten zu empfangen, und um das erste Scan-Register (321; 521) mit den Funktionsdaten (FD) und den ersten Testdaten zu versorgen, wobei die erste Auswahlschaltung (323; 523) im Testmodus die ersten Testdaten auswählt, um die ersten Testdaten an das erste Scan-Register (321; 521) zu übermitteln.
  12. Ein-Chip-System nach Anspruch 11, ferner aufweisend: eine zweite Invertierschaltung (532) auf einem Rückführungspfad des zweiten Scan-Registers (531); und eine zweite Auswahlschaltung (533), um das zweite Scan-Register (531) mit vom Eingabeport (535) ausgegebenen Ergebnisdaten und mit von der zweiten Invertierschaltung (533) ausgegebenen zweiten Testdaten zu versorgen, wobei die zweite Auswahlschaltung (533) im Testmodus die Ergebnisdaten an das zweite Scan-Register (531) übermittelt.
  13. Ein-Chip-System nach Anspruch 7, wobei der zweite Prozessorkern (310) ein Top-Level-Prozessorkern ist.
  14. Betriebsverfahren eines Ein-Chip-Systems für einen At-Speed-Test einer Logikschaltung auf einem Datenpfad zwischen einem ersten Scan-Register (221; 321; 521) und einem zweiten Scan-Register (226; 311; 531), wobei das Verfahren aufweist: Ausgeben von Scandaten durch das erste Scan-Register (221; 321; 521) als Reaktion auf ein Taktsignal (CLK), das eine erste Frequenz aufweist; Versorgen des ersten Scan-Registers (221; 321; 521) mit Testdaten, die durch Invertieren der vom ersten Scan-Register (221; 321; 521) ausgegebenen Scandaten erzeugt werden; Ausgeben der Testdaten durch das erste Scan-Register (221; 321; 521) als Reaktion auf einen ersten Impuls des Taktsignals (CLK), das eine zweite Frequenz aufweist; Ausgeben von Ergebnisdaten durch die Logikschaltung (225; 325; 525), basierend auf den vom ersten Scan-Register (221; 321; 521) ausgegebenen Testdaten; und Ausgeben der Ergebnisdaten durch das zweite Scan-Register (226; 311; 531) als Reaktion auf einen zweiten Impuls des Taktsignals (CLK), das die zweite Frequenz aufweist.
  15. Verfahren nach Anspruch 14, wobei der zweite Impuls benachbart zum ersten Impuls ist.
  16. Verfahren nach Anspruch 14, wobei die zweite Frequenz gleich einer Frequenz eines Betriebs-Taktsignals in einer normalen Funktionsweise des Ein-Chip-Systems ist.
  17. Verfahren nach Anspruch 14, wobei ein Übergang-Verzögerungsfehler der Logikschaltung (225; 325; 525) durch Vergleichen von Zieldaten mit den im zweiten Scan-Register (226; 311; 531) gespeicherten Ergebnisdaten erkannt wird.
  18. Verfahren nach Anspruch 14, wobei das Ein-Chip-System einen ersten Prozessorkern (220; 320; 520), der einen ersten Eingabeport (227) und einen ersten Ausgabeport (326; 526) enthält, und einen zweiten Prozessorkern (310; 530), der einen zweiten Eingabeport (312; 535) und einen zweiten Ausgabeport enthält, enthält, und wobei der erste Ausgabeport (326; 526) mit dem zweiten Eingabeport (312; 535) verbunden ist.
  19. Verfahren nach Anspruch 18, wobei das erste Scan-Register (221) und das zweite Scan-Register (226) im ersten Prozessorkern enthalten sind, und wobei das erste Scan-Register (221) ein Eingabe-Wrapper-Register ist, das dem ersten Eingabeport (227) am nächsten ist.
  20. Verfahren nach Anspruch 18, wobei das erste Scan-Register (321; 521) im ersten Prozessorkern (320; 520) enthalten ist, wobei: das zweite Scan-Register (311; 531) im zweiten Prozessorkern (310; 530) enthalten ist, das erste Scan-Register (321; 521) ein Ausgabe-Wrapper-Register ist, das dem ersten Ausgabeport (326; 526) am nächsten ist, und das zweite Scan-Register (311; 531) ein Eingabe-Wrapper-Register ist, das dem zweiten Eingabeport (312; 535) am nächsten ist.
DE102019124122.7A 2019-01-10 2019-09-09 Ein-Chip-System für einen At-Speed-Test einer Logikschaltung und Betriebsverfahren desselben Pending DE102019124122A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190003372A KR20200087375A (ko) 2019-01-10 2019-01-10 논리 회로의 at-speed 테스트를 위한 시스템-온-칩 및 그것의 동작 방법
KR10-2019-0003372 2019-01-10

Publications (1)

Publication Number Publication Date
DE102019124122A1 true DE102019124122A1 (de) 2020-07-16

Family

ID=71131943

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019124122.7A Pending DE102019124122A1 (de) 2019-01-10 2019-09-09 Ein-Chip-System für einen At-Speed-Test einer Logikschaltung und Betriebsverfahren desselben

Country Status (3)

Country Link
US (2) US10969432B2 (de)
KR (1) KR20200087375A (de)
DE (1) DE102019124122A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112345924A (zh) * 2020-10-30 2021-02-09 上海兆芯集成电路有限公司 扫描链控制电路

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200087375A (ko) * 2019-01-10 2020-07-21 삼성전자주식회사 논리 회로의 at-speed 테스트를 위한 시스템-온-칩 및 그것의 동작 방법
US11531061B2 (en) 2020-08-03 2022-12-20 Qualcomm Incorporated Interleaved testing of digital and analog subsystems with on-chip testing interface
WO2023192671A1 (en) * 2022-04-01 2023-10-05 Google Llc Custom wrapper cell for hardware testing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190003372A (ko) 2017-06-30 2019-01-09 농업회사법인 주식회사 생생초 Gaba 성분이 증진된 금강송 솔잎 유산균 발효액을 이용한 금강송 유산균 발효 음료의 제조방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7007213B2 (en) 2001-02-15 2006-02-28 Syntest Technologies, Inc. Multiple-capture DFT system for detecting or locating crossing clock-domain faults during self-test or scan-test
US7194669B2 (en) 2003-02-14 2007-03-20 Logicvision, Inc. Method and circuit for at-speed testing of scan circuits
EP1571456A1 (de) 2004-03-01 2005-09-07 Koninklijke Philips Electronics N.V. Test-Schaltung und -Methode für hierarchische Schaltungsstruktur
US20060181427A1 (en) 2005-01-31 2006-08-17 Csi Technology, Inc. Machine condition indication system
US7487419B2 (en) 2005-06-15 2009-02-03 Nilanjan Mukherjee Reduced-pin-count-testing architectures for applying test patterns
US7793179B2 (en) 2006-06-27 2010-09-07 Silicon Image, Inc. Test clock control structures to generate configurable test clocks for scan-based testing of electronic circuits using programmable test clock controllers
JP5181499B2 (ja) 2007-03-07 2013-04-10 株式会社リコー Scanテスト回路及び半導体集積回路
KR20110136531A (ko) 2010-06-15 2011-12-21 단국대학교 산학협력단 계층적 SoC의 병렬 테스팅을 위한 저면적 랩퍼셀
US9140754B2 (en) * 2011-02-28 2015-09-22 Texas Instruments Incorporated Scan-based MCM interconnecting testing
US9234942B2 (en) * 2012-09-21 2016-01-12 Apple Inc. Transition fault testing of source synchronous interface
US9366724B1 (en) * 2014-12-11 2016-06-14 Freescale Semiconductor, Inc. Scan testing with staggered clocks
KR20200087375A (ko) * 2019-01-10 2020-07-21 삼성전자주식회사 논리 회로의 at-speed 테스트를 위한 시스템-온-칩 및 그것의 동작 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190003372A (ko) 2017-06-30 2019-01-09 농업회사법인 주식회사 생생초 Gaba 성분이 증진된 금강송 솔잎 유산균 발효액을 이용한 금강송 유산균 발효 음료의 제조방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112345924A (zh) * 2020-10-30 2021-02-09 上海兆芯集成电路有限公司 扫描链控制电路

Also Published As

Publication number Publication date
KR20200087375A (ko) 2020-07-21
US10969432B2 (en) 2021-04-06
US20210223315A1 (en) 2021-07-22
US11442107B2 (en) 2022-09-13
CN111426946A (zh) 2020-07-17
US20200225284A1 (en) 2020-07-16

Similar Documents

Publication Publication Date Title
DE102019124122A1 (de) Ein-Chip-System für einen At-Speed-Test einer Logikschaltung und Betriebsverfahren desselben
CN103744009B (zh) 一种串行传输芯片测试方法、系统及集成芯片
DE102012025781B3 (de) Boundary Scan-Kette für gestapelten Speicher
DE112006002265B4 (de) Zuverlässiges Rechnen mit einem Mehrkern-Prozessor
DE60208442T2 (de) Topologierekonfiguration einer prüfschaltung und verwendungsverfahren
DE10392667T5 (de) Ereignisbasiertes IC-Testsystem
DE10392497T5 (de) Herstellungsverfahren und Herstellungsvorrichtung zum Vermeiden eines Prototypen-Aufschubs bei der ASIC/SOC-Herstellung
US10061879B2 (en) Circuit design instrumentation for state visualization
CN103176068A (zh) 一种基于总线的测试模块
CN104569794A (zh) 一种基于边界扫描结构的fpga在线测试仪及测试方法
US4604746A (en) Testing and diagnostic device for digital computers
CN100489999C (zh) 指明存储晶片脚位状态的方法
DE102016206170A1 (de) Serielle draht-debug-brücke
DE112019002138T5 (de) Automatische usb-host-erkennung und port-konfiguration
DE102016204623A1 (de) Arbitrierung zur speicherdiagnose
CN106569481A (zh) 一种fpga重构装置和方法
CN102737727A (zh) 双倍速率同步动态随机存储器稳定性测试的方法及系统
CN108491299A (zh) 一种信号检测板卡以及用于信号检测的主板
CN101154468A (zh) 内嵌存储器芯片测试方法
US9032252B2 (en) Debug barrier transactions
US20150046763A1 (en) Apparatus and Method for Controlling Internal Test Controllers
Ramirez et al. On UVM reliability in mixed-signal verification
KR20210058351A (ko) 테스트 보드 및 이를 포함하는 테스트 시스템
KR102038414B1 (ko) 테스트 장치 및 그의 동작 방법
TWI502350B (zh) 快閃記憶體的存取裝置及方法

Legal Events

Date Code Title Description
R012 Request for examination validly filed