www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Xilinx Synthese


Autor: Danni (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

ich hab ein vhdl beschreibung die ich leider nicht direkt auf der 
Hardware testen kann ( is in der schule) so

so nun meine frage
wenn die synthese erfolgreich ist...heisst das, daß prog ist in ordnung 
und läuft auch so auf der hardware? und was ist der unterschied zwischen 
der Behaviour simulation und post-route simulation?

lg danni

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

Bewertung
0 lesenswert
nicht lesenswert
> daß prog ist in ordnung und läuft auch so auf der hardware?
Nein, das heißt nur, daß die FFs und LUTs im FPGA wie gewünscht 
verdrahtet werden konnten.
Wenn du z.B. asynchrone Eingänge nicht korrekt eingetaktet hast, wirst 
du zwar ein Design haben, das fast immer läuft, aber manchmal komische 
Sachen macht.
Solche Fehler findest du im Übrigen mit einer Verhaltenssimulstion auch 
nicht heraus, weil dort selbst bei einer krassen Setup/Hold-Verletzung 
immer ein definiertes (also immer das gleiche) Vehalten herauskommt.

> und was ist der unterschied zwischen
> der Behaviour simulation und post-route simulation?
Die Verhaltenssimulation enthält keine Laufzeitinformationen 
(Verdrahtung, Logik, LUTs), in der Post-Route Simulation wird das 
schlechtest mögliche Zeitverhalten des FPGAs verwendet. Die Rechenzeit 
für die Post-Route Simulation ist bedeutend höher, bringt aber für das 
reale Leben gar nichts.
Hier ist eine (manuelle) Analyse des Designs anhand der kritischen Pfade 
im Static-Timing-Report wesentlich aufschlussreicher.

BTW:
Du schreibst kein Programm für ein FPGA,
sondern du beschreibst ein gewünschtes Hardwareverhalten.

Autor: danni (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die schnelle antwort

jetzt sehe ich da etwas durch, wie genau meinst du das mit dem 
eintakten?

lg danni

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

Bewertung
0 lesenswert
nicht lesenswert
danni wrote:
> wie genau meinst du das mit dem eintakten?
Heutzutage macht man (oder versucht es zumindest) snychrone 
FPGA-Designs.
D.h. du hast auf dem FPGA (im Idealfall) genau 1 Takt (den globalen 
Mastertakt). Mit jeder steigenden Taktflanke dieses Taktes passiert 
etwas und dazwischen ist Zeit für die Kombinatorik und die Verdrahtung. 
Bis zur nächsten steigenden Taktflanke.

Wenn du externe, also asynchrone Signale im FPGA verwenden willst, mußt 
du die über 2 FFs schicken, damit du sporadischen Problemem durch 
Metastabilität entgehst (wg. Verletzung der tsu/th). Das ist ganz gern 
der Fall, wenn das Design eigentlich läuft, sich aber einmal pro 
Minute/Stunde/Tag/Woche seltsam verhält.

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@danni:
Für die Simulation bietet es sich an, für alle Komponenten (ADC, DAC, 
I2C, LCD etc.) die mit dem FPGA verbunden sind ein VHDL-Modell zu 
erstellen.
Dieses Modell muß nicht synthetisierbar sein, aber es könnte z.B. das 
Timing der Komponente prüfen bzw. nachbilden.

Für eine System/Board-Simulation verbindet man dann alle Modelle mit dem 
FPGA/top, wie in der "echten" Schaltung.

Mit dieser Methode erhält man wiederverwendbare/austauschbare 
Simulationsmodelle und ein Stück mehr Sicherheit, daß es auch auf der 
realen Hardware gehen könnte.

Duke

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.