Ficha Unidade Curricular (FUC)

Informação Geral / General Information


Código :
L0706
Acrónimo :
L0706
Ciclo :
1.º ciclo
Línguas de Ensino :
Português (pt)
Língua(s) amigável(eis) :
Inglês

Carga Horária / Course Load


Semestre :
2
Créditos ECTS :
6.0
Aula Teórica (T) :
18.0h/sem
Aula Teórico-Prática (TP) :
18.0h/sem
Aula Prática e Laboratorial (PL) :
18.0h/sem
Trabalho de Campo (TC) :
0.0h/sem
Seminario (S) :
0.0h/sem
Estágio (E) :
0.0h/sem
Orientação Tutorial (OT) :
1.0h/sem
Outras (O) :
0.0h/sem
Horas de Contacto :
55.0h/sem
Trabalho Autónomo :
95.0
Horas de Trabalho Total :
150.0h/sem

Área científica / Scientific area


Arquitectura de Computadores e Sistemas Operativos

Departamento / Department


Departamento de Ciências e Tecnologias da Informação

Ano letivo / Execution Year


2024/2025

Pré-requisitos / Pre-Requisites


Esta disciplina não tem pré-requisitos formais em termos de aprovação em cadeiras anteriores. Contudo, é aconselhável que os estudantes saibam manipular e realizar operações aritméticas sobre números inteiros representados em diferentes bases de numeração.

Objetivos Gerais / Objectives


No final do semestre, o aluno deverá: - Compreender o funcionamento de um processador com uma arquitectura básica; - Conseguir enumerar técnicas utilizadas para melhorar o desempenho de um processador; - Conhecer a hierarquia de um sistema de memória actual; - Compreender o funcionamento das arquitecturas paralelas atuais.

Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes


OA1. Compreender o significado de medidas de desempenho e saber quantificar o ganho trazido por modificações numa arquitectura. OA2. Saber de que modo são geralmente estruturadas as instruções-máquina. OA3. Saber de que forma se processa a execução de um programa, compreendendo os principais mecanismos nela envolvidos. OA4. Distinguir os principais elementos numa arquitectura básica de um processador e saber de que forma se relacionam entre si. OA5. Compreender o conceito de pipeline e saber identificar conflitos de estruturais, de dados e de controlo. OA6. Compreender o funcionamento de uma memória cache. OA7. Compreender o funcionamento e desenho das arquitecuras paralelas actuais. OA8. Saber como escrever um programa paralelo em MPI.

Conteúdos Programáticos / Syllabus


CP1. Medidas de desempenho - Análise do desempenho; - Factores que influenciam o desempenho; - Lei de Amdahl e speed-up; - Benchmarks CP2. Conjunto de instruções - Formatos de instrução - Operações com Registos e Memórias - Procedimentos e utilização da pilha - Compilação e optimização - RISC vs CISC: ARM, x86 CP3. Unidade aritmética - Representação em vírgula flutuante (FP); - Arquitectura para FP. CP4.Arquitectura básica de um processador - Fases de uma instrução - Unidade de controlo e datapath - Processamento uni-ciclo e multi-ciclo. - Pipelining: Desempenho, e conflitos: - Melhoria do desempenho CP5. Sistemas de memória - Hierarquias de memória; - Memória cache; CP6. Arquitecturas paralelas - Medidas de desempenho; - Arquitecturas de memória partilhada; - Arquitecturas de memória distribuída; - Arquitecturas baseadas em GPU.

Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular units content dovetails with the specified learning outcomes


A interligação entre os conteúdos programáticos (CP) e os objetivos de aprendizagem (OA) realiza-se da seguinte forma: - CP1. Medidas de desempenho: OA1 - CP2. Conjuntos de instruções: OA2, OA3 - CP3. Unidade aritmética: OA4 - CP4. Arquitectura básica de um processador: OA4, OA5 - CP5. Sistemas de memória: OA6 - CP6. Arquitecturas paralelas: OA7, OA8

Avaliação / Assessment


A avaliação pode ser efectuada ao longo do semestre ou apenas por exame final: A - Avaliação ao longo do semestre: A avaliação é feita por 2 testes escritos, um efectuado durante o período lectivo e o outro na data do exame de 1ª época. Cada teste conta 50% para a nota final e não tem nota mínima. B - Avaliação por exame: A avaliação é feita por um exame final (em 1ª época ou em 2ª época ou em época especial) com um peso de 100% na nota final. Nota mínima: 9.5 valores.

Metodologias de Ensino / Teaching methodologies


Esta disciplina inclui: - Aulas teóricas (1h30 por semana), onde a matéria teórica é apresentada; - Aulas teórico-práticas (1h30 por semana), usadas para consolidar os conhecimentos adquiridos através da exploração de exemplos e da resolução de exercícios práticos; - Aulas práticas-laboratoriais (1h30 por semana), usadas para consolidar os conhecimentos adquiridos através da implementação prática em laboratório. Além da assiduidade às aulas espera-se do aluno um tempo de trabalho autónomo de, em média, cerca de 3h30 semanais para consulta da bibliografia, revisão de matéria dada, resolução de exercícios propostos e preparação dos laboratórios.

Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes


As metodologias de ensino visam o desenvolvimento das principais competências de aprendizagem dos alunos que permitam atingir cada um dos objectivos de aprendizagem. As principais interligações entre as metodologias de ensino e os respectivos objectivos de aprendizagem (OA) são as seguintes: - Aulas teóricas: OA1, OA2, OA3, OA4, OA5, OA6, OA7, OA8; - Aulas teórico-práticas: OA1, OA2, OA3, OA4, OA5, OA6, OA7, OA8. - Aulas práticas-laboratoriais: OA1, OA2, OA3, OA4, OA5, OA6, OA7, OA8. O documento de Planeamento de Unidade Curricular (PUC), detalhado para cada aula, evidencia a relação entre os métodos pedagógicos de ensino e os objectivos de aprendizagem. A relação entre cada instrumento de avaliação e os objectivos de aprendizagem é a seguinte: - Testes escritos: OA1, OA2, OA3, OA4, OA5, OA6, OA7, OA8; - Exame final: OA1, OA2, OA3, OA4, OA5, OA6, OA7, OA8.

Observações / Observations


Toda a documentação necessária ao acompanhamento dos conteúdos leccionados na unidade curricular está disponível na plataforma de e-learning do ISCTE-IUL (i.e., Moodle), onde também serão publicados os resultados da avaliação. A assiduidade não é contabilizada para a avaliação desta disciplina.

Bibliografia Principal / Main Bibliography


David Patterson, John Henessy, Computer Organization and Design - MIPS Edition: The Hardware/Software Interface, 6th Edition, Morgan Kaufmann, 2020.

Bibliografia Secundária / Secondary Bibliography


Guilherme Arroz, José Monteiro, Arlindo Oliveira, Arquitectura de Computadores: dos Sistemas Digitais aos Microprocessadores, 5ª Edição, IST Press, 2020. J. Cavanagh, X86 Assembly Language and C fundamentals, CRC Press, 2013. A. Tanenbaum, Structured Computer Organization , 6th Ed., Prentice Hall, 2012.

Data da última atualização / Last Update Date


2024-07-25