TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

ARQUITETURA CISC

Por:   •  3/5/2017  •  Relatório de pesquisa  •  1.116 Palavras (5 Páginas)  •  446 Visualizações

Página 1 de 5

ARQUITETURA CISC

No inicio dos anos 70, os compiladores eram muito pobres , sendo a memória lenta no qual causava serias limitações. Estas limitações acabaram causando uma supervalorização no software . O hardware era cada vez mais barato e o software cada vez mais caro. Um grande número de investigadores e projectistas sabiam que isso só mudaria caso se mudasse esta situação do software para o hardware.

Alguns investigadores sugeriram que uma maneira de tornar o trabalho dos programadores mais fácil seria fazer com que o código assembly se parecesse mais com o código das linguagens de alto nível (C ou Pascal), no qual se teve a ideia de se produzir uma arquitetura CISC.

Principais razões para se promover este tipo de arquitetura:

∙ Reduzir as dificuldades de escrita de compiladores;

∙ Reduzir o custo global do sistema;

∙ Reduzir os custos de desenvolvimento de software;

∙ Reduzir drasticamente o software do sistema;

∙ Reduzir a diferença semântica entre linguagens de programação e máquina;

∙ Melhorar a compactação do código;

Com a evolução da tecnologia, o micro-código estava cada vez mais rápido. Como o micro-código era cada vez melhor, fazia cada vez mais sentido transferir funcionalidades do software para o hardware. Assim, os conjuntos de instruções cresceram rapidamente e o número médio de instruções por programa decresceu.

Contudo, à medida que os microprogramas cresceram para fazer face ao crescente número de instruções, alguns problemas começaram a surgir. Para manter um bom desempenho, o micro-código tinha que ser altamente optimizado, eficiente e bastante compacto para que os custos de memória não começassem a crescer desmesuradamente. Como resultado, o micro-código incluído nas máquinas que vinham para o mercado tinha, por vezes, erros e tinha que ser corrigido inúmeras vezes. Foram estas dificuldades de implementação do micro-código que levaram a que os investigadores questionassem se a implementação de todas estas instruções complexas e elaboradas em micro-código seria, realmente o melhor a se fazer.

Esta abordagem provocou a inversão da filosofia iniciada pelos CISC e a complexidade teve que ser retirada do hardware e ser passada para o software. Os investigadores diziam que o suporte para as linguagens de alto nível poderia ser mais eficiente se fosse implementada em software. Esses recursos poderiam ser utilizados em outras tecnologias para melhorar o desempenho. Com base nisto foi realizados diversos estudos nos funcionamentos dos processadores.

O que os investigadores concluíram dos estudos realizados foi que um pequeno conjunto de instruções estava a fazer a maioria do trabalho. Esta ideia da redução do conjunto de instruções, substituindo as instruções mais complexas por conjuntos de instruções mais simples, foi o que esteve na origem do termo Reduced Instruction Set Computer ( RISC) . Ao incluir apenas um pequeno e criteriosamente escolhido grupo de instruções numa máquina, poder-se-ia deixar de fora o suporte do micro-código e passar a usar a execução direta.

ARQUITETURA RISC

Não só o número de instruções foi reduzido, mas também o tamanho das mesmas. Foi decidido que todas as instruções RISC deveriam, sempre que possível, demorar apenas um ciclo de relógio a terminar a sua execução. A razão por trás desta decisão foi baseada em algumas observações feitas pelos investigadores. Em primeiro lugar, aperceberam-se que tudo o que poderia ser feito usando as instruções de micro-código, também poderia ser feito com pequenas e rápidas instruções de assembly. A memória que estava a ser usada para armazenar o micro-código, poderia simplesmente ser usada para armazenar o assembler, assim a necessidade de micro-código seria pura e simplesmente eliminada. É por esta razão que muitas das instruções de uma máquina RISC correspondem a micro-instruções numa máquina CISC.

A segunda razão que levou a que o formato fosse uniformizado e demorasse apenas um ciclo de relógio foi a observação de que a implementação do pipelining só é realmente viável se não tiver que lidar com instruções de diferentes graus de complexidade. Como o pipelining permite a execução de várias instruções em paralelo, uma máquina que o suporte consegue reduzir drasticamente o número médio de ciclos por instrução (CPI – Cycles Per Instruction).

O sucesso deste tipo de arquitectura depende fortemente da “inteligência” e nível de optimização dos compiladores que se “aproveitam” da maior responsabilidade que lhes é concedida para poderem debitar código mais optimizado. Este fato de transferir o fardo da optimização do código do hardware para o compilador foi um dos mais importantes avanços da arquitectura RISC.. Assim, as máquinas RISC dedicavam os seus limitados recursos (transístores) a providenciar um ambiente em que o código poderia ser executado tão depressa quanto o possível, confiando no compilador para fazer o código compacto e optimizado.  Este tipo de arquitectura é caracterizado, a este nível, por ter um número bastante grande, por comparação com as máquinas CISC, de registos de uso geral.

...

Baixar como (para membros premium)  txt (7.5 Kb)   pdf (92.8 Kb)   docx (101.3 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com