Arquitetura e Organização de Computadores

AOC6 ECTSP2Course Page
Feedback
No reviews yet
Workload
--
Exam
Optional

Description

Objectives

- Identify the fundamental computer architecture components and their roles. - Identify the main processor's components and their role. - Identify the different instruction types and the required mechanisms for their execution. - Understand how a program, written in a high-level language, is executed, including the role of the compiler, assembler, and loader. - Writing of rotines and programs in Assembly language. - Understand the underlying principals of interruptions/exceptions and the interface with processor peripherals. - Understand the importance of a hierarchical memory subsystem and its role in the performance of applications. - Identify the advantages and drawbacks stemming from the evolution of computers with respect to the original architecture.

Syllabus

- Historical evolution of computing systems. - Instruction Set Architectures: operands and instruction types; support for functions; memory map; peripherals interface; handling of interruptions/exceptions. - Processors operation: datapath; control structures; single-cycle and pipelined architectures; advanced processor micro-architectures. - Memory hierarchy: memory decoding; caches structure and operation; multi-level cache systems; physical and virtual addressing and translation. - External buses and peripherals. - Parallel computing architectures and systems.

Prerequisites

Basic programming skills and digital systems concepts

Cross Competence Component

The curricular unit covers the development of transversal competences in Critical and Innovative Thinking, Interpersonal and Intrapersonal Competences (oral, organizational and teamwork, self-discipline, perseverance, self- motivation) and Information and media literacy (ability to locate and access information) in the laboratory component. The grading weight associated with these skills is of around 10%.

Laboratorial Component

The curricular unit involves weekly laboratory work aiming at the monitoring and deepening of the topics taught in theoretical lectures. The evaluation of the laboratory work comprises the demonstration of the performed work, the reports, and the discussion.

Programming And Computing Component

The Computer Architecture discipline comprehends competences in the programming and computing domains, namely through: Assembly programming; the principles of program translation (compilation) from a high-level language to assembly and machine code; the loading of programs; the interface with peripherals; handling of interruptions and exceptions; the impact of the memory subsystem in an application performance and the basic principles of cache-aware programming. These competencies are evaluated through laboratory work (percentage >80%) and the final exam (percentage >50%).

Ethical Principles

All members of a group are responsible for the group’s work In any assessment, every student shall honestly disclose any help received and sources used. In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.