www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Spartan3: merkwürdige warnungen bei der synthese


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
ich lese jetzt schon länger hier mit, und hab jetzt meinen ersten 
sinnvollen vhdl code erstellt. Ich bekomm aber ein Paar Warnungen bei 
der Synthese , die ich nicht nachvollziehen kann:

1)
Xst:819 - "D:/Borg_empfanger/packet_read.vhd" line 137: The following 
signals are missing in the process sensitivity list:
framebeginn_i.

Framebeginn_i hat dort in der sensitivity nix verloren, da der Process 
getaktet ist, wieso will xst dieses signal in die sensitivity liste 
haben?

2)
Xst:646 - Signal <counter> is assigned but never used.

counter wird in zeile 161 und 175 verwendet, warum also die Warnung ?

3)
Xst:653 - Signal <synchron> is used but never assigned. Tied to value 0.

synchron ist aber kein signal sondern eine variable und wird in Zeile 
177 bzw. 179 zugewiesen, warum die warnung ?

Michael

Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Irgendwie hat das anhängen des sourcecodes nicht funktioniert....sorry
hier der source

Autor: Wolfgang Mües (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

1) die Zuweisung an frame_out ist ungetaktet, deshalb gehört 
framebeginn_i in die sensitivity list.

2) counter hat bei Dir einen Wertebereich von 0 bis 9. Was kommt wohl 
bei den Vergleichen mit 500 raus? Dann wird der Zugriff auf counter 
herausgekürzt, und danach beschwert sich das Tool über die 
Nichtbenutzung.

3) synchron wird tatsächlich manchmal nicht assigned, nämlich wenn 
counter != 518 ist.

Manchmal steckt der Teufel im Detail...

Viele Grüße
Wolfgang

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 1) die Zuweisung an frame_out ist ungetaktet, deshalb gehört
> framebeginn_i in die sensitivity list.
Oder besser gleich concurrent beschrieben:
:
     if framecounter = 25 then framebeginn_i <= '1'; 
     else framebeginn_i <='0'; 
     end if; 
   end if;
end process framestart;

frame_out<=framebeginn_i;
:

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Wolfgang,  danke dir für die schnelle Hilfe.
ich war schon am verzweifeln.

Michael

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.