Hi, ich hoffe ihr könnt mir helfen, ich habe ein MicroBlaze Development Kit Spartan-3E 1600E und müsste die DDR - Ansteuerung hinbekommen... Ich habe mir über den Core Gen von ISE - Webpack den MIG 3.0 generieren lassen. Direkt als Referenz Design für das gleiche Board jedoch mit Spartan-3E 500E... Das einbinden der Files in Ise Webpack klappt auch noch hervorragend. Jedoch bekomme ich beim "Implement Design - Translate" - Schritt folgende fehlermeldungen... ERROR:ConstraintSystem:59 - Constraint <INST "main_00/top0/data_path0/data_read_controller0/gen_wr_en[1].fifo_1_wr_en _inst" LOC = SLICE_X1Y77;> [vhdl_bl4cl2.ucf(585)]: INST "main_00/top0/data_path0/data_read_controller0/gen_wr_en[1].fifo_1_wr_en _inst " not found. Please verify that: 1. The specified design element actually exists in the original design. 2. The specified object is spelled correctly in the constraint source file. Da es sich ja um ein Referenz Design handelt, sollte ja sowas nicht passieren... Wenn jemand schon erfahrungen damit hat, wäre es nett, wenn ihr mir helfen könntet! Gruß, Martin
Hallo Martin, ich glaube bei Dir kommen gleich zwei Sachen zum Tragen. Den Fehler auf den Du gerade gestossen bist sowie den auf den Du nach Beheben stossen wirst ;) 1.) kontrolliere einmal ob das Constraint auch trifft: Sprich heisst deine Toplevel Entity wirklich main_00 und befindet sich der restliche Pfad exakt so wie das Constraint das beschreibt, meist findet sich hier der Fehler. Ab und an aegert auch die Synthese indem Sie ab und an die Hirachien nicht durch "/" sondern durch "_" trennt. Solltest Du also nicht gleich fuendig werden, so wuerde ich das Constraint erst einmal auskommentieren, die Synthese komplett durchlaufen lassen und mit dem FPGA Editor nach der zu constrainenden Instanz suchen... Du wirst nach Beheben dieses Fehlers aber auf weitere Probleme stossen: Du schreibst selbst, dass Du Dir den Core hast fuer ein Board mit einem anderen (kleineren) Baustein als den auf deinem Board. der von Dir gemeldete Constrainterror enthaellt den LOC = SLICE_X1Y77 Constraint. Hiermit wird ein Element an eine Slice Position X1 Y77 positioniert. Dieses Slice wurde so gewaehlt das der Abstand des Cores und der IO-Pins im Bezug auf die Routingdelays moeglichst guenstig liegt. In deinem groesseren Baustein befinden sich aber mehr Slices, so dass die Position des Slice Y77 sich zu den IO-Pins aendert (sprich die Routing Latence) vergroessert sich. Deine Aufgabe wird also sein die Positionen der SLICE LOCs so anzupassen, das diese relativ gesehen zum kleineren Baustein wieder uebereinstimmen... Gruss Andreas
Hey Andreas, danke für deine Antwort - ich weiß jetzt zumindest mal wo ich ansetzen muss... und probiere mal mein Glück... Gruß, Martin
Ich denke mal das man den IP-Core für jeden neuen FPGA Baustein neu erzeugen muß. Denn wenn Du den IP-Core für einen größeren FPGA erzeugt, dann kann es sein das es diesen Slice bei einem kleineren FPGA garn nicht gibt.
@ Johann im Prinzip hast du recht, jedoch lässt sich kein IP - MIG Core für den Spartan-3E 1600E erzeugen...
Wieso geht das denn nicht? Bei mir zeigt der CoreGen an: Core type: MIG Version: 3.3 Core Summary: This Memory Interface Generator is a simple menu driven tool to generate advanced memory interfaces. This tool generates HDL and pin placement constraints that will help you design your application. Spartan-3 family supports DDR & DDR2 SDRAM. Spartan-6 supports LPDDR, DDR, DDR2 & DDR3 SDRAM. Virtex-4 supports DDR & DDR2 SDRAM and QDRII & DDRII SRAM and RLDRAM II. Virtex-5 supports DDR & DDR2 SDRAM, QDRII SRAM and DDRII SRAM. Virtex-6 supports DDR2 & DDR3 SDRAM, RLDRAM II and QDRII+ SRAM. Virtex-6L supports DDR2 & DDR3 SDRAM. Und ich kann für den S3E1600 auch den MIG auswählen. Allerdings verschwindet der manchmal aus der Liste links, da is wohl ein kleiner Bug im CoreGenerator (11.4) wenn man auf "Supported Families" drückt, den S3E1600 aussucht und dann "Set as current" macht, ist er plötzlich wieder da....
@ Christian R Ja, mann kann für den S3E1600 einen MIG - Core erzeugen... Jedoch muss im MIG nochmal der FPGA ausgewählt werden und da lässt sich dann nur der S3E500 bzw. der S3E1200 wählen... und dann hat man wieder das Problem mit der Slice anordnung... War vielleicht von mir ein bisschen ungeschickt formuliert...
Da musst du vielleicht mal ein Update auf MIG 3.3 machen. Bei mir geht das. Wenn ich in den "Supported Families" zunächst den S3E1600 auswähle, dann den Wizzard starte, kommt dieses Fenster. Ich kann dann den Wizzard auch bis zum Ende durch klickern....
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.