Servus, ich möchte in meiner DA noch einen kleinen Absatz über mögliche manuelle Optimierungen bringen. Leider hatte ich keine Zeit mich mit dem Thema Constraints weiter zu beschäftigen. Vielleicht kann mir mal jemand grob erklären was für Möglichkeiten man da hat, was sinnvoll ist und was nicht und wie man in etwa vorgeht. Gruß Philip
@ Philip Kirchhoff (plip) >ich möchte in meiner DA noch einen kleinen Absatz über mögliche manuelle >Optimierungen bringen. Leider hatte ich keine Zeit mich mit dem Thema >Constraints weiter zu beschäftigen. Tja, dann fällt das wohl für deine 1,0 aus. >Vielleicht kann mir mal jemand grob erklären was für Möglichkeiten man >da hat, was sinnvoll ist und was nicht und wie man in etwa vorgeht. Krieg ich dann auch ein Diplom? MFg Falk
Falk Brunner wrote: > @ Philip Kirchhoff (plip) > >>ich möchte in meiner DA noch einen kleinen Absatz über mögliche manuelle >>Optimierungen bringen. Leider hatte ich keine Zeit mich mit dem Thema >>Constraints weiter zu beschäftigen. > > Tja, dann fällt das wohl für deine 1,0 aus. Och, wenn ich mich bei meinen Studienkollegen so umschaue, kriegt man die hinterhergeworfen... Ist stark vom Prof abhängig aber ich war dumm genug meinen nicht nach diesem Kriterium auszusuchen :-) >>Vielleicht kann mir mal jemand grob erklären was für Möglichkeiten man >>da hat, was sinnvoll ist und was nicht und wie man in etwa vorgeht. > > Krieg ich dann auch ein Diplom? Ich kann mal nachfragen, glaub ich aber eher nicht... Hast Du nicht schon eins? Dann könnt man vielleicht noch nen Dr. draufsetzen. ;-)
Vielleicht ist das Xilinx Paper "What are OFFSET contraints" ein guter Einstieg fuer timining constraints.
Mit den constraints kannst du Vorgaben einstellen. Nehmen wir folgendes Beispiel: An deinem FPGA ist ein IC mit einem gewissen Interface angeschlossen. Dieses Interface ist spezifiziert und erfordert gewisse Setup und Hold-Zeiten, Clock-to-Output-Delays usw. Eventuell sind noch Pull-Up Widerstände für gewisse Leitungen notwendig. Dem Synthese-Tool musst du das natürlich irgendwie mitteilen, damit die Kommunikation korrekt abläuft. Machst du das nicht, funktioniert es eben auf gut "Glück". Außerdem kannst du der Software sagen, mit welcher Taktfrequenz du deine Taktnetze betreibst, damit die Timinganalyse überprüfen kann, ob diese Taktfrequenz überhaupt möglich ist.
Gibt es nicht auch die Möglichkeit hinsichtlich Logikbedarf zu optimieren?
@ Philip Kirchhoff (plip) >Gibt es nicht auch die Möglichkeit hinsichtlich Logikbedarf zu >optimieren? Nicht mit Constraints. Das kann man global mit einem Schalter im Synthesizer einstellen, Area, Balance oder Speed. Das kann aber nicht einen Entwickler ersetzen, der weis was er tut. MfG Falk
Falk Brunner wrote: > @ Philip Kirchhoff (plip) > ... > Das kann aber nicht einen Entwickler ersetzen, der weis was er tut. Ja Falk, ich kenne Deine Ansichten mittlerweile. Seh ja selbst gar nicht anders - die Welt ist voll von Nullpeilern, die glauben mit einem Buttonklick lassen sich alle Probleme lösen! ;-) Keine Angst, mir ist durchaus bewusst, dass ich, auch wenn meine Diplomarbeit was mit VHDL und FPGAs zu tun hat weit davon entfernt bin, wirklich etwas davon zu verstehen.
Es ist nicht anders wie bei Software auch. Wenn sich der Entwickler gut mit dem Thema auseienander gesetzt hat, dann kommt auch effizienter, schneller und stabiler Code heraus.Mal schnell im Compiler die Optimierung aufdrehen hilft wenig, wenn der Algorithmus schlecht ist. Constraints sind also keine Bonusfeature, sondern eine Notwendigkeit! Was nutzt dir deine noch so tolle Schaltung, wenn du nichtmal weißt, ob sie die Rahmenbedingungen einhalten kann. Zumindest für die Clocks ist ein Constraint dringend notwendig!
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.