General information


Subject type: Mandatory

Coordinator: Rosa Herrero Antón

Trimester: Second term

Credits: 4

Teaching staff: 

Xavier-marti Carne Mohedano

Teaching languages


  • Catalan

The documentation of the subject will be mostly in English. Poden haver-hi documents en castellà i català, però l'idioma principal serà anglès.

Therefore, the student must be able to read English correctly.

Skills


Basic skills
  • B2_That students know how to apply their knowledge to their job or vocation in a professional way and have the skills they demonstrate by developing and defending arguments and solving problems within their area of ​​study

  • B5_That students have developed those learning skills necessary to undertake further studies with a high degree of autonomy

Transversal competences
  • T1_That students know a third language, which will be preferably English, with an adequate level of oral and written form, according to the needs of the graduates in each degree

  • T2_That students have the ability to work as members of an interdisciplinary team either as one more member, or performing management tasks in order to contribute to developing projects with pragmatism and a sense of responsibility, making commitments taking into account the available resources

Description


In general, this subject covers the following descriptors specified for the subject to which it belongs (Architecture, Operating Systems and Computer Networks):

1.- Processors of specific purpose, RISC processor (unicycle and multicycle)

2.- Machine language and assembler of a RISC processor, structure of the logical space of a program

3.- Introduction to the memory hierarchy (cache) and to the input / output subsystem 

4.- Introduction to the support of the architecture to the operating system (virtual memory, TLB)

5.- Concurrence, entry / exit and buses (survey, interruptions, DMA, I / O type)

6.- Programming in processor assembly language (RISC and CISC) and link with high level languages

7.- Internal structures in the memory hierarchy (disks, main memory, caches, error detection and correction mechanisms)

8.- Introduction to linear and multiprocessor segmented processors

9.- Introduction to operating systems (types of operating systems and characteristics, processes, flows, address spaces, execution modes, basic commands)

10.- Address space management (system services, memory management, virtual memory, swap, thrashing, basic support structures)

11.- Input / output management (system services, buffering, spooling, device independence, basic support structures)

For the follow-up of the subject the student works with his personal computer (laptop) that will have to take to each and every one of the classes

Contents


Topic 1- Introduction

  • Introduction to microcontrollers and microprocessors. Basic differences and main features Introduction to the Arduino hardware platform and the Atmel328P microcontroller

Topic 2 - Architectures

  • The CISC vs RISC systems
  • Records vs. Memory
  • Inputs and Outputs. Analog and Digital

Topic 3 - Process management

  • Special registers (PC, SP, FP, Status Register)
  • Calls and functions.
  • Stack

Item 4 - Set of instructions and modes of addressing

  • The set of instructions and operation codes
  • Addressing modes

Topic 5 - The interruptions

  • How to modify the life cycle of a program. Enabling and disabling interrupts. Priorities. Interruption Management Routines. Clocks and Timers

Evaluation system


  • Written test: 55%
  • Challenge: 15%
  • Practical activities 25%
  • Continuous assessment: 5%

All notes are mandatory. Only the final practice (challenge) and written tests can be retaken.

For the written tests, the average of the tests must have a minimum rating of 5.0. If the grade is lower than 5.0 then the subject will be suspended and the final grade of the subject will be that of the written tests.

REFERENCES


Basic

Margolis, M, (2012), Arduino Cookbook, Recipes to Begin, Expand, and Enhance your Projects, Second Edition, O'Reilly Media, ISBN: 978-1-449-31387-6

Purdum, Jack, Beginning C for Arduino, Springer Science + Business Media, ISBN: 978-1-4302-4776-0, ISBN: 978-1-4303-4777-7 (eBook)

Presentations and notes of the subject in Moodle