wtorek, 17 stycznia 2012

Pamięć w smartfonach


W standardowym komputerze PC, pamięć dzieli się na pamięć operacyjną (RAM) oraz pamięć masowa (tzw. dyski twarde, HDD, SSD). w przypadku smartfonów sprawa się komplikuje, ponieważ podział pamięci nie jest tak ustandaryzowany. Praktycznie każdy model takiego urządzenia ma inny system pamięci, na który składa się wiele różnych modułów.



Najprostszy podział pamięci jaki można wyróżnić w większości smartfonów to: 
  • pamięć operacyjna (RAM)
  • pamięć masowa
  • pamięć wymienna
Podział ten na pozór podobny jest do tego jaki jest w komputerze stacjonarnym, niestety po bliższym przyjrzeniu się tym urządzeniom nie jest on tak prosty, ponieważ stosowane są różne układy o różnych interfejsach do tego samego zadania. Na końcu tego podrozdziału znajdują się definicje wszystkich układów pamięci jakie zostaną wymienione poniżej.

Pamięć masowa w wielu smartfonach dzieli się na pamięć ROM, czyli tą w której zapisany jest firmwere lub system operacyjny, oraz pamięć ogólnego użytku, w której zapisywane są  dane aplikacji oraz użytkownika urządzenia. Jako pamięć ROM wykorzystuje się najczęściej pamięci typu NOR, PSRAM, One-NAND. Są to pamięci z których dane można odczytywać metodą Execute In Place (XIP). Dzięki zastosowaniu tej technologii kod wykonywalny jest bezpośrednio odczytywany z tej pamięci i wykonywany przez procesor. Nie jest on kopiowany do pamięci RAM, jak w przypadku zwykłej metody. Jako pamięć ogólnego użytku najczęściej używane są układy typu NAND w różnych wersjach SLC NAND, MLC NAND, Managed MLC NAND lub jako układ eMMC łączący kontroler pamięci wymiennej MMC z układem Managed NAND, dzięki czemu zapis do takiej pamięci odbywa się poprzez interfejs MMC. w niektórych smartfonach jednak nie stosuje się takiego układu, łącząc pamięć ROM z pamięcią ogólnego użytku.
Pamięć operacyjna najczęściej stosowane są pamięci LPDDR. Są to pamięci podobne do pamięci RAM stosowanych w komputerach stacjonarnych, lecz o ograniczonym poborze mocy. Używane są również pamięci DDR2 i DDR3 jak w komputerach PC lecz w zminiaturyzowanej wersji.

Stosowane są również układy MCP (ang. Multi-Chip-Package), łączące pamięci typu NAND dla trwałego przechowywania danych i LPDDR dla szybko wykonywanych operacji. Najnowsze układy moviMPC łączą ze sobą eMMC, NAND flash oraz LPDDR.

Pamięć wymienna, to prawie zawsze czynnik kart MMC lub SD. Aby działanie takiego czytnika było możliwe potrzebny jest kontroler MMC lub SD, zapewniający dostęp do danych na karcie pamięci, wbudowany prawie zawsze w układ SoC .

Rodzaje pamięci stosowanych w smartfonach i ich krótki opis:

NOR flash – bez napięciowe pamięci flash . Ich konstrukcja przypomina bramki logiczne NOR i cechuje się szybkim dostępem do danych. Dostęp do nich jest podobny do pamięci o losowym dostępie do danych (RAM).

NAND flash – bez napięciowe pamięci flash. Ich konstrukcja przypomina bramki logiczne NAND, przez co jest bardziej zwarta i możliwe jest tworzenie mniejszych układów o dużych pojemnościach. Odczyt danych odbywa się przez dostęp stronicowy (page access), co zmniejsza prędkość odczytu. Pamięci te dzielą się na dwa typy różniące się sposobem zapisu, stary SLC (Single-Level Cell) oraz nowszy MLC (Multi-Level Cell). Typ SLC pozwala na zapisanie tylko jednego bitu informacji w jednej komórce. Typ MLC pozwala na zapisanie więcej niż jednego bitu w komórce korzystając z wielu poziomów ładunku elektrycznego.

One-NAND – Typ pamięci NAND oferujący małe rozmiary pamięci przy dużej pojemności, specyficzne dla tego typu, oraz prosty swobodny interfejs dostępu do pamięci charakterystyczny dla pamięci NOR.

Managed NAND – pamięć NAND z wbudowanym kontrolerem zarządzającym pamięcią. Pozwala na uniknięcie utraty danych spowodowanej błędami zapisu, wyciekami pamięci, błędnym schematem bloków. Często używane w układach eMMC.

PSRAM – (ang. Pseudo-Static Random Access Memory) układ DRAM z wbudowanym  odświeżaniem oraz kontrolerem adresów w celu uproszczenia dostępu do pamięci, zgodny z interfejsem SRAM.

LPDDR – (znane także jako Mobile DDR, mDDR, Low Power DDR) Mobilna synchroniczna pamięć krótkotrwała DDR (ang. Double Data Rate) działająca na tych samych zasadach, co pamięć DDR w komputerach PC. W porównaniu do pamięci stosowanej w komputerach są one przystosowane do małych napięć (1.8V dla LPDDR1 oraz 1.2V dla LPDDR2) w celu zminimalizowania poboru mocy.

eMMC – połączenie pamięci Managed NAND z kontrolerem MMC, zapewniające komunikację z pamięcią NAND poprzez interfejs MMC. Dzięki takiemu połączeniu niepotrzebne jest dodatkowe oprogramowanie sterujące pamięcią.

MPC – pakiet pamięci składający się z pamięci o dostępie asynchronicznym (RAM) oraz pamięci nie wymagającej zasilania (NAND), które są zawarte w jednym chipie. Używane są w urządzeniach przenośnych. Pamięć RAM używana jest jako pamięć operacyjna urządzenia, a pamięć NAND, jako skład danych (podobnie jak dysk twardy). Dzięki umieszczeniu ich w jednym chipie oszczędza się miejsce oraz upraszcza układ.

4 komentarze:

  1. super! dzięki, profesjonalnie i szczegółowo opisane pamięci w urządzeniach mobilnych. właśnie takiego wyjaśnienia szukałem ;)

    OdpowiedzUsuń
  2. Jeśli pasjonujecie się programowaniem aplikacji to może dobrym pomysłem byłoby rozpoczęcie studiów na kierunku http://www.wseiz.pl/pl/studia/wydzial-zarzadzania/informatyka/22-dla-kandytata/oferta-studiow-i-i-ii-stopnia/wydzial-zarzadzania/1752-programowanie-aplikacji . Wielu moich znajomych chwali sobie tę uczelnie oraz prowadzących, wydaje mi się, że dzięki studiom można się wiecej nauczyć niż na własną rękę

    OdpowiedzUsuń