mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SPI RAM


Autor: Cristin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich suche einen Zwischenspeicher für ca. 92kByte/s Daten und ca. 1-4MB
Größe welcher per SPI Interface angesteuert weden kann.
Ich muss abwechselnd schreiben und von einer anderen Adresse die Daten
wieder einlesen.

Autor: Luder Carmen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
www.atmel.com

Autor: Cristin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dort finde ich keine SPI RAM, nur Flash...

Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja ein RAM mit SPI macht nicht viel Sinn, oder?

Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 92kByte/s Daten

BTW: könnte doch afst ein entsprechend programmierter AVR schaffen, an
den das RAM angeschlossen ist und welcher eine SPI-Schnittstelle hat.

Autor: Paul Baumann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier ist eine Herstellerseite. Die stellen auch SPI -  RAM´s her.
http://www.ramtron.com/doc/Products/Nonvolatile/De...

MfG Paul

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da gibts noch ne Seite:

http://www.edgar-conzen.de/deutsch.html

Gerhard

Autor: Cristin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wen ich ncihts besseres finde werde ich mit einem AVR, SPI und einem
möglichst billligen RAMChip herumexperimentieren.

Autor: Cristin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man eigendlich die Speicherchips von alten EDO RAM oder noch besser
SDRAM Modulen an einen AVR dranhängen?

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Könnte problematisch werden, da das dynamische RAMS sind. Für
Anwendungen an uC sind statische RAMs besser geeignet. Ausserdem, sind
das parallele RAMS, die brauchen Adressleitungen+Datenleitungen.
Man kann sich da zwar durch multiplexen behelfen, aber es werden
trotzdem mehr leitungen werden, als bei ner SPI-Schnittstelle. Wievile
Leitungen kannst du denn für ne "RAM-Schnittstelle" entbehren ?

Gerhard

Autor: JojoS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Cristin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich brauche eben RAM an AT91SAM7 und der soll ja recht langsame Pins
haben.
Entbehren könnte ich sosnst alle Pins bis auf die TWI oder SPI da ich
eine davon brauche und die USB Pins sind ja eh extra.

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist ein ARM-7 Derivat oder ? Der hat 32 Bit ? Wie breit soll denn
das RAM sein ? auch 32 Bit ? oder nur 8 Bit ? Für 1MByte 8 Bit breit
brauchst du 20 Adressleitungen, für 4MB dann 22 Adressleitungen.
vierfach-gemultiplext brauchst du dann doch mind 8 Leitungen + R/W + CS
+ OE + 2 MUX-leitungen = 13 Leitungen für 16Bit Breite, dreifach
gemultiplext 21 Leitungen. Am Schnellsten gehts 1-fach gemultiplext mit
28 Leitungen. 100kByte/s = 10us. In 10us 3-fach bzw 4-fach multiplexen =
3,3us bzw 2,5us dürfte funktionieren, wenn der Systemtakt schnell genug
ist. Mit SPI gehts wohl auch nicht schneller. SPI-EEPROM's kann man
zwar im Page-Mode schreiben, aber nur begrenzt, dann brauchen die
wieder ne Adresse. Dafür geht auch Zeit drauf. Da gibts noch ne
Möglichkeit: man nimmt ein paar Counter und verwendet die zur
ADresserzeugung. Nach jedem Schreiben wird der Zähler einmal getaktet.
Dafür braucht man dann aber 3 8-Bit Zähler (z.B.:74HC590), am uC aber
nur 1 leitung zum takten und 1 zum Resetten. Ist aber schnell.

Gerhard

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Gerhard:

Du vergisst noch 8 Datenleitungen oder wenigstens 2 Leitungen um die
Daten in ein Seriell/Parallel-Wandler zu takten.Irgendwie müssen die
Daten ja auch an die gezählten Addressen kommen...

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

das ist eine Arbeit fuer ein CPLD. Der CPLD arbeitet als SPI Slave to
Memory Bridge.

Gruß,
Dirk

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist alles eine Sackgasse, viel sinnvoller ist es gleich einen
Controller mit externem Speicherinterface zu verwenden.

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas:

Da gebe ich dir absolut recht.Gerade die grösseren ARM-Chips
(AT91SAM926x oder AT91RMxxx) haben oft sogar schon Controller für
dynamische RAMs mit drin.Da ist dann auch die mögliche Speichermenge um
einiges grösser und der Datendurchsatz weitaus höher als bei
SPI-Anbindung.Allerdings steigt auch der Stromverbrauch deutlich an.Ich
ging davon aus das aus irgendeinem Grund der Mikrocontroller schon
feststeht.Wen dem nicht so ist,sollte man zumindest auf einen Typen mit
externem Businterface wechseln.Auch statische RAMs parallel angebunden
sind noch günstiger als irgendwas serielles.

Autor: Cristin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Controller steht noch nicht fest.
Ich brauche aber was für den ich die Platine selbst herstellen kann und
die Teile in Einzelstücken möglichst ohne extreme Versandkosten
herbekomme.
Wen das Ganze noch vernünftig mit dem GCC programmierbar ist bin ich
glücklich.
Ich bin aber gerade am Überlegen ob ich nicht einen DSP z.B. von TI
nehmen soll.

Autor: Philipp Burch (philipp_burch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christin:

Hast du dich nun schon entschieden was du nimmst?

@Alle:

Ich bin ebenfalls auf der Suche nach RAM für's SPI. Leider ist es mir
nicht möglich, einen Controller mit mehr RAM zu nehmen. Es muss ein
MSP430 von TI sein (max. 10kB RAM), da er auf einem möglichst
universell einsetzbaren Modul sitzt. Nun ist aber für einmal nicht
wenig Stromverbrauch sondern viel Speicher benötigt. Der Speicher muss
aber ziemlich häufig und schnell beschreibbar sein. Grundsätzlich würde
EEPROM oder Flash ja gehn, allerdings ist das nicht wirklich das
Richtige für diese Anwendung.
Die Dinger von RAMTRON wären eine Möglichkeit, allerdings muss es ja
nicht unbedingt nicht-flüchtig sein. Achja: Die Grösse sollte von 64kB
aufwärts sein. Einen zusätzlichen Controller für's RAM entfällt
leider, da das Ganze nicht so sehr eine Bastellösung werden sollte...

Autor: arc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn man mit den "Einschränkungen" leben kann, sind die "Voice
Memories" bzw. Rekorder von Oki vllt einen Blick wert.
http://www.okisemi.com/eu/1.Products/Speech.html#H2

Autor: Norbert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber bei den MSP430 gibt es doch auch Typen mit deutlich mehr internem
RAM als 10kB. Oder bsit du da auf einen bestimmten Typen schon
festgelegt?

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Philipp Burch (philipp_burch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@arc:

Was meinst du denn für "Einschränkungen"? Das sieht schon recht gut
aus, muss ich mir unbedingt mal näher ansehn.

@Norbert:

Also ich weiss ja nicht welchen MSP430 du meinst, aber ich finde keinen
mit mehr als 10kB. Ist aber auch egal, das zu verwendende Device steht
schon fest. Das Ganze soll ein Universal-Funkmodul werden, da ist im
Allgemeinen nicht so viel RAM erforderlich. Nur für diese spezielle
Anwendung, daher muss ich es extern anschliessen können.

@Uwe:

Hab' ich mir mal angesehen, aber was hat das mit meinem Problem zu
tun? Ein Blackfin ist nicht wirklich das, was ich einbauen will und
serielles RAM scheint's auch dort nicht zu haben...

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Philip

ich finde das Theam interessant, da ich auch schon mal auf der Suche
nach einem seriellen RAM war. Ich hatte damals keines gefunden und
deshalb ein parallelles RAM an meine I/O-Ports des uC gehängt. Ist
mühsam und benötigt evtl zusätzliche Bausteine. Aber vielleicht hast du
ja genügend Leitungen übrig. Für 64Kbyte werdens etwa 19 Leitungen
wrden, wenn man Adressen und Daten multiplext. Ansonsten gibts noch die
Idee, die ich oben schon mal als Link erwähnt habe:

http://www.edgar-conzen.de/deutsch.html

Das ist wohl ein paralleles RAM, das über einen uC mit
SPI-Schnittstelle angesprochen wird.

Gerhard

Autor: Norbert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, gibt ja doch keinen MSP430 mit mehr als 10kB RAM. Hab mich da
versehen.

Autor: Philipp Burch (philipp_burch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Gerhard:

Ein paralleles RAM würde von den Pins her wohl noch knapp reinpassen,
ist allerdings schon 'n Krampf... Der Controller ist eigentlich so
schon  viel zu gross dimensioniert für diese Anwendung, aber ich hab'
ihn ausgewählt, damit ich wenigstens eine SD-Card anschliessen kann
ohne externen Speicher zu benötigen (1kB). Im schlimmsten Fall wird es
wohl doch darauf hinauslaufen, dass ich einen anderen Controller am SPI
anschliessen muss und dort ein paralleles RAM anhänge. Ist allerdings
wirklich die letzte Möglichkeit, ich habe immer noch Hoffnung sowas zu
finden.
Ist aber eigentlich schon komisch, dass sowas kaum verbreitet ist, es
kann ja wirklich vorkommen dass man einen kleinen Controller (wenig
IOs) aber "viel" Speicher benötigt...

@Norbert:

Kein Problem, jeder kann sich irren. Wahrscheinlich hast du die
Flash-Grösse gesehn, die geht bis 60kB.

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.