Forum: FPGA, VHDL & Co. Verwendung von FPGA


von Alex X. (behindi)


Lesenswert?

Hallo

ich möchte mich mit FPGA's ein einarbeiten und herumexperimentieren und 
hab dazu auch schon ein Starterkit von Alterra im Auge,
das Problem ist nur dass ich noch nicht mal richtig weiß wozu am einen 
FPGA verwendet, ich hab mich im internet eingelesen und weiß jetzt 
ungefähr wie ein FPGA arbeitet und aufgebaut ist. Hab aber leider keinen 
Plan was man damit alles machen kann und was damit gemacht wird??

wäre super wenn jemand was dazu wüsste:)

danke im Voraus

mgf
alex

von Detlev (Gast)


Lesenswert?

Hi,

ich verstehe immer nicht, warum die Leute hier im Forum sich erst ein 
Development Board kaufen und dann anfangen sich mit FPGAs zu 
beschäftigen.

Man kann so schön VHDL programmieren, simulieren, verifizieren ohne dass 
man ein FPGA Board in die Hand nehmen muss.
Ein FPGA ist schon eine andere Geschichte als ein Mikrocontroller. Man 
hat viele IOs, muss Timing Contraints beachten, unterschiedliche Clock 
Netze, ach man kann soviel damit anstellen. ABER im Hobbybereich sind 
die Anwendungen eher geringer, es sei denn Du willst einen Kamerachip 
direkt ansprechen, die Daten per High Speed übertragen, sicherlich kann 
man auch einige witzige Algorithmen direkt im FPGA integrieren.
Das meiste was doch im Hobby Bereich gemacht wird sind Steueraufgaben 
oder Messaufgaben mit einem Mikrocontroller. Und genau dafür sind die 
gemacht. Sicherlich kann ich das auch mit einem FPGA machen, aber 
alleine die Stromversorgung 1,2 V, 1,8V, 2,5V, 3,3V, dann schnelle 
Clocks inkl. Clock Refresher. Das Leiterplattendesign wird schon 
anspruchsvoll.

von Alex X. (behindi)


Lesenswert?

Hi,
ja ich hab grad andere Beiträge gelesen und hab mir das mit dem Kit 
schon aus dem Kopf geschlagen, ich werd mich zuerst in die HDL 
einarbeiten, trotzdem danke für deine Antwort und Beschreibung:),
Arbeitet ein FPGA schneller als ein Controller da der FPGA ja speziell 
für seine Aufgabe programmiert wurde,oder?

von Hinweis (Gast)


Lesenswert?

alex le. schrieb:
> Arbeitet ein FPGA schneller als ein Controller da der FPGA ja speziell
> für seine Aufgabe programmiert wurde,oder?

Schneller ist er meist, aber das ist so nicht vergleichbar. Ein FPGA ist 
ein programmierbarer Logikbaustein. Du kannst zum Beispeil ein einfaches 
UND Glied in einer HDL beschreiben und an drei Pins (zwei Eingänge und 
ein Ausgang) anbinden. Das Ergebnis wirst du quasi sofort erhalten (nur 
die Signallaufzeit des Gatters). Natürlich kannst du auch viel 
komplexere Schaltungen beschreiben.

Ein Prozessor besteht auch aus Logikblöcken (z.B. Flipflops und Addieren 
etc., welche wieder aus einfachen logikblöcken bestehen) Diese sind 
meist fest in einem Chip vergossen (ASIC). Du kannst die Logikblöcke auf 
einem FPGA so verknüpfen, das daraus ein Prozessor entsteht. Kannst ja 
mal nach Softcore suchen. Das sind meist einfache Prozessoren, welche im 
vergleich zu µCs z.B. keine A/D Wandler im Gehäuse haben.
Ich glaube ich habe mal irgendwo gelesen: FPGA ^= Metall, Prozessor ^= 
Auto, zwar kein toller vergleich aber vielleicht hilfts :-D

Wenn dir Simulation nicht reicht und du lieber mit Hardwar rumspielst 
kannst du dir auch erstmal ein kleines CPLD holen. Braucht weniger 
Spannungen und ist robuster und für ne blinkende LED in einer HDL 
reichts (z.B. xc9572)
Ein Spartan 6 Layout ist aber auch noch sehr einfach (zumindest die 
kleinen bis LX9 glaub ich).

viel spaß

von .trivial. (Gast)


Lesenswert?

So ganz nebenbei muss man sich nicht mit HDL auseinandersetzen. Man 
kommt auch sehr weit mit schematischer Eingabe.
Der uebliche Einsatzbereich ist eine ganz Platte mit Logik durch einen 
einzelnen Chip zu ersetzen.

von Alex X. (behindi)


Lesenswert?

danke für die gute Erklärung:),

ich wollt nun fragen welche Entwicklungsumgebung sollte ich downloaden 
um bei eventuellen Fragen hier im Blog am ehesten ne Antwort bekommen 
wenns mal Probleme gibt

Altera oder Xilinx??

danke

von Alex X. (behindi)


Lesenswert?

Ich hab mal nachgelesen was der unterschied zwischen FPGA und CPLD,
Beim FPGA geht das Programm (programierte Verbindungen) beim abschalten 
der Versorgungsspannung nicht cerloren da es ja auf ne EEPROL ist, geht 
beim CPLD dann alles Verloren da ja dein Permanenter Speicher vorhanden 
ist oder?

von user (Gast)


Lesenswert?

FPGA müssen meistens erst geladen werden, zb aus einem externen FlashRom
es gibt auch welche mit internem FlashRom (Spartan3AN, MachXO2, 
LatticeXP2)

CPLDs haben ein Flash integriert.

Wobei die Übergänge zwischen FPGA/CPLD fliesend sind.

von Detlev (Gast)


Lesenswert?

ein CPLD hat meist nur wenig spezifische Blocks dafür ne Menge Flip 
Flips und die Gatterdurchlaufzeit ist fix.
Bei einem FPGA gibt es noch viele spezifische Blocks wie DSP, Block-RAM, 
DCM, etc... Die Durchlaufzeit ist nicht fix, daher müssen die 
sogenannten Timing Constrains eingegeben werden.

von Christian R. (supachris)


Lesenswert?

Detlev schrieb:
> dafür ne Menge Flip
> Flips

Hä? Selbst die größten CPLDs haben nur einen Bruchteil der 
FlipFlop-Anzahl der kleinsten FPGAs. In manchen Nischen-Designs haben 
CPLDs sicherlich noch eine Daseinsberechtigung, in den allermeisten 
Anwendungen wurden sie aber von FPGAs abgelöst.

von Strubi (Gast)


Lesenswert?

alex le. schrieb:
> danke für die gute Erklärung:),
>
> ich wollt nun fragen welche Entwicklungsumgebung sollte ich downloaden
> um bei eventuellen Fragen hier im Blog am ehesten ne Antwort bekommen
> wenns mal Probleme gibt
>
> Altera oder Xilinx??
>

Es gäbe auch noch Lattice, als bisheriger Xilinx-User hat mich deren 
Toolchain positiv überrascht.

Aber ganz abgesehen vom Kommerziellen: Es gibt einen schicken Simulator 
namens GHDL (sowohl Windows als auch Linux), und GTKwave, mit dem man 
schon eine Menge zum Nulltarif machen kann.
Und ganz ehrlich: Ich habe die Evalversionen von 10'000 Euro teuren 
Simulations-tools in den Papierkorb verschoben, denn mit GHDL geht's 
schneller und es geht vor allem viel mehr.
Nachteil: Ausser GTKwave ist es nicht zum Klicken, aber GHDL bringt 
schon eine eigene kleine 'Make'-ähnliche Synchronisation der Builds mit.
Noch ein Nachteil: GHDL streikt bei gewissen verstümmelten Dateien (wie 
'obfuscated' VHDL von Xilinx). Muss man einfach für später wissen, wenn 
man konkrete Projekte planen muss.

Grüsse,

- Strubi

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


Lesenswert?

user schrieb:
> Wobei die Übergänge zwischen FPGA/CPLD fliesend sind.
Lattice verkauft den Wolf auch im Schafspelz...   ;-)
Beitrag "Re: Umgang mit CPLD's lernen ( Altera od XILINX) via Dev Kit"

von Alex X. (behindi)


Lesenswert?

Danke Strubi für deine Hilfe

ich hab mir jetzt mal PDFs zur Einleitung in die VHDL sprache gelesen 
und nun auch das Buch VHDL-Syntese beschafft, das Problem ist nur dass 
ich es nicht schaffe mich bei Alterra zu registrieren (ab ende der 
registrierung steht dass die Registrierung fehlgeschlagen ist)(um 
Quartus II downloaden,
auch GHDL hab ich runtergeladen aber irgentwie schaff ich es nicht diese 
Programm auszuführen:(

weiß jemand wie ich GHDL zum lafen bringen kann?

danke

gruß Alex

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.