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
> 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.
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?
>>> * 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
Für eine brauchbare Beantwortung fehlen grundlegende Angaben, wie µC-Typ und verwendeter Compiler.
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
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.
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.