Ementa e Plano de Ensino
Vídeo em produção — será adicionado em breve.
A Disciplina na FGA
Fundamentos de Arquitetura de Computadores (código FGA-193674 / FGA0142) é uma disciplina obrigatória do 4º semestre do curso de Engenharia de Software da Faculdade UnB Gama (FGA), Universidade de Brasília.
A disciplina faz a ponte entre a eletrônica digital (que você já viu no pré-requisito) e o software. Aqui você entende como o processador executa instruções — da representação binária de dados ao pipeline de execução, da linguagem Assembly à hierarquia de memória. Tudo que um engenheiro de software precisa saber sobre a máquina que roda o seu código.
Ficha da Disciplina
Disciplina: Fundamentos de Arquitetura de Computadores
Código: FGA-193674 / FGA0142
Departamento: FGA — Faculdade do Gama
Créditos: 4 (2 Teóricos + 2 Práticos)
Carga horária: 60 horas (15 semanas × 4h/semana)
Semestre: 4º (obrigatória)
Pré-requisito: Teoria de Eletrônica Digital 1 (FGA-119482)
Alimenta: Sistemas Operacionais (FGA-201286), Compiladores 1
Professores que já ministraram:
• Prof. Tiago Alves da Fonseca
• Prof. John Lenon Cardoso Gardenghi
Ementa Oficial
A ementa oficial, extraída do Projeto Pedagógico de Curso (PPC 2016):
- Histórico — Evolução dos computadores, gerações, marcos tecnológicos
- Arquiteturas RISC × CISC — Filosofias de projeto, trade-offs, exemplos reais (ARM, x86)
- Aritmética computacional — Representação de inteiros e ponto flutuante, operações na ULA
- Pipeline — Execução sobreposta de instruções, hazards, forwarding
- Unidade de controle — Controle hardwired e microprogramado
- Barramentos — Comunicação entre processador, memória e dispositivos
- Introdução à programação em linguagem de montagem — Assembly MIPS/RISC-V, instruções, registradores
- Caminho de dados de um processador RISC — Datapath monociclo e multiciclo
- Hierarquia de memória — Modos de endereçamento, memória virtual, memória cache
Cronograma Semestral
Baseado nos planos de ensino dos professores da FGA, a distribuição típica de 15 semanas:
Semana Tópico Nosso Módulo
────── ──────────────────────────────────────── ────────────
1 Introdução: o que é arquitetura, Módulo 1
níveis de abstração, histórico
2 Modelo Von Neumann, ciclo Módulo 1
fetch-decode-execute
3 RISC vs CISC, exemplos reais Módulo 1
(ARM, x86, MIPS, RISC-V)
4 Linguagem de montagem: instruções, Módulo 2
registradores, formatos
5 Operações aritméticas e lógicas Módulo 2
em Assembly
─── P1 (Prova 1) ───
6 Controle de fluxo: branches, Módulo 2
loops, acesso à memória
7 Representação de dados: inteiros, Módulo 3
complemento a 2, overflow
8 Somadores, ULA, carry-lookahead Módulo 3
9 Multiplicação, divisão, Módulo 3
ponto flutuante (IEEE 754)
10 Caminho de dados: datapath Módulo 4
monociclo e multiciclo
─── P2 (Prova 2) ───
11 Pipeline: estágios, hazards, Módulo 4
forwarding, stalls
12 Unidade de controle: hardwired Módulo 4
e microprogramada
13 Memória cache: mapeamento direto, Módulo 5
associativo, write policies
14 Memória virtual: páginas, TLB, Módulo 5
page faults
15 Barramentos e E/S: protocolos, Módulo 5
DMA, interrupções
─── P3 (Prova 3) ───
Bibliografia
Bibliografia básica (oficial do PPC):
- PATTERSON, D.A.; HENNESSY, J.L. Organização e Projeto de Computadores: a Interface Hardware/Software. 5ª ed. Elsevier, 2017.
- TANENBAUM, A.S. Organização Estruturada de Computadores. 5ª ed. Prentice Hall, 2007.
- STALLINGS, W. Arquitetura e Organização de Computadores. 8ª ed. Prentice Hall, 2010.
Referências complementares que usamos neste curso:
- PATTERSON, D.A.; HENNESSY, J.L. Computer Organization and Design: RISC-V Edition. Morgan Kaufmann, 2017 — versão RISC-V do livro principal.
- HARRIS, D.; HARRIS, S. Digital Design and Computer Architecture: RISC-V Edition. Morgan Kaufmann, 2021.
- Simuladores: RARS (RISC-V), MARS (MIPS), Logisim — para prática de circuitos e Assembly.
No harness.os
Arquitetura de computadores não é só hardware — é um modelo mental para sistemas em geral. Cada conceito desta disciplina tem um equivalente direto no harness.os:
Tópico FAC Equivalente no harness.os
──────────────────────────── ─────────────────────────────────────────
Von Neumann (fetch-decode- Ciclo de sessão do agente: carregar
execute) contexto → processar → responder
Assembly / ISA Protocolo MCP tools (o "conjunto de
instruções" que agentes executam)
Pipeline Request pipeline: parse → route →
execute → respond (estágios sobrepostos)
Cache (hierarquia) Prompt cache (TTL de 5min), caching
de knowledge chunks por domínio
Memória virtual Gerenciamento da context window,
endereçamento a nível de tokens
Barramentos / E/S MCP transport: stdio, SSE, HTTP
(protocolos de comunicação entre agentes)
RISC vs CISC Tools simples e focadas vs tools
complexas multi-step
Cada aula termina com uma seção "No harness.os" que faz essa ponte. O homework pede para você identificar, analisar, melhorar ou construir algo no harness.os usando o conceito aprendido.
Método de Avaliação
Na FGA, a avaliação típica combina provas teóricas e trabalhos práticos:
Componente Peso
──────────────────────────────── ─────
P1 (Prova 1 — Módulos 1-2) 20%
P2 (Prova 2 — Módulos 3-4) 30%
P3 (Prova 3 — Módulo 5 + revisão) 30%
Trabalhos práticos (Assembly, 20%
simuladores, laboratórios)
Conceitos:
SS (90-100) | MS (70-89) | MM (50-69)
MI (30-49) | II (1-29) | SR (0)
Frequência mínima: 75%
No nosso curso, usamos quizzes ao final de cada aula e o homework aplicado ao harness.os como avaliação contínua. O importante não é a nota — é entender o conceito bem o suficiente para aplicá-lo.
Homework
- Leia a ementa oficial no PPC da FGA e compare com os módulos que temos aqui. O que falta? O que adicionamos?
- Pesquise qual processador está no seu computador (ou celular). É ARM ou x86? Quantos cores? Qual o tamanho da cache L1, L2, L3? Documente o que encontrar.
- No harness.os, identifique qual mapeamento da tabela acima você acha mais interessante e explique em 2-3 frases por que essa analogia faz sentido (ou onde ela quebra).
Resumo
Verifique seu entendimento
Qual é o pré-requisito de Fundamentos de Arquitetura de Computadores na FGA?
Qual modelo descreve o ciclo básico de um processador como buscar instrução, decodificar e executar?
No mapeamento para o harness.os, o pipeline do processador corresponde a qual conceito?
- FGA-193674: disciplina obrigatória do 4º semestre de Engenharia de Software
- 4 créditos, 60 horas, pré-requisito: Teoria de Eletrônica Digital 1
- Alimenta duas disciplinas subsequentes: Sistemas Operacionais e Compiladores 1
- Ementa cobre: histórico, RISC/CISC, aritmética computacional, pipeline, controle, barramentos, Assembly, caminho de dados, hierarquia de memória
- Semestre dividido em 15 semanas com 3 provas de peso crescente
- Bibliografia principal: Patterson & Hennessy, Tanenbaum, Stallings
- Cada módulo do nosso curso mapeia para um componente real do harness.os