Você está na página 1de 29

Arquitetura de Computadores I

Referência Bibliográfica
Structured Computer Organization, Fourth
Edition. Andrew S. Tanenbaum. Prentice
Hall, 1999. ISBN 0-13-095990-1.

History of Computing Information:


http://ftp.arl.army.mil/~mike/comphist/
Linguagens, Níveis e Máquinas Virtuais
 Linguagem: conjunto de instruções utilizadas para se construir programas
 Linguagem de Máquina: linguagem (L0) do computador real
 Linguagem Abstrata: linguagem (L1) mais adequada para pessoas
 Tradução: substituição de cada instrução de um programa em L1 por uma
seqüência equivalente de instruções em L0, obtendo um novo programa
em L0 que pode ser executado no computador real
 Interpretação: execução de um programa em L1 por outro programa
(interpretador) em L0; o programa em L1 é input para o interpretador,
que examina cada instrução em L1 e executa uma seqüência equivalente
de instruções em L0
 Máquina Virtual: máquina (M1) hipotética, cuja linguagem de máquina é
a linguagem L1
 Nível ou Camada: uma máquina (computador real ou virtual) e a
correspondente linguagem, sobre a qual uma nova camada pode ser
acrescentada
Máquina Multinível Contemporânea
(BASIC, C, C++, Java,
Nível 5 Nível de Linguagem Orientada a Problemas LISP, Prolog, ...)
Tradução (compilador)

Nível 4 (mnemônicos para as


Nível de Linguagem de Montagem (Assembly)
Instruções de máquina)
Tradução (montador ou assembler)
(instruções para permitir
Nível 3 Nível de Máquina de Sistema Operacional concorrência e uma organização
diferente da memória)
Interpretação parcial (sistema operacional)

Nível 2 Nível de Arquitetura de Conjunto de Instruções (instruções de máquina)


Interpretação (microprograma) ou execução direta

Nível 1 Nível de Microarquitetura (registradores e o circuito ALU –


Arithmetic Logic Unit)
Hardware

Nível 0 Nível de Lógica Digital (gates – constituídos de transistores –


e registradores – que compõem a memória)
Invenção da Microprogramação
Os primeiros computadores (anos 40) possuíam
somente dois níveis: Nível de Arquitetura de
Conjunto de Instruções e o Nível de Lógica Digital,
que era complicado, difícil de entender e construir, e
de baixa confiabilidade.
Em 1951, Maurice Wilkes (University of Cambridge)
sugeriu a introdução de um nível intermediário para
simplificar o hardware: um interpretador
(microprograma) imutável para executar as
instruções especificadas no nível acima.
Gerações de Computadores

1. Computadores Mecânicos (1642-1945)


2. Computadores com Tubos a Vácuo ou
Válvulas Eletrônicas (1945-1955)
3. Computadores com Transistores (1955-
1965)
4. Computadores com Circuitos Integrados
(1965-1980)
5. Computadores com Integração em Escala
Muito Grande - VLSI (1980-?)
Geração Pioneira (1642-1945):
Computadores Mecânicos
Blaise Pascal (1623-1662, França) construiu
em 1642 a primeira máquina de calcular,
baseada em engrenagens e alavancas, e que
permitia fazer adições e subtrações.
Baron Gottfried Wilhelm von Leibniz (1646-
1716, Alemanha) construiu outra máquina no
mesmo estilo, e que permitia também fazer
multiplicações e divisões.
Geração Pioneira (1642-1945):
Computadores Mecânicos
Charles Babbage (1792-1871, Inglaterra) construiu
na Universidade de Cambridge duas máquinas:
◦ Difference Engine: executava sempre o mesmo algoritmo
(tratava tabelas de números para fins de navegação naval,
aplicando o método de diferenças finitas usando
polinômios); a saída era gravada em pratos de cobre e aço.
◦ Analytical Engine:
 Quatro componentes: store (memória), mill (unidade de
computação), input section (leitora de cartões perfurados) e output
section (saída impressa e com perfuração);
 A unidade de computação lia números da memória, fazia cálculos
(adição, subtração, multiplicação e divisão) e podia retornar o
resultado para a memória.
 Máquina de propósito geral: lia instruções (de tratamento aritmético
e de desvio condicional) através de cartões perfurados e as
executava.
 Primeira pessoa a escrever programas: Ada Augusta Lovelace
Geração Pioneira (1642-1945):
Computadores Mecânicos

 Konrad Zuse (Alemanha) construiu durante a década de 1930


uma série de máquinas de calcular baseadas em relays
eletromagnéticos, mas a Segunda Guerra Mundial impediu o
seu avanço e ainda causou a sua destruição.
 John Atanasoff (Estados Unidos da América, Iowa State
University) e George Stibbitz (Estados Unidos da América,
Bell Labs) construíram no final da década de 1930
calculadoras que já usavam aritmética binária e possuíam
memória baseada em capacitores.
 Howard Aiken (Estados Unidos da América, Harvard
University) construiu em 1944 uma máquina de propósito
geral chamada Mark I, baseada no trabalho de Babbage, mas
que usava relays eletromagnéticos no lugar de engrenagens.
Primeira Geração (1945-1955):
Computadores com Tubos a Vácuo
 Governo Britânico construiu em 1943 o primeiro computador digital
eletrônico, o COLOSSUS, para fins de decodificar as mensagens
trocadas pelos alemães durante a Segunda Guerra Mundial, que eram
criptografadas por uma máquina chamada ENIGMA.
◦ O projeto foi mantido em segredo por 30 anos, por isso, não houve evolução.
◦ Alan Turing participou do projeto.
 John Mauchley e J. Presper Eckert (Estados Unidos da América)
construíram em 1946 para fins militares um computador eletrônico
chamado ENIAC (Electronic Numerical Integrator and Computer):
◦ 18.000 tubos a vácuo
◦ 1.500 relays
◦ 30 toneladas
◦ 140 kilowats
◦ 20 registradores de números decimais de 10 dígitos
◦ Programação feita através de 6.000 switches e de milhares de jumpers (cabos
de conexão)
◦ John von Neumann participou do projeto.
Primeira Geração (1945-1955):
Computadores com Tubos a Vácuo
Vários computadores surgiram na seqüência:
◦ JOHNIAC: Rand Corporation
◦ ILLIAC: Universidade de Illinois
◦ MANIAC: Laboratório de Los Alamos
◦ WEIZAC: Instituto Weizmann, Israel
◦ EDSAC (1949): Universidade de Cambridge; foi o
primeiro a armazenar programas em memória.
Primeira Geração (1945-1955):
Computadores com Tubos a Vácuo
John von Neumann (Estados Unidos da
América, Instituto de Estudos Avançados de
Princeton) construiu em 1952 o computador
IAS:
◦ Programas e dados representados de forma digital
em memória
◦ Processamento baseado em aritmética binária, ao
invés de decimal
Máquina de von Neumann

Memória

Unidade de Unidade Aritmética Lógica


Controle Input
Acumulador
Output

Memória: 4096 palavras de 40 bits (2 instruções de 20 bits ou um inteiro)


Instrução: 8 bits para indicar o tipo, 12 tipos para endereçar a memória
Acumulador: registrador especial de 40 bits
Primeira Geração (1945-1955):
Computadores com Tubos a Vácuo
IBM começou a construir computadores:
◦ 1953: IBM 701
 2048 palavras de 36 bits
 Duas instruções por palavra
 Máquina para aplicações científicas (numéricas)
◦ 1956: IBM 704
 4K de memória
 Instruções de 36 bits
 Hardware para floating-point (números reais)
◦ 1958: IBM 709
Segunda Geração (1955-1965):
Computadores com Transistores
 Invenção do transistor
◦ 1948, Bell Labs, EUA
◦ John Bardeen, Walter Brattain e William Shockley
 TX-0 (Transistorized eXperimental computer 0)
◦ M.I.T., Lincoln Laboratory
◦ Primeiro computador com transistor
 PDP-1
◦ 1961, DEC (Digital Equipment Corporation)
◦ Primeiro computador comercializado
◦ Kenneth Olsen (participante do projeto do TX-2) fundou a DEC em 1957.
◦ Memória: 4K palavras de 18 bits
◦ Ciclo: 5 microsegundos
◦ Primeiro computador com display visual: tela de 512x512 pontos
◦ Preço: US$120,000
◦ Unidades vendidas: algumas dezenas
◦ Nascimento da indústria de minicomputadores
Segunda Geração (1955-1965):
Computadores com Transistores
 PDP-8
◦ DEC, 1965
◦ Preço: US$16,000
◦ Unidades vendidas: 50.000
◦ Máquina de 12 bits
◦ Barramento único: omnibus (FIGURA)
 7090
◦ IBM (Industry of Business Machine)
◦ Versão transistorizada do IBM 709
 7094
◦ 1962, IBM
◦ Memória: 32K palavras de 36 bits
◦ Ciclo: 2 microsegundos
 1401
◦ 1961, IBM
◦ Memória: 4K bytes
◦ Máquina orientada a negócios:
 Fitas magnéticas (leitura e escrita)
 Cartões (leitura e perfuração)
 Impressão relativamente rápida e barata
Barramento único do PDP-8
- omnibus -

console paper
CPU memory terminal tape I/O other I/O

Omnibus
Segunda Geração (1955-1965):
Computadores com Transistores
 6600
◦ 1964, CDC (Control Data Corporation)
◦ Projetista: Seymour Cray
◦ Alto grau de paralelismo dentro da CPU:
 Várias unidades para adição, multiplicação e divisão trabalhando
simultaneamente
 Muito mais rápido que o 7094 !
◦ Pequenos computadores auxiliares para tratamento de entrada e saída
◦ Sucessores: 7600, Cray-1
 B5000
◦ Burroughs
◦ Projeto orientado para a execução de programas em Algol-60,
linguagem precursora do Pascal
◦ Maior prioridade para o software
◦ Menor prioridade para velocidade de processamento e preço
Terceira Geração (1965-1980):
Computadores com Circuitos Integrados
Invenção do circuito integrado de silício
◦ 1958, Robert Noyce
◦ Dezenas de transistores em um único chip
◦ Possibilitou construir computadores menores, mais
rápidos e mais baratos
Terceira Geração (1965-1980):
Computadores com Circuitos Integrados
 System/360
◦ IBM, 1965
◦ Família de computadores, com diferentes capacidades de
processamento e armazenamento: modelos 30, 40, 50 e 65 (tabela)
◦ Visava substituir o 1401 (comercial) e o 7094 (científico) ao mesmo
tempo
◦ Permitia multiprogramação: vários programas em memória em
execução simultânea (quando um aguardava uma operação de entrada
ou saída se completar, outro podia executar)
◦ Emulava outros computadores (1401, 7094), devido à sua capacidade
de microprogramação
◦ Endereçamento máximo: 16 megabytes (24 bits)
 PDP-11
◦ DEC, 1970
◦ Sucessor de 16 bits do PDP-8
◦ Grande sucesso, especialmente nas universidades
Família IBM System/360
Propriedade Modelo 30 Modelo 40 Modelo 50 Modelo 65

Desempenh 1 3,5 10 21
o relativo

Ciclo (nsec) 1000 625 500 250

Memória 64 256 256 512


(KB)

Bytes lidos 1 2 4 16
por ciclo

Canais para 3 3 4 6
dados
Quarta Geração (1980-?):
Computadores com Integração em Escala Muito Grande – Very Large
Scale Integration (VLSI)

Década de 80: grande compactação dos


circuitos integrados
◦ Dezenas de milhares, depois centenas de
milhares e finalmente milhões de transistores
em um chip
◦ Desempenho aumentou muito
◦ Preços caíram muito
◦ Computadores deixaram de ser privilégio de
grandes corporações
◦ Início da era do computador pessoal
Primeiros computadores pessoais

 Vendidos em kits para o próprio consumidor montar


◦ Placa de circuito impresso
◦ Conjunto de chips (tipicamente Intel 8080)
◦ Alguns cabos
◦ Fonte de alimentação
◦ Floppy disk de 8 polegadas
 Software não era fornecido:
◦ o consumidor tinha que escrever seu próprio software
 Sistema operacional CP/M
◦ Gary Kildall
◦ Processadores Intel 8080
◦ Floppy disk operating system
◦ Sistema de arquivos
◦ Comandos por teclado
 Apple, Apple II
◦ Steve Jobs e Steve Wozniak
◦ Muito popular para uso doméstico e em escolas
Primeiros computadores pessoais
IBM Personal Computer
◦ IBM, 1981
◦ Intel 8088
◦ Projeto de circuitos público:
 Objetivo: permitir que outros fabricassem componentes facilmente
acopláveis ao PC (plug-in boards)
 Conseqüência: indústria de clones
◦ Sistema operacional:
 Inicialmente, MS-DOS (criação da Microsoft)
 Mais tarde, com CPUs mais poderosas, OS/2, que possui interface
gráfica semelhante ao Apple Macintosh
 Mais tarde ainda, MS-Windows
Lei de Moore

 Gordon Moore, 1965, Intel


 Número de transistores em um chip dobra a cada 18 meses.
 Figura 1.8, página 25
 Círculo Virtuoso:
◦ Avanço tecnológico propicia melhores produtos a preços mais baixos.
◦ Preços mais baixos induz ao surgimento de novas aplicações (exemplo,
video games)
◦ Novas aplicações aumentam as possibilidades de mercado e fazem
surgir novas empresas.
◦ Novas empresas leva a competição, criando demanda econômica para o
avanço tecnológico.
Categorias de computadores
Tipo Preço ($) Exemplos de aplicação
Descartável 1 Cartões de mensagens
Embutido 10 Relógios, carros,
equipamentos
Game 100 Vídeo games
Computadores 1K Desktops e portáteis
pessoais
Servidores 10K Servidores de rede
Coleção de 100K Minisupercomputador
workstations departamental
Mainframe 1M Processamento batch em
bancos
Supercomputador 10M Previsão de tempo,
prospecção de petróleo
Intel

1968: Fundação
 Robert Noyce ( inventor do circuito integrado de
silício )
 Gordon Moore ( Moore’s law )
 Arthur Rock ( investidor )
Tabela de processadores (próximo slide)
Figura 1-11, página 32
Intel
Chip Data MHz Transistores Memória Nota

4004 4/1971 0,108 2.300 640 Primeiro microprocessador em um único chip

8008 4/1972 0,108 3.500 16 KB Primeiro microprocessador de 8 bits

8080 4/1974 2 6.000 64 KB Primeira CPU de propósito geral em um chip

8086 6/1978 5-10 29.000 1 MB Primeira CPU de 16 bits em um chip

8088 6/1979 5-8 29.000 1 MB Usado no IBM PC

80286 2/1982 8-12 134.000 16 MB Esquema de proteção de memória

80386 10/1985 16-33 275.000 4 GB Primeira CPU de 32 bits

80486 4/1989 25-100 1,2M 4 GB Cache interno de 8K

Pentium 3/1993 60-233 3,1M 4 GB 2 pipelines; MMX

Pentium Pro 3/1995 150-200 5,5M 4 GB Cache interno em dois níveis

Pentium II 5/1997 233-400 7,5M 4 GB Pentium Pro com MMX


SUN
SUN: Stanford University Network)
1981, Andy Bechtolsheim, alemão, estudante de
graduação de Stanford, montou seu próprio
computador (SUN-1) para executar Unix, usando
CPU Motorola 68020.
◦ “workstation”: Ethernet e TCP/IP para conectar a
ARPANET (precursora da Internet)
1987: SPARC (Scalable Processor ARChitecture)
◦ RISC: Reduced Instruction Set
◦ Máquina de 32 bits
1995: UltraSPARC I
◦ Máquina de 64 bits
◦ Orientada a multimídia
◦ VIS: Visual Instruction Set

Você também pode gostar