Organização e Arquitetura de Computadores -...
Transcript of Organização e Arquitetura de Computadores -...
Organização e Arquitetura de
Computadores
Aula Introdutória
Alexandre Amory
Edson Moreno
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
• 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
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
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
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
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
Transistor
Porta lógica
Circuito
Elemento de processamento
Multicore
Tecnologia de fabricação
Power Wall
* Computer Organization and Design: The Hardware and Software Interface
Power Wall
* Computer Organization and Design: The Hardware and Software Interface
Power Wall
* Computer Organization and Design: The Hardware and Software Interface
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 !!!!
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
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
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
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/
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
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
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
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
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
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
…
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.
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.
Relação com o Curso
Relação com o Curso
Relação com o Curso
Relação com o Curso