Conteúdo / Main content
Menu Rodapé
  1. Início
  2. Cursos
  3. Engenharia Informática
  4. Arquitetura de Computadores

Arquitetura de Computadores

Código 14332
Ano 1
Semestre S2
Créditos ECTS 6
Carga Horária PL(30H)/T(30H)
Área Científica Informática
Objectivos de Aprendizagem Esta unidade curricular tem como objetivos que os alunos adquiram conhecimentos sobre:
A) Estrutura e modo de funcionamento dos computadores digitais;
B) Linguagens de programação de alto-nível e linguagem máquina;
C) Execução das instruções pelo processador;
D) Análise do desempenho e técnicas para melhoria do desempenho;
E) Organização da memória;
F) Microprocessadores versus microcontroladores;
G) Programação em linguagem de baixo nível (Assembly).

No final da unidade curricular o aluno deve saber descrever a estrutura interna de um processador digital e o modo como são executados os programas. O aluno também ficará a conhecer as principais caracteristicas de outros elementos que constituem um computador digital como a memória e os periféricos de entrada e de saída. O aluno deve assim ficar a entender a arquitetura de um computador digital, quais os seus elementos principais e o modo como se interligam. Isto irá permitir-lhe acompanhar a constante evolução tecnológica da área.
Conteúdos programáticos Aulas teóricas
- Introdução à arquitetura dos computadores: unidades de entrada/saída, memória, unidade de processamento;
- Tecnologia dos computadores e evolução histórica;
- Arquitetura de Von Neumann, memória de dados e de programas;
- Códigos de representação;
- Estrutura dos processadores: registos, ALU(Aritmetic and Logic Unit), unidade de controlo;
- Barramentos (bus): controlo, dados e endereços;
- Hierarquia de memória: cache, memória principal, memória secundária.
- Avaliação do desempenho;
- Técnicas para melhoria do desempenho: arquitecturas RISC& CISC, pipelining, paralelismo, multiprocessamento, GPU, técnicas de compilação;
- Arquiteturas de microcomputadores (Harvard) – placas Arduino e Raspberry Pi;
- Embedded Systems;

Aulas práticas
- Programação em linguagem Assembly x86, usando o assembler FASM (Flat Assembler);
- Programação usando a placa microcontrolada Arduino no simulador Tinkercad;
Metodologias de Ensino e Critérios de Avaliação Aulas teóricas: exposição dos conceitos ;
Aulas práticas: resolução de exercícios práticos em laboratório com computadores;

Avaliação
Teórica(TE) (freq. / exames) = 12 valores , realização obrigatória

Prática(TP) = 8 valores, dois trabalhos feitos na aula, ambos de realização obrigatória, com entrega de um pequeno relatório(pode ser apenas uma folha de rosto); a nota dos trabalhos conta para todos os exames.
Adicionalmente, realização de trabalhos práticos semanais, não cotados, para consolidação de conhecimentos.

Mínimos: TE+TP = 6, ter presença na frequência de avaliação e realizar os dois trabalhos cotados.

Atribuição da classificação de Não Admitido:
- não cumprimento dos mínimos;
- fraude comprovada em qualquer elemento de avaliação;

Em caso de dúvida pode ser solicitada a defesa/justificação de qualquer um dos elementos de avaliação.
Bibliografia principal [1] “Arquitetura e organização de computadores”, William Stallings, Pearson, 2017;
[2] “Computer Systems - Digital Design, Fundamentals of Computer Architecture and Assembly Language”, Ata Elahi, Springer, 2018;
[3] “Essentials of Computer Architecture”, Douglas Comer, Second edition, CRC Press, 2017;
[4] “Computer Architecture: A Quantitative Approach”, John L. Hennessy, David A. Patterson; Morgan Kaufmann Publishers, 6th Edition, 2017;
[5] “ARQUITETURA DE COMPUTADORES”, 5ª Edição Atualizada, José Delgado, Carlos Ribeiro, FCA, 2014
[6] Textos disponíveis na página da cadeira e apontamentos das aulas (IntroFASM.pdf)
Língua Português
Data da última atualização: 2024-04-09
As cookies utilizadas neste sítio web não recolhem informação pessoal que permitam a sua identificação. Ao continuar está a aceitar a política de cookies.