Design&Verifikation

Chipdesign als Big-Data-Herausforderung

5. Dezember 2018, 10:09 Uhr | Anna M. Ravitzki, Vtool
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Grundfunktionen

Cogita integriert Daten-Screening, Verarbeitung, und Visualisierung für simulationsbasiertes ASIC- und FPGA-Debugging. Es kann riesige Datenmengen aus unterschiedlichen Quellen handeln (z.B. Logdateien und Wellenformdaten) und bietet eine klare visuelle Ursachenanalyse. Einige Grundfunktionen werden nachfolgend beschrieben.

Einheitliche Datenbank

Eine der größten Herausforderungen des traditionellen Batch-Debugging besteht in der Korrelation von Protokolldateien mit Wellenformen. Beim Debugging mit einem Texteditor, zur Anzeige des VCD-Dateiprotokolls in Relation zu einer Wellenform, sind Daten unterschiedlicher Attribute zu interpretieren: die Protokolldatei zählt die Zeit vertikal, die Wellenform horizontal. Das Protokoll enthält Text, die Wellenformen rein numerische Werte.

Cogita aggregiert mehrere Datenformate zu einer einzigen Darstellung. Es zeigt auf horizontaler Zeitachse, eine Kombination aus Testbench- und DUT-Ereignissen und damit auch die Grenzen der Einzelanzeigen, auf. Das Umschalten zwischen Protokollmeldungen und den Wellenformen entfällt.

Daten-Screening und -verarbeitung

Die Fehlersuche erfolgt in Etappen. Fehlermeldungen dienen als Ausgangspunkt für das Debugging eines fehlerhaften Tests. Der Ingenieur trifft anschließend Annahmen und validiert sie anhand der kombinierten Daten, solange bis die Fehlerursache erkannt wurde. Mit der riesigen Gate-Anzahl im modernen VLSI, tippen Verifikationsingenieure oft daneben, weil sie aufgrund falscher Annahmen und Folgerungen vom rechten Debugpfad abkommen. Dies ist zeitaufwendig und erzeugt ineffiziente Debug-Zyklen. Typisch für eine Big-Data-Aufgabe, trifft der Ingenieur eine Hypothese und prüft diese mit einer Datenabfrage. Die Herausforderung besteht im extremen Verhältnis zwischen den aussagekräftigen und den redundanten Daten.

Beispielsweise helfen ab einem bestimmten Punkt eines Debug-Prozesses, nicht mehr als zehn Nachrichten und Wellenformen zur korrekten Entscheidung. Cogita integriert hochentwickelte Daten-Screening- und Verarbeitungsmethoden, die solche wichtigen Nachrichten und Wellenformen isolieren, wie in den folgenden Beispielen beschrieben (Abschnitt Anwendungen).

Visualisierung

Die Visualisierung ist ein Schlüsselelement der Datenanalyse. Wie in unserem vorherigen Beitrag ausführlich erläutert [1], stellt Cogita die gescannten und verarbeiteten Daten in einer geeigneten Weise dar.

Die Datenquelle (Logmeldung oder VCD-Wellenformen) bestimmt dabei nicht die Darstellung, diese wird geeignet zum Testszenario adaptiert. Sowohl ein RTL-Bus als auch ein ganzzahliger Testbench-Wert können ausgetauscht werden, als auch Werte über einen Bus oder nach Höhe. Dies bietet enorme Vorteile gegenüber dem textbasierten Debugging und gewährleistet einen akkuraten und kürzeren Verifikationszyklus.


  1. Chipdesign als Big-Data-Herausforderung
  2. Grundfunktionen
  3. Anwendungen I
  4. Anwendungen II
  5. Fazit

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu INTEL GmbH

Weitere Artikel zu IP-Cores

Weitere Artikel zu EDA (Halbleiterentwicklung)