Forum: Mikrocontroller und Digitale Elektronik STm32L151Re Flash-Speicher


von Arne (Gast)


Lesenswert?

Hallo zusammen,
ich bin gerade etwas am verzweifeln nachdem ich mir jetzt verschiedene 
Bücher angeguckt habe was die Adressierung von Speichern angeht.
Ich habe eine Stm32L151Re im Datenblatt steht das der den folgenden 
Speicher hat:
Memories
512 KB Flash memory with ECC (with 2 banks of 256 KB enabling RWW 
capability)
Bedeutet two banks das der Speicher physikalisch aus 2 Chips besteht?
Woran erkenne ich wieviel Bits pro Adresse im Speicher abgelegt werden? 
Beziehungsweise nach was muss ich suchen um herauszufinden wie der 
Speicher aufegebaut ist?
Einen schönen Abend
Mit freundlichen Grüßen
Arne

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Ziehe Dir RM0038.pdf Kapitel 3 rein. "Two banks" bedeutet, dass man auf 
einer Bank schreiben kann und auf der anderen lesen, also z.B. auch das 
Schreibprogramm ausfuehren kann. Schreibt und liest man auf der gleichen 
Bank, bleibt das Programm immer waehrend des Schreibens haengen. Das 
macht fuer das Schreibprogramm selbst nichts, aber auch Interrupts 
muessen ihren Programmcode aus dem Flash holen und bleiben also genauso 
haengen und das kann bei zeitkritischen Aktionen Fehler verursachen. 
Abhilfe schafft dann, wichtige Programmteile im RAM zu halten.

von Arne (Gast)


Lesenswert?

Super danke Uwe.
Bleibt nur noch die Frage offen wieviel Byte unter jeder Adresse 
abgelegt werden können bezeziehungsweise gelesen.
Unter Kapitel 3.3 steht :
The Flash memory is read by 64 bits or 32 bits.
Heisst das dsa unter jeder Adresse im Speicher ein Doppelwort abgelegt 
wird. Ich kann über ein Debug-Tool wie z.B. J-Link auch einzelne Bytes 
auslesen.
Gruß
Arne

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Der wirkliche Zugriff auf das Flash erfolgt mit 64 bit (ICode 
Interface), wenn Programmcode gelesen wird und mit 32 bit, falls dort 
Daten liegen (Dcode). Mit dem 64-bit ICode Zugriff hat man dann schon 
die naechsten Code Kommando bereit und muss nicht wieder auf den 
Flashzugriff warten, falls keine Spruenge auftreten. Trotzdem liegt 
unter jeder Byte-Adresse nur ein Byte.

von Arne (Gast)


Lesenswert?

Supoer vielen Dank Uwe.

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
Noch kein Account? Hier anmelden.