Course detail

Digital Signal Processors

FEKT-MPC-SPRAcad. year: 2019/2020

Definition of digital signal processor, its differences from the other microprocessors. Generations of digital signal processors and their typical features, trends of development. Basic digital signal processor architectures – the Harvard architecture, the VLIW architecture. Fixed- and floating-point number formats, IEEE-754 standard. Fixed-point digital signal processor of the TMS320C6400 series. Processor core, functional units, register set, addressing modes. Instruction set and the way it is applied. Link between programming in assembler and in the C language, intrinsic function, pragma expressions. Canonic and non-canonic structures for implementing FIR and IIR digital filters in digital signal processors, analysis of quantization noise, Mason’s rule, transfer function modification regarding fixed-point representation. Adaptive LMS algorithm and its implementation. Generation of harmonic signal and harmonic analysis, Goertzel's algorithm, structure of FFT algorithm and its types. Sum of peripherals, memory mapping, communication with external peripheries, direct memory access DMA. Real-time processing, circular buffer, double buffering.

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Learning outcomes of the course unit

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.

Prerequisites

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.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Teaching methods depend on the type of course unit as specified in article 7 of the BUT Rules for Studies and Examinations.

Assesment methods and criteria linked to learning outcomes

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

Course curriculum

1. Generations of digital signal processors, common properties of digital signal processors, von Neumann's architecture, the Harvard architecture, parallel processing and VLIW architecture.
2. Fixed-point and floating-point representations, representations of negative numbers, properties of fixed-point digital signal processors.
3. Architecture of digital signal processors of the TMS320C6400 series by Texas Instruments, processor core, functional units, registers, specific instructions.
4. Address generation unit, modulo addressing mode.
5. Program structure and writing in assembler.
6. Program structure and writing in the C language, intrinsic functions, pragma directives, integrated development environment.
7. Program Controller, instruction pipeline.
8. Quantization effects on digital filters characteristics, limit cycles, optimization of digital filters in digital signal processors.
9. FIR and IIR digital filter implementation in digital signal processors.
10. Generation of harmonic signals and harmonic analysis, the Goertzel algorithm, implementation of the fast Fourier transform.
11. On-chip peripherals, DMA controller, interrupt controller.
12. External buses, external memory interface.
13. Floating-point digital signal processors.

Work placements

Not applicable.

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 assembler 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.

Specification of controlled education, way of implementation and compensation for absences

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

Recommended optional programme components

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.

Elearning

Classification of course in study plans

  • Programme MPC-AUD Master's

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

  • Programme EEKR-CZV lifelong learning

    branch EE-FLE , 1 year of study, winter semester, compulsory

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

1. Skladba programu, postup překladu, rozdělení typů pamětí, nastavení linkování programu, specifika jazyka C pro signálové procesory TMS20C6000.
2. Základy real-time operačního systému DSP/BIOS, vlákna, časovače, softwarová přerušení.
3. Vlastnosti A/D a D/A převodníků, připojení A/D, D/A převodníku, sběrnice SPI, McBSP.
4. Systém přerušení, obsluha přerušení, základy real-time operačního systému DSP/BIOS.
5. Kruhová vyrovnávací paměť, dvojitá vyrovnávací paměť, paměťový prostor, adresovací jednotka procesoru TMS320C6416.
6. Implementace základních algoritmů číslicového zpracování, úprava číslicových filtrů pro implementaci v pevné řádové čárce.
7. Algoritmy adaptivních filtrů, implementace adaptivních filtrů.
8. Generování a detekce harmonických signálů, implementace Goertzelova algoritmu.
9. Spektrální analýza, implementace rychlé Fourierovy transformace.
10. Rozdělení generací signálových procesorů, signálové procesorů s harvardskou architekturou.
11. Architektura VLIW, signálové procesory s pevnou řádovou čárkou TMS320C6400.
12. Optimalizace výpočetní náročnosti, princip SIMD, zřetězené zpracování instrukcí - pipelining, paměť CACHE.
13. Vývojové prostředky, ladicí nástroje, JTAG.

Exercise in computer lab

39 hod., compulsory

Teacher / Lecturer

Syllabus

1. Základy prostředí Code Composer Studio, zápis programu, průběh překladu, vývojový kit TMDSDSK6416.
2. Využití BSP knihovny, obsluha DIP přepínačů a LED diod.
3. Systém DSP/BIOS, základní prvky systému, vlákna, synchronizace vláken.
4. Komunikace s A/D převodníkem a D/A převodníkem pomocí McBSP sběrnice. Využití CSL knihovny.
5. Systém přerušení, komunikace s převodníkem s využitím přerušení.
6. Řadič DMA, nastavení přenosu pro McBSP port, přenos vzorků pomocí DMA kanálu.
7. Dvojitá vyrovnávací paměť, kruhová vyrovnávací paměť, řízení přístupu ke sdíleným proměnným v systému DSP/BIOS.
8. Jádro signálového procesoru, registry, aritmeticko-logické operace, formáty čísel, implementace lineární konvoluce (filtry typu FIR).
9. Implementace číslicových filtrů typu IIR, kanonické formy, rozdělení na sekce 2. řádu.
10. Implementace adaptivních filtrů, algoritmus LMS.
11. Generace harmonického signálu, Goertzelův algoritmus.
12. Rychlá Fourierova transformace, implementace motýlku.
13. Odevzdání samostatných projektů, zápočet.

Elearning