Hallo, ich bin gerade dabei, eigene IP Cores zu entwickeln. Die Simulation (im ISE) klappt schon ganz gut. Hardwaremäßig habe ich meinen ersten IP Core auch schon zum laufen bekommen. Aber es ist schon ein wahnsinniger Zeitaufwand, nach jeder Änderung des IP Cores ein komplettes "generate Bitstream" im XPS machen zu müssen. Und das dauert dann seine 5 bis 10 Minuten... :-( Gibt es da eine schnellere Lösung? Oder wie macht Ihr das? Gruß, Andreas
Vorher besser simulieren und testen ;) Man kann es allerdings auch übertreiben, es ist wirklich ein Trade-off. Gerade im Zusammenspiel mit anderen Bauteilen (Asynchronität etc.) liegt ein weites Feld an Möglichkeiten, auf die man am Anfang bei der Testbencherstellung nicht kommt. Da hilft wirklich nur probieren und gleich genügend interne Debugging-Signale rausführen. Ansonsten ist eine schnellere CPU mit mehr Cache auch hilfreich. Dem Vernehmen nach soll die Xilinx-SW unter Linux auch etwas schneller sein. Und ein makefile für alles und die Abschaffung der GUI entlasten die Nerven auch ziemlich...
...die sollten lieber mal das Ding parallelisieren. Das läuft auf einem Quad-Core auch nur auf einer CPU. Schlimm. Ich muss immer etwa 20 Minuten auf mein Virtex 4 Design im ISE warten, beim EDK incl. PPC usw dauerts noch länger.
Hallo, ich entnehme Euren Antworten, dass man nicht drum herum kommt, jedes mal komplett zu synthetisieren - hab ich mir schon gedacht... :-( Wobei ich es trotzdem nicht ganz verstehe: Warum muss er denn die ganzen IPs und den kompletten MircoBlaze neu synthetisieren - obwohl sich daran nichts geändert hat??? Naja, die Xilinxer werden schon wissen was sie tun. Mit der Simulation hast Du Recht - man kann schon einiges vorher abklären und testen - aber in der Praxis sieht alles oft ganz anders aus... Mitte 2009 soll ja die Version 11 von ISE kommen - mal schaun, was sich da alles tun wird. Gruß, Andreas
Naja, theretisch kann man das Design auch in Partitionen unterteilen, die dann meines Wissens nicht immer neu implementiert werden müssen. Aber da kenn ich mich leider (noch) nicht aus. Zur Version 11: Schneller geworden ist es bisher noch nie. Weniger Fehler als in der Vorgänger-Version waren auch noch nie drin. Bei Xilinx hat sich bei uns bewährt, immer die ältest mögliche Major-Version incl. der Service Packs zu benutzen. Ich arbeite momentan mit der 9.2.0.4 und das geht sehr zuverlässig.
> Warum muss er denn die ganzen IPs und den kompletten MircoBlaze neu > synthetisieren - obwohl sich daran nichts geändert hat??? Tut er auch nicht. Der Microblaze oder die anderen Cores werden nicht neu aus der Quelle synthetisiert. Das passiert nur, wenn sich das mhs geändert hat. Allerdings lädt xst die synthetisierte Netzliste wieder ein und macht über das Gesamtdesign eine Optimierung (FF-Balancing, etc.). Und das ist auch noch langwierig genug... Man kann das Laden und Optimieren der Cores auch unterbinden (d.h. der MB ist nur noch eine Blackbox). Das Ergebnis ist aber sehr lahm. > aber in der Praxis sieht alles oft ganz anders aus... Ich weiss... Bei meinen Designs (fast immer mit asynchronen Interfaces nach aussen...) wird eigentlich nur am Anfang simuliert (d.h. Datenfluss, prinzipielle Abläufe) und der Rest dann dem statistischen Experiment namens Realität überlassen.
Hallo Georg, ich habe noch nicht die genauen Zeiten für die Synthese mitgestoppt. Du könntest aber Recht haben (und hast Du sicherlich auch...): Wenn man einen "neuen MircoBlaze" erzeugt, dann dauert es noch länger... Seltsamerweise ist in der letzten Zeit mein Kaffekonsum stark angestiegen... ;-) Woran das wohl liegt. Beim Experiment "Realität" gibt es aber leider zwei Stufen: Stufe1: Entwicklung und Test bei Laborbedingungen Stufe2: Praxiseinsatz Und die haben meistens auch noch seeeehr unterschiedliche Ergebnisse... Dann wünsche ich Euch noch ein schönes synthesefehlerfreies Wochenende! Gruß, Andreas
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.