organização e arquitetura de computadores -...

33
Organização e Arquitetura de Computadores Aula Introdutória Alexandre Amory Edson Moreno

Upload: lamngoc

Post on 10-Nov-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Organização e Arquitetura de

Computadores

Aula Introdutória

Alexandre Amory

Edson Moreno

Page 2: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Disciplina:

• Organização e Arquitetura de Computadores

Horário:

• 3NP e 5NP

Email:

• Alexandre Amory (178): [email protected]

• Edson Moreno (168): [email protected]

Página Web:

• Alexandre Amory: http://www.inf.pucrs.br/alexandre.amory

• Edson Moreno: http://www.inf.pucrs.br/emoreno

Apresentação

Page 3: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

• Provas:

– P1: 26/09

– P2: 26/11

– PS: 03/12

– G2: 10/12

• Composição das notas:

– G1 = (P1 + P2 + TP) / 3

– TP = Média aritmética de parte dos trabalhos práticos realizados em aula

– T1: 22/08

– T2 : 17/09

– T3 : 29/10

– T4 : 19/11

• Aprovação

– Presença >= 75%

– G1 >= 7

– G2 >= 5, para G1 >= 4

Avaliações

Page 4: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Computadores estão onipresentes graças a avanços no hardware

Hardware menor, mais barato, mais poder de processamento, menor

consumo de energia, etc

Computadores fazem um carro emitir menos poluentes, consumir menos

combustível, aumentam a segurança

‘Coisas’ possuem acesso a Internet

O objetivo desta disciplina é apresentar, de forma condensada, como é

a organização lógica dos computadores.

Níveis de abstração que permitem programadores a desenvolver aplicações

cada vez mais sofisticadas, complexas, inovadoras

Desmistificar a separação ‘hardware’ e ‘software’

Objetivos

Page 5: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Por que ‘Hardware’ em SI ?

O ‘sistema’ é o que interessa

O sistema é composto por várias camadas.

Algumas destas ‘alto nível’, outras ‘baixo nível’

Desenvolvedor do sistema precisa saber os recursos de

hardware existentes para desenvolver produtos melhores

Gerentes de projeto precisam conhecer a interface hw/sw

para fazer a especificação do projeto

Motivação

Page 6: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Por que ‘Hardware’ em SI ?

‘Clock’ dos processadores estagnou !!!

Aumento de desempenho agora depende da exploração de paralelismo

Programação seqüencial programação paralela

Para reduzir o tempo de execução de uma aplicação agora o

desenvolvedor do software precisa saber:

Quantos ‘cores’ existem para distribuir a aplicação

Noções de hierarquia de memória e cache: para reduzir o impacto no

tempo de acesso aos dados

Outros mecanismos de hardware para aumentar o desempenho das

aplicações

Motivação

Page 7: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Lei de Moore

40048008

80808085 8086

286386

486Pentium® proc

P6

0.001

0.01

0.1

1

10

100

1000

1970 1980 1990 2000 2010

Ano

Tra

ns

isto

res (

MT

) 2X de aumento em 1.96 anos!

# de transistores em Microprocessores duplica a cada 2 anos

Page 8: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Transistor

Page 9: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Porta lógica

Page 10: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Circuito

Page 11: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Elemento de processamento

Page 12: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Multicore

Page 13: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Tecnologia de fabricação

Page 14: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Power Wall

* Computer Organization and Design: The Hardware and Software Interface

Page 15: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Power Wall

* Computer Organization and Design: The Hardware and Software Interface

Page 16: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Power Wall

* Computer Organization and Design: The Hardware and Software Interface

Page 17: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Uniprocessador multiprocessador

Processadores estão no limite físico!

Dissipação de energia e freqüência de operação

Evolução depende de novos métodos :

Exploração de paralelismo !!!

Suporte em nível de hardware

Dual core, quad core, etc

Suporte em nível de software

Programadores devem conhecer o hardware

para obter ganhos de desempenho !!!!

Page 18: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Desktop: computador pessoal, laptop

Tópico dos slides anteriores

Servidor: similar ao desktop, mas com maior poder de

processamento, memória, armazenamento, etc

Embarcado:

Um computador dentre de um equipamento

Carro, TV, telefone, brinquedo, vídeo game....

Executa uma tarefa específica

Possui restrições de projeto específicas

Custo e Consumo de energia

inúuuuuumeras aplicações (apresentarei algumas a seguir)

É o maior mercado e o que cresce mais rapidamente

Classes de Aplicações

Page 19: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Onde está o mercado?

290

93

3

488

114

3

892

135

4

862

129

4

1122

131

50

200

400

600

800

1000

1200

1998 1999 2000 2001 2002

Embarcado

Desktop

Servidores

Milh

õe

s d

e c

om

pu

tad

ore

s

Page 20: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Computação Embarcada

Processadores mais simples que os processadores usados em

desktop (Intel, Apple, etc)

Exige conhecimento dos periféricos do sistema

Entrada e saída: botões, leds, lcds, teclado, auto falante,

interface de rede, cartão de mémória, smart card, leitor de

impressão digital, etc

Sensores: temperatura, fumaça, gases, pressão, etc

Atuadores: motor

Desenvolvimento de um sistema embarcado exige

conhecimento de software e hardware !!!!

Aplicações são inúuuuuuuuuuuuuumeras !!!

Segue alguns exemplos

Page 21: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Vídeos do Youtube

Exemplos de sistemas embarcados integrados com WebApp

Arduino Microcontroller Feature

Arduino Ethernet Webapp

Control Your Home From Your Phone

Internet das coisas:

https://pachube.com/

https://thingspeak.com/

http://www.myrobots.com/

Page 22: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Por que Hardware em SI ? Resumo

Desktop:

Desde de 2005 (aprox) o processadores chegaram no limite de

freqüência de operação e dissipação de energia

A freqüência de operação não aumenta mais !!!

Como rodar programas mais rapidamente ?!!?!?!?

Exploração de paralelismo

Programa deve ser escrito para tirar vantagem os múltiplos

processadores

Processadores multicore

Exploração de paralelismo possui conseqüências para

desenvolvedores

Desenvolvedor precisa conhecer mais sobre o hardware

Desenvolvedor precisa aprender a escrever software paralelo

Page 23: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Por que Hardware em SI? Resumo

Embarcados:

O mercado que mais cresce !!!

Internet das coisas

Programador precisa conhecer os periféricos dos sistemas

Precisa saber como acessar o hardware via o software

Resumo geral:

Separação entre hardware e software já não tem muito sentido

O ‘sistema’ e suas diversas ‘camadas’ é o que interessa, o

‘sistema’ é o produto

Page 24: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

ConteúdoFuncionamento do Processador

• Modelagem lógica de problemas

• Funções primitivas e tabelas-verdade

• Circuitos combinacionais

• Conceito, circuitos básicos e aritméticos

• Circuitos sequênciais

• Conceito, circuitos básicos, memória e máquina de estados

• Processador

• Caracterização, organização interna

• Registradores de trabalho e de controle

• Formatos de instruções e modos de endereçamento

• Relação entre linguagem de montagem, linguagem Assembly, e

linguagem de alto nível

Mem IO

controle

datapath IO IO

interconexão

Page 25: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

ConteúdoSistemas de Entrada e Saída (periféricos)

• Interface entre programa e dispositivo

• E/S Programada

• Modo Bloqueado

• Polling

• Interjeição

• Interrupção

• DMA – Acesso Direto à Memória

• Dispositivos periféricos e interfaces

• Interfaces seriais

• Interfaces paralelas

• Interfaces de vídeo

• Barramentos e chaveadores

• Armazenamento secundário

Mem IO

controle

datapath IO IO

interconexão

Page 26: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

ConteúdoGerência de Memória

• Hierarquia de memórias

• Memória Cache

• Conceitos, características e organização

• Mapeamento de endereços

• Políticas de atualização

• Memória Virtual

• Conceitos, características e organização

• Sistemas paginados, segmentados e segmento-paginados

• Políticas de alocação, relocação e busca

• Translation Lookaside Buffer

• Conceitos, características

Mem IO

controle

datapath IO IO

interconexão

Page 27: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

ConteúdoArquiteturas para processamento paralelo

• Processamento paralelo

• Motivação para a exploração de paralelismo

• Medidas básicas de desempenho

• Complicadores, limitações, principais relações

• Paralelismo com múltiplos processadores

• Classificações

• Paradigmas de Comunicação

• Formas de interconexão

Mem IO

controle

datapath

interconexão

controle

datapath

Page 28: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Bibliografia

BÁSICA

• HENESSY, J L.; PATTERSON, D. Arquitetura de Computadores: Uma Abordagem

Quantitativa. 3ed. Rio de Janeiro: Campus, 2003. 827p.

• WEBER, R. F. Fundamentos de arquitetura de computadores. Porto Alegre: Sagra

Luzzatto, 2000. 262p.

• WEBER, R. F. Arquitetura de Computadores Pessoais. Série Livros Didáticos. 2ed. Porto

Alegre: Sagra Luzzatto, 2001. 271p.

Page 29: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Bibliografia

COMPLEMENTAR

• DE ROSE, C. A. F.; NAVAUX, P. O. Arquiteturas Paralelas. Porto Alegre: Sagra Luzzatto,

2003. 152p.

• HERZOG, J. H; Design and Organization of Computer Structures. Wilsonville: Franklin,

Beedle & Associates, 1996. 584p.

• LOURENÇO, A. C, CRUZ, E. C, FERREIRA, S.; JÚNIOR, S. Circuitos Digitais. 3ed. São

Paulo: Érica, 1999. 321p.

• MURDOCCA, Miles J., HEURING, Vincent P. Introdução à Arquitetura de Computadores.

Rio de Janeiro: Campus, 2000. 512p.

• Stallings, William. Arquitetura e Organização de Computadores: Projeto para o

Desempenho. São Paulo: Prentice Hall, 2005. 786p.

Page 30: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Relação com o Curso

Page 31: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Relação com o Curso

Page 32: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Relação com o Curso

Page 33: Organização e Arquitetura de Computadores - inf.pucrs.bremoreno/undergraduate/SI/orgarq/class_files/Aula... · a organização lógica dos computadores. Níveis de abstração que

Relação com o Curso