A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Revisão. Conceitos Fundamentais Arquitetura da CPU Unidade de Controle Unidade lógica e Aritmética Barramento interno Registradores.

Apresentações semelhantes


Apresentação em tema: "Revisão. Conceitos Fundamentais Arquitetura da CPU Unidade de Controle Unidade lógica e Aritmética Barramento interno Registradores."— Transcrição da apresentação:

1 Revisão

2 Conceitos Fundamentais Arquitetura da CPU Unidade de Controle Unidade lógica e Aritmética Barramento interno Registradores

3 Conjunto de unidades de armazenamento; Funcionam num nível de hierarquia acima da memória principal e da memória cache;hierarquia Também conhecida como memória de rascunho; Divide-se em dois tipos: – Visíveis ao usuário; – Controle e estado;

4 Registradores visíveis ao usuário Podem ser acessados pelo usuário através das linguagens de maquina ou de montagem; Minimizam as referencias a memória principal; São classificados em: – Registrador de Propósito geral – Registrador de dados; – Registrador de endereço; – Registrador de código de condição;

5 Registradores de código de condição (flags) Armazenam bits que definem o resultado de uma operação; Esses bits podem indicar se o resultado produzido é positivo, negativo, zero ou overflow; Em algumas arquiteturas é representado por um único registrador (de controle); As linguagens de máquina permitem ler esses bits mas não alterar seu valor;

6 Registradores de controle e estado São usados para controlar as ações da CPU; É comum que eles não sejam visíveis ao usuário; Contudo alguns podem ser visíveis no nível de linguagem de maquina e nível de SOnível Existem várias classificações para esse tipo de registrador, variando de máquina para máquina

7 Registradores de controle e estado Contador de Programas (PC) – Contem o endereço da instrução a ser buscada; – É atualizado pela CPU depois de cada busca; – Um salto ou desvio também alteram seu valor; Registrador de instrução (IR); – Contem a ultima instrução buscada;

8 Registradores de controle e estado Registrador de endereçamento (MAR); – Contém o endereço de uma posição de memória; Registrador de armazenamento Temporário de dados (MBR); – Contém uma palavra de dados a ser escrita na memória ou a palavra lida recentemente; – Usado para trocar dados com os registradores visíveis ao usuário; – Pode ser acessado diretamente pela ULA;

9 Registradores de controle e estado Registradores de Armazenamento temporários

10 Projeto de Registradores Visíveis ao usuário Decidir entre propósito geral ou uso especifico; – A especialização economiza bits, porem limita a flexibilidade da programação – A tendência atual é especializar Decidir o número de registradores – Um numero elevado requer mais bits para especificar um operando – Um numero reduzido implica em mais acessos a memória

11 Projeto de Registradores Visíveis ao usuário Decidir o tamanho dos registradores – Devem ter tamanho suficiente para conter o maior endereço de memória; – Devem ser capazes de conter os dados da maioria dos tipos disponíveis

12 Projeto de Registradores de Controle e Estado Decidir sobre o suporte ao SO – Certos tipos de informações de controle são úteis ao SO – O projeto pode ser feito de acordo com as necessidades do SO Decidir sobre a alocação de dados de controle entre os registradores e a memória – Levando em conta custo e taxa de acesso o que deve ficar na em cada um?

13 Respostas Trabalho Descreva a arquitetura básica da CPU, mostrando seus componentes e a função de cada um deles.

14 Tarefas da CPU Buscar instruções Interpretar Instruções Buscar dados Processar dados Escrever Dados

15 O Ciclo de instruções Ciclo simples InicioFim Busca da próxima instrução Execução da instrução Ciclo de busca Ciclo de execução

16 O Ciclo de instruções Ciclo de busca – Lê a próxima instrução da memória – Essa instrução esta armazenada no Contador de Programas (PC) – O processador incrementa o valor de PC – A instrução buscada é armazenada no registrador de instruções (IR)

17 O Ciclo de instruções Ciclo de Execução – Interpreta o código da operação e efetua a mesma; – As ações efetuadas podem ser: Processador-memória Processador-E/S Processamento de dados Controle

18 O Ciclo de instruções Exemplo: Formato da instrução Formato dos números Lista de operações – 0001 (1) – Carregar o valor em AC – 0010 (2) – Armazenar o valor de AC na memória – 0101 (5) – Somar o valor de AC com o valor de um endereço Código da operação Endereço Sinal Magnitude

19 O Ciclo de instruções Exemplo: – Ciclo de instruções para o código A = A + B; – São necessárias 3 instruções: Carregar o valor de A Somar o valor de B com valor de A Guardar o resultado em A e armazenar na memória – Será realizado é 3 ciclos de busca e execução totalizando 6 passos;

20 O Ciclo de instruções Exemplo: PC AC IR MemóriaRegistradores da CPU Passo 1

21 O Ciclo de instruções Exemplo: PC AC IR MemóriaRegistradores da CPU Passo 2

22 O Ciclo de instruções Exemplo: PC AC IR MemóriaRegistradores da CPU Passo 3

23 O Ciclo de instruções Exemplo: PC AC IR MemóriaRegistradores da CPU Passo = 5

24 O Ciclo de instruções Exemplo: PC AC IR MemóriaRegistradores da CPU Passo 5

25 O Ciclo de instruções Exemplo: PC AC IR MemóriaRegistradores da CPU Passo 6

26 O Ciclo de instruções Ciclo ampliado Busca da instrução Execução da instrução Interpretação da instrução Calculo de endereço do operando Busca de operando Armazenamento do operando Cálculo do endereço da instrução Calculo de endereço do operando

27 Interrupções Mecanismo pelo qual um componente de arquitetural pode interromper a seqüência normal de execução Visa a melhoria no desempenho do processador São agrupadas em: – Interrupção de Software – Interrupção de relógio – Interrupção de E/S – Interrupção de falha de hardware

28 Interrupções Exemplo: – Um dada impressora recebe um fluxo de dados provenientes do final de um ciclo de execução; – Essa impressora demora muito para terminar imprimir os dados no papel; – O que a CPU deve fazer enquanto espera esses dados serem impressos? Sem um sistema de interrupção ela fica parada Com sistema de interrupção ela faz pequenas pausas.

29 Interrupção Ciclo com interrupção Busca da instrução Execução da instrução Interpretação da instrução Calculo de endereço do operando Busca de operando Armazenamento do operando Cálculo do endereço da instrução Calculo de endereço do operando Verifica ocorrência de interrupção Interrupção

30 Pipeline Técnica de implementação de processadores que permite a sobreposição temporal das diversas fases de execução das instruções Constituído por seqüência de estágios operando em paralelo Funciona de modo semelhante a uma linha de montagem Seu uso visa a melhora no desempenho do processador

31 Características do Pipeline Aumenta o número de instruções executadas simultaneamente Aumenta taxa de instruções iniciadas e terminadas por unidade de tempo Melhora o desempenho do processo (throughput) Não reduz o tempo gasto para completar cada instrução individualmente.

32 Pipeline do ciclo de instrução Suponha que o ciclo pudesse ser resumido dos seguintes estágios: – Busca de Instrução (BI) – Decodificação da Instrução (DI) – Cálculo de (endereço) Operandos (CO) – Busca de Operandos (BO) – Execução da Instrução (EI) – Armazenamento de Operandos (AO)

33 Pipeline do ciclo Exemplo 3 Instrução Instante de Tempo BIDICOBOEIAO 2 BIDICOBOEIAO 3 BIDICOBOEIAO 4 BIDICOBOEIAO

34 Características do Pipeline Deve-se procurar dividir a execução da instrução em estágios com o mesmo Tempo Contudo alguns estágios são mais lentos: – O estagio execução é geralmente mais lento que o de busca Quando os estágios não tem o mesmo tempo: – Algumas instruções podem ter o seu tempo aumentado – Isso ocorre pois elas atravessam estágios em que não realizam nenhuma operação útil

35 Pipeline do ciclo Exemplo 4 Instrução Instante de Tempo BIBI DICO BOBO EIAO 2 BIBI DICO BOBO EIAO 3 BIBI DICO BOBO EIAO 4 BIBI DICO BOBO EIAO

36 Pipeline do ciclo Exemplo 5 Instrução Instante de Tempo BIBI DICO BOBO EIAO 2 BIBI DICO BOBO EI AO 3 BIBI DICO BOBO EIAO 4 BIBI DICO BOBO EIAO

37 Conflitos Situações que impedem a próxima instrução dentro de uma fila de ser executada no ciclo esperado Os Conflitos reduzem o tempo de ganho obtido pelo pipelining Existem três classes de conflitos: – Estrutural – de Dados – de Controle

38 Conflitos Estruturais Oriundos de um hardware que não suporta a sobreposição simultânea de todas as etapas de instruções No exemplo da lavanderia seria o equivalente a implementar um pipeline onde só existisse uma tomada para a máquina de lavar e para a máquina de secar.

39 Conflitos de Dados Ocorrem quando uma instrução para ser executada depende dos resultados gerados por alguma instrução anterior que ainda não foi completada No exemplo da lavanderia seria um caso em que a secadora demorou demais para secar uma roupa e já tem a roupa lavada de outro cliente na fila para secar.

40 Conflito de Controle Ocorrem quando uma instrução de salto condicional (desvio) entra no pipeline provocando o cancelamento de instruções subsequentes que também entraram no pipeline.

41 Pipeline do ciclo c/ desvio Exemplo 6 Instrução Instante de Tempo BIBI DICO BOBO EIAO 2 (salto p/ 5) BIBI DICO BOBO EIAO 3 BIBI DICO BOBO 4 BIBI DICO 5 BIBI DICO

42 Pipeline do ciclo c/ desvio Exemplo 6 (continuação) Instrução Instante de Tempo (salto p/ 5) 3 EIAO 4 BOBO EIAO 5 (salto p/3) BOBO EIAO

43 Memória Principal Memória que armazena os dados e programas em linguagem de máquina em execução corrente Razoavelmente barata Tempo de acesso da ordem de nano-segundos a dezenas de nano-segundos Freqüência de acesso alta. Se não existisse a memória Cache, seria acessada a cada ciclo de busca-decodificação-execução

44 Hierarquia de memória Modelo hierárquico

45 Memória Principal Cada posição da memória principal tem um endereço único Geralmente é combinada com uma memória Cache menor e mais veloz – A Cache geralmente não é visível ao usuário – È usada para melhorar o desempenho

46 Endereçamento A memória principal é organizada como um conjunto de n células (ou posições) capazes de armazenar, cada uma, m bits. Cada célula é identificada por um endereço (código binário associado) de k bits através do qual é referenciada.bits Os endereços são numerados de zero a n-1.

47 Endereçamento Existem 2 k possíveis endereços. Assim, o máximo número de células endereçáveis é 2 k. A célula é a menor unidade de memória endereçável Uma célula poderá armazenar qualquer uma das 2 m possíveis combinações diferentes dos seus m bits. Onde m é independente de n.

48 Endereçamento Os m de bits de uma célula são acessados simultaneamente m pode ser qualquer número inteiro mas, nos últimos anos, os fabricantes padronizaram um tamanho de 8 bits (1 byte).

49 Endereçamento Bytes são agrupados em Palavras A maioria das instruções opera sobre palavras Registradores da CPU geralmente são do tamanho de uma palavra.

50 Ordenação Os bytes de uma palavra podem ser numerados da esquerda para a direita ou da direita para a esquerda Quando a numeração dos bytes começa da esquerda para a direita da palavra, a ordenação dos bytes é dita Big Endian Quando a numeração dos bytes começa da direita para a esquerda da palavra, a ordenação dos bytes é dita Little Endian

51 Ordenação Big Endian

52 Ordenação Little Endian

53 Ordenação Problema: ao transmitir informações de uma máquina big endian para uma little endian, (ou vice- versa), os bytes de uma palavra são invertidos (o seu valor numérico muda completamente).

54 Evolução O aperfeiçoamento das memórias centrou-se no aumento da sua capacidade de armazenar O aperfeiçoamento das CPU's centrou-se no seu desempenho A memória principal tem grande capacidade de armazenamento porem seu acesso é lento Ela pode se tornar um "gargalo" para a CPU, que deve esperar muito para receber os dados dela

55 Soluções É possível projetar uma memória com velocidade compatível com a CPU? Sim, mas é muito caro! Seria possível embutir a memória no chip da CPU e reduzir o uso do barramento? Sim, mas existem restrições ao aumento do tamanho do chip!

56 A melhor Solução Memória Cache! Memória rápida, porem cara e de menor capacidade Contudo, associada à memória principal, (barata e de grande capacidade), resulta num sistema: – razoavelmente barato – razoavelmente rápida – de grande capacidade

57 Memória Cache Na Cache são mantidas as palavras mais usadas pelo processador Se a maior parte dos acessos for resolvida pela Cache, o tempo médio de acesso será próximo do tempo de acesso ao Cache, que é pequeno.

58 Arquitetura com a Cache Conexão Lógica entre CPU, Cache e Memória Principal. X = X + Y

59 Notas importantes O acesso à RAM não é totalmente aleatório Referências à memória num certo intervalo de tempo pequeno tendem a acessar uma pequena parte da memória total Essa pequena parte é geralmente chamada de bloco Nestes blocos os endereços estão ordenados numa seqüência lógica para a execução da CPU

60 Principio da Localidade Definição: – Existe grande probabilidade que palavras próximas a uma palavra recentemente referenciada também sejam referenciadas nos próximos acessos Aplicação: – Quando uma palavra é referenciada pelo processador, se ela não estiver no Cache, ela é trazida para o mesmo junto com palavras de endereços vizinhos na memória principal

61 Organização Memória principal é divididas em blocos de endereços de tamanho fixo A Cache é dividida em linhas Sempre que uma endereço procurada não estiver no Cache o bloco correspondente é trazido da memória principal É mais eficiente trazer k endereços de uma vez do que uma endereço k vezes

62 Mapeamento Como associar um dado na memória principal a uma posição na Cache? Mapeamento: – Direto – Associativo – Associativo por conjuntos

63 Mapeamento Direto Cada bloco da memória principal é mapeado numa linha na Cache, e cada linha da Cache possui um rótulo Como a Cache é muito menor do que a memória principal, muitos endereços compartilham a mesma linha Um endereço é dividido em: – Rótulo – Linha – Palavra

64 Mapeamento Direto O campo linha do endereço é usado para endereçar a Cache e o campo Rótulo do endereço é comparado com o campo Rótulo da linha na Cache É verificado se, dentre as palavras mapeadas naquele linha existe a palavra que esta sendo buscada

65 Mapeamento Direto Endereços diferentes são mapeados na mesmo linha Isso pode comprometer o desempenho, pois palavras irrelevantes podem estar armazenadas na mesma linha, enquanto palavras importantes podem estar armazenadas em linhas diferentes da Cache Se elas estão em diferentes linhas levará mais tempo para encontra-las

66 Mapeamento Associativo Permite que cada bloco da memória seja carregado em qualquer linha da Cache Nesse sistema a Cache é formada apenas por um Rótulo e uma Palavra Um rótulo identifica um bloco da memória principal

67 Mapeamento Associativo A busca de uma palavra na cache envolve duas fases: Determinação do número do bloco a partir do endereço – Obtido dividindo o endereço pelo tamanho b do bloco. Busca da linha que contém este número de bloco – Comparar simultaneamente os campos de número de bloco de todos os linhas com o número de bloco procurado

68 Mapeamento Associativo Na cache associativa, a ordem das entradas é aleatória O microprograma busca a palavra na cache e, se não estiver lá, vai a memória principal armazenando-a Caso a cache esteja cheia alguma palavra deverá ser descartada, de acordo com uma política de substituição adequada

69 Comparação Direto vs Associativo

70 Memória Secundaria Memória de grande capacidade (dezenas de Gigabytes). Armazenamento massivo Implementada em meio magnético (hard disk, fitas magnéticas) ou ótico (CD-ROM, DVD-ROM). Armazena programas e dados não processados correntemente, mas que poderão eventualmente ser utilizados (freqüência de acesso pequena).

71 Memória Secundária Memória lenta e barata Tempo de acesso da ordem de milissegundos Pode também ser utilizada para emular memória principal Isso aumenta o espaço de endereçamento disponível através de técnicas de memória virtual

72 Disco Magnético Constituído de um prato circular de metal ou de plástico, coberto com um material que pode ser magnetizado Os dados são gravados e posteriormente lidos por meio de uma bobina chamada cabeçote Durante a leitura o cabeçote permanece estático, enquanto o disco gira embaixo dele Durante a escrita ele emite pulsos magneticos que gravam os dados no disco

73 Disco Magnético Os dados são organizados no disco em forma de círculos concêntricos chamados de trilha Cada trilha tem a mesma largura do cabeçote

74 Disco Magnético Trilhas adjacentes são separadas por espaços Isso evita a ocorrência de erros devido a falta de alinhamento do cabeçote ou a interferência de campos magnéticos Os dados são transferidos de e para o disco em blocos Os dados são armazenados em regiões do tamanho de um bloco, chamadas setores

75 Características físicas Movimento do cabeçote – Fixo – Existe um cabeçote para cada trilha – Móvel – Um por disco, que se move para alcançar as trilhas Transportabilidade do disco – Não-Removível – Montado permanentemente na unidade de disco – Removível – Pode ser substituído por outro disco na unidade

76 Características físicas Lados – Único – Só um lado do disco é magnetizável – Duplo – Os dois lados são magnetizáveis Pratos – Único – Múltiplos

77 Características físicas Mecanismo do Cabeçote – Contato – O cabeçote toca o disco Esta sujeito a erros mais barato – Espaço Fixo – O cabeçote é posicionado a uma certa de distancia do disco Os dados trafegam mais devagar que o anterior – Espaço Aerodinâmico – Evolução do mecanismo de espaço físico, com cabeçote mais estreito e mais próximo do disco

78 Características físicas Cabeçote com Espaço Aerodinâmico – Aumenta a densidade de dados que trafegam – Disco fica envolvido numa região quase sem ar, livre de varias impurezas – O cabeçote tem formato aerodinâmico – Foi desenvolvido para o modelo de disco Winchester

79 Memória Óptica Desenvolvida a partir de 1983 Surgiu com o CD Era destinado apenas para o armazenamento de áudio digital Com CD-ROM passou a armazenar dados Evoluiu para DVD, inicialmente proposto para armazenar vídeo de alta qualidade

80 Memória Óptica O disco é constituído de uma resina de policarbonato È depois revestida com uma superfície com alto índice de reflexão – Geralmente alumínio A informação digital é registrada na superfície reflexiva como uma serie de sulcos microscópicos

81 Memória Óptica A gravação é feita primeiro com um laser de alta intensidade muito bem focado para criar a um disco matriz Essa matriz é um molde para as cópias A superfície sulcada é protegida contra pó e arranhões

82 Memória Óptica A leitura é feita com um laser de baixa potencia O feixe passa através da cobertura protetora enquanto o motor gira o disco Ao encontrar um sulco a intensidade da luz muda Essa mudança é detectada por um foto-sensor e convertida num sinal digital


Carregar ppt "Revisão. Conceitos Fundamentais Arquitetura da CPU Unidade de Controle Unidade lógica e Aritmética Barramento interno Registradores."

Apresentações semelhantes


Anúncios Google