Umwandeln von *.elf (Nios II) nach *.flash für Altera Board Update Portal

Gast #2215904
Lesenswert?

Hallo zusammen,

wir haben hier ein Stratix IV Development Board (Transceiver Signal 
Integrity Development Kit, Stratix IV GX Edition).
Unser Design enthält einen Nios II Prozessor mit on-chip Memory (1MiB). 
Die Adresse im SOPC-Builder ist 0x00000000 bis 0x000fffff.
In der CPU ist der Reset Vector auf den onchip-memory mit einem Offset 
von 0x0 eingestellt.

Bis jetzt haben wir immer die Hardware (*.sof) per Altera Programmer 
über USB aufgespielt und dann die Software direkt über Eclipse 
(Rechtsklick - Run As - Nios II Hardware) gestartet.
Dies funktioniert problemlos.

Nun müssen die Configurations-Files fest in den Flash des Boardes 
(Aufteilung siehe Anhang). Altea bietet hierfür das "Board Update 
Portal" an (gestartet per Jumper auf dem Board).

Mit dem Befehl
1
sof2flash --input=filename.sof --output=filename_hw.flash --offset=0xC20000 --pfl --optionbit=0x18000 --programmingmode=FPP
hat das umwandeln der .sof Datei geklappt.

Die Software habe ich mit dem Befehl
1
elf2flash --base=0xA000000 --end=0xBFFFFFF --reset=0xA020000 --input=filename.elf --output=filenmae_sw.flash --boot=$SOPC_KIT_NIOS2/components/altera_nios2/boot_loader_cfi.srec
ebenfalls umgewandelt.

Hierbei kommt die Warnung:
1
(WARNUNG) elf2flash: Supplied reset address: 0xa020000 differs from the elf file reset vector: 0x0.

Nach dem Hochladen per Board Update Portal startet die übrige Hardware 
aber der Nios regt sich nicht. Manuell über Eclipse lässt er sich aber 
ganz normal starten.

Sind irgendwelche Adressen falsch eingestellt? Ich habe die Parameter 
direkt vom Beispiel im BUP übernommen.

Kann mir jemand erklären wo welche Adressen eingestellt werden müssen?
Habe ich sonnst irgendetwas übersehen?

Danke
Angehängte Dateien:
Gast #2216774
Lesenswert?

Student schrieb:
> Sind irgendwelche Adressen falsch eingestellt? Ich habe die Parameter
> direkt vom Beispiel im BUP übernommen.

Wenn Dein Speicher von 0x00000000 bis 0x000fffff geht, würde ich in der 
folgenden Zeile mal die Parameter base, end und reset anpassen...

> elf2flash --base=0xA000000 --end=0xBFFFFFF --reset=0xA020000
> --input=filename.elf --output=filenmae_sw.flash
> --boot=$SOPC_KIT_NIOS2/components/altera_nios2/boot_loader_cfi.srec

Duke
Gast #2232724
Lesenswert?

Danke für die Antwort.

Heute bin ich endlich zum testen gekommen.

Leider funktioniert das mit --base=0x0 --end=0xFFFFF --reset=0x0 auch 
nicht.

Müssen die Adressen des Flash-Bausteins (siehe adressen.png) 
berücksichtigt werden?
Wo wird festgelegt dass die Software auf dem Flash in den onchip-memory 
kopiert wird?

mfg

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren