Capítulo 4 Nível da microarquitetura
|
|
- Fábio Vasques Paixão
- 7 Há anos
- Visualizações:
Transcrição
1 Capítulo 4 Nível da microarquitetura Nível acima da lógica digital Função: Implementar a ISA (Instruction Set Architecture) O projeto da microarquitetura depende diretamente da ISA, além dos objetivos de custo e performance 4.1 Exemplo de Microarquitetura Cada microarquitetura é única => não existe fórmula Exemplo: Subconjunto da JVM => Apenas instruções com inteiros (IJVM) Microprograma (ROM): Busca, decodificação e execução das instruções IJVM Cada instrução IJVM é uma função a ser chamada pelo programa principal Programa principal: Loop simples, sem fim => determina a próxima função chamada, executa a função, determina a próxima função, executa a função,... Instruções IJVM: curtas, normalmente um ou dois campos. O primeiro campo é sempre o OPCODE. Microprograma: possui um conjunto de variáveis, acessadas por todas as funções => estado do computador MAR (Memory Address Register): Porta de endereçamento de memória (32 bits) MDR (Memory Data Register): Porta de dados de memória (32 bits), leitura ou escrita na memória. PC (Program Counter): indica a posição de memória(endereço) que contém a próxima instrução a ser executada. MBR (Memory Byte Register) : Porta de dados da memória (8 bits), apenas leitura da memória SP (Stack Pointer): Aponta para o topo da pilha LV (Local Variable): Aponta para a base das variáveis locais dentro da pilha CPP (Constant Pool Pointer): Aponta para a base da área de constantes. TOS OPC H (Holding Register) 79
2 4.1.1 Data Path Possui a ULA, suas entradas e saídas. Conjunto de registradores de 32 bits (arquivo de registradores) => acessíveis apenas no nível da microarquitetura (pelo microprograma) 6 linhas de seleção da função da ULA => apenas 16 funções úteis Número negativo: Complemento de dois Argumentos da ULA: 1º argumento: sempre do registrador H (Holding) 2º argumento: Qualquer um dos outros registradores, excluindo o H e MAR 80
3 Saída da ULA: Alimenta o deslocador Deslocador: SLL8 (Shift Left Logical) SRA1 (Shift Right Arithmetic) É possível ler e escrever em um mesmo registrador no mesmo ciclo de relógio. Temporização da via de dados Subciclos: liberação dos sinais de controle leitura dos registradores operação da ULA e deslocador propagação do resultado para os deslocadores Temporização rígida; Ciclo de relógio suficientemente grande Menor tempo possível de propagação na ULA (e deslocador) Carregamento rápido dos registradores 81
4 Operação de Memória Duas comunicações com a memória porta de acesso de memória de uma palavra, 32 bits => Controlada por MAR e MDR. porta de acesso de memória de um byte, 8 bits = > Controlada por MBR e PC. MAR contém endereços de palavras PC contém endereços de bytes MAR/MDR => Utilizados para ler palavras de dados no nível ISA => 32 bits PC/MBR => Utilizados para ler o programa executável no nível ISA => 8 bits Memória física orientada por Bytes (total de 4GB) => mapeamento de MAR no barramento de endereço. Leitura de MBR no barramento B: Com sinal Sem sinal Microinstruções 29 sinais para controlar a via de dados: 9 sinais para escrita nos registradores 9 sinais para leitura dos registradores 8 sinais para controlar a ULA e deslocador 2 sinais para indicar leitura ou escrita via MAR/MDR 1 sinal para indicar busca de instrução via PC/MBR Os sinais especificam a operação da via de dados em um ciclo de relógio. Uma leitura da memória (em MDR ou MBR) iniciada ao fim do ciclo k só terá o dado disponibilizado a partir do ciclo k+2. É possível ler dados distintos da memória em dois ciclos consecutivos. Não é possível ler mais de um registrador ao mesmo tempo => decodificação da leitura => necessidade de apenas 24 bits para controlar a via de dados. 82
5 Os 24 bits controlam a via de dados em um ciclo da via de dados => necessidade de informar o que será feito no próximo ciclo => inclusão dos campos NEXT_ADDRESS e JAM. ADDR: Contém o endereço da possível próxima microinstrução JAM: Determina como a próxima microinstrução é selecionada ALU: Funções da ULA e Deslocador C: Seleção de qual registrador é carregado do barramento C MEM: Funções da memória B: Seleção de qual registrador é lido no barramento B Controle das Microinstruções: MIC 1 Seqüenciador: Determina quais sinais de controle devem ser habilitados em cada ciclo, responsável por seguir uma seqüência de operações necessárias para a execução de uma única instrução ISA: 1. Determina o estado de cada sinal de controle do sistema 2. Explicita o endereço da próxima microinstrução a ser executada Control Store: memória que contém todo o microprograma (512 palavras de 36 bits). As microinstruções NÃO são armazenadas seqüencialmente na memória de controle => cada microinstrução especifica sua sucessora. MPC (MicroProgram Counter): Especifica o endereço da memória de controle MIR (MicroInstruction Register): Saída de dados da memória de controle 83
6 MIR é carregado na transição negativa do clock com o dado apontado por MPC. 84
7 JMPC = 0 Bit de mais alta ordem de MPC = (JAMZ AND Z) OR (JAMN AND N) OR NEXT_ADDRESS(8). Duas possíveis sucessoras para a microinstrução corrente: JMPC = 1 MPC = MBR OR NEXT_ADDRESS Normalmente os 8 bits de mais baixa ordem de NEXT_ADDRESS são zero. O bit de mais alta ordem pode ser "1" ou "0". 4.2 Exemplo de ISA: IJVM Pilhas (Stacks) Local de memória utilizada para variáveis temporárias (locais). Acessada por dois registradores: LV Local Variables aponta para a base das variáveis locais SP Stack Pointer aponta para o topo da pilha Quadro local: estrutura de dados entre LV e SP 85
8 Pilha de operandos: Quando a pilha é utilizada para armazenar valores intermediários em uma expressão. Nem todas as máquinas utilizam este recurso Modelo de Memória da IJVM Memória vista de duas formas: Vetor de 4G bytes Vetor de 1G palavras, cada palavra 4 bytes Endereços implícitos que fornecem a base para um ponteiro => as instruções só podem acessar a memória indexando a partir destes ponteiros. Separação da memória em quatro partes, acessíveis a qualquer momento: 1. Área de constantes (Constant Pool): Não pode ser escrita por um programa. Carregada quando o programa é lido para a memória. Consiste de constantes, strings e ponteiros para outras áreas de memória. CPP: Aponta sempre para a base desta área (endereço da primeira palavra da área de constantes). 2. Quadro de variáveis Locais (Local Variable Frame): Não inclui a pilha de operandos Utilizada para a alocação de variáveis durante a execução de um procedimento. A pilha de operandos está localizada exatamente acima do quadro de variáveis locais. Argumentos da chamada do procedimento armazenados no começo do quadro de variáveis locais. LV: Possui o endereço da primeira posição do quadro de variáveis locais. 3. Pilha de Operandos: A pilha não excede um certo tamanho, garantido pelo compilador Java. A área da pilha de operandos é alocada acima da área de variáveis locais SP: aponta para o topo da pilha de operandos => valor alterado durante a execução do programa. 4. Área de Métodos: Região de memória que contém o programa. 86
9 Tratada como um vetor de bytes. PC: Aponta para a próxima instrução a ser buscada. CPP, LV e SP => Ponteiros para palavras (4 bytes), todos offsets utilizados para indexar estas áreas de memória são offsets de palavras => LV+1 não representa a posição de memória do byte acima de LV mas a posição de memória do quinto byte acima de LV. PC => Ponteiro para byte 87
10 4.2.3 Conjunto de instruções IJVM Cada instrução consiste de um OPCODE e, em alguns casos, de um operando (offset de memória ou constante) byte, const e varnum: um byte disp, index e offset: dois bytes Fontes das palavras a serem colocadas na pilha: Área de constantes: LDC_W Quadro de variáveis locais: ILOAD Área de instruções: BIPUSH Local de armazenamento das variáveis retiradas da pilha: Quadro de variáveis locais: ISTORE Própria pilha: IADD, ISUB, IAND, IOR Saltos: Incondicional: GOTO Condicional: IFEQ, IFLT, IF_ICMPEQ Chamada de função (método): INVOKEVIRTUAL Retorna de função : IRETURN 88
11 Execução de um método 1. A função que chama o método coloca um apontador (OBJREF) para o objeto a ser chamado na pilha; 2. A função que chama o método coloca os parâmetros do método na pilha (Parâmetro 1, Parâmetro 2, Parâmetro 3). 3. Finalmente executa se o INVOKEVIRTUAL 4. A instrução INVOKEVIRTUAL possui um deslocamento (disp), como argumento => indica a posição na área de constante que possui o endereço inicial na área de métodos. Primeiros 4 bytes na área de método: 2 bytes indicando o número de parâmetros (OBJREF é contado como o Parâmetro 0) => Juntamente com SP fornece a posição de OBJREF. LV apontará para OBJREF. 2 bytes indicando o tamanho da área de variáveis locais do método que será executado => necessário para determinar a nova posição de SP. Quinto byte é a primeira instrução a ser executada. 5. Os dois primeiros bytes da área de métodos são utilizados para posicionar LV => OBJREF é substituído por um ponteiro indicando a posição do antigo PC. 6. Acima do antigo valor de PC, o antigo valor de LV também é armazenado. 7. SP passa a apontar para o endereço da posição do antigo LV (pilha encontra se vazia). 8. PC passa a apontar para o quinto byte da área de métodos. 89
12 90
13 Retorno de um método A instrução IRETURN reverte as operação da instrução INVOKEVIRTUAL Desaloca o espaço utilizado pelo método que estava sendo executado. Retorna a pilha para o estado anterior: OBJREF e todos os parâmetros são retirados da pilha O valor de retorno é colocado no topo da pilha, na posição inicialmente ocupada por OBJREF. 91
14 4.2.4 Compilando Java para IJVM 92
15 4.3 Exemplo de Implementação Microintruções e Notação Memória do microprograma: 36 bits por palavra Controle a cada ciclo: Possibilita executar diversas operações concorrentemente Necessário para compreender e verificar as operações Mais fácil para uma possível otimização (redução de ciclos por instrução) Notação: MAL (Micro Assembly Language) SP = SP+1; rd => incrementa SP e inicia uma operação de leitura da memória MDR = SP => copia o valor de SP para MDR MD = H + SP => adiciona o conteúdo do registrador H ao registrador SP escrevendo o resultado em MDR. MDR = SP + MDR => INVÁLIDO! (um dos argumentos tem que ser H) H = H MDR => INVÁLIDO! (o subtraendo deve vir de H) SP = SP+1;rw => Incrementa SP e inicia uma operação de escrita na memória (4 bytes) SP = SP+1; fetch => incremeta SP e inicia uma operação de busca de instrução (1 byte) goto label => salto incondicional para a próxima microinstrução marcada por "label" Z = TOS => Utilizada para verificar se o valor de um registrador é nulo. Simplesmente passa o registrador pela ULA, sem armazenar o resultado. N = TOS => Similar a anterior, porém testa se o valor do registrador é negativo. if (Z) goto L1; else goto L2 => Salto condicional Z=TOS; if (Z) goto L1; else goto L2 goto (MBR or value) => goto (MBR) => utiliza o bit JMPC 93
16 Nem todas as operações são permitidas O mesmo registrador não pode receber um valor da memória e da via de dados no mesmo ciclo: MAR = SP;rd MDR = H Cada microinstrução fornece o endereço para a próxima microinstrução 94
17 4.3.2 Implementação do IJVM usando o MIC microinstruções As microinstruções não estão necessariamente em posições subsequentes TOS: contém o valor da memória apontada por SP Topo da pilha OPC: registrador temporário. Pode ser utilizado para armazenar o valor de PC em uma instrução de salto. A seqüência de microinstruções sempre começa no endereço igual ao OPCODE do IJVM. BIPUSH: Coloca um byte na pilha ILOAD: WIDE: Altera o índice das instruções ILOAD e ISTORE IINC: Soma uma constante a uma variável local 95
18 96
19 97
20 98
Nível da Microarquitetura
Nível da Microarquitetura (Aula 10) Máquina de Vários Níveis Modernas (ISA) Interpretação (microprograma) ou execução direta ou microarquitetura Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação
Leia maisMicroarquitetura IJVM. Datapath mic-1. Função dos Registradores. mic-1
Microarquitetura IJVM mic-1 Datapath mic-1 Este é mais um exemplo de datapath para microarquitetura IJVM desenvolvida por Andew Tanenbaum Parte da CPU que contém a ALU, suas entradas e saídas 2 Função
Leia maisUm Exemplo de Nível ISA: o IJVM. Pilhas. Pilhas. O Modelo de Memória da IJVM. Pilhas de Operandos. Nível ISA
Ciência da Computação Arq. e Org. de Computadores Nível ISA Prof. Sergio Ribeiro Um Exemplo de Nível ISA: o IJVM Objetivo: Introduzir um nível ISA (Instruction Set Architecture), a ser interpretado pelo
Leia maisO Nível da Microarquitetura. Um Exemplo de Microarquitetura. Um Exemplo de Microarquitetura. Um Exemplo de Microarquitetura
Ciência da Computação Arq. e Org. de Computadores Nível da O projeto do nível de microarquitetura depende: da arquitetura do conjunto das instruções a serem implementadas. dos objetivos de custo e desempenho
Leia maisTE Arquitetura e Organização de Computadores
TE 11008 Arquitetura e Organização de omputadores Nível da Microarquitetura Ronaldo de Freitas Zampolo LaPS/ENGOMP/ITE/UFPA TE 11008 Arquitetura e Organização de omputadores Microarquitetura p. 1 Tópicos
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Fernando Fonseca Ramos Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros 1 Índice 1- Introdução 2- Exemplo de Microarquitetura
Leia maisNível da Microarquitetura
Nível da Microarquitetura (Aula 10) Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Agradecimentos: Camilo Calvi - LPRM/DI/UFES Máquina de Vários Níveis Modernas (ISA)
Leia mais1. Macroarquitetura 2. Emulador do MIC-1 3. O Nível ISA: IJVM. Bibliografia. Teresina - 2011. 3.1. Pilhas 3.2. Conjunto de Instruções IJVM
Universidade Federal do Piauí Centro de Tecnologia Departamento de Engenharia Elétrica Macroarquitetura - Linguagem de Máquina - Prof. Marcos Zurita zurita@ufpi.edu.br www.ufpi.br/zurita Teresina - 2011
Leia maisParte Operativa x Controle Aula 12. Prof. Jadir Eduardo Souza Lucas Universidade Federal do Espírito Santo Departamento de Informática
x Controle Aula 12 Microarquitetura Parte Operativa (ou Caminho de Dados) Constituída de todos os componentes responsáveis pela execução das operações elementares sobre os dados (transformações nos dados)
Leia maisAumento de Desempenho. Aumentando a Velocidade de Execução. Mesclando o Laço de Interpretação. mic-2
Aumento de Desempenho mic-2 Aumentando a Velocidade de Execução Redução do número de ciclos de clock necessários para a execução de uma instrução Simplificação a organização de forma a permitir que o ciclo
Leia maisWilliam Stallings Organização de computadores digitais. Capítulo 14 Operação da Unidade de Controle
William Stallings Organização de computadores digitais Capítulo 14 Operação da Unidade de Controle Microoperações o A execução de um programa em um computador se faz através: o do ciclo de Busca e Execução.
Leia maisInstituto Superior de Engenharia do Porto Departamento de Engenharia Informática
Instituto Superior de Engenharia do Porto Departamento de Engenharia Informática 5º Ano da Licenciatura em Engenharia Informática Ramo de Computadores e Sistemas Disciplina de Projecto 2003/2004 IJVM em
Leia maisOrganização de Computadores
Organização de Computadores Aula 28 Operação da Unidade de Controle Rodrigo Hausen 17 de novembro de 2011 http://cuco.pro.br/ach2034 1/44 Apresentação 1. Bases Teóricas 2. Organização de computadores...
Leia maisTópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10
Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL É A INTERFACE ENTRE
Leia maisOrganização e Projeto de Computadores
Organização e Projeto de Computadores 1 Processamento no Computador Operações principais: leitura de instrução do programa leitura de dados processamento: execução da instrução escrita de resultado entrada/saída
Leia maisOrganização de Computadores 1
Organização de Computadores 1 3.1 CPU: Unidade de Processamento Central Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Unidade de Processamento Central (CPU): Memória Principal Unidade de Processamento
Leia maisInfraestrutura de Hardware. Funcionamento de um Computador
Infraestrutura de Hardware Funcionamento de um Computador Computador: Hardware + Software Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é
Leia maisAULA 03: FUNCIONAMENTO DE UM COMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?
Leia maisArquitecturas Alternativas. Java Virtual Machine
Arquitecturas Alternativas Java Virtual Machine Compilação da linguagem Java A linguagem Java é uma linguagem interpretada que é executada por uma máquina virtual software denominada JVM (Java Virtual
Leia maisSSC0114 Arquitetura de Computadores
SSC0114 Arquitetura de Computadores 3ª Aula Arquitetura MIPS: ISA, Formato das instruções e Modos de endereçamento MIPS Monociclo: Caminho de Dados e Unidade de Controle Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br
Leia maisEstrutura e Funcionamento da CPU. Adriano Maranhão
Estrutura e Funcionamento da CPU Adriano Maranhão 1 S Relembrando S Compiladores de linguagens ao fazer a conversão da linguagem de alto nível para chegar na fase da linguagem de baixo nível como assembly
Leia maisUniversidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação. Arquitetura de Computadores I. Organização Básica do Computador
Universidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação Arquitetura de Computadores I Organização Básica do Computador Gabriel P. Silva Ementa Unidade 2: Organização Lógica e Funcional
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução
Leia maisAula 16: UCP: Conceitos Básicos e Componentes
Aula 16: UCP: Conceitos Básicos e Componentes Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Conceitos Básicos e Componentes FAC 1 / 34
Leia maisMIPS Implementação. sw) or, slt. Vamos examinar uma implementação que inclui um subconjunto de instruções do MIPS
Datapath do MIPS MIPS Implementação Vamos examinar uma implementação que inclui um subconjunto de instruções do MIPS Instruções de leitura (load lw) e de escrita (store sw) Instruções aritméticas e lógicas
Leia maislw, sw add, sub, and, or, slt beq, j
Datapath and Control Queremos implementar o MIPS Instruções de referência à memória: lw, sw Instruções aritméticas e lógicas: add, sub, and, or, slt Controle de fluxo: beq, j Cinco passos de execução Busca
Leia maisUnidade Central de Processamento UCP (CPU)
Unidade Central de Processamento UCP (CPU)! Arquitetura Convencional (Von Neumann) UCP BARRAMENTO MEMÓRIA PRINCIPAL ENTRADA E SAÍDA ! Visão geral da CPU UC - UNIDADE DE CONTROLE REGISTRADORES A B C D ALU
Leia mais25/8/2010. Praticamente todas as arquiteturas de computadores fornecem mais de um modo de
Arquitetura de Computadores Conjuntos de Instruções: modos de endereçamento e formatos Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Endereçamento Normalmente, os campos de endereço são
Leia maisProcessador: Conceitos Básicos e Componentes
Processador: Conceitos Básicos e Componentes Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado nos slides de Fernanda Passos Cristina Boeres (IC/UFF)
Leia maisCOMPUTADOR 2. Professor Adão de Melo Neto
COMPUTADOR 2 Professor Adão de Melo Neto Modelo Barramento de Sistema É uma evolução do Modelo de Von Newman. Os dispositivos (processador, memória e dispositivos de E/S) são interligados por barramentos.
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 maisOrganização de Computadores
Organização de Computadores Aula 27 Estrutura e Função da CPU Rodrigo Hausen 17 de novembro de 2011 http://cuco.pro.br/ach2034 1/33 Apresentação 1. Bases Teóricas 2. Organização de computadores... 2.5.
Leia maisJVM Máquina Virtual Java
JVM Máquina Virtual Java Cristiano Damiani Vasconcellos cristiano.vasconcello@udesc.br JVM - Introdução Processador virtual; Possui seu próprio conjunto de instruções; Arquitetura baseada em pilha de operandos;
Leia maisNível da Arquitetura do Conjunto de Instruções. Ronaldo de Freitas Zampolo
Nível da Arquitetura do Conjunto de Instruções Ronaldo de Freitas Zampolo Tópicos Introdução Visão geral do nível ISA Tipos de dados Formatos de instruções Endereçamento Tipos de instruções Fluxo de controle
Leia 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 maisInfraestrutura de Hardware. Implementação Monociclo de um Processador Simples
Infraestrutura de Hardware Implementação Monociclo de um Processador Simples Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereço
Leia maisMicroprocessadores CPU. Unidade de Controle. Prof. Henrique
Microprocessadores CPU Unidade de Controle Prof. Henrique Roteiro Registradores; Unidade de Controle Níveis de Complexidade Introdução Um sistema microprocessado conta com diversos dispositivos para um
Leia maisPARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR
PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Instruções são representadas em linguagem de máquina (binário) E x i s t e m l i n g u a g e n
Leia maisORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira
ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES Prof. Juliana Santiago Teixeira julianasteixeira@hotmail.com INTRODUÇÃO INTRODUÇÃO O processador é o componente vital do sistema de computação, responsável
Leia maisRelembrando desempenho...
Parte 5 OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson, 2ª e 3ª Ed. e do Livro do 5ª Ed. A parte final do material corresponde às aulas
Leia maisCapítulo 6 Nível do Sistema Operacional
Capítulo 6 Nível do Sistema Operacional - Sistema Operacional: Programa que, do ponto de vista do programador, adiciona uma grande quantidade de instruções e funcionalidades bem além das disponibilizadas
Leia maisUnidade Central de Processamento 2. Registradores
Unidade Central de Processamento 2 Registradores Conceitos Fundamentais Arquitetura da CPU Unidade de Controle Registradores Barramento interno Unidade lógica e Aritmética Registradores Conjunto de unidades
Leia maisRelembrando desempenho...
Parte 5 OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson, 2ª e 3ª Ed. e do Livro do 5ª Ed. A parte final do material corresponde às aulas
Leia maisMicrocontrolador FemtoJava Pipeline (Low Power)
Microcontrolador FemtoJava Pipeline (Low Power) UFRGS Programa de Pós graduação em Computação CMP 237 Arquitetura e Organização de Processadores Prof. Dr. Flávio Rech Wagner Aluno: Paulo Roberto Miranda
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 maisORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 04: ASPECTO BÁSICO DO PROJETO DE UMA CPU SIMPLES E LINGUAGEM DE MONTAGEM Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia
Leia maisNível da Arquitetura do Conjunto das Instruções
Fluxo Seqüencial de Controle e Desvios (1) Nível da Arquitetura do Conjunto das Instruções (Aula 13) Fluxo de Controle Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Fluxo
Leia maisOrganização e Arquitetura de Computadores INTRODUÇÃO
Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo
Leia maisSistemas Processadores e Periféricos Aula 2 - Revisão
Sistemas Processadores e Periféricos Aula 2 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão
Leia maisPipeline. Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio. Estrutura da CPU. Em cada ciclo, a CPU deve:
Pipeline Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio William Stallings - Computer Organization and Architecture, Chapter 12 [Trad. E.Simões / F.Osório] Estrutura da CPU Em cada ciclo,
Leia maisArquiteturas de Computadores
Arquiteturas de Computadores Implementação monociclo de IPS Fontes dos slides: Patterson & Hennessy book website (copyright organ Kaufmann) e Dr. Sumanta Guha Implementando IPS Implementação do conjunto
Leia maisInfraestrutura de Hardware. Instruindo um Computador
Infraestrutura de Hardware Instruindo um Computador Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereço Operando ALU Temp Datapath
Leia mais2. A influência do tamanho da palavra
PROCESSAMENTO 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
Leia maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas
Leia maisUnidade de Controle. UC - Introdução
Unidade de Controle Prof. Alexandre Beletti (Cap. 3 Weber, Cap.8 Monteiro, Cap. 10,11 Stallings) UC - Introdução Para gerenciar o fluxo interno de dados e o instante em que ocorrem as transferências entre
Leia maisUnidade II. Organização de Computadores. Prof. Renato Lellis
Unidade II Organização de Computadores Prof. Renato Lellis Ciclo de Execução da Instrução 1. Trazer a próxima instrução da memória até o registrador 2. Alterar o contador de programa para indicar a próxima
Leia maisArquitectura de Computadores MEEC (2014/15 2º Sem.)
Arquitectura de Computadores MEEC (2014/15 2º Sem.) Unidade de Controlo Prof. Nuno Horta PLANEAMENTO Introdução Unidade de Processamento Unidade de Controlo Arquitectura do Conjunto de Instruções Unidade
Leia maisProf. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 2 Estrutura de um processador Prof. Leonardo Augusto Casillo Arquitetura de Von Neumann: Conceito de programa armazenado; Dados
Leia maisOrganização de Computadores
Organização de Computadores Aula 25 Conjunto de Instruções: Modos de Endereçamento e Formatos Rodrigo Hausen 11 de novembro de 2011 http://cuco.pro.br/ach2034 1/26 Apresentação 1. Bases Teóricas 2. Organização
Leia maisAlgoritmos Computacionais
UNIDADE 1 Processador e instruções Memórias Dispositivos de Entrada e Saída Software ARQUITETURA BÁSICA UCP Unidade central de processamento MEM Memória E/S Dispositivos de entrada e saída UCP UNIDADE
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Estrutura e Função do Processador Material adaptado, atualizado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Organização
Leia maisUCP 8051 (parte 02) Professor Adão de Melo Neto
UCP 85 (parte 2) Professor Adão de Melo Neto Barramento de endereços UCP 85 É unidirecional (6 BITS), porque a informação flui apenas em uma direção, da CPU para a memória ou para os elementos de E/S.
Leia maisArquitetura de Computadores. Ciclo de Busca e Execução
Arquitetura de Computadores Ciclo de Busca e Execução Ciclo de Busca e Execução Início Buscar a próxima instrução Interpretar a instrução Executar a instrução Término Funções realizadas pela UCP Funções
Leia mais18/10/2010. Unidade de Controle Controle. UC Microprogramada
Arquitetura de Computadores Unidade de Controle Controle Microprogramado Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO UC Microprogramada
Leia maisWilliam Stallings Arquitetura e Organização de Computadores 8 a Edição. Capítulo 12 Estrutura e função do processador
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 12 Estrutura e função do processador slide 1 Estrutura da CPU CPU precisa: Buscar instruções. Interpretar instruções. Obter
Leia maisArquitetura de Microprocessadores
Arquitetura de Computadores UNIDADE 4 Arquitetura de 05-02-2019 Sumário Arquitetura de um microprocessador; Acesso à memória; A arquitetura de von Neumann apenas mostra a conceção ideológica do que deveria
Leia maisTópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06
Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação COMO UM PROGRAMA ESCRITO
Leia maisSistemas Digitais Transferências entre Registradores
Sistemas Digitais Transferências entre Registradores Referência Bibliográfica: Logic and Computer Design Fundamentals Mano & Kime Adaptações: josé artur quilici-gonzalez Sumário Transferências entre Registradores
Leia maisINTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL
INTRODUÇÃO À TECNOLOGIA DA ORGANIZAÇÃO COMPUTACIONAL PROFESSOR CARLOS MUNIZ ORGANIZAÇÃO DE UM COMPUTADOR TÍPICO Memória: Armazena dados e programas Processador (CPU - Central Processing Unit): Executa
Leia maisX Y Z A B C D
29) A seguinte tabela verdade corresponde a um circuito combinatório de três entradas e quatro saídas. Obtenha a tabela de programação para o circuito em um PAL e faça um diagrama semelhante ao apresentado
Leia maisOtimização de Execução em Processadores Modernos. William Stallings - Computer Organization and Architecture, Chapter 12 [Trad. E.Simões / F.
Prefetch & Pipeline Otimização de Execução em Processadores Modernos Ciclos de Operação da CPU Estágios do Pipeline Previsão de Desvio William Stallings - Computer Organization and Architecture, Chapter
Leia maisArquitectura de Computadores LEEC/MEEC (2006/07 2º Sem.)
Arquitectura de Computadores LEEC/MEEC (2006/07 2º Sem.) Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Conjunto de Instruções
Leia maisNotas de Aula Guilherme Sipahi Arquitetura de Computadores
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Endereçamento O Campo de endereço em uma instrução é pequeno. Para referenciar uma faixa de endereços maior na memória principal, ou em alguns
Leia maisEstrutura Básica de um Computador
SEL-0415 Introdução à Organização de Computadores Estrutura Básica de um Computador Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira INTRODUÇÃO n Organização Æ implementação do hardware, componentes, construção
Leia maisCompiladores Geração de Código
Compiladores Geração de Código Fabio Mascarenhas - 2013.2 http://www.dcc.ufrj.br/~fabiom/comp O Back-end Até agora vimos as fases do front-end do compilador: Análise Léxica Análise Sintática Análise Semântica
Leia maisOrganização de computadores. Aula 05
Organização de computadores Aula 05 2 Níveis de um computador Computadores possuem uma série de níveis Cada um construído sobre seus antecessores Cada um representa uma abstração distinta com diferentes
Leia maisTrabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas
Trabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas Material a ser utilizado: Kits de desenvolvimento de sistemas microprocessados para aplicações em DSP Texas DSK-TMS320C67xx. Apresentação
Leia maisOrganização de Unidades de Processamento
Organização de Unidades de Processamento João Canas Ferreira Março de 2004 Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. 5) c JCF, 2004 ASPD (FEUP/LEEC)
Leia maisULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade.
PROCESSADOR ULA Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade. ULA Uma ULA típica pode realizar as operações artiméticas: - adição; - subtração; E lógicas: - comparação
Leia maisIntrodução à Computação: Máquinas Multiníveis
Introdução à Computação: Máquinas Multiníveis 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 maisESTRUTURA E FUNCIONAMENTO DO COMPUTADOR
ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR Prof. Filippo Valiante Filho http://prof.valiante.info Estrutura do Computador Computador CPU (Central Processing Unit) Sistema de Armazenamento (Memórias) Sistema
Leia maisUNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES
UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES ESSA APRESENTAÇÃO POSSUI QRCODE PARA ACESSAR INFORMAÇÕES ADICIONAIS AOS SLIDES. Código QR Reader Código QR INTRODUÇÃO A ARQUITETURA DE COMPUTADORES Qual
Leia maisArquitectura de Computadores
Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Unidade de Controlo Conjunto de Instruções (CPU) Unidade de Entrada/Saída
Leia maisOrganização de Computadores Aula 05
Organização de Computadores Aula 05 Componente Computador Unidade Central de Processamento (CPU) Memória Unidades de E/S Barramentos Modelo de Von Neumann Apresentado em 1945 Conceito de programa armazenado
Leia maisNotas de Aula Guilherme Sipahi Arquitetura de Computadores
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Ciclo de instruções Ciclo de instruções / Pipelining Subciclos de um ciclo de instruções: - Busca: traz a próxima instrução até a CPU - Execução:
Leia maisTodo processador é constituído de circuitos capazes de realizar algumas operações primitivas:
Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas: Somar e subtrair Mover um dado de um local de armazenamento para outro Transferir um dado para um dispositivo
Leia maisConjunto de Instruções. Prof. Leonardo Barreto Campos 1
Conjunto de Instruções Prof. Leonardo Barreto Campos 1 Sumário Introdução; CISC; RISC; MIPS; Representação de Instruções; SPIM; Prof. Leonardo Barreto Campos 2/58 Sumário Operações Lógicas; Instruções
Leia maisArquitetura de Computadores. Conjunto de Instruções
Arquitetura de Computadores Conjunto de Instruções Arquitetura do Conjunto das Instruções ISA (Instruction Set Architecture) Traduz para uma linguagem intermediária (ISA) os vários programas em diversas
Leia maisção de Computadores II
Universidade Federal de Pelotas Instituto de Física e Matemática Departamento de Informática Bacharelado em Ciência da Computação Arquitetura e Organizaçã ção de Computadores II Aula 2 2. MIPS monociclo:
Leia maisSímbolos e abreviaturas utilizadas na descrição das instruções
Símbolos e abreviaturas utilizadas na descrição das instruções acumulador registo A addr endereço de 16 bits data quantidade de 8 bits data 16 quantidade de 16 bits byte 2 segundo byte da instrução byte
Leia maisInfraestrutura de Hardware. Implementação Multiciclo de um Processador Simples
Infraestrutura de Hardware Implementação Multiciclo de um Processador Simples Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e
Leia mais2º Estudo Dirigido CAP 3
2º Estudo Dirigido CAP 3 1. Cite três exemplos de aspecto na definição e implementação de uma arquitetura que são influenciados pelas características do conjunto de instruções? R.: Operações lógicas e
Leia maisArquitectura de Computadores (ACom)
Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 5.0 - Português Aula N o 13: Título: P3 - Sumário: Unidade de do P3 (micro-sequenciador, teste de variáveis, memórias de mapeamento,
Leia maisEspecificação do Projeto de Processador RISC
UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO Especificação do Projeto de Processador RISC mycpu Neste documento é apresentada a especificação do projeto da disciplina Organização e Arquitetura de Computadores
Leia maisProcessamento e Linguagem de Máquina. O processador Programação Assembler (Linguagem de Máquina)
Processamento e Linguagem de Máquina O processador Programação Assembler (Linguagem de Máquina) O PROCESSADOR Literatura Tanenbaum e Stallings Abordagens similares mas divergentes Foco maior em funcionamento
Leia maisORGANIZAÇÃO DE COMPUTADORES O PROCESSADOR E SEUS COMPONENTES
ORGANIZAÇÃO DE COMPUTADORES O PROCESSADOR E SEUS COMPONENTES Prof. Dr. Daniel Caetano 2014-1 Lembretes Recordar a organização interna da CPU Conhecer os registradores de controle Apresentar o ciclo de
Leia mais14/3/2016. Prof. Evandro L. L. Rodrigues
SEL 433 APLICAÇÕES DE MICROPROCESSADORES I SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Prof. Evandro L. L. Rodrigues Tópicos do curso Conceitos básicos - Aplicações e utilizações dos microcontroladores
Leia maisUnidade de Controle. Sinais e temporização da busca de instrução. Prof. Eduardo Appel
Unidade de Controle Prof Eduardo Appel appel@upftchebr Uma CPU de um microprocessador pode interpretar o conteúdo de uma palavra de memória como sendo o código de instrução Mas pergunta-se: Qual o número
Leia mais