Forum: FPGA, VHDL & Co. Anfänger sucht FPGA Entwicklungsboard für verschiedene Projekte


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Fabian Z. (fabi_z)


Bewertung
0 lesenswert
nicht lesenswert
Hallo alle zusammen,

ich liebäugle schon seit einiger Zeit mit einem Entwicklungsboard 
welches aus einem FPGA und einem uC aufgebaut ist. Geplant sind anfangs 
kleine Projekte die zum Erlernen von VHDL dienen sollen. Jedoch will ich 
gezielt mit Tutorials, Skripten von Unis, FHs und Büchern die Fast 
Fourier Transformationen auf dem FPGA beschreiben um das OFDM Verfahren 
anwenden zu können. Auch die Bildverarbeitung reizt mich sehr. Wie zum 
Beispiel in einer alten Diplomarbeit beschrieben.
http://thomaspfeifer.net/fpga_dsp_bildverarbeitung.htm

Nun ist die Frage welches Entwicklungsboard ich mir zutun sollte. In 
meinem Praxissemester habe ich mit einem CPLD von Xilinx gearbeitet und 
erste Gehversuche in der VHDL Hardwarebeschreibungssprache gemacht.

Welches Board würdet Ihr mir empfehlen um den Einstieg zu finden in die 
FPGA Welt? Am liebsten hätte ich noch ein uC drauf. Da wurde ich fündig 
bei Altera Cyclone sowie Xilinx Zynq. Was meint Ihr, was wäre für den 
Anfang geeignet? Wie habt Ihr angefangen? Dieses Buch "FPGA Prototyping 
by VHDL Examples: Xilinx Spartan-3 Version“ verwendet einen alten 
Spartan 3. Sollte ich mir einfach dieses Buch holen und die Beispiel 
durchackern?

Wäre das Spartan 3 Board auch dazu geeignet um das Thema OFDM zu 
implementieren und auch in die Bildverarbeitung, Objekterkennung usw. zu 
gehen?

In einem weiteren Buch, nämlich diesem „FPGAs für Maker: Eine praktische 
Einführung in programmierbare Logik“ werden diese Boards verwendet:

- DE0 und DE0 Nano von Altera
- MachX03 LF Starter Kit von Lattice
- AGLN-Nano-Kit von Microsemi
- Papilio Pro, Papilio LogicStart MegaWing, NEXYS3, Arty, BASYS3 und 
NEXYS4 DDR von Xilinx

Welches davon könnte in Frage kommen für mich?

Wie würdet Ihr an meiner Stelle vorgehen.

Vielen Dank für eure Hilfe :)

von Ti (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe in die FPGA Welt mit dem Artix-7 35T Arty Dev Board von 
Digilent angefangen.
Der Artix-7 XC7A35T auf dem Board besitzt aber kein Mikrocontroller.

Ich weiß nicht ob es wirklich komplizierter ist wenn man mit einem FPGA 
mit Mikrocontroller anfängt. Aber der Umfang des Lerninhalts ist 
natürlich größer.
Ich wollte mich zuerst voll und ganz auf ein FPGA konzentrieren. Die 
integrierten Mikrocontroller sind eine Geschichte für sich.

von Duke Scarring (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Fabian Z. schrieb:
> Wäre das Spartan 3 Board auch dazu geeignet um das Thema OFDM zu
> implementieren und auch in die Bildverarbeitung, Objekterkennung usw. zu
> gehen?
OFDM sollte gehen, aber eher mit schmaler Bandbreite. Für 
Videoverarbeitung dürfte es zu knapp sein.

Ich würde an Deiner Stelle trotzdem erstmal mit was Kleinem anfangen. 
Nach einer gewissen Zeit hat man eher eine Vorstellung, was für den 
geplanten Zweck nötig ist. Die Video-Evaluationsplatformen der 
FPGA-Hersteller starten in der Regel bei einer vierstelligen Summe...

> In einem weiteren Buch, nämlich diesem „FPGAs für Maker: Eine praktische
> Einführung in programmierbare Logik“ werden diese Boards verwendet:
>
> - DE0 und DE0 Nano von Altera
> - MachX03 LF Starter Kit von Lattice
> - AGLN-Nano-Kit von Microsemi
> - Papilio Pro, Papilio LogicStart MegaWing, NEXYS3, Arty, BASYS3 und
> NEXYS4 DDR von Xilinx
>
> Welches davon könnte in Frage kommen für mich?
Um erste Erfahrungen zu sammeln: alle :)

Duke

von Fabian Z. (fabi_z)


Bewertung
0 lesenswert
nicht lesenswert
Ti schrieb:
> Ich habe in die FPGA Welt mit dem Artix-7 35T Arty Dev Board von
> Digilent angefangen.

Was für Literatur hast du verwendet wenn ich fragen darf?

Jetzt stelt sich nur die Frage soll ich ein Board mit uC als Soc nehmen 
oder nicht?

Was meint Ihr zu diesem Board

http://store.digilentinc.com/zybo-zynq-7000-arm-fpga-soc-trainer-board/

Klar Preis ist echt hoch aber hat eigentlich alles was man braucht, 
oder?
Kennt jemand ein ähnliches Preiswerteres?

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Ich hab dazu auch eine Frage:
Kann man bei diesen Zynq die CPUs komplett ignorieren und damit wie mit 
einem Artix arbeiten? Also auch bei der Konfiguration des FPGA-Teils? 
Beim Artix geht das schön einfach mit JTAG oder eben über JTAG in einen 
Flash Baustein. Was ich vermeiden möchte ist da für jede neue FPGA 
Konfiguration ein Linux auf dem Zynq booten oder ein SD-Card Image 
bauen.

von Zynkizanki (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Nö, das Ding muss konfiguriert werden, damit die CPUs nicht dazwischen 
funken. Besonders beim DDR3 gibt es da Probleme. Allerdings frage Ich 
mich, wozu jemand einen solchen Chip nimmt, der sich ja gerade durch 
DIESE Funktion besonders auszeichnet, um es dann nicht zu nehmen.

Und ja, man kann auch einen Abschleppwagen mit Hebekran benutzen und den 
Hebekran so wegstellen und kleinmachen, daß man die Ladefläche auch als 
Speicher für Autos benutzen kann, die man alle per Hand draufschiebt.

Viel Spass beim FPGA entwickeln.

von Strubi (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Duke Scarring schrieb:
> Die Video-Evaluationsplatformen der
> FPGA-Hersteller starten in der Regel bei einer vierstelligen Summe...

Das Lattice HDR60 gabs vor einigen Jahren für unter 400€. Nur die 
SW-Lizenzen schlagen allenfalls nach der Eval-Periode zu Buche.

Was sonst die BV-Ambitionen auf FPGA angeht: meistens beschränkt sich 
das doch auf relativ "brute force" Vorverarbeitungs-Filter und das 
komplexere Zeug wird in Software erledigt. Videoprotokolle wie HDMI, 
SDI, etc. sind vielleich zum Anfangen weniger spannend. Und sobald 
gepuffert werden muss, ergo DDR* ins Spiel kommt, wird's komplex, da 
macht ev. das Zynq-Board mehr Sinn. Ein Omnivision- oder 
Aptina-Modülchen lässt sich da locker drankabeln.

von Frank F. (frank_f49)


Bewertung
0 lesenswert
nicht lesenswert
Mit  einer FFT anzugangen  wenn man  Neuling ist:

der beste Weg  um  sich absolute Frustration einzufangen.

Selbst wenn man  1:1  eine Routine  von C  nach HDL umsetzen will:
als Anfänger sollte man mit was Leichterem anfangen.

: Bearbeitet durch User
von AN D. (schoensittich)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir das DE0 Nano SoC geholt. Darauf sitzt ein 
Mittelklasse-Cyclone V mit integriertem Arm Kern. Weiterhin bietet das 
Board allerlei Schnick-Schnack und das für 100 €.

Für den Einstieg kann ich das nur empfehlen.

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Zynkizanki schrieb:
> Allerdings frage Ich
> mich, wozu jemand einen solchen Chip nimmt, der sich ja gerade durch
> DIESE Funktion besonders auszeichnet, um es dann nicht zu nehmen.

Nun, vielleicht weil es günstige Boards mit Features gibt die es mit 
reinem FPGA nicht gibt? Z. B. das Red Pitaya. Da würde es mir reichen 
wenn ich komplett ohne CPU die DA und AD-Wandler verwenden kann und die 
Daten über eine Schnittstelle rausschaufele.

von Markus K. (markus-)


Bewertung
1 lesenswert
nicht lesenswert
Gustl B. schrieb:
> Ich hab dazu auch eine Frage:
> Kann man bei diesen Zynq die CPUs komplett ignorieren und damit wie mit
> einem Artix arbeiten? Also auch bei der Konfiguration des FPGA-Teils?
> Beim Artix geht das schön einfach mit JTAG oder eben über JTAG in einen
> Flash Baustein. Was ich vermeiden möchte ist da für jede neue FPGA
> Konfiguration ein Linux auf dem Zynq booten oder ein SD-Card Image
> bauen.

Wie das mit dem Speichern aussieht weiß ich noch nicht, aber ich habe 
gerade dieses Tutorial 
http://www.fpgadeveloper.com/2014/08/creating-a-custom-ip-block-in-vivado.html 
ausprobiert (auf einem Zybo) und das konnte man einfach so per JTAG 
übertragen. In dem Beispiel wird die CPU angesprochen und konfiguriert, 
aber es ist halt kein Linux, sondern eine bare metal Anwendung. Also 
einfach ein C-Programm ohne Betriebssystem, ohne Multitasking oder so. 
Das wurde ruckzuck übertragen.

An den TO:
Schau Dir mal dieses Beispiel an. Ich finde es erstaunlich komplex, aber 
nicht schwierig. Als Student sollte Dir das keine Probleme bereiten; es 
ist halt ein ganzes Stück mehr Einarbeitungsaufwand.

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Schick! Das sieht erstaunlich einfach aus ...

von Fpgakuechle K. (fpgakuechle) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Fabian Z. schrieb:

> Was meint Ihr zu diesem Board
>
> http://store.digilentinc.com/zybo-zynq-7000-arm-fpga-soc-trainer-board/
>
> Klar Preis ist echt hoch aber hat eigentlich alles was man braucht,
> oder?

Das Board ist nicht mit der Xilinx-ISE programmierbar, aber viele ältere 
Tutorials beschreiben eben diese.

ARN-Core ist kein einfach programmierbarer mikrocontroller.

Der FPGA-ÜROM ist nicht ohne den ARM-Core startbar, man muß dazu die 
FPGA-Toolchain verlassen und sich zwangsläufig mit dem SDK rumschlagen.

Alte Spartan3/6 FPGA-Borads und gängige ARM-Einsteiger-Boards sind 
besser für autoditaktische Anfänger geeignet.

von Fpgakuechle K. (fpgakuechle) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Gustl B. schrieb:
> Ich hab dazu auch eine Frage:
> Kann man bei diesen Zynq die CPUs komplett ignorieren und damit wie mit
> einem Artix arbeiten?

Nein. Ich habs versucht. Bitfile draufspielen geht wie immer, aber 
sobald man den FPGA nichtflüchtig konfigurieren will, muß man über das 
SDK gehen. Grund ist das Multi-Stage-Boot dieses Bausteins. Erst bootet 
der ARM, der beschreibt die SRAM-Konfig-Zellen des FPGA und startet dann 
die FPGA-Teil.

> Also auch bei der Konfiguration des FPGA-Teils?
> Beim Artix geht das schön einfach mit JTAG oder eben über JTAG in einen
> Flash Baustein.

Für JTAG in Flash muss man das Bitfile nicht nur in ein PROM-File 
Konvertieren sondern in irgendwas Package was auch nochminimalen 
Bootcode für den ARM enthält.
JTAG direct in den FPGA (also flüchtig) funktioniert dagegen wie gehabt.


> Was ich vermeiden möchte ist da für jede neue FPGA
> Konfiguration ein Linux auf dem Zynq booten oder ein SD-Card Image
> bauen.

So schlimm ist es wohl auch nicht, Linux braucht es nicht, aber man kann 
eben den ARM nicht komplett ignorieren.

: Bearbeitet durch User
von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank!

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]
  • [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.