Organização de Computadores Implementação da UCP Construção do caminho de dados Controle Implementação monociclo.

Slides:



Advertisements
Apresentações semelhantes
Microcontroladores Uma visão geral.
Advertisements

Parte 1: Organização de Computadores
Organização de Computadores I
CPU: Controle e processamento
WebDesign Redes de Computadores Aula 05
Arquitetura e organização de computadores
Arquitetura e organização de computadores.
Técnicas para operações E/S
Organização de computadores Professora Marcela Santos Aula 7 – A arquitetura de von Neumann.
Autor: Salvador P. Gimenez
A Arquitetura: conjunto de instruções
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 03: Computador.
Unidade Lógica e Aritmética Introdução à Ciência da Computação
Sistemas Digitais Projeto RTL – Unidade de Execução
Unidades de Execução e de Controle Sistemas Digitais.
Exemplo de arquitetura registrador-registrador- MIPS
Processador Fluxo de Dados e Controle
Processo de Pipelining (exemplo da lavanderia)
Sistemas Operacionais
Pipeline.
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
Rganização de Computadores Melhorias de Desempenho com Pipelines - Parte B - Capítulo 6 – Patterson & Hennessy Organização de Computadores Melhorias de.
Prof. Fábio M. Costa Instituto de Informática Universidade Federal de Goiás rganização de Computadores Organização do Processador - Parte A Capítulo 5.
Professor: Erivelto Tschoeke – UDESC/CEPLAN
O MICROPROCESSADOR INTEL 8080
Sistemas Digitais Microprocessados
Autor: Fernando de Mesentier Silva
Processadores – Aula 3 Professor: André Luis Meneses Silva
Fundamentos do Projeto Lógico
Arquitetura de Computadores
Processadores – Aula 3 Professor: André Luis Meneses Silva
Processadores Livro Introdução à Organização de Computadores Capítulo: 6 – Processadores.
Prof. Felipe Ferreira de Oliveira
Unidade Central de Processamento
Unidade Central de Processamento
Unidade Central de Processamento
Funcionamento básico de um computador
Prof.: Vagner Pinto Borges Prof.: Vagner Pinto Introdução à Arquitetura e Organização.
Representação de Instruções
Pipeline 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.
UCP Memória Principal Controladores E/S
Unidade Central de Processamento UCP
Organização de Computadores
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Processamento de dados na UCP e memória UCP
Contextualização de Paralelismo em nível de instrução
Arquitetura de Computadores
Unidade Central De Processamento: Processador
Organização e Arquitetura de Computadores
Unidade Central De Processamento: Processador
DCC 001 Programação de Computadores 2o Semestre de 2011
Organização e Arquitetura de Computadores
Tudo sobre o Processador
Parte 3 Seção de Dados e Unidade de Controle
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.
Arquitetura de Computadores
O que devem fazer os Microprocessadores ?
Afonso Ferreira Miguel
Arquitetura de Microcomputadores
Arquitetura de computadores
A linguagem de Máquina – Instruções Básicas
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:
 Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento.
TRABALHO AVALIATIVO ALUNO: FRANCISCO HELIÉSUS DE MEDEIROS MATÉRIA: ORGANIZAÇÃO DE COMPUTADORES.
Construção de Via de dados Trabalho Avaliativo do Primeiro Bimestre. Marcos André de Sena Silva.
Microprogramação Controlador Microprogramado RI Microcomandos UAL MICROMEMÓRIA MPC MIR DECOD.... Vamos então construir o controlador microprogramado do.
Caminho de Dados (aula passada)
Transcrição da apresentação:

Organização de Computadores Implementação da UCP Construção do caminho de dados Controle Implementação monociclo

Organização de Computadores Conceitos Gerais para Implementação do Processador Conceito de caminho de dados e controle Caminho dos bits de instrução e dados Utilização de clock, lógica combinacional e seqüencial Começa uma implementação simples e iterativamente vai melhorando

Organização de Computadores Performance Medida de performance baseada em: – número de instruções – período do clock – ciclos de clock por instrução (CPI) O primeiro é um fator do programa, mas os dois últimos são baseados na implementação do processador

Organização de Computadores Subconjunto de instruções Para simplificar o estudo do projeto do processador, o foco será dado em um subconjunto de instruções do MIPS: – Memória: lw e sw – Aritmética: add e addi – Desvio: beq O método de implementação das outras instruções ocorre naturalmente

Organização de Computadores Revisão do Formato das Instruções R-FORMAT – add regA regB destreg o p: código de operação regA: registrador com primeiro operando fonte regB: registrador com segundo operando fonte destreg: registrador que guarda resultado da operação 00regA rd regB opdestreg 7 bits 3 bits 13 bits3 bits

Organização de Computadores Revisão do Formato das Instruções I-Format – lw regA regB imm – beq regA regB imm – addi regA regB imm Desvio utiliza endereço PC relativo (PC imm) op regB regA 7 bits 3 bits 16 bits imm 3 bits

Organização de Computadores Função básica da CPU Buscar uma instrução na memória Interpretar qual operação é representada pela instrução Trazer (se for o caso) os operandos para a CPU Executar a operação Armazenar (se for o caso) os dados de saída Repetir o processo com uma nova instrução  etapas do Ciclo de Instrução

Organização de Computadores Projeto Lógico Duas definições importantes – Combinacional - saída depende somente das entradas Exemplo: ALU – Seqüencial: elementos contem informações de estado Exemplo: Registradores

Organização de Computadores Elementos Combinacionais 3 M u x Select 32 A 32 B 32 C Soma Somador Controle da UAL Zero Resultado da UAL UAL

Organização de Computadores Banco de Registradores Contém 8 registradores – Dois barramentos de 32 bits de saída Dado lido #1 e Dado lido #2 – Um barramento de 32 bits de entrada Dado a ser escrito – Registrador 0 tem o valor 0 – Registrador selecionado por Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito seleciona registro que recebe Dado a ser escrito quando EscReg=1 Dados Dado lido #1 Dado lido #2 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado Número dos registradores Dado de escrita EscReg

Organização de Computadores Memória Um barramento de entrada: Dado a ser escrito Um barramento de saída: Dado lido Seleção de endereço – Endereço seleciona a palavra a ser colocada em Dado lido – Para escrever no endereço, seta EscMem para 1 – Para ler do endereço, seta LerMem para 1 EscMem LerMem Endereço Dado a ser escrito Dado lido

Organização de Computadores Passos do Projeto De acordo com a arquitetura do conjunto de instruções, define-se uma estrutura organizacional macro (número de unidades funcionais, por exemplo) Essa estrutura é refinada para definir os componentes do caminho de dados, sua interconexão e pontos de controle Estrutura de controle é definida O projeto do caminho de dados e controle é refinado para projeto físico e validação funcional

Organização de Computadores Busca da Instrução Busca a instrução na memória, cujo endereço está no contador de programa PC Incrementa o contador de programa PC de 1 PC 1 Memória de Instruções Endereço de leitura Instrução Somador

Organização de Computadores Instrução de Soma add regA regB destreg – Mem[PC] Obtém instrução da memória – R[destreg] R[regA] + R[regB] Executa operação de soma – PC PC + 1 Calcula próximo endereço

Organização de Computadores Caminho de Dados para Instruções do tipo R R[destreg] R[regA] op R[regB] – Controle da UAL e de EscReg baseado na instrução decodificada – Reg a ser lido #1, Reg a ser lido #2, Reg a ser escrito são regA, regB, destreg 3 Resultado da UAL Zero UAL Operação da UAL Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Dado lido #1 Dado lido #2 Registradores EscReg 3 3 3

Organização de Computadores Instrução de Carga lw regA regB imm – mem[PC] Busca instrução na memória – End R[regA]+SignExt(imm) Calcula o endereço da memória – R[regB] Mem[End] Carrega os dados no registrador – PC PC+1 Calcula o próximo endereço op regAregBimediato 3 bits 16 bits 0 7 bits

Organização de Computadores Caminho de Dados para Instrução de Carga Registradores EscReg Exten- são de sinal Endereço UAL Dado lido Memória de dados Dado a ser escrito Zero EscMem Operação da UAL LerMem Instrução EscReg Dado lido #1 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Dado lido # Resultado da UAL

Organização de Computadores Instrução de Armazenamento sw regA regB imm – mem[PC] Busca instrução na memória – End R[regA]+SignExt(imm) Calcula o endereço da memória – Mem[End] R[regB] Carrega os dados na memória – PC PC+1 Calcula o próximo endereço op regAregBimediato 3 bits 16 bits 0 7 bits

Organização de Computadores Dado lido Caminho de Dados para Instrução de Armazenamento EscReg Exten- são de sinal Endereço UAL Memória de dados Dado a ser escrito Zero EscMem Operação da UAL LerMem Resultado da UAL Instrução Registradores Dado lido #1 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Dado lido #

Organização de Computadores Instrução de Desvio Condicional beq regA regB imm – mem[PC] Busca instrução na memória – Cond R[regA]-R[regB] Calcula a condição de desvio – if (Cond eq 0) PC PC+1 + SignExt(imm) Calcula endereço PC relativo – else PC PC+1 Calcula o próximo endereço op regAregBimediato 3 bits 16 bits 0 7 bits

Organização de Computadores Instrução de Desvio Condicional PC+1 vindo do caminho de dados de busca de uma instrução Instrução Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Dado lido #1 Ddo lido #2 Exten- são de sinal Somador Soma Endereço alvo do desvio condicional Para a lógica de controle do desvio condicional UAL Zero Registradores EscReg Operação da UAL 3 3

Organização de Computadores Busca de Instrução e Instruções Aritm. e Lóg. e de Referência à Memória 1632 M u x M u x 3 M Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Registradores EscReg UAL fonte Exten- são de sinal Endereço UAL Resultado da UAL Dado lido Memória de dados Dado a ser escrito Zero EscMem Operação da UAL ULAparaReg LerMem PC 1 Endereço de leitura Instrução Memória de Instruções Somador RegDst MUXMUX

Organização de Computadores Caminho de Dados para Suportar Subconjunto das Instruções 1632 M u x M u x 3 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Registradores EscReg UAL fonte Exten- são de sinal Endereço UAL Resultado da UAL Dado lido Memória de dados Dado a ser escrito Zero EscMem Operação da UAL ULAparaReg LerMem PC 1 Endereço de leitura Instrução Memória de Instruções Somador M u x Resultado da UAL Somador FontePC RegDst MUXMUX

Organização de Computadores Caminho de Dados para Carregar PC PC incrementado normalmente Se instrução beq pode adicionar imm a PC M u x 3 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Registradores EscReg UAL fonte Exten- são de sinal UAL Resultado da UAL Zero Operação da UAL PC 1 Endereço de leitura Instrução Memória de Instruções Somador M u x Resultado da UAL Somador DvC RegDst MUXMUX

Organização de Computadores Juntando Todas as Partes 1632 M u x 3 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Registradores EscReg UAL fonte Exten- são de sinal UAL Resultado da UAL Zero Operação da UAL PC 1 Endereço de leitura Instrução Memória de Instruções Somador Resultado da UAL Somador DvC M u x PC M u x Endereço Dado lido Memória de dados Dado a ser escrito EscMem ULAparaReg LerMem RegDst 0 1 MUXMUX