A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 Bianca, Felipe, Fernanda, Fernando, Jeferson, José, Juliana, Marco, Matheus, Maurício, Patrick, Rodrigo K., Vitor.

Apresentações semelhantes


Apresentação em tema: "1 Bianca, Felipe, Fernanda, Fernando, Jeferson, José, Juliana, Marco, Matheus, Maurício, Patrick, Rodrigo K., Vitor."— Transcrição da apresentação:

1 1 Bianca, Felipe, Fernanda, Fernando, Jeferson, José, Juliana, Marco, Matheus, Maurício, Patrick, Rodrigo K., Vitor.

2 2 Introdução Um processador CISC (Complex Instruction Set Computer), é capaz de executar instruções complexas, sendo extremamente versátil, alguns exemplos, mais conhecidos de processadores CISC Intel são o 386, o 486 e o Pentium MMX (último lançamento de processador CISC da Intel).386 486Pentium MMX

3 3 Histórico No fim dos anos 60 e início dos 70, os compiladores eram muito fracos, a memória era lenta e cara. Por esses fatores começou uma “crise” no mercado de computadores, pois o hardware barateava enquanto o software ficava cada vez mais caro.

4 4 Histórico Havia certa concordância dos projetistas de hardware quanto à maneira de resolver tal problema: mudar a complexidade do software para o hardware.

5 5 Histórico A idéia era aplicar uma função simples no hardware, que, caso contrário, os programadores teriam que escrever várias vezes. Assim, do “mover o software para o hardware”, surgiu a filosofia CISC.

6 6 Funcionamento As máquinas CISC tentam atingir melhor performance, reduzindo o número de instruções por programa. Os investigadores pensaram que ao reduzir o número de instruções que a máquina executa para completar uma determinada tarefa, poderia reduzir o tempo que ela necessita para completar essa mesma tarefa, aumentando, assim, o seu desempenho.

7 7 Funcionamento Assim, ao reduzir o tamanho dos programas conseguiam-se dois propósitos: por um lado era necessária uma menor quantidade de memória para armazenar o código, e por outro o tempo de execução também era diminuído, pois havia menos linhas de código para executar.

8 8 Endereçamentos complexos Se quiséssemos multiplicar dois números, teríamos primeiro que carregar cada um dos operandos de uma localização na memória para um dos registros. Uma vez carregados nos registros, os operandos poderiam ser multiplicados pela ULA.

9 9 Endereçamento complexo Utilizaríamos os códigos para multiplicar o conteúdo das posições de memória [2:3] e [5:2] e armazenar o resultado na posição [2:3]: MOV [A, 2:3] MOV [B, 5:2] MUL [A, B] MOV [2:3, A]

10 10 Endereçamento complexo Este exemplo de código explicita os passos que têm de ser dados pelo processador para multiplicar os conteúdos de duas posições de memória.

11 11 Endereçamento complexo Para tornar o assembly menos complicado e mais compacto, podemos modificar a arquitetura de forma a realizar a operação descrita com uma instrução. Para atingir esse objetivo, a instrução MUL teria que ser alterada por forma a aceitar como parâmetros duas posições de memória: MUL [2:3, 5:2]

12 12 Endereçamento complexo Apesar de a “nova arquitetura” ainda ter que carregar o conteúdo das duas posições de memória para os registros, multiplicá-los e voltar a armazenar na memória o resultado, todas essas operações de baixo nível são feitas em hardware e são invisíveis para o programador.

13 13 Microprogramação Uma das características das máquinas CISC era a utilização de micro-código. A micro-programação era mesmo uma das características que permitia aos projetistas a implementação de instruções complexas em hardware. Usando execução direta, a máquina carrega a instrução da memória, envia aos registradores, descodifica-a e envia para a unidade de execução.

14 14 Microprogramação A execução direta é o que se poderia esperar que acontecesse dentro de um computador se não houvesse conhecimento do micro-código. A principal vantagem da execução direta é que ela é rápida. Não existe qualquer tipo de abstração ou tradução extra, a máquina apenas descodifica e executa as instruções em hardware.

15 15 Microprogramação Já na micro-programação, ocorre que, a unidade de execução é um processador de micro-código que executa micro- instruções. Onde os desenvolvedores usam estas micro-instruções para escrever micro-programas que são armazenados numa memória de controle especial.

16 16 Microprogramação Quando uma instrução normal de um programa é carregada da memória, descodificada e entregue ao processador de micro-código, este executa a sub-rotina de micro-código adequada. Esta sub-rotina informa às várias unidades funcionais o que fazer e como fazer para processar o micro- código.

17 17 Processamento 1. Construído no interior da memória somente de leitura de um microprocessador CISC está um vasto conjunto de comandos contendo diversos subcomandos, que precisam ser realizados para completar uma operação, como a multiplicação de dois números ou a movimentação de uma linha do texto para outra posição na memória.

18 18 Processamento 2. Como os diversos comandos CISC não são do mesmo tamanho, o microprocessador examina o comando para determinar quantos bytes de espaço de processamento o comando necessita e depois reserva esta quantidade na memória interna (cache).

19 19 Processamento 3. O processador envia o comando solicitado pelo software para uma unidade de decodificação, que traduz o comando complexo para um microcódigo, que é executadas pelo nanoprocessador.

20 20 Processamento 4. Como uma instrução pode depender dos resultados de outra instrução, as instruções são executadas uma a uma. Todas as demais são isoladas até que a instrução em uso seja completada.

21 21 Processamento 5. O nanoprocessador executa cada uma das instruções do microcódigo através de um conjunto de circuitos complexos. O movimento através de circuitos complexos requer de quatro a dez ciclos do relógio para executar uma instrução.

22 22 Vantagens gerais do CISC Micro programação é tão fácil quanto a linguagem assembly para implementar, e muito menos caro que uma rede da unidade de controle.

23 23 Vantagens gerais do CISC As facilidades das novas instruções de micro codificadas permitiram os projetistas fazer máquinas CISC expansíveis e compatíveis: um computador novo poderia rodar os mesmos programas dos computadores mais antigos porque o computador novo conteria um conjunto de instruções para "emular" computadores mais antigos.

24 24 Vantagens gerais do CISC Como cada instrução ficou mais capaz, menos instruções poderiam ser usadas para programar uma determinada tarefa. Isto provocou o uso mais eficiente, relativamente, da lenta memória principal.

25 25 Vantagens gerais do CISC Porque se pode escrever conjuntos de instrução de micro programas para combinar com a construção de linguagens de alto-nível, o compilador não tem que ser tão complicado.

26 26 Vantagens do micro código Considerando que a memória do micro código pode ser muito mais rápida que memória principal, um conjunto de instruções ser implementado em micro código sem perder muita velocidade sobre uma implementação puramente em hard-wired.

27 27 Vantagens do micro código Novos chips são mais fáceis de implementar e requererem menos transistores que implementando o mesmo conjunto de instruções com lógica dedicada, e...

28 28 Vantagens do micro código Um projeto de micro programado pode ser modificado para conduzir um novo conjunto de instruções completamente novo rapidamente.

29 29

30 30 Processador 386

31 31 Processador 486

32 32 Processador Pentium MMX


Carregar ppt "1 Bianca, Felipe, Fernanda, Fernando, Jeferson, José, Juliana, Marco, Matheus, Maurício, Patrick, Rodrigo K., Vitor."

Apresentações semelhantes


Anúncios Google