Professional Documents
Culture Documents
Fundamentos
Roteiro
Fundamentos
Princí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
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
Peripherals Computer
Central Main
Processing Memory
Unit
Computer
Systems
Interconnection
Input
Output
Communication
lines
Estrutura – CPU
CPU
Computer Arithmetic
Registers and
I/O Login Unit
System CPU
Bus
Internal CPU
Memory Interconnection
Control
Unit
Estrutura – Unidade de
Controle
Control Unit
CPU
Sequencing
AL
U
Login
Control
Internal
Unit
Bus
Control Unit
Registers Registers and
Decoders
Control
Memory
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 Neuman
programa 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
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-1957
Transistor - 1958-1964
Small scale integration - 1965 on
Up to 100 devices on a chip
Medium scale integration - to 1971
100-3,000 devices on a chip
Large scale integration - 1971-1977
3,000 - 100,000 devices on a chip
Very large scale integration - 1978 to date
100,000 - 100,000,000 devices on a chip
Ultra large scale integration
Over 100,000,000 devices on a chip
Espectro da computação
Tendências Tecnológicas
Influências
Tecnologia Linguagens de
Programação
Aplicações
Computer
Architecture
Sistemas
Operacionais
História
Lei de Moore
Aumento da densidade de componentes em chips
Gordon Moore – co-fundador da Intel
Atualmente:
Tecnologia de 65nm: 0,5 bilhão de
transistores em um chip
Fonte: Intel
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
Supercomputers
Log of Performance
Mainframes
Minicomputers
Microprocessors
Year
1970 1975 1980 1985 1990 1995
Melhorias de Desempenho:
Freqüência (clock) X Arquitetura
Fonte: Intel
Explorando o paralelismo em
um chip
Fonte: Intel
Exemplo: Evolução do Pentium
8080
primeiro microprocessador de propósito geral
via de dados (barramento interno) de 8 bits
Usado no primeiro computador pessoal – Altair
8086
bem mais poderoso
16 bits
cache de instruções, pré-busca de algumas instruções
8088: (barramento externo de 8 bits) usado no primeiro IBM PC
80286
16 Mbytes de memória endereçável
80386
32 bits
Suporte para multi-tarefa
Exemplo: Evolução do Pentium
80486
esquema de caches sofisticado
pipeline de instruções
co-processador matemático embutido no chip
Pentium
super-escalar
múltiplas instruções executadas em paralelo
Pentium Pro
organização super-escalar aprimorada
té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 II
tecnologia MMX (MultiMedia eXtensions)
processamento gráfico e de áudio & vídeo
Pentium III
instruções de ponto flutuante adicionais para gráficos 3D
Pentium 4
mais melhorias de ponto flutuante e multimídia
mais paralelismo (2005: “dual core” - dois procs. em um)
Itanium
64 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,8GHz
Tecnologia de integração: 0,90µm (2Q05: 65nm)
Barramento do sistema: até 1066MHz (real: 266MHz)
Hyper-pipelining & Hyper-Threading
Unidade de ponto flutuante de 128bits
Cache nível 2 de até 2MB, integrada
SIMD2 (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
Intel: http://www.intel.com/
Intel Museum:
http://www.intel.com/intel/intelis/museum/index.htm
IBM: http://www.ibm.com
PowerPC
http://www-03.ibm.com/chips/products/powerpc/
The History of Computing Project
http://www.thocp.net/index.htm