Als je een tech-liefhebber bent, heb je misschien de woorden Reduced Instruction Set Computer (RISC) en Complex Instruction Set Computer (CISC) gehoord. En als je toevallig wat van computers weet, weet je misschien ook dat deze termen verwijzen naar verschillende manieren om een processor te ontwerpen.
De ARM-processor in uw telefoon heeft bijvoorbeeld een RISC-architectuur. De x86-processor in uw computer daarentegen heeft een CISC-ontwerp.
Maar wat is het verschil tussen RISC en CISC? Laten we een beetje dieper graven en erachter komen.
Wat is een instructieset?
Wanneer we het hebben over verschillende ontwerpen van centrale verwerkingseenheden (CPU), is een van de dingen waar we het over moeten hebben de instructieset.
De instructieset van een CPU is de reeks bewerkingen die een CPU native kan uitvoeren. Dit zijn de bewerkingen die op hardwareniveau in de CPU zijn gecodeerd. Deze set kan enkele tot duizenden instructies bevatten, afhankelijk van het CPU-ontwerp.
Met andere woorden, een CPU kan geen bewerkingen uitvoeren die buiten zijn instructieset vallen, omdat hij er niet de hardware voor heeft.
Laten we een analogie gebruiken om dit beter te begrijpen. Neem het voorbeeld van een gloeilamp. De fabrikant van een gloeilamp heeft de lamp ontworpen om elektriciteit om te zetten in licht. En een gloeilamp kan dit doen omdat de hardware dit native ondersteunt.
In wezen kan een gloeilamp alleen elektriciteit omzetten in licht en niets anders.
Evenzo is de instructieset van een CPU de reeks bewerkingen die de hardware van de CPU mogelijk maakt. Bijna alle CPU's hebben bijvoorbeeld een "Move" -instructie in hun instructieset. De instructie "Verplaatsen" haalt enkele gegevens uit een bronopslagruimte en verplaatst deze naar een doelopslagruimte.
Wanneer een CPU wat gegevens moet verplaatsen, weet hij precies hoe hij dat moet doen, omdat de hardware eromheen is ontworpen.
Kortom, een instructieset bevat al die bewerkingen die een CPU op hardwareniveau ondersteunt.
Hoe werkt een CPU?
Een CPU is een doolhof van elektrische circuits. Deze elektrische circuits zijn op een bepaalde manier ontworpen om de CPU zijn eigen instructieset te geven. Het weet dus alleen hoe de bewerkingen in een instructieset moeten worden uitgevoerd, omdat het de schakelingen heeft om dit te doen.
Om de CPU een bepaalde bewerking te laten uitvoeren, wordt de schakeling die overeenkomt met die bewerking getriggerd door een elektrisch signaal. En zodra een circuit is geactiveerd, voert de CPU de routine uit die bij dat circuit hoort.
Om de CPU complexe bewerkingen te laten uitvoeren, zoals het verzenden van een tweet, vuren softwareprogramma's miljoenen elektrische signalen elke seconde, elk gericht op een specifieke instructie uit de instructieset van de PROCESSOR.
Dit is waar het concept van de RIS en CIS om de hoek komt kijken.
Wat is RISC?
Zoals de naam al doet vermoeden, heeft een op RISC gebaseerde CPU een vereenvoudigde reeks bewerkingen. Deze vereenvoudigde instructies bereiken eenvoudige doelen en nemen slechts één cyclus in beslag.
En omdat RISC eenvoudige instructies heeft, hoeft de CPU geen complexe schakelingen te hebben om deze instructies uit te voeren. Dit is ook de reden waarom RISC-ontwerpen qua hardware goedkoper te implementeren zijn.
Verwant: Waarom is mijn telefoon langzamer dan mijn pc? Smartphone versus Desktopsnelheden uitgelegd
Laten we, om een RISC-CPU in meer detail te begrijpen, eens kijken naar de ontwerpprincipes van op RISC gebaseerde CPU's.
Ten eerste voltooien RISC-CPU's elke instructie in een enkele cyclus.
Ten tweede voeren RISC-CPU's alleen bewerkingen uit op gegevens die zijn opgeslagen in registers. Dit komt omdat een van de belangrijkste knelpunten voor het vermogen van een CPU om taken uit te voeren, de enorme discrepantie is tussen de CPU-snelheid en de snelheid van het hoofdgeheugen. Het hoofdgeheugen is super traag in vergelijking met een CPU.
Verwant: Een snelle en vuile handleiding voor RAM: wat u moet weten
Dus als een CPU gegevens moet gebruiken die in het hoofdgeheugen zijn opgeslagen, zal het de eenheid belemmeren en zou het proces traag zijn. In een RISC-ontwerp worden de gegevens geladen en opgeslagen in de registers op de CPU, omdat de registers veel dichter bij de CPU-snelheid liggen dan het hoofdgeheugen.
Ten derde zijn RISC-instructies zo eenvoudig dat er geen laag interpretatieve microcode is om de instructies in eenvoudigere vormen te vertalen.
En tot slot, RISC-ontwerpen ondersteunen pipelining om delen van meerdere instructies tegelijkertijd uit te voeren. Omdat CPU's met RISC-ontwerp hogere kloksnelheden hebben, zijn ze uitzonderlijk snel. Pipelining is een manier om van deze snelheid te profiteren en delen van meerdere instructies uit te voeren voor extra efficiëntie.
Om een lang verhaal kort te maken, RISC-CPU's hebben eenvoudige instructies, hogere kloksnelheden, een efficiënte pijplijnstructuur, load-store-bewerkingen op de registers en kunnen instructies in één cyclus uitvoeren.
Wat is CISC?
De CISC is op bijna alle belangrijke gebieden het tegenovergestelde van RISC. Bijna alle desktopchips hebben een CISC-ontwerp.
Ten eerste zijn CISC-ontwerpinstructies complex en vereisen daarom een laag microcode om te vertalen in simplex-instructies.
Ten tweede kunnen CISC-instructies meerdere CPU-cycli nodig hebben om uit te voeren.
Ten derde is pipelining niet zo efficiënt in CISC en is het nog moeilijker te implementeren vanwege de complexe aard van CISC-instructies.
Kortom, CPU's met CISC-architectuur kunnen veel bewerkingen uitvoeren in één complexe instructie. Maar de instructie duurt meerdere cycli om te voltooien, is moeilijker te gebruiken bij pipelining en vereist veel circuits op de CPU.
RISC vs. CISC: belangrijkste verschillen
Het belangrijkste verschil tussen RISC en CISC is het type instructies dat ze uitvoeren.
RISC-instructies zijn eenvoudig, voeren slechts één bewerking uit en een CPU kan ze in één cyclus uitvoeren.
CISC-instructies daarentegen bevatten een heleboel bewerkingen. De CPU kan ze dus niet in één cyclus uitvoeren.
Instructies zijn ook de reden waarom RISC-CPU's vanaf het begin pipelining ondersteunen en CISC-CPU's het er moeilijker mee hebben. Met RISC zijn de instructies zo eenvoudig dat ze in delen kunnen worden uitgevoerd. Dit is moeilijker te doen met CISC vanwege de complexe aard van de instructies.
Vervolgens kunnen CISC-instructies, in tegenstelling tot RISC, rechtstreeks vanuit het RAM werken. Het is dus niet nodig om afzonderlijke laad-/opslagbewerkingen uit te voeren in het CISC-ontwerp.
Ten slotte zijn de hardwarevereisten voor een CISC-ontwerp hoger dan die voor een RISC-ontwerp, omdat voor CISC complexe instructies moeten worden ingebouwd in de CPU-hardware. In wezen, wat CISC met hardware bereikt, wil RISC bereiken met de software.
Dit is de reden waarom programma's die gericht zijn op een CISC-architectuur minder regels code hebben omdat instructies zelf veel bewerkingen afhandelen.
Er zijn voor- en nadelen aan zowel RISC als CISC
Geen enkele moderne processor is volledig gebaseerd op RISC of CISC. Moderne processors bevatten de ontwerpfilosofieën van beide architecturen om het beste van twee werelden te bereiken. De x86-architectuur die AMD bijvoorbeeld gebruikt, is voornamelijk CISC, maar heeft een microcode om complexe instructies om te zetten in eenvoudige RISC-achtige gereduceerde instructies.
Dus, in tegenstelling tot de processors van de afgelopen eeuw, zijn moderne CPU's verder geëvolueerd dan een eenvoudige RISC- of CISC-classificatie.
Vraagt u zich af welke Windows 10-apps u moet verwijderen? Hier zijn verschillende onnodige Windows 10-apps, programma's en bloatware die u moet verwijderen.
Lees volgende
- Technologie uitgelegd
- processor
- Hardwaretips
- Computertips
Fawad is een fulltime freelance schrijver. Hij houdt van technologie en eten. Als hij niet aan het eten is of over Windows schrijft, is hij ofwel videogames aan het spelen of schrijft hij voor zijn eigenzinnige blog Techsava.
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Nog een stap…!
Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.