Externer Ram an AVR (FRAM, SRAM), Geschwindigkeit

OP #877765
Lesenswert?

Hallo,

stelle mir grade die frage, wie ich große datenmengen schnell puffern 
kann. interner sram ist ja zu wenig.

fram von ramtron ist schon nicht schlecht, aber bei 10mhz spi takt 
kommen doch, durch overhead, nur 250kbytes in den ram.

wie schnell ist denn normaler paralleler sram?
der sollte doch ziemlich schnell sein und durch die parallele 
ansteuerung kaum overhead haben (nur durch setzten der pins oder?).

kennt jemand seriellen sram ?
OP #877817
Lesenswert?

ich möchte eigentlich keinen avr mit speicherinterface benutzen. meist 
werden da ja dann auch über ein schieberegister oder latch oder so, 
leitungen eingespart, zur last der geschwindigkeit. bin grade 
verschiedene möglichkeiten am suchen, edo-ram ist auch eine davon, da es 
auf größe nicht so ankommt.
#877826
Lesenswert?

>ich möchte eigentlich keinen avr mit speicherinterface benutzen. meist
>werden da ja dann auch über ein schieberegister oder latch oder so,
>leitungen eingespart, zur last der geschwindigkeit. bin grade
>verschiedene möglichkeiten am suchen, edo-ram ist auch eine davon, da es
>auf größe nicht so ankommt.

Das macht aber die Hardware vom Prozessor. Und die ist um laengen 
schneller als du das RAM per simulierten Hardware-Interface ansprechen 
koenntest.

Gruss Helmi
#877831
Lesenswert?

0,5MB/sec ist mit AVR und parallelem SRAM 128KB noch machbar, wenn du 
das erwähnte externe Speicherinterface verwendest. Da damit nur bis zu 
ca. 60KB direkt adressierbar sind, kannst du beispielsweise ein Fenster 
von 32KB verwenden und die beiden übrigen Adressbits als Bank-Adresse 
separat anschliessen.

Woran du denken solltest: irgendwo müssen die Daten ja herkommen und 
irgendwo müssen sich auch wieder raus. Die Verarbeitungszeit davon 
solltest du mit einrechnen.
OP #877869
Lesenswert?

@  Helmut Lenzen (helmi1)

danke, sieht super aus. muss nur mal sehen ob ich mir das antue mit 
verschiedenen bänken usw...

@  Andreas Watterott (andreasw)

so wie ich das im datenblatt der fram gelesen habe, hat man für 1 byte 
schreiben: 1 byte schreiben op-kommando, dann das eigentliche daten 
schreiben kommando 1 byte, dann 2 byte adresse, macht 4 bytes für 
1...also 5 bytes.
klar, bei 20mhz spi takt kommt man auf 500kbytes daten, aber die avr 
machen keinen 20mhz spi...
#877870
Lesenswert?

Daniel Platte wrote:
> Hallo,
>
> stelle mir grade die frage, wie ich große datenmengen schnell puffern
> kann. interner sram ist ja zu wenig.
>
> fram von ramtron ist schon nicht schlecht, aber bei 10mhz spi takt
> kommen doch, durch overhead, nur 250kbytes in den ram.


Wenn man jedes Byte einzeln schreibt, sind's tatsächlich nur 250 kB/s
WREN + WRITE + ADDR + DATA (5 Byte), bei 16 Byte Daten sind's 
theoretisch schon 1000 kB/s.

> 0,5MB/sec ist mit AVR und parallelem SRAM 128KB noch machbar,

LD(S)/ST(S) brauchen 2 + 1 + Wait-States Takte (maximal 3) pro Byte
2+1+3 = 6, (16 Mhz / 6) = 2.66 MB/s
OP #877883
Lesenswert?

@  Arc Net (arc)

ah überlesen, die fram erhöhen die adresse intern, also daten ab einer 
adresse schreiben und füllen... das is doch schonmal was, daten 
schreiben mit 1,25kbytes möglich.

wenn man das so betrachtet, ist der aufwand für schnelleren sram schon 
wesentlich höher.


danke, an alle für die aufklärung !
OP #878502
Lesenswert?

Daniel Platte wrote:
> @  Arc Net (arc)
>
> ah überlesen, die fram erhöhen die adresse intern, also daten ab einer
> adresse schreiben und füllen... das is doch schonmal was, daten
> schreiben mit 1,25kbytes möglich.
>
> wenn man das so betrachtet, ist der aufwand für schnelleren sram schon
> wesentlich höher.
>
>
> danke, an alle für die aufklärung !

richtig wäre 1,25MB/sec möglich !!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren