Vous êtes sur la page 1sur 46

Universidade Federal Rural do Rio de Janeiro Instituto Multidisciplinar DTL Cincia da Computao

Arquitetura de Computadores
Unidade de Memria

Passo para a execuo de uma instruo:


Unidade de Sada

Unidade de Entrada

Unidade de Controle

1) Busca 2) Decodificao 3) Execuo 4)Resultado ou Armazenamento

Unidade Lgica Aritmtica

Universidade Federal Rural do Rio de Janeiro Instituto Multidisciplinar DTL Cincia da Computao

Arquitetura de Computadores
Tecnologias Computacionais e Conceitos Bsicos

Tecnologias Computacionais
Desde 1985, surgiram inmeros novos computadores prometendo revolucionar a indstria da computao Essas revolues sempre foram interrompidas pela construo de novos computadores ainda melhores

Tecnologias Computacionais
Essa inovao constante levou a um progresso sem precedentes desde o incio da computao eletrnica no final da dcada de 1940 Se o setor de transportes tivesse a mesma evoluo, atualmente poderamos viajar de costa a costa dos EUA em:
Aproximadamente 1 segundo por apenas alguns centavos
4

Tecnologias Computacionais
O custo da computao diminuiu Aplicaes que eram economicamente inviveis passaram a ser possveis Exemplos:
Computao em automveis Computadores Laptop Projeto do Genoma Humano World Wide Web
5

Tecnologias Computacionais
De forma genrica, os computadores so usados em trs diferentes classes de aplicaes:
Computadores desktop Servidores Computadores embutidos

Tecnologias Computacionais
Computadores Desktop
Bom desempenho a um nico usurio Baixo custo Tem cerca de 30 anos

Tecnologias Computacionais
Servidores
Projetados para suportar grandes cargas de trabalho Mesma tecnologia bsica dos computadores desktop, mas fornecem maior capacidade de expanso tanto da capacidade de processamento quanto de entrada/sada Grande nfase a estabilidade Faixa mais ampla de custo e capacidade
Servidores simples at supercomputadores
8

Tecnologias Computacionais
Computadores Embutidos
Maior classe de computadores Faixa mais ampla de aplicaes e desempenho. Exemplos:
Microprocessadores encontrados em mquinas de lavar, carros Computadores em um telefone celular ou PDA

Projetados para executar uma aplicao ou um conjunto de aplicaes relacionadas como um nico sistema
9

Conceitos Bsicos
Uma aplicao pode possuir centenas de milhares a milhes de linhas de cdigo e se basear em bibliotecas de software sofisticadas que implementam funes complexas no suporte da aplicao O hardware de um computador s pode executar instrues de baixo nvel extremamente simples

10

Conceitos Bsicos
O caminho de uma aplicao complexa at as instrues simples envolvem vrias camadas de software que interpretam ou traduzem operaes de alto nvel nas instrues simples do computador

11

Conceitos Bsicos
Essas camadas de software so organizadas de maneira hierrquica

12

Conceitos Bsicos
Nos sistemas computacionais modernos existem dois tipos fundamentais de software de sistemas:
Sistema Operacional Compilador

13

Conceitos Bsicos
O sistema operacional fornece a interface entre o programa do usurio e o hardware e oferece diversos servios e funes de superviso. Por exemplo:
Manipular as operaes bsicas de E/S Possibilitar e controlar o compartilhamento do computador entre as diversas aplicaes que o utilizem simultaneamente
14

Conceitos Bsicos
Os compiladores traduzem um programa escrito em uma linguagem de alto nvel, como C ou Java, em instrues que o hardware possa executar

15

Conceitos Bsicos
A comunicao em um sistema de computador eletrnico realizada atravs de sinais eltricos Os sinais mais fceis de serem entendidos pelas mquinas so ligado e desligado

16

Conceitos Bsicos
O alfabeto dos computadores se resume a apenas duas letras, cujos smbolos so os nmeros 0 e 1, comumente chamados de nmeros na base 2, ou binrios Cada letra denominada de um dgito binrio ou bit

17

Conceitos Bsicos
Computadores obedecem comandos denominados de instrues, que so colees de bits Por exemplo, os bits 1000110010100000 indicam a um certo computador para somar dois nmeros

18

Conceitos Bsicos
Os primeiros programadores escreviam programas em nmeros binrios, que no so parecidos com a maneira como os homens pensam. Assim, logo foi inventada uma nova notao que posteriormente era traduzida para binrio

19

Conceitos Bsicos
A notao simblica traduzida para binrio por meio de um programa denominado montador (assembler) Por exemplo, a instruo add A,B seria traduzida pelo montador como 1000110010100000

20

Conceitos Bsicos
A notao simblica denominada de linguagem assembly A linguagem assembly foi um avano, mas ainda exigia que o programador escrevesse uma linha de cdigo para cada instruo que a mquina executasse, obrigando o programador a pensar como uma mquina
21

Conceitos Bsicos
O ideal escrever programas usando uma notao mais natural para seres humanos Os programas que aceitam essa notao mais natural so os compiladores, e as linguagens que compilam so as linguagens de programao de alto nvel
22

Conceitos Bsicos
Programa em Linguagem de Alto Nvel Comandos de Alto Nvel

A+B
Compilador

Programa em Linguagem Assembly

Instrues da Arquitetura

ADD C A,B
Assembler

00001011110
Linker/Loader

Programa Executvel
23

Conceitos Bsicos
Os cincos componentes bsicos de um computador so:
Entrada Sada Memria Caminho de Dados Controle
24

Conceitos Bsicos
Os dispositivos de entrada servem para alimentar o computador com informaes Os dispositivos de sada servem para que os resultados da computao sejam enviados aos usurios A memria onde os programas e os dados so mantidos quando esto sendo executados
25

Conceitos Bsicos
O caminho de dados realiza as operaes aritmticas O controle indica ao caminho de dados, memria e aos dispositivos de E/S, o que fazer de acordo com as instrues do programa Caminho de dados + controle = processador
26

Conceitos Bsicos
O processador (ou CPU - Central Processor Unit) a parte ativa do computador, que segue rigorosamente as instrues de um programa. Ele soma e testa nmeros, sinaliza dispositivos de E/S para serem ativados e assim por diante

27

Conceitos Bsicos
Um conceito comum nas descries de hardware e de software que os detalhes de nvel mais baixo so mantidos escondidos dos nveis mais altos. O uso dessas camadas ou abstraes uma tcnica importante empregada no projeto de sistemas computacionais sofisticados arquitetura do conjunto de instrues
28

Evoluo histrica
1965 1945
Gerao 1 - vlvulas Gerao 3 - circuitos integrados

1990
Gerao 5 - ULSI

1642
Gerao 0 mecnicos

1955
Gerao 2 Transistores

1980
Gerao 4 - VLSI

29

Gerao 0 Mecnica
Mquina de calcular de Pascal (1642)
operaes adio e subtrao uso de engrenagens e funcionava manualmente com manivela

30

Gerao 1 - Vlvulas
ENIAC (Electronic Numerical Integrator And
Computer)
Primeiro computador digital de propsito geral (1946) Criado inicialmente para a realizao de clculos balsticos 18 mil vlvulas, 10 mil capacitores, 70 mil resistores, um peso de 30 toneladas, consumo de 140 quilowatts e 800 km de cabos Programao feita em painis (~ 6000 chaves multiposicionais), com redistribuio de cabos conhecimento profundo do hw Mquina decimal, com 20 registradores capazes de armazenar um valor numrico de 10 dgitos Rpida 1.900 adies/segundo

31

Gerao 1 - Vlvulas
ENIAC (Electronic Numerical Integrator And
Computer)

32

EDVAC (Electronic Discrete Variable Automatic Computer) Mquina IAS (1946)

Gerao 1 - Vlvulas

desenvolvida por John von Neumann aritmtica binria ao invs da decimal definio de uma arquitetura de computadores com programa armazenado Mquina de Von Neumann (Mauchly e Eckert)
ainda hoje base de quase todos os computadores digitais (CPU, Memria, Entrada/Sada)

UNIVAC I (1949, Mauchly e Eckert)


primeiro computador para fins comerciais

IBM-701 (1953), 704 (1956) e 709 (1958)

33

Gerao 1 - Vlvulas
EDVAC (Electronic Discrete Variable
Automatic Computer)

34

Gerao 1 - Vlvulas
IBM-701

35

Gerao 2 - Transistores
Transistor
melhor custo, tamanho e desempenho do que as vlvulas base da lgica digital ligar e desligar a corrente eltrica em um dispositivo (2 estados)

Surgimento de linguagens de programao de nvel superior s linguagens Assembly da poca Ex: Fortran

36

LSI (Large Scale Integration) Srie 360 da IBM (1964)

Gerao 3 Circuitos integrados

dezenas de transistores colocados em uma nica pastilha computadores menores, mais rpidos e mais baratos famlia de mquinas com mesma linguagem de montagem, mas com tamanhos e potncias diferentes usado tanto para rea cientfica quanto comercial surgimento da tcnica de MULTIPROGRAMAO sistema operacional OS/360 para gerenciar os recursos do hardware Sistemas operacionais em lote e de tempo compartilhado

Alta capacidade de armazenamento (16MB) e de processamento, e MP orientada a byte


37

Srie 360 da IBM (1964)

Gerao 3 Circuitos integrados

38

Gerao 4 - VLSIs
VLSI (Very Large Scale Integration)
milhes de transistores armazenados em uma nica pastilha computadores cada vez menores e mais rpidos

Surgimento dos computadores pessoais


Srie Intel de chips - tornou-se padro Exs: 8086, 8088, 80286, 80386, 80486, Pentium IBM PC adotou o chip Intel para CPU

39

Gerao 4 - VLSIs
Computadores pessoais PC
TK85
Fabricante: Microdigital Eletrnica Ltda Pas: Brasil Linha: Sinclair Compatibilidade: ZX-81 Linguagem: Assembly e BASIC Lanamento: Fev/1983 Processador: Z80 A (8 bits) Clock: 3,25MHz Memria RAM: 16 ou 48 Kbytes Sistema Operacional: P 1 Tela modo texto: 24 linhas x 32 colunas
40

Gerao 4 - VLSIs
Computadores pessoais PC
APPLE II
Fabricante: Apple Computer, Inc. Pas: Estados Unidos Compatibilidade: Apple IIe Linha: Apple II Ano de lanamento: abril de 1984 Processador: 65C02 Clock: 1,4 MHz Memria RAM: 128 Kbytes Memria ROM: 16 Kbytes

41

Gerao 4 - VLSIs
Computadores pessoais PC
MSX
Fabricante: Gradiente Pas: Brasil Linha: MSX Compatibilidade: MSX-1 Ano de lanamento: Dez/1985 Processador: Z80 A, de 8 bits Clock: 3,58 MHz Memria RAM: 64 Kbytes Memria ROM: 32 Kbytes Modelos: 1.0 (XP-800), 1.1 (GPC-1), Plus, DD Plus

42

Gerao 4 - VLSIs
Computadores pessoais PC
PCs (XT, 286, 386... Pentium)
Processador: 8086 8bits, 80286 16bits, 80386 32bits
80486 32bits PENTIUM 32bits, PENTIUM 64bits

43

Gerao 5 - ULSIs
ULSI (Ultra Large Scale Integration) Evoluo das aplicaes
Sistemas especialistas, sistemas multimdia, banco de dados distribudos, inteligncia artificial, redes neurais,... Necessidade de maior capacidade de processamento e armazenamento de dados

Novos paradigma no projeto de computadores


Arquiteturas Paralelas Processamento Distribudo nos Sistemas Operacionais Redes de Alta Velocidade Linguagens e metodologias de programao concorrentes Linguagens naturais: interface homem/mquina
44

Tendncias
Sistemas multi-processados
Processadores paralelos Cluster de maquinas x mainframes Computadores pessoais multi-processados
Multi-core Processadores de udio Processadores de Vdeo - GPUs
45

Bibliografia
[1] J.P. Uyemura, Sistemas Digitais - Uma Abordagem Integrada, Thomson Pioneira, 2002. [2] M. A. Monteiro, Introduo organizao de computadores, LTC 1996 [3] D. A. Patterson e J. L. Hennessy, Organizao e projeto de computadores: a interface hardware/software, Ed. Campus, 2005. Parte do material cedido pelo Prof. Marcelo Zamith (UFF)
46

Vous aimerez peut-être aussi