Aula 3 – Dispositivos de Entrada e Saída - Site SIEP-PE - IFPE
Aula 3 – Dispositivos de Entrada e Saída - Site SIEP-PE - IFPE Aula 3 – Dispositivos de Entrada e Saída - Site SIEP-PE - IFPE
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
- Page 2 and 3: O que fazer com essa apresentação
- Page 4 and 5: Conceitos Básicos • Termos de in
- Page 6 and 7: Esquema de Entrada e Saída process
- Page 8 and 9: Exemplos de E/S Teclado: • Conjun
- Page 10 and 11: Exemplos de E/S Mouse: Anderson Mor
- Page 12 and 13: Exemplos de E/S • O chamado subsi
- Page 14 and 15: Exemplos de E/S • Formação de i
- Page 16 and 17: Exercícios 1. Pesquise o que signi
- Page 18 and 19: Outros exemplos • Impressora - É
- Page 20 and 21: Periféricos - Acesso Direto à Mem
- Page 22 and 23: Barramentos (bus) • Elementos de
- Page 24 and 25: Barramentos (conceitos) • O barra
- Page 26 and 27: Barramento Tradicional (2) E/S Inte
- Page 28 and 29: Bridges • Os barramentos de entra
- Page 30 and 31: Barramento Tradicional (3) • Util
- Page 32 and 33: Barramento Local (1) E/S Interna (b
- Page 34 and 35: Esquema barramento P5 Cache nível
- Page 36 and 37: Comparativo Nome Data Barramento (b
- Page 38 and 39: Outros Barramentos (2) • IrDA - (
- Page 40 and 41: Exercícios • Procure informaçõ
- Page 42 and 43: Exercícios • Determine um compar
- Page 44 and 45: Periféricos - Controle direto do p
- Page 46 and 47: Periféricos - Controle direto do p
- Page 48 and 49: Interrupções de hardware (1) •
- Page 50 and 51: Fluxo de tratamento Hardware Dispos
<strong>Aula</strong> 3 <strong>–</strong> <strong>Dispositivos</strong> <strong>de</strong> <strong>Entrada</strong> e <strong>Saída</strong><br />
An<strong>de</strong>rson L. S. Moreira<br />
an<strong>de</strong>rson.moreira@recife.ifpe.edu.br<br />
http://dase.ifpe.edu.br/~alsm<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores 1
O que fazer com essa apresentação<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores 2
Agenda<br />
• Conceitos básicos;<br />
• Esquema <strong>de</strong> E/S;<br />
• Periféricos;<br />
• Barramento tradicional;<br />
• Barramento local;<br />
• Bridges;<br />
• Chipset;<br />
• Interrupções.<br />
© Copyright 2010, IF<strong>PE</strong>.<br />
Creative Commons BY-SA 3.0 license<br />
Latest update: 28 <strong>de</strong> Fev <strong>de</strong> 2011,<br />
Document sources, updates:<br />
http://dase.ifpe.edu.br/~alsm<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Conceitos Básicos<br />
• Termos <strong>de</strong> interesse:<br />
<strong>–</strong> Periférico → qualquer dispositivo conectado a um<br />
computador que permita a comunicação ou interação do<br />
computador com o mundo externo. (<strong>Entrada</strong>, <strong>Saída</strong> e<br />
<strong>Entrada</strong>/<strong>Saída</strong>).<br />
<strong>–</strong> Interface → componente <strong>de</strong> hardware localizado entre o<br />
processador e um ou mais periféricos, função coor<strong>de</strong>nação<br />
<strong>de</strong> transferência <strong>de</strong> dados.<br />
• Recebimento dos dados e comandos enviados pelo<br />
processador ao periférico;<br />
• Envio ao processador do estado (status) do dispositivo;<br />
• Manipulação e transformação dos dados e sinais <strong>de</strong><br />
uma forma que seja compatível com o periférico;<br />
• Geração <strong>de</strong> sinais <strong>de</strong> controle e temporização durante a<br />
transferência <strong>de</strong> dados e estado.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Conceitos Básicos<br />
<strong>–</strong> Controlador → Componente <strong>de</strong> hardware <strong>de</strong> uma interface<br />
que realiza todo o controle necessário para a transferência<br />
<strong>de</strong> dados;<br />
<strong>–</strong> Driver → Conjunto <strong>de</strong> rotinas encarregadas da<br />
comunicação do processador com a controladora e/ou<br />
interface do periférico;<br />
<strong>–</strong> Porta <strong>de</strong> E/S → Correspon<strong>de</strong> a um en<strong>de</strong>reço no sistema <strong>de</strong><br />
E/S do processador. Assim como o processador tem uma<br />
<strong>de</strong>terminada capacida<strong>de</strong> <strong>de</strong> en<strong>de</strong>reçamento <strong>de</strong> memória,<br />
ele também tem uma certa gama <strong>de</strong> en<strong>de</strong>reços <strong>de</strong>stinados<br />
a portas <strong>de</strong> E/S;<br />
<strong>–</strong> Barramento → Conjunto <strong>de</strong> fios que transportam sinais <strong>de</strong><br />
dados, en<strong>de</strong>reço e controle<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Esquema <strong>de</strong> <strong>Entrada</strong> e <strong>Saída</strong><br />
processador<br />
controlador<br />
portas<br />
Drivers <strong>de</strong> dispositivos<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
periférico
Periféricos<br />
• Periféricos existem em gran<strong>de</strong> número;<br />
• Entram e saem <strong>de</strong> moda <strong>de</strong> acordo com a evolução<br />
tecnológica:<br />
<strong>–</strong> ISA, PCI, USB, PCI-X<br />
• Tipos <strong>de</strong> transferência <strong>de</strong> dados:<br />
<strong>–</strong> Por controle direto do processador;<br />
<strong>–</strong> Por acesso direto a memória (DMA).<br />
• Po<strong>de</strong>m co-existir no computador sem um anular o outro tipo.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
Teclado:<br />
• Conjunto <strong>de</strong> chaves elétricas cada uma acionada por uma tecla. A<br />
cada chave <strong>de</strong>ssas correspon<strong>de</strong> um código binário que é enviado<br />
para a placa-mãe e esta sabe como tratar esse código <strong>de</strong> acordo<br />
com o mo<strong>de</strong>lo do teclado ou com o software que está em uso.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
Como funciona o teclado:<br />
• Tecla é acionada ela gera um scan co<strong>de</strong> (geração <strong>de</strong> um código<br />
numérico associado a tecla);<br />
• Quando a tecla é liberada gera um novo código.<br />
• Obs.: Teclado não reconhece caractere ou símbolo associado (tabela<br />
ASCII não interessa!!)<br />
• Modos:<br />
<strong>–</strong> 1 <strong>–</strong> encontrado no teclado <strong>de</strong> 83 teclas, acionamento e liberação<br />
gera o mesmo código;<br />
<strong>–</strong> 2 <strong>–</strong> encontrado no teclado <strong>de</strong> 84 teclas, acionamento gera um<br />
código <strong>de</strong> varredura em um byte. A liberação gera o mesmo<br />
código porém precedido <strong>de</strong> F0H;<br />
<strong>–</strong> 3 <strong>–</strong> introduzido no teclado <strong>de</strong> 101 teclas, possui os mesmos<br />
código do modo 2 porém tem a velocida<strong>de</strong> aprimorada.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
Mouse:<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
Sistema <strong>de</strong> ví<strong>de</strong>o:<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
• O chamado subsistema <strong>de</strong> ví<strong>de</strong>o do computador constitui-se<br />
<strong>de</strong> uma das partes mais complexas;<br />
• Requer um processador específico para os gráficos a serem<br />
exibidos, esses gráficos processados são armazenados na<br />
chamada memória <strong>de</strong> ví<strong>de</strong>o que recentemente passou a ser<br />
uma parte da RAM nas configurações mais populares;<br />
• Acontece <strong>de</strong>vido a novas tecnologias <strong>de</strong> barramento (também<br />
a serem vistas mais adiante). Finalmente a imagem<br />
processada e armazenada em memória específica é exibida<br />
em um monitor <strong>de</strong> ví<strong>de</strong>o, que por sua vez po<strong>de</strong> ser baseado<br />
na tecnologia <strong>de</strong> raios catódicos (CRT) ou <strong>de</strong> cristal líquido<br />
(LCD).<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
• Objetivo geral do monitor é criar através da emissão <strong>de</strong> luz uma<br />
imagem que seja réplica do que o olho humano veria se estivesse<br />
observando diretamente;<br />
• O olho humano é sensível a uma pequena faixa <strong>de</strong> espectro<br />
eletromagnético, com uma frequencia central da or<strong>de</strong>m <strong>de</strong> 5x10E14<br />
Hz<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exemplos <strong>de</strong> E/S<br />
• Formação <strong>de</strong> imagem na tela:<br />
<strong>–</strong> Um monitor apresenta resolução <strong>de</strong> 3x4 ou 0,75. Esta é a relação<br />
<strong>de</strong>finida por normas <strong>de</strong> transmissões <strong>de</strong> televisões;<br />
<strong>–</strong> Um filme <strong>de</strong> cinema tem proporção <strong>de</strong> 2x3 ou 0,67;<br />
<strong>–</strong> Um sistema HD tem relação <strong>de</strong> 3x5 ou 0,60;<br />
<strong>–</strong> De acordo com a estética grega a relação para beleza superior é<br />
a solução da equação x+1=1/x. Uma proposição <strong>de</strong> solução é<br />
(sqrt(5)-1)/2 ~ 0,618;<br />
<strong>–</strong> Isso é o que <strong>de</strong>ve ser levado em consi<strong>de</strong>ração ao tratar <strong>de</strong><br />
composição <strong>de</strong> imagem.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Formação <strong>de</strong> imagem<br />
• Em um monitor CRT:<br />
<strong>–</strong> Controle da emissão <strong>de</strong> feixe <strong>de</strong> elétrons que varre a tela<br />
estimulando um material fosforescente <strong>de</strong>positado sobre a<br />
mesma;<br />
<strong>–</strong> Esse material emite luz. Cada ponto emissor <strong>de</strong> luz é chamado<br />
<strong>de</strong> pixel;<br />
<strong>–</strong> O feixe <strong>de</strong> elétrons varre a tela da esquerda para direita e do<br />
topo para baixo numa velocida<strong>de</strong> <strong>de</strong> aproximadamente 50 a 70<br />
telas por minuto;<br />
<strong>–</strong> No final <strong>de</strong> cada linha o feixe é apagado e volta para inicar uma<br />
nova varredura<br />
• Em um monitor LCD:<br />
<strong>–</strong> Depen<strong>de</strong> da tecnologia;<br />
<strong>–</strong> Feixe <strong>de</strong> luz é emitido e sofre uma torção para formar as<br />
imagens.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exercícios<br />
1. Pesquise o que significa interrupção <strong>de</strong> teclado e como essa<br />
funciona.<br />
2. A BIOS tem uma função muito importante no tratamento do teclado.<br />
Que papel é esse? Explique o funcionamento sucintamente.<br />
3. Um sistema <strong>de</strong> cor em um <strong>de</strong>terminado sistema po<strong>de</strong> ser<br />
representado <strong>de</strong> diversas formas. Explique os padrões <strong>de</strong> ví<strong>de</strong>o RGB,<br />
CMYK, HSB e HSL.<br />
4. Explique os seguintes padrões <strong>de</strong> tecnologias <strong>de</strong> monitores:<br />
1. LCD <strong>–</strong> PMLCD<br />
2. LCD <strong>–</strong> TNLCD<br />
3. ACPDP <strong>–</strong> AC plasma display panel<br />
4. LED<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Outros exemplos<br />
• Scanner<br />
<strong>–</strong> Esse aparelho é composto por uma fonte <strong>de</strong> luz que é emitida<br />
sobre o papel, ou objeto a ser “escaneado” e um sensor que<br />
capta os reflexos <strong>de</strong>ssa imagem.<br />
<strong>–</strong> Esse sensor ajuda a montar a imagem na memória do<br />
computador na forma <strong>de</strong> um arquivo gráfico ou simplesmente<br />
um padrão <strong>de</strong> barras a ser convertido em um número.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Outros exemplos<br />
• Impressora<br />
<strong>–</strong> É o dispositivo responsável por levar ao papel tudo que se<br />
produz em termos <strong>de</strong> textos e imagens <strong>de</strong>ntro <strong>de</strong> uma UCP.<br />
<strong>–</strong> Existem diversas tecnologias <strong>de</strong> impressoras, <strong>de</strong>ntre elas tem-se:<br />
as <strong>de</strong> impacto, as jato <strong>de</strong> tintas, as <strong>de</strong> cera e as a laser.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Outros exemplos<br />
• <strong>Dispositivos</strong> <strong>de</strong> Armazenamento<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Periféricos <strong>–</strong> Acesso Direto à Memória<br />
• Controlador faz o trabalho <strong>de</strong> transferência <strong>de</strong> blocos <strong>de</strong> dados entre<br />
periféricos e memória;<br />
• Processador não abandona suas tarefas;<br />
<strong>–</strong> Apenas inicializa o controlador e dispara as ativida<strong>de</strong>s <strong>de</strong><br />
transferências<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Periféricos<br />
ATENÇÃO!!<br />
• Periférico é como um equipamento eletrônico conectado por um<br />
cabo ou barramento <strong>de</strong> E/S a CPU e que é usado para transferir<br />
informação <strong>de</strong>/ou para este.<br />
• De acordo com esta <strong>de</strong>finição, a memória não é<br />
consi<strong>de</strong>rada um periférico pois está ligada ao<br />
barramento <strong>de</strong> sistema e não a um barramento <strong>de</strong><br />
E/S.<br />
• Mas afinal o que é barramento <strong>de</strong> sistema e <strong>de</strong> E/S???<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramentos (bus)<br />
• Elementos <strong>de</strong> hardware que permitem a interconexão entre<br />
componentes;<br />
• Po<strong>de</strong>m ser seriais ou paralelos:<br />
<strong>–</strong> Internamente nos computadores são paralelos.<br />
• Cada sistema possui uma série <strong>de</strong> barramentos:<br />
<strong>–</strong> Internos ao microprocessador (interliga registradores, FPU,<br />
caches internas);<br />
<strong>–</strong> Barramentos locais (localizados na placa-mãe no<br />
microprocessador e a memória);<br />
<strong>–</strong> Barramentos <strong>de</strong> expansão (colocadas placas controladoras<br />
e interfaces);<br />
<strong>–</strong> Barramento para periféricos (on<strong>de</strong> as unida<strong>de</strong>s periféricas<br />
estão ligadas)<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramentos (conceitos)<br />
• Um barramento ou bus consiste, na sua forma mais simples,<br />
num número <strong>de</strong> linhas elétricas através das quais sinais, e<br />
<strong>de</strong>sta forma também dados, são transferidos;<br />
• Um PC tem 3 barramentos:<br />
• <strong>de</strong> dados,<br />
• <strong>de</strong> en<strong>de</strong>reços ,<br />
• <strong>de</strong> controle.<br />
• Estes barramentos permitem que a CPU comunique com a<br />
memória e os periféricos.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramentos (conceitos)<br />
• O barramento entre a CPU e a memória é chamado <strong>de</strong> barramento<br />
do sistema ou system bus.<br />
• O barramento entre a CPU e os outros componentes (os periféricos)<br />
é chamado <strong>de</strong> barramento <strong>de</strong> entrada-saída ou I/O bus.<br />
• Este barramento tem uma velocida<strong>de</strong> <strong>de</strong> transferência <strong>de</strong> dados<br />
inferior ao barramento do sistema.<br />
• Alguns tipos <strong>de</strong> barramentos <strong>de</strong> entrada-saída são:<br />
- ISA (Industry Standard Architecture) paralelo <strong>de</strong> 8 e 16 bits<br />
- EISA (Exten<strong>de</strong>d Industry Standard Architecture) paralelo <strong>de</strong> 32 bits<br />
- PCI (Peripheral component interconnect) paralelo <strong>de</strong> 32 ou 64 bits<br />
- VME (Versa Module Eurocard) paralelo <strong>de</strong> 32 bits.<br />
- AGP (Accelerated Graphics Port) para o adaptador gráfico. Paralelo <strong>de</strong> 32 bits.<br />
- USB (Universal serial bus) série.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramento Tradicional (1)<br />
• Utilizam controle único para todo o barramento;<br />
• As transferências eram divididas somente em dois tipos<br />
básicos:<br />
<strong>–</strong> De memória;<br />
<strong>–</strong> De E/S.<br />
• De memória é rápido, operando geralmente na mesma<br />
velocida<strong>de</strong> da memória;<br />
• De E/S conecta diversos periféricos distintos, po<strong>de</strong>ndo ser<br />
lentos ou rápidos. Aumento na taxa <strong>de</strong> transferência não irá<br />
beneficiá-los.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramento Tradicional (2)<br />
E/S Interna<br />
(built-in)<br />
Barramento do<br />
processador (rápido)<br />
Barramento <strong>de</strong> E/S<br />
(lento)<br />
Barramento <strong>de</strong><br />
memória (rápido)<br />
CPU<br />
Controlador<br />
<strong>de</strong> barramento<br />
Memória<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
Cache externa<br />
Barramento <strong>de</strong> E/S<br />
(lento)<br />
E/S Externa<br />
(conectores)
Bridges<br />
• Por causa da enorme “salada <strong>de</strong> frutas” <strong>de</strong> padrões a normalização <strong>de</strong><br />
barramentos para PC é um problema;<br />
• O atual PC possui vários barramento operando em diversas<br />
frequencias;<br />
• Solução para gerencia dos barramentos foram as pontes (bridges);<br />
• Circuito projetado para transportar dados entre barramentos<br />
diferentes.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Bridges<br />
• Os barramentos <strong>de</strong> entrada-saída po<strong>de</strong>m ser vistos como<br />
uma extensão do barramento do sistema;<br />
• Na placa-mãe o barramento <strong>de</strong> sistema termina em<br />
controladores que fazem uma ponte com os barramentos <strong>de</strong><br />
E/S.<br />
• Normalmente estes controladores são agrupados em chips<br />
chamados chipset.<br />
• Uma arquitetura comum consiste em dois chips chamados<br />
north e south bridge.<br />
• Ao barramento <strong>de</strong> entrada saída po<strong>de</strong>m ser conectados<br />
adaptadores <strong>de</strong> periféricos.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramento<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramento Tradicional (3)<br />
• Utilizados <strong>de</strong> 80 até meados dos anos 90;<br />
• Válido para barramentos ISA, EISA, MCA;<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramento Tradicional (4)<br />
• Com o surgimento das interfaces gráficas exigiu mais do sistema <strong>de</strong><br />
E/S;<br />
• Alguns recursos usavam o barramento do processador;<br />
• Barramento Local foi introduzido;<br />
• Exemplos: AGP, PCI, VLB...<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Barramento Local (1)<br />
E/S Interna<br />
(built-in)<br />
Barramento do<br />
processador (rápido)<br />
Barramento <strong>de</strong> E/S<br />
(lento)<br />
Barramento <strong>de</strong><br />
memória (rápido)<br />
CPU<br />
Controlador<br />
<strong>de</strong> barramento<br />
Memória<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
Barramento local<br />
E/S (rápido)<br />
Cache externa<br />
Barramento <strong>de</strong> E/S<br />
(lento)<br />
E/S Externa<br />
(conectores,<br />
vi<strong>de</strong>o, disco)<br />
E/S Externa<br />
(conectores)
Barramento Local (2)<br />
• O barramento Vesa Local Bus (VLB) tinha como<br />
objetivo básico permitir um acesso direto ao<br />
barramento do processador para transferências<br />
rápidas para dispositivos <strong>de</strong> ví<strong>de</strong>o;<br />
• Barramento PCI, criado pela Intel quando lançou o<br />
pentium;<br />
<strong>–</strong> Dois controladores distintos, um rápido PCI e<br />
outro lento ISA.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Esquema barramento P5<br />
Cache nível 2<br />
Controladoras IDE<br />
Memória CMOS e RTC<br />
Controlador <strong>de</strong> disquete<br />
Controlador <strong>de</strong> teclado<br />
Memória ROM-BIOS<br />
CPU Pentium<br />
Cache nível 1<br />
Controlador<br />
<strong>de</strong> barramento<br />
(Ponte norte)<br />
Controlador<br />
<strong>de</strong> barramento<br />
(Ponte sul)<br />
Super I/O<br />
(87307)<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
Processador<br />
66 a 266 MHz<br />
Barramento <strong>de</strong> memória<br />
16 MHz<br />
Barramento PCI<br />
25 a 33 MHz<br />
Barramento ISA<br />
8 MHz<br />
Barramento do processador<br />
50 a 66 MHz<br />
Conectores PCI<br />
Ví<strong>de</strong>o PCI<br />
Conectores ISA<br />
Portas seriais (COM)<br />
Paralelas (LPT)<br />
Mouse
Barramento Local (3)<br />
• Barramento AGP (Accelered Graphics Port) criou três tipos <strong>de</strong><br />
barramento <strong>de</strong> entrada e saída operando a taxas distintas:<br />
<strong>–</strong> ISA 8MHz;<br />
<strong>–</strong> PCI 33 MHz;<br />
<strong>–</strong> AGP 66 MHz.<br />
• Resumo:<br />
<strong>–</strong> Barramento <strong>de</strong> 8 bits (IBM PC original);<br />
<strong>–</strong> Industry Standard Architecture (ISA) 8 ou 16 bits;<br />
<strong>–</strong> Micro Channel Architecture (MCA);<br />
<strong>–</strong> Exten<strong>de</strong>d ISA (EISA);<br />
<strong>–</strong> Vesa Local Bus (VLB) 32 ou 64 bits;<br />
<strong>–</strong> Peripheral Component Interconnect (PCI) 32 ou 64 bits;<br />
<strong>–</strong> PCMCIA (portáteis).<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Comparativo<br />
Nome Data Barramento<br />
(bits)<br />
Freqüênci<br />
a (MHz)<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
En<strong>de</strong>reça<br />
mento<br />
Taxa<br />
Transferência<br />
PC bus 1981 8 4,77 1 MB 2,38 MB/s<br />
ISA 1984 16 8,33 16 MB 16 MB/s<br />
Micro Channel<br />
(MCA)<br />
1987 32 10 16 MB 32 MB/s<br />
EISA 1988 32 8,33 4 GB 33 MB/s<br />
VL Bus 1992 32/64 50 4 GB 80 a 133 MB/s<br />
PCI 1992 32/64 33 4 GB 50 a 264 MB/s<br />
PC card 1990 16 8 64 MB 20 MB/s<br />
CardBus 1994 32 33 4 GB 60 MB/s<br />
AGP 1996 32/64 66 4 GB ~534 MB/s
Outros Barramentos (1)<br />
• USB<br />
<strong>–</strong> Não é exatamente um barramento <strong>de</strong> expansão, mas sim uma<br />
serial;<br />
<strong>–</strong> Taxa <strong>de</strong> 1,5 a 12 MB/s.<br />
Fonte: us.fujitsu.com/micro/usb<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Outros Barramentos (2)<br />
• IrDA<br />
<strong>–</strong> (Infrared Developers Association), é a versão sem fios da serial RS<br />
232 inclusive com as mesmas taxas <strong>de</strong> transferências:<br />
• 576 KB/s a 4 MB/s<br />
Fonte: http://tscherwitschke.<strong>de</strong><br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Outros Barramentos (3)<br />
• Macintosh<br />
<strong>–</strong> Também conhecido como NuBus, aparecem em duas versões a 87<br />
e a 90;<br />
<strong>–</strong> Barramento local é conhecido como PDS (Processor Direct Slot);<br />
<strong>–</strong> Presente em todos os Mac menos o Power Book;<br />
<strong>–</strong> Em 95 começou a utilizar IDE e PCI, mas apenas com um único<br />
disco.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exercícios<br />
• Procure informações relacionadas aos seguintes barramentos:<br />
<strong>–</strong> PCI-X<br />
<strong>–</strong> SATA<br />
<strong>–</strong> Firewire<br />
<strong>–</strong> Fibre Channel bla<strong>de</strong>s<br />
<strong>–</strong> InfiniBand<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Chipsets<br />
• Circuito integrado a placa-mãe responsável em controlar as<br />
transações <strong>de</strong> dados entre os diversos barramentos;<br />
• Uma placa-mãe po<strong>de</strong> ter algumas características do chipset ou não;<br />
• Maiores variações <strong>de</strong> chipsets ocorrem em barramentos do<br />
processador e da PCI;<br />
• Exemplos:<br />
<strong>–</strong> http://www.intel.com/products/<strong>de</strong>sktop/chipsets/in<strong>de</strong>x.htm<br />
<strong>–</strong> http://en.wikipedia.org/wiki/List_of_Intel_chipsets<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Exercícios<br />
• Determine um comparativo entre os principais chipsets da AMD e da<br />
Intel;<br />
• Explique os chipsets encontrados na sua máquina e as<br />
características;<br />
• Procure em bibliografia especializada os comandos <strong>de</strong> E/S que um<br />
módulo <strong>de</strong> E/S po<strong>de</strong> receber quando é en<strong>de</strong>reçado por um<br />
processador.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Chipsets<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Periféricos <strong>–</strong> Controle direto do processador<br />
• Processador interagi diretamente com o dispositivo a cada<br />
transferência <strong>de</strong> um byte ou palavra;<br />
• Po<strong>de</strong>m ser:<br />
<strong>–</strong> Polling → também conhecido como teste <strong>de</strong> estado.<br />
Processador pergunta para cada dispositivo se está apto<br />
para receber ou transmitir uma unida<strong>de</strong> <strong>de</strong> informação.<br />
<strong>–</strong> Interrupção → O processador é interrompido quando o<br />
periférico estiver apto a transmitir ou receber dados.<br />
• Processador controla a transferência byte a byte (palavra a<br />
palavra) usando os registradores internos e suas portas <strong>de</strong><br />
E/S.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Periféricos <strong>–</strong> Controle direto do processador<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Periféricos <strong>–</strong> Controle direto do processador<br />
• Exemplo:<br />
<strong>–</strong> Assembly :<br />
CMP R0, #0x09<br />
MOVEQ R0, #0x20<br />
CMP R0, #0x0D<br />
MOVEQ R0, #0x20<br />
CMP R0, #0x0a<br />
MOVEQ R0, #0x20<br />
CMP R0, #0x20<br />
MOVEQ R0, #0x5B<br />
BEQ load<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Interrupções<br />
• No atual contexto da arquitetura <strong>de</strong> computadores e<br />
projetistas <strong>de</strong> software o nome interrupções po<strong>de</strong>m<br />
ter o contexto <strong>de</strong> software (exceptions, traps);<br />
• Para periféricos o termo interrupção é usado ao pé<br />
da letra;<br />
• Po<strong>de</strong>m ser:<br />
<strong>–</strong> Por hardware<br />
<strong>–</strong> Por software<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Interrupções <strong>de</strong> hardware (1)<br />
• Também conhecidas como interrupções externas ao<br />
processador ou por interrupções <strong>de</strong> periféricos;<br />
• Características:<br />
<strong>–</strong> Sinal <strong>de</strong> hardware externo e enviado ao processador. Indica que<br />
um evento in<strong>de</strong>pen<strong>de</strong>nte do programa sendo executado ocorreu<br />
e precisa da atenção do processador. Esse sinal é conhecido<br />
como requisição <strong>de</strong> interrupção ou pedido <strong>de</strong> interrupção;<br />
<strong>–</strong> Pedido <strong>de</strong> interrupção é assíncrono, e não <strong>de</strong>pen<strong>de</strong> da execução<br />
do programa que está usando processador. Ocorrência foge do<br />
controle do programa sendo executado;<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Interrupção <strong>de</strong> hardware (2)<br />
<strong>–</strong> Hardware <strong>de</strong> controle <strong>de</strong> interrupção, se habilitado, permite ao<br />
processador completar a execução da instrução corrente e então<br />
força o processador a <strong>de</strong>sviar para uma rotina que aten<strong>de</strong> a<br />
interrupção (manipulador <strong>de</strong> interrupção ou tratador <strong>de</strong><br />
interrupção <strong>–</strong> interrupt handler);<br />
<strong>–</strong> No final da rotina <strong>de</strong> tratamento <strong>de</strong> interrupção (ISR), um retorno<br />
especial, é executado. Garante que o programa interrompido<br />
continue <strong>de</strong> on<strong>de</strong> parou.<br />
• Atenção! O evento <strong>de</strong> acionamento da interrupção é<br />
assíncrono mas não imprevisível (existem rotinas especiais<br />
para tratá-lo)<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Fluxo <strong>de</strong> tratamento<br />
Hardware<br />
Dispositivo <strong>de</strong> controle ou<br />
outro sistema <strong>de</strong> hardware<br />
que permita ativar uma interrupção<br />
Processador termina a execução da<br />
instrução corrente<br />
Processador reconhece sinal <strong>de</strong><br />
interrupção<br />
Processador coloca PSW e PC na pilha<br />
<strong>de</strong> controle<br />
Processador carrega novo valor do PC,<br />
baseado na interrupção<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
Software<br />
(Rotina <strong>de</strong> serviço)<br />
Salva informações remanescentes<br />
sobre o estado do processo<br />
Processa a interrupção<br />
Restaura a informação do estado do<br />
processo<br />
Restaura o velho PSW e PC
Interrupções <strong>de</strong> Software (traps) (1)<br />
• No sentido convencional: “Interrupção é caracterizada como a<br />
ocorrência <strong>de</strong> um sinal <strong>de</strong> hardware gerado externamente ao<br />
processador e enviado ao mesmo. O mecanismo <strong>de</strong><br />
interrupção é a forma empregada pelo processador para<br />
<strong>de</strong>tectar e tratar esse sinal.” (Weber, 2008)<br />
• Quando esses sinais são síncronos e condicionados a<br />
execução <strong>de</strong> <strong>de</strong>terminada programação, dizemos que são<br />
traps;<br />
• Interrupção <strong>de</strong> software é a execução <strong>de</strong> uma instrução que<br />
provoca a ativação do mecanismo <strong>de</strong> tratamento da<br />
interrupção.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Interrupções <strong>de</strong> Software (traps) (2)<br />
• Exemplo:<br />
<strong>–</strong> Comando kill do Linux que<br />
envia um sinal a um<br />
processo.<br />
<strong>–</strong> Ou a tabela <strong>de</strong> vetores <strong>de</strong><br />
interrupções<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
I<strong>de</strong>ntifier Description<br />
0 Divi<strong>de</strong> error<br />
1 Debug exception<br />
2 Non-maskable interrupt<br />
3 Breakpoint<br />
4 Overflow<br />
5 Bounds check<br />
6 Invalid opco<strong>de</strong><br />
7 Coprocessor not available<br />
8 Double fault<br />
9 (reserved)<br />
10 Invalid TSS<br />
11 Segment not present<br />
12 Stack exception<br />
13 General protection fault<br />
14 Page fault<br />
15 (reserved)<br />
16 Coprocessor error<br />
17 alignment error (80486)<br />
18-31 (reserved)<br />
32-255 External (HW) interrupts
Interrupções do processador (Exceptions)<br />
• Condicionadas a execução <strong>de</strong> uma exceção, em que habilita o<br />
processo <strong>de</strong> ativação do mecanismo <strong>de</strong> tratamento <strong>de</strong> interrupções;<br />
• Síncronas ao programa sendo executado;<br />
• Exemplo:<br />
<strong>–</strong> Overflow na execução <strong>de</strong> uma operação matemática;<br />
<strong>–</strong> Tratamento <strong>de</strong> erros por falhas <strong>de</strong> hardware.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Priorida<strong>de</strong>s (1)<br />
• Deve ter um critério <strong>de</strong> escolha no momento que<br />
tem vários pedidos <strong>de</strong> interrupções do processador;<br />
• Solução: Assinalar a cada evento uma <strong>de</strong>terminada<br />
priorida<strong>de</strong> (qual dispositivo está usando, quanto<br />
tempo, etc...);<br />
• No IBM PC as priorida<strong>de</strong>s tem valores fixos para<br />
pedidos <strong>de</strong> interrupção <strong>de</strong> hardware:<br />
<strong>–</strong> Ex.: Interrupções <strong>de</strong> teclado e mouse tem<br />
priorida<strong>de</strong>s sobre controladores <strong>de</strong> disco.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Priorida<strong>de</strong>s (2) <strong>–</strong> IBM PC e XT<br />
Linha <strong>de</strong> Pedido Vetor (<strong>de</strong>cimal) Vetor<br />
(hexa<strong>de</strong>cimal)<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores<br />
Utilização<br />
IRQ0 8 08 timer<br />
IRQ1 9 09 teclado<br />
IRQ2 10 0A livre<br />
IRQ3 11 0B COM2<br />
IRQ4 12 0C COM1<br />
IRQ5 13 0D livre<br />
IRQ6 14 0E Controladora<br />
disquete<br />
IRQ7 15 0F LPT1
Priorida<strong>de</strong>s (3) <strong>–</strong> IBM AT<br />
Linha <strong>de</strong> Pedido Vetor (<strong>de</strong>cimal) Vetor (hexa<strong>de</strong>cimal) Utilização<br />
IRQ0 8 08 timer<br />
IRQ1 9 09 teclado<br />
IRQ2 10 0A Acesso a PIC<br />
IRQ8 112 70 Atualização da hora<br />
na BIOS<br />
IRQ9 113 71 Ví<strong>de</strong>o na PS/2 ou re<strong>de</strong><br />
IRQ10 114 72 Controladora <strong>de</strong>CD<br />
IRQ11 115 73 Controladora SCSI<br />
IRQ12 116 74 Mouse na PS/2<br />
IRQ13 117 75 co-processador<br />
IRQ14 118 76 Controlador <strong>de</strong> HD<br />
IRQ15 119 77 Uso geral<br />
IRQ3 11 0B COM2 e COM4<br />
IRQ4 12 0C COM1 E COM 3<br />
IRQ5 13 0D Placa <strong>de</strong> som<br />
IRQ6 14 0E Controladora <strong>de</strong><br />
disquete<br />
IRQ7 15 0F LTP1<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Mascaramento <strong>de</strong> Interrupções<br />
• Existem situações em que o processador não aten<strong>de</strong> as<br />
requisições;<br />
• Para ignorá-los o processador cria um mascaramento das<br />
interrupções;<br />
• Po<strong>de</strong> ser feito através <strong>de</strong> flags:<br />
<strong>–</strong> Modifica a chamada do sinal para enganar o dispositivo.<br />
• Ou com o uso <strong>de</strong> instruções críticas.<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Revisão<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Bibliografia<br />
• Arquitetura <strong>de</strong> Computadores Pessoais, Raul Weber, 2ª edição;<br />
• Arquitetura <strong>de</strong> Computadores, Andrew S. Tannembaum, 8ª edição;<br />
• Fundamentos <strong>de</strong> Arquitetura <strong>de</strong> Computadores, Saib e Weber, 4ª<br />
edição;<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores
Dúvidas<br />
© Copyright 2010, IF<strong>PE</strong>.<br />
Creative Commons BY-SA 3.0 license<br />
Latest update: 28 <strong>de</strong> Fev <strong>de</strong> 2011,<br />
Document sources, updates:<br />
http://dase.ifpe.edu.br/~alsm<br />
An<strong>de</strong>rson Moreira Arquitetura <strong>de</strong> Computadores 60