arquitetura de computadores - ww2.inf.ufg.brww2.inf.ufg.br/~fmc/arqcomp/fundamentos1.pdf · 80386...
TRANSCRIPT
Arquitetura de Computadores
Prof. Fábio M. CostaInstituto de Informática – UFG1o. Semestre / 2005
Fundamentos
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
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
Função
Processamento de dados
Armazenamento de dados
Movimentação de dados
Controle
Visão funcional
Movimentação de dados
Armazenamento
Processamento / Armazenamento
Processamento/ Armazenamento / E/S
Estrutura – visão de alto nível
Computer
Main Memory
InputOutput
SystemsInterconnection
Peripherals
Communicationlines
CentralProcessing Unit
Computer
Estrutura – CPU
Computer Arithmeticand Login Unit
ControlUnit
Internal CPUInterconnection
Registers
CPU
I/O
Memory
SystemBus
CPU
Estrutura – Unidade de Controle
CPU
ControlMemory
Control Unit Registers and Decoders
SequencingLogin
ControlUnit
ALU
Registers
InternalBus
Control Unit
Perspectiva Histórica
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
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
A arquitetura de von Neumann
• Programa armazenado juntamente com os dados
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
IAS (Princeton, 1952)
Estruturado IAS
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
Arquiteturas com barramento compartilhado
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
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....
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
Espectro da computação
Tendências Tecnológicas
Influências
ComputerArchitecture
Tecnologia Linguagens deProgramação
SistemasOperacionais
História
Aplicações
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
Contagem de transistores em CPUs
Contagem de transistores
Fonte: Intel Corp.
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
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
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
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
Características de DRAMs e Processadores
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
Tendências: Aumento relativo de desempenho
Microprocessors
Minicomputers
MainframesSupercomputers
1995
Year
19901970 1975 1980 1985
Lo
g o
f Pe
rfo
rma
nc
e
Melhorias de Desempenho:Freqüência (clock) X Arquitetura
Fonte: Intel
Explorando o paralelismo em um chip
Fonte: Intel
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
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
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
Panorama das Tecnologias Atuais de Processadores
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
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
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)
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
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
AMD
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
PowerPC (IBM)
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
DSPs – Digital Signal Processors
Fonte: Texas Instruments
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
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