Karta pamięci MultiMediaCard. Dane zapisane w karcie przechowywane są w pamięci Flash.

Pamięć flash – rodzaj pamięci EEPROM (ang. Electrically-Erasable Programmable Read-Only Memory), pozwalającej na zapisywanie lub kasowanie wielu komórek pamięci podczas jednej operacji programowania. Jest to pamięć stała(nieulotna) – po odłączeniu zasilania nie traci swej zawartości.

Standardowe pamięci EEPROM pozwalają zapisywać lub kasować tylko jedną komórkę pamięci na raz, co oznacza, że pamięci flash są znacznie szybsze, jeśli system je wykorzystujący zapisuje i odczytuje komórki o różnych adresach w tym samym czasie. Wszystkie typy pamięci Flash, jak i EEPROM, mają ograniczoną liczbę cykli kasowania, przekroczenie tej liczby powoduje uszkodzenie pamięci.

Istnieją dwa rodzaje pamięci flash: NOR i NAND, różniące się typem bramki logicznej zastosowanej w komórkach pamięci. Nazwy rodzajów pamięci pochodzą od użytego typu bramki logicznej.

Jako pierwszy pamięć flash (zarówno NOR jak i NAND) zbudowaÅ‚ dr Fujio Masuoka pracujÄ…cy dla Toshiby w 1984. Do masowej produkcji pierwszy wprowadziÅ‚ pamięć flash typu NOR Intel w roku 1988. Ma ona dÅ‚ugie czasy zapisu i kasowania, ale umożliwia bezpoÅ›redni dostÄ™p do każdej komórki pamiÄ™ci. Z tego wzglÄ™du nadaje siÄ™ do przechowywania informacji, które nie wymagajÄ… czÄ™stej aktualizacji, jak np. firmware różnego rodzaju urzÄ…dzeÅ„. Wytrzymuje od 10 000 do 100 000 cykli kasowania.

Stosowano ją w pierwszych wersjach kart pamięci CompactFlash, ale później zaczęto w nich stosować tańsze pamięci NAND.

W roku 1989 pojawiły się pamięci NAND firm Samsung i Toshiba.

W stosunku do pamięci NOR pamięć NAND ma krótszy czas zapisu i kasowania, większą gęstość upakowania danych, korzystniejszy stosunek kosztu pamięci do jej pojemności oraz dziesięciokrotnie większą wytrzymałość.

Jej główną wadą jest sekwencyjny dostęp do danych, przez co może być stosowana jako pamięć masowa, np. w kartach pamięci, lecz jest bezużyteczną jako pamięć komputera. Pierwszą kartą pamięci używającą pamięci NAND była karta SmartMedia, później zaczęto ich używać w innych typach, jak: MMC, Secure Digital, Memory Stick i xD, dyskach USB.

edytuj Ograniczenia

By można było zapisać komórkę pamięci flash, należy ją wcześniej skasować. Nie jest możliwe ponowne zapisanie danych do już zapisanej komórki. Jakkolwiek można odczytać i zapisać dowolną komórkę pamięci, to operacja kasowania umożliwia skasowanie tylko całych bloków komórek. Nie można skasować pojedynczej komórki. Z tego powodu zapis danych nie jest w pełni swobodny. Pamięci te umożliwiają odczyt i zapis dowolnej komórki, ale już nie swobodne kasowanie i nadpisanie zawartości.

Powyższe ograniczenia powodują pewne trudności w obsłudze dostępu do danych w pamięciach masowych. Zapis plików musi być skoordynowany z operacją kasowania bloków pamięci. Zazwyczaj jeśli plik ma zostać zaktualizowany lub nadpisany, system zarządzania pamięcią tworzy nową kopię pliku w innym miejscu, oznaczając tylko poprzednią wersję jako bezużyteczną. Taka wersja pliku nadal zajmuje wolne miejsce, jest ono zwalniane jeśli operacja kasowania jest możliwa, czyli w danym bloku pamięci nie ma fragmentu innego pliku. W celu efektywniejszego kasowania bloków pamięci możliwe jest też przenoszenie części innych plików (nie wymagających modyfikacji) w inne miejsce, tak by blok nadawał się do skasowania. Dodatkową komplikacją jest fakt, że operacja kasowania jest znacznie dłuższa niż operacja zapisu i odczytu.

edytuj Zastosowanie

Pamięci flash są powszechnie stosowane w kartach pamięci i innych nośnikach danych (np. pendrive) które wyparły z rynku nośniki magnetyczne.

Nie należy jednak ich utożsamiać z kartami pamięci, ponieważ w tych urządzeniach stanowią one istotny ale nie jedyny komponent.

Obecnie w użyciu są następujące karty pamięci stosujących jako nośnik danych pamięć Flash:

Ponadto są używane do przechowywania programów i danych w urządzeniach embedded, gdzie są stosowane zamiast popularnych kiedyś pamięci typu EPROM i PROM.