Synkron dynamiskt slumpmässigt åtkomstminne -
Synchronous dynamic random-access memory

Från Wikipedia, den fria encyklopedin
SDRAM -minnesmodul

Synkron dynamiskt slumpmässigt åtkomstminne ( synkron dynamiskt RAM eller SDRAM ) är varje DRAM där driften av dess externa stiftgränssnitt koordineras av en externt levererad klocksignal .

DRAM -integrerade kretsar (IC: er) som producerades från början av 1970 -talet till början av 1990 -talet använde ett asynkront gränssnitt, där ingångskontrollsignaler har en direkt effekt på interna funktioner som bara försenas av resan över dess halvledarvägar. SDRAM har ett synkront gränssnitt, varigenom ändringar av styringångar känns igen efter en stigande kant på klockingången. I SDRAM -familjer som standardiserats av JEDEC styr klocksignalen stegningen av en intern slutlig tillståndsmaskin som svarar på inkommande kommandon. Dessa kommandon kan pipelineras för att förbättra prestanda, med tidigare påbörjade operationer slutförda medan nya kommandon tas emot. Minnet är uppdelat i flera lika stora men oberoende sektioner som kallas banker , vilket gör att enheten kan arbeta med ett minnesåtkomstkommando i varje bank samtidigt och påskynda åtkomsten på ett sammanflätat sätt. Detta gör det möjligt för SDRAM att uppnå större samtidighet och högre dataöverföringshastigheter än asynkrona DRAM kan.

Pipeline innebär att chipet kan acceptera ett nytt kommando innan det har behandlat det föregående. För en pipelinerad skrivning kan skrivkommandot omedelbart följas av ett annat kommando utan att vänta på att data skrivs in i minnesmatrisen. För en pipelinerad läsning visas den begärda datan med ett fast antal klockcykler (latens) efter läskommandot, under vilket ytterligare kommandon kan skickas.

Historia

Åtta Hyundai SDRAM IC: er på ett PC100 DIMM -paket

De tidigaste DRAM -enheterna synkroniserades ofta med CPU -klockan (klockade) och användes med tidiga Intel -processorer. I mitten av 1970-talet flyttade DRAM till den asynkrona designen, men på 1990-talet återgick till synkron drift.

Den första kommersiella SDRAM var Samsung KM48SL2000 minneschip , som hade en kapacitet på 16

 
Mbit. Den tillverkades av Samsung Electronics med en CMOS (komplementär metall-oxid-halvledare ) tillverkningsprocess 1992 och massproducerades 1993. År 2000 hade SDRAM ersatt praktiskt taget alla andra typer av DRAM i moderna datorer på grund av dess högre prestanda .

SDRAM -latens är inte i sig lägre (snabbare) än asynkron DRAM. Faktum är att tidigt SDRAM var något långsammare än samtidiga burst EDO DRAM på grund av den extra logiken. Fördelarna med SDRAMs interna buffring kommer från dess förmåga att interleave operationer till flera minnesbanker och därigenom öka effektiv bandbredd .

Idag tillverkas i stort sett all SDRAM i enlighet med standarder som fastställts av JEDEC , en elektronikindustrisammanslutning som antar öppna standarder för att underlätta driftskompatibilitet mellan elektroniska komponenter. JEDEC antog formellt sin första SDRAM -standard 1993 och antog därefter andra SDRAM -standarder, inklusive de för DDR , DDR2 och DDR3 SDRAM .

Dubbel datahastighet SDRAM, känd som DDR SDRAM , demonstrerades första gången av Samsung 1997. Samsung släppte det första kommersiella DDR SDRAM -chipet (64

 
Mbit) i juni 1998, följt strax efter av Hyundai Electronics (nu SK Hynix ) samma år.

SDRAM finns också i registrerade sorter, för system som kräver större skalbarhet som servrar och arbetsstationer .

Idag inkluderar världens största tillverkare av SDRAM: Samsung Electronics , Panasonic , Micron Technology och Hynix .

Tidpunkt

Det finns flera gränser för DRAM -prestanda. Mest noterad är läscykeltiden, tiden mellan successiva läsoperationer till en öppen rad. Denna tid minskade från 10 ns för 100 MHz SDRAM (1 MHz = 1 1000^2 Hz) till 5 ns för DDR-400, men har varit relativt oförändrad genom DDR2-800 och DDR3-1600 generationer. Genom att använda gränssnittskretsarna vid allt högre multiplar av den grundläggande läshastigheten har dock den uppnåbara bandbredden ökat snabbt.

En annan gräns är CAS -latensen , tiden mellan leverans av en kolumnadress och mottagning av motsvarande data. Återigen har detta varit relativt konstant vid 10–15 ns under de senaste generationerna av DDR SDRAM.

Under drift är CAS -latens ett specifikt antal klockcykler som är programmerade i SDRAM: s lägesregister och förväntas av DRAM -styrenheten. Vilket värde som helst kan programmeras, men SDRAM fungerar inte korrekt om det är för lågt. Vid högre klockfrekvenser ökar naturligtvis den användbara CAS -latensen i klockcykler. 10–15 ns är 2-3 cykler (CL2–3) på 200 MHz klockan på DDR-400 SDRAM, CL4-6 för DDR2-800 och CL8-12 för DDR3-1600. Långsammare klockcykler tillåter naturligtvis lägre antal CAS -latenscykler.

SDRAM -moduler har sina egna tidsspecifikationer, som kan vara långsammare än chipsen på modulen. När 100 MHz SDRAM -chips först uppträdde sålde vissa tillverkare "100 MHz" -moduler som inte kunde fungera på ett tillförlitligt sätt med den klockfrekvensen. Som svar publicerade Intel PC100 -standarden, som beskriver krav och riktlinjer för att producera en minnesmodul som kan fungera pålitligt vid 100 MHz. Denna standard var mycket inflytelserik och termen "PC100" blev snabbt en vanlig identifierare för 100 MHz SDRAM -moduler, och moduler är nu vanligtvis betecknade med "PC" -prefixerade nummer (PC66, PC100 eller PC133 - även om siffrornas faktiska betydelse har förändrats).

Styrsignaler

Alla kommandon är tidsinställda relativt den stigande kanten av en klocksignal. Förutom klockan finns det sex styrsignaler, mestadels aktiva låga , som samplas på klockans stigande kant:

  • CKE -klocka aktiveras. När denna signal är låg, fungerar chipet som om klockan har stannat. Inga kommandon tolkas och kommandotiden går inte. Tillståndet för andra kontrollledningar är inte relevant. Effekten av denna signal fördröjs faktiskt med en klockcykel. Det vill säga den aktuella klockcykeln fortsätter som vanligt, men följande klockcykel ignoreras, förutom att testa CKE -ingången igen. Normala operationer återupptas på klockans stigande kant efter den där CKE samplas högt. Sagt på ett annat sätt, alla andra chipoperationer är tidsinställda relativt den stigande kanten av en maskerad klocka. Den maskerade klockan är den logiska OCH för ingångsklockan och tillståndet för CKE -signalen under den tidigare stigande kanten av ingångsklockan.
  • DQM -datamask . (Bokstaven Q visas eftersom datalinjerna, efter digitala logiska konventioner, är kända som "DQ" -linjer.) När de är höga, undertrycker dessa signaler data I/O. Vid åtföljande skrivdata skrivs inte data faktiskt till DRAM. När det påstås hög två cykler före en läscykel matas inte läsdata ut från chipet. Det finns en DQM -linje per 8 bitar på ett x16 -minneskort eller DIMM.

Kommandosignaler

  • RAS
    , radadress strobe. Trots namnet är detta inte en strobe, utan snarare en kommandobit. Tillsammans med
    CAS
    och
    WE
    väljer detta ett av åtta kommandon.
  • CAS
    , kolumnadress strobe. Detta är inte heller en strobe, snarare en kommandobit. Tillsammans med
    RAS
    och
    WE
    väljer detta ett av åtta kommandon.
  • VI
    , skriv aktivera. Tillsammans med
    RAS
    och
    CAS
    väljer detta ett av åtta kommandon. Det skiljer i allmänhet läsliknande kommandon från skrivliknande kommandon.

Bankval (BAn)

SDRAM -enheter är internt uppdelade i antingen två, fyra eller åtta oberoende interna databanker. En till tre bankadressingångar (BA0, BA1 och BA2) används för att välja vilken bank ett kommando riktas mot.

Adressering (A10/An)

Många kommandon använder också en adress som visas på adressinmatningsnålarna. Vissa kommandon, som antingen inte använder en adress eller presenterar en kolumnadress, använder också A10 för att välja varianter.

Kommandon

SDRAM -kommandona för SDR definieras enligt följande:

CS
RAS
CAS
VI
BA n A10 A n Kommando
H x x x x x x Kommandoinhibering (ingen operation)
L H H H x x x Ingen operation
L H H L x x x Burst avsluta: stoppa en burst läsning eller burst skriver pågår
L H L H Bank L kolumn Läs: läs en skur av data från den för närvarande aktiva raden
L H L H Bank H kolumn Läs med automatisk förladdning: enligt ovan och förladdning (stäng rad) när du är klar
L H L L Bank L kolumn Skriv: skriv en skur av data till den för närvarande aktiva raden
L H L L Bank H kolumn Skriv med automatisk förladdning: enligt ovan och förladdning (stäng rad) när du är klar
L L H H Bank rad Aktiv (aktivera): öppna en rad för läs- och skrivkommandon
L L H L Bank L x Förladdning: inaktivera (stäng) den aktuella raden för vald bank
L L H L x H x Ladda om alla: inaktivera (stäng) den aktuella raden för alla banker
L L L H x x x Automatisk uppdatering: uppdatera en rad i varje bank med en intern räknare. Alla banker måste vara förladdade.
L L L L 0 0 läge Load mode register: A0 till A9 laddas för att konfigurera DRAM -chipet.
De viktigaste inställningarna är CAS -latens (2 eller 3 cykler) och burstlängd (1, 2, 4 eller 8 cykler)

Alla SDRAM -generationer (SDR och DDRx) använder i huvudsak samma kommandon, med ändringarna:

  • Ytterligare adressbitar för att stödja större enheter
  • Ytterligare bankval
  • Bredare lägesregister (DDR2 och uppåt använder 13 bitar, A0 – A12)
  • Ytterligare register för utökat läge (valda av bankadressbitarna)
  • DDR2 tar bort kommandot burst terminate; DDR3 tilldelar det igen som "ZQ -kalibrering"
  • DDR3 och DDR4 använder A12 under läs- och skrivkommando för att indikera "burst chop", halvlång dataöverföring
  • DDR4 ändrar kodningen för aktiveringskommandot. En ny signal
    ACT
    styr den, under vilken de andra styrlinjerna används som radadressbitar 16, 15 och 14. När
    ACT
    är högt är andra kommandon desamma som ovan.

Konstruktion och drift

SDRAM -minnesmodul, zoomad

Till exempel kan en "512 MB" SDRAM DIMM (som innehåller 512 MB) vara gjord av åtta eller nio SDRAM-chips, var och en innehållande 512 Mbit lagringsutrymme, och var och en bidrar med 8 bitar till DIMM: s 64- eller 72-bitars bredd. Ett typiskt 512 Mbit SDRAM- chip innehåller internt fyra oberoende 16 MB minnesbanker. Varje bank består av 8 192 rader med 16 384 bitar vardera. (2048 8-bitars kolumner). En bank är antingen ledig, aktiv eller byter från en till den Övrig.

Det aktiva kommandot aktiverar en inaktiv bank. Den presenterar en tvåbitars bankadress (BA0 – BA1) och en 13-bitars radadress (A0 – A12) och orsakar en läsning av den raden i bankens array av alla 16 384 kolumnavkänningsförstärkare. Detta är också känt som "öppna" raden. Denna operation har den bieffekten att uppdatera de dynamiska (kapacitiva) minneslagringscellerna i den raden.

När raden har aktiverats eller "öppnas", läs och skrivkommandon är möjligt att den raden. Aktivering kräver ett minimum av tid, kallad rad-till-kolumnfördröjning, eller t RCD innan läsningar eller skrivningar kan inträffa. Denna tid, avrundad till nästa multipel av klockperioden, anger det minsta antalet väntecykler mellan ett aktivt kommando och ett läs- eller skrivkommando . Under dessa väntecykler kan ytterligare kommandon skickas till andra banker; eftersom varje bank fungerar helt oberoende.

Både läs och skrivkommandon kräver en kolumnadress. Eftersom varje chip har åtkomst till åtta bitar data åt gången finns det 2 048 möjliga kolumnadresser, vilket kräver endast 11 adressrader (A0 – A9, A11).

När en läsning kommando utfärdas kommer SDRAM producera motsvarande utdata på DQ linjerna i tid för den stigande kanten av klockan några klockcykler senare, beroende på den konfigurerade CAS latens. Efterföljande ord i skuret kommer att produceras i tid för efterföljande stigande klockkanter.

En skrivkommando åtföljs av data som skall skrivas drivs vidare till DQ linjer under samma stigande klockan kanten. Det är minneskontrollantens plikt att se till att SDRAM inte driver läsdata till DQ -linjerna samtidigt som den behöver driva skrivdata till dessa rader. Detta kan göras genom att vänta tills en lässerie är klar, genom att avsluta en lässerie eller genom att använda DQM -kontrollinjen.

När minneskontrollern behöver komma åt en annan rad måste den först återföra bankens avkänningsförstärkare till ett viloläge, redo att känna av nästa rad. Detta är känt som en "förladdning", eller "stängning" av raden. En förladdning kan kommenderas uttryckligen, eller den kan utföras automatiskt vid slutet av en läs- eller skrivoperation. Återigen finns det en minimitid, radförladdningsfördröjningen, t RP , som måste gå innan den raden är helt "stängd" och så är banken ledig för att få ett nytt aktiveringskommando på den banken.

Även om uppdatering av en rad är en automatisk bieffekt av att aktivera den, finns det en minsta tid för detta att hända, vilket kräver en minsta radåtkomsttid t RAS -fördröjning mellan ett aktivt kommando som öppnar en rad och motsvarande förladdningskommando stänger den. Denna gräns brukar dvärgas av önskade läs- och skrivkommandon till raden, så dess värde har liten effekt på typiska prestanda.

Kommando interaktioner

Kommandot Ingen drift är alltid tillåtet, medan kommandot för lastlägesregister kräver att alla banker är inaktiva och en fördröjning efteråt för att ändringarna ska träda i kraft. Kommandot för automatisk uppdatering kräver också att alla banker är inaktiva och tar en uppdateringscykeltid t RFC för att återställa chipet till viloläge. (Denna tid är vanligtvis lika med t RCD +t RP .) Det enda andra kommandot som är tillåtet på en inaktiv bank är det aktiva kommandot. Detta tar, som nämnts ovan, t RCD innan raden är helt öppen och kan acceptera läs- och skrivkommandon.

När en bank är öppen är det fyra tillåtna kommandon: läs, skriv, burst avsluta och förladdning. Läs- och skrivkommandon börjar skurar, som kan avbrytas genom att följa kommandon.

Avbryter en lässerie

Ett läsnings-, burst -avslutnings- eller förladdningskommando kan utfärdas när som helst efter ett läskommando och avbryter läsnings -burst efter den konfigurerade CAS -latensen. Så om ett läskommando utfärdas i cykel 0, utfärdas ett annat läskommando i cykel 2 och CAS -latensen är 3, då börjar det första läskommandot att spränga ut data under cyklerna 3 och 4, sedan kommer resultaten från den andra läsningen kommandot kommer att börja med cykel 5.

Om kommandot som utfärdades i cykel 2 var burst -terminera, eller en förladdning av den aktiva banken, skulle ingen utgång genereras under cykel 5.

Även om avläsningsavläsningen kan vara för vilken aktiv bank som helst, kommer ett förladdningskommando bara att avbryta avläsningsserien om den är till samma bank eller alla banker; ett förladdningskommando till en annan bank kommer inte att avbryta en läseskur.

Att avbryta en lässerie med ett skrivkommando är möjligt, men svårare. Det kan göras om DQM -signalen används för att undertrycka utsignalen från SDRAM så att minneskontrollen kan driva data över DQ -linjerna till SDRAM i tid för skrivoperationen. Eftersom effekterna av DQM på läsdata fördröjs med två cykler, men effekterna av DQM på skrivdata är omedelbara, måste DQM höjas (för att maskera läsdata) som börjar minst två cykler före skrivkommando men måste sänkas för skriva av kommandot (förutsatt att skrivkommandot är avsett att ha effekt).

Att göra detta på bara två klockcykler kräver noggrann samordning mellan den tid som SDRAM tar för att stänga av utmatningen på en klockkant och den tid som data måste tillhandahållas som inmatning till SDRAM för skrivningen på följande klockkant. Om klockfrekvensen är för hög för att ge tillräckligt med tid kan tre cykler behövas.

Om läskommandot innehåller automatisk förladdning börjar förladdningen samma cykel som avbrottskommandot.

Burst beställning

En modern mikroprocessor med cache kommer i allmänhet att komma åt minne i enheter med cachelinjer . För att överföra en 64-bytes cachelinje krävs åtta på varandra följande åtkomst till en 64-bitars DIMM, som alla kan triggas av ett enda läs- eller skrivkommando genom att konfigurera SDRAM-chipsen med hjälp av lägesregistret för att utföra åtta ordsserier . En hämtning av en cachelinje utlöses vanligtvis av en läsning från en viss adress, och SDRAM tillåter att det "kritiska ordet" i cachelinjen överförs först. ("Word" hänvisar här till bredden på SDRAM -chipet eller DIMM, vilket är 64 bitar för en typisk DIMM.) SDRAM -chips stöder två möjliga konventioner för ordning av de återstående orden i cachelinjen.

Bursts har alltid åtkomst till ett justerat block av BL -ord i rad som börjar på en multipel av BL. Så, till exempel, kommer en fyra-ords burst-åtkomst till valfri kolumnadress från fyra till sju att returnera ord fyra till sju. Beställningen beror dock på den efterfrågade adressen och det konfigurerade alternativet burst -typ: sekventiell eller interfolierad. Vanligtvis kräver en minneskontroller det ena eller det andra. När skurlängden är en eller två spelar skurstypen ingen roll. För en burstlängd på en är det begärda ordet det enda ordet som nås. För en burstlängd på två öppnas det begärda ordet först, och det andra ordet i det justerade blocket öppnas andra. Detta är följande ord om en jämn adress angavs och det föregående ordet om en udda adress angavs.

För det sekventiella burst -läget nås senare ord i ökande adressordning, som går tillbaka till blockets början när slutet nås. Så, till exempel, för en burstlängd på fyra och en begärd kolumnadress på fem, skulle orden nås i ordningen 5-6-7-4. Om skurlängden var åtta skulle åtkomstordern vara 5-6-7-0-1-2-3-4. Detta görs genom att lägga till en räknare till kolumnadressen och ignorera bär förbi burstlängden. Det interfolierade burst -läget beräknar adressen med hjälp av en exklusiv eller operation mellan räknaren och adressen. Med samma startadress på fem skulle en burst med fyra ord returnera ord i ordningen 5-4-7-6. En åtta ords burst skulle vara 5-4-7-6-1-0-3-2. Även om det är mer förvirrande för människor kan det vara lättare att implementera i hårdvara och föredras av Intel för sina mikroprocessorer.

Om den begärda kolumnadressen är i början av ett block, returnerar båda burstlägena (sekventiella och interfolierade) data i samma sekventiella sekvens 0-1-2-3-4-5-6-7. Skillnaden spelar bara roll om man hämtar en cachelinje från minnet i den första ordningen med kritiska ord.

Lägesregister

Enstaka datahastighet SDRAM har ett enda 10-bitars programmerbart lägesregister. Senare lägger SDRAM-standarder med dubbla datahastigheter till ytterligare modregister, adresserade med hjälp av bankadressnålarna. För SDR SDRAM ignoreras bankadressnålarna och adresslinjerna A10 och högre, men bör vara noll under en lägesregistrering.

Bitarna är M9 till M0, presenterade på adresslinjerna A9 till A0 under en lastcykelregistercykel.

  • M9: Skrivningsläge. Om 0, skriver använder läs burst -längd och läge. Om 1 är alla skrivningar icke-burst (enda plats).
  • M8, M7: Driftläge. Reserverat, och måste vara 00.
  • M6, M5, M4: CAS -latens. I allmänhet är endast 010 (CL2) och 011 (CL3) lagliga. Anger antalet cykler mellan ett läskommando och datautmatning från chipet. Chippet har en grundläggande gräns för detta värde i nanosekunder; under initialiseringen måste minneskontrollen använda sin kunskap om klockfrekvensen för att översätta denna gräns till cykler.
  • M3: Burst -typ. 0 - begär sekventiell burstordning, medan 1 begär interfolierad burst -ordning.
  • M2, M1, M0: Burstlängd. Värdena 000, 001, 010 och 011 anger en burststorlek på 1, 2, 4 eller 8 ord. Varje läsning (och skrivning, om M9 är 0) kommer att utföra så många åtkomst, såvida det inte avbryts av ett burststopp eller annat kommando. Värdet 111 anger en burst på hela raden. Skuren fortsätter tills den avbryts. Fullradiga skurar är endast tillåtna med den sekventiella skuretypen.

Senare (dubbel datahastighet) använder SDRAM -standarder fler modregisterbitar och tillhandahåller ytterligare modregister som kallas "utökade modregister". Registernumret kodas på bankadresspinnarna under lastlägesregistreringskommandot. Till exempel har DDR2 SDRAM ett 13-bitars moderegister, ett 13-bitars register för utökat läge nr 1 (EMR1) och ett 5-bitars register för utökat läge nr 2 (EMR2).

Automatisk omladdning

Det är möjligt att uppdatera ett RAM -chip genom att öppna och stänga (aktivera och förladdning) varje rad i varje bank. För att förenkla minneskontrollern stöder SDRAM -chips emellertid ett "auto refresh" -kommando, som utför dessa operationer till en rad i varje bank samtidigt. SDRAM har också en intern räknare, som iterates över alla möjliga rader. Minneskontrollern måste helt enkelt utfärda ett tillräckligt antal automatiska uppdateringskommandon (en per rad, 8192 i exemplet vi har använt) varje uppdateringsintervall (t REF = 64 ms är ett vanligt värde). Alla banker måste vara inaktiva (stängda, förladdade) när detta kommando utfärdas.

Låg effektläge

Som nämnts kan klockaktiveringsingången (CKE) användas för att effektivt stoppa klockan till en SDRAM. CKE -ingången samplas varje stigande kant på klockan, och om den är låg ignoreras följande stigande kant på klockan för alla andra ändamål än att kontrollera CKE. Så länge CKE är låg är det tillåtet att ändra klockfrekvensen eller till och med stoppa klockan helt.

Om CKE sänks medan SDRAM utför operationer, "fryser" det helt enkelt på plats tills CKE höjs igen.

kan minnesinnehållet gå förlorat. Det är lagligt att stanna klockan helt under denna tid för ytterligare energibesparingar.

Slutligen, om CKE sänks samtidigt som ett kommando för automatisk uppdatering skickas till SDRAM, går SDRAM in i självuppdateringsläge. Det här är som att stänga av, men SDRAM använder en on-chip timer för att generera interna uppdateringscykler efter behov. Klockan kan vara stoppad under denna tid. Även om självuppdateringsläget förbrukar något mer ström än avstängningsläget, tillåter det att minneskontrollen inaktiveras helt, vilket vanligtvis gör mer än skillnaden.

SDRAM designad för batteridrivna enheter erbjuder några ytterligare energibesparande alternativ. En är temperaturberoende uppdatering; en temperatursensor på chip minskar uppdateringsfrekvensen vid lägre temperaturer, snarare än att alltid köra den i värsta fall. En annan är selektiv uppdatering, som begränsar självuppdatering till en del av DRAM-arrayen. Fraktionen som uppdateras konfigureras med hjälp av ett register för utökat läge. Den tredje, implementerad i Mobile DDR (LPDDR) och LPDDR2 är "deep power down" -läge, vilket ogiltigförklarar minnet och kräver en fullständig återinitialisering för att lämna. Detta aktiveras genom att skicka ett "burst terminate" -kommando medan CKE sänks.

DDR SDRAM prefetch -arkitektur

DDR SDRAM använder prefetch -arkitektur för snabb och enkel åtkomst till flera dataord som finns på en gemensam fysisk rad i minnet.

Förhämtningsarkitekturen drar fördel av de specifika egenskaperna för minnesåtkomst till DRAM. Typiska DRAM -minnesoperationer innefattar tre faser: bitline -förladdning, radåtkomst, kolumnåtkomst. Radåtkomst är hjärtat i en läsoperation, eftersom det innebär en noggrann avkänning av de små signalerna i DRAM -minnesceller; det är den långsammaste fasen av minnesoperationen. Men när en rad har lästs kan efterföljande kolumnåtkomst till samma rad vara mycket snabb, eftersom avkänningsförstärkarna också fungerar som spärrar. För referens är en rad med en 1 Gbit DDR3 -enhet 2 048 bitar bred, så internt 2 048 bitar läses in i 2 048 separata avkänningsförstärkare under radåtkomstfasen. Radåtkomst kan ta 50 ns , beroende på hastigheten på DRAM, medan kolumnåtkomst från en öppen rad är mindre än 10 ns.

Traditionella DRAM -arkitekturer har länge stött snabb kolumnåtkomst till bitar på en öppen rad. För ett 8-bitars brett minneschip med en 2048 bitars bred rad kan åtkomst till någon av de 256 dataorden (2048/8) på raden vara mycket snabb, förutsatt att inga mellanliggande åtkomst till andra rader inträffar.

Nackdelen med den äldre snabbkolumnåtkomstmetoden var att en ny kolumnadress måste skickas för varje ytterligare dataord på raden. Adressbussen fick arbeta med samma frekvens som databussen. Förhämtningsarkitektur förenklar denna process genom att tillåta en enda adressförfrågan att resultera i flera dataord.

I en prefetch-buffertarkitektur, när en minnesåtkomst inträffar till en rad, tar bufferten tag i en uppsättning angränsande dataord på raden och läser upp dem ("brister" dem) i snabbbrandssekvens på IO-stiften, utan behov av enskilda kolumnadressförfrågningar. Detta förutsätter att CPU: n vill ha närliggande dataord i minnet, vilket i praktiken mycket ofta är fallet. Till exempel, i DDR1 kommer två intilliggande dataord att läsas från varje chip i samma klockcykel och placeras i förhämtningsbufferten. Varje ord sänds sedan på på varandra följande stigande och fallande kanter av klockcykeln. På samma sätt, i DDR2 med en 4n förhämtningsbuffert, läses fyra ord i följd och placeras i bufferten medan en klocka, som är två gånger snabbare än den interna klockan i DDR, sänder vart och ett av ordet i på varandra följande stigande och fallande kant av snabbare extern klocka

Förhämtningens buffertdjup kan också ses som förhållandet mellan kärnminnesfrekvensen och IO -frekvensen. I en 8n prefetch -arkitektur (t.ex. DDR3 ) kommer IO: erna att fungera 8 gånger snabbare än minneskärnan (varje minnesåtkomst resulterar i en burst av 8 dataord på IO: erna). Således kombineras en 200 MHz minneskärna med IO: er som var och en fungerar åtta gånger snabbare (1600 megabit per sekund). Om minnet har 16 IO är den totala läsbandbredden 200 MHz x 8 dataord/åtkomst x 16 IO = 25,6 gigabit per sekund (Gbit/s) eller 3,2 gigabyte per sekund (GB/s). Moduler med flera DRAM -chips kan ge motsvarande högre bandbredd.

Varje generation av SDRAM har en annan prefetch -buffertstorlek:

  • DDR SDRAM : s prefetch -buffertstorlek är 2n (två dataord per minnesåtkomst)
  • DDR2 SDRAM : s prefetch -buffertstorlek är 4n (fyra dataord per minnesåtkomst)
  • DDR3 SDRAMs buffertstorlek för förhämtning är 8n ​​(åtta dataord per minnesåtkomst)
  • DDR4 SDRAM : s buffertstorlek för förhämtning är 8n ​​(åtta dataord per minnesåtkomst)
  • DDR5 SDRAM : s prefetch -buffertstorlek är 8n; det finns ett ytterligare läge 16n

Generationer

SDRAM -funktionskarta
Typ Funktionsändringar
SDRAM
  • V cc = 3,3 V
  • Signal: LVTTL
DDR1
  • Åtkomst är ≥2 ord
  • Dubbelklockat
  • V cc = 2,5 V
  • 2,5 - 7,5 ns
    per cykel
  • Signal: SSTL_2 (2,5V)
DDR2 Åtkomst är ≥4 ord
"Burst terminate" bort
4 enheter som används parallellt
1,25 - 5 ns
per cykel
Interna operationer är på 1/2 av klockfrekvensen.
Signal: SSTL_18 (1.8V)
DDR3 Åtkomst är ≥8 ord
Signal: SSTL_15 (1.5V)
Mycket längre CAS -latenser
DDR4
V cc ≤ 1,2 V
punkt-till-punkt (enda modul per kanal)

SDR

64 MB ljudminne på Sound Blaster X-Fi Fatality Pro- ljudkortet är byggt av två Micron 48LC32M8A2 SDRAM-chips. De körs med 133 MHz (7,5 ns klockperiod) och har 8-bitars breda databussar.

Ursprungligen helt enkelt känt som SDRAM , kan enkel datahastighet SDRAM acceptera ett kommando och överföra ett ord med data per klockcykel. Chips är gjorda med en mängd olika databussstorlekar (oftast 4, 8 eller 16 bitar), men chipsen monteras i allmänhet till 168-stifts DIMM som läser eller skriver 64 (icke-ECC) eller 72 ( ECC ) bitar åt gången .

Användningen av databussen är invecklad och kräver därför en komplex DRAM -styrkrets. Detta beror på att data som skrivs till DRAM måste presenteras i samma cykel som skrivkommandot, men läsningar ger utgång 2 eller 3 cykler efter läskommandot. DRAM -styrenheten måste se till att databussen aldrig krävs för läsning och skrivning samtidigt.

Typiska SDRAM -klockfrekvenser är 66, 100 och 133 MHz (perioder på 15, 10 och 7,5 ns), respektive betecknade PC66, PC100 och PC133. Klockfrekvenser upp till 200 MHz fanns tillgängliga. Den fungerar med en spänning på 3,3 V.

Denna typ av SDRAM är långsammare än DDR -varianterna, eftersom endast ett ord av data överförs per klockcykel (enkel datahastighet). Men den här typen är också snabbare än sina föregångare utökade data ut DRAM (EDO-RAM) och snabbsida DRAM (FPM-RAM) som vanligtvis tog två eller tre klockor för att överföra ett ord av data.

PC66

PC66 hänvisar till intern flyttbar datorminne standard definierad av JEDEC . PC66 är en synkron DRAM som arbetar med en klockfrekvens på 66,66 MHz, på en 64-bitars buss, med en spänning på 3,3 V. PC66 är tillgänglig i 168-stifts DIMM och 144-stifts SO-DIMM- formfaktorer. Den teoretiska bandbredden är 533 MB/s. (1 MB/s = en miljon byte per sekund)

Denna standard användes av Intel Pentium- och AMD K6 -baserade datorer. Den finns också i Beige Power Mac G3 , tidiga iBooks och PowerBook G3 . Det används också i många tidiga Intel Celeron -system med en 66 MHz FSB . Det ersattes av PC100- och PC133 -standarderna.

PC100

DIMM: 168 stift och två hack

PC100 är en standard för internt flyttbart minne med slumpmässigt åtkomst , definierat av JEDEC . PC100 hänvisar till synkron DRAM som arbetar med en klockfrekvens på 100 MHz, på en 64-bitars bred buss, vid en spänning på 3,3 V. PC100 finns i 168-stifts DIMM och 144-stifts SO-DIMM- formfaktorer . PC100 är bakåtkompatibel med PC66 och ersattes av PC133 -standarden.

En modul byggd av 100 MHz SDRAM -chips kan inte nödvändigtvis fungera vid 100 MHz. PC100 -standarden specificerar möjligheterna för minnesmodulen som helhet. PC100 används i många äldre datorer; Datorer runt slutet av 1990 -talet var de vanligaste datorerna med PC100 -minne.

PC133

PC133 är en datorminnestandard som definieras av JEDEC . PC133 hänvisar till SDR SDRAM som arbetar med en klockfrekvens på 133 MHz, på en 64-bitars bred buss, vid en spänning på 3,3 V. PC133 finns i 168-stifts DIMM- och 144-stifts SO-DIMM- formfaktorer. PC133 är den snabbaste och sista SDR SDRAM -standarden som någonsin godkänts av JEDEC och levererar en bandbredd på 1,066 GB per sekund ([133,33 MHz * 64/8] = 1,066 GB/s). (1 GB/s = en miljard byte per sekund) PC133 är bakåtkompatibel med PC100 och PC66.

DDR

Medan åtkomstlatensen för DRAM i grunden begränsas av DRAM -arrayen, har DRAM mycket hög potentialbredd eftersom varje intern läsning faktiskt är en rad med många tusen bitar. För att göra mer av denna bandbredd tillgänglig för användare utvecklades ett gränssnitt för dubbel datahastighet . Detta använder samma kommandon, accepteras en gång per cykel, men läser eller skriver två ord med data per klockcykel. DDR -gränssnittet åstadkommer detta genom att läsa och skriva data om både de stigande och fallande kanterna på klocksignalen. Dessutom gjordes några mindre ändringar av SDR -gränssnittets timing i efterhand och matningsspänningen minskades från 3,3 till 2,5 V. Som ett resultat är DDR SDRAM inte bakåtkompatibel med SDR SDRAM.

DDR SDRAM (ibland kallat DDR1 för större klarhet) fördubblar läs- eller skrivenheten. varje åtkomst avser minst två ord i rad.

Typiska DDR SDRAM-klockfrekvenser är 133, 166 och 200 MHz (7,5, 6 och 5 ns/cykel), allmänt beskrivna som DDR-266, DDR-333 och DDR-400 (3,75, 3 och 2,5 ns per slag). Motsvarande 184-stifts DIMM är kända som PC-2100, PC-2700 och PC-3200. Prestanda upp till DDR-550 (PC-4400) är tillgänglig.

DDR2

DDR2 SDRAM är mycket likt DDR SDRAM, men fördubblar lästa eller skrivande enhet igen, till fyra ord i rad. Bussprotokollet förenklades också för att möjliggöra högre prestanda. (I synnerhet raderas kommandot "burst terminate".) Detta gör att busshastigheten för SDRAM kan fördubblas utan att klockfrekvensen för interna RAM -operationer ökar; istället utförs interna operationer i enheter fyra gånger så breda som SDRAM. Dessutom tillsattes en extra bankadressstift (BA2) för att tillåta åtta banker på stora RAM -chips.

Typiska DDR2 SDRAM-klockfrekvenser är 200, 266, 333 eller 400 MHz (perioder på 5, 3,75, 3 och 2,5 ns), allmänt beskrivna som DDR2-400, DDR2-533, DDR2-667 och DDR2-800 (perioder om 2,5, 1,875, 1,5 och 1,25 ns). Motsvarande 240-stifts DIMM kallas PC2-3200 till PC2-6400. DDR2 SDRAM är nu tillgängligt med en klockfrekvens på 533 MHz allmänt beskrivet som DDR2-1066 och motsvarande DIMM-enheter är kända som PC2-8500 (kallas även PC2-8600 beroende på tillverkare). Prestanda upp till DDR2-1250 (PC2-10000) är tillgänglig.

Observera att eftersom interna funktioner ligger på 1/2 av klockfrekvensen, har DDR2-400 minne (intern klockfrekvens 100 MHz) något högre latens än DDR-400 (intern klockfrekvens 200 MHz).

DDR3

DDR3 fortsätter trenden och fördubblar läs- eller skrivenheten till åtta ord i rad. Detta möjliggör ytterligare en fördubbling av bandbredd och extern busshastighet utan att behöva ändra klockfrekvensen för interna operationer, bara bredden. För att behålla 800–1600 M överföringar/s (båda kanterna på en 400–800 MHz klocka) måste den interna RAM -matrisen utföra 100–200 M hämtningar per sekund.

Återigen, med varje fördubbling, är nackdelen den ökade latensen . Som med alla DDR SDRAM-generationer är kommandon fortfarande begränsade till en klockkant och kommando latenser ges när det gäller klockcykler, vilket är halva hastigheten för den vanligtvis citerade överföringshastigheten (en CAS-latens på 8 med DDR3-800 är 8/ (400 MHz) = 20 ns, exakt samma latens för CAS2 på PC100 SDR SDRAM).

DDR3 -minneskort tillverkas kommersiellt och datorsystem som använde dem var tillgängliga från andra halvåret 2007, med betydande användning från 2008 och framåt. Ursprungliga klockfrekvenser var 400 och 533 MHz, vilka beskrivs som DDR3-800 och DDR3-1066 (PC3-6400 och PC3-8500-moduler), men 667 och 800 MHz, beskrivna som DDR3-1333 och DDR3-1600 (PC3-10600 och PC3-12800-moduler) är nu vanliga. Prestanda upp till DDR3-2800 (PC3 22400-moduler) är tillgängliga.

DDR4

DDR4 SDRAM är efterföljaren till DDR3 SDRAM . Det avslöjades på Intel Developer Forum i San Francisco 2008 och skulle släppas ut på marknaden under 2011. Tidpunkten varierade betydligt under utvecklingen - det förväntades ursprungligen släppas 2012 och senare (under 2010) förväntas att släppas 2015, innan prover tillkännagavs i början av 2011 och tillverkare började meddela att kommersiell produktion och utsläppande till marknaden förväntades 2012. DDR4 nådde massmarknadsanpassning runt 2015, vilket är jämförbart med de cirka fem åren som tog för DDR3 att uppnå massmarknadsövergång över DDR2.

DDR4 -chipsen körs med 1,2  V eller mindre jämfört med 1,5 V DDR3 -chips och har över 2 miljarder dataöverföringar per sekund. De förväntades introduceras vid frekvenser på 2133 MHz, uppskattade att stiga till en potentiell 4266 MHz och sänkt spänning på 1,05 V år 2013.

DDR4 gjorde inte fördubbla den inre prefetch bredden igen, men använder samma 8 n prefetch som DDR3. Således kommer det att bli nödvändigt att interleave läsningar från flera banker för att hålla databussen upptagen.

I februari 2009 validerade Samsung 40 nm DRAM -chips, som betraktades som ett "betydande steg" mot DDR4 -utveckling eftersom, från och med 2009, nuvarande DRAM -chips bara började migrera till en 50 nm -process. I januari 2011 meddelade Samsung färdigställande och släpp för testning av en 30 nm 2048 MB DDR4 DRAM -modul. Den har en maximal bandbredd på 2,13  Gbit/s vid 1,2 V, använder pseudo open drain -teknik och drar 40% mindre effekt än en motsvarande DDR3 -modul.

DDR5

I mars 2017 meddelade JEDEC att en DDR5 -standard är under utveckling, men gav inga detaljer förutom målen att fördubbla bandbredden för DDR4, minska strömförbrukningen och publicera standarden 2018. Standarden släpptes den 14 juli 2020.

Misslyckade efterträdare

Förutom DDR fanns det flera andra föreslagna minneteknologier för att lyckas SDR SDRAM.

Rambus DRAM (RDRAM)

RDRAM var en egen teknik som konkurrerade mot DDR. Dess relativt höga pris och nedslående prestanda (till följd av höga latenser och en smal 16-bitars datakanal kontra DDR: s 64 bitars kanal) fick den att tappa loppet för att lyckas SDR DRAM.

SLDRAM hade högre prestanda och tävlade mot RDRAM. Det utvecklades under slutet av 1990 -talet av SLDRAM -konsortiet. SLDRAM -konsortiet bestod av ett 20 -tal stora DRAM- och datorindustritillverkare. (SLDRAM -konsortiet införlivades som SLDRAM Inc. och bytte sedan namn till Advanced Memory International, Inc.). SLDRAM var en öppen standard och krävde inga licensavgifter. Specifikationerna krävde en 64-bitars buss som kör med 200, 300 eller 400 MHz klockfrekvens. Detta uppnås genom att alla signaler är på samma linje och därigenom undviker synkroniseringstiden för flera rader. Precis som DDR SDRAM använder SLDRAM en dubbelpumpad buss, vilket ger en effektiv hastighet på 400, 600 eller 800  MT/s . (1 MT/s = 1000^2 överföringar per sekund)

SLDRAM använde en 11-bitars kommandobuss (10 kommandobitar CA9: 0 plus en start-of-command FLAG-rad) för att överföra 40-bitars kommandopaket på 4 på varandra följande kanter på en differentiell kommandoklocka (CCLK/CCLK#). Till skillnad från SDRAM fanns det inga markeringssignaler per chip; varje chip tilldelades ett ID vid återställning, och kommandot innehöll ID för det chip som ska behandla det. Data överfördes i 4- eller 8-ordsserier över en 18-bitars (per chip) databuss med användning av en av två differentiella dataklockor (DCLK0/DCLK0# och DCLK1/DCLK1#). Till skillnad från standard SDRAM genererades klockan av datakällan (SLDRAM -chipet vid en läsoperation) och överfördes i samma riktning som data, vilket kraftigt reducerar dataskrävning. För att undvika behovet av en paus när DCLK -källan ändras, specificerade varje kommando vilket DCLK -par det skulle använda.

Det grundläggande läs/skriv -kommandot bestod av (börjar med CA9 i det första ordet):

SLDRAM Läs, skriv eller rad upp begäran paket
FLAGGA CA9 CA8 CA7 CA6 CA5 CA4 CA3 CA2 CA1 CA0
1 ID8 Enhets-ID ID0 CMD5
0 Kommandokod CMD0 Bank Rad
0 Rad (forts.) 0
0 0 0 0 Kolumn
  • 9 bitar enhets -ID
  • 6 kommandobitar
  • 3 bitar bankadress
  • 10 eller 11 bitar av radadress
  • 5 eller 4 bitar extra för rad- eller kolumnutvidgning
  • 7 bitar kolumnadress

Enskilda enheter hade 8-bitars ID. Den nionde biten av ID: t som skickades i kommandon användes för att adressera flera enheter. Varje anpassad power-of-2-grupp kan adresseras. Om den överförda msbit var inställd ignorerades alla minst signifikanta bitar upp till och med den minst signifikanta 0-bitarna av den överförda adressen för "adresseras detta till mig?" syften. (Om ID8 -biten faktiskt anses vara mindre signifikant än ID0 blir unicast -adressmatchningen ett speciellt fall för detta mönster.)

Ett läs/skriv -kommando hade msbit klart:

  • CMD5 = 0
  • CMD4 = 1 för att öppna (aktivera) den angivna raden; CMD4 = 0 för att använda den för närvarande öppna raden
  • CMD3 = 1 för att överföra en burst på 8 ord; CMD3 = 0 för en burst på 4 ord
  • CMD2 = 1 för en skrivning, CMD2 = 0 för en läsning
  • CMD1 = 1 för att stänga raden efter denna åtkomst; CMD1 = 0 för att låta den vara öppen
  • CMD0 väljer det DCLK -par som ska användas (DCLK1 eller DCLK0)

En anmärkningsvärd utelämning från specifikationen var per-byte-skrivning möjliggör; den var utformad för system med cacheminne och ECC -minne , som alltid skriver i multiplar av en cachelinje.

Ytterligare kommandon (med CMD5 -uppsättning) öppnade och stängde rader utan dataöverföring, utförde uppdateringsoperationer, läste eller skrev konfigurationsregister och utförde andra underhållsoperationer. De flesta av dessa kommandon stödde ytterligare ett 4-bitars sub-ID (skickat som 5 bitar, med samma multipeldestinationskodning som det primära ID) som kan användas för att skilja enheter som tilldelades samma primära ID eftersom de var anslutna till parallellt och alltid läst/skrivet samtidigt.

Det fanns ett antal 8-bitars kontrollregister och 32-bitars statusregister för att styra olika parametrar för enhetstiming.

Virtuellt kanalminne (VCM) SDRAM

) stöd för VCSDRAM.

VCM infogar en SRAM -cache med 16 "kanal" -buffertar, varje 1/4 rad "segment" i storlek, mellan DRAM -bankernas avkänningsförstärkarrader och data -I/O -stiften. "Förhämtning" och "återställning" -kommandon, unika för VCSDRAM, kopierar data mellan DRAM: s avkänningsförstärkarrad och kanalbuffertarna, medan motsvarigheten till SDRAMs läs- och skrivkommandon anger ett kanalnummer för åtkomst. Avläsningar och skrivningar kan således utföras oberoende av det för närvarande aktiva tillståndet för DRAM -gruppen, där motsvarande fyra fulla DRAM -rader är "öppna" för åtkomst åt gången. Detta är en förbättring jämfört med de två öppna raderna som är möjliga i en standard två-bank SDRAM. (Det finns faktiskt en 17: e "dummy channel" som används för vissa operationer.)

För att läsa från VCSDRAM, efter det aktiva kommandot, krävs ett "prefetch" -kommando för att kopiera data från avkänningsförstärkarmatrisen till kanalen SDRAM. Detta kommando anger en bank, två bitar av kolumnadress (för att välja segmentet i raden) och fyra bitar av kanalnummer. När detta har utförts kan DRAM -arrayen förladdas medan läskommandon till kanalbufferten fortsätter. För att skriva, först skrivs datan till en kanalbuffert (vanligtvis tidigare initierad med ett Prefetch -kommando), sedan kopierar ett återställningskommando, med samma parametrar som prefetch -kommandot, ett segment av data från kanalen till avkänningsförstärkaren.

Till skillnad från en vanlig SDRAM -skrivning, som måste utföras till en aktiv (öppen) rad, måste VCSDRAM -banken förladdas (stängas) när återställningskommandot utfärdas. Ett aktivt kommando omedelbart efter återställningskommandot anger att DRAM -raden slutför skrivningen till DRAM -matrisen. Det finns dessutom en 17: e "dummy channel" som tillåter skrivningar till den för närvarande öppna raden. Det kanske inte läses från, men kan hämtas till, skrivas till och återställas till avkänningsförstärkaren.

Även om normalt ett segment återställs till samma minnesadress som det hämtades från, kan kanalbuffertarna också användas för mycket effektiv kopiering eller rensning av stora, inriktade minnesblock. (Användningen av kvart-rad-segment drivs av det faktum att DRAM-celler är smalare än SRAM-celler. SRAM-bitarna är utformade för att vara fyra DRAM-bitar breda och kan enkelt anslutas till en av de fyra DRAM-bitarna som de sträcker sig över.) Ytterligare kommandon förhämtar ett par segment till ett par kanaler, och ett valfritt kommando kombinerar förhämtning, läsning och förladdning för att minska kostnaden för slumpmässiga läsningar.

Ovanstående är de JEDEC-standardiserade kommandona. Tidigare chips stödde inte dummy -kanalen eller parförhämtningen och använde en annan kodning för förladdning.

En 13-bitars adressbuss, som illustreras här, är lämplig för en enhet upp till 128 Mbit. Den har två banker, var och en innehåller 8 192 rader och 8 192 kolumner. Således är radadresser 13 bitar, segmentadresser är två bitar och åtta kolumnadressbitar krävs för att välja en byte från 2 048 bitarna (256 byte) i ett segment.

Synkron grafik -RAM (SGRAM)

Synkron grafik -RAM (SGRAM) är en specialiserad form av SDRAM för grafikkort. Den är utformad för grafikrelaterade uppgifter som texturminne och rambuffertar som finns på grafikkort . Det lägger till funktioner som bitmaskering (skrivning till ett specifikt bitplan utan att påverka de andra) och blockskrivning (fyller ett minnesblock med en enda färg). Till skillnad från VRAM och WRAM är SGRAM enportad. Det kan dock öppna två minnessidor samtidigt, vilket simulerar dual-port- karaktären hos andra video-RAM-tekniker.

Den tidigaste kända SGRAM minne 8

 
Mbit chips anor 1994: Hitachi HM5283206, infördes i november 1994, och NEC μPD481850, som infördes i december 1994. Den tidigaste kända kommersiella enhet till användning SGRAM är Sony 's PlayStation (PS) video spelkonsol , som börjar med den japanska SCPH-5000- modellen som släpptes i december 1995, med NEC μPD481850-chip.

Grafik dubbel datahastighet SDRAM (GDDR SDRAM)

Grafisk dubbel datahastighet SDRAM ( GDDR SDRAM ) är en typ av specialiserad DDR SDRAM utformad för att användas som huvudminne för grafikprocessorenheter (GPU). GDDR SDRAM skiljer sig från råvarutyper av DDR SDRAM som DDR3, även om de delar vissa kärntekniker. Deras primära egenskaper är högre klockfrekvenser för både DRAM -kärnan och I/O -gränssnittet, vilket ger större minnesbandbredd för GPU: er. Från och med 2018 finns det sex på varandra följande generationer av GDDR: GDDR2 , GDDR3 , GDDR4 , GDDR5 och GDDR5X , GDDR6 .

1998.

Minne med hög bandbredd (HBM)

High Bandwidth Memory (HBM) är ett högpresterande RAM-gränssnitt för 3D-staplat SDRAM från Samsung , AMD och SK Hynix . Den är utformad för att användas tillsammans med högpresterande grafikacceleratorer och nätverksenheter. Det första HBM -minneskortet producerades av SK Hynix 2013.

Tidslinje

SDRAM

Synkront dynamiskt slumpmässigt åtkomstminne (SDRAM)
Introduktionsdatum Chips namn Kapacitet ( bitar ) SDRAM -typ Tillverkare Bearbeta MOSFET Område Ref
1992 KM48SL2000 16 Mbit SDR Samsung ? CMOS ?
1996 MSM5718C50 18 Mbit RDRAM Oki ? CMOS 325 mm 2
N64 RDRAM 36 Mbit RDRAM NEC ? CMOS ?
? 1024 Mbit SDR Mitsubishi 150 nm CMOS ?
1997 ? 1024 Mbit SDR Hyundai ? SÅ JAG ?
1998 MD5764802 64 Mbit RDRAM Oki ? CMOS 325 mm 2
Mars 1998
Direkt RDRAM 72 Mbit RDRAM Rambus ? CMOS ?
Juni 1998
? 64 Mbit DDR Samsung ? CMOS ?
1998 ? 64 Mbit DDR Hyundai ? CMOS ?
128 Mbit SDR Samsung ? CMOS ?
1999 ? 128 Mbit DDR Samsung ? CMOS ?
1024 Mbit DDR Samsung 140 nm CMOS ?
2000 GS eDRAM 32 Mbit eDRAM Sony , Toshiba 180 nm CMOS 279 mm 2
2001 ? 288 Mbit RDRAM Hynix ? CMOS ?
? DDR2 Samsung 100 nm CMOS ?
2002 ? 256 Mbit SDR Hynix ? CMOS ?
2003 EE+GS eDRAM 32 Mbit eDRAM Sony, Toshiba 90 nm CMOS 86 mm 2
? 72 Mbit DDR3 Samsung 90 nm CMOS ?
512 Mbit DDR2 Hynix ? CMOS ?
Elpida 110 nm CMOS ?
1024 Mbit DDR2 Hynix ? CMOS ?
2004 ? 2048 Mbit DDR2 Samsung 80 nm CMOS ?
2005 EE+GS eDRAM 32 Mbit eDRAM Sony, Toshiba 65 nm CMOS 86 mm 2
Xenos eDRAM 80 Mbit eDRAM NEC 90 nm CMOS ?
? 512 Mbit DDR3 Samsung 80 nm CMOS ?
2006 ? 1024 Mbit DDR2 Hynix 60 nm CMOS ?
2008 ? ? LPDDR2 Hynix ?
April 2008
? 8192 Mbit DDR3 Samsung 50 nm CMOS ?
2008 ? 16384 Mbit DDR3 Samsung 50 nm CMOS ?
2009 ? ? DDR3 Hynix 44 nm CMOS ?
2048 Mbit DDR3 Hynix 40 nm
2011 ? 16384 Mbit DDR3 Hynix 40 nm CMOS ?
2048 Mbit DDR4 Hynix 30 nm CMOS ?
2013 ? ? LPDDR4 Samsung 20 nm CMOS ?
2014 ? 8192 Mbit LPDDR4 Samsung 20 nm CMOS ?
2015 ? 12 Gbit LPDDR4 Samsung 20 nm CMOS ?
2018 ? 8192 Mbit LPDDR5 Samsung 10 nm FinFET ?
128 Gbit DDR4 Samsung 10 nm FinFET ?

SGRAM och HBM

Synkron grafik slumpmässigt åtkomstminne (SGRAM) och högbandbreddsminne (HBM)
Introduktionsdatum Chips namn Kapacitet ( bitar ) SDRAM -typ Tillverkare Bearbeta MOSFET Område Ref
November 1994
HM5283206 8 Mbit SGRAM ( SDR ) Hitachi 350 nm CMOS 58 mm 2
December 1994
μPD481850 8 Mbit SGRAM (SDR) NEC ? CMOS 280 mm 2
1997 μPD4811650 16 Mbit SGRAM (SDR) NEC 350 nm CMOS 280 mm 2
September 1998
? 16 Mbit SGRAM ( GDDR ) Samsung ? CMOS ?
1999 KM4132G112 32 Mbit SGRAM (SDR) Samsung ? CMOS ?
2002 ? 128 Mbit SGRAM ( GDDR2 ) Samsung ? CMOS ?
2003 ? 256 Mbit SGRAM (GDDR2) Samsung ? CMOS ?
SGRAM ( GDDR3 )
Mars 2005
K4D553238F 256 Mbit SGRAM (GDDR) Samsung ? CMOS 77 mm 2
Oktober 2005
? 256 Mbit SGRAM ( GDDR4 ) Samsung ? CMOS ?
2005 ? 512 Mbit SGRAM (GDDR4) Hynix ? CMOS ?
2007 ? 1024 Mbit SGRAM ( GDDR5 ) Hynix 60 nm
2009 ? 2048 Mbit SGRAM (GDDR5) Hynix 40 nm
2010 K4W1G1646G 1024 Mbit SGRAM (GDDR3) Samsung ? CMOS 100 mm 2
2012 ? 4096 Mbit SGRAM (GDDR3) SK Hynix ? CMOS ?
2013 ? ? HBM
Mars 2016
MT58K256M32JA 8 Gbit SGRAM ( GDDR5X ) Mikron 20 nm CMOS 140 mm 2
Juni 2016
? 32 Gbit HBM2 Samsung 20 nm CMOS ?
2017 ? 64 Gbit HBM2 Samsung 20 nm CMOS ?
Januari 2018
K4ZAF325BM 16 Gbit SGRAM ( GDDR6 ) Samsung 10 nm FinFET ?

Se även

Anteckningar

Referenser