Forum: Mikrocontroller und Digitale Elektronik serielles RAM


von Johannes Meyer (Gast)


Lesenswert?

Hallo,

Ich bin auf der Suche nach einem seriellen RAM (z.B. mit I2C) mit 
mindestens 256kb. Gibt es da was, meine bisherige Suche im Internet 
(fast ein Tag), war erfolglos. Mein Ziel ist es Datenlogger, der 
Sekundentakt neue Daten bekommt. Daher scheidet nach meiner bisherigen 
Recherche ein EEPROM aus (nur 1000000 Schreibzyklen, nur Blockweises 
löschen etc.). Eine MMC Carte wäre wohl der letzte Ausweg, da zu 
aufwendig. Außerdem müsste ich dann auf einen größeren Mikrocontroller 
umsteigen.
Danke schonmal im Voraus.

Johannes.

von Luhar (Gast)


Lesenswert?

> Gibt es da was, meine bisherige Suche im Internet (fast ein Tag), war
> erfolglos.

Wohl kaum, zu speziell. Um dies zu emulieren (RAM + µC mit IIC), hast Du 
mehr Aufwand als gleich MMC + passenden µC einzusetzen.

von Markus K. (markus-)


Lesenswert?

Nimm FRAM. Das gibt es in Bauformen wie EEPROMs, man kann sie aber viel 
öfters (und auch schneller) beschreiben. Einen Lieferanten kann ich 
allerdings gerade nicht nennen, Segor.de hat nur die 2KByte-Type da.

Bist Du sicher, dass man EEPROMs nur blockweise löschen kann? Ich 
dachte, das betrifft nur Flash-Speicher?

Markus

von Εrnst B. (ernst)


Lesenswert?

Oder bau das serielle Ram selber, sollte halbwegs einfach und billig zu 
machen sein:

Ein CPLD (XC9572 von Xilinx z.B.) und ein paar parallele Ramchips, z.B. 
alte Cachebausteine von nem Motherboard.

nen SPI-Interface lässt sich in den CPLD einbauen, und für die Ram-Chips 
hat der genug IO's um die ganzen Adressleitungen zu bedienen.

Beispielprojekt, das sich in die Richtung erweitern/umbauen liesse:

die 8-Bit Grafikkarte bei http://ulrichradig.de/

/Ernst

von Mike (Gast)


Lesenswert?


von Dirk (Gast)


Lesenswert?

Hallo,

>Nimm FRAM.

FRAM ist schoen, aber leider nicht beschaffbar in kleinen Mengen zu 
einem vernueftigen Preis.

>Oder bau das serielle Ram selber, sollte halbwegs einfach und billig zu
>machen sein:
>Ein CPLD (XC9572 von Xilinx z.B.) und ein paar parallele Ramchips, z.B.
>alte Cachebausteine von nem Motherboard.

Ist in meinen Augen für ein Datenlogger zu uebertrieben.

Wie waere es mit einem SPI Dataflash von Atmel? 16Mbit (2Mbyte) mit 
einer maximalen SPI Freq. von 33/66 Mhz und in einem platzsparenden SO-8 
Gehäuse?
Der Preis bei Kleinmenge waere ist auch akzeptabel.

Eine andere Möglichkeit waere eine Micro o. Mini SD Card. Die 
Slotaufnahmen sind klein und Mini SD ist auch bezahlbar.

Beide Moeglichkeiten waeren immer noch schneller als deine TWI Loesung.
Um die Lebensdauer zuverlaengern des Speichers / Flash könntest Du eine 
Softwarekomprimierung vornehmen.

von Peter D. (peda)


Lesenswert?

Ernst Bachmann wrote:

> Oder bau das serielle Ram selber, sollte halbwegs einfach und billig zu
> machen sein:
>
> Ein CPLD (XC9572 von Xilinx z.B.) und ein paar parallele Ramchips, z.B.
> alte Cachebausteine von nem Motherboard.


Muß aber kein teurer stromfressender CPLD sein:

http://home.tiscali.de/peterd/appl/hard/sram/sram.htm


Peter

von Rahool, ein Nepp (Gast)


Lesenswert?

Die optimale Anwendung fuer ein Datenflash, zB AT45DB161 2Mx8

R.

von Markus K. (markus-)


Lesenswert?

Problem: EEPROM schafft nur 1.000.000 Schreibzugriffe.
Lösung: Dataflash, das schafft immerhin 100.000 Schreibzugriffe.

Aha.

Markus

von Rahool, ein Nepp (Gast)


Lesenswert?

Theoretische Planspiele.
Zum einen muss man nich immer bei Null mit schreiben beginnen, eher im 
Kreis rum. Zum Anderen moechte ich die 100k Schreibzugriffe auf 
denselben Sektor zuerst sehen. In einer Anwendung, nicht im Testlabor.

R.

von Johannes Meyer (Gast)


Lesenswert?

Danke für die schnellen antworten. Die FRAMs und seriellen SRAMs der 
Links die ihr mir geschickt habt sind ne tolle Sache, mal sehen ob sich 
die in Zukunft etwas mehr verbreiten. Die Beschaffbarkeit ist da echt 
ein Problem, so dass ich wohl in den sauren Apfel beiß und mich mit der 
Ansteuerung von MMC und SD Karten auseinandersetz. Das hat dann eben 
auch den Vorteil, dass es quasi keine Platzprobleme mehr geben kann, 
auch nicht durch zukünftige Erweiterungen und gleichzeitig der Speicher 
am PC auch ausgelesen werden kann. Mahl sehen, ob das mit einem Atmega88 
oder 168 zu schaffen ist.

Gruß Johannes

von thkais (Gast)


Lesenswert?

Moin allerseits,

Die EEPROMs, die ich bisher gesehen habe, haben blockweise Löschen als 
zusätzliches Feature. Man kann dennoch auch einzelne Bytes ändern.
Ich glaube kaum, dass Du sekündlich den kompletten Speicher 
vollschreibst, das wäre kaum sinnvoll. Vielleicht hast Du auch die 
Bedeutung der maximalen Schreibzyklen falsch verstanden? Diese Angabe 
bezieht sich darauf, dass nach 1.000.000 Schreibzyklen auf ein und 
dieselbe Zelle ein Ausfall zu erwarten ist.
Wenn man das EEProm als Ringpuffer verwendet und der Speicher 10 mal am 
Tag komplett neu geschrieben würde (bei einem Datenlogger gehe ich mal 
von 1 mal täglich aus, das wäre eher sinnvoll), kannst Du das EEProm 
immer noch mehr als 10 Jahre verwenden, bevor die Schreibzyklen erreicht 
sind...
Bis dahin gibts dann Tera-Byte Chips, da würde ich mir keine Sorgen 
machen.

von chrisg (Gast)


Lesenswert?

FRAM mit 256kbit und SPI kann ich empfehlen, ist sehr schnell (bis 25MHz 
SPI-Takt!) und auch leicht anzusteuern. Ich setze selbst 2 solche FRAMs 
(also 64 kByte) in einem Shoutcast-Web-Radio ein als Framebuffer, das 
geht problemlos selbst mit 320kBit/s Streams.

Als Bezugsquelle für Kleinstmengen kann ich Modtronix in Australien (!) 
empfehlen. Die schicken die FRAMs günstig in einem gepolsterten Brief 
für nur 3$ Versandkosten. Bei mir war die Lieferung nach etwas mehr als 
einer Woche da.

Hier der Link direkt zum FRAM:
http://www.modtronix.com/product_info.php?products_id=231

Was MMC/SD angeht, so ist das mit dem Atmega 168 machbar, wenn man keine 
speicherintensiven Funktionen wie printf verwendet. Zum Schreiben auf 
MMC/SD braucht man einen 512 Byte grossen Puffer im RAM, das ist bereits 
die Hälfte des Speichers dieser Prozessoren! Da bleibt nicht mehr viel 
Platz für anderes. Ausserdem muss man jeweils einen Block auf einmal 
schreiben...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.