Unidade Central de Processamento UCP (CPU)! Arquitetura Convencional (Von Neumann) UCP BARRAMENTO MEMÓRIA PRINCIPAL ENTRADA E SAÍDA
! Visão geral da CPU UC - UNIDADE DE CONTROLE REGISTRADORES A B C D ALU - UNIDADE ARITMÉTICA E LÓGICA PC I R
! A Unidade Central de Processamento (UCP ou CPU), ou processador, tem como função principal executar os programas do sistema, que devem estar armazenados na memória principal.! Um programa é composto por uma série de instruções que são executadas seqüencialmente pela CPU, através de operações básicas como somar, subtrair, comparar e movimentar dados.! A CPU é composta por 2 componentes básicos: Unidade de Controle (UC) e Unidade Lógica e Aritmética (ULA ou ALU).
! A UC controla as atividades de todos os componentes do computador, através de pulsos elétricos periódicos gerados por um dispositivo de relógio (clock).! A ALU é responsável pela realização de operações lógicas e aritméticas.
! A velocidade de processamento (desempenho) de uma CPU é determinada pelo número de instruções que o processador executa por unidade de tempo.! Alguns fabricantes utilizam unidades de processamento próprias, já que não existe uma padronização.! O mais comum é o MIPS (Milhões de instruções por segundo) e o MFLOPS/GFLOPS (Milhões/Bilhões de instruções de ponto flutuante por segundo).
! Clock: o clock é um dispositivo, localizado na CPU, que gera pulsos elétricos síncronos em um determinado intervalo de tempo (período).! A quantidade de vezes que este pulso se repete em um segundo define a freqüência do clock.! O sinal do clock é utilizado pela UC para sincronizar a execução das instruções.! A freqüência do clock é expressa em Hertz, o que significa o número de pulsos gerados em um segundo.! Então, um computador com um clock de 100 MHz significa que o pulso se repete cem milhões de vezes por segundo.
! Diagrama funcional da CPU - Zoom da figura anterior. Podem ser vistos ALU, UC, registradores de propósito geral e especiais, barramentos internos de controle, endereços e dados e o fluxo de informações pelos barramentos e componentes.
! Registradores: os registradores são dispositivos de alta velocidade, localizados na CPU, para armazenamento temporário de dados.! O número de registradores varia em função da arquitetura de cada processador.! Alguns registradores são de uso especial, enquanto outros são de uso geral.
! Registradores Especiais mais Comuns: - ACC -Acumulador (Accumulator) - guarda dados utilizados em operações matemáticas e lógicas, auxiliando a ALU. - RI - Registrador de Instruções (ou IR - Instruction Register) - guarda o código binário da operação corrente (em linguagem de máquina) - CI - Contador de Instruções (ou PC - Program Counter) - Guarda o endereço de memória da próxima instrução a ser executada.
! Registradores Especiais (cont...): - RDM - Registrador de Dados da Memória (ou MBR - Memory Buffer Register, ou ainda, MAR - Memory Data Register) - guarda os dados que serão lidos ou gravados na memória - REM - Registrador de Endereços da Memória (ou MAR - Memory Address Register) - guarda o endereço de localização para o acesso à memória.
! Conjunto de Instruções de um Processador: A CPU (hardware) espera encontrar um programa em linguagem de máquina (uma sequência de instruções de máquina em código binário).! Linguagem de Máquina: a linguagem de máquina é composta de códigos binários, representando instruções, endereços e dados e está totalmente vinculada ao conjunto de instruções da máquina.! Todo processador já vem com seu conjunto de instruções pré-definido.
! Formato geral de uma Instrução: Código de operação (OPCODE) Operando (s) (OP) Código de Operação ou OPCODE - campo da instrução cuja valor binário identifica (código binário) da operação a ser realizada. Este código é a entrada no decodificador de instruções na unidade de controle. Cada instrução deverá ter um código único que a identifique. Operando(s) - campo(s) da instrução cujo valor binário indica a localização do dado (ou é o próprio dado) que será manipulado pela instrução durante a operação. Um operando pode conter: - o endereço de memória onde está o dado - o endereço onde o resultado da operação será armazenado - a indicação de um registrador que conterá o dado ou endereço de memória onde está armazenado o dado
! Ciclo de uma Instrução: O ciclo de instrução é formado pela sequência de passos necessários para a execução de uma instrução de máquina. (Não confundir com ciclo de clock) INÍCIO Buscar próxima Instrução Interpretar a Instrução Buscar os Dados Executar a Instrução FIM FETCH DECODE LOAD EXECUTE Salvar os Resultados STORE