Hey,
ich suche gerade nach 3.3V SRAM für die Verwendung mit einem
XMEGA-128A1U. Optimal wären 4-8 Megabyte Speicher. Möglichst hohe
Zugriffsgeschwindigkeiten wären auch gut, daher direkt Adressierbar ohne
Latch.
Da es weder bei Reichelt/Pollin/Conrad entsprechende IC's anbietet
wollte ich hier fragen woher ihr die bekommt und welche ihr empfehlen
könnt.
Lieferzeit spielt für mich nur eine geringe Rolle.
Grüße
Matyr
Yep, STM32 :)
>Möglichst hohe>Zugriffsgeschwindigkeiten wären auch gut, daher direkt Adressierbar ohne>Latch.
SRAM mit 4-8 MByte ohne Latch?
So eine Möglichkeit sehe ich im Datenblatt des XMEGA-128A1U nicht.
Da sind immer ein oder zwei Adresslatchs dabei.
Danke für den Hinweis mit Cypress werde ich dort mal um gucken.
@Detlef Kunz, Dr. Sommer
Klar ist ARM eine Alternative (wahrscheinlich sogar die bessere Lösung)
aber leider habe ich in diesen Bereich noch keinerlei Erfahrung, da ich
bisher ausschließlich Projekte mit Atmel Chips durchgeführt habe.
@Detlef Kunz
http://www.atmel.com/images/doc8058.pdf
Man kann mit der 4Port Lösung ~520kByte direkt Adressieren. Durch
separate Pins wollte ich dann zwischen den Bereichen umschalten
(RAM-Pages).
@Chris R.
Ich muss noch herausfinden ob die Zugriffszeiten/Prozessorleistung
darunter leidet dass der Speicher immer refresht werden muss.
Grüße Matyr
Matyr schrieb:> Klar ist ARM eine Alternative (wahrscheinlich sogar die bessere Lösung)> aber leider habe ich in diesen Bereich noch keinerlei Erfahrung, da ich> bisher ausschließlich Projekte mit Atmel Chips durchgeführt habe.
Dann wird es Zeit, den Horizont zu erweitern.
Es gibt bei jeder Architektur Grenzen. Da macht es dann keinen Spaß mehr
mit Workarounds zu arbeiten.
Matyr schrieb:> Optimal wären 4-8 Megabyte Speicher. Möglichst hohe> Zugriffsgeschwindigkeiten wären auch gut, daher direkt Adressierbar ohne> Latch.
Es gibt hier im Forum auch ein paar Projekte, die einen SIMM-Rigel am
ATmega betreiben. Man benötigt ca. 22 Pins und kann 256kByte bis 4MByte
direkt anschließen. Allerdings dauert der Zugriff ein paar Takte. Die
Steuerleitungen muß man auch per Hand bedienen.
Beitrag "2MB DRAM an AVR"
LG,
Maik
Matyr schrieb:> Ich muss noch herausfinden ob die Zugriffszeiten/Prozessorleistung> darunter leidet dass der Speicher immer refresht werden muss.
Warum sollte die CPU-Leistung darunter leiden? Die elektrische Ladung
der Zelle muss erneuert werden, das hat ja nichts mit der CPU zu tun.
Gruesse
@Kaj (Gast)
Ich dachte der Inhalt muss bei jedem refresh gelesen und neu geschrieben
werden?
@Maik (Gast)
Maik schrieb:> Dann wird es Zeit, den Horizont zu erweitern.> Es gibt bei jeder Architektur Grenzen. Da macht es dann keinen Spaß mehr> mit Workarounds zu arbeiten.
Stimmt schon, werde mal gucken wann ich damit anfange.
Matyr schrieb:> Ich dachte der Inhalt muss bei jedem refresh gelesen und neu geschrieben> werden?
Nein. Bei DRAM wird automatisch durch das auslesen der Inhalt auch
wieder neu eingeschrieben. Es reicht aus alle paar ms den Speicherinhalt
"auszulesen".
VG,
Maik
Aus Wikipedia DRAM:
Kommerziell erhältliche DRAMs besitzen meist eine vorgeschriebene
Refreshperiode von 32 ms oder 64 ms.
Self-Refresh
Diese Methode war bei speziellen Bauformen asynchroner DRAMs eingeführt
worden und wurde erst mit synchronen DRAMs verbindlich implementiert.
Bei dieser Methode wird weitestgehend auf externe Steuer- oder
Adresssignale (für den Refresh) verzichtet (vgl. Diagramm zum
Self-Refresh beim EDO-DRAM). Der DRAM befindet sich dabei in einem
Stromsparzustand (power-down), in dem er auf externe Signale nicht
reagiert (eine Ausnahme stellen natürlich die Signale dar, die ihm das
Verbleiben im Stromsparzustand anzeigen). Zum Erhalt der gespeicherten
Information wird ein DRAM-interner Zähler verwendet, der in vorgegebenen
Zeitabständen einen Auto-Refresh (CAS-before-RAS-Refresh) initiiert
Je nach Schaltungsumgebung muss für den Refresh der Normalbetrieb
unterbrochen werden, zum Beispiel kann der Refresh in einer regelmäßig
aufgerufenen Interrupt-Routine ausgelöst werden. Sie kann beispielsweise
mit einer eigenen Zählvariablen einfach irgendeine Speicherzelle in der
jeweiligen Zeile auslesen und damit diese Zeile auffrischen.
Andererseits gibt es auch Situationen (vor allem in Videospeichern), in
denen der gesamte Speicherbereich sowieso in kurzen Abständen
angesprochen wird, so dass gar kein separater Refresh-Betrieb
stattfinden muss. Manche Mikroprozessoren wie der Z80 oder aktuelle
Prozessor-Chipsätze erledigen den Refresh vollautomatisch.
Also: Selbst wenn der Refresh aktiv vom mC ausgefuehrt werden muesste,
bezweifel ich, dass das bei dem XMega wirklich eine Performance einbuße
darstellt.
Grueße
Ok,
dann werde ich vor allem aufgrund der deutlich geringeren Kosten auf
SDRAM umsteigen. Da gibt es hoffentlich auch mehr Händler die diese
verkaufen.
Auf dem AVR A1 Xplained ist ein 8MB SDRAM verbaut, dessen Schaltpläne
und Software sind vermutlich hilfreich, wenn du das EBI anwirfst. Ok, du
benutzt den 128A1U, mögl. läufts da noch ein bisschen anders, im Grossen
und Ganzen sollte es aber ähnlich sein.