Você está na página 1de 60
Aula 3 – Dispositivos de Entrada e Saída
Aula 3 – Dispositivos de Entrada e Saída

Anderson L. S. Moreira

anderson.moreira@recife.ifpe.edu.br

http://dase.ifpe.edu.br/~alsm

Anderson Moreira

Arquitetura de Computadores

1

Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Anderson Moreira Arquitetura de Computadores 1

O que fazer com essa apresentação

O que fazer com essa apresentação Anderson Moreira Arquitetura de Computadores 2
O que fazer com essa apresentação Anderson Moreira Arquitetura de Computadores 2

Anderson Moreira

Arquitetura de Computadores

2

Agenda

Conceitos básicos;

Esquema de E/S;

Periféricos;

Barramento tradicional;

Barramento local;

Bridges;

Chipset;

Interrupções.

© Copyright 2010, IFPE. Creative Commons BY-SA 3.0 license Latest update: 28 de Fev de 2011,

Document sources, updates:

http://dase.ifpe.edu.br/~alsm

Anderson Moreira

Arquitetura de Computadores

28 de Fev de 2011, Document sources, updates: http://dase.ifpe.edu.br/~alsm Anderson Moreira Arquitetura de Computadores

Conceitos Básicos

Termos de interesse:

Conceitos Básicos • Termos de interesse: – Periférico → qualquer dispositivo conectado a um computador que

Periférico → qualquer dispositivo conectado a um computador que permita a comunicação ou interação do computador com o mundo externo. (Entrada, Saída e Entrada/Saída).

Interface → componente de hardware localizado entre o processador e um ou mais periféricos, função coordenação de transferência de dados.

Recebimento dos dados e comandos enviados pelo processador ao periférico;

Envio ao processador do estado (status) do dispositivo;

Manipulação e transformação dos dados e sinais de uma forma que seja compatível com o periférico;

Geração de sinais de controle e temporização durante a transferência de dados e estado.

Anderson Moreira

Arquitetura de Computadores

Conceitos Básicos

Conceitos Básicos – Controlador → Componente de hardware de uma interface que realiza todo o controle

Controlador → Componente de hardware de uma interface que realiza todo o controle necessário para a transferência de dados;

Driver → Conjunto de rotinas encarregadas da comunicação do processador com a controladora e/ou interface do periférico;

Porta de E/S → Corresponde a um endereço no sistema de E/S do processador. Assim como o processador tem uma determinada capacidade de endereçamento de memória, ele também tem uma certa gama de endereços destinados a portas de E/S;

Barramento → Conjunto de fios que transportam sinais de dados, endereço e controle

Anderson Moreira

Arquitetura de Computadores

Esquema de Entrada e Saída

Esquema de Entrada e Saída periférico processador portas Drivers de dispositivos Anderson Moreira Arquitetura de
periférico processador portas Drivers de dispositivos
periférico
processador
portas
Drivers de dispositivos

Anderson Moreira

Arquitetura de Computadores

Periféricos

Periféricos • Periféricos existem em grande número; • Entram e saem de moda de acordo com

Periféricos existem em grande número;

Entram e saem de moda de acordo com a evolução tecnológica:

ISA, PCI, USB, PCI-X

Tipos de transferência de dados:

Por controle direto do processador;

Por acesso direto a memória (DMA).

Podem co-existir no computador sem um anular o outro tipo.

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Teclado:

Exemplos de E/S Teclado: • Conjunto de chaves elétricas cada uma acionada por uma tecla. A
Exemplos de E/S Teclado: • Conjunto de chaves elétricas cada uma acionada por uma tecla. A

Conjunto de chaves elétricas cada uma acionada por uma tecla. A cada chave dessas corresponde um código binário que é enviado para a placa-mãe e esta sabe como tratar esse código de acordo com o modelo do teclado ou com o software que está em uso.

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Exemplos de E/S Como funciona o teclado: • Tecla é acionada ela gera um scan code

Como funciona o teclado:

Tecla é acionada ela gera um scan code (geração de um código numérico associado a tecla);

Quando a tecla é liberada gera um novo código.

Obs.: Teclado não reconhece caractere ou símbolo associado (tabela ASCII não interessa!!)

ou símbolo associado (tabela ASCII não interessa!!) • Modos: – 1 – encontrado no teclado de

Modos:

1 – encontrado no teclado de 83 teclas, acionamento e liberação gera o mesmo código;

2 – encontrado no teclado de 84 teclas, acionamento gera um código de varredura em um byte. A liberação gera o mesmo código porém precedido de F0H;

3 – introduzido no teclado de 101 teclas, possui os mesmos código do modo 2 porém tem a velocidade aprimorada.

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Mouse:

Exemplos de E/S Mouse: Anderson Moreira Arquitetura de Computadores
Exemplos de E/S Mouse: Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Sistema de vídeo:

Exemplos de E/S Sistema de vídeo: Anderson Moreira Arquitetura de Computadores
Exemplos de E/S Sistema de vídeo: Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Exemplos de E/S • O chamado subsistema de vídeo do computador constitui-se de uma das partes

O chamado subsistema de vídeo do computador constitui-se de uma das partes mais complexas;

Requer um processador específico para os gráficos a serem exibidos, esses gráficos processados são armazenados na chamada memória de vídeo que recentemente passou a ser uma parte da RAM nas configurações mais populares;

Acontece devido a novas tecnologias de barramento (também a serem vistas mais adiante). Finalmente a imagem processada e armazenada em memória específica é exibida em um monitor de vídeo, que por sua vez pode ser baseado na tecnologia de raios catódicos (CRT) ou de cristal líquido (LCD).

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Exemplos de E/S • Objetivo geral do monitor é criar através da emissão de luz uma

Objetivo geral do monitor é criar através da emissão de luz uma imagem que seja réplica do que o olho humano veria se estivesse observando diretamente;

O olho humano é sensível a uma pequena faixa de espectro eletromagnético, com uma frequencia central da ordem de 5x10E14 Hz

espectro eletromagnético, com uma frequencia central da ordem de 5x10E14 Hz Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Exemplos de E/S

Formação de imagem na tela:

Exemplos de E/S • Formação de imagem na tela: – Um monitor apresenta resolução de 3x4

Um monitor apresenta resolução de 3x4 ou 0,75. Esta é a relação definida por normas de transmissões de televisões;

Um filme de cinema tem proporção de 2x3 ou 0,67;

Um sistema HD tem relação de 3x5 ou 0,60;

De acordo com a estética grega a relação para beleza superior é a solução da equação x+1=1/x. Uma proposição de solução é (sqrt(5)-1)/2 ~ 0,618;

–

Isso é o que deve ser levado em consideração ao tratar de composição de imagem.

Anderson Moreira

Arquitetura de Computadores

Formação de imagem

Em um monitor CRT:

Formação de imagem • Em um monitor CRT: – Controle da emissão de feixe de elétrons

Controle da emissão de feixe de elétrons que varre a tela estimulando um material fosforescente depositado sobre a mesma;

Esse material emite luz. Cada ponto emissor de luz é chamado de pixel;

O feixe de elétrons varre a tela da esquerda para direita e do topo para baixo numa velocidade de aproximadamente 50 a 70 telas por minuto;

No final de cada linha o feixe é apagado e volta para inicar uma nova varredura

Em um monitor LCD:

Depende da tecnologia;

Feixe de luz é emitido e sofre uma torção para formar as imagens.

Anderson Moreira

Arquitetura de Computadores

Exercícios

Exercícios 1. Pesquise o que significa interrupção de teclado e como essa funciona. 2. A BIOS

1. Pesquise o que significa interrupção de teclado e como essa funciona.

2. A BIOS tem uma função muito importante no tratamento do teclado. Que papel é esse? Explique o funcionamento sucintamente.

3. Um sistema de cor em um determinado sistema pode ser representado de diversas formas. Explique os padrões de vídeo RGB, CMYK, HSB e HSL.

4. Explique os seguintes padrões de tecnologias de monitores:

1. LCD – PMLCD

2. LCD – TNLCD

3. ACPDP – AC plasma display panel

4. LED

Anderson Moreira

Arquitetura de Computadores

Outros exemplos

Scanner

Outros exemplos • Scanner – Esse aparelho é composto por uma fonte de luz que é

Esse aparelho é composto por uma fonte de luz que é emitida sobre o papel, ou objeto a ser “escaneado” e um sensor que capta os reflexos dessa imagem.

Esse sensor ajuda a montar a imagem na memória do computador na forma de um arquivo gráfico ou simplesmente um padrão de barras a ser convertido em um número.

gráfico ou simplesmente um padrão de barras a ser convertido em um número. Anderson Moreira Arquitetura
gráfico ou simplesmente um padrão de barras a ser convertido em um número. Anderson Moreira Arquitetura
gráfico ou simplesmente um padrão de barras a ser convertido em um número. Anderson Moreira Arquitetura

Anderson Moreira

Arquitetura de Computadores

Outros exemplos

Impressora

Outros exemplos • Impressora – É o dispositivo responsável por levar ao papel tudo que se

É o dispositivo responsável por levar ao papel tudo que se produz em termos de textos e imagens dentro de uma UCP.

Existem diversas tecnologias de impressoras, dentre elas tem-se:

as de impacto, as jato de tintas, as de cera e as a laser.

elas tem-se: as de impacto, as jato de tintas, as de cera e as a laser.

Anderson Moreira

elas tem-se: as de impacto, as jato de tintas, as de cera e as a laser.
elas tem-se: as de impacto, as jato de tintas, as de cera e as a laser.

Arquitetura de Computadores

Outros exemplos

Dispositivos de Armazenamento

Outros exemplos • Dispositivos de Armazenamento Anderson Moreira Arquitetura de Computadores
Outros exemplos • Dispositivos de Armazenamento Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Periféricos – Acesso Direto à Memória

Periféricos – Acesso Direto à Memória • Controlador faz o trabalho de transferência de blocos de

Controlador faz o trabalho de transferência de blocos de dados entre periféricos e memória;

Processador não abandona suas tarefas; Apenas inicializa o controlador e dispara as atividades de transferências

Apenas inicializa o controlador e dispara as atividades de transferências Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Periféricos

ATENÇÃO!!

Periféricos ATENÇÃO!! • Periférico é como um equipamento eletrônico conectado por um cabo ou barramento de

Periférico é como um equipamento eletrônico conectado por um cabo ou barramento de E/S a CPU e que é usado para transferir informação de/ou para este.

De acordo com esta definição, a memória não é considerada um periférico pois está ligada ao barramento de sistema e não a um barramento de E/S. .

Mas afinal o que é barramento de sistema e de E/S???pois está ligada ao barramento de sistema e não a um barramento de E/S . Anderson

Anderson Moreira

Arquitetura de Computadores

Barramentos (bus)

Barramentos (bus) • Elementos de hardware que permitem a interconexão entre componentes; • Podem ser seriais

Elementos de hardware que permitem a interconexão entre componentes;

Podem ser seriais ou paralelos:

Internamente nos computadores são paralelos.

Cada sistema possui uma série de barramentos:

Internos ao microprocessador (interliga registradores, FPU, caches internas);

Barramentos locais (localizados na placa-mãe no microprocessador e a memória);

Barramentos de expansão (colocadas placas controladoras e interfaces);

Barramento para periféricos (onde as unidades periféricas estão ligadas)

Anderson Moreira

Arquitetura de Computadores

Barramentos (conceitos)

Barramentos (conceitos) • Um barramento ou bus consiste, na sua forma mais simples, num número de

Um barramento ou bus consiste, na sua forma mais simples, num número de linhas elétricas através das quais sinais, e desta forma também dados, são transferidos;

Um PC tem 3 barramentos:

de dados,

de endereços ,

de controle.

Estes barramentos permitem que a CPU comunique com a memória e os periféricos.

Anderson Moreira

Arquitetura de Computadores

Barramentos (conceitos)

Barramentos (conceitos) • O barramento entre a CPU e a memória é chamado de barramento do

O barramento entre a CPU e a memória é chamado de barramento do sistema ou system bus.

O barramento entre a CPU e os outros componentes (os periféricos) é chamado de barramento de entrada-saída ou I/O bus.

Este barramento tem uma velocidade de transferência de dados inferior ao barramento do sistema.é chamado de barramento de entrada-saída ou I/O bus. Alguns tipos de barramentos de entrada-saída são:

Alguns tipos de barramentos de entrada-saída são:transferência de dados inferior ao barramento do sistema. - ISA (Industry Standard Architecture) paralelo de 8

- ISA (Industry Standard Architecture) paralelo de 8 e 16 bits

- EISA (Extended Industry Standard Architecture) paralelo de 32 bits

- PCI (Peripheral component interconnect) paralelo de 32 ou 64 bits

- VME (Versa Module Eurocard) paralelo de 32 bits.

- AGP (Accelerated Graphics Port) para o adaptador gráfico. Paralelo de 32 bits.

- USB (Universal serial bus) série.

Anderson Moreira

Arquitetura de Computadores

Barramento Tradicional (1)

Barramento Tradicional (1) • Utilizam controle único para todo o barramento; • As transferências eram divididas

Utilizam controle único para todo o barramento;

As transferências eram divididas somente em dois tipos básicos:

De memória;

De E/S.

De memória é rápido, operando geralmente na mesma velocidade da memória;

De E/S conecta diversos periféricos distintos, podendo ser lentos ou rápidos. Aumento na taxa de transferência não irá beneficiá-los.

Anderson Moreira

Arquitetura de Computadores

Barramento Tradicional (2)

Barramento Tradicional (2) CPU Barramento do processador (rápido) Cache externa E/S Interna (built-in) Controlador
CPU Barramento do processador (rápido) Cache externa E/S Interna (built-in) Controlador de barramento E/S Externa
CPU
Barramento do
processador (rápido)
Cache externa
E/S Interna
(built-in)
Controlador
de barramento
E/S Externa
(conectores)
Barramento de E/S
(lento)
Barramento de E/S
(lento)
Barramento de
memória (rápido)
Memória

Anderson Moreira

Arquitetura de Computadores

Bridges

Bridges • Por causa da enorme “salada de frutas” de padrões a normalização de barramentos para

Por causa da enorme “salada de frutas” de padrões a normalização de barramentos para PC é um problema;

O atual PC possui vários barramento operando em diversas frequencias;

Solução para gerencia dos barramentos foram as pontes (bridges);

Circuito projetado para transportar dados entre barramentos diferentes.

Anderson Moreira

Arquitetura de Computadores

Bridges

Bridges • Os barramentos de entrada-saída podem ser vistos como uma extensão do barramento do sistema;

Os barramentos de entrada-saída podem ser vistos como uma extensão do barramento do sistema;

Na placa-mãe o barramento de sistema termina em controladores que fazem uma ponte com os barramentos de E/S.

Normalmente estes controladores são agrupados em chips chamados chipset.

Uma arquitetura comum consiste em dois chips chamados north e south bridge.

Ao barramento de entrada saída podem ser conectados adaptadores de periféricos.

Anderson Moreira

Arquitetura de Computadores

Barramento

Barramento Anderson Moreira Arquitetura de Computadores
Barramento Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Barramento Tradicional (3)

Barramento Tradicional (3) • Utilizados de 80 até meados dos anos 90; • Válido para barramentos

Utilizados de 80 até meados dos anos 90;

Válido para barramentos ISA, EISA, MCA;

de 80 até meados dos anos 90; • Válido para barramentos ISA, EISA, MCA; Anderson Moreira
de 80 até meados dos anos 90; • Válido para barramentos ISA, EISA, MCA; Anderson Moreira
de 80 até meados dos anos 90; • Válido para barramentos ISA, EISA, MCA; Anderson Moreira

Anderson Moreira

Arquitetura de Computadores

Barramento Tradicional (4)

Barramento Tradicional (4) • Com o surgimento das interfaces gráficas exigiu mais do sistema de E/S;

Com o surgimento das interfaces gráficas exigiu mais do sistema de E/S;

Alguns recursos usavam o barramento do processador;

Barramento Local foi introduzido;

Exemplos: AGP, PCI, VLB

• Barramento Local foi introduzido; • Exemplos: AGP, PCI, VLB Anderson Moreira Arquitetura de Computadores
• Barramento Local foi introduzido; • Exemplos: AGP, PCI, VLB Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Barramento Local (1)

Barramento Local (1) CPU Cache externa Barramento do processador (rápido) E/S Externa (conectores, video, disco)

CPU

Barramento Local (1) CPU Cache externa Barramento do processador (rápido) E/S Externa (conectores, video, disco)

Cache externa

Barramento do processador (rápido)

E/S Externa (conectores, video, disco)

Barramento local E/S (rápido)

(conectores, video, disco) Barramento local E/S (rápido) E/S Interna (built-in) Controlador de barramento
(conectores, video, disco) Barramento local E/S (rápido) E/S Interna (built-in) Controlador de barramento

E/S Interna

(built-in)

Barramento local E/S (rápido) E/S Interna (built-in) Controlador de barramento Barramento de E/S (lento)

Controlador de barramento

(rápido) E/S Interna (built-in) Controlador de barramento Barramento de E/S (lento) Barramento de E/S (lento) E/S
(rápido) E/S Interna (built-in) Controlador de barramento Barramento de E/S (lento) Barramento de E/S (lento) E/S

Barramento de E/S (lento)

Controlador de barramento Barramento de E/S (lento) Barramento de E/S (lento) E/S Externa (conectores)
Controlador de barramento Barramento de E/S (lento) Barramento de E/S (lento) E/S Externa (conectores)

Barramento de E/S (lento)

E/S Externa (conectores)

(lento) Barramento de E/S (lento) E/S Externa (conectores) Barramento de memória (rápido) Memória Anderson Moreira

Barramento de memória (rápido)

Memória

Anderson Moreira

Arquitetura de Computadores

Barramento Local (2)

Barramento Local (2) • O barramento Vesa Local Bus (VLB) tinha como objetivo básico permitir um

O barramento Vesa Local Bus (VLB) tinha como objetivo básico permitir um acesso direto ao barramento do processador para transferências rápidas para dispositivos de vídeo;

Barramento PCI, criado pela Intel quando lançou o

pentium;

Dois controladores distintos, um rápido PCI e outro lento ISA.

Anderson Moreira

Arquitetura de Computadores

Esquema barramento P5

Esquema barramento P5 CPU Pentium Cache nível 1 Processador 66 a 266 MHz Barramento do processador
CPU Pentium Cache nível 1
CPU Pentium
Cache nível 1

Processador 66 a 266 MHz

Barramento do processador 50 a 66 MHz Cache nível 2 Controlador de barramento (Ponte norte)
Barramento do processador
50 a 66 MHz
Cache nível 2
Controlador
de barramento
(Ponte norte)
Barramento de memória
16 MHz
Barramento PCI
25 a 33 MHz
Conectores PCI
Controladoras IDE
Memória CMOS e RTC
Controlador
de barramento
(Ponte sul)
Vídeo PCI
Barramento ISA
8 MHz
Conectores ISA
Controlador de disquete
Controlador de teclado
Memória ROM-BIOS
Super I/O
(87307)
Portas seriais (COM)
Paralelas (LPT)
Mouse

Anderson Moreira

Arquitetura de Computadores

Barramento Local (3)

Barramento Local (3) • Barramento AGP ( Accelered Graphics Port ) criou três tipos de barramento

Barramento AGP (Accelered Graphics Port) criou três tipos de barramento de entrada e saída operando a taxas distintas:

ISA 8MHz;

PCI 33 MHz;

AGP 66 MHz.

Resumo:

Barramento de 8 bits (IBM PC original);

Industry Standard Architecture (ISA) 8 ou 16 bits;

Micro Channel Architecture (MCA);

Extended ISA (EISA);

Vesa Local Bus (VLB) 32 ou 64 bits;

Peripheral Component Interconnect (PCI) 32 ou 64 bits;

PCMCIA (portáteis).

Anderson Moreira

Arquitetura de Computadores

Comparativo

Comparativo Nome Data Barramento Freqüênci Endereça   Taxa (bits) a (MHz) mento

Nome

Data

Barramento

Freqüênci

Endereça

 

Taxa

(bits)

a (MHz)

mento

Transferência

PC bus

1981

8

4,77

1

MB

2,38 MB/s

ISA

1984

16

8,33

16

MB

 

16

MB/s

Micro Channel (MCA)

1987

32

10

16

MB

 

32

MB/s

EISA

1988

32

8,33

4

GB

 

33

MB/s

VL Bus

1992

32/64

50

4

GB

80

a 133 MB/s

PCI

1992

32/64

33

4

GB

50

a 264 MB/s

PC card

1990

16

8

64

MB

 

20

MB/s

CardBus

1994

32

33

4

GB

 

60

MB/s

AGP

1996

32/64

66

4

GB

~534 MB/s

Anderson Moreira

Arquitetura de Computadores

Outros Barramentos (1)

USB

Outros Barramentos (1) • USB – Não é exatamente um barramento de expansão, mas sim uma

Não é exatamente um barramento de expansão, mas sim uma serial;

Taxa de 1,5 a 12 MB/s.

expansão, mas sim uma serial; – Taxa de 1,5 a 12 MB/s. Fonte: us.fujitsu.com/micro/usb Anderson Moreira
expansão, mas sim uma serial; – Taxa de 1,5 a 12 MB/s. Fonte: us.fujitsu.com/micro/usb Anderson Moreira

Fonte: us.fujitsu.com/micro/usb

Anderson Moreira

Arquitetura de Computadores

Outros Barramentos (2)

IrDA

Outros Barramentos (2) • IrDA – ( Infrared Developers Association ), é a versão sem fios

(Infrared Developers Association), é a versão sem fios da serial RS

232 inclusive com as mesmas taxas de transferências:

576 KB/s a 4 MB/s

as mesmas taxas de transferências: • 576 KB/s a 4 MB/s Fonte: http://tscherwitschke.de Anderson Moreira Arquitetura

Fonte: http://tscherwitschke.de

Anderson Moreira

Arquitetura de Computadores

Outros Barramentos (3)

Macintosh

Outros Barramentos (3) • Macintosh – Também conhecido como NuBus, aparecem em duas versões a 87

Também conhecido como NuBus, aparecem em duas versões a 87 e a 90;

Barramento local é conhecido como PDS (Processor Direct Slot);

Presente em todos os Mac menos o Power Book;

Em 95 começou a utilizar IDE e PCI, mas apenas com um único disco.

– Em 95 começou a utilizar IDE e PCI, mas apenas com um único disco. Anderson

Anderson Moreira

Arquitetura de Computadores

Exercícios

Exercícios • Procure informações relacionadas aos seguintes barramentos: – PCI-X – SATA – Firewire –

Procure informações relacionadas aos seguintes barramentos:

PCI-X

SATA

Firewire

Fibre Channel blades

InfiniBand

Anderson Moreira

Arquitetura de Computadores

Chipsets

Chipsets • Circuito integrado a placa-mãe responsável em controlar as transações de dados entre os diversos

Circuito integrado a placa-mãe responsável em controlar as transações de dados entre os diversos barramentos;

Uma placa-mãe pode ter algumas características do chipset ou não;

Maiores variações de chipsets ocorrem em barramentos do processador e da PCI;

Exemplos:

Anderson Moreira

Arquitetura de Computadores

Exercícios

Exercícios • Determine um comparativo entre os principais chipsets da AMD e da Intel; • Explique

Determine um comparativo entre os principais chipsets da AMD e da Intel;

Explique os chipsets encontrados na sua máquina e as características;

Procure em bibliografia especializada os comandos de E/S que um módulo de E/S pode receber quando é endereçado por um processador.

Anderson Moreira

Arquitetura de Computadores

Chipsets

Chipsets Anderson Moreira Arquitetura de Computadores
Chipsets Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Periféricos – Controle direto do processador

Periféricos – Controle direto do processador • Processador interagi diretamente com o dispositivo a cada

Processador interagi diretamente com o dispositivo a cada transferência de um byte ou palavra;

Podem ser:

Polling → também conhecido como teste de estado. Processador pergunta para cada dispositivo se está apto para receber ou transmitir uma unidade de informação.

Interrupção → O processador é interrompido quando o periférico estiver apto a transmitir ou receber dados.

Processador controla a transferência byte a byte (palavra a palavra) usando os registradores internos e suas portas de E/S.

Anderson Moreira

Arquitetura de Computadores

Periféricos – Controle direto do processador

Periféricos – Controle direto do processador Anderson Moreira Arquitetura de Computadores
Periféricos – Controle direto do processador Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Periféricos – Controle direto do processador

Exemplo:

Assembly :

CMP

R0, #0x09

MOVEQ

R0, #0x20

CMP

R0, #0x0D

MOVEQ

R0, #0x20

CMP

R0, #0x0a

MOVEQ

R0, #0x20

CMP

R0, #0x20

MOVEQ

R0, #0x5B

BEQ

load

Anderson Moreira

Arquitetura de Computadores

R0, #0x20 CMP R0, #0x20 MOVEQ R0, #0x5B BEQ load Anderson Moreira Arquitetura de Computadores

Interrupções

Interrupções • No atual contexto da arquitetura de computadores e projetistas de software o nome interrupções

No atual contexto da arquitetura de computadores e projetistas de software o nome interrupções podem ter o contexto de software (exceptions, traps);

Para periféricos o termo interrupção é usado ao pé da letra;

Podem ser:

Por hardware

Por software

Anderson Moreira

Arquitetura de Computadores

Interrupções de hardware (1)

Interrupções de hardware (1) • Também conhecidas como interrupções externas ao processador ou por

Também conhecidas como interrupções externas ao processador ou por interrupções de periféricos;

Características:

Sinal de hardware externo e enviado ao processador. Indica que um evento independente do programa sendo executado ocorreu e precisa da atenção do processador. Esse sinal é conhecido como requisição de interrupção ou pedido de interrupção; Pedido de interrupção é assíncrono, e não depende da execução do programa que está usando processador. Ocorrência foge do controle do programa sendo executado;

Anderson Moreira

Arquitetura de Computadores

Interrupção de hardware (2)

Interrupção de hardware (2) – Hardware de controle de interrupção, se habilitado, permite ao processador completar

Hardware de controle de interrupção, se habilitado, permite ao processador completar a execução da instrução corrente e então força o processador a desviar para uma rotina que atende a interrupção (manipulador de interrupção ou tratador de

interrupção interrupt handler);

No final da rotina de tratamento de interrupção (ISR), um retorno especial, é executado. Garante que o programa interrompido continue de onde parou.

Atenção! O evento de acionamento da interrupção é assíncrono mas não imprevisível (existem rotinas especiais para tratá-lo)

Anderson Moreira

Arquitetura de Computadores

Fluxo de tratamento

Hardware

Fluxo de tratamento H a r d w a r e Software (Rotina de serviço) Dispositivo

Software (Rotina de serviço)

H a r d w a r e Software (Rotina de serviço) Dispositivo de controle ou
Dispositivo de controle ou outro sistema de hardware que permita ativar uma interrupção Salva informações
Dispositivo de controle ou
outro sistema de hardware
que permita ativar uma interrupção
Salva informações remanescentes
sobre o estado do processo
Processador termina a execução da
instrução corrente
Processa a interrupção
Processador reconhece sinal de
interrupção
Restaura a informação do estado do
processo
Processador coloca PSW e PC na pilha
de controle
Restaura o velho PSW e PC
Processador carrega novo valor do PC,
baseado na interrupção

Anderson Moreira

Arquitetura de Computadores

PSW e PC Processador carrega novo valor do PC, baseado na interrupção Anderson Moreira Arquitetura de

Interrupções de Software (traps) (1)

Interrupções de Software ( traps ) (1) • No sentido convencional: “ Interrupção é caracterizada como

No sentido convencional: “Interrupção é caracterizada como a ocorrência de um sinal de hardware gerado externamente ao processador e enviado ao mesmo. O mecanismo de interrupção é a forma empregada pelo processador para detectar e tratar esse sinal.” (Weber, 2008)

Quando esses sinais são síncronos e condicionados a execução de determinada programação, dizemos que são traps;

Interrupção de software é a execução de uma instrução que provoca a ativação do mecanismo de tratamento da interrupção.

Anderson Moreira

Arquitetura de Computadores

Interrupções de Software (traps) (2)

Interrupções de Software ( traps ) (2) Identifier Description 0 Divide error   1 Debug exception

Identifier

Description

0

Divide error

 

1

Debug exception

2

Non-maskable interrupt

3

Breakpoint

4

Overflow

5

Bounds check

6

Invalid opcode

7

Coprocessor not available

8

Double fault

9

(reserved)

10

Invalid TSS

11

Segment not present

12

Stack exception

13

General protection fault

14

Page fault

15

(reserved)

16

Coprocessor error

17

alignment error (80486)

18-31

(reserved)

Exemplo:

Comando kill do Linux que envia um sinal a um processo.

Ou a tabela de vetores de interrupções

Anderson Moreira

32-255

Arquitetura de Computadores

External (HW) interrupts

Interrupções do processador (Exceptions)

Interrupções do processador ( Exceptions ) • Condicionadas a execução de uma exceção, em que habilita

Condicionadas a execução de uma exceção, em que habilita o processo de ativação do mecanismo de tratamento de interrupções;

Síncronas ao programa sendo executado;

Exemplo:

Overflow na execução de uma operação matemática;

Tratamento de erros por falhas de hardware.

Anderson Moreira

Arquitetura de Computadores

Prioridades (1)

Prioridades (1) • Deve ter um critério de escolha no momento que tem vários pedidos de

Deve ter um critério de escolha no momento que tem vários pedidos de interrupções do processador;

Solução: Assinalar a cada evento uma determinada prioridade (qual dispositivo está usando, quanto

tempo, etc

);

No IBM PC as prioridades tem valores fixos para pedidos de interrupção de hardware:

Ex.: Interrupções de teclado e mouse tem prioridades sobre controladores de disco.

Anderson Moreira

Arquitetura de Computadores

Prioridades (2) – IBM PC e XT

 
Prioridades (2) – IBM PC e XT  
 
 

Linha de Pedido

Vetor (decimal)

Vetor

Utilização

 

(hexadecimal)

IRQ0

8

08

timer

IRQ1

9

09

teclado

IRQ2

10

0A

livre

IRQ3

11

0B

COM2

IRQ4

12

0C

COM1

IRQ5

13

0D

livre

IRQ6

14

0E

Controladora

disquete

IRQ7

15

0F

LPT1

Anderson Moreira

Arquitetura de Computadores

Prioridades (3) – IBM AT

 
Prioridades (3) – IBM AT  
 
 

Linha de Pedido

Vetor (decimal)

Vetor (hexadecimal)

Utilização

IRQ0

8

08

timer

IRQ1

9

09

teclado

IRQ2

10

0A

Acesso a PIC

IRQ8

112

70

Atualização da hora na BIOS

IRQ9

113

71

Vídeo na PS/2 ou rede

IRQ10

114

72

Controladora deCD

IRQ11

115

73

Controladora SCSI

IRQ12

116

74

Mouse na PS/2

IRQ13

117

75

co-processador

IRQ14

118

76

Controlador de HD

IRQ15

119

77

Uso geral

IRQ3

11

0B

COM2 e COM4

IRQ4

12

0C

COM1 E COM 3

IRQ5

13

0D

Placa de som

IRQ6

14

0E

Controladora de disquete

IRQ7

15

0F

LTP1

Anderson Moreira

Arquitetura de Computadores

Mascaramento de Interrupções

Mascaramento de Interrupções • Existem situações em que o processador não atende as requisições; • Para

Existem situações em que o processador não atende as requisições;

Para ignorá-los o processador cria um mascaramento das interrupções;

Pode ser feito através de flags:

Modifica a chamada do sinal para enganar o dispositivo.

Ou com o uso de instruções críticas.

Anderson Moreira

Arquitetura de Computadores

Revisão

Revisão Anderson Moreira Arquitetura de Computadores
Revisão Anderson Moreira Arquitetura de Computadores
Revisão Anderson Moreira Arquitetura de Computadores

Anderson Moreira

Arquitetura de Computadores

Bibliografia

Bibliografia • Arquitetura de Computadores Pessoais, Raul Weber, 2ª edição; • Arquitetura de Computadores, Andrew

Arquitetura de Computadores Pessoais, Raul Weber, 2ª edição;

Arquitetura de Computadores, Andrew S. Tannembaum, 8ª edição;

Fundamentos de Arquitetura de Computadores, Saib e Weber, 4ª edição;

Anderson Moreira

Arquitetura de Computadores

Dúvidas
Dúvidas

© Copyright 2010, IFPE. Creative Commons BY-SA 3.0 license Latest update: 28 de Fev de 2011,

Document sources, updates:

http://dase.ifpe.edu.br/~alsm

Anderson Moreira

de Fev de 2011, Document sources, updates: http://dase.ifpe.edu.br/~alsm Anderson Moreira Arquitetura de Computadores 6 0

Arquitetura de Computadores

60