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: 

William Stallings, Computer Organization and Architecture, 11th edition, Prentice-Hall Intern, 2023 (edição de referência para o ano letivo, embora a mais recente – a 10ª, de 2016 – que existe na biblioteca, também possa ser utilizada)

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

Bibliografia Complementar: 

Null, Linda e Lobur, Júlia, Essentials of Computer Organization and Architecture, 3.rd edition, dezembro, 2010
Delgado, José, Ribeiro, Carlos, Arquitetura de Computadores, 5.ª edição, FCA Editores, 2014
Nicholas Carter, Computer Architecture, Bookman, 2002, Coleção Schaum
Goodman & Miller, A Programmer’s View of Computer Architecture, Saunders College Publishing, 2011