Verifikationsprojekte beinhalten oft mehrere Millionen Codezeilen, was bedeutet, dass sich ein Gesamt-Verifikationsprozess heutzutage mehr wie ein größeres Software-Entwicklungsvorhaben darstellt. Hardware-Verifikationsteams sollten daher in Erwägung ziehen, ihre Vorgehensweisen an den in der Software-Industrie üblichen Methoden auszurichten.
Die Software-Industrie spielt eine Vorreiterrolle in ihrem Verständnis von Prozess-Reife. Da viele Aufgaben von Eingaben durch Menschen abhängen, ist es gängige Praxis, Metriken wie Produktivität pro Entwickler zu analysieren und zu verbessern. Dies hat den Fokus darauf gelenkt, wie besserer Code mit weniger Fehlern erstellt werden kann. Dieser „Correct-by-Design“-Prozess ist ausgereifter als die Prozesse im Hardware-Bereich.
Software-Teams wenden auch mehr Zeit auf, ihren Codes durchzusehen, als Hardware-Teams dies tun. Sie optimieren ihre Entwicklungsinfrastruktur durch Messung von Compile- und Build-Zeiten, und sie ermitteln die Zeit, die ein Ingenieur benötigt, um seinen Code zu prüfen und die Regression-Tests abzuschließen. Allgemein formuliert haben Software-Teams Metriken zur Hand, die ihnen ermöglichen, Produktivitätsengpässe zu identifizieren und zu beheben.
Während der letzten paar Jahre haben wir mit Dutzenden führender Chip- und Systemfirmen aus verschiedenen Industriezweigen zusammengearbeitet, die Spitzendesigns entwickeln und dabei öfter neuen und beispiellosen Herausforderungen bei der Verifikation gegenüber stehen. Ein entscheidendes Element in unserem Kooperationsprozess ist die objektive Erfassung des erwarteten Wertes für verschiedene neue Verifikationsansätze, die auf der Steuerung der Gesamt-Verifikationskosten des Kunden basieren. Typischerweise verfolgen wir 25 – 30 verschiedene Metriken für jedes Projekt, so dass wir besser verstehen können, wo Engpässe und wo Chancen bestehen. Durch diese Aktivität haben wir enorme Fortschritte gemacht, den Zusammenhang zwischen verschiedenen Anwendungen, Methodiken und Kosten zu verstehen.
All diese Aktivitäten waren Teil unserer Zusammenarbeit mit mehreren wichtigen Kunden, um sie bei der Steuerung der wachsenden Verifikationskosten zu unterstützen – sowohl bezüglich personeller Ressourcen als auch bezüglich Rechner-Infrastruktur. Durch Anwendung einiger bewährter Methoden aus der Software-Welt, um den Verifikationsdurchsatz zu steigern, eliminieren wir Produktivitätsengpässe. Indem wir den Ingenieureinsatz, Prozesse und Technologien berücksichtigen, haben wir einigen Organisationen geholfen, mehrere zehn Millionen Dollar einzusparen.
Wir erwarten, dass diesen gemeinschaftlichen Arbeitsstil in Zukunft immer alltäglicher werden wird. Eine engere Zusammenarbeit zwischen Chip-Entwickler und Anbieter von Verifikationslösungen kann dazu beitragen, herauszufinden, wo Verifikationskosten hauptsächlich entstehen, und Strategien zur Kostenreduktion zu entwickeln. Wir können dann mit ihnen arbeiten und ihre Prozesse und Technologien so anpassen, dass aus ihrem Verifikationsinvestment der maximale Nutzen entsteht. Einzeltools mit neuen Features auszustatten wird die Verifikation stetig produktiver machen, aber eine größere Kostenreduktion erfordert einen breiter angelegten Denkansatz über mehrere Verifikationsbereiche hinweg, und manchmal sind auch speziell auf bestimmte Designkategorien angepasste Lösungen notwendig.
Am Horizont tauchen mehrere vielversprechende Verifikationstechnologien auf. Welche wird die treibende Kraft beim nächsten großen Schub hinsichtlich Verifikationsproduktivität sein? In welche sollten EDA-Firmen und Chip-Entwickler investieren? Nur die Zukunft wird es zeigen, aber eines ist sicher: Der nächste große Fortschritt der Verifikation wird durch deren Wirtschaftlichkeit bestimmt und im Rahmen einer engen Zusammenarbeit zwischen Chip-Entwicklern und ihren EDA-Partnern auf den Markt gebracht werden.
Autor:
Manoj Gandhi kam im Zuge des Zusammenschlusses der Firma mit Viewlogic im Dezember 1997 zu Synopsys. In seiner gegenwärtigen Position sind Mr. Gandhi und seine Abteilung verantwortlich für Synopsys' Verifikationslösungen einschließlich Simulation, Testbench-Automatisierung, hybride formale Verifikation und System-Level-Design. Mr. Gandhi verfügt über eine 15 Jahre lange Erfahrung mit HDL-Simulation und Verifikation. Er begann seine EDA-Karriere bei Gateway Design Automation im Jahr 1986. Er hat einen Abschluss als B.Sc. in Computer Science und Engineering vom Indian Institute of Technology, Kharagpur, sowie als M.Sc. in Computer Science von der University of Massachusetts, Amherst.