1. Einleitung - FG Mikroelektronik, TU Berlin
1. Einleitung - FG Mikroelektronik, TU Berlin
1. Einleitung - FG Mikroelektronik, TU Berlin
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Kapitel 4 Entwurf digitaler Schaltungen<br />
Schaltung optimiert sein soll. Ausgangspunkt hierfür bilden neben herkömmlichen<br />
Netzlisten auch HDL-Verhaltensbeschreibungen auf der Basis von VHDL oder Verilog.<br />
Weiterhin werden noch spezielle Beschreibungsformen zur Darstellung von boolschen<br />
Gleichungen und Zustandsautomaten unterstützt.<br />
Den ersten Schritt bildet eine Transformation der Eingangsdaten in boolsche<br />
Gleichungen. Auf der Basis dieser boolschen Gleichungen kann nun eine technologieunabhängige<br />
Logik-Optimierung durchgeführt werden. Ziel dieser Optimierung ist eine<br />
verbesserte Struktur der Gleichungen, so dass zum einen redundante Logik entfernt<br />
(Flattening mit Logikminimierung) und zum anderen der Flächenbedarf (Structuring) oder<br />
die Verzögerungszeit der Schaltung verringert wird. Die wichtigste Grundlage hierfür<br />
stellen die Gesetze der boolschen Algebra dar. Beim „Flattening“ erhält man eine<br />
zweistufige AND-OR-INVERTER-Darstellung, welche meist in einer Verbesserung der<br />
Geschwindigkeit resultiert. Beim „Structuring“ werden gemeinsame Terme ausgeklammert.<br />
Ziel ist es, das Prinzip der Hardware-Sharing zu erreichen, was schließlich zur<br />
Verringerung des Flächenbedarfs führt [Geis99].<br />
Im letzten Schritt wird nun eine technologieabhängige Netzliste auf der Basis einer<br />
entsprechenden Gatterbibliothek erzeugt, was als „Mapping“ bezeichnet wird. Die bei<br />
diesem Vorgang vorgenommene Gate-Level-Optimierung hat zum Ziel, dass die vom<br />
Entwickler vorgegebenen Optimierungsziele und die in der Technologiebibliothek<br />
definierten Entwurfsregeln erfüllt werden.<br />
4.4.3 Statische und dynamische Timing-Analyse<br />
Nach der erfolgreichen Synthese sollte die Schaltung noch auf Setup- und Hold-Time-<br />
Verletzungen untersucht werden. Dieser Vorgang heißt statische Timing-Analyse. Hierfür<br />
könnte man den Design Compiler (DC) von Synopsys anwenden. Eine bessere Möglichkeit<br />
bietet sich jedoch das Programm namens PrimeTime (ebenfalls von Synopsys), da es<br />
speziell für diesen Zweck angeboten ist [SynPT].<br />
Setup-Time bezeichnet man die minimale Zeit, die ein Signal am Eingang eines<br />
Flipflops bereitstehen muss, um dann beim Ankommen der aktiven Taktflanke übernommen<br />
zu werden. Hold-Time nennt man die minimale Zeit, in der ein Signal am<br />
Flipflop-Eingang nach der aktiven Taktflanke noch gültig sein muss, d.h. die Wertänderung<br />
des Eingangssignal darf nicht zu schnell passieren.<br />
Bei der statischen Timing-Analyse treten seltener Setup-Time-Verletzungen auf, da die<br />
Schaltung bei der Synthese oft schon bezüglich von Setup-Time optimiert wurde. Hold-<br />
SPINN-Chip: NTC/TNC-Modul 37