Forum: Mikrocontroller und Digitale Elektronik SLC/MLC NAND IC?


von LarsB (Gast)


Lesenswert?

Ich benötige für mein Projekt (in Planungsphase) schnellen, 
nichtflüchtigen Speicher.

Sind NAND-Flash ICs schneller zu betreiben als schnelle (µ)SD-Karten, 
oder sollte ich einfach Karten verwenden?

Benötigt man für ICs zwingend einen Controller, oder kann das auch ein 
µC oder ein FPGA übernehmen?

Welche NAND-Flash ICs mit 4-16 GByte sind überhaupt in kleinen 
Stückzahlen zu bekommen?  (Octopart liefert Hunderte ICs, welche nicht 
erhältlich sind.)

von asdfasd (Gast)


Lesenswert?

Rohe NANDs richtig zu betreiben verlangt nen Riesenaufwand (insb. auf 
der Softwareseite - wear leveling, scrambling, etc.).

Schau mal nach eMMC - die haben, wie SD-Karten, nen eingebauten 
Controller der den Low-Level-Kram erledigt.

von Mike J. (linuxmint_user)


Lesenswert?

Es gibt sehr schnelle SD-Karten, aber man muss auch ordentlich auf sie 
zugreifen können.
Ich verwende bei den Atmegas das Dateisystem von ElmChan, das ist zwar 
nicht schnell, aber es reicht für mich.

Ich will jetzt an einem STM32 eine SD-Karte hängen, da wird es bestimmt 
schon vorgefertigte Bibliotheken geben.

Solch eine SD-Karte mit Sockel ist in der Regel billiger als ein 
zusätzlicher Controller und ein Flash-IC.

SLC-Flash ist langlebiger (100k mal beschreibbar) Ein Bit pro 
Speicherzelle.

MLC-Flash ist nicht so langlebig weil dort getrickst wird um zwei Bit in 
einer Speicherzelle zu speichern. (10k mal beschreibbar)

TLC-Flash ist noch weniger langlebig, scheinbar verlieren die 
Speicherzellen mit der Zeit den eingeprägten Widerstand und dadurch 
werden die 3 Bit die in einer Zelle gespeichert worden sind falsch 
erkannt. Der Controller muss also ab und zu prüfen ob noch alles im Lot 
ist und wenn nicht, dann wird die Zelle eben noch mal neu geschrieben.
(1k mal beschreibbar, 3 Bit pro Speicherzelle)


Ganz ehrlich, nimm eine SD-Karte + schnelle Lib und gut ist's.

Ich nutze wohl diese Vorlage hier:
http://blacbird.de/tutorial-stm32-cubemx-sdio

Aussagen über erreichbare Geschwindigkeiten:
https://community.st.com/thread/30654

von LarsB (Gast)


Lesenswert?

Danke für die Hinweise.

Das Petit FatFS habe ich schon benutzt, aber hier möchte ich 
wahrscheinlich low-level auf einzelne Bytes zugreifen.

Eine SD-Karte sehe ich gefühlt als langsam an, obwohl natürlich auch 
DDRx nur gesteckt ist. Aber man sieht im Handel ja nicht, was in der 
Karte drin steckt. Ob die Class-Angabe so hilfreich ist?

Und ja, ein Controller zu ICs wäre hilfreich. Ich dachte, das gibt's 
vielleicht schon als Core für FPGAs oder sogar für µC?!

Was meinst Du mit eMMC? Die MMC-Karten? Haben die einen Vorteil 
gegenüber SD-Karten?

Eine schnelle Suche hat nur Blackfin-Prozessoren(?) mit eingebautem 
eMMC/SD-Controller zutage gebracht ...

von LarsB (Gast)


Lesenswert?

Sorry, die Blackfins haben ja alle möglichen Controller, auch Flash.

von LarsB (Gast)


Lesenswert?

Und mit eMMC meintest Du diese SSDs-Steckkärtchen ... Asche auf mein 
Haupt.

von Soul E. (Gast)


Lesenswert?

LarsB schrieb:

> Was meinst Du mit eMMC? Die MMC-Karten? Haben die einen Vorteil
> gegenüber SD-Karten?

eMMC ist SD-Karte zum Einlöten: 
http://www.samsung.com/semiconductor/global/file/media/Samsung_eMMC_2013-0.pdf

Im Gegensatz zu den Plastikdingern mit Fassung gibt es eMMC auch in 
Industeriequalität mit bekannten, dokumentierten und teilweise sogar 
garantierten technischen Daten.

von Jim M. (turboj)


Lesenswert?

soul e. schrieb:
> Im Gegensatz zu den Plastikdingern mit Fassung gibt es eMMC auch in
> Industeriequalität mit bekannten, dokumentierten und teilweise sogar
> garantierten technischen Daten.

Leider ist aber der alternative SPI Mode aus dem Standard geflogen, so 
dass man zwingend einen eMMC/SD Controller im µC braucht.

Wenn ich ansonsten nur einen Standard-µC brauche, könnte eine µSD per 
SPI angebunden die bessere Lösung sein. YMMV, insbesondere da ich keine 
konkreten Anforderungen sehe.

LarsB schrieb:
> Aber man sieht im Handel ja nicht, was in der
> Karte drin steckt. Ob die Class-Angabe so hilfreich ist?

Bei SPI Betrieb ist die Class Angabe nicht hilfreich (da immer nur 25 
MHz max). Ich hatte schon Karten (µSDHC), die trotz "Class" (4 oder 6 
IIRC) sich eine ganze Sekunde Denkpause beim Schreiben gegönnt haben. 
Das waren aber Billigheimer vom Supermarkt - empfehlen würde ich eher 
originale Samsung oder Sandisk.

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.