Flash - Bank

Gast #3044215
Lesenswert?
• ▲
▼
Hi,

Habe grad das "miniModul515c" mit dem Mikrokontroller "Siemens 80c515c" 
vor mir liegen.
Der Mikrokontroller hat ein Adressraum von 64-KByte.
Auf dem Entwicklungsboard können jedoch insgesamt 512-KByte an 
Flash-Speicher angebracht werden.
Um den kompletten Flash-Speicher adressieren zu können verwendet man 
"Bänke", zwischen denen man hin und her schaltet. Anscheinend wird das 
mit den Bits FA18 bis FA16 im Controlregister1 gemacht. Es heißt 
"FA18"-"FA16" wären "hohe Adressleitungen".
Was ich nicht verstehe: Was sind hohe Adressleitungen und wie wird genau 
zwischen den 64-KByte-Bänken des Flash-Speichers hin und hergeschaltet?
#3044224
Lesenswert?
• ▲
▼
Üblicher Weise sind die Bänke 32kB groß, wobei die erste Bank 
0x0000-0x7FFF immer aktiv ist. Und darin befindet sich der Umschaltcode 
für die restlichen Bänke, die nach 0x8000-0xFFFF gemappt werden.
Umgeschaltet wird mit einem CPLD in XDATA.
Die Interruptvectoren und der Umschaltcode sind damit immer erreichbar.
Gast #3044614
Lesenswert?
• ▲
▼
Aber sagen wirs mal so: Der reine Programmierer, der mit der 
Entwicklungsumgebung von Keil arbeitet, dürfte wahrscheinlich von all 
diesen Details sowieso nichts mitbekommen? Das mit "CPLD", den 
Interruptvektoren und dem Umschaltcode ist sowieso alles vorgegeben / 
vorkonfiguriert oder?

gruß
#3044644
Lesenswert?
• ▲
▼
Der Programmierer muß schon wissen, welches Banking das Board oder der 
MC hat und den Compiler entsprechend einstellen.
Bekannte Boards und MCs werden wohl schon in der Auswahlliste stehen, 
ansonsten muß man ein eigenes Modell konfigurieren.

Einige Hersteller (NXP, Maxim) haben auch 8051 mit erweiterten 
Adreßbefehlen herausgebracht, die 4MB Flash ohne Banking adressieren 
können.
Gast #3044728
Lesenswert?
• ▲
▼
Hi,

Und wie kann ich software-seitig z. B. erreichen, dass ich zum Bank #0 
switche, dass im Adressbereich 0x0000 bis 0xFFFF liegt? Ich weiß, Bank 
#0 ist protected, aber ich würd trotzdem gern wissen wie ich Bank #0 
über die Bits "A18", "A17" und "A16" im "Controlregister-1" aktivieren 
soll.

gruß
Gast #3044755
Lesenswert?
• ▲
▼
Bzw. machen wirs noch einfacher: Es heißt, dass zum Umschalten zwischen 
den Bänken es die drei "Latches" / Bits "FA18", "FA17" und "FA16" im 
"Controlregister 1" des Evaluationsboards gibt.
Was müsst ich machen, um z. B. zum Bank #1 zu wechseln?

Antwort schreiben

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.

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.