Forum: FPGA, VHDL & Co. Gutes VHDL Tutorial


von Samuel J. (capstrovor)


Lesenswert?

Hallo

Kennt jemand ein richtig gutes VHDL Tutorial (auf Deutsch oder 
Englisch)?

Alle, die ich bisher gefunden haben, sind nicht wirklich für den 
Einstieg sondern eher als Nachschlagwerk geeignet.

von foo (Gast)


Lesenswert?

Eine Menge kannst du bei Chuck No... ähhhh Lothar Miller lernen:

http://www.lothar-miller.de/s9y/categories/1-VHDL

(Ist zwar kein Tutorial im eigentlichen Sinne, aber besser als das 
meinste, was sonst so zu finden ist).

von Samuel J. (capstrovor)


Lesenswert?

Ok danke! ;)

von Dussel (Gast)


Lesenswert?

Mir hat das VHDL Cookbook von Peter Ashenden für den Einstieg gut 
gefallen. Ansonsten natürlich VHDL-Synthese von Reichhardt und Schwarz.

von Samuel J. (capstrovor)


Lesenswert?

Ok danke! Ich schau es mir bei Gelegenheit an.

Wer aber nichts gegen Videotutorials hat:
https://www.youtube.com/watch?v=Jgc_uAe11y0&list=PL7kkolCtIBKLukrBsEDwKRTE64JvaJDhM&index=1

Das ist Meiner (Anfänger-)Meinung nach ein sehr gutes Tutorial.
Diese Playlist beinhaltet auch Erklärungen zur Digitaltechnik (also 
Grundgatter, Bool'sche Algebra, KV-Diagramme usw). Diese Videos sind 
aber in VHDL-videos und Theorievideos aufgeteilt. Man kann also auch die 
Theorievideos überspringen!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Samuel J. schrieb:
> Man kann also auch die Theorievideos überspringen!
Das sollte man aber nur tun, wenn man schon "in Hardware denkt". Wenn 
man sich bei einer Problemstellung also schon vorstellen kann, wie man 
das mit Zählern und Gattern und Multiplexern und Flipflops lösen könnte. 
Denn nur dann kann man mit der Hardwarebeschreibungssprache VHDL sein 
Ziel richtig beschreiben.

von Samuel J. (capstrovor)


Lesenswert?

@Lothar Miller:

Sehe ich genau so.
Da ich aber Digitaltechnik schon seit 3 Jahren in der Schule lerne, 
stellt das kein großes Problem dar. :)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Samuel J. schrieb:
> Da ich aber Digitaltechnik schon seit 3 Jahren in der Schule lerne
Und, hast du schon mal richtig damit was gemacht? Nur dadurch 
kapierst du es dann auch...

Nur eine kurze Frage (zum richtigen Beantworten solltest du weniger als 
5 Sekunden brauchen): wieviele Bits braucht ein Zähler von 0 bis 1024?

von uwe (Gast)


Lesenswert?

Besser :
Bau mal einen Zähler von 1 bis 1024 mit 10Bit Breite! ;-)

von Dussel (Gast)


Lesenswert?

Lothar Miller schrieb:
> wieviele Bits braucht ein Zähler von 0 bis 1024?
Verdammt! In einer halben Sekunde falsch geantwortet :-(
Und ich fange bald als VHDL-'Programmierer' an. Wie ist das richtige 
Wort statt Programmierer?

von Bitflüsterer (Gast)


Lesenswert?

> wieviele Bits braucht ein Zähler von 0 bis 1024?

Blödes 2^10-1 Grummel. Ich habe spontan ein Bit zuwenig genommen. Lothar 
muss heute abwaschen, wegen erwiesener Hinterlist. :-)

von Samuel J. (capstrovor)


Lesenswert?

Lothar Miller schrieb:
>Und, hast du schon mal richtig damit was gemacht? Nur dadurch
>kapierst du es dann auch...

Jap, hab schon genug damit gemacht.
Von Binär zu 7-Segment Dekoder, über 
Würfel-Zufalls-Zahlen-Erzeuger-und-auf-6-Leds-Ausgeber (Wow! klingt wie 
ein spannendes Projekt :D), bis hin zur kleinen ALU (nur um ein paar 
Sachen zu nennen). Also an der Digitaltechnik liegts nicht, aber auch 
durch diese Videos komme ich schon langsam rein in die VHDL-Materie.

>wieviele Bits braucht ein Zähler von 0 bis 1024?

Gemeine Frage, aber 11 ;)

von experte (Gast)


Lesenswert?

uwe schrieb:
> Besser :
> Bau mal einen Zähler von 1 bis 1024 mit 10Bit Breite! ;-)
1
counter10bit <= std_logic_vector (unsigned(counter10bit) + 1);
2
3
outputc11bit <= std_logic_vector (tu unsigned(counter10bit,11) + 1);

:-)

von J. S. (engineer) Benutzerseite


Lesenswert?

experte schrieb:
> std_logic_vector (tu unsigned(counter10bit,11) + 1);

Was ist denn "tu unsigned" für ein neuer VHDL-Befehl? - den kannte ich 
noch garnicht :-)

> Gutes VHDL Tutorial
Die meisten Tutorials liefern leider nicht viel mehr, als die 
VHDL-Syntax und das ist ja nur die halbe Miete. Für den Anfänger, 
insbesondere die "process"-Generation, die VHDL als Einstieg in die 
digitale Welt nutzen, sehr geeignet finde ich:

***************************************************************
"DIGITAL ELECTRONICS WITH VHDL" von William Kleitz- überschrieben mit 
"Quartus II Edition".
***************************************************************

Das Buch erklärt zwar nur die Grundzüge von VHDL und ist auch nicht etwa 
eine Hilfe im Umgang mit Quartus, wie der Titel vermuten lassen könnte, 
aber es enthält viele didaktisch gut dargebrachte Informationen über die 
Grundzüge der digitalen elektronischen Schaltungstechnik, deren 
Abbildung in VHDL und deren Simulation. Es gibt eine Reihe direkter 
Parallelen zwischen den klassischen Logik-Gattern und der Realisation in 
PLDs und es wird zugar eine Bücke zur Analogtechnik und der Simulation 
in MultiSIM geschlagen. Die beigelegte CDs enthalten mithin auch nicht 
etwa VHDL Beispiele sondern Datenblätter von TTL/CMOS Chips am Beispiel 
von Texas Instruments Produktpalette.

Das Ganze ist sozusagen ein Fundament auf das man komplexere VHDL 
aufsetzen könnte und dürfte auch denen ein Verständnis für die tieferen 
Zusammenhänge liefern, die keine eingefleischten Elektroniker sind.

von db8fs (Gast)


Lesenswert?

Hi,

brauchbare Lektüre gibt es über VHDL einige.

Nicht unwesentlich zum Verständnis einer HDL sind natürlich Deine 
Vorkenntnisse über Digitaltechnik, und das wird halt mit 
unterschiedliche Tiefe in der Literatur behandelt.

Wenn du schon etwas kombinatorische Logik kennst (einfach gesagt: reine 
Logikschaltungen wie AND/OR/XOR/NOT ohne Rückkopplung), hast du schon 
ganz gute Grundlagen.

Kennt man auch schon etwas einfache sequentielle Logik, was z.B. 
getaktete Flip-Flops sein können, sieht es für die Verwendung einer 
Hardwarebeschreibungssprache gar nicht schlecht aus.

Letztlich musst du mit deiner HDL nämlich genau eine Schaltung 
beschreiben, welche aus solchen Bauelementen aufgebaut wird.

Bücher, welche diese Grundlagen im Zusammenhang mit VHDL oder Verilog 
gut vermitteln, sowie einige Entwurfsmuster für's Hardware-Design 
mitbringen, sind:

- 'HDL Chip Design' von Douglas Smith
- 'FPGA Prototyping by VHDL Examples' von Pong Chu
- 'Rapid Prototyping of Digital Systems' von James Hamblen/Michael 
Furman

Für absolute Neulinge hingegen ist z.B. sowas zu empfehlen, das 
verschafft erstmal einen brauchbaren Überblick:

- 'Hardware Design mit FPGA' von Peter Sauer

von J. S. (engineer) Benutzerseite


Lesenswert?

Neben dem "Cookbock" von P. Ashenden gibt es auch noch das Standardwerk:
"The Designers Guide to VHDL".

Für die Harten und Abgehobenen, die den Ashenden, R&S und Pong durch 
haben, gäbe es dann noch "Abstrakte Modellierung digitaler Schaltungen" 
von Klaus ten Hagen.

von VHDL-Spezialist (Gast)


Lesenswert?

> wieviele Bits braucht ein Zähler von 0 bis 1024?

LOL Ich habs auch falsch beantwortet. Sind natürlich 11 bits und nicht 
10.

von db8fs (Gast)


Lesenswert?

@Jürgen S.:

Mal 'ne Frage: was genau ist so schlimm am Ten-Hagen-Buch? Dort wird 
wenigstens mal erklärt, was da überhaupt so für schönes Zeug abgeht. Ich 
glaub, mit etwas Hintergrundwissen ist das eigentlich die perfekte 
Buchempfehlung für Fortgeschrittene. Danke dafür!

von J. S. (engineer) Benutzerseite


Lesenswert?

db8fs schrieb:
> Mal 'ne Frage: was genau ist so schlimm am Ten-Hagen-Buch?

Garnichts, mein Satz war genau so gemeint, wie Du ihn auch verstanden 
hast:

Ein Buch für die Fortgeschrittenen.

von rvj (Gast)


Lesenswert?

Kostenlos und verständlich ist das als pdf herunterladbare Buch 
Freerange VHDL 
http://www.freerangefactory.org/dl/free_range_vhdl.pdf

von Logische Wahrheit (Gast)


Lesenswert?

db8fs schrieb:
> @Jürgen S.:
>
> Mal 'ne Frage: was genau ist so schlimm am Ten-Hagen-Buch? Dort wird
> wenigstens mal erklärt, was da überhaupt so für schönes Zeug abgeht. Ich
> glaub, mit etwas Hintergrundwissen ist das eigentlich die perfekte
> Buchempfehlung für Fortgeschrittene. Danke dafür!

ten-Hagen behandelt fast ausschließlich die Simulation und nicht 
Schaltungs/Anwendungs-design.Damit kannst du deinen eigenen modelsim 
programmieren und scheiterst
in der Praxis an simplen Aufgaben wie FSM-Codierungsvarianten oder 
Blockram-instanziierung. das ist so als ob man uC in C programmieren 
anhand eines Buches über Compilerbau lernen will.

MfG,

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Das Problem an "reinen" VHDL-Büchern ist, dass man nach ausgiebiger 
Lektüre tadellos VHDL kann. Aber noch nicht einen Schritt FPGA. Denn da 
steht in dem Buch ein "wait until" gleichwertig neben einem "wait for". 
Nur geht das Eine auf der Hardware, und das Andere eben nicht. Und so 
schreibt jeder Anfänger gleich mal ein Blinklicht mit "wait for 500ms;" 
hin. Es ist dann schon ein gutes Zeichen, wenn sich da beim Tippen ein 
seltsames Gefühl einstellt...

Es wird auch nicht erklärt, was an kombinatorischen asynchronen Resets 
so schlecht sein soll. Ganz im Gegenteil wird sowas als tadelloses VHDL 
dargestellt:
1
process (a,b,c,d,e) begin
2
  if a or b then
3
    r <= 3;
4
  elsif d and e then
5
    r <= 5;
6
  elsif rising_edge(c) then
7
    r <= r+1;
8
  eind if;
9
end process;
Klar ist es tadellos. Es simuliert auch tadellos. Nur läuft es eben sehr 
wahrscheinlich nicht zuverlässig.

von Michael W. (Gast)


Lesenswert?

Logische Wahrheit schrieb:
> db8fs schrieb:
>> @Jürgen S.:
>> Mal 'ne Frage: was genau ist so schlimm am Ten-Hagen-Buch? Dort wird
>> wenigstens mal erklärt, was da überhaupt so für schönes Zeug abgeht. Ich
>> glaub, mit etwas Hintergrundwissen ist das eigentlich die perfekte
>> Buchempfehlung für Fortgeschrittene. Danke dafür!
>
> ten-Hagen behandelt fast ausschließlich die Simulation und nicht
> Schaltungs/Anwendungs-design.Damit kannst du deinen eigenen modelsim
> programmieren und scheiterst

Ich glaube, das Buch von Herrn ten Hagen ist, wie Jürgen schon 
angedeutet hat, etwas für die, die schon alles praktische können und 
sich dann an die Details machen wie das Verfeinern der Simulation.

>Re: Gutes VHDL Tutorial
Die Frage für die Beginner muss also lauten: Wo gibt es ein gutes 
*FPGA*-Tutorial?

von J. S. (engineer) Benutzerseite


Lesenswert?

Lothar Miller schrieb:
> Das Problem an "reinen" VHDL-Büchern ist, dass man nach ausgiebiger
> Lektüre tadellos VHDL kann. Aber noch nicht einen Schritt FPGA.

Exakt und daher hatte ich auch dieses Werk in die Dikussion geworfen:
Beitrag "Re: Gutes VHDL Tutorial"
Da wird in der Tat Hardware erklärt und das Pendant in VHDL 
danebengestellt.
Wilde Konstruktionen, die nur simulierbar sind, fand ich da keine.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.