Spartan 3e 1600 + DDR - SDRAM + MIG 3.0

Gast #1665093
Lesenswert?

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
Gast #1665794
Lesenswert?

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
#1667515
Lesenswert?

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....
Gast #1667825
Lesenswert?

@ 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...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren