ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES

Obrigatória: Sim (*)

Carga Horária: 60 H

Créditos: 4

OBJETIVOS:
Estudo das diferentes alternativas de arquitetura e organização de um computador, analisando o seu impacto sobre métricas como custo e desempenho.

EMENTA:
Revisão de conceitos básicos de arquitetura e organização de computadores. Conjuntos de instruções. Pipelines. Exploração do paralelismo no nível de instrução: superescalaridade, VLIW, processamento vetorial. Organização de memória: cache, memória virtual. Entrada e saída: dispositivos, conexões e desempenho.

PROGRAMA:
1. Revisão de conceitos básicos
1.1 Aritmética binária, ponto fixo, ponto flutuante
1.2 Mecanismos de interrupção e exceção
2. Conjuntos de instruções
2.1 Alternativas e princípios
2.2 CISC (Complex Instruction Set Computer)
2.3 RISC (Reduced Instruction Set Computer)
3. Pipelining
3.1 Implementação
3.2 Problemas relacionados
4. Exploração do Paralelismo no Nível de Instrução
4.1 Processadores superescalares
4.2 Processadores VLIW (Very Large Instruction Word)
4.3 Processadores vetoriais
4.4 Estudo de casos
5. Organização de memórias
5.1 Caches
5.2 Memória virtual
6. Entrada e saída
6.1 Tipos de dispositivos
6.2 Tipos de conexões
6.3 Desempenho

Bibliografia

El-Rewini, H.; Abd-El-Barr, M.
Advanced Computer Architecture and Parallel Processing. 2005.

Hennessy, J. L.; Patterson, D. A.; Goldberg, D.
Computer Architecture: A Quantitative Approach. 3rd ed, 2003.

Patterson, D. A.; Hennessy, J. L.
Organização e Projeto de Computadores: a Interface Hardware/Software. 2a ed, 2000.

Stallings, W.
Computer Organization and Architecture: Designing for Performance. 2002.

Wilkinson, B.
Computer Architecture: Design and Performance. 2nd ed, 1996.

(*) A disciplina pode ser dispensada, por meio de uma prova, mas sem aproveitamento dos créditos.