Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64
|
|
- Vitória Felgueiras Bacelar
- 8 Há anos
- Visualizações:
Transcrição
1 Arquitecturas Alternativas Pipelining Super-escalar VLIW IA-64
2 Pipeline de execução A execução de uma instrução passa por várias fases: Vimos o ciclo: fetch, decode, execute fetch decode execute instrução operandos resultado Memória ou registos Se em média, cada instrução despender 1 ciclo em cada fase, em média, cada instrução demora 3 ciclos para executar Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 419
3 Pipelining Supondo que a arquitectura permite manter o pipeline sempre ocupado, como numa linha de montagem: Tempo (ciclos) fetch decode execute 1 I1 2 I2 I1 3 I3 I2 I1 4 I4 I3 I2 5 I5 I4 I3 6 I5 I4 7 I5 Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 420
4 Pipelining Mesmo que cada instrução demore 3 ciclos, o CPU é capaz de concluir uma instrução em cada ciclo! (mesma latência, mas melhor throughput) Tempo para executar uma sequência de 1000 instruções: Sem pipelining: 1000x3 = 3000 ciclos Com pipelining: 3 ciclos para a primeira instrução (pipeline vazio) + 1 ciclo por cada uma das restantes 3+999x1 = 1002 ciclos Speedup = 3000/1002 = 2,99 (aprox. 3) Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 421
5 Aumentando o pipeline Supondo que podemos introduzir fases intermédias sem penalizar o tempo total de cada instrução Por exemplo: a arquitectura é mais eficiente em cada fase ou permite aumentar o clock Exemplo: com um pipeline de 5 fases: fetch decode fetch operands execute instruction store result Memória/Cache ou registos Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 422
6 Aumentando o pipeline Tempo (ciclos) fetch decode fetch operands execute instruction store result 1 I1 2 I2 I1 3 I3 I2 I1 4 I4 I3 I2 I1 5 I5 I4 I3 I2 I1 6 I5 I4 I3 I2 7 I5 I4 I3 8 I5 I4 9 I5 10 Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 423
7 Pipelining Tempo para executar uma sequência de 1000 instruções: Sem pipelining: 1000x5 = 5000 ciclos Com pipelining: 5 ciclos para a primeira instrução (pipeline vazio) + 1 ciclo por cada uma das restantes 5+999x1 = 1004 ciclos Speedup = 5000/1004 = 4,98 (aprox. 5) Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 424
8 Aumentar o pipeline É possível? Sim se por exemplo: antes CPU 1GHz 3 ciclos = 3ns agora CPU 1,66GHz 5 ciclos 3ns O aumento do pipeline é conseguido mais facilmente nos CPU RISC Tempo para as 1000 instruções: Sem pipelining: 3000x1 = 3000 ns (speedup=1) Com pipeline de 3: 1002x1 = 1002 ns (2,99) Com pipeline de 5: 1004x0,6 = 602 ns (4,98) No limite, Speedup = número de fases do pipeline Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 425
9 Premissas Podemos aumentar a profundidade do pipeline (número de fases) mantendo ou penalizando pouco o tempo de execução por instrução Cada componente do pipeline está sempre ocupado (o pipeline está sempre cheiro) O que pode correr mal? Conflito no acesso a recursos Dependências entre operandos (dados) Uma instrução ser um salto (branch) Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 426
10 Conflito no acesso a recursos Algumas fases podem entrar em conflito no acesso a partes do CPU ou exterior O acesso a memória no fetch O acesso para obter operando e o acesso para guardar o resultado Nos RISC só os load/store acedem à memória Arquitectura Load/Store Optimizações: Bus para dados e instruções separados Caches L1 para código e dados separadas Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 427
11 Dependências entre operandos Pode existir dependência entre os dados de instruções diferentes Instrução I n necessita do resultado da I n-k add R1, R1, 5 add R2, R2, R1 add R3, R3, 4 add R4, R4, R3 Reordenar instruções para adiar I n Fetch Desc Oper Exec Store add R1 add R2 add R1 add R3 add R2 add R1 add R4 add R3 add R2 add R1 add R4 add R3 add R2 X add R1 add R4 add R3 add R2 X add R4 add R3 add R2 add R4 X add R3 add R4 X add R4 Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 428
12 Dependências entre operandos Reordenando instruções: add R1, R1, 5 add R3, R3, 4 add R2, R2, R1 add R4, R3, R3 Fetch Desc Oper Exec Store add R1 add R3 add R1 add R2 add R3 add R1 add R4 add R2 add R3 add R1 add R4 add R2 add R3 add R1 add R4 add R2 add R3 Alguns CPU possuem um componente que reordena as instruções no pipeline add R4 add R2 add R4 Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 429
13 Uma instrução de salto Consideremos a seguinte sequência de instruções: sa: add R1, R1, 5 add R2, R2, 10 beq R1, R2, sa sub R1, R2, 10 sub R2, R1, R2 Que instrução é que se coloca no pipeline depois do beq? Fetch Desc Oper Exec Store add R1 add R2 add R1 beq add R2 add R1? beq add R2 add R1?? beq add R2 add R1??? beq add R2??? beq?????? Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 430
14 Uma instrução de salto Saltos (jumps ou Branchs ) Alteram o PC, logo a próxima instrução a executar pode não ser a que está no pipeline Nos jumps condicionais nem sabemos qual vai ser a próxima instrução. Se não saltar vai executar a próxima instrução, mas se saltar, vai executar outra Optimizações: Se salto incondicional: tentar avaliar o destino durante a descodificação Se salto condicional: dispor de branch prediction Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 431
15 Branch prediction Acrescenta-se um componente ao CPU responsável por prever o próximo valor do Program Counter Tenta executar (adivinhar) os jumps assim que entram no pipeline Exemplos de heurísticas: O jump vai ocorrer se salta para trás; não ocorre se é um salto para a frente O jump vai ocorrer se anteriormente ocorreu Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 432
16 Execução especulativa Ao tentarmos prever o comportamento do salto podemos errar As operações que estão no pipeline só são committed quando se tem a confirmação que se a previsão foi acertada Se a previsão falhou os resultados são descartados De qualquer forma a alternativa era não fazer nada Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 433
17 Execução especulativa Usando a heurística do salto para trás: sa: add R1, R1, 5 add R2, R2, 10 beq R1, R2, sa sub R1, R2, 10 sub R2, R1, R2 Fetch Desc Oper Exec Store add R1 add R2 add R1 beq add R2 add R1 add R1 beq add R2 add R1 add R2 add R1 beq add R2 add R1 beq add R2 add R1 beq add R2 Se a previsão foi acertada o resultado das instruções especulativas é guardado add R1 beq add R2 add R1 beq add R1 beq add R2 add R1 add R1 Beq add R2 add R1 beq Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 434
18 Execução especulativa Usando a heurística do salto para trás: sa: add R1, R1, 5 add R2, R2, 10 beq R1, R2, sa sub R1, R2, 10 sub R2, R1, R2 Se a previsão foi errada o resultado das instruções especulativas não é guardado e o pipeline é enchido com o ramo certo Fetch Desc Oper Exec Store add R1 add R2 add R1 beq add R2 add R1 add R1 beq add R2 add R1 add R2 add R1 beq add R2 add R1 beq add R2 add R1 beq add R2 sub R1 beq add R2 add R1 beq sub R2 sub R1 beq add R2 add R1 sub R2 sub R1 beq add R2 sub R2 sub R1 beq Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 435
19 Ainda mais rápido Ainda é possível mais???? Tipicamente a fase de execução é a mais demorada Os CPU possuem unidades diferentes para os vários tipos de instruções (FPU, ALU, etc. ) Estas podem trabalhar em paralelo Optimização: CPU Super-escalar Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 436
20 Paralelizando a execução Mais de uma instrução executada em simultâneo arquitectura super-escalar Convém que a sequência de instruções no programa alterne entre os vários tipos execute Int. inst. fetch decode fetch operands execute FPU inst store result execute move Execute Units Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 437
21 Paralelismo ao nível das instruções O desenho da arquitectura do CPU permite o paralelismo na execução de várias instruções: Pipelining Sobrepõem a execução das várias fases do pipeline, para várias instruções O relógio do pipeline pode ser superior ao relógio externo do CPU Super-escalar Várias unidades de execução executam várias instruções em simultâneo Estas optimizações levam a que o CPU seja capaz de executar mais de uma instrução por ciclo de relógio! Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 438
22 Vários pipelines Vários pipelines com vários unidades de execução execute Int. inst. fetch fetch decode decode fetch operands fetch operands execute Int. inst. execute FPU inst execute FPU inst store result store result execute move Arquitectura de Computadores (2007/2008): Arquitecturas alternativas 439
23 Execução fora de ordem Para se tirar partido de arquitecturas com pipeline e superescalares é necessário reescalonar a sequência das instruções dinamicamente O CPU pode executar as instruções num ordem diferente da definida pelo utilizador Mantendo as depêndencias de dados, claro Estas optimizazões precisam de hardware especializado e complexo Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 440
24 A arquitectura Intel é CISC? Ao nível da execução, não As instruções mais complexas são traduzidas para um microcódigo RISC Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 441
25 VLIW VLIW (Very Large Instruction Word) Técnica utilizada desde do início dos anos 80 O seu propósito é delegar no compilador o escalonamento das instruções É este que deve ordenar as instruções de forma a tirar o maior partido possível da arquitectura, não o hardware Instruções que podem ser executadas em paralelo são agregadas numa única instrução VLIW Exemplo: Uma instrução VLIW de 128 que pode conter 4 instruções de 32 bits Uma instrução VLIW Inst 1 Inst 2 Inst 3 Inst 4 Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 442
26 VLIW: Vantagens e desvantagens Vantagens do VLIW Reduz a complexidade do hardware Simplifica o lançamento das instruções Não é preciso verificar dependências de dados e fazer escalonamento dinâmico Desvantagens Aumenta a complexidade dos compiladores Não responde a eventos dinâmicos tão eficientemente quanto a abordagem super-escalar Caso não existam instruções independentes suficientes para encher a instrução VLIW é preciso colocar NOPs Inst 1 Inst 2 Inst 3 NOP Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 443
27 Intel IA-64 O ISA IA-64 é implementado pela família de processadores Intel Itanium Não é compatível com o IA-32 (também conhecido por x86) e o x86-64 A compatibilidade só é possível através de um emulador implementado em hardware Tem um desenho RISC com instruções VLIW de 128 bits denominado EPIC (Explicitly Parallel Instruction Computers) Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 444
28 EPIC Os saltos condicionais são resolvidos através de instruções predicadas (dependem da validade de um predicado) Exemplo: cmovz R2, R3, R1 Se R1 == 0 copia o conteúdo de R3 para R2 Se R1!= 0 não faz nada Loads especulativos Especular que dados vão ser usados no futuro carregálos para perto do CPU antes de ser preciso Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 445
29 Predicação: vantagens e desvantagens Vantagens Elimina os saltos Reduz o código do programa Elimina a necessidade de hardware para branch prediction Desvantagens Precisa de bits na instrução para codificar o predicado Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 446
Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial
Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Carlos A. Silva 2º Semestre de 2005/2006 http://www.dei.uminho.pt/lic/mint Assunto: Pipeline Aula #5 28 Mar 06 Revisão Na implementação
Leia maisARQUITECTURA DE COMPUTADORES
ARQUITECTURA DE COMPUTADORES CAPÍTULO IV AULA II Maio 2014 Índice Processadores Revisões Pipelining Pipeline hazards Hazard estrutural Hazard de dados Hazard de controlo Pipelining datapath Pipelined control
Leia maisUniversidade Federal do Rio de Janeiro Pós-Graduação em Informática IM-NCE/UFRJ. Pipeline. Gabriel P. Silva. Microarquitetura de Alto Desempenho
Universidade Federal do Rio de Janeiro Pós-Graduação em Informática IM-NCE/UFRJ Microarquiteturas de Alto Desempenho Pipeline Gabriel P. Silva Introdução Pipeline é uma técnica de implementação de processadores
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 maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Pipeline Slide 1 Pipeline Pipeline Hazards: Hazards Estruturais Hazards de Dados Hazards de Controle Organização e Arquitetura de Computadores I Caminho de Dados
Leia maisArquitetura de Computadores. Ivan Saraiva Silva
Arquitetura de Computadores MIPS Pipeline Ivan Saraiva Silva Pipeline 4 pessoas (A, B, C, D) possuem sacolas de roupa para lavar, secar e dobrar A B C D Lavar leva 30 minutos Secar leva 40 minutos Dobrar
Leia maisArquitetura de processadores: RISC e CISC
Arquitetura de processadores: RISC e CISC A arquitetura de processador descreve o processador que foi usado em um computador. Grande parte dos computadores vêm com identificação e literatura descrevendo
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 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
1 ARQUITETURA DE COMPUTADORES U C P Prof. Leandro Coelho Plano de Aula 2 Aula Passada Definição Evolução dos Computadores Histórico Modelo de Von-Neumann Básico CPU Mémoria E/S Barramentos Plano de Aula
Leia mais28/9/2010. Paralelismo no nível de instruções Processadores superescalares
Arquitetura de Computadores Paralelismo no nível de instruções Processadores superescalares Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Processadores superescalares A partir dos resultados
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 maisTais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.
Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:
Leia maisInformática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1
Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisCapítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)
Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes
Leia maisAlgumas características especiais
Algumas características especiais Tópicos o Medidas de desempenho o CISC versus RISC o Arquiteturas Superescalares o Arquiteturas VLIW Medidas de desempenho Desempenho é muito dependente da aplicação MIPS:
Leia maisProcessador ( CPU ) E/S. Memória. Sistema composto por Processador, Memória e dispositivos de E/S, interligados por um barramento
1 Processadores Computador Processador ( CPU ) Memória E/S Sistema composto por Processador, Memória e dispositivos de E/S, interligados por um barramento 2 Pastilha 3 Processadores (CPU,, Microcontroladores)
Leia maisIntrodução à Organização de Computadores. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007
Introdução à Organização de Computadores Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007 Tópicos Processadores Memória Principal Memória Secundária Entrada e
Leia maisArquiteturas que Exploram Paralismos: VLIW e Superscalar. Ch9 1
Arquiteturas que Exploram Paralismos: VLIW e Superscalar Ch9 1 Introdução VLIW (Very Long Instruction Word): Compilador empacota um número fixo de operações em uma instrução VLIW As operações dentro de
Leia maisO Nível ISA. Modelo de programação Arquitecturas CISC e RISC Introdução ao IA-32 da Intel
O Nível ISA Modelo de programação Arquitecturas CISC e RISC Introdução ao IA-32 da Intel Nível ISA (Instruction Set Architecture) Tipos de dados Inteiros (1, 2, 4 ou 8 bytes) Servem também para representar
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 maisArquitetura de Computadores - Processadores Superescalares. por Helcio Wagner da Silva
Arquitetura de Computadores - Processadores Superescalares por Helcio Wagner da Silva Introdução O Pipeline é uma técnica desenvolvida para a melhoria do desempenho frente à execução seqüencial de instruções
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 maisOrganização de Computadores 2005/2006 Processadores Intel
Organização de Computadores 2005/2006 Processadores Intel Paulo Ferreira paf a dei.isep.ipp.pt Março de 2006 Pré História 2 8080.............................................................................................
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 maisIntrodução à Organização de Computadores. Execução de Programas Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007
Introdução à Organização de Computadores Execução de Programas Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007 CPU (Central Processing Unit) é o coordenador de todas as atividades
Leia maisARQUITETURA DE COMPUTADORES - 1866
7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um
Leia maisArquitetura de Computadores I
Arquitetura de Computadores I Pipeline -- Conflito de dados paradas e adiantamentos -- Conflito de controle detecção de desvios e descarte de instruções -- Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno
Leia maisPipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir.
O throughput de um pipeline é determinado pela freqüência com que uma instrução sai do pipeline Todos os estágios devem estar prontos ao mesmo tempo para prosseguir O tempo requerido para mover uma instrução
Leia maisSistemas Computacionais II Professor Frederico Sauer
Sistemas Computacionais II Professor Frederico Sauer Livro-texto: Introdução à Organização de Computadores 4ª edição Mário A. Monteiro Livros Técnicos e Científicos Editora. Atenção: Este material não
Leia maisMicroarquiteturas Avançadas
Univ ersidade Federal do Rio de Janei ro Info rmátic a DCC/IM Arquitetura de Computadores II Microarquiteturas Avançadas Gabrie l P. Silva Introdução As arquiteturas dos processadores têm evoluído ao longo
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 maisParalelismo a Nível de Instrução
Paralelismo a Nível de Instrução É possível obter maior desempenho computacional com: tecnologias mais avançadas, tais como circuitos mais rápidos; melhor organização da CPU, tais como o uso de múltiplos
Leia mais5. EXPERIÊNCIAS E ANÁLISE DOS RESULTADOS. 5.1 - Os Programas de Avaliação
36 5. EXPERIÊNCIAS E ANÁLISE DOS RESULTADOS 5.1 - Os Programas de Avaliação Programas de avaliação convencionais foram utilizados para análise de diversas configurações da arquitetura. Estes programas
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 maisCISC RISC Introdução A CISC (em inglês: Complex Instruction Set Computing, Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; suporta mais instruções no entanto, com
Leia maisAula 14: Instruções e Seus Tipos
Aula 14: Instruções e Seus Tipos Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Instruções e Seus Tipos FAC 1 / 35 Conceitos Básicos Diego Passos
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES ARQUITETURAS RISC E CISC. Prof. Dr. Daniel Caetano 2012-1
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES ARQUITETURAS RISC E CISC Prof. Dr. Daniel Caetano 2012-1 Objetivos Conhecer as premissas da Arquitetura CISC Conhecer as premissas da Arquitetura RISC Compreender
Leia maisORGANIZAÇÃO DE COMPUTADORES MÓDULO 8
ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 Índice 1. A Organização do Computador - Continuação...3 1.1. Processadores - II... 3 1.1.1. Princípios de projeto para computadores modernos... 3 1.1.2. Paralelismo...
Leia maisCapítulo 3 Processadores de Propósito Geral: Software
Capítulo 3 Processadores de Propósito Geral: Software Prof. Romis Attux EA075 2015 Obs: Os slides são parcialmente baseados nos dos autores do livro texto Processadores de Propósito Geral Um processador
Leia maisOrganização de Computadores 2005/2006 Processamento Paralelo
Organização de Computadores 2005/2006 Processamento Paralelo Paulo Ferreira paf a dei.isep.ipp.pt Maio de 2006 Introdução 2 Porquê?...........................................................................................
Leia maisArchC. Wesley Nunes Gonçalves
Implementação do Processador ARM7 em ArchC Wesley Nunes Gonçalves 23 de novembro de 2007 ARM7 Instruções Implementadas O ARM possui 37 registradores, sendo 31 registradores de propósito geral e 6 registradores
Leia maisModos de entrada/saída
Arquitectura de Computadores II Engenharia Informática (11545) Tecnologias e Sistemas de Informação (6621) Modos de entrada/saída Fonte: Arquitectura de Computadores, José Delgado, IST, 2004 Nuno Pombo
Leia maisConjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)
Arquitectura de um computador Caracterizada por: Conjunto de instruções do processador (ISA Estrutura interna do processador (que registadores existem, etc Modelo de memória (dimensão endereçável, alcance
Leia maisUnidade 4 Paralelismo em Nível de Instrução. Filipe Moura de Lima Gutenberg Pessoa Botelho Neto Thiago Vinícius Freire de Araújo Ribeiro
Unidade 4 Paralelismo em Nível de Instrução Filipe Moura de Lima Gutenberg Pessoa Botelho Neto Thiago Vinícius Freire de Araújo Ribeiro Sumário Introdução O Pipeline Pipeline em diferentes CPUs ARM Cortex-A9
Leia maisOrganização e Arquitetura de Computadores. Capítulo 13 Paralelismo no nível de instruções
Organização e Arquitetura de Computadores Capítulo 13 Paralelismo no nível de instruções O que é Superescalar? As arquiteturas superescalares são aquelas capazes de buscar, decodificar, executar e terminar
Leia mais7-1. Parte 6 Otimizações da Arquitetura
7-1 Parte 6 Otimizações da Arquitetura 7-2 Bibliografia [1] Miles J. Murdocca e Vincent P. Heuring, Introdução à Arquitetura de Computadores [2] Andrew S. Tanenbaum, Modern Operating Systems [3] William
Leia maisProgramação de Sistemas
Programação de Sistemas Introdução à gestão de memória Programação de Sistemas Gestão de memória : 1/16 Introdução (1) A memória central de um computador é escassa. [1981] IBM PC lançado com 64KB na motherboard,
Leia maisIntel Pentium 4 vs Intel Itanium
Intel Pentium 4 vs Intel Itanium Tiago Manuel da Cruz Luís Instituto Superior Técnico Grupo 10 53871 tmcl@mega.ist.utl.pt João Miguel Coelho Rosado Instituto Superior Técnico Grupo 10 53929 jmcro@mega.ist.utl.pt
Leia maisPrevisão do Desempenho. AC1 13ª aula Previsão do Desempenho 1
Previsão do Desempenho AC1 13ª aula Previsão do Desempenho 1 De que depende T exec? Um programa necessita de um determinado número de ciclos do CPU para executar (clockcycles). Cada ciclo tem uma duração
Leia maisperiféricos: interfaces humano-computador (HCI) arquivo de informação comunicações
Introdução aos Sistemas de Computação (6) Análise de componentes num computador Estrutura do tema ISC 1. Representação de informação num computador 2. Organização e estrutura interna dum computador 3.
Leia maisConjunto de Instruções e Arquitectura p.1
Conjunto de Instruções e Arquitectura Luís Nogueira luis@dei.isep.ipp.pt Departamento Engenharia Informática Instituto Superior de Engenharia do Porto Conjunto de Instruções e Arquitectura p.1 Organização
Leia maisO hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware
1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador
Leia maisArquitetura de Computadores RISC x CISC. Gustavo Pinto Vilar
Arquitetura de Computadores RISC x CISC Gustavo Pinto Vilar PPF / DPF Papiloscopista Policial Federal Pós-Graduado em Docência do Ensino Superior UFRJ Graduado em Ciência da Computação e Processamento
Leia maisArquitetura de Computadores. Ivan Saraiva Silva
Arquitetura de Computadores Métricas de Desempenho Ivan Saraiva Silva Sumário Como arquiteturas são geralmente avaliadas Como arquiteturas obedecem a restrições de projeto Métricas de desempenho Combinando
Leia maisPrimeiros "computadores" digitais. Execução de um programa. Consolas. Primórdios dos computadores. Memória interna. Computadores com memória interna
Execução de um O executa um Quais os seus componentes? Como estes se organizam e interactuam? entrada de dados processador, memória, input bits periféricos,etc bits saída de dados output Primeiros "es"
Leia maisIntrodução à Arquitetura de Computadores
1 Introdução à Arquitetura de Computadores Hardware e software Organização de um computador: Processador: registradores, ALU, unidade de controle Memórias Dispositivos de E/S Barramentos Linguagens de
Leia maisArquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados
Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano 2012-1
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES Prof. Dr. Daniel Caetano 2012-1 Lembretes Compreender o funcionamento da Arquitetura Superpipeline Compreender
Leia maisArquitectura de Computadores II
Departamento de Ciências e Tecnologias da Informação Arquitectura de Computadores II Textos de apoio Pipelines Versão 0.02 Junho de 2010 Tomás Brandão. ISCTE-IUL - DCTI 2 Índice 1. ITRODUÇÃO... 5 2. FUCIOAMETO...
Leia mais3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:
Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de
Leia maisIntrodução ao Processamento Paralelo
Introdução ao Processamento Paralelo Prof. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h Introdução Crescente aumento de desempenho dos PCs (máquinas convencionais). Existem aplicações que requisitam
Leia maisCampus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /
Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ICO Aula N : 09 Tema: Unidade Central de
Leia maisArquiteturas RISC. (Reduced Instructions Set Computers)
Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina
Leia maisOrganização de Computadores 2005/2006 Processadores Intel
GoBack Organização de Computadores 2005/2006 Processadores Intel Paulo Ferreira paf a dei.isep.ipp.pt Março de 2006 ORGC Processadores Intel slide 1 Pré 8080 8086 80286 Pré ORGC Processadores Intel slide
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal
Leia maisMemória. Espaço de endereçamento de um programa Endereços reais e virtuais Recolocação dinâmica Segmentação
Memória Espaço de endereçamento de um programa Endereços reais e virtuais Recolocação dinâmica Segmentação Espaço de endereçamento de um programa Para ser executado, um programa tem de ser trazido para
Leia maisARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA X
ARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA X Índice Traduzindo e iniciando uma aplicação Compiladores Assembladores Linkers Loaders DLLs Iniciando um programa em Java Após toda a matéria abordada nesta
Leia maisMulti-processamento. Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores
Multi-processamento Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores Arquitecturas MIMD de memória distribuída Massive Parallel Computers Sistemas distribuídos Ainda
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal
Leia maisUnidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01
Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal
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 maisAula 26: Arquiteturas RISC vs. CISC
Aula 26: Arquiteturas RISC vs CISC Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Arquiteturas RISC vs CISC FAC 1 / 33 Revisão Diego Passos
Leia maisArquitecturas Alternativas. Arquitectura X86-64 Arquitecturas RISC Exemplo: MIPS Desempenho de sistemas Pipelining
Arquitecturas Alternativas Arquitectura X86-64 Arquitecturas RISC Exemplo: MIPS Desempenho de sistemas Pipelining X86-64 Qual é o ISA que temos nas máquinas Intel actuais? O x86-64 que é uma extensão para
Leia maisInfraestrutura de Hardware. Revisão Pipeline, Superescalar e Multicores
Infraestrutura de Hardware Revisão Pipeline, Superescalar e Multicores Pipeline Pipeline é uma técnica que visa aumentar o nível de paralelismo de execução de instruções ILP (Instruction-Level Paralellism)
Leia maisOrganização de Computadores
Organização de Computadores Marcelo Lobosco DCC/UFJF Avaliando e Compreendendo o Desempenho Aula 09 Agenda Avaliando e Compreendendo o Desempenho Introdução Definindo Desempenho Medindo o Desempenho Desempenho
Leia maisCapítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho
20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam
Leia mais1.3. Componentes dum sistema informático HARDWARE SOFTWARE
1.3. Componentes dum sistema informático Computador Sistema Informático HARDWARE SOFTWARE + Periféricos Sistema Operativo Aplicações HARDWARE - representa todos os componentes físicos de um sistema informático,
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 maisCPU Unidade Central de Processamento. História e progresso
CPU Unidade Central de Processamento História e progresso O microprocessador, ou CPU, como é mais conhecido, é o cérebro do computador e é ele que executa todos os cálculos e processamentos necessários,
Leia maisSistema de Computação
Sistema de Computação Máquinas multinível Nível 0 verdadeiro hardware da máquina, executando os programas em linguagem de máquina de nível 1 (portas lógicas); Nível 1 Composto por registrados e pela ALU
Leia maisCAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM
CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas
Leia maisANHANGUERA EDUCACIONAL. Capítulo 2. Conceitos de Hardware e Software
ANHANGUERA EDUCACIONAL Capítulo 2 Conceitos de Hardware e Software Hardware Um sistema computacional é um conjunto de de circuitos eletronicos. Unidade funcionais: processador, memória principal, dispositivo
Leia maisCapítulo 1 Introdução
Capítulo 1 Introdução Programa: Seqüência de instruções descrevendo como executar uma determinada tarefa. Computador: Conjunto do hardware + Software Os circuitos eletrônicos de um determinado computador
Leia maisLISTA DE EXERCÍCIOS - Nro. 01
Professor responsável: Fernando Santos Osório Semestre: 2010/2 Horário: Quarta 21h00 [Arquiteturas Clássicas] USP ICMC SSC SSC0510 - Arquitetura de Computadores E-mail: fosorio icmc.usp.br fosorio gmail.com
Leia maisIntrodução aos Computadores
Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas
Leia maisOrganização e Arquitetura de Computadores. Hugo Barros email@hugobarros.com.br
Organização e Arquitetura de Computadores Hugo Barros email@hugobarros.com.br RISC X SISC RISC: Reduced Instruction Set Computer Nova Tecnologia para máquinas de alta performance; Máquina com um conjunto
Leia maisUnidade 14: Arquiteturas CISC e RISC Prof. Daniel Caetano
Arquitetura e Organização de Computadores 1 Unidade 14: Arquiteturas CISC e RISC Prof. Daniel Caetano Objetivo: Apresentar os conceitos das arquiteturas CISC e RISC, confrontando seus desempenhos. Bibliografia:
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 maisEdeyson Andrade Gomes
Sistemas Operacionais Conceitos de Arquitetura Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Máquinas de Níveis Revisão de Conceitos de Arquitetura 2 Máquina de Níveis Máquina de níveis Computador
Leia maisSSC510 Arquitetura de Computadores. 2ª aula
SSC510 Arquitetura de Computadores 2ª aula PROFA. SARITA MAZZINI BRUSCHI CISC E RISC ARQUITETURA MIPS PIPELINE Arquitetura CISC CISC Complex Instruction Set Computer Computadores complexos devido a: Instruções
Leia maisCap. 5 - Microprocessadores
Cap. 5 - Microprocessadores Arquitectura de Computadores 2010/2011 Licenciatura em Informática de Gestão Dora Melo (Responsável) Originais cedidos gentilmente por António Trigo (2009/2010) Instituto Superior
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 maisSistemas Operacionais. Revisando alguns Conceitos de Hardware
Sistemas Operacionais Revisando alguns Conceitos de Hardware Sumário Hardware Processador Memória principal Cache Memória secundária Dispositivos de E/S e barramento Pipelining Arquiteturas RISC e CISC
Leia maisRISC X CISC - Pipeline
RISC X CISC - Pipeline IFBA Instituto Federal de Educ. Ciencia e Tec Bahia Curso de Analise e Desenvolvimento de Sistemas Arquitetura de Computadores 25 e 26/30 Prof. Msc. Antonio Carlos Souza Referências
Leia maisO processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.
O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. Unidade aritmética e lógica - Executa operações aritméticas (cálculos);
Leia maisInterrupções. As interrupções são casos especiais de chamadas de procedimentos.
Interrupções Uma interrupção é equivalente a uma chamada de procedimento. A chamada é equivalente a um CALL gerado pela execução de uma instrução. As interrupções são casos especiais de chamadas de procedimentos.
Leia maisFACULDADE PITÁGORAS PRONATEC
FACULDADE PITÁGORAS PRONATEC DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br Objetivos Ao final desta apostila,
Leia maisArquitetura de Computadores I
Arquitetura de Computadores I Avaliação de desempenho Introdução Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Adaptado do material de aula de Hennessy e Patterson Desempenho Meça,
Leia mais