mikrocontroller.net

Forum: FPGA, VHDL & Co. FPGA


Autor: Thomas Arndt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

laut Eurem Hinweis darf ich ja ins Betreff nicht Anfänger schreiben,
deshalb weise ich hier gleich darauf hin, daß ich einer bin :-)
Ich habe auch nur eine ganz kurze Frage: Was ein Mikrocontroller ist,
ist mir klar. Nun habe ich mich heute mal etwas genauer mit FPGA's
beschäftigt und sehe den Unterschied nicht so ganz. Ist ein FPGA nicht
eigentlich auch nichts anderes als ein Mikrocontroller bzw. vielmehr
als ein Mikroprozessor?

Gruß
t.a.

Autor: André Kronfeldt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein FPGA ist nichts anderes als voll viele Gatter, die man nach belieben
zusammenschalten kann. So kann unter anderem auch ein uC designed
werden.

Grüße,
André

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas

Es gibt Leute die sagen FPGAs seien weiche Hardware.
Da mann fast alles programmmieren kann.

MfG

Peter

Autor: Chaldäer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Das kommt auf die Anwendung, die Fähigkeit und das Durchhaltevermögen
des Entwicklers an. Ein µC hat den Vorteil, daß er in vielen Dingen
schon fertig entwickelt ist. Sprich, er kann mit einfachen Befehlen dem
EVA-Prinzp folgen (Eingabe, Verarbeitung, Ausgabe). Du mußt Dir wenig
Gedanken um Dinge wie Programmcounter oder 'wie sieht eine ALU aus?'
machen. Rechen- und Steuerwerk sind vorgegeben. Das geht zwar zu Kosten
der Flexibilität, vereinfacht eine Entwicklung aber ungemein.
Meinen letzten FPGA habe ich zwar vor ca. 8 Jahren programmiert, aber
sehr viel hat sich an den Prinzipien nicht verändert. (Korrigiert mich,
falls ich mich irre). Ich habe damals einen Prozessor auf einem FPGA
entwickelt. Das hieß, zwei Monate Arbeit, Schaltplane malen,
Simulieren, Bücher lesen und testen. Und am Ende beherrschte der
Proessor mal gerade 16 Assemblerbefehle. Die genaue Liste habe ich
nicht mehr im Kopf, so in etwa: MOV, ADD, SUB, IN, OUT, OR, XOR, NEG...
also nur das Nötigste. Zudem gab es nur vier Register, dafür aber eine
3-stufige Pipeline.
Bei anderen Dingen ist ein FPGA sicherlich ganz gut geeignet.
Beispielsweise um ein Protokoll zu implementieren oder eine TFT- oder
LCD-Ansteuerung. (Habe ich noch nicht gemacht, also legt mich nicht
darauf fest.)

Gruß,
Chaldäer

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe auch versucht mich ein wenig über FPGA's schlau zu machen.
Auch las ich des öfteren was André und Chaldäer erwähnten, dass man
damit einen µC nachbilden kann. Allerdings habe ich nur sehr
theoretische Abhandlungen zu dem Thema finden könne. Zugegeben, ich
weiss nichts über FPGA's und ich kann mir nur im entferntesten
vorstellen wie eine CPU aufgebaut ist. Aber ist es nicht so, dass
vielmehr Realisierungen eines µC mit einem FPGA absoluter Murks wäre?
Die Anzahl der Gatter dürfte doch bei weitem nicht ausreichen um ein
halbwegs anständiges Ergebniss zu bekommen. Oder sehe ich das falsch?
Ok, ich muss auch zugeben, dass ich nichtmal weiss, wieviele Gatter
sich in einem Standard-FPGA programmieren lassen, aber ich kann mir
nicht vorstellen dass es ausreichen würde um z.b. einen 4433 voll
nachzubilden.
Desswegen würde mich intressieren, was sich mit handelüblichen FPGA's
(z.b. Xilinix ISPLSI1016E) überhaupt realisieren lässt, was die
Komplexität betrifft. Ich meine den Hardwaretechnischen Aspekt und
nicht den Aufwand ein entsprechendes VHDL-Skript zu schreiben.

Aven

Autor: André Kronfeldt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

da täusch Dich mal nicht was die Komplexität angeht.
Das Programmieren ist garnicht mal so schwer. Kleine
Projekte hab ich auch schon gemacht. Zwar keine uC, aber
einen LCD-Controller.
Schau mal auf www.opencores.org, da wirste fündig.
Selbst AMD testet die Prozessoren auf FPGAs. Das sind aber große und
zudem auch mehrere verschaltete.

Grüße,
André

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun ich denke mir halt dass ein frei programmierbares logisches Gatter
sicherlich um ein enormes komplexer ist wie ein fest definiertes.
Aufgrund dieses Hardwaremehraufwandes denke ich halt dass dies nicht so
einfach möglich ist.
Ich hatte einmal versucht mich mit FPGA's zu beschäftigen gab jedoch
auf, nach dem ich nur theoretisches Material dazu fande. Auch
VHDL-Tutorial haben mir nichts genützt, da ich eher praktisch
orientiert bin. Ich lerne am besten wenn ich etwas nachbaue und dann
verändere. Solche Projektseiten suchte ich jedoch vergebens. Korrigiert
mich, falls ich etwas übersehen habe.

Sven

Autor: NoName (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die AVR-Kerne sind auch in VHDL geschrieben (Microcode).
Der AT90S1200 war der erste dieser Gattung und ist aus einer
Diplomarbeit der Herren Ansgard und V???? entstanden.
Ist schon ein mächtiges Werkzeug, wenn mans beherrscht. Ich kanns
leider (noch) nicht...

Autor: tobias hofer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die heutige technik der fpga ist sehr weit entwickelt. die komplexität
und die grösse übersteigen schon bald die vorstellung.
die high end fpgas z.b virtex familie von xilinx haben ein volumen von
mehreren milionen gattern. die haben dann aber auch ihren preis.

es gibt aber auch fpgas, z.b spartan-II mit 100k gattern und internem
block ram die nicht so viel kosten, d.h nur ca. 100EURO.

damit kann man problemlos ganze dsp cores integrieren. der grosse
vorteil besteht dann darin, das alles was in einem fpga implementiert
ist ja reine hardware ist. so kann dann z.b eine mulitplikation in
einem takzyklus realisiert werden.
zur programierung, da gibt es verschiedene möglichkeiten.

man kann z.b bsp. das schaltungdesign mittels schematic vornehmen, da
können dann gatter zähler als schematic blöcke integriert werden und
zusammen geschaltet werden.

dann gibt es die möglichkeit vhdl. das ist eine sehr mächtige hardware
beschreibungssprache die mittlerweile auch standart ist.es braucht
jedoch seine zeit bis man damit umgehen kann. vorallem das umdenken vom
sequenziellen denken ist am anfang eher schwierig.

dann gibt es auch verschieden tools wie z.b den core generator. mittels
eines solchen werkzeugs kann man z.b eine fir filter mittels simulink
u. matlab simulieren und der generator generiert daraus den synthese
fähigen vhdl code. solche werkzeuge haben aber auch ihren preis.

die ganzen synthese werkzeuge sind in ihrer grundfunktionalität dafür
gratis vom hersteller verfügbar.

tobias


ich persönlich denke das die bausteine fpga und cpld die zukunft der
digitalen siganlverarbeitung sind. eine ähnliche performance wird man
mit herkömmlichen prozessoren nicht hinbekommen.

auf jeden fall ein sehr interessantes und zukunftträchtiges gebiet.

es

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

FPGA's haben einen Nachteil: Kosten! Deswegen ist ihr Einsatzgebiet
noch sehr eng begrenzt. Ist die Anforderung an die
Verarbeitungsgeschwindigkeit eher gering reicht ein µC oder ein DSP.
Ist die benötigte Verarbeitungsgeschwindigkeit sehr hoch aber auch die
Stückzahl etwas höhr lohnt sich ein ASIC (der sich aus dem VHDL
syntethisieren läßt) Bleibt der kleine Bereich der kleinen Stückzahlen
und hohen Verarbeitungsgeschwindigkeiten.

Was tot ist sind große TTL-Gräber. Da nimmt man einen CPLD (große
GAL's)

Matthias

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.