Escolar Documentos
Profissional Documentos
Cultura Documentos
Roteiro
Processadores Memria primria Memria secundria Entrada e Sada (I/O) Conectados atravs de um (ou mais ) barramento(s) Um computador pode ser visto como um sistema interconectado consistindo de elementos das categorias acima
Microcomputadores e Microprocessadores
Microcomputadores e Microprocessadores
Processador
uma coleo de fios paralelos, usados para transmitir dados, endereos e sinais de controle entre os componentes do sistema
Microcomputadores e Microprocessadores
Processador
Componentes do processador
Unidade de controle
busca de instrues na memria decodificao das instrues (tipo, endereos, etc.) realiza operaes tais como adio, subtrao, AND, OR, etc. memria de altssima velocidade, usada para armazenamento temporrio dos resultados de operaes. Exemplos:
Conjunto de registradores
Program Counter (PC): endereo da prxima instruo Instruction Register (IR): contm a instruo sendo executada
Microcomputadores e Microprocessadores
Processador
Organizao do Processador
Registradores ALU Barramentos internos Execuo controlada por instrues de mquina registrador-memria: load, store registrador-registrador: add a, b carga dos operandos na ALU, processamento, e armazenamento do resultado
Microcomputadores e Microprocessadores
Tipos de instrues
Processador
Organizao do Processador
Microcomputadores e Microprocessadores
Processador
Execuo de instrues
1.
2. 3. 4. 5. 6. 7.
Atualiza o PC para apontar para a prxima instruo Determina o tipo da instruo buscada Se a instruo usa uma palavra na memria, determina o seu endereo Busca a palavra na memria, se necessrio Executa a instruo Volta ao passo 1 para executar a prxima instruo
Microcomputadores e Microprocessadores
Processador
instruo sendo executada tipo da instruo endereo do operando (na memria) operando
Microcomputadores e Microprocessadores
Processador
10
Processador
Uma instruo mais complexa tende a executar mais rpido que uma seqncia de instrues mais simples
introduo de otimizaes (ex.: paralelismo) Ex.: instrues de ponto flutuante, instrues de array Mas a implementao direta por hardware resulta em alto custo Interpretao: quebra de instrues complexas em passos simples, mais fceis de serem implementados em hardware
Soluo:
Resultado: mquinas de baixo custo (hardware simplificado) com conjuntos de instrues complexos Mquinas high-end: execuo direta via hardware
Microcomputadores e Microprocessadores
11
Processador
Interpretador
Hardware
12
Microcomputadores e Microprocessadores
Processador
Facilidade para corrigir instrues implementadas incorretamente Possibilidade de corrigir (ou contornar) deficincias no hardware bsico Facilidade de adicionar novas instrues Permite aplicar tcnicas de projeto estruturado:
13
Processador
Interpretador: micro-programa (micro-cdigo) Memria onde o micro-programa fica armazenado: memria de controle
14
Processador
execuo por interpretao (software) Mquinas CISC (e seus micro-programas) se tornaram muito complexas, ao ponto de penalizar a eficincia de execuo
Microcomputadores e Microprocessadores
15
Processador
RISC
Instrues simples
executveis em um nico ciclo do data path 4 instrues RISC para fazer o trabalho de 1 instruo CISC 1 instruo CISC 10 vezes mais rpida resultado final: RISC mais rpido simplicidade de cada instruo individual (no o tamanho do conjunto de instrues em si) velocidade da memria de controle em relao memria principal emprego de tcnicas de otimizao inovadoras
Microcomputadores e Microprocessadores
16
Processador
Amplamente influenciados pela escola RISC Baseados em suposies sobre a base tecnolgica atual
Implementaes hbridas
17
Microcomputadores e Microprocessadores
Processador
importante do que o tempo de execuo de cada instruo individual (instrues/seg) s custas de um atraso inicial Paralelismo
Adotar
mais rpida a execuo de outras instrues Instrues que acessam a memria podem ser executadas em paralelo com outras instrues
Permite
18
Processador
Paralelismo
mais instrues executadas por segundo em um nico processador pipelining arquiteturas super-escalares mltiplas CPUs trabalhando no mesmo problema processadores vetoriais multi-processadores multi-computadores
Microcomputadores e Microprocessadores
19
Processador
Pr-busca (pre-fetching)
busca da instruo (i.e., da prxima instruo) execuo de fato (da instruo atual)
Pipelining:
execuo dividida em vrias partes (ou estgios) cada uma realizada por unidades de hardware dedicadas, em paralelo em cada ciclo do processador:
20
Processador
Pipelining: Exemplo
21
Microcomputadores e Microprocessadores
Pipelining: Exemplo
S1 Unidade de Busca de Instrues S2 Unidade de Decodificao de Instrues S3 Unidade de Busca de Operandos S4 Unidade de Execuo de Instrues S5 Unidade de Escrita de Resultados
2 1
3 2 1
4 3 2 1
5 4 3 2 1 5
6 5 4 3 2 6
7 6 5 4 3 7
8 7 6 5 4 8
9 8 7 6 5 9
22
3 4 tempo
Microcomputadores e Microprocessadores
Processador
Exemplo
ciclo de mquina: 2ns execuo de cada instruo com cinco estgios de pipeline: 10ns
mas uma vez que o pipeline est cheio (i.e., todos os estgios esto executando em paralelo):
23
n estgios, com tempo de ciclo = T latncia = nT Largura de banda (ou throughput) = 1000/T MIPS
Microcomputadores e Microprocessadores
Processador
Pipelines em paralelo
Instrues precisam ser independentes (compatveis) Compilador responsvel por gerar cdigo otimizado para explorar o paralelismo Replicao de hardware Benefcios difceis de serem atingidos medida que o nmero de pipelines paralelos aumenta
Microcomputadores e Microprocessadores
24
Processador
Arquiteturas Super-escalares
25
Microcomputadores e Microprocessadores
Processador
Limitaes fsicas:
Velocidade da luz Super-aquecimento do processador Ganhos de desempenho: 5 a 10 vezes Computadores com mltiplas CPUs rodando em paralelo
26
Microcomputadores e Microprocessadores
Processador
Processadores de Array
Resultados so combinados ao final Uma unidade de controle central ou que possam ser interpretados como tal
isto : cujo conjunto de dados possa ser particionado em subconjuntos independentes para serem processados em paralelo
27
Microcomputadores e Microprocessadores
Processador
28
Microcomputadores e Microprocessadores
Processador
Processadores Vetoriais
ALU vetorial: implementada atravs de pipelining Capazes de armazenar os mltiplos elementos de um vetor Aritimticas
Registradores vetoriais
Instrues vetoriais
Vetor-vetor, vetor-escalar
29
Processador
Array:
1 processador para cada elemento da matriz Altamente especializados: inapropriados para problemas no matriciais Requer tcnicas sofisticadas de programao/compilao para explorar o paralelismo Um nico processador com paralelismo no nvel de instrues (pipelining) operando em registradores vetoriais Mais flexveis: bom desempenho em problemas hbridos (escalar X vetorial), sem muito desperdcio de hardware Mais simples de se programar
Vetorial:
30
Microcomputadores e Microprocessadores
Processador
31
Microcomputadores e Microprocessadores
Processador
Multiprocessadores
Podem executar partes diferentes do programa MIMD Multiple Instruction, Multiple Data Facilita a programao Mas necessita mecanismos para
Memria compartilhada
Controlar a concorrncia no acesso a partes comuns na memria Arbitrar as vias de acesso memria
Variao
32
Processador
Multiprocessadores
33
Microcomputadores e Microprocessadores
Processador
Multi-computadores
Comunicao por passagem de mensagens Sistemas fracamente acoplados No necessita arbitrar o acesso memria compartilhada
Microcomputadores e Microprocessadores
Maior escalabilidade
34
Memria Primria
diretamente acessvel ao processador Valores: 0 ou 1 Representado atravs da distino de dois nveis diferentes de valores de alguma quantidade fsica; Ex.: voltagem Facilidade de representao em sistemas eletrnicos Confiabilidade
Microcomputadores e Microprocessadores
35
Memria Primria
Endereos de memria
Padro atual: clulas de 8 bits (bytes) m bits de endereo: mximo de 2m clulas unidade de dados processada pelas instrues
Microcomputadores e Microprocessadores
Endereos binrios
36
Memria Primria
Figura 2.9
37
Microcomputadores e Microprocessadores
Memria Primria
Isto : comea pelo byte de mais alta ordem (mais significativo) big endian Isto : comea pelo byte de mais baixa ordem (menos significativo) little endian
38
Microcomputadores e Microprocessadores
Memria Primria
Figura 2.11
39
Memria Primria
Ex.: inteiros e cadeias de caracteres Apenas inverter a ordem dos bytes no suficiente O que fazer ento?
40
Microcomputadores e Microprocessadores
Memria Primria
Defeitos de hardware Falhas ocasionais ex.: picos de corrente bits extra adicionados a cada palavra na memria conferidos quando a palavra lida da memria m bits de dados r bits para controle de erros Tamanho da palavra-cdigo: n = (m + r )
41
Memria Primria
Leitura
Corretor
Escrita
m Memria f r
m r
Comparador
42
Microcomputadores e Microprocessadores
Memria Primria
Tempo de acesso memria: 10 ciclos de clock Processador ficar parado at concluir o acesso Processador continua executando at chegar a uma instruo que necessite fazer acesso memria No suficiente
Microcomputadores e Microprocessadores
Soluo simples:
43
Memria Primria
Combinar
uma pequena quantidade de memria rpida, mas de alto custo (cache) uma grande quantidade de memria lenta e de baixo custo Grande capacidade de memria Rapidez de acesso Custo moderado
Resultado:
44
Microcomputadores e Microprocessadores
Memria Primria
Cache
Pequena quantidade de memria rpida Fica entre a memria principal e a CPU Geralmente localizada dentro do chip da CPU
45
Microcomputadores e Microprocessadores
Memria Primria
Cache: Operao
CPU requisita o contedo de uma posio de memria Se os dados j esto na cache (acerto)
obtm os dados a partir da cache (acesso rpido) l um bloco inteiro de dados da memria principal
Seno (perda)
Bloco definido pela vizinhana da posio de memria solicitada Bloco = linha da cache
46
Microcomputadores e Microprocessadores
Memria Primria
H grande probabilidade de que a prxima palavra requisitada pela CPU esteja na vizinhana da palavra lida anteriormente Uma vez que o contedo da memria nos endereos vizinhos j se encontra na cache
47
Microcomputadores e Microprocessadores
Memria Primria
Tamanho da cache Tamanho das linhas da cache Mapeamento da cache para os endereos na memria principal Consistncia entre cache e memria principal Cache unificada x caches especializadas
48
Memria Primria
SIMM (Single Inline Memory Module) DIMM (Dual Inline Memory Module) SO-DIMM (Small Outline DIMM) 8 chips de 128 megabits cada
49
Memria Primria
50
Microcomputadores e Microprocessadores
Memria Primria
84 conectores em cada lado: 168 conectores Capaz de transferir 64 bits de cada vez
51
Microcomputadores e Microprocessadores
Memria Secundria
Discos flexveis (floppy disks) Discos IDE Discos SCSI RAID CD-ROM CD-R e CD-RW DVD, DVD-R, DVD+R, DVD-RW, DVD+RW, DVD-RAM
Microcomputadores e Microprocessadores
Discos ticos
52
Memria Secundria
Hierarquias de memrias
Menor tempo de acesso Menor quantidade Maior custo unitrio
53
Microcomputadores e Microprocessadores
Memria Secundria
54
Microcomputadores e Microprocessadores
Memria Secundria
2002 PCTechGuide
55
Microcomputadores e Microprocessadores
Memria Secundria
entre setores: amenizam a necessidade de alta preciso da cabea entre trilhas: reduzem interferncia magntica
56
2003: IBM Ultrastar 36ZX Capacidade: 36.7GB Velocidade de rotao: 10.000 RPM Interface: Ultra 160 SCSI Tempo de busca mdio: 4,9 ms 2005: Hitachi/IBM Ultrastar 15K147 Capacidade: 147GB Veloc. de rotao: 15.000 RPM Interface: Ultra 320 SCSI Tempo de busca mdio: 3,6ms
2003 IBM Corporation
57
Microcomputadores e Microprocessadores
Memria Secundria
Tempo de busca
Posicionamento da cabea na trilha correta Tempo para o setor desejado passar sob a cabea de leitura/escrita Funo da densidade linear e da velocidade de rotao
Latncia rotacional
Tempo de transferncia
58
Memria Secundria
Controladora de disco
READ, WRITE, FORMAT Controle dos movimentos das cabeas Deteo e correo de erros Bufferizao de mltiplos setores Caching de setores para acesso rpido Remapeamento de setores
Quando o setor original se torna defeituoso Substitudo por um setor sobressalente no cilindro
59
Microcomputadores e Microprocessadores
Memria Secundria
Discos flexveis
Cabea de leitura/escrita em contato com a superfcie do disco Rotao interrompida quando no em uso Maior atraso inicial
60
Microcomputadores e Microprocessadores
UltraSCSI 320 320MB/s; tempo de busca mdio: 3,6ms 10.000 ou 15.000 RPM Evoluo do padro IDE (ATA) 300MB/s; tempo de busca mdio: 4,5ms 5.400 ou 7.200 RPM mas SCSI tem menor latncia menor custo, drives com maior capacidade
SATA
Microcomputadores e Microprocessadores
61
Memria Secundria
Discos IDE
Integrated Drive Electronics Comuns nos primeiros PCs Endereamento no disco (especificao original):
62
Endereos convertidos em cabea/setor/cilindro Taxa de transferncia mais alta Suporte a 4 dispositivos (incl. CD-ROM): ATAPI Taxa de transferncia mxima: 66MBps (Ultra ATA/66)
Microcomputadores e Microprocessadores
Memria Secundria
2002 PCTechGuide
63
Microcomputadores e Microprocessadores
Memria Secundria
Discos SCSI
Small Computer Systems Interface Interface genrica para conexo de dispositivos perifricos Barramento SCSI
1 controladora 7 dispositivos (15 em wide SCSI) Permite mltiplos dispositivos acessarem o barramento ao mesmo tempo (ao contrrio de IDE) at 320MBps (Ultra320 SCSI)
Microcomputadores e Microprocessadores
Taxas de transmisso
64
Memria Secundria
2002 PCTechGuide
65
Microcomputadores e Microprocessadores
Memria Secundria
RAID
Redundant Array of Inexpensive Disks Uso de vrios discos (tipicamente SCSI) em paralelo Controladora RAID d a iluso de um nico disco virtual
66
Microcomputadores e Microprocessadores
Memria Secundria
RAID nvel 0
Divide os setores do disco virtual em faixas de k setores cada Faixas so escritas nos discos fsicos em round robin Leitura de grandes blocos de dados
67
Microcomputadores e Microprocessadores
Memria Secundria
RAID nvel 1
Drives de backup
68
Microcomputadores e Microprocessadores
Memria Secundria
RAID nvel 2
Cada bit de uma palavra escrito em um disco fsico separado Juntamente com bits de paridade para compor o cdigo de Hamming da palavra
Correo de erros
69
Microcomputadores e Microprocessadores
Memria Secundria
RAID nvel 3
Apenas um disco extra necessrio Em caso de quebra de um disco, a posio do bit em erro conhecida
Correo de erros
70
Microcomputadores e Microprocessadores
Memria Secundria
RAID nvel 4
Semelhante ao RAID nvel 0 Um disco extra usado para guardar a paridade das faixas dos outros discos Permite corrigir erros causados pela quebra de um disco Desempenho baixo para escrita de pequenas quantidades de dados
71
Microcomputadores e Microprocessadores
Memria Secundria
RAID nvel 5
72
Microcomputadores e Microprocessadores
Memria Secundria
Leitura
CD-ROMs 2.3.7 CD-Recordable (CD-R) 2.3.8 CD-Rewritable (CD-RW) 2.3.9 DVD 2.3.10
73
Microcomputadores e Microprocessadores
Barramentos Terminais
Teclados Monitores CRT Monitores LCD Terminais de caracteres Terminais de bit-map Terminais RS-232-C
74
Barramento
Conjunto de fios em paralelo Localizado na placa-me Conecta os dispositivos de I/O CPU Slots com soquetes para conexo dos dispositivos
75
Microcomputadores e Microprocessadores
76
Microcomputadores e Microprocessadores
77
Microcomputadores e Microprocessadores
Controladoras de I/O
Controladora on-board
Integrada na placa-me Uma placa separada da placa-me, conectada a esta atravs de um dos slots do barramento
Microcomputadores e Microprocessadores
78
Controlar o acesso ao barramento para o dispositivo Controlar o funcionamento de baixo nvel do dispositivo
Fornecer uma interface de mais alto nvel para o programador DMA (Acesso direto memria)
Dados so transferidos entre o dispositivo e a memria sem a interveno direta da CPU Ao final da transferncia, a controladora interrompe a CPU
79
Decide qual dispositivo (ou CPU) ter acesso ao barramento no prximo ciclo Dispositivos de I/O geralmente tm prioridade sobre a CPU rbitro pode decidir interromper o acesso da CPU ao barramento em favor de um dispositivo de I/O
80
Microcomputadores e Microprocessadores
Para re-aproveitar dispositivos de I/O existentes Compatibilidade com dispositivos mais antigos ou lentos Suporte para velocidades de transferncia mais altas ISA como um segundo barramento
Microcomputadores e Microprocessadores
ISA p EISA
PCI
81
82
Microcomputadores e Microprocessadores
Leitura dirigida
Terminais 2.4.2 Mouse 2.4.3 Impressoras 2.4.4 Modems 2.4.5 Cdigos de caracteres 2.4.6
83
Microcomputadores e Microprocessadores