mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik XMega 128 mit 32MByte SDRAM betreiben


Autor: Alexander Liebhold (lippi2000)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich benötige für eine Bildauswertung etwas mehr SD-Speicher als die 
möglichen 1Mbyte (8Mbit), die durch das normale EBI-Interface möglich 
sind. Ich habe mir überlegt, das 4-Port-Interface zu verwenden. Dort 
wird nur 1x das chipselect generiert. Ich will nun ein SDRAM mit Bänken 
benutzen. Da der RAM am DMA-Controller hängt, weiß ich im Programm 
selbst nicht, wannn genau die Transaktion erfolgt. Zudem darf das CS 
auch nicht von außen angelegt werden, sondern wird nur vom 
DRAM-Controller erzeugt (siehe Refresh usw.).

Nun folgende Idee:
Ich verwende 2 Portpins für die Bankauswahl. Diese zwei werden mit dem 
CS vom AVR jeweils AND-Verknüpft (gesteuertes Tor) und an den SDRAM 
gelegt.

Wie sieht das vom timing her aus? Der SDRAM wird ja mit Peripherie - 
Takt von 64MHz angesteuert. Wie bekomme ich mit, wann ich die CS 
umschalten kann, also der DMA keinen Zugriff steuert?


Gruß Alex

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klappt nicht. SDRAM muss zyklisch refreshed werden.

Autor: Alexander Liebhold (lippi2000)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die ganze Ansteuerung für SDRAM hat der XMega (ATXmega128A1) ja schon 
drin. Nur kann man damit nur 1 Bank ansteuern. Das Chipselect muss ja zu 
unterschiedlichen Zykluszeiten anliegen. Ich möcht deswegen die Bank 
extern vorgeben und mit dem bereits vorhanden CS so verknüpfen, dass sie 
wieder nur zum entsprechenden Zyklus anliegen.

Refresh benötigt übrigens kein CS bzw. Bankauswahl. (In diesem 
Zyklusschritt nimmt der interne RAM Controller das CS vom Bus).

Autor: Alexander Liebhold (lippi2000)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, er kann ja 2 RAM-Bänke ansprechen (mit BA0, BA1).

Autor: Felix H. (masterq)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Alexander wie ich sehe hast du dich mit dem thema xmega und ebi 
schon vor langer zeit auseinander gesetzt, kannst du mir vielleicht 2 
fragen beantworten?
Kann ich einen 8bit Speicher nehmen und 4bit einfach mit pullups oder 
pulldowns versehen?

aber gerade noch wichtiger... Wie konfiguriere ich die bank selection?

Und achja mit ba0 und ba1 kann man da nicht schon 4 verschiedene Bänke 
ansprechen?

waren dann doch 3... Vielen dank und Grüße

Felix

Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Ich habe mir überlegt, das 4-Port-Interface zu verwenden.

schöner Gedanke. Nur gibt es keinen xmega mit 4 Port Interface, auch 
wenn in der AppNote vom 4 Port Interface gesprochen wird. Die größten 
xmegas (A) haben nur ein 3 Port interface und damit funktioniert nur 4 
Bit breiter SDRAM und bis zu 8 Bit breiter SRAM.

Vielleicht gibt es ja irgendwann eine größere Version des xmega mit 4 
Port Interface, wobei ich das für unwahrscheinlich halte; die xmegas 
sind jetzt schon teuerer als so mancher 32 Bitter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.