Differenza fondamentale : la differenza principale tra RISC e CISC è il numero di cicli di calcolo che ciascuna delle loro istruzioni richiede. La differenza del numero di cicli si basa sulla complessità e l'obiettivo delle loro istruzioni.
RISC è un set di istruzioni ridotto o ridotto. Qui, ogni istruzione ha lo scopo di ottenere compiti molto piccoli. In una macchina RISC, i set di istruzioni sono semplici e di base, che aiutano a comporre istruzioni più complesse. Ogni istruzione è della stessa lunghezza; le istruzioni sono messe insieme per svolgere compiti complessi in un'unica operazione. La maggior parte delle istruzioni sono completate in un ciclo di macchina. Questo pipelining è una tecnica chiave utilizzata per accelerare le macchine RISC.
RISC è un microprocessore progettato per eseguire poche istruzioni contemporaneamente. Sulla base di piccole istruzioni, questi chip richiedono meno transistor, il che rende i transistor più economici da progettare e produrre. Alcune altre funzionalità di RISC includono:
- Meno richiesta di decodifica
- Set di istruzioni uniformi
- Registro generale identico
- Nodi di indirizzamento semplici
- Pochi tipi di dati nell'hardware
Inoltre, durante la scrittura dei codici, RISC semplifica il lavoro consentendo al programmatore di rimuovere i codici non necessari e impedisce lo spreco di cicli.
Il termine CISC è l'acronimo di 'Complex Instruction Set Computer'. È una strategia di progettazione della CPU basata su istruzioni singole, che sono in grado di eseguire operazioni in più fasi.
I computer CISC hanno programmi in cortocircuito. Ha un gran numero di istruzioni complesse, che richiede molto tempo per essere eseguito. Qui, una singola serie di istruzioni è trattata in più passaggi; ogni set di istruzioni ha più di trecento istruzioni separate. La maggior parte delle istruzioni sono completate in due o dieci cicli di macchina. In CISC, il pipelining delle istruzioni non è facilmente implementabile.
Le macchine CISC hanno buone prestazioni, basate sulla semplificazione dei compilatori di programmi; poiché la gamma di istruzioni avanzate è facilmente disponibile in un set di istruzioni. Progettano istruzioni complesse in una semplice serie di istruzioni. Eseguono operazioni di basso livello come un'operazione aritmetica o un carico dalla memoria e dall'archivio di memoria. CISC rende più semplice avere grandi nodi di indirizzamento e più tipi di dati nell'hardware della macchina. Tuttavia, CISC è considerato meno efficiente di RISC, a causa della sua inefficienza di rimuovere i codici che porta alla perdita di cicli. Inoltre, i chip del microprocessore sono difficili da capire e da programmare, a causa della complessità dell'hardware.
Confronto tra RISC e CISC:
RISC | CISC | |
Acronimo | È l'acronimo di 'Computer set di istruzioni ridotto'. | È l'acronimo di 'Complex Instruction Set Computer'. |
Definizione | I processori RISC hanno un set di istruzioni più piccolo con pochi nodi di indirizzamento. | I processori CISC hanno un set di istruzioni più ampio con molti nodi di indirizzamento. |
Unità di memoria | Non ha unità di memoria e utilizza un hardware separato per implementare le istruzioni. | Ha un'unità di memoria per implementare istruzioni complesse. |
Programma | Ha un'unità di programmazione cablata. | Ha un'unità di microprogrammazione. |
Design | È un complicato progetto di compilatore. | Si tratta di un facile progetto di compilatore. |
calcoli | I calcoli sono più veloci e precisi. | I calcoli sono lenti e precisi. |
decodifica | La decodifica delle istruzioni è semplice. | La decodifica delle istruzioni è complessa. |
Tempo | Il tempo di esecuzione è molto inferiore. | Il tempo di esecuzione è molto alto. |
Memoria esterna | Non richiede memoria esterna per i calcoli. | Richiede memoria esterna per i calcoli. |
pipelining | Il pipelining funziona correttamente. | Il pipelining non funziona correttamente. |
stalling | La stalla è per lo più ridotta nei processori. | I processori spesso si bloccano. |
Espansione del codice | L'espansione del codice può essere un problema. | L'espansione del codice non è un problema. |
Spazio sul disco | Lo spazio è salvato. | Lo spazio è sprecato. |
applicazioni | Utilizzato in applicazioni di fascia alta come elaborazione video, telecomunicazioni e elaborazione di immagini. | Utilizzato in applicazioni di fascia bassa come sistemi di sicurezza, automazioni domestiche, ecc. |