Implementação de pipelines

Tamanho: px
Começar a partir da página:

Download "Implementação de pipelines"

Transcrição

1 Implementação de pipelines João Canas Ferreira Novembro de 2005 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 1/18 Assuntos 1 Implementação da arquitectura MIPS 2 Tratamento de instruções multiciclo JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 2/18

2 Implementação sem pipeline 1. (IF) IR MEM[PC]; NPC PC+4 O registo IR guarda a instrução durante os restantes ciclos de relógio. 2. (ID) A Regs[rs]; A Regs[rt]; Imm campo imediato de IR (sign-extended) 3. (EX) Depende do tipo de instrução: Referência a memória: ALUOutput A + Imm; Instrução reg-reg: ALUOutput A op B; Instrução reg-imm: ALUOutput A op Imm; Salto condicional: ALUOutput NPC + (Imm<< 2); Cond (A==0); 4. (MEM) Depende do tipo de instrução: Referência a memória: LMD Mem[ALUOutput] ou MEM[ALUOutput] B; Salto condicional (BEQZ) : if (Cond) PC ALUOutput; 5. (WB) Escrita de resultados: Instrução reg-reg: Regs[rd] ALUOutput; Instrução reg-imm: Regs[rt] ALUOutput; Instrução load: Regs[rt] LMD; JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 3/ Os três formatos de instruções são R (três registos), I (2 registos e um valor imediato de 16 bits) e J (valor imediato de 26 bits). Formato R op rs rt rd shamt funct 6 bits 5 bits 5 bits 5 bits 5 bits 6 bits Formato I op rs rt imediato 6 bits 5 bits 5 bits 16 bits Formato J op endereço 6 bits 26 bits op: opcode; rs, rt, rd: registos; shamt: usado apenas com instruções de deslocamento; funct: operação aritmética a efectuar (soma, subtracção, etc.) Instruções tipo R: rs: 1º operando, rt: 2º operando, rd: destino Instruções do tipo I: rs: 1º operando ou especificação do endereço; rt: destino ou 2º operando (store) (Ciclo 1) O registo IR é usado para guardar a instrução durante os próximos 4 ciclos

3 Implementação sem pipeline : diagrama JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 4/ (Ciclo 2) Descodifica a instrução e acede aos registos indicados pelos campos rs e rt. O acesso é feito mesmo para instruções que não usam esses campos. Neste último caso, o valor lido não será utilizado no tratamento posterior da instrução. Os 16 bits menos significativos (correspondentes a um deslocamento relativo em instruções que contenham um por exemplo, saltos condicionais) são convertidos para 32 bits e guardados no registo temporário Imm (Ciclo 3) Este é o primeiro ciclo de relógio em que o processamento depende do tipo de instrução. Para acessos a memória (leituras ou escritas), calcula-se o endereço efectivo. Para instruções aritméticas, efectua-se o referido cálculo. Para saltos: a ALU é usada para calcular o endereço do destino do salto. O valor do registo A (estabelecido no ciclo anterior) é comparado com zero para determinar se o salto é tomado (apenas consideramos uma instrução de salto BEQZ) (Ciclo 4) Neste ciclo, realiza-se o acesso a memória. O processamento de saltos também é terminado nesta fase. É neste ciclo que o registo PC é actualizado (Ciclo 5) Neste ciclo, o resultado da execução (ciclo 3) ou da leitura de memória (realizada no ciclo 4) é guardado no registo de destino (rd). Instruções de escrita em memória e de salto não têm nada a fazer neste ciclo. 4

4 Implementação com pipeline : diagrama JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 5/ Para construir uma pipeline introduzem-se registos (elementos de memória) entre os andares. Cada registo é actualizado no flanco ascendente do sinal de relógio com os valores produzidos pelo andar à sua esquerda. Durante o ciclo seguinte, esses valores constituem os dados de entrada do andar à sua direita Cada registo é designado pelos nomes combinados dos andares associados. Assim, o registo ID/EX está colocado entre os andares de descodificação e de execução O registo PC pode ser considerado como o registo de entrada do primeiro andar O multiplexador de selecção do PC foi movido do quarto para o primeiro andar, já que o PC deve ser actualizado a cada ciclo Qualquer valor produzido num andar da pipeline e requerido num andar posterior (i.e., à sua direita) deve ser colocado no registo de saída do andar de origem e passado de registo em registo até ao andar onde é necessário. Por exemplo, o número do registo de destino (rd) de uma instrução do tipo R é determinado no andar de ID e deve ser propagado até ao andar de WB, que é o andar em que é usado para aceder ao banco de registos. 5

5 Sequenciamento de operações: pormenores JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 6/ Cada registo de pipeline está dividido em secções. O formato do nome de cada secção é <andar1/andar2.secção>, em que <secção> é quase sempre o nome do registo usado na versão non-pipelined Nesta implementação, instruções de salto demoram 4 ciclos (este valor será reduzido para 2 na implementação tratada no acetato 10), instruções do tipo store demoram 4 ciclos e todas as outras 5 ciclos O tratamento de instruções nos dois primeiros andares é independente do tipo de instrução. O facto de a especificação dos registos ter a mesma posição em todas as instruções (que usam esses registos) é vital para permitir a leitura de registos no segundo andar. Se tal não acontecesse, a leitura dos operandos (registos) só poderia ser feita mais tarde Para controlar esta pipeline apenas é necessário controlar os quatro multiplexadores indicados no acetato 5. 6

6 Detecção de conflitos Condições de detecção: JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 7/ A estratégia de de tratamento de dependências é a seguinte: usar forwarding para evitar conflitos sempre que possível; quando tal não for possível, protelar. Este acetato mostra o tipo de situações que podem surgir. As situações que requerem tratamento são as indicadas nas linhas 2 e 3 da primeira tabela. As situações da linha 2 requerem um protelamento, as da linha 3 podem ser resolvidas por forwarding (ver acetato 8) A tabela mostra que que apenas é necessário comparar o registo de destino de uma instrução e os registos-fonte (rs e rt) das duas instruções seguintes (apenas da instrução seguinte na situação da linha 2) A tabela inferior identifica todas as situações em que uma instrução do tipo load é seguida de uma instrução que usa o valor lido de memória. A instrução de load está em execução, i.e., está a ser processada no andar 3 em função dos valores do registo ID/EX; a instrução que eventualmente levará a protelamento está no andar 2 (registo IF/ID). Em Português, a primeira condição teria a seguinte formulação: A instrução seguinte (i.e., do andar 2) é do tipo R e o seu registo rs é o mesmo registo que é usado para guardar o resultado do load, i.e., o registo rt associado à instrução em ID/EX. 7

7 Condições de forwarding JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 8/ A detecção das situações de que requerem forwarding é feita de forma semelhante à da detecção de protelamento, excepto que agora existem 10 casos diferentes, conforme indicado na tabela Existe ainda um caso não contemplado na tabela: múltiplas instruções seguidas que modificam o mesmo registo. Neste caso, é necessário garantir que forwarding de MEM/WB só é activado se não existir simultaneamente forwarding de EX/MEM. Para estudar esta situação, considere, por exemplo, a seguinte sequência: 1. DADD R1, R2, R3 2. DADDI R1, R1, #2 3. DSUB R4, R3, R Extra: Como implementar o protelamento? (acetato anterior) 1. Alterar o conteúdo de ID/EX para o código de uma instrução que não faça nada (no-op). No caso do MIPS, a instrução DADD R0, R0, R0 é usada; a sua codificação tem todos os bits a zero. 2. Não alterar o conteúdo de IF/ID, nem de PC. 8

8 Implementação de forwarding JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 9/ A implementação de forwarding requer mais três entradas em cada um dos multiplexadores que alimentam a ALU Os três novos percurso alimentam a(s) entrada(s) da ALU a partir: 1. da saída da ALU (guardado em EX/MEM); 2. do valor da ALU que transitou para MEM/WB (i.e., a saída da ALU correspondente à instrução precedente); 3. do valor lido de memória (guardado em MEM/WB). 9

9 Tratamento de saltos: organização JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 10/ Até aqui ainda não foi referido como tratar os saltos condicionais. Em princípio, é preciso protelar até se determinar se o salto é tomado e qual o endereço de destino (para o que é preciso somar o deslocamento relativo incluído na instrução ao valor actual do PC). Como o processamento da instrução de salto demora quatro ciclos, seria necessário protelar o processador durante três ciclos Devido à elevada frequência de ocorrência das instruções de salto condicional, é importante reduzir este impacto. A solução indicada na figura mostra como implementar o tratamento de saltos condicionais em 2 ciclos, admitindo que apenas estamos inetressados em comparações com zero (instruções BEQZ e BNEZ). Para tal foi necessário usar mais um somador (visto a ALU já não poder ser usada para calcular o endereço de destino). Além disso, o novo endereço não é registado em ID/EX, mas usado directamento para actualizar o PC ainda no ciclo ID. 10

10 Tratamento de saltos: operações Andar IF ID EX MEM Instrução de salto IF/ID.IR MEM[PC]; IF/ID.NPC,PC (if ((IF/ID.opcode == salto) & (Regs[IF/ID.IR ] op 0)) {IF/ID.NPC+sign-extend(IF./ID.IR[imm]<<2)} else {PC+4};) ID/EX.A Regs[rs];ID/EX.A Regs[rt]; ID/EX.IR IF/ID.IR; ID/EX.Imm sign-extend(if/id.ir[imm]); Cálculo do endereço de destino e da condição de salto são feitos para todas as instruções. Esta abordagem reduz a penalidade do salto de 3 ciclos para 1. Saltos incondicionais requerem um somador adicional (26 bits). JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 11/ A actualização do PC é feita no andar IF usando valores produzidos em ID (e não em EX, como anteriormente), poupando assim dois ciclos: um por não produzir os dados em EX; outro por o novo PC não passar pelo registo ID/EX, mas ainda servir para alterar o PC nesse mesmo ciclo Como implementar o protelamento neste caso: simplesmente converter a instrução lida a seguir à instrução de salto numa instrução nula (no-op) (ao ser guardada em IF/ID). A operação de fetch seguinte já irá ler da posição correcta Nesta implementação, o processador protela sempre um ciclo a seguir a uma instrução de salto (condicional ou não). Seria possível melhorar a implementação para apenas anular a instrução já lida nos casos em que o salto fosse tomado. 11

11 Tratamento de instruções multiciclo Unidades funcionais adicionais EX int EX VF/int mul IF ID MEM WB EX VF soma EX VF/nt div As unidade de execução não são pipelined. JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 12/ Este acetato mostra a forma mais simples de tratar operações cuja execução seja demorada. Para evitar que o ciclo de relógio tenha que ser alongado para executar essas operações, permite-se que uma instrução gaste mais que um ciclo no estado de execução. Além disso, também é conveniente dispor de unidades de execução separadas para os diferentes tipos de operações A abordagem geral consiste em repetir fase de execução tantas vezes quantas as necessárias. Neste contexto, a detecção de conflitos torna-se mais complicada: uma instrução não pode passar de ID para EX (i.e., não pode ser emitida) se necessitar de uma unidade em uso (o que é fácil de detectar) ou se provocar um conflito de dados. Antes de analisar a forma como essa detecção pode ser feita, é útil generalizar a pipeline indicada acima de forma a permitir que as unidades de execução também sejam, elas próprias, pipelined. 12

12 Tratamento de instruções multiciclo Latência e intervalos de repetição Em geral, (algumas das) unidades de execução multi-ciclo também devem ser transformadas em pipeline. Também deve ser possível ter múltiplas instruções em execução para aproveitar todos os recursos disponíveis. latência número de ciclos entre a instrução que produz um resultado e a instrução que a usa; intervalo de repetição número mínimo de ciclos entre a emissão de duas instruções de um dado tipo. Unidade funcional Latência Intervalo ALU (inteiros) 0 1 Memória de dados 1 1 Somador VF 3 1 Multiplicador (VF e int.) 6 1 Divisor (VF e int.) JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 13/ Consequência da definição de latência: A maioria das instruções consome os seus operandos no início do ciclo EX. Para estas instruções, a latência é igual ao número de andares (contados após o primeiro andar de EX) necessários para produzir o resultado pretendido (ver tabela do acetato) A principal excepção à observação anterior é constituída pelas operações de store, que consome um dos seus operandos um ciclo mais tarde (a latência vem reduzida de um ciclo para o operando que representa o valor a guardar, mas não para o operando que especifica o endereço de memória) Para obter uma frequência de operação maior (i.e., reduzir o ciclo de relógio) é preciso diminuir a quantidade de processamento feito em cada ciclo, o que implica que a execução requer mais ciclos, o que por sua vez aumenta a latência. Conclusão: frequência de relógio maior implica maior latência (para uma mesma tecnologia de implementação) Os acessos a memória usam a unidade inteira para cálculo do endereço. Acessos a memória demoram sempre o mesmo tempo, seja para dados inteiros ou de vírgula flutuante. 13

13 Tratamento de instruções multiciclo Unidades com pipeline JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 14/ Esta organização (que corresponde à tabela do acetato anterior) suporta múltiplas instruções em execução simultaneamente. A unidade de divisão não é pipelined (a unidade inteira também não, mas esta apenas necessita de um ciclo) Na ausência de saltos, esta organização permite manter o débito de uma instrução por ciclo, desde que não existam conflitos de dados ou estruturais, nem sejam usadas instruções de divisão. Qualquer uma destas situação faz com que o CPI desça abaixo de 1 (o valor máximo) A principal implicação da introdução de unidades de execução de latência diferente é que agora podem surgir conflitos RAW que não podem ser resolvidos por forwarding (como anteriormente). Também podem surgir conflitos WAW (que não surgiam antes) Podem surgir igualmente outros tipos de conflitos estruturais. Em particular, instruções de divisão podem encontrar a unidade de divisão já em uso. 14

14 Conflitos RAW Instruções independentes: Tratamento de instruções multiciclo A instrução S.D protela um ciclo extra para que a sua fase MEM não entre em conflito com a instrução ADD.D. Este conflito é estrutural. Poderia ser resolvido com uma unidade adicional para cálculo de endereços (um somador). JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 15/ A tabela superior mostra a operação da nova organização para instruções independentes (logo, não surgem conflitos do tipo RAW). As etiquetas em itálico indicam andares em que são consomidos operandos, enquanto as etiquetas a negrito indicam os andares que produzem dados Pode ocorrer um conflito estrutural no acesso ao banco de registos para escrita (fases MEM e WB), já que mais que uma instrução pode terminar a execução no mesmo ciclo (i.e., ficar pronta a passar para o estado MEM). Por exemplo, na tabela inferior a última instrução protela um ciclo adicional (ciclo 16) para não escrever o seu resultado ao mesmo tempo que a instrução ADD.D A tabela inferior mostra a ocorrência de protelamentos devido à diferença de latência entre as unidades de execução. Por exemplo, a intrução de soma tem de esperar 6 ciclos pelo resultado da multiplicação. Este atraso não pode ser resolvido por forwarding, já que o resultado pretendido apenas está calculado no ciclo

15 Conflitos WAW Tratamento de instruções multiciclo No ciclo 11, três instruções tentam escrever nos registos. Este não é o pior caso. Não existe nenhum conflito estrutural irresolúvel no ciclo 10, porque apenas a instrução L.D usa de facto a memória. JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 16/ A tabela não mostra directamente um conflito WAW A tabela ilustra uma situação hipotética (i.e., que não ocorrerá com detecção de conflitos) em que três instruções passariam simultaneamente ao estado MEM. Na implementação estudada, trata-se de um conflito estrutural. Contudo, este conflito não é intrinsecamente irresolúvel, já que apenas uma instrução acede de facto a memória. Contudo, a sua resolução dependeria da possibilidade de escrever mais que um valor no banco de registos simultaneamente. Tal seria de facto possível com uma implementação mais sofisticada do banco de registos, o que não se justifica neste caso, já que o número de conflitos WAW é previsivelmente baixo Caso a instrução L.D fosse iniciada um ciclo mais cedo, existiria de facto um conflito WAW na escrita de F2. 16

16 Tratamento de instruções multiciclo Detecção de conflitos Assumindo que a detecção de conflitos é feita no andar ID, três tipos de verificações são necessários. Conflito estrutural Esperar até a unidade funcional pretendida estar livre (para divisões) e garantir o acesso ao porto de escrita do banco de registos. Conflito RAW Esperar até que os registos-fonte não estejam etiquetados como destinos de um cálculo pendente que não esteja terminado quando o seu resultado for necessário. Estas verificações dependem do tipo de operandos envolvido. Conflito WAW Determinar se alguma instrução em A1,..., A4, D, M1,..., M7 tem o mesmo destino que a instrução em ID (se esta usar o unidade inteira). Se esse for o caso, protelar. JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 17/ Nos exemplos usados, assumir sempre que a deteção de conflitos é efectuadao no andar ID. Ou seja: o sistema de deteção de conflitos deve detectar conflitos entre a instrução em ID e qualquer instrução já em execução, i.e., a ser processada num andar posterior (mais à direita nos diagramas) As condições indicadas acima não são necessárias, mas são suficientes e relativamente simples Os conflitos WAW serão raros na prática. 17

17 Tratamento de instruções multiciclo Desempenho de vírgula flutuante JCF, 2005 AAC (FEUP/LEIC) Implementação de pipelines 18/ A figura mostra o número médio de ciclos de protelamento atribuídos a operações de vírgula flutuante (i.e., ciclos de protelamento introduzidos quando uma instrução de VF estava no andar de ID). A figura inclui dados para uma unidade adicional (comparação), de complexidade similar à unidade de soma Por exemplo, o número médio de ciclos de protelamento para somas é de 1.7 ciclos (cerca de 56% da sua latência de 3 ciclos) Como é de esperar, o número de ciclos de protelamento provocados por uma instrução é directamente proporcional à sua latência. (Já que esta determina quantas instruções já emitidas podem estar em conflito com uma dada instrução.) Apenas os resultados sobre os conflitos estruturais (divisão) dependem da taxa de ocorrência das instruções. Os outros dependem apenas da latência das operações e das dependências de dados Os conflitos estruturais de divisão são raros, já que a taxa de ocorrência deste tipo de instruções é baixa. 18

Pipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir.

Pipeline. 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 mais

Paralelismo a Nível de Instrução

Paralelismo a Nível de Instrução Paralelismo a Nível de Instrução É possível obter maior desempenho computacional com: tecnologias mais avançadas, tais como circuitos mais rápidos; melhor organização da CPU, tais como o uso de múltiplos

Leia mais

Sequenciamento dinâmico

Sequenciamento dinâmico Sequenciamento dinâmico João Canas Ferreira Outubro de 2004 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3 a. ed., MKP c JCF, 2004 AAC (FEUP/LEIC) Sequenciamento

Leia mais

Organização e Arquitetura de Computadores I

Organizaçã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 mais

Organização e Arquitetura de Computadores I

Organizaçã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 mais

Organização e Arquitetura de Computadores I

Organizaçã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 mais

Conflitos. Aula 9. 31 de Março de 2005 1

Conflitos. Aula 9. 31 de Março de 2005 1 Conflitos Aula 9 31 de Março de 2005 1 Estrutura desta aula Taxonomia dos conflitos Dependências entre instruções Conflitos num pipeline Conflitos estruturais Conflitos de dados Conflitos de controlo Ref:

Leia mais

ARQUITECTURA DE COMPUTADORES

ARQUITECTURA DE COMPUTADORES ARQUITECTURA DE COMPUTADORES CAPÍTULO IV AULA II Maio 2014 Índice Processadores Revisões Pipelining Pipeline hazards Hazard estrutural Hazard de dados Hazard de controlo Pipelining datapath Pipelined control

Leia mais

Arquitetura de Computadores - Processadores Superescalares. por Helcio Wagner da Silva

Arquitetura 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 mais

RISC simples. Aula 7. 31 de Março de 2005 1

RISC 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 mais

Arquitetura de Computadores I

Arquitetura 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 mais

28/9/2010. Paralelismo no nível de instruções Processadores superescalares

28/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 mais

Arquitetura de Computadores I

Arquitetura 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 mais

Informá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 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 mais

Visão Geral de Pipelining

Visão Geral de Pipelining Pipeline Visão Geral de Pipelining Instruções MIPS têm mesmo tamanho Mais fácil buscar instruções no primeiro estágio e decodificar no segundo estágio IA-32 Instruções variam de 1 byte a 17 bytes Instruções

Leia mais

Pipelining - analogia

Pipelining - analogia PIPELINE Pipelining - analogia Pipelining OBJECTIVO: Aumentar o desempenho pelo aumento do fluxo de instruções Program execution Time order (in instructions) lw $1, 100($0) Instruction fetch ALU Data access

Leia mais

Exemplo: CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 ADD $s0, $t0, $t1 IF ID EX MEM WB SUB $t2, $s0, $t3 IF Stall Stall ID EX MEM WB

Exemplo: CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 ADD $s0, $t0, $t1 IF ID EX MEM WB SUB $t2, $s0, $t3 IF Stall Stall ID EX MEM WB 2.3 Dependências de dados (Data Hazards) Ocorre quando uma instrução depende do resultado de outra instrução que ainda está no pipeline. Este tipo de dependência é originado na natureza seqüencial do código

Leia mais

28/9/2010. Unidade de Controle Funcionamento e Implementação

28/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 mais

Tais 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. 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 mais

Caminho dos Dados e Atrasos

Caminho 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

O 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. 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 mais

Aula 14: Instruções e Seus Tipos

Aula 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 mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

ULA Sinais de Controle enviados pela UC

ULA 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 mais

Figura 1 - O computador

Figura 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 mais

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)

Conjunto 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 mais

MODOS DE ENDEREÇAMENTO

MODOS 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 mais

Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial

Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Carlos A. Silva 2º Semestre de 2005/2006 http://www.dei.uminho.pt/lic/mint Assunto: Pipeline Aula #5 28 Mar 06 Revisão Na implementação

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA 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 mais

Desempenho de Computadores

Desempenho 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 mais

Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64

Arquitecturas 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 mais

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Capí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 mais

BARRAMENTO DO SISTEMA

BARRAMENTO 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 mais

Universidade 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. 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 mais

Representação de Dados

Representação de Dados Representação de Dados Introdução Todos sabemos que existem diferentes tipos de números: fraccionários, inteiros positivos e negativos, etc. Torna-se necessária a representação destes dados em sistema

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capí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 mais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 Índice 1. A Organização do Computador - Continuação...3 1.1. Processadores - II... 3 1.1.1. Princípios de projeto para computadores modernos... 3 1.1.2. Paralelismo...

Leia mais

Utilização do SOLVER do EXCEL

Utilização do SOLVER do EXCEL Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de

Leia mais

Componentes do Computador e. aula 3. Profa. Débora Matos

Componentes 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 mais

Geração de código intermediário. Novembro 2006

Geração de código intermediário. Novembro 2006 Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas

Leia mais

Unidade 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 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 mais

Arquitetura de Computadores RISC x CISC. Gustavo Pinto Vilar

Arquitetura de Computadores RISC x CISC. Gustavo Pinto Vilar Arquitetura de Computadores RISC x CISC Gustavo Pinto Vilar PPF / DPF Papiloscopista Policial Federal Pós-Graduado em Docência do Ensino Superior UFRJ Graduado em Ciência da Computação e Processamento

Leia mais

Sistemas de armazenamento

Sistemas de armazenamento Sistemas de armazenamento João Canas Ferreira Dezembro de 2004 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3 a. ed., MKP c JCF, 2004 AAC (FEUP/LEIC) Sistemas

Leia mais

Interrupções. As interrupções são casos especiais de chamadas de procedimentos.

Interrupções. As interrupções são casos especiais de chamadas de procedimentos. Interrupções Uma interrupção é equivalente a uma chamada de procedimento. A chamada é equivalente a um CALL gerado pela execução de uma instrução. As interrupções são casos especiais de chamadas de procedimentos.

Leia mais

3/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:

3/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 mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

GIAE VERSÃO 2.1.1 28 JUNHO DE 2011 MUITO IMPORTANTE

GIAE VERSÃO 2.1.1 28 JUNHO DE 2011 MUITO IMPORTANTE GIAE VERSÃO 2.1.1 28 JUNHO DE 2011 MUITO IMPORTANTE Devido a um bug detectado no motor da base de dados, situação agora corrigida pelo fabricante, esta nova actualização do GIAE é disponibilizada numa

Leia mais

Tarefa Orientada 10 Obter informação a partir de uma tabela

Tarefa Orientada 10 Obter informação a partir de uma tabela Tarefa Orientada 10 Obter informação a partir de uma tabela Objectivos: Consultar dados de uma tabela Utilizar operadores aritméticos, relacionais, lógicos, de concatenação de cadeias de caracteres, LIKE

Leia mais

ArchC. Wesley Nunes Gonçalves

ArchC. Wesley Nunes Gonçalves Implementação do Processador ARM7 em ArchC Wesley Nunes Gonçalves 23 de novembro de 2007 ARM7 Instruções Implementadas O ARM possui 37 registradores, sendo 31 registradores de propósito geral e 6 registradores

Leia mais

Conjunto 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. 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 mais

a 1 x 1 +... + a n x n = b,

a 1 x 1 +... + a n x n = b, Sistemas Lineares Equações Lineares Vários problemas nas áreas científica, tecnológica e econômica são modelados por sistemas de equações lineares e requerem a solução destes no menor tempo possível Definição

Leia mais

CAP. I ERROS EM CÁLCULO NUMÉRICO

CAP. I ERROS EM CÁLCULO NUMÉRICO CAP. I ERROS EM CÁLCULO NUMÉRICO 0. Introdução Por método numérico entende-se um método para calcular a solução de um problema realizando apenas uma sequência finita de operações aritméticas. A obtenção

Leia mais

Introdução às Linguagens de Programação

Introduçã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 mais

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado.

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. Conceitos relativos à Informação 1. Informação O que á a informação? Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. 2. Dados Em informática designa-se

Leia mais

FICHA ORIENTADA Nº1. Barra de fórmulas. Área de trabalho T E C N O L O G I A S D E I N F O R M A Ç Ã O E C O M U N I C A Ç Ã O

FICHA ORIENTADA Nº1. Barra de fórmulas. Área de trabalho T E C N O L O G I A S D E I N F O R M A Ç Ã O E C O M U N I C A Ç Ã O T E C N O L O G I A S D E I N F O R M A Ç Ã O E C O M U N I C A Ç Ã O FICHA ORIENTADA Nº1 INTRODUÇÃO À FOLHA DE CÁLCULO CRIAÇÃO DE UMA FOLHA DE CÁLCULO O Microsoft Excel é um programa que faz parte das

Leia mais

Arquitetura 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 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 mais

COMPETÊNCIAS BÁSICAS EM TIC NAS EB1

COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 Oficina do Correio Para saber mais sobre Correio electrónico 1. Dicas para melhor gerir e organizar o Correio Electrónico utilizando o Outlook Express Criar Pastas Escrever

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA 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 mais

Arquitetura de Computadores. Ivan Saraiva Silva

Arquitetura 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 mais

Introdução ao Processamento Paralelo

Introdução ao Processamento Paralelo Introdução ao Processamento Paralelo Prof. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h Introdução Crescente aumento de desempenho dos PCs (máquinas convencionais). Existem aplicações que requisitam

Leia mais

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco Escola Superior de Tecnologia Instituto Politécnico de Castelo Branco Departamento de Informática Curso de Engenharia Informática Disciplina de Projecto de Sistemas Industriais Ano Lectivo de 2005/2006

Leia mais

Tarefa Orientada 13 Agrupamento e sumário de dados

Tarefa Orientada 13 Agrupamento e sumário de dados Tarefa Orientada 13 Agrupamento e sumário de dados Objectivos: Funções de agregação Agrupamento e sumário de dados Funções de agregação Nesta tarefa orientada iremos formular consultas que sumariam os

Leia mais

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR Curso Engenharia Informática Ano letivo 2012-2013 Unidade Curricular Arquitectura de Computadores ECTS 6 Regime Obrigatório Ano 2º Semestre 2ºsem Horas de trabalho globais Docente (s) Luis Figueiredo Total

Leia mais

Índice. Tudo! (datapath de um ciclo)

Índice. Tudo! (datapath de um ciclo) Índice Sumário Instrução com atraso maior no datapath de um ciclo. Datapath multiciclo: introdução. 4. O Processador: Unidades de Caminho de Dados e de o 4.1 Diagrama de Blocos de um Processador 4.2 Unidade

Leia mais

Manual do GesFiliais

Manual do GesFiliais Manual do GesFiliais Introdução... 3 Arquitectura e Interligação dos elementos do sistema... 4 Configuração do GesPOS Back-Office... 7 Utilização do GesFiliais... 12 Outros modos de utilização do GesFiliais...

Leia mais

Manual Gespos Passagem de Dados Fecho de Ano

Manual Gespos Passagem de Dados Fecho de Ano Manual Gespos Passagem de Dados Fecho de Ano ÍNDICE PASSAGEM DE DADOS / FECHO DE ANO... 1 Objectivo da função... 1 Antes de efectuar a Passagem de dados / Fecho de Ano... 1 Cópia de segurança da base de

Leia mais

Arquitectura de Computadores RECUPERAÇÃO DO 1º TESTE

Arquitectura de Computadores RECUPERAÇÃO DO 1º TESTE Arquitectura de Computadores RECUPERAÇÃO DO 1º TESTE Ano Lectivo: 200/2009 Data: 6 de Janeiro de 2006 INFORMAÇÕES GERAIS Duração: 2h00 1. Mantenha na secretária apenas a sua identificação e uma caneta

Leia mais

SISTEMAS DIGITAIS. Memórias. Prof. Guilherme Arroz Prof. Carlos Sêrro Alterado para lógica positiva por Guilherme Arroz.

SISTEMAS DIGITAIS. Memórias. Prof. Guilherme Arroz Prof. Carlos Sêrro Alterado para lógica positiva por Guilherme Arroz. SISTEMAS DIGITAIS Memórias Alterado para lógica positiva por Guilherme Arroz Sistemas Digitais 1 Tipos de memórias Existem vários tipos de memórias em sistemas digitais As memórias internas dos dispositivos,

Leia mais

Ferramenta de Testagem IECL Orientações para o Aluno (PT)

Ferramenta de Testagem IECL Orientações para o Aluno (PT) Ferramenta de Testagem IECL Orientações para o Aluno (PT) Índice 1 INTRODUÇÃO 3 2 REALIZAÇÃO DOS TESTES 3 2.1 Login 3 2.2 Verificação do áudio para o teste de Audição 5 2.3 Realização de um teste 5 3 Informação

Leia mais

NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann

NOTAS 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 mais

Introdução. Introdução. Introdução. Organização Estruturada de Computadores. Introdução. Máquinas Multiníveis

Introduçã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 mais

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 3.2 O Espaço Nulo de A: Resolvendo Ax = 0 11 O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 Esta seção trata do espaço de soluções para Ax = 0. A matriz A pode ser quadrada ou retangular. Uma solução imediata

Leia mais

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Sumário Unidade Lógica Aritmetrica Registradores Unidade Lógica Operações da ULA Unidade de Ponto Flutuante Representação

Leia mais

Sistemas Computacionais II Professor Frederico Sauer

Sistemas 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 mais

&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO

&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO Universidade Federal de Viçosa Departamento de Informática &XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO Flaviano Aguiar Liziane Santos Soares Jugurta Lisboa Filho (Orientador) PROJETO UNESC@LA Setembro de

Leia mais

AMBIENTE DE PROGRAMAÇÃO PYTHON

AMBIENTE DE PROGRAMAÇÃO PYTHON Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 1 AMBIENTE DE PROGRAMAÇÃO PYTHON 1.1. Objectivos

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos

Leia mais

Arquitetura de Computadores

Arquitetura 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

Organização de Unidades de Processamento

Organizaçã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 mais

Algumas características especiais

Algumas características especiais Algumas características especiais Tópicos o Medidas de desempenho o CISC versus RISC o Arquiteturas Superescalares o Arquiteturas VLIW Medidas de desempenho Desempenho é muito dependente da aplicação MIPS:

Leia mais

A FÓRMULA DE CONVERSÃO ENTRE AS UNIDADES É: F = 1.8 C + 32.0

A FÓRMULA DE CONVERSÃO ENTRE AS UNIDADES É: F = 1.8 C + 32.0 UTILIZANDO NOSSA MÁQUINA HIPOTÉTICA VAMOS CONSTRUIR UM PROGRAMA PARA CONVERTER VALORES DE UMA UNIDADE PARA OUTRA. O NOSSO PROGRAMA RECEBE UM VALOR NUMÉRICO QUE CORRESPONDE A UMA TEMPERATURA EM GRAUS CELSIUS

Leia mais

Tarefa Orientada 12 Junção Externa, Auto-Junção e União

Tarefa Orientada 12 Junção Externa, Auto-Junção e União Tarefa Orientada 12 Junção Externa, Auto-Junção e União Objectivos: Junção externa (Outer JOIN) Junção externa à esquerda (LEFT Outer JOIN) Junção externa à direita (RIGHT Outer JOIN) Junção externa completa

Leia mais

1. Ambiente de Trabalho

1. Ambiente de Trabalho 1 Ambiente de Trabalho 1. Ambiente de Trabalho Ao nível do ambiente de trabalho, depois de o Excel 2007 ter introduzido novos componentes (e.g., Botão Office e Friso) e eliminado alguns dos componentes

Leia mais

Usando o Excel ESTATÍSTICA. A Janela do Excel 2007. Barra de título. Barra de menus. Barra de ferramentas padrão e de formatação.

Usando o Excel ESTATÍSTICA. A Janela do Excel 2007. Barra de título. Barra de menus. Barra de ferramentas padrão e de formatação. Barra de deslocamento ESTATÍSTICA Barra de menus Barra de título Barra de ferramentas padrão e de formatação Barra de fórmulas Conjuntos e Células (Intervalos) Área de trabalho Separador de folhas Barra

Leia mais

Organização Básica do Computador

Organizaçã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 mais

Projeto de Máquinas de Estado

Projeto de Máquinas de Estado Projeto de Máquinas de Estado Organizado por Rodrigo Hausen. Original de Thomas L. Floyd. Versão 0: 15 de março de 2013 http://compscinet.org/circuitos Resumo Grande parte deste texto, exemplos e estrutura

Leia mais

Sistemas Processadores e Periféricos Aula 5 - Revisão

Sistemas 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 mais

Representando Instruções no Computador

Representando Instruções no Computador Representando Instruções no Computador Humanos aprenderam a pensar na base 10 Números podem ser representados em qualquer base Números mantidos no hardware como série de sinais eletrônicos altos e baixos

Leia mais

APROG - Civil. Excel. Técnicas de pesquisa de informação em tabelas. Instituto Superior de Engenharia do Porto 2000-2007

APROG - Civil. Excel. Técnicas de pesquisa de informação em tabelas. Instituto Superior de Engenharia do Porto 2000-2007 APROG - Civil Excel Técnicas de pesquisa de informação em tabelas Instituto Superior de Engenharia do Porto 2000-2007 Elaborado por: António Silva (DEI-ISEP) Pesquisa de Informação em Tabelas O Excel

Leia mais

Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar

Linguagem 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 mais

OPERADORES E ESTRUTURAS DE CONTROLE

OPERADORES E ESTRUTURAS DE CONTROLE OPERADORES E ESTRUTURAS DE CONTROLE 3.1 Operadores Os operadores indicam o tipo de operação matemática que será executada gerando novos valores a partir de um ou mais operadores. São muito utilizados em

Leia mais

Unidade 10: A Unidade Lógica Aritmética e as Instruções em Linguagem de Máquina Prof. Daniel Caetano

Unidade 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 mais

Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho.

Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho. Computação Paralela Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Desenvolvimento de Aplicações Paralelas Uma Metodologia

Leia mais

Facturação Guia do Utilizador

Facturação Guia do Utilizador Facturação Guia do Utilizador Facturação Como se utiliza 2 1 Como se utiliza Todas as opções do sistema estão acessíveis através do menu: ou do menu: O Menu caracteriza-se pelas seguintes funcionalidades:

Leia mais

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

INTRODUÇÃ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 mais

Pipelines. João Canas Ferreira. Mar-Abr Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap.

Pipelines. João Canas Ferreira. Mar-Abr Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. Pipelines João Canas Ferreira Mar-Abr 2004 Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. 6) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 1/52 Conceitos básicos

Leia mais

Primeiros "computadores" digitais. Execução de um programa. Consolas. Primórdios dos computadores. Memória interna. Computadores com memória interna

Primeiros computadores digitais. Execução de um programa. Consolas. Primórdios dos computadores. Memória interna. Computadores com memória interna Execução de um O executa um Quais os seus componentes? Como estes se organizam e interactuam? entrada de dados processador, memória, input bits periféricos,etc bits saída de dados output Primeiros "es"

Leia mais

A máscara de sub-rede pode ser usada para dividir uma rede existente em "sub-redes". Isso pode ser feito para:

A máscara de sub-rede pode ser usada para dividir uma rede existente em sub-redes. Isso pode ser feito para: Fundamentos: A máscara de pode ser usada para dividir uma rede existente em "s". Isso pode ser feito para: 1) reduzir o tamanho dos domínios de broadcast (criar redes menores com menos tráfego); 2) para

Leia mais

Aritmética Binária e. Bernardo Nunes Gonçalves

Aritmética Binária e. Bernardo Nunes Gonçalves Aritmética Binária e Complemento a Base Bernardo Nunes Gonçalves Sumário Soma e multiplicação binária Subtração e divisão binária Representação com sinal Sinal e magnitude Complemento a base. Adição binária

Leia mais