Gibt es einen solchen Speicherbaustein?

OP #6029992
Lesenswert?

Hallo zusammen,

für ein Projekt benötige ich einen parallelen Speicherbaustein (min. 128 
Mbit) der möglichst klein ist und wenige Pins hat. Im Gegensatz zu den 
typischen NOR-Flashs etc. möchte ich jedoch nicht einen bestimmten 
Sektor oder ein bestimmtes Byte ansprechen (wofür man ja bereits viele 
Pins benötigt), sondern wie in eine Art "Stream" speichern bzw. 
auslesen.

Ich stelle mir das in etwa so vor, dass man mit 13 Pins auskommen 
müsste:
- 2 Pins für Versorgungsspannung
- 1 Pin für Takt
- 1 Pin für den Lese-/Schreib-Modus (z. B. 0=lesen, 1=schreiben)
- 1 Pin für Reset des "Streams", also interne Verrückung des 
Lese-/Schreib-Zeigers auf Position 0
- 8 Pins für das aktuell zu lesende / schreibende Byte

Man sollte also mit Hilfe eines Taktes Byte für Byte schreiben können 
bis der Baustein "voll" ist. Nach einem Reset auf Position 0, sollte man 
mit dem selben Takt dann Byte für Byte bis zum Ende auslesen können.

Meine Frage ist: Gibt es so einen Baustein? Der Speicher darf auch 
flüchtig sein.
#6030020
Lesenswert?

Und ein Zähler, der einen normalen Flash/RAM-Baustein mit der Adresse 
versorgt ginge nicht?

Wie schnell soll das denn sein, wenn SPI nicht reicht?
Ich mein, so ein Flash ist nun auch nicht viel schneller als das was 
eine SPI-Schnittstelle schieben kann, deswegen nutzt man das ja so.
Und eine SD-Karte kann schon deutlich 2-stellige MByte/s über die paar 
Drähte schaufeln...
OP #6030038
Lesenswert?

Getestet habe ich es noch nicht, aber ich habe Erfahrungen von Leuten 
gelesen, dass man bei SD-Karten über SPI nicht über 10-12 MHz kommt. Das 
wären dann maximal 1,4 MB/s. Wie gesagt, müsste ich beim SD-Modus (der 
dann deutlich schneller wäre) noch eine Checksummenberechnung machen. 
Dies ist jedoch schwierig, da ich die Daten byteweise mit ca. 6-10 MHz 
bekomme und möglichst ohne Umwege durch µC & Co. in diesen Speicher 
schreiben möchte.
OP #6030055
Lesenswert?

> Wie schnell musst Du denn Deine Daten weg schreiben? Kommt ein
> Controller zum Einsatz oder willst du einfach ankommende Daten mittels
> Taktleitung weg schreiben?

Letzteres. Die Daten sollen direkt von der Quelle geschrieben werden. Im 
Nachgang möchte ich dann per µC die Daten "gemütlich" auslesen und 
tatsächlich auf eine SD-Karte schreiben. Da spielt die Geschwindigkeit 
dann keine große Rolle mehr.
#6030771
Lesenswert?

D. C. schrieb:
> Octo SPI Flash ist auch zu langsam?

Flash ist definitiv zu langsam, um Daten kontinuierlich mit den bis zu 
10MB/s des TO wegschreiben zu können.

Beispiel W25Q128 (ein 128MBit quad-SPI Flash). Das hat Pages zu 256 
Bytes und braucht typisch 0.7ms, maximal 3ms um eine Page zu schreiben 
(Löschen muß man vorher). Damit kommt man auf typisch ~360 KB/s und 
pessimal nur noch ~90 KB/s. Das SPI an sich schafft deutlich höhere 
Datenraten bis 50MB/s, wäre also schnell genug.

Ich zweifle nicht, daß es auch schnellere Flash Chips gibt. Aber nicht 
um Faktor 30 schneller.

Bei dieser Datenrate braucht er RAM. Als SRAM wäre das trivial 
anzusteuern, aber 16MB SRAM sind teuer und brauchen Platz. DRAM wäre 
billiger, ist aber aufwendiger anzusteuern, weil man ja auch den Refresh 
organisieren muß.

Ich halte die ganze Idee für abwegig, die Daten erst in einem externen 
Speicher zu puffern und dann mit einem schmalbrüstigen µC daraus 
auslesen zu wollen. Man könnte ja einfach einen dickeren µC nehmen, der 
einen DRAM Controller hat und da die benötigten 16MB DRAM anflanschen.
Gast #6030789
Lesenswert?

Stephan E. schrieb:
> dass man bei SD-Karten über SPI nicht über 10-12 MHz

was ist mit SD-XC etc.

Während anfangs die Übertragungsgeschwindigkeit bei ca. 3,6 MB/s (lesen) 
und 0,8 MB/s (schreiben) lag, erreichten 2019 selbst preiswerte Karten 
eine Lesegeschwindigkeit von über 90 MB/s. Besonders schnelle SD-Karten 
mit UHS-II-Schnittstelle erreichten 2019 Schreib- und 
Lesegeschwindigkeiten von je etwa 300 MB/s. Die Werte schwanken jedoch 
stark und sind vom Hersteller und den zur Nutzung verwendeten Geräten 
abhängig.
https://de.wikipedia.org/wiki/SD-Karte
#6031034
Lesenswert?

Hallo,

mir fiel gerade ein:

Der AL422B (384kBx8) ist auch auf den Arduino Kameramodulen mit FiFo 
drauf, bekommt man f+r recht wenige Euro:
https://www.ebay.de/p/640x480-VGA-Ov7670-FIFO-CMOS-Camera-Module-Buffer-Al422b-SCCB-I2c/876484745
Der hat max. 20ns Zykluszeit und kann 3,3V und 5V.

Wenn Du da nur Einzelstücke brauchst, würde ich da vielleicht mal 
schauen.
Die gibt es auch einzeln aus China.

Gruß aus Berlin
Michael

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