mikrocontroller.net

Forum: FPGA, VHDL & Co. FPGA mit internem Flash


Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Vor Kurzem habe ich mir ein FPGA-Board von XILINX bestellt.
Auf dem Board befindet sich der XC4VFX12.

Als ich das Board genauer betrachtete, erkannte ich, dass sich
zusätzlich externes Flash und externes RAM auf dem Board befinden.

So wie ich das verstanden habe, wird das Programm in das Flash geladen.
Nach einem Power-Up wird nun dieses Flash ins RAM geladen und
ausgeführt.

Wenn man nun selbst ein kleines Board mit einem FPGA entwerfen möchte,
benötigt man ein Menge an externen Bauteilen, wie z.B. externes Flash,
RAM, mehrere Betriebsspannungen usw. Durch die externen
Speicherbausteine nimmt auch die Störsicherheit ab.

Gibt es FPGA-Bausteine, die wie Mikrocontroller schon Flash und RAM
soweit integriert haben, dass man fast keine externen Bauteile mehr
benötigt?

Danke für eure Hilfe.

Tschüss.

Martin

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die MAX II Serie von Altera ist eine Mischung aus CPLD und FPGA. FPGA
ähnlicher Aufbau, aber die Programmierung wird im Chip gespeichert.

Wie wäre es mit einer Kombination aus FPGA und seriellem Flash?

Ansonsten mal bei Lattice vorbei schauen. Ich meine die hätten nicht
flüchtige FPGAs im Programm.

Gruß Jörn

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht ganz toll aus.
Worin liegt der Unterschied zwischen einem FPGA und einem CPLD?
Worin liegen hier die Vorteile oder Nachteile?

Kann man beide Typen mittels VHDL programmieren?

Danke für eure Antworten.

Tschüss
Martin

Autor: Henning (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

also wenn ich das richtig sehe (ich beschäftige mich auch gerade
intensiver mit der sache) dann kannst du beide in VHDL programmieren.

CPLDs bestehen im prinzip aus mehreren PALs, die über eine
Steuereinheit miteinander verbunden sind. CPLDs ermöglichen nur relativ
wenige komplexe logikverknüpfungen, wohingegen FPGAs deutlich mehr platz
zur verfügungen haben.
bei FPGAs ist es nicht möglich eine konkrete aussage über den
zeitlichen verlauf zu machen, da intern mehre kleine logikeinheiten
miteinander verbuunden werden, so dass es durch die laufzeiten zwischen
den einheiten zu verzögerungen kommen kann. bei CPLDs sind diese zeiten
hingegen konkret vorrauszusagen.

das solls von mir und meine gerade angelesenen wissensstand gewesen
sein, vielleicht hats ja ein wenig geholfen.
gruß

Autor: Stefan Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Martin!

Vielleicht wäre ja ein FPSLIC-Board von Atmel das richtige für dich:
http://www.atmel.com/products/FPSLIC/
bzw. http://www.atmel.com/dyn/resources/prod_documents/1138S.pdf

In dem verwendeten Chip sind FPGA, Microcontroller, RAM, Flash - also
alles auf einmal - drin und die Komponenten sind auch recht flexibel
kombinierbar. Zu der Enticklungsplatine gehört auch eine umfangreiche
Entwicklungssoftware, wobei die VHDL-Entwicklungsumgebung nur für ein
halbes Jahr freigeschalten wird. Die hohen Kosten entfallen also zum
allergrößten Teil auf die Software - die eigentliche Hardware sollte
nicht sehr teuer sein, obwohl ich nicht weiß, ob diese einzel
erhältlich ist...

MfG, Stefan

Autor: antti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das einzige fpga mit internen flash sind die FUSION FPGAs from Actel,
habe mit gerade ein starterkit bestellt.

ADC, 256KByte user flash, CMOS drivers, +-12V analog input, nur eine
spannung 3.3V was kann man noch wunschen

Antti

Autor: Salvatore (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"bei FPGAs ist es nicht möglich eine konkrete aussage über den
zeitlichen verlauf zu machen,"

Klar kann man das! Man muss nur die Schaltung hardwareorientiert
aufbauen. Wenn man natürlich nur HDL formuliert und dem Compiler nichts
"contrained", dann optimiert der wie er will. Die Substrukturen und
Realisationsformen hat mnan dann eben nicht in der Hand.

Letztlich ist der Freiheitsgrad der FPGAs aber genau der Vorteil, der
hier genutz wird!

Autor: Zhomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lattice hat ebenfalls fpgas mit Flash onchip.....

Gruß Thomas

Autor: Antti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
lattice, altera und actel haben FPGAs mit configuration in Flash

aber der Actel FUSION ist das einzige der user programable flash fur sw
zwecke integirert hat

antti

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Danke für eure großartigen Antworten und Hilfen.
Ich stehe bei VHDL gerade noch am Anfang.
Mir erscheint diese Sprache sehr viel umfangreicher, als
z.B. C. Auch ist das mit den sequenziellen und parallelen
Abläufen nicht ganz so einfach.

Ich weiß, dass man mit VHDL ganze Prozessorkerne integrieren kann.
Dies spielt aber mit großer Sicherheit in einer ganz anderen
Liega.

Kann man aber mit gewöhnlichem VHDL z.B. eine Gerätesteuerung
aufbauen,
für die normalerweise die Mikrocontroller so gut geeignet sind?

Wenn man jetzt ein und dasselbe Projekt einmal mit einem FPGA und
einmal mit einem Mikrocontroller realisieren würde, würde man hier wenn
man einen FPGA hernimmt länger für die Programmierung brauchen?

Das Projekt würde z.B. bestehen aus:
Schrittmotoren sollten angesteuert, also getaktet werden.
Dann soll mal mit float-Werten herumgerechnet werden.
Eine serielle Kommunikation soll bestehen.
Ein LCD soll angesteuert werden.
Auf ensprechende Taster soll das Gerät mit LCD-Ausgaben oder drehen der
Schrittmotoren reagieren.

Ist so ein Projekt mit einem FPGA ebensoeinfach zu realisieren oder
nicht?
Wo liegen die Grenzen von VHDL?
FPGAs müssen ja auch Nachteile haben - Ist für so eine Steuerung
ein µC besser geeignet oder ist das Ganze mit µCern viel schneller
realisiert?

Danke Tschüss.
Martin

Autor: Xenu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Mir erscheint diese Sprache sehr viel umfangreicher, als
>z.B. C. Auch ist das mit den sequenziellen und parallelen
>Abläufen nicht ganz so einfach.

VHDL ist keine "Programmiersprache", sondern eine
Hardwarebeschreibungssprache. D.h. Du beschreibst digitale Schaltungen
mit Hilfe von Text. In einem FPGA oder CPLD laufen keine Programme ab,
sondern der VHDL-Code wird in eine Konfigurationsdatei umgewandelt, die
den FPGA dann so konfiguriert, daß er sich (hoffentlich) so verhält, wie

Du die digitale Schaltung in VHDL beschrieben hast.
Wenn Du vernünftigen VHDL-Code schreiben willst, musst Du Ahnung von
Digitaldesign haben. Wenn Du das hast, ist VHDL (und z.B. auch Verilog)
ziemlich einfach.

>Kann man aber mit gewöhnlichem VHDL z.B. eine Gerätesteuerung
>aufbauen, für die normalerweise die Mikrocontroller so gut geeignet
>sind?

Können schon, aber machen würde ich es nicht.
Alles was man mit Mikrocontroller hinbekommt, würde ich auch mit ihnen
realisieren. FPGAs nehme ich, wenn ich Geschwindigkeit brauche.

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.