CPU e Barramentos
   o Clock interno




                     1
Sumário
    CPU
        Definições
        Constituição interna
        Ligações ao exterior: dados, endereços, controlo

    Barramentos
        Definições
        Tipos de barramentos
        Arbitragem do barramento
        Interrupções
        Mapeamento de I/O / Descodificação de endereços
                                                            2
CPU
   CPU – Central Processing Unit
       É o órgão responsável pela actividade de um computador
       Executa instruções que estão armazenadas na memória. À
        leitura de uma instrução dá-se a designação de fetch


   O CPU inclui
       ALU – Arithmetic Logic Unit
       Unidade de controlo
       Registos
       Linhas de comunicação internas – barramentos internos

                                                                 3
Barramentos

   Um barramento (Bus) é um conjunto de linhas partilhado por vários dispositivos

Cada barramento obedece a um conjunto de regras (Bus Protocol) e é
caracterizado por um conjunto de especificações eléctricas e mecânicas


Num    computador existem vários tipos de barramentos
       Barramento local
       Barramento de sistema
       Barramento interno ao processador
       Caminhos que permitem o transporte de dados entre os vários elementos:
        CPU, memória, placas de expansão, sistema de entrada e saída, etc...


                                                                                 4
Barramentos
   Grupo de linhas paralelas. Cada linha trafega 1 bit de cada vez

       Barramento de 8 linhas  1 byte
       Barramento de 32 linhas  4 bytes

   Exemplos de padrões de barramento de expansão:

       ISA (Industry Standard Architecture),
       MCA (Microchannel Architecture),
       EISA (Extended Industry Standard Architecture),
       VLB (Vesa Local Bus),

                        Serão exemplo os mais modernos
       PCI (Peripheral Component Interconnect),
       AGP (Accelerated Graphics Port),
       USB (Universal Serial Bus)
                                                                      5
Barramentos

                              Padrão PCI

   Os dados são transmitidos em 64 bits

   Desenvolvido inicialmente pela Intel

   Desenvolvido para o Pentium e para o Pentium Pro

   Mais barato e versátil que o VLB

   Alto desempenho



                                                       6
Barramentos

                            Padrão AGP

   Desenvolvido para as placas de vídeo mais modernas (3D) e
    processadores Pentium II

   2 vezes mais rápido que o PCI




   Permite a placa de vídeo aceder directamente a memória para
    armazenar texturas sem que os dados passem pelo processador

                                                                  7
Barramentos

                                Padrão USB

   Novo padrão para a conexão de periféricos externos

       Facilidade de uso
       Possibilidade de conectar vários periféricos a uma única porta USB
       Considerado 1º barramento para Computadores realmente Plug-and-
        Play




                                                                             8
Barramentos

           Exemplo de barramentos num computador


Internos                Local          Sistema




                                                   9
Barramentos

           Noção de Master e Slave de um barramento

   Master – dispositivo que requisita o barramento tomando a iniciativa
    numa transferência de dados

   Slave – dispositivo que serve o pedido

   A maioria dos dispositivos pode tanto ser master como ser slave,
    excepto a memória que é sempre slave

Exemplos:
    O CPU o pede ao controlador de disco para ler um bloco em disco
    O controlador de disco pede à memória para aceitar os dados que
     foram lidos do disco

                                                                           10
Barramentos

             Ligação de vários dispositivos periféricos



   Vários dispositivos periféricos podem partilhar o mesmo barramento

   Tal facto é possível devido a

       Utilização de buffers tri-state

       Existência de arbitragem no barramento




                                                                         11
Arbitragem do barramento


A arbitragem do barramento existe para impedir a dois dispositivos diferentes
sejam master simultaneamente.



Existem    dois tipos de arbitragem

        Centralizada – existe um dispositivo – árbitro – ao qual estão ligados
         todos os periféricos

        Descentralizada – cada periférico verifica primeiro se já existe um
         outro periférico que seja master do barramento



                                                                                  12
Interrupções


   Designa-se por interrupção um evento que faça com o CPU interrompa
    (temporariamente) a normal execução de um programa

       Exemplos:
         Pedido de um periférico que não pode esperar

         Existência de um erro num programa



   Quando ocorre uma interrupção, o CPU terá que salvaguardar o conteúdo
    de todos os seus registos

   A interrupção é servida através da execução de um conjunto de instruções
    pré-definidas


                                                                          13
Interrupções

               Existem vários tipos de interrupções

   Hardware
     Pedidos de dispositivos periféricos, relógio do sistema, circuitos de
      monitorização de energia

   Software
     Uma interrupção causada por um programa (e.g., envio de dados
      para o écran)

   Excepção
     Ocorrem devido a utilizações indevidas de instruções ou de dados
      (e.g., divisão por 0, acesso a uma posição de memória protegida,
      etc.)


                                                                              14
Interrupções


   Interrupt requests (IRQ)
     Canais para requisição de interrupções – um canal por periférico




   Interrupt controller (PIC)

       Um controlador de interrupções é responsável pelo encaminhamento
        das interrupções dos periféricos para o processador

       Estabelece um protocolo com o processador, trocando dados
        necessários para servir a interrupção

                                                                         15
Descodificação de Endereços

   Os periféricos podem ser mapeados para posições de memória (memory-
    mapped I/O)

       Desta maneira poupam-se linhas de barramento dedicadas para cada
        periférico

   As transferências de dados podem ser vistas como operações de leitura /
    escrita em memória

   Põe-se então um problema: como activar os chips correspondentes ao
    controlo destes periféricos ?

       Utiliza-se descodificação de endereços
       Desta maneira a cada periférico fica associado um conjunto de
        endereços                                                             16
Clock interno

   Coração do computador  Emite pulsos eléctricos que se
    propagam pelo barramento
   Movido por um cristal de quartzo localizado na placa mãe
       As moléculas deste cristal vibram milhões / biliões de vezes por
        segundo, em velocidade constante
       As vibrações são usadas para cronometrar operações de
        processamento e ditar a velocidade de transferência de dados
   Expresso em termos de frequência – Hertz (Hz)
     1 Hz = 1 ciclo por segundo (1 operação realizada a cada ciclo)



   Exemplo: Computador de 1 GHz emite 1 bilhão de pulsos eléctricos
    por segundo – 1 bilhão de realizadas por segundo
   O processador não possui gerador de clock. Opera multiplicando o
    sinal recebido da placa mãe                                            17
Clock interno

  Tecnologia relacionada ao número de instruções de processamento
que podem ser reconhecidas

    CISC (Complex Instruction Set Computing)

        Conjunto   Complexo de Instruções

     Reconhece mais de uma centena de instruções
     É mais lento na execução das instruções (quanto > número de

      instruções > tempo)
     A maioria dos microprocessadores são CISC



                                                                    18
Clock interno
               RISC (Reduced Instruction Set Computing)

       Conjunto Reduzido de Instruções


                                 RISC
   Reconhece um número limitado de instruções que, em
    contrapartida, são optimizadas para que sejam executadas com
    mais rapidez

   Redução do conjunto de instruções ao mínimo: as instruções
    não contempladas são executadas como combinações das
    existentes

   Desempenho de 50-75% superior a um CISC                   19

Barramentos clock interno

  • 1.
    CPU e Barramentos o Clock interno 1
  • 2.
    Sumário  CPU  Definições  Constituição interna  Ligações ao exterior: dados, endereços, controlo  Barramentos  Definições  Tipos de barramentos  Arbitragem do barramento  Interrupções  Mapeamento de I/O / Descodificação de endereços 2
  • 3.
    CPU  CPU – Central Processing Unit  É o órgão responsável pela actividade de um computador  Executa instruções que estão armazenadas na memória. À leitura de uma instrução dá-se a designação de fetch  O CPU inclui  ALU – Arithmetic Logic Unit  Unidade de controlo  Registos  Linhas de comunicação internas – barramentos internos 3
  • 4.
    Barramentos  Um barramento (Bus) é um conjunto de linhas partilhado por vários dispositivos Cada barramento obedece a um conjunto de regras (Bus Protocol) e é caracterizado por um conjunto de especificações eléctricas e mecânicas Num computador existem vários tipos de barramentos  Barramento local  Barramento de sistema  Barramento interno ao processador  Caminhos que permitem o transporte de dados entre os vários elementos: CPU, memória, placas de expansão, sistema de entrada e saída, etc... 4
  • 5.
    Barramentos  Grupo de linhas paralelas. Cada linha trafega 1 bit de cada vez  Barramento de 8 linhas  1 byte  Barramento de 32 linhas  4 bytes  Exemplos de padrões de barramento de expansão:  ISA (Industry Standard Architecture),  MCA (Microchannel Architecture),  EISA (Extended Industry Standard Architecture),  VLB (Vesa Local Bus), Serão exemplo os mais modernos  PCI (Peripheral Component Interconnect),  AGP (Accelerated Graphics Port),  USB (Universal Serial Bus) 5
  • 6.
    Barramentos Padrão PCI  Os dados são transmitidos em 64 bits  Desenvolvido inicialmente pela Intel  Desenvolvido para o Pentium e para o Pentium Pro  Mais barato e versátil que o VLB  Alto desempenho 6
  • 7.
    Barramentos Padrão AGP  Desenvolvido para as placas de vídeo mais modernas (3D) e processadores Pentium II  2 vezes mais rápido que o PCI  Permite a placa de vídeo aceder directamente a memória para armazenar texturas sem que os dados passem pelo processador 7
  • 8.
    Barramentos Padrão USB  Novo padrão para a conexão de periféricos externos  Facilidade de uso  Possibilidade de conectar vários periféricos a uma única porta USB  Considerado 1º barramento para Computadores realmente Plug-and- Play 8
  • 9.
    Barramentos Exemplo de barramentos num computador Internos Local Sistema 9
  • 10.
    Barramentos Noção de Master e Slave de um barramento  Master – dispositivo que requisita o barramento tomando a iniciativa numa transferência de dados  Slave – dispositivo que serve o pedido  A maioria dos dispositivos pode tanto ser master como ser slave, excepto a memória que é sempre slave Exemplos:  O CPU o pede ao controlador de disco para ler um bloco em disco  O controlador de disco pede à memória para aceitar os dados que foram lidos do disco 10
  • 11.
    Barramentos Ligação de vários dispositivos periféricos  Vários dispositivos periféricos podem partilhar o mesmo barramento  Tal facto é possível devido a  Utilização de buffers tri-state  Existência de arbitragem no barramento 11
  • 12.
    Arbitragem do barramento Aarbitragem do barramento existe para impedir a dois dispositivos diferentes sejam master simultaneamente. Existem dois tipos de arbitragem  Centralizada – existe um dispositivo – árbitro – ao qual estão ligados todos os periféricos  Descentralizada – cada periférico verifica primeiro se já existe um outro periférico que seja master do barramento 12
  • 13.
    Interrupções  Designa-se por interrupção um evento que faça com o CPU interrompa (temporariamente) a normal execução de um programa  Exemplos:  Pedido de um periférico que não pode esperar  Existência de um erro num programa  Quando ocorre uma interrupção, o CPU terá que salvaguardar o conteúdo de todos os seus registos  A interrupção é servida através da execução de um conjunto de instruções pré-definidas 13
  • 14.
    Interrupções Existem vários tipos de interrupções  Hardware  Pedidos de dispositivos periféricos, relógio do sistema, circuitos de monitorização de energia  Software  Uma interrupção causada por um programa (e.g., envio de dados para o écran)  Excepção  Ocorrem devido a utilizações indevidas de instruções ou de dados (e.g., divisão por 0, acesso a uma posição de memória protegida, etc.) 14
  • 15.
    Interrupções  Interrupt requests (IRQ)  Canais para requisição de interrupções – um canal por periférico  Interrupt controller (PIC)  Um controlador de interrupções é responsável pelo encaminhamento das interrupções dos periféricos para o processador  Estabelece um protocolo com o processador, trocando dados necessários para servir a interrupção 15
  • 16.
    Descodificação de Endereços  Os periféricos podem ser mapeados para posições de memória (memory- mapped I/O)  Desta maneira poupam-se linhas de barramento dedicadas para cada periférico  As transferências de dados podem ser vistas como operações de leitura / escrita em memória  Põe-se então um problema: como activar os chips correspondentes ao controlo destes periféricos ?  Utiliza-se descodificação de endereços  Desta maneira a cada periférico fica associado um conjunto de endereços 16
  • 17.
    Clock interno  Coração do computador  Emite pulsos eléctricos que se propagam pelo barramento  Movido por um cristal de quartzo localizado na placa mãe  As moléculas deste cristal vibram milhões / biliões de vezes por segundo, em velocidade constante  As vibrações são usadas para cronometrar operações de processamento e ditar a velocidade de transferência de dados  Expresso em termos de frequência – Hertz (Hz)  1 Hz = 1 ciclo por segundo (1 operação realizada a cada ciclo)  Exemplo: Computador de 1 GHz emite 1 bilhão de pulsos eléctricos por segundo – 1 bilhão de realizadas por segundo  O processador não possui gerador de clock. Opera multiplicando o sinal recebido da placa mãe 17
  • 18.
    Clock interno  Tecnologia relacionada ao número de instruções de processamento que podem ser reconhecidas  CISC (Complex Instruction Set Computing) Conjunto Complexo de Instruções  Reconhece mais de uma centena de instruções  É mais lento na execução das instruções (quanto > número de instruções > tempo)  A maioria dos microprocessadores são CISC 18
  • 19.
    Clock interno RISC (Reduced Instruction Set Computing)  Conjunto Reduzido de Instruções RISC  Reconhece um número limitado de instruções que, em contrapartida, são optimizadas para que sejam executadas com mais rapidez  Redução do conjunto de instruções ao mínimo: as instruções não contempladas são executadas como combinações das existentes  Desempenho de 50-75% superior a um CISC 19