Fehlermeldung bei Synthese (Ausgabe 7 Segment)

Gast #807235
Lesenswert?
• ▲
▼
Hallo!

Ich habe in VHDL eine Ausgabe Routine programmiert, die sich irgendwie 
nicht synthetisieren lasst. Mit der Fehlermeldung kann ich leider nichts 
anfangen. siehe Anhang
Danke für eure Hilfe!

p.s. Testen kann ich das Programm erst heute Abend zu Hause!
Gruß
Sigi
Angehängte Dateien:
Gast #807499
Lesenswert?
• ▲
▼
Nein sorry, ich kann nichts konkretes finden. Was du mal probieren 
kannst:
1
Clk='1' and Clk'event
könnte wenn das Tool sauschlecht ist, nicht erkannt werden. Versuchs 
mal mit
1
Clk'event and Clk='1'
Ich kann mir aber kaum vorstellen, dass sich jemand traut ein Tool mit 
einem solchen Fehler rauszugeben.

Ansonsten ist evtl. gemeint, dass die Set/Reset Signale asynchron 
arbeiten, was wenn möglich vermieden werden sollte und evtl. vom 
gewählen Device gar nicht unterstützt wird. Der Grund ist, dass ein 
beliebiges Timing des Reset-Signals im Vergleich zur Clock dazu führen 
kann, dass nach dem Loslassen des Reset sofort eine Taktflanke kommt und 
die Timing-Bedingungen der Register verletzt, und das System deshalb 
nach einem Reset in einen unerwarteten oder sogar Metastabilien Zustant 
kommen kann. Besser ist es deshalb, das Reset-Signal durch ein, zwei 
getaktete Register laufen zu lassen (Synchronizer) und danach als 
synchronen Reset zu verwenden, also statt
1
process (clk, reset) begin
2
  if reset='1' then
3
    ...
4
  else if clk'event and clk='1' then
5
    ...
6
  end if;
7
end process;
lieber
1
process (clk) begin
2
  if clk'event and clk='1' then
3
    if reset='1' then
4
      ...
5
    else
6
      ...
7
    end if;
8
  end if;
9
end process;
Ob das der Grund für die Fehlermeldung ist kann ich dir aber leider auch 
nicht sagen.
Gast #807547
Lesenswert?
• ▲
▼
Danke Morin das Du dir die Arbeit gemacht hast und mein Programm 
durchgeschaut hast. Ist ja doch eine Menge Quellcode.
Ich werde es mal heute Abend aus probieren vielleicht läuft es ja dann.
Vielen Dank!

Bis dann Sigi!
#807566
Lesenswert?
• ▲
▼
Die Meldungen in der GIF Datei sind auch keine Fehlermeldungen, sondern 
Warnings.

Was in Deinem Code aber falsch oder nicht so schön ist, ist die 
Erzeugung von Clkint.
Man soll keinen Takt aus einem anderen durch Herunterteilen erzeugen, 
sonden mit Clock-Enable arbriten.
Alle Module sollen mit einem gemeinsamen Takt arbeiten, die langsamen 
Teile arbeiten wenn ein Clock-Enable aktiv ist.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.