Die Synthese selbst ist eine sehr komplexe Aufgabe. Der Synthesizer muss die von Ihnen gewünschte Logik auf den Strukturen, die Sie ihm zur Verfügung stellen, abbilden. Für einen FPGA muss er also etwas anderes als Standardzellen tun. Während dieser Aufgabe optimiert er. Viel! Es versucht, unbenutzte Signale loszuwerden. Es kann auch Ihre endlichen Automaten optimieren. Es ist ein sehr mächtiges Werkzeug.
Aber vergessen Sie nicht, dass die Synthese kompliziert ist. So ist die Programmierung des Hardware-Verhaltens. Es ist normalerweise eine gute Idee, vor der Synthese einen Linting-Schritt durchzuführen. Das Linting Tool liefert Ihnen Informationen über Ihr Design. Es erkennt automatisch fehlerhaften Code, falsches Reset-Verhalten. Mit linting können Sie Code finden, der später problematisch sein könnte.
TL; DR Ja, der Synthesizer kann Ihre ungenutzte Logik und Verbindungen ausgleichen. Es macht viel mehr. Aber sei vorsichtig damit. Es kann fehlschlagen.
Nein, Synthesis-Tools entfernen aggressiv ungenutzte Hardware. Manchmal aufgrund eines Konstruktionsfehlers, der zu einem komplett leeren Design führt, wenn es vorher nicht in der Simulation getestet wurde! –
@BrianDrummond Oh danke, ist dies ein Standardansatz, der von Synthesetools verwendet wird oder wird er nur von einigen oder den meisten Synthesewerkzeugen verwendet? – Aboudi
Standardansatz. –