hallo, ich habe in meinem vhdl design ein prozess mit einigen if abfragen. der prozess berechnet 3 zähler uber die andere prozesse gesteuert werden. bei einem timing-constraint von 25mhz hatte ich keinerlei timingprobleme und die max frequenz die vom nach dem routing usw berechnet wurde lag bei ca 77Mhz. Report Summary - (if-then-else) -------------- ------------------------------------------------------------------------ --- Preference | Constraint| Actual|Levels ------------------------------------------------------------------------ | | | FREQUENCY PORT "RXC" 25.000000 MHz ; | 25.000 MHz| 77.435 MHz| 2 | | | ------------------------------------------------------------------------ nun habe ich diesen prozess so umgeschrieben, dass dieser 4 states enthält und in 3 davon eine if und elsif abfrage läuft. also so wie im anhang. auch hier gabs keine errors. jedoch war die max frequenz bei ca 72Mhz. Report Summary - (case) -------------- ------------------------------------------------------------------------ Preference | Constraint| Actual|Levels ------------------------------------------------------------------------ | | | FREQUENCY PORT "RXC" 25.000000 MHz ; | 25.000 MHz| 72.098 MHz| 2 | | | ------------------------------------------------------------------------ mich irritiert es etwas da ich dachte das case-anweisungen doch "schneller" sind. also hier gibt es keine priorisierung. im Pathtracer habe ich nun nachgesehn und dort ist mir aufgefallen, dass der längste pfad im if-then-else prozess steckt. beim design mit den states ist der längste pfad in einem anderen prozess. sprich: laut pathtracer ist das design mit den states schneller. das ist alles aber irgendwie wiedersprüchlich... weiss jemand was da passiert? die max. freq wird ja aus dem längsten kombi. pfad berechnet. ich verwende den lattice machXO 2280 und den ispLever7.2. mfg Andi
ich schätze mal: nachdem dein timing-constraint so easy zu erfüllen ist und dein baustein vielleicht so gut wie leer ist(?) schmeißt der einfach alle teile irgendwo zufallsmässig in den baustein und spart sich die optimierung, weil die eh nur zeit braucht und nicht benötigt wird ;) wenn du das gleiche nochmal durchlaufen lässt werden wohl andere werte rauskommen. kannst du das mal ausprobieren? würd mich interessieren ;)
hi, nein da ändert sich nichts. du hast da schon recht. ich habe mehrere module die jedoch getrennt sind und ich diese auch getrennt teste. also noch ist nichts auf dem chip. den hab ich noch nicht :-). später kommen dann noch mehr module parallel zusammen. sowohl von diesem design als auch von einem anderen. vom platz her wirds schon reichen. dann werden sich die werte aber doch stark ändern. das hab ich aber noch nicht ausprobiert. bekomme in den nächsten tagen meine platinen mit den MachXOs drauf und dann muss ich erstmal jedes modul testen. vllt wird sich dann das case-design doch rechnen?!?! mfg Andi
... also der platzbedarf des designs liegt gerade bei ca 6-7%. inklusive des distributed ram der auf den pfu's (?) liegt. kann ich dem eigentlich sagen das er nur für den dist. ram die pfu's verwenden soll. also das die restliche logik auf den normalen LUTs liegen soll??
du könntest den optimierer mal ärgern und das timing constraint so weit hochschrauben bis es nicht mehr erfüllbar ist. was bei beiden implementierungen rauskommt müsste man ja im RTL schematic sehen..
> was bei beiden implementierungen rauskommt müsste man ja im RTL > schematic sehen.. Das RTL wird unabhängig von den Timing-Constraints gleich bleiben... Bestenfalls kann der Placer und der Router noch was gutmachen.
hallo, habe die constrains mal hochgeschraubt. im case fall sieht es denke ich doch besser aus. bei 100mhz entsteht z.b. ein fehler der jedoch in einem anderen process steckt und diese nur aus if-else-abfragen besteht. habe mal die reports angehängt. beide designs jeweils mit 80 und 100 mhz constraints mfg Andi
ups die html dateien gehen nicht... doofe sache...
so nochmal... naja die fehlerhaften pfade sind da doch alle in anderen prozessen. mal sehn wie es dann aussieht wenn alles zusammen läuuft. irgendwann... mfg Andi
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.