Processador executa instruções

Documentos relacionados
Tiago Alves de Oliviera

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

Introdução I. Organização e Arquitetura de Computadores. Sequência 15 Parte Operativa do MIPS - I. Introdução II.

Caminho de Dados e Unidade de Controle

Arquitectura de Computadores II. Execução de Instruções em Vários Ciclos Máquina

Organização de um processador

Execução concorrente de instruções

Organização de um processador

3. Considere o seguinte código executado no processador pipeline da figura abaixo.

Infra-estrutura de Hardware

Desenho do Processador

Procedimentos. Sistemas de Computação

Processador MIPS. Datapath e Unidade de Controle. Componente do processador que realiza operações aritméticas

Arquiteturas de Computadores

5. O Processador Datapath e Unidade de Controle

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

Sistemas de Computação. Instruções de Linguagem de Máquina

TCC Organização de Computadores I Turma :A1 Lista 3-GABARITO. 1. A figura abaixo mostra o diagrama da implementação para a UCP estudada em sala.

UNIOESTE Universidade Estadual do Oeste do Paraná Departamento de Engenharias e Ciências Exatas Campus de Foz do Iguaçu. Pipeline Conflitos

Licenciatura em Engenharia Informática e Computação. Arquitectura de Computadores Exame

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

Arquiteturas de Computadores

Organização de Computadores

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização.

Licenciatura em Engenharia Informática e Computação. Arquitectura de Computadores Exame Modelo

Relembrando desempenho...

Relembrando desempenho...

Fundamentos de Arquiteturas de Computadores Turma :A1 Lista 3 Profa.: Simone Martins

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

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

UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

SSC510 Arquitetura de Computadores 1ª AULA

Arquitectura de Computadores II. Revisão e implementação do datapath do MIPS

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização. Resposta:

Expoente Mantissa Frac. UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

2. A influência do tamanho da palavra

Válido Rótulo Bloco bits 8 bits 8 bits 8 bits

Infra-estrutura de Hardware

Conteúdos: Debora, Edcarllos, livros! slides disponíveis!

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I

ção de Computadores II

PROGRAMAÇÃO I. Introdução

4. Modelo de Programação do DLX Introdução

Unidade Central de Processamento UCP (CPU)

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

Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO

Arquitectura de Computadores II. Revisão e implementação do datapath do MIPS

CPU Implementação. Multiciclo. Prof. Carlos Bazilio

Infra-estrutura de Hardware

Arquitectura de Computadores II. Pipelining (execução encadeada de instruções)

Infraestrutura de Hardware. Funcionamento de um Computador

Operações de Controle de Fluxo e Acesso a Memória. Na Aula Anterior... Nesta Aula. Instruções de Controle de Fluxo. if then - else.

O Processador: Via de Dados e Controle

Unidade de Controle. UC - Introdução

Processador. Processador

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

6. Pipelining. Figura Lavanderia analogia com o pipelining

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

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

CAPÍTULO 4 CAMINHO DE DADOS E CONTROLE

ção de Computadores I

Organização e Arquitetura de Computadores I

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

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

Conjunto de Instruções. Prof. Leonardo Barreto Campos 1

Introdução à Programação

Capítulo 6. Idéia básica

Arquitetura de Computadores. Ciclo de Busca e Execução

Linguagens de Programação Classificação

Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação

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

Organização e Arquitetura de Computadores I

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL

SSC0114 Arquitetura de Computadores

A Arquitetura: conjunto de instruções

Aula 17: UCP: Construindo um Caminho de Dados (Parte I)

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

III.2 - Princípios de Arquitetura

Especificação do Projeto de Processador RISC

UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

Programação: Compiladores x Interpretadores PROF. CARLOS SARMANHO JR

Infraestrutura de Hardware. Instruindo um Computador

Conceitos Básicos Processador

Arquitetura e Organização de Computadores

Compiladores. Introdução à Compiladores

CONJUNTO DE INSTRUÇÕES

SSC0112 Organização de Computadores Digitais I

Organização de Computadores μarquitetura. Na Aula Anterior... Introdução. Nesta Aula. MIPS-Monociclo. Formas de Organização 17/10/2016

INF 1005 Programação I

Aula 23: Noções de Compilação, Montagem, Link-edição, e Interpretação

Arquitetura de Computadores. Prof. Alexandro Baldassin. 1o semestre/2018

Disciplina: Arquitetura de Computadores

Organização e Arquitetura de Computadores I

Um Exemplo de Nível ISA: o IJVM. Pilhas. Pilhas. O Modelo de Memória da IJVM. Pilhas de Operandos. Nível ISA

2. A influência do tamanho da palavra

MIPS Implementação. sw) or, slt. Vamos examinar uma implementação que inclui um subconjunto de instruções do MIPS

3. Linguagem de Programação C

UCP: Construindo um Caminho de Dados (Parte I)

Arquitetura de Computadores Aula 10 - Processadores

Transcrição:

Capítlo 6 do Livro do ario onteiro Capítlo 5 (5., 5.2, 5. e 5.4) do Livro do Patterson http://www.ic.ff.br/~bora/fac! 2 Processador eecta instrções CP (central processing nit) CP (nida central processamento) Enreço da instrção está no! Registrador PC (program conter)! Conteúdo da instrção está no! Registrador IR (instrction register)! 4 Fnções processamento Fnções controle nida Lógica e Aritmética (LA,, AL) dados e registradores especiais estado (PSW program stats word) 5 6!

nida controle, relógio (clock) especiais PC program conter (CI contador instrções) IR instrction register (RI registrador instrção) RE registrador enreços memória (AR) RD registrador dados memória (DR) 7 8 P! P! 9 P! Constrção do caminho dados Controle Implementação monociclo 2 2!

Conceito caminho dados e controle Caminho dos bits instrção e dados tilização clock, lógica combinacional e seqüencial Começa com ma implementação simples e iterativamente vai melhorando edida performance baseada em: número instrções período do clock ciclos clock por instrção (CPI) O primeiro é m fator do programa, mas os dois últimos baseados na implementação do processador 4 Para simplificar o estdo do projeto do processador, o foco será dado em m sbconjnto instrções do IPS: emória: lw e sw Aritmética: add e addi Desvio: beq R-FORAT (tipo R registrador) add rega regb streg 25 24 22 2 9 8 6 5 2 rd op rega regb op: código operação rega: registrador com primeiro operando fonte regb: registrador com segndo operando fonte streg: registrador qe garda resltado da operação streg 7 bits bits bits bits bits bits 5 6 I-Format (tipo I imediato) lw rega regb imm sw rega regb imm beq rega regb imm addi rega regb imm Desvio tiliza enreço PC relativo (PC + + imm) 25 24 22 2 9 8 6 5 op regb rega imm 7 bits bits bits bits 6 bits Bscar ma instrção na memória Interpretar qal operação é representada pela instrção Trazer (se for o caso) os operandos para a CP Eectar a operação Armazenar (se for o caso) os dados saída Repetir o processo com ma nova instrção etapas do Ciclo Instrção 7 8!

Das finições importantes Elemento Combinacional - saída pen somente das entradas Eemplo: AL Elemento Seqüencial: elementos contêm informações estado Eemplo: Soma 2 A 2 B Controle Resltado S e l e c t 2 C 9 2 Contém 8 registradores Dois barramentos 2 bits saída e m barramento 2 bits entrada a ser Registrador tem o valor Registrador selecionado por Número dos registradores seleciona registrador qe recebe a ser qando = 2 2 2 s m barramento entrada: a ser m barramento saída: Seleção enreço Enreço seleciona a palavra a ser colocada em Escem Enreço a ser Lerem Para escrever no enreço, seta Escem para Para ler do enreço, seta Lerem para 2 22 De acordo com a arqitetra do conjnto instrções, fine-se ma estrtra organizacional macro (número nidas fncionais, por eemplo) Essa estrtra é refinada para finir os componentes do caminho dados, sa interconeão e pontos controle Estrtra controle é finida O projeto do caminho dados e controle é refinado para projeto físico e validação Bsca a instrção na memória, cjo enreço está no contador programa PC Incrementa o contador programa PC Enreço leitra emória Instrções Instrção fncional 2 24 4!

add rega regb streg em[pc] Obtém instrção da memória R[streg] R[regA] + R[regB] Eecta operação soma PC PC + Calcla próimo enreço R[streg] R[regA] op R[regB] Controle e baseado na instrção codificada,, Reg a ser rega, regb, streg Operação Resltado 25 26 lw rega regb imm mem[pc] memória Bsca instrção na End R[regA]+SignEt(imm) Calcla o enreço da memória R[regB] em[end] Carrega os dados no registrador PC PC+ Calcla o próimo enreço Instrção 6 Eten- 6 2 Operação Resltado Escem emória dados Enreço a ser Lerem 7 bits bits bits bits 6 bits op rega regb imediato 27 28 sw rega regb imm mem[pc] Bsca instrção na memória End R[regA]+SignEt(imm) Calcla o enreço da memória em[end] R[regB] Carrega os dados na memória PC PC+ Calcla o próimo enreço Instrção Eten- 6 2 Operação Escem emória dados Resltado Enreço a ser Lerem 7 bits bits bits bits 6 bits op rega regb imediato 29 5!

beq rega regb imm mem[pc] memória Bsca instrção na Cond R[regA]-R[regB] Calcla a condição svio if (Cond eq ) PC PC+ + SignEt(imm) Calcla enreço PC relativo else PC PC+ Calcla o próimo enreço 7 bits bits bits bits 6 bits op rega regb imediato PC+ vindo do caminho dados bsca ma instrção Instrção Ddo 6 Eten- 2 Soma Enreço alvo do svio condicional Operação Para a lógica controle do svio condicional 2 2 Enreço leitra Instrção emória Instrções 2 6 Eten- 2 2 fonte 2 Operação 2 Resltado 2 Escem emória dados Enreço a ser Lerem LAparaReg 2 2 Enreço leitra Instrção emória Instrções 2 6 Eten- 2 2 2 fonte 2 2 Resltado Operação Resltado 2 FontePC 2 emória dados Enreço a ser Escem Lerem 2 2 LAparaReg 2 4 PC incrementado normalmente Se instrção for beq po adicionar imm a PC + Enreço leitra Instrção emória Instrções 6 Eten- 2 fonte Resltado Operação Resltado 2 Enreço leitra Instrção emória Instrções 2 PC + 2 2 Resltado Operação Escem 2 fonte emória 2 Resltado 2 dados Enreço 2 2 2 a ser 6 Eten- 2 Lerem 2 2 LAparaReg 2 5 6 6!

Intifica pontos controle no caminho dados Bsca da instrção Operações lógicas e aritméticas emória Intifica tipo controle do Flo dados através mltipleadores Escrita dados Deriva sinais controle para cada instrção Coloca todos os sinais jntos 7 Enreço leitra Instrção emória Instrções 6 Eten- 2 8 PC + fonte Resltado Operação Resltado Don t care () = Enreço leitra Instrção emória Instrções = PC + = 6 Eten- 2 fonte Resltado Operação =op Resltado emória dados Enreço a ser Escem Lerem LAparaReg = Enreço leitra Instrção emória Instrções PC + = 6 Eten- 2 fonte = Resltado Operação =Add Resltado emória dados Enreço a ser Escem Lerem = LAparaReg 9 4 PC + PC+ Resltado Resltado Enreço leitra Instrção emória Instrções = 6 Eten- 2 fonte = Operação =Add Resltado emória dados Enreço a ser Escem Lerem = LAparaReg = Enreço leitra Instrção emória Instrções = 6 Eten- 2 fonte Operação =Sb Resltado = emória dados Enreço a ser Escem Lerem LAparaReg = 4 42 7!

PC + Resltado Enreço leitra Instrção emória Instrções 6 Eten- 2 fonte Operação Resltado emória dados Enreço a ser Escem Lerem LAparaReg 4 44 45 46 Enreço leitra Instrção emória Instr [24:22] op Instrções R e g D s t fonte LAparaReg Controle Principal Lerem Escrem Op2 PC + 6 Eten- 2 fonte Resltado Operação Resltado emória dados Enreço a ser Escem Lerem LAparaReg Vantagens m ciclo relógio por instrção torna lógica mais simples Desvantagens Ciclo clock terminado pela instrção qe leva maior tempo Instrção carga tiliza cinco nidas fncionais em série tempo acesso à memória instrções + tempo acesso ao banco registradores + retardo + tempo acesso à memória dados + tempo estabilida dos dados para o banco registradores Dplicação nidas fncionais 48 49 8!

m programa é em ma lingagem qe a máqina não enten Lingagem alto nível É necessário tradzir o programa para a lingagem binária http://www.ic.ff.br/~bora/orgcomp! 5 5 Programa Fonte em C! compilador! Programa em Assembly! Código objeto em lingagem binária! ódlo! montador!...! Código objeto em lingagem binária! Rotina biblioteca! Link-editor! 52 5 Programa eectável! loar! emória! Compilador tradz o programa em lingagem alto nível para lingagem montagem Compilador eecta três fnções: Análise léica: compõe o programa fonte em ses elementos individais distintos (comandos, operadores, variáveis) e verifica se estão acordo com as regras da lingagem Análise sintática: cria as estrtras para os comandos e verifica a correção das estrtras (por eemplo, tem int antes main, tem abre e fecha parênteses) Análise semântica: verifica as regras semânticas estáticas da lingagem (por eemplo, estar atribindo valores do tipo correto para ma variável) E.: Parcela=.5, poria dar erro pois variável Parcela é do tipo int ontador realiza a tradção m programa em lingagem montagem (código fonte) para lingagem binária (código objeto) Fnções básicas: Sbstitir códigos operações simbólicos por valores nméricos Sbstitir nomes simbólicos enreços por valores nméricos Reservar espaço memória para armazenamento instrções e dados Converter valores constantes para binários Eaminar a correção cada instrção 54 55 9!

Link-editor o ligador Algmas rotinas já eistem codificadas no sistema, por eemplo, rotinas para entrada e saída dados, modo qe o programador não precisa codificálas. Eemplo: printf(), readln(), rotinas matemáticas como seno e cosseno. Estas rotinas armazenadas em bibliotecas qe inclídas no código objeto gerado pelo compilador. Para qe o código da sbrotina eterna seja aneado ao código objeto tilizase o processo ligação. Este processo eamina todo o código objeto e procra por referências eternas não resolvidas asadas pelo compilador. Ele procra pela rotina no sistema e, se a encontra, incli se código no código objeto, caso contrário, gera ma mensagem erro. Lingagem interpretada Realiza as três fases (compilação, ligação e eecção) comando a comando do programa fonte. m programa fonte é eectado pelo programa interpretador. 56 57 Erros tectados forma mais fácil na interpretação tiliza-se mais memória na interpretação porqe interpretador tem qe estar na memória Na interpretação, loop tem qe ser tradzido em todas as iterações Programas mito tilizados tradzidos toda vez qe eectados na interpretação 58!