Arquitecturas Alternativas. Arquitectura X86-64 Arquitecturas RISC Exemplo: MIPS Desempenho de sistemas Pipelining
|
|
- Júlio Imperial Gorjão
- 6 Há anos
- Visualizações:
Transcrição
1 Arquitecturas Alternativas Arquitectura X86-64 Arquitecturas RISC Exemplo: MIPS Desempenho de sistemas Pipelining
2 X86-64 Qual é o ISA que temos nas máquinas Intel actuais? O x86-64 que é uma extensão para 64 bits do IA-32 Outra? Além de dados de 8, 16 e 32 bits agora temos de lidar com dados de 64 bits Os registos EAX,, EDX, ESI e EDI têm agora extensões a 64 bits: RAX,, RDI O mesmo é válido para os registos de endereços que são de 64 bits: RBP, RSP, RIP O registo das flags também foi estendido: RFLAGS Temos 8 novos registos de dados: r8 a r15 Que máquinas são a 64 bits? AMD Opteron, Athlon64, Turion64, Phenom, Intel Xeon, Core 2, I7, alguns Atom, Core e Pentium Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 388
3 CICS vs. RISC (revisão) CISC Muitas instruções Tamanho variável Muitos modos de endereçamento Instruções demoradas Muitas acedem a memória Poucos registos RISC Poucas instruções Tamanho fixo Poucos modos de endereçamento Instruções eficientes Só load/store acedem a memória Muitos registos Oportunidade para melhorar o consumo de energia, o pipeline, o paralelismo, aumentar o clock, introduzir instruções vectoriais, etc Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 389
4 Aviso Vamos usar o processador MIPS para ilustrar os conceitos das arquitecturas RISC Deste conjunto de acetatos deve serão apenas sujeito a avaliação os conceitos expostos, nomeadamente as diferenças para o IA-32 Portanto o conjunto de registos e instruções que irão servir de exemplo não fazem parte da matéria a avaliar Exemplo do que deve saber: As instruções nas arquitecturas RISC têm um tamanho fixo e obedecem a um conjunto de formatos pré-definido Exemplo do que não precisa de saber: As instruções no MIPS32 têm 32 bits e obedecem a 3 formatos: I, J e R Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 390
5 Exemplo de uma arquitectura RISC MIPS (Multiprocessor without Interlocked Pipeline Stages) Lançado em meados dos anos 80 Versões desde MIPS I a MIPS V As versões actuais são o MIPS32 (32 bits) e MIPS64 (64 bits) Usado na família de processadores R Actualmente o R14000 implementa o MIPS32 e o R16000 implementa o MIPS64 Usado em sistemas embebidos, routers, consolas (Nintendo64, PlayStation 2, PSP, ) e arquitecturas de alto-desempenho para cálculo científico Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 391
6 Nome Descrição $zero Constante 0 $at $v0-$v1 MIPS - registos Reservado para o assembler Avaliação de expressões e retorno de resultados $a0-$a3 Argumentos $t0-$t9 $s0-$s7 $k0-$k1 $gp $sp $fp $ra Regisotos ujo valor é preservado na chamada de uma subrotina (caller-saved) Registos cujo valor não é preservado na chamada de uma subrotina (callee-saved) Reservados para o kernel do sistema operativo Apontador para a zona das variáveis globais (global pointer) Apontador para o topo da pilha (stack pointer) Apontador para a frame de activação corrente (frame pointer) Endereço de retorno Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 392
7 MIPS registos não acessíveis directamente Nome HI, LO PC Descrição Valores parciais do resultado de multiplicações e divisões Program counter Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 393
8 Caller-saved Caller-saved e Callee-saved É da responsabilidade da subrotina que faz a chamada de guardar os valores dos registos que quer salvaguardar Guardar valor do registo Chamar subrotina Recuperar valor do registo Callee-saved É da responsabilidade da subrotina chamada de guardar os valores dos registos que vai sobreescrever subrotina: Guardar valor do registo Recuperar valor do registo Terminar subrotina Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 394
9 Caller-saved e Callee-saved No MIPS a convenção dita que: Os registos $ti são caller-saved Os registos $si são callee-saved Qual é que é a convenção no IA-32? EAX, EDX e ECX são caller-saved EBX, ESI e EDI são callee-saved Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 395
10 MIPS32 tipos de instruções Apenas 3 tipos de instruções: R, I e J Todas as instruções são codificadas nestes 3 tipos Tipo Bits Bits Bits Bits Bits 10-6 Bits 5-0 R Opcode Reg3 Reg2 Reg1 Shamt funct I Opcode Reg3 Reg2 Imm J Opcode Address Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 396
11 MIPS32 exemplos de instruções Load (todas do tipo I) lb reg2, end lh reg2, end lw reg2, end lbu reg2, end Load byte Load half-word (16 bits) Load word (32 bits) Load byte sem estender sinal A instrução lb estende o sinal e o lbu não Store (todas do tipo I) sb reg2, end sh reg2, end sw reg2, end Store byte Store half-word (16 bits) Store word (32 bits) Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 397
12 MIPS32 modos de endereçamento Além dos modos de endereçamento imediato e por registo o MIPS possibilita endereçar memória nas instruções load e store Endereçamento directo: endereço ou etiqueta Exemplo: lw $t0, x Endereçamento indirecto: (reg3) $t0 = Mem[x] Exemplo: lw $t0, ($t1) $t0 = Mem[$t1] Endereçamento baseado: deslocamento(reg3) Exemplo: lw $t0, 4($t1) $t0 = Mem[$t1+4] Ao contrário do IA-32 não existem endereçamento indexado, nem baseado-indexado Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 398
13 MIPS32 exemplos de instruções Instruções lógicas e aritméticas Exemplo: adição Com sinal: add reg1, reg2, reg3 reg1 = reg2 + reg3 R addi reg1, reg2, imm reg1 = reg2 + imm I Sem sinal: addu reg1, reg2, reg3 reg1 = reg2 + reg3 R addiu reg1, reg2, imm reg1 = reg2 + imm I Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 399
14 MIPS32 exemplos de instruções Instruções lógicas e aritméticas Exemplo: multiplicação e divisão Com sinal: mult reg1, reg2 div reg1, reg2 HI,LO = reg1 * reg2 R LO = reg1 / reg2 R HI = reg1 % reg2 Obter o resultado mfhi reg reg = HI R mflo reg reg = LO R Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 400
15 MIPS32 exemplos de instruções Saltos não-condicionais j dest PC = dest J Saltos condicionais beq reg3, reg2, imm if reg3==reg2 PC+= imm I bne reg3, reg2, imm if reg3!=reg2 PC+= imm I Não há noção de registo de flags Saltar para subrotina jal dest $ra = PC+4, PC = dest J Guardar o endereço de retorno num registo? E a recursividade? Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 401
16 MIPS32 Subrotinas Como a maior parte das linguagens de alto-nível usam uma pilha de execução o MIPS também fornece suporte para esta estrutura de dados Registos $sp e $fp, equivalentes ao ESP e ao EBP do IA-32 Não existem as instruções push e pop Exemplo de empilhamento dos argumentos em $t0 e $t1 subi $sp, $sp, 8 ; alocar espaço sw $t0, 4($sp) ; Mem[$sp+4] = $t0 sw $t1, ($sp) ; Mem[$sp] = $t1 Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 402
17 MIPS32 Subrotinas No MIPS é comum passar-se argumentos por registo Existem 4 registos convencionados para o efeito: $a0-$a3 Existem convenções para oque é passado por registo e por pilha Mesmo para os argumentos passados por registo deve-se alocar espaço na pilha Garante-se que existe espaço na frame de activação da subrotina chamada para que esta possa guardar os valores. Útil para subrotinas que chamam outras subrotinas. Valor de retorno é guardado nos registos $v0 $v1 E o endereço de retorno? É um registo callee-saved Caso a subrotina queira salvaguardar o seu valor é da sua responsabilidade colocá-lo na pilha Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 403
18 MIPS32 tipos de instruções Tipo R instruções que operam sobre registos Exemplo: add $t0, $t1, $t2 Bits Bits Bits Bits Bits 10-6 Bits $t2 $t1 $t0 0 add Só é usado nos shifts Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 404
19 MIPS32 tipos de instruções Tipo I instruções que operam com imediatos Exemplo: lw $t0, 4($t1) Bits Bits Bits Bits Bits 10-6 Bits 5-0 lw $t0 $t1 4 beq $t0, $t1, Bits Bits Bits Bits Bits 10-6 Bits 5-0 beq $t0 $t Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 405
20 MIPS32 tipos de instruções Tipo J jumps Exemplo: j Bits Bits Bits Bits Bits 10-6 Bits 5-0 j Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 406
21 MIPS - FPU Assim como no IA-32 a FPU é um co-processador Na realidade o MIPS está preparado para ter 3 coprocessadores 0 Controlo do sistema Controla a memória virtual, as interrupções e excepções 1 FPU 2 Reservado para uso futuro Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 407
22 Desempenho dos sistemas Um sistema tem melhor desempenho que outro se produzir resultados em menos tempo A melhoria introduzida num sistema (speedup) é dada por: Exemplo: S = tempo antigo / novo tempo Um programa passou a executar em 5s quando antes executava em 6s S = 6/5 = 1.2 (corresponde a 1.2x mais rápido) S = 1 significa que não há alteração S = 2 significa que passou a metade do tempo Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 408
23 Lei de Amdahl O desempenho de um sistema é influenciado por todos os seus componentes. Cada componente contribui com uma proporção para o speedup global, dada por: S = 1 (1-p) + p/s s speedup de um componente p proporção desse componente no sistema Devemos procurar optimizar primeiro os componentes que mais contribuem para o tempo total Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 409
24 Influência dos componentes Componentes software: Programa (algoritmos e estruturas de dados), linguagens, bibliotecas, S.O., etc Componentes hardware: CPU, Memória, Buses, Periféricos, etc Então exemplo: Um programa não executa 2x mais rápido só porque usamos um CPU 2x mais rápido! O speedup obtido será proporcional ao tempo de execução do CPU no tempo total do programa (os tempos de espera pela memória, periféricos, etc. mantém-se constante) Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 410
25 Exemplo o que é melhor? Considere um sistema que distribui o tempo total de execução nas actividades A e B: A B Se actividade B é tornada 5x mais rápida: Se actividade A é tornada 2x mais rápida: Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 411
26 Na arquitectura de computadores Procura-se optimizar os vários componentes na medida do respectivo peso nos tempos de execução dos nossos sistemas Em AC iremos estudar quais são as optimizações efectuadas nos seguinte componentes: CPU CPU Memória Entradas e saídas Vamos começar pelo CPU Memória Entradas/Saídas Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 412
27 Pipeline de execução A execução de uma instrução passa por várias fases: Vimos o ciclo: fetch, decode, execute Nos CISC cada instrução pode exigir vários acessos a memória (exemplo add [var1], 5) fetch decode execute instrução operando resultado Memória (instrução e var1) Com os RISC espera-se necessitar pouco de ir a memória instruções menos demoradas! Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 413
28 Tempos de acesso a memória CPU regs C 5 ns (L1) a 10 ns (L2) c ns 7ms h Memória física e (central) disco Arquitectura de Computadores (2008/2009): Arquitecturas alternativas 414
29 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 415
30 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 416
31 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 417
SSC0611 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 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 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 e Projetos de Computadores. Capítulo 2. Organização e Projetos de Computadores. Instruções
Capítulo 2 Hennessy Patterson 1 Instruções Linguagem da máquina Vamos trabalhar com a arquitetura do conjunto de instruções MIPS (Micrrocessor without interlocked pipeline stages Micrrocessador sem estágios
Leia maisArquitetura de Computadores 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 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 maisO estudo da arquitectura de computadores efectua-se com recurso à Abstracção
ARQUITECTURA DE COMPUTADORES O estudo da arquitectura de computadores efectua-se com recurso à Abstracção Podemos ver um computador de várias formas. Para um utilizador normalmente o computador é a aplicação
Leia maisProcedimentos e Gestão de Subrotinas
5 Procedimentos e Gestão de Subrotinas Wait a minute, Doc. Are you telling me you built a time machine out of a DeLorean? Marty McFly para o Dr. Brown no filme de 1985, Back to the future O desenho de
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 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 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 maisAssembly IA32 Procedimentos
1 Procedimentos Assembly IA32 Procedimentos Uma chamada a um procedimento implica a transferência de dados (na forma de parâmetros do procedimento e na forma de valores retornados pelo procedimento) e
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 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 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 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 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 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 maisO Funcionamento do Processador
O Funcionamento do Processador Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Os cinco componentes clássicos de um Computador - Controle O
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código
Leia maisEstrutura do tema ISA do IA-32
Análise do Instruction Set Architecture (5) x86-64: 64-bit extension to Intel 64: Intel implementation of x86-64 Estrutura do tema ISA do 1. Desenvolvimento de programas no em Linux 2. Acesso a operandos
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 maisARQUITECTURA DE COMPUTADORES
ARQUITECTURA DE COMPUTADORES CAPÍTULO III AULA I, II e III Abril 2014 Índice Aritmética para computadores Intro Adição e subtração Multiplicação Divisão Virgula Flutuante Virgula Flutuante - aritmética
Leia 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 maisMicroprocessadores. Família x86 - Evolução
Família x86 - Evolução António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt i8086 16 bits de dados 20 bits de endereços 1MByte Clock 2 [4,8] MHz i80286 24 bits de endereç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 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 maisArquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64
Arquitecturas Alternativas Pipelining Super-escalar VLIW IA-64 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
Leia maisArquitectura de Computadores ARQC MIPS. Serviços de Sistemas Exemplos. Serviços de Sistema
Arquitectura de Computadores ARQC MIPS Serviços de Sistemas Exemplos Serviços de Sistema Exemplo 1 Somar duas variáveis veis em um registrador register int a=1, b=3, c; c = a + b; (usar os códigos c de
Leia maisEEC2104 Microprocessadores
EEC2104 Microprocessadores Edição 2005/2006 Arquitectura de um microprocessador básico (Qual o hardware necessário para executar instruções e poder chamar subrotinas?) Uso da memória Guardar instruções
Leia maisCPU. CPU Unidade Central de Processamento. Função: leitura, escrita e processamento de dados
CPU CPU Unidade Central de Processamento Função: leitura, escrita e processamento de dados Constituída por: dispositivos que gerem a entrada (leitura) e saída (escrita) de dados; registos (memórias auxiliares)
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 maisNível da Arquitetura do Conjunto de Instruções. Ronaldo de Freitas Zampolo
Nível da Arquitetura do Conjunto de Instruções Ronaldo de Freitas Zampolo Tópicos Introdução Visão geral do nível ISA Tipos de dados Formatos de instruções Endereçamento Tipos de instruções Fluxo de controle
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 de computadores. Aula 05
Organização de computadores Aula 05 2 Níveis de um computador Computadores possuem uma série de níveis Cada um construído sobre seus antecessores Cada um representa uma abstração distinta com diferentes
Leia 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 maisArquitectura e Organização de Computadores
Arquitectura e Organização de Computadores (micro-arquitectura) atributos visíveis ao programador: I.S.A. tamanho da palavra (bits) registos Componentes que realizam a arquitectura: organização do CPU
Leia maisA arquitectura IA32. A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador.
A arquitectura IA32 A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador. Tamanho da palavra Número de registos visíveis Número de operandos Endereçamento
Leia maisArquitectura e Organização de Computadores
Arquitectura e Organização de Computadores (micro-arquitectura) atributos visíveis ao programador: I.S.A. tamanho da palavra (bits) registos Componentes que realizam a arquitectura: organização do CPU
Leia maisAJProença, Sistemas de Computação, UMinho, 2017/18 1. Componentes (físicos) a analisar: a unidade de processamento / o processador:
Introdução aos Sistemas de Computação (4) Estrutura do tema ISC 1. Representação de informação num computador 2. Organização e estrutura interna dum computador 3. Execução de programas num computador 4.
Leia maisComputadores e Programação (DCC/UFRJ)
Computadores e Programação (DCC/UFRJ) Aula 6: 1 2 3 A necessidade dos programadores escreverem código em linguagem de montagem tem mudado ao longo dos últimos anos: de um programador capaz de escrever
Leia maisWilliam Stallings Organização de computadores digitais. Capítulo 11 Estrutura e função da CPU
William Stallings Organização de computadores digitais Capítulo 11 Estrutura e função da CPU Encruzilhada na arquitetura de computadores 2004/2005 Antiga opinião Nova visão a energia é de graça, os transistores
Leia 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 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 maisIntrodução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16
Introdução aos Computadores Introdução à Ciência de Computadores Nelma Moreira Departamento de Ciência de Computadores da FCUP Outubro 2011 Introdução aos Computadores Introdução à Ciência de Computadores
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 maisProgramação ao nível da máquina
Programação ao nível da máquina Ponto de vista do programador O nível Assembly Modelo de programação Assembler (processo de compilação da linguagem C) Que assembly para AC? Introdução ao assembly NASM
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 maisAula 14 Funcionamento de Processadores (Visão específica)
Aula 14 Funcionamento de Processadores (Visão específica) Com base nas aulas de Prof. José Delgado (autorizado) Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm
Leia 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 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 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 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 maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Dr. Daniel Caetano 2012-2 Objetivos Conhecer o processador Compreender os registradores
Leia maisArquitectura de Computadores II. Introdução
Arquitectura de Computadores II LESI - 3º Ano Introdução João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Janeiro 2002 Objectivos da disciplina e relação com outras disciplinas
Leia maisArquitetura de Computadores
Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática UFG 1S/2004 ISA: Arquitetura de Conjunto de Instruções Roteiro Introdução Classificação de conjuntos de instruções Endereçamento
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 maisEstrutura do tema ISA do IA-32
Análise do Instruction Set Architecture (2) Acesso a operandos no IA-32: sua localização e modos de acesso Estrutura do tema ISA do IA-32 1. Desenvolvimento de programas no IA-32 em Linux 2. Acesso a operandos
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 maisUniversidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação MATA49 Programação de software básico Arquitetura Intel
Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação MATA49 Programação de software básico Arquitetura Intel Processadores 8086 Registradores: 16 bits 1978 Data bus:
Leia maisSistemas Processadores e Periféricos Aula 5 - Revisão
Sistemas Processadores e Periféricos Aula 5 - 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 maisOrganização de Computadores
Organização de Computadores Aula 27 Estrutura e Função da CPU Rodrigo Hausen 17 de novembro de 2011 http://cuco.pro.br/ach2034 1/33 Apresentação 1. Bases Teóricas 2. Organização de computadores... 2.5.
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 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 maisSistemas Processadores e Periféricos Aula 3 - Revisão
Sistemas Processadores e Periféricos Aula 3 - 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 maisFunção Fundamental do SO
Função Fundamental do SO Gestão do Hardware Uma das funções fundamentais do sistema operativo é gerir os recursos do hardware de um modo o mais transparente possível ao utilizador Recursos principais a
Leia maisInstituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores. 2º sem.
Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores º sem. / // º Teste Duração:, horas Grupo I Superpilining [ valores] Admita que tem um
Leia maisArquitetura de Computadores. Prof. Alexandro Baldassin. 1o semestre/2017
Arquitetura de Computadores Prof. Alexandro Baldassin 1o semestre/2017 Personagens da Semana David Pa5erson (le9) John Hennessy (right) In 2000 they shared the IEEE John Von Neumann Medal for crea(ng a
Leia maisSumário. Sistemas Operativos 1
Sumário Requisitos mínimos do hardware para suportar um SO protegido (ex: Windows/Linux) Mecanismos hardware de suporte nas arquitecturas x86/x64 Sequência de chamada de serviços sistema no Windows a 32
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 maisArquitetura de Computadores
Arquitetura de Computadores Apresentação Teóricas Prof. Helder Daniel Gab: 2.66 hdaniel@ualg.pt Práticas Prof. Amine Berquia Gab: 2.?? hdaniel@ualg.pt AA2011/2012 ArqC - DEEI - UAlg 2 / Programa Práticas
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 maisArquitectura de Computadores
Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Unidade de Controlo Conjunto de Instruções (CPU) Unidade de Entrada/Saída
Leia maisEscreva um programa em código assembly correspondente ao seguinte programa C.
Exercício 11.1 Escreva um programa em código assembly correspondente ao seguinte programa C. cont=0; for (n=0; n
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 maisConjunto de Instruções. Alisson Brito
Conjunto de Instruções Alisson Brito 1 1 O que é o Conjunto de Instruções? Instruction Set Architecture (ISA) Interface entre Programas e CPU A coleção completa de instruções reconhecidas pela CPU Programas
Leia 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 maisArquitetura de Computadores. Assembly Miscelâneas. Mário O. de Menezes. http://www.tf.ipen.br/~mario
Arquitetura de Computadores Assembly Miscelâneas Mário O. de Menezes http://www.tf.ipen.br/~mario AC Mário O. de Menezes 1 Lembrando Instruções Lógicas e Shift operam em bits individuais, diferente de
Leia maisCPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3
CPU CPU Funções: Processamento; Controle Componentes: UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3 Processador A função de um computador é executar tarefas
Leia maisORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação
Leia maisSumário. Aula Anterior. Exercício 7.1 Contagem de bits a 1 numa palavra Exercício 7.2 Deslocamento de n bits num operando de 64 bits.
Sumário Aula Anterior Exercício 7.1 Contagem de bits a 1 numa palavra Exercício 7.2 Deslocamento de n bits num operando de 64 bits Aula 12 1 Sumário Nesta Aula Esclarecimento de dúvidas para o Exame Resolução
Leia maisLinguagem de Montagem e Assembly. André Luiz da Costa Carvalho
Linguagem de Montagem e Assembly André Luiz da Costa Carvalho Linguagem de Montagem Todo programa para ser executado precisar ser convertido de linguagem fonte (alto nível) para um programa equivalente
Leia maisAula 10 Processadores de Propósito Geral
Aula 10 Processadores de Propósito Geral Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm 1 O que fazer com essa apresentação 2 O que é um microprocessador? Máquina
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 maisArquitectura de Computadores II. Medição de desempenho
Arquitectura de Computadores II LESI - 3º Ano Medição de desempenho João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Abril 2002 1. Introdução A medição de desempenho pretende
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 maisTaxonomia de Flynn. Procura classificar todas as arquitecturas de computadores com base no processamento das instruções e dos dado.
Multi-processamento Taxonomia de Flynn Arquitecturas SIMD Instruções vectoriais Arquitecturas MIMD Tipos de arquitectura MIMD Memória partilhada Multi-cores Taxonomia de Flynn Procura classificar todas
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 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 maisProf. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 2 Estrutura de um processador Prof. Leonardo Augusto Casillo Arquitetura de Von Neumann: Conceito de programa armazenado; Dados
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 maisNível da Arquitetura do Conjunto das Instruções
Nível da Arquitetura do Conjunto das Instruções (Aula 12) Formatos de Instruções Modos de Endereçamento Tipos de Instruções Formatos de Instruções (1) Uma instrução é formada por: um código de operação
Leia maisDo alto-nível ao assembly
Do alto-nível ao assembly Compiladores Cristina C. Vieira 1 Viagem Como são implementadas as estruturas computacionais em assembly? Revisão dos conceitos relacionados com a programação em assembly para
Leia maisOrganização de Computadores 1
Organização de Computadores 1 3.1 CPU: Unidade de Processamento Central Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Unidade de Processamento Central (CPU): Memória Principal Unidade de Processamento
Leia mais10. CPU (Central Processor Unit)... 10 2 10.1 Conjunto das instruções... 10 2 10.2 Estrutura interna... 10 4 10.3 Formato das instruções...
10. CPU (Central Processor Unit)... 10 2 10.1 Conjunto das instruções... 10 2 10.2 Estrutura interna... 10 4 10.3 Formato das instruções... 10 4 10. CPU (CENTRAL PROCESSOR UNIT) Como vimos no capítulo
Leia maisArquitectura de Computadores
Arquitectura de Computadores Fundamentos (9, 10.1 a 10.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico
Leia maisProcedimentos Chamada de Funções e Parâmetros
Procedimentos Chamada de Funções e Parâmetros Noemi Rodriguez Ana Lúcia de Moura http://www.inf.puc-rio.br/~inf1018 Memória Durante a execução de um programa, o SO precisa alocar memória principal para:
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 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 mais