Articles

RISC vs. CISC Architectures: Qual delas é melhor?

Posted on

Computador de Conjunto de Instrução Reduzida (RISC) é um tipo ou categoria do processador, ou Arquitectura do Conjunto de Instrução (ISA). Falando amplamente, um ISA é um meio pelo qual um processador comunica com o programador humano (embora existam várias outras camadas formalmente identificadas entre o processador e o programador). Uma instrução é um comando dado ao processador para executar uma acção. Um conjunto de instruções é toda a colecção de instruções para um determinado processador, e o termo arquitectura implica uma forma particular de construir o sistema que torna o processador.

RISC refere-se geralmente a uma versão simplificada do seu predecessor, o Computador do Conjunto Complexo de Instruções (CISC). No início dos processadores, não havia uma identificação formal conhecida como CISC, mas o termo foi desde então cunhado para os identificar como diferentes da arquitectura RISC. Alguns exemplos de arquitecturas de conjuntos de instruções de microprocessadores CISC (ISAs) incluem o Motorola 68000 (68K), o DEC VAX, o PDP-11, várias gerações do Intel x86, e o 8051.

Exemplos de processadores com a arquitectura RISC incluem MIPS, PowerPC, AVR da Atmel, os processadores Microchip PIC, os processadores Arm, RISC-V, e todos os microprocessadores modernos têm pelo menos alguns elementos do RISC. A progressão de arquitecturas de 8 e 16 bits para 32 bits obrigou essencialmente à necessidade de arquitecturas RISC. No entanto, levou uma década até que as arquitecturas RISC começassem a tomar posse, principalmente devido à falta de software que funcionasse em arquitecturas RISC. A Intel também causou impacto, uma vez que tinha os meios para continuar a utilizar a arquitectura CISC e não encontrou qualquer necessidade de redesenhar a partir do zero. A arquitectura MIPS foi uma das primeiras ISAs RISC e tem sido amplamente utilizada para ensinar a arquitectura RISC.

p>Algum história
O primeiro chip integrado foi concebido em 1958 por Jack Kilby. Os microprocessadores foram introduzidos na década de 1970, o primeiro comercial vindo da Intel Corporation. No início dos anos 80, a arquitectura RISC tinha sido introduzida. O design RISC surgiu como um redesenho total porque a arquitectura CISC estava a tornar-se mais complexa. John Cocke, da IBM, dá o maior crédito a John Cocke por ter criado o conceito RISC. A história diz-nos que para obter um computador mais rápido, ocorreram algumas grandes mudanças na arquitectura do microprocessador que se tornaram RISC, incluindo um formato uniforme para instruções e instruções facilmente encanadas. (Pipelining significa que o processador começa a executar a instrução seguinte antes de a presente instrução estar concluída). Nos anos 70, a memória era dispendiosa, por isso programas mais pequenos eram um foco.p>Quais são as diferenças entre RISC e CISC?
A resposta curta é que RISC é visto por muitos como uma melhoria em relação a CISC. Não há melhor arquitectura uma vez que arquitecturas diferentes podem simplesmente ser melhores em alguns cenários mas menos ideais em outros. As máquinas baseadas em RISC executam uma instrução por ciclo de relógio. As máquinas CISC podem ter instruções especiais, bem como instruções que levam mais do que um ciclo a executar. Isto significa que a mesma instrução executada numa arquitectura CISC pode levar várias instruções a executar numa máquina RISC. A arquitectura RISC precisará de mais memória de trabalho (RAM) do que a CISC para manter valores à medida que carrega cada instrução, age sobre ela, depois carrega a seguinte.

A arquitectura CISC pode executar uma, embora mais complexa, que faz as mesmas operações, todas de uma só vez, directamente sobre a memória. Assim, a arquitectura RISC requer mais RAM mas executa sempre uma instrução por ciclo de relógio para um processamento previsível, o que é bom para pipelinagem. Uma das maiores diferenças entre RISC e CISC é que RISC enfatiza a eficiência em ciclos por instrução e CISC enfatiza a eficiência em instruções por programa. Um processador rápido depende de quanto tempo leva a executar cada ciclo de relógio, quantos ciclos leva a executar instruções, e o número de instruções que existem em cada programa. O RISC tem uma ênfase no tamanho maior do código do programa (devido a um conjunto de instruções mais pequeno, pelo que múltiplos passos feitos em sucessão podem equivaler a um passo no CISC).

O RISC ISA enfatiza o software sobre o hardware. O conjunto de instruções RISC requer um software mais eficiente (por exemplo, compiladores ou código) com menos instruções. CISC ISAs usam mais transístores no hardware para implementar mais instruções e instruções mais complexas também.

RISC precisa de mais RAM, enquanto que CISC tem uma ênfase em código de menor tamanho e usa menos RAM em geral do que RISC. Muitos microprocessadores hoje em dia possuem uma mistura de atributos RISC e CISC, no entanto, tais como um ISA semelhante ao CISC que trata as instruções como se fossem uma cadeia de instruções do tipo RISC.

Algumas grandes diferenças entre as arquitecturas CISC e RISC estão listadas na Tabela 1.

RISC vs. CISC
Tabela 1: Tabela de algumas das diferenças entre as Arquitecturas do Conjunto de Instruções CISC e RISC (ISAs).

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *