Processadores Características (Introdução)



Documentos relacionados
Arquitetura do conjunto de instruções (ISA); características de instruções de máquina; tipos de operandos

ELECTRÓNICA DE COMPUTADORES. 1ª Aula. Introdução Sistemas Electrónicos de Computadores. Sumário

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01

O Nível ISA. Modelo de programação Arquitecturas CISC e RISC Introdução ao IA-32 da Intel

Conjunto de Instruções e Arquitectura p.1

Conjunto de instruções. O Conjunto de Instruções. Conjunto de instruções. Instruções típicas. Instruções típicas. Instruções típicas

Arquitectura de Computadores

Introdução aos Sistemas microprocessados II. Prof. Carlos E. Capovilla - CECS/UFABC 1

ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM

Aula 14: Instruções e Seus Tipos

MICROPROCESSADORES. Arquitectura do Conjunto de Instruções. Nuno Cavaco Gomes Horta. Universidade Técnica de Lisboa / Instituto Superior Técnico

Hardware Fundamental

Modos de entrada/saída

Introdução à Engenharia de Computação

Arquitectura de Computadores

Linguagem de Montagem 2. Operações e Operandos

Arquitetura de Computadores Moderna

Aula 26: Arquiteturas RISC vs. CISC

Introdução à Engenharia de Computação

Arquitetura de processadores: RISC e CISC

Organização de Computadores 1

SSC510 Arquitetura de Computadores. 2ª aula

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Linguagem de Montagem

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)

Arquitetura de Computadores

Figura 1 - O computador


Introdução à Arquitetura de Computadores

Roteiro. MC-102 Aula 01. Hardware e dispositivos. O que é um computador? Primeiro Semestre de A linguagem C

Capítulo 1 Introdução

Introdução à Computação. Conceitos básicos sobre computadores. ISEP DEI, Angelo Martins 2006 Conceitos básicos sobre computadores - 1

Arquitetura de Computadores

Introdução aos Computadores Introdução à Ciência de Computadores Outubro / 16

Linguagem de Montagem

Conjunto de instruções e modos de. aula 4. Profa. Débora Matos

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

MATA49 Programação de Software Básico

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

ARQUITETURA DE COMPUTADORES

1. Introdução - contextos de aplicações

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

EEC2104 Microprocessadores

Computador Digital Circuitos de um computador (Hardware)

Arquitetura de Computadores. Linguagem de Máquina

AULA: Introdução à informática Computador Digital

MODOS DE ENDEREÇAMENTO

Informática I. Aula 5. Aula 5-13/05/2006 1

Processador ( CPU ) E/S. Memória. Sistema composto por Processador, Memória e dispositivos de E/S, interligados por um barramento

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Aspectos de Sistemas Operativos

O Windows é um software de sistema, que permite ao utilizador interagir com o computador e com os seus periféricos.

Introdução à estrutura e funcionamento de um Sistema Informático

Sistemas Embarcados: uma Visão Geral. byprof Edson Pedro Ferlin

UNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC

Computador Cleópatra

SIS17 - Arquitetura de Computadores. Introdução (Parte III)

Capítulo 9. Arquitecturas Reais e Alternativas

Conceitos Básicos sobre Sistemas Operacionais

Componentes do Computador e. aula 3. Profa. Débora Matos

Capítulo 8. Software de Sistema

NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann

RISC X CISC - Pipeline

Sistemas Operacionais Aula 2

Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software. Prof. MSc.

Organização de Computadores 1. Prof. Luiz Gustavo A. Martins

Instalar uma versão do Ubuntu de 32 bits ou de 64 bits?

1. SINTAXE DA LINGUAGEM ASSEMBLY

UNIP - UNIVERSIDADE PAULISTA. Arquitetura de computadores

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados

Processadores. Prof. Alexandre Beletti Ferreira

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

4-1. Parte2: A Arquitetura do Conjunto de Instruções

Sistemas Operacionais

Arquitetura de computadores - Endianness

Arquitetura de Computadores RISC x CISC. Gustavo Pinto Vilar

Introdução. Hardware (Parte I) Universidade Federal de Campina Grande Departamento de Sistemas e Computação. joseana@computacao.ufcg.edu.

Capítulo 7 Nível da Linguagem Assembly

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

Arquitetura e Organização de Computadores

Manual do Nero Burn/Burn Settings Plug-in para MCE

Algumas características especiais

CAPÍTULO 2 ORGANIZAÇÃO DE COMPUTADORES

Bus ou Barramento. Barramento. Barramento de Dados. Barramento de endereços. Barramento de Controlo

Introdução à Sistemas Operacionais. Glauber Magalhães Pires

Sistemas Microcontrolados

ARQUITETURA DE COMPUTADORES

IDENTIFICAÇÃO MANUTENÇÃO

Sistemas Operativos I

Prof. Orlando Rocha. Qual o nosso contexto atual?

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de computadores

Transcrição:

Processadores Características (Introdução) Interfaces Industriais 29-03-2006 Organização de sistema com microprocessador Memória Programa CPU Memória Dados D0:31 A0:31 I/O I/O Barramentos 2 2 1

Vários Sistemas Sistemas de computadores estão por todo o lado Muitas vezes pensamos em computadores PCs Secretária portáteis Servers Mas existe um tipo de sistema de computador muito mais comum... 3 3 Definição de Embebido (embedded) Sistemas Embebidos Sistemas de computadores embebidos em dispositivos electrónicos Numero de sistemas embebidos é muito superior ao da produção de PCs Há quem preveja num futuro próximo mais de 50 por pessoa Há quem defina como todos os sistemas que não sejam computadores (PCs) Computers are in here... and here... and even here... Lots more of these, though they cost a lot less each. 4 4 2

Exemplo de embebidos Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR s, DVD players Video game consoles Video phones Washers and dryers 5 5 Processadores vendidos 1400 1300 1200 1100 1000 900 800 700 600 500 400 300 200 100 0 Other SPARC Hitachi SH PowerPC Motorola 68K MIPS IA-32 ARM 1998 1999 2000 2001 2002 6 6 3

Hierarquia Programa/Linguagens Programa (Aplicação) Linguagem de Alto nível (HLL) Independente da Máquina Linguagem Assembly Dependente da Máquina Linguagem Máquina 7 7 Assembly x Alto-Nível Linguagem Assembly e linguagem máquina Linguagem de baixo-nível especificada por meio de mnemónicas Linguagem é nativa do processador, por este facto não existe portabilidade A linguagem assembly está na relação de 1:1 com a linguagem máquina Como consequência da linguagem assembly, um programa tende a ser grande mas bastante eficiente Linguagem de alto-nível São fortemente estruturadas Definem estruturas de controlo de fluxo de programa Portabilidade 8 8 4

Assembly x Alto-Nível Eficiência/ Desempenho Assembly HLL (Java, C) Flexibilidade/ Complexidade 9 9 Exemplos INC MOV AND ADD IA-32 resultado numero,45 mascara,128 mascara,10 C resultado=resultado+1 numero=45 mascara=mascara&128 mascaro=mascara+10 10 10 5

Portabilidade do código Linguagem Assembly Não existe portabilidade entre processadores com ISA diferentes Linguagem de Alto-Nível existe portabilidade, se bem que com restrições 11 11 Portabilidade Código Fonte (HLL) ByteCodes/CLI Bytecodes/CLI Hardware (Plataforma.NET /JAVA) Hardware (Plataforma.NET /JAVA) 12 12 6

ISA Instruction Set Architecture Abstracção ISA descreve o funcionamento do processador de um ponto de vista lógico. específica como um processador funciona, que instruções executa, quais os modos de endereçamento que são suportados e que tipos de dados são suportados. 13 13 Exemplos de especificações ISA MIPS SPARC IA-32 JVM (Java Virtual Machine) Plataforma.Net Microprocessador virtual 14 14 7

Modos de endereçamento Ao modo como se especificam os operandos chama-se modos de endereçamento, Imediato Directo Registo indirecto Indirecto Deslocamento Indexado a registos PC relativo Absoluto. 15 15 Tipos de Instruções Instruções de transferência de dados, Instruções aritméticas e lógicas inteiras, Instruções de virgula flutuante, Instruções de deslocamento e rotação, Instruções de manipulação de bits, Instruções de controlo do fluxo do programa, Instruções de controlo do sistema, Instruções de Unidades de funções especiais, Instruções configuráveis, 16 16 8

Processadores CISC Complex Instruction Set Computer RISC Reduced Instruction Set Computer 17 17 Processador CISC Complexo e elevado conjunto de instruções Vários modos de endereçamento Instruções com vários tamanhos Não existe uniformidade no tempo de execução das instruções 18 18 9

Processador RISC Menos instruções Poucos modos de endereçamento Uniformidade no tamanho da instrução Uniformidade na execução load/store RISC = uniformidade e simplicidade 19 19 CISC versus RISC 20 20 10

CISC versus RISC Máquina CISC Máquina RISC ISA ISA Microprogram* (control) Hardware Hardware *-Microprogram é um pequeno programa intérprete que transforma instruções complexas em várias instruções simples a serem executadas pelo Hardware. 21 21 Numero de Operandos 3 operandos add T, T, B 2 operandos add T, B 1 operandos add T 0 operandos add 22 22 11

3 Operandos A = B + C * D E + F + A É convertido para o seguinte código: mult T, C, D ; T=C*D add T, T, B ; T=B+ C*D sub T, T, E ; T=B+ C*D - E add T, T, F ; T=B+ C*D E + F add A, T, A ; T=B+ C*D E + F + A 23 23 2 Operandos A = B + C * D E + F + A É convertido para o seguinte código load T, C ; T=C mult T, D ; T=C*D add T, B ; T=B+ C*D sub T, E ; T=B+ C*D E add T, F ; T=B+ C*D E + F add A, T ; T=B+ C*D E + A 24 24 12

1 Operando A = B + C * D E + F + A É convertido para o seguinte código load C ; Acc=C mult D ; Acc=C*D add B ; Acc=B+ C*D sub E ; Acc=B+ C*D E add F ; Acc=B+ C*D E + F add A ; Acc=B+ C*D E + A store A ; guarda acumulador em A 25 25 Sem Operandos 26 26 13

exemplo de 0 operandos A = B + C * D E + F + A É convertida para o seguinte código Push E ; E Push C ; C, E Push D ; D, C, E Mult ; C*D, E Push B ; B,C*D, E Add ; B+C*D,E Sub ; B+C*D-E Push F ; F, B+C*D-E Add ; F+B+C*D-E Push A ; A, F+B+C*D-E Add ; A+F+B+C*D-E Pop A 27 27 Comparação entre Máquinas 0 Operandos 1 Operando 2 Operandos 3 Operandos Número de Instruções Tamanho Instruções Acesso á memória 28 28 14

Formatos das Instruções 29 29 15