Forum: FPGA, VHDL & Co. Entscheidung FPGA Einsteigerboard


von Klaus T. (gauchi)


Lesenswert?

Ich will mir um etwas über die Theorie hinauszukommen, mal ein FPGA 
Board zulegen, bisher hab ich also keine konkreten Anwendungen.

So wies aussieht sind die Boards von Digilent die günstigsten 
(insbesondere für Studenten). Da hab ich jetzt die Auswahl zwischen 
diversen Spartan3e Boards (Basys, Nexys, 3e starter) und dem Spartan 6 
Board (Atlys). Wenn ich die Xilinx Website richtig interpretiere, ist 
die neueste Version aus der Spartan3 Reihe aber eigentlich die Variante 
3A, dafür gäbs noch mal unabhängig ein Evalboard.

Was ist jetzt für mich als Einsteiger sinnvoll? Kann ich mit dem 
Spartan6 Board überhaupt etwas anfangen? Auf der anderen Seite will ich 
natürlich auch nichts kaufen, wo ich nach nem halben Jahr feststellen 
muss, dass das Board veraltet ist.

Zusätzlich gibt es hier Leute, die jedes Mal wenn sowas gefragt wird 
vorschlagen, man solle lieber Altera als Xilinx benutzen, weil da die 
Software besser sei. Da hab ich allerdings bisher keine günstigen Boards 
gefunden, damit wäre ich da auch an Vorschlägen interessiert.

von D. I. (Gast)


Lesenswert?

Also die Altera Boards von Terasic (DE0 DE1 DE2) haben schon sehr viel 
anfängerfreundliche Peripherie zum experimentieren.

Wenn du frisch einsteigst würde ich dir so eines empfehlen. Ich habe mit 
einem Spartan 3 Board angefangen und das tut auch heute noch seine 
Dienste.

von Klaus T. (gauchi)


Lesenswert?

Danke für den Tip, die Terasic Boards sind wirklich interessant. Die 
haben sogar praktischerweise alle nen Stecker den man einfach im Laden 
kaufen kann. Funktionieren die Netzteile die die mitliefern hier oder 
muss man noch eines fürs deutsche Stromnetz einplanen?

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


Lesenswert?

Klaus T. schrieb:
> Was ist jetzt für mich als Einsteiger sinnvoll?
Nimm den S3 (E/A/AN).
Dort sind die Fehler im Silizium und der Toolchain weitestgehend 
behoben.

> Kann ich mit dem Spartan6 Board überhaupt etwas anfangen?
Ja, warum nicht?

> Auf der anderen Seite will ich natürlich auch nichts kaufen, wo ich
> nach nem halben Jahr feststellen muss, dass das Board veraltet ist.
Das wird nicht passieren. Und das Wissen, das du sammelst kannst du 
problemlos zu >90% auf eine Nachfolgearchitektur übertragen. Zudem 
verlieren solche Einsteiger-Evalboards kaum an Wert. Du kannst pro Monat 
mit weniger als 5€ Wertverlust rechnen...

> Zusätzlich gibt es hier Leute, die jedes Mal wenn sowas gefragt wird
> vorschlagen, man solle lieber Altera als Xilinx benutzen, weil da die
> Software besser sei.
Viel interessanter ist m.E. wie gut die FPGAs bekannt sind, und wo/wie 
du leichter Hilfe bei Problemen findest.

> Was ist jetzt für mich als Einsteiger sinnvoll?
Lern auf jeden Fall gleich eine Beschreibungssprache. Wenn du mich 
fragst: VHDL, wenn du andere fragst: Verilog.
Siehe den Beitrag "Verilog versus VHDL ;-)"
Hier in Europa findest du eher VHDL. Aber mach dir einfach sdelber ein 
Bild: 
http://www.weblearn.hs-bremen.de/risse/RST/WS07/VHDLvsVerilog/VHDLvsVerilog.pdf

von Klaus T. (gauchi)


Lesenswert?

Lothar Miller schrieb:
> Nimm den S3 (E/A/AN).
> Dort sind die Fehler im Silizium und der Toolchain weitestgehend
> behoben.

Das ist auf jeden Fall mal eine klare Ansage - Sind die Fehler sonst so 
schlimm? (bisher hab ich noch keine FPGAs aus der Nähe gesehen)

>> Kann ich mit dem Spartan6 Board überhaupt etwas anfangen?
> Ja, warum nicht?
Naja - könnte ja sein, dass das Unmengen Zeug kann, die ich als Anfänger 
nicht nutzen kann, dafür aber für Anfängerprojekte à la LED blinken 
nicht geeignet ist.

>
>> Auf der anderen Seite will ich natürlich auch nichts kaufen, wo ich
>> nach nem halben Jahr feststellen muss, dass das Board veraltet ist.
> Das wird nicht passieren. Und das Wissen, das du sammelst kannst du
> problemlos zu >90% auf eine Nachfolgearchitektur übertragen. Zudem
> verlieren solche Einsteiger-Evalboards kaum an Wert. Du kannst pro Monat
> mit weniger als 5€ Wertverlust rechnen...
>
>> Zusätzlich gibt es hier Leute, die jedes Mal wenn sowas gefragt wird
>> vorschlagen, man solle lieber Altera als Xilinx benutzen, weil da die
>> Software besser sei.
> Viel interessanter ist m.E. wie gut die FPGAs bekannt sind, und wo/wie
> du leichter Hilfe bei Problemen findest.

Dieses Argument würde für meine Begriffe für Xilinx sprechen, da scheint 
es hier im Forum mehr Nutzer zu geben.

>> Was ist jetzt für mich als Einsteiger sinnvoll?
> Lern auf jeden Fall gleich eine Beschreibungssprache. Wenn du mich
> fragst: VHDL, wenn du andere fragst: Verilog.
> Siehe den Beitrag "Verilog versus VHDL ;-)"
> Hier in Europa findest du eher VHDL. Aber mach dir einfach sdelber ein
> Bild:
> http://www.weblearn.hs-bremen.de/risse/RST/WS07/VHDLvsVerilog/VHDLvsVerilog.pdf
Das habe ich sowieso vor, das VHDL Buch liegt vor mir. Wenn ich das 
durchhab, werd ich mir noch Verilog angucken, vielleicht ist das für 
mich günstiger, denn C kann ich, Ada sprech ich kein Wort.

Von der Seite betrachtet wo man mehr Hilfe bekommt, ist man mit VDHL 
glaub ich besser bedient, ich glaube alles was ich hier im Forum bisher 
gelesen hab war in VHDL.

von Christian R. (supachris)


Lesenswert?

Klaus T. schrieb:
> Das habe ich sowieso vor, das VHDL Buch liegt vor mir. Wenn ich das
> durchhab, werd ich mir noch Verilog angucken, vielleicht ist das für
> mich günstiger, denn C kann ich, Ada sprech ich kein Wort.

Vergiss ganz ganz schnell C bei FPGAs. Daraus entstehen die schlimmsten 
Fehler. Auch wenn es ähnlich aussieht, VHDL und Verilog sind 
Beschreibungssprachen, keine Programmiersprachen. Du beschreibst da nur 
FlipFlops und Gatter. Sogut wie alles, was sequenziell aussieht, wird 
parallel auf den Chip gebracht und parallel abgearbeitet.

Ansonsten halte dich an Lothars Mantra: Es gibt nur einen einzigen Takt 
und keine Variablen. Jedenfalls für das erste Jahr....

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


Lesenswert?

Klaus T. schrieb:
> Sind die Fehler sonst so schlimm?
Sagen wir mal so: als Anfänger merkst du davon idR. noch nichts, aber 
weil FPGAs durchaus komplexe Bauteile sind, haben die natürlich auch 
Fehler...

> Wenn ich das durchhab, werd ich mir noch Verilog angucken,
> vielleicht ist das für mich günstiger, denn C kann ich
Wie Christian schon gesagt hat: versuch niemals auch nur ansatzweise, 
eine C-Denkweise in die Hardware zu bringen. Das geht garantiert (!!!) 
in die Hose, die Posts hier im Forum bieten ein umfangreiches 
Sammelsurium an solchen Irrtümern. Und wenn du dich dann von der 
(vermeintlichen) Nähe von Verilog zu C täuschen lässt, dann nimm besser 
gleich VHDL.

Denn Verilog und VHDL wird nicht "ausgeführt", sondern die Beschreibung 
fürs FPGA muß in Gatter (LUTs) und Flipflops abgebildet werden können.

>  das VHDL Buch liegt vor mir
Das welche Buch?
Ein schlechtes VHDL-Buch bringt z.B. ohne jede Wertung den gesamten 
gewaltigen Sprachumfang daher. Häufig gebrauchte und synthetisierbare 
Konstrukte nehmen gleich viel Platz ein, wie irgendwelche 
Sonderfunktionen, die du später evtl. alle Schaltjahre mal brauchst.

D.h. du kannst nicht unterscheiden, ob z.B. eine function eher was 
wichtiges oder was unwichtiges im Vergleich zu einem process ist. Und 
dann lernst du u.U. die (für Anfänger) unnötige function mit mehr 
Zeitaufwand als das Verhalten eines process...

Oder du siehst dir Signale und Variablen an und sagst: wenn das so ist, 
dann nehme ich doch gleich Variablen. Und das ohne zu wissen, dass du 
ohne Variablen wesentlich weniger Probleme haben wirst...

von Klaus T. (gauchi)


Lesenswert?

Lothar Miller schrieb:
>> Wenn ich das durchhab, werd ich mir noch Verilog angucken,
>> vielleicht ist das für mich günstiger, denn C kann ich
> Wie Christian schon gesagt hat: versuch niemals auch nur ansatzweise,
> eine C-Denkweise in die Hardware zu bringen. Das geht garantiert (!!!)
> in die Hose, die Posts hier im Forum bieten ein umfangreiches
> Sammelsurium an solchen Irrtümern. Und wenn du dich dann von der
> (vermeintlichen) Nähe von Verilog zu C täuschen lässt, dann nimm besser
> gleich VHDL.
>
> Denn Verilog und VHDL wird nicht "ausgeführt", sondern die Beschreibung
> fürs FPGA muß in Gatter (LUTs) und Flipflops abgebildet werden können.

Ich hab mich wohl etwas ungünstig ausgedrückt - ich möchte nur sehen ob 
ich mit  VHDL oder mit Verilog besser klar komme. Mir ist klar, dass es 
keine Abarbeitung eines Programms gibt, wie es sie bei 
Programmiersprachen wie C gibt.

>>  das VHDL Buch liegt vor mir
> Das welche Buch?

Zwolinski, Digital System Design with VHDL

> Ein schlechtes VHDL-Buch bringt z.B. ohne jede Wertung den gesamten
> gewaltigen Sprachumfang daher. Häufig gebrauchte und synthetisierbare
> Konstrukte nehmen gleich viel Platz ein, wie irgendwelche
> Sonderfunktionen, die du später evtl. alle Schaltjahre mal brauchst.
>
> D.h. du kannst nicht unterscheiden, ob z.B. eine function eher was
> wichtiges oder was unwichtiges im Vergleich zu einem process ist. Und
> dann lernst du u.U. die (für Anfänger) unnötige function mit mehr
> Zeitaufwand als das Verhalten eines process...

function is bisher noch nicht vorgekommen, process schon.

> Oder du siehst dir Signale und Variablen an und sagst: wenn das so ist,
> dann nehme ich doch gleich Variablen. Und das ohne zu wissen, dass du
> ohne Variablen wesentlich weniger Probleme haben wirst...

Bisher machte es für mich den Eindruck, dass Variablen relativ 
überflüssig sind, aber vermutlich haben sie ihre Daseinsberechtigung (in 
dem Buch hier ist er noch nicht auf den Sinn und Zweck eingegangen).

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


Lesenswert?

Klaus T. schrieb:
> Zwolinski, Digital System Design with VHDL
Scheint den Bewertungen nach nicht einfach den Sprachumfang alfabetisch 
abzuarbeiten (quasi procedure vor process...), sondern eher 
syntheseorientiert vorzugehen. Gut so.

von X- R. (x-rocka)


Lesenswert?

Wenn du nur das FPGA willst ohne viel schnickschnack, dann suche mal 
nach "Microboard" bei Avnet. Da ist ein ein Xilinx S6 drauf, kostet nur 
89$.
Kommt aber erst Anfang März.

von Klaus T. (gauchi)


Lesenswert?

Die Größe von dem Teil is schon cool, aber ich glaube man muss es nicht 
übertreiben.

Eine Frage hätte ich noch: Spart man sich Ärger, wenn man ein Original 
Xilinx Board kauft statt den Digilent Teilen, insbesondere mit der 
Kompatibilität der Software?

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


Lesenswert?

Klaus T. schrieb:
> Eine Frage hätte ich noch: Spart man sich Ärger, wenn man ein Original
> Xilinx Board kauft statt den Digilent Teilen,
Xilinx selber verkauft auch die Digilent-Boards...

> isbesondere mit der Kompatibilität der Software?
Das eigentlich spannende ist nur der Programmieradapter. Der sollte für 
Impact geeignet sein, sonst brauchst du spezielle software zum 
Programmieren des Bausteins.

von Klaus T. (gauchi)


Lesenswert?

Lothar Miller schrieb:
> Das eigentlich spannende ist nur der Programmieradapter. Der sollte für
> Impact geeignet sein, sonst brauchst du spezielle software zum
> Programmieren des Bausteins.

Genau das meinte ich - die kleinen Boards von Digilent brauchen dieses 
Adept. Diejenigen wo groß Xilinx draufsteht werden hoffentlich auch mit 
Xilinx Software arbeiten.

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


Lesenswert?

Klaus T. schrieb:
> werden hoffentlich auch mit Xilinx Software arbeiten.
Da muss nicht unbedingt die Hoffnung herhalten, das kann man in der 
Beschreibung nachlesen. Wenn da was von "zu Impact kompatibel" drin 
steht, dann klapp das schon...

von Gerhard G. (ge1ge)


Lesenswert?

Hallo Klaus, für was hast du dich dann entschieden?

In meiner Auswahl stehen das LX9, das Nexys3 und das Atlys.

Eigentlich hatte ich mich schon für das LX9 entschieden, da für den 
Einstieg von Avnet schöne Einführungen, Dokumente und SW Lizensen 
vorhanden sind.

Bin gerade dabei eine Vergleichliste zu erstellen und da scheint der 
Nexys 3 wegen der höheren Anzahl der extern verfügbaren I/O-Anschlüsse 
für mich universeller zu sein. Beim LX9 sind es über die zwei PMODs nur 
16 Anschlüsse, und die werden schon belegt, wenn ich nur die LCD-Anzeige 
PmodCLP anschließen will. Der Nexys hat halt 4 Pmods mit 32 I/O's und am 
VHDC expansion connector hab ich nochmals 40 I/O's verfügbar.
Und den Nexys kann ich noch vom USB versorgen. Bei Atlys geht das nur 
mehr über ein zusaätzliches Netzteil.

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.