Speicherzugriff SDRAM

Gast #5208330
Lesenswert?
• ▲
▼
Hi,
ich möchte ein Programm schreiben mit dem ich ein SDRAM beschreiben 
kann. In dem Zuge sind ein Paar Fragen aufgekommen. Ich habe ein SDRAM 
1Meg Bits x 16 Bits x 4 Banks. Mein Speicherbereich im Mikrocontroller 
ist von 0x80000000 bis 0x87FFFFFC. Es gibt ja bei dem SDRAM Zeilen und 
Spalten Adressen. Die Frage die sich mir stellt ist, wie wird das 
zugeordnet? Also wie wird die Speicheradresse z.B. 0x80080000 auf die 
Zeilen und Spalten Adressen aufgeteilt. Bzw. In welchen Doku kann man 
das finden? Danke
Viele Grüße
#5208361
Lesenswert?
• ▲
▼
@ Marcel (Gast)

>ich möchte ein Programm schreiben mit dem ich ein SDRAM beschreiben
>kann.

Dann nimm eine Programmiersprache deiner Wahl und schrieb ein Programm 
auf deinem PC. Der hat nämlich auch SDRAM ;-)

> In dem Zuge sind ein Paar Fragen aufgekommen. Ich habe ein SDRAM
>1Meg Bits x 16 Bits x 4 Banks. Mein Speicherbereich im Mikrocontroller
>ist von 0x80000000 bis 0x87FFFFFC. Es gibt ja bei dem SDRAM Zeilen und
>Spalten Adressen. Die Frage die sich mir stellt ist, wie wird das
>zugeordnet?

Das ist nebensächlich. Stell in deinem uC den SDRAM-Controller passend 
ein und der Speicherbereich wird richtig auf den SDRAM umgesetzt.

> Also wie wird die Speicheradresse z.B. 0x80080000 auf die
>Zeilen und Spalten Adressen aufgeteilt. Bzw. In welchen Doku kann man
>das finden?

Im Datenblatt des Speichers.
#5209263
Lesenswert?
• ▲
▼
Marcel schrieb:
> ich möchte ein Programm schreiben mit dem ich ein SDRAM beschreiben
> kann.

Wozu?
Du wirst ja wohl kaum den SDRAM zu Fuß über IO-Ports ansprechen wollen.
Der SDRAM hängt am SDRAM-Interface Deiner CPU und gut.
Das Programm interessiert es nicht, was für ein Typ RAM das ist. Es 
schreibt einfach an die gewünschte Adresse die gewünschten Daten bzw. 
liest von der Adresse.
Gast #5209303
Lesenswert?
• ▲
▼
Marcel schrieb:
> Die Frage die sich mir stellt ist, wie wird das
> zugeordnet? Also wie wird die Speicheradresse z.B. 0x80080000 auf die
> Zeilen und Spalten Adressen aufgeteilt.



RAS und CAS sind Deine Freunde, siehe https://lwn.net/Articles/250967/ 
Bild 2.8.

Diese beiden Signale teilen dem Speicher mit ob das Addressstück auf dem 
address-bus die Row oder die columnaddress sit. Daher der Name "Row 
Address Select" -> RAS
Gast #5210406
Lesenswert?
• ▲
▼
Vielen Dank für die reichlichen guten Kommentare. Was mich noch 
interessiert ist, managed der SDRAM Controller in meinen Mikrocontroller 
auch die Banks meine SDRAMs automatisch wenn ich dort 4 eingestellt 
habe?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 8 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.