Course detail

Digital Signal Processors

FEKT-MPC-SPRAcad. year: 2025/2026

1. Generations of digital signal processors, von Neumann's architecture, the Harvard architecture, parallel processing and very long instruction word architecture.
2. Basics of software development, integrated development environments, intrinsic function, implementation-dependent commands pragma.
3. Real-Time Operating Systems, timers, threads, synchronization using semaphores.
4. Address generation unit, special addressing modes modulo and bit-reversal.
5. Interrupt principle, interrupt masking, and interrupt handling, software interrupts.
6. Communication with external peripherals, serial interface, direct memory access, implementation of buffers.
7. Fixed-point and floating-point representations, representations of negative numbers, operations with fractional numbers.
8. Analysis of digital systems, transfer function, impulse and frequency response, stability, signal flow graphs.
9. Implementation structures, canonical structure, implementation of system with finite and infinite impulse response.
10. Quantization effects on digital filters characteristics, limit cycles, modifying implementation for fixed-point arithmetic.
11. Generation of harmonic signals and harmonic analysis, the Goertzel algorithm, implementation of the fast Fourier transform.
12. Program Controller, instruction pipelining, instruction packet, optimization with regard to instruction pipelining.
13. Multi-core processors, ARM and DSP core combination, inter-core communications, memory sharing.

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Entry knowledge

The knowledge of digital signal processing and microprocessor technology is required. Students should be able to:
- describe the function of the basic blocks of the microprocessor (CPU, memory, I / O circuits, etc.)
- explain the basic commands of ANSI C,
- apply the basic commands of the ANSI C language and implement a simple program,
- calculate in terms of numbers the different number systems (binary, hex),
- explain the course of sampling the continuous signal
- explain the importance of stability,
- apply the Fourier transform.

Rules for evaluation and completion of the course

Evaluation of study results follows the Rules for Studies and Examinations of BUT and the Dean's Regulation complementing the Rules for Studies and Examinations of BUT.
Solution of seven homework assignments max. 40 marks
Written examination max. 60 marks

Lectures are not obligatory
Computer exercises are obligatory
Individual project is obligatory
Written examination is obligatory

Aims

The aim of the course is to introduce students to the architecture and basic properties of fixed- and floating-point digital signal processors, to describe the method of programming, and to outline the connection with higher programming languages. Also covered is the implementation of algorithms of linear and adaptive digital filtering, generation of harmonic signal and spectral analysis.
Students will be able to:
- explain the meaning of the parameters of microprocessors and digital signal processors, and choose a processor suitable for the application,
- explain the progress of the translation of separate C language source files including linking with other libraries,
- prepare the quantized coefficients of a digital system
- check the stability of the digital system after coefficient quantization,
- design a suitable form to implement the fixed point algorithm,
- analyze the effect of quantization in the structure and assess a suitable structure in terms of quantization,
- consider the advantages of the fast Fourier transform algorithm and Goertzel’s algorithm
- use the direct memory access (DMA) to transfer the samples in real time.

Study aids

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

SMÉKAL, Z., SYSEL, P. Signálové procesory. 1. vydání. Praha: Sdělovací technika, 2006. 283 s. ISBN 80-86645-08-8 (CS)

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme MPC-AUD Master's

    specialization AUDM-ZVUK , 1 year of study, winter semester, compulsory-optional
    specialization AUDM-TECH , 1 year of study, winter semester, compulsory

  • Programme MPC-EKT Master's 2 year of study, winter semester, compulsory-optional
  • Programme MPC-SVE Master's 1 year of study, winter semester, compulsory-optional
  • Programme MPC-TIT Master's 2 year of study, winter semester, compulsory-optional

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

  1. Základy tvorby programového vybavení, postup překladu, návaznost na jazyk C.
  2. Operační systémy reálného času, použití vláken a jejich synchronizace, operační systém reálného času DSP/BIOS.
  3. Možnosti adresování, speciální adresovací režimy modulo a bitově reverzní, realizace kruhové paměti.
  4. Systém přerušení, maskování a obsluha přerušení, rozdíl ve volání funkcí a obsluze přerušení.
  5. Formáty čísel, přesnost a dynamický rozsah formátů, základní operace.
  6. Analýza číslicových obvodů, základní charakteristiky, přenosová funkce, stabilita, kmitočtová charakteristika.
  7. Struktury implementace číslicových systémů, nekanonická a kanonická struktura implementace, křížová struktura, vazební struktura.
  8. Vliv kvantování na implementaci v pevné řádové čárce, kvantování koeficientů, mezní cykly.
  9. Implementace základních algoritmů, implementace číslicových filtrů s konečnou a nekonečnou impulsní charakteristikou.
  10. Generace a detekce harmonického signálu, generace z tabulky hodnot a rezonátorem, Goertzelův algoritmus.
  11. Fourierova tranformace, rychlý algoritmus implementace.
  12. Architektury signálových procesorů, harvardská architektura, architektura VLIW.
  13. Zřetězené zpracování cyklů, metody optimalizace, paralelní zpracování dat. 

Exercise in computer lab

39 hod., compulsory

Teacher / Lecturer

Syllabus

  1. Základy prostředí Code Composer Studio, zápis programu, vývojový kit TMSDSK6416.
  2. Průběh překladu, rozdíl compile a run-time, rozdíl makro a funkce.
  3. Systém DSP/BIOS, základní prvky systému, vlákna, semafory.
  4. Princip přerušení, obsluha přerušení, časovač.
  5. Komunikace s A/D a D/A převodníkem pomocí McBSP.
  6. Možnosti adresování, modulo adresování, generování z tabulky hodnot.
  7. Základní zpracování signálů, zlomková čísla, intrinsic funkce.
  8. TEST ve cvičení. Implementace lineární konvoluce (filtry typu FIR).
  9. Implementace adaptivních filtrů, algoritmus LMS.
  10. Implementace číslicových filtrů typu IIR, realizace kaskádního zapojení.
  11. Řadič DMA, nastavení přenosu pro McBSP port, přenos vzorků pomocí DMA kanálu.
  12. Konzultace k samostatným projektům.
  13. Odevzdání samostatných projektů.