INST "XXX" LOC = "YYY" --> Frage zu diesem Constraint

Gast #3978308
Lesenswert?

Hallo zusammen,

Ich habe mir ein Temac Example Design (Wrapper) erstellt (es 
funktioniert auch). Dieses Design nutzt einen GTX-Dual Transceiver. Es 
werden also zwei Ethernet Ports verwendet. Das komplette Design besteht 
aus diversen Files. Tief in der Hirarchie wird ein entsprechender 
GTX_DUAL instanziiert. Entsprechend wird im Constraint-File die 
Verknüpfung zu einem realen Hardcore-GTX hergestellt. Dies geschieht 
durch diese Zeile (Bestandteil des Examples):

INST"*GTX_DUAL_1000X_inst?GTX_1000X?tile0_rocketio_wrapper_gtx_i?gtx_dua 
l_i"  LOC = "GTX_DUAL_X0Y5"

Bis hierhin ist im Grunde alles klar und alles funktioniert.

Nun möchte ich das komplette Example Design ein zweites mal 
instanziieren. Für dieses zweite Design soll dann jedoch ein anderer 
Transceiver genutzt werden.

Wie kann ich nun im Constraintfile dem Tool mitteilen welcher 
Transceiver in der zweiten Instanz verwendet werden soll?

Danke und Gruß!
FPGA
Gast #3978342
Lesenswert?

okay - ich glaube ich habe diese Zeile doch noch nicht so ganz 
verstanden:

INST"*GTX_DUAL_1000X_inst?GTX_1000X?tile0_rocketio_wrapper_gtx_i?gtx_dua
l_i"  LOC = "GTX_DUAL_X0Y5"

Was bedeutet das * am anfang der Zeile? Die ? sind wohl platzhalter wo 
irgendwas stehen kann...
Gast #3979059
Lesenswert?

FPGA schrieb im Beitrag #3978342:
> Was bedeutet das * am anfang der Zeile?
Da steht für beliebige darübeliegende Hierarchieebenen bzw. Instanzen.

FPGA schrieb im Beitrag #3978378:
> --> Fred kann gelöscht werden.
Warum? So kann ihn jemand finden, der ein ähnliches Problem hat.

FPGA schrieb im Beitrag #3978308:
> Wie kann ich nun im Constraintfile dem Tool mitteilen welcher
> Transceiver in der zweiten Instanz verwendet werden soll?
Du mußt die INST-Zeile im .ucf duplizieren und entsprechend den 
Instanzpfad und den Teil bei 'LOC' anpassen.

Welches FPGA verwendest Du?

Duke
Gast #3979849
Lesenswert?

Hallo Duke,

Danke für die Rückmeldung!

Die von mir gestellte Frage hätte ich sicher auch im Constraint Manual 
nachlesen können. Daher war mir die Frage im Nachhinein etwas peinlich 
:-)

> Welches FPGA verwendest Du?

Virtex5

Das Instanziieren klappt nun. Ich habe die Instanzzeile kopiert und 
entsprechend den Pfad angepasst.

Falls es jemanden interessiert:
1
INST "*inst_temac_ip_example_design_a?v5_emac_ll?v5_emac_block_inst?GTX_DUAL_1000X_inst?GTX_1000X?tile0_rocketio_wrapper_gtx_i?gtx_dual_i" LOC = "GTX_DUAL_X0Y5";

und
1
INST "*inst_temac_ip_example_design_b?v5_emac_ll?v5_emac_block_inst?GTX_DUAL_1000X_inst?GTX_1000X?tile0_rocketio_wrapper_gtx_i?gtx_dual_i" LOC = "GTX_DUAL_X0Y4"; # ok

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