Prof. Gustavo Oliveira Cavalcanti https://sites.google.com/a/poli.br/professorgustavooc/

Documentos relacionados
Organização e Arquitetura de Computadores I

SSC510 Arquitetura de Computadores 1ª AULA

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores

Organização e Arquitetura de Computadores I

CONJUNTO DE INSTRUÇÕES

Barramento. Prof. Leonardo Barreto Campos 1

SSC0114 Arquitetura de Computadores

William Stallings Computer Organization and Architecture

Prof. Leonardo Augusto Casillo

Conjunto de Instruções

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

SSC0112 Organização de Computadores Digitais I

PSI3441 Arquitetura de Sistemas Embarcados

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Organização de Computadores

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

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

ORGANIZAÇÃO DE COMPUTADORES

SSC0611 Arquitetura de Computadores

William Stallings Arquitetura e Organização de Computadores 8 a Edição

CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)

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

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I

Arquitetura e Organização de Computadores

Organização e Arquitetura de Computadores SI31C. Professora Me. Sediane Carmem Lunardi Hernandes

Organização de Computadores

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

Organização e Arquitetura de Computadores I

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

CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)

PSI3441 Arquitetura de Sistemas Embarcados

Sistemas Operacionais

Organização de computadores. Prof. Moisés Souto

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

Os textos nestas caixas foram adicionados pelo Prof. Joubert

Infraestrutura de Hardware. Funcionamento de um Computador

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

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

1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é

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

Unidade de Controle. UC - Introdução

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

Histórico de desenvolvimento de computadores Prof. Luís Caldas Aula 02 Processador de uso geral

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

ELETRÔNICA DIGITAL II. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR

Unidade Central de Processamento UCP (CPU)

Arquitetura de Computadores Conceitos Fundamentais. Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016

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

Organização de Computadores Aula 05

Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios

UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES

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

Organização de computadores. Aula 05

Arquitetura de Computadores. Professor: Vilson Heck Junior (Material: Douglas Juliani)

Notas de Aula Guilherme Sipahi Arquitetura de Computadores

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

SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

INTRODUÇÃO A ARQUITETURA DE COMPUTADORES FELIPE G. TORRES

sumário 1 bases numéricas 1 2 sistemas de numeração em computação introdução representação de números... 3

ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR

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

UCP: Construindo um Caminho de Dados (Parte I)

Nível do Conjunto de Instruções Prof. Edson Pedro Ferlin

Arquitetura e Organização de Computadores

Arquitetura de Computadores. Prof. João Bosco Jr.

Evolução dos computadores

Conjunto de Instruções e Modelos de Arquiteturas

Arquiteturas de Computadores. Princípios e exemplos de conjuntos de instruções

O Funcionamento do Processador

AULA 01: APRESENTAÇÃO

Unidade Central de Processamento 2. Registradores

Aula 10 Microcontrolador Intel 8051 Parte 1

III.2 - Princípios de Arquitetura

ção de Computadores II

Elementos Físicos do SC e a Classificação de Arquiteturas

Disciplina: Arquitetura de Computadores

BARRAMENTO DO SISTEMA. Adão de Melo Neto

Conjunto de Instruções. Alisson Brito

ARQUITETURA DE COMPUTADORES. Organização de Sistemas Computacionais. Prof.: Agostinho S. Riofrio

Instruções de Máquina

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

Introdução à Organização de Computadores. Aula 8

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

Conjunto de Instruções MIPS Parte I

Estrutura Básica de um Computador

ARQUITETURA DE COMPUTADORES

COMPUTADOR 2. Professor Adão de Melo Neto

Nível da Arquitetura do Conjunto das Instruções

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

Solução Lista de Exercícios Processadores

Computador Cleópatra

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

Processador. Processador

Arquitetura de Computadores

2. A influência do tamanho da palavra

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

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

pet Arquitetura de Computadores computação UFPE

Transcrição:

Sistemas Digitais Prof. Gustavo Oliveira Cavalcanti gustavooc@poli.br https://sites.google.com/a/poli.br/professorgustavooc/

Conteúdo Programático (Organização e Arquitetura) Arquitetura e história dos microprocessadores; Representações binário, octal, Hexadecimal, ASCII; Arquitetura de Von Neumann e Harvard; Modos de endereçamento direto, indireto, imediato.. Tipos de instrução; Pilhas, subrotinas e interrupções; Dispositivos de entrada e saída; Arquiteturas RISC e CISC; Pipeline, Superpipeline e Superescalar; Barramento USB: HID, CDC; Timers; Principais Arquiteturas de Microcontroladores.

Bibliografia STALLINGS, WILLIAM, Arquitetura e Organização de Computadores. Prentice-Hall, 5. ed., 2007.

Introdução Principais Componentes CPU; Memória Principal; Dispositivos de E/S; Interconexões. A CPU possui Unidade de Controle; ULA; Registradores; Interconexão.

Arquitetura Atributos de um sistema que são visíveis ao programador. Organização Refere-se às unidades operacionais e suas interconexões que implementam as especificações da sua arquitetura.

Funções básicas: Processamento de Dados; Armazenamento de Dados; Transferência de Dados; Controle.

Tipos de Operações: Transferência de Dados (a); Armazenamento de Dados (b); Processamento de Dados (c) e (d);

Arquitetura von Neumann Conceitos: Dados e Instruções armazenados em uma mesma memória leitura/escrita; Memória endereçada pela posição independente do tipo de dados; A execução das instruções ocorre de modo sequencial (exceto quando a sequência é quebrada de forma proposital).

Arquitetura von Neumann

Arquitetura von Neumann Troca de Dados

Arquitetura von Neumann Ciclo de Instrução; Busca: Instrução carregada no IR; Incrementa o PC. Execução(Ações): Tranferência de dados (Processador Memoria ou Processador Disp. E/S) Processamento (Função logica); Controle (desvio).

Arquitetura von Neumann A execução encerra quando: Máquina for desligada; Erro irrecuperável; Execução de Instrução que para a operação. Exemplo: ADD B,A Instrução é buscada; Busca A; Busca B; Soma os conteúdos; Salva o resultado em A.

Arquitetura von Neumann

Arquitetura von Neumann Diagrama de estados de um ciclo de instrução.

Arquitetura von Neumann Interrupções: Quando componentes distintos do processador (E/S, memória) interrompem a sequência normal de execução. Classes de Interrupções: Software: Overflow, A/0, Ref. End. Inexistente... Relógio: Permite ao SO realizar certas funções; E/S: Controlador de E/S; Falha de Hardware: queda de energia, erro de paridade na memória

Arquitetura von Neumann Transferência de controle via interrupção.

Arquitetura von Neumann Ciclo de Instrução com Interrupção.

Arquitetura von Neumann Diagrama de Transição de Estados de um Ciclo de Instrução com Interrupções.

Arquitetura von Neumann Múltiplas Interrupções: Desabilitar as demais interrupções

Arquitetura von Neumann Múltiplas Instruções: Definindo Prioridades nas Interrupções

Funcionamento da E/S; O módulo de E/S pode trocar dados diretamente com o processador; Assim, o processador pode ler e escreve diretamente na E/S; Temos Instruções de E/S sendo executadas; A transferência da E/S pode ser feita diretamente para a memória; Assim o módulo de E/S envia comandos de leitura ou escrita diretamente para a memória(dma).

Estruturas de Interconexão (Processador Memória E/S);

Barramentos: Meio físico compartilhado, colisão tem que ser evitada; Linhas de Controle, Dados e Endereço; Ainda podem existir linhas de energia.

Principais linhas de Controle: Escrita na Memória; Leitura na Memória; Escrita em porta de E/S; Leitura de porta de E/S; Confirmação de Transferência (ACK); Requisição de Barramento; Concessão de Barramento; Requisição de Interrupção; Confirmação de Interrupção (ACK); Relógio (temporização das operações); Inicialização (reset).

Desempenho do Barramento: Quanto mais dispositivos maior o comprimento e maior o atraso (tempo para obter o barramento); O barramento pode se tornar um gargalo quando a demanda de transferência de dados se aproxima da capacidade máxima; Aumento da largura do barramento; Porém como as taxas de transferências crescem rapidamente um único barramento não resolverá. Pode ser dedicado ou multiplexado.

Múltiplos Barramentos (Tradicional)

Múltiplos Barramentos (Alto Desempenho)

Arbitragem de Barramento: Centralizada: Controlador do barramento/ árbitro pode ou não ser o processador; Distribuida: Não existe árbitro cada dispositivo contem uma lógica de acesso ao barramento

Sistema Operacional Controla a execução de programas; Gerenciar recursos; Escalonamento de processos; Quais processos devem ser executados; Hardware interrompe a execução (time slot) Gerenciamento de memória; Dados podem exceder a capacidade da memória principal; O SO dispõe de suporte de hardware; Gerenciamento de memória virtual; Gerenciamento de processos;

Elementos de uma instrução de máquina: Código de operação; Referência a operando origem e destino; Endereço da próxima instrução: implicito.

Mnemônicos: Mnemônico ADD SUB MPY DIV LOAD STOR Operação Adição Subtração Multiplicação Divisão Carrega dados da memória Armazena dados na memória ADD R,Y Adiciona o valor contido na posição Y com o conteúdo do registrador R.

O conjunto de instruções de máquina deve ser suficiente para expressar qualquer comando de uma linguagem de alto nível. Processamento de dados (instruções aritméticas e lógicas); Armazenamento de dados (instruções de memória); Movimentação de dados (instruções de E/S); Controle (instruções de teste e de desvio).

Número de Endereços na instrução Códigos para executar: Y = (A-B) / (C+D x E)

Utilização de endereços nas instruções (exceto desvio)

Projeto do conjunto de Instruções Questões importantes: Repertório de Operações (quantas, quais e quão complexas); Tipos de Dados (quais os tipos de dados estarão disponíveis); Formatos de Instrução (tamanho em bits, número de endereço, tamanho dos campos); Registradores (número de registradores, qual o propósito de cada um); Endereçamento (de que modo ou modos o endereço de um operando é especificado).

Projeto do conjunto de Instruções Tipos de dados: Endereços (números inteiros sem sinal); Números (Inteiro ou ponto fixo, ponto flutuante, decimal-bcd); Caracteres (Texto / Seq.Caracteres ASCII-American Standard Code for Information Interchange); Dados Lógicos ( 1 bit Dado Booleano verdadeiro ou falso Manipulação de bits de um dado ).

Projeto do conjunto de Instruções Tipos de Operações: Transferência de Dados; Aritméticas; Lógicas; De Conversão; De E/S; Controle de Sistema; Transferência de Controle.

Projeto do conjunto de Instruções Controle de Sistema: Modificar conteúdo de registrador de controle; Modificar chave de proteção da memória; Usadas pelo S.O. Transferência de Controle; Desvio condicional (BRANCH); Salto (JUMP); Chamada de Procedimento(CALL/RETURN).

Projeto do conjunto de Instruções Deslocamento: Lógico; Não preserva sinal; Aritmético; Preserva sinal; Rotação; Sem perda de bits; Útil em testes.

Projeto do conjunto de Instruções Código de condição: Bits de registradores especiais; Usados em desvios condicionais.

Projeto do conjunto de Instruções Linguagem de Montagem N = I + J + K

Projeto do conjunto de Instruções Modos de Endereçamento

Projeto do conjunto de Instruções Pipeline

Projeto do conjunto de Instruções Penalidade do desvio

Projeto do conjunto de Instruções MIPS (Microprocessor without Interlocked Pipeline Stages = Microprocessador sem Estágios Interligados de Pipeline)

Projeto do conjunto de Instruções Tipos de Instruções do MIPS Registrador Registrador (R-Type); Envolvendo Valor Imediato (I-Type); Instruções de Desvio (J-Type). Simplicidade; Regularidade.

Projeto do conjunto de Instruções Instrução Tipo R op: opcode = Código de operação; rs: primeiro operando (registrador); rt: segundo operando (registrador); rd: registrador de destino shamt: quantidades de bits a ser deslocado; funct: função específica a ser executada.

Projeto do conjunto de Instruções Instrução Tipo I op: opcode = Código de operação; rs: registrador base a ser operado com o valor imediato ou operando; rt: registrador de destino ou operando; imediato: valor constante a ser operado.

Projeto do conjunto de Instruções Instrução Tipo J op: opcode = Código de operação; endereço: endereço da instrução para a qual o fluxo deve ser desviado.

Projeto do conjunto de Instruções Exemplos de Instruções

Projeto do conjunto de Instruções Exemplos de Instruções

Projeto do conjunto de Instruções Execução de Instruções no MIPS