Programação em C - Capítulo 1

Organização Estruturada de Computador 

Aula6

Nível da Lógica Digital - Parte II 




Nesta aula abordaremos com mais detalhes o nível da lógica digital ou seja o hardware do computador. 

O texto abaixo é um resumo das seções 3.4 a 3.7 do capítulo 3 do livro: Organização Estruturada de Computadores de Andrew S. Tanenbaum, 4a Edição, 2001. As figuras do texto foram obtidas do material disponibilizado na internet pelo autor desse mesmo livro.

Importante: O resumo abaixo deve ser complementado, pelo aluno, com a leitura do texto original do livro.


Tópicos


Chips Processadores


3-33
Fig 3.33 Pinagem lógica de um processador genérico. As setas indicam os sinais de entrada e os sinais de saída. As pequenas linhas na diagonal indicam que esse sinal usa vários pinos. No caso de um processador real, em cima da linha diagonal aparece um número para indicar quantos são os pinos usados

      Um chip processador

        Para exemplificar, na busca de uma instrução na memória:
    O processador:
  1. Coloca endereço da memória nos pinos de endereço 
  2. Envia sinal de leitura, pino de controle, para a memória
    A memória:
  1. Coloca dados (instrução) da palavra selecionada nos pinos de dados
  2. Envia sinal de sucesso de leitura, pino de controle, para o processador
    O processador:
  1. Lê instrução está já está disponível nos pinos de dados 
  2. Inicia execução da instrução
 
Up

Barramentos de computadores

3-34
Fig 3.34- Sistema de computador com diversos barramentos


       Protocolo de barramento

        Os dispositivos ligados ao barramento pode funcionar como:
       
Mestre Escravo
Exemplo
Processador
Memória
Busca de instruções e de dados
Processador
Dispositivos de E/S
Início de transferência de dados
Processador
Co-processador
Envio de instruções do processador para o co-processador
E/S
Memória
DMA (acesso direto à memória)
Co-processador
Processador
Co-processador busca operandos no processador

Fig 3.35 Exemplo de funcionamento de dispositivos como mestres e escravos de barramento

        Quando os barramentos são longos e com muitos dispositivos usam-se chips amplificadores digitais do tipo:
          Importante: O barramento tem linhas de endereços, dados e controle, porém não é necessário o mapeamento 1 para 1 com os pinos do processador. Para compatibilizar sinais e pinos dos processadores são usados chips conhecidos como decodificador de barramento.

        Ao se projetar um barramento faz-se necessário considerar os seguintes aspectos: largura, metodologia de temporização, arbitragem e operações possíveis. Esses ítens são tratados nas próximas seções.

 
Up

Largura de barramento

   Linhas de endereçamento no barramento:
        A figura abaixo mostra a evolução do número de bits de endereço nos barramentos intel. O 8088 era capaz de endereçar, com 20 bits, apenas 1MB, o 80286, com 24bits, 16 MB  e o 80386, com 32 bits,  4GB de memória.

3-36
Fig 3.36 Crescimento do barramento de endereços ao longo do tempo

    Linhas de dados no barramento:

    Barramentos multiplexados:
    Importante: Projetistas de barramento devem considerar essas questões antes de fazerem suas opções

 
Up

Temporização do barramento

Barramento Síncronos
A figura abaixo mostra um exemplo de leitura de dado pelo processador que segue os seguintes passos:
  1. O processador coloca endereço de memória no barramento, depois da subida de T1 (T1+retardo Tad)
  2. Ativa MREQ' (leia MREQ barrado) e RD' na descida de T1 (T1 + retardos)
  3. A memória ativa WAIT' na subida de T2 para informar que está trabalhando
  4. A memória desativa WAIT' na subida de T3 para dizer que dados estão disponíveis
  5. O processador lê dados, depois da subida de T3 (com retardo Tds)
  6. O processador avisa que leu os dados (MREQ' =1 e RD' = 1) depois da descida de T3+retardo

3-37
Fig 3.37 (a) Temporização para uma operação de leitura usando um barramento síncrono (b) Especificação de alguns tempos críticos

Importante: O maior problema com os barramento síncronos é que os dispositivos mais rápidos tem que esperar alguns clocks inteiros para finalização de operações com dispositivos mais lentos


Barramento Assíncronos

    Exemplo de funcionamento de um barramento assíncrono
    Obs: Os dois parágrafos abaixo foram copiados totalmente do livro texto.  

    A figura 3.38 mostra o diagrama de tempo de um barramento assíncrono. Em vez de amarrar todos os eventos ao clock, quando o mestre do barramento ativar o endereço, os sinais MREQ' e RD' e tudo mais que for necessário, um sinal especial, conhecido como MSYN' (Master SYNchronization), deve ser ativado. Quando enxerga o MSYN' ativo, o escravo faz seu trabalho o mais rápido que puder. Ao terminar, ele ativa o sinal SSYN' (Slave SYNchronization).
    O sinal SSYN' ativo informa ao mestre que os dados estão disponíveis, fazendo com que o mestre armazene os dados e então negue as linhasde endereçoi, junto com MREQ', RD' e MSYN'. Ao enxergar a negação de MSYN' , o escravo sabe que o ciclo terminou, de modo que ele nega SSYN' , levando o processo de volta à situação original, em que todos os sinais negados aguardam o próximo mestre.


3-38
Fig 3.38 Operação de um barramento assíncrono

        O barramento assíncrono tem vantagens em relação ao síncrono, porém os síncronos são mais usados pois:

 
Up

Arbitragem do barramento

    Questão: O que acontece se dois ou mais dispositivos desejarem tornar-se mestres do barramento ao mesmo tempo?
    Solução: Estabelece-se um mecanismo para efetuar a arbitragem do barramento que podem ser mecanismos centralizados ou não centralizados.

        Arbitragem centralizada

          A arbitragem centralizada precisa de um árbitro para controlar o acesso ao barramento

          No esquema apresentado na figura 3.39(a), conhecido como daisy chaining, um único árbitro determina quem será o próximo mestre do barramento. O dispositivo mais próximo do árbitro se torna o mestre do barramento quando a linha de garantia de uso (ligada em série a todos os dispositivos) estiver ativada e o dispositivo quiser usar o barramento. Caso contrário ele libera o sinal para o próximo dispositivo.

        Existem esquemas alternativos, com definição 2 ou mais níveis de prioridade, como mostrado na figura 3.39b para 2 níveis.

3-39


        Bus request level n - requisição de uso do barramento de nível n
        Bus grant level n - garantia de uso do barramento de nível n

Figura 3.39 (a) Árbitro centralizado operando com um nível, usando arbitragem daisy chain. (b) O mesmo árbitro operando com 2 níveis


      Arbitragem descentralizada

          A arbitragem descentralizada não usa árbitro para controlar o acesso ao barramento

          Neste esquema, quando um dispositivo precisar usar o barramento, o dispositivo deve ativar a linha de requisição. Todos os dispositivos monitoram todas as linhas de requisição- portanto, ao final de um ciclo do barramento, cada dispositivo sabe se foi ou não dele a requisição de maior prioridade e, consequentemente, se ele pode ou não usar o barramento do próximo ciclo.

        Este esquema precisa de mais linhas de barramento, mas não precisa pagar o preço de ter um árbitro. O número de dispositivos está limitado ao número de linhas de requisição disponíveis

        A figura 3.40 mostra um esquema alternativo que não precisa de árbitro e funciona de forma similar ao esquema daysy chain.


3-40

Figura 3.40 Arbitragem descentralizada do barramento


 
Up

Operações no barramento


3-41
Figura 3.41 Transferência de um bloco




 
Up

Exercícios

1. Um matemático espcializado em lógica dirige-se a um restaurante e diz: "Quero um hambúrguer ou um cachorro-quente com fritas." Infelizmente, o cozinheiro não entende muito de lógica matemática e não sabe que o operador "and" tem precedência sobre o operador "or". Quais dos pedidos a seguir podem ser considerados como possíveis interpretações do pddido do matemático? (note que, em inglês, "or" significa "exclusive or".)
a. Um hambúrguer
b. Um cachorro-quente.
c. Batatas fritas.
d. Um cachorro-quente e batatas fritas.
e. Um hambúrguer e batatas fritas.
f. Um cachorro-quente e um hambúrguer.
g. Um hambúrguer, um cachorro-quente e batatas fritas.
h. Nada.
2. Um missionário perdido no sul da Califómia pára em uma encruzilhada da estrada. Ele sabe que o local é freqüentado por duas gangues de motoqueiros, e sabe também que os membros de uma delas sempre dizem a verdade e os membros da outra sempre mentem. Ele deseja saber qual das duas estradas leva à Disneylândia. Qual pergunta ele deve fazer ao membro da gangue que aparecer na estrada de maneira a ter certeza de que a informação dada é correta?
3. Existem quatro funções booleanas de uma única variável e dezesseis de duas variáveis. Quantas são as funções booleanas de três variáveis? E de n variáveis?
4. Use uma tabela-verdade para mostrar que P = (P ANO Q) OR (P ANO NOT Q).
5. Mostre como uma função AND pode ser construída a partir de duas portas NANO.
6. Use a lei de DeMorgan para encontrar o complemento de AB' ( B' é o mesmo que B barrado)
7. Usando o chip multiplexador de três variáveis da Fig. 3.12, implemente uma função cuja saída seja a paridade par de suas entradas, ou seja, a saída é 1 se, e somente se, um número par de entradas for igual a 1.










 
Up