www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Xilinx-Warnung unklar


Autor: Gast111 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ein etwas komplexeres Firmwaredesign. Durch eine kleine 
Änderung in einem VHDL-Modul bekomme ich nun folgende Warnung beim 
Mapping:

Pack:266 - The function generator touchctrl/tp_dout_mux0000<0>21 failed 
to merge with F5 multiplexer touchctrl/tp_dout_mux0000<1>1181_f5.  There 
is a conflict for the FXMUX.  The design will exhibit suboptimal timing.

Meine Timing-Constraints werden zwar erfüllt und somit stellt das Ganze 
kein wirkliches Problem dar, aber ich würde trotzdem gerne wissen woher 
das kommt und wie ich das "beheben" kann.

Den VHDL-Code darf ich leider nicht veröffentlichen. Mir ist klar, dass 
die Antwort ein wenig schwierig ist, aber evt hat ja jemand einen Tipp 
parat.

Die Xilinx-Seite hat leider keine passende Antwort.

Gruß... Gast111.

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist das "blankes" Verilog, oder hast Du den Code so geschrieben, das 
genau Elemente der CLB angesprochen werden. Die Meldung sieht mir nach 
letzteren aus.

Autor: Gast111 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Entschuldigung, dass ich ein wenig arg ungenau war. Das Ganze ist in 
VHDL geschrieben, ohne irgendwelche Constraints (außer Timing und 
Pinassignments). Also keinerlei manuelle Zuweisungen von CLBs, Slices, 
MUXs,.... Zieplattform ist ein Spartan3-400 bzw -1500.
Das Modul besteht im Wesentlichen aus einer mittelgroßen Statemachine, 
in die ich nachträglich noch zwei States eingefügt habe.
Evt. muss ich wirklich mal mit dem FPGA Editor rangehen und das ganze 
rausfummeln. Ich habe gehofft, dass evt hier jemand schon etwas 
ähnliches hatte und einen Tipp parat hat in welche Richtung ich schauen 
muss.

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Gast111:

Wenn Deine Timing-Constraints erfüllt werden, dann ignoriere die 
Warnung. Vielleicht fügst Du irgendwann noch ein/zwei States zu 
"touchctrl/tp_dout" hinzu und dann passt es wieder.

Es lohnt nur wenigen Fällen, das Design auf die Ressourcen zu 
optimieren. Z.B. dann, wenn die Ressourcen knapp werden und man nicht 
mal schnell einen größeren FPGA einsetzen kann.

Duke

P.S.: Das soll kein Aufruf sein um suboptimalen Code zu schreiben.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.