24
1 AULA : Campus Charqueadas Arquiteturas Paralelas e Distribuídas Apresentado por: Cleber Schroeder Fonseca Adaptado do material do Prof. Guilherme Ferreira TSI-6AN

Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores

Embed Size (px)

Citation preview

1 AULA :

Campus  Charqueadas  

Arquiteturas Paralelas e Distribuídas

Apresentado por: Cleber Schroeder Fonseca Adaptado do material do Prof. Guilherme Ferreira

TSI-6AN

2 AULA :

Campus  Charqueadas  

•  Dado o esquema abaixo deseja-se que os dados lidos da memoria passem por todos os nove pontos do processador, utilizando o mínimo possível de fios retos.

3 AULA :

Campus  Charqueadas  

Solução

•  Com essa solução, temos 5 retas

•  Será que 5 é realmente o número mínimo de retas?

•  Pense um pouco mais!

4 AULA :

Campus  Charqueadas  

Solução

5 AULA :

Campus  Charqueadas  

ARQUITETURA DE COMPUTADORES

6 AULA :

Campus  Charqueadas  

Como funciona um computador

•  Algoritmos implementados por um programa

Escrito em uma linguagem de programação

Sequencia de instruções

7 AULA :

Campus  Charqueadas  

•  Programadores se comunicam com o computador através de uma linguagem de computador.

•  Para essa comunicação ocorrer é necessário que seja utilizada uma linguagem comum.

•  Ou que seja utilizado um tradutor.

8 AULA :

Campus  Charqueadas  

•  Linguagens em geral •  É necessário uma tradução da linguagem

comum para o binário

9 AULA :

Campus  Charqueadas  

Linguagem de programação alto

nível

Montagem

Sistema operacional

Macroprogramação

Compilação

Montador

Interpretação parcial

Interpretação

10 AULA :

Campus  Charqueadas  

Microprogramação

Circuitos digitais

Só agora são executadas as instruções

Interpretação

11 AULA :

Campus  Charqueadas  

Tradução X Interpretação

•  Existem linguagens que são compiladas (traduzidas) e outras são interpretadas

•  A tradução é feita apenas uma vez. Já a interpretação é realizada quando o programa é executado.

12 AULA :

Campus  Charqueadas  

13 AULA :

Campus  Charqueadas  

•  O que aconteceria se não existissem essas interpretações e compilações

•  Para cada linguagem teria que criar uma maneira de tratar uma instrução, e isso seria diferente para cada processador

•  No fim teríamos m*n formas de executar um programa, dependendo da linguagem e do processador

14 AULA :

Campus  Charqueadas  

•  Então a etapa de interpretação ou compilação são necessárias para simplificar a forma como são concebidos e executados

•  Os processadores não precisam se preocupar com que linguagem foi desenvolvido e vice-versa

•  Instruções complexas são reduzidas para que sejam entendidas pelos processadores

15 AULA :

Campus  Charqueadas  

Abstração

16 AULA :

Campus  Charqueadas  

•  Os compiladores A, B, C e D não são necessariamente diferentes, nem os processadores

•  O Java é diferente pois ele se disfarça.

17 AULA :

Campus  Charqueadas  

•  O Java esconde a complexidade da plataforma por trás da JVM

18 AULA :

Campus  Charqueadas  

•  A adição e multiplicação são sempre executados em nível de hardware pois o desempenho é muito melhor

•  Então por que não implementar tudo em hardware?

•  Custo é resposta. Se implementarmos as operações mais sofisticadas em hardware o custo computacional aumentaria demais

19 AULA :

Campus  Charqueadas  

•  Não são poucos os circuitos necessários para implementar a soma e a multiplicação, imagina implementar programas complexos

•  Por outro lado imaginem a perda de tempo desnecessária que haveria se toda vez tivéssemos de traduzir essa instrução

20 AULA :

Campus  Charqueadas  

•  Se ocorre algum problema físico com as peças, como reparar?

•  Software são mais baratos e, caso haja algum erro, é muito mais facil localizar e concertar

21 AULA :

Campus  Charqueadas  

Processadores

•  Sua função é executar programas armazenados na memória principal, buscando instruções, identificando e executando as mesmas uma após a outra

•  Unidade de controle •  Unidade Lógica Aritmética •  Registradores

22 AULA :

Campus  Charqueadas  

•  O processador executa as instruções através de uma pequena sequência de passos conhecida como o ciclo busca-decodifica-executa

•  Este ciclo é o centro das operações em todos os processadores

23 AULA :

Campus  Charqueadas  

ARQUITETURA PIPELINE

24 AULA :

Campus  Charqueadas  

Arquitetura Pipeline