Internminnet

Redaktør:Håkon Tolsby

Læringsmål: Gi en forståelse av hvordan datamaskinen er oppbygd, hvordan de ulike delene henger sammen og hvordan de fungerer

Innhold:

Sist oppdatert: 28. septenber 2010

Innledning

ferittkjerner

Internminnet er de minnebrikkene som finnes på hovedkortet. Vi kaller det internminnet for å kunne skille det fra eksterne lagringsenheter som harddisk og magnetbånd. Disse brikkene kan ikke gjøre annet enn å lagre data, i motsetning til prosessoren, som kan utføre beregninger.

Data som lagres i internminnet, kan være tekst, tall eller programmer som inneholder instruksjoner til prosessoren. Alt er kodet med binære siffer, 0 og 1.

Internminnet, slik vi kjenner det i dag, ble oppfunnet av Intel i begynnelsen av 70-årene. Før den tid var det vanlig å bruke noe som kalles ferrittkjerner. Disse tok stor plass og krevde mye strøm.

En av de viktigste egenskapene ved en datamaskin, er hvor mye minne eller hukommelse (engelsk: memory) den har. Vi måler størrelsen på minnet i byte, og en byte er definert til å være åtte biter. To byter kaller vi et ord (engelsk: word). Hver byte i internminnet har en egen adresse, og således kan prosessoren holde orden på hvor i minnet den skal lese eller skrive.



Lese fra og skrive til internminnet

Internminnet (RAM og ROM), består av adresserbare lagringsenheter som kalles ord (engelsk: word). Hver lagringsenhet kan bestå av 1 eller flere byter.

Skrive til internminnet:

Lese fra internminnet:

Datamaskinens minne, enten det er internt eller eksternt, angir vi i kilobyte (KB), megabyte (MB) og gigabyte (GB).

 kilobyte  KB  210 = 1 024 byter
 megabyte  MB  220 = 1 048 576 byter
 gigabyte  GB  230 = 1,07374 * 109 byter

Vanligvis er det to typer internminne som brukes i datamaskiner: RAM og ROM.



RAM (Random Access Memory)

RAM (engelsk: Random Access Memory) kalles ofte lese- og skriveminne. Alle datamaskiner som er basert på von Neuman-arkitekturen, bruker RAM på den samme måte (i praksis alle).

RAM kan sammenlignes med et kladdeark. Når et program skal kjøres, overføres det først fra en disk og legges i RAM. Her ligger programmene midlertidig lagret, slik at prosessoren kan hente instruksjonene en etter en og utføre dem. Data som skal bearbeides, ligger også midlertidig lagret i RAM.

Grunnen til at datamaskinen mellomlagrer data i internminnet (RAM), er at den ikke kan lese og skrive direkte mot en disk eller en annen perifer enhet. Disse mediene er altfor seine i forhold til den raske prosessoren. Det tar 300-400 ganger så lang tid å lese/skrive til en harddisk som å lese/skrive til RAM.

Det som ligger i RAM, blir borte når strømmen på datamaskinen slås av. Hvis man er så uheldig å slå av strømmen eller får et strømbrudd uten at man har lagret, risikerer man at alt man har skrevet i teksbehandleren eller regnearket blir slettet fordi det lå i RAM og ikke på disk.

Det er en fordel at datamaskinen har så mye RAM som mulig. Aller best hadde det vært med plass nok til alle program og data som skal brukes. Hvis det ikke er plass til hele programmet i RAM, må det stadig leses nye programdeler fra harddisken, etter hvert som det er behov for dem. Det tar tid, og det reduserer maskinens ytelse. Problemet kan reduseres ved hjelp av hurtigminne for disk (engelsk: diskcache).



DRAM - SDRAM - DDR (2og3)

SDRAM

Den nåværende RAM-teknikken er basert på SDRAM - Synchronous DRAM (Dynamic RAM)

DRAM (engelsk: Dynamic RAM) er minnebrikker hvor hver bit lagres som en ladning på en kondensator koblet til en transistor. Problemet er at kondensatoren ikke klarer å holde på spenningen, men må friskes opp hele tiden, ca hvert andre millisekund.

De første PC-ene hadde DRAM-brikker på 16 Kb (kilobiter) som ble plassert rett på hovedkortet. Deretter fikk man DRAM-brikker som var festet til DIMM-moduler (engelsk: Dual Inline Memory Module) slik vi kjenner det i dag. Det er små kretskort hvor DRAM-brikkene sitter ferdigmontert med 8, 16 eller 32 brikker på en DIMM. Størrelsen på DIMM-modulene varierte fra 32 MB (megabyte) til 256 MB eller mer.

DIMM-modulene var laget for en 64-biters databuss. Det fantes moduler for 32-biters databusser også. De kalles SIMM-moduler (engelsk: Sigle Inline Memory Module). Et problem med DRAM var at den ikke var synkronisert med prosessoren. Det gav lang overføringstid for data.

SDRAM (Synchronous DRAM) er en en fellesbetegnelse på RAM som er synkronisert med den klokkehastigheten som prosessoren bruker til å kommunisere på systembussen. Hastigheten på SDRAM angis derfor i MHz, og SDRAM for 133 MHz har en kapasitet på 528 MB/sek.

DDR (Double Data Rate) er en videreutvikling av SDRAM hvor man utnytter klokkepulsen to ganger og overfører data både når spenningen stiger og faller.

DDR2 og DDR3 er forbedringer av DDR- teknologien. Disse kan operere med høyere hastighet på bussen fordi de har en enklerer bussprotokoll (400 - 800 MHz). Videre er minste lese/skrive-enhet økt fra to til henholdsvis fire (DDR2) og åtte ord (DDR3). DDR3 kan ha en overføringshastighet på 10,6 GB/s med PCH-arkitektur

Direkte Rambuss DRAM (Direkte RDRAM eller bare eller RDRAM) er navnet på en annen og mer avansert minneteknologi. Den er tilpasset høyhastighetsbussen Direkte Rambuss som har en teknisk overføringshastiget på opptil 6,4 GB/sek. Men siden Rambussen på PC-er er koblet via systembussen, er den effektive kapasiteten redusert til1.6 GB/sek (Se artikkelen om busser). RDRAM kommer på moduler som kalles RIMM-moduler. På grunn av høye lisenskrav er RDRAM lite brukt.

Vanlige PC-er har installert fra 1-4 GB. Dagens prosessorer har en 64-bits arkitektur og kan adressere mye mer RAM. Flaskehalsen har vært at mange bruker et 32-bit operativsystem og dermed kun kan nyttiggjøre seg opptil 4 GB. Behovet for mer RAM vokser etter hvert som programmene blir større og bruken av mutimedia øker.

SRAM (engelsk: Static RAM) har en annen oppbygning enn DRAM og trenger ikke å bli frisket opp kontinuerlig. Bitcellene holder på bitverdien så lenge det er strøm til stede (statisk). SRAM er mye raskere enn DRAM og brukes derfor til hurtigminne-RAM (engelsk: cache-RAM).

Ulempen med SRAM er at den tar større plass og er dyrere å konstruere enn DRAM. Fire transistorer går med til hver bitcelle.



ROM (Read Only Memory)

ROM (engelsk: Read Only Memory) er internminne som prosessoren bare kan lese fra og ikke skrive til. Data som ligger i ROM, er permanente. De blir ikke borte når strømmen blir slått av.

ROM brukes derfor til å lagre programmer, som skal ligge i datamaskinen i hele dens levetid, og som ofte ikke skal endres. Det er systemprogrammer, som er spesifikke for det aktuelle hovedkortet. De hjelper datamaskinen til å forstå seg selv og til å få dens ulike komponenter til å virke sammen.

Samlingen av programmer som ligger i ROM, kalles BIOS (engelsk: Basic Input Output System). ROMBIOS omfatter programmer for å starte maskinen og programmer for å kommunisere mot perifere inn- og utenheter som tastatur, skriver, disk osv.

Når datamaskinen blir slått på, begynner prosessoren automatisk å utføre oppstartsprogrammene som ligger i ROMBIOS. Den begynner med å teste seg selv. Den teller opp hvor mye RAM maskinen har og kontrollerer alle enheter som er koblet til datamaskinen fungerer. Når BIOS er ferdig med å teste datamaskinen, leter den etter operativsystemet på en av diskene og overfører det til internminnet (RAM).

Tidligere brukte alle programmer i datamaskinen BIOS-rutiner for å kommunisere mot eksterne inn- og utenheter. Nå er det vanlig at de benytter kall til drivere som går utenom BIOS. Drivere er styringsprogrammer for eksterne enheter. De er enten en del av operativsystemet eller de må instalers sammen med enheten. Fordelen med drivere er at de er enklere å bruke og mer kraftfulle enn BIOS-rutinene.

Under oppstart av datamaskinen kan du aktivere et Set-up program for å konfigurere programmene i BIOS. Disse konfigurasjonsdataene ligger i en spesiell type RAM-brikke, CMOS (engelsk: Complementary Metal-Oxide Semiconductor) som blir vedlikeholdt ved hjelp av strøm fra et batteri.

Det finnes flere typer ROM:



Solid-state drive, USB drive

Dalatalager som bruker flash ram til å lagre data. Flash ram er en type EEPROM hvor innholdet kan slettes i store blokker (flere tusen bits). Flash Ram kan leses som vanlig ram, byte for byte. Men det kan ikke endres byte for byte. Derfor passer det ypperlig som eksternt lager.

SSD er fremtidens eksterne lager, hybrider forkommer også. Fordelene er raskere maskiner og mindre strømforbruk



Cache-minne 

Cache er en spesiell anvendelse av RAM som bufferlager mellom prosessor og internminne og mellom internminne og harddisk. Det siste kalles hurtigminne for disk (engelsk: diskcache).

Hurtigminne brukes fordi dagens raske prosessorer trenger tilførsel av data og instruksjoner fra internminne mye raskere enn det som er mulig med DRAM-brikkenes tilgangstid (tenk på de ulike hastighetene som prosessoren og systembussen arbeider etter).

Hurtigminne består av rask statisk RAM (SRAM), som er raskere en de vanlige DRAM-brikkene som benyttes i internminnet. Problemet med SRAM er at det er relativt kostbart og plasskrevende. Derfor består ikke hele internminnet av SRAM.

Hurtigminnet fungerer slik at mens prosessoren utfører en instruksjon, sørger en spesiell hurtigminnekontrollør for å lese den neste programinstruksjonen (eller dataelementet) fra internminnet og legge den i det raskere hurtigminnet. Dermed kan prosessoren lese den neste instruksjonen direkte fra det raske hurtigminnet istedenfor å hente den fra det trege internminnet.

Datamaskiner har ofte flere nivåer av hurtigminne. Det kan være integrert som en del av prosessoren. Det kalles primært hurtigminne (primærcache). Eller det kan være plassert mellom minnet og prosessoren i egne brikker. Det kalles da sekundært hurtigminne.

De nye minneteknologiene som Direkte Rambuss DRAM, kommer til å gjøre behovet for hurtigminne overflødig.

Cache

Hurtigminnet (cache) er mye raskere enn det tradisjonelle internminnet og fungerer som et buffer. Hurtigminnet finnes på flere nivåer, både som egne brikker (sekundær cache) og i selve prosessoren (intern cache).



Repetisjonsoppgaver:

  1. Hva lagres i internminnet?
  2. Hvorfor er det viktig at internminnet er stort?
  3. Hva måler vi internminnet i?
  4. Hvilke hovedtyper av internminne har vi?
  5. Hvilken oppgave har RAM?
  6. Hvilke hovedtyper av RAM har vi, og hva er forskjellen?
  7. Hva er SDRAM?
  8. Hva er DDR2?
  9. Hvilken funksjon har BIOS?
  10. Hvilken funksjon har hurtigminnet?
  11. Ta for deg annonser i et datablad eller på Internett og kontroller følgende:
    1. Hva koster minne-modulene?
    2. Hvilke spesifikasjoner har de og hva betyr de?