Arquitetura de Microprocessadores

Documentos relacionados
Nome: N.º Ano: Turma: Turno: Responde às seguintes questões 1. Qual o primeiro nome do computador à base de transístores?

Unidade Central de Processamento UCP (CPU)

Arquitetura de computadores

SSC510 Arquitetura de Computadores 1ª AULA

Organização e Arquitetura de Computadores INTRODUÇÃO

Arquitetura e Organização de Computadores

Unidade Central de Processamento 2. Registradores

William Stallings Organização de computadores digitais. Capítulo 14 Operação da Unidade de Controle

Arquitetura de Microprocessadores

Organização e Projeto de Computadores

Arquitetura de Microprocessadores

ORGANIZAÇÃO DE COMPUTADORES O PROCESSADOR E SEUS COMPONENTES

Introdução à Computação: Arquitetura von Neumann

Responde às seguintes questões. 5. Quais as vantagens da utilização de transístores face às válvulas de vácuo?

UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES

William Stallings Organização de computadores digitais. Capítulo 11 Estrutura e função da CPU

Organização de Computadores Aula 05

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

SSC0112 Organização de Computadores Digitais I

Organização de Computadores 1

William Stallings Arquitetura e Organização de Computadores 8 a Edição. Capítulo 12 Estrutura e função do processador

Barramento. Prof. Leonardo Barreto Campos 1

Disciplina: Arquitetura de Computadores

ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR

2. A influência do tamanho da palavra

UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES

18/08/2015. Capítulo 2: Manipulação de dados. Arquitetura de Computadores. Capítulo 2: Manipulação de Dados

2. A influência do tamanho da palavra

Evolução dos computadores

CPU. CPU Unidade Central de Processamento. Função: leitura, escrita e processamento de dados

Arquitetura e Organização de Computadores

Arquitetura de Computadores Aula 10 - Processadores

Registradores. Os processadores possuem espaços específicos onde são guardados valores, os chamados registradores.

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Grupo I Resumo Histórico

Solução Lista de Exercícios Processadores

COMPUTADOR 2. Professor Adão de Melo Neto

EEC2104 Microprocessadores

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE DE CONTROLE E A INTERPRETAÇÃO DE INSTRUÇÕES. Prof. Dr. Daniel Caetano

a) Obtenha a tabela verdade das operações com 01 bit

Algoritmos Computacionais

Arquitetura de Microprocessadores

Organização e Arquitetura de Computadores I

Microcontroladores. Rafael Silva de Lima

14/3/2016. Prof. Evandro L. L. Rodrigues

Estrutura Básica de um Computador

LISTA 01 DE EXERCÍCIOS DO 4º BIMESTRE PARA ESTUDO NOME: NOME:

Prof. Leonardo Augusto Casillo

SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:

Infraestrutura de Hardware. Funcionamento de um Computador

Infraestrutura de Hardware. Implementação Multiciclo de um Processador Simples

Processador. Processador

Organização e Arquitetura de Computadores. Leslier S. Corrêa

Hardware e Software. Prof. Paulo Cesar F. de Oliveira, BSc, PhD

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE DE CONTROLE E A INTERPRETAÇÃO DE INSTRUÇÕES. Prof. Dr. Daniel Caetano

CPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3

Arquitetura e organização de computadores

Célula, Palavra, Ciclo de Instruções e Lógica Temporizada

Organização de Computadores

Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores

INTRODUÇÃO AOS SISTEMAS LÓGICOS INTRODUÇÃO

William Stallings Computer Organization and Architecture

Instruções de Máquina

Arquitetura de Microprocessadores

Universidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação. Arquitetura de Computadores I. Organização Básica do Computador

Programador/a de Informática

ARQUITETURA DE COMPUTADORES. Professor: Clayton Rodrigues da Siva

18/10/2010. Unidade de Controle Controle. UC Microprogramada

Instruções. Maicon A. Sartin

PSI3441 Arquitetura de Sistemas Embarcados

Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -

Nível da Microarquitetura

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE DE CONTROLE E A INTERPRETAÇÃO DE INSTRUÇÕES. Prof. MSc. Tiago Alves de Oliveira

Arquiteturas Von Neumann e Harvard

COMPUTADOR. Adão de Melo Neto

Notas de Aula Guilherme Sipahi Arquitetura de Computadores. Arquitetura de von Neumann

ULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade.

RELOGIO MEMÓRIA USO DA NUMERAÇÃO BINÁRIA. 02. Explique a função do barramento de endereços no Modelo Barramento de Sistemas.

Aula 12: Memória: Barramentos e Registradores

Micro-Arquiteturas de Alto Desempenho. Introdução. Ementa

Transcrição:

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 mudar no interior e nas ligações exteriores de um CPU Arquitetura Básica Tradicionalmente os microprocessadores assentam na mesma arquitetura elementar constituída pelos blocos apresentados na figura

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: Unidade de Descodificação: Esta unidade tem como função indicar qual o tipo de instrução (ler da memória, adicionar dois valores, etc) à unidade de controlo em linguagem que esta entenda (descodificada)

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: PC Program Counter: (Registo de Programa) guarda o endereço da próxima instrução a ser lida da memória. Basicamente é um apontador de posições de memória.

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: IR Instruction Register (Registo de Instrução) contém uma cópia da instrução a ser executada no momento.

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: SP Stack Pointer (Apontador de Pilha) tem como função guardar a informação de retorno à rotina que estava a ser executada antes de uma interrupção ter lugar.

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: R0 Rn - Registers (Unidade de registos) memórias internas onde são armazenados temporariamente dados e resultados com que o CPU trabalha.

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: Acumulador Registo associado à ALU que serve de buffer enquanto a outra entrada da ALU ainda não tem um valor carregado. Em alguns processadores serve também para guardar o resultado de cada operação.

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: Flags (Registos de estado) são responsáveis por guardar o estado resultante de cada operação realizada pela ALU. Por exemplo, se houver um overflow. Uma ALU que opere com palavras de 8 bits só lida com números de 0 255. Uma soma de dois valores pode originar um overflow 200 + 200 = 400 > 255, isto é um valor que não pode ser representado apenas com 8 bits

Arquitetura Básica Alguns blocos já foram apresentados, como a UC, a ALU e os diversos barramentos. Porém existem outros blocos: Registo Temporário Este registo é necessário para armazenar (servir de buffer) o resultado de uma operação realizada pela ALU enquanto o barramento de dados se encontra ocupado. Existem arquiteturas de microprocessadores que utilizam este registo na outra entrada da ALU prescindindo dele na saída.

Acesso à memória Já vimos como um programa é lido da memória, particularmente como decorre o ciclo de procura, descodificação e execução (fetch-decodeexecute cycle) Fase de procura (fetch)

Acesso à memória - Exemplo Através de um exemplo que consiste na leitura de um conteúdo de memória (um operando) para um registo interno do CPU explicar de forma muito simplificada como sucedem as etapas do ciclo mencionado anteriormente, no interior do microprocessador Fase de procura (fetch)

Acesso à memória - Exemplo Numa primeira fase o Programe Counter (PC) contém o endereço de K na memória onde se encontra a próxima instrução mover o valor (conteúdo) do endereço L da memória para o registo Ra. Consideremos que a posição de memória com o endereço L tem no seu conteúdo o valor 23. Fase de procura (fetch) I

Acesso à memória - Exemplo Numa segunda fase a Unidade de Controlo (UC) coloca no barramento de endereços o conteúdo de PC (K) e a através do barramento de controlo envia um comando de leitura do conteúdo da posição (endereço) K da memória. Fase de procura (fetch)ii

Acesso à memória - Exemplo Na fase seguinte a memória responde com o conteúdo dessa posição de memória (neste caso uma instrução) colocando-o no barramento de dados que o levará para o processador. Esta instrução é copiada para a IR (que passa a conter a instrução a ser executada no memento). Fase de procura (fetch) III O PC (Programe Counter) é também incrementado de um valor (passa a conter o endereço L), para apontar para a próxima posição de memória que contem o operando a retirar da memória e fica concluída o fetch.

Acesso à memória - Exemplo Na fase de descodificação (decode). A unidade de descodificação recebe a instrução presente na IR (Instruction Register), descodifica-a e entrega-a à UC numa linguagem que esta compreenda. Fase de descodificação Finalmente a UC (unidade de Controlo e descodificação, verifica qual é a operação que é necessário realizar e passa à fase de execução (execute). Verifica então que é necessário mover o conteúdo da posição L da memória para o registo Ra.

Acesso à memória - Exemplo Assim, volta a usar o barramento de controlo para indicar que vai ler da memória. Esta responderá com o valor presente na posição da memória com o endereço L, colocando-o no barramento de dados que o levará até ao registo Ra. O PC é novamente incrementado para apontar para a próxima instrução (M). Todo o processo anterior será repetido para as próximas instruções.

Operações com a ALU Como é que ALU atua quando é chamada a intervir no processamento de dados. Vamos aproveitar o valor do registo Ra, isto é, o valor 23 do exemplo anterior. Imaginemos que a instrução seguinte movia outro valor para o registo Rb através dos mesmos passos enunciados no acesso à memória. Para este exemplo usaremos Rb=7. Suponhamos que a próxima instrução era uma soma Ra=Ra+Rb. Assim o Ra no final deverá conter o resultado da soma Ra + Rb calculado pela ALU.

Operações com a ALU Colocar o valor do registo Ra no acumulador à entrada da ALU. Este registo é necessário para realizar a função de buffer, isto é para aguentar o valor 23 até que o valor do registo Rb seja colocado na outra entrada da ALU

Operações com a ALU Assim que as duas entradas da ALU tenham os operandos carregados, esta efetua a soma (uma vez que a instrução indica uma soma) e coloca-os num registo temporário. O resultado desta operação origina um tipo de variável de estado (FLAGS) que será diferente consoante o tipo de valor que for devolvido pela AlU.

Operações com a ALU O registo temporário também é necessário para servir de buffer. Acontece que o barramento de dados ainda está ocupado com o valor de Rb e se não houvesse este buffer o resultado da operação seria novamente introduzido na ALU, alterando o resultado final. Assim, quando o barramento ficar livre o resultado é finalmente escrito no resist Ra