mikrocontroller.net

Forum: FPGA, VHDL & Co. FPGA über STM32 programmieren


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.
Autor: Ramazan A. (bruce)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mir ein FPGA Bord zugelegt.

Ziel ist es, den FPGA "CYCLONE IV" über ein STM32 uC zu programmieren.

Da ich glaube das der interne RAM des STM32 zu klein ist, habe ich mal 
im Datenblatt des FPGAs nachgeuckt.

Dort ist zu sehen, das die Verbindung über einen externen memory 
Baustein funtioniert. Das ganze nennt sich "Single-Device PS 
Configuration Using an External Host" sihe Bild.

Meine Frage ist.

Könnte ich diesen Baustein benutzten oder muss ich noch auf was achten?

https://de.rs-online.com/web/p/sram/8032181/


Wenn jemand vielleicht einen anderen Baustein empfählt oder eine anderen 
Lösungsweg hat, würde ich mich über die Hilfe sehr freuen.

Gruß

Bruce

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Ramazan A. schrieb:
> Ziel ist es, den FPGA "CYCLONE IV" über ein STM32 uC zu programmieren.
Du meinst, du willst ihn nach dem Einschalten konfigurieren.

> Ziel ist es, den FPGA "CYCLONE IV" über ein STM32 uC zu programmieren.
Warum?

> Da ich glaube das der interne RAM des STM32 zu klein ist, habe ich mal
> im Datenblatt des FPGAs nachgeuckt.
Wozu brauchst du da ein RAM? Lade die Konfiguration doch einfach aus 
einem SPI-Flash und schiebe sie ins FPGA. Das kann das FPGA übrigens 
sogar ganz allein, ohne µC.

Ramazan A. schrieb:
> Könnte ich diesen Baustein benutzten oder muss ich noch auf was achten?
Schon der kleinste Cyclone4 braucht über 350kB Speicher für den 
Raw-Bitstream. Komprimiert sicher immer noch 40-50% davon.

Mehr zum Thema Konfiguration deines FPGAs siehe dort:
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/cyc/cyc_c51013.pdf

: Bearbeitet durch Moderator
Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> anderen Baustein

EPCS4SI8N

Autor: Ramazan A. (bruce)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für deine Antwort.

Ich wollte halt bestimmte Aufgaben mit dem uC machen und der FPGA soll 
gleichzeitig andere Aufgaben bearbeiten.

Da ich ab und an man das Programm  ändern möchte, dachte ich mir es 
würde so funktionieren wie ich aus dem Datenblatt gesehen habe.

Gruß

Autor: Ramazan A. (bruce)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... schrieb:
>> anderen Baustein
>
> EPCS4SI8N

Danke schön.

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ramazan A. schrieb:
> Da ich ab und an man das Programm  ändern möchte, dachte ich mir es
> würde so funktionieren wie ich aus dem Datenblatt gesehen habe.
Du willst die KONFIGURATION des FPGAs während der Laufzeit (teilweise) 
ändern? Dein Stichwort ist dann "Reconfigurable FPGA" oder "Partial 
Reconfiguration FPGA".
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/cyclone-iv/cyiv-52003.pdf

Oder willst du einfach nur beim nächsten Start eine neue Konfiguration 
ins FPGA bekommen?

: Bearbeitet durch Moderator
Autor: Markus F. (mfro)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Ramazan A. (bruce)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>
> Oder willst du einfach nur beim nächsten Start eine neue Konfiguration
> ins FPGA bekommen?

Ja genau, tut mir leid wenn ich mich falsch ausgedrückt habe.

Gruß von Bruce

Autor: Andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Frage ist doch: Woher kommen diese neuen Konfigurationsdaten?
Ist am STM32 eine SD Karte angeschlossen, die die Konfigurationen 
enthält, oder kommen sie vielleicht von einem PC via USB?

In beiden Fällen musst du die Daten nicht als ganzes ins RAM des STM32 
speichern, sondern kannst sie direkt beim Empfangen oder Lesen von der 
SD Karte seriell zum FPGA schicken und jedesmal einen Clockimpuls 
generieren, allenfalls braucht es einen kleinen Pufferspeicher.

Autor: Holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
grab the bitstream from SD-card and program the FPGA.

LINK:
https://stackoverflow.com/questions/43664395/is-it-possible-to-make-zybo-board-work-from-sd-card-configuration-only-with-bit

Elektor hat mal ein Board mit FPGA und CPU gemacht.
Via CPU und SD Card konnte dann das FPGA konfiguriert werden.

Gruss Holger.

Autor: Holger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier kann man das alte FPGA an LPT PORT via externer CPU oder sogar WIfi 
Webserver configurieren.

Autor: freelancer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wurde hier schonmal gemacht:

(runterscrollen bis FPGA_Library)

http://mikrocontroller.bplaced.net/wordpress/?page_id=1176

Autor: Ramazan A. (bruce)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank, für die ganzen informationen.

Ich lese mir jetzt mal alles in Ruhe druch und mach mich dann an die 
Arbeit.

Gruß

Autor: Holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier noch der TAB via JTAG.

Youtube-Video "JTAG TAP Controller Tutorial"

Leider ist da ein kleiner Fehler drin ... der vor dem Last Clock muss 
der
TMS Port mit hochgezogen werden. So wird die State-Engine richtig im 
Protokoll bedient.

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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.