Diferença chave : A principal diferença entre o RISC e o CISC está no número de ciclos de computação que cada uma das instruções leva. A diferença no número de ciclos é baseada na complexidade e no objetivo de suas instruções.
RISC é conjunto pequeno ou reduzido de instruções. Aqui, cada instrução destina-se a realizar tarefas muito pequenas. Em uma máquina RISC, os conjuntos de instruções são simples e básicos, o que ajuda a compor instruções mais complexas. Cada instrução é do mesmo tamanho; as instruções são agrupadas para executar tarefas complexas em uma única operação. A maioria das instruções é concluída em um ciclo de máquina. Este pipelining é uma técnica chave usada para acelerar as máquinas RISC.
O RISC é um microprocessador projetado para executar poucas instruções ao mesmo tempo. Com base em pequenas instruções, esses chips exigem menos transistores, o que torna os transistores mais baratos de projetar e produzir. Alguns outros recursos do RISC incluem:
- Menos demanda de decodificação
- Conjunto de instruções uniforme
- Registro de propósito geral idêntico
- Nós de endereçamento simples
- Poucos tipos de dados no hardware
Além disso, ao escrever códigos, o RISC facilita, permitindo que o programador remova códigos desnecessários e evita o desperdício de ciclos.
O termo CISC significa 'Complex Set Instruction Computer'. É uma estratégia de design da CPU baseada em instruções únicas, que são capazes de executar operações em várias etapas.
Computadores CISC têm programas em curto. Tem um grande número de instruções complexas, o que leva muito tempo para ser executado. Aqui, um único conjunto de instruções é coberto em várias etapas; Cada conjunto de instruções tem mais de trezentas instruções separadas. A maioria das instruções é concluída em dois a dez ciclos de máquina. Na CISC, o pipeline de instrução não é facilmente implementado.
As máquinas CISC possuem bons desempenhos, baseados na simplificação de compiladores de programas; como a faixa de instruções avançadas está facilmente disponível em um conjunto de instruções. Eles projetam instruções complexas em um conjunto simples de instruções. Eles executam operações de baixo nível, como uma operação aritmética ou uma carga da memória e do armazenamento de memória. O CISC facilita o uso de grandes nós de endereçamento e mais tipos de dados no hardware da máquina. No entanto, o CISC é considerado menos eficiente que o RISC, devido a sua ineficiência em remover códigos que levam ao desperdício de ciclos. Além disso, chips microprocessadores são difíceis de entender e programar, devido à complexidade do hardware.
Comparação entre RISC e CISC:
RISC | CISC | |
Acrônimo | Significa 'Reduced Instruction Set Computer'. | Significa 'Computador de conjunto de instruções complexas'. |
Definição | Os processadores RISC possuem um conjunto menor de instruções com poucos nós de endereçamento. | Os processadores CISC possuem um conjunto maior de instruções com muitos nós de endereçamento. |
Unidade de memória | Não tem unidade de memória e usa um hardware separado para implementar instruções. | Tem uma unidade de memória para implementar instruções complexas. |
Programa | Tem uma unidade de programação com fio. | Tem uma unidade de micro-programação. |
desenhar | É um design complier complexo. | É um design fácil de ajustar. |
Cálculos | Os cálculos são mais rápidos e precisos. | Os cálculos são lentos e precisos. |
Decodificação | A decodificação de instruções é simples. | A decodificação de instruções é complexa. |
Tempo | O tempo de execução é muito menor. | O tempo de execução é muito alto. |
Memória externa | Não requer memória externa para cálculos. | Requer memória externa para cálculos. |
Pipelining | Pipelining funciona corretamente. | Pipelining não funciona corretamente. |
Stalling | Stalling é reduzido principalmente em processadores. | Os processadores geralmente param. |
Expansão de código | A expansão de código pode ser um problema. | A expansão de código não é um problema. |
Espaço de disco | O espaço é salvo. | O espaço é desperdiçado. |
Aplicações | Usado em aplicativos de ponta, como processamento de vídeo, telecomunicações e processamento de imagens. | Usado em aplicações low end, como sistemas de segurança, automações domésticas, etc. |