Go to:
Logótipo
You are here: Start > M.EEC049

Heterogeneous Systems Architectures

Code: M.EEC049     Acronym: ASH

Keywords
Classification Keyword
OFICIAL Systems Electronics and Digital Systems

Instance: 2023/2024 - 1S Ícone do Moodle

Active? Yes
Responsible unit: Department of Electrical and Computer Engineering
Course/CS Responsible: Master in Electrical and Computer Engineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
M.EEC 9 Syllabus 2 - 6 39
Mais informaçõesLast updated on 2023-09-25.

Fields changed: Components of Evaluation and Contact Hours, Fórmula de cálculo da classificação final

Teaching language

Portuguese and english

Objectives

In recent decades, computer users have enjoyed the seemingly unlimited availability of transistors. Computer platforms evolved from a single processor core to multipurpose multicores and specialized cores that deliver unprecedented performance thanks to the high degree of parallelism. Recently, power efficiency has become a major issue as most emerging applications in image processing and machine learning need to perform large amounts of computation while meeting strict power and performance constraints. This has led to systems with custom computational units in the form of Field-Programmable Gate Arrays (FPGA) and other forms of reconfigurable computational units.

These trends are having a major impact on the embedded computing domain, particularly high-performance embedded computing systems. To achieve these goals, engineers are increasingly building specialized compute engines tailored to these specific tasks. The resulting computing systems are heterogeneous and contain multiple compute cores with very different execution models. Therefore, developers must understand the fundamental mapping between the application and the target computer architectures in order to fully exploit their capabilities.

Learning outcomes and competences

The course provides students with the necessary skills to:


  1. Analyse the performance requirements of computational applications to design, justify and characterize solutions based on heterogeneous computing systems, involving diverse categories of general purpose processors and specialized accelerators built on FPGA, with the objective of obtaining competitive proposals against solutions built on conventional processors or homogeneous processor aggregates.

  2. Develop solutions for heterogeneous computing platforms based on reconfigurable System-on-Chip devices (such as the XILINX Zynq family) with two or more integrated processor cores, making use of high level-synthesis tools and design flow for FPGAs.

Working method

Presencial

Pre-requirements (prior knowledge) and co-requirements (common knowledge)

Fundaments of computer architectures
Fundaments of digital design for integrated technologies (HDL-based design)
C programming

Program


  1. Computing platforms: application domains, requirements, history and trends.

  2. General purpose programmable platforms (CPU, GPU, MCU, DSP) and FPGA-based specialized accelerators.

  3. Characterization of performance metrics: speed (throughput), power and energy consumption.

  4. Communication systems between computing units: topologies, technologies and performance metrics.

  5. Memory system: technologies, hierarchy, and performance metrics.

  6. Quantification of software application performance by profiling.

  7. Computation models and application partitioning in heterogeneous systems.

  8. Application mapping for programmable “System-on-Chip” devices integrating general-purpose processors and FPGAs.

  9. High-level synthesis of digital hardware for FPGA devices; optimization and design space exploration: source code transformations, loop transformations, function specialization.

  10. Dynamic Hardware Reconfiguration.

Mandatory literature

Coussy, P., & Morawiec, A. ; High-Level synthesis: from algorithm to digital circuit, Springer, 2008
Terzo, O., Djemame, K., Scionti, A., & Pezuela, C. ; Heterogeneous computing architectures: challenges and vision., CRC Press, 2019
Wolf, M.; Computers as components: principles of embedded computing system design. , Elsevier/Morgan Kaufmann, 2017
Zahran, M; Heterogeneous computing: hardware and software perspectives., ACM Press, 2019

Teaching methods and learning activities

This course uses a flipped-classroom approach. Sessions are used to discuss the main points of the subject, apply that knowledge to case studies, and experiment with design flows and tools.

Software

Xilinx Vitis HLS (high-level synthesis)
Xilinx Vivado
Xilinx Vitis SDK

Evaluation Type

Distributed evaluation with final exam

Assessment Components

Designation Weight (%)
Exame 40,00
Trabalho laboratorial 40,00
Teste 20,00
Total: 100,00

Amount of time allocated to each course unit

Designation Time (hours)
Elaboração de projeto 50,00
Frequência das aulas 39,00
Estudo autónomo 73,00
Total: 162,00

Eligibility for exams

To obtain the "frequencia" status the students must participate in all the points of the distributed evaluation.

Calculation formula of final grade

Grading will include a distributed evaluation component and a final written exam, with weights of 60% and 40%, respectively.

The distributed evaluation will be formed by the development of a set of laboratory projects (40% of the final grading) and a mid-term (20% of the final grading).

The laboratory projects will be done by groups of 2 students, presented and discussed in class, but mainly done outside class hours; the practical work focuses on the performance analysis of an application and its mapping to a reconfigurable SoC platform with high-level hardware synthesis tools.

Classification improvement

The grades of the test and of the final exam may be improved by doing the second exam ("recurso" / retake) of similar (combined) complexity. The grades of the projects cannot be improved.
Recommend this page Top
Copyright 1996-2025 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2025-06-18 at 21:19:53 | Acceptable Use Policy | Data Protection Policy | Complaint Portal