Moderna CPU:er (centrala bearbetningsenheter) är oerhört komplexa, men deras kärnkomponenter kan i stort sett kategoriseras enligt följande:
1. Kärnan (er): Detta är hjärtat i CPU, ansvarig för att utföra instruktioner. Modern CPU:er innehåller vanligtvis flera kärnor, vilket möjliggör parallell bearbetning. Varje kärna innehåller:
* aritmetisk logikenhet (ALU): Utför aritmetik (tillägg, subtraktion, etc.) och logiska operationer (och, eller, inte, etc.).
* styrenhet (CU): Hämtar instruktioner från minnet, avkodar dem och leder ALU och andra komponenter att utföra dem.
* Register: Små, höghastighetsminnesplatser i kärnan som används för att lagra data som aktivt bearbetas. Dessa är mycket snabbare att komma åt än huvudminnet (RAM).
* cache: Litet, mycket snabbt minne som lagrar ofta åtkomst till data och instruktioner, vilket minskar behovet av att få åtkomst till långsammare huvudminne. CPU:er har vanligtvis flera nivåer av cache (L1, L2, L3), varvid L1 är den snabbaste och minsta och L3 är den långsammaste och största.
2. Minneskontroller: Hanterar kommunikation med systemets huvudminne (RAM). Detta integreras ofta direkt i CPU -dören.
3. Integrerad grafikbehandlingsenhet (GPU): Många moderna CPU:er inkluderar en integrerad GPU som hanterar grundläggande grafikbehandling. Även om de är mindre kraftfulla än dedikerade grafikkort, är de tillräckliga för många uppgifter.
4. Sammankopplingar: Dessa är interna vägar som gör att data kan flyta mellan de olika komponenterna i CPU, såsom kärnor, cache och minneskontroller.
5. Power Management Unit (PMU): Detta hanterar CPU:s strömförbrukning, justering av spänning och klockhastigheter för att balansera prestanda och energieffektivitet.
6. Klockgenerator: Tillhandahåller tidssignaler som synkroniserar driften av alla CPU:s komponenter. Klockhastigheten (mätt i GHz) avgör hur många instruktioner CPU kan bearbeta per sekund.
7. Andra komponenter: Moderna CPU:er inkluderar också olika andra komponenter, inklusive:
* Translation Lookaside Buffer (TLB): Hjälper till att påskynda minnesåtkomst genom att cache adressöversättningar.
* Branch Prediction Unit: Försöker att förutsäga vilka instruktioner som kommer att köras bredvid för att förbättra prestandan.
* pre-hämtningsenhet: Försök att förutse vilka data som kommer att behövas därefter och laddar dem i cache i förväg.
De specifika komponenterna och deras implementering varierar signifikant mellan CPU -arkitekturer (t.ex. x86, ARM) och tillverkare (t.ex. Intel, AMD). Ovanstående ger emellertid en allmän översikt över de viktigaste elementen som finns i de flesta moderna CPU:er.