Techpaper: Hva er RAM

Techpaper: Hva er RAM

RAM, ROM, PROM - hva er RAM og hva brukes det til?

For dagens techtalk har vi i ITproX tatt en prat med Jan Terje Kleiven, Norgessjef for Kingston i Europa.

Først ut, hva er RAM og hva brukes det til?

De aller fleste har hørt om det, men hva er RAM?
Prosessorer har eget internt minne for å arbeide med informasjonen. Tar du for eksempel de nyere prosessorseriene, ligger disse fra 6 til 24Mb L3 Cache, eller internt RAM om du vil. Både L1, L2 og L3 er begreper man vil finne, og hver av dem er nærheten til arbeidskjernen til prosessoren. Des lengre bort man kommer, jo lengre tid tar det før prosessoren ber om tilgang på informasjonen, til den har det. Likevel er den nærmere kjernen enn RAM.

Hva er så forskjellen på cache og lagring?
RAM brukes som et utvidet lager for prosessorens interne minne. Som nevnt har den noe mer «penalty» enn L1,2 og 3- cache i forhold til hastighet og forsinkelse – samtidig er RAM betydelig raskere i både klokkeforsinkelse, men også I båndbredde enn eksempelvis SSD/HDD i millisekunder. Som eksempel kan vi se at DDR3 lå på rundt 20gb/s og tar du den mest solgte brikken i dagens marked – en 3200MhZ DDR4 – så gir den 25,6gb/s og oppover. Forenklet forklart, så fungerer RAM fungerer som et korttidsminne fra informasjonen som ligger på SSD/Harddisk og til prosessoren, hvor de megabytene til prosessoren kommer til kort.

Hvis prosessoren har det – trenger vi da egentlig RAM?
Selve internminnet til prosessoren kan være en flaskehals dersom det du arbeider på krever mer minne enn det man har tilgjengelig, og de aller fleste applikasjonene vi i dag kjører krever mer minne enn hva prosessorens internminne har. Derfor er det veldig viktig at man tilpasser minnet (type, hastighet mv.) til den prosessoren som er valgt. Hvilken type- og mengde minne som er støttet og hvilken som er best for den aktuelle prosessoren er det opp til prosessorkontrolleren som bestemmer.

Verd å nevne er at det i likhet med prosessorens egne minne, så forsvinner informasjonen som er midlertidig lagret i arbeidsminnet når strømmen forsvinner. Dette i motsetning til flash-minne hvor informasjonen bevares. Måten dette fungerer på er at minneregisteret fornyes med verdien den hadde ved hver klokkepuls – en prosess som krever strøm. Her er det igjen forskjellige typer minne som benyttes i datasenter, datamaskiner og bærbare produkter – både i forhold til hvordan de opererer i hvilemodus, hvor ofte de må oppdatere verdiene samt hvor mye energi de krever. Bruksområdet er derfor veldig viktig å avklare før man anskaffer både prosessor og minne.

Vi kan forklare det, men vi overlater animeringen til noen som allerede har gjort et utmerket arbeid på dette.

Minnebrikker har mange forskjellige spesifikasjoner, hva betyr Hertz og CL?
Megahertz og frekvens generelt er antall endringer per sekund en prosessor og/eller minnebrikke opererer med. Tar du en minnebrikke med 3400MhZ, så vil disse utføre 3,4 milliarder operasjoner i sekundet. CL eller CAS (Column Address Strobe) er forsinkelsen eller antall klokkepulser minnebrikkene bruker fra en forespørsel er sendt til informasjonen er tilgjengelig for å hente ut fra minnebrikken. Som hovedregel er lavere CAS bedre, men dette er i et komplekst samspill med klokkefrekvens og systemet ellers som avgjør hva som er den beste kombinasjonen. Uansett hva du gjør, så vil prosessoren finne den beste tilgjengelige konfigurasjonen til de(n) tilgjengelige minnebrikken(e). Noe som er grunnen til at det er mindre enn optimalt å mikse minnemoduler med forskjellig spesifikasjon. Prosessoren søker nemlig laveste felles multiplum for dem alle.

Og ECC?
Når det gjelder ECC er dette en forkortelse for Error Correction Circuits og er en sikkerhetsmekanisme som er implementert for å kontrollere mot bit-feil i minnemodulen. Disse kretsene kjører en feilhåndtering som validerer at det ikke har forekommet det vi kaller for «bitflip». Tar vi for oss en minnemodul med fire gigabyte kapasitet er det om lag 100- milliarder celler og frem til nå har ECC vært per RAM- enhet, mens i DDR 5 kommer ECC per RAM- modul, eller chip om du vil. Forskjellene her er ganske store, da DDR5 har en ECC-funksjon per brikke – og med dette ikke kjører kontroll utenfor. Dette betyr at minnet ikke har noen korrigering på bus- eller minnekontrollernivå, noe som betyr at en trenger ECC supporterte prosessorer (som Intel XEON) med en slik ECC algoritme og dermed kan korrigere slike feil mens selve prosessoroperasjonen forekommer.

Bitflip har tidligere gitt både speedrunnere og politiske valg til å sprette opp øynene.
Muligens dette er årsaken til en og annen blåskjerm?

For en DDR4 modul, blir det overført 64- biter med informasjon per klokkepuls per forespørsel. Dersom en har DDR4 med ECC legges det til 8- bit per 64- bit nivå for å validere data, noe som ofte blir omtalt som 72-bit eller x72. I slike scenarioer vil DDR5 dele minnemodulene i to 32- bits subkanaler, med hver sine 8-biters DRAM komponent som gir 40- bit – og igjen 80- bit per rad mot tidligere 72.

Konsekvensene av bitflip og feil i minnet kan være vanskelig å forutse, og alt fra systemhavari (blåskjerm i Windows) til en endring av verdier i en applikasjon som påvirker sluttresultatet er ikke uvanlig. Som et resultat vil sluttbrukerne ha større sikring mot minnefeil da økning av datatetthet- samt hastighet – er en risikofaktor som nå håndteres. For kraftige arbeidsstasjoner og serverbrukere er ECC å regne som en selvfølge.

Test: Huawei Watch GT Runner

Huawei er i vinden med smartklokker og siste tilskudd er en suveren klokke med lang batteritid, mer presis pulsmåling, optimalisert for trening og løping, samt støtte for eksternt pulsbelte.

Produktomtale: AOC U28P2A

AOC har sine røtter helt tilbake i 1934 da Continental Radio and Television Corporation ble startet opp i Chicago. Siden har de gått gjennom en rekke navneendringer, men de begynte å produsere farge-TV i...