externes Flash

Gast #1692262
Lesenswert?
• ▲
▼
Hi Leute!
Ich habe eine prinzipielle Frage. Das interne Flash ist nicht 
ausreichend, also kann man ja ein externes Flash dranhängen.

Nun meine Frage:
* Wie wird das externe Flash programmiert?
* Wie schaut das im Code aus? Welche Codestücke werden dann im Flash 
abgelegt und wo?
* wie werden die dann aus dem externen Flash exekutiert?

Es geht nur ums Prinzip! Bitte um Hinweise :-)

thx
Gast #1692279
Lesenswert?
• ▲
▼
> Das interne Flash ist nicht ausreichend, also kann man ja ein externes
> Flash dranhängen.
Im Prinzip ja.

> * Wie wird das externe Flash programmiert?
kommt darauf an

> * Wie schaut das im Code aus? Welche Codestücke werden dann im Flash
> abgelegt und wo?
hängt davon ab...

> * wie werden die dann aus dem externen Flash exekutiert?
mal so mal so

> Bitte um Hinweise :-)
Es gibt nicht nur eine(n) Prozessor(architektur).
Grundsätzlich muss natürlich ein Businterface für externen 
(Programm)Speicher vorhanden sein.
Gast #1692284
Lesenswert?
• ▲
▼
Zwirbeljupp schrieb:
>> Das interne Flash ist nicht ausreichend, also kann man ja ein externes
>> Flash dranhängen.
> Im Prinzip ja.
>
>> * Wie wird das externe Flash programmiert?
> kommt darauf an
>
Was gibt's da für Möglichkeiten?

>> * Wie schaut das im Code aus? Welche Codestücke werden dann im Flash
>> abgelegt und wo?
> hängt davon ab...
>
Wovon? Wie sag ich das dieser Code im Flash liegt? Bzw. wie sag ich das 
dem Compile?

>> * wie werden die dann aus dem externen Flash exekutiert?
> mal so mal so
>
und zwar?

>> Bitte um Hinweise :-)
> Es gibt nicht nur eine(n) Prozessor(architektur).
> Grundsätzlich muss natürlich ein Businterface für externen
> (Programm)Speicher vorhanden sein.
Naja nehmen wir nen einfach Adress-Daten-Bus?
Gast #1692338
Lesenswert?
• ▲
▼
>>> * Wie wird das externe Flash programmiert?
>> kommt darauf an
> Was gibt's da für Möglichkeiten?
üblicherweise über einen Bootloader.

>>> * Wie schaut das im Code aus? Welche Codestücke werden dann im Flash
>>> abgelegt und wo?
>> hängt davon ab...
> Wovon? Wie sag ich das dieser Code im Flash liegt? Bzw. wie sag ich das
> dem Compile?
Dem Compiler ist das egal, der Linker muss über den externen Speicher 
bescheidwissen. Für sowas gibt es z.B. Linkerskripts. Aber wie gesagt: 
hängt davon ab (vom Prozessor, von der verwendeten 
Entwicklungsumgebung...)

>>> * wie werden die dann aus dem externen Flash exekutiert?
>> mal so mal so
> und zwar?
Wenn der externe Speicher so angebunden ist, dass der Prozessor darauf 
zugreifen kann, wie auf seinen internen Programmspeicher, dann brauchst 
Du Dich um nichts kümmern. Andernfalls musst Du den Code aus dem 
externen Speicher erstmal in einen internen Speicher kopieren, aus dem 
der Prozessor Befehle ausführen kann. Oder einen Befehlsinterpreter 
programmieren... oder oder oder... Alles recht hypothetisch
Gast #1692419
Lesenswert?
• ▲
▼
OK danke für die Info!

µC: LPC32x0
Compiler: GCC

Der genannteµC hat ein internes RAM von 256 kByte. Über ein 
angeschlossenes Flash kann über den Flash Controller der Programcode 
beim booten ins interne RAM geladen werden. Sehe ich das Richtig?

Kann der Programmcode größer sein als das interne RAM - so dass dies 
entsprechend nachgeladen werden kann?

Wie programmiere ich dan dieses externe Flash?

thx
#1692526
Lesenswert?
• ▲
▼
Ich schrieb:
> er genannteµC hat ein internes RAM von 256 kByte. Über ein
> angeschlossenes Flash kann über den Flash Controller der Programcode
> beim booten ins interne RAM geladen werden. Sehe ich das Richtig?
>

In deinem Startupcode must du halt dafuer sorgen das das Programm ins 
interne RAM kopiert wird oder das Progamm im externen Flash ausfuehren.
beides geht.

> Kann der Programmcode größer sein als das interne RAM - so dass dies
> entsprechend nachgeladen werden kann?
>

Theoretisch ja. Aber dann must dein Compiler das aber auch 
unterstuetzten.
Verschiedene Programmteile liegen ja dann im RAM auf den gleichen 
Addressen.
Wie soll der Compiler das unterscheiden ?  Der Compiler muss dann 
Codebanking beherrschen.

> Wie programmiere ich dan dieses externe Flash?

In dem du dir eine Programmierroutine zum flashen des externen Flash 
schreibst und die bei Inbetriebnahme dir deinen Code in externe Flash 
schreibt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.