Hallo, ich suche nach einem tutorial oder einer Website die die Reports, die das ISE Webpack mach etwas genauer erklärt und evtl auch mal auf die timing constraints eingeht, denn ich blick da noch nicht so ganz durch. ICh würde vorallem gerne wissen, mit wie viel Mhz ich das Design laufen lassen kann. vielen dank im voraus Gruß Chris
Bruchstücken stehen im hiesigen wiki: http://www.mikrocontroller.net/articles/FPGA/CPLD_Toolchain Hinweis: die maximale taktfrequenz steht nicht in den Log dateien, da die Tools eine solche nicht ermitteln. Man gibt eine Taktfrequenz vor und schaut ob die Tools mit dieser Vorgabe einen (Timing-) Fehlereien FPGA bauen können.
Mhm, was gibt das Programm Trace dann an? Da steht doch am Ende des Reports immer die maximal mögliche Taktfrequenz? Oder wie ist das zu verstehen?
<Mhm, was gibt das Programm Trace dann an? Da steht doch am Ende des <Reports immer die maximal mögliche Taktfrequenz? Oder wie ist das zu <verstehen? Trace als Tool der statische Timing Analyse berechnet die laufzeiten aller Pfade im gerouteten design, es routet nicht selber. Die Aussage von trace ist: Dieses geroutete Design läuft mit max. xxx MHz. Das heisst nicht das der selbe VHDL code nicht zu einem schnelleren design geroutet werden kann. Der router optimiert eben nur bis er die timing constraint einhält. Sind diese lasch schafft er das ohne großes Optimieren also mit wenig rechenzeit. Es kann also gut sein das z.b. das constraint auf 10 MHz liegt, der router schnell durchackert und trace was von 30 Mhz berichtet. Setz man nun das constraint auf 100 MHz, ackeren die tools länger und trace sagt es sind nur 90 MHz schaffbar. Letzlich ist die Frage was der fragesteller mit max. taktfrequenz meint, das totale MAXIMUM für den FPGA/Design oder das Maximum für ein design mit einer taktvorgabe.
>ICh würde vorallem gerne wissen, mit wie viel Mhz ich das Design laufen >lassen kann. Im UCF einfach schreiben NET fpga_clk PERIOD = 50ns ; oder NET fpga_clk PERIOD = 20 MHz; wobei fpga_clk der Name deines Taktsignals sein muss. Die Tools versuchen nun, diese Vorgabe zu erreichen, am Ende wird explizit geschieben, wielviel MHz/ns erreicht wurden und ob die Vorgabe eingehalten wurde. Steht im Place&Route Report, wird auch während des Compilierens im Terminal angezeigt. ------------------------------------------------------------------------ -------- Constraint | Requested | Actual | Logic | | | Levels ------------------------------------------------------------------------ -------- NET "fpga_clk_BUFGP/IBUFG" PERIOD = 50 n | 50.000ns | 3.024ns | 2 S HIGH 50.000000 % | | | ------------------------------------------------------------------------ -------- Der Zeilenumbruch versaut das Layout ein wenig, aber ich dnke man kanns erkennen. MFG Falk
Ok, wenn ich aber Timing-contraints vorgebe, und ich die laut Trace erreiche, ist alles in Butter. So hab ich das auch immer gehandhabt.
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.