Arquitectura de Computadores

Conhecimentos de Base Recomendados

Não existem pré-requisitos para esta Unidade Curricular. 

Métodos de Ensino

As aulas decorrerão em sala de informática. As aulas são teórico-práticas. 

Os estudantes receberão os materiais da UC com antecedência, de modo a que tomarem contacto com esses elementos antes da aula, privilegiando a metodologia sala de aula invertida e o envolvimento dos estudantes com os temas. 

Os estudantes são incentivados a participar nas aulas sendo, para tal, lançados desafios para participação dos estudantes usando Mentimeter em pelo menos uma aula da semana. 

O trabalho de investigação – que incide sobre uma de diversas áreas propostas – será entregue logo na primeira aula e pressupõe a elaboração de um pitch e de uma apresentação final, o que permite que os estudantes vão investigando o tema ao longo do semestre. 

A metodologia de ensino e de avaliação pretende preparar os estudantes para a vida prática: intervir, argumentar, pesquisar, trabalhar em equipa, gerir conflitos, preparar apresentações e apresentar trabalhos. 

Resultados de Aprendizagem

Objetivos

Os objetivos desta Unidade Curricular são os seguintes:

– Explorar a componente de hardware do computador, desvendando o mistério da “caixa negra” dos componentes internos e conhecer os conceitos elementares da arquitetura e organização, função e estrutura. 
– Conhecer a retrospectiva histórica sintética até aos processadores e componentes recentes. Conhecer a atualidade ao nível da evolução dos componentes e dispositivos I/O. 
– Conhecer aspetos sobre o equilíbrio de desempenho, técnicas para otimização de processamento e medidas de performance e Benchmarks. 
– Conhecer aspetos relacionados com o processador e ligações a outros componentes, memória cache (e técnicas de otimização de desempenho a esse nível), outras memórias internas e memórias externas.
– Conhecer a evolução das memórias.
– Compreender o funcionamento do sistema operativo no que respeita à relação deste com a arquitetura das máquinas, a representação dos dados e mecanismos de endereçamento de memória.
– Dominar uma linguagem de programação de baixo nível (Little Man Computer) e exploração do paralelismo com uma linguagem de alto nível.
– Desenvolver espírito crítico quanto às propostas de soluções em programação de baixo nível.

Competências

Espera-se que, no final dos semestre, os estudantes desenvolvam as seguintes competências: 

1) manipular componentes, compreensão das possibilidades de compatibilidade e de atualização de componentes internos em máquinas e fazer opções quanto à escolha de benchmarks de comparação
2) estar apto a indicar as melhores escolhas em relação a dados em programação de alto nível por compreensão de uma linguagem de programação de baixo nível 
3) desenvolvam e comprovem as suas competências na área da pesquisa de fontes sobre um tema específico, de comunicação (apresentação do trabalho perante os colegas) e espírito crítico (revisão interpares);
4) desenvolvam competências de trabalho em equipa;
5) desenvolvam competências na área de revisão do trabalho desenvolvido por outras equipas.

 

Justificação dos objetivos e dos métodos de ensino e de avaliação: 

A unidade curricular de Arquitetura de Computadores pretende explorar vertentes relacionadas com a componente de hardware do Computador, desvendando o mistério da “caixa negra” relativamente aos componentes internos de uma máquina computacional. Assim, os alunos terão aulas teórico-práticas sobre os diversos temas e realizarão um trabalho de investigação sobre um dos temas propostos pela docente, onde se espera que diversas competências sejam aplicadas e melhoradas. 

No que respeita às aulas, inicia-se o estudo da unidade curricular com conceitos elementares acerca de arquitetura e organização, função e estrutura de uma máquina computacional. É efetuada uma retrospectiva histórica sintética até aos processadores e componentes mais recentes.

A abordagem aos componentes internos de um sistema computacional tem também como objetivo o desenvolvimento de competências elementares ao nível da manipulação desses componentes, compreensão das possibilidades de compatibilidade e de atualização. O estudo dos componentes internos inicia-se com a abordagem do processador e das suas interligações aos diversos componentes.

Aplicam-se métodos de ensino que permitem compreender de que forma é que as diversas UCs se relacionam com Arquitetura de Computadores, permitindo assim uma assimilação mais concreta dos diversos tópicos e que os alunos percepcionem a coerência do plano curricular da Licenciatura em Informática de Gestão, logo a partir do 1.º semestre. 

Finalmente, entende-se que a proposta de avaliação contínua é a que melhor corresponde à melhor assimilação das temáticas, sendo proposta a realização de 3 testes de avaliação, para além do trabalho de investigação já mencionado.

Os alunos são incentivados, durante todo o semestre e como pedra angular do seu conhecimento em hardware e software de baixo nível, a conhecerem a atualidade ao nível da evolução dos componentes e dispositivos I/O, bem como a participar em diversas iniciativas realizadas por parceiros da Escola como o ISACA Lisbon Chapter – Conferência e X-Sessions e no âmbito das atividades realizadas pelo ISACA Student Group do ISCAC. 

Programa

PARTE 1 – Visão Genérica

– 1. Introdução ao estudo da Arquitetura de Computadores: Computadores e Sistemas

– 2.Introdução ao estudo dos Sistemas e da Arquitetura dos Sistemas (Englander 4.ª e 5.ª edições)

 

PARTE 2 – Dados
– 3. Sistemas de Numeração

– 4.Formatos dos Dados

– 5. Representação de dados numéricos

PARTE 3 – Arquitetura de Computadores e funcionamento do Hardware
– 6. O Little Man Computer (LMC)

– 7. CPU e Memória

– 8. CPU e Memória: projeto, aperfeiçoamento e implementação

– 9. Entrada/Saída (I/O)

– 10. Periféricos

– 11. Sistemas Computacionais atuais

 

Docente(s) responsável(eis)

Estágio(s)

NAO

Bibliografia

Bibliografia Principal): 

Irv Englander, The Architecture of Computer Hardware and Systems Software – An Information Technology Approach, 6.th edition, John Willey & Sons, 2021

Bibliografia de consulta opcional para os trabalhos de investigação: 

William Stallings, Computer Organization and Architecture, 10th edition, Prentice-Hall Intern., janeiro 2015
Delgado, José, Ribeiro, Carlos, Arquitetura de Computadores, 5.ª edição, FCA Editores, 2014

Bibliografia Avançada: 

Null, Linda e Lobur, Júlia, Essentials of Computer Organization and Architecture, 3.rd edition, dezembro, 2010
Nicholas Carter, Computer Architecture, Bookman, 2002, Coleção Schaum
Goodman & Miller, A Programmer’s View of Computer Architecture, Saunders College Publishing, 2011