Saltar para:
Logótipo
Você está em: Início > L.EEC012

Arquitetura de Computadores

Código: L.EEC012     Sigla: AC

Áreas Científicas
Classificação Área Científica
OFICIAL Eletrónica e Sistemas Digitais

Ocorrência: 2023/2024 - 1S Ícone do Moodle

Ativa? Sim
Unidade Responsável: Departamento de Engenharia Eletrotécnica e de Computadores
Curso/CE Responsável: Licenciatura em Engenharia Eletrotécnica e de Computadores

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
L.EEC 272 Plano Oficial 2 - 6 52 162
Mais informaçõesA ficha foi alterada no dia 2023-09-07.

Campos alterados: Objetivos, Resultados de aprendizagem e competências, Pre_requisitos, Métodos de ensino e atividades de aprendizagem, Fórmula de cálculo da classificação final, Bibliografia Obrigatória, Obtenção de frequência, Programa, Observações, Software de apoio à Unidade Curricular, Componentes de Avaliação e Ocupação, Melhoria de classificação

Língua de trabalho

Português

Objetivos

Esta unidade curricular introduz os princípios de funcionamento de um computador moderno e a sua arquitetura geral, com ênfase na contribuição de cada subsistema para o desempenho global.

A análise da tecnologia de implementação física dos computadores (em especial da organização do CPU e da hierarquia de memória), assim como da arquitetura do conjunto de instruções (ISA), possibilitará aos estudantes identificar e descrever princípios fundamentais da operação dos computadores, das linguagens de programação (assembly em particular), e do desenvolvimento de software.

Resultados de aprendizagem e competências

Após completarem esta unidade curricular, os estudantes deverão ser capazes de:

  • Identificar e descrever os principais subsistemas de um computador pessoal: unidade de processamento, memória e periféricos;
  • Explicar e avaliar o desempenho de computadores em cenários simples envolvendo a equação fundamental do desempenho e a lei de Amdahl;
  • Classificar e caracterizar os tipos de instruções de uma unidade de processamento;
  • Explicar os princípios básicos da codificação de instruções e identificar o seu impacto sobre o desempenho;
  • Escrever programas simples em linguagem "assembly" RISC-V envolvendo operações aritméticas e booleanas, comparações e saltos;
  • Descrever o funcionamento de uma unidade de processamento uniciclo;
  • Descrever e explicar o conceito de "pipeline" e o seu impacto no desempenho;
  • Descrever o funcionamento de uma unidade de processamento em "pipeline";
  • Aplicar os conhecimentos de máquinas de estados à análise da unidade de controlo de uma unidade de processamento em "pipeline";
  • Identificar os conflitos de dados e de controlo que podem surgir numa unidade de processamento em "pipeline";
  • Calcular o impacto dos conflitos de "pipeline" no desempenho para cenários simples;
  • Distinguir entre memórias estáticas e dinâmicas, e identificar as respetivas áreas de utilização;
  • Explicar o princípio de funcionamento dos dois tipos de memórias;
  • Identificar os vários níveis da hierarquia de memória de um computador pessoal;
  • Explicar o princípio de funcionamento da memória "cache";
  • Descrever a organização de uma memória "cache" (associatividade) e o tratamento de faltas no acesso a memória;
  • Avaliar numericamente a influência da hierarquia de memória sobre o desempenho.

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

Bons conhecimentos na área de Sistemas Digitais assim como noções básicas de Programação.

Programa

O programa de Arquitetura de Computadores é composto pelos seguinte tópicos:


  • Introdução. Áreas de aplicação de computadores e suas características. Programas: linguagens de alto nível, linguagens de baixo nível. Modelo conceptual da execução de um programa.

  • Componentes de um computador: CPU (percurso de dados e unidade de controlo), memória e periféricos de entrada/saída. Evolução da tecnologia de processadores e memórias.

  • Noções básicas de desempenho de CPUs. Equação básica de desempenho. Benchmarks (SPEC). Consumo de energia. Lei de Amdahl.

  • Conjunto de instruções de um processador RISC-V. Tipos de instruções: aritméticas, lógicas, comparação e salto. Modos de endereçamento. Codificação de instruções.

  • Conceitos básicos de programação em linguagem "assembly". Análise e implementação de programas simples com recurso a um emulador da arquitetura RISC-V (RARS).

  • Organização de uma unidade de processamento. Organização uniciclo de um CPU. Conceito de pipelining. Organização de um percurso de dados em pipeline. Controlo de pipeline. Conflitos de pipeline: conflitos de dados e de controlo. Estratégias de tratamento dos conflitos. Impacto dos conflitos sobre o desempenho.

  • Memórias estáticas e dinâmicas: organização e modelo conceptual. Hierarquia de memória.

  • Memória cache: princípio de funcionamento, organização interna, associatividade e tratamento de faltas. Desempenho de CPU com memória cache. Redução das penalidades associadas a falhas de acesso.

Bibliografia Obrigatória

David A. Patterson & John L. Hennessy; Computer Organization and Design, The Hardware/Software Interface - RISC-V edition, Elsevier, 2nd edition, 2021. ISBN: 978-0-12-820331-6
António José Araújo, Hélio Sousa Mendonça; Slides, conjuntos de exercícios e outros documentos, 2023

Métodos de ensino e atividades de aprendizagem

Nas aulas teóricas serão expostos os assuntos sobre arquitetura de computadores em geral e a arquitetura RISC-V em particular, acompanhados da resolução de exercícios.

Nas aulas práticas laboratoriais serão resolvidos exercícios envolvendo os assuntos abordados nas aulas teóricas. Adicionalmente serão desenvolvidos e testados programas simples em "assembly" RISC-V recorrendo a um simulador (RARS), assim como utilizadas ferramentas de apoio que detalham a operação interna do CPU e de memória cache.

Software

RARS

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 60,00
Teste 40,00
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Estudo autónomo 110,00
Frequência das aulas 52,00
Total: 162,00

Obtenção de frequência

A obtenção de frequência exige que os estudantes se inscrevam em turmas (para participarem nas aulas PL) e não excedam o número limite de faltas, correspondente a 25% das aulas PL previstas, isto é, não tenham mais de 3 faltas.

A inscrição nas turmas faz perder a frequência que possam ter obtido em ano anterior.

Fórmula de cálculo da classificação final

A classificação final (CF) da época normal é calculada pela expressão:

CF = 0,4 x Q + 0,6 x E

em que:

  • Q = Questionários realizados em aulas PL
  • E = Exame

Estudantes que tenham obtido frequência (assiduidade) no ano letivo anterior podem obter CF realizando apenas o exame (CF=E) ou, em alternativa, usando a componente de avaliação realizada nas aulas PL (correspondente a Q) obtida no ano anterior e fazer o exame.
Estes estudantes podem ainda optar por se inscrever em turmas, como se fossem estudantes de primeira inscrição, perdendo a frequência (assiduidade) anterior e sendo avaliados como estudantes na primeira inscrição.

Estudantes sem obtenção de frequência não são admitidos a exame.

A classificação obtida no exame da época de recurso, se superior, substitui a classificação obtida no exame (E).

Melhoria de classificação

A melhoria de classificação pode ser efetuada realizando o exame de recurso ou o exame na época normal do ano letivo seguinte.

Observações

Dúvidas relativas a assuntos das aulas PL deverão ser colocadas, preferencialmente, aos docentes das respetivas turmas.

Os docentes responsáveis por esta unidade curricular estão disponíveis para atendimento por marcação (via e-mail) ou em horário a definir:

  • Prof. António José Araújo (AJA), aja@fe.up.pt, gabinete I236;

  • Prof. Hélio Sousa Mendonça (HSM), hsm@fe.up.pt, gabinete I230.

 

Recomendar Página Voltar ao Topo
Copyright 1996-2025 © Faculdade de Engenharia da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2025-06-23 às 05:52:56 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias