DC-UFRPE/Licenciatura Plena em Computação/Arquitetura e organização de computadores
DC-UFRPE/Licenciatura Plena em Computação/Arq. Org. de Computadores
[editar | editar código-fonte]< DC-UFRPE | Licenciatura Plena em Computação
Índice
[editar | editar código-fonte]Programa da Disciplina
[editar | editar código-fonte]Conteúdos do período letivo 2022.1
1 Introdução
1.1 Conceitos Básicos
1.2 Contexto Histórico
1.3 Sistemas Computacionais
2 Processadores
2.1 Aritmética computacional
2.2 Unidade de Lógica e Aritmética
2.3 Unidade de Controle
2.4 Definições iniciais sobre instrução
3 Hierarquia de Memória
3.1 Memória Principal
3.2 Memória cache
3.3 Memória Secundária
4 Entrada e saída (E/S)
4.1 Interfaces e tipos de transmissão
4.2 Dispositivos
4.3 Métodos operativos de E/S
5 Representação de Dados
5.1 Tipos de dado
5.1.1 Caractere
5.1.2 Lógico
5.1.3 Numérico
5.2 Representações.
6 Arquiteturas
6.1 CISC
6.2 RISC
7 Conjunto de instruções
7.1 Formato
7.2 Operandos
7.3 Endereçamento
7.4 Assemby e Assembler
8 Arquiteturas não convencionais (tópico extra)
8.1 Inovações
Nome: Arquitetura e Org. Computadores | Código: 014063 |
Departamento: Computação | Área: DC |
Carga-horária total: 60 horas | Créditos: 4 |
Carga-horária semanal: 4 horas (teóricas: 2; práticas: 2; EAD*: 0) | |
Pré-requisitos: Circuitos Digitais | Co-requisitos: Nenhum |
Ementa
[editar | editar código-fonte]Organização de computadores: memórias, unidades centrais de processamento, entrada e saída. Linguagens de montagem. Modos de endereçamento e conjunto de instruções. Mecanismos de interrupção e de exceção. Barramento, comunicações, interfaces e periféricos. Subsistemas de entrada/saída. Organização hierárquica de memória. Arquiteturas RISC e CISC. Pipeline. Paralelismo de baixa granularidade. Processadores super-escalares e super-pipeline. Introdução à processadores vetoriais, matriciais, multiprocessadores e multi-computadores. Introdução a arquiteturas paralelas e não convencionais. Outras arquiteturas.
Objetivos
[editar | editar código-fonte]Objetivo geral • Entender o funcionamento básico de um processador, suas instruções e seu relacionamento com dispositivos periféricos e de armazenamento
Específicos:
- Estudar o funcionamento básico de um processador;
- Conhecer o fluxo de execução de instruções, estudando todos os principais elementos que operam para sua realização.
- Entender o formato e uso de instruções através do uso de linguagem de montagem e de máquina;
- Entender a hierarquia de memória e seu relacionamento com o processador;
- Entender a interface e formas de comunicação dos dispositivos periféricos com o processador;
- Analisar e avaliar parâmetros de projeto de arquiteturas de computadores
O que é Arquitetura de Computadores? Por que devo estudar?
Conteúdo Programático
[editar | editar código-fonte]- 1. Abstrações e Tecnologia do Computador
1.1 Por baixo de um programa 1.2 Desempenho de computadores 1.3 De uniprocessadores para multiprocessadores
2.1 Operações e operandos de um computador 2.2 Operações com números com e sem sinal 2.3 Representando instruções no computador 2.4 Instruções para tomada de decisões 2.5 Suporte a procedimentos 2.6 Constantes e endereçamento de memória 2.7 Paralelismo e instruções 2.8 Tradução e inicialização de um programa
- 3. O Processador
3.1 Convenções de projeto 3.2 Construindo um datapath 3.3 Datapath Pipeline e controle 3.4 Hazards do pipeline 3.5 Exceções e interrupções 3.6 Superescalares
- 4. Hierarquia de memória
4.1 Os princípios de cache 4.2 Medir e melhorar o desempenho de cache 4.3 Memória virtual 4.4 Máquinas virtuais 4.5 Paralelismo e hierarquias de memória
- 5. Armazenamento e outros temas de E/S
5.1 Confiança, confiabilidade e disponibilidade 5.2 Armazenamento em disco 5.3 Conexão de processadores, memória e dispositivos E/S 5.4 Sistema operacional 5.5 Medidas de desempenho 5.6 Projetando um sistema de E/S
- 6. Multicores, Multiprocessadores e Clusters
6.1 Programas de processamento paralelo 6.2 Multiprocessadores de memória compartilhada 6.3 Clusters e outros multiprocessadores message-passing 6.4 Hardware multithreading 6.5 SISD, MIMD, SIMD e SPMD 6.6 Introdução ao multiprocessador baseado em rede
Links externos de apoio à disciplina
[editar | editar código-fonte]Playlist de apoio feito pela professora da disciplina:
Bibliografia
[editar | editar código-fonte]Bibliografia básica:
[editar | editar código-fonte]- Hennessy, J., Patterson, D., “Computer Organization and Design”, 4 th Edtion Revised Printing, Morgan Kaufmann-Elsevier, 2012.
- Parhami, B. "Arquitetura de Computadores: de microprocessadores a supercomputadores". 1ª Edição. 2008.
- Stallings, W. Arquitetura e Organização de Computadores, décima edição. São Paulo, Makron Books, 2017.
- Hennessy, J., Patterson, D., "Computer Architecture: A Quantitative Approach", 4th edition, Morgan Kaufmann-Elsevier, 2006
Bibliografia Complementar:
[editar | editar código-fonte]- Tanembaum, A.S. Organização Estruturada de Computadores. Rio de Janeiro, LTC, 2001.
- Hennessy, J., Patterson, D., "Computer Architecture: A Quantitative Approach", 3rd edition, Morgan Kaufmann-Elsevier, 2002.
- Hennessy, J., Patterson, D., "Computer Architecture: A Quantitative Approach", 5th edition, Morgan Kaufmann-Elsevier, 2011.
- Clements A. “Computer Organization & Architecture: Themes and Variations”, Cengage Learning, 2013.
- Harris, D., Harris, S. “Digital Design and Computer Architecture”, 2sd edition, Morgan Kaufmann-Elsevier, 2012.
- Stallings, W., “Computer Organization and Architecture”, 9th Edition, 2012