Wanneer telefoons, tablets, pc’s of laptops aan een review onderworpen worden is het type processor altijd een terugkerend onderdeel. Maar wat betekent CPU nou en wat is het precies? Wij leggen het kort en krachtig voor je uit!
CPU: Waar staat het voor?
De oorspronkelijke naam van een processor is CPU, wat een afkorting is voor de Engelse term Central Processing Unit. In het Nederlands noemen we dit de Centrale Verwerkingseenheid (cve) en in de volksmond wordt dit dus vaak de processor genoemd. De CPU is een stuk hardware in een computer, (smart)phone of tablet die zorgt voor de basisbewerking en -controle bij het uitvoeren van programmacode.
De eerste processors hadden de vorm van een printplaat vol met losse componenten, in de jaren 70 werden de eerste microprocessoren ontwikkeld die de basis vormen voor de steeds kleiner wordende processoren. Bij de huidige CPU’s zit het gehele systeem op 1 chip. Een processor heeft een aantal “bit” wat staat voor de woordbreedte – de breedte van het dataregister en rekengedeelte – die een processor aankan. De eerste processor was 4 bit, door ontwikkelingen in de technologie heeft dit kunnen groeien naar 8, 16, 32 en 64 bit. Processoren kan je op dit moment in twee groepen indelen, namelijk de microcontrollers (meestal 8, 16 of 32 bits) en de microprocessors (meestal 32 of 64 bit).
CPU: snelheid
De snelheid van een processor is afhankelijk van een 5-tal factoren. Het gaat hierbij om de:
- Kloksnelheid: deze geeft aan hoe vaak per seconde een signaal gelezen, geschreven of verwerkt wordt. Dit wordt vaak aangegeven in hertz of gigahertz;
- Instructie-uitvoersnelheid: hierbij gaat het om het aantal instructies die een processor (gemiddeld) per cyclus kan uitvoeren. Een processor van 1 GHz met gemiddeld 2 klokcycli per instructie kan zodoende sneller zijn dan een 2 GHz processor die gemiddeld 5 klokcycli nodig heeft voor 1 instructie. Dit wordt voornamelijk bepaald door de (micro-)architectuur van de processor. Voor desktop pc’s en laptops is het vergelijken dus gemakkelijker aangezien die vaak gebruik maken van de zelfde architectuur. Voor telefoons en tablets is dit vaak wel heel belangrijk bij het vergelijken van de verschillende snelheden;
- Cache: cache – ook wel tijdelijk geheugen – is een soort van tussenstation tussen het geheugen (RAM) en de processor. Doorgaans geldt dus ook dat wanneer de cache groter is de processor sneller is;
- Pipelining: het simultaan en naast elkaar uitvoeren van meerdere commando’s. Sommige processoren hebben meerdere pipelines en kunnen zo dus meerdere commando’s tegelijk verwerken. Er zijn zelfs speciale processoren (zoals de GPU) die tientallen en soms wel honderden verschillende pipelines hebben;
- Aantal kernen: hoe meer kernen betekent vaak ook hoe meer programa’s er tegelijk uitgevoerd kunnen worden. Sommige programma’s kunnen zelfs niet een, maar meerdere kernen tegelijk gebruiken. Zo vind je tegenwoordig al dual-, quad- en octa-core processors in apparaten terug.
CPU: hoe werkt het?
Om een programmacode uit te voeren doorloopt een CPU een aantal stappen. Het programma zelf staat in het RAM-geheugen. De processor maakt gebruik van een teller – de programmateller – die het geheugenadres van de instructie bijhoudt. Het begint met de ophaalfase (fetch-fase) waarin de processor de instructies ophaalt vanuit het geheugen. De code die in het geheugenadres staat wordt gebruikt voor de volgende fase, de decodeerfase. Aan de hand van de code in het geheugenadres – een binaire code – worden de verschillende componenten van de processor in de juiste stand gezet om de bewerking uit te voeren. Als de processor in de juiste stand staat gaan we over naar de uitvoerfase (execute-fase) waarin de berekening wordt gestart. Als de berekening voltooid is volgt de opslag-fase (stor-fase) waarin de uitkomst van de berekening in het opgeslagen wordt.
Na de opslag-fase is de instructie uitvoering afgerond, de programmateller zal verhoogd worden zodat de processor de voorbereidingen kan treffen voor het uitvoeren van de volgende instructie.