Ich habe einiges an einer fremden VHDL umgestellt und nun verdächtigerweise deutlich weniger FFs. Es fehlen etwa 140 von vormals 6500, obwohl ich etwas dazuprogrammiert habe. Folgendes ist passiert: Ich habe einige statische Werte, die über einen externen Controller gelesen werden sollen (und die sich in diesem design nie ändern) in ein eigenes Modul ausgelagert. Dieses hat also keinen Takt sondern nur Ausgänge, die das Toplevel füttern. Die Synthese meldet, dass dieses Modul wegsynthestisert wurde! ("will be removed from the design". Die Werte sind aber extern lesbar. Ist das normal, dass diese Meldung kommt? Ferner habe ich wegen des drohenden engen timings einige FFs in einem anderen Modul hinzugefügt, damit dort mehr Reserve für den Weiterbau ist". Die timings werden nun um so entspannter getroffen. Kann es sein, dass zuvor Register hinzugefügt werden mussten, um das timing zu treffen und meine "Entspannung" mehr gespart hat, als sie kostet? Fände ich seltsam.
>Werte sind aber extern lesbar
Sind sie denn extern (in Echtzeit) lesbar?
Das kann schon sein, hast du eine neue Version des Synthesetools verwendet? Das kann vielleicht besser optimieren.
Synthesizer schrieb: > um das timing zu treffen > und meine "Entspannung" mehr gespart hat, als sie kostet? Das wäre in der Tat seltsam. Eigentlich sollte die Synthes das doch am Besten können. Hast Du nicht zufällig was rausgestrichen und ungewollt wegoptimiert?
> Hast Du nicht zufällig was rausgestrichen und ungewollt wegoptimiert?
Waren diese konstanten Werte z.B. vorher über Flipflops realisiert?
Eventuell hast du durch deine Änderung eine zuvor nötige automatische Register Duplication unnötig gemacht.. aber bei der "kleinen" Größe des Designs eher unwahrscheinlich
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.