CPU'en (Central Processing Unit) er hjernen på en computer, der er ansvarlig for at udføre instruktioner og behandling af data. Det består af flere underkomponenter, der arbejder sammen for at udføre disse opgaver:
1. Aritmetisk logikenhed (ALU):
- Udfører aritmetiske operationer (tilføjelse, subtraktion, multiplikation, opdeling) og logiske operationer (og, eller, XOR, ikke).
- Ansvarlig for alle beregninger, som CPU'en udfører.
2. Kontrolenhed (CU):
- Ansvarlig for at hente instruktioner fra hukommelsen, afkode dem og kontrollere strømmen af data mellem CPU og andre komponenter.
- Fungerer som "trafikpolitikken" på CPU'en og koordinerer alle aktiviteter.
3. Registre:
- Små højhastighedsopbevaringssteder inden for CPU'en, der indeholder data og instruktioner, der behandles.
- Der findes forskellige typer registre, der hver tjener et specifikt formål:
- Generelle registre: Gem midlertidige data.
- Specialformålsregistre: Hold systemoplysninger (f.eks. Programtæller, instruktionsregister).
4. Cache:
- En lille, meget hurtig hukommelse, der fungerer som en midlertidig buffer mellem CPU og hovedhukommelse (RAM).
- Butikker har ofte fået adgang til data og instruktioner, så CPU'en får adgang til dem meget hurtigere end fra hovedhukommelsen.
- Der findes forskellige niveauer af cache (L1, L2, L3), hvor L1 er den hurtigste og mindste, og L3 er den langsomste og største.
5. Ur:
- Genererer en almindelig puls, der synkroniserer alle operationer inden for CPU'en.
- Urhastigheden (målt i Hertz) bestemmer, hvor hurtigt CPU'en kan behandle instruktioner.
6. Busgrænseflade:
- forbinder CPU'en med andre komponenter som hukommelse og input/output -enheder.
- Tillader, at data overføres mellem CPU'en og disse komponenter.
7. Intern sammenkobling:
- Et netværk af veje, der forbinder de forskellige komponenter i CPU'en.
- Tillader, at data overføres hurtigt og effektivt mellem de forskellige enheder.
8. Instruktionsdekoder:
- Læser instruktioner fra hukommelsen og oversætter dem til et format, som CPU'en kan forstå.
9. Pipelining:
- En teknik, der giver CPU'en mulighed for at begynde at behandle den næste instruktion, før den foregående er fuldført.
- Dette kan forbedre CPU'ers samlede ydelse markant.
10. Grenforudsigelse:
- En teknik, der prøver at forudse den næste instruktion, der skal udføres.
- Dette gør det muligt for CPU'en at hente instruktionen på forhånd, spare tid og forbedre ydeevnen.
11. Datahentningsenhed:
- Ansvarlig for at hente data fra hukommelsen og levere dem til CPU'en til behandling.
Disse komponenter fungerer sammen på en kompleks, men meget effektiv måde, hvilket gør det muligt for CPU'en at udføre sin vigtige rolle i udførelsen af instruktioner og behandling af data.