1 arquitetura de computadores introdução. professor: arlindo tadayuki noji instituto de ensino...

29
1 Arquitetura de Computadores Introdução

Upload: internet

Post on 16-Apr-2015

112 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

1

Arquitetura de Computadores

Introdução

Page 2: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

2Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Conceitos– Arquitetura de Computador

Trata do comportamento funcional de um computador do ponto de vista do programador. São os atributos do sistema que são visíveis a este:

– Conjunto de instruções, número de bits usados para representação de dados, mecanismos de E/S, técnicas de endereçamento, etc.

– ex: Existe uma instrução de multiplicação?

Page 3: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

3Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

– Organização de Computador Trata dos aspectos que são transparentes ao programador.

Refere-se às unidades operacionais e suas interconexões que implementam sua arquitetura:

– Sinais de controle, interfaces entre o computador e os

periféricos, tecnologia de memória, tamanho da memória física,

frequência de clock, etc.

– ex: Existe uma unidade de multiplicação no hardware ou esta é

implementada através do uso sucessivo do mecanismo de

soma?

Page 4: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

4Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Um pouco de história– Primeiros dispositivos mecânicos no século XVI

Ex: Caixa de músicas, com cilindros rotativos Ex atual: Caixa de músicas para crianças

– Blaise Pascal (1623-1662) desenvolveu uma calculadora mecânica para auxiliar na preparação dos impostos de seu pai.

Page 5: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

5Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Máquina de Calcular de Pascal

Figura retirada do livro Introdução a Arquitetura de Computadores, Miles J. Murdocca

Page 6: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

6Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

O Avô da Computação– Charles Babbage (1791-1871) projetou, mas nunca

conseguiu construir uma versão prática da máquina que projetou.

– Ele viveu na Inglaterra, onde tinha muitas dificuldades de trabalhar com tabelas matemáticas em cálculos de navegação e trabalhos científicos. O projeto incluir até uma forma automatizada de impressão para evitar erros na hora de escrever no papel.

– Tinha funções de “branching”, capacidade de programação usando cartões perfurados

Page 7: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

7Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Um século depois, na Segunda Guerra Mundial, ocorreram os avanços significativos na computação.

Os alemães usavam um sistema de criptografia, chamado ENIGMA inventada pela SIEMENS AG, para usar contra os aliados.

Este problema, motivou o Alan Turing (1912-1954) e outros cientistas da Inglaterra para criar máquinas capazes de quebrar os códigos de codificação. O resultado desses trabalho gerou o sistema “Colosso”. Este sistema conseguia quebrar várias msg criptografadas.

Page 8: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

8Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

A máquina Colossos consistia de válvulas e conexões de fios.

No mesmo período, o J. Presper Eckert e John Mauchly projetaram uma máquina que poderia ser usada para calcular a trajetória balistica para o exército dos Estados Unidos. Foi Chamado de “Eletronic Numerical Integrator and Computer” – ENIAC.

Page 9: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

9Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

O ENIAC, tinha 18.000 válvulas:– O programa e dados eram introduzidos por meio de

interruptores e troca de cabos– Não tinha uma central de memória– Foi usado por 9 anos

Page 10: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

10Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Eckert e Mauchly se uniram ao Von Neumann (1903-1957), do Institute for Advanced Study de Princeton, para trabalhar num projeto de um computador com armazenamento de programa chamado EDVAC.

O conceito evoluiu e um modelo funcional derivou o EDSAC, contruído por Maurice Wilkes, da Cambridge University, em 1947.

Page 11: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

11Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

O modelo Von Neumann X Harvard– Existe basicamente dois modelos de arquitetura de

computadores Von Neumann Harvard

Page 12: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

12Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Modelo Harvard

Modelo Von Neumann

CPUMemória

deProgramas

Memóriade

Dados

CPU

Memóriade

Programas

Memóriade

Dados

Page 13: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

13Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

O Modelo Von Neumann– Consiste em cinco

componentes principais, como mostra a figura

Unidade de entrada Unidade de memória Unidade aritmética e lógica Unidade de Controle Unidade Central de

processamento (CPU)

Page 14: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

14Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

O aspecto principal do modelo de Von Neumann é a possibilidade de usar a memória para armazenar tanto programas como também dados.

Vantagens– Os programas podem ser manipulados facilmente– Possibilitou a criação e evolução de compiladores– Possibilitou a criação e evolução dos sistemas operacionais

Page 15: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

15Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Modelo Modernizado– Os computadores modernos usam uma versão que usa o

modelo de barramento de sistema de um sistema de computação

Page 16: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

16Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Modelo Von Neumann Aprimorado

Page 17: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

17Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Idéia de Barramento– Compartilhamento de dados entre as unidades– Necessidades de identificadores individuais entre

as unidades para se comunicarem– Memória e E/S podem ser identificados de forma

única ou separados– O Barramento de Controle é o mais Complexo,

pois ele é responsável por coordenar o fluxo de dados entre os barramentos.

Page 18: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

18Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das máquinas

Page 19: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

19Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das Máquinas– Para o estudo da computação podemos separar em níveis

que podem apresentar aspectos relacionados deste o usuário, até o mais baixo que pode ser o transistor.

– Estes níveis como visto na figura anterior, inclusive estão sendo discutidos e podem aumentar!

Vantagens– Cria abstrações para diferentes níveis de conhecimento de

um computador. Ex: Usuário, Programador, Engenheiro, Físico, etc.

– Compatibilidade para cima “Upward compatibility”

Page 20: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

20Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das Máquinas– Usuário

Nível de alto nível, onde as pessoas usam o computador para processar textos, planilhas, acessar Internet ou jogar “games” Ex: Word, Email, CS, etc

– Linguagem de Alto Nível Neste nível, as pessoas dedicadas a este tipo de trabalho,

estão acostumadas a programar com linguagens de programação tipo C, Pascal, Basic, Java, etc. Usam compiladores para adequar os comando de alto nível de programação em diferentes máquinas computacionais. Ex: Intel, PowerPC, Familias Motorola, etc.

Page 21: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

21Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das Máquinas– Montagem de Código de Máquina

Neste nível, tratamos com uma linguagem de baixo nível, chamada de linguagem de máquina ou código de máquina. Os compiladores normalmente traduzem a linguagem de alto nível para a linguagem de baixo nível, porque está é a linguagem que a máquina entende. É uma linguagem que olha para baixo, acessando dados da memória, dos dispositivos de E/S e outras informações do resto do hardware.

A linguagem de máquina, utiliza um conjunto de instruções que na verdade é uma coleção de comandos presentes na linguagem de baixo nível. Na prática, esses comandos não passam de zeros e uns que combinados formam diversas instruções que o hardware entende.

Como o ser humano não consegue entender bem uma linguagem de máquina, surgiu a linguagem assembly, ou linguagem de montagem, cujo o objetivo foi apenas traduzir os comandos binários em mnemônicos, em outras palavras em palavras de comando que as pessoas pudessem entender melhor. Ex: 00 0001 1000 1100 = CLRF F

Page 22: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

22Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das Máquinas– Controle

A unidade de controle tem papel importante num sistema computacional. Esta unidade é responsável por por efetuar a transferência dados entre registradores. Para isto, interpreta os comandos de acesso a dados e transfere as informações entre registradores. Ex: MOVE AX,05h

Estes controles podem ser implementados usando circuitos lógicos e fios, o que torna soluções fixas, porém muito rápidas

Outra solução é usar microprogramas. A idéia é exista uma outra linguagem de mais baixo nível ainda, para tornar flexível a implementação de funcionalidades do código de máquina. Ex: Normalmente isto é feito para compatibilizar linguagem de maquinas antigas em novas arquiteturas mais rápidas como a INTEL faz.

Page 23: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

23Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das Máquinas– Unidades funcionais

Incluem a memória, ALU, registradores, etc– Portas lógicas, transistores e Fios

As unidades funcionais são construídas a partir de circuitos lógicos que por sua vez são feitas de transistores. Eles circuitos são responsáveis por executar as operações mais simples como o AND, OR e NOT. A combinação complexas destas portas lógicas com e uso de temporização permitem fazer o processamento de dados dentro de um computador.

Neste nível, as preocupações com detalhes com níveis de sinal elétrico, corrente, atraso de propagação de sinais, efeito quantico e outros assuntos relacionados são importantes.

Page 24: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

24Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Níveis das Máquinas– Para o estudo da computação podemos separar em níveis

que podem apresentar aspectos relacionados deste o usuário, até o mais baixo que pode ser o transistor.

– Estes níveis como visto na figura anterior, estão sendo re-discutidos e podem aumentar!

– Dependendo da nova arquitetura, os níveis podem se confundir, como é o caso de maquinas que possuem co-processadores e os que não tem.

Page 25: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

25Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Sistema Típico de Computador

Page 26: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

26Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Placa Mãe (Pentium II)

Page 27: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

27Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

CPU (PII)

Page 28: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

28Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Supercomputadores (Mainframe)

(Source: http://www.paralogos.com/DeadSuper)

Page 29: 1 Arquitetura de Computadores Introdução. Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF 2 Arquitetura de Computadores Conceitos

29Professor: Arlindo Tadayuki Noji Instituto de Ensino Superior Fucapi - CESF

Arquitetura de Computadores

Lei de Moore– O poder computacional dobra de capacidade a cada 18

meses– Investimento de alto risco para a industria de

microprocessadores. Aumenta o valor de investimento ao mesmo tempo que reduz o tempo de retorno de cada novo chip. Ex: é necessário 2,3 ou 4 bilhões de dólares para cada novo projeto de chip mais rápido.