arquiteturas de alto desempenhoprof a luiza mourelle 1 máquina multinível um programa pode ser...

Download Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 1 Máquina Multinível Um programa pode ser definido como uma seqüência de instruções que descrevem

If you can't read please download the document

Post on 17-Apr-2015

106 views

Category:

Documents

1 download

Embed Size (px)

TRANSCRIPT

  • Slide 1
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 1 Mquina Multinvel Um programa pode ser definido como uma seqncia de instrues que descrevem como executar uma determinada tarefa. Uma instruo pode ser definida como um comando para o processador. Linguagem de mquina corresponde ao conjunto de instrues primitivas do computador. Devem ser simples, reduzindo a complexidade e custo dos circuitos. Traduo o mtodo pelo qual um programa escrito numa linguagem L2 substitudo por um outro programa escrito em L1, ento executado pela mquina M1, cuja linguagem de mquina L1.
  • Slide 2
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 2 Mquina Multinvel Interpretao o mtodo pelo qual um programa escrito em L1 executa cada instruo do programa escrito em L2, atravs de uma seqncia de instrues L1 equivalentes. Mquina virtual compreende um computador hipottico para uma determinada linguagem, tendo esta como linguagem de mquina. Para uma melhor compreenso da arquitetura de um computador, podemos divid-lo em nveis de hierarquia. Nvel compreende uma mquina M com sua linguagem de mquina L, dentro de um computador. Uma mquina define uma linguagem, assim como uma linguagem define uma mquina.
  • Slide 3
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 3 Mquina Multinvel Um computador com n nveis pode ser visto como n diferentes mquinas virtuais, cada uma com a sua linguagem de mquina. Um programador de nvel n no precisa conhecer os nveis inferiores. Nvel 0 ou nvel de lgica digital o hardware verdadeiro da mquina, cujos circuitos executam os programas em linguagem de mquina de nvel 1. No existe aqui o conceito de programa como uma seqncia de instrues a serem executadas. Neste nvel, os objetos so denominados portas.
  • Slide 4
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 4 Mquina Multinvel Nvel 1 ou nvel de microprogramao o verdadeiro nvel de mquina, havendo um programa denominado microprograma, cuja funo interpretar as instrues de nvel 2. A instruo neste nvel denominada microinstruo. Nvel 2 ou nvel convencional de mquina o primeiro nvel de mquina virtual. A linguagem de mquina deste nvel comumente denominada linguagem de mquina. As instrues so executadas interpretativamente pelo microprograma. Em mquinas que no tenham o nvel de microprogramao, as instrues de nvel convencional de mquina so executadas diretamente pelos circuitos.
  • Slide 5
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 5 Mquina Multinvel Nvel 3 ou nvel de sistema operacional apresenta a maior parte das instrues em linguagem de nvel 2, um conjunto de novas instrues, organizao diferente da memria, capacidade de execuo de dois ou mais programas em paralelo. As novas facilidades so realizadas por um interpretador denominado sistema operacional, em execuo no nvel 2. As instrues de nvel 3 idnticas s de nvel 2 so executadas diretamente pelo microprograma.
  • Slide 6
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 6 Mquina Multinvel Nvel 4 ou nvel de linguagem de montagem consiste de uma forma simblica para uma linguagem de nvel inferior. Os programas em linguagem de montagem so traduzidos para uma linguagem de nvel 2 ou 3, e, ento, interpretados pela mquina apropriada. O programa que executa a traduo denominado montador. Nvel 5 ou nvel de linguagem orientada para problemas consiste de linguagem de alto-nvel. Os programas escritos nessas linguagens so, normalmente, traduzidos para o nvel 3 ou 4 por tradutores conhecidos como compiladores.
  • Slide 7
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 7 Mquina Multinvel Os nveis 2 e 3 so sempre interpretados, enquanto os nveis 4 e 5 so, geralmente, traduzidos. As linguagens de mquina dos nveis 1, 2 e 3 so numricas, ao passo que as dos nveis 4 e 5 so simblicas, contento palavras e abreviaturas. O hardware constitudo pelos circuitos eletrnicos e o software constitudo pelos programas. O firmware consiste no software embutido em dispositivos eletrnicos durante a fabricao. Em muitos computadores, o microprograma est em firmware.
  • Slide 8
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 8 Mquina Multnvel Hardware e software so logicamente equivalentes, isto , qualquer operao efetuada pelo software pode tambm ser implementada pelo hardware e qualquer instruo executada pelo hardware pode tambm ser simulada pelo software. A deciso de colocar certas funes em hardware e outras em software baseia-se em fatores tais como: custo, velocidade, confiabilidade e possveis modificaes.
  • Slide 9
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 9 Nvel de Microprogramao O nvel de microprogramao tem uma funo especfica: executar interpretadores para outras mquinas virtuais. Um microprograma compreende um programa que controla os registradores, os barramentos, a ULA, as memrias e outros componentes do hardware. Os registradores esto localizados fisicamente dentro do processador. Um barramento uma coleo de fios usados para transmitir sinais em paralelo. Pode ser unidirecional ou bidirecional.
  • Slide 10
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 10 Nvel de Microprogramao Um barramento tri-state possui dispositivos capazes de apresentar na sada 0, 1 ou alta impedncia. Utilizados quando h muitos dispositivos ligados a um mesmo barramento. D Q D Q D Q D Q D0D1D2D3 CK OE Q0Q1Q2Q3 entradas sadas BC BABB CK OE1 OE2
  • Slide 11
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 11 Nvel de Microprogramao Um multiplexador tem 2 n entradas, uma sada da mesma largura da entrada e uma entrada de controle de n bits, que seleciona uma das entradas e a direciona para a sada. 2 x 1 A B sada entrada controle Um demultiplexador o inverso de um multiplexador, direcionando a entrada para uma dentre 2 n sadas, de acordo com as n linhas de controle.
  • Slide 12
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 12 Nvel de Microprogramao Um decodificador tem n linhas de entrada e 2 n linhas de sada. De acordo com o cdigo binrio da entrada, uma das sadas ativada. 4 x 16...... 0 1 2 14 15 Um codificador o inverso de um decodificador, possuindo 2 n entradas e n sadas. Somente uma das entradas estar ativa.
  • Slide 13
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 13 Nvel de Microprogramao A Unidade Lgica e Aritmtica possui duas entradas e uma sada para dados, havendo outras entradas e sadas de controle. A B F(A,B) F0 F1 N Z Um deslocador um circuito com capacidade para deslocar direita ou esquerda, ou mesmo no deslocar. deslocador S0 S1 ULA
  • Slide 14
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 14 Nvel de Microprogramao A maioria dos computadores tem um barramento de endereo, um barramento de dados e sinais de controle para a comunicao entre a UCP e os demais componentes do sistema. Um acesso memria quase sempre consideravelmente mais demorado que o tempo necessrio para executar uma nica microinstruo. O registrador MAR responsvel pelo armazenamento do endereo da memria. O registrador MBR responsvel pelo armazenamento do dado.
  • Slide 15
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 15 MAR MBR endereo controle sada de dados entrada de dadosWR RD barramento de dados barramento de endereo CPUbarramento A linha de controle de MBR permite carregar o registro com dado da UCP. O sinal RD carrega o registrador com dado do barramento. O sinal WR libera o contedo do registrador no barramento. Nvel de Microprogramao
  • Slide 16
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 16 Nvel de Microprogramao Um formato de microinstruo, contendo alguns campos codificados, pode ser: CONDCOND ALUALU SHSH ADDRABC MBRMBR MARMAR RDRD ENCENC 1222111114448 AMUX :0 = latch A; 1 = MBR COND:0 = no salta; 1 = salta se N=1; 2 = salta se Z=1; 3 = salta sempre ALU:0 = A+B; 1 = A.B; 2 = A; 3 = NOT A SH:0 = no desloca; 1 = desloca 1 bit direita; 2 = desloca 1 bit esquerda; 3 = x AMUXAMUX WRWR
  • Slide 17
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 17 Nvel de Microprogramao Um ciclo bsico consiste em colocar os valores nos barramentos A e B, armazen-los nos dois latches, pass-los pela ALU e pelo deslocador, e armazen-los na memria local ou no MBR. O seqenciamento dos eventos compreende: 1 -carregar a prxima microinstruo no registrador de microinstruo (MIR); 2 -colocar o contedo dos registros nos barramentos A e B, e guard-los nos latches A e B; 3 -dar tempo ALU e ao deslocador para produzirem um resultado e carregar o MAR, se necessrio; 4 -armazenar o valor existente no barramento C, na memria local ou no MBR.
  • Slide 18
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 18 LALB AMUX MAR MBR ALU DESL N Z AMUXAMUX CONDCOND ALUALU SHSH MBRMBR MARMAR RDRD WRWR ENCENC CBA ADDRADDR LMS 1 2 3 4 DECA DECB DECC MUX MPCINCREGSREGS MC GSC
  • Slide 19
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 19 Nvel de Microprogramao O microprograma, para a arquitetura proposta, deve realizar a busca, decodificao e execuo da instruo do programa de nvel convencional de mquina. O registrador AMASK a mscara de endereo (Ox007777) usada para separar os bits de endereo do restante da instruo. O registrador SMASK a mscara de pilha (Ox000377) usada para separar a constante, associada s instrues INSP e DESP, do restante da instruo. Para realizar uma subtrao utiliza-se complemento a dois: x - y = x + y + 1
  • Slide 20
  • Arquiteturas de Alto DesempenhoProf a Luiza Mourelle 20 Nvel de Micro