Professional Documents
Culture Documents
Transferências de dados
1
Introdução
Um importante aspecto na arquitectura de computador é
o modo como são efectuadas as operações de I/O
Envio de comandos
CPU periféricos
Resposta a pedidos dos periféricos
CPU periféricos
Trocas de dados
CPU periféricos
memória periféricos
periféricos periféricos
2
Introdução
O sistema tem que dar uma boa resposta a uma grande variedade
de periféricos, que funcionam a “velocidades” diferentes
3
Introdução
Ao mesmo tempo...
Não é conveniente o CPU estar à espera de respostas de
periféricos
Se isso acontece, desperdiça-se tempo de processamento...
Não é conveniente o CPU ter um papel activo quando as
transferências de dados são entre dispositivos externos
Memória disco
Disco memória
Memória placa gráfica
etc.
4
Acesso aos dispositivos
Controladores de dispositivo (adapters)
Interface que cada dispositivo apresenta ao resto do
sistema
Um controlador é geralmente constituído por:
Conjunto de registos programáveis
Conjunto de registos para escrita e leitura de dados
Lógica de controlo
Mais ou menos complexa, consoante o dispositivo
5
Acesso aos dispositivos
I/O dedicada
A cada registo dos diversos controladores é atribuído um número
designado por porto (I/O Port)
O acesso é feito utilizando instruções do tipo in e out (assembly)
in registo, port
copia o conteúdo do registo do controlador de periférico para um
registo da CPU
out port, registo
copia o conteúdo de um registo da CPU para um registo do
controlador
Requer linhas de controlo dedicadas para cada dispositivo
6
Acesso aos dispositivos
Memory-mapped I/O
Deste modo o acesso aos dispositivos é feito como se tratasse
de um acesso à memória
Cada registo do controlador encontra-se mapeado para uma
posição de memória
Uma escrita ou leitura nessa posição de memória corresponde
na realidade a uma escrita / leitura no registo do controlador
Os dispositivos, CPU e memória podem partilhar os mesmos
barramentos
7
Acesso aos dispositivos
I/O dedicada vs. Memory-mapped I/O
Espaço dos
Espaço de periféricos Espaço de
endereçamento endereçamento
Ports I/O
8
Operações de I/O
Existem basicamente três formas diferentes de
efectuar operações de I/O
I/O programada
I/O por interrupções
I/O por DMA
9
I/O Programada (Polling)
O CPU efectua todo o trabalho de I/O enviando e recebendo os
dados dos dispositivos
Após despachar um conjunto de dados (normalmente organizados
por blocos), verifica se o periférico está pronto para continuar
Problema:
O processador desperdiça muito tempo de processamento à espera de
poder continuar, pois de um modo geral os periféricos são muito lentos
face à sua velocidade
10
I/O por Interrupções
Uma maneira mais eficiente deixar o CPU a correr normalmente os
programas, interrompendo apenas quando é necessário
Exemplo: para se servir um pedido de um periférico que não pode
esperar
Diz-se que ocorre uma interrupção
O programa que foi interrompido poderá mais tarde ser retomado a
partir do ponto em que se encontrava na altura da interrupção
Vantagem:
Com este modelo, o processador envia / recebe dados do periférico, mas
depois pode dedicar-se a outra tarefa – não fica em espera
Eventual problema:
As interrupções podem ocorrer com demasiada frequência (se existirem
muitos dados envolvidos na transferência)
11
I/O por Interrupções
Interrupções de hardware (vectorizadas)
2. Controlador activa
linha de
interrupções 10
11 12 1
2
9
8 4
3 Relógio
7 6 5
Teclado
Controlador
CPU de
Interrupções Disco
Impressora
12
I/O por Interrupções
Quando ocorre uma interrupção, o CPU:
Salvaguarda numa pilha todos os seus registos
PUSH dos registos e do estado da unidade funcional (flags)
Desactiva temporariamente as interrupções
Para não ser “interrompido” enquanto trata de uma interrupção
Lê o interrupt vector obtendo o endereço de início da rotina de serviço à
interrupção
Salta para esse endereço e executa essa rotina
13
I/O por DMA
DMA (Direct Memory Access)
Liberta o processador em transferências de dados
que envolvem a memória e periféricos
BUS 4. Transferência de dados
Endereço
buffer
Contador
Controlo
3. DMA ACK
Vantagem
Uma só interrupção após toda a operação de I/O terminar
Desvantagem (só em alguns casos):
Este esquema pode não funcionar se o periférico for demasiado rápido
em relação ao controlador de DMA
Nesse caso pode-se usar I/O por interrupções
15
I/O
Periféricos
16
Discos
Geometria de um disco rígido
Cabeças magnéticas
Superfície 0
Superfície 1
Superfície 2
Superfície 3
Superfície 4
Superfície 5
17
Discos
Sectores
Cabeça
Pistas
18
Discos
Geometria de um disco
Cada arco circular completo designa-se pista
O conjunto de pistas na mesma posição radial (nas várias superfícies)
designa-se cilindro
As pistas estão divididas em arcos de comprimento angular fixo
designados sectores
Estrutura de um sector
Dados
o
bul
âm
Pre
EC
C
19
Discos
Temporizações típicas
Velocidade de rotação
Velocidade a que o disco roda
Valor típico: 7200 rpm (rotações por minuto)
Tempo de pesquisa (Seek)
Tempo que o braço demora a posicionar a cabeça sobre a pista a
ler/escrever
Tempo de acesso
Tempo que a cabeça demora a posicionar-se sobre o sector a aceder (tempo
de pesquisa + tempo de rotação)
Ritmo de transferência
Ritmo a que é lida/escrita informação do/no disco
(depende do tempo de acesso, da dimensão dos sectores e da interface do
disco com o resto do sistema)
Valor médio típico nos dias correntes: 70 MByte/s
20
Discos Ópticos
CD-ROMs (Compact-Disk Read Only Memory)
21
Discos Ópticos
CD-ROMs
Espelho móvel
Feixe reflectido
Feixe emitido
Diodo Laser
Prisma
Leitura da informação:
‘1’ Transição Pit-Land ou Land-Pit
‘0’ Sem transição
Superfície do disco
22
Discos Ópticos
Dificuldade física em repetir ‘1’s
É utilizada codificação EFM (Eight to Fourteen Modulation)
Por cada 8 bits, são na realidade escritos 14 bits no CD
O objectivo deste código é garantir que os ‘1’s ficam salteados
23
Discos Ópticos
Estrutura de um bloco
24
Discos Ópticos
CD-Rs (CD-Recordable)
Um CD-R é um CD em que os dados, uma vez gravados, não podem
regravados
Os dados são gravados ofuscando uma superfície transparente através
de uma queimadura provocada pelo laser (deste modo simula-se um Pit)
Áreas queimadas
Laser
Substrato (policarbonato)
Camada transparente
1,2 mm
Camada reflectora
Camada protectora
25
Discos Ópticos
CD-RWs (CD-Rewritable)
Ao contrário dos CD-Rs, um CD-RW pode ser regravado múltiplas vezes
Utiliza numa das camadas um material com dois estados:
Cristalino (mais reflectivo)
Amorfo (menos reflectivo)
O laser do gravador opera a 3 níveis de potência:
Alta – Converte áreas cristalinas em amorfas (Pit)
Média – Converte as áreas amorfas em cristalinas (Land)
Baixa – Não efectua mudanças ao estado do material. É utilizada para leitura
26
Discos Ópticos
Comparação entre discos ópticos
CD DVD Blu-ray
Dimensão mínima das pits 0.8 m 0.4 m 0.15 m
27
Teclado
Estrutura genérica
4
S Multiplexer 16-1
Micro-controlador
3
Descodificador 3/8
28
Teclado
Estrutura genérica
Tecla premida:
Mux contacto no cruzamento
Dec
29
Teclado
Funcionamento:
O micro-controlador produz todas as combinações binárias de 7 bits
(com base num contador)
Estes bits são apresentados às entradas do descodificador e às linhas
de selecção do multiplexer
A frequência de funcionamento do contador é elevada, varrendo toda a
matriz de cruzamentos centenas de vezes por segundo.
Tanto o carregar como o largar de uma tecla (ou combinação de teclas)
são detectados por inspecção da linha de saída do multiplexer
O código da tecla (ou teclas) pressionada – K-scan code – é obtido a
partir das saídas do contador
30
Teclado
Comunicação
Controlador de teclado
RD/WR
Sistema
Registos
Endereços
Input
Controlo
IRQ
Estado
Dados (série)
Relógio
Gnd
Vcc
Teclado
Micro-controlador
31
Teclado
Comunicação
O controlador de teclado tem a função de efectuar a interface
com o resto do sistema
Depois de pressionada uma tecla, é colocado no registo de input um
código normalizado da tecla e enviado um sinal de interrupção
O tratamento da interrupção “obriga” o CPU a ler o registo de input,
copiando o código de tecla para a memória
O controlador comunica com o teclado através de uma linha de
dados série sincronizada com um sinal de relógio
Para além disso, fornece a alimentação ao teclado
32
Monitor e placa gráfica
Esquema genérico
(CRT – Cathod Ray Tube)
Canhões de electrões
Pixel
Linhas de
varrimento
33
Monitor e placa gráfica
Funcionamento (CRT)
Cada ponto no écran designa-se pixel
Por cada ponto existem três tubos de raios catódicos, que são
“bombardeados” por electrões
Cada tubo -> uma componente de cor (R, G, B)
Obtém-se cores regulando a intensidade do “bombardeamento”
em cada uma das componentes
Os canhões de electrões varrem todo o écran a uma frequência
superior à que um humano consegue ver
Tipicamente superior a 60 Hz (60 varrimentos por segundo)
34
Monitor e placa gráfica
Memória ocupada por uma imagem
Tipicamente cada amostra de componente de cor requer 8 bits
(variando portanto entre 0 e 255)
suficiente para o sistema visual humano
Como em cada ponto se tem 3 componentes, cada ponto no
écran requer 24 bits (3 bytes)
Se a resolução do écran for Nh x Nv, a memória necessária para
cada imagem será de
Nv x Nh x 3 bytes
Exemplo:
Resolução: 1024 x 768
Quantidade de informação por imagem = 1024 x 768 x 3 = 2.4
MBytes
35
Monitor e placa gráfica
Ritmo de transmissão dos dados
O sistema terá que ser capaz de debitar dados a um ritmo compatível
com o sistema visual humano
Exemplo
Com as resoluções indicadas atrás, para enviar para o écran 60 imagens por
segundo, seria necessário um ritmo binário superior a:
36
Monitor e placa gráfica
Placa gráfica
Inicialmente serviam apenas para efectuar a interface entre o
processador e o écran
Hoje em dia têm muitas outras funcionalidades:
Efectuam diversos cálculos gráficos, poupando trabalho ao CPU
Desenho de objectos geométricos planos (linhas, polígonos)
Computação 3D (profundidade, modelos de iluminação)
Melhoria da qualidade de imagem (anti-aliasing, filtragem, correcção do factor
gamma)
Possuem memórias adaptadas para processamento de vídeo
(VRAMs)
Permitem ligação de/a dispositivos externos (e.g., câmaras de vídeo)
Etc.
37
Monitor e placa gráfica
Placa gráfica
(estrutura básica) Placa gráfica
Conversor
Monitor
Digital-Analógico
Ponte
Processador
CPU AGP
gráfico
(ou PCI)
VRAM
38
Modem
Modem – Modulator-Demodulator
Dispositivo para comunicação entre computadores
ligados a uma rede telefónica / cabo
O sinal binário a transmitir é modulado:
Em vez de ser transmitido um sinal entre 0 e 5 Volt, é utilizado
um sinal sinusoidal (a portadora)
39
Modem
Modulação
1 0 0 1 1 0 1 0 0
Sinal original
Modulação em amplitude
(AM ou ASK)
Modulação em frequência
(FM ou FSK)
Modulação de fase
(PM ou PSK)
40