Previsão de Desvios Branch Prediction
|
|
- Ronaldo Schmidt Lacerda
- 5 Há anos
- Visualizações:
Transcrição
1 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 implementadas em software Delayed Branch Branch Folding In-line Desenrolamento de loops 5. Técnicas implementadas em hardware Previsão Estática Previsão Dinâmica Prediçãodeterminadapelahistóriado desvio Previsão via tabela com alvos dos desvios (Branch Target Buffer) Previsão dinâmica em dois níveis 6. Preditores Híbridos e Multi-Híbridos
2 Pipeline é uma técnica de exploração do paralelismo na execução de instruções a fim de aumentar o seu desempenho Esse paralelismo permite a execução parcial de até n instruções simultaneamente, onde n é o número de estágios do pipeline. O desempenho do pipeline só será máximo se não ocorrer o bloqueio da execução contínua dos diversos estágios de execução. As instruções de desvio condicional provocam uma queda no desempenho desses processadores, já que bloqueiam a operação contínua do pipe. O comando de desvio pode acarretar na troca do fluxo esperado de instruções, fazendo com que parte do conteúdo do pipeline seja descartado e recarregado novamente, diminuindo o desempenho. 3 Dependencias de Dados e Controle Dependências de controle são particularmente críticas quando da execução de desvios condicionais. add $5, $3, $2 data dependences sub $6, $5, $2 control dependence beq $6, $7, somewhere and $9, $3, $1
3 M ux 0 Address Calculation 1 IF/ID ID/EX EX/MEM MEM/WB Add 4 Shift left 2 Add Add result PC Address Instruction memory Read register 1 Read Read data 1 register 2 Registers Read data 2 Write register Write data 16 Sign extend 32 0 M ux 1 ALU Zero ALU result Address Write data Data memory Read data 1 M ux 0 Branch target address is put in PC during Mem stage. Correct instruction is fetched during branch s WB stage. 5 Branch Hazards CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 beq $2, $1, here IM Reg ALU DM Reg add... IM Reg ALU DM Reg sub... IM Reg ALU DM Reg lw... here: lw... Estas instruções não devem ser executadas! IM Reg IM ALU Reg DM ALU Reg DM
4 efeito de desvios condicionais se o desvio ocorre, pipeline precisa ser esvaziado não se sabe se desvio ocorrerá ou não, até o momento de sua execução decisão sobre desvio desvio condicional instruções abandonadas próxima instrução 7 Dependências em desvios instruções abandonadas não podem ter afetado conteúdo de registradores e memórias isto é usualmente automático, porque escrita de valores é sempre feita no último estágio do pipeline deve-se procurar antecipar a decisão sobre o desvio para o estágio mais cedo possível desvios incondicionais sabe-se que é um desvio desde a decodificação da instrução ( segundo estágio do pipeline ) é possível evitar abandono de número maior de instruções. problema: Em qual estágio é feito o cálculo do endereço efetivo do
5 Segundo [HEN 96] os desvios e as trocas de fluxos são classificados em quatro tipos: desvios condicionais; desvios incondicionais; chamada a procedimentos e retorno de procedimentos. Benchmarks: 65% a 80% dos desvios são condicionais e incondicionais e o desvios de procedimentos são em torno de 10% a 20% cada. Através da análise desses dados e considerando que as dependências de controle afetam drasticamente o desempenho de processadores pipeline e que os desvios condicionais são os que melhor representam este efeito negativo. 9 Custo de Desvios Como evitar o efeito dos desvios? Empregar técnicas de previsão de desvios Usando essa previsão, as instruções pertencentes ao fluxo com maior probabilidade de execução podem ser buscadas, decodificadas e executadas antecipadamente. Porém é necessário mecanismos para desfazer eventuais operações provenientes de caminhos previstos erroneamente, acrescentando complexidade no hardware. Técnicas p/ redução do custo de desvio: Implementadas em software Implementadas em hardware
6 Implementadas em Software Estas técnicas são empregadas durante a compilação do programa de aplicação. Técnicas: Delayed Branch Branch Folding In-line Loop Unrolling 11 Delayed Branch Essa técnica de redução do custo de desvio consiste em reorganizar as instruções do programa. Essa reorganização deve preservar a equivalência semântica dos programas e minimizar os retardos impostos pela ramificação. Em uma máquina do tipo pipelining, podemos associar a cada desvio o número de instruções seguintes que serão executadas independentemente do desvio ser tomado ou não. Em outras palavras, uma instrução de desvio armazenada na posição b e que indica a posição L como alvo, é um delayed branch com retardo n se as instruções armazenadas nas posições b, b+1,..., b+n, L forem executadas.
7 Considere o trecho abaixo: 1. A := B; 2. B := B -1; 3. if A = Q then go to 7 4. Q := Q +1; 5. D := E; 6. E := F; 7. X := Q; Se o retardo da instrução (3) for igual a 1, então a seqüência de instruções executadas (se A = Q) seria: 1, 2, 3, 4, 7. Nesse caso, se o valor inicial da variável Q = q, então teremos X = q+1 no final do programa. 13 Delayed Branch Uma estratégia capaz de neutralizar o indesejável efeito da busca antecipada e execução do próximo comando, seria introduzir n instruções do tipo NOP após cada instrução de desvio com retardo igual a n. 1. A := B; 2. B := B -1; 3. if A = Q then go to 8 4. NOP; 5. Q := Q +1; 6. D := E; 7. E := F; 8. X := Q; Conforme podemos verificar, o trecho de programa será executado corretamente após a introdução do comando NOP.
8 Acréscimo de NOPs degrada o desempenho e o tamanho do código objeto. Assim, é aplicado técnicas de movimentação de código que consiste em movimentar a instrução de desvio n posições acima. Supondo n = 1 temos: 1. A := B; 2. if A = Q then go to 7 3. B := B -1; 4. Q := Q +1; 5. D := E; 6. E := F; 7. X := Q; Para fazer essas movimentações, o compilador deve levar em consideração as relações de dependência entre as instruções, de forma que a equivalência semântica do programa seja preservada. 15 Branch Folding Nesta técnica, cada instrução inclui o endereço da sua sucessora. Em tempo de execução as instruções deste processador são decodificadas e armazenadas em uma memória cache de instruções, em conjunto com o endereço da próxima instrução a ser executada. No caso de um comando de desvio incondicional, o endereço almejado fica armazenado na instrução que precede o comando de desvio, eliminando-se desta forma a necessidade de executar instruções de transferência de controle incondicional.
9 Um tratamento diferenciado é reservado para os comandos de desvio condicional. Como nos outros tipos de instruções, o endereço da sucessora do comando de desvio é armazenado no campo apropriado da instrução que antecede o comando de ramificação condicional. Compete ao compilador a tarefa de especificar qual das duas sucessoras do desvio terá seu endereço armazenado na instrução precedendo a transferência de controle. O compilador realiza esta tarefa, ou seja, especifica qual será a provável instrução sucessora empregando uma técnica de previsão estática. Assim ele seleciona o endereço com maior probabilidade de execução e o inclui na instrução anterior ao comando de desvio. 17 In-line As técnicas de previsão de desvios apresentam uma reduzida taxa de acertos quando do tratamento de instruções de retorno de funções, já que um procedimento pode ser chamado de diferentes pontos do programa e portanto, a técnica de predição precisaria armazenar longos padrões de ativações / retornos para aumentar a taxa de acerto. Este fato motivou o desenvolvimento de técnicas de otimização de código como a in-line, que consiste em substituir os procedimentos dos programas pelo código objeto correspondente nos locais onde os procedimentos são ativados.
10 Esta técnica reduz o custo das instruções de desvios condicionais existentes no comando for. Observe abaixo a tradução da estrutura for: for(cv = a; cv<=b; cv++) s; L2:... avalia limites a e b faz cv = a se cv > b, desvio condicional para L2 L1 código para execução de s Incrementa cv se cv < b, desvio condicional para L1 L2... Na seqüência, a e b são respectivamente os limites inferior e superior do for e cv é a variável de controle. 19 Loop Unrolling Para ilustrar esta técnica de desenrolamento, vamos considerar o trecho do programa a seguir: for (i=1; i<100;i++) c[i] = a[i] + b[i];... Vamos assumir que os registradores r 1... r 8 armazenam: r 1 : a variável de controle i (inicialmente com o valor do limite inferior do for) r 2 : o limite superior do for r 3... r 5 : os endereços iniciais dos vetores a, b e c respectivamente r 6... r 8 : os valores dos elementos a[i], b[i] e c[i]
11 O código objeto do trecho é: Loop: load r 6 (carrega a[i]) load r 7 (carrega b[i]) add r 8, r 6, r 7 (c[i] = a[i] + b[i]) sto r 8 (armazena c[i]) add r 1, r 1, 1 incrementa var. controle comp r 1, r 2 (i > 100)? bnez loop desvia para loop se i <= Loop Unrolling Desenrolando o loop duas vezes, ficamos com o seguinte código objeto: Loop load r 6 (carrega a[i]) load r 7 (carrega b[i]) add r 8, r 6, r 7 (c[i] = a[i] + b[i]) sto r 8 (armazena c[i]) load r 6 (carrega a[i+1]) load r 7 (carrega b[i+1]) add r 8, r 6, r 7 (c[i+1] = a[i+1] + b[i+1]) sto r 8 (armazena c[i+1]) add r 1, r 1, 2 incrementa var. controle comp r 1, r 2 (i > 100)? bnez loop desvia para loop se i <= 100 O loop desenrolado conta com 11 instruções enquanto que originalmente ele
12 Diferentemente das técnicas implementadas por software, estas técnicas atuam durante a execução do programa e são implementadas pela unidade de controle do processador. Existem dois tipos de técnicas implementadas por hardware: técnicas estáticas a previsão ocorre baseado em definições feitas em tempo de projeto de um novo processador; técnicas dinâmicas realizam dinamicamente as previsões de desvio baseado nas informações coletadas em tempo de execução. 23 Previsão Estática supor sempre mesma direção para o desvio desvio sempre ocorre desvio nunca ocorre O código da operação determina a previsão compilador define direção mais provável instrução de desvio contém bit de previsão, ligado / desligado pelo compilador início de laço ( ou desvio para frente ): desvio improvável final de laço ( ou desvio para trás ): desvio provável
13 A unidade de controle realiza a previsão de desvios dinamicamente. Usualmente, essas técnicas são mais eficientes do que as estáticas. Técnicas dinâmicas armazenam informações coletadas em tempo de execução das instruções de desvio e, quando o desvio for novamente executado, o mecanismo de previsão verifica o que ocorreu no passado mais recente e baseado nessa informação, prevê qual o resultado que será produzido pela instrução de desvio. As informações ficam armazenadas numa pequena tabela denominada Tabela de História dos Desvios (Branch History Table). 25 Previsão Dinâmica Porexemplo, o processadorpodeincluirumabht para armazenar informações relacionadas com as mais recentes execuções dos comandos de desvio. Os campos de cada entrada podem conter ou o endereço do desvio e o endereço da sucessora. O endereço da instrução é usada como chave para acesso à tabela. Se a instrução estiver armazenada no campo de endereço de desvio isto significa que o endereço no campo endereço da sucessora será utilizado para buscar a próxima instrução.
14 tabela look-up associativa endereço instrução endereço desvio bit de validade carga do endereço de desvio PC endereço fetch instrução 27 Predição dinâmica tabela look-up associativa armazena triplas endereços das instruções de desvio condicional mais recentemente executadas endereços de destino destes desvios bit de validade, indicando se desvio foi tomado na última execução quando instrução de desvio condicional é buscada na memória é feita comparação associativa na tabela, à procura do endereço desta instrução se endereço é encontrado e bit de validade está ligado, o endereço de desvio armazenado na tabela é usado ao final da execução da instrução, endereço efetivo de destino do desvio e bit de validade são atualizados na tabela tabela pode utilizar diversos mapeamentos e algoritmos de substituição
15 Essa técnica verifica o que ocorreu com as k mais recentes execuções de um desvio e realiza uma previsão do resultado que será produzido pela corrente execução do desvio. Os k mais recentes resultados de cada desvio ficam armazenados numa Tabela da História dos Desvios (BHT - Branch History Table) que é atualizada após a conclusão da instrução de desvio. Fisicamente, as entradas contendo a história dos desvios podem ser armazenadas num conjunto de registradores ou então numa memória cache no interior do processador bit predictors O esquema consiste em utilizar o resultado da última execução da instrução de desvio. Nesse caso, um bit seria suficiente para armazenar o resultado anterior da instrução de desvio. Se a previsão indicar que o desvio deve ser tomado e se o estágio de execução indicar o contrário, a tabela BHT é atualizada, as instruções nos estágios precedentes são descartadas e o estágio de busca inicia a transferência de instruções pertencentes ao fluxo apropriado. Se a instrução de desvio estiver sendo executada pela primeira vez, utiliza-se uma das duas técnicas estáticas apresentadas previamente e em seguida, inclui-se o desvio na BHT.
16 O autômato para esse mecanismo é muito simples e é mostrado na figura abaixo O número de bits de história (previsão) é um fator de extrema relevância na escolha do algoritmo de previsão. Acima foi mostrado um autômato para previsão com 1 bit de história. O maior problema em se usar esta técnica é quando se faz necessário prever o destino de desvios de controle do laços, e o laço é executado mais de uma vez (loops aninhados) bit Prediction Scheme Registra as últimas duas decisões do desvio. Altera a predição somente após duas previsões consecutivas erradas. Taken Predict taken Taken Predict not taken Not taken Taken Not taken Taken Predict taken Not taken Predict not taken Not taken
17 mecanismo com 2 bits de história registra o resultado das duas últimas execuções, e a próxima previsão é modificada apenas se as duas últimas previsões foram incorretas. Nos estados onde os dois bits coincidem, a previsão segue o resultado indicado por ambos. Nos estados onde os dois bits diferem, a previsão segue a indicação do bit que registra o estado mais antigo. 33 Exemplo: 2-bit Branch Prediction Nested loop: Loop1: Loop2: bne r1,r0,loop2 bne r2,r0,loop1 Execução do loop externo: 00 prediz NT; realizou T atualizado p/ 01 (predição errada) 01 prediz NT; realizou T atualizadop/ 10 (prediçãoerrada) 10 prediz T; realizou T atualizado p/ prediz T; realizou T
18 Execução do loop interno: 10 prediz T; realizou T atualizado p/ prediz T; realizou T atualizado p/ prediz T; realizou NT atualizado p/ 10 (predição errada) Taxas de previsões errôneas para o 2-bit predictors considerando 4096 entradas no buffer é de 1% a 18%. 35 Correlating or 2-level Predictors A previsão depende do contexto do desvio. Exemplo: if (a == 2) a = 0; if (b == 2) b = 0; if (a!= b) { } DSUBUI R3,R1,2 BNEZ R3,L1 DADD R1,R0,R0 L1:DSUBUI R3,R2,2 BNEZ R3,L2 DADD R2,R0,R0 L2: DSUBU R3,R1,R2 Se ambos desvios não são realizados então a==b==0 e o último desvio será realizado com certeza.
19 Uma técnica alternativa para previsão é a que emprega uma tabela contendo os alvos das instruções de desvios. Denominada BTB - Branch Target Buffer, essa tabela é uma evolução da BHT. Como anteriormente, a tabela BTB inclui campos para identificar a instrução de desvio e para armazenar a história das recentes execuções do comando de desvio. Adicionalmente, a BTB inclui um campo contendo informações sobre a instrução sucessora do desvio: geralmente o campo armazena o endereço efetivo da sucessora; em outras implementações, a instrução sucessora também. A BTB torna o processador mais eficiente do que aqueles que usam simplesmente uma BHT por causa do potencial oferecido pelas informações sobre a sucessora do desvio. 37 Previsão dinâmica em dois níveis A idéia de coletar dinamicamente dois níveis de história de desvios foi proposta por Yeh e Patt [YEH 91]. O primeiro nível armazena a história dos últimos K desvios encontrados. O segundo nível armazena o que aconteceu com as últimas j ocorrências de um padrão específico para os K desvios. O primeiro nível é denominado History Register Table e o segundo nível de Pattern Table. O endereço de um desvio é mapeado para acessar o primeiro nível assim como em uma BTB convencional. Após mapear a entrada correta, o registrador de história (Branch History Register) fornece o padrão de bits que irá determinar qual entrada será acessada no segundo nível. Ao acessar o segundo nível, o mecanismo dispõe então do bit de previsão que indicará o caminho a ser seguido pelo estágio de busca
20 39 Preditores híbridos e multi-híbridos Preditores híbridos incluem diversas técnicas, todas operando em paralelo, mas somente a técnica com maior probabilidade de acerto é a que fornece o resultado da predição para a unidade de busca de instruções. O preditor híbrido proposto por McFarling é formado por dois preditores simples que são controlados por um mecanismo que seleciona dinamicamente qual das duas predições será considerada. O preditor multi-híbrido emprega um número maior de componentes e, ao aumentar esse número, os autores verificam que previsões com maior índice de precisão foram obtidas.
21 [LEE84] LEE, J. K.; SMITH, A. J. "Branch Prediction Strategies and Branch Target Buffer Design", IEEE Computer, vol. 17, No 1, January 1984, pp [MCF93] S. McFarling, "Combining Branch Predictors", Technical Report TN-36, Digital Western Research Laboratory, June [HEN96] HENESSY, Jhon L.; PATTERSON, David, Computer Architecture: A Quantitative Approach. 2.ed. Palo Alto: Morgan Kaufmann, 1996 [UHT97] Uht, A.; Sindagi, V.; Somanathan, S.; Branch Effect Reduction Techniques IEEE Computer, May
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 maisSSC0510 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 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 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 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 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 maisSSC0611 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 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 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 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 maisAULA DE REVISÃO 4 ILP
AULA DE REVISÃO 4 ILP Exercício 1: Qual seria o desempenho de referência (em ciclos, por iteração do loop) da sequência de código, mostrado abaixo, se nenhuma nova execução de instrução pudesse ser iniciada
Leia 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 maisPipeline. Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio. Estrutura da CPU. Em cada ciclo, a CPU deve:
Pipeline Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio William Stallings - Computer Organization and Architecture, Chapter 12 [Trad. E.Simões / F.Osório] Estrutura da CPU Em cada ciclo,
Leia 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 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 mais1. 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 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 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 maisPipelining - 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 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 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 maisNotas de Aula Guilherme Sipahi Arquitetura de Computadores
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Ciclo de instruções Ciclo de instruções / Pipelining Subciclos de um ciclo de instruções: - Busca: traz a próxima instrução até a CPU - Execução:
Leia maisMIPS 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 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 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 maisPipelining. 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 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 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 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 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 maisUniversidade 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 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 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 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 maisFaculdade 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É 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 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 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 maisInfraestrutura 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 maisEstrutura e Funcionamento da CPU. Adriano Maranhão
Estrutura e Funcionamento da CPU Adriano Maranhão 1 S Relembrando S Compiladores de linguagens ao fazer a conversão da linguagem de alto nível para chegar na fase da linguagem de baixo nível como assembly
Leia 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 maisArquitetura de Computadores
Arquitetura de Computadores 2018.1 Relembrando... Paralelismo Relembrando... Paralelismo Paralelismo em Instrução Relembrando... Paralelismo Paralelismo em Instrução Paralelismo em Aritmética Relembrando...
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 maisInfraestrutura de Hardware. Funcionamento de um Computador
Infraestrutura de Hardware Funcionamento de um Computador Computador: Hardware + Software Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é
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 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 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 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 maisArquiteturas 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 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 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 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 maisEsse 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 maisMicro-Arquiteturas de Alto Desempenho. Introdução. Ementa
DCC-IM/NCE UFRJ Pós-Graduação em Informática Micro-Arquiteturas de Alto Desempenho Introdução Gabriel P. Silva Ementa Revisão de Organização de Computadores Hierarquia de Memória Memória Virtual Memória
Leia maisWilliam Stallings Organização de computadores digitais. Capítulo 14 Operação da Unidade de Controle
William Stallings Organização de computadores digitais Capítulo 14 Operação da Unidade de Controle Microoperações o A execução de um programa em um computador se faz através: o do ciclo de Busca e Execuçã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 maisResolva as seguintes alíneas fazendo todas as simplificações que considerar convenientes, anotando-as junto da resposta.
1. Considere um processador com ISA compatível com o MIPS64 e com funcionamento superpelining (Fetch, Decode, Issue, Execute, Write-back), com mecanismos de forwarding de dados, sendo o estágio de Execute
Leia 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 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 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 maisCapí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 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 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 maisshift 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 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 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 maisENDEREÇAMENTO DE INSTRUÇÕES. Adão de Melo Neto
ENDEREÇAMENTO DE INSTRUÇÕES Adão de Melo Neto 1 TIPOS DE OPERAÇÕES 2 TIPOS DE OPERAÇÕES TIPOS DE INSTRUÇÕES/OPERAÇÕES (RELEMBRANDO) 3 INTRODUÇÃO TIPOS DE INSTRUÇÕES/OPERAÇÕES (RELEMBRANDO) 4 INTRODUÇÃO
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 maisSSC0112 Organização de Computadores Digitais I
SSC0112 Organização de Computadores Digitais I 18ª Aula Hierarquia de memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Memória Cache Método de Acesso: Associativo Localização de dados na memória
Leia maisPIPELINE DE INSTRUÇÕES (estratégia e desempenho) Adão de Melo Neto
PIPELINE DE INSTRUÇÕES (estratégia e desempenho) Adão de Melo Neto 1 DESEMPENHO SISTEMA COMPUTACIONAIS A melhoria do desempenho de sistemas computacionais pode ser conseguido através de diversas maneiras:
Leia maisSistemas 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 maisEA869 Pipeline. Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof.
EA869 Pipeline Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato 1 Objetivos Conhecer técnicas de como melhorar o desempenho de um processador.
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 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 maisArquitectura de Computadores MEEC (2014/15 2º Sem.)
Arquitectura de Computadores MEEC (2014/15 2º Sem.) Unidade de Controlo Prof. Nuno Horta PLANEAMENTO Introdução Unidade de Processamento Unidade de Controlo Arquitectura do Conjunto de Instruções Unidade
Leia maisINTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura
Introdução Organização e Arquitetura INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Eduardo Max Amaro Amaral Arquitetura são os atributos visíveis ao programador. Conjunto de instruções, número
Leia maisInstruções. Maicon A. Sartin
Instruções Maicon A. Sartin SUMÁRIO Introdução Instruções Formatos de instruções Conjuntos de instruções Execução de instruções Introdução a Linguagem de Montagem Introdução a Linguagem de Montagem Níveis
Leia maisDataPath II Tomando o controle!
DataPath II Tomando o controle! Datapath and Control Queremos implementar parte do MIPS lw, sw add, sub, and, or, slt beq e depois o j Instruction Word Formats Register format: add, sub, and, or, slt op-code
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 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 maisNível da Microarquitetura
Nível da Microarquitetura (Aula 10) Máquina de Vários Níveis Modernas (ISA) Interpretação (microprograma) ou execução direta ou microarquitetura Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação
Leia maisArquitetura de Computadores Aula 10 - Processadores
Arquitetura de Computadores Aula 10 - Processadores Prof. Dr. Eng. Fred Sauer http://www.fredsauer.com.br fsauer@gmail.com 1/21 TÓPICOS ORGANIZAÇÃO COMPONENTES BÁSICOS INSTRUÇÃO DE MÁQUINA CICLO DE INSTRUÇÃO
Leia maisNEANDERWIN. Algumas características do processador Neander são:
NEANDERWIN O NeanderWin é um simulador da máquina Neander, definida no livro do Raul F. Weber (UFRGS), Fundamentos de Arquitetura de Computadores, Ed. Sagra Luzzatto. A máquina original foi estendida aqui
Leia mais