Introdução à Computação: Máquinas Multiníveis

Documentos relacionados
AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

Introdução. (Aula 2) Organização Estruturada de Computadores

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1)

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

Organização de Sistemas de Computadores

Introdução à Engenharia de Computação

Arquiteturas RISC e CISC. Adão de Melo Neto

Introdução à Computação: Máquinas Multiníveis

Organização e Arquitetura de Computadores. A Arquitetura no nível da lógica digital Prof.: Hugo Barros

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

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

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

Nível da Microarquitetura

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

Arquitetura e Organização de Computadores. Processador Registrador Memória. Professor Airton Ribeiro

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

2. A influência do tamanho da palavra

Arquitetura e organização de computadores Uma visão geral

SSC510 Arquitetura de Computadores 1ª AULA

Estrutura Básica de um Computador

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

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 7

Infraestrutura de Hardware. Funcionamento de um Computador

Arquitetura e Organização de computadores

ORGANIZAÇÃO DE COMPUTADORES

Processador. Processador


Arquitetura de Computadores. Conjunto de Instruções

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

2. A influência do tamanho da palavra

Conjunto de Instruções e Modelos de Arquiteturas

SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

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

Unidade de Controle. UC - Introdução

LISTA 01 3B ORGANIZAÇÃO DE COMPUTADORES (REALIZADA EM AULA) NOME: NOME:

Circuitos Integrados. Nível da Lógica Digital (Aula 7) Circuitos Combinacionais. Circuitos Lógicos Digitais Básicos. Multiplexadores (1)

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

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

Nível da Lógica Digital

SEL-0415 Introdução à Organização de Computadores Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira

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

Transistor. Portas Lógicas (2) Base; Coletor; Emissor.

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

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

Sistemas Operacionais. Conceitos de Hardware

Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Sistemas Operacionais

Prof. Benito Piropo Da-Rin. Arquitetura, Organização e Hardware de Computadores - Prof. B. Piropo

INF Técnicas Digitais para Computação. Introdução. Aula 1

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

Conceitos Básicos Processador

Introdução à Computação: Máquinas Multiníveis

Disciplina: Arquitetura de Computadores

Instruções de Máquina

AGT0001 Algoritmos Aula 01 O Computador

Unidade de Controle. Sinais e temporização da busca de instrução. Prof. Eduardo Appel

Arquitetura e Organização de Computadores. Processador Registrador Memória. Professor Airton Ribeiro

ENGENHARIA DE SISTEMAS MICROPROCESSADOS

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

COMPUTADOR. Adão de Melo Neto

Principais Componentes do Gabinete. Componentes Básicos de um Computador. CPU ou UCP (Processador) 17/02/2017

Solução Lista de Exercícios Processadores

Microprocessadores. São máquinas elétricas onde podemos armazenar instruções lógicas, aritméticas e de tomada de decisão;

SSC0112 Organização de Computadores Digitais I


Introdução à Organização e Arquitetura de Computadores (Parte I)

Arquitetura e Organização de Computadores

Barramento. Prof. Leonardo Barreto Campos 1

Funcionamento Área Desempenho (velocidade) Potência Aula 1. Circuitos Digitais. Circuitos Digitais

Unidade I. Organização de Computadores. Prof. Renato Lellis

Arquitetura de Computadores Aula 9 Portas Lógicas

SSC304 Introdução à Programação Para Engenharias

Introdução à Computação: Introdução às Portas Lógicas

Arquitetura de Computadores - Controle Microprogramado. por Helcio Wagner da Silva

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

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

Organização de Sistemas Computacionais Processadores: Organização da CPU

13 CIRCUITOS DIGITAIS MOS

Arquitetura de Computadores Aula 10 - Processadores

Processador: Conceitos Básicos e Componentes

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

Arquitetura e Organização de Computadores

ARQUITETURA DE COMPUTADORES. Nível da Lógica Digital. Prof.: Agostinho S. Riofrio

Organização de computadores. Aula 05

ORGANIZAÇÃO DE COMPUTADORES

Prof. Leonardo Augusto Casillo

Organização e Arquitetura de Computadores I

Organização de Computadores

Sistemas de Computaçã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 é

Arquitectura de Computadores

ORGANIZAÇÃO DE COMPUTADORES

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

Organização e Arquitetura de Computadores. Hugo Barros

Organização e Arquitetura de Computadores I

Sistemas de Computação. Bibliogra a. Hardware e Software. Notas. Introdução. Haroldo Gambini Santos. 26 de abril de Notas

Unidade Central de Processamento UCP (CPU)

Totem Pole, Coletor Aberto e Tristate

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

Aula 10 Microcontrolador Intel 8051 Parte 1

Transcrição:

Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória, ES Brazil 1

Máquinas Multiníveis Revisão Aula Passada Máquinas Multiníveis Parte 1: História; Dois Níveis; Vários Níveis. 2

Máquinas Multiníveis Máquinas Modernas Máquinas Multiníveis Modernas: 3

Máquinas Multiníveis Nível de Dispositivos Transistores e Circuitos Integrados: CPU de 45 nanômetros, refere-se à média do tamanho de uma célula de memória. 4

Máquinas Multiníveis Nível de Dispositivos Visão da CPU - 4 núcleos - 900 milhões de transistores: 5

Máquinas Multiníveis Nível de Dispositivos Evolução: 1971 10 µm; 1974 6 µm; 1977 3 µm; 1982 1,5 µm; 1985 1 µm; 1989 800 nm; 1994 600 nm; 1995 350 nm; 1997 250 nm; 1999 180 nm; 2001 130 nm; 2004 90 nm; 2006 65 nm; 2008 45 nm; 2010 32 nm; 2012 22 nm; 2014 14 nm; 2016 10 nm (previsto); 2018 7 nm (previsto); 2020 5 nm (provável). 6

Máquinas Multiníveis Nível de Dispositivos Situado abaixo do nível 0; Não é representado na arquitetura multinível; Seus elementos pertencem ao campo da microeletrônica, engenharia elétrica e da física do estado sólido: Transistores individuais, cristal semicondutor (substrato dos circuitos integrados), malha de transistores. 7

Máquinas Multiníveis Nível de Dispositivos Tecnologias de fabricação de circuitos integrados: Bipolar: TTL (Transistor-Transistor Logic); ECL (Emitter-Coupled Logic); MOS - Metal Oxide Semi-conductor: Portas mais lentas, gastam menos energia e ocupam espaço bem menor; CMOS - transistores MOSFET: baixíssimo consumo, altíssima densidade de integração. 8

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: Composto por circuitos lógicos digitais; Os objetos de interesse são as portas lógicas; As portas lógicas são dispositivos digitais construídas a partir de componentes analógicos; Formam os elementos primários dos circuitos lógicos do computador; Portas básicas: NAND, NOR (portas completas); NOT, AND, OR e XOR. 9

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: As portas são usadas para criar componentes digitais simples ou complexos, como somadores, deslocadores, decodificadores, memórias (registradores), ULA s e circuitos integrados para execução de funções específicas; Um único conjunto de portas NAND ou NOR, é suficiente para construir qualquer circuito lógico. 10

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: Os circuitos lógicos são construídos de acordo com a Álgebra Booleana; A partir da combinação das portas lógicas básicas e suas variações, que são integrados em pastilhas (chips ou CIs) de silício; De acordo com a densidade de componentes, os chips são classificados em: Integração em Pequena Escala (SSI): de 1 a 10 portas lógicas; Integração em Média Escala (MSI): de 10 a 100 portas lógicas; Integração em Grande Escala (LSI): de 100 a 100.000 portas lógicas; Integração em Escala Muito Grande (VLSI): acima de 100.000 portas lógicas. 11

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: Comparador de 4 bits: 12

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: Unidade Lógica de 1 bit, para realizar operações lógicas NOT, AND, OR e soma aritmética: 13

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: Deslocador de bits para a esquerda ou para a direita com alcance de 8 bits: 14

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: Memória de 1 bit capaz de lembrar os valores anteriores (Latches): 15

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: O nível 0 é responsável pela interpretação de instruções do nível superior, ou seja, seus circuitos executam os programas em linguagem de máquina do nível 1: Macroinstruções (nível ISA Instruction Set Architecture); Microinstruções (nível de microprogramação). 16

Máquinas Multiníveis Nível 0 Nível de Lógica Digital: A arquitetura da máquina pode ser entendida como um conjunto de registradores, associados a outros módulos lógicos adicionais para processamento de informação, interconectados de maneira apropriada; O sequenciamento adequado dos sinais de controle destes módulos e registradores produz o fluxo ordenado de informação entre os mesmos, necessário à interpretação de instruções do nível superior; Equivalência entre hardware e software, ou seja, funções desempenhadas pelo software podem migrar para o hardware e vice-versa. 17

Máquinas Multiníveis Nível 1 Nível de Microarquitetura: É nesse nível que se inicia o conceito de programa como uma sequência de instruções a serem executadas diretamente pelos circuitos eletrônicos; Enxerga-se um conjunto de 8 a 32 registradores (PC, MAR, MDR, SP, etc.) que formam uma memória local e uma ULA (Unidade Lógica e Aritmética), capaz de realizar operações aritméticas simples; Os registradores e a ULA são conectados para formar o caminho de dados (Data Path), estrutura sobre a qual os dados fluem; As operações são controladas por um microprograma (software) ou diretamente por hardware. 18

Máquinas Multiníveis Nível 1 Nível de Microarquitetura: Controle por software: Microprograma = Interpretador; O microprograma busca, decodifica e executa as instruções vindas do nível 2, uma a uma, usando o caminho de dados para a realização da tarefa; Ex. 1: execução da instrução ADD (soma): A instrução é obtida na memória; Seus operandos (parcelas da soma) são localizados e trazidos para os registradores; A soma é realizada na ULA; E o resultado é encaminhado para o lugar apropriado. 19

Máquinas Multiníveis Nível 1 Nível de Microarquitetura: Controle por hardware: São executados os mesmos passos do slide anterior, mas sem que haja um programa armazenado para controlar a interpretação das instruções; A execução é feita por meio do nível de dispositivos. 20

Máquinas Multiníveis Nível 1 Nível de Microarquitetura: Principais Arquiteturas: CISC (Complex Instruction Set Computer); RISC (Reduced Instruction Set Computer); Arquiteturas híbridas (mais usadas atualmente). 21

Máquinas Multiníveis Nível 1 Nível de Microarquitetura: CISC: Uso de microcódigo; Conjunto de instruções completas; Tempos de processamento diferentes a cada instrução; Instruções de máquina de alto nível, ou seja, com funções mais complexas; Código mais denso (poucos registradores); RISC: Não usa microprogramação, ou seja, as instruções são executadas pelo hardware; Conjunto simples e pequeno de instruções; Instruções executadas no mesmo tempo; Código menos denso (muitos registradores). 22

Máquinas Multiníveis Nível 1 Nível de Microarquitetura: Vantagens da microprogramação Facilita o projeto e a construção dos circuitos digitais (implementação de parte da lógica digital dentro do firmware); Possibilita o desenvolvimento de instruções mais potentes no nível de máquina convencional; Permite alterar o ISA escrevendo outro microprograma; Facilita a concepção de famílias de microprocessadores. Característica principal: A infraestrutura do nível 1 interfere diretamente na execução dos programas na máquina, e no comportamento dos níveis superiores. 23

Máquinas Multiníveis Nível 2 Nível de ISA (ou nível convencional de máquina): Define a interface entre o hardware e o software; 24

Máquinas Multiníveis Nível 2 Nível de ISA: O nível ISA é interpretado para o nível de microprogramação (máquinas CISC) ou é executado diretamente pelo hardware (máquinas RISC); Manuais descrevem como as instruções são executadas interpretativamente pelo microprograma (software) ou como elas são executadas diretamente pelo hardware. 25

Máquinas Multiníveis Nível 2 Nível ISA: Há uma relação direta entre a linguagem do nível 1 e a linguagem de convencional de máquina do nível 2 (ISA), porque há uma relação um para um entre as instruções de ambas; Para cada instrução da linguagem no nível ISA existe uma instrução do nível 1 correspondente; A diferença resulta de sua representação, a primeira é numérica e a segunda é textual; As arquiteturas CISC e RISC interferem diretamente na linguagem utilizada pelo nível ISA. 26

Máquinas Multiníveis Nível 2 Nível de ISA: As características mais importantes do nível ISA, são: A arquitetura varia conforme a tecnologia usada pelo fabricante do chip; Deve ser o mais simples possível, para facilitar projeto do hardware; Deve facilitar a geração de código por parte do compilador; Projeto do nível de linguagem de máquina deve dar suporte aos níveis superiores, possibilitando o uso de estruturas de dados tais como procedimentos, variáveis locais, variáveis globais, constantes, etc., utilizados pelas linguagens de alto nível. 27

Máquinas Multiníveis Nível 2 Nível de ISA: São aspectos importantes do nível ISA: Modelo de memória; Conjunto de registradores; Formato das instruções; Modos de endereçamento; Tipos de instruções; Fluxo de controle. 28

Máquinas Multiníveis Nível 2 Nível de ISA: Modelos de memória: Antes de ser executado o programa em linguagem de máquina é armazenado na memória principal; Memória dividida em células referenciadas por endereços consecutivos; Célula pode ter qualquer tamanho, mas um byte é padrão atualmente; Os bytes são agrupados em palavras (words); Registradores: O nível ISA disponibiliza um conjunto de registradores visíveis ao programador: registradores de uso geral e de propósito específico; 29

Máquinas Multiníveis Nível 2 Nível de ISA: Formato das instruções: São campos essenciais de uma instrução: Código de operação (OP CODE): identifica a operação a ser realizada pelo processador; Endereço: indica a localização do dado (operando) a ser manipulado pela instrução. 30

Máquinas Multiníveis Nível 2 Nível de ISA: Formato das instruções: O comprimento das instruções também pode ser variável, geralmente sendo um múltiplo ou submúltiplo da palavra; Há diferentes critérios para o projeto de formatos de instrução, e são regidos por algumas características: Quanto maior o tamanho da instrução, maior é o espaço ocupado por um programa na memória; Velocidade que o processador pode executar as instruções é limitada pelo tamanho das instruções; Quanto menor o tamanho das instruções mais rápido serão buscadas pelo processador; Instruções curtas são mais difíceis de decodificar; Instruções menores podem não completar uma operação integralmente. 31

Máquinas Multiníveis Nível 2 Nível de ISA: Modos de Endereçamento: Existem diversos métodos de codificar o campo de endereços. Estes podem utilizar mais ou menos bits e o endereço pode ser determinado estaticamente, em tempo de compilação, ou dinamicamente, em tempo de execução; Podem ser de acesso direto ou indexado; Podem usar registradores, pilhas e outros métodos recursos. 32

Máquinas Multiníveis Nível 2 Nível de ISA: Tipos de instrução: Instruções de movimento de dados; Operações diáticas (com dois operandos); Operações monádicas (com um operando); Instruções de comparação e desvio condicional; Instruções de chamada de procedimento; Instruções de entrada e saída de dados (I/O); 33

Máquinas Multiníveis Nível 2 Nível de ISA: Fluxo de controle: O fluxo de controle é sequência na qual as instruções são executadas; A execução da maioria das instruções não altera o fluxo de controle; Em um fluxo de controle normal as instruções são buscadas em palavras consecutivas da memória. Após a execução de uma instrução, a próxima instrução é buscada na memória incrementando o PC do tamanho da instrução que acaba de ser executada; O fluxo de controle normal é alterado por desvios, chamadas de procedimentos, co-rotinas, armadilhas (traps) e interrupções. 34

Máquinas Multiníveis Próxima Aula Máquinas Multiníveis: Para a próxima aula: Níveis 3, 4 e 5. Continua na próxima aula! Até breve. 35

http://nemo.inf.ufes.br/ 36