Aviso: Se está a ler esta mensagem, provavelmente, o browser que utiliza não é compatível com os "standards" recomendados pela W3C. Sugerimos vivamente que actualize o seu browser para ter uma melhor experiência de utilização deste "website". Mais informações em webstandards.org.

Warning: If you are reading this message, probably, your browser is not compliant with the standards recommended by the W3C. We suggest that you upgrade your browser to enjoy a better user experience of this website. More informations on webstandards.org.

Sub Menu
ISCTE-IUL  >  Ensino  >  LEI , LEI-PL

Microprocessadores (2 º Sem 2019/2020)

Código: L0706
Acrónimo: L0706
Nível: 1º Ciclo
Estruturante: Não
Língua(s) de Ensino: Português
Língua(s) amigável(is):
Ser English-friendly ou qualquer outra língua-friendly, significa que a UC é leccionada numa língua mas que se pode verificar qualquer uma das seguintes condições:
1. Existem materiais de apoio em língua inglesa/outra língua;
2. Existem exercícios, testes e exames em língua inglesa/outra língua;
3. Existe a possibilidade de se apresentar trabalhos escritos ou orais em língua inglesa/outra língua.
1 6.0 18.0 h/sem 18.0 h/sem 18.0 h/sem 0.0 h/sem 0.0 h/sem 0.0 h/sem 1.0 h/sem 55.0 h/sem 95.0 h/sem 0.0 h/sem 150.0 h/sem
Em vigor desde o ano letivo 2018/2019
Pré-requisitos Nenhuns.
Objectivos No final do semestre, o aluno deverá:
- compreender o funcionamento de um processador com uma arquitectura básica;
- enumerar técnicas utilizadas para aumento do desempenho de um processador;
- conhecer a hierarquia de um sistema de memória actual;
- compreender o funcionamento das arquitecturas paralelas atuais.
Programa 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.
Processo de avaliação A avaliação pode ser feita como avaliação periodica (2 avaliações intercalares) ou avaliação final, e engloba duas componentes:
- Teoria (60%). Exame relativamente ao conteúdo da teoria.
- Laboratório (40%). Realização de um teste de escolha múltipla relativamente ao conteúdo dos laboratórios. A nota do Laboratório superior ou igual a 10 valores é mantida na 1ª e 2ª Época. Os alunos com nota inferior ou sem as duas avaliações intercalares serão reavaliados só na 2ª Época.
Processo de ensino-aprendizagem Aulas teórico-práticas (1h30 por semana) e práticas/laboratoriais (3h00 por semana).

Além da assiduidade às aulas espera-se do aluno um tempo de trabalho autónomo de, em média, cerca de 6 horas semanais para consulta da bibliografia, revisão de matéria dada, resolução de exercícios propostos e preparação dos Laboratórios.
Observações Nenhumas.
Bibliografia básica - Computer Organization and Design: The Hardware / Software Interface, Revised 4th Edition, David Patterson e John Henessy, Morgan Kaufmann, 2012;

- Arquitectura de Computadores: dos Sistemas Digitais aos Microprocessadores,  2ª Edição,  Guilherme Arroz, José Monteiro e Arlindo Oliveira, IST Press, 2009;

- Introduction to Parallel Computing. Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar. Addison Wesley, 2003.

- Textos de apoio disponibilizados no e-learning


       

Bibliografia complementar -X86 Assembly Language and C fundamentals, J. Cavanagh, CRC Press, 2013

- Structured Computer Organization, 5th Edition, Andrew Tanenbaum, Prentice-Hall, 2005.

- CUDA by Example: An Introduction to General-Purpose GPU Programming. J. Sanders, E. Kandrot. Addison-Wesley, 2010