www.mikrocontroller.net

Forum: FPGA, VHDL & Co. FPGA dauerhaft Programmieren


Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich habe hier einen CycloneII FPGA mit externem FLAS und SRAM auf dem 
Board. Nun möchte ich das FPGA Design aus Quartus und die dazugehörige 
Softwara aus der NIOS IDE so auf das Board programmieren, dass es nach 
dem einschalten automatische gestartet wird. Bisher muss ich immer erst 
mit Quartus den FPGA programmieren und dann die Software mit der NIOS 
IDE starten.


Wie bekomme ich das hin?

Danke!

Autor: Valerij Matrose (fpga-dev)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was für ein Board / was für ein Flash? Unsere hellseherischen 
Fähigkeiten sind montags nicht besonders ausgeprägt ;)

Gruß,

fpga-dev

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also der SRAM ist von ISSI, Typ IS61WV102416BLL und es wurde mit dem 
SOPC Builder bereits eine Komponente in den NIOS eingebaut und passend 
Verdrahtet. Das Funktioniert soweit auch, da meine Software immer in den 
SRAM geschrieben wird und auch von dort startet.

Für den FLASH wurde in den NIOS ein EPCS Flashcontroler eingefügt. Der 
Controler trägt die Aufschrift 25P16V6P. Ich denke mal, dass die 
Ansteuerung soweit Funktionieren müsste, da das Design als 
beispieldesign des Herstellers rausgegeben wurde.

Autor: Valerij Matrose (fpga-dev)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Um den Flash in einem bestehenden NIOS-System mit Inhalten zu 
programmieren, benutzt man am besten den "Flash Programmer" aus der 
NIOS-IDE (Tools->Flash Programmer). Da musst Du nur die 
Datei/Zieladressbereich im Flash vorgeben. Vorher muss der FPGA-Baustein 
natürlich mit dem entsprechenden NIOS-System konfiguriert werden.

Gruß,

fpga-dev

Autor: ... ... (docean) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibts da nicht noch so einen Schalter am Rand der Platine der bestimmt 
wohin geschrieben wird?

Oder war der nur für die LEs?

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wie programmiere ich dann die FPGA konfiguration dauerhaft?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Sebastian (Gast)

>Und wie programmiere ich dann die FPGA konfiguration dauerhaft?

Ich kenne das Board nicht, aber sicher ist dort ein 
Konfigurationsspeicher drauf, von dem aus das FPGA seine Konfiguration 
selber laden kann. Muss man ggf. über Jumper einstellen.

MfG
falk

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Ganze dürfte daran scheitern, daß ein leeres FPGA garnichts enthält, 
also auch keinen NIOS mit Flashcontroller.

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das sehe ich ja ein und wie bringe ich dann die Konfiguration 
dauerhaft auf das Board? Das sollte doch eigentlich über den FLAS 
Speicher gehen oder sehe ich das falsch?

Autor: Valerij Matrose (fpga-dev)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Sebastian:

mach bitte folgendes:

1. SOPC-Builder starten,
2. Unter dem "System Component"-Reiter über "Memory & Memory 
Controller->Flash->EPCS serial Controller" rechts klicken und "Data 
Sheet" auswählen,
3. PDF "EPCS Device Controller Core" genau durchlesen, den Verweisen auf 
weitere Dokumente folgen und diese auch lesen,
4. Falls dann etwas nicht klar sein sollte, weiter hier posten.

Gruß,

fpga-dev

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So ein FPGA braucht für den Stand-Alone Betrieb einen Platform Flash, 
wenn er keinen internen hat. Ich denke, der kann nicht aus dem Flash 
booten, der da irgendwo dran hängt. Hier stehen die 3 Modi zum Booten 
drin: http://www.altera.com/literature/hb/cyc2/cyc2_cii51003.pdf Seite 
6, Tabelle unten. AS wird wohl das sein, was bei Xilinx der Master 
Serial Mode ist, sprich der FPGA zieht sich aus einem externen seriellen 
EEPROM seine Konfiguration.

Autor: Roger Steiner (edge)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian,

der 25P16V6P wird, wenn er korrekt ans FPGA angeschlossen ist, dein 
Konfigurationsspeicher (Platform FLASH) sein. Das Programieren des FLASH 
geschieht entweder ueber den Quartus Programmer oder den Nios Flash 
Programmer.

Fuer den Nios Flash Programmer muss auf dem FPGA schon ein Design 
laufen, welches mindestens einen Nios und einen EPCS Controller 
enthaelt. Auch musst du die Basisaddresse des EPCS controllers wissen.

Der Quartus Programmer hat die moeglichkeit ein eigenes minimal design 
ins FPGA zu laden, so dass fuer ihn das EPCS zugaenglich wird.
Dazu kann man im Quartus (File->Convert Programming Files...) ein JIC 
(JTAG Indirect Configuration) erstellen, welches man dann im Quartus 
Programmer oeffnet.

Wenn du den Weg ueber die EDS command shell waehlst, hier ein paar Tips:

sof2flash --input=mydesign.sof --output=mydesign.flash --epcs --compress
nios2-elf-strip mysoftware.elf
elf2flash --input=mysoftware.elf --output=mysoftware.flash --epcs 
--after=mydesign.flash

dann kannst du beide files mit dem Nios programmer flashen, aber vorher 
dein design (SOF) mit dem Quartus Programmer ins FPGA laden.

nios2-flash-programmer --cable 1 --epcs --base <epcs_base> 
mydesign.flash
nios2-flash-programmer --cable 1 --epcs --base <epcs_base> 
mysoftware.flash

Vielleicht geht das fuer dich komfortabler mit dem Flash Programmer aus 
dem Nios EDS, aber mousen ist nicht so mein ding.

Cheers, Roger

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.