Course detail

Digital Filters

FEKT-BCIFAcad. year: 2011/2012

The course covers the whole range of the digital signal processing, from real-time implementation of digital systems, through methods of the analysis of one-dimensional digital systems, up to the basic methods of designing one-dimensional digital filters: representation of numbers, floating- and fixed-point arithmetic, the Harvard architecture of digital signal processors, very long instruction word (VLIW) architecture, programming processors in the assembler and in the C language(intrinsic functions, pragma directives, pre-processor directives, linker), real-time communication with off-chip peripherals, characteristics of digital systems (transfer function, impulse response, frequency response), stability and causality of digital systems, finite and infinite impulse response, the structures of digital systems, signal flow graphs, the effect of quantization on the digital system characteristics, methods of designing one-dimensional digital filters, systems with multiple sample rates, filter banks.

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Learning outcomes of the course unit

Student will gain:
* Overview of the technical devices in which the digital systems are implemented,
* overview of the various generations of digital signal processors and their properties,
* experience with the implementation of digital signal processing algorithms using fixed-point arithmetic,
* experience with the programming microcontrollers in the C language,
* practical experience with the implementation of real-time digital signal processing,
* practical experience with the design of digital filters.
Experience can be in particular utilized:
* When optimizing digital signal processing algorithms,
* when programming the microprocessor,
* when the development of telecommunication equipment.

Prerequisites

The basic knowledge of the digital signal processing (sampling, representation of discrete-time signals, description of discrete-time systems, etc.) and of microprocessor technology (principles of microprocessors, registers, memory, programming in the C language, debugging) are required. Appropriate courses, in which this knowledge can be obtained, are compulsory and optional specialised courses of Teleinformatics study area or equivalent:
* Computers and Programming 2 (BPC2)
* Signals and Systems Analysis (BASS)
* Digital Circuits and Microprocessors (BDOM)
* Digital Signal Processing (BCZS).

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Teaching methods depend on the type of course unit as specified in the article 7 of BUT Rules for Studies and Examinations.
Lectures have the explanation of basic principles, methodology of the discipline problems and their solutions.
Practice proceeds on digital signal processor development kits and Matlab.

Assesment methods and criteria linked to learning outcomes

Evaluation of study results follows Rules for Studies and Examinations of BUT and Dean's Regulation to the Rules for Studies and Examinations of BUT.
Test practice max. 10 marks
Check exercises max. 15 marks
Self-dependent project max. 15 marks
Written examination max. 60 marks

Course curriculum

1. Technical devices for the implementation of digital systems, Von Neumann architecture of microcontrollers, Harvard architecture of digital signal processors, digital signal processor generation, interfaces for real-time debugging.
2. Programming processors in the C language, the compilation process, the pre-processor directives, linking stage, intrinsic functions, assembler language, linking assembler and the C language.
3. The communication of the digital signal processor with off-chip peripherals, connecting the A / D and D / A converters, circular buffering, double buffering, interrupt handling, the controller program.
4. Description of digital system, difference equations, transfer functions, zeros, poles, state-space description, signal flow graph, Mason's rule, the basic characteristics of digital systems, frequency response, impulse response, stability.
5. Floating-point arithmetic, fixed-point arithmetic, dynamic range, saturation, quantization noise, arithmetic logical unit, analysis of quantization effects on the transfer function and other characteristics of digital systems, limit cycles.
6. Structures for the realization of digital systems, canonical forms of realization, the classification of digital systems, digital systems with finite impulse response (FIR) and infinite impulse response (IIR).
7. Hardware cycles, address generation unit, addressing modes, utilization of addressing modes in the C language and assembler, optimization of digital systems, code profiling.
8. Design of FIR digital filters: Window method, frequency sampling method, optimum equiripple linear phase filter design method, Remez's algorithm.
9. Design of IIR digital filters: a method of bilinear transformation, method of impulse invariance. Conversion to the second-order section.
10. Inverse filtering, Wiener optimal filtering, the Wiener-Hopf equation. Adaptive filters, LMS algorithm, RLS algorithm, properties and applications of adaptive filters.
11. Multi-rate systems, decimation and interpolation, sampling-rate conversion by a rational number, polyphase filter structures.
12. Filter banks, DFT filter bank, filter bank modulated by cosine function, two-channel filter bank, perfect reconstruction condition, quadrature mirror filters.
13. Fundamentals of nonlinear digital signal processing, filters based on sorting, homomorphic filtering, cepstral analysis.

Work placements

Not applicable.

Aims

Improve students' knowledge of the digital signal processing (DSP) obtained in previous courses. Acquaint students with the basic principles of implementation on technical devices (digital signal processors and microcontrollers). Acquaint students with the programming digital signal processors in the assembler and in the C language. Acquaint students with the differences and the problems of implementation of digital signal processing methods using floating- and fixed-point arithmetic.

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

Lectures are not duly
Computer exercise are duly
Self-dependent project is duly
Written examamination is duly

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

VÍCH,R., SMÉKAL,Z.: Číslicové filtry. Academia, Praha 2000. ISBN 80-200-0761-X (In Czech) (CS)

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme EECC Bc. Bachelor's

    branch B-TLI , 3 year of study, summer semester, elective specialised

  • Programme EEKR-CZV lifelong learning

    branch EE-FLE , 1 year of study, summer semester, elective specialised

Type of course unit

 

Lecture

39 hod., optionally

Teacher / Lecturer

Syllabus

1. Classification and fundamental properties of digital systems. Description of digital filters by difference equations, Z transform of difference equation. Definition of transfer function, definition of zeros and poles. Impulse response.
2. Causal and stability of linear time invariant systems, stability test. Definition of frequency response, digital filters as basic frequency-selective filters, zero and pole location. Linear phase frequency response.
3. Structures for realization for digital filters, first and second direct form, first and second transposed form. Signal flow graphs for digital filters description, analyses of signal flow graph by Mason's rule.
4. Fixed- and floating-point representation of numbers, accuracy and dynamic range, representation of negative numbers. Quantization effects on transfer function, on frequency response, on zeros and poles location. Limit cycles. Analysis of quantization errors.
5. Preparation of transfer functions for implementation in technical devices, dividing of high-order transfer function into second order sections. Hardware for implementation of digital filters, examples of implementation of FIR and IIR filters.
6. Design of FIR type digital filters. Method of windowing, method of frequency response sampling.
7. Optimum uniform rippled filters, alternation theorem, Remez's algorithm. Design of special kind of digital filters - differentiators, Hilbert's transformers.
8. Design of IIR digital filters. Making use of analog prototypes. Methods of bilinear transformation and impulse invariance.
9. Computer based method of IIR digital filters design, least-squares method. Inverse filtering.
10. Optimal Wiener filtration, Wiener-Hopf equation. Adaptive filters, LMS algorithms, RLS algorithms.
11. Multirate systems, decimation and interpolation, change in sampling frequency in the form of rational fraction.
12. Filter banks, perfect reconstruction condition, quadrature mirror filters. Wavelet transform.
13. Nonlinear digital filters, polynomial digital filters, filters based on sorting. Homomorphous filtering, real and complex cepstrum.

Laboratory exercise

26 hod., compulsory

Teacher / Lecturer

Syllabus

1. Fundamental characteristics of digital filters, poles and zeros location, frequency response measurement.
2. Digital filter types, measurement of frequency response and impulse response.
3. Design and implementation of finite impulse response digital filters using windows, digital signal filtering.
4. Design and implementation of FIR digital filters by the frequency-sampling method.
5. Design and implementation of optimum equiripple FIR digital filters.
6. Design and implementation of infinite impulse response digital filters by the bilinear transformation.
7. Design and implementation of IIR digital filters by impulse invariance.
8. Canonic structures, measurement of influence of initial conditions.
9. Fixed point and floating point representation of numbers, measurement of influence of quantization.
10. Adaptive filtering, measurement of convergence and stability.
11. Sampling rate conversion, implementation of sampling rate conversion by rational factor.
12. Nonlinear methods, homomorphic deconvolution.
13. Classification of individual projects.