Prosessoren - Teknologiforståelse (IM-IKM vg1) - NDLA

Hopp til innhold
Fagartikkel

Prosessoren

En datamaskin er helt grunnleggende en maskin som gjør utregninger etter oppskrifter (programmering). Prosessoren gjør disse utregningene. De andre delene i datamaskinen har som oppgave å hjelpe prosessoren ved å gi den nødvendig data og ta imot svarene som kommer tilbake.

Prosessoren, også kalt CPU (Central Processing Unit), henter og lagrer instruksjoner og data som skal bearbeides til arbeidsminne (RAM). Den går gjennom instruksjonene steg for steg til den kommer til et resultat. Resultatet kan så bli lagt tilbake i arbeidsminnet, eller bli lagt i minnet til enheten som trenger informasjonen, for eksempel skjermkortet.

Prosessoren styrer dermed i stor grad hva de andre delene av datamaskinen skal gjøre til enhver tid. Den er sentralt plassert på hovedkortet, som oftest under en kjøleribbe og kjølevifte for å hjelpe å spre varmen den lager.

Prosessorens oppbygging

Kjerne (core)

En kjerne er en samling av mindre deler som sammen kan hente inn instruksjoner og gjøre de utregningene som trengs. Siden kjernen er bygd opp av flere mindre deler, er det viktig at delene jobber i takt. En felles klokkefrekvens er derfor nødvendig.

Flerkjernet prosessor

Tidligere hadde hver prosessor bare én kjerne. Det ble etter hvert vanskeligere å øke hastigheten kjernen kunne arbeide i. For å fortsette å gjøre datamaskinene raskere var det derfor nødvendig å gå over til prosessordesign med flere kjerner.

Av praktiske årsaker produseres ofte flere prosessorkjerner sammen i det vi kaller en chiplet, og en prosessor kan ha flere chiplets. Dermed kan en moderne prosessor ha mellom fire og sekstifire kjerner totalt.

Nevral prosesseringsenhet (NPU)

Noen prosessorer har en dedikert nevral prosesseringsenhet (Nevral prosessing unit – NPU) for å hjelpe med å håndtere lokal KI-funksjonalitet som bildetolkning, stemmegjenkjennelse og kjøring av prateroboter.

En NPU er mer effektiv og bruker mindre strøm når den gjør KI-oppgaver sammenliknet med maskinens ordinære prosessorkjerner eller skjermkort. Dette gjør den spesielt nyttig for mobile enheter som mobiltelefoner og bærbare datamaskiner.

NPU-kapasitet er som oftest oppgitt i antall billioner operasjoner som kan gjøres per sekund (TOPS). For eksempel kan en prosessor ha en NPU med 50 TOPS kapasitet.

Tidligere ble navnet KI-akselerator ofte brukt for å beskrive en nevral prosesseringsenhet (NPU).

I/O-kontroller (brikkesett)

For å koble sammen prosessorkjernene og gjøre det mulig for prosessoren å nå de andre komponentene i datamaskinen trenger vi en I/O-kontroller (brikkesett). Denne finner vi innebygd i prosessoren.

I/O-kontrollere fungerer som kommunikasjonssentral mellom prosessorkjerner. De styrer tilgang til arbeidsminnet (RAM) og gir tilgang til et felles hurtigminne for alle kjernene (L3). I/O-kontrollerne lager også PCI Express-baner (lanes) som går ut til andre komponenter i datamaskinen.

Prosessor-I/O-kontrollere har ofte innebygd USB-kontroller og skjermkort (dette er spesielt relevant på bærbare datamaskiner, tablets og mobiltelefoner). De kan også ha radiosendere for trådløse og mobile nettverk.

I tillegg til brikkesettet i prosessoren er det et brikkesett montert på hovedkortet. Brikkesettet på hovedkortet tar seg av kommunikasjon mot langsommere innebygde enheter som lydkort, UEFI/BIOS og USB-porter.

I animasjonen under kan du se hvordan prosessoren får kontakt med alle de forskjellige komponentene av datamaskinen gjennom brikkesettet. Prosessoren bruker I/O-kontrolleren sin til å koble seg til RAM og andre enheter på hovedkortet (som skjermkort, USB-enheter, nettverk og så videre). På hovedkortet er det som regel et eget litt mindre brikkesett som kobler sammen tregere enheter og enheter som er spesifikke for dette hovedkortet. Hovedkortets I/O-kontroller kobler seg til prosessorens I/O-kontroller slik at prosessoren får tilgang til alle ressurser i datamaskinen.

Video: Klipp og Lim AS / CC BY-SA 4.0

Instruksjonssett

En instruksjon er en type bearbeidelse av data som en prosessor kan gjøre. Dette kan være enkle instruksjoner som å hente inn data fra arbeidsminne, legge sammen to tall eller sammenlikne to forskjellige tall. Det finnes også mer avanserte instruksjoner, noen av disse er en kombinasjon av to enklere. Et instruksjonssett er ei liste over instruksjoner som en prosessor kan bruke.

Noen instruksjonssett har mange mulige instruksjoner, og andre har få. Avhengig av typen utregninger prosessoren skal gjøre, vil forskjellige instruksjonssett være å foretrekke. Det viktige her er at operativsystem, programvare og drivere må være tilpasset prosessorens instruksjonssett.

X86-64

X86-64 er 64-bit-versjonen av x86, et instruksjonssett laget av Intel. Dette er det mest brukte instruksjonssettet for vanlige stasjonære og bærbare datamaskiner. En maskin som kjører Windows eller macOS-operativsystem vil som oftest være X86 eller X86-64. X86-64 har et ganske stort instruksjonssett, noe som gjør det veldig fleksibelt, men lite effektivt for enkle oppgaver. Et stort instruksjonssett er derfor mindre nyttig der hvor strømsparing er viktig.

ARM

ARM er ei gruppe med forskjellige instruksjonssett utviklet av bedriften ARM. Så å si alle mobiltelefoner, tablets og annen småelektronikk med en prosessor bruker et av disse reduserte instruksjonsettene. En ARM-prosessor vil bruke mindre strøm på å gjennomføre enkle oppgaver enn en X86-prosessor, men vil bruke flere prosessorsykluser på mer avanserte oppgaver. Det betyr tregere hastighet og potensielt større strømforbruk.

I framtida er det ikke umulig at datamaskiner og annet utstyr med prosessorer kan få støtte for flere samtidige prosessorer og instruksjonssett. På denne måten kan vi bruke en ARM-prosessor på enkle oppgaver og en X86-prosessor eller liknende på mer avanserte oppgaver.


Relatert innhold

Skrevet av Tron Bårdgård.
Sist faglig oppdatert 03.06.2024