Org6
Introdução
• O desempenho de um programa depende:
Organização e Arquitetura de computadores
– Número de instruções (depende do set de instruções)
– Velocidade de clock (depende da implementação)
– CPI - Número de ciclos gastos por instrução (depende da implementação do ISA)
• Implementação do MIPS simplificada:
O processador: o caminho de dados e o controle – Intruções de referência à memória (lw e sw)
– Instruções lógicas e aritméticas (add, sub, and, or, slt)
– Instruções de controle de fluxo (saltos) beq e j
• lw $t1, offset($t2)
– Load word
– $t1 = valor armazenado na posição de memória $t2 + offset
Prof. Dr. Luciano José Senger
• sw $t1, offset($t2)
– Store word
– posição de memória [$t2 + offset] = $t1
• Beq $t1, $t2, endereço
– Branch if equal (salte se igual)
Introduç
Introdução
Uma sinopse da implementaç implementação • Implementação simplificada
• Todas as instruções do conjunto de instruções têm os dois primeiros passos idênticos:
– Diretrizes:
• Torne o caso comum mais rápido
• A simplicidade favorece a regularidade
– As demais instruções podem ser implementadas com princípios semelhantes
– A arquitetura do conjunto de instruções influencia os aspectos de implementação: instruções mais simples necessitam de uma implementação também mais simples • Memória
– Inicialmente as memórias de programa e controle separadas Uma visão abstrata da implementaç implementação do subconjunto MIPS mostrando as unidades funcionais principais e as conexões principais
– Enviar o valor armazenado no PC para a memória de programa e buscar a instrução dessa memória
– Ler um ou dois registradores, usando os campos de instrução para selecionar os registradores a serem lidos. Para a instrução load word, precisamos ler apenas um registrador, mas a maioria das outras instruções exige a leitura de dois registradores
• Mesmo entre diferentes classes de instruções, há algumas semelhanças: – Todas as classes utilizam a UAL após a leitura dos registradores:
•