Arquitetura e Organização de Computadores
|
|
- Ruy de Santarém Carreira
- 8 Há anos
- Visualizações:
Transcrição
1 Universidade Federal do Pampa Campus-Bagé Arquitetura e Organização de Computadores Aula 2 Revisão de Conceitos e Introdução a Desempenho Prof. Julio Saraçol juliosaracol@gmail.com Slide1
2 Aula 2 REVISANDO CONCEITOS Slide2
3 Modelo Básico de Computador Processa os dados e controla o sistema UCP (CPU) Memória armazena instruções e dados barramento do sistema auto-estrada para dados e instruções periféricos permite a entrada e a saída de dados Slide3
4 Programa: definição de alto nível Um programa é uma sequência finita de comandos (em alguma linguagem de programação), com o propósito de resolver um problema específico. Exemplo: #include <stdio.h> int mult(int *v, int cont) { int total=0; while( cont > 0 ){ total += *v; v++; cont--; } return total; } Slide4
5 Programa: definição de baixo nível Um programa é uma sequência finita de instruções (de um dado processador), com o propósito de resolver um problema específico. Exemplo: LDR A #0 LDR X 129 LDR B 128 JZ 16 ADD A 0, X ADD X #1 SUB B #1 JMP 6 STR A, 130 HLT Slide5
6 Fluxo de Desenvolvimento de um Programa Problema computacional algoritmo Editor de texto Linguagemde programação Pascal, C etc arquivo-fonte.pas.c etc TurboPascal, gcc, TurboC, BorlandC etc compilador Conjunto de Instruções Processador-alvo (i7, PPC, MIPS, etc.) arquivo binário (executável) Slide6.exe (depende do S.O.)
7 Fluxo de Desenvolvimento de um Programa - 2 Problema computacional Nível de abstração baixo algoritmo Editor simbólico arquivo-simbólico Conjunto de Instruções.asm etc. Processador-alvo (P4, PPC, MIPS, etc.) montador arquivo binário (executável) Slide7.exe (depende do S.O.)
8 Instrução de Máquina Uma instrução de máquina é uma operação básica que um processador é capaz de realizar Um conjunto de instruções de máquina forma um programa em código de máquina A geração do código de máquina pode ser feita a partir de um programa em alto nível ou de um programa em baixo nível: Alto nível: uma instrução é traduzida em muitas instruções de máquina Baixo nível: a tradução é praticamente um para um, ou seja, uma instrução de baixo nível (assembly) para cada instrução de máquina Slide8
9 Formato de Instrução Cada instrução é representada como um conjunto de bits Os bits são agrupados em campos, a fim de facilitar o projeto do bloco de controle Os campos definem o formato da instrução. Exemplo de formato: identifica a instrução indica o modo como a memória é acessada ou se o operando está num registrador endereço do operando (memória ou registrador) opcode modo endereço Slide9
10 Conjunto de Instruções Cada processador (modelo ou família de processador) possui um conjunto de instruções próprio. Ex: NEANDER. instrução NOP STA end LDA end ADD end OR end AND end NOT JMP end JN end JZ end HLT significado Nenhuma operação Armazena acumulador (store) Carrega acumulador (load) Soma OU lógico E lógico Inverte (complementa) acumulador Desvio incondicional (jump) Desvio condicional (jump on negative) Desvio condicional (jump on zero) Término de execução (halt) Slide10
11 Conjunto de Instruções Tipos de instruções: Instruções de transferência de dados load, store, move Instruções aritméticas e lógicas add, sub, mul, div, and, or, xor, not Instruções de teste e de desvio (ou de controle de execução) jump, jump on negative (JN), jump on zero (JZ), branch on equal (beq) Slide11
12 Endereçamento: Número de Operandos Muitas instruções realizam operações sobre operandos Exemplos: instruções aritméticas e lógicas Os operandos podem estar em qualquer posição da memória ou em qualquer registrador (entre os de propósito geral) Assim, instruções que definem uma operação sobre um operando precisam conter também o endereço do operando No caso de mais de um operando, cada operando pode ter um endereço diferente No caso de instruções de desvio, a instrução deve indicar para qual posição ou endereço de programa sequer desviar Slide12
13 Endereçamento: Número de Operandos O número de campos de endereço no formato de instrução depende da organização interna do processador e do seu número de registradores Tipos de organização: Organização com acumulador Organização com múltiplos registradores Organização de pilha Slide13
14 Endereçamento: Número de Operandos Para analisar o impacto do número de campos de endereço de memória e do número de operandos na memória, consideremos que se deseje programar a seguinte equação: X=(A+B)*(C+D) onde X, A, B, C e D são endereços de memória. Consideremos também que tenhamos as seguintes instruções disponíveis: ADD, SUB, MUL, MOVE (ou LOAD e STORE) e HALT (fim de programa) Slide14
15 Formato de Instrução com 4 Endereços opcode end1 end2 end3 end4 identifica a instrução localização dos dois operandos-fonte localização do operando-destino endereço da próxima instrução endereço instrução execução i1 ADD A, B, Y, i2 Mem[Y] Mem[A] + Mem[B], vai para i2 i2 ADD C, D, Z, i3 Mem[Z] Mem[C] + Mem[D], vai para i3 i3 MUL Y, Z, X, i4 Mem[X] Mem[Y] + Mem[Z], vai para i4 i4 HALT Fim do programa Vantagem: não há necessidade de instruções de desvio do fluxo de execução (jump, branch) Desvantagem: os programas são sequenciais, i.e., na maior parte das vezes, a próxima instrução está no próximo endereço de memória Slide15
16 Formato de Instrução com 3 Endereços opcode end1 end2 end3 identifica a instrução localização dos dois operandos-fonte localização do operando-destino endereço instrução execução i1 ADD A, B, Y Mem[Y] Mem[A] + Mem[B] i2 ADD C, D, W Mem[W] Mem[C] + Mem[D] i3 MUL Y, W, X Mem[X] Mem[Y] * Mem[W] i4 HALT Fim do programa Usa um registrador apontador de programa (PC), o qual é incrementado para apontar para a próxima instrução a ser executada (exceto nos desvios) No conjunto de instruções deve haver instruções de desvio do fluxo de execução (jump, branch) Slide16
17 Formato de Instrução com 2 Endereços opcode end1 end2 identifica a instrução localização de um operando-fonte localização do outro operando-fonte que também é destino endereço instrução execução i1 ADD B, A Mem[A] Mem[A] + Mem[B] i2 ADD D, C Mem[C] Mem[C] + Mem[D] i3 MUL C, A Mem[A] Mem[A] * Mem[C] i4 MOVE A, X Mem[X] Mem[A] i5 HALT Fim do programa A e C são sobrescritos! Slide17
18 Formato de Instrução com 1 Endereço opcode end1 identifica a instrução localização de um operando-fonte Há um registrador chamado acumulador (abreviado por AC), que contém o segundo operando O acumulador também é o destino do resultado As instruções de movimentação de dados são LOAD e STORE, as quais são definidas em relação ao acumulador (AC) Slide18
19 Formato de Instrução com 1 endereço endereço instrução execução i1 LOAD A AC Mem[A] i2 ADD B AC AC + Mem[B] i3 STORE Y Mem[Y] AC i4 LOAD C AC Mem[C] i5 ADD D AC AC + Mem[D] i6 MUL Y AC AC * Mem[Y] i7 STORE X Mem[X] AC i8 HALT Fim do programa Usa uma posição de memória (Y) para armazenamento temporário! Slide19
20 Formato de Instrução com 0 endereço identifica a instrução opcode Não existe referência sobre a localização dos operandos (memória ou registrador) A localização dos operandos se dá de maneira implícita, quando a arquitetura foi definida Uma possibilidade é colocar os operandos em uma área específica da memória e fazer uso de um mecanismo específico para a localização Slide20
21 Formato de Instrução com 0 Endereço Exempo: uma pilha os operandos são sempre retirados do topo da pilha o resultado é colocado no topo da pilha PUSH (coloca no topo da pilha) POP (retira do topo da pilha) Slide21
22 Formato de Instrução com 0 Endereço endereço instrução execução i1 PUSH A topo Mem[A] i2 PUSH B topo Mem[B] i3 ADD topo (Mem[A] + Mem[B]) (A e B são retirados do topo da pilha) i4 POP X Mem[X] topo i5 PUSH C topo Mem[C] i6 PUSH D topo Mem[D] i7 ADD topo (Mem[C] + Mem[D]) (C e D são retirados do topo da pilha) i7 PUSH X topo Mem[X] i8 MUL topo ((Mem[C] + Mem[D]) * (Mem[A] + Mem[B])) i9 POP X Mem[X] topo i10 HALT Fim do programa Slide22
23 Modos de Endereçamento Imediato Slide23
24 Modos de Endereçamento Direto Slide24
25 Modos de Endereçamento Indireto Slide25
26 Modos de Endereçamento Registrador Slide26
27 Modos de Endereçamento Registrador Indireto Slide27
28 Modos de Endereçamento Base + Deslocamento Slide28
29 Modelos Arquiteturais Arquitetura de Von Neumann Arquitetura de Harvard Slide29
30 Arquitetura de Von Neumann Arquitetura com programa armazenado em memória Antes, programas eram inseridos com chaves Base para a maioria dos computadores até a atualidade Usa dados e instruções em memória Slide30
31 Arquitetura de Von Neumann Proposto pela equipe de projeto do EDVAC (usado no projeto Manhatan) A idéia da arquitetura foi de J. Presper Eckert e John Mauchly, mas John von Neumann se voluntariou para escrever o relatório, em 1945 John von Neumann era um matemático brilhante, mas com ética questionável No relatório final, ele excluiu o nome dos verdadeiros autores da idéia e, desde então, este modelo arquitetural é chamado de Von Neumann Slide31
32 Performance Conceitos de Arquitetura de Computadores Gargalo de Von Neumann 1000 CPU µproc 60%/yr Processor-Memory Performance Gap: (grows 50% / year) DRAM DRAM 7%/yr. Slide32
33 Gargalo de Von Neumann Slide33
34 Gargalo de Von Neumann Como podemos minimizar este problema? Mais registradores (para evitar acesso à memória) Reduzir (ou eliminar) o número de instruções que podem buscar operadores na memória Explorar reuso de dados e instruções com o uso de caches Usar hierarquia de memória com vários níveis Ainda assim existem gargalos intransponíveis (veremos melhor quando estudarmos o MIPS) Novo modelo arquitetural: Arquitetura Harvard Slide34
35 Arquitetura de Harvard Duas memórias, uma para dados e outra para instruções É possível ler uma instrução e ler ou escrever um dado ao mesmo tempo! Duplica a taxa de transferência memória <=> processador, Aumenta a eficiência da cache Problemas? Slide35
36 Modelo Híbrido É mais usado atualmente Memória RAM é comum para dados e instruções (Von Neumann) Memórias caches separadas para dados e instruções (Harvard) Processadores atuais seguem este modelo Pentium Slide36
37 Modelo Híbrido Core i7 Slide37
38 AULA 2: INTRODUÇÃO SOBRE DESEMPENHO Slide38
39 Desempenho (Performance) Meça, informe e resuma Faça escolhas inteligentes Veja através da propaganda de marketing Vital para entender a motivação organizacional subjacente (Organização do hardware) Slide39
40 Desempenho (Performance) Por que alguns hardwares são melhores do que outros para diferentes programas? Que fatores do desempenho de sistema são relacionados ao hardware? (por exemplo, precisamos de uma nova máquina ou de um novo sistema operacional?) Como o conjunto de instruções da máquina afeta o desempenho? Slide40
41 Algumas considerações Medidas de performance: difícil Impossível de julgar apenas pela análise do conjunto de instruções Diferentes métricas -> diferentes resultados É importante entender os critérios, para poder fazer escolhas inteligentes Comparação entre máquinas: Importante para: Compradores Projetistas Slide41
42 Considerações sobre a medição Importância para projetistas/engenheiros: Saber se uma máquina é mais rápida que a outra. Saber o porquê disto acontecer (hardware, set de instruções, etc.). Fatores que influenciam na performance: Quão bem o programa usa as instruções de máquina. Quão bem o hardware implementa as instruções. Quão bem os sistemas de I/O funcionam. Slide42
43 Qual destes aviões possui o melhor desempenho? O quanto mais rápido é o Concorde comparado com o 747? O quanto maior é o 747 em relação ao Douglas DC-8? Slide43
44 Exercitando as métricas Critérios: velocidade, capacidade, etc. Velocidade: Concorde é o melhor Capacidade: Boeing 777 é o melhor Alcance: o DC-8-50 é o melhor Slide44
45 Mas nem tudo é tão simples Vazão (capacidade x velocidade) de passageiros Até 132 passageiros, o Concorde é o melhor Concorde leva 132 passageiros a 1350 mph 132 x 1350 = Boeing 747 teria 132 passageiros a 610 mph 132 x 610 = Entretanto, para 470 passageiros (capacidade do Boeing 747), este seria melhor (já que o Concorde não atende) 470 x 610 = Portanto, dependendo do problema, um determinado SISTEMA pode ser ou não o melhor segundo uma determinada MÉTRICA Slide45
46 Desempenho do computador: TEMPO, TEMPO, TEMPO Tempo de resposta (latência) tempo entre início-término da tarefa - Quanto tempo leva para meu trabalho ser realizado? - Quanto tempo leva para realizar um trabalho? - Quanto tempo preciso esperar para a consulta ao banco de dados? Vazão (throughput) *** Trabalho pode ser um programa!! - Quantos trabalhos a máquina pode realizar ao mesmo tempo? - Qual é a velocidade de execução média? - Quanto trabalho está sendo feito? Slide46
47 Desempenho do computador: TEMPO, TEMPO, TEMPO O que melhoramos... Se atualizarmos uma máquina com um novo processador, qual métrica melhoraremos? Se acrescentarmos uma máquina ao laboratório, qual delas melhoraremos? OBS.: IMPORTÂNCIA DE UMA MÉTRICA DEPENDE DO PROBLEMA Slide47
48 Tempo de execução Tempo decorrido (tempo de relógio ou tempo de resposta) conta tudo (acessos a disco e a memória, E/S etc.) um número útil, mas normalmente não é ideal para fins de comparação Tempo de execução da CPU (tempo de CPU) não conta E/S ou tempo gasto executando outros programas pode ser dividido em tempo de sistema e tempo de usuário Nosso foco: tempo de CPU do usuário tempo gasto executando as linhas de código (traduzidas em instruções de baixo nível) que estão em nosso programa Slide48
49 Definição de desempenho do livro Para um programa sendo executado na máquina X, DesempenhoX = 1 / Tempo_execuçãoX X é n vezes mais rápida do que Y DesempenhoX / DesempenhoY = n Problema: - a máquina A executa um programa em 10 segundos - a máquina B executa o mesmo programa em 15 segundos O quanto A é mais rápida que B? Slide49
50 Observações sobre nomenclaturas Comparação: mais rápido que. Variação: Melhorar desempenho/performance. Melhorar tempo de execução. Ao invés de: Aumentar desempenho/performance. Diminuir tempo de execução. EVITEMOS ESTES TERMOS!!! Slide50
51 Ciclos de clock Em vez de informar o tempo de execução em segundos, normalmente usamos ciclos segundos = ciclos segundos programa programa ciclos Os tiques (tics) de clock indicam quando iniciar as atividades (uma abstração): tempo tempo de ciclo = tempo entre os tiques = segundos por ciclo velocidade de clock (frequência) = ciclos por segundo (1Hz = 1 ciclo/segundo) Um clock de 4 GHz possui um tempo de ciclo de 1 / 4*10 9 = 250 ps (picoseg) Slide51
52 Perguntas para Refletir O desempenho do computador C é 4 vezes PIOR do que o desempenho do computador B, que executa uma determinada aplicação em 28 segundos. Quanto tempo o computador C levará para executar essa aplicação? Slide52
Organizaçã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 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 maisConjunto de instruções e modos de. aula 4. Profa. Débora Matos
Conjunto de instruções e modos de endereçamento aula 4 Profa. Débora Matos Conjunto de Instruções A = ((B + C) x D + E F)/(G x H) A H denotam posições da memória endereços As arquiteturas possuem as seguintes
Leia maisNOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann
Universidade Federal de Santa Maria NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann O modelo (ou arquitetura) de von
Leia maisComponentes do Computador e. aula 3. Profa. Débora Matos
Componentes do Computador e modelo de Von Neumann aula 3 Profa. Débora Matos O que difere nos componentes que constituem um computador? Princípios básicos Cada computador tem um conjunto de operações e
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 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 maisLinguagem de Montagem Funcionamento de CPU e Assembly Rudimentar
Componentes de um Computador (5) Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) 2007/01 - INF02597 Com slides de Roberta Lima Gomes
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 mais3. O NIVEL DA LINGUAGEM DE MONTAGEM
3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também
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 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 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 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 maisOrganização de Computadores Hardware
Organização de Computadores Hardware Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Computador Ferramenta
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 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 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 maisCapítulo 2 (Livro Texto*) - Notas de Aula - Parte II
Capítulo 2 (Livro Texto*) - Notas de Aula - Parte II 1. Organização de um Computador : Computador: formado por 3 módulos distintos: UCP (UAL e UC) Memória (memória principal ou memória RAM)
Leia maisO modelo do computador
O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década
Leia maisA Unidade Central de Processamento é a responsável pelo processamento e execução de programas armazenados na MP.
A ARQUITETURA DE UM COMPUTADOR A arquitetura básica de um computador moderno segue ainda de forma geral os conceitos estabelecidos pelo Professor da Universidade de Princeton, John Von Neumann (1903-1957),
Leia maisARQUITETURA DE COMPUTADORES
01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100
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 maisOrganização e Arquitetura de Computadores I. Introdução. Ivan Saraiva Silva Leonardo Casillo
Organização e Arquitetura de Computadores I Introdução Ivan Saraiva Silva Leonardo Casillo Sumário Introdução Bibliografia Recomendada O que é um computador Organização de um Computador Modelo de Von Neumann
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 maisARQUITETURA DE COMPUTADORES
ARQUITETURA DE COMPUTADORES Aula 08: UCP Características dos elementos internos da UCP: registradores, unidade de controle, decodificador de instruções, relógio do sistema. Funções do processador: controle
Leia maisOrganização de Computadores 1
Organização de Computadores 1 5 CONJUNTO DE INSTRUÇÕES Prof. Luiz Gustavo A. Martins Introdução O que é um conjunto de instruções? Coleção completa das instruções que a CPU é capaz de executar (entende).
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 maisBARRAMENTO DO SISTEMA
BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade
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 maisProcessadores BIP. Conforme Morandi et al (2006), durante o desenvolvimento do BIP, foram definidas três diretrizes de projeto:
Processadores BIP A família de processadores BIP foi desenvolvida por pesquisadores do Laboratório de Sistemas Embarcados e Distribuídos (LSED) da Universidade do Vale do Itajaí UNIVALI com o objetivo
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 5 - O NÍVEL DA LINGUAGEM DE MONTAGEM 1. INTRODUÇÃO É relativamente fácil compreender os fundamentos da programação de computadores, sob o ponto de vista da inteligibilidade dos comandos de alto
Leia maisUnidade 10: A Unidade Lógica Aritmética e as Instruções em Linguagem de Máquina Prof. Daniel Caetano
Arquitetura e Organização de Computadores 1 Unidade 10: A Unidade Lógica Aritmética e as Instruções em Linguagem de Máquina Prof. Daniel Caetano Objetivo: Apresentar as funções o mecanismo de atuação da
Leia mais1.1. Organização de um Sistema Computacional
1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes
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 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 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 maisDesempenho DESEMPENHO DE COMPUTADORES
Desempenho Ch2-1 DESEMPENHO DE COMPUTADORES Desempenho -> Como medir o desempenho? AVIÃO PASSAGEIRO S AUTOMIA (milhas) VELOCIDAD E (mph) THROUGHPUT (passag.xveloc) Boeing 777 375 4630 610 228.750 Boeing
Leia maisIntrodução. Introdução. Introdução. Organização Estruturada de Computadores. Introdução. Máquinas Multiníveis
Ciência da Computação Arq. e Org. de Computadores Máquinas Multiníveis Prof. Sergio Ribeiro Computador digital máquina que resolve problemas executando uma série de instruções. Programa conjunto de instruções
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 maisAULA 1. Informática Básica. Gustavo Leitão. gustavo.leitao@ifrn.edu.br. Disciplina: Professor: Email:
AULA 1 Disciplina: Informática Básica Professor: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Estudo de caso Empresa do ramo de seguros Presidência RH Financeiro Vendas e Marketing TI CRM Riscos Introdução
Leia mais2 Formalidades referentes ao trabalho
Bacharelado em Ciência da Computação DINF / UFPR Projetos Digitais e Microprocessadores 1 o Semestre de 2006 MICO-v12.r0 07/03/2006 Profs. Luis Allan Künzle e Armando Luiz Nicolini Delgado Atenção: Este
Leia maisULA Sinais de Controle enviados pela UC
Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento
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 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 maisGeração de código. Ivan Ricarte INTRODUÇÃO À COMPILAÇÃO
Geração de código Ivan Ricarte 2008 Sumário Geração de código intermediário Código de três endereços Notação pós-fixa Otimização de código Heurísticas de otimização Geração de código em linguagem simbólica
Leia maisINTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO
Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele
Leia maisComponentes de um Computador: Modelo Von Neumann
Componentes de um Computador: Modelo Von Neumann Modelo de Von Neumann O nome refere-se ao matemático John Von Neumann que foi considerado o criador dos computadores da forma que são projetados até hoje.
Leia maisOrganização Básica do Computador
Organização Básica do Computador Modelo de Von Neumann MEMÓRIA ENTRADA ARITMÉTICA LÓGICA SAÍDA CONTROLE Modelo de Von Neumann Introduziu o conceito do computador controlado por programa armazenado. Todo
Leia maisO que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador.
O que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador. Linguagem de Programação Uma linguagem de programação é um método padronizado para expressar
Leia maisArquitetura de Computadores. Ivan Saraiva Silva
Arquitetura de Computadores Introdução Ivan Saraiva Silva Sumário Introdução Bibliografia Recomendada O que é um computador Organização de um Computador Modelo de Von Neumann IAS Máquina de Von Neuman
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 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 maisFigura 1 - O computador
Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...
Leia maisProgramação Básica usando o Computador Visível. Jorge Fernandes Maio de 2004
Programação Básica usando o Computador Visível Jorge Fernandes Maio de 2004 Organização Geral de um Computador de von Neumann Hardware Processador Dispositivo de Entrada 1 Dispositivo de Entrada 2 Memória
Leia maisDesempenho de Computadores
Desempenho de Computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC Contém figuras de Computer Organization and Design, D. Patterson & J. Hennessey, 3ª. ed., MKP Tópicos Os vários aspectos
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 maisVisão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias
Visão Geral da Arquitetura de Computadores Prof. Elthon Scariel Dias O que é Arquitetura de Computadores? Há várias definições para o termo arquitetura de computadores : É a estrutura e comportamento de
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 2 - O NÍVEL DA MICROARQUITETURA 1. INTRODUÇÃO Este é o nível cuja função é implementar a camada ISA (Instruction Set Architeture). O seu projeto depende da arquitetura do conjunto das instruções
Leia maisEstrutura de um Computador
SEL-0415 Introdução à Organização de Computadores Estrutura de um Computador Aula 7 Prof. Dr. Marcelo Andrade da Costa Vieira MODELO DE VON NEUMANN PRINCÍPIOS A arquitetura de um computador consiste de
Leia maisMC-102 Aula 01. Instituto de Computação Unicamp
MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2015 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos
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 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 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 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 maisIntrodução à Computação: Arquitetura von Neumann
Introdução à Computação: Arquitetura von Neumann Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
Leia maisProgramação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre
Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Cap. 01 Fundamentos de Computadores Sumário : Conceitos básicos: computador,
Leia maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: Organização Básica de um Computador Digital Introdução à Engenharia de Computação 2 Componentes de um Computador Computador Eletrônico Digital É um sistema
Leia maisComputador = Hardware + Dados
Computador = Hardware + Dados Jorge Fernandes (jorgehcfernandes@uol.com.br) Janeiro de 2004 Conteúdo Computador = Hardware + Dados O Hardware e seus Componentes Dispositivos de Entrada/Saída Unidade Central
Leia maisArquitetura e Organização de Computadores Aula 5 Consolidando Conhecimentos de Desempenho e Resumindo Prof. Julio Saraçol
Universidade Federal do Pampa Campus-Bagé Arquitetura e Organização de Computadores Aula 5 Consolidando Conhecimentos de Desempenho e Resumindo Prof. Julio Saraçol juliosaracol@gmail.com Slide1 AULA 5:
Leia maisIntrodução às Linguagens de Programação
Introdução às Linguagens de Programação Histórico de Linguagens de Programação O computador não faz nada sozinho Precisamos informar, de forma clara, como ele deve executar as tarefas Ou seja, o computador
Leia maisArquitetura de Computadores - Arquitetura RISC. por Helcio Wagner da Silva
Arquitetura de Computadores - Arquitetura RISC por Helcio Wagner da Silva Introdução RISC = Reduced Instruction Set Computer Elementos básicos: Grande número de registradores de propósito geral ou uso
Leia maisComputadores de Programação (MAB353)
Computadores de Programação (MAB353) Aula 6: 27 de abril de 2010 1 Recaptulando operações já estudadas Operações lógicas 2 3 Exercícios Referências bibliográficas Recaptulando operações já estudadas Operações
Leia maisCapacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB
Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha
Leia maisArquitetura de Von Neumann e os Computadores Modernos
Arquitetura de Von Neumann e os Computadores Modernos Arquitetura de Computadores e Software Básico Aula 5 Flávia Maristela (flaviamsn@ifba.edu.br) Arquitetura de Von Neumann e as máquinas modernas Onde
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 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 maisOrganização e Arquitetura de Computadores I. de Computadores
Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização Básica B de Computadores
Leia maisVisão Geral de Sistemas Operacionais
Visão Geral de Sistemas Operacionais Sumário Um sistema operacional é um intermediário entre usuários e o hardware do computador. Desta forma, o usuário pode executar programas de forma conveniente e eficiente.
Leia maisCP C U P U - Un U i n da d d a e d e Ce C n e t n ral a de d e Pr P oc o es e sam a e m n e t n o o Pr P oc o es e sad a o d r o Aula 03
CPU - Unidade Central de Processamento Processador Aula 03 A CPU (Unid. Central de Processamento A unidade Central de Processamento, a CPU (Central Processing Unit), atua como o cérebro do sistema, processando
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 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 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 maisARQUITETURA DE COMPUTADORES
01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100
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 mais2. A influência do tamanho da palavra
1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante a execução de
Leia maisMicroprocessadores. Prof. Leonardo Barreto Campos 1
Microprocessadores Prof. Leonardo Barreto Campos 1 Sumário Introdução; Arquitetura de Microprocessadores; Unidade de Controle UC; Unidade Lógica Aritméticas ULA; Arquitetura de von Neumann; Execução de
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 maisOrganização de Computadores 1
Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central
Leia mais28/9/2010. Unidade de Controle Funcionamento e Implementação
Arquitetura de Computadores Unidade de Controle Funcionamento e Implementação Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Operação da Unidade de Controle Unidade de controle: parte do
Leia maisORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
Linguagem de programação Linguagem de Alto Nível próximo ao ser humano, escrita de forma textual. Ex: if (a==b) a=b+c; Linguagem de Montagem (Assembly) próximo à linguagem de máquina, escrita em códigos
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 3 Software Prof.: Edilberto M. Silva http://www.edilms.eti.br SO - Prof. Edilberto Silva Barramento Sistemas Operacionais Interliga os dispositivos de E/S (I/O), memória principal
Leia maisSoftware Básico (INF1018)
Software Básico (INF1018) http://www.inf.puc-rio.br/~inf1018 Noemi Rodriguez (noemi@inf.puc-rio.br) Ana Lúcia de Moura (amoura@inf.puc-rio.br) 1 Objetivo do curso Entender como funciona um computador típico,
Leia maisComponentes básicos de um sistema computacional. Cap. 1 (Stallings)
Componentes básicos de um sistema computacional Cap. 1 (Stallings) 1 Sistema de Operação Explora recursos de hardware de um ou mais processadores Provê um conjunto de serviços aos utilizadores Gerencia
Leia maisArquitetura de Computadores - Princípio de Funcionamento da CPU. Por Helcio Wagner da Silva
Arquitetura Computadores - Princípio Funcionamento da CPU Por Helcio Wagner da Silva Arquitetura Von Neumann Memória Principal CPU ULA UC Dispositivo E/S ULA : Unida Lógica Aritmética UC : Unida Controle
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 maisConjunto de instruções. O Conjunto de Instruções. Conjunto de instruções. Instruções típicas. Instruções típicas. Instruções típicas
Conjunto de instruções O Conjunto de Instruções ISA Instruction Set Architecture Alguns conceitos... Linguagem máquina Combinação de 0 s e 1 s organizados segundo palavras que são as instruções que o processador
Leia maisComputador Cleópatra
ORGNIZÇÃO E RQUITETUR DE COMPUTDORES Computador Cleópatra Introdução a rquitetura e Programação lexandre mory Edson Moreno 2 / 9 Na ula nterior bstração em Software Programa em linguagem C Programa em
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 maisMáquina Multinível. Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa.
Máquina Multinível Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Uma instrução pode ser definida como um comando para o processador.
Leia mais