Arquitetura de Computadores Introdução Componentes



Yüklə 131 Kb.
tarix30.10.2018
ölçüsü131 Kb.
#75918


Arquitetura de Computadores


Introdução

  • Componentes:

    • Processador;
      • UC;
      • Registradores;
      • ALU’s, FPU’s, etc.
    • Memória (Sistema de armazenamento de informações;
    • Dispositivo de entrada e saída.


Introdução

  • Representação de informações

    • Bit / Byte;
    • Sistemas de numeração:
      • binário;
      • decimal;
      • octal;
      • hexadecimal.


Bases de Numeração

  • Decimal - dez algarismos utilizados para a representação (0 a 9);

  • Binária - Algarismos ‘0’ e ‘1’;

  • Octal - Algarismos ‘0’ a ‘7’;

  • Hexadecimal - Algarismos ‘0’a ‘9’ e letras de ‘A’ a ‘E’.



Conversão de bases

  • Conversão base B para a base 10:

  • Identificar:

    • A base origem do número (b);
    • O número de algarismos do número (n);
  • A contagem dos algarismos deve ser da direita para a esquerda, de ‘0’ até ‘n-1’.



Conversão de bases

  • Exemplo: Conversão de (10110101)2

  • b = 2, n = 8

  • 1 0 1 1 0 1 0 1

  • (1x27) + (0x26) + (1x25) + (1x24) + (0x23) + (1x22) + (0x21) + (1x20) =

  • 128 + 0 + 32 + 16 + 0 + 4 + 0 + 1 = (181)10



Conversão de bases

  • Conversão da base 10 para uma base B

    • Dividir o número decimal pela base desejada e colocar o resto como o algarismo mais à direita
    • Enquanto o dividendo for maior do que o divisor:
      • dividir o dividendo pelo divisor (= base desejada)
      • Extrair o resto da divisão, colocando-o à esquerda dos algarismos já inseridos
    • Colocar o dividendo (agora menor do que o divisor) como algarismo mais à esquerda.


Conversão de bases

  • Exemplo: Converter (13)10 para a base binária

  • 13 /2 = 6 (novo dividendo), resto 1

  • Resultado parcial: 1

  • 6/2 = 3 (novo dividendo), resto 0

  • Resultado parcial: 01

  • 3/2 = 1 (novo dividendo), resto 1

  • Resultado parcial:101

  • Como o último dividendo(1) é menor do que o divisor (2), ele é simplesmente colocado à esquerda do resultado parcial  1101



Aritmética Binária

  • Soma

    • 0 + 0 = 0
    • 0 + 1 = 1 + 0 = 1
    • 1 + 1 = 0 ( vai 1)
  • Subtração

    • 0 - 0 = 1 - 1 = 0
    • 1 - 0 = 1
    • 0 - 1 = 1 ( pede emprestado o primeiro 1 à esq.)


Aritmética Octal

  • Semelhante à binária. O “vai 1” ocorre quando a soma for maior ou igual a 8.

  • Quando é necessário “pedir emprestado”, o valor que vem é igual a 8.

  • Exemplos

  • 3657 7312

  • + 1741 - 3465

  • 5620 3625



Aritmética Hexadecimal

  • Semelhante à binária. O “vai 1” ocorre quando a soma for maior ou igual a 16.

  • Quando é necessário “pedir emprestado”, o valor que vem é igual a 16.

  • Exemplos:

    • A012 A125
    • + 9201 - 9484
    • 13213 CA1


Lógica Digital

  • Porta - Elemento de hardware que recebe um ou mais sinais de entrada e, de acordo com a operação definida, produz uma saída.

  • Porta lógica - Porta(hardware) que recebe valores de entrada, e realiza uma operação lógica sobre eles, produzindo uma saída.

  • Operação lógica - produz um resultado que pode assumir dois valores. (0 ou 1, V ou F).



Lógica Digital

  • Tabela Verdade:Conjunto de resultados da operação lógica para todas as combinações possíveis de entrada.

  • Cada operação lógica possui um símbolo matemático que a representa, assim como uma porta lógica, que também possui um símbolo gráfico para representa-la.



Álgebra Booleana

  • Circuitos combinatórios - Conjunto de portas lógicas cuja saída a qualquer instante é uma função exclusiva das entradas

  • Circuitos seqüenciais - Possuem, além das portas lógicas, elementos de armazenamento temporário de informações.



Circuitos Combinatórios

  • Decodificador

    • É um circuito combinatório com n linhas de entrada e 2n linhas de saída, onde cada combinação de entradas irá gerar uma única saída ativa.
    • Este circuito é utilizado na decodificação de instruções e endereços.


Circuitos seqüenciais

  • Flip-flops

    • Compõem os circuitos seqüenciais que, além das operações realizadas nas portas lógicas, podem reter informações por algum tempo.
    • Representam o elemento básico de armazenamento de informações.


Circuitos Seqüenciais

  • Flip-flop SR

    • Controle do estado:
      • Quando ambas as entradas forem ‘0’  permanece no estado atual;
      • Se ‘S’ passar para o estado ‘1’ e ‘R’ continuar em ‘0’  o flip-flop passa para o estado ‘1’;
      • Se ‘R’ passar para o estado ‘1’ e ‘S’ continuar em ‘0’  o flip-flop passa para o estado ‘0’;
      • Se ambos estiverem em ‘1’ o flip-flop fica instável.


Memória

  • Subsistema responsável pelo armazenamento de informações (dados e instruções)

  • Nas memórias, existem duas operações possíveis: leitura (read) ou escrita (write)

  • Organização de forma hierárquica com o objetivo de obter uma relação custo/benefício adequada.



Memória

  • Parâmetros de classificação:

    • Tempo de acesso: tempo em que uma informação requerida se torna disponível;
    • Ciclo de memória: tempo decorrido entre dois acessos consecutivos;
    • Capacidade de armazenamento: quantidade de informações que podem ser armazenadas;
    • Volatilidade: Perda das informações na ausência de energia elétrica;


Memória

  • Parâmetros de classificação (cont.):

    • Tecnologia de fabricação: meios magnéticos (HD’s, disquetes), meios semi-condutores (RAM, cache) e meios óticos (CD);
    • Temporariedade;
    • Custo.


Hierarquia de Memória

  • Registradores:

    • Dispositivos de armazenamento localizados no próprio processador;
    • O processador trabalha buscando instruções e dados na memória principal (RAM) e as colocando em registradores;
    • Enquanto estiverem sendo usados, os dados e instruções permanecem nos registradores.


Hierarquia de Memória

  • Registradores:

    • Tempo de acesso reduzido, pouco espaço de armazenamento e alto custo;
    • Dispositivos voláteis;
    • São divididos em registradores de propósito geral e específicos


Hierarquia de Memória

  • Memória cache:

    • Meio intermediário de armazenamento entre o processador e a memória RAM;
    • Tempo de acesso bem mais curto do que o da RAM;
    • Seu objetivo é minimizar os efeitos da diferença de velocidade entre o processador e a memória principal.


Hierarquia de Memória

  • Memória Cache:

    • Toda busca de instruções e dados é feita inicialmente na cache;
    • Dispositivo de armazenamento volátil com capacidade de armazenamento superior à dos registradores.


Hierarquia de Memória

  • Memória RAM:

    • Máquina de Von Neuman;
    • Meio para o qual os dados de instruções de um programa devem ser carregados antes da sua execução;
    • São mais lentas do que as caches, porém bem maiores e mais baratas.


Hierarquia de Memória

  • Memória secundária:

    • Grande capacidade de armazenamento;
    • Exemplos: HD’s, disquetes, CD’s, fitas, etc;
    • Dispositivos não voláteis, utilizados para o armazenamento de informações em caráter permanente.


Memória Principal

  • Todos os programas a serem executados pela CPU devem ser carregados para a MP.

  • Palavra - unidade de informação que deve representar um dado ou instrução.

  • Célula - grupo de bits identificados por um endereço.



Memória Principal

  • Unidade de transferência - quantidade de bits transferidos entre MP e CPU.

  • Organização: N células endereçadas de 0 a (N-1) seqüencialmente, cada uma contendo M bits.

  • Duas operações possíveis: leitura (read) ou escrita (write).



Memória Principal

  • Quantidade de bits por célula - definida pelo fabricante.

  • Em uma célula com M bits podemos armazenar 2M combinações diferentes.

  • Padrão adotado pela maioria dos fabricantes é de células de 8 bits (1 byte)

  • Quantidade de bits do endereço indica a quantidade de células endereçáveis.

  • Endereço X Conteúdo de células



Memória Principal

  • As operações realizadas na MP envolvem os seguintes elementos:

    • Barramento de dados;
    • Barramento de endereços;
    • Barramento de controle;
    • RDM (Registrador de Dados da Memória);
    • REM (Registrador de Endereços da Memória).


Memória Principal - Leitura



Memória Principal - Escrita

  • Passos:

  • 1) Preencher o RDM;

  • 2) Preencher o REM;

  • 3) Sinal de escrita no barramento de controle;

  • 4) MP(REM)  RDM



Memória Principal - Medidas

  • 1K  210 (1024);

  • 1M  220 (1.048.576);

  • 1G  230 (1.073.741.824);

  • 1T  240 (1.099.511.627.776);

  • Normalmente se mede a capacidade da memória através do seu número de células (bytes),



Memória Principal

  • Tecnologias:

    • DRAM (Dynamic Random Access Memory);
    • ROM (Read Only Memory);
    • PROM (Programmable ROM);
    • EPROM (Erasable PROM) - apagável através de luz ultra-violeta;
    • EEPROM (Eletrically EPROM) - pode ser apagada pela CPU.


Memória Cache

  • Motivação: grande diferença de velocidade entre CPU e MP (Gargalo de Von Neuman).

  • Conceito de localidade:

    • Localidade Temporal;
    • Localidade Espacial.


Memória Cache

  • Funcionamento da Cache

    • Processador, sempre que precisa buscar uma nova instrução, tentaa antes na cache.
    • Quando a informação desejada está na cache, ocorre um hit (acerto).
    • Quando a informação não está na cache, ocorre um miss (falta).


Memória Cache

  • Para que a cache seja produtiva e vantajosa, é necessário que haja mais acertos do que faltas.

  • Elementos a serem considerados no projeto de cache:

    • Tamanho;
    • Mapeamento de dados;
    • Políticas de substituição de blocos;
    • Política de escrita da cache para a Memória Principal.


Memória Cache

  • Fatores que influenciam o tamanho da cache:

    • Tamanho da M;
    • Relação entre acertos e faltas;
    • Tempo de acesso da MP;
    • Custo;
    • Tempo de acesso da cache;
    • Natureza do programa em execução (localidade).


Memória Cache

  • Mapeamento de Dados MP/Cache - MP dividida em blocos (B) e Cache em quadros (Q), onde Q << B.

  • Três tipos:

    • Mapeamento direto;
    • Mapeamento (completamente) associativo;
    • Mapeamento associativo por grupos (ou conjuntos).


Memória Cache

  • Mapeamento direto

    • Cada bloco da MP só pode ser colocado em um único quadro da cache.
    • A definição do quadro da cache onde um bloco da MP será copiado é baseada no seguinte cálculo:
    • N = E mod Q
    • onde N = número do quadro na cache, E = endereço na MP e Q = quantidade de quadros na cache


Memória Cache

  • Mapeamento direto (cont.) divisão dos bits do endereço de MP:

    • 6 bits menos significativos: byte de dados desejado pela CPU
    • 10 bits do meio: endereço do quadro da cache.
    • 16 bits mais significativos: indica qual dos blocos alocados a um determinado quadro está sendo referenciado.


Memória Cache

  • Mapeamento direto - passos de uma operação de leitura:

    • CPU apresenta o endereço de leitura;
    • Exame dos 10 bits centrais para verificar o quadro da cache a ser usado;
    • Comparação do tag (neste exemplo, é igual);
    • Acesso ao byte definido pelos 6 bits menos significativos;
    • Se o tag não fosse igual, significaria uma falta ou miss de cache.


Memória Cache

  • Mapeamento (totalmente) associativo:

    • Neste tipo de mapeamento, os blocos da MP podem se colocados em qualquer quadro da cache.
    • Divisão do endereço:
      • 6 bits menos significativos: byte desejado pela CPU;
      • 26 bits mais significativos: endereço do bloco desejado.


Memória Cache

  • Mapeamento (totalmente) associativo (cont.):

    • Sempre que houver acesso à memória, o controlador varre todos os quadros da cache em busca do endereço desejado.
    • Se o endereço não for encontrado (miss), o bloco é trazido da MP para a cache e o algoritmo de substituição de blocos irá decidir qual dos quadros terá seu conteúdo substituído.


Memória Cache

  • Mapeamento associativo por conjuntos:

    • É uma técnica que procura resolver os problemas das duas técnicas anteriores.
    • A cache é organizada em conjuntos e dentro destes os quadros são completamente associativos


Memória Cache

  • Mapeamento associativo por conjuntos (cont.):

    • A memória cache é dividida em C conjuntos com D quadros
    • Desta forma:
    • Q = C x D;
    • K = E mod C;
    • onde k é o número do quadro no conjunto e E o endereço gerado pela CPU


Memória Cache

  • Mapeamento associativo por conjuntos:

    • Divisão do endereço
      • 6 bits menos significativos indicam o byte desejado;
      • 9 bits centrais indicam o número do conjunto que vai ser pesquisado;
      • 17 bits mais significativos indicam o tag de comparação


Memória Cache

  • Mapeamento associativo por conjuntos:

    • Passos da busca:
    • 1) Controladora da cache usa os bits centrais para descobrir qual conjunto será acessado;
    • 2) Comparação do tag com todos os quadros do conjunto em questão;
    • 3) Acesso ao byte desejado.


Memória Cache

  • Algoritmos de substituição de dados na cache:

    • LRU (Least Recenlty Used): o bloco a ser substituído é aquele que está há mais tempo sem ser usado;
    • FIFO (First In First Out): Os blocos são substituídos com base na ordem em que chegaram na cache;
    • LFU (Least Frequently Used): o bloco a ser substituído é aquele que foi usado com menos freqüência;
    • Escolha aleatória.


Memória Cache

  • Políticas de escrita:

    • Write through: escrita simultânea na cache e na MP;
    • Write back: a escrita só e feita no momento em que um bloco for substituído e, mesmo assim, somente se ele sofreu alteração;
    • Write once: usado apenas em sistemas com multiprocessamento.


CPU

  • Funções:

    • Processamento;
    • Controle
  • Componentes:

    • UC (Unidade de Controle);
    • Registradores;
    • ALU’s, FPU’s etc.


CPU

  • Ciclo de instrução:

    • Busca instrução;
    • Decodifica a instrução;
    • Busca operandos;
    • Executa a instrução;
    • Escreve os resultados;
    • Retorna ao primeiro passo.


CPU - Processamento

  • Execução propriamente dita das instruções

  • Esta função envolve a UAL, FPU’s e registradores;

  • Exemplos:

    • Operações aritméticas;
    • Operações lógicas;
    • Movimentação de dados;
    • Desvios (branch);
    • Entrada / Saída.


CPU - Processamento

  • Registradores: elementos de armazenamento das informações usadas pelas instruções. Podem ser:

    • Propósito geral;
    • Propósito específico.


CPU - Processamento

  • Implicações do tamanho da palavra:

    • Tempo de processamento em ciclos de relógio;
    • Desempenho em relação aos barramentos internos e externos da CPU;
    • Tamanho (largura) dos registradores.


CPU - Controle

  • As atividades de controle da CPU compreendem:

    • Busca e decodificação das instruções a serem executadas;
    • Geração de sinais de controle que irão ativar os diversos componentes internos e externos da CPU.


CPU - Controle

  • Dispositivos envolvidos nas atividades de controle:

    • UC: unidade de controle;
    • RI (ou IR) - Registrador de instruções (Instruction Register);
    • CI (ou PC) - Contador de instruções (Program Counter)
    • Clock (Relógio);
    • RDM (Registador de dados da memória);
    • REM (Registrador de endereços de memória).


CPU - Controle

  • UC - movimentação de dados e controle da ALU (ou UAL);

  • Clock - gerador de pulsos que sincronizam os trabalhos da CPU. Freqüência medida em MHZ;

  • RI - armazena a instrução que está sendo executada;

  • PC - armazena o endereço da próxima instrução a ser buscada.



CPU - Controle

  • Decodificador de instruções - descobre qual a instrução que será executada pela CPU;

  • RDM - armazena o dado que vai para memória ou que acabou de chegar da memória.

  • REM - Armazena temporariamente o endereço de um acesso à memória (leitura ou escrita).



CPU

  • Instrução de máquina - é uma operação básica que o processador consegue interpretar e executar.

  • (ISA - Instruction Set Architecture) - conjunto de instruções que um processador é capaz de executar.

  • CISC - Complex Instruction Set Computer.

  • RISC - Reduced Instruction Set Computer.



CPU

  • Formato de instruções:

    • Código de operação (opcode) - é o identificador da instrução a ser executada;
    • Operandos - dados que serão manipulados pela instrução.
  • Dentro de um ISA podem existir vários formatos de instrução.



CPU

  • Linguagem Assembly - conjunto de símbolos que representam as instruções de máquina de forma mais amigável para o ser humano.

  • Assembler - é quem faz a tradução do código Assembly para a linguagem de máquina.



CPU

  • Pipeline:

    • Divisão das instruções em pedaços que são executados separadamente;
    • Cada estágio de um pipeline executa uma parte de cada instrução;
    • Possibilidade de execução de várias instruções simultaneamente, em estágios diferentes.


Entrada / Saída

  • Subsistema do computador responsável pelo fornecimento de informações e exibição dos resultados produzidos.

  • Os componentes do sistema de E/S são chamados de periféricos por se localizarem fora do núcleo CPU/MP

  • O processador deve se comunicar com periféricos que possuem diferentes velocidades e formas de representar e transmitir seus dados.



Entrada / Saída

  • É necessário que exista um componente intermediário entre o processador e cada um dos periféricos.

  • As controladoras de periféricos realizam o papel da comunicação entre os periféricos e o núcleo CPU / MP.



Entrada / Saída

  • Existem duas formas de comunicação entre a CPU / MP e os periféricos:

    • Transmissão serial: Os dados são transmitidos um bit de cada vez (Ex: Teclado e Mouse).
    • Transmissão paralela: Os dados são transmitidos em grupos de bits (Ex: HD’s e Vídeo)


Entrada / Saída

  • Principais dispositivos de E/S:

    • Teclado;
    • Mouse;
    • Monitor de Vídeo;
    • Impressora;
    • HD’s, disquetes, CD’s e Fitas Magnéticas;
    • Scanners;
    • MODEM’s
    • Etc.


Entrada / Saída

  • Interrupções: Sempre que uma operação de E/S é solicitada pelo processador, a controladora respectiva a executa e, ao final, realiza uma interrupção para informar o término da mesma.

  • DMA (Direct Memory Access): Técnica que minimiza a participação do processador em operações de E/S, permitindo que as controladoras acessem a memória diretamente.



Yüklə 131 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə