Sei sulla pagina 1di 4

Arquitetura de processadores: RISC e CISC

A arquitetura de processador descreve o processador que foi usado em um computador. Grande


parte dos computadores vm com identificao e literatura descrevendo o processador que contm
dentro de si, arquitetura CISC e RISC.
A CISC (em ingls: Complex Instruction Set Computing, Computador com um Conjunto Complexo de
Instrues), usada em processadores Intel e AMD; suporta mais instrues no entanto, com isso,
mais lenta fica a execuo delas.
A RISC (em ingls: Reduced Instruction Set Computing, Computador com um Conjunto Reduzido de
Instrues) usada em processadores PowerPC (da Apple, Motorola e IBM) e SPARC (SUN); suporta
menos instrues, e com isso executa com mais rapidez o conjunto de instrues que so
combinadas.
indiscutvel, porm, que em instrues complexas os processadores CISC saem-se melhor. Por
isso, ao invs da vitria de uma das duas tecnologias, atualmente vemos processadores hbridos, que
so essencialmente processadores CISC, mas incorporam muitos recursos encontrados nos
processadores RISC (ou vice-versa).
Nos chips atuais, que so na verdade misturas das duas arquiteturas, juntamos as duas coisas.
Internamente, o processador processa apenas instrues simples. Estas instrues internas, variam
de processador para processador, so como uma luva, que se adapta ao projeto do chip. As
instrues internas de um K6 so diferentes das de um Pentium por exemplo. Sobre estas instrues
internas, temos um circuito decodificador, que converte as instrues complexas utilizadas pelos
programas em vrias instrues simples que podem ser entendidas pelo processador. Estas
instrues complexas sim, so iguais em todos os processadores usados em micros PC. isso que
permite que um Athlon e um Pentium III sejam compatveis entre s.??O conjunto bsico de
instrues usadas em micros PC chamado de conjunto x86. Este conjunto composto por um total
de 187 instrues, que so as utilizadas por todos os programas. Alm deste conjunto principal,
alguns processadores trazem tambm instrues alternativas, que permitem aos programas executar
algumas tarefas mais rapidamente do que seria possvel usando as instrues x86 padro. Alguns
exemplos de conjuntos alternativos de instrues so o MMX (usado apartir do Pentium MMX), o 3DNOW! (usado pelos processadores da AMD, apartir do K6-2), e o SSE (suportado pelo Pentium III).
Agora vamos analisar cada uma delas com um pouco mais detalhadamente.

CISC
Examinando de um ponto de vista um pouco mais prtico, a vantagem de uma arquitetura CISC
que j temos muitas das instrues guardadas no prprio processador, o que facilita o trabalho dos
programadores, que j dispe de praticamente todas as instrues que sero usadas em seus
programas. Os processadores CISC tm a vantagem de reduzir o tamanho do cdigo executvel por
j possuirem muito do cdigo comum em vrios programas, em forma de uma nica instruo.
Os processadores baseados na computao de conjunto de instrues complexas contm uma

microprogramao, ou seja, um conjunto de cdigos de instrues que so gravados no processador,


permitindo-lhe receber as instrues dos programas e execut-las, utilizando as instrues contidas
na sua microprogramao. Seria como quebrar estas instrues, j em baixo nvel, em diversas
instrues mais prximas do hardware (as instrues contidas no microcdigo do processador).
Como caracterstica marcante esta arquitetura contm um conjunto grande de instrues, a maioria
deles em um elevado grau de complexidade.
A CISC implementada e guardada em micro-cdigo no processador, sendo difcil modificar a lgica
de tratamento de instrues. Esta arquitetura suporta operaes do tipo a=a+b descrita por add
a,b, ou seja podem simplesmente utilizar dois operandos para uma nica instruo, sendo um deles
fonte e destino (acumulador) e permite um ou mais operadores em memria para a realizao das
instrues. Com isto se comprova a necessidade de abranger um elevado leque de modelos de
endereamento, com acesso direto memria e com apontadores para as variveis em memria,
armazenados eles prprios (ponteiros) em clulas de memria.
Porm, do ponto de vista da performance, os CISCs tm algumas desvantagens em relao
aos RISCs, entre elas a impossibilidade de se alterar alguma instruo compostapara se melhorar a
performance. O cdigo equivalente s instrues compostas do CISC pode ser escrito nos RISCs da
forma desejada, usando um conjunto de instrues simples, da maneira que mais se adequar. Sendo
assim, existe uma disputa entre tamanho do cdigo X desempenho.

RISC
No caso de um chip estritamente RISC, o programador j teria um pouco mais de trabalho, pois
como disporia apenas de instrues simples, teria sempre que combinar vrias instrues sempre
que precisasse executar alguma tarefa mais complexa.
Os processadores baseados na computao de conjunto de instrues reduzido no tm microprogramao, as instrues so executadas diretamente pelo hardware. Como caracterstica, esta
arquitetura, alm de no ter microcdigo, tem o conjunto de instrues reduzido, bem como baixo
nvel de complexidade.
A ideia foi inspirada pela descoberta de que muitas das caractersticas includas na arquitetura
tradicional de processadores para ganho de desempenho foram ignoradas pelos programas que
foram executados neles. Mas o desempenho do processador em relao memria que ele acessava
era crescente. Isto resultou num nmero de tcnicas para otimizao do processo dentro do
processador, enquanto ao mesmo tempo tentando reduzir o nmero total de acessos memria.
RISC tambm a arquitetura adotada para os processadores dos videogames modernos, que
proporcionam um hardware extremamente dedicado somente execuo do jogo, tornando-o muito
mais rpido em relao a micro computadores com mais recursos, embora com processador x86.
Pode-se concluir que os projetistas de arquiteturas CISC consideram trs aspectos bsicos: uso de
microcdigo; construo de conjuntos com instrues completas e eficientes (completeza no
conjunto); criao de instrues de mquina de alto nvel, ou seja, com complexidade semelhante
dos comandos de alto nvel.

Colocados juntos, esses elementos do projeto nortearam a filosofia de construo de processadores


CISC por longo tempo, como a famlia Intel x86, os processadores AMD K e, anteriormente, os
sistemas IBM e VAX. Assim que existem naqueles conjuntos instrues poderosas, do tipo:

CAS compare and swap operands (comparar valores e trocas operandos)


RTR return and restore codes (retornar e restaurar cdigo)
SWAP swap register words (trocar palavras dos registradores)

Menor quantidade de instrues: talvez a caracterstica mais marcante das arquiteturas RISC,
seja a de possuir um conjunto de instrues menor(todas tambm com largura fixa), que as
mquinas que possuam a arquitetura CISC, porm com a mesma capacidade. Vem da o nome dado
a arquitetura RISC (computadores com um conjunto reduzido de instrues). A SPARC, da Sun,
possua um conjunto de cerca de 50 instrues, a VAX-11/780 tinha at 300 instrues, o Intel 80486
foi apresentado com 200 instrues e os Pentium possuem mais de 200 instrues.
Com o conjunto de instrues reduzido e cada uma delas tendo suas funes otimizadas, os sistemas
possuam um resultado melhor em questo de desempenho. Em virtude do conjunto reduzido das
instrues, acarretavam em programas um pouco mais longos.
Execuo otimizada de chamadas de funo: outra evoluo da arquitetura RISC para a
arquitetura CISC tem relao com a chamada de retinas e passagem de parmetros. Estudos
indicam que as chamadas de funes consomem um tempo significativo de processador. Elas
requerem poucos dados, mas demoram muito tempo nos acessos a memria.
Em virtude disso, na arquitetura RISC foram utilizados mais registradores. As chamadas de funo
que na arquitetura CISC ocorriam com acessos a memria, mas na RISC isso era feito dentro do
processador mesmo, utilizando os registradores que foram colocados a mais.
Modo de execuo com Pipelining: uma das caractersticas mais relevantes da arquitetura RISC
o uso de pipelining, mesmo sabendo que ela tem um funcionamento mais efetivo quando as
instrues so todas bastante parecidas.
Imaginando estgios de uma linha de montagem, no interessantes que um estgio termine antes
do outro, pois nesse caso perde-se a vantagem da linha de montagem. O objetivo de cada instruo,
completar um estgio de pipeline em um ciclo de clock, mas esse objetivo nem sempre
alcanado.
O processamento de uma instruo composto pelo menos por cinco fases:

Instruction fetch;
Instruction decode;
Operand fetch;
Execution;
Write back.

Hoje em dia o pipeline no se limita a apenas 5 estgios, mas pode chegar a 20 ou 30 estgios (Intel
Pentium 4). No entanto, para que todo o processo funcione necessrio que determinadas restries
se verifiquem. A prioridade que todas as instrues permaneam em cada estgio o mesmo tempo,
para que:

O sinal de relgio seja usado como cadncia de processamento;


No sejam necessrios buffers;

Execuo de cada instruo em um ciclo de clock: se o uso do pipelining se considera uma


caracterstica importante da arquitetura RISC, a execuo de uma instruo por ciclo de clock
mais importante, segundo os que estabeleceram suas bases. Um dos pontos mais negativos das
arquiteturas RISC o longo tempo de execuo de cada instruo. Com o surgimento dessa nova
arquitetura, cada instruo passou a ser executada a cada ciclo de clock.

Resumo
Vamos montar uma tabela com as principais diferenas entre as arquiteturas. Isto deveria ser
suficiente para responder a maioria das questes de concurso sobre o assunto.
RISC

CISC

Mltiplos conjuntos de registradores,


muitas vezes superando 256

nico conjunto de registradores,


tipicamente entre 6 e 16
registradores

Trs operandos de registradores


permitidos por instruo (por
ex., add R1, R2, R3)

Um ou dois operandos de
registradores permitidos por
instruo (por ex., add R1, R2)

Passagem eficiente de parmetros por


registradores no chip (processador)

Passagem de parmetros ineficiente


atravs da memria

Instrues de um nico ciclo


(ex. load e store)

Instrues de mltiplos ciclos

Controle hardwired (embutido


no hardware)

Controle microprogramado

Altamente paralelizado (pipelined)

Fracamente paralelizado

Instrues simples e em nmero


reduzido

Muitas instrues complexas

Instrues de tamanho fixo

Instrues de tamanho varivel

Complexidade no compilador

Complexidade no cdigo

Apenas instrues load e store podem


acessar a memria

Muitas instrues podem acessar a


memria

Poucos modos de endereamento

Muitos modos de endereamento

Referncias:

http://pt.wikipedia.org/wiki/RISC?http://pt.wikipedia.org/wiki/CISC
http://0fx66.com/blog/hardware/cisc-risc/?http://waltercunha.com/blog/index.php/2009/08/30/risc-x-cisc/?http://www.hardware.com.br/artigos/risc-cisc/

?-

Potrebbero piacerti anche