55
Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática – UFG 1o. Semestre / 2005 Fundamentos

Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Embed Size (px)

Citation preview

Page 1: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Arquitetura de Computadores

Prof. Fábio M. CostaInstituto de Informática – UFG1o. Semestre / 2005

Fundamentos

Page 2: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Roteiro

FundamentosPrincípios de funcionamento de computadores

Perspectiva histórica

Tendências tecnológicas

Panorama das tecnologias atuais

Princípios de projeto de computadores

Análise do desempenho de computadores

Page 3: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Princípios do funcionamento de computadores

Estrutura e função de um sistema de computação

Estrutura: quais os componentes e como eles estão relacionados

Função: operação de componentes individuais como parte da estrutura

Page 4: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Função

Processamento de dados

Armazenamento de dados

Movimentação de dados

Controle

Page 5: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Visão funcional

Page 6: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Movimentação de dados

Page 7: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Armazenamento

Page 8: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Processamento / Armazenamento

Page 9: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Processamento/ Armazenamento / E/S

Page 10: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Estrutura – visão de alto nível

Computer

Main Memory

InputOutput

SystemsInterconnection

Peripherals

Communicationlines

CentralProcessing Unit

Computer

Page 11: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Estrutura – CPU

Computer Arithmeticand Login Unit

ControlUnit

Internal CPUInterconnection

Registers

CPU

I/O

Memory

SystemBus

CPU

Page 12: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Estrutura – Unidade de Controle

CPU

ControlMemory

Control Unit Registers and Decoders

SequencingLogin

ControlUnit

ALU

Registers

InternalBus

Control Unit

Page 13: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Perspectiva Histórica

Page 14: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Gerações de Computadores

Geração Zero (1642-1945):computadores mecânicos e eletromecânicos

Pascal, Babage, Zuse, Atanasoff, Stibbitz, Aiken

Primeira Geração (1945-1955):eletrônica baseada em válvulas

Colossus, ENIAC, EDVAC, IAS, EDSAC, IBM 70x

Turing, Mauchly & Eckert, Wilkes, von Neuman

memórias de ferrite (núcleo magnético)

design típico: máquina de von Neumanprograma armazenado na memória junto com os dados

Page 15: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

ENIAC

decimal (não binary)

20 acumuladores de 10 dígitos

programado manualmente por chaves

18.000 válvulas

peso: 30 toneladas

ocupava uma área de aprox. 1200m2

consumo de energia: 140 kW

desempenho: 5000 adições por segundo

Page 16: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

A arquitetura de von Neumann

• Programa armazenado juntamente com os dados

Page 17: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Exemplo concreto: IAS

1000 palavras de 40 bitsRepresentação binária para os dados2 instruções de 20 bits por palavra

Conjunto de registradores (armaz. na CPU)Memory Buffer RegisterMemory Address RegisterInstruction RegisterInstruction Buffer RegisterProgram CounterAccumulatorMultiplier Quotient

Page 18: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

IAS (Princeton, 1952)

Page 19: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Estruturado IAS

Page 20: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

A segunda geração (1955-65)

transistor

mainframes: IBM 7090, 7094, Burroughs B5000

minicomputadores: DEC PDP-1, PDP-8

primeiro supercomputador: CDC 6600 – paralelismo

Seymour Cray

design típico: arquiteturas de barramento

Page 21: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Arquiteturas com barramento compartilhado

Page 22: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Terceira Geração (1965-80):

circuitos integrados

famílias de computadores com uma arquitetura comum (em nível ISA) e ≠s implementações

IBM System/360

compatibilidade entre máquinas diferentes

multiprogramação

emulação de outras máquinas através de microprogramas distintos para cada arquitetura

DEC PDP-11

Page 23: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Quarta (...) Geração (1980-????)

VLSI (Very Large Scale Integration)

primeiro microchip: Intel 4004 (1971) – LSI

sucessores Intel: 8080, 8086, 8088, 80x86, Pentiums

não-Intel: Z80, Z8000, 68000, SPARC, PowerPC,...

micro-computadores: Apple II, IBM PC, ...

estações de trabalho: Sun, DEC Alpha, ...

evolução em supercomputadores, paralelismo

interconexão em redes, clusters, grid, …

dispositivos computacionais embarcados, etc., etc....

Page 24: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Em resumo:

Vacuum tube - 1946-1957Transistor - 1958-1964Small scale integration - 1965 on

Up to 100 devices on a chipMedium scale integration - to 1971

100-3,000 devices on a chipLarge scale integration - 1971-1977

3,000 - 100,000 devices on a chipVery large scale integration - 1978 to date

100,000 - 100,000,000 devices on a chipUltra large scale integration

Over 100,000,000 devices on a chip

Page 25: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Espectro da computação

Page 26: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Tendências Tecnológicas

Page 27: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Influências

ComputerArchitecture

Tecnologia Linguagens deProgramação

SistemasOperacionais

História

Aplicações

Page 28: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Lei de Moore

Aumento da densidade de componentes em chipsGordon Moore – co-fundador da Intel

O número de transistores em um chip dobra a cada ano

Desde os anos 1970 houve uma desaceleração

O número de transistores dobra a cada 18 mesesO custo de um chip permanece inalteradoDensidade mais alta representa circuitos de interconexao mais curtos: melhor desempenhoTamanho menor: maior flexibilidadeMenor consumo e necessidade de resfriamentoMenos interconexoes: aumenta a confiabilidade

Page 29: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Contagem de transistores em CPUs

Page 30: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Contagem de transistores

Fonte: Intel Corp.

Page 31: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

A Lei de Moore na Intel

Processador Ano Núm. de Transistores-----------------------------------------------------------------------------------------------4004 1971 2,2508008 1972 2,5008080 1974 5,0008086 1978 29,000286 1982 120,000Intel386 processor 1985 275,000Intel486 processor 1989 1,180,000Intel® Pentium® processor 1993 3,100,000Intel® Pentium® II processor 1997 7,500,000Intel® Pentium® III processor 1999 24,000,000Intel® Pentium® 4 processor 2000 42,000,000Intel® Itanium® processor 2002 220,000,000Intel® Itanium® 2 processor 2003 410,000,000

Page 32: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Contagem de transistores

Atualmente:Tecnologia de 65nm: 0,5 bilhão de transistores em um chip

Fonte: Intel

Mais informações e demo sobre a lei de Moore (Intel):http://www.intel.com/technology/silicon/mooreslaw/index.htm

Page 33: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Outros fatores que afetam o desempenho: novas técnicas

Pipelining

Cache dentro do processador

Caches de nível 1 e 2

Previsão de desvios

Análise de fluxo de dados

Execução especulativa

Page 34: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Desempenho:Processador X Memória

Grande aumento da velocidade dos processadores

Grande aumento na capacidade de armazenamento das memórias

Mas:A velocidade de acesso à memória não acompanhou o desenvolvimento da tecnologia de processadores

Page 35: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Características de DRAMs e Processadores

Page 36: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Soluções

Aumentar o numero de bits lidos/escritos de uma vez

i.e., aumentar “largura” da memória

Melhorar a interface com a memória: cachesReduzir a freqüência dos acessos

caches mais complexas, dentro do chip da CPU

Aumentar a largura de banda da interconexãoBarramentos de alta velocidade e hierárquicos

Page 37: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Tendências: Aumento relativo de desempenho

Microprocessors

Minicomputers

MainframesSupercomputers

1995

Year

19901970 1975 1980 1985

Lo

g o

f Pe

rfo

rma

nc

e

Page 38: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Melhorias de Desempenho:Freqüência (clock) X Arquitetura

Fonte: Intel

Page 39: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Explorando o paralelismo em um chip

Fonte: Intel

Page 40: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Exemplo: Evolução do Pentium

8080primeiro microprocessador de propósito geralvia de dados (barramento interno) de 8 bitsUsado no primeiro computador pessoal – Altair

8086bem mais poderoso16 bitscache de instruções, pré-busca de algumas instruções8088: (barramento externo de 8 bits) usado no primeiro IBM PC

8028616 Mbytes de memória endereçável

8038632 bitsSuporte para multi-tarefa

Page 41: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Exemplo: Evolução do Pentium

80486esquema de caches sofisticadopipeline de instruçõesco-processador matemático embutido no chip

Pentiumsuper-escalarmúltiplas instruções executadas em paralelo

Pentium Proorganização super-escalar aprimoradatécnica agressiva de renomeação de registradores (…)previsão de desvios, análise de fluxo de dados, execução especulativa

Page 42: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Exemplo: Evolução do Pentium

Pentium IItecnologia MMX (MultiMedia eXtensions)processamento gráfico e de áudio & vídeo

Pentium IIIinstruções de ponto flutuante adicionais para gráficos 3D

Pentium 4mais melhorias de ponto flutuante e multimídiamais paralelismo (2005: “dual core” - dois procs. em um)

Itanium64 bits (IA-64)

Exercício:Veja as páginas Web da Intel para mais detalhes

http://www.intel.com/intel/intelis/museum/online/hist_micro/hof/index.htm

Page 43: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Panorama das Tecnologias Atuais de Processadores

Page 44: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Pentium 4

Clock: 2 a 3,8GHzTecnologia de integração: 0,90µm (2Q05: 65nm)Barramento do sistema: até 1066MHz (real: 266MHz)Hyper-pipelining & Hyper-ThreadingUnidade de ponto flutuante de 128bitsCache nível 2 de até 2MB, integradaSIMD2 (1 fluxo de instruções, vários fluxos de dados)P4 Extreme Edition (3,8 GHz)

otimizado para jogos, aplicações gráficas e multimídia de alto desempenho

2005: Extensão de 64bits para acesso a memória

Page 45: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Celeron D

Clock: 2,26MHz a 3,06GHzBarramento do sistema: 533MHzCache nível 2: 256KBSIMD, execução especulativa, análise de fluxo de dadosBarramento interno dual (via da cache separada da via principal de dados)Segmento de baixo custo

Page 46: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Pentium M®

Clock: 1,5MHz a 2,13GHzProjetado para vários níveis de operação em baixo consumo de energia (com taxas de clock reduzidas) – SpeedStepAté 2MB de cache de nível 2, integrada no chipBarramento do sistema: 533MHzTamanho reduzidoOtimizado para computação móvel

Tecnologia Centrino:Pentium M + Chipset 855/915 + suporte wireless (802.11b/g)

Page 47: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Itanium2

Arquitetura de 64bits (IA-64)Voltado para o mercado de servidoresClock: 1,0 a 1,6GHzCaches integradas no chip

L1: 32KBL2: 256KBL3: até 9MB

Paralelismo interno explícito (EPIC)Barramento do sistema: até 533MHz, 128bits

Page 48: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Xeon MP

Também voltado para o mercado de servidoresClock: 1,4 a 3,6GHzArquitetura NetBurst (mesma do P4)SIMD2, Hyper Threading3 níveis de caches integradas

L2: até 2MB; L3: até 4MB

Barramento dual de memóriaBarramento do sistema: até 800MHz

Page 49: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

AMD

Page 50: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

UltraSPARC IV

Sun Microsystems

Multi-threading com 2 pipelines UltraSPARC III no mesmo chip

Super-escalar

64 bits

66M transitores

Clock: 1,05 a 1,2GHz

Cachesnível 1: uma por pipeline (64KB dados, 32KB instruções

nível 2: 16MB externa ao chip

Page 51: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

PowerPC (IBM)

Page 52: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

DSPs – Digital Signal Processors

Conversão entre sinais analógicos em sinais digitaisProcessamento dos sinais em tempo realAlgumas aplicações:

sensores em automóveis, eletrodomésticos, ferramentas, etc.processamento de voz em telefones celularesvideo e imagem (câmeras digitais)aviônicabiométrica

Requisitos e arquiteturas diferentes dos processadores de propósito geralMais Informações: Texas Instruments

http://dspvillage.ti.com/http://www.go-dsp.com/fet/essentialguide-fet.html

Page 53: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

DSPs – Digital Signal Processors

Fonte: Texas Instruments

Page 54: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Leitura Recomendada

STALLINGS, W. Arquitetura e Organização de Computadores, Tradução da 5ª Edição, Prentice-Hall, 2002.

Cap. 1 e 2

PATTERSON, D.A.; HENNESSY, J.L. Projeto e Organização de Computadores: A Interface Hardware / Software, Tradução da 2a Edição, LTC, 2000.

Cap. 1

TANENBAUM, A.S. Organização Estruturada de Computadores, Tradução da 4a Edição, LTC, 2001.

Cap. 2

Page 55: Arquitetura de Computadores - UFGfmc/arqcomp/Fundamentos1.pdf · Roteiro Fundamentos Princípios de funcionamento de computadores Perspectiva histórica Tendências tecnológicas

Recursos na Internet

Intel: http://www.intel.com/ Intel Museum: http://www.intel.com/intel/intelis/museum/index.htm

IBM: http://www.ibm.com

PowerPChttp://www-03.ibm.com/chips/products/powerpc/

The History of Computing Projecthttp://www.thocp.net/index.htm