de saltos Aula de Abril de

Tamanho: px
Começar a partir da página:

Download "de saltos Aula de Abril de"

Transcrição

1 Predição de saltos Aula de Abril de

2 Estrutura desta aula Predição estática e dinâmica Custos da não predição Soluções Predição estática Predição dinâmica Branch History Tables (BHT) com 1 e 2 bits Predição com correlação Limites dos preditores BHT Branch Target Buffers (BTB) Ref: Hennessy e Pattersson, 3.4, de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

3 Predição estática tica e dinâmica Como vimos atrás (aula 9) ocorre um conflito de controlo quando uma instrução de salto condicionado executa um salto para o endereço alvo Se a decisão sobre o salto for feita no andar EX do pipeline simples com 5 andares e se, em função da decisão, se efectuar o salto para o endereço alvo, então as instruções que estão nos andares IF e ID (as que se seguem ao branch) não são válidas devem ser eliminadas stalls e consequente diminuição do CPI Tal como se usam técnicas de escalonamento estático e dinâmico das instruções para os conflitos de dados, também existem técnicas estáticas e dinâmicas de predição de saltos para os conflitos de controlo 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

4 Custos da não predição Os processadores modernos podem ter mais de 10 andares no pipeline entre o cálculo do próximo valor do PC e a resolução do branch eliminação de muitas instruções e redução do CPI 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

5 Soluções Solução em software (compilador) Loop unrolling Aumenta o número de instruções Escalonamento de instruções Determina a condição de salto tão cedo quanto possível (solução limitada) Soluções em hardware Delay slots Substitui bolhas no pipeline por instruções úteis (precisa de apoio do software) Predição de saltos Execução especulativa de instruções depois do branch 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

6 Predição estática tica Predição efectuada no compilador, antes do programa correr Heurísticas simples Branches sempre tomados, isto é, salta-se sempre para o endereço alvo ( Always taken ) Branches nunca tomados, isto é, nunca se salta para o endereço alvo e prossegue-se sempre em sequência, com a instrução que se segue ao branch ( Always not taken ) Se o endereço de salto é anterior ao do branch, o branch é tomado, se endereço para a frente o branch não é tomado ( Backwards taken / Forward not taken ou BTFNT) Quando a predição falha, eliminam-se as instruções que estão para a frente e que já existem no pipeline 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

7 Predição estática tica - resultados 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

8 Predição dinâmica Existem vários esquemas de predição dinâmica BHT ( Branch History Table ) ou BPB ( Branch Prediction Buffer ) com 1 bit BPB com 2 bits BPB com correlação BTB ( Branch Target Buffer ) Outros Combinações de preditores Vamos concentrar a nossa atenção apenas nos 4 primeiros 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

9 BHT com 1 bit (1) Vamos estudar alguns esquemas de predição dinâmica de saltos nos processadores escalares simples (que emitem uma instrução por ciclo de relógio), mas os esquemas são igualmente aplicáveis aos processadores superescalares (na próxima aula) O esquema de predição dinâmica mais simples usa uma Branch History Table (BHT). Este esquema também é conhecido por Branch Prediction Buffer (BPB) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

10 BHT com 1 bit (2) A BHT é uma pequena memória indexada por alguns dos bits menos significativos do endereço de salto (digamos, k bits) Tabela incluída no andar ID A tabela contém 1 bit que indica se, ultimamente, o branch foi tomado ou não (se se efectou ou não um salto), o que designamos por T (tomado) e por N ou por NT (não tomado) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

11 BHT com 1 bit (3) BHT com 2^k entradas e 1 bit/entrada T/N Tomado Não tomado 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

12 BHT com 1 bit (4) T N O estado T* significa vários estados T em sequência O estado N* significa vários N em sequência 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

13 BHT com 1 bit (5) Com este esquema não sabemos de certeza se o salto vai ou não ser tomado Um N ou um T pode ter sido colocado na BHT por um outro branch com os mesmos k bits de indexação no endereço de salto colisão de endereços Tem a vantagem de necessitar de pouco hardware, em relação a uma solução que utilize todos os bits do PC, em vez de apenas k desses bits mas erra muitas vezes quantas? 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

14 BHT com 1 bit (6) Em todos os ciclos, uma BHT de 1 bit dá sempre origem a duas falhas de predição do endereço de salto Na última iteração é inevitável Na primeira iteração porque o bit da BHT foi deixado a N por uma execução anterior do ciclo, e quere-se T Exemplo para ciclo com 9 T e 1 N TTTTTTTTT T N N T TTTTT... A precisão do resultado da previsão é de 80% duas predições incorrectas e oito correctas 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

15 BHT com 1 bit (7) Exemplo mais elaborado, com um ciclo interno e um ciclo externo DADDI R1,R0,#64 Ciclo_ext:... DADDI R10,R0,#20 Ciclo_int:... DSUBI R10,R10,#4 5T, 1N BNE R10,R0,Ciclo_int... 16T, 1N DSUBI R1,R1,#4 BNE R1,R0,Ciclo_ext 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

16 BHT com 1 bit (8) Ex (cont). Porque existem 16 ciclos externos com T, existem 16*2 = 32 predições erradas devidas aos ciclos internos (duas por ciclo), num total de 80 ciclos efectuados (16*5) Ou seja, 32/80 = 2/5 = 40% de predições erradas Não é grande coisa como taxa de erros de predição Consegue-se melhor com outros esquemas de predição mais poderosos 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

17 BHT com 2 bits (1) A primeira melhoria consiste em considerar uma BHT com 2 bits por entrada, o que permite codificar 4 estados do preditor em cada entrada Neste esquema deve-se errar duas vezes antes de podermos considerar o facto como uma mudança de predição (de T para N ou de N para T) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

18 BHT com 2 bits (2) BHT com 2^k entradas e 2 bits/entrada 00,01,10,11 NN, NT, TN, TT ou outra designação qualquer para os 4 estados possíveis do preditor de saltos 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

19 BHT com 2 bits (3) O estado T* significa vários T em sequência, o estado T*N significa vários T seguido de um N, o estado N* significa vários N em sequência, e o estado N*T significa vários N seguido de um T 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

20 BHT com 2 bits (4) Este esquema é implementado no andar ID com contadores de 2 bits, cujos valores identificam os 4 estados do preditor Os contadores são incrementados com um T e decrementados com um N Os contadores saturam a 00 e a 11 T* = 11, T*N = 10, N* = 01 e N*T = de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

21 BHT com 2 bits (5) Quando o endereço alvo do branch é efectivamente determinado (no andar EX, em princípio) o preditor desse salto é actualizado de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

22 BHT com 2 bits (6) Esquema alternativo, com contadores diferentes T* = 11, T*N = 10, N* = 00 e N*T = de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

23 BHT com 2 bits (7) Comparação Nos dois esquemas 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

24 BHT com 2 bits (8) Comparação Esquema 1 Esquema 2 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

25 BHT com 2 bits (9) A situação que conduz a mais erros de predição corresponde a Ts e Ns alternados Quanto maior for a cadeia de Ts ou de Ns seguidos, melhor a precisão da previsão ciclos longos Dimensão típica de uma BHT = 4k entradas Os preditores BHT com 2 bits também se designam por bimodais A experiência mostra que não se ganha quase nada em ir para esquemas de predição BHT com n>2 bits Ambos os esquemas conseguem aproximadamente 85% a 95% de precisão para a maioria das aplicações mas pequenas diferenças de comportamento, como se acabou de verificar no exemplo anterior 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

26 Predição com BHT - resultados Resultados para os processadores bimodais 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

27 Predição com correlação (1) Os preditores anteriores consideram apenas o comportamento da instrução de salto para preverem o seu comportamento futuro Funcionam bem para programas de cálculo em vírgula flutuante baseados na execução de ciclos de código estruturados Funcionam mal para programas com diferentes instruções de salto com comportamento dependente (saltos correlacionados) Saltos correlacionados ocorrem com frequência em programas com variáveis inteiras 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

28 Predição com correlação (2) Exemplo: O 3º branch está correlacionado com o 1º e com o 2º: 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

29 Predição com correlação (3) Um preditor que apenas utilize o comportamento de um único salto não consegue prever a situação anterior Será, então, interessante utilizar o comportamento dos últimos m saltos para aumentar a precisão da previsão Ou seja, em vez de se guardar em memória a história dos resultados mais frequentes da instrução de salto, guarda-se a história exacta dos m saltos mais recentes Utiliza o comportamento dos últimos m saltos para seleccionar uma de 2m tabelas de predição (BHT) de n bits (para um único salto) Obtemos, assim, esquemas de predição (m,n) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

30 Predição com correlação (4) Os preditores com correlação espacial também se designam por preditores a dois níveis Correlação espacial quer dizer que os últimos saltos podem dar resultados extrapoláveis para o salto que se segue (porque o fluxo do código correlaciona os saltos) Por oposição a correlação temporal, que significa que o resultado de um salto pode constriruir uma boa previsão do comportamento desse salto na próxima vez (foi o que se fez com os preditores BHT) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

31 Predição com correlação (4) Esquema de predição (1,1) usa informação sobre o último salto para seleccionar entre um par de tabelas de predição de 1 bit Esquema de predição (2,2) usa informação sobre os últimos 2 saltos para seleccionar entre uma de 4 tabelas de predição de 2 bits Esquema de predição (0,2) é o esquema de predição sem correlação com tabela de predição de 2 bits O comportamentos dos últimos m saltos é guardado num registo de história de saltos (BHR ou Branch History Register ) O BHR é geralmente implementado com um registo de deslocamento de m bits 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

32 Predição com correlação (5) Preditor (2,2) Ideia: T/N dos 2 saltos anteriores é relacionado com o comportamento do salto actual (bem como com a história desse salto) Só actualiza a predição na tabela seleccionada 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

33 Predição com correlação (6) Preditor (2,2): implementação 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

34 Predição com correlação (7) Exemplo para um preditor (1,1) Consideremos o seguinte código e respectiva sequência em Assembly, supondo que d está em R1 if (d==0) d=1; if (d==1)... BNEZ R1,L1 ; branch b1 (d!=0) DADDIU R1,R0,#1 ; d==0, portanto d=1 L1: DADDIU R3,R1,#-1 BNEZ R3,L2 ; branch b2 (d!=1)... L2: 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

35 Predição com correlação (8) Exemplo para um preditor (1,1) Vamos ver como se comporta esta sequência para valores de d = 0, 1 e 2 Os branches são b1 e b2 Valor inicial de d d==0? b1 Valor de d antes de b2 d==1? 0 Sim NT 1 Sim NT 1 Não T 1 Sim NT 2 Não T 2 Não T b2 b1 b2 BNEZ R1,L1 ; branch b1 (d!=0) DADDIU R1,R0,#1 ; d==0, portanto d=1 L1: DADDIU R3,R1,#-1 BNEZ R3,L2 ; branch b2 (d!=1)... L2: 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

36 Predição com correlação (9) Um preditor BHT com 1 bit inicializado a NT teria o seguinte comportamento admitindo d=2,0,2,0 admitindo que a sequência é executada múltiplas vezes ignorando outros saltos d=? Predição de b1 O que b1 faz Nova predição de b1 Predição de b2 O que b2 faz Nova predição de b2 2 NT T T NT T T 0 T NT NT T NT NT 2 NT T T NT T T 0 T NT NT T NT NT Todos os saltos incorrectamente previstos! 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

37 Predição com correlação (10) Um preditor com correlação do tipo (1,1) usa o último salto para escolher entre dois preditores de 1 bit X/Y quer dizer X no caso de última predição ter sido NT e Y no caso de ter sido T d=? Predição de b1 O que b1 faz Nova predição de b1 Predição de b2 O que b2 faz Nova predição de b2 2 NT/NT T T/NT NT/NT T NT/T 0 T/NT NT T/NT NT/T NT NT/T 2 T/NT T T/NT NT/T T NT/T 0 T/NT NT T/NT NT/T NT NT/T Predições iniciais a verde Erros de predição a vermelho A bold está a última acção Só há dois erros (iniciais) na predição 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

38 Precisões dos diversos esquemas 4096 entradas, BHT com 2 bits Nº de entradas ilimitado, BHT com 2 bits 1024 entradas, com correl., esquema (2,2) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

39 Limites dos preditores BHT (1) Andares do superpipeline de fetch das instruções do UltraSPARC-III (emissão em ordem, superescalar de 4 vias, 750 MHz, ano 2000) Conhecido o endereço alvo do branch Conhecido o sentido do Branch (T/N) Geração do PC/Mux Fetch da instrução, andar 1 Fetch da instrução, andar 2 Cálculo do endereço do branch/começa a desc Termina a descodificação Encaminha instruções para as Unidades Funcionais Lê a Register File Execução inteira + 6 andares do pipeline de execução 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

40 Limites dos preditores BHT (2) Penalização devida a um salto que é tomado devidamente Penalização devida a um salto que é tomado indevidamente Geração do PC/Mux Fetch da instrução, andar 1 Fetch da instrução, andar 2 Cálculo do endereço do branch/começa a desc Termina a descodificação Encaminha instruções para as Unidades Funcionai Lê a Register File Execução inteira + 6 andares do pipeline de execução Será que podemos melhorar esta situação? 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

41 Branch Target Buffers (1) Consideremos um pipeline mais simples: o de 5 andares do MIPS Com um esquema que usa um Branch Prediction Buffer (BPB), só no fim do andar ID é que temos disponíveis todos os elementos para podermos prever o valor a carregar no PC e adquirir a instrução com esse endereço no andar IF O BPB é acedido no ID No fim do ID conhecemos o endereço alvo do branch (o branch foi descodificado neste andar) o endereço da instrução que se segue ao branch (que veio do andar IF) o resultado da predição (valor a carregar no PC) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

42 Branch Target Buffers (2) Mas há uma solução alternativa que usa um BTB ( Branch Target Buffer ) e que vai permitir obter a informação necessária no andar IF 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

43 Branch Target Buffers (3) Utilizam-se os p bits menos significativos do endereço em PC para ver se o endereço existe no BTB Se existe, houve acerto ( hit ) Se não existe, houve falta ( miss ) A terminologia é emprestada das caches (e o hardware também) 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

44 Branch Target Buffers (4) Na entrada do BTB com endereço p estão contidos Os (n-)p bits restantes do endereço contido no PC O endereço de salto contido no branch Os bits de predição BHT 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

45 Branch Target Buffers (5) Com um esquema que usa um Branch Target Buffer, no fim do andar IF já temos disponíveis todos os elementos para podermos prever o valor a carregar no PC O BTB é acedido no IF, usando o endereço do salto para indexar o buffer Se houver um hit, sabemos o endereço da instrução para onde se previu saltar (o endereço alvo) Isto um ciclo de relógio antes, comparativamente com um esquema que usa um Branch Prediction Buffer Ou seja, prevemos o endereço da instrução que se segue ao salto e enviamo-lo para o PC antes de descodificar a instrução no andar ID 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

46 Branch Target Buffers (6) IF Envia PC para memória e para o BTB N Hit? S ID N Branch tomado? S Novo PC é o PC previsto Instrução normal para execução N Branch tomado? S EX Entra endereço do branch e endereço alvo no BTB Branch previsto incorrectamente. Elimina instrução. Recomeça fetch. Retira entrada do BTB Branch previsto correctamente. Continua exec. sem stalls 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

47 Próxima aula Arquitecturas superescalares 21 de Abril de 2005 Arquitectura de Computadores 2004/ Aula 13

SSC0510 Arquitetura de Computadores

SSC0510 Arquitetura de Computadores SSC0510 Arquitetura de Computadores 9ª Aula Pipeline Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Dependências ou Conflitos (Hazards) Conflitos Estruturais Pode haver acessos simultâneos à memória

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 10ª Aula Pipeline Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Dependências ou Conflitos (Hazards) Conflitos Estruturais Pode haver acessos simultâneos à memória

Leia mais

AULA DE REVISÃO 4 ILP

AULA DE REVISÃO 4 ILP AULA DE REVISÃO 4 ILP Exercício 1: Qual seria o desempenho de referência (em ciclos, por iteração do loop) da sequência de código, mostrado abaixo, se nenhuma nova execução de instrução pudesse ser iniciada

Leia mais

1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é

1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é 1. A pastilha do processador Intel 80486 possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é organizado com mapeamento associativo por conjuntos de quatro

Leia mais

Arquitetura de Computadores II

Arquitetura de Computadores II Univers id ade Federal d o Rio d e Jan eir o DC C/IM Arquitetura de Computadores II Predição de Desvio Gabriel P. Silva Introdução Desvios: Instruções que podem alterar o fluxo de execução das instruções

Leia mais

1) Enumere e dê exemplo dos tipos de conflitos que podem ocorrer em um pipeline de instruções de um processador.

1) Enumere e dê exemplo dos tipos de conflitos que podem ocorrer em um pipeline de instruções de um processador. Arquitetura de Computadores II Bacharelado em Ciência da Computação DCC - IM/UFRJ Prof.: Gabriel P. Silva Data: 18/04/2005 1 ª Lista de Exercícios de Arquitetura de Computadores II 1) Enumere e dê exemplo

Leia mais

Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores. 2º sem.

Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores. 2º sem. Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores º sem. / // º Teste Duração:, horas Grupo I Superpilining [ valores] Admita que tem um

Leia mais

28 de Abril de Aula 14

28 de Abril de Aula 14 28 de Abril de 2005 1 Arquitecturas superescalares Aula 14 Estrutura desta aula Arquitecturas VLIW e superescalares Emissão de instruções Emissão de 2 vias Superescalares com agendamento dinâmico Exemplo

Leia mais

Arquitetura e Organização de Processadores. Aula 4. Pipelines

Arquitetura e Organização de Processadores. Aula 4. Pipelines Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 4 Pipelines 1. Introdução Objetivo: aumento de

Leia mais

Paralelismo ao Nível das Instruções p. 1

Paralelismo ao Nível das Instruções p. 1 Paralelismo ao Nível das Instruções Luís Nogueira luis@dei.isep.ipp.pt Departamento Engenharia Informática Instituto Superior de Engenharia do Porto Paralelismo ao Nível das Instruções p. 1 Como melhorar

Leia mais

Predição de Desvios e Processadores Superescalares Especulativos

Predição de Desvios e Processadores Superescalares Especulativos Predição de Desvios e Processadores Superescalares Especulativos Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Tomasulo Especulativo Se os

Leia mais

1.0 val. (b) Determine o CPI do processador na execução do código indicado. Num.: Nome: Pág. 1. Arquitecturas Avançadas de Computadores (AAC)

1.0 val. (b) Determine o CPI do processador na execução do código indicado. Num.: Nome: Pág. 1. Arquitecturas Avançadas de Computadores (AAC) 1. Considere um processador in-order com 5 estágios (IF, ID, EX1, EX2, WB) sem qualquer mecanismo de forwarding de dados, e o seguinte troço de código. Memória de instruções Operação MOV R1,R0 ; R1 R0

Leia mais

1. Considere a execução do seguinte troço de código num processador com ISA compatível

1. Considere a execução do seguinte troço de código num processador com ISA compatível 1. Considere a execução do seguinte troço de código num processador com ISA compatível com o MIPS64. loop: L.D F0,0(R1) ; F0 M[R1+0] L.D F2,8(R1) ; F2 M[R1+8] L.D F4,0(R2) ; F4 M[R2+0] SUB.D F0,F0,F2 ;

Leia mais

I. Considere os seguintes processadores A e B, ambos com arquitectura em pipeline, conforme ilustrado

I. Considere os seguintes processadores A e B, ambos com arquitectura em pipeline, conforme ilustrado Arquitectura de Computadores 2 o Semestre (2013/2014) MEAer 2 o Teste - 19 de Junho de 2014 Duração: 1h30 + 0h15 Regras: Otesteésemconsulta, apenas tem disponível o anexo que lhe deverá ter sido entregue

Leia mais

Integer Adder / Branch Resolution. Floating-Point Adder. Floating-Point/Integer Multiplier. Load/Store Unit

Integer Adder / Branch Resolution. Floating-Point Adder. Floating-Point/Integer Multiplier. Load/Store Unit Arquitectura de Computadores 2 o Semestre (2015/2016) MEAer 2 o Teste - 16 de Junho de 2016 Duração: 1h30 + 0h15 Regras: Resolva o teste no próprio enunciado. O espaço reservado para cada pergunta é suficiente

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES 2015/2016 1 o Semestre Repescagem 1 o Teste 1 de Fevereiro de 2016 Duração: 1h00 - O teste é sem consulta e sem calculadora. - Resolva o teste no próprio enunciado, o espaço

Leia mais

Faculdade de Computação Arquitetura e Organização de Computadores 2 3 a Lista de Exercícios Prof. Cláudio C. Rodrigues Data de Entrega: 22/11/2018

Faculdade de Computação Arquitetura e Organização de Computadores 2 3 a Lista de Exercícios Prof. Cláudio C. Rodrigues Data de Entrega: 22/11/2018 Problemas: Faculdade de Computação Arquitetura e Organização de Computadores 2 3 a Lista de Exercícios Prof. Cláudio C. Rodrigues Data de Entrega: 22/11/2018 P1) Qual é o propósito do instruction pipelining?

Leia mais

Microprocessadores. Execução em Paralelo Pipelines

Microprocessadores. Execução em Paralelo Pipelines Execução em Paralelo Pipelines António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt Pipelines de Instrucções Instrucções são divididas em diferentes Estágios Pipelines

Leia mais

Resolva as seguintes alíneas fazendo todas as simplificações que considerar convenientes, anotando-as junto da resposta.

Resolva as seguintes alíneas fazendo todas as simplificações que considerar convenientes, anotando-as junto da resposta. 1. Considere um processador com ISA compatível com o MIPS64 e com funcionamento superpelining (Fetch, Decode, Issue, Execute, Write-back), com mecanismos de forwarding de dados, sendo o estágio de Execute

Leia mais

Pipelines. João Canas Ferreira. Mar-Abr Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap.

Pipelines. João Canas Ferreira. Mar-Abr Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. Pipelines João Canas Ferreira Mar-Abr 2004 Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. 6) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 1/52 Conceitos básicos

Leia mais

Esse programa inclui dependências de tipo: escrita-escrita, leitura-escrita e escrita-leitura. Identifique e mostre estas dependências.

Esse programa inclui dependências de tipo: escrita-escrita, leitura-escrita e escrita-leitura. Identifique e mostre estas dependências. Faculdade de Computação Arquitetura e Organização de Computadores 2 2 a Lista de Exercícios Prof. Cláudio C. Rodrigues Data de Entrega: 02/06/2016 Problemas: P1) Qual é o propósito do instruction pipelining?

Leia mais

Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. Pipeline

Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. Pipeline Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação Arquitetura de Computadores I Pipeline Gabriel P. Silva 29.04.2017 Introdução Pipeline é uma técnica de implementação de processadores

Leia mais

1. Considere um processador super-pipelined com 4 estágios (IF,ID,EX,WB), a operar à frequência de 1GHz, e com as seguintes caracteristicas:

1. Considere um processador super-pipelined com 4 estágios (IF,ID,EX,WB), a operar à frequência de 1GHz, e com as seguintes caracteristicas: 1. Considere um processador super-pipelined com 4 estágios (IF,ID,EX,WB), a operar à frequência de 1GHz, e com as seguintes caracteristicas: unidades funcionais pipelined com as seguintes latências: 1

Leia mais

Architectures for Embedded Computing

Architectures for Embedded Computing Architectures for Embedded Computing dinâmico / especulativo Prof. Nuno Roma ACEmb 2009/10 - DEI-IST 1 / 44 Aula anterior Na aula anterior... Pipelining: Problemas de Implementação instruções multi-ciclo

Leia mais

Hierarquia de Memória

Hierarquia de Memória Hierarquia de Memória Introdução e Análise do Desempenho AC1 Hierarquia da Memória: Análise do Desempenho 1 Hierarquia de Memória A velocidade dos processadores tem aumentado muito mais rapidamente do

Leia mais

MIPS Implementação. sw) or, slt. Vamos examinar uma implementação que inclui um subconjunto de instruções do MIPS

MIPS Implementação. sw) or, slt. Vamos examinar uma implementação que inclui um subconjunto de instruções do MIPS Datapath do MIPS MIPS Implementação Vamos examinar uma implementação que inclui um subconjunto de instruções do MIPS Instruções de leitura (load lw) e de escrita (store sw) Instruções aritméticas e lógicas

Leia mais

Paralelismo ao Nível da Instrução

Paralelismo ao Nível da Instrução Arquitectura de Computadores II 3º Ano Paralelismo ao Nível da Instrução (execução encadeada de instruções e super-escalaridade) João Luís Ferreira Sobral Departamento do Informática Universidade do Minho

Leia mais

Infraestrutura de Hardware. Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW

Infraestrutura de Hardware. Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW Infraestrutura de Hardware Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem

Leia mais

Pipeline. Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio. Estrutura da CPU. Em cada ciclo, a CPU deve:

Pipeline. Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio. Estrutura da CPU. Em cada ciclo, a CPU deve: Pipeline Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio William Stallings - Computer Organization and Architecture, Chapter 12 [Trad. E.Simões / F.Osório] Estrutura da CPU Em cada ciclo,

Leia mais

PIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações

PIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações Arquitetura de Computadores Introdução ao Pipeline PIPELINE Linha de Montagem A produção é dividida em várias etapas Produtos em etapas distintas podem ser desenvolvidos separadamente Pode ser Aplicado

Leia mais

Previsão de Desvios Branch Prediction

Previsão de Desvios Branch Prediction Previsão de Desvios Branch Prediction Organização de Computadores 2 Prof. Cláudio C. Rodrigues 1 Branch Prediction 1. Introdução 2. Custo de Desvios 3. Técnicas p/ redução do custo de desvio 4. Técnicas

Leia mais

Capítulo 6 Hazards Morgan Kaufmann Publishers. Ch6c 1

Capítulo 6 Hazards Morgan Kaufmann Publishers. Ch6c 1 Capítulo 6 Hazards 1998 organ Kaufmann Publishers Ch6c 1 Dependências de Dados Problema: iniciar uma instrução antes da anterior ter finalizado dependências que voltam no tempo são hazards de dados qual

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Cap. 06 Pipeline Prof. M.Sc. Bruno R. Silva Plano de aula Visão geral de pipelining Um caminho de dados usando pipelie Controle de um pipeline Hazards de dados e forwarding

Leia mais

Nível Máquina Formatos de Instruções

Nível Máquina Formatos de Instruções Nível Máquina Formatos de Instruções IA32 e MIPS AC1 11ª aula Formatos de Instruções 1 Stored Program Concept As instruções são números, armazenados em memória, que são descodificados pela Unidade de Controlo

Leia mais

Paralelismo ao Nível da Instrução

Paralelismo ao Nível da Instrução Arquitectura de Computadores 3º Ano Paralelismo ao Nível da nstrução (execução encadeada de instruções e super-escalaridade) João Luís Ferreira Sobral epartamento do nformática Universidade do inho Junho

Leia mais

Pipeline. Prof. Leonardo Barreto Campos 1

Pipeline. Prof. Leonardo Barreto Campos 1 Pipeline Prof. Leonardo Barreto Campos 1 Sumário Introdução; Pipeline Hazards: Hazards Estruturais Hazards de Dados Hazards de Controle Caminho de Dados usando Pipeline; Representação Gráfica do Pipeline;

Leia mais

Estrutura e Funcionamento da CPU. Adriano Maranhão

Estrutura e Funcionamento da CPU. Adriano Maranhão Estrutura e Funcionamento da CPU Adriano Maranhão 1 S Relembrando S Compiladores de linguagens ao fazer a conversão da linguagem de alto nível para chegar na fase da linguagem de baixo nível como assembly

Leia mais

Arquitectura de Computadores II. Pipelining Avançado e Paralelismo ao Nível da Instrução (ILP Instruction Level Paralelism)

Arquitectura de Computadores II. Pipelining Avançado e Paralelismo ao Nível da Instrução (ILP Instruction Level Paralelism) Arquitectura de Computadores II LESI - 3º Ano Pipelining Avançado e Paralelismo ao Nível da Instrução (ILP Instruction Level Paralelism) João Luís Ferreira Sobral Departamento do Informática Universidade

Leia mais

Notas de Aula Guilherme Sipahi Arquitetura de Computadores

Notas de Aula Guilherme Sipahi Arquitetura de Computadores Notas de Aula Guilherme Sipahi Arquitetura de Computadores Ciclo de instruções Ciclo de instruções / Pipelining Subciclos de um ciclo de instruções: - Busca: traz a próxima instrução até a CPU - Execução:

Leia mais

Conflitos. Aula 9. 31 de Março de 2005 1

Conflitos. Aula 9. 31 de Março de 2005 1 Conflitos Aula 9 31 de Março de 2005 1 Estrutura desta aula Taxonomia dos conflitos Dependências entre instruções Conflitos num pipeline Conflitos estruturais Conflitos de dados Conflitos de controlo Ref:

Leia mais

5 de Maio de Aula 15

5 de Maio de Aula 15 5 de Maio de 2005 1 Caches I Aula 15 Estrutura desta aula Hierarquia de memórias Tecnologia das memórias Fundamentos de caches Organização em blocos Colocação dos blocos Identificação dos blocos Políticas

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Memória Cache; Memória Secundária (13.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior

Leia mais

Mestrado Integrado em Engenharia Informática e Computação. Arquitecturas Avançadas de Computadores Exame final

Mestrado Integrado em Engenharia Informática e Computação. Arquitecturas Avançadas de Computadores Exame final FEUP Mestrado Integrado em Engenharia Informática e Computação Arquitecturas Avançadas de Computadores Exame final 2011-01-11 Duração: 2H00m Com consulta Atenção: Este exame tem 6 questões em 8 páginas,

Leia mais

AULA DE REVISÃO 3 ILP

AULA DE REVISÃO 3 ILP AULA DE REVISÃO 3 ILP Exercício 1: Considere um bloco de código com 15 instruções cada uma com tempo de execução Tex. Elas são executadas numa unidade pipeline de 5 estágios. Os overheads do pipeline são

Leia mais

Arquitetura de Microprocessadores

Arquitetura de Microprocessadores Arquitetura de Computadores UNIDADE 4 Arquitetura de 12-02-2019 Sumário Interrupções; Memória Cache ARQUITETURA DE UM MICROPROCESSADOR Interrupções Por vezes o CPU interrompe o seu trabalho para atender

Leia mais

Execução concorrente de instruções: Aspectos avançados

Execução concorrente de instruções: Aspectos avançados Execução concorrente de instruções: Aspectos avançados João Canas Ferreira Novembro de 2006 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP 2006

Leia mais

Memórias cache: uma introdução

Memórias cache: uma introdução Memórias cache: uma introdução João Canas Ferreira Dezembro de 2006 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP 2006 AAC (FEUP/MIEIC) Memórias

Leia mais

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática Arquitectura de Computadores II Engenharia Informática (11545) Tecnologias e Sistemas de Informação (6621) Memoria Fonte: Arquitectura de Computadores, José Delgado, IST, 2004 Nuno Pombo / Paulo Fazendeiro

Leia mais

Aula Fev-07 Arquitectura de Computadores 2006/07

Aula Fev-07 Arquitectura de Computadores 2006/07 Apresentação Aula 1 26-Fev-07 Arquitectura de Computadores 2006/07 1 - Aula 1 Estrutura desta aula Apresentação da cadeira Objectivos Bibliografia Conhecimentos prévios Estrutura das aulas Avaliação 26-Fev-07

Leia mais

Arquitetura de Computadores. Processamento Paralelo

Arquitetura de Computadores. Processamento Paralelo Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple

Leia mais

Processadores Superescalares - Avançando na exploração de paralelismo entre instruções

Processadores Superescalares - Avançando na exploração de paralelismo entre instruções Processadores Superescalares - Avançando na exploração de paralelismo entre instruções Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Instruction

Leia mais

Pipelining. Luís Nogueira. Departamento Engenharia Informática Instituto Superior de Engenharia do Porto. Pipelining p.

Pipelining. Luís Nogueira. Departamento Engenharia Informática Instituto Superior de Engenharia do Porto. Pipelining p. Pipelining Luís Nogueira luis@dei.isep.ipp.pt Departamento Engenharia Informática Instituto Superior de Engenharia do Porto Pipelining p. Análise de performance Desenho ciclo único de relógio é ineficiente

Leia mais

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES Adão de Melo Neto 1 INTRODUÇÃO Desde 1950, houveram poucas inovações significativas nas áreas de arquitetura e organização de computadores. As principais

Leia mais

Sistemas de Microprocessadores DEP. DE ENG.ª ELECTROTÉCNICA E DE COMPUTADORES FACULDADE DE CIÊNCIAS E TECNOLOGIA UNIVERSIDADE DE COIMBRA.

Sistemas de Microprocessadores DEP. DE ENG.ª ELECTROTÉCNICA E DE COMPUTADORES FACULDADE DE CIÊNCIAS E TECNOLOGIA UNIVERSIDADE DE COIMBRA. Sistemas de Microprocessadores DEP. DE ENG.ª ELECTROTÉCNICA E DE COMPUTADORES FACULDADE DE CIÊNCIAS E TECNOLOGIA UNIVERSIDADE DE COIMBRA Pipelining Pipelining é uma técnica que permite a execução de múltiplas

Leia mais

Sistemas de Memória II

Sistemas de Memória II Sistemas de Memória II José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2014-11-21 José Costa (DEI/IST) Sistemas de Memória II

Leia mais

Organização de Unidades de Processamento

Organização de Unidades de Processamento Organização de Unidades de Processamento João Canas Ferreira Março de 2004 Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. 5) c JCF, 2004 ASPD (FEUP/LEEC)

Leia mais

Arquitetura de Microprocessadores

Arquitetura de Microprocessadores Arquitetura de Computadores UNIDADE 4 Arquitetura de 05-02-2019 Sumário Arquitetura de um microprocessador; Acesso à memória; A arquitetura de von Neumann apenas mostra a conceção ideológica do que deveria

Leia mais

Figura 1. Datapath do MIPS Superescalar Especulativo CES SE

Figura 1. Datapath do MIPS Superescalar Especulativo CES SE Especificação do Projeto Simulador MIPS Superescalar Especulativo CES- 25 Arquiteturas para Alto Desempenho Prof. Paulo André Castro Equipe: até quatro alunos 1. Objetivo Exercitar e fixar conhecimentos

Leia mais

Revisão dependências de dados

Revisão dependências de dados Revisão dependências de dados Dependências de dados resolvidas com adiantamento (quase sempre) Deve garantir que instruções anteriores escreverão resultado, destino é mesmo que fonte, e instrução anterior

Leia mais

Escalonamento de Instruções

Escalonamento de Instruções Universidade Federal do Rio de Janeiro Pós-Graduação em Informática Microarquiteturas de Alto Desempenho Escalonamento de Instruções Introdução Otimização de código é necessária como forma de diminuir

Leia mais

Arquiteturas RISC e CISC. Adão de Melo Neto

Arquiteturas RISC e CISC. Adão de Melo Neto Arquiteturas RISC e CISC Adão de Melo Neto 1 Arquitetura RISC Arquitetura RISC. É um das inovações mais importantes e interessantes. RISC significa uma arquitetura com um conjunto reduzido de instruções

Leia mais

Organização e Arquitetura de Computadores INTRODUÇÃO

Organização e Arquitetura de Computadores INTRODUÇÃO Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo

Leia mais

shift register demux prefetch control inc ldpc + 1 MAR Pipelining

shift register demux prefetch control inc ldpc + 1 MAR Pipelining Unidade de prefetch (com uma só AM) MB_oe32 shift register 32 MB_oe8_s AM data 32 addr rd 0 1 P7 P6 demux 32 32 P5 shctrl 2 inc P4 load P3 prefetch control ldpc PC + 1 P2 2 P1 P0 8 read8 read32 MB_oe8_u

Leia mais

Explorando o paralelismo entre instruções

Explorando o paralelismo entre instruções Explorando o paralelismo entre instruções Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Pipeline Pipeline: Uma idéia natural Linhas de montagem

Leia mais

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017 Memória Cache Adriano J Holanda 12 e 16/5/2017 Memória: princípios físicos Revisão: Hierarquia de memória; Memória RAM: estática, dinâmica; Memória ROM: PROM, EPROM, EEPROM; Memória flash Memória: fundamentos

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 8ª Aula Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Estágios para execução da instrução: A instrução LOAD é a mais longa Todas as instruções seguem ao menos os

Leia mais

Sistemas Embebidos I , Tiago Miguel Dias ADEETC - Secção de Arquitecturas e Sistemas Operativos

Sistemas Embebidos I , Tiago Miguel Dias ADEETC - Secção de Arquitecturas e Sistemas Operativos Sistemas Embebidos I Licenciatura em Eng. de Electrónica e Telecomunicações e de Computadores Licenciatura em Engenharia Informática e de Computadores Mestrado em Engenharia Informática e de Computadores

Leia mais

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 08 Arquiteturas VLIW 1. Introdução VLIW é Very

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Hierarquia de Memória; Memória Cache (13.2 e 13.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto

Leia mais

Memória. Gestão do espaço lógico Paginação Segmentação com paginação

Memória. Gestão do espaço lógico Paginação Segmentação com paginação Memória Gestão do espaço lógico Paginação Segmentação com paginação Paginação Divide-se a memória física em pequenos blocos de tamanho fixo chamados de páginas físicas (ou frames) o tamanho é uma potência

Leia mais

2. Relativamente ao datapath de ciclo único do MIPS podemos dizer que:

2. Relativamente ao datapath de ciclo único do MIPS podemos dizer que: Preencher na correcção 1: 2: 3: 4: 5: 6: 7: 8: F: Estas questões devem ser respondidas na própria folha do enunciado. As questões 1 a 4 são de escolha múltipla, e apenas uma das respostas está correcta,

Leia mais

Organização de computadores. Prof. Moisés Souto

Organização de computadores. Prof. Moisés Souto Organização de computadores Prof. Moisés Souto Moisés Souto docente.ifrn.edu.br/moisessouto professor.moisessouto.com.br moises,souto@ifrn.edu.br @moises_souto Aula 06 CICLO DE INSTRUÇÕES Unidade Central

Leia mais

Hierarquia de Memória

Hierarquia de Memória Hierarquia de Memória Organização da cache AC1 Hierarquia da Memória: Organização 1 Mapeamento Directo A cada endereço de memória corresponde apenas uma linha da cache. linha = resto (endereço do bloco

Leia mais

Faculdade de Computação

Faculdade de Computação Faculdade de Computação Arquitetura e Organização de Computadores 2 1 a Lista de Exercícios entrega em 25/09/2018 Prof. Cláudio C. Rodrigues Problemas: P1) A Tabela abaixo apresenta o mix de instruções

Leia mais

Exercícios resolvidos (aula de 4 de Maio) Resolução:

Exercícios resolvidos (aula de 4 de Maio) Resolução: Exercícios resolvidos (aula de 4 de Maio) 1. Um microprocessador gera endereços de memória de 14 bits. Desenhe um mapa de memória dos seus endereços de memória fronteira especificados em hexadecimal. Uma

Leia mais

SSC0902 Organização e Arquitetura de Computadores

SSC0902 Organização e Arquitetura de Computadores SSC0902 Organização e Arquitetura de Computadores 13ª Aula Definição de Pipeline e Pipeline da arquitetura MIPS Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Arquitetura CISC CISC Complex Instruction

Leia mais

Memória cache. Sistemas de Computação

Memória cache. Sistemas de Computação cache Sistemas de Computação Princípio da localidade Programas tendem a reutilizar dados e instruções perto daqueles que foram utilizados recentemente Localidade temporal: Itens recentemente referenciados

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL INTRODUÇÃO À TECNOLOGIA DA ORGANIZAÇÃO COMPUTACIONAL PROFESSOR CARLOS MUNIZ ORGANIZAÇÃO DE UM COMPUTADOR TÍPICO Memória: Armazena dados e programas Processador (CPU - Central Processing Unit): Executa

Leia mais

Organização de Computadores

Organização de Computadores Organização do Processador - Parte A Capítulo 5 Patterson & Hennessy Prof. Fábio M. Costa Instituto de Informática Universidade Federal de Goiás Conteúdo Caminho de dados Caminho de controle Implementação

Leia mais

Univ ersidade Feder al do Rio de Janei ro Informáti ca DCC/IM. Pipeline. Gabriel P. Silva. Gabriel P. Silva

Univ ersidade Feder al do Rio de Janei ro Informáti ca DCC/IM. Pipeline. Gabriel P. Silva. Gabriel P. Silva Univ ersidade Feder al do Rio de Janei ro Informáti ca DCC/IM Arquitetura de Computadores II Pipeline Introdução Pipeline é uma técnica de implementação de processadores que permite a sobreposição temporal

Leia mais

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação

Leia mais

Parte 7 Pipeline: Conceitos básicos, implementação e ganho de desempenho

Parte 7 Pipeline: Conceitos básicos, implementação e ganho de desempenho Parte 7 Pipeline: Conceitos básicos, implementação e ganho de desempenho 1 Melhorando o Desempenho com Pipelining Baseado nas anotações do Livro do Hennessey & Patterson e no material do Prof. José Luís

Leia mais

Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial

Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Carlos A. Silva 2º Semestre de 2005/2006 http://www.dei.uminho.pt/lic/mint Assunto: Pipeline Aula #5 28 Mar 06 Revisão Na implementação

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 22: Título: Sumário: cache; cache por blocos; Política de substituição; Tratamento das operações de

Leia mais

Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64

Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64 Arquitecturas Alternativas Pipelining Super-escalar VLIW IA-64 Pipeline de execução A execução de uma instrução passa por várias fases: Vimos o ciclo: fetch, decode, execute fetch decode execute instrução

Leia mais

Sistemas de Memória I

Sistemas de Memória I Sistemas de Memória I José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2013-11-22 José Costa (DEI/IST) Sistemas de Memória I 1

Leia mais

Introdução. Os mesmos princípios se aplicam a processadores. No MIPS as instruções são divididas normalmente em cinco etapas:

Introdução. Os mesmos princípios se aplicam a processadores. No MIPS as instruções são divididas normalmente em cinco etapas: CAPÍTULO 5 PIPELINE Introdução Ciclo único versus pipeline Projetando o conjunto de instruções Pipeline Hazards Caminho de dados usando o pipeline Diagramas de Pipeline Controle do Pipeline Hazard de dados

Leia mais

O COMPUTADOR POR DENTRO

O COMPUTADOR POR DENTRO 1 2 SISTEMAS DE INFORMAÇÃO O COMPUTADOR POR DENTRO Ensino Recorrente 3 4 O CPU constitui o orgão central do computador. As suas características determinam, em grande medida, a performance global do sistema.

Leia mais

ARQUITECTURA DE COMPUTADORES 2º TESTE A

ARQUITECTURA DE COMPUTADORES 2º TESTE A ARQUITECTURA DE COMPUTADORES 2º TESTE A Ano Lectivo: 2006/2007 Data: 2 de Maio de 2007 INFORMAÇÕES GERAIS Duração: 2h00 1. Identifique todas as folhas do enunciado com nome e nº. 2. Mantenha na secretária

Leia mais

Microcontroladores e Interfaces

Microcontroladores e Interfaces Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Carlos A. Silva 2º Semestre de 2005/2006 http://www.dei.uminho.pt/lic/mint Aula A3 15 Mar 05 - M Datapath e a sua Unidade de Controlo

Leia mais

Faculdade de Computação Arquitetura e Organização de Computadores 2 Prof. Cláudio C. Rodrigues

Faculdade de Computação Arquitetura e Organização de Computadores 2 Prof. Cláudio C. Rodrigues Faculdade de Computação Arquitetura e Organização de Computadores 2 Prof. Cláudio C. Rodrigues Exercícios de Revisão: P1) Um processador elaborado segundo o princípio multi-ciclo, executa a uma frequência

Leia mais

Gerência de Memória. Paginação

Gerência de Memória. Paginação Gerência de Memória Paginação Endereçamento Virtual (1) Espaço de endereçamento dos processos não linearmente relacionado com a memória física Cada vez que são usados, os endereços virtuais são convertidos

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES 2017/2018 1 o Semestre 1 o Teste 20 de Novembro de 2018 Duração: 1h15 - O teste é sem consulta e sem calculadora. - Resolva o teste no próprio enunciado, o espaço reservado

Leia mais

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3)

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3) Endereçamento Virtual (1) Gerência de Memória Paginação Espaço de endereçamento dos processos não linearmente relacionado com a física Cada vez que são usados, os endereços virtuais são convertidos pela

Leia mais

SSC0112 Organização de Computadores Digitais I

SSC0112 Organização de Computadores Digitais I SSC0112 Organização de Computadores Digitais I 3ª Aula Visão Geral e Conceitos Básicos Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Copyright William Stallings & Adrian J Pullin Tradução, revisão e

Leia mais

Arquitetura e Organização de Processadores. Aula 1. Introdução Arquitetura e Organização

Arquitetura e Organização de Processadores. Aula 1. Introdução Arquitetura e Organização Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 1 Introdução Arquitetura e Organização 1. Arquitetura

Leia mais

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca PCS-2529 Introdução aos Processadores Prof. Dr. Paulo Sérgio Cugnasca 1 2 Existem 4 esquemas diferentes de E/S possíveis, cada um se aplicando em uma determinada situação. E/S Programada. E/S Acionada

Leia mais

SSC510 Arquitetura de Computadores 1ª AULA

SSC510 Arquitetura de Computadores 1ª AULA SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura

Leia mais

2ª Lista de Exercícios de Arquitetura de Computadores

2ª Lista de Exercícios de Arquitetura de Computadores 2ª Lista de Exercícios de Arquitetura de Computadores 1. Descreva as funções desempenhadas pelos escalonadores de curto, médio e longo prazo em um SO. 2. Cite três motivos pelos quais o controle do processador

Leia mais