Organização e Projetos de Computadores. Capítulo 2. Organização e Projetos de Computadores. Instruções
|
|
- Nina da Mota Coradelli
- 6 Há anos
- Visualizações:
Transcrição
1 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 interligados de pipeline ) Semelhante a outras arquiteturas desenvolvidas desde a década de 1980 Quase 100 milhões de processadores MIPS fabricados em 2002 Usada pela NEC, Nintendo, Cisco, Silicon Graphics, Sony... Hennessy Patterson 2
2 Aritmética MIPS Todas as instruções possuem três erandos A ordem do erando é fixa (destino primeiro) Exemplo: Código C: Código MIPS: a = b + c add a, b, c (falaremos sobre registradores em breve) O número natural de erandos para uma eração como adição é três... Exigir que cada instrução tenha exatamente três erandos, nem mais nem menos, está de acordo com a filosofia de manter o hardware simples. Hennessy Patterson 3 Aritmética MIPS Princípio de projeto: A simplicidade favorece a regularidade. É claro que isso complica algumas coisas... Código C: a = b + c + d; Código MIPS: add a, b, c add a, a, d Os erandos precisam ser registradores, apenas 32 registradores fornecidos Cada registrador contém 32 bits Princípio de projeto: Quanto menor, melhor. Por quê? Hennessy Patterson 4
3 Registradores versus memória Os erandos das instruções aritméticas precisam ser registradores Apenas 32 registradores fornecidos O compilador associa variáveis com registradores E quanto aos programas com muitas variáveis? Controle Entrada Memória Caminho de dados Saída Processador E/S Hennessy Patterson 5 Organização da memória Vista como um array grande e unidimensional, com um endereço. Um endereço de memória é um índice para o array. Endereçamento de byte significa que o índice aponta para um byte da memória. 8 bits de dados 8 bits de dados 8 bits de dados 8 bits de dados 8 bits de dados 8 bits de dados 8 bits de dados Hennessy Patterson 6
4 Organização da memória Os bytes são bons, mas a maioria dos itens de dados usam words maiores Para o MIPS, uma word possui 32 bits ou 4 bytes. 32 bits de dados 32 bits de dados 32 bits de dados Os registradores armazenam 32 bits de dados 32 bits de dados 2 32 bytes com endereços de byte de 0 a words com endereços de byte 0, 4, 8, As words são alinhadas Por exemplo, quais são os 2 bits menos significativos de um endereço de word? Hennessy Patterson 7 Instruções load e store Exemplo: Código C: Código MIPS: Instruções A[12] = h + A[8]; lw $t0, 32($s3) add $t0, $s2, $t0 sw $t0, 48($s3) $s3 contém o endereço base do array A[] $s2 contém h Resultado armazenado em A[12] É possível se referir aos registradores por nome (por exemplo, $s2, $t2) em vez do número A instrução store word tem o destino por último Lembre-se de que os erandos são registradores, não memória! Não podemos escrever: add 48($s3), $s2, 32($s3) Hennessy Patterson 8
5 Até agora, aprendemos: MIPS - carga de words mas endereçamento de bytes - aritmética apenas em registradores Instrução Significado add $s1, $s2, $s3 $s1 = $s2 + $s3 sub $s1, $s2, $s3 $s1 = $s2 $s3 lw $s1, 100($s2) $s1 = Memory[$s2+100] sw $s1, 100($s2) Memory[$s2+100] = $s1 Hennessy Patterson 9 Linguagem de máquina Instruções, como registradores e words de dados, também possuem 32 bits de tamanho Exemplo: add $t1, $s1, $s2 Registradores têm números, $t1=9, $s1=17, $s2=18 Formato da instrução: = eração básica da instrução, tradicionalmente denominada code. rs = registrador do primeiro erando de origem. rt = registrador do segundo erando de origem. rd = registrador do erando de destino. shamt = shift amount; funct = função (variante específica de uma eração). Hennessy Patterson 10
6 Linguagem de máquina Pense nas instruções load-word e store-word - O que o princípio da regularidade nos levaria a fazer? - Novo princípio: Um bom projeto exige comprometimento Introduza um novo tipo de formato de instrução - Tipo I para instruções de transferência de dados - Outro formato era o tipo R para o registrador Exemplo: lw $t0, 32($s2) rs rt número de 16 bits Qual é o compromisso? Hennessy Patterson 11 Nosso primeiro exemplo Você pode descobrir o código? swap(int v[], int k); { int temp; temp = v[k] v[k] = v[k+1]; v[k+1] = temp; } swap: muli $2, $5, 4 add $2, $4, $2 lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) jr $31 Hennessy Patterson 12
7 Conceito do programa armazenado Instruções são bits Programas são armazenados na memória para serem lidos ou escritos exatamente como os dados Memória para dados, programas, compiladores, editores etc. Processador Memória Ciclo de execução e busca As instruções são buscadas e colocadas em um registrador especial Os bits no registrador controlam as ações subseqüentes Busca a próxima instrução e continua Hennessy Patterson 13 Controle Instruções de tomada de decisão Altera o fluxo de controle Por exemplo, mudar a próxima instrução a ser executada Instruções de desvio condicionais do MIPS: bne $t0, $t1, Label beq $t0, $t1, Label Exemplo: if (i==j) h = i + j; bne $s0, $s1, Label add $s3, $s0, $s1 Label:... $s0 contém i $s1 contém j $s3 contém h Hennessy Patterson 14
8 Controle Instruções de desvio incondicionais do MIPS: j label Exemplo: if (i!=j) beq $s4, $s5, Lab1 h=i+j; add $s3, $s4, $s5 else j Lab2 h=i-j; Lab1: sub $s3, $s4, $s5 Lab2:... $s3 contém h $s4 contém i $s5 contém j Você pode construir um lo for simples? Hennessy Patterson 15 Até agora: Instrução Significado add $s1,$s2,$s3 $s1 = $s2 + $s3 sub $s1,$s2,$s3 $s1 = $s2 $s3 lw $s1,100($s2) $s1 = Memory[$s2+100] sw $s1,100($s2) Memory[$s2+100] = $s1 bne $s4,$s5,l Próxima Instrução está em L se $s4 $s5 beq $s4,$s5,l Próxima Instrução está em L se $s4 = $s5 j Label Próxima Instrução está em L Formatos: R I J rs rt rd shamt funct rs rt endereço de 16 bits endereço de 26 bits Hennessy Patterson 16
9 Fluxo de controle Temos: beq e bne; e branch-if-less-than? Nova instrução: slt if $s1 < $s2 then slt $t0, $s1, $s2 $t0 = 1 else $t0 = 0 Podemos usar essa instrução para construir "blt $s1, $s2, Label e então estruturas de controle gerais Note que o assembler precisa de um registrador para fazer isso - Existe uma política das convenções de uso para registradores Hennessy Patterson 17 Política das convenções de uso $zero Nome Número do registrador 0 Uso O valor constante 0 $v0-$v1 $a0-$a3 $t0-$t7 $s0-$s7 $t8-$t9 $gp $sp $fp $ra Valores para resultados e avaliação de expressões Argumentos Temporários Valores salvos Mais temporários Ponteiro global Ponteiro de pilha Ponteiro de quadro Endereço de retorno Registrador 1 ($at) reservado para o assembler, para o sistema eracional Hennessy Patterson 18
10 Constantes Constantes pequenas são usadas muito freqüentemente (50% dos erandos) Por exemplo: A = A + 5; B = B + 1; C = C - 18; Soluções? Por que não? Coloque constantes típicas na memória e carregue-as. Crie registradores hard-wired (como $zero) para constantes como um. Instruções MIPS: Princípio de projeto: Agilizar o caso comum. Hennessy Patterson 19 E quanto às constantes maiores? Gostaríamos de ser capazes de carregar uma constante de 32 bits em um registrador Precisamos usar duas instruções; nova instrução load upper immediate : preenchido com zeros Depois, precisamos acertar os bits de ordem inferior, por exemplo: Hennessy Patterson 20
11 Visão geral do MIPS Instruções simples, todas com 32 bits Muito estruturado, nenhuma conteúdo desnecessário Apenas três formatos de instrução R rs rt rd shamt funct I rs rt endereço de 16 bits J endereço de 26 bits Nos baseamos no compilador para obter desempenho Quais são os objetivos do compilador? Ajudamos o compilador onde podemos Hennessy Patterson 21 Endereços em desvios e jumps Instruções: bne $t4,$t5,label A próxima instrução está em Label se $t4 $t5 beq $t4,$t5,label A próxima instrução está em Label se $t4 = $t5 j Label A próxima instrução está em Label Formatos: I rs rt endereço de 16 bits J endereço de 26 bits Os endereços não são de 32 bits Como manipular isso com instruções load e store? Hennessy Patterson 22
12 Endereços em desvios Instruções: bne $t4,$t5,label A próxima instrução está em Label se $t4 $t5 beq $t4,$t5,label A próxima instrução está em Label se $t4 = $t5 Formatos: I rs rt endereço de 16 bits Poderíamos especificar um registrador (como lw e sw) e acrescentá-lo ao endereço Use o registrador de endereço de instrução (PC = contador do programa) A maioria dos desvios é local (princípio da localidade) As instruções jump usam apenas bits de ordem superior do PC Limites de endereço de 256 MB: Hennessy Patterson 23 Resumindo: Operandos MIPS Nome Exemplo Comentários 32 registradores $s0-$s7, $t0-$t9,$zero, $a0-$a3, $v0-$v1, $gp, $fp, $sp, $ra, $at Locais rápidos para dados. No MIPS, os dados precisam estar em registradores para a realização de erações aritméticas. O registrador MIPS $zero sempre é igual a 0. O registrador $at é reservado para o assembler tratar de constantes grandes. Hennessy Patterson 24
13 Resumindo: (Cont.) Assembly do MIPS Categoria Instrução Exemplo Significado Comentários Aritmética add add $s1,$s2,$s3 $s1 = $s2 + $s3 Três erandos; dados nos registradores subtract sub $s1,$s2,$s3 $s1 = $s2- $s3 Três erandos; dados nos registradores add immediate addi $s1,$s2,10 0 $s1=$s Usada para somar constantes Transferência de dados load word lw $s1,100($s2) $s1 = Memória[$s ] Dados da memória para o registrador store word sw $s1,100($s2) Memória[$s ] = $s1 Dados do registrador para a memória load byte lb $s1,100($s2) $s1 = Memória[$s ] Byte da memória para registrador store byte sb $s1,100($s2) Memória[$s2+100] = $s1 Byte de um registrador para memória load upper immed. lui $s1,100 $s1 = 100 * 216 Carrega constante nos 16 bits mais altos Desvio condicional branch on equal beq $s1,$s2,25 if ($s1 == $s2) go to PC Testa igualdade; desvio relativo ao PC branch on not equal bne $s1,$s2,25 if ($s1!= $s2) go to PC Testa desigualdade; relativo ao PC set on less than slt $s1,$s2,$s3 if ($s2 < $s3) $s1 = 1; else $s1 = 0 Compara menor que; usado com beq, bne set less than immediate slti$s1,$s2,100 if ($s2 < 100) $s1 = 1; else $s1 = 0 Compara menor que constante Desvio incondicional jump jump register j 2500 jr $ra go to go to $ra Desvia para endereço de destino Para switch e retorno de procedimento jump and link jal 2500 $ra = PC + 4. go to Para chamada de procedimento Hennessy Patterson 25 Arquiteturas alternativas Alternativa de projeto: - Forneça erações mais poderosas - O objetivo é reduzir o número de instruções executadas - O risco é um tempo de ciclo mais lento e/ou uma CPI mais alta - O caminho em direção à complexidade da eração é, portanto, repleto de perigos. Para evitar esses problemas, os projetistas passaram para instruções mais simples. A Seção 2.17 demonstra as armadilhas da complexidade. Vejamos (brevemente) o IA-32 Hennessy Patterson 26
14 IA : O Intel 8086 é anunciado (arquitetura de 16 bits) 1980: O co-processador de ponto flutuante Intel 8087 é acrescentado 1982: O aumenta o espaço de endereçamento para 24 bits; mais instruções 1985: O estende para 32 bits; novos modos de endereçamento : O 80486, Pentium e Pentium Pro acrescentam algumas instruções (especialmente projetadas para um maior desempenho) 1997: 57 novas instruções MMX são acrescentadas; Pentium II 1999: O Pentium III acrescenta outras 70 instruções (SSE) 2001: Outras 144 instruções (SSE2) 2003: A AMD estende a arquitetura para aumentar o espaço de endereço para 64 bits; estende todos os registradores para 64 bits, além de outras mudanças (AMD64) 2004: A Intel se rende e abraça o AMD64 (o chama EM64T) e inclui mais extensões de mídia Essa história ilustra o impacto das algemas douradas da compatibilidade adicionando novos recursos da mesma forma que se coloca roupas em uma sacola, uma arquitetura difícil de explicar e impossível de amar. Hennessy Patterson 27 Visão geral do IA-32 Complexidade: Instruções de 1 a 17 bytes de tamanho Um erando precisa agir como origem e destino Um erando pode vir da memória Modos de endereçamento complexos, por exemplo, índice base ou escalado com deslocamento de 8 ou 32 bits Felizmente: As instruções mais usadas não são difíceis de construir Os compiladores evitam as partes da arquitetura que são lentas O que o 80x86 perde em estilo é compensado na quantidade, tornando-o belo, do ponto de vista aprriado Hennessy Patterson 28
15 Registradores e endereçamento de dados do IA-32 Registradores no subconjunto de 32 bits que surgiram com o Hennessy Patterson 29 Instruções típicas do IA-32 Quatro tipos principais de instruções de inteiro: Movimento de dados, incluindo move, push, p Aritmética e lógica (registrador de destino ou memória) Fluxo de controle (uso de códigos de condição/flags) Instruções de string, incluindo movimento e comparação de strings Hennessy Patterson 30
16 Resumo A complexidade da instrução é apenas uma variável Instrução mais baixa versus CPI (Cycles Per Instruction) mais alta / Velocidade de relógio mais baixa Princípios de projeto: Simplicidade favorece a regularidade Menor é melhor Bom projeto exige comprometimento Agilizar o caso comum Arquitetura do conjunto de instruções Uma abstração muito importante! Hennessy Patterson 31
Arquitetura 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 maisMIPS ISA (Instruction Set Architecture)
MIPS ISA (Instruction Set Architecture) MIcroprocessor without Interlocking Pipeline Stages MIPS Processador RISC de 32 bits Referência dos Processadores RISC Mais de 100 Milhões de processadores vendidos
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 maisCapítulo 3. Instruções: Aritmética MIPS
Capítulo 3 Permission is granted to copy and distribute this material for e ducational purposes only, provided that the complete bibliographic citation and following credit line is included: "Copyright
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 maisCapítulo 3. This material may not be copied or distributed for commercial purposes without express written permission of the copyright holder.
Capítulo 3 Permission is granted to copy and distribute this material for educational purposes only, provided that the complete bibliographic citation and following credit line is included: "Copyright
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 I. Prof. Ricardo Santos (Cap 2)
Arquitetura de Computadores I Prof. Ricardo Santos ricr.santos@gmail.com (Cap 2) Fluxo de Controle Vimos até agora: beq, bne Uma nova instrução: slt $t0, $s1, $s2 if $s1 < $s2 then $t0 = 1 else $t0 = 0
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 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 maisSistemas Processadores e Periféricos Aula 2 - Revisão
Sistemas Processadores e Periféricos Aula 2 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão
Leia 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 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 Prof. Ricardo Santos (Cap 2)
Arquitetura de Computadores I Prof. Ricardo Santos ricr.santos@gmail.com (Cap 2) 1 Fluxo de controle Vimos até agora: beq, bne Uma nova instrução: if $s1 < $s2 then $t0 = 1 slt $t0, $s1, $s2 else $t0 =
Leia maisProf. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO
Linguagem de Montagem Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO 1 Introdução Independente da linguagem de programação utilizada, todo programa
Leia 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 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 mais3. INSTRUÇÕES. Instrução é uma palavra da linguagem de máquina. Instruction Set do MIPS ( usado pela NEC, Nintendo, Silicon Graphics e Sony.
3. INSTRUÇÕES Instrução é uma palavra da linguagem de máquina Instruction Set do MIPS ( usado pela NEC, Nintendo, Silicon Graphics e Sony. Operações O MIPS trabalha com 3 operandos. add a,b,c # a b + c
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 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 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 maisAnotações da 2a Edição
Anotações da 2a Edição OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson. Supõe-se que os estudantes tenham noções de lógica digital e linguagem
Leia maisConjunto de Instruções. Prof. Leonardo Barreto Campos 1
Conjunto de Instruções Prof. Leonardo Barreto Campos 1 Sumário Introdução; CISC; RISC; MIPS; Representação de Instruções; SPIM; Prof. Leonardo Barreto Campos 2/58 Sumário Operações Lógicas; Instruções
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 maisOperações de Controle de Fluxo e Acesso a Memória. Na Aula Anterior... Nesta Aula. Instruções de Controle de Fluxo. if then - else.
GBC036 Arq. e Org. Computadores I Operações Controle Fluxo e Acesso a Memória Na Aula Anterior... Instruções aritméticas em Z; Formato e Codificação Instruções; Overflow e unrflow; Instruções aritméticas
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 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 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 maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Linguagem de Montagem Slide 1 Operações Lógicas Embora os primeiros computadores se concentrassem em words completas, logo ficou claro que era útil atuar sobre
Leia maisNível Máquina Formatos de Instruções
Nível Máquina Formatos de Instruções IA32 e MIPS AC1 11ª aula Formatos de Instruções 1 Stored Program Concept As instruções são números, armazenados em memória, que são descodificados pela Unidade de Controlo
Leia maisCap - 3: Linguagem de Máquina - MIPS
Cap - 3: Linguagem de Máquina - MIPS Arquitetura de Sistemas Computacionais Prof Ricardo Pannain 1 Arquitetura MIPS MIPS Microprocessor without Interlocking Pipes Stages (Microprocessador sem Intertravamento
Leia maisConjunto de Instruções MIPS Parte I
Faculdade de Ciências Aplicadas e Sociais de Petrolina FACAPE Conjunto de Parte I Prof. Sérgio Adaptado dos slides de Sistemas Processadores do Prof. Frank Torres - UFMG O que aprenderemos hoje? Barramento
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 maisARQUITECTURA DE COMPUTADORES
ARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA III Março 2014 Índice Instruction Set Revisões Procedimentos Stack Comunicar com pessoas ASCII Programar em MIPS estrutura, input e output Programar em MIPS
Leia maisConjunto de Instruções MIPS Parte IV
Faculdade de Ciências Aplicadas e Sociais de Petrolina FACAPE Conjunto de Parte IV Transferência de Dados Lógicas Controle Suporte a procedimentos Prof. Sérgio Adaptado dos slides de Sistemas Processadores
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 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 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 de Computadores
Universidade Federal de Santa Catarina Centro Tecnológico Curso de Pós-Graduação em Ciência da Computação Aula 2 Arquitetura do Processador MIPS: características gerais, registradores, formatos de instrução,
Leia 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 maisInfra- Estrutura de Hardware
Infra- Estrutura de Hardware Conceitos Básicos de Arquitetura de Computadores Universidade Federal Rural de Pernambuco Professor: Abner Corrêa Barros Computador: Hardware + So=ware Computador: Hardware
Leia maisArquitetura de Computadores. Linguagem de Máquina
Arquitetura de Computadores Linguagem de Máquina Ivan Saraiva Silva Formato de Instrução MAC O MIC possui dois formatos de instrução: 4 bits 12 bits Formato 1 CODOP ENDEREÇO 8 bits 8 bits Formato 2 CODOP
Leia 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 maisEspecificação do Projeto de Processador RISC
UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO Especificação do Projeto de Processador RISC mycpu Neste documento é apresentada a especificação do projeto da disciplina Organização e Arquitetura de Computadores
Leia maisUCP: Construindo um Caminho de Dados (Parte I)
UCP: Construindo um Caminho de Dados (Parte I) Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado cedido pela Profa. Fernanda Passos Cristina Boeres
Leia maisMicrocontroladores e Interfaces
Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Carlos A. Silva 2º Semestre de 2005/2006 http://www.dei.uminho.pt/lic/mint Aula A3 15 Mar 05 - M Datapath e a sua Unidade de Controlo
Leia maisArquitetura de Computadores
Arquitetura de Computadores Prof. Eduardo Simões de Albuquerque Instituto de Informática UFG 1o. Semestre / 2006 Adaptado do material do prof. Fábio Moreira Costa Programa e Introdução Assunto do curso
Leia maisSistemas Processadores e Periféricos Aula 1 - Revisão
Sistemas Processadores e Periféricos Aula 1 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão
Leia maisNível da Arquitetura do Conjunto das Instruções
Nível da Arquitetura do Conjunto das Instruções (Aula 11) Visão Geral do Nível ISA Antes de deixarmos o hardware (1) 8 2 Antes de deixarmos o hardware (2) 3 ISA (Instruction Set Architecture) Arquitetura
Leia maisa) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização. Resposta:
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 - Gabarito 1. Um programa P foi compilado com
Leia 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 maisAULA 05: LINGUAGEM DE MONTAGEM: SUPORTE A PROCEDIMENTOS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 05: Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE SÃO PROCEDIMENTOS? Procedimentos são um conjunto
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 maisAula 17: UCP: Construindo um Caminho de Dados (Parte I)
Aula 17: UCP: Construindo um Caminho de Dados (Parte I) Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Caminho de Dados (I) FAC 1 / 33
Leia maisMICROPROCESSADORES II (EMA911915) NIOS II - ASSEMBLY 2 O SEMESTRE / 2018
MICROPROCESSADORES II (EMA911915) NIOS II - ASSEMBLY 2 O SEMESTRE / 2018 MATERIAL DIDÁTICO Harris & Harris 61 Introduction 62 Assembly Language 63 Machine Language 64 Programming (exceto 646) 66 Lights,
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 maisARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA VII
ARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA VII Índice Endereçamento MIPS: 32-bits imediatos; Endereços em branches e jumps; Modos de endereçamento; MARS Exercício 5: Fibonnaci Problema Apesar de instruções
Leia maisOrganização de Computadores
Organização de Computadores Aula 25 Conjunto de Instruções: Características e Funções Rodrigo Hausen 10 de novembro de 2011 http://cuco.pro.br/ach2034 1/92 Apresentação 1. Bases Teóricas 2. Organização
Leia maisUNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 - Gabarito 1. Um programa P foi compilado com
Leia maisOrganização ou MicroArquitectura
Organização ou MicroArquitectura DataPath MIPS32 AC Micro-Arquitectura: DataPath do MIPS Datapath e Controlpath Datapath circuito percorrido pelas instruções, endereços e ados IP Inst. Mem. Register File
Leia maisArquitetura de Computadores MIPS
Arquitetura de Computadores MIPS Arquitetura de von Neumann CPU Memory Input / Output Control bus Address bus Data bus System BUS Arquitetura de von Neumann Executa as instruções do programa Working copy
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 maisMIPS. Prof. Carlos Bazilio http://www.ic.uff.br/~bazilio bazilio@ic.uff.br
MIPS Prof. Carlos Bazilio http://www.ic.uff.br/~bazilio bazilio@ic.uff.br Introdução Plataforma projetada da parceria entre NEC, Nintendo, Silicon Graphics e Sony Possui um conjunto de instruções que e
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 maisProcedimentos. Sistemas de Computação
Procedimentos Chamada de Procedimentos Utilização de procedimentos: Facilitar entendimento do programa Reutilização de código Passos necessários para execução de um procedimento: Os parâmetros a serem
Leia maisa) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização.
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 1. Um programa P foi compilado com um compilador
Leia 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 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 maisInfraestrutura de Hardware. Instruindo um Computador Ponteiros, Execução de Programas em C e Java, Características do Intel x86
Infraestrutura de Hardware Instruindo um Computador Ponteiros, Execução de Programas em C e Java, Características do Intel x86 Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito
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 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 maisAntes de deixarmos o hardware (1) Nível da Arquitetura do Conjunto das Instruções
Antes de deixarmos o hardware (1) Nível da Arquitetura do Conjunto das Instruções (Aula 11) Visão Geral do Nível ISA 8 Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Agradecimentos:
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 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
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 maisFaculdade de Computação
Faculdade de Computação Arquitetura e Organização de Computadores 2 1 a Laboratório de Programação MIPS entrega 03/05/2018 Prof. Cláudio C. Rodrigues Problemas: P1) Execute as conversões abaixo: a) Converta
Leia maisInfraestrutura de Hardware. Instruindo um Computador Subrotinas, Tipos de Dados e Modos de Endereçamento
Infraestrutura de Hardware Instruindo um Computador Subrotinas, Tipos de Dados e Modos de Endereçamento Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de
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 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 maisOrganização e Arquitetura de Computadores INTRODUÇÃO
Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo
Leia maisExpoente Mantissa Frac. UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 Data de entrega 16/09/2016 por e-mail (simone@ic.uff.br)
Leia maisGuia Rápido MIPS. Tipos de Dados e Formatações
Tipos de Dados e Formatações Guia Rápido MIPS Tipos de Dados: Todas as instruções são de 32 bits Byte = 8 bits Halfword = 2 bytes Word = 4 bytes Um caractere ocupa 1 byte na memória Um inteiro ocupa 1
Leia maisArquitetura de Computadores. Conjunto de Instruções
Arquitetura de Computadores Conjunto de Instruções Arquitetura do Conjunto das Instruções ISA (Instruction Set Architecture) Traduz para uma linguagem intermediária (ISA) os vários programas em diversas
Leia maisOrganização de 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 maisSistemas de Computação Gabarito - Lista 2
Sistemas de Computação 2005.2 Gabarito - Lista 2 1. a) Resposta: CPI=0,5 X 7 + 0,3 X 4 + 0,15 x 6 + 0,05 X 3=3,5 + 1,2 + 0,9 + 0,15=5,75 Tempo de execução=5,75 X 500 X 1.000.000 x 10-9 = 28,75 x 10-1 =2,875
Leia maisSSC0902 Organização e Arquitetura de Computadores
SSC0902 Organização e Arquitetura de Computadores 3ª Aula Assembly MIPS Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Arquitetura MIPS MIPS: Microprocessor without interlocked pipeline stages (microprocessador
Leia maisProf. Eliezer Soares Flores 1 / 22
Memórias Prof. Eliezer Soares Flores e-mail: eliezerflores@unipampa.edu.br 1 / 22 Sistemas computacionais Hardware: parte física de um sistema computacional; Software: parte lógica de um sistema computacional.
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 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 maisMODOS DE ENDEREÇAMENTO
UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO MODOS DE ENDEREÇAMENTO MARINGÁ 2014 SUMÁRIO 6 MODOS DE ENDEREÇAMENTO...2 6.1 ENDEREÇAMENTO
Leia 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 maisCompiladores. Bruno Lopes. Bruno Lopes Compiladores 1 / 25. Instituto de C
ompiladores Geração de ódigo Bruno Lopes Bruno Lopes ompiladores 1 / 25 Abstração de máquinas de pilha Usa uma pilha para operandos e resultados intermediários Não considera variáveis ou registradores
Leia maisDisciplina: Organização e Arquitetura de Computadores II Professores: Fabiano Hessel e Ney Calazans 22/abril/2009
Prova P1 Aluno Disciplina: Organização e Arquitetura de Computadores II Professores: Fabiano Hessel e Ney Calazans 22/abril/2009 Valor das questões: 1) 3 pontos 2) 3 pontos 3) 4 pontos 1. O fragmento de
Leia maisPSI3441 Arquitetura de Sistemas Embarcados
PSI3441 Arquitetura de Sistemas Embarcados - Instruções de Desvio Loop - Ponto Flutuante - Multiplicação e Divisão - Pseudo-Instruções - Processadores ARM Escola Politécnica da Universidade de São Paulo
Leia maisMinistério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Aula 1. Cibele Lemos Freire Viginoski
Aula 1 Cibele Lemos Freire Viginoski ARM (Advanced RISC Machine) Arquitetura de Processadores CISC Conjunto Complexo de Instruções Microinstruções RISC Conjunto de Instruções Reduzidas Instruções devem
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 mais