Module also offered within study programmes:
General information:
Name:
Signal processors in applications
Course of study:
2019/2020
Code:
IETP-2-203-n
Faculty of:
Computer Science, Electronics and Telecommunications
Study level:
Second-cycle studies
Specialty:
-
Field of study:
Electronics and Telecommunications
Semester:
2
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Part-time studies
Responsible teacher:
dr inż. Rumian Roman (rumian@agh.edu.pl)
Module summary

Daje zaawansowaną wiedzę o budowie nowoczesnego procesora, komputera, wysokowydajnych systemów równoległych, funkcjach elementów składowych i metodach zwiększania wydajności obliczeniowej komputera.

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence: is able to
M_K001 Potrafi myśleć i działać w nietypowy i kreatywny sposób w zakresie rozwiązania problemów związanych z wykonaniem zadania czy urządzenia. ETP2A_K01 Execution of laboratory classes,
Activity during classes
M_K002 Dzięki lepszej i głębszej wiedzy o podstawach działania i budowy oraz nowoczesnych rozwiązaniach przyśpieszających działanie komputerów potrafi dzielić się ta wiedzą z innymi członkami społeczeństwa, pomagać innym zrozumieć i lepiej rozwiązać własne potrzeby związane z wykorzystaniem techniki. ETP2A_K02 Presentation
Skills: he can
M_U001 Student rozumie język maszynowy (asembler) i potrafi się nim posługiwać do budowy modułów/systemów w telekomunikacji, przemyśle, potrafi posługiwać się anglojęzycznymi źródłami informacji technicznej . ETP2A_U01, ETP2A_U04, ETP2A_U06 Completion of laboratory classes
M_U002 W oparciu o szeroką wiedzę na temat architektury systemów komputerowych potrafi dobrać odpowiednią platformę sprzętową projektowanego systemu, modułu, algorytmu.Potrafi dokonać analizy istniejących rozwiązań, zaproponować nowe lub ulepszone korzystając z wiedzy uzyskanej z obcojęzycznych źródeł. ETP2A_U01, ETP2A_U07, ETP2A_W02, ETP2A_U03, ETP2A_U02, ETP2A_W06, ETP2A_U06 Execution of laboratory classes
Knowledge: he knows and understands
M_W001 Student dysponuje podstawową wiedzą o budowie mikroprocesora, zna klasyfikacje, podziały, ograniczenia i trendy rozwojowe. ETP2A_U01, ETP2A_W02, ETP2A_U05, ETP2A_U03, ETP2A_U06 Examination
M_W002 Student dysponuje aparatem matematycznym, wykorzystywanym w mikroprocesorach w zakresie zapisów binarnych, relacji, operacji dla liczb stało i zmiennoprzecinkowych. ETP2A_W01, ETP2A_U04, ETP2A_U03, ETP2A_U06 Examination
Number of hours for each form of classes:
Sum (hours)
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
30 16 0 8 6 0 0 0 0 0 0 0
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Social competence
M_K001 Potrafi myśleć i działać w nietypowy i kreatywny sposób w zakresie rozwiązania problemów związanych z wykonaniem zadania czy urządzenia. - - - + - - - - - - -
M_K002 Dzięki lepszej i głębszej wiedzy o podstawach działania i budowy oraz nowoczesnych rozwiązaniach przyśpieszających działanie komputerów potrafi dzielić się ta wiedzą z innymi członkami społeczeństwa, pomagać innym zrozumieć i lepiej rozwiązać własne potrzeby związane z wykorzystaniem techniki. - - - + - - - - - - -
Skills
M_U001 Student rozumie język maszynowy (asembler) i potrafi się nim posługiwać do budowy modułów/systemów w telekomunikacji, przemyśle, potrafi posługiwać się anglojęzycznymi źródłami informacji technicznej . - - + + - - - - - - -
M_U002 W oparciu o szeroką wiedzę na temat architektury systemów komputerowych potrafi dobrać odpowiednią platformę sprzętową projektowanego systemu, modułu, algorytmu.Potrafi dokonać analizy istniejących rozwiązań, zaproponować nowe lub ulepszone korzystając z wiedzy uzyskanej z obcojęzycznych źródeł. - - + + - - - - - - -
Knowledge
M_W001 Student dysponuje podstawową wiedzą o budowie mikroprocesora, zna klasyfikacje, podziały, ograniczenia i trendy rozwojowe. + - - - - - - - - - -
M_W002 Student dysponuje aparatem matematycznym, wykorzystywanym w mikroprocesorach w zakresie zapisów binarnych, relacji, operacji dla liczb stało i zmiennoprzecinkowych. + - - - - - - - - - -
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 100 h
Module ECTS credits 4 ECTS
Udział w zajęciach dydaktycznych/praktyka 30 h
Preparation for classes 20 h
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 30 h
Realization of independently performed tasks 20 h
Module content
Lectures (16h):
Architektura mikroprocesora sygnałowego

Zajęcia w ramach modułu prowadzone są w postaci wykładu (28 godzin) oraz ćwiczeń laboratoryjnych (28 godzin).
1. Wprowadzenie, motywacja – 2 godziny

Przedstawienie wachlarza przykładów cyfrowego przetwarzania sygnałów w różnych dziedzinach życia. Przypomnienie przyczyn przewagi sygnału cyfrowego nad analogowym, jego rejestracji i przetwarzania. Prezentacja stosowanych platform sprzętowych systemów DSP (PC, procesory sygnałowe, mikrokontrolery, układy FPGA, układy ASIC) i zasad doboru, porównanie ich zalet i wad w różnych obszarach zastosowań.

2. Prezentacja architektury procesora sygnałowego – 8 godzin

Sześć głównych cech architektury procesora sygnałowego (szybka jednostka ALU [jednocyklowa operacja MAC], wielomagistralowość [architektura Harvard], wysoka precyzja obliczeń, mechanizm adresowania buforów cyklicznych i odwróconego przeniesienia, sprzętowa realizacja pętli, szybka i lokalna pamięć RAM), wprowadzenie do arytmetyki stałoprzecinkowej, narzędzia uruchamiania systemów mikroprocesorowych czasu rzeczywistego (debugger, symulator, emulator, sprzętowe i programowe punkty kontrolne), realizacja obliczeń podwójnej i wielokrotnej precyzji. Sterownik DMA, układy peryferyjne typowego procesora sygnałowego, w szczególności synchroniczny port szeregowy, koprocesory (filtrujący, FFT). Środowisko programowe dla tworzenia i uruchamiania aplikacji w języku C i maszynowym.

3. Zaawansowane narzędzia projektowani i symulacji algorytmów DSP – 2 godziny

Przygotowanie, symulacja i stałoprzecinkowa implementacja algorytmów za pomocą pakietu MATLAB i Simulink oraz zestawu narządzi zawartych w tzw. DSP toolbox. Omówienie istotnych, z punktu widzenia implementacji na procesorze sygnałowym, cech różnych typów filtrów (FIR, IIR, Allpass, multirate itd.), algorytmów sterowania dynamiką sygnału, opóźnień ułamkowych. Narzędzia i metody testowania algorytmów dla zastosowań przemysłowych.

4. Przykłady aplikacji przemysłowych dla procesorów sygnałowych – 2 godziny

Przedstawienie systemów kondycjonowania analogowego, akwizycji , przetwarzania i transmisji sygnałów, z kompresją i wizualizacją włącznie. Prezentacja układów otoczenia procesora sygnałowego takich jak układy monitorowania napięcia, zasilania, transmisji, pamięci i sposobów boot’owania.

Project classes (6h):
-
Laboratory classes (8h):
Praktyka programowania procesora sygnałowego

1. Podstawowe narzędzia: zestaw ewaluacyjny, debugger, symulator – 4 godziny

Poznanie podstawowych narzędzi programowych i środowiska uruchamiania aplikacji czasu rzeczywistego dla procesora sygnałowego CrossCore Embedded Studio.

2. Podstawy programowania i debugg’owania mikroprocesora sygnałowego – 6 godzin.

Praktyczne poznanie instrukcji i zasad arytmetyki stałoprzecinkowej, trybów adresowania, optymalizacji czasowej programu na przykładach programów demonstracyjnych.
Nauka korzystania z debugg’era, obsługi modułu ewaluacyjnego, programów generacji sygnałów testowych i analizy czasowo-częstotliwościowej sygnałów wyjściowych na przykładach prostych programów demonstracyjnych.

3. Projektowanie, implementacja i uruchamianie prostych algorytmów przetwarzania – 18 godzin.

Uruchamiania prostych aplikacji demonstracyjnych (pass-through, echo), projektowanie filtrów FIR, IIR w wersjach dla pojedynczej próbki i bloku próbek. Implementacja filtrów w asemblerze procesora sygnałowego, nauka zasad pisania programów, translacji programu źródłowego na postać binarną. Ładowanie i uruchamianie programu w procesorze modułu ewaluacyjnego. Programowanie akceleratorów algorytmów FIR, IIR, FFT.

Additional information
Teaching methods and techniques:
  • Lectures: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Project classes: Studenci wykonują zadany projekt samodzielnie, bez większej ingerencji prowadzącego. Ma to wykształcić poczucie odpowiedzialności za pracę w grupie oraz odpowiedzialności za podejmowane decyzje.
  • Laboratory classes: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Participation rules in classes:
  • Lectures:
    – Attendance is mandatory: No
    – Participation rules in classes: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Project classes:
    – Attendance is mandatory: Yes
    – Participation rules in classes: Studenci wykonują prace praktyczne mające na celu uzyskanie kompetencji zakładanych przez syllabus. Ocenie podlega sposób wykonania projektu oraz efekt końcowy.
  • Laboratory classes:
    – Attendance is mandatory: Yes
    – Participation rules in classes: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Method of calculating the final grade:

1. Warunkiem uzyskania pozytywnej oceny końcowej jest uzyskanie pozytywnej oceny z laboratorium oraz egzaminu.

2. Obliczamy średnią ważoną z ocen z laboratorium (50%) i egzaminu (50%) uzyskanych we wszystkich terminach.

3. Wyznaczmy ocenę końcową na podstawie zależności:
if sr>=4.75 then OK:=5.0 else
if sr>=4.25 then OK:=4.5 else
if sr>=3.75 then OK:=4.0 else
if sr>=3.25 then OK:=3.5 else
if sr>=3.00 then OK:=3.0 else OK:=2.0

4. Warunkiem koniecznym jest pozytywna opinia prowadzących o znajomości podstawowych pojęć i zasad budowy systemów komputerowych (techniki mikroprocesorowej).

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Prerequisites and additional requirements:

1. Znajomość techniki cyfrowej
2. Znajomość układów analogowych współpracujących z mikrokontrolerami
3. Znajomość zasad algorytmiki
4. Znajomość języka programowania C jest pomocna, ale nie konieczna.
5. Znajomość języka angielskiego.

Recommended literature and teaching resources:

1. strona firmowa www.nxp.com
2. strona firmowa www.intel.com
3. strona firmowa www.arm.com
4. P. Metzger: Anatomia PC, Helion, Gliwice 2009
5. H. Kriedl: Mikrokontrolery 68HC08 w praktyce, BTC, Warszawa 2005
6. W. Mielczarek: Szeregowe interfejsy cyfrowe, Helion, Gliwice 1994
7. K. Paprocki: Mikrokontrolery STM32 w praktyce, BTC, Warszawa 2009
8. L. Bryndza: Mikrokontrolery z rdzeniem ARM7, BTC, Warszawa 2007
9. Z. Hajduk: Mikrokontrolery w systemach zdalnego sterowania, BTC, Warszawa 2005
10. Wiliam Stallings, “Organizacja i architektura systemu komputerowego”
11. Noam Nisan, Shimon Schocken, “Elementy systemów komputerowych-budowa nowoczesnego komputera od podstaw”, WNT 2008

Scientific publications of module course instructors related to the topic of the module:

Additional scientific publications not specified

Additional information:

None