Sie sind auf Seite 1von 37

Introdução

Microprocessadores

Prof. CEBALHO

1
Arquitetura X Organização

 Toda a família Intel x86 divide


a mesma arquitetura básica.
Assim como a IBM System/370.
Isto concede compatibilidade
de códigos
 A Organização diferencia-se
entre diferentes versões.
2
Estrutura e Função

• Estrutura é o caminho no qual alguns


componentes se relacionam com outros.

• Função é a operação de componentes


individuais como parte da estrutura.

3
Estrutura - Top Level

Equip. Periférico Computador

Unidade Memória
Processa- Principal
mento
Central
Computa-
Interconexão
dor
de Sistemas

Entrada
Saída
Linhas de
Comunicação

4
Estrutura - A CPU

CPU

Computador Unidade
Registradores Lógica e
I/O Aritmética
Barramento CPU
Sistemas
Interconexão
Memória Interna CPU

Unidade de
Controle

5
Estrutura - A Unidade de
Controle

Unidade de Controle

CPU
ALU Seqüência
Lógica
Barramento Unidade
Interno Controle
Registradores e
Registradores Decodificadores
da Unidade de
Controle

Controle de
Memória

6
Funções do computador

• Processamento de dados
 operações aritméticas e lógicas
 comparações e pesquisas
 centenas de milhões de operações por segundo (MIPs, MOPs, MFLOPs)
• Armazenamento de dados
 grande capacidade de armazenar dados de forma permanente
dezenas de Gigabytes (1 Giga = 1,073,741,824 caracteres)
• Movimentação de dados
 entre diferentes tipos de unidades de armazenamento
 entre unidades periféricas
 dezenas ou centenas de Mbytes/segundo (vídeo@30 fps >67 Mbytes/s)
• Controle das funções anteriores
 Sistema Operativo
 programação de aplicações
7
Visão Funcional

Visão Funcional do Computador


Recurso de
Armazena-
mento de
Dados
Mecanismo
de Mecanismo
transferênci De Controle
a de Dados

Recurso de
Processa-
mento de
Dados
8
Geração de computadores

Geração Datas Tecnologia Características


• 1946-1957 válvulas computadores eletrônicos
• 1958-1964 transistores computadores baratos
• 1965-1971 circuitos integrados minicomputadores
• 1972-198? LSI, VLSI PCs e workstations,
microprocessadores computadores de secretária
• 199?-20?? ULSI processadores paralelos e
computadores portáteis

LSI - Large Scale Integration - 10,000 transistores


VLSI - Very Large Scale Integration - 1,000,000 transistores
ULSI - Ultra Large Scale Integration - 100,000,000 transistores
9
Geração de computadores

ENIAC - Electronic Numerical Integrator And Computer


 desenvolvido em 1943 (início) para calcular trajetórias de
projéteis
 aplicação do BRL (Ballistics Research Laboratory, do
exército dos EUA)
 200 pessoas com calculadoras de secretária a calcular
tabelas para novas armas
 1 pessoa várias horas ou dias para efetuar os cálculos para
uma arma
 terminado em 1946 (tarde demais…), foi usado no
desenvolvimento da bomba H
10
ENIAC

“Levando em conta que... o ENIAC tem


18000 válvulas e pesa 30 toneladas, no
futuro os computadores deverão ter 1000
válvulas e pesar 1,5 toneladas.”

Revista Popular Mechanics (Março, 1949)

11
von Neumann/Turing

 Conceito de programa armazenado


 Memória principal que armazena programas e
dados
 ALU operando em dados binários
 Unidade de controle interpretando instruções de
memória e executando
 Equipamentos de entrada e saída operados pela
unidade de controle
 Instituto para estudos avançados de Princeton
 IAS

 Completado em 1952
12
Arquitetura da Máquina
de von Neumann

Unidade Lógica
e Aritmética

Equipamento
Memória
de Entrada
Principal
e Saída

Unidade de Controle
de Programa

13
Geração de computadores

“COMPUTADORES” MECÂNICOS
 ábaco (2500 AC); círculos de proporção (1633) (régua de cálculo)
 calculadora de discos de Pascal (1642)
 máquina de diferenças (Babbage, 1822)
 máquina analítica (Babbage, 1833) (programada por Ada Lovelace)
 tabuladora Hollerith (1890) (leitor de cartões perfurados)
 Harvard MARK I (Aiken, 1944) (hardware eletromecânico, aritmética
decimal,
 leitor de fita perfurada com instruções A1 A2 OP — A1 ¬ A1 OP A2)
1ª GERAÇÃO (1946–1957) (VÁLVULAS)
 UNIVAC 1 (1951) IBM 793 (1953)
 programação em linguagem máquina; sem S.O.; memória reduzida

14
Geração de computadores

2ª GERAÇÃO (1958–1964) (TRANSISTORES)


 IBM 7090
 memória de ferrite
 Fortran, COBOL
 S.O.
Multiprogramação (timesharing)
 IBM 7000
 DEC - 1957
15
Geração de computadores
(Transistores)

 Tubos à vácuo substituídos


 Menor
 Mais barato
 Menor dissipação de calor
 Dispositivo de estado sólido
 Feito de silicone (areia)
 Inventado em 1947 nos Laboratórios Bell
 William Shockley et al.
16
Geração de computadores

3ª geração (1965–1971) (circuitos integrados)


 IBM System/360 (mainframe); Cyber CDC
(supercomputador); DEC PDP-8 (mini)
 memória de semicondutores
 microprogramação
 paralelismo e concorrência
 redes; S.O. eficientes
 BASIC, PASCAL
17
Geração de computadores
Séries IBM 360

 1964
 Substituiu a (e não compatível com) série 7000
 Primeiros computadores planejados “para família”
 Conjuntos de instrução semelhantes ou idênticos
 OS Similares ou idênticos
 Velocidade crescente
 Aumento do número de portas de E/S (mais terminais)
 Tamanho da memória aumentado
 Custo aumentado
 Estrutura de troca multiplexadas

18
Geração de computadores

4ª geração (1972) (microprocessador)


 INTEL 4004, 80xxx, MOTOROLA 680xx, IBM
3090
 tecnologia VLSI
 micros; supercomputadores (CRAY);
workstations (terminais gráficos)
 VMS, UNIX, CP/M, MS-DOS
 floppies, discos winchester

19
Geração de computadores
(INTEL)
1971 - 4004
 Primeiro microprocessador
 Todos os componentes da CPU em um único chip
 4 bit
Seguido em 1972 pelo 8008
 8 bit
 Ambos desenhados para aplicações específicas
1974 - 8080
 Primeiro microprocessador da Intel com
propósito geral

20
Geração de computadores

5ª geração (atual)
 paralelismo, pipelining, super-escalares
 memória associativa, discos ópticos

21
A revolução continua...

• ATMs
 computadores na parede de um banco para distribuir e a recolher dinheiro (PCs)
 difícil nos anos 50 quando custava $500,000 e era maior do que um carro
• Computadores em automóveis
 controle do motor reduz o consumo e a poluição, “obrigatório” nos carros de hoje
 ABS, air-bag, suspensão activa,sistemas de navegação
 possibilitado pela evolução dramática da microeletrônica
• Laptops
 computadores pessoais portáteis, trabalho em viagens e nas escolas o Projeto
human genome
 o custo dos computadores usados no mapeamento de seqüências da DNA humano
eleva-se a centenas de milhões de dólares nos anos 90
• Aplicações de simulação
 avaliar com rigor antes de fabricar: automóveis, aviões, barcos, circuitos,…
22
Representação de dados (num
computador)

• Representação binária de informação


 apenas dois estados: ligado ou desligado
 simplificação dos circuitos eletrônicos, imunidade ao ruído
• Dispositivo elementar: transistor como um interruptor controlado
por eletricidade
 operadores lógicos elementares: AND, OR, NOT
 rapidez é condicionada pelo tempo necessário para comutar entre 0 e 1 a
450 MHZ um circuito lógico tem de trocar de estado em menos de 0.22 ns
 tecnologia CMOS (Complementary Metal-Oxide Semiconductor)
 baixo consumo de energia, cresce com a frequência de trabalho
 tipicamente AND e OR = 4 transistores, NOT = 2 transistores

23
Representação de dados (num
computador)

• Microprocessadores atuais têm vários milhões de


transistores num único chip
80486 1.2 (Q1 1989)
Pentium 3.1 (Q1 1993)
Pentium II 5.5 (Q3 1995)

24
Representação de dados

• num computador digital toda a informação é codificada em binário


 números em base 2: 0 e 1, binary digits ou bits
• representação de valores numéricos (inteiros)
01011 base 2 (binário): 11 = 0x24 +1x23 +0x22 +1x21 +1x20
013 base 8 (octal): 11 = 0x82 + 1x81 +3x80
0B base 16 (hexadecimal): 11 = 0x16 1 + 11x160
• instruções; coleções de bits
1000110010100000 (adicionar 2 números)
• linguagem assembly
ADD A,B (adicionar 2 números)
• caracteres
01000001 (’A’ em ASCII)
0000000001000001 (’A’ em UNICODE)
• um byte
8 bits: representa um caractere, inteiros entre 0 e 255, inteiros entre -128 e +127
A=10,…,F=15
25
Representação de programas

26
Estrutura em camadas

27
Organização do computador

28
Periféricos de E/S
• dispositivos de entrada
 teclado
 mouse
 scanner
 OCR - optical character recognition
…
• dispositivos de saída
 CRT - o mais comum
- refresh rate de 30 a 75 Hz
- a imagem é composta de uma matriz de pixel representados num bitmap
- 1 bit por pixel para P&B; 8 bits para gray-scale e 3x8 bits para côr (RGB)
- frame buffer : memória que contém o bit map
 impressoras
 plotters (em desuso, substituídos por impressoras laser, jato-de-tinta)
… 29
Memória primária (RAM)

 implementada por circuitos integrados


 volátil (geralmente)
 para programas em execução pelo CPU e os seus dados
 DRAM
 50 a 150 nanosegundos de tempo de acesso
• memória cache
 mais rápida (7 ns), pode ser interna ao CPU
 associativa
 aproveita a localidade dos dados

30
Capacidade dos Chips de
Memória

31
Processador

• Unidade de execução do computador


• Segue à letra as instruções do programa (o computador nunca se
engana!)
• Instruções
 conjunto limitado de operações elementares
 adicionar, testar, comunicar com dispositivos de E/S, mover,...
• Unidade de controle
• Unidade aritmética e lógica, unidade de ponto flutuante
• Arquitetura (instruction set architecture)
 inclui tudo o que os programadores necessitam saber para construir programas
em linguagem máquina: conjunto de instruções, registos, modos de funcionamento
 constitui uma abstracção das camadas inferiores
 uma implementação da arquitectura é hardware que obedece à abstracção
32
Execução de programas

• Instruções executadas em seqüência, uma (ou mais) de cada vez


 Execução de uma instrução

• Pipelining
 aumento do desempenho
 depende da seqüência de instruções
- obriga a ordenar as instruções (scheduling)
• Interrupções da execução seqüencial de um programa
 provocadas por ações exteriores ao CPU (utilizador, periféricos, relógio)
- guarda o ambiente de execução (registros do CPU, regiões da memória)
- executa a rotina de serviço da interrupção para atender ao pedido
- retorna ao programa original
 permite que um CPU realize duas ou mais tarefas “em simultâneo”
- 3 tarefas executadas em “paralelo”

33
ULA (Unidade Lógica
Aritmética)
• responsável pela execução de operações aritméticas e lógicas
• operações básicas: aritmética inteira, operações lógicas, manipulação de bits
• FPU - Floating-point unit: unidade de cálculo para números em vírgula flutuante
 antigamente suportada por co-processadores (chips externos ao CPU)
- versões mais baratas faziam as contas FP por software
 actualmente a FPU é geralmente integrada no CPU
• representação de quantidades numéricas (inteiros, vírgula fixa)
 binário, complemento para dois 1345 = 00000101 01000001 (2 bytes)
- -1345 = 11111010 10111111 (2 bytes)
 BCD (binary-coded decimal) 1345 = 00000001 00000011 00000100 00000101 (4
bytes)
 packed BCD 1345 = 00010011 01000101 (2 bytes)
 decimal em ASCII 1345 = 00110001 00110011 00110100 00110101 (4 bytes)

34
Memória secundária

• Discos
 não volátil, grande capacidade de armazenamento
 desde 1965: primeiros discos do tamanho de mesas de café, poucos MBytes
 rodam a 3600 – 5400 rpm
 pratos de metal cobertos de material magnético
- cada lado tem várias pistas concêntricas, cada pista vários sectores
- um sector é a unidade mínima de informação lida ou escrita
 cabeça de leitura
- uma móvel para todas as pistas ou uma fixa para cada pista
 “voa” sobre a superfície do disco (Winchester) ou toca-a (floppies)
 5 a 20 milisegundos de tempo de acesso (seek time + rotational latency)
 custo reduzido (gigabytes por dezenas de contos)
 recentemente: ópticos reagraváveis, discos magneto-opticos, CD-ROM, DVD
• Fitas magnéticas
 acesso seqüencial, lento
 hoje usada exclusivamente para backups (cópias de segurança)
35
Barramentos

• interligam componentes
 transportam dados, endereços ou sinais de controle

36
Referência Bibliográfica

Stallings, William. Arquitetura e Organização de


Computadores. Ed. Prentice Hall, 5. Ed., caps.
1 e 2, 2002, São Paulo.
Patterson, David A. e Hennessy, John L.
Organização e Projeto de Computadores: A
Interface Hardware/Software. Ed. LTC, 2.
Ed., cap. 1, 2000, Rio de Janeiro.

37

Das könnte Ihnen auch gefallen