Was genau sind in der FPGA-Welt falsche Pfadbeschränkungen für einen HDL-Compiler? Warum sind sie nützlich?
Falsche Pfade sind Timing-Pfade, die im endgültigen Design niemals wirklich angewendet werden. Angenommen, Sie entwerfen einen 4-Bit-Zähler und es stellt sich heraus, dass es einen sehr langsamen Verzögerungspfad gibt, wenn Sie von 12 auf 13 inkrementieren eigentliche Gestaltung. Sie kennzeichnen den langsamen Pfad als falschen Pfad, damit der Compiler keine Zeit aufwendet oder zusätzliche Logik hinzufügt, um den falschen Pfad schneller laufen zu lassen.
Ein falscher Pfad ist ein Pfad, der zwar im Design vorhanden ist, aber bei der Operation keine Rolle spielt, sodass es nicht erforderlich ist, ihn in die Zeitanalyse einzubeziehen.
Dies kann verschiedene Gründe haben, aber da das Timing-Analyse-Tool normalerweise nicht weiß (obwohl es einige Tools gibt, die sie erkennen können), welche Pfade verwendet werden können oder nicht, müssen Sie es ihm mitteilen. Es ähnelt einem Weg mit mehreren Zyklen, bei dem Sie ihm mitteilen können, dass ein bestimmter Weg mehr als einen Zyklus verwenden darf, um ihn abzuschließen.
Ein Beispiel (für einen falschen Pfad) ist ein Register, das beim Einschalten einmal beschrieben werden kann, dann aber im selben Zustand bleibt.
Ein falscher Pfad ist einfach ein logischer Pfad, den Sie von der Überprüfung ausschließen möchten, um festzustellen, ob er während der Zeitanalyse dem Timing entspricht. Es gibt zwei Gründe, Pfade auszuschließen, erstens, weil der falsche Pfad die Werkzeuge härter arbeiten lässt, um das Timing für dieses Signal einzuhalten, was wiederum legitime Signalpfade beeinträchtigt, die möglicherweise zusätzliche Timing-Fehler verursachen, und weil es dazu führt, dass die Timing-Prüfung Fehler meldet möglicherweise Ablenkung des Designers von legitimen Timing-Fehlern.
Falsche Pfade werden durch logische Pfade zwischen unabhängigen asynchronen Takten oder Takten derselben Frequenz, aber mit unbekannter Phasenbeziehung oder einem Pfad verursacht, der während des normalen Schaltungsbetriebs niemals aktiviert werden würde. Wenn Sie dem Tool sagen, dass es einen Pfad ignorieren soll, funktioniert das Timing nicht, nur dass das Timing nicht überprüft wird. Es obliegt dem Konstrukteur, manuell sicherzustellen, dass die richtige Synchronisationslogik für diese ignorierten Signalpfade verwendet wird.
W5VO