LP-DDR(1)Edit
Az eredeti alacsony fogyasztású DDR (néha visszamenőlegesen LPDDR1-nek nevezik) a DDR SDRAM egy kissé módosított formája, amely több változtatással csökkenti az általános energiafogyasztást.
A legjelentősebb, hogy a tápfeszültség 2,5 V-ról 1,8 V-ra csökken. További megtakarítást eredményez a hőmérséklet-kompenzált frissítés (a DRAM alacsony hőmérsékleten ritkábban igényel frissítést), a részleges tömbi önfrissítés és a “mély kikapcsolási” üzemmód, amely feláldozza az összes memóriatartalmat. Emellett a chipek kisebbek, így kevesebb helyet foglalnak a lapon, mint nem mobil társaik. A Samsung és a Micron a két fő szállítója ennek a technológiának, amelyet olyan táblagépekben és telefonokban használnak, mint az iPhone 3GS, az eredeti iPad, a Samsung Galaxy Tab 7.0 és a Motorola Droid X.
LP-DDR2Edit
A JEDEC új szabványa, a JESD209-2E egy drámaian átdolgozott, alacsony fogyasztású DDR interfészt határoz meg. Ez nem kompatibilis sem a DDR1, sem a DDR2 SDRAM-mal, de képes a következőkre:
- LPDDR2-S2: 2n prefetch memória (mint a DDR1),
- LPDDR2-S4: 4n prefetch memória (mint a DDR2), vagy
- LPDDR2-N: nem illékony (NAND flash) memória.
A kis teljesítményű állapotok hasonlóak az alap LPDDR-hez, néhány további részleges tömbfrissítési lehetőséggel.
Az időzítési paraméterek az LPDDR-200-tól az LPDDR-1066-ig (100 és 533 MHz közötti órajelfrekvenciák) vannak megadva.
Az 1,2 V feszültségen működő LPDDR2 a vezérlő- és címvonalakat egy 10 bites, dupla adatsebességű CA-buszra multiplexeli. A parancsok hasonlóak a normál SDRAM-okéhoz, kivéve az előtöltés és a burst terminate opkódok újbóli hozzárendelését:
CK | CA0 (RAS) |
CA1 (CAS) |
CA2 (WE) |
CA3 | CA4 | CA5 | CA6 | CA7 | CA8 | CA9 | Művelet | |||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
H | H | H | H | – | NOP | |||||||||
↘ | – | |||||||||||||
H | H | L | H | H | – | Előtöltés minden bankban | ||||||||
↘ | – | |||||||||||||
H | H | L | H | L | – | BA0 | BA1 | BA2 | Egy bank előtöltése | |||||
↘ | – | |||||||||||||
H | H | H | L | H | A30 | A31 | A32 | BA0 | BA1 | BA2 | Preaktív (LPDDR2-N csak) |
|||
↘ | A20 | A21 | A22 | A23 | A24 | A24 | A25 | A26 | A27 | A28 | A29 | |||
H | H | L | L | L | – | Burst terminate | ||||||||
↘ | – | |||||||||||||
H | L | H | rezervált | C1 | C2 | BA0 | BA1 | BA2 | Read (AP=autó…előtöltés) |
|||||
↘ | AP | C3 | C4 | C5 | C6 | C7 | C8 | C9 | C10 | C11 | ||||
H | L | L | rezervált | C1 | C2 | BA0 | BA1 | BA2 | Write (AP=auto-előtöltés) |
|||||
↘ | AP | C3 | C4 | C5 | C6 | C7 | C8 | C9 | C10 | C11 | ||||
L | H | R8 | R9 | R10 | R11 | R12 | BA0 | BA1 | BA2 | Activate (R0-14=Rov. cím) |
||||
↘ | R0 | R1 | R2 | R3 | R4 | R5 | R6 | R7 | R13 | R14 | ||||
L | H | A15 | A16 | A17 | A18 | A19 | BA0 | BA1 | BA2 | Activate (LPDDR2-N csak) |
||||
↘ | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | ||||
L | L | H | H | – | Refresh all banks (LPDDR2-Sx csak) |
|||||||||
↘ | – | |||||||||||||
L | L | H | L | – | Egy bank frissítése (Round-robin címzés) |
|||||||||
↘ | – | |||||||||||||
L | L | L | H | MA0 | MA1 | MA2 | MA3 | MA3 | MA4 | MA5 | Mode register read (MA0-7=Address) |
|||
↘ | MA6 | MA7 | – | |||||||||||
L | L | L | L | L | MA0 | MA1 | MA2 | MA3 | MA4 | MA4 | MA4 | MA5 | Mode register write (OP0-7=Data) |
|
↘ | MA6 | MA6 | MA7 | OP0 | OP1 | OP2 | OP3 | OP4 | OP5 | OP6 | OP7 |
A C0 oszlopcímbit soha nem kerül átvitelre, és azt feltételezzük, hogy nulla. A burst átvitelek így mindig páros címekkel kezdődnek.
Az LPDDR2 rendelkezik egy aktív-alacsony chipszelekcióval (ha magas, minden NOP) és egy órajelet engedélyező CKE jellel is, amelyek az SDRAM-hoz hasonlóan működnek. Szintén az SDRAM-hoz hasonlóan a CKE első leesésének ciklusában küldött parancs választja ki a kikapcsolási állapotot:
- Ha a chip aktív, akkor a helyén fagyaszt.
- Ha a parancs NOP (CS alacsony vagy CA0-2 = HHH), akkor a chip üresjáratban van.
- Ha a parancs frissítési parancs (CA0-2 = LLH), a chip önfrissítő állapotba lép.
- Ha a parancs burst terminate (CA0-2 = HHL), a chip mély kikapcsolási állapotba lép. (Kilépéskor teljes reset-szekvencia szükséges.)
A hagyományos SDRAM-hoz képest a módregiszterek jelentősen kibővültek, 8 bites címtartományt kaptak, és visszaolvasásuk is lehetséges. Bár kisebbek, mint egy soros jelenlétérzékelő EEPROM, elegendő információt tartalmaznak ahhoz, hogy ne legyen szükség rájuk.
A 4 Gbitnél kisebb S2 eszközök és az 1 Gbitnél kisebb S4 eszközök csak négy bankkal rendelkeznek. Ezek figyelmen kívül hagyják a BA2 jelet, és nem támogatják a bankonkénti frissítést.
A nem-illékony memóriaeszközök nem használják a frissítési parancsokat, és az előtöltési parancsot az A20 és a feletti címbitek átvitelére rendelik át. Az alacsony sorrendű biteket (A19 és lejjebb) a következő Aktiválási parancs továbbítja. Ez a kiválasztott sort a memóriamezőből a 4 vagy 8 (a BA bitek által kiválasztott) soros adatpufferek egyikébe továbbítja, ahol a Read paranccsal olvashatók. A DRAM-mal ellentétben a bankcímbitek nem részei a memóriacímnek; bármely cím átvihető bármelyik soradatpufferbe. Egy soradatpuffer a memória típusától függően 32 és 4096 bájt közötti hosszúságú lehet. A 32 bájtnál nagyobb sorok figyelmen kívül hagyják az aktiválási parancs néhány alacsonyrendű címbitjét. A 4096 bájtnál kisebb sorok figyelmen kívül hagyják az Olvasás parancs néhány magasrendű címbitjét.
A nem felejtő memória nem támogatja a soradatpufferekbe való írási parancsot. Ehelyett egy speciális címtartományban található vezérlőregiszterek sora támogatja az olvasási és írási parancsokat, amelyekkel a memóriasor törlésére és programozására lehet használni.
LP-DDR3Edit
A JEDEC 2012 májusában közzétette a JESD209-3 alacsony fogyasztású memóriaeszköz-szabványt. Az LPDDR2-hez képest az LPDDR3 nagyobb adatátviteli sebességet, nagyobb sávszélességet és energiahatékonyságot, valamint nagyobb memóriasűrűséget kínál. Az LPDDR3 1600 MT/s adatátviteli sebességet ér el, és kulcsfontosságú új technológiákat alkalmaz: írási szinteltolás és parancs/cím képzés, opcionális on-die terminálás (ODT) és alacsony I/O kapacitás. Az LPDDR3 támogatja mind a Package-on-Package (PoP), mind a diszkrét csomagolási típusokat.
A parancskódolás megegyezik az LPDDR2-vel, 10 bites, dupla adatátviteli sebességű CA-buszt használ. A szabvány azonban csak a 8n-prefetch DRAM-ot határozza meg, és nem tartalmazza a flashmemória-parancsokat.
Az LPDDR3-at használó termékek közé tartozik a 2013-as MacBook Air, az iPhone 5S, az iPhone 6, a Nexus 10, a Samsung Galaxy S4 (GT-I9500) és a Microsoft Surface Pro 3. Az LPDDR3 2013-ban vált általánossá, 800 MHz-es DDR (1600 MT/s) sebességgel működik, és a 2011-es PC3-12800-as noteszgép-memóriához hasonló sávszélességet kínál (12,8 GB/s sávszélesség). Ennek a sávszélességnek az eléréséhez a vezérlőnek kétcsatornás memóriát kell megvalósítania. Ez a helyzet például az Exynos 5 Dual és az 5 Octa esetében.
A specifikáció LPDDR3e nevű “továbbfejlesztett” változata 2133 MT/s-ra növeli az adatátviteli sebességet. A Samsung Electronics bemutatta az első 4 gigabites, 20 nm-es osztályú LPDDR3 modulokat, amelyek akár 2133 MT/s-os adatátviteli sebességre is képesek, ami több mint kétszerese a régebbi LPDDR2 teljesítményének, amely csak 800 MT/s-ra képes. A különböző gyártók különböző SoC-jei natívan támogatják a 800 MHz-es LPDDR3 RAM-ot is. Ilyen például a Qualcomm Snapdragon 600 és 800, valamint az Exynos és az Allwinner sorozat néhány SoC-je.
LP-DDR4Edit
2012. március 14-én a JEDEC konferenciát rendezett annak feltárására, hogy a jövőbeli mobileszköz-követelmények hogyan fogják vezérelni az LPDDR4-hez hasonló szabványokat. 2013. december 30-án a Samsung bejelentette, hogy kifejlesztette az első 20 nm-es osztályú, 8 gibites (1 GiB) LPDDR4-et, amely 3200 MT/s sebességű adatátvitelre képes, így 50 százalékkal nagyobb teljesítményt nyújt, mint a leggyorsabb LPDDR3, és 1,1 volton mintegy 40 százalékkal kevesebb energiát fogyaszt.
2014. augusztus 25-én a JEDEC közzétette a JESD209-4 LPDDR4 Low Power Memory Device szabványt.
A jelentős változások a következők:
- A csatolási sebesség megduplázása és számos ebből következő elektromos változtatás, beleértve az I/O szabvány alacsony feszültségű swing-terminált logikára (LVSTL) történő megváltoztatását
- A belső előhívás méretének megduplázása, és a minimális átviteli méret
- A 10 bites DDR parancs/cím buszról 6 bites SDR buszra váltás
- Egy 32 bites széles buszról két független 16 bites széles buszra váltás
- Az önfrissítést dedikált parancsok engedélyezik, nem pedig a CKE vonal vezérli
A szabvány olyan SDRAM csomagokat határoz meg, amelyek két független 16 bites hozzáférési csatornát tartalmaznak, amelyek csomagonként legfeljebb két lapkához csatlakoznak. Mindegyik csatorna 16 adatbit széles, saját vezérlő/címzési csapokkal rendelkezik, és 8 DRAM bankhoz való hozzáférést tesz lehetővé. Így a csomag háromféleképpen csatlakoztatható:
- Az adatsorok és a vezérlés párhuzamosan csatlakoznak egy 16 bites adatbuszhoz, és csatornánként csak a chipkiválasztók csatlakoznak önállóan.
- Egy 32 bites széles adatbusz két felére, és a vezérlővonalak párhuzamosan, beleértve a chipkiválasztást is.
- Két független 16 bites széles adatbuszra
Minden lapka 4, 6, 8, 12 vagy 16 gibit memóriát biztosít, fele csatornánként. Így minden bank az eszköz méretének egy tizenhatodát teszi ki. Ez a megfelelő számú (16 Ki-től 64 Ki-ig) 16384 bites (2048 bájtos) sorokba van szervezve. Tervezik a kiterjesztést 24 és 32 gibitre, de még nem dőlt el, hogy ez a sorok számának, szélességének vagy a bankok számának növelésével történik-e.
Nagyobb csomagok, amelyek dupla szélességet (négy csatorna) és csatornapáronként akár négy lapkát (csomagonként összesen 8 lapka) biztosítanak, szintén definiálva vannak.
Az adatokhoz 16 vagy 32 átvitelből (256 vagy 512 bit, 32 vagy 64 byte, 8 vagy 16 ciklus DDR) álló tömbökben lehet hozzáférni. A kötegeknek 64 bites határon kell kezdődniük.
Mivel az órajelek frekvenciája magasabb, a minimális köteghossz pedig hosszabb, mint a korábbi szabványoknál, a vezérlőjelek nagyobb mértékben multiplexelhetők anélkül, hogy a parancs/cím busz szűk keresztmetszetté válna. Az LPDDR4 a vezérlő- és címvonalakat egy 6 bites, egy adatátviteli sebességű CA-buszra multiplexeli. A parancsok 2 órajelciklust igényelnek, és a címet kódoló műveletek (pl. sor aktiválása, oszlop olvasása vagy írása) két parancsot igényelnek. Például egy üres chipről történő olvasás kéréséhez négy parancsra van szükség, ami 8 órajelciklust vesz igénybe: Aktiválás-1, Aktiválás-2, Olvasás, CAS-2.
A chipkiválasztó vonal (CS) aktív magas. A parancs első ciklusát a chipkiválasztás magas, a második ciklusban alacsony értéken van.
Első ciklus (CS=H) | Második ciklus (CS=L) | Művelet | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CA5 | CA4 | CA3 | CA2 | CA1 | CA0 | CA5 | CA4 | CA3 | CA2 | CA1 | CA0 | |||
L | L | L | L | L | L | L | – | Nem működik | ||||||
H | L | L | L | L | L | L | 0 | OP4 | OP3 | OP2 | OP1 | 1 | Multi-célú parancs | |
AB | H | L | L | L | L | L | – | BA2 | BA1 | BA0 | előtöltés (AB=minden bank) | |||
AB | L | H | L | L | L | – | BA2 | BA1 | BA0 | frissítés (AB=minden bank) | ||||
– | H | H | L | L | L | – | Self-refresh entry | |||||||
BL | L | L | H | L | L | AP | C9 | – | BA2 | BA1 | BA0 | Write-1 (+CAS-2) | ||
– | H | L | H | L | L | – | Self-refresh exit | |||||||
0 | L | H | H | L | L | L | AP | C9 | – | BA2 | BA1 | BA0 | Maszkolt írás-1 (+CAS-2) | |
– | H | H | H | L | L | – | (fenntartva) | |||||||
BL | L | L | L | H | L | AP | C9 | – | BA2 | BA1 | BA0 | Read…1 (+CAS-2) | ||
C8 | H | L | L | H | H | L | C7 | C6 | C5 | C4 | C3 | C2 | CAS…2 | |
– | H | L | H | L | – | (fenntartva) | ||||||||
OP7 | L | L | H | H | L | MA5 | MA4 | MA3 | MA2 | MA1 | MA0 | Mode Register Write-1 és -2 MA=Adress, OP=Adatok |
||
OP6 | H | L | H | H | H | L | OP5 | OP4 | OP3 | OP2 | OP1 | OP0 | ||
– | L | H | H | H | H | L | MA5 | MA4 | MA3 | MA2 | MA1 | MA0 | Mode Register Read (+CAS-2) | |
– | H | H | H | H | H | L | – | (fenntartva) | ||||||
R15 | R14 | R13 | R12 | L | H | R11 | R10 | R16 | BA2 | BA1 | BA0 | Activate-1 és -2 | ||
R9 | R8 | R7 | R6 | H | H | H | R5 | R4 | R3 | R2 | R1 | R0 |
The CAS-2 parancs minden olyan parancs második feleként használatos, amely átvitelt hajt végre az adatbuszon, és alacsony sorrendű oszlopcímbiteket biztosít:
- Az olvasási parancsoknak olyan oszlopcímmel kell kezdődniük, amely 4 többszöröse; nincs rendelkezés a memória számára nem nulla C0 vagy C1 címbit közlésére.
- Az írási parancsoknak olyan oszlopcímmel kell kezdődniük, amely 16 többszöröse; a C2-nek és C3-nak nullának kell lennie az írási parancshoz.
- A Mode regiszter olvasását és néhány többcélú parancsot is CAS-2 parancsnak kell követnie, azonban az összes oszlopbitnek nullának (alacsony) kell lennie.
A burst hossza 16, 32 vagy dinamikusan választható az olvasási és írási műveletek BL bitjével.
Mind a 8 adatvonalhoz egy DMI (data mask/invert) jel tartozik, amely az adatátvitel során magasra hajtott bitek számának minimalizálására használható. Ha magas, a többi 8 bitet az adó és a vevő is kiegészíti. Ha egy bájt öt vagy több 1 bitet tartalmaz, a DMI jelet három vagy kevesebb adatvonallal együtt lehet magasra hajtani. Mivel a jelvonalakat alacsonyan zárják le, ez csökkenti az energiafogyasztást.
(Egy alternatív felhasználási mód, amikor a DMI-t arra használják, hogy az egyes átviteleknél váltó adatvonalak számát legfeljebb 4-re korlátozzák, minimalizálja a keresztbeszólásokat. Ezt a memóriavezérlő használhatja írás közben, de a memóriaeszközök nem támogatják.)
Az adatbusz inverziója külön engedélyezhető olvasás és írás esetén. A maszkolt írásoknál (amelyek külön parancskóddal rendelkeznek) a DMI jel működése attól függ, hogy az írási inverzió engedélyezve van-e.
- Ha a DBI írásoknál ki van kapcsolva, a DMI magas szintje azt jelzi, hogy a megfelelő adatbájt figyelmen kívül hagyandó és nem írandó
- Ha a DBI írásoknál engedélyezve van, a DMI alacsony szintje egy 5 vagy több bitet tartalmazó adatbájttal kombinálva egy figyelmen kívül hagyandó és nem írandó adatbájtot jelez.
A LPDDR4 tartalmaz egy “célzott sorfrissítési” mechanizmust is a szomszédos sorok “row hammer”-je miatti sérülések elkerülése érdekében. A három aktiválási/előtöltési szekvenciából álló speciális sorozat meghatározza azt a sort, amelyet az eszköz által meghatározott küszöbértéknél (200 000 és 700 000 között frissítési ciklusonként) gyakrabban aktiváltak. Az eszköz belsőleg a fizikailag szomszédos sorokat frissíti az aktiválási parancsban megadott sor helyett.:153-54
LP-DDR4XEdit
A Samsung Semiconductor egy LPDDR4-változatot javasolt, amelyet LPDDR4X-nek nevezett el.:11 Az LPDDR4X megegyezik az LPDDR4-gyel, kivéve, hogy további energiát takarít meg az I/O feszültség (Vddq) 1,1 V-ról 0,6 V-ra csökkentésével. Az SK Hynix 2017. január 9-én jelentette be a 8 és 16 GiB-os LPDDR4X csomagokat. A JEDEC 2017. március 8-án tette közzé az LPDDR4X szabványt. Az alacsonyabb feszültség mellett a további fejlesztések közé tartozik az egycsatornás die opció a kisebb alkalmazásokhoz, az új MCP, PoP és IoT csomagok, valamint a legmagasabb, 4266 MT/s sebességi fokozathoz további definíciós és időzítési fejlesztések.
LP-DDR5Szerkesztés
2019. február 19-én a JEDEC közzétette a JESD209-5, a Low Power Double Data Rate 5 (LPDDR5) szabványt.
A Samsung 2018 júliusában bejelentette, hogy működőképes LP-DDR5 chipek prototípusával rendelkezik. Az LPDDR5 a következő változásokat vezeti be:
- Az adatátviteli sebesség 6400 MT/s-ra emelkedik.
- Differenciális órajeleket használnak
- A refetch nem duplázódik meg újra, hanem marad 16n
- A bankok száma 16-ra nő, négy DDR4-szerű bankcsoportra osztva
- Teljesítménytakarékossági fejlesztések:
- Data-Copy és Write-X (all one or all zero) parancsok az adatátvitel csökkentésére
- Dinamikus frekvencia- és feszültségskálázás
- A WCK & Read Strobe (RDQS)
Intel Tiger Lake és Snapdragon 888 memóriavezérlő támogatja az LPDDR5-öt.