Afonso Ferreira Miguel

Slides:



Advertisements
Apresentações semelhantes
CPU: Controle e processamento
Advertisements

Arquitetura e organização de computadores
Execução de Programas Partes de um programa: ‣ Dados
Técnicas para operações E/S
Autor: Salvador P. Gimenez
Arquitetura de Computadores
A Arquitetura: conjunto de instruções
Unidade Lógica e Aritmética Introdução à Ciência da Computação
Arquitetura dos Microprocessadores 8086 e 8088 Sistemas Embarcados.
Arquitetura dos Microprocessadores 8086 e 8088
MIPS MULTICICLO Fluxo de Dados e Controle
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
Sistemas Operacionais
Organização de Computadores Inserindo o Controle Identifica pontos de controle no caminho de dados – Busca da instrução – Operações lógicas e aritméticas.
Introdução à Informática
O MICROPROCESSADOR INTEL 8080
REPRESENTAÇÃO DE INSTRUÇÕES
Implementação da CPU Análise de um computador simplificado Implementação da Unidade de Controle para o computador simplificado.
Arquitetura de Computadores
Introdução à Programação
Processadores Livro Introdução à Organização de Computadores Capítulo: 6 – Processadores.
Unidade Central de Processamento
Unidade Central de Processamento
Unidade Central de Processamento
Funcionamento básico de um computador
Linguagem de Montagem.
Arquitetura Cleópatra Bloco de Controle (Instruções e Microinstruções)
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Computador Cleópatra Arquitetura e Programação.
UCP Memória Principal Controladores E/S
Organização de Computadores
ORGANIZAÇÃO DE COMPUTADORES
Sistemas Operacionais I
Organização de um computador
Prática de Programação Assembly 8086
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Pet computação UFPE Aula de apoio aos feras: Arquitetura de Computadores.
Processamento de dados na UCP e memória UCP
Arquitetura de Computadores
Unidade Central De Processamento: Processador
Organização e Arquitetura de Computadores
Unidade Central De Processamento: Processador
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
Técnico em Informática
Definição O processador é o C.I. mais importante do computador. Ele é considerado como o cérebro do computador e funciona como uma UCP – Unidade Central.
Eletrônica Digital II ELT013
Unidade de Controle.
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Arquitetura Cleópatra Bloco de Controle.
8088 Assembly Software Básico Mitsuo Takaki.
8 - 1 Organização Básica de Computadores e Linguagem de Montagem Ricardo Pannain ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM A pilha e subrotinas.
Tudo sobre o Processador
Parte 3 Seção de Dados e Unidade de Controle
Curso: Sistemas de Informação Tópico 5
Processador 2014/2015 Comunicação de Dados Ricardo Bento 12ºL.
Estrutura do Processador
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.
Introdução à Computação Componentes Básicos dos Computadores
Arquitetura de Computadores
O que devem fazer os Microprocessadores ?
Arquitetura de Computadores
Arquitetura de computadores
Arquitetura de Sistemas Operacionais
A linguagem de Máquina – Instruções Básicas
Sistemas Operacionais Arquitetura de Computadores
Pet computação UFPE Arquitetura Von Neumann. pet computação UFPE 1.Definição e tipos de arquitetura Quando falamos em arquitetura temos dois tipos a considerar:
Organização de Computadores Implementação da UCP Construção do caminho de dados Controle Implementação monociclo.
 Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento.
Construção de Via de dados Trabalho Avaliativo do Primeiro Bimestre. Marcos André de Sena Silva.
Arquitetura ARM Subrotinas.  Implementar uma sub-rotina requer dois passos: 1.Armazenar o endereço de retorno. 2.Desviar a execução para o endereço da.
Transcrição da apresentação:

Afonso Ferreira Miguel Microprocessador Afonso Ferreira Miguel

Transporte de informação; Microprocessador Princípios: Armazenamento; Transporte de informação; Processamento Lógico-Aritmético.

Microprocessador uP A BUS AX BX CX DX tempA tempB IR IP MA MD Entrada B Saída Z Entrada A IP MA MD

Microprocessador Registradores; uP A BUS AX BX CX DX tempA tempB IR IP Entrada B Saída Z Entrada A IP MA MD

Microprocessador Registradores Barramento; uP A BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A IP MA MD

Microprocessador uP Registradores Barramento; BUS Registradores Barramento; Unidade Lógico-Aritmética. Observar que são os mesmos princípios do Computador AX BX CX DX tempA tempB IR Entrada A Entrada B IP Saída Z MA MD

Registradores A uP BUS Pequenas células de memória que podem armazenar um Byte, Word, DWord. Assim, podemos armazenar um número dentro de cada um. AX BX CX DX tempA tempB IR MA MD Entrada B Saída Z Entrada A IP

Barramento Meio de comunicação entre os diversos módulos. uP A BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A IP MA MD

Transporte de dados A uP BUS Para transportar a informação de um módulo para outro, utilizamos o barramento. Representamos este transporte pela notação reversa: Destino  Origem AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A IP MA MD

Transporte de dados A uP BUS Assim, se possuirmos o número 10 em AX e queremos transferir para DX, podemos escrever: DX  AX AX = 10 BX CX DX = 10 DX tempA tempB IR Entrada B Saída Z Entrada A IP MA MD

ULA – Unidade Lógico-Aritmética uP BUS Unidade responsável por realizar operações como Soma (ADD), subtração (SUB), incremento (INC), entre outras... AX BX CX DX tempA tempB IR Entrada A Entrada B IP Saída Z MA MD

ULA – Unidade Lógico-Aritmética Esta unidade sempre recebe um ou dois parâmetros nas Entradas A e B,... Entrada A Entrada B Operação Saída Z

ULA – Unidade Lógico-Aritmética Esta unidade sempre recebe um ou dois parâmetros nas Entradas A e B, e a operação. Entrada A Entrada B Operação Saída Z

ULA – Unidade Lógico-Aritmética Como resultado destes sinais, ela gera uma resposta em sua saída! Entrada A Entrada B Operação Saída Z

ULA – Unidade Lógico-Aritmética Exemplo: Ao receber os valores 7 e 5 nos canais A e B da ULA respectivamente, e solicitarmos a operação ADD (soma)... 7 5 Entrada A Entrada B Operação ADD Saída Z

ULA – Unidade Lógico-Aritmética Ela responderá em sua saída com o valor da operação! 7 5 Entrada A Entrada B Operação ADD Saída Z 12

ULA – Unidade Lógico-Aritmética Se alterarmos apenas a operação, ela responde imediatamente! 7 - 5 = 2 7 5 Entrada A Entrada B Operação ADD SUB Saída Z 12 2

Microprocessador Como visto anteriormente, o microprocessador busca as instruções do programa a ser executado na memória.

Microprocessador A Para isto, ele utiliza dois registradores auxiliares MA e MD. uP BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA MD

Microprocessador A Através do MA, o microprocessador informa o endereço a ser acessado na memória. uP BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 3 MD

Microprocessador A O registrador MD tem a função de receber a instrução ou dado da memória apontado por MA. uP BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 3 MD JMP 2

Microprocessador Instrução Descrição Algumas instruções básicas em Assembly: Instrução Descrição MOV origem, destino destino  origem ADD p1, p2 p1  p1 + p2 JMP endereço IP  endereço

Microprocessador funcionando! uP BUS Ao ligarmos o microprocessador, ocorre um sinal de RESET que inicializa o registrador IP com ZERO. AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA MD

Microprocessador funcionando! uP BUS O registrador IP (instruction pointer) serve para indicar qual o endereço da próxima instrução na memória. AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA MD

Microprocessador funcionando! Como visto anteriormente, o uP realiza as seguintes atividades repetidas vezes: Busca de instrução (FETCH) onde IP é incrementado; Decodificação da instrução; Execução da instrução. As vezes ocorrem juntas ... Fetch 0 Fetch 1 Decod 0 Decod 2 Exec 0 Exec 1 Primeira instrução Segunda instrução

FETCH ... Para realizar o FETCH, o uP realiza os seguintes passos: A uP BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA MD

FETCH ... Para realizar o FETCH, o uP realiza os seguintes passos: MA  IP A uP BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 0 MD

FETCH ... Para realizar o FETCH, o uP realiza os seguintes passos: MA  IP MD  Memória A uP BUS AX BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 0 MD=MOV AX,0

FETCH ... Para realizar o FETCH, o uP realiza os seguintes passos: MA  IP MD  Memória IR  MD A uP BUS AX BX CX DX tempA tempB IR=MOV AX,0 Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 0 MD=MOV AX,0

INC PC ... Após o FETCH de cada instrução, o IP precisa ser incrementado através da ULA, para apontar para a próxima instrução... A uP BUS AX BX CX DX tempA tempB IR=MOV AX,0 Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 0 MD=MOV AX,0

INC PC ... uP Para isto, são realizados os seguintes passos: tempA  IP A uP BUS AX BX CX DX tempA tempA = 0 tempB IR=MOV AX,0 Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 0 MD=MOV AX,0

INC PC ... uP Para isto, são realizados os seguintes passos: tempA  IP ULA  INC (A) A uP BUS AX BX CX DX tempA = 0 tempA tempB IR=MOV AX,0 Entrada B Saída Z Entrada A Memória IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 INC A MA = 0 1 MD=MOV AX,0

INC PC ... uP Para isto, são realizados os seguintes passos: tempA  IP ULA  INC (A) IP  ULA A uP BUS AX BX CX DX tempA = 0 tempA tempB IR=MOV AX,0 Entrada B Saída Z Entrada A Memória IP = 1 IP = 0 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 INC A MA = 0 1 MD=MOV AX,0

Execução ... uP Para EXECUTAR a instrução MOV AX,0 o uP apenas realiza a transferência: AX  0 A uP BUS AX AX = 0 BX CX DX tempA tempB IR=MOV AX,0 Entrada B Saída Z Entrada A Memória IP = 1 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 0 MD=MOV AX,0

Microprocessador funcionando! Como visto anteriormente, após a execução da primeira instrução, um novo ciclo se inicia... ... Fetch 0 Fetch 1 Decod 0 Decod 2 Exec 0 Exec 1 Segunda instrução Primeira instrução

FETCH (segunda instrução) ... MA  IP A uP BUS AX = 0 BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 1 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 1 MD

FETCH (segunda instrução) ... MA  IP MD  Memória A uP BUS AX = 0 BX CX DX tempA tempB IR Entrada B Saída Z Entrada A Memória IP = 1 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 1 MD=MOV BX,1

FETCH (segunda instrução) ... MA  IP MD  Memória IR  MD A uP BUS AX = 0 BX CX DX tempA tempB IR=MOV BX,1 Entrada B Saída Z Entrada A Memória IP = 1 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 1 MD=MOV BX,1

Execução (segunda instrução)... E a segunda instrução é executada... MOV BX,1 BX  1 A uP BUS AX = 0 BX = 1 BX CX DX tempA tempB IR=MOV BX,1 Entrada B Saída Z Entrada A Memória IP = 1 MOV AX,0 MOV BX,1 ADD AX,BX JMP 2 ... 1 2 3 4 MA = 1 MD=MOV BX,1