Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... ·...

36
Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC Contém figuras de “Computer Organization and Design” (cap. 8), D. Patterson & J. Hennessey, 3 a . ed., Elsevier Tópicos 1 Periféricos: aspectos gerais 2 Discos magnéticos 3 Comunicação entre CPU e periféricos 4 Desempenho de subsistemas de E/S ArqComp: Periféricos de computadores 2/37 2007-05-19

Transcript of Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... ·...

Page 1: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Periféricos de computadores

João Canas Ferreira

Arquitectura de Computadores

FEUP/LEIC

Contém figuras de “Computer Organization and Design” (cap. 8), D. Patterson & J. Hennessey, 3a. ed., Elsevier

Tópicos

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 2/37 2007-05-19

Page 2: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 3/37 2007-05-19

Notas:

3

Page 3: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Subsistema de entrada/saída de dados

+ Todos os componentes usados para transferir dados de/para osubsistema “CPU + Memória” são designados como periféricos.

+ Periféricos típicos são:1. teclado, rato, monitor;

2. discos magnéticos, discos ópticos;

3. dispositivos de ligação a redes;

4. impressoras, scanners, etc.

+ Alguns critérios de qualidade:1. fiabilidade: medida do tempo de funcionamente até falhar;

2. disponibilidade: medida do tempo em que o sistema estáoperacional;

3. expansibilidade.

+ Desempenho depende de muitos factores: características dodispositivo, sistema operativo, método de comunicação com oresto do sistema.

ArqComp: Periféricos de computadores 4/37 2007-05-19

Notas:

4

Page 4: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Classificação de periféricos

+ A diversidade de periféricos é enorme. Uma classificaçãosimples utiliza os seguintes três critérios:

+ Comportamento:1. Entrada (leitura única);

2. Saída (escrita única, sem leitura);

3. Armazenamento (leitura e escrita, geralmente mais queuma vez).

+ Tipo de cliente/fornecedor: Humano ou máquina.

+ Taxa de dados: taxa máxima de transferência de dados paraCPU ou memória.

+ Exemplo: TecladoÉ dispositivo de entrada,É usado por humanoÉ taxa máxima de dados de 10 bytes/segundo.

ArqComp: Periféricos de computadores 5/37 2007-05-19

Notas:

5

Page 5: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

CPU e periféricos: exemplo

ArqComp: Periféricos de computadores 6/37 2007-05-19

Notas:

6

Page 6: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Critérios de desempenho

+ Os critérios de desempenho dependem muito da aplicação.

+ Exemplo: “largura de banda” de E/S (medida de débito) podeser considerada de duas maneiras diferentes:É Que quantidade de dados passa pelo sistema por unidadede tempo? (unidade: B/s)

É Quantas operações de E/S podem ser executadas porunidade de tempo?

Aplicações de multimédia, com transferências de ficheiroslongos, estão no primeiro caso.Recepção de reservas (transacções pequenas) está no 2o caso.

+ Noutras aplicações, interessa o “tempo de resposta” (medidade latência, que pode ser dependente da largura de banda dacomunicação). Exemplo: computador desktop.

+ Existem aplicações em que interessam ambos os parâmetros:Multibanco, servidores Web.

ArqComp: Periféricos de computadores 7/37 2007-05-19

Notas:

7

Page 7: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 8/37 2007-05-19

Notas:

8

Page 8: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Disco magnético: vista interna

ArqComp: Periféricos de computadores 9/37 2007-05-19

Notas:

9

Page 9: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Discos magnéticos variados

ArqComp: Periféricos de computadores 10/37 2007-05-19

Notas:

10

Page 10: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Características de um disco magnético

+ Sistema de armazenamento não-volátil.+ Conjunto de discos (de metal) rotativos com eixo comum: 5400–15000 RPM.+ Cada disco tem 2 superfícies de gravação cobertas com material magnético.+ Cada superfície está dividida em círculos concêntricos: as pistas.+ Cada pista está dividida em sectores (tradicionalmente de 512 bytes, mais

recentemente 4096 bytes).+ Todas as pistas que estão simultaneamente sob as cabeças de leitura

constituem um “cilindro” (vertical).+ Em cada pista, a informação está organizada em: no de sector, espaço livre,

informação do sector, espaço livre, no de sector, espaço livre, etc.+ Actualmente, o número de sectores varia com a posição da pista: pistas

exteriores têm mais sectores.+ A densidade (bits por unidade de área) tem vindo a aumentar: 100% ao ano

entre 1997 e 2001; 40% ao ano actualmente.+ Em 2001: 20× 109 bits/polˆ2 (comercial), 60× 109 bits/polˆ2 (lab);+ A escrita ou leitura são efectuadas por cabeças de escrita/leitura ligadas a

um braço. Todas as cabeças de leitura se movimentam simultaneamente:todas estão sobre o mesmo sector da mesma pista (mas de superfíciesdiferentes).

+ A capacidade é indicada em potências de 10: 1 MB = 106 bytes.

ArqComp: Periféricos de computadores 11/37 2007-05-19

Notas:

11

Page 11: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Constituição de um disco magnético

ArqComp: Periféricos de computadores 12/37 2007-05-19

Notas:

12

Page 12: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Tempos de operação

+ Tempo de acesso—soma dos três tempos mencionados aseguir;

+ Tempo de busca—tempo que demora a pôr o braço no cilindropretendido. Fabricantes especificam os temposÉ máximo,É mínimo,É médio (soma dos tempos de todas as buscas possíveis/node buscas possíveis).

+ Latência de rotação—tempo que o sector pretendido demora a“surgir” debaixo do braço após cabeça chegar ao cilindro:5.6ms–2.0ms.

+ Tempo de transferência—tempo que demora a transferir umsector já posicionado sob a cabeça: 30–80 MB/s (SATA: > 125MB/s)

+ Alguns controladores de disco têm uma cache: 320MB/s.+ Tempo de transferência reduz-se 40% ao ano;+ Tempo de acesso reduz-se 10% ao ano.

ArqComp: Periféricos de computadores 13/37 2007-05-19

Notas:

13

Page 13: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Proximidade dos acessos

O princípio da proximidade também vale para acessos a disco: naprática, o tempo de busca médio é muito inferior ao especificadopelos fabricantes.

Gráficos mostram a percentagem de acessos com buscas decomprimento entre os dois valores do eixo dos YY.Exemplo (gráfico da esquerda): 8% dos acessos envolveu umadistância de busca entre 16 e 30 cilindros.Linha 0 é um caso especial: acessos no mesmo cilindro.

ArqComp: Periféricos de computadores 14/37 2007-05-19

Notas:

14

Page 14: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Cálculo do tempo de leitura

Objectivo: determinar o tempo médio para ler/escrever um sectorde 512 bytes de um disco de 10000 RPM. Tempo médio de busca éde 6ms, taxa de transferência de 50MB/s. O controlador tem umoverhead de 0.2ms.

É Tempo médio de busca: 6msÉ Latência de rotação (em segundos):

0.5

10000/60= 0.003

É Tempo de transferência (em segundos):

0.5KB

50MB=

0.5

50× 103= 0.00001

É Controlador acrescenta sempre 0.2ms por transferência.É Total = 6.0 + 3.0 + 0.01 + 0.2 = 9.2msÉ Se o tempo médio de busca for apenas 25% do especificado:Total = 1.5 + 3.0 + 0.01 + 0.2 = 4.7ms

ArqComp: Periféricos de computadores 15/37 2007-05-19

Notas:

15

Page 15: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Disponibilidade e fiabilidade

+ Medida de fiabilidade: MTTF (mean time to failure), tempomédio até falhar. Exemplo: o mesmo fabricante vende modeloscom MTTF: 1200000 h, 600000 h e 330000 h (a 25 oC).

+ Medida de interrupção de serviço: MTTR (mean time to repair),tempo médio de reparação.

+ Tempo médio entre avarias MTBF(mean time between failures):MTTF + MTTR.

+ Medida de disponibilidade:

disponibilidade =MTTF

MTBF=

MTTF

(MTTF+MTTR)

+ Como aumentar MTTF ?

Aumentar a tolerância a falhas através do uso controlado deredundância. Por exemplo, fazer acessos simultâneos a doisdiscos, de forma a que cada um seja sempre uma cópia dooutro.

RAID: Redundant Array of Inexpensive Disks

ArqComp: Periféricos de computadores 16/37 2007-05-19

Notas:

16

Page 16: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 17/37 2007-05-19

Notas:

17

Page 17: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Barramentos (1/2)

+ Infra-estrutura de comunicação: barramento.Meio de comunicação partilhado que usa um conjunto de linhascomuns para ligar múltiplos subsistemas.

+ Vantagens:É Versatilidade (é fácil adicionar mais subsistemas)É Baixo custo

+ Desvantagens:É Possível estrangulamento da comunicaçãoÉ Projecto delicado devido a limitações físicas.

+ Barramentos são compostos por linhas de dados e linhas decontrolo.

+ Linhas de controlo: são usadas para efectuar pedidos e paraespecificar o tipo de dados.

+ Linhas de dados: transmitir dados, endereços e parâmetros decomandos complexos.

ArqComp: Periféricos de computadores 18/37 2007-05-19

Notas:

18

Page 18: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Barramentos (2/2)

+ Transacção de barramento: sequência de operações do barramento iniciadapor um pedido. Pode envolver muitas operações individuais.

+ Barramentos podem ser dividos em:É barramentos processador-memória: curtos, de muito alta

velocidade, adaptados ao susbsistema de memória;É barramentos de E/S: mais compridos, vários tipos de dispositivos

com taxas de transferência muito diferentes. Geralmente, não ligamdirectamente ao CPU.

+ Um barramento síncrono inclui uma linha de relógio e usa um protocolo fixode comunicação (com tempos relativos ao sinal de relógio do barramento):protocolos tendem a ser rápidos e simples.Desvantagens: todos os dispositivos devem operar à mesma velocidade eos barramentos não podem ser compridos (degradação do sinal de relógio).Muito usados em ligações processador-memória.

+ Um barramento assíncrono não tem um sinal de relógio comum. Adpata-senaturalmente a dispositivos de diferentes velocidades.Desvantagens: A transmissão de informação deve ser coordenada deforma mais complexa (protocolo de “handshaking”).

+ Tendência: passar de barramentos com muitas linhas em paralelo paraligações ponto-a-ponto com poucas linhas e dispositivos ligados porcomutadores.

ArqComp: Periféricos de computadores 19/37 2007-05-19

Notas:

19

Page 19: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Exemplos de barramentos de E/S

+ Dois barramentos normalizados muito usados.+ Baseados em comunicação ponto-a-ponto (barramentos

“série”).

ArqComp: Periféricos de computadores 20/37 2007-05-19

Notas:

20

Page 20: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Protocolo de comunicação: “handshaking” (1/2)

+ ReadReq: linha controlada pelo dispositivo de E/S.+ DataRdy: linhas controladas pela memória.+ Data e Ack : linhas partilhadas,

ArqComp: Periféricos de computadores 21/37 2007-05-19

Notas:

21

Page 21: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Protocolo de comunicação: “handshaking” (2/2)

Exemplo de uma transacção assíncrona:Transferência de posição de memória para dispositivo de E/S:

1. Memória detecta que sinal ReadReq está a “1”: obtém endereçoda linha de dados e activa Ack para indicar que foi “activada”.

2. Dispositivo de E/S detecta Ack e liberta as linhas de dados eReadReq.

3. Memória detecta ReadReq a “0” e coloca Ack a “0” também.

4. Quando a memória tem os dados prontos a transferir, coloca ainformação nas linhas de dados e coloca DataRdy a “1”.

5. Dipositivo E/S detecta DataRdy a “1”, lê dados do barramento,após o que leva Ack a “1”.

6. Memória detecta Ack a “1”, pelo que baixa DataRdy e liberta aslinhas de dados.

7. Dispositivo de E/S detecta que DataRdy está a “0”, e coloca Acka “0”. Pode começar uma nova transacção.

ArqComp: Periféricos de computadores 22/37 2007-05-19

Notas:

22

Page 22: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Sistema baseado num Pentium 4

ArqComp: Periféricos de computadores 23/37 2007-05-19

Notas:

23

Page 23: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Características de controladores E/S

ArqComp: Periféricos de computadores 24/37 2007-05-19

Notas:

24

Page 24: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Tarefas do sistema operativo

+ Características relavantes do sistema de E/S:É Vários programas partilham o sistema de E/S.

É Sistema de E/S usam (muitas vezes) interrupções paracomunicar informação sobre as operações de E/S, levandoo CPU a entrar em modo supervisor.

É O controlo de baixo nível dos dispositivos de E/S é muitocomplexo porque implica a gestão de muitos eventossimultâneos e porque os requisitos dos dispositivos sãomuito minuciosos.

+ Tarefas a executar pelo S. O.:É Garantir que cada processo apenas acede aos dispositivos(ou às partes dos dispositivos) a que tem direito.

É Fornecer abstracções que permitam isolar o acesso aosdispositivos dos detalhes de cada um deles.

É Atender as interrupções geradas pelos dispositivos de E/S.

É Garantir acesso equitativo e eficiente aos dispositivos.

ArqComp: Periféricos de computadores 25/37 2007-05-19

Notas:

25

Page 25: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Comandos de E/S

+ Para executar uma transferência de E/S, o CPU deve seleccionar odispositivo e transmitir um ou mais comandos.

+ Método 1: dispositivos mapeados em memóriaÉ Uma secção do espaço de endereçamento é associada a um

dispositivo: leituras e escritas para esses endereços são interpretadascomo comandos.O sistema de memória ignora os acessos, mas o controlador dodispositivo detecta-os e actua em concordância.

É O acesso aos dispositivos é controlado: os dispositivos apenas surgemno espaço de endereçamento do sistema operativo (e não dosprocessos individuais).

É Os dispositivos usam os endereços para determinar o tipo de comando.É A família MIPS usa esta abordagem. (E o nanoMIPS também. . . )

+ Método 2: instruções especiais de I/OÉ Alguns processadores têm instruções especiais de E/S que permitem

especificar o número do dispositivo e os dados a enviar/receber.É A arquitectura IA-32 da Intel (386, Pentium, etc.) usa esta abordagem.

ArqComp: Periféricos de computadores 26/37 2007-05-19

Notas:

26

Page 26: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Comunicação com o processador

Existem duas abordagens à estratégia de comunicação entre CPU e periféricos:Varrimento (polling)

+ O CPU verifica periodicamente o estado do periférico.

+ O dispositivo simplesmente coloca a informação apropriada num registo,que é acedido pelo CPU.

+ Vantagem: simplicidade.

+ Desvantagem: pode desperdiçar tempo de CPU significativo. O processadorpode aceder muitas vezes ao dispositivo, apenas para constatar que esteainda não está pronto.

Interrupções+ Quando o dispositivo termina uma tarefa, envia uma interrupção ao CPU

(activando uma linha pré-definida).

+ As interrupções são assíncronas em relação à execução de instruções: umainterrupção não está associada à execução de uma instrução e não implica oprotelamento/suspensão da execução da instrução.O CPU apenas necessita de verificar se existe uma interrupção pendentequando inicia a execução de uma nova instrução.

+ Uma interrupção pode vir acompanhada de informação adicional (porexemplo, a identidade do dispostivo que a gerou ou a sua prioridade).

ArqComp: Periféricos de computadores 27/37 2007-05-19

Notas:

27

Page 27: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Tratamento de interrupções

...

...

sw $fp, 24($sp)

addu $fp, $sp, 32

move $t0, $a0

sw $t0, 20($sp)

sub $a0, $t0, 1

jal rotina

move $t1, $v0

lw $t0, 20($sp)

sw $t1, 16($sp)

sub $a0, $t0, 2

jal rotina

move $t2, $v0

lw $t1, 16($sp)

add $v0, $t1, $t2

...

# tratmento da interrupção

.text 0x80000080

mfc0 $k0, $13

mfc0 $k1, $14

andi $k0, $k0, 0x003c

...

jr $k1

1. execução “normal”

Periférico

2. interrupção

CPU

3. atendimento dainterrupção

4. retomar a execução “normal”

INTR

ACK(interrupção atendida)

CPU

periférico

ArqComp: Periféricos de computadores 28/37 2007-05-19

Notas:

28

Page 28: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Transferências memória↔ dispositivos E/S: DMA

+ A transferência de dados entre um dispositivo de E/S ememória ocorre tipicamente em duas etapas:1. transferência do dispositivo de E/S para o CPU;

2. transferência do CPU para memória.

+ Em transferências por DMA (Direct Memory Access), os dadossão transferidos directamente do dispositivi para a memória.

+ DMA é realizado por um controlador dedicado, que podetrabalhar de maneira independente do processador central.

1. CPU prepara a transferência DMA: identificação dodispositivo, operação a efectuar, endereço de memóriainicial, no de bytes a transferir.

2. Controlador de DMA efectua a transferência, enquanto CPUprossegue com as respectivas actividades.

3. Após terminar a transferência, o controlador de DMA enviauma interrupção ao CPU.

ArqComp: Periféricos de computadores 29/37 2007-05-19

Notas:

29

Page 29: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Sistema com DMA

CPU

endereços

dados

MemóriaRAM

ControladorDMA

pedido de controlo do barramento

autorização

PeriféricoA

PeriféricoB

activar periféricoA

activarperiférico B

pedido detransferência de A

pedido de transferência de B

IO_read_or_write

MEM_read_or_write

fim de operação (interrupção)

ArqComp: Periféricos de computadores 30/37 2007-05-19

Notas:

30

Page 30: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 31/37 2007-05-19

Notas:

31

Page 31: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Impacto de E/S sobre o desempenho

Um programa demora 100s a terminar. Desse tempo, 90s são detempo de CPU. Assuma que o desempenho de CPU melhora 50%por ano durante cinco anos, enquanto o sistema de E/S permaneceigual. Ao fim de cinco anos, quanto mais rápido é o programa?É Tempo de E/S = 100 - 90 = 10s

É Tabela para cinco anos (valores arredondado à unidade):

Ano CPU (s) E/S (s) Total (s) % E/S

0 90 10 100 101 90/1.5 = 60 10 70 142 60/1.5 = 40 10 50 203 40/1.5 = 27 10 37 274 27/1.5 = 18 10 28 365 18/1.5 = 12 10 22 45

É Melhoria de desempenho do CPU: 90/12 = 7.5

É Melhoria de desempenho total: 100/22 = 4.5

ArqComp: Periféricos de computadores 32/37 2007-05-19

Notas:

32

Page 32: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Abordagem ao projecto de um sistema E/S

+ Tarefa típica: projectar sistema de E/S de forma a respeitarrestrições de “largura de banda” para uma certa carga(conjunto de programas a executar).

+ Alternativa: dado um sistema de E/S parcialmente configurado,equilibrar o sistema de forma a obter a maior largura de bandapossível.

+ Abordagem geral:1. Determinar o elo mais fraco no sistema de E/S.

2. Configurar este componente para ter o desempenhopretendido (taxa de transmissão).

3. Determinar os requisitos do resto do sistema e configuraros demais elementos para permitirem obter a taxa detransmissão determinada anteriormente.

ArqComp: Periféricos de computadores 33/37 2007-05-19

Notas:

33

Page 33: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Projecto de um sistema de E/S: especificação

(Trata-de de um exemplo muito simplificado. Muitas vezes apenassimulação permite obter resultados suficientemente rigorosos.)Especificação do sistema:1. CPU capaz de executar 3× 109 instruções/s. Em média, o S. O. dispende

100000 instruções por operação de E/S.2. Barramento de acesso a memória com uma taxa de transferência de

1000MB/s.3. Controladores de disco SCSI Ultra320 com uma taxa de 320MB/s e capazes

de usar até 7 discos.4. Discos magnéticos com taxas de transferência de 75MB/s e um tempo

médio conjunto de busca e latência rotacional de 6ms.

A carga (para o sistema de E/S) consiste em leituras de 64KB(leitura sequencial de sectores de uma mesma pista). Osprogramas do utilizador gastam 200000 instruções por cadaoperação de E/S.Objectivo: Determinar a maior taxa sustentável de E/S, bem como onúmero de discos e de controladores necessários.(Assumir que nunca existem conflitos nos acessos a disco.)

ArqComp: Periféricos de computadores 34/37 2007-05-19

Notas:

34

Page 34: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Projecto de um sistema de E/S: cálculos (I)

Os componentes fixos são o CPU e memória.

Começar por determinar as restrições impostas por estescomponentes.

É Taxa máxima de E/S do CPU:

Taxa de execução de instruções

No de instruções por E/S=

3× 109

(200+ 100)× 103= 10000

E/S

s

É Barramento de memória (transferências de 64 KB):

Largura de banda

Bytes por E/S=

1000× 106

64× 103= 15625

E/S

s

O CPU é o limitador do desempenho. O sistema deve serconfigurado para uma taxa de 10000 operações de E/S porsegundo.

ArqComp: Periféricos de computadores 35/37 2007-05-19

Notas:

35

Page 35: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Projecto de um sistema de E/S: cálculos (II)

Determinar os restantes requisitos do sistema.É Tempo gasto por cada disco numa operação de E/S:

Tempo por E/S= 6+64KB

75MB/s= 6.9ms

É Cada disco pode realizar:

No operações de E/S=1000

6.9≈ 146

E/S

sÉ Para saturar o CPU são necessárias 10000 operações E/S por segundo.

Portanto, o número de discos é:

No de discos=10000

146≈ 69discos

É A taxa de transmissão de um disco é:Tamanho da transferência

Tempo de transferência=

64KB

6.9ms≈ 9.56MB/s

É 7 discos necessitam de 7× 9.56= 66.9 MB/s, o que é menor que 320. Logo,o controlador não é saturado pelos 7 discos.

É O sistema necessitará de b69/7c= 10 controladores.

ArqComp: Periféricos de computadores 36/37 2007-05-19

Notas:

36

Page 36: Arquitectura de Computadores - paginas.fe.up.ptjcf/ensino/disciplinas/mieic/arq/2006-07/... · Periféricos de computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC

Elementos de consulta

+ [Patterson & Hennessy]:É Secções 8.1, 8.2 (excepto parte sobre RAID [pág. 575–579da ed. inglesa]), 8.4–8.6

+ [Delgado & Ribeiro]:É Secções 6.3–6.4 (parcialmente 6.2)

+ [Arroz, Monteiro & Oliveira]:É Cap. 14

ArqComp: Periféricos de computadores 37/37 2007-05-19

Notas:

37