Aula 3 –Dispositivos de Entrada e Saída · 2016. 5. 5. · Anderson Moreira Arquitetura de...
Transcript of Aula 3 –Dispositivos de Entrada e Saída · 2016. 5. 5. · Anderson Moreira Arquitetura de...
Anderson Moreira Arquitetura de Computadores 1
Aula 3 – Dispositivos de Entrada e Saída
Anderson L. S. [email protected]
http://alsm.cc
Anderson Moreira Arquitetura de Computadores 2
O que fazer com essa apresentação
Anderson Moreira Arquitetura de Computadores
Agenda
• Conceitos dos principais dispositivos;• Esquema de E/S;• Barramento tradicional;• Barramento local;• Bridges;• Chipset;• Interrupções.
© Copyright 2010, IFPE.Creative Commons BY-SA 3.0 licenseLatest update: 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:
– 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
– 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
processador
periféricocontrolador
portas
Drivers de dispositivos
barramento
Anderson Moreira Arquitetura de Computadores
Como a CPU funciona?
Ao clicar num programa...
Controlador de memória
• Antigamente era feito pela CPU –PIO (programmed I/O)
• Atualmente é via DMA (ou bus mastering) (na Ponte sul)
Anderson Moreira Arquitetura de Computadores
Periféricos
• 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
TECLADOComo funciona?
Anderson Moreira Arquitetura de Computadores
Teclado
Teclado:
• 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
Teclado
Observe o vídeo:
• Códigos computacionais de caracteres são geralmente baseadas em caracteres ASCII (Código Padrão Americano para Intercâmbio de Informações ou American Standard Code for InformationInterchange).
Anderson Moreira Arquitetura de Computadores
Teclado
� Originalmente este era um código de sete bits, mas agora
oferece um conjunto de 255 caracteres usando oito bits;
� Teclados de computadores estão conectados à CPU através de
uma interface serial para que os códigos individuais são
transmitidos como strings binárias;
� O codificador do teclado (keyboard encoder) gera um código
único para cada tecla pressionada;
� Pressionamentos de tecla permitem comparações.
Anderson Moreira Arquitetura de Computadores
Teclado
Anderson Moreira Arquitetura de Computadores
Teclado
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.: Dentro do conjunto de caracteres os especiais que não são
exibidos: , recuo de linha...
• 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
MOUSEComo funciona?
Anderson Moreira Arquitetura de Computadores
Mouse
Mouse:
Anderson Moreira Arquitetura de Computadores
Mouse
� O ponteiro do mouse é movido em relação à sua posição atual por um sistema de pulsos gerados por sensores de movimento;
� A quantidade de movimento em qualquer direção é o resultado da contagem dos impulsos derivados das ranhuras do disco nos cilindros;
� Um método simples para detectar direção é a utilização de dois detectores infravermelhos 'a' e 'b‘;
� A orientação vem da relação entre pulsos digitais;
Anderson Moreira Arquitetura de Computadores
Mouse
� Um pulso em "a“ e depois em "b" indica uma direção, de igual modo, um em "b" depois em "a" indica direção oposta;
� Pulsos de saída são gerados para ambas as ações;
� Uma única seqüência de pulsos pode então ser adicionado;
� A produção de pulsos cessa quando o mouse estiver parado;
� A velocidade de movimento do mouse e do número de pulsos contados determinar velocidade do ponteiro do mouse e a posição na tela.
Anderson Moreira Arquitetura de Computadores
Mouse
Anderson Moreira Arquitetura de Computadores
Mouse
Anderson Moreira Arquitetura de Computadores
Mouse
Importante!!!!
� Dentro da CPU cada movimento do mouse gerará uma “Interrupção" (o processador interrompe o seu trabalho e lê a porta serial do mouse).
� Pense nisso da próxima vez que você ficar impaciente e tentar apressar as coisas, balançando o mouse feito um louco.
Anderson Moreira Arquitetura de Computadores
COMPONENTE VÍDEO-MONITOR
Como funciona?
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Sistema de vídeo:
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� 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, estes são processados e 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 – LED - Plasma).
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
• 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
Anderson Moreira Arquitetura de Computadores
Exemplos de E/S
• Formação de imagem na tela:– 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
Sinônimo de Corpo Perfeito
• Kelly Brook, 36 anos, 1,68m, 90 cm de busto, 91cm de quadris, 63cm de cintura e sofre bullyning por estar fora do padrão de beleza estética clássica;
• Porém a proporcionalidade dela é 0,70588253
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� A saída de um monitor colorido é derivada da mistura três cores
primárias;
� Para cada “adição a mistura" a saída se torna mais branca (RGB);
� Isso é o oposto do padrão clássico de impressão (mistura subtrativa
ou CMYK) em que a mistura escurece à medida que cada cor é
adicionada;
� As cores são referidas como "matizes". A tela do computador é
capaz de reproduzir qualquer matiz dentro do espectro de luz
visível, iluminando determinadas proporções de cada cor.
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� Por exemplo, através da ativação dos pixels vermelho e verde, os
olhos são enganados e levados a pensar que está vendo amarelo;
� Para fazer amarelo mais alaranjado a saída vermelha é acionada
mais intensamente em relação ao verde;
� Aumentar a intensidade de todas as cores juntas aumenta o brilho
total da cor;
� Uma barra de cor preta não pode ser mostrado, a menos que todas
as três saídas são desligadas. Branco ao contrário é quando todas as
três saídas são definidas a intensidade máxima (completa);
� A intensidade varia de 0 até 255.
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Exercício:
Como é produzida a cor cinza nos sistemas de vídeo?
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� Gerar uma imagem na tela do PC é feita por um processo de exibir pixels;
� Começando no canto superior esquerdo um contador endereça as colunas da esquerda para a direita, no final da linha o contador é incrementado para o início da próxima linha;
� Ao chegar no canto inferior direito, ambos os contadores da linha e da coluna são zerados para começar a próxima varredura para atualizar a tela.
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� A resolução da tela vertical e horizontal e, por conseguinte, a
qualidade vai depender do número de elementos chamados de
pixels RGB (ex.: 1024× 768) e o número de linhas horizontais
escaneadas;
� Cada uma separada por uma distância chamada dot pitch. Quanto
menor o dot pitch maior a nitidez da imagem;
� A imagem reproduzida será resultado de endereçamento sequencial
de pixel ao mesmo tempo variando a intensidade da saída de luz, ou
seja mistura de cor de cada tríade pixel.
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� A razão de que somos capazes de ver uma imagem na tela, é devido
a persistência da visão humana;
� Por continuamente repetindo o escaneamento visual antes da
imagem no nosso cérebro desapareceu, nos permite visualizar uma
imagem estável;
� Se o processo de escaneamento é inferior a 50 vezes/s uma imagem
trêmula será observada
Anderson Moreira Arquitetura de Computadores
Sistema de Vídeo
� Telas modernas de computadores são chamadas de TFT (Transistor
de película fina ou thin film transistor), em que cada pixel é
controlado por um transistor;
� A tecnologia TFT é também conhecida por matriz de LCD ativa (Tela
de Cristal Liquído ou Liquid Crystal Display) ;
� Exercício:
� Qual a diferença básica entre sistemas de LCD, Plasma de LED?
Explique de forma técnica e correta!
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
• Em um monitor CRT:
– 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
Formação da Imagem
� Antes dos gráficos serem exibidos na tela, estes têm de ser escritos para localizações endereçáveis da memória RAM;
� Estes são chamados adaptadores gráficos, mas mais precisamente descrito como RAM de vídeo (VRAM);
� Locais da VRAM são escaneadas, em seguida, o resultado final de cada célula ativa é transferida para a tela do computador;
� Para exemplificar veja o seguinte exemplo:
� Monitor monocromático.
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
� Um monitor monocromático com display de dois níveis:
� Não pode haver tons entre o preto e o branco,
� Há apenas 150 lugares no exemplo.
� Leitura e Escrita de conteúdos na VRAM normalmente seria contínuo, ocorrendo muitas milhares de vezes por segundo;
� Telas monocromáticas exigem apenas um bit por pixel, e é definido como o binário 1 ou 0, ou seja, ON ou OFF;
� Telas monocromáticas são menos comuns agora e freqüentementetinha uma tela verde com uma leve sombra para o resultado final do texto;
� Pelos padrões de hoje a resolução destas telas foram pobres, imagens gráficas tinham contornos irregulares.
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
� A quantidade de VRAM necessário cresce com o aumento da resolução da tela;
� Uma vez que cada pixel da tela precisa de uma célula correspondente;
� Na prática, todos os tipos de técnicas de compressão de dados são aplicadas para reduzir o tamanho da RAM de vídeo, principalmente em uma tentativa de aumentar a taxa de atualização para mudança rápida em alta qualidade de imagens;
� Tendo entendido como a VRAM aciona uma tela monocromática de duas cores (preto e branco), podemos agora desenvolver mais este para exibir tons de cor. Note-se, neste exemplo, vamos utilizar apenas uma das cores de que estamos variando a intensidade.
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
� Para permitir até 255 tons requer oito níveis na VRAM;
� As posições da linha e a coluna são lidos exatamente como antes só que desta vez um terceiro valor é calculado, que é derivada da combinação de oito níveis;
� Isto irá produzir um valor equivalente decimal entre 0 e 255. Zero, desliga o pixel e 255 liga totalmente para a máxima intensidade;
� O pixel do canto superior esquerdo é mostrado como no exemplo anterior;
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
� A fase final de desenvolvimento do nosso entendimento sobre sistema de vídeo é mostra a combinação de três cores, cada uma com uma posição diferente na memória de vídeo (VRAM) através da saída R,G,B;
� Cada cor é tratada separadamente;
� A mistura de cor realiza-se no âmbito do olho humano onde os pixels vermelho, verde e azul são ativados em diferentes graus.
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
Anderson Moreira Arquitetura de Computadores
Formação da Imagem
� Placas gráficas possuem sua própria memória de vídeo dedicada para armazenar as imagens da tela;
� Geralmente, uma placa de vídeo com 128MB ou 256MB vai atender a maioria dos aplicativos, mas isso deve ser aumentado para 512MB ou 1GB para lidar com jogos de computador por exemplo;
� Mais um termo utilizado em conjunto com a memória de vídeo é FSAA (full screen anti-aliasing);
� Esta é uma técnica para reduzir as bordas irregulares em traços inclinados e é obtida pela média das duas paredes adjacentes à áreas da tela e inserir este valor médio entre os dois primeiros, o próximo passo da mudança é a metade do que era anteriormente e, portanto, menos perceptível.
Anderson Moreira Arquitetura de Computadores
Exercícios
1. Procure informações relevantes e explique a diferença básica entre GPU e CPU.
2. Antes dos gráficos serem exibidos na tela estes devem ser escritos em uma memória endereçavel. Geralmente conhecida como VRAM. Considerando uma resolução de 320 colunas por 200 linhas, quantos espaços na VRM são necessárias para armazenar uma imagem completa desta tela em um monitor monocromático sem variações de cores? E se for um monitor com resolução de 32 bits de profundidade de cores?
3. Assuma que uma imagem é composta por 224.000 pixel (640x350). E que esta só pode ter duas variações de cores – 1 para branco e 0 para preto. Quantos bytes são necessários para armazenar a imagem?
Anderson Moreira Arquitetura de Computadores
Exercícios
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
Exercícios
O que significa a quantidade de memória na propaganda a seguir?
1 GB DDR3
Anderson Moreira Arquitetura de Computadores
Outros exemplos
• Scanner
– 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.
Anderson Moreira Arquitetura de Computadores
Outros exemplos
• Impressora
– É 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.
Anderson Moreira Arquitetura de Computadores
DISCO RÍGIDOComo funciona?
Anderson Moreira Arquitetura de Computadores
Disco Rígido
• Dispositivos de Armazenamento
Anderson Moreira Arquitetura de Computadores
Disco Rígido
� Unidades de disco magnético (unidade de disquetes e discos rígidos) proporcionam um armazenamento “permanente” de dados;
� Hoje a capacidades são enormes em comparação com apenas alguns anos atrás. Mesmo assim, a tecnologia básica permanece a mesma;
� Elas são um pouco maiores de capacidade e com tempos de acesso mais rápidos;
� Os valores padrões dados não representam os valores reais usados. As taxas de transferência mais rápidas as unidades de disco rígido são mais de 100Mbytes/s.
Anderson Moreira Arquitetura de Computadores
Disco Rígido
Anderson Moreira Arquitetura de Computadores
Disco Rígido
� Os discos são compostos de trilhas para armazenar dados, arranjados com setores;
� Formatação do disco configura as trilhas e setores em blocos definidos;
� Uma trilha com um setor é a menor quantidade de dados que podem ser acessados;
� Este grupo de bits são transferidos para o CPU RAM, modificados, se necessário e escritos de volta para o disco;
� Bytes individuais no disco não são acessíveis;
� Para minimizar os tempos de acesso, ou seja, "rotação do disco e tempo de busca", os dados são organizados em cilindros;
� As combinações de trilhas (em vários locais) são conhecidos como clusters e irá manter os dados de um arquivo completo.
Anderson Moreira Arquitetura de Computadores
Disco Rígido
� Uma tabela de alocação de arquivos (FAT) é o mapa de como osdados são organizados em disco. Arquivos não são consecutivospropriamente!
� Estes são separado em diversas áreas. Para ver isso, execute um desfragmentador de disco;
� Apagar um arquivo não remove ele do disco, apenas modifica a FAT.
Anderson Moreira Arquitetura de Computadores
Disco Rígido
Atraso médio de rotação Tempo de acesso de dados
Taxa de transferência de dados
Capacidade do Disco = Superfícies x Setores x Trilhas x Bytes/Setor
Tempo de atraso médio de fábrica
Anderson Moreira Arquitetura de Computadores
Disco Rígido
Anderson Moreira Arquitetura de Computadores
Disco Rígido
Anderson Moreira Arquitetura de Computadores
E DVD e BluRay?
� CD-ROM/DVD drives são raramente utilizados em grandesorganizações e aos ppoucos estão sendo substituídos;
� Tipicamente são armazenados 640 Mbytes em um CD;
� DVD armazena até 4.7GB de dados;
� Outros dispositivos como BluRay-Disc e HD-Disk armazenam acima de 20 GB por disco;
Anderson Moreira Arquitetura de Computadores
E DVD e BluRay?
Anderson Moreira Arquitetura de Computadores
E DVD e BluRay?
Anderson Moreira Arquitetura de Computadores
O que acontece quando ligamos o computador?
Anderson Moreira Arquitetura de Computadores
Periféricos – Acesso Direto à Memória
• 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
Anderson Moreira Arquitetura de Computadores
MBR
1º Setor da 1ª Trilha
Anderson Moreira Arquitetura de Computadores
Anderson Moreira Arquitetura de Computadores
•Fase 1 – executa uma parte do BIOs (Basic Input/Output System),
que essencialmente é um mini sistema operacional
� POST = Power On Self Test = Auto-diagnóstico
•Fase 2 - de acordo com a sequência determinada no setup
(Cmos), ele procura por um programa no MBR (Master Boot
Record), o 1º setor da midia, que é uma seção de 512 bytes.
� Se os últimos dois bytes deste setor contiverem os valores
AA-55
� Então o programa contido neste setor será carregado para a
RAM, a partir do endereço 0000:7C000
� O registrador IP será atualizado com o endereço 7C000
e consequentemente o programa ali carregado ganhará o controle
do micro.
Ligando o micro
Anderson Moreira Arquitetura de Computadores
Anderson Moreira Arquitetura de Computadores
Qual o programa que pode estar no MBR?
� Qualquer um, mas espera-se que seja um programa
capaz de por em funcionamento o sistema
operacional.
� Pode ser o iniciador de um SO;
� Pode ser um gerenciador de iniciadores (GRUB).
� BOOTLOADER
Anderson Moreira Arquitetura de Computadores
Exercícios
� Procure informações referentes aos sistemas de inicialização Unified EFI Update (UEFI).
� Quais as principais interfaces de conexão dos discos rígidos?
�Faça esta pesquisa em trio.
�Escreva em forma de relatório e entregue via e-mail.
Anderson Moreira Arquitetura de Computadores
COMUNICAÇÃO DE DISPOSITIVOS
Como funciona?
Anderson Moreira Arquitetura de Computadores
Portas seriais
� A comunicação serial de entrada e saída (E/S) é um método de comunicaçãao com outros dispositivos. Exe.: Modens Externos;
� Geralmente são conectados pelo método de comunicação de duasvias, que podem incluir o sinal de aperto de mão (handshaking) entre os dispositivos conectados;
� O método de comunicação de uma via, cada sinal gerado é umapalavra de 8 bits que é convertido de forma paralela para dados seriais pelo circuito integrado chamado de UART (Universal Asynchronous Receiver Transmitter).
Anderson Moreira Arquitetura de Computadores
Portas Seriais
� Com este circuito integrado (CI), os bits de início (START) e de parada (STOP) são adicionados juntamente com um bit de paridade. Nesse caso inicializado com o nome de ODD, que sempre será um pulso de saída;
� Os controladores de drives RS232 inverte os dados e eleva os níveis lógicos para aproximadamente ± 12V para que os mesmos sejamenviados através dos cabos para outros dispositivos;
� Até o final da transmissão para o receptor os dados são restauradospara sua forma original e convertidos em dados binários. Cadacaractere é decodificados olhando a forma padrão definida peloprojeto do sistema;
� No exemplo a seguir o nível baixo (LOW) é o bit START, em que a transmissão de um bit STOP anterior, seguidos de 10 bits.
Anderson Moreira Arquitetura de Computadores
Portas Seriais
Anderson Moreira Arquitetura de Computadores
Portas Seriais
Anderson Moreira Arquitetura de Computadores
Portas Seriais
Anderson Moreira Arquitetura de Computadores
Portas Seriais
Anderson Moreira Arquitetura de Computadores
Portas Paralelas
Anderson Moreira Arquitetura de Computadores
Portas Paralelas
Anderson Moreira Arquitetura de Computadores
Portas Paralelas
Anderson Moreira Arquitetura de Computadores
Periféricos
ATENÇÃO!!
• 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???
Anderson Moreira Arquitetura de Computadores
Barramentos (bus)
• 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)
• 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)
• 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.
• Alguns tipos de barramentos de entrada-saída são: - 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)
• 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)
CPU
Cache externa
Controladorde barramento
Memória
E/S Externa(conectores)
E/S Interna(built-in)
Barramento doprocessador (rápido)
Barramento de E/S(lento)
Barramento de E/S(lento)
Barramento dememória (rápido)
Anderson Moreira Arquitetura de Computadores
Bridges
• 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
• 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
Anderson Moreira Arquitetura de Computadores
Anderson Moreira Arquitetura de Computadores
Ponte Norte – MCH (Memory Controller Hub)
É conectado diretamente à CPU e pode ter as seguintesfunções básicas:Controlador de MemóriaControlador de PCI-expressControlador de AGPInterface para transferência de dados com o chip Ponte Sul
Atualmente, as CPUs Intel integram o controlador de memóriae o controlador de PCI-express – Isto é, a ponte norte foisugada para dentro do chip da CPU.
Anderson Moreira Arquitetura de Computadores
Funções da Ponte Norte
Anderson Moreira Arquitetura de Computadores
Processadores Intel – atualmente têm a ponte norte integrada emseu chip.
Anderson Moreira Arquitetura de Computadores
Ponte Sul – ICH (I/O Controller Hub)
É conectada à ponte norte ou à CPU (no caso de cpus intel atuais)Sua função é controlar os dispositivos de E/S e dispositivos On-board,tais como:
Storage ports (Parallel and Serial ATA ports)USB portsOn-board audioOn-board LANPCI busPCI Express lanesReal time clock (RTC)CMOS memoryInterrupt controllerDMA controllerISA slots em placas antigas
Anderson Moreira Arquitetura de Computadores
Ponte Sul
Anderson Moreira Arquitetura de Computadores
Conexão entre as Pontes
Inicialmente era feita através do barramento PCIProblema - Largura de banda disponível para o PCI (132 MB/s)compartilhada entre todos os dispositivos PCI no sistema e todos osdispositivos pendurados na ponte sul – especialmente HDs
Anderson Moreira Arquitetura de Computadores
Conexão entre as Pontes
Placas de video mais poderosas (PCI) + HDs de alto desempenho = Gargalo
Uma solução = AGP (Accelerated Graphics Port)-“Barramento” (porta) ligado diretamente à ponte norte = tirou o video do PCI = bom desempenho mantido.
Solução final = conexão dedicada de alta velocidade entre as pontes + conexão do PCI à ponte sul
PCI Express lanes podem estar disponíveis tanto na pontenorte quanto ponte sul.
As PCI Express lanes da ponte norte costumam ser usadaspara placas de video.
Anderson Moreira Arquitetura de Computadores
Anderson Moreira Arquitetura de Computadores
� Os primeiros chipset Intel tinham um canaldedicado de 266 MB/s – half-duplex – pontes nãopodiam falar ao mesmo tempo
� Atualmente, a Intel usa uma conexão dedicada -DMI (Direct Media Interface) – conceito semelhanteao PCI Express – lanes (faixas) usandocomunicação serial com canais separados paratransmissão e recepção (full-duplex ).
� Na AMD é usado o A-Link.
Anderson Moreira Arquitetura de Computadores
Barramento Tradicional (3)
• Utilizados de 80 até meados dos anos 90;
• Válido para barramentos ISA, EISA, MCA;
Anderson Moreira Arquitetura de Computadores
Barramento Tradicional (4)
• 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...
Anderson Moreira Arquitetura de Computadores
Barramento Local (1)
CPU
Cache externa
Controladorde barramento
Memória
E/S Externa(conectores)
E/S Interna(built-in)
Barramento doprocessador (rápido)
Barramento de E/S(lento)
Barramento de E/S(lento)
Barramento dememória (rápido)
E/S Externa(conectores, video, disco)
Barramento localE/S (rápido)
Anderson Moreira Arquitetura de Computadores
Barramento Local (2)
• 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 P5CPU Pentium
Cache nível 2Controlador
de barramento(Ponte norte)
Super I/O(87307)
Portas seriais (COM)Paralelas (LPT)
Mouse
Controladoras IDEMemória CMOS e RTC
Processador66 a 266 MHz
Barramento PCI25 a 33 MHz
Barramento ISA8 MHz
Conectores PCI
Barramento de memória16 MHz
Cache nível 1
Controladorde barramento
(Ponte sul)
Barramento do processador50 a 66 MHz
Vídeo PCI
Conectores ISA
Controlador de disqueteControlador de tecladoMemória ROM-BIOS
Anderson Moreira Arquitetura de Computadores
Barramento Local (3)
• 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
Nome Data Barramento (bits)
Freqüência (MHz)
Endereçamento
Taxa 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
– Não é exatamente um barramento de expansão, mas sim uma serial;
– Taxa de 1,5 a 12 MB/s.
Fonte: us.fujitsu.com/micro/usb
Anderson Moreira Arquitetura de Computadores
Outros Barramentos (2)
• IrDA
– (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
Fonte: http://tscherwitschke.de
Anderson Moreira Arquitetura de Computadores
Outros Barramentos (3)
• Macintosh
– 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.
Anderson Moreira Arquitetura de Computadores
Exercícios
• Procure informações relacionadas aos seguintes barramentos:
– PCI-X
– SATA
– Firewire
– Fibre Channel blades
– InfiniBand
Anderson Moreira Arquitetura de Computadores
Chipsets
• 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:
– http://www.intel.com/products/desktop/chipsets/index.htm
– http://en.wikipedia.org/wiki/List_of_Intel_chipsets
Anderson Moreira Arquitetura de Computadores
Exercícios
• 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
Anderson Moreira Arquitetura de Computadores
Periféricos – Controle direto do processador
• 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
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
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)
• 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 processo que está usando processador. Ocorrência foge do controle do programa sendo executado;
Anderson Moreira Arquitetura de Computadores
Interrupção de hardware (2)
– 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
Dispositivo de controle ououtro sistema de hardware
que permita ativar uma interrupção
Hardware Software
Processador termina a execução da instrução corrente
Processador reconhece sinal de interrupção
Processador coloca PSW e PC na pilha de controle
Processador carrega novo valor do PC, baseado na interrupção
Salva informações remanescentes sobre o estado do processo
Processa a interrupção
Restaura a informação do estado do processo
Restaura o velho PSW e PC
(Rotina de serviço)
Anderson Moreira Arquitetura de Computadores
Interrupções de Software (traps) (1)
• 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)
• Exemplo:
– Comando kill do Linux que envia um sinal a um processo.
– Ou a tabela de vetores de interrupções
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)
32-255 External (HW) interrupts
Anderson Moreira Arquitetura de Computadores
Interrupções do processador (Exceptions)
• 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)
• 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
Linha de Pedido Vetor (decimal) Vetor (hexadecimal)
Utilização
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 ATLinha 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
• 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
Anderson Moreira Arquitetura de Computadores
Bibliografia
• 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 140
Dúvidas
© Copyright 2010, IFPE.Creative Commons BY-SA 3.0 licenseLatest update: 28 de Fev de 2011,
Document sources, updates:
http://dase.ifpe.edu.br/~alsm