Hallo Forum, ich habe mich bisher mit STM32'ern und auch schon mit FPGA's u.A. dem DE0-Nano Board beschäftigt. Wie müsste die minimale Schaltung aussehen, um eine Platine zu entwickeln, auf der ich die FPGA Firmware aus dem STM32 lade? Gibt es in der Richtung offene Projekte, bei denen man sich etwas Ideen holen könnte? Vielen Dank für eure Ideen!
Naja, so ein üblicher Ladebaustein (z.B EPCS bei Altera) hat 1,4,16 oder 64 MBit! Wenn das dein STM32 neben deinem normalen Programm auf den uC nicht gerade noch übrig hat, brauchst du ein externes Flash.
Naja, wenn du evtl. sowieso ne SD-Card am STM32 hast wäre das ja kein Problem. Aber 1xSDIO und 1xSPI (oder 2x SPI) brauchst du auch noch. Nachteil ist halt auch noch das es etwas länger dauert wenn der STM den FPGA lädt wie wenn der direkt an einem EPCS/Q hängt.
Es gibt aber auch kleinere FPGAs die mit 2 MBit auskommen. Ein Spartan 3 oder so. Natürlich ist das Teil recht alt. Nichts für neue Designs.
Am beispiel Altera wäre das dann im einfachsten Fall "Figure 8–13. Single-Device PS Configuration Using an External Host". Am Ende ist nicht mehr als dem FPGA den Konfigurationsspeicher vorzugaukeln wie in "Figure 8–16. PS Configuration Timing Waveform". ( https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/cyclone-iv/cyiv-51008.pdf ) Es geht auch noch simpler - mit einem CPLD. Sie sind nicht-flüchtig, das Konfigurieren (zur Laufzeit) entfällt. Allerdings stellt Dich die Implementierung je nach Umfang dann vor eine echte Aufgabe.
Toni schrieb: > Es geht auch noch simpler - mit einem CPLD. Oder halt ein MAX10. Die Frage ist, ob man dann noch nen STM braucht oder ob dann ein NIOS reicht.
Toni schrieb: > Frank schrieb: > Oder halt ein MAX10. > > Ich hoffe Du sitzt gerade - die laufen auch unter CPLD. Na dann sag das mal Alters: https://www.altera.com/products/fpga/max-series/max-10/overview.smartphone.highResolutionDisplay.html Aber lassen wir die Haarspalterei.
Ich wollte auch mal den DE0-nano Board in einem Projekt verwenden, habe aber eine eigene Platine entwickelt. Das problem bei der Sache ist folgendes: Um FPGA auf dem DE0-nano Board von einem Microcontroller zu konfigurieren (in meinem Fall so genannte "Passive Serial" Mode), braucht man bestimmte PINS, die nicht rausgeführt sind. Auf dem Schaltplan des DE0-nano Boards ist auch nicht zu erkennen (genau diese Seite ist leer!), wie ich an diese Pins kommen könnte. Altera's Support hat sich geweigert diese seite zu veröffentlichen. Also, schade... MfG
Nur so am Rande: Andere Mütter haben auch schöne Töchter, wie z.B. die Lattice MACHXO2-Mädels. Sind prima von aussen zu konfigurieren, externes Flash entfällt, und die SlaveSerial-Prozedur ist gut dokumentiert und funktioniert auch entsprechend. Nur, falls es bei Altera an der Geheimniskrämerei scheitern sollte...
> Wie müsste die minimale Schaltung aussehen, um eine Platine zu > entwickeln, auf der ich die FPGA Firmware aus dem STM32 lade? > Gibt es in der Richtung offene Projekte, bei denen man sich etwas Ideen > holen könnte? Minmale Schaltung: STM32(Master) an den JTAG vom FPGA(Slave) legen. Als herstellerübergreifend würde ich dann auf SVF gehen und einen SVF-Player in deinem ARM als Software schreiben. Einstieg für deine Software: http://www.clifford.at/libxsvf/
Fitzebutze schrieb: > Nur so am Rande: > Andere Mütter haben auch schöne Töchter, wie z.B. die Lattice > MACHXO2-Mädels. für den beschriebenen Einsatz kleiner uC + CPLD hab ich gerade eine kleine Adapterplatine designd, welche einen 1200er MACH XO2 in einen schmalen 24 poligen DIP Baustein (30,6 * 10mm) verwandelt. Verfügbar sind 18 IOs, zwei IO-Bänke (z.B.) zur Verwendung als Levelshifter. Der MACH XO2 lässt sich über I2C oder SPI reprogrammieren und hat beide Schnittstellen sowie einen Timer in Hardware integriert und spart "Fabrik". Gruß Bergy
:
Bearbeitet durch User
Andreas Bergmann schrieb: > spart "Fabrik". Die deutsche Übersetzung des englischen "Fabric" wäre "Geflecht" oder "Gewebe"...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.