Guide: Minnemania

Guide: Minnemania

Minne har alltid vært en av de mest esensielle komponentene i en datamaskin. La oss ta et overblikk over RAMens histore og ta for oss de mest vanlige temaene som du vil møte i dagens minneverden.

Begynnelsen

DRAM (Dynamic Random Access Memory) ble i tilgjengelig for allmennheten i 1970 gjennom et nystartet firma ved navn Intel. Navnet på brikken skulle bli 1103 og var på hele 1000 bit. Allerede to år etter var denne verdens mest solgte minnechip, og utkonkurrerte magnetisk minne som hadde vært den ledende formen for minne helt siden 1950.

DRAM ble opprinnelig oppfunnet av Robert Dennard mens han jobbet for IBM i ’66. Ideen med en minnetype som bare benyttet en enkel transistor og kondensator kom når han så sine kollegaers forskning på tynn-film magnetisk minne. IBM og Dennard fikk patenten på DRAM i 1968.

RAM
Ram er en forkortelse for Random Access Memory, minne som kan skrives og leses fra tilfeldig. Det spesielle med RAM i forhold til magnetisk minne var at det kunne benyttes hvilken som helst del av minnet uten å måtte gå igjennom annen data enn akkurat den det var behov for.

Tenk deg en kassetspiller mot en cdspiller, på kasetten må du spole gjennom helt til du finner riktig sang, mens med en cd bare hopper du direkte til den sangen du vil høre.

Hovedtypene av RAM er dynamisk (DRAM) og statisk (SRAM), der DRAM må bli oppdatert flere hundre ganger i sekundet, holder SRAM på dataene og er derfor raskere (og dyrere). Begge typene av minne mister dataene når strømmen blir skrudd av.

Enkel minneoppbygging
Tar vi for oss den basic oppbyggingen av DRAM ser vi at denne er ganske enkel, du har en transistor og en konensator. Målet med kondensatoren er å holde på informasjonen mellom hver oppdateringssyklus, som normalt er flere hundre ganger i sekundet.

Historie
Det skulle ta over 20 år før det virkelig begynte å skje utviklinger på minnefronten. Helt frem til midten av nittitallet var det PM og FPM (Fast Page Mode) DRAM som var den gjeldende formen for minne. Dennne formen for minne hadde en hastighet på mellom 80-100ns, men når utviklingen på prosessor og hovedkortfronten startet måtte også minnet utvikles for å holde følge.

La oss ta en snartur i minnets historie, og se over de teknologiene og formatene som har formet dagens minnetyper.

Fast Page Mode

Forskjellen på Page Mode og Fast Page Mode var enkel, Normal PM DRAM krever at en sender adressen til minneområdet en skal ha tilgang til hver eneste gang. Ved å annulere dette behovet slik at en kunne få tilgang til det samme minneområdet flere ganger uten å måtte adressere det for hver gang. Noe som igjen førte til lavere tilgangstid og et raskere minne.

EDO

Extended Data Out, enda et skritt nærmere raskt minne. Ved å modifisere timingen slik at en kan begynne aksesseringen av minnet før den forrige er avsluttet (såkalt pipelining), fikk man 3-5% mer hastighet i forhold til FPM. FPM og EDO er normalt kompatibelt, selv om de ikke bør blandes. EDO er også kjent under navnet Hyper Page Mode.

BEDO

Burst Extended Data Out. Ved å kombinere EDO med pipelining og spesialkonstruksjon for å støtte enda raskere tilgangstid enn EDO fikk man BEDO. BEDO støtter også raskere bus hastighet enn forgjengeren, i tilegg kunne minneprodusentene produsere det meget billig med samme utstyr som de produserte EDO med.

Burst mode – page mode på steroider, når en adresse ble sendt til minnet, genererte minnet automatisk de fire neste adressene slik at en oppnådde en mye raskere timing og aksesstid. Forskjellen mellom EDO og BEDO hastighet var flere ganger større enn FPM til EDO, og er kanskje det største “hoppet” vi har hatt i minneteknologiens historie. På større datamengder var BEDO ca 50% raskere enn EDO.

Den glemte teknologien
BEDO var i praksis en mye bedre teknologi enn SD-RAM brikker, men siden Intel valgte SD-RAM som standard på sine hovedkort slo aldri BEDO helt igjennom som en akseptert teknologi, og endte med å bli en fort glemt teknologi.

BEDO er et perfekt eksempel på hva lobbyvirksomhet har å si for utviklingen innenfor datateknologien, og at den beste teknologien ikke nødvendigvis er den som blir valgt.

Fra asynkront til synkront
Helt frem til nå var alle former for minne asynkrone, eller at de ikke var synkronisert til systemklokken. Asynkront minne virket slik at dataene ble tilgjengelig etter en gitt tidsperiode etter de ble etterspurt, noe som førte til at prosessoren måtte vente tolmodig til dataene var klare. Mens med synkront minne gikk dette i ett med systembussen, slik at prosessoren kunne ta for seg andre oppgaver mens den ventet på at dataene skulle bli klare til å bli plukket opp. Sammtidig slipper prosessoren å holde styr på timingen, noe som gjorde at data kunne bli lest og lastet uten at prosessoren måtte styre hele prosessen.

Dette ga ikke bare fordeler, mens asynkront minne øyeblikkelig startet aksesseringen av minnet når det hadde mottatt adressen, må synkront minne vente til neste klokkepuls før det kan begynne minnetilgangen.

SDRAM
Synchronous DRAM. Alle former for synkront minne er kjent som SDRAM, dette gjelder CDRAM, RDRAM, ESDRAM og ikke minst DDR Ram. Selv om den minnetypen som oftest blir referert til som SDRAM egentlig heter JEDEC SD-RAM.

JEDEC SD-RAM

SD RAM er bygget på at mesteparten av dataene prosessoren trenger ligger etterherandre.
Når minnet mottar adressen blir dataene som er spurt etter sendt, mens det fortsetter å lese videre fremover i minnet. Såkalt Burst Mode. SD-ram hadde også pipelining slik at brikken kunne motta en ny kommando eller jobb, før den var ferdig med den forrige.
Opprinnelig SD-ram har en hastighetsøkning på ca 5% mer enn EDO, med andre ord mye lavere enn EDO til BEDO.

Trang fødsel
SD-ram hadde flere problemer, ene var kompatiblitetsproblemer med flere av datidens chipssett, og om det ikke det skulle være nok var det problemer med timings på flere av brikkene når det var mer enn en brikke i samme maskin. Problemer var det også med at hovedkort ikke detekterte minnet med riktig timing eller hastighet slik at en kunne ende opp med en helt annen timing enn den brikken opprinnelig designet for, noe som igjen førte til vesentlige ytelses og stabilitetproblemer.
SPD (serial Precence Detect) EEPROM ble lagt til standarden slik at chipssettet kunne lese hastighet og annen informasjon direkte fra brikken i stedet for å måtte detektere dette. Selv om flere produsenter av både chipssett og minneprodusenter ofte droppet denne funksjonen på sine produkter. Det skulle ikke bli noenlunde ro i gården før Intel ga ut PC100 standarden for SD-ram.

DDR SDRAM

Dual Data Rate SDRAM er bygget nesten helt likt de originale SDram brikkene, med ett unntak. DDR opererer på både økende og synkende klokkepuls, mens normal SDRAM bare overfører data 1 gang per syklus kan DDR overføre data 2 ganger. Med andre ord, dobbelt så høy minnebåndbredde uten å måtte øke busshastigheten. Det er derfor en 266Mhz DDR brikke egentlig bare kjører på 133Mhz. Dette er forøvrig mye av samme teknologi som ligger bak AGP bussens hastighet.

ESDRAM

Enhanced SDRAM.
Ved å benytte litt SRAM på chippen slik at man skaper en hurtig cache som man kan lage de
mest benyttede dataene. SRAM cachen vil en minske behovet for tilgang til det tregere
DRAM’et som resten av brikken er bygget opp av, slik at en får bedre tilgangstid og derav høyere hastighet. Siden SDRAM og SRAM vil stå på samme chip vil en ha svært høy båndbredde mellom disse, noe som fører til raskere minnetilgang selv om dataene en har behov for ikke er i SRAM. Største bakdelen med denne teknologien er at SRAM er meget dyrt i produksjon (ca 4-5 ganger dyrere) og med såpass store minnebrikker en har behov for i dag ville mengden av SRAM en trenger bil deretter høyere…

ESDRAM er å se på som en død teknologi i dag, og kan stille seg i lag med BEDO på listen over gode men glemte
teknologier.

RDRAM/DRDRAM

Direct Rambus RAM eller bare Rambus Ram er en propietær minnestandard utviklet av Rambus. Minnemoduler fra Rambus går under navnet RIMM (Rambus Inline Memory Module). RDRAM benytter en spesiell propietær minnekontroller kalt Rambus Channel, der minnebrikkene jobber i paralell for å oppnå høy ytelse. (Om du ikke benytter 2 brikker er du avhengig av en “dummy” for at minnet skal virke) RDRAM jobber ved svært høye hastigheter og er avhengig av en heatspreader for å kvitte seg med all varmen.

Ikke bare fryd og gammen
Selv om RDRAM kan virke fristende når en ser på de enorme hastighetene brikkene jobber under er det fortsatt noen små bakdeler med teknologien. Selv med 4ganger så høy hastighet ble ikke den reelle ytelsen på stort mer
enn konvensjonell DDR SDRAM, dette fordi RDRAM bare hadde en buss på 16bits, mot (DDR) SDRAM sin 64bits buss. Varme og dårlig latency var også vesentlige problemer med RDRAM. Propietære og dyre brikker gjorde også dette til en lite likt standard, med lite eller ingen ytelsesfortjeneste i forhold til sine konkurrenter.

Page 1 of 41234