You are on page 1of 11

Conceitos Básicos de

Arquitetura de Computadores
em Relação à Entrada
e Saída (E/S)
Ancelmo, Jose Roberto
SST Conceitos Básicos de Arquitetura de Computadores em
Relação à Entrada e Saída (E/S) / Jose Roberto Ancelmo
Ano: 2020
nº de p. : 11

Copyright © 2020. Delinea Tecnologia Educacional. Todos os direitos reservados.


Conceitos Básicos de Arquitetura
de Computadores em
Relação à Entrada e Saída (E/S)

Apresentação
Em nosso estudo, compreenderemos os conceitos básicos da arquitetura de
computadores em relação ao processo de entrada e saída, como o acesso direto
à memória (DMA), os barramentos síncronos e assíncronos e a arbitragem de
barramento.

Entrada e Saída (E/S)


O processo de entrada e saída (E/S) visa compartilhar informações ou adquiri-las
dos computadores. Alguns deles se utilizam de uma organização de E/S com uma
ou mais CPUs, memória e um ou mais controladores de E/S, denominados “canais
de dados”.

Assim que a CPU realiza uma entrada, ela dispara um programa especial em um
dos canais e informa-lhe para executá-lo. Desse modo, o canal utiliza toda a E/S da
memória principal, liberando a CPU para fazer outras tarefas. Ao executar a tarefa, o
canal de dados interrompe a CPU para concluir a operação.

Modernos desktops usam uma estrutura mais simplificada, consistindo em um


único barramento, interligando-se à CPU, à memória e aos dispositivos de E/S. Cada
dispositivo de E/S apresenta duas partes: o controlador (componentes eletrônicos
que fazem o controle do periférico) e o dispositivo propriamente dito. Sua função
primordial é controlar seu dispositivo de E/S e gerenciar os acessos ao barramento
pelo canal de dados.

Atenção
Como tipos de canais de dados, podemos citar os seletores, que
se dedicam à transferência de dados com um único dispositivo por
vez; e os multiplexadores, que transferem dados de/para vários
dispositivos simultaneamente.

3
A ação desse controlador, que lê ou escreve um bloco de dados em uma posição de
memória sem a interferência da CPU, é chamada acesso direto à memória – DMA,
como você poderá ver na figura a seguir.

Exemplo de Acesso Direto à Memória – DMA.

Fonte: Elaborada pelo autor.

Um mediador do barramento é utilizado quando a CPU e o controlador necessitam


usar o barramento ao mesmo tempo. Geralmente, é dada a prioridade ao controlador
de E/S.

Perda de ciclos ou dados ocorre quando um dispositivo solicita o barramento e a


CPU já o está utilizando. Isso diminui a velocidade do computador ao realizar as
tarefas.

Barramento síncrono e assíncrono


Um barramento é um meio físico elétrico compartilhado entre muitos dispositivos
de E/S. O código do barramento estabelece as regras de funcionamento do próprio
barramento, deixando que componentes dimensionados por terceiros possam ser
anexados ao sistema.

Os dispositivos de E/S que iniciam as transferências pelo barramento são


identificados como mestres. Os dispositivos de E/S que esperam por uma requisição
são identificados como escravos, conforme você pode verificar no quadro a seguir.

4
Conceituação de Mestre e Escravo.

CPU Memória Busca de instruções e dados


CPU E/S Início de transferência de dados

CPU Coprocessador Instruções de ponto flutuante

E/S Memória DMA

Coprocessador Memória Buscando operandos

Fonte: Elaborado pelo autor.

A maioria dos mestres de barramento está ligada a ele por meio de plaquinhas ou
pastilhas, chamadas acionadores de barramentos (bus driver), que são basicamente
amplificadores digitais. Em geral, os escravos estão ligados ao barramento pelos
receptores de barramento (bus receiver).

Com relação aos dispositivos de E/S que podem atuar tanto como mestres quanto
como escravos, é empregada uma plaquinha ou pastilha combinada chamada
transceptor de barramento (bus transceiver). Essas pastilhas de interconexão
com o barramento são regularmente dispositivos tri-state. Sua ação consiste
em deixar que eles flutuem quando não são utilizados. Um barramento síncrono
tem uma linha disparada por um oscilador cristal. Todos os ciclos de pedidos do
barramento gastam um número inteiro de ciclos do oscilador, denominados ciclos de
barramento.

Já um barramento assíncrono não apresenta um relógio mestre que o guie. Os ciclos


podem ter qualquer durabilidade que se queira e não necessitam ser os mesmos
entre todos os pares dos dispositivos.

Considere um relógio de 4MHZ. Um ciclo de barramento leva 250ns, admitindo que


a leitura de um byte da memória leva três ciclos de barramento. Assim, o ciclo de
leitura leva 750ns.

5
Atenção
No modelo de um módulo de E/S, representado pelos três tipos
de barramentos, temos as variações dos dispositivos externos,
que são legíveis ao ser humano, tais como monitor, impressora e
teclado, e os legíveis à máquina, como monitoração e controle e a
parte de comunicação (modem e placa de interface de rede).

À medida que uma leitura de bloco é iniciada, o mestre do barramento solicita ao


escravo quantos bytes serão transferidos. O escravo solta um byte a cada ciclo até
que a quantidade seja exterminada. A leitura de um bloco de n bytes gastaria (n + 2)
ciclos, em vez de 3n.

No barramento assíncrono, em vez de se atrelar tudo ao relógio, um conjunto de


sinais chamado handshake completo determina o início e o fim de um ciclo de
leitura/escrita, conforme figura a seguir.

Temos, então, os sinais: MSYN (Master SYNchronisation), SSYN


(SlaveSYNchronisation) e o handshake, que consiste em quatro eventos:

1. MSYN é ativado;
2. SSYN é ativado em resposta a MSYN;
3. MSYN é desativado em resposta a SSYN;
4. SSYN é desativado em resposta à desativação de MSYN.

Barramentos Assíncronos.

Fonte: Mourelle (2018, p. 12).

6
Os handshakes completos são interdependentes do tempo. Isso significa que cada
evento é acusado por um anterior e não por um pulso sincronizado pelo relógio.

No barramento síncrono, tudo converge em múltiplos inteiros dos ciclos do relógio.


Para concordar com as diferentes velocidades dos dispositivos E/S incluídos,
os estados de espera (waitstates) são colocados. No barramento assíncrono,
o intervalo de tempo de um ciclo de leitura/escrita resulta da velocidade dos
dispositivos de E/S envolvidos. Veja como isso acontece na figura abaixo.

Ciclo de Leitura.

Fonte: Mourelle (2018, p. 9).

Se dois ou mais dispositivos necessitam se tornar mestres ao mesmo tempo,


aparece a obrigação de algum instrumento de arbitragem de barramento. Na
arbitragem centralizada, um único árbitro de barramento estipula qual o próximo
mestre.

Árbitros em barramento
O barramento apresenta uma linha única de requisição ou solicitação que poderá
ser iniciada por um ou mais dispositivos de E/S ao mesmo tempo. Quando o árbitro
reconhece uma solicitação do barramento (bus request), ele gera uma permissão
disparando uma linha de permissão de barramento (bus grant).

7
Essa linha é interligada em série com todos os dispositivos de E/S. À medida que
o dispositivo fisicamente mais próximo do árbitro enxerga a permissão, verifica se
foi ele mesmo que fez a requisição ou solicitação. Se sim, ele assume totalmente o
barramento e não propaga ou dispara a permissão pela linha. Se não, ele dispara a
permissão para o próximo dispositivo que se encontra na linha.

Esse esquema ou artifício é chamado de daisy chaining. A prioridade depende


da proximidade do dispositivo ao árbitro. Para driblar a prioridade solicitada
condicionada na distância do árbitro, podemos utilizar diversos níveis de prioridade.
Para cada um se estabelece uma linha de solicitação ou requisição de uma linha de
permissão de barramento.

Alguns árbitros apresentam uma terceira linha que um dispositivo ativa quando ele
aceitou a permissão e tomou controle do barramento (bus acknowledge). Sendo
ativadas, as linhas de requisição e permissão podem ser desativadas ou suspensas.
Como resultado, outros dispositivos de E/S podem requisitar ou solicitar o
barramento, enquanto outro o está utilizando. Quando a transferência atual terminar,
o próximo mestre já terá sido selecionado.

Na figura a seguir, observe a prioridade dos árbitros de barramento.

Prioridade dos árbitros de barramento.

Fonte: Mourelle (2018, p. 16).

8
Quando a arbitragem descentralizada está sendo empregada, não há árbitro de
barramento. Uma dica: o barramento mostra as linhas de solicitação priorizadas, às
quais cada dispositivo se conectará (havendo limitação do número de dispositivos).
Quando um dispositivo de E/S solicita usar o barramento, ele ativa a sua linha de
solicitação. Os dispositivos supervisionam todas as linhas de requisição.

Igualmente, ao fim de cada ciclo do barramento, cada dispositivo reconhece se


ele é o solicitante de maior prioridade ou se lhe é autorizado usar o barramento no
próximo ciclo.

Equiparado à arbitragem centralizada, esse modelo pede mais linhas de barramento,


deixando o custo potencial do árbitro. Outra dica consiste em o barramento mostrar
somente três linhas, independentemente do número de dispositivos presentes, como
podemos ver na figura abaixo.

Exemplo arbitragem no barramento.

Fonte: Elaborada pelo autor.

Assim que a linha de requisição é iniciada pelo dispositivo, a linha de ocupado é


iniciada pelo mestre corrente do barramento. A linha de arbitragem é utilizada para
arbitrar o barramento. Ela é sequenciada por meio de todos os dispositivos de E/S. O
início da cadeia é regularmente mantido ativo, ligando-se à fonte de +5V.

À medida que nenhum dispositivo de E/S requer o barramento, a linha de arbitragem


ativada é disseminada por meio de todos os dispositivos. Para se utilizar do
barramento, um dispositivo, primeiro, observa se o barramento está disponível e se a
linha de arbitragem que está recebendo (I-Input) está ativada.

Se I estiver desativada, ele não poderá ser alçado a mestre do barramento. Se


I estiver ativada, o dispositivo desativa O (output), o que faz todos os outros
dispositivos na cadeia desativarem I e O. No final, apenas um dispositivo terá

9
I ativado e O desativado. Ele se torna mestre do barramento, e começa sua
transferência.

Esse modelo é parecido com a arbitragem daisy chain original, excetuada pela
ausência do árbitro. Igualmente é mais barato, mais veloz e não vulnerável a erros no
árbitro.

Fechamento
Chegamos ao final do estudo sobre conceitos básicos de arquitetura de
computadores em relação à entrada e saída (E/S) e compreendemos que o
processo de entrada/saída (E/S) busca compartilhar informações ou adquiri-las dos
computadores. Vimos que essas informações são transferidas de formas diretas,
através do controlador de acesso direto à memória ou de mediadores, quando
os acessos devem ser priorizados entre CPU e E/S. Em um segundo momento,
compreendemos os barramentos síncronos, controlados por um relógio (oscilador
de cristal) e assíncronos sem controle de relógios. Por fim, vimos o processo
de arbitragem de barramento que supervisiona as linhas de requisição de um
barramento.

10
Referências
MOURELLE, L. Conceitos de Entradas e Saídas. Disponível em: http:// www.eng.uerj.
br/~ldmm/arquitetura/Conceitos_de_entrada_e_saida. pdf. Acesso em: 21 maio
2018.

11

You might also like