
Wanneer een machine is geprogrammeerd, gebruikt het programmeerapparaat enkele specifieke primitieve opdrachten of machine-instructies die algemeen bekend zijn als instructieset van een computer.
Vergelijkingstabel
Basis voor vergelijking | RISC | CISC |
---|---|---|
Nadruk op | Software | Hardware |
Inclusief | Enkele klok | Multi-klok |
Instruction-set grootte | Klein | Groot |
Instructieformaten | vast (32-bit) formaat | Variërende formaten (16-64 bits per instructie). |
Gebruikte adresseringsmodi | Beperkt tot 3-5 | 12-24 |
Algemene registers gebruikt | 32-192 | 8-24 |
Geheugen gevolgtrekkingen | Registreer om te registreren | Geheugen naar geheugen |
Cache ontwerp | Gesplitste gegevenscache en instructiecache. | Uniforme cache voor instructies en gegevens. |
Kloksnelheid | 50-150 MHz | 33-50 MHz |
Cycli per instructie | Eén cyclus voor alle instructies en een gemiddelde CPI <1, 5. | CPI tussen 2 en 15. |
CPU-besturing | Bedraad zonder besturingsgeheugen. | Microcoded met behulp van controlegeheugen (ROM). |
Definitie van RISC
Gereduceerde instructiesets (RISC) -instructiesets bevatten meestal minder dan 100 instructies en maken gebruik van een vaste instructie-indeling (32 bits). Het gebruikt enkele eenvoudige adresseringsmodi. Op een register gebaseerde instructies worden gebruikt, hetgeen betekent dat een register voor het registermechanisme wordt gebruikt. LOAD / STORE zijn de enige onafhankelijke instructies voor toegang tot geheugen.
Om de snelheid van contextwisseling te verbeteren, wordt een groot registerbestand gebruikt. De eenvoud van instructiesets resulteerde in de implementatie van hele processors op een enkele VLSI-chip. De extra voordelen zijn een hogere kloksnelheid en een lagere CPI die gelden voor hoge MIPS-beoordelingen op beschikbare RISC / superscalar-processors.
Definitie van CISC
Complexe instructieset (CISC) -instructieset bevat ongeveer 120 tot 350 instructies. Het maakt gebruik van variabele instructie / gegevensformaten, maar een klein aantal registers voor algemene doeleinden, dwz 8-24. De reden voor grote instructiesets is het gebruik van instructies voor variabel formaat. Een groot aantal geheugenreferentiebewerkingen wordt uitgevoerd met behulp van een enorm aantal adresseermodi.
CISC-architectuur gebruikt de HLL-instructies rechtstreeks in hardware / firmware. Uniforme cache wordt gebruikt in traditionele CISC-architectuur die zowel gegevens als instructies bevat en het gemeenschappelijke pad gebruikt.
Belangrijkste verschillen tussen RISC en CISC
- In RISC is de instructiegroepgrootte klein, terwijl in CISC de instructiesetgrootte groot is.
- RISC gebruikt vast formaat (32 bits) en meestal op registers gebaseerde instructies, terwijl CISC variabele opmaakbereiken gebruikt van 16-64 bits per instructie.
- RISC gebruikt een enkele klok en een beperkte adresseringsmodus (dwz 3-5). Aan de andere kant gebruikt CISC multi-klok 12 tot 24 adresseringsmodi.
- Het aantal algemene registers dat RISC gebruikt, varieert van 32-192. Integendeel, de CISC-architectuur gebruikt 8-24 GPR's.
- Register-naar-register-geheugenmechanisme wordt gebruikt in RISC met onafhankelijke LOAD- en STORE-instructies. CISC gebruikt daarentegen geheugen voor geheugenbewerkingen voor het uitvoeren van bewerkingen en heeft bovendien LOAD- en STORE-instructies opgenomen.
- RISC heeft een gesplitst gegevens- en instructiecacheontwerp. Daartegenover gebruikt CISC uniforme cache voor gegevens en instructies, hoewel de nieuwste ontwerpen ook gedeelde caches gebruiken.
- Het meeste CPU-beheer in RISC is bedraad zonder een besturingsgeheugen. Omgekeerd is CISC microcoded en gebruikt het controlegeheugen (ROM), maar moderne CISC maakt ook gebruik van bedrade besturing.
Conclusie
CISC-instructies zijn complex en trager dan RISC, maar gebruiken minder cycli met minder instructies.