Microprocessor Systems
1
2020-2021
01000340
Digital Systems and Computers
Portuguese
English
Face-to-face
SEMESTRIAL
6.0
Compulsory
1st Cycle Studies
Recommended Prerequisites
Computer Programming (preferably in C language); Laboratory of Digital Systems
Teaching Methods
The theoretical sessions are taught with the help of slides that summarize the contents and provide pointers for the recommended bibliography. The students are advised to read the slides in advance in order to take full advantage of the explanations and develop a critic attitude with respect to the concepts and ideas that are taught.
The lab sessions consist in weekly assignments that apply and illustrate the contents taught during the theoretical courses. The students are supposed to do most of the assignment at home, with the lab contact hours being meant for overcoming eventual difficulties
Learning Outcomes
Microprocessor Systems provides a global view about the functioning of modern computers, filling the gap between the contents taught during the courses of high-level programming languages and digital systems design. At the end of the curricular unit the student is expected to acquire the following skills: (i) proficiency in C programming by fully understanding the interaction between software and hardware; (ii) programming using assembly languages; (iii) knowledge about modern computer architectures and trade-offs that must be taken into account during design; and (iv) understanding the principle of abstraction by layers that enables to built complex engineering systems.
Work Placement(s)
NoSyllabus
Module 1: C language and Hardware
-C Language (revision of basic concepts)
-Pointers and memory addressing
-Memory zones: code segment, static memory, stack, heap and dynamic allocation
-Management of dynamic memory
-I/O ports, interruption and hardware programming
Module 2: Assembly for MIPS
-Basic arithmetic instructions
-Reading and writing in the memory
-Mechnisms for controlling the execution flow
-Instruction codification
-make-ing an Executable
Module 3: Introduction to Computer Architecture
-CPU organization (datapath and control unit)
-Parallel execution using Pipelining
-Memory Hierarchy
-New trends in computer architecture
Head Lecturer(s)
Nuno Miguel Mendonça da Silva Gonçalves
Assessment Methods
Assessment
Frequency: 25.0%
Laboratory work or Field work: 25.0%
Exam: 50.0%
Bibliography
• Computer Organization and Design: The Hardware/Software Interface (5th Edition), by D. Patterson and J. Hennessy, 2013
• The C Programming Language (2nd Edition) by Kernighan and Ritchie, ISBN 0131103628
• The Datacenter as a Computer (2nd Edition) by Barroso and Holzle, 2013