Prova 1 Eng. Elétrica Arquitetura de Computadores Prof. Celso A. Saibel Santos Nome: Data:
|
|
- Bernardo Borja Sintra
- 7 Há anos
- Visualizações:
Transcrição
1 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 em: 35% loads-stores, 20% para conditional branches, 15% para compares, 20% para operações da ULA (add, sub, or,...) e 10% para outras instruções. Considere que as instruções anteriores gastam, respectivamente, 2, 5, 3, 2 e 2 ciclos de clock para serem completadas. a. (1.0) Qual o CPI médio para a execução dos programas do SPECint92 nessa arquitetura? b. (0.75) Suponha que a possibilidade da chamada execução especulativa permita reduzir em 50% número de ciclos necessários para execução das instruções do tipo conditional branche e compare. Qual o speedup que poderia ser alcançado com essa mudança? c. (0.75) Considerando que seja possível reduzir todas as operações de ULA (utilizando-se replicação de unidades funcionais) e todas as operações de memória (aumentando a vazão do barramento) para apenas 1 ciclo de clock, qual o speedup máximo que poderia ser alcançado? d. (1.0) Considere que as mudanças propostas nos itens (b) e (c) representariam um aumento de custo das partes envolvidas na execução da arquitetura para 5x e 3x, respectivamente. Considerando apenas o tempo final de execução versus o ganho obtido pelo custo do investimento, qual seria a melhor indicação de melhoria para a arquitetura em termos de custo final de produção? Em outras palavras, qual ganho da arquitetura custa mais em termos de segundos reduzidos por valor gasto TIPO INSTRUÇÃO % CICLOS loads-stores 35% 2 Time = (Instructions / Program) *(# Cycles / Instruction) *(Seconds / Cycle) conditional branches 20% 5 speedup = Performance(X) / Performance(Y) = Execution Time(Y) / Execution Time(X) Compares 15% 3 Performance (X) = 1 / Execution Time(X) ULA 20% 2 Outras 10% 2 CPI_médio 2,75 CPI_médio_b 2,03 speedup_branchcomp 35,80% CPI_médio_c 2,20 speedup_ula 25% Ganho_b 5 0,07 Aumento_Custo_b/Redução_Tempo_b Ganho_c 3 0,05 Aumento_Custo_c/Redução_Tempo_c s = [T_Exec(Y) T_Exec(X)] / T_Exec(X) T_Exec(X) = CPI(X) * N_Inst(X) * T_Clock(X); T_Exec(X) = CPI(Y) * N_Inst(Y) * T_Clock(Y) Mas N_Inst(X) = N_Inst(Y) e T_Clock(X) = T_Clock(Y), pois apenas o número de ciclos baixou para algumas instruções. Assim: s = CPI(Y) CPI(X) / CPI(X) Melhor opção Aumento de Custo versus Ganho é a melhoria da ULA (letra c) com 5% (Menor custo para um mesmo ganho). 2. (Adaptado de Tanembaum, Cap.5) Compare as máquinas com endereçamentos do tipo registradormemória e registrador para operações aritméticas, escrevendo os códigos para computar a expressão X = (A + B C) / (D E F)para cada máquina. As instruções em linguagem de máquina disponíveis para uso são mostradas na tabela a seguir. Forma de Endereçamento Registrador-Memória Registrador OBSERVAÇÕES: Load R1,M Load R1,M 1. M é um endereço de memória 16 bits Store R1,M Store R1,M 2. Ri é um registrador de 4 bits Add R3,R2,M Add R3,R2,R1 3. Os opcodes possuem 8 bits Sub R3,R2,M Sub R3,R2,R1 4. As instruções devem ter comprimentos Mult R3,R2,M Mult R3,R2,R1 múltiplos de 4 bits Div R3,R2,M Div R3,R2,R1 5. Não há otimizações no código
2 a. (1.5) Escreva o código em linguagem de máquina para o cálculo de X em ambas as arquiteturas. Em seguida determine o número de bytes de instruções buscados na memória e o número de bytes de dados trocados entre a memória e a CPU? Forma de Endereçamento Registrador-Memória Registrador Reg-Mem Reg-Reg LOAD R1, M LOAD R1, M STORE R1, M STORE R1, M ADD R3, R2, M ADD R3, R2, R SUB R3, R2, M SUB R3, R2, R MULT R3, R2, M MULT R3, R2, R DIV R3, R2, M DIV R3, R2, R (A + B C) / (D - E F) ASSEMBLY REG-REG SIGNIFICADO BITS INSTRUÇÃO BITS DADOS 1 LOAD R1,B R1=B LOAD R2,C R2=C LOAD R3, A R3=A MULT R4,R1,R2 R4=(B C) ADD R3,R4,R3 R3=(A + B C) LOAD R1,F R1=F LOAD R2,E R2=E LOAD R5, D R5=D MULT R4,R1,R2 R4=(E F) SUB R5,R5,R4 R5= (D - E F) DIV R3,R3,R4 R3=(A + B C) / (D - E F) STORE R3, X X =(A + B C) / (D - E F) ASSEMBLY REG-MEM SIGNIFICADO LOAD R1,B R1=B MULT R2,R1,C R2=B C ADD R3,A,R2 R3=(A + B C) LOAD R1,E R1=E MULT R2,R1,F R2=E F SUB R4,D,R2 R4=(D - E F) STORE R4,X X=R DIV R3,R3,X R3=(A + B C) / (D - E F) STORE R3, X X =(A + B C) / (D - E F) b. (1.0) Compare (vantagens x desvantagens) as formas de endereçamento consideradas. O número de instruções é menor para a arquitetura REG-MEM (9 contra 12). A abordagem REG-REG é melhor com relação ao número de bytes de dados trafegados entre CPU- Memória em termos de bits (112 contra 144, ou seja, 14 contra 18 bytes), apesar de todas as instruções da arquitetura REG-MEM exigirem comunicação com a memória. O número de bytes de instrução buscados pela CPU na Memória, apesar de próximo, é também menor para a arquitetura REG-MEM (296 contra 272 bits, ou seja, 37 contra 34 bytes) do que para a
3 arquitetura REG-REG. Neste exemplo, não há vantagens no uso de registradores na arquitetura REG-REG para efetuar as operações aritméticas, pois os operandos (A, B, C, D, E, F e X) são diferentes em quase todas as operações (pouco reuso da variável dentro da via de dados). 3. (1.0) O valor MIPS (milhões de instruções por segundo) dá uma ideia de operações por unidade de tempo. Assim, intuitivamente, máquinas mais rápidas possuem MIPS maiores. Entretanto, existem três problemas ao se usar apenas o MIPS para se determinar desempenho de uma arquitetura: O MIPS depende do conjunto de instruções, o que dificulta comparar computadores com diferentes conjuntos de instruções. O MIPS pode variar entre programas no mesmo computador. O MIPS pode variar inversamente com o desempenho. Explique as afirmações anteriores, justificando o porquê do MIPS não poder ser usado como medida exclusiva de desempenho de uma arquitetura. MIPS = million instructions per second MIPS = Número de instruções / Tempo de Execução*10 6 = Taxa_Clock / CPI*10 6 O MIPS depende do conjunto de instruções, o que dificulta comparar computadores com diferentes conjuntos de instruções : O valor MIPS serve apenas de indicativo de desempenho. Se o conjunto de instruções varia, a comparação não é justa porque o tempo para execução de cada uma das instruções nas arquiteturas e o número de instruções associadas a um mesmo código de alto nível pode variar muito. Além disso, existe a dependência entre código gerado (número e tipo de instruções) e compilador. O MIPS pode variar entre programas no mesmo computador : o valor MIPS depende da distribuição das instruções do programa. Em outras palavras, aplicações fortemente baseadas instruções aritméticas terão, em geral, um MIPS muito mais alto do que aplicações fortemente baseadas em leitura-escrita na memória. O MIPS pode variar inversamente com o desempenho : (ver exemplo da lista de exercícios). Se as instruções em ponto-flutuante fossem executada por rotinas de software (aritmética inteira), é provável que o desempenho fosse muito pior para o programa, mas com um MIPS muito mais alto (mais instruções simples sendo executadas por segundo). 4. (1.5) A frequência do clock é uma das variáveis utilizadas em projetos de arquiteturas de computadores, em particular, dos processadores. Explique por que a mudança no tempo de ciclo de uma arquitetura não implica, necessariamente, em aumento imediato de desempenho. Pontos que deveriam ser mencionados: (1) a redução do tempo ciclo de clock pode provocar o aumento do número de ciclos necessários para execução de operações, que se forem as mais frequentes, podem alterar o CPI média final; (2) a palavra chave para desempenho é o balanceamento entre as partes que compõem a arquitetura (CPU, barramentos, memória, etc); (3) desbalanceamento entre velocidade de processamento da CPU e da leitura de dados na memória (gargalo de von Neumman). 5. (1.5) O que caracteriza uma arquitetura RISC em termos de conjunto de instruções? Por que costumase dizer que esta abordagem aposta no compilador para gerar um bom desempenho? Use apenas argumentos vistos até esta parte do curso para justificar suas respostas. Pontos que deveriam ser mencionados: RISC: Conjunto reduzido de instruções, modo de endereçamentos simples (em geral, 1 apenas, load-store), operandos em registradores (que são, normalmente, em número elevado), desempenho mais dependente do compilador; Papel fundamental do compilador: como existem menos instruções e menos flexibilidade para endereçamentos, existe uma distância semântica maior entre as linguagens de alto-nível e a linguagem de máquina. Com isso, o compilador deve, em geral: (i) gerar mais instruções para um mesmo código de alto nível (em especial, operações envolvendo a ULA e operandos); (ii) ter que trabalhar com a alocação adequada dos registradores para variáveis dos programas compilados
4 (toda a movimentação de dados CPU memória é feita com load-stores), otimizações dos códigos para melhor desempenho (previsão de desvios, execução especulativa de desvios, etc).
5 Prova 2 Engenharia Elétrica Arquitetura de Computadores Prof. Celso A. Saibel Santos Nome: Data: 1. (6.0) Considere a arquitetura básica de uma CPU monociclo conforme esquema abaixo: 1,6ns S1 S2 1,6ns 0 M U 1 X D 3ns 1,5ns 2ns 0 M U 1 X A 0 M U 1 X C 3ns 0 M U 1 X B Suponha que a seguinte sequência de instruções deve ser executada nesta arquitetura: Endereço Instrução Observações 1000:0000 lw $s1,0($t0) Os registradores $t0-$t7 são numerados de 8 a 15 (temporários) e os de $s0-1000:0004 lw $s2,4($t0) $s7 de 16 a 23 (valores salvos/armazenados). 1000:0008 add $s0,$s1,$s2 O opcode de lw é e o de add é o , com os bits [5-0] (a) (2.0) Acrescente os caminhos de dados e sinais de controle que forem necessários para o funcionamento da instrução j $rd, na qual o endereço do desvio é definido por um registrador rd. Mostre e explique as modificações na arquitetura da CPU anterior. Qual a vantagem/desvantagem de usar essa instrução no lugar da instrução j Label em termos de destino do desvio? (b) (2.0) Suponha que você implementou um programa TOP para a disciplina de Métodos Numéricos que possui instruções MIPS após a compilação, as quais são dividas por tipo da seguinte forma: 3000 loads, 1000 stores, 5000 ULA (tipo R), 500 beq e 500 jumps. Calcule o tempo de execução do programa TOP na arquitetura monociclo MIPS com tempos de componentes similares à anterior (Memórias (leitura/escrita)=3ns, Registradores (leitura/escrita)=1,5 ns, ULA=2ns, somadores=1,6 ns), supondo um relógio (clock) fixo. Supondo que fosse possível trabalhar com um clock variável, de forma que cada classe de instrução anterior tivesse um tempo de execução diferente e apenas dependente dos atrasos no caminho de dados e controle, qual seria o menor tempo de execução possível para o programa TOP. (c) (2.0) Preencha a tabela abaixo com os valores armazenados em PC, saída de S1, S2 e ULA. Indique também as saídas escolhidas em cada um dos Muxes A, B, C e D em cada um dos instantes de execução indicados. Componente t=0ns t=15ns t=20 t=30ns PC 1000: : : :0012 S1 lixo 1000: : :0012 S2 lixo S1 + extensão ([15-0] de lw $s2,4($t0)) << 2 S1 + extensão ([15-0] de lw $s2,4($t0)) << 2 ULA lixo $t0 + 4 $t0 + 4 $s1+$s2 MuxA lixo MuxB lixo X 0 1 MuxC lixo X X 0 MuxD lixo S1 + extensão ([15-0] de add $s0,$s1,$s2) << 2
6 2. (2.0) Controladores por máquinas de estados são geralmente implementados usando lógica combinacional. Controladores implementados por microprogramas usam memórias. Arquiteturas modernas (a partir do 486, por exemplo) utilizam controles híbridos: parte hardwired para execução de instruções simples e parte microcódigo para instruções mais complexas. Discuta sobre os pontos fortes e fracos de cada uma das formas de controle e a possível vantagem de se usar uma abordagem híbrida como ocorre nas máquinas atuais. 3. (2.0) Considere a CPU Multiciclo a seguir. Quais os valores (bits) e ordem cronológica dos sinais LerMem, ULAFonteA, IouD, IREsc, ULAFonteB, PCEsc, FontePC acionados no 1º estado (Estado 0) da máquina de estados do controle da CPU? Considere ULAOp={soma 00; subtração 01; depende de funct (tipo R) 10}. 4. (EXTRA 20% a mais na nota) Considere a implementação esquemática abaixo de um hardware para calcular a divisão entre valores inteiros de 16 bits. Mostre a evolução dos valores armazenados nos registradores Divisor, Quotient e Remainder para a divisão de / (isto é, 1600/40 = 40)
7 Prova 3 Engenharia Elétrica Arquitetura de Computadores Prof. Celso A. Saibel Santos Nome: Data: 1. (1.0) O que caracteriza uma CPU monociclo? E uma multiciclo? E uma pipelined? Monociclo: cada ciclo de clock corresponde ao tempo necessário para execução de 1 única instrução. O tempo de clock é definido pelo tempo requerido para execução da instrução mais lenta do conjunto de instruções. CPI = 1. Multiciclo: a execução das instruções é dividida em estágios, sendo que cada estágio tem duração de 1 período de clock. A execução de uma instrução leva um certo número de ciclos de clock, que depende do número de estágios necessários para sua execução. CPI > 1 (CPI = Frequência_relativa_instrução * ciclos/instrução). O ganho de desempenho se dá pela redução do período do clock, apesar do CPI aumentar com relação à CPU monociclo. Pipelined: a execução das instruções é dividida em estágios, sendo que cada estágio tem duração de 1 período de clock. A execução de uma instrução leva N ciclos de clock, sendo N o número de estágios do pipeline. CPI = N 2. (1.0) Explique como a estratégia de pipeline resulta no aumento do desempenho de uma CPU. 3. (2.0) (Patterson, 6.4, p.455) Identifique todas as dependências de dados existentes no código a seguir. Quais dependências são conflitos (hazards) que podem ser resolvidos com adiantamento? Quais dependências que são conflitos e irão provocar a parada (bolhas) na execução? add $3, $4, $2 add $5, $3, $1 lw $6, 200($3) add $7, $3, $6 4. (1.5) Um esquema para minimizar os efeitos dos conflitos de controle (causados por mudanças no fluxo de controle durante a execução das instruções) é baseado na predição da ocorrência de desvios. Um esquema sofisticado de predição trabalha com a hipótese de que desvios para endereços anteriores sempre se realizam e que desvios para endereços posteriores nunca se realizam. Explique como isso é feito e por que o esquema tem predição tem uma taxa de acerto tão elevada (benchmarks mostraram taxas de acerto da ordem de 90%). 5. (3.0) Considere a representação de uma memória cache conforme esquema abaixo: (A) (D) (C) (B) a. (1.5) Explique o funcionamento da cache, mencionando obrigatoriamente, os componentes (A,B,C e D) indicados no esquema. b. (0.5) Calcule o tamanho dessa cache em bits. c. (1.0) Explique por que essa estrutura apenas se aproveita da localidade temporal.
8 6. (1.5) A técnica de memória virtual permite que a quantidade de memória necessária para a execução de um único processo exceda a quantidade total de memória física disponível. Explique como isso é feito.
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 maisSSC0114 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 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 maisCPU Implementação. Multiciclo. Prof. Carlos Bazilio
CPU Implementação Multiciclo Prof. Carlos Bazilio bazilio@ic.uff.br Até então, tínhamos t... Problemas com Implementação Monociclo Ciclo de clock tem o mesmo tamanho para todas as instruções implementadas;
Leia maisOrganizaçã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çã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 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 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 maisQuestioná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 maisSSC0611 Arquitetura de Computadores
SSC0611 Arquitetura de Computadores 7ª Aula Pipeline Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Arquitetura CISC CISC Complex Instruction Set Computer Computadores complexos devido a: Instruções
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 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 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 maisInfraestrutura 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 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 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 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 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 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 maisINTRODUÇÃ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 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 maisProf. Gustavo Oliveira Cavalcanti https://sites.google.com/a/poli.br/professorgustavooc/
Sistemas Digitais Prof. Gustavo Oliveira Cavalcanti gustavooc@poli.br https://sites.google.com/a/poli.br/professorgustavooc/ Conteúdo Programático (Organização e Arquitetura) Arquitetura e história dos
Leia maisInfraestrutura 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 maisArquiteturas de Computadores. Princípios e exemplos de conjuntos de instruções
Arquiteturas de Computadores Princípios e exemplos de conjuntos de instruções Características das aplicações Computação de desktop Ênfase em desempenho de programas com tipos de dados inteiros e ponto-flutuante
Leia mais2. A influência do tamanho da palavra
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 a execução de
Leia maisSSC0902 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 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 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 maishttp://www.ic.uff.br/~debora/fac! 1 Conceito de família IBM System/360 1964 DEC PDP-8 Separa arquitetura de implementação Unidade de controle microprogramada Idéia de Wilkes 1951 Produzida pela IBM S/360
Leia maisTópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10
Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL É A INTERFACE ENTRE
Leia maisARQUITETURA DE COMPUTADORES. Organização de Sistemas Computacionais. Prof.: Agostinho S. Riofrio
ARQUITETURA DE COMPUTADORES Organização de Sistemas Computacionais Prof.: Agostinho S. Riofrio Agenda 1. Unidade Central de Processamento 2. Organização da CPU 3. Interpretador 4. RISC x CISC 5. Principios
Leia maisArquitetura 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 maisO Processador: Via de Dados e Controle
O Processador: Via de Dados e Controle Ch5A Via de Dados e Controle Implementação da arquitetura MIPS Visão simplificada de uma arquitetura monociclo Instruções de memória: lw, sw Instruções lógicas aritméticas:
Leia maisExplorando 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 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 maisFaculdade 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 mais1) Considere a situação atual da memória do sistema computacional abaixo discriminada.
1) Considere a situação atual da memória do sistema computacional abaixo discriminada. a) Encontre o resultado da instrução com 01 ENDEREÇO abaixo discriminada que será armazenada em registrador ACUMULADOR.
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 maisDesempenho. Sistemas de Computação
Desempenho Definição Medidas de desempenho utilizadas Tempo de resposta ou tempo de execução: tempo decorrido entre o início da execução de um programa e o seu final Quantidade de trabalho realizada em
Leia maisInfraestrutura 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 maisFaculdade de Computação
Faculdade de Computação Arquitetura e Organização de Computadores 2 1 a Lista de Exercícios entrega em 19/04/2018 Prof. Cláudio C. Rodrigues Problemas: P1) Explique o que há de errado com as métricas de
Leia maisUniversidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. RISC versus CISC
Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação Arquitetura de Computadores I RISC versus CISC Gabriel P. Silva 04.11.2014 Introdução Um dos objetivos de uma arquitetura de
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 maisORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 04: ASPECTO BÁSICO DO PROJETO DE UMA CPU SIMPLES E LINGUAGEM DE MONTAGEM Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia
Leia maisArquiteturas 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 maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Linguagem de Montagem Slide 1 CISC RISC MIPS Organização e Arquitetura de Computadores I Sumário Representação de instruções Slide 2 CISC O CISC (Complex Instruction
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 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 maisSSC510 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 maisUnidade Central de Processamento (CPU) Processador. Bernardo Gonçalves Introdução ao Computador 2008/01
Unidade Central de Processamento (CPU) Processador Bernardo Gonçalves Introdução ao Computador 2008/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória
Leia maisArquiteturas 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 maisArquitetura de Computadores Aula 11 - Multiprocessamento
Arquitetura de Computadores Aula 11 - Multiprocessamento Prof. Dr. Eng. Fred Sauer http://www.fredsauer.com.br fsauer@gmail.com 1/28 PROCESSAMENTO PARALELO OBJETIVO: aumentar a capacidade de processamento.
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 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 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 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 mais1) 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 maisPipeline. 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 maisOrganizaçã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 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 maisArquiteturas 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 maisInfra-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 maisTrabalhos 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 maisSolução Lista de Exercícios Processadores
Solução Lista de Exercícios Processadores Questão 1 A ULA é o dispositivo da CPU que executa operações tais como : Adição Subtração Multiplicação Divisão Incremento Decremento Operação lógica AND Operação
Leia maisArquitetura de Computadores I. Prof. Ricardo Santos (Cap 2)
Arquitetura de Computadores I Prof. Ricardo Santos ricr.santos@gmail.com (Cap 2) Instruções Comandos utilizados para indicar ao hardware o que deve ser feito Utilizaremos neste curso o conjunto de instruções
Leia maisCOMPUTADORES 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 maisOtimização de Execução em Processadores Modernos. William Stallings - Computer Organization and Architecture, Chapter 12 [Trad. E.Simões / F.
Prefetch & Pipeline Otimização de Execução em Processadores Modernos Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio William Stallings - Computer Organization and Architecture, Chapter
Leia maisInfraestrutura de Hardware. Instruindo um Computador
Infraestrutura de Hardware Instruindo um Computador Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereço Operando ALU Temp Datapath
Leia maisConjunto de Instruções e Modelos de Arquiteturas
Departamento de Engenharia Elétrica e de Computação EESC-USP SEL-0415 Introdução à Organização de Computadores Conjunto de Instruções e Modelos de Arquiteturas Aula 7 Prof. Marcelo Andrade da Costa Vieira
Leia maisFaculdade 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 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 maisCapí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 maisAula 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 maislw, 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 maisTiago 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 maisORGANIZAÇÃ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 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 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 maisAULA 03: FUNCIONAMENTO DE UM COMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?
Leia maisAOC II - Arquitetura e Organização de Computadores Prof. Dr. rer. nat. Daniel Duarte Abdala. Lista de Exercícios
Lista de Exercícios PIPELINING 1. Qual a vantagem que a utilização da técnica de pipelining traz em relação a arquitetura MIPS-Multiciclo estudada em aula? Descreva textualmente. 2. Embora o desempenho
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 maisSSC0112 Organização de Computadores Digitais I
SSC0112 Organização de Computadores Digitais I 16ª Aula Arquitetura MIPS: Unidade de Controle (Multiciclo) Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 MIPS Multiciclo com jump 2 MIPS Multiciclo:
Leia maisOrganização de Computadores μarquitetura. Na Aula Anterior... Introdução. Nesta Aula. MIPS-Monociclo. Formas de Organização 17/10/2016
GBC06 Arq. e Org. de Computadores I 17/10/2016 Organização de Computadores μarquitetura Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior...
Leia maisUNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES
Tecnologia da informação e comunicação UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES CICLO DE INSTRUÇÕES OU DE EXECUÇÃO Arquitetura de computadores 2 CICLO DE EXECUÇÃO No inicio de cada ciclo de instrução,
Leia maisTCC Organização de Computadores I Turma :A1 Lista 3-GABARITO. 1. A figura abaixo mostra o diagrama da implementação para a UCP estudada em sala.
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO TCC4.7-Organização Computadores I Turma :A Lista 3-GABARITO. A figura abaixo mostra o diagrama da implementação
Leia maisO Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho
Ciência da Computação Arq. e Org. de Computadores Avaliando e Compreendendo o Desempenho O Que Veremos Avaliando e compreendendo o desempenho: Introdução Definindo desempenho Medindo o desempenho e seus
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 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 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 maisArquitetura de Computadores. Professor: Vilson Heck Junior (Material: Douglas Juliani)
Arquitetura de Computadores Professor: Vilson Heck Junior (Material: Douglas Juliani) Agenda Conceitos Componentes Funcionamento ou tarefas Otimização e desempenho Conceitos Componente de Hardware que
Leia maisResumã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 maisTodo processador é constituído de circuitos capazes de realizar algumas operações primitivas:
Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas: Somar e subtrair Mover um dado de um local de armazenamento para outro Transferir um dado para um dispositivo
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 mais1. Esta lista de exercícios poderá ser resolvida em grupo com no máximo 3 integrantes.
INSTRUÇÕES: Instituto Federal de Educação, Ciência e Tecnologia 1. Esta lista de exercícios poderá ser resolvida em grupo com no máximo 3 integrantes. 2. Caso você ache que falta algum detalhe nas especificações,
Leia mais2ª Lista de Exercícios de Arquitetura de Computadores
2ª Lista de Exercícios de Arquitetura de Computadores Questões 1. Um microprocessador realiza uma sondagem periódica (polling) junto a um módulo de E/S a cada 0,5 ms. Cada sondagem em si gasta 500 ciclos.
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 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 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 maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Estrutura e Função do Processador Material adaptado, atualizado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Organização
Leia mais