CPU (Central Processing Unit) är datorns centrala beräkningsenhet och brukar kallas för datorns hjärna. Det är CPU:n som utför instruktioner, bearbetar data och samordnar arbetet mellan datorns olika delar.
Rent fysiskt är CPU:n ett mycket avancerat integrerat kretskort (chip) som innehåller flera komponenter, till exempel beräkningsenheter, register, cacheminne och styrlogik. I moderna datorer består CPU:n ofta av flera kärnor, vilket innebär att flera beräkningar kan utföras parallellt.
CPU:n monteras på moderkortet, där den via elektriska ledningar är sammankopplad med övrig hårdvara i datorn.

Illustrationen visar hur CPU:n på moderkortet är ansluten till RAM-minnet via systembussen med adress-, data- och styrsignaler.
Systembuss och kommunikation
Alla delar i en dator behöver kunna kommunicera med varandra. Denna kommunikation sker via ett nätverk av elektriska ledningar som kallas bussar, ofta sammanfattade under begreppet systembussen.
I en förenklad modell förbinder systembussen datorns viktigaste komponenter, såsom CPU, RAM-minne, lagringsenheter samt in- och utmatningsenheter. I illustrationerna representeras bussarna av tunna linjer som visar hur data, adresser och styrsignaler överförs mellan komponenterna. Den mest intensiva kommunikationen sker normalt mellan CPU och RAM-minnet.
De tunna linjerna i illustrationer representerar bussarna som överför data, adresser och styrsignaler mellan komponenterna. Genom dessa bussar sker ständig kommunikation, särskilt mellan CPU och RAM-minnet.
CPU och RAM-minnet
RAM-minnet (huvudminnet) innehåller de instruktioner och den data som CPU:n arbetar med för tillfället. För att kunna utföra en uppgift måste processorn hämta både:
- instruktioner (vad som ska göras)
- data (det som ska bearbetas)

Illustrationen ovan består av två delar. I den första visas hur processorn kommunicerar med RAM-minnet. Tunna mörkröda trådar illustrerar aktiva signaler, medan en grövre blå pil visar hur processorn skickar minnesadresser till RAM för att hitta instruktioner och data.
I den andra delen visas ett RAM-chip. Signaler från processorn tas emot till vänster, tolkas och används för att välja rätt minnesceller. Därefter skickas data tillbaka till processorn via andra ledningar.
Processorns arbete med minne
När en processor exekverar ett program behöver den kontinuerligt både instruktioner och data från RAM-minnet. Först skickar processorn minnesadresser via systembussen för att identifiera rätt minnesceller. När instruktionerna och datan har hämtats kan processorn utföra operationer som load, add, store, compare, jump if, input och output.
Illustrationen visar hur processorn arbetar tillsammans med sitt interna minne i form av register samt RAM-minnet. Registren används för att tillfälligt lagra data och mellanresultat medan instruktioner exekveras.

Den del av processorn som ansvarar för att hämta och tolka instruktioner kallas kontrollenheten. Dess uppgift är att läsa instruktioner från minnet, avkoda dem och styra hur de ska utföras. Kontrollenheten samarbetar nära med ALU (Arithmetic Logic Unit), som utför de aritmetiska och logiska beräkningarna. Resultat lagras först i register och skrivs därefter tillbaka till RAM-minnet om de ska sparas vidare.
Cacheminne – snabbare än RAM
Att hämta instruktioner och data från RAM tar tid, även om RAM är relativt snabbt. För att minska denna fördröjning använder CPU:n cacheminne, som är ett mycket snabbt minne placerat inuti eller mycket nära processorn.
Cacheminnet:
- är betydligt snabbare än RAM
- lagrar ofta använda instruktioner och data
- minskar väntetiden vid minnesåtkomst
Cacheminne finns i flera nivåer:
- L1-cache – mycket snabb, liten, en per kärna
- L2-cache – större och något långsammare
- L3-cache – delas ofta mellan flera kärnor
Tvåkärnig processor med L1- och L2-cacheminne

Illustrationen visar en processor med två kärnor och ett gemensamt L2-cacheminne. Varje kärna har sitt eget L1-cacheminne, som används för mycket snabb åtkomst till data och instruktioner.
L1-cache för kärna 1 är kopplad till kärnans ALU och FPU samt till registren AX, BX, CX och DX.
L1-cache för kärna 2 är uppbyggd på samma sätt, men är kopplad till sin egen ALU, FPU och sina egna register AX, BX, CX och DX.
Det gemensamma L2-cacheminnet delas mellan båda kärnorna och används för data som inte ryms i L1-cache, men som fortfarande behöver vara snabbt tillgängligt.