Esse programa inclui dependências de tipo: escrita-escrita, leitura-escrita e escrita-leitura. Identifique e mostre estas dependências.
|
|
- Luciano Padilha Rosa
- 6 Há anos
- Visualizações:
Transcrição
1 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? Como uma unidade de pipeline trabalha? P2) O que são pipeline hazards? P3) Enumere e brevemente apresente os três tipos de pipeline hazards. P4) O que é pipeline flush e quando deve ser usado? P5) Data dependencies: Enumere os três tipos de dependências de dados e apresente um exemplo de cada uma. P6) Dentre as técnicas de tratamento do hazard de controle, descreva a que você considera mais eficiente e a que você considera menos eficiente e explique porque? P7) Hazards de dados em unidades pipeline podem algumas vezes serem evitadas pela técnica chamada forwarding. Como esta técnica trabalha? Apresente um exemplo no qual o forwarding produza uma aceleração na execução pipelining. P8) Considere um bloco de código com 7 instruções cada uma com tempo de execução T ex. Elas são executadas numa unidade pipeline de 6 estágios. Os overheads do pipeline são ignorados. Quanto tempo é consumido para executar as 7 instruções pela CPU pipeline? (suponha que não há hazards) Ilustre a resposta P9) O fragmento de código abaixo, apresenta a função myst escrita em MIPS assembly. Analise o código e descreva objetivamente o que a função myst faz? - considere que os argumentos de entrada $a0 e $a1 são valores não sinalizados. myst: move $v0, $0 L1: andi $t0, $a0, 1 beq $t0, $0, L2 addu $v0, $v0, $a1 L2: sll $a1, $a1, 1 srl $a0, $a0, 1 bne $a0, $0, L1 jr $ra P10) Considere o seguinte programa em linguagem de montagem: I1: move R3,R7 # R3 (R7) I2: load R8, (R3) # R8 Mem(R3) I3: add R3, R3, 4 # R3 (R3)+4 I4: load R9, (R3) # R9 Mem(R3) I5: ble R8, R9, L3 # Desvia se (R9) > (R8) Esse programa inclui dependências de tipo: escrita-escrita, leitura-escrita e escrita-leitura. Identifique e mostre estas dependências. Arquitetura e Organização de Computadores 2 1
2 P11) Identifique os conflitos de dados (data hazards) no seguinte fragmento de código MIPS e reordene as instruções para evitar qualquer suspensão do pipeline (pipeline stalls). lw $t0, ($sp) lw $t1, ($t0) addi $t1, $t1, 4 lw $t2, ($t0) add $t3, $t2, $t1 sw $t3, 4($sp) sw $zero, ($sp) P12) As instruções em anexo são executadas em um pipeline contendo 5 unidades internas: unidade de busca (IF), unidade de decodificação (ID), unidade de busca de operando (OF), unidade de execução de instrução (OE) e unidade de armazenamento de resultado (OS). Instruções distintas usam diferentes unidades para cada estágio como mostrado na tabela abaixo e somente as instruções aritméticas e de comparação afetam os flags. O número em cada estágio corresponde ao número de ciclos para execução do estágio (1 ciclo = 100 ns). Instrução T(IF) T(ID) T(OF) T(OE) T(OS) LDA reg, mem STA reg, mem ADR reg, reg SUR reg, reg CMP reg, reg JUMP end JMP cond. end a) Compute o tempo de execução para os dois programas descritos a seguir: Programa 1 Programa 2 LDA $2, 300 LDA $0, #0 LDA $0, (100) LDA $1, 200 #endereçamento direto CMP $1, $0 JPZ e1 ADD $0, $2 e1: STA $0, 100 LDA $4, 600 LDA $5,700 ADR $4, $5 LDA $6, 800 SUR $4, $6 #ender. imediato LDA $3, #1 L1:LDA $1, 100 LDA $2, 200($0) #ender. indexado ADR $1, $2 STA $1, 200($0) ADD $0, $3 CMP $0, #3 JPN L1 #desvio se menor b) Calcule o desempenho do pipeline nos dois casos. É possível melhorar este desempenho? Em caso positivo, como e de quanto se pode melhorar o desempenho dos referidos programas? Arquitetura e Organização de Computadores 2 2
3 P13) Considere um processador RISC cuja arquitetura segue o modelo ilustrado no pipeline abaixo: Na etapa ID são obtidos o opcode e os operandos de uma instrução e na etapa RF é efetuada a leitura dos registros de uso geral e a verificação de condições de salto. As restantes etapas têm as habituais funções. Os tempos de propagação associados a cada etapa encontram-se também assinalados na figura. Sabe-se também que os registos que separam as diversas etapas impõem um atraso adicional de 2 ns. Considere a seguinte sequência instruções: Load R1, R0 # R1 <- M[R0] Store R2, R1 # M[R2] <- R1 a) Apresente uma forma de resolver esta situação particular de conflito (dependências entre Load seguido de Store), sem que sejam introduzidas bolhas no pipeline. Ilustre com um esquema onde apareçam os circuitos utilizados e a(s) etapa(s) sujeita(s) a modificações. b) Aplicando a solução proposta no item (a), haverá aparição de bolhas no pipeline ao executar a sequência de código abaixo? Justifique sua resposta. Load R1, R0 # R1 <- M[R0] Add R2, R1, R3 # R2 <- R1 + R3 P14) A figura 1 ilustra o diagrama de execução de um programa submetido para uma linha de execução de instruções pipeline. O diagrama ilustra a execução até o começo da segunda iteração. Dica: há RAW hazards associados com loads, stores e branch. figura 1 diagrama de execução pipeline Ciclos LOOP: lw r1, 0(r2) IF ID EX ME WB IF ID EX ME add r3, r1, r4 IF ID EX ME WB IF ID lb r5, 0(r3) IF ID EX ME WB IF ID sb 0(r6), r5 IF ID EX ME WB IF addi r2, r2, #4 IF ID EX ME WB addi r6, r6, #1 IF ID EX ME WB slt r7, r2, r8 IF ID EX ME WB bneq r7, LOOP IF ID EX ME WB xor r10,r11,r12 IF X Faça um escalonamento das instruções (rearranjo) do programa acima, de tal modo que minimize o número de stalls (suspensões do pipeline). Escreva solução na figura 2. Arquitetura e Organização de Computadores 2 3
4 figura 2 execução da solução em pipeline Ciclos LOOP: P15) 2-bit saturating counter branch predictor: a) Explique o comportamento de um preditor de desvio de dois bits (2-bit saturating counter branch predictor). Mostre na forma de diagrama de transição de estado ou tabela o estado do preditor de 2-bits e, ilustre a transição para cada execução do desvio (branch). Contador 2-bits Predição atual Execução 00 NT NT 00 NT T 01 NT NT 01 NT T 10 T NT 10 T T 11 T NT 11 T T Novo valor do contador 2-bits b) Considere o código abaixo e o seu correspondente código assembly gerado: Código C for (i=0; i<n; i++) if (x[i] == 0) y[i] = 0.0; else y[i] = y[i]/x[i]; Código Assembly loop: else: fall: LD F1, 0(R2) LD F2, 0(R3) BNEZ F1, else ADD.D F2, F0, F0 BEZ R0, fall DIV.D F2, F2, F1 DADDI R2, R2, 8 DADDI R3, R3, 8 DSUBI R1, R1, 1 S.D -8(R3), F2 BNEZ R1, loop Dado que: o valor de N está armazenado em R1; os endereços bases para x e y estão armazenados em R2 e R3, respectivamente; o registrador F0 contém o valor 0. Assuma que o primeiro elemento de x possui o valor 1 e os elementos restantes possuem valor 0, mostre a saída das predições para o contador de predição de 2-bits utilizado para previsão do desvio mais interno (BNEZ F1, else). Assuma que o valor inicial do contador de previsão é 00. Arquitetura e Organização de Computadores 2 4
5 Iteração Contador Predição 2-bits atual 1 00 NT Execução Novo valor contador 2-bits P16) Em uma Arquitetura Superescalar existem diversas unidades responsáveis pelo bom funcionamento da proposta, entre elas podemos citar as seguintes unidades: Busca de instruções Execução Despacho Renomeação Previsão de Desvio Graduação (validação) Decodificação Reordenamento Delegação a) Descreva de maneira objetiva, quais as tarefas desempenhadas pelas unidades funcionais descritas acima. P17) Descreva as técnicas de despacho (instruction-issue policy) usadas em máquinas superescalares. Use exemplos se quiser. P18) Há duas abordagens para explorar o paralelismo em nível de instruções (ILP) no projeto dos processadores modernos: VLIW e superescalar. Exemplos dessas abordagens coexistem no mercado: o Intel Itanium (VLIW) e o IBM PowerPC (superescalar). Discorra sobre as principais vantagens e desvantagens de cada abordagem. Utilize os seguintes aspectos para elaborar a resposta: complexidade do hardware, flexibilidade no escalonamento, tolerância a latências não previsíveis; complexidade do compilador; compatibilidade do código, etc. Superescalar VLIW Arquitetura e Organização de Computadores 2 5
6 P19) Uma maneira de melhorar o desempenho é dividir o pipeline em um número maior de estágios, como no Pentium 4 comparado ao Pentium III. Isto não reduz a quantidade de tempo que ele necessita para realizar a tarefa, tais como: adições. Responda as perguntas abaixo: a) Dependências ainda são problemas ou podemos utilizar zillion de estágios pipeline? Explique b) Por que a precisão da previsão de desvios torna-se mais importante quando há mais estágios no pipeline? P20) Explique as duas políticas de execução de instruções em arquiteturas superescalares: a) in-order issue with in-order completion; b) out-of-order issue with out-of-order completion. P21) Considerando o trecho de código abaixo: a) Divida o código em blocos básicos; b) Tome o trace formado pelas instruções I1, I2, I4, I5, I6, I7, I8, I9, I11 a I16 e faça o grafo de dependências entre as instruções. Indique as dependências falsas entre duas instruções apenas quando não houver uma dependência direta entre elas; c) Utilize os registradores de R9 em diante para, através de renomeação, eliminar as dependências falsas relevantes no trace descrito no item b; d) Utilize o algoritmo List Scheduling para realizar o escalonamento das instruções do trace obtido no item c, considerando uma arquitetura VLIW, possuindo 1 ALU Inteira com Multiplicador, 1 ALU Inteira com Shifter e 1 Unidade de Load/Store. Suponha que as instruções de Load/Store consomem 2 ciclos e que a instrução de Multiplicação consome 4 ciclos; e) Determine a taxa média de instruções executadas por ciclo produzidas pelo escalonador do item d; f) Supondo que o trecho de código original fosse ser executado em uma arquitetura pipeline com delayed branch usando 1 delay slot, como você preencheria os delay slots após as instruções I3 e I10. Assuma que, como foi feito no item c, é possível fazer renomeação de registradores para eliminar dependências falsas. I1: LW R5, 0(R1) ; (R5 <= mem[r1]) I2: SLL R7,R8,1 ; (desloca R8 para a esquerda em 1 bit) I3: BEQZ R7, I5 ; (desvia para I5 se R7 igual a Zero) I4: OR R8, R8, 0x8000 ; (R8 <= R8 or 0x8000) I5: AND R5, R5, R8 ; (R5 <= R5 and R8) I6: SW 0(R1), R5 ; (mem[r1] <= R5) I7: ADD R1, R1, 4 ; (R1 <= R1 + 4) I8: LW R6, 0(R1) ; (R6 <= mem[r1]) I9: SLL R7, R8,1 ; (desloca R8 para a esquerda em 1 bit) I10: BEQZ R7,I12 ; (desvia para I12 se R7 igual a Zero) I11: OR R8, R8, 0x8000 ; (R8 <= R8 or 0x8000) I12: AND R6, R6, R8 ; (R6 <= R6 and R8) I13: ADDI R1, R1, 4 ; (R1 <= R1 + 4) I14: MULT R4, R5, R6 ; (R4 <= R5 * R6) I15: SW 0(R2), R4 ; (mem[r2], R4) I16: ADDI R2, R2, 4 ; (R2 <= R2 + 4) Arquitetura e Organização de Computadores 2 6
7 P22) Considere a execução do trecho de código ao lado no pipeline de 5 estágios, sem adiantamento. a) Modifique o código para que ele execute corretamente num processador sem lógica de bloqueios (stalls). b) Desenrole o laço (loop unrolling) uma vez e reordene as instruções para que ele execute com um mínimo de bolhas, no processador sem adiantamento e sem lógica de bloqueios. O sufixo.d indica instrução de ponto flutuante de tipo double; e f0..f8 são registradores de ponto flutuante de 64 bits. loop: ld.d f0,0(r4) ld.d f2,0(r6) mul.d f4,f2,f0 ; 1 ciclo add.d f6,f4,f8 ; f8 escalar st.d f4,0(r8) st.d f6,8(r8) addi r4,r4,8 addi r6,r6,8 addi r8,r8,16 bne r8,r9,loop ; r9 limite P23) Instruction Level Parallelism ILP: a) Explique o conceito de paralelismo em nível de instruções (ILP). b) Apresente duas razões que impeça os atuais processadores explorarem o paralelismo de instruções na prática. c) Apresente três efeitos causados pela complexidade do hardware quando tentamos ampliar a taxa de despacho nos processadores. d) Com base nas respostas dos itens (b) e (c) descreva quais propriedades um processador ideal precisaria ter para que pudesse explorar ao máximo o paralelismo de instruções presente nas aplicações. e) Em sua opinião qual das abordagens arquiteturais será mais bem sucedida no tratamento da ILP: superescalar ou VLIW? Justifique sua resposta. P24) Determine o desempenho relativo dos três processadores seguintes. Todos suportam o mesmo conjunto de instruções. i. Processador MIPS simples com emissão dupla, f = 1 GHz e CPI pipeline=1. O sistema de cache tem 0.01 falhas/instrução em média. ii. Processador MIPS com pipeline profunda, f = 1.25 GHz, CPI pipeline=1.2. Este sistema tem memórias cache mais pequenas, e apresenta uma taxa de falhas/instrução de (em média). iii. Processador superescalar especulativo com janela de 64 itens e uma taxa de emissão de 4.5 instruções/ciclo. A organização de memória cache é ainda mais pequenas, apresentado 0.02 falhas/instrução, mas o processador consegue esconder 10% da penalidade de falha. O processador funciona a f = 800 MHz. Recomendações: O trabalho deverá ser desenvolvido em equipes com um número máximo de 3 componentes. O trabalho deverá ser feito pelo grupo, qualquer evidência de cópia será penalizada com perda da pontuação. O relatório de respostas deverá apresentar o enunciado das questões, aquelas que não apresentarem o enunciado, serão desconsideradas. O relatório deverá ser entregue em cópia impressa na data definida no enunciado. Data de Entrega: 02/06/2016 Arquitetura e Organização de Computadores 2 7
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 mais1. 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 maisProcessadores 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 maisAULA 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 mais1.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 maisArquitetura 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 maisArquitectura 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É 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 maisPARTE 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 maisArquitetura 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 maisProf. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h
Pipelining Avançado Prof. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h Introdução A técnica de pipelining explora o paralelismo entre as instruções Paralelismo em Nível de Instrução (ILP). Métodos
Leia maisI. 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 maisPrediçã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 maisInstituto 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 maisEscalonamento 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 maisO 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 mais28 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 maisArquitetura 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 maisIntroduçã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 maisArquitetura e Organização de Computadores 2
Arquitetura e Organização de Computadores 2 Escalonamento Estático e Arquiteturas VLIW Dynamic Scheduling, Multiple Issue, and Speculation Modern microarchitectures: Dynamic scheduling + multiple issue
Leia maisO 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 maisArquitetura de Computadores II
Universidade Estadual de Maringá Centro de Tecnologia Departamento de Informática Arquitetura de Computadores II Prof. Flávio Rogério Uber Informações Úteis Professor: Flávio Rogério Uber Bloco C-56 Sala
Leia maisFigura 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 maisSSC0611 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 maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas
Leia mais1. 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 maisConjunto de Instruções. Alisson Brito
Conjunto de Instruções Alisson Brito 1 1 O que é o Conjunto de Instruções? Instruction Set Architecture (ISA) Interface entre Programas e CPU A coleção completa de instruções reconhecidas pela CPU Programas
Leia maisMicrocontroladores 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 maisSSC0611 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 maisMicroprocessadores. 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 maisParte 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 maisPipelines. 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 maisObjetivos. Tópico 02: Arquitetura do Conjunto de Instruções. Page 1. Estudar as principais características de arquiteturas de conjunto de instruções.
Tópico 02: Arquitetura do Conjunto de Instruções Objetivos Estudar as principais características de arquiteturas de conjunto de instruções. Instruction set architecture (ISA) Baseando-se em propriedades
Leia maisProva 1 Eng. Elétrica Arquitetura de Computadores Prof. Celso A. Saibel Santos Nome: Data:
Prova 1 Eng. Elétrica Arquitetura de Computadores Prof. Celso A. Saibel Santos Nome: Data: 1. O percentual médio de uso das instruções para os 5 programas do SPECint92 na arquitetura Intel 80x86 resultou
Leia maisWilliam Stallings Arquitetura e Organização de Computadores 8 a Edição. Capítulo 12 Estrutura e função do processador
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 12 Estrutura e função do processador slide 1 Estrutura da CPU CPU precisa: Buscar instruções. Interpretar instruções. Obter
Leia maisSistemas 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 maisCaminho dos Dados e Atrasos
Caminho dos Dados e Atrasos Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Pipeline MIPS O MIPS utiliza um pipeline com profundidade 5, porém
Leia maisArquitetura de Computadores. Prof. João Bosco Jr.
Arquitetura de Computadores Prof. João Bosco Jr. (CPU) Modelo do Computador Von Neumann Processador Memórias E/S Barramentos Simulação Contador http://courses.cs.vt.edu/csonline/machinearchitecture/lessons/cpu/countprogram.html
Leia maisSistemas de Computação. Instruções de Linguagem de Máquina
Instruções de Linguagem de Máquina Linguagem de montagem do processador MIPS Operações aritméticas Instrução Exemplo Significado soma add a, b, c a = b + c subtração sub a, b, c a = b - c Compilação de
Leia maisCPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3
CPU CPU Funções: Processamento; Controle Componentes: UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3 Processador A função de um computador é executar tarefas
Leia maisParalelismo 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 maisa) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização.
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 1. Um programa P foi compilado com um compilador
Leia maisMelhorando 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 maisPIPELINE. 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çã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 maisArquiteturas Superescalares
Universidade Federal do Rio de Janeiro Pós-Graduação em Informática Microarquiteturas Avançadas Arquiteturas Superescalares Gabriel P. Silva Arquiteturas Pipelined com Desempenho Superior ao de uma Instrução
Leia maisParalelismo 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 maisArquitetura 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 maisCAPÍ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 maisExemplo: CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 ADD $s0, $t0, $t1 IF ID EX MEM WB SUB $t2, $s0, $t3 IF Stall Stall ID EX MEM WB
2.3 Dependências de dados (Data Hazards) Ocorre quando uma instrução depende do resultado de outra instrução que ainda está no pipeline. Este tipo de dependência é originado na natureza seqüencial do código
Leia maisProcessador. Processador
Departamento de Ciência da Computação - UFF Processador Processador Prof. Prof.Marcos MarcosGuerine Guerine mguerine@ic.uff.br mguerine@ic.uff.br 1 Processador Organização básica de um computador: 2 Processador
Leia maisOrganização e Projetos de Computadores. Capítulo 2. Organização e Projetos de Computadores. Instruções
Capítulo 2 Hennessy Patterson 1 Instruções Linguagem da máquina Vamos trabalhar com a arquitetura do conjunto de instruções MIPS (Micrrocessor without interlocked pipeline stages Micrrocessador sem estágios
Leia maisArquitetura de Computadores
Universidade Federal de Santa Catarina Centro Tecnológico Curso de Pós-Graduação em Ciência da Computação Aula 2 Arquitetura do Processador MIPS: características gerais, registradores, formatos de instrução,
Leia maisMODOS DE ENDEREÇAMENTO
UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO MODOS DE ENDEREÇAMENTO MARINGÁ 2014 SUMÁRIO 6 MODOS DE ENDEREÇAMENTO...2 6.1 ENDEREÇAMENTO
Leia mais2ª 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 maisde 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 maisUNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 - Gabarito 1. Um programa P foi compilado com
Leia maisDTSVLIW. UFES Mestrado em Informática. Arquiteturas Avançadas de Computador. Sotério Ferreira de Souza. Prof. Alberto Ferreira de Souza
UFES Mestrado em Informática Arquiteturas Avançadas de Computador DTSVLIW Sotério Ferreira de Souza Orientador: Prof. Alberto Ferreira de Souza 23 de outubro de 2003 DTSVLIW Dynamically Trace Scheduled
Leia maisOrganizaçã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 maisVisã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 maisORGANIZAÇÃ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 maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Dr. Daniel Caetano 2012-2 Objetivos Conhecer o processador Compreender os registradores
Leia maisMicroarquiteturas Avançadas
Universidade Federal do Rio de Janeiro Arquitetura de Computadores I Microarquiteturas Avançadas Gabriel P. Silva Introdução As arquiteturas dos processadores têm evoluído ao longo dos anos, e junto com
Leia maisUNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Arquiteturas de Computadores Turma :A1 Lista 1 Profa.: Simone Martins 1. Tentando projetar o futuro: a) Em
Leia maisExercí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 maisRelembrando desempenho...
Parte 5 OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson, 2ª e 3ª Ed. e do Livro do 5ª Ed. A parte final do material corresponde às aulas
Leia maisConceitos Básicos Processador
Infra-Estrutura de Hardware Conceitos Básicos Processador Prof. Edilberto Silva www.edilms.eti.br edilms@yahoo.com Sumário Conceitos básicos Organização da CPU Execução das Instruções RISC x CISC Paralelismo
Leia maisUniv 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 maisRelembrando desempenho...
Parte 5 OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson, 2ª e 3ª Ed. e do Livro do 5ª Ed. A parte final do material corresponde às aulas
Leia mais4. 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 maisWilliam Stallings Organização de computadores digitais. Capítulo 11 Estrutura e função da CPU
William Stallings Organização de computadores digitais Capítulo 11 Estrutura e função da CPU Encruzilhada na arquitetura de computadores 2004/2005 Antiga opinião Nova visão a energia é de graça, os transistores
Leia maisUnidade Central de Processamento UCP (CPU)
Unidade Central de Processamento UCP (CPU)! Arquitetura Convencional (Von Neumann) UCP BARRAMENTO MEMÓRIA PRINCIPAL ENTRADA E SAÍDA ! Visão geral da CPU UC - UNIDADE DE CONTROLE REGISTRADORES A B C D ALU
Leia maisProcessadores para computação de alto desempenho
Processadores para computação de alto desempenho Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Introdução Nesta aula apresentaremos características de processadores e como
Leia maisArquitetura de Computadores. Conjunto de Instruções
Arquitetura de Computadores Conjunto de Instruções Arquitetura do Conjunto das Instruções ISA (Instruction Set Architecture) Traduz para uma linguagem intermediária (ISA) os vários programas em diversas
Leia maisOrganização de computadores. Aula 05
Organização de computadores Aula 05 2 Níveis de um computador Computadores possuem uma série de níveis Cada um construído sobre seus antecessores Cada um representa uma abstração distinta com diferentes
Leia maisConflitos. 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 maisArquitetura e Organização de Computadores
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Conjunto de Instruções Prof. Sílvio Fernandes
Leia maisORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira
ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES Prof. Juliana Santiago Teixeira julianasteixeira@hotmail.com INTRODUÇÃO INTRODUÇÃO O processador é o componente vital do sistema de computação, responsável
Leia maisUniversidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação. Arquitetura de Computadores I. Organização Básica do Computador
Universidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação Arquitetura de Computadores I Organização Básica do Computador Gabriel P. Silva Ementa Unidade 2: Organização Lógica e Funcional
Leia maisAula 14 Funcionamento de Processadores (Visão específica)
Aula 14 Funcionamento de Processadores (Visão específica) Com base nas aulas de Prof. José Delgado (autorizado) Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm
Leia maisRevisã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 maisOrganização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores
Ciência da Computação Arq. e Org. de Computadores Processadores Prof. Sergio Ribeiro Composição básica de um computador eletrônico digital: Processador Memória Memória Principal Memória Secundária Dispositivos
Leia maisARQUITECTURA DE COMPUTADORES
ARQUITECTURA DE COMPUTADORES CAPÍTULO III AULA I, II e III Abril 2014 Índice Aritmética para computadores Intro Adição e subtração Multiplicação Divisão Virgula Flutuante Virgula Flutuante - aritmética
Leia maisAvaliação de Desempenho
Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de
Leia maisAula 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 maisRISC simples. Aula 7. 31 de Março de 2005 1
RISC simples Aula 7 31 de Março de 2005 1 Estrutura desta aula Principais características dos processadores RISC Estrutura de um processador (MIPS) sem pipeline, de ciclo único O datapath ou circuito de
Leia maisDEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 2 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS
DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 2 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS Aluno: Escore: Assinale a resposta que considerar mais correta.
Leia maisRegistradores 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 mais2. A influência do tamanho da palavra
PROCESSAMENTO 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante
Leia maisArquitetura de Computadores. Linguagem de Máquina
Arquitetura de Computadores Linguagem de Máquina Ivan Saraiva Silva Formato de Instrução MAC O MIC possui dois formatos de instrução: 4 bits 12 bits Formato 1 CODOP ENDEREÇO 8 bits 8 bits Formato 2 CODOP
Leia maisSequenciamento dinâmico
Sequenciamento dinâmico João Canas Ferreira Outubro de 2004 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3 a. ed., MKP c JCF, 2004 AAC (FEUP/LEIC) Sequenciamento
Leia maisPara os problemas seguintes considere os 5 andares de pipelining do MIPS:
A. Pipelining Para os problemas seguintes considere os 5 andares de pipelining do MIPS: ETCH () ID (I) EXEC (E) MEM (M) WR (W) Para resolução dos problemas utilize a tabela em anexo, na qual deve indicar
Leia maisArquitetura 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 maisArquitetura 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 maisFaculdade de Computação 3 a Prova de Arquitetura e Organização de Computadores 2 Parte I Prof. Cláudio C. Rodrigues
Faculdade de Computação 3 a Prova de Parte I Prof. Cláudio C. Rodrigues Nome: Matrícula: Valor: 15 Nome: Matrícula: Valor: 15 Nome: Matrícula: Valor: 15 Nome: Matrícula: Valor: 15 Problemas: P1. Qual o
Leia maisProf. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO
Linguagem de Montagem Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO 1 Introdução Independente da linguagem de programação utilizada, todo programa
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Conjunto de Instruções Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes - UFERSA
Leia maisArquitetura 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 maisArquitetura 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 maisDisciplina: Arquitetura de Computadores
Disciplina: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof a. Carla Katarina de Monteiro Marques UERN Introdução Responsável por: Processamento e execução de programas armazenados na
Leia mais