Você está na página 1de 67

5-1

Parte 5 Entrada e Sada

5-2

Bibliografia
[1] Miles J. Murdocca e Vincent P. Heuring, Introduo Arquitetura de Computadores [2] Andrew S. Tanenbaum, Modern Operating Systems [3] William Stallings, Arquitetura e Organizao de Computadores

5-3

Caractersticas da E/S
Velocidade de transferncia de dados varia muito Muito lento: ex. teclado Muito rpido: ex. grficos escritos no monitor Atividades de E/S so assncronas Handshaking pode ser necessrio
Quando o dispositivo est pronto para recepo/envio de dados

Qualidade dos dados pode ser incerta Mecanismos de deteco/correo Transferncias podem ser interrompidas Ex. impressora sem papel Device drivers devem tratar estes problemas

5-4

Comunicao entre Dispositivos


N componentes que se comunicam uns com os outros Pior caso: N2/2 ligaes entre os componentes Nem todos os dispositivos se comunicam simultaneamente... Barramento Caminho comum que conecta um certo nmero de dispositivos

5-5

Arquiteturas Simples de Barramentos


Uma placa-me simplificada de um computador pessoal:

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-6

Ilustrao Simplificada de um Barramento

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-7

Estrutura do Barramento
Parte fsica (fios, conectores) + Protocolo de barramento Fios so compartilhados Somente um dispositivo pode enviar dados em um momento Todos escutam, mas em geral s um l os dados Barramento controlado por um mestre Outros dispositivos so escravos

5-8

Uso de Barramentos
Vantagens Elimina a necessidade de conectar cada dispositivo com todos os outros Desvantagens Perda de velocidade (mestre/escravo) Tempo envolvido no protocolo Problemas de escalabilidade
Ex. fan-in / fan-out

5-9

Tipos de Barramentos
Sncronos Um dos dispositivos contm um oscilador Assncronos

5-10

Um Clock de Barramento de 100 MHz

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-11

O Barramento Sncrono
Diagrama de tempo para uma leitura de memria sncrona
(adaptado de [Tanenbaum, 1999]).

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-12

Barramento Assncrono
Mestre coloca tudo que precisa no barramento Endereos, dados e controle Ativa MSYN (Master Synchronization) Escravo troca dados com o Mestre Ativa SSYN (Slave Synchronization) Ao final da troca de dados Mestre desativa MSYN Escravo desativa SSYN

5-13

O Barramento Assncrono
Diagrama de tempo para uma leitura de memria assncrona
(adaptado de [Tanenbaum, 1999]).

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-14

Arbitragem do Barramento
Mais de um dispositivo quer ser Mestre do barramento ao mesmo tempo Esquemas bsicos de arbitragem Centralizado Descentralizado

5-15

Arbitragem do Barramento
(a)arbitragem centralizada simples de barramento; (b) arbitragem centralizada com nveis de prioridade; (c) arbitragem de barramento descentralizada (adaptado de [Tanenbaum, 1999]).
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

5-16

Arbitragem centralizada simples


Dispositivo quer ser Mestre Ativa a linha de pedido do barramento rbitro determina se permisso do barramento pode ser dada Se sim, rbitro ativa a linha de permisso do barramento Linha de permisso do barramento daisy chained O primeiro dispositivo que quer ser mestre toma posse do barramento e no propaga a permisso

5-17

Arbitragem centralizada com nveis de prioridade


Vrias linhas de pedido/permisso Linhas de pedido com nmeros baixos tm maior prioridade Dentro de uma linha, prioridade definida pela proximidade eltrica do rbitro Levando-se o design ao extremo, cada dispositivo pode ter sua linha de pedido/permisso do barramento Arbitragem completamente centralizada

5-18

Arbitragem de Barramento Descentralizada


Dispositivo quer se tornar Mestre Ativa linha de pedido do barramento Verifica se est ocupado Se linha de ocupado no ativa Envia zero ao prximo dispositivo Ativa a linha ocupado Desativa pedido Se linha de ocupado ativa OU Se dispositivo no quer usar o barramento Propaga a permisso para o prximo dispositivo

5-19

Arquiteturas de Barramentos Baseados em Pontes


Objetivo Permitir algumas transferncias de dados simultneas Exemplo Leitura de bloco de memria para o cache Recepo de dados na rede Soluo Utilizao de pontes

5-20

Arquitetura de Barramentos Baseados em Pontes

Uso de ponte em sistema com dois processadores Pentium II Xeon (fonte: www.intel.com.)

Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

5-21

Metodologias de Comunicao
Entrada e sada programada (ou polling) Entrada e sada por interrupo Acesso direto memria (DMA)

5-22

Fluxograma de E/S Programada (polling) para uma transferncia de disco

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-23

Fluxograma de E/S controlada por interrupo para uma transferncia de disco

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-24

Transferncia de DMA do Disco para a Memria sem usar CPU

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-25

Fluxograma de DMA para uma Transferncia do Disco

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-26

Comunicao na Arquitetura Pentium


Barra de endereos 32 bits 4 GB de memria principal Barra de dados 64 bits Pode transferir at uma palavra qudrupla (8 bytes) em um ciclo de barramento Espaos de endereamento separados para memria e E/S Linha do barramento M/IO# Opcodes separados IN e OUT Endereos limitados a 16 bits (64K posies de E/S)

5-27

Espaos de Endereamento de Memria e de E/S da Arquitetura Intel Pentium

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-28

Ciclos de Barramento Intel Pentium de Leitura e Escrita Comuns

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-29

Ciclo de Barramento Intel Pentium de Leitura em Rajada

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-30

Ciclo de Barramento Intel Pentium Suspenso Confirmao da Suspenso (Hold-Hold Acknowledge)


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

5-31

Um Disco Magntico com Trs Pratos

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-32

Codificao de Manchester
(a) Straight amplitude (NRZ) encoding of ASCII F; (b) Manchester encoding of ASCII F.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-33

Sistemas de Arquivos em Discos


Arquivo Coleo de setores do disco
Setores consecutivos minimizam tempo de busca e latncia rotacional Arquivos podem se tornar fragmentados... Otimizadores defragmentam o disco

Intercalao Dar tempo CPU, caso o prximo setor seja requisitado

5-34

Organizao de um Prato de Disco com Fator de Intercalao 1:2

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-35

Organizao do Disco Magntico


Cada superfcie contm vrias trilhas Trilhas so compostas por setores Setores armazenam nmero fixo de bytes Ex.: 512 bytes Fisicamente Setores separados por inter-sector gaps Trilhas separadas por inter-track gaps

5-36

Zone bit recording


Tcnica para aumentar a capacidade do disco Trilhas separadas em zonas Zonas prximas ao centro do prato tm menos setores que as prximas beirada do prato

5-37

Capacidade do Disco
Capacidade de armazenamento (C) N nmero de bytes por setor S nmero de setores por trilha T nmero de trilhas por superfcie P nmero de superfcies C=NxSxTxP Ex. N = 512 bytes por setor, S = 1000 setores por trilha, T = 5000 trilhas por superfcie e P = 8 pratos C = 38GB

5-38

Velocidade de Transferncia Mxima


Tempo para mover a cabea para a trilha desejada (tempo de busca ou seek time) Tempo para o setor desejado aparecer sob a cabea (latncia rotacional) Tempo para transferir o setor do prato do disco (tempo de transferncia) Aproximaes Tempo de busca = da viagem completa Latncia rotacional = da revoluo completa Tempo de transferncia
(tempo da revoluo completa) / (nmero de setores na trilha)

5-39

Bloco-mestre de Controle
MCB (Master Control Block) Seo reservada Controla o contedo do restante do disco Normalmente armazenado em um lugar fixo
Ex. trilha mais interna do disco

5-40

Master Control Block

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-41

Bloco-mestre de Controle (cont.)


Arquivos crescem S.O. busca blocos livres no MCB Pode haver grande movimentao da cabea
(blocos livres distantes do MCB)

Melhora: cpia do MCB em memria Sincronizao do disco Atualizao do MCB ao desligar a mquina

5-42

Fitas Magnticas
Rolo de fita plstica com cobertura magntica Cabea magnetiza a fita (escrevendo) ou sente o campo magntico (lendo) Acesso lento Todas as sees passam pela cabea antes da seo desejada Informao armazenada de forma bi-dimensional Bytes quadros ao longo da largura da fita Registros ao longo do comprimento da fita

5-43

Segmento de Fita Magntica


Segmento de fita magntica

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-44

Fita Magntica (cont.)


Adequada para grandes quantidades de dados Cpias de segurana Inadequada para acesso aleatrio Acesso seqencial consome muito tempo Em geral, no possvel escrever no meio da fita

5-45

Tambor Magntico

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-46

Velocidade de Rotao
Taxa de dados constante, ento se Velocidade Angular Constante bits mais espaados prximo borda
blocos de dados acessados diretamente na trilha/setor, mas h desperdcio de espao

Velocidade Linear Constante densidade de bits constante


mais informao armazenada, atraso rotacional maior para trilhas prximas da borda

5-47

Discos pticos
Disco magntico
velocidade angular constante

CD
velocidade linear constante (disco gira mais lentamente qdo cabea prxima da borda)

Velocidade dada em nmero de vezes a velocidade do CD de udio (Ex. 24x)

5-48

CD de udio
2 canais (estreo) 44.000 amostras/s 16 bits por amostra Aproximadamente 74 minutos Capacidade ~ 745,2 MB

5-49

CD-ROM
Diferentes densidades Exemplo Espaamento entre trilhas = 1,6m Largura til = 32,55 mm
20.344 trilhas

Na verdade, uma trilha espiral de ~5,27km Velocidade linear = 1,2m/s 4.391s ou 73,2 min Dados lidos a 176,4 Kbytes/s Capacidade 774,5 Mbytes

5-50

CD-R
WORM (Write Once Read Many) preparado por um laser de alta intensidade usa velocidade angular constante
acesso mais rpido, menos capacidade

Mtodo tpico Na fbrica, laser de alta intensidade produz bolhas na superfcie do disco No drive, laser de mais baixa intensidade pode romper as bolhas

5-51

CD-RW
Tcnica de mudana de fase Material possui dois ndices de reflexo distintos
Estado amorfo
Reflete pouca luz

Estado cristalino
Superfcie suave, com boa reflexo de luz

Laser pode mudar o material de uma fase para outra Desvantagem O material perde essa propriedade aps sries de apagamentos (~500.000 a 1 milho)

5-52

DVD
DVD (Digital Versatile Disc) 4,7 Gbytes por lado, se um lado s usado 8,5 Gbytes por lado, usando-se duas camadas por lado 17Gbytes no total

5-53

O Layout de Teclado ECMA-23


Disposio do teclado-padro ECMA-23 (2nd ed.). Teclas de shift so freqentemente colocadas na fila B.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-54

O Layout do Teclado Dvorak

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-55

Mesa Digitalizadora (Bit Pad) com um Puck

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-56

Mouse e Trackball
Um mouse de trs botes e um trackball de trs botes.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-57

Lightpen
Usurio selecionando um objeto com uma lightpen.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-58

Touchscreen
Usurio selecionando um objeto em uma tela de toque.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-59

Joystick
Um joystick com boto de seleo e eixo com rotao:

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-60

Impressora a Laser
Esquemtico de uma impressora a laser (adaptado de [Tanenbaum, 1999]).

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-61

Tubo de Raios Catdicos


Um CRT com um nico canho de eltrons:

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-62

Controlador de Vdeo
Controlador de vdeo para monitor colorido 640x480 (adaptado de [Hamacher et al., 1990]).

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

5-63

Controlador de Vdeo
Frame buffer Armazena os padres de bits correspondentes imagem a ser exibida (carregada pelo computador) Cada pixel
1 a 32 bits

Tabela de Previso de Cores Permite utilizar mais cores que o tamanho do pixel na memria de vdeo permitiria

5-64

Envio de Dados
Taxa de dados entre computador e monitor Exemplo: 24 bits por pixel 1024x768 pixels 60 Hz ~140MBytes/s

5-65

VHDL Specification
Interface specification for the majority component -In terface ent i t y M AJ O RITY is por t (A_IN, B_IN, C_IN: i n BIT F_OUT: ou tB IT) ; end MAJ O RITY; Behav i ora l mode l fo rt he major i ty component - Body archi tecture LO GIC_SPEC of MAJO RITY is begin - co m pute the output us ing a Boolean expression F_OUT <= (not A_IN and B_IN and C_IN) or (A_IN and not B_ IN and C_IN) or (A_IN and B_IN and not C_IN) or (A_IN and B_IN and C_IN) af ter 4 ns; end LOGIC_SPEC;
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

5-66

VHDL Specification (cont)


- Package dec la ra t ion, in l ibra ry WO R K package LOGIC_GATES i s co mponent AN D3 por t (A, B, C : in BIT; X : out B I T) ; end com ponent ; co mponent OR4 por t (A, B, C, D : i n BIT ; X : out BIT) ; end com ponent ; co mponent NOT1 por t (A :in BIT; X : out B I T) ; end com ponent ; -In terface ent i ty M AJO RITY is por t (A_IN, B_IN, C_IN: i n BIT F_OUT: out B I T) ; end MAJORITY;
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

5-67

VHDL Specification (cont)


- Body - Uses components declared in package LOGIC_ G ATES -in the W O R K l ibrary -impor ta l lthe co m ponents in WO R K.LO GIC_G ATES use WO R K.LO GIC_G ATES.a l l archi tecture LO GIC_SPEC of MAJO RITY is - declare s ignals used internal ly in MAJORITY signal A_BAR, B_BAR, C_BAR, I1 , I2 ,I3 ,I 4: B IT ; begin - connect the logic gates N OT_1 : NOT1 port m ap (A_IN, A_BAR) ; N OT_2 : NOT1 port m ap (B_IN, B_BAR) ; N OT_3 : NOT1 port m ap (C_IN, C_BAR) ; A N D_1 : AND3 port m ap (A_BAR, B_IN, C_IN, I 1) ; A N D_2 : AND3 port m ap (A_IN, B_BAR, C_IN, I2 ) ; A N D_3 : AND3 port m ap (A_IN, B_IN , C_BAR, I 3) ; A N D_4 : AND3 port m ap (A_IN, B_IN , C_IN, I4 ) ; O R_1 : OR3 port map ( I1 ,I 2, I3 ,I4, F_OUT) ; end LOGIC_SPEC;
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring