Reduzierung des DFT-Footprints: Ein Fall im Consumer-SoC

Inhaltsübersicht

Reduzierung des DFT-Footprints: Ein Fall im Consumer-SoC

Heutzutage spielt die Platzierung mehrerer IPs auf einem einzigen Chip die wichtigste Rolle bei der Erfüllung der Anforderungen der System-on-Chip-ASIC-Spezifikation. Meistens haben diese verschiedenen IPs unterschiedliche Taktdomänen.

In diesem Szenario wird die Verwendung von Multi-Clock-Domänen in aufwendigen Designs zum Ausgleich von Scan-Ketten als Einschränkung der Scan-I/O-Ports unerlässlich. Bei der DFT vermeiden wir es in der Regel, verschiedene Taktgeber in derselben Kette zu mischen, aber wenn es eine Einschränkung bei den E/A-Ports gibt, müssen wir Scan-Flops, die von zwei verschiedenen Taktgebern gesteuert werden, in einer Kette zusammenfügen. Ein solches Szenario ist jedoch eine Einladung zu Herausforderungen wie Halteverletzungen und die Generierung von Mustern für Übergangsverzögerungsfehler, um Fehler zwischen Taktdomänen abzudecken.

FALLSTUDIE HERUNTERLADEN

Design für Testbarkeit für einen Hochgeschwindigkeits-Gigabit-Ethernet-Controller für Netzwerke

Jetzt herunterladen

In diesem Artikel werden die Verwendung von Lock-up Latch und ein Verzögerungstestkonzept für SoC-Bauteile mit mehreren Taktdomänen vorgestellt. Die Schaltung zur Hochgeschwindigkeits-Takterzeugung auf dem Chip ist im SoC implementiert, um teure Testgeräte zu vermeiden. Die Verwendung eines ATE für die Takterzeugung erfordert auch einen Hochgeschwindigkeits-Taktgenerator, um schnelle Taktimpulse für Start und Erfassung zu erzeugen. In der Regel ist ein solcher Hochgeschwindigkeitstaktgenerator in preisgünstigen ATEs nicht verfügbar.

DFT-Herausforderungen

Lassen Sie uns nun über die DFT-Herausforderungen bei der Entwicklung von Multi-Clock-Domains sprechen. Die Verwendung gemischter Takte in derselben Abtastkette würde zu:

  • Verletzung der Haltepflicht
  • Verringerung des Abdeckungsgrads während der Übergangsverzögerung - ATPG (Automatic Test Pattern Generator)

Lassen Sie uns diese beiden Herausforderungen in Kürze verstehen:

1) Verletzung der Haltezeit

Haltezeit: Die minimale Zeitspanne nach dem Eintreffen der Taktflanke, in der die Daten stabil sein müssen, wird als "Haltezeit" bezeichnet. Mit anderen Worten: Die Daten müssen nach dem Eintreffen der Taktflanke eine gewisse Zeit lang stabil sein, damit sie ordnungsgemäß erfasst werden können. Ein Verstoß in diesem Fall kann dazu führen, dass falsche Daten zwischengespeichert werden, was als "hold violation" bezeichnet wird.

Wir wissen, dass die Daten, die bei der aktuellen Taktflanke erfasst werden sollen, bei der vorherigen Taktflanke von einem anderen Flipflop eingeleitet wurden, während die Daten, die bei der aktuellen Taktflanke eingeleitet werden, bei der nächsten Taktflanke erfasst werden müssen. Die Haltezeit sorgt dafür, dass die bei der aktuellen Taktflanke eingeleiteten Daten nicht bei der aktuellen Taktflanke erfasst werden und die bei der vorherigen Taktflanke eingeleiteten Daten erfasst werden und nicht durch die bei der aktuellen Flanke eingeleiteten Daten gestört werden. Die Haltezeit stellt sicher, dass der aktuelle Zustand des Entwurfs nicht gestört wird.

2) Verringerung des Abdeckungsgrads während der Übergangsverzögerung - ATPG (Automatic Test Pattern Generator)

SoC-Bauteile verfügen über mehrere funktionale Taktdomänen. Bei einem At-Speed-Test müssen alle Taktdomänen mit ihren eigenen funktionalen Geschwindigkeiten getestet werden. In einem solchen Fall besteht die Lösung darin, dass die Prüfung in einer Taktdomäne nach der anderen erfolgt, um eine Verzögerungsprüfung mit mehreren Taktdomänen durchzuführen.

Dabei kommt es in der Regel vor, dass die Logik zwischen solchen Taktdomänen ungetestet bleibt, was zu einem Anstieg der Musteranzahl und einer geringeren Fehlerabdeckung führt. Das Erreichen einer hohen Fehlerabdeckung während des Tests erweist sich als eine der größten DFT-Herausforderungen für Designs mit mehreren Taktdomänen.

Ansatz zur Lösung von DFT-Herausforderungen

1) Überwindung der Verletzung der Haltepflicht

Zur Überwindung der Hold Violation soll das folgende Szenario untersucht werden:

Wenn alle Scan-Zellen gleichzeitig eine Taktflanke erhalten, treten keine Timing-Verletzungen auf. Wird jedoch eine andere Taktdomäne verwendet, kann es aufgrund von Latenzzeiten in der Taktdomäne zu Halteverletzungen kommen.

Betrachten wir ein Beispiel mit zwei Scan-Flops, die von zwei verschiedenen Taktgebern gesteuert werden.

Abb. 1: Flops, die von zwei verschiedenen Taktgebern gesteuert werden
Abb. 1: Flops, die von zwei verschiedenen Taktgebern gesteuert werden

Wenn die CLK2-Wellenform an FF2 verzögert ist, kann es zu einer Halteverletzung kommen, bei der FF2 fälschlicherweise die Daten des aktuellen Zyklus anstelle der Daten des vorherigen Zyklus erfasst. Abb. 2 zeigt diese Hold-Verletzung für Lead-Edge-Scan-Zellen.

 Abb. 2: Wellenform für Flops, die von zwei verschiedenen Taktgebern gesteuert werden
Abb. 2: Wellenform für Flops, die von zwei verschiedenen Taktgebern gesteuert werden

Ein Lock-up-Latch verhindert Halteverletzungen für Scan-Zellen, die Daten mit einer schiefen Taktflanke erfassen könnten. Es handelt sich dabei um eine Latch-Zelle, die zwischen zwei Scan-Zellen eingefügt wird und durch die Inversion des Taktes der vorherigen Scan-Zelle getaktet wird. Abb. 3 zeigt die gleichen zwei Scan-Zellen mit einem zusätzlichen Lock-up-Latch.

Abb. 3: Einsetzen der Verriegelungsklinke
Abb. 3: Einsetzen der Verriegelungsklinke

Die Lock-up-Latch-Zelle hält die Abtastdaten des vorherigen Zyklus fest, während die Abtastdaten des aktuellen Zyklus erfasst werden, wodurch der Übergang der Ausgangsdaten auf die nächste Flanke des Quellentakts verzögert wird. Abb. 4 zeigt das Lock-up-Timing-Verhalten für dieses Beispiel.

Abb. 4: Wellenform mit eingefügter Sperrklinke
Abb. 4: Wellenform mit eingefügter Sperrklinke

2) Verringerung des Abdeckungsgrads während der Übergangsverzögerung - ATPG (Automatic Test Pattern Generator)

Die Lösung für dieses Problem ist die "Synchronous OCC"-Technik. Lassen Sie uns tiefer eintauchen.

Die Technik der synchronen On-Chip-Takterzeugung soll die Anzahl der Testvektoren reduzieren und die Testqualität erhöhen. Ein synchroner OCC kann Taktimpulse zwischen jeder synchronen Taktdomäne erzeugen, die den OCC durchläuft (ein Impuls pro Domäne), um Fehler zwischen den Taktdomänen abzudecken. Die Bitwerte der OCC-Schiebekette werden verwendet, um die gezielten Taktimpulse (Start und Erfassung) für jede Taktdomäne zu erzeugen.

Abb. 5 unten zeigt ein Szenario, in dem der synchrone OCC zwei verschiedene Taktgeber synchronisiert, um das Muster des Übergangsverzögerungs-Fehlermodells zu erzeugen.

Abb. 5: Synchrone OCC-Rolle
Abb. 5: Synchrone OCC-Rolle

Hier zeigt launch_en [1:0] das Startbit von 2 verschiedenen OCC an, ähnlich wie capture_en[1:0]. Durch die Anwendung des konstanten Werts 1 auf Shiften können wir Start- und Erfassungsimpulse von der Impulsformungsschaltung basierend auf dem Start- und Erfassungsbit erhalten.

DFT Tool - DAeRT : Dft Automated execution and Reporting Tool

DAeRT ermöglicht es, eine ~100%ige Testbarkeit für ASIC-Designs zu erreichen. Es unterstützt verschiedene DFT-Methoden, beginnend mit IJTAG/JTAG, MBIST, Scan, ATPG, Pattern Validation, Test Timing Analysis und Post-Si-Validierung.

Mehr erfahren

Wie Sync OCC funktioniert

Grundsätzlich wird Sync OCC verwendet, um während des Erfassungsvorgangs Start- und Erfassungsimpulse aus zwei verschiedenen Taktbereichen zu erzeugen, wie in Abb. 6 gezeigt.

Abb.6: Aufbau eines synchronen OCC
Abb.6: Aufbau eines synchronen OCC

Sehen wir uns das im Detail an:

  • Übertragen Sie den Wert 1 auf TDF_MODE und DFT_MODE. Jetzt ist clk_sel abhängig von SCAN_EN. Wenn also SCAN_EN=1 (Shift-Operation) ist, wird SCAN_CLK gewählt, während SCAN_EN=0 (Capture-Operation) func_clk wählt.
  • Betrachten wir nun SCAN_EN=0 für den Erfassungsvorgang. Nach zwei Taktzyklen von SCAN_CLK wird der Synchronisierschaltkreis angesteuert.
  • Hier beziehen sich Launch_pulse_en[0] und Capture_pulse_en[0] auf OCC-1, während sich Launch_pulse_en[1] und Capture_pulse_en[1] auf OCC-2 beziehen.
  • Der Synchronisierschaltkreis erzeugt den Wert 1 an Launch_pulse_en[0] und Capture_pulse_en[1], so dass der Ausgang des Wellenformungsschaltkreises für zwei Funktionstaktzyklen den Wert 1 hat.
  • Da SCAN_EN=0, TDF_MODE=1 und DFT_MODE=1, erhalten wir den Startimpuls und den Erfassungsimpuls als Ausgabe am OCC_clk_output.

Bitte prüfen Sie die in Abb. 7 gezeigte Wellenform

Abb. 7: Wellenform mit synchronem OCC
Abb. 7: Wellenform mit synchronem OCC

ATPG-Einrichtung

1. Write Clocking Verfahren für Sync OCC

Nehmen wir einen Entwurf mit 71 OCC. In einem solchen Fall enthält die OCC-Schiebekette 142(71*2) Flipflops (wobei 2 für das Startbit und das Fangbit jedes OCC steht). Die Taktprozedur für diese Kette ist wie folgt:

Write Clocking Verfahren für Sync OCC

In diesem Beispiel hat CLKIR 142 Bits; wenn wir es auf 1 setzen, können wir Start- und Fangimpulse vom jeweiligen OCC erhalten.

Auf der Grundlage der CLKIR-Sequenz können wir den Startimpuls von E_OCC und den Fangimpuls von C_OCC erhalten.

2. Fügen Sie den folgenden Befehl zum Skript TMAX hinzu

Fügen Sie den folgenden Befehl zum Skript TMAX hinzu

Schlussfolgerung

Für ASICs der nächsten Generation mit mehreren IPs, die in unterschiedlichen Taktbereichen arbeiten, spielt die On-Chip-Takterzeugungsschaltung eine Schlüsselrolle. Die in diesem Artikel beschriebene Methode hilft bei der Verbesserung der Fehlerabdeckung mit einer minimalen Anzahl von Mustern. Sie hilft auch bei der Überprüfung von On-Hold-Verletzungen, da wir eine Zyklusverzögerung zwischen Start- und Erfassungsimpuls bestätigen können.

Bauen Sie Ihr SoC der nächsten Generation mit dem DFT Engagement-Modell

Kontakt aufnehmen

Autoren

Ramesh Devani, Mayank Kapadiya, Piyush Chaniyara und Khushali Dudhagara

Mit freundlicher Genehmigung von: Design & Wiederverwendung.com

Mehr erforschen

Sprechen Sie mit einem Experten

Abonnieren Sie
für unseren Newsletter
Bleiben Sie auf dem Laufenden! Melden Sie sich für unseren Newsletter an und bleiben Sie auf dem Laufenden über die neuesten Trends in Technologie und Innovation.

Bericht herunterladen

Musterbericht herunterladen

Broschüre herunterladen

Beginnen Sie noch heute ein Gespräch

Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Automotive Solution Experts

Beginnen Sie noch heute ein Gespräch

Vereinbaren Sie einen 30-minütigen Beratungstermin mit unserem Experten für Batteriemanagementlösungen

Beginnen Sie noch heute ein Gespräch

Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Experten für Industrie- und Energielösungen

Beginnen Sie noch heute ein Gespräch

Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Experten für die Automobilbranche

Beginnen Sie noch heute ein Gespräch

Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Experten

Bitte füllen Sie die nachstehenden Angaben aus und erhalten Sie einen Musterbericht

Referenz-Designs

Unsere Arbeit

Erneuern Sie

Verwandeln.

Skala

Partnerschaften

Unternehmen

Produkte & IPs

Datenschutzbestimmungen

Unsere Website legt Cookies auf Ihrem Gerät ab, um Ihre Erfahrung zu verbessern und unsere Website zu optimieren. Lesen Sie mehr über die von uns verwendeten Cookies und wie Sie sie deaktivieren können. Cookies und Tracking-Technologien können für Marketingzwecke verwendet werden.

Wenn Sie auf "Akzeptieren" klicken, stimmen Sie der Platzierung von Cookies auf Ihrem Gerät und der Verwendung von Tracking-Technologien durch uns zu. Klicken Sie unten auf "Mehr lesen", um weitere Informationen und Anweisungen zur Deaktivierung von Cookies und Tracking-Technologien zu erhalten. Obwohl die Annahme von Cookies und Tracking-Technologien freiwillig ist, kann deren Deaktivierung dazu führen, dass die Website nicht ordnungsgemäß funktioniert und bestimmte Anzeigen für Sie weniger relevant sind.
Wir respektieren Ihre Privatsphäre. Lesen Sie unsere Datenschutzrichtlinie.