Students who choose this specialisation will learn to design computer systems and develop applications for specific architectures, making the best possible use of the resources at their disposal and obtaining high levels of performance. They will also learn to design and implement computer-controlled robotics systems that interact with their environment.
Have a look at the briefing of this specialisation:
Career options
Graduates with specialised training in Computer Engineering have the knowledge and skills to apply basic concepts and techniques for the design of individual processors and multiprocessor systems and to obtain the maximum performance from these systems for running standard applications. They are also able to implement a range of systems, including embedded systems, portable systems, interfaces, robotics systems and any other type of system that interacts with its environment and is controlled by real-time computer architecture. The ability to implement computer technology in an effective and efficient manner makes graduates suitable for a wide range of professional areas, including processor design, application programming, the design and implementation of computer systems and facilities for specific services, and the design of embedded systems, printers and multimedia devices.
Specialization coordinator
| Person | Department | |
|---|---|---|
| Costa Prats, Juan José | AC | jcosta@ac.upc.edu |
Specialization teachers
Technical Competences of each Specialization
COMPUTER ENGINEERING SPECIALIZATION
- CEC1
To design and build digital systems, including computers, systems based on microprocessors and communications systems.- CEC1.1
To design a system based on microprocessor/microcontroller. - CEC1.2
To design/configure an integrated circuit using the adequate software tools.
- CEC1.1
- CEC2
To analyse and evaluate computer architectures including parallel and distributed platforms, and develop and optimize software for these platforms.- CEC2.1
To analyse, evaluate, select and configure hardware platforms for the development and execution of computer applications and services. - CEC2.2
To program taking into account the hardware architecture, using assembly language as well as high-level programming languages. - CEC2.3
To develop and analyse software for systems based on microprocessors and its interfaces with users and other devices. - CEC2.4
To design and implement system and communications software. - CEC2.5
To design and implement operating systems.
- CEC2.1
- CEC3
To develop and analyse hardware and software for embedded and/or very low consumption systems.- CEC3.1
To analyse, evaluate and select the most adequate hardware and software platform to support embedded and real-time applications. - CEC3.2
To develop specific processors and embedded systems; to develop and optimize the software of these systems.
- CEC3.1
- CEC4
To design, deploy, administrate and manage computer networks, and manage the guarantee and security of computer systems.- CEC4.1
To design, deploy, administrate and manage computer networks. - CEC4.2
To demonstrate comprehension, to apply and manage the guarantee and security of computer systems.
- CEC4.1
Subjects
Specialization compulsory subjects
- Computer Architecture II (AC2)
- Prerequisite: AC - Computer Architecture
- Multiprocessors (MP)
- Prerequisite: AC2 - Computer Architecture II
- Prerequisite: PAR - Parallelism
- Computer Engineering Project (PEC)
- Precorequisite: AC2 - Computer Architecture II
- Precorequisite: DSBM - Design of Microcomputer-Based Systems
- Precorequisite: SO2 - Operating Systems II
- Design of Microcomputer-Based Systems (DSBM)
- Prerequisite: CI - Computer Interfacing
- Operating Systems II (SO2)
- Prerequisite: SO - Operating Systems
- Computer Networks II (XC2)
- Prerequisite: XC - Computer Networks
Specialization complementary subjects
- VLSI (VLSI)
- Prerequisite: AC - Computer Architecture
- Real-Time Systems (STR)
- Prerequisite: CI - Computer Interfacing
- Prerequisite: SO - Operating Systems
- Advanced Concepts On Operating Systems (CASO)
- Orequisite: SO2 - Operating Systems II
- Orequisite: SOA - Advanced Operating Systems
- Architecture-Aware Programming (PCA)
- Prerequisite: AC - Computer Architecture
- Data Processing Centers (CPD)
- Precorequisite: SO - Operating Systems
- Prerequisite: XC - Computer Networks
- Digital Signal Processing (PDS)
- Prerequisite: CI - Computer Interfacing
- Parallel Programming and Architectures (PAP)
- Prerequisite: PAR - Parallelism
If a subject A is prerequisite of another subject B, it means that to be able to register B is necessary to have passed the subject A.
If a subject A is corequisite of another subject B, it means that to be able to register B is necessary to have passed or to be register in the subject A.
If a subject A is precorequisite of another subject B, it means that to be able to register B it is necessary to be registered (a quadrimester before at least) subject A. But, in case of havig a list of precorequits (A precorequsite of B, and B precorequisite of C), it won't be posible to register subject C until subject A has not been passed.
If two subjects A and B are orequisite of subject C, it means that to register subject C it is necessary to have passed either subject A or subject B.
If a subject A is incompatible with another subject B, it means that you are not able to register A if you have passed the subject B.