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.

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

Download "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."

Transcrição

1 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

2 Conceitos básicos Preservar a concorrência Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Conflitos de dados Forwarding Protelamento Efeitos de conflitos de controlo Mitigação de efeitos c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 2/52

3 Conceitos básicos Preservar a concorrência Pipelining Trata-se de uma técnica de implementação em que múltiplas instruções estão em execução simultânea (concorrente). Não diminui o tempo de execução de uma instrução. Várias instruções estão simultaneamente em diferentes fases de processamento. O débito aumenta: uma instrução terminada por ciclo (idealmente). Cinco etapas clássicas : ler instrução de memória; descodificar instrução e ler registos; execução de operação ou cálculo de endereço; acesso a operando em memória; guardar resultado num registo. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 3/52

4 Conceitos básicos Preservar a concorrência Sem vs. com pipeline Tipo Leitura Registo ALU Acesso mem Escrita Reg. Total load (lw) 8 store (sw) R (add,...) salto (beq) tempos em ns Sem pipelining: IF R ALU Mem R lw $1, 100($0) 8 ns IF R ALU Mem R 8 ns IF R lw $2, 200($0) lw $3, 300($0) Com pipelining: IF R ALU Mem R 2 ns lw $1, 100($0) IF R ALU Mem R 2 ns IF R ALU Mem R lw $2, 200($0) lw $3, 300($0) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 4/52

5 Conceitos básicos Preservar a concorrência Conflitos Conflito estrutural: a infra-estrutura não suporta a combinação de (fases de) instruções que se pretende executar no mesmo ciclo. Exemplo: acesso a memória. Conflito de dados: uma (fase de) instrução depende dos resultados de outra. Exemplo: duas operações tipo R, em que a segunda usa os resultados da primeira. Solução: forwarding Conflito de controlo: execução de uma instrução depende de uma decisão ainda não tomada. Soluções: protelar, prever, delayed decision. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 5/52

6 Conceitos básicos Preservar a concorrência Protelamento causado por instruções de salto É necessário esperar para saber qual a próxima instrução a executar. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 6/52

7 Conceitos básicos Preservar a concorrência Delayed-branch A instrução que segue um salto condicional é sempre executada. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 7/52

8 Conceitos básicos Preservar a concorrência Representação de pipeline Cinzento indica os elementos usados na execução das instruções: Quando metade de um elemento está assinalada, significa que é usada na primeira (à esquerda) ou na segunda (à direita) metade do ciclo. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 8/52

9 Conceitos básicos Preservar a concorrência Forwarding Passagem directa de operandos entre andares da pipeline. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 9/52

10 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados básico c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 10/52

11 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Funcionamento de caminho de dados básico com pipeline c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 11/52

12 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados básico com pipeline c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 12/52

13 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Ciclos 1 e 2: actividade c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 13/52

14 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Ciclo 3: actividades c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 14/52

15 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Ciclos 4 e 5: actividade c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 15/52

16 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Tratamento correcto de load c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 16/52

17 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Representação multi-ciclo c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 17/52

18 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Ciclos 1 e 2 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 18/52

19 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Ciclos 3 e 4 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 19/52

20 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Ciclos 5 e 6 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 20/52

21 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Propagação de sinais de controlo c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 21/52

22 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados com controlo c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 22/52

23 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados com controlo: ciclos 1 e 2 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 23/52

24 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados com controlo: ciclos 3 e 4 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 24/52

25 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados com controlo: ciclos 5 e 6 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 25/52

26 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados com controlo: ciclos 7 e 8 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 26/52

27 Caminho de dados Exemplo de execução ciclo-a-ciclo Controlo da pipeline Caminho de dados com controlo: ciclo 9 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 27/52

28 Conflitos de dados Forwarding Protelamento Dependências de dados Dependência de dados: Uma instrução j depende de uma instrução i se se verificar alguma das seguintes condições: a instrução i produz um resultado que pode ser usado pela instrução j; a instrução j depende da instrução k, que por sua vez depende de i. Uma verdadeira dependência de dados implica fluxo de informação. Dependências de dados são propriedades de programas. Se a dependência provoca ou não um conflito (e o conflito um protelamento), depende das características da pipeline. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 28/52

29 Conflitos de dados Forwarding Protelamento Dependências de dados: exemplo sub $2, $1, $3 ; escrita em $2 and $12, $2, $5 ; 1 o operando depende de sub or $13, $6, $2 ;2 o operando depende de sub add $14, $2, $2 ; os 2 operandos dependem de sub sw $15, 100($2) ; base despende de sub Acessos simultâneos para leitura e escrita ao mesmo registo: o valor lido já é o novo valor do registo (válido para a pipeline usada nos exemplos). A escrita é efctuada na primeira metade do ciclo, a leitura na segunda. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 29/52

30 Conflitos de dados Forwarding Protelamento Dependências de dados: exemplo (cont.) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 30/52

31 Conflitos de dados Forwarding Protelamento Dependências de dados: proibição O problema dos conflitos causados por dependência de dados pode ser evitado proibindo o compilador de gerar sequências de instruções que causem conflitos. sub $2, $1, $3 nop nop and $12, $2, $5 or $13, $6, $2 add $14, $2, $2 sw $15, 100($2) Voilà... Não assegura a compatibilidade binária. (Porquê?) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 31/52

32 Conflitos de dados Forwarding Protelamento Análise dos conflitos Para a pipeline de 5 andares que temos vindo a estudar, existem as seguintes situações de conflito: 1a. EX/MEM.RegRD = ID/EX.RegRS 1b. EX/MEM.RegRD = ID/EX.RegRT 2a. MEM/WB.RegRD = ID/EX.RegRS 2b. MEM/WB.RegRD = ID/EX.RegRT Para o fragmento de código das transparências anteriores: sub-and: tipo 1a: EX/MEM.RegRD=ID/EX.RegRS=$2; sub-or: tipo 2b: MEM/WB.RegRD=ID/EX.RegRT=$2; sub-add: não existem conflitos; sub-sw:não existem conflitos. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 32/52

33 Conflitos de dados Forwarding Protelamento Atalhos Caso as dependências sejam apenas para o futuro : implementar atalhos entre origem e destino (forwarding). c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 33/52

34 Conflitos de dados Forwarding Protelamento Controlo dos multiplexadores de forwarding A implementação dos atalhos para instruções do tipo R pode ser feita com dois multiplexadores 3:1 (de 32 bits). ForwardA ForwardB 00 ID/EX 00 ID/EX 01 EX/MEM 01 MEM/WB 10 MEM/WB 10 EX/MEM EX/MEM.RegWrite & EX/MEM.RegRD!=0 & EX/MEM.RegRD=ID/EX.RegRS => ForwardA=10 EX/MEM.RegWrite & EX/MEM.RegRD!=0 & EX/MEM.RegRD=ID/EX.RegRT => ForwardB=10 MEM/WB.RegWrite & MEM.RegRD!=0 & EX/MEM.RegRD!= ID/EX.RegRS & MEM/WB.RegRD=ID/EX.RegRS => ForwardA=01 MEM/WB.RegWrite & MEM.RegRD!=0 & EX/MEM.RegRD!= ID/EX.RegRS & MEM/WB.RegRD=ID/EX.RegRT => ForwardB=10 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 34/52

35 Conflitos de dados Forwarding Protelamento Caminho de dados com atalhos Versão simplificada do caminho de dados com atalhos para operações do tipo R: c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 35/52

36 Conflitos de dados Forwarding Protelamento Atalhos não resolvem todos os problemas Problema: Usar um registo após load. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 36/52

37 Conflitos de dados Forwarding Protelamento Detecção de confitos Solução: Protelar o processamento da instrução dependente. necessidade de uma unidade de detecção de conflitos; a detecção pode ser feita no andar ID (neste caso); quando uma instrução é protelada neste andar, a instrução em IF também deve ser protelada: o PC e IF/ID não devem mudar. Condição de protelamento: ID/EX.MemRead & (ID.EXRegRT = IF/ID.RegRS ID.EX.RegRT=IF/ID.RegRT) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 37/52

38 Conflitos de dados Forwarding Protelamento Inserir bolhas Funcionamento real: c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 38/52

39 Conflitos de dados Forwarding Protelamento Tratamento de conflitos: implementação Versão simplificada da pipeline: c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 39/52

40 Conflitos de dados Forwarding Protelamento Protelamento: ciclos 2 e 3 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 40/52

41 Conflitos de dados Forwarding Protelamento Protelamento: ciclos 4 e 5 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 41/52

42 Conflitos de dados Forwarding Protelamento Protelamento: ciclos 6 e 7 c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 42/52

43 Efeitos de conflitos de controlo Mitigação de efeitos Impacto de um conflito de controlo c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 43/52

44 Efeitos de conflitos de controlo Mitigação de efeitos Saltos não tomados Assumir que o salto não é tomada e continuar com as instruções seguintes (textualmente). Se o salto é tomado, as instruções subsequentes já em tratamento devem ser anuladas. Anular uma instrução = valores de controlo a 0 (para a implementação usada). O destino do salto é determinadao no andar MEM: as intruções nos andares IF, ID e EX devem ser anuladas. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 44/52

45 Efeitos de conflitos de controlo Mitigação de efeitos Redução do tempo tratamento de saltos Reduzir o tempo de tratamento de saltos tem impacto directo sobre o desempenho da pipeline. Passar a determinação do próximo valor de PC para EX. Melhor: passar para o andar ID! Fácil: cálculo do endereço de salto (mudar somador de MEM para ID). Difícil: determinar se salto deve ser efectuado: unidade de comparação em ID (fazer OU bit-a-bit seguido de AND de todos os bits do resultado). Anular IF: basta pôr zeros no IR (nop=sll $0,$0,$0) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 45/52

46 Efeitos de conflitos de controlo Mitigação de efeitos Tratamento de saltos: implementação c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 46/52

47 Efeitos de conflitos de controlo Mitigação de efeitos Tratamento de saltos: execução c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 47/52

48 Efeitos de conflitos de controlo Mitigação de efeitos Previsão dinâmica de saltos Abordagem possível: Dado o endereço de uma instrução de salto (i.e. a sua posição em memória), verificar se o salto foi tomado na última execução; se foi, executar instruções a partir da posição de destino usada anteriormente. Implementação: tabela indexada pelos bits menos significativos contendo 1 bit a indicar se o salto foi tomado ou não. Se foi tomado, a execução pode continuar mal tenha sido calculado o endereço de destino. A tabela é acedida durante IF. Debilidade: o que acontece a um salto condicional no fim de um ciclo? c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 48/52

49 Efeitos de conflitos de controlo Mitigação de efeitos Previsão dinâmica de saltos: esquema de 2 bits Para remediar a debilidade anterior, usam-se esquemas com 2 bits. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 49/52

50 Efeitos de conflitos de controlo Mitigação de efeitos Previsão dinâmica de saltos: benchmarks Resultados empíricos para tabela de 4096 posições (esquema de 2 bits) comparados com tabela infinita. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 50/52

51 Efeitos de conflitos de controlo Mitigação de efeitos Delay slots O conflito de controlo passa de hazard feature. A instrução textualmente a seguir a uma instrução de salto condicional é sempre executada. Para o nossa implementação (com uma penalidade de um ciclo), a situação fica resolvida. O trabalho de previsão é passado para o compilador. Tem vindo a perder popularidade: um delay slot não ajuda muito o desempenho das arquitecturas com muitos andares de pipeline. c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 51/52

52 Efeitos de conflitos de controlo Mitigação de efeitos Delay slots: exemplo c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 52/52

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

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

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

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

Infraestrutura de Hardware. Implementação Pipeline de um Processador Simples

Infraestrutura de Hardware. Implementação Pipeline de um Processador Simples Infraestrutura de Hardware Implementação Pipeline de um Processador Simples Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado

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

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

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

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

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

Execução concorrente de instruções

Execução concorrente de instruções Eecção concorrente de instrções João Canas Ferreira Arqitectra de Comptadores FEUP/LEIC Contém figras de Compter Organization and Design (cap. 6), D. Patterson & J. Hennessey, 3 a. ed., Elsevier Tópicos

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

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

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

Resumão de Infra-estrutura de Hardware

Resumão de Infra-estrutura de Hardware Resumão de Infra-estrutura de Hardware Referência: Patterson & Hennessy - Organização e Projeto de Computadores Vanessa Gomes de Lima vgl2@cin.ufpe.br 1 MELHORANDO O DESEMPENHO COM PIPELINING Pipelining

Leia mais

Pipelining - analogia

Pipelining - analogia PIPELINE Pipelining - analogia Pipelining OBJECTIVO: Aumentar o desempenho pelo aumento do fluxo de instruções Program execution Time order (in instructions) lw $1, 100($0) Instruction fetch ALU Data access

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

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

Visão Geral de Pipelining

Visão Geral de Pipelining Pipeline Visão Geral de Pipelining Instruções MIPS têm mesmo tamanho Mais fácil buscar instruções no primeiro estágio e decodificar no segundo estágio IA-32 Instruções variam de 1 byte a 17 bytes Instruções

Leia mais

Encadeamento de instruções

Encadeamento de instruções Encadeamento de instruções (Pipelines) Outubro de 2010 (FEUP/DEEC) Pipelines Outubro de 2010 1 / 62 Assuntos 1 Execução concorrente de instruções 2 Dependências entre instruções 3 Fundamentos da operação

Leia mais

Execução concorrente de instruções: Pipelines

Execução concorrente de instruções: Pipelines Execução concorrente de instruções: Pipelines João Canas Ferreira Novembro de 2006 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP 2006 AAC (FEUP/MIEIC)

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

Arquiteturas de Computadores

Arquiteturas de Computadores Arqitetras de Comptadores Pipeline Fontes dos slides: Patterson & Hennessy book website (copyright organ Kafmann) e Dr. Smanta Gha Conflito de controle O problema com desvios no pipeline é qe a decisão

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

ção de Computadores II

ção de Computadores II Universidade Federal de Pelotas Instituto de Física e Matemática Departamento de Informática Bacharelado em Ciência da Computação Arquitetura e Organizaçã ção de Computadores II Aula 2 2. MIPS monociclo:

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

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Pipeline Slide 1 Pipeline Pipeline Hazards: Hazards Estruturais Hazards de Dados Hazards de Controle Organização e Arquitetura de Computadores I Caminho de Dados

Leia mais

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Instruções são representadas em linguagem de máquina (binário) E x i s t e m l i n g u a g e n

Leia mais

Infraestrutura de Hardware. Implementação Monociclo de um Processador Simples

Infraestrutura de Hardware. Implementação Monociclo de um Processador Simples Infraestrutura de Hardware Implementação Monociclo de um Processador Simples Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereç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

Arquitetura e Organização de Processadores. Aulas 06 e 07. Superescalaridade

Arquitetura e Organização de Processadores. Aulas 06 e 07. Superescalaridade 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 Aulas 06 e 07 Superescalaridade 1. Introdução princípios

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

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

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

Aula 19: UCP: Construindo um Caminho de Dados (Parte III)

Aula 19: UCP: Construindo um Caminho de Dados (Parte III) Aula 19: UCP: Construindo um Caminho de Dados (Parte III) Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Caminho de Dados (III) FAC 1 /

Leia mais

UCP: Construindo um Caminho de Dados (Parte III)

UCP: Construindo um Caminho de Dados (Parte III) UCP: Construindo um Caminho de Dados (Parte III) Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado nos slides do Fernanda Passos Cristina Boeres

Leia mais

Capítulo 4. O Processador

Capítulo 4. O Processador Capítulo 4 O Processador Introdução Fatores de desempenho da CPU Contagem de instrução Determinado pelo ISA e compilador CPI e tempo de ciclo Determinado pelo hardware da CPU Nós examinaremos duas implementações

Leia mais

Arquitetura de Computadores. Ivan Saraiva Silva

Arquitetura de Computadores. Ivan Saraiva Silva Arquitetura de Computadores MIPS Pipeline Ivan Saraiva Silva Pipeline 4 pessoas (A, B, C, D) possuem sacolas de roupa para lavar, secar e dobrar A B C D Lavar leva 30 minutos Secar leva 40 minutos Dobrar

Leia mais

Trabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas

Trabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas Trabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas Material a ser utilizado: Kits de desenvolvimento de sistemas microprocessados para aplicações em DSP Texas DSK-TMS320C67xx. Apresentação

Leia mais

Implementação de pipelines

Implementação de pipelines Implementação de pipelines João Canas Ferreira Novembro de 2005 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP JCF, 2005 AAC (FEUP/LEIC) Implementação

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

Aula 21: UCP: Instrução Jump, Monociclo vs. Multiciclo, Pipeline

Aula 21: UCP: Instrução Jump, Monociclo vs. Multiciclo, Pipeline Aula 21: UCP: Instrução Jump, Monociclo vs Multiciclo, Pipeline Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Jump, Multiciclo, Pipeline

Leia mais

ARQUITECTURA DE COMPUTADORES

ARQUITECTURA DE COMPUTADORES ARQUITECTURA DE COMPUTADORES CAPÍTULO IV AULA II Maio 2014 Índice Processadores Revisões Pipelining Pipeline hazards Hazard estrutural Hazard de dados Hazard de controlo Pipelining datapath Pipelined control

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Pipeline -- Conflito de dados paradas e adiantamentos -- Conflito de controle detecção de desvios e descarte de instruções -- Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno

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

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

UCP: Construindo um Caminho de Dados (Parte I)

UCP: Construindo um Caminho de Dados (Parte I) UCP: Construindo um Caminho de Dados (Parte I) Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado cedido pela Profa. Fernanda Passos Cristina Boeres

Leia mais

CAPÍTULO 4 CAMINHO DE DADOS E CONTROLE

CAPÍTULO 4 CAMINHO DE DADOS E CONTROLE CAPÍTULO 4 CAMINHO DE DADOS E CONTROLE Introdução Uma implementação MIPS básica Sinopse da implementação Sinais de controle Multiplexadores (muxes) Implementação monociclo Metodologia de clocking Construindo

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

O Funcionamento do Processador

O Funcionamento do Processador O Funcionamento do Processador Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Os cinco componentes clássicos de um Computador - Controle O

Leia mais

O Funcionamento do Processador

O Funcionamento do Processador O Funcionamento do Processador Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Os cinco componentes clássicos de um Computador - Controle O

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

Melhorando o Desempenho com Pipelining

Melhorando o Desempenho com Pipelining Melhorando o Desempenho com Pipelining Baseado nas anotações do Livro do Hennessey & Patterson e no material do Prof. José Luís Güntzel [www.ufpel.edu.br/~guntzel/aoc2/aoc2.html] 1 Relembrando desempenho...

Leia mais

Arquiteturas de Computadores

Arquiteturas de Computadores Arquiteturas de Computadores Implementação monociclo de IPS Fontes dos slides: Patterson & Hennessy book website (copyright organ Kaufmann) e Dr. Sumanta Guha Implementando IPS Implementação do conjunto

Leia mais

ção de Computadores II

ção de Computadores II niversidade Federal de Pelotas Instituto de Física e atemática Departamento de Informática Bacharelado em Ciência da Computação Arquitetura e Organizaçã ção de Computadores II Aula 2. IPS pipeline: conflitos

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

Organização de Sistemas de Computadores

Organização de Sistemas de Computadores Organização de Sistemas de Computadores Cap. 2 (Tanenbaum), Cap. 3 (Weber) 2.1 Processadores 1 CPU UC = buscar instruções na memória principal e determinar o seu tipo ULA = adição e AND Registradores =

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

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. 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

SSC0114 Arquitetura de Computadores

SSC0114 Arquitetura de Computadores SSC0114 Arquitetura de Computadores 3ª Aula Arquitetura MIPS: ISA, Formato das instruções e Modos de endereçamento MIPS Monociclo: Caminho de Dados e Unidade de Controle Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br

Leia mais

Infraestrutura de Hardware. Implementação Multiciclo de um Processador Simples

Infraestrutura de Hardware. Implementação Multiciclo de um Processador Simples Infraestrutura de Hardware Implementação Multiciclo de um Processador Simples Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e

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

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

µinstruções µoperações representadas em binário podem ser compactadas numa só µinstrução exemplo (as 3 últimas µinstruções anteriores):

µinstruções µoperações representadas em binário podem ser compactadas numa só µinstrução exemplo (as 3 últimas µinstruções anteriores): µinstruções µoperações representadas em binário cada µoperação é realizada por um ou mais 1s cada bit é um sinal de controlo (excepto rrr_oe) podem ser compactadas numa só µinstrução exemplo (as 3 últimas

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

Tiago Alves de Oliviera

Tiago Alves de Oliviera Tiago Alves de Oliviera 1 Capítulo 6 do Livro do Mario Monteiro Capítulo 5 (5.1, 5.2, 5. e 5.4) do Livro do Patterson 2 Processador executa instruções CPU (central processing unit) UCP (unidade central

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 16: UCP: Conceitos Básicos e Componentes

Aula 16: UCP: Conceitos Básicos e Componentes Aula 16: UCP: Conceitos Básicos e Componentes Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Conceitos Básicos e Componentes FAC 1 / 34

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Unidade Central de Processamento (CPU) Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Baseado nos slides do capítulo

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

Arquiteturas de Computadores

Arquiteturas de Computadores Arquiteturas de Computadores Implementação de IPS multiciclo Fontes dos slides: Patterson & Hennessy book website (copyright organ Kaufmann) e Dr. Sumanta Guha Problemas de projeto monociclo Assumindo

Leia mais

4. Modelo de Programação do DLX Introdução

4. Modelo de Programação do DLX Introdução 4. Modelo de Programação do DLX Quero que o matemático Beremiz Samir nos conte uma lenda, ou uma simples fábula, na qual apareça uma divisão de 3 por 3 indicada, mas não efetuada, e outra de 3 por 2, indicada

Leia mais

Processador: Conceitos Básicos e Componentes

Processador: Conceitos Básicos e Componentes Processador: Conceitos Básicos e Componentes Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado nos slides de Fernanda Passos Cristina Boeres (IC/UFF)

Leia mais

Arquiteturas de Computadores

Arquiteturas de Computadores Arquiteturas de Computadores Implementação de MIPS multiciclo (cont.) Fontes dos slides: Patterson & Hennessy book website (copyright Morgan Kaufmann) e Dr. Sumanta Guha CPI em uma CPU multiciclo Assuma

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

Capítulo 6 Pipeline Morgan Kaufmann Publishers

Capítulo 6 Pipeline Morgan Kaufmann Publishers Capítulo 6 Pipeline 998 organ Kaufmann Publishers Pipeline: analogia com linha de produção tempo carro Chassi ec Carroc. Pint. Acab. carro2 Chassi ec Carroc. Pint. Acab. carro3 Chassi ec Carroc. Pint.

Leia mais

Infra-estrutura de Hardware

Infra-estrutura de Hardware CPU: Estrutura e Funcionalidade Roteiro da Aula Ciclo de Instrução Projeto de uma CPU simples: conceitos Componentes básicos Leitura da instrução Operação entre registradores Acesso à memória Implementação

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 2ª e 3ª Aulas Arquitetura MIPS: ISA, Formato das instruções e Modos de endereçamento Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Arquitetura MIPS MIPS: Microprocessor

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

Questionário Arquitetura e Organização de Computadores

Questionário Arquitetura e Organização de Computadores Questionário Arquitetura e Organização de Computadores Os exercícios desta lista estão organizados em geral seguindo a apresentação do conteúdo em aula. No entanto, alguns exercícios podem requerem conhecimentos

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

lw, sw add, sub, and, or, slt beq, j

lw, sw add, sub, and, or, slt beq, j Datapath and Control Queremos implementar o MIPS Instruções de referência à memória: lw, sw Instruções aritméticas e lógicas: add, sub, and, or, slt Controle de fluxo: beq, j Cinco passos de execução Busca

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Pipeline Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Organização do MIPS: pipeline Visão geral do pipeline Analogia com uma Lavanderia doméstica 1

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

Registradores na Arquitetura MIPS. 29/4/2016 MIPS - Instruction Set Architecture

Registradores na Arquitetura MIPS. 29/4/2016 MIPS - Instruction Set Architecture Registradores na Arquitetura MIPS 29/4/2016 MIPS - Instruction Set Architecture 1 Mapa de Memória da Arq. MIPS 2 GB 2 GB 256 MB 64 KB 2 GB 64 KB 256 4 MB 4 MB 29/4/2016 MIPS - Instruction Set Architecture

Leia mais

Aula 15: Ciclo de Execução e Introdução ao Pipeline

Aula 15: Ciclo de Execução e Introdução ao Pipeline Aula 15: Ciclo de Execução e Introdução ao Pipeline Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Ciclo de Execução; Intro ao Pipeline FAC

Leia mais

Sistemas Processadores e Periféricos Aula 2 - Revisão

Sistemas Processadores e Periféricos Aula 2 - Revisão Sistemas Processadores e Periféricos Aula 2 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão

Leia mais

Introdução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16

Introdução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16 Introdução aos Computadores Introdução à Ciência de Computadores Nelma Moreira Departamento de Ciência de Computadores da FCUP Outubro 2011 Introdução aos Computadores Introdução à Ciência de Computadores

Leia mais

Controle em Processador Segmentado

Controle em Processador Segmentado Revisão segmentação Todos os processado modernos usam segmentação segmentação não reduz a latência de uma instrução mas ajuda na vazão/produção do programa inteiro várias tarefas em execução simultânea

Leia mais

de saltos Aula de Abril de

de saltos Aula de Abril de Predição de saltos Aula 13 21 de Abril de 2005 1 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

Leia mais

Infra-estrutura de Hardware

Infra-estrutura de Hardware CPU: Estrutura e Funcionalidade Roteiro da Aula Ciclo de Instrução Projeto de uma CPU simples: conceitos Componentes básicos Leitura da instrução Operação entre registradores Acesso à memória Implementação

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES Organização de Computadores ORGANIZAÇÃO DE COMPUTADORES Curso: Tecnologia em Gestão da Tecnologia da Informação Ano: 2011 Instrução Precisam ser entendidas pelo processador Precisam ser decodificadas e

Leia mais

Organização ou MicroArquitectura

Organização ou MicroArquitectura Organização ou MicroArquitectura DataPath MIPS32 AC Micro-Arquitectura: DataPath do MIPS Datapath e Controlpath Datapath circuito percorrido pelas instruções, endereços e ados IP Inst. Mem. Register File

Leia mais

processadores µprocessador µcontrolador DSP ASIP especialização crescente

processadores µprocessador µcontrolador DSP ASIP especialização crescente processadores programáveis (por software) µprocessador µcontrolador DSP ASIP usos gerais aplicações industriais, controlo, RT aplicações numéricas, RT hw e conjunto de instruções optimizado para a aplicação

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

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal

Leia mais

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador.

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador. Universidade Estácio de Sá Curso de Informática Disciplina de Organização de Computadores II Prof. Gabriel P. Silva - 1 o Sem. / 2005 2 ª Lista de Exercícios 1) O que é o relógio de um sistema digital?

Leia mais