Lespakket 6 - De processor


Opbouw en onderdelen

🎯
  • De leerlingen kunnen uitleggen wat de functie is van een processor
  • De leerlingen kunnen de 3 fasen uitleggen bij de verwerking van een instructie
  • De leerlingen kunnen het von Neumann-principe en de bijhorende cyclus beschrijven.
  • De leerlingen kunnen de werking en het nut van pipelining, branch prediction en out-of-order execution toelichten.
  • De leerlingen kunnen uitleggen wat Hyperthreading en multicore processoren zijn en het verschil ertussen aangeven.
  • De leerlingen kunnen de invloed van kloksnelheid en thermal design point op de prestaties van een processor verklaren.
  • De leerlingen kunnen de risico’s en gevolgen van overklokken benoemen.
📖
  • Zie boek p. 50, 52 - 57.
  • Pagina 51 en 52 tot punt 12 moet je niet kennen.

Inleiding

Wat is het?

  • De processor is een bijzonder soort IC (= integrated circuit).
  • Een IC bevat allerlei elektronische componenten (transistors, weerstanden, condensatoren).
Elektronische componenten
Elektronische componenten
Schakeling
Schakeling
Schakeling op een printplaat
Schakeling op een printplaat
Schakeling in een IC
Schakeling in een IC
  • Je hebt analoge IC's en digitale IC's. Analoge IC's werken met analoge signalen, digitale IC's werken met digitale signalen.
  • Wat is er bijzonder aan een processor? Hij werkt met een programma bestaande uit instructies die hij één voor één uitvoert.
  • De processor is het hart van de computer, je kan het vergelijken met het brein van een mens.
Een IC
Een IC
Een processor
Een processor
Hoe een processor er van binnen uitziet
Hoe een processor er van binnen uitziet

Hoe werkt het?

  • Jullie programmeren in een hogere programmeertaal (Python, Java, C#, ...)
  • Dit wordt omgezet in heel eenvoudige instructies uit een lagere programmeertaal.
  • De processor voert deze instructies uit.
  • Elke instructie wordt in 3 fasen uitgevoerd:
flowchart LR A[Prefetch
De processor haalt
de volgende instructie
op uit het geheugen
] --> B[Decode
De processor vertaalt
de instructie naar
een reeks acties
] B --> C[Execute
De processor voert
de acties uit en
past het geheugen aan
]

Instructie-cyclus

In de video hieronder wordt uitgelegd hoe instructies worden uitgevoerd door de processor.

QR Code
Scan deze qr-code om de video te bekijken

Wie vond de cyclus prefetch, decode, execute uit?

Welke problemen (en oplossingen) zijn er met de von Neumann cyclus?

QR Code
Scan deze qr-code om de inhoud te bekijken


Techniek Beschrijving
Pipelining Instructies worden overlappend uitgevoerd in verschillende fasen, waardoor de doorvoer stijgt.
Branch prediction De processor probeert te voorspellen welke kant een vertakking opgaat om wachttijden te verminderen.
Out-of-order execution Instructies worden niet strikt in volgorde uitgevoerd, maar zodra de benodigde middelen vrij zijn.

Multi-threading

In de jaren na de introductie van de Von Neumann-cyclus zijn verschillende technieken ontwikkeld om de efficiëntie van instructieverwerking te verhogen.

Hyperthreading

  • HyperThreading werd in 2001 geïntroduceerd door Intel.
  • Hierbij worden computerprogramma's opgesplitst in verschillende, parallelle instructiestromen.
  • HyperThreading maakt het mogelijk dat één processor meerdere instructiestromen gelijktijdig verwerkt.
  • Een HyperThreading-processor heeft twee virtuele opdrachten- en uitvoeringseenheden, die dezelfde bronnen delen (zoals prefetch unit, adresseringseenheid, bus interface unit, ...).
  • HyperThreading levert weinig winst op bij eenvoudige taken zoals tekstverwerking.
  • Vooral bij zware toepassingen (zoals 3D-games, beeld- en videobewerking) en bij multitasking is de prestatiewinst merkbaar.

Multicore processoren

Verschil tussen hyperthreading en multi-core processoren

QR Code
Scan deze qr-code om de video te bekijken
Hyperthreading uitgelegd

Snelheid

Kloksnelheid

  • De kloksnelheid bepaalt grotendeels de snelheid waarmee instructies in de processor worden uitgevoerd, maar is niet de enige factor.
  • Vroeger werd de kloksnelheid van zowel de processor als de systeembus geregeld door een klokgenerator op het moederbord, met een kwartskristal dat trillingen opwekt.
  • Elke trilling van het kwartskristal geeft een impuls voor een volgende stap in de verwerking binnen de processor.
  • Bij hoge kloksnelheden konden andere computercomponenten vaak niet volgen.
  • Oplossing: men ontwikkelde twee verschillende kloksnelheden:
    • Een hoge klokfrequentie voor de processor, geregeld door een klokgenerator in de processor zelf.
    • Een lagere, externe klokfrequentie voor de externe bussen, geregeld door een klokgenerator op het moederbord (onderdeel van de chipset).

Thermal design point

  • De klokfrequentie van moderne processoren wordt uitgedrukt in GHz (1 GHz = 1 miljard impulsen per seconde).
  • Bij hoge frequenties ontstaan in de processor hoge temperaturen.
  • Elke processor is ontworpen om een bepaalde temperatuur te weerstaan, het TDP (thermal design point, uitgedrukt in Watt).
  • Om te voorkomen dat het TDP overschreden wordt, moet de processor voldoende gekoeld worden.
  • Naast kloksnelheid is ook de capaciteit van het cachegeheugen belangrijk voor de performantie van een processor.
  • Meer over cachegeheugen vind je in hoofdstuk 4.4.

Overklokken

  • Overklokken verhoogt de kloksnelheid van de processor boven de fabriekswaarde, vaak via het BIOS (jumperless).
  • Risico's: oververhitting, instabiliteit, hardwarebeschadiging, en verlies van garantie.
  • Extra koeling en soms een krachtiger voeding/moederbord zijn nodig.
  • Prestatiewinst is meestal beperkt; vereist technische kennis en brengt vaak weinig voordeel.

Test je kennis

QR Code
Scan deze qr-code om de inhoud te bekijken
🧠
  • De processor voert programma-instructies uit en is het centrale rekenhart van de computer.
  • Elke instructie doorloopt drie fasen: ophalen (prefetch), vertalen (decode) en uitvoeren (execute).
  • De von Neumann-architectuur beschrijft deze cyclus en vormt de basis van moderne computers.
  • Pipelining, branch prediction en out-of-order execution verhogen de efficiëntie door instructies overlappend en flexibel te verwerken.
  • Hyperthreading splitst één processor virtueel op voor parallelle verwerking; multicore processoren hebben meerdere fysieke kernen die onafhankelijk werken.
  • Kloksnelheid en thermal design point bepalen de prestaties en warmteontwikkeling van een processor.
  • Overklokken verhoogt de snelheid, maar brengt risico’s zoals oververhitting, instabiliteit en verlies van garantie met zich mee.