www.mikrocontroller.net

Forum: FPGA, VHDL & Co. VHDL Unterschied zw Software und Hardware


Autor: Logi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

mal eine Frage nach den Grenzen von VHDL. Nach der Simulation mit 
ModelSim ist meine Funktion ok, aber nachdem das JED File in die 
Hardware gespeichert wurde, funktioniert ein Teil des Programms nicht 
mehr...

Gibt es irgendwo eine Übersicht, welche Algorithmen oder Strukturen in 
VHDL für die Hardware Probleme gibt?

Vielen Dank,
Logi

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt das Gegenteil, eine Vorschrift wie VHDL geschrieben werden muß, 
das es für die Hardware (FPGA) und Synthesetool (Xilinx:XST) 
funktioniert. nennt sich synthesis style guide. Einen einheitlichen 
standard für synthesefähigen VHDL code gibt es nicht, da kocht jeder 
hersteller sein eigenes süppchen.

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was aber auf jeden Fall unabhängig vom Chiphersteller ist:
Achte auf ein synchrones Design. Das heisst, dass alle Register mit dem 
gleichen Takt schalten.
Dies ist ein beliebter "Anfängerfehler", der in der Simulation meistens 
keine Probleme bereitet, aber dann im Chip für lustige Effekte sorgt.

Autor: Henk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Dies ist ein beliebter "Anfängerfehler",

Es ist auch ein beliebter Fehler "Anfänger", dahingehend zu beraten, daß 
man zusehen soll, nur einen clock zu nutzen. Was machst Du, wenn Du 4 
Stück im Design zu verarbeiten hast ?

Nix bauen?

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Henk : Anfänger haben keine 4 Clocks im Design.

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau Joe ;-)

Henk, ich meinte den typischen Fehler: Taktteiler bauen und mit dem 
geteilten Takt den Rest der Schaltung versorgen und dann am Kopf 
kratzen, dass das Zeug nicht funzt.

Kaum ein Anfänger wird sich darüber Gedanken machen, wie er vier Takte 
zusammen in ein Design bringt, wenn er sich über die Problematik von 
Setupzeit-Verletzungen nicht im klaren ist.
Erst wenn er das kapiert hat, dann ist ihm auch klar, warum er z.B. ein 
FIFO braucht.

Ich halte es in keinster Weise für einen Fehler, Anfänger dahingehend zu 
beraten. Denn das ist die Grundregel eines synchronen Designs. Und 
überall, wo das Design nicht mehr synchron ist, muss an den 
"Stossstellen" der Clockdomains peinlichst darauf geachtet werden, dass 
es nicht knallt.

Autor: Ulf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für solche Zwecke lohnt es mal im ModelSIM künstlich "after" tags 
einzusetzen und die clock-Verzögerungen zu simulieren. Dann sieht man 
schon rasch, wann und warum, die geteilten clocks nicht die Wirkung 
haben, wie gedacht. Wenn der Master etwas Vorlauf hat, passt das schon 
:-)

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.