STM32F4 FSMC

Gast #3750658
Lesenswert?
• ▲
▼
Hallo mal wieder ;)

Also, ich fand es eine lustige Idee, meinen FPGA einmal per FSMC in den 
Adressbereich des µC zu mappen.
Sodann habe ich die Dokumentation des FSMC studiert und muss mich gerade 
dennoch fragen:
Die SRAM/PSRAM/NOR-Bank unterstützt kein Daten/Adress-Multiplexing 
richtig? Ich habe hier etwas den Überblick verloren, welche Controller 
das überhaupt unterstützen und ob das entsprechende Protokoll auf dem 
FPGA mal so schnell implementiert werden kann.
SRAM schien mir auf jeden Fall schön einfach zu sein, nur gibts da 
scheinbar kein Multiplexing und ehrlich gesagt konnte ich der 
Dokumentation auch nicht entnehmen, ob das 8Bit-Datenbusse unterstützt 
(hoffe ich jetzt einfach mal). Mit dem Timing wäre man ja zumindest 
ziemlich flexibel, sodass man auf der FPGA-Seite in Asynch-Modus die 
Flankenerkennung auch etwas stabilisieren kann usw..
Aber ich würde für den Anfang irgendwie gerne mit max(Adressbits, 8) 
Leitungen + Control-Signale auskommen... Gibts da einen Modus, der das 
kann, den ich in meinem Kirren Kopf gerade einfach nicht mehr sehe?

Viele Grüße!
Gast #3751005
Lesenswert?
• ▲
▼
Stimmt, ich hatte das Pseudo-SRAM aktiv überlesen, für das explizit 
Multiplexing angegeben wird.
Überhaupt glaube ich aber, dass sich die Funktionalität nicht auf die 
Ram-Art in dem Block bezieht, kann das sein? Also ich könnte mit jedem 
eingestellten Ram-Typ (SRAM, PSRAM, NOR) multiplexen?
Habe jetzt schon die 16 Datenleitungen für Adresse+Daten angelötet, da 
mir 256 Byte Adressraum zuwenig war... hoffentlich war das nicht für die 
Katz :D


Was mich an der STM-Bibliothek etwas verwundert ist, warum die 
Initialisierungs-Routine für den SRAM-Controller die einzelnen Werte 
ALLE jeweils in uint32s in der Struktur hat. Dabei sollte doch laut Doku 
alles eigentlich doch nur in 2 32-Bit-Register, oder nicht? Habe das 
Gefühl, dass selber Ver-Odern und Shiften zu einer Konstante da 
angenehmer ist, als die Routine zu verwenden... Hätte wirklich gedacht, 
die nehmen da ein Bitset, das direkt auf den Register gemapped wird...

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.