Forum: FPGA, VHDL & Co. Einstieg in die FPGA-Welt


von Simon N. (bufferunderrun)


Lesenswert?

Ich möchte ein erstes Hobbyprojekt mit einem FPGA umsetzen.

Ein Xilinx JTAG Interface habe ich bereits, daher würde ich gerne bei 
Xilinx bleiben.

An folgendem möchte ich mich versuchen:
- FPGA-"Grafikkarte" (LCD direkt ansteuern, kein VGA-Interface)
- FPGA-Framebuffer, später Blitter integrieren
- Ansteuerung des FPGA mittels uC (NXP-LPC mit Cortex M3)

=> Alles step-by-step, erst mal LCD ansteuern

Problem: Ich habe keine Erfahrung mit FPGA's: Mit wie vielen Logikzellen 
man da überschlägig kalkulieren?

Als erstes habe ich nach Evaluation-Boards geschaut.
Die sind aber vollgestopft mit Peripherie, die ich nicht brauche, was 
die Boards auch nicht gerade billig macht.

Ich hätte gerne ein Board, das nur den FPGA, Config-EEPROM, Clock und 
Spannungswandler enthält.
Alle Pins müssen natürlich rausgeführt sein, damit ich beim Fortschritt 
des Projektes z.B. SRAM für den Frabebuffer ergänzen kann.

Was mir noch aufgefallen ist: Den Spartan 3E gibt es nur bis zur 
Variante mit 500k Zellen in einem bedrahteten Gehäuse.
Alle größeren Varianten haben ein BGA Gehäuse, was für mich nicht 
handlebar ist, sollte ich mal eine eigene Platine von dem Projekt 
erstellen.

Ich habe nun bei eBay (261136029038) ein FPGA-Board (Made in China) 
gefunden, dass den XC3S500E enthält. Preis 36 EUR. Wäre das ein guter 
Start? Oder macht es keinen Sinn, mit einem FPGA<=500k Zellen ein 
solches Projekt anzufangen? Es muss ja nicht die Highend-Lösung dabei 
heraus kommen, aber die o.g. Eigenschaften sollten sich schon rudimentär 
umsetzen lassen.

Für Denkanstöße und Hilfe zu meinen Fragen wäre ich dankbar.

Gruß, Simon

von PittyJ (Gast)


Lesenswert?

Ich habe keine Ahnung von Raketentechik, möchte aber demnächst auf dem 
Mond landen.
Bei Aldi gibt es heute Rakete. Passen die für mich? Komme ich da auch 
wieder mit zurück?




Also mal ganz ehrlich. Lerne erst mal die Basics mit einem einfachen 
Board. Nach einem halben Jahr mit blinkenden LEDs überlege, ob es sich 
noch lohnt, etwas passendes zu kaufen. Dann hast du auch die Erfahrungen 
über LUT und Speicherverbrauch.

von HertzFrequenz (Gast)


Lesenswert?

@  Simon Jensen (bufferunderrun)

Es wäre eigentlich gut zu wissen, wo Du stehst.
Wieviel und welche Erfahrung ganz allgemein mit Informatik/Elektronik 
hast Du?
Wieviel und welche speziell mit FPGAs und VHDL/Verilog?

von Grendel (Gast)


Lesenswert?

Simon Jensen schrieb:
> Oder macht es keinen Sinn, mit einem FPGA<=500k Zellen ein
> solches Projekt anzufangen?

Tipp: Besser nicht in "ASIC Gates" rechnen sondern in Logic Cells 
(LUT4+FF).

von Lattice User (Gast)


Lesenswert?

Simon Jensen schrieb:
>
> Ich habe nun bei eBay (261136029038) ein FPGA-Board (Made in China)
> gefunden, dass den XC3S500E enthält.

Viel zu wenig GND-Pins auf den Pfostenleisten. Das macht früher oder 
später richtig Probleme.

von hanswurst (Gast)


Lesenswert?

PittyJ schrieb:
> Ich habe keine Ahnung von Raketentechik, möchte aber demnächst auf dem
> Mond landen.
> Bei Aldi gibt es heute Rakete. Passen die für mich? Komme ich da auch
> wieder mit zurück?

Das motiviert!
Habe den Eindruck hier im Forum geht es nur darum andere gegen eine Wand 
laufen zu lassen.

PittyJ schrieb:
> Also mal ganz ehrlich. Lerne erst mal die Basics mit einem einfachen
> Board. Nach einem halben Jahr mit blinkenden LEDs überlege, ob es sich
> noch lohnt, etwas passendes zu kaufen. Dann hast du auch die Erfahrungen
> über LUT und Speicherverbrauch.

Nicht immer von sich selbst auf andere schließen.

von Hans-Georg L. (h-g-l)


Lesenswert?

Zuerst solltest du mal dein LCD festlegen.

Wieviel Bildpunkte und welche Farbtiefe pro Punkt, denn davon hängt dein 
Speicherbedarf ab.

von Michael B. (mbauswhv)


Lesenswert?

Hallo


Vielleicht ist das was für dich :


http://shop.trenz-electronic.de/catalog/product_info.php?cPath=1_48_136&products_id=635




Es ist nicht zu  Teuer  und du hast genug freie Pins die du gut benutzen 
kannst .


MfG Ich

von Hans-Georg L. (h-g-l)


Lesenswert?

Und auch welche Ansteuerung dein LCD will ..

Wenn dein LCD 1,8 Cmos Pegel braucht nützt dir ein 5V FPGA recht wenig 
und wenn es auch noch so billig war ;)

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


Lesenswert?

hanswurst schrieb:
> PittyJ schrieb:
>> Ich habe keine Ahnung von Raketentechik, möchte aber demnächst auf dem
>> Mond landen.
>> Bei Aldi gibt es heute Rakete. Passen die für mich? Komme ich da auch
>> wieder mit zurück?
> Das motiviert!
> Habe den Eindruck hier im Forum geht es nur darum andere gegen eine Wand
> laufen zu lassen.
Nein. Es ist nur realistisch! Ich habe immer wieder mal Studenten, die 
nach einem (oder zwei) Semester VHDL schon meinen, die ganze Welt zu 
kennen. Und dann brauche ich erst mal 2 Wochen, um den Murks aus der 
Schule wieder geradezubiegen...

>> Nach einem halben Jahr mit blinkenden LEDs überlege, ob es sich noch
>> lohnt, etwas passendes zu kaufen.
> Nicht immer von sich selbst auf andere schließen.
Was war dein erstes Projekt als absoluter Anfänger? Auch ein 
Grafikcontroller?
Meines war es, das zugekaufte Design eines "Profis" zu übernehmen, das 
"ziemlich stabil" funktionierte (blöd, dass es ein ASIC-Profi war, der 
auf FPGAs machte). Dabei habe ich dann alles gelernt, was man über das 
Scheitern (und asynchrone kombinatorische Resets) wissen muss. Und das 
hat auch gut ein halbes Jahr gedauert (wie gesagt: das Design war schon 
fertig und wurde ausgeliefert).

Ich habe hier schon einige hochmotivierte Projekte kommen und verhungern 
sehen. Einige der Projektanten verkauften ihr "neuwertiges" Board dann 
im Markt-Forum...

OK, zur Sache:
Simon Jensen schrieb:
> Problem: Ich habe keine Erfahrung mit FPGA's:
> => Alles step-by-step, erst mal LCD ansteuern
Das hat schon mal einen gewissen Anspruch, da könntest du leicht mal auf 
die Nase fallen. Hast du einen LogicAnalyzer fürs Debugging?

Ich würde dir erst mal eine "blinkende LED" voracglagen, dann ein 
Lauflicht, dann ein Knight-Rider-Lauflicht (probier mal selber drauf zu 
kommen, wie das mit den Helligkeitsstufen gehen könnte), dann eine 
serielle Schnitte (irgendwie müssen ja mal Daten für dein LCD empfangen 
werden), dann würde ich eine VGA Ansteuerung machen, darauf Pong 
spielen, und wenn du das dann alles hast, dann kannst du dir mal die 
Sache mit dem LCD nochmal anschauen.
Bis dahin hast du so viele Fehler gemacht und daran gelernt, dass dir 
dieses LCD-Projekt keine schlimmen neuen Fehler mehr bringt. Aber wenn 
du gleich mit dem LCD anfängst, dann wird das ein steiniger Weg.
Ich würde übrigens behaupten, dass du mit beiden Wegen gleich schnell am 
Zeil bist, nur kommt beim "Umweg" über das Lauflicht hinterher eine 
schönere Beschreibung heraus...

Simon Jensen schrieb:
> Was mir noch aufgefallen ist: Den Spartan 3E gibt es nur bis zur
> Variante mit 500k Zellen in einem bedrahteten Gehäuse.
Dein Projekt ist sehr überschaubar (wenn vernünftig beschrieben). Wenn 
es da nicht reinpasst, dann hast du was falsch gemacht...

> Als erstes habe ich nach Evaluation-Boards geschaut.
Das ist genau die Ecke, die für Anfänger gemacht ist. Vergiss die 
"nackten" Boards, wo du jede klitzekleine Schnittstelle zur Aussenwelt 
erst noch dazubasteln musst.
> Die sind aber vollgestopft mit Peripherie, die ich nicht brauche,
Dann setze sie inaktiv.
> was die Boards auch nicht gerade billig macht.
Was ist "billig"? Kauf dir eines für 150€, du wirst für dein Hobby noch 
viel mehr Geld ausgeben (müssen). Und vor allem: du kannst das Board in 
einem Jahr problemlos für 120€ wieder verkaufen (150€ --> 120€, wo 
bekommst du noch was für gerade mal 3€ pro Monat)...

> Alle Pins müssen natürlich rausgeführt sein, damit ich beim Fortschritt
> des Projektes z.B. SRAM für den Frabebuffer ergänzen kann.
Wenn du ein Board mit SRAM kaufst, dann ist das sogar schon 
angeschlossen und funktioniert.

Mein Tipp: spare woanders, aber nicht beim EVAL-Board.

: Bearbeitet durch Moderator
von Simon N. (bufferunderrun)


Lesenswert?

@Lothar Miller: Vielen Dank für diese tolle Einschätzung. Genau so etwas 
habe ich gesucht!

Ich werde mich nach einem Board in der o.g. Preisklasse umschauen.

Das Internet hat noch folgendes ausgespuckt: LCD-Ansteuerung über LVDS 
(1024x768x7bit) mit 100k Gate FPGA umsetzbar. Mit uC Interface 
(parallel) und ext. SRAM Framebuffer mit 250k Gate-Variante machbar. 
Also wäre ich mit der 500k Variante auf dem Demoboard auch für das 
angedachte Projekt gerüstet ...

Danke und Gruß, Simon

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


Lesenswert?

> Das Internet hat noch folgendes ausgespuckt: LCD-Ansteuerung über LVDS
>  (1024x768x7bit) mit 100k Gate FPGA umsetzbar
Ich bin mir sicher, dass mit ein wenig Nachdenken signifikant weniger 
Ressourcen nötig sind. Immerhin sind 100k Gatter umgerechnet locker mehr 
als 1000 (auch deutlich komplexere) TTL Bausteine der 74er Serie. Und 
damit wurden früher ganze Spielautomaten aufgebaut...

Fazit: das FPGA reicht vorerst garantiert. Und wenn es dir irgendwann zu 
klein wird, dann weisst du, worauf es beim Kauf des nächsten Boards 
ankommt...

: Bearbeitet durch Moderator
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.