Nazwa przedmiotu:
Procesory sygnałowe
Koordynator przedmiotu:
Henryk A. KOWALSKI
Status przedmiotu:
Fakultatywny dowolnego wyboru
Poziom kształcenia:
Studia I stopnia
Program:
Informatyka
Grupa przedmiotów:
Przedmioty techniczne
Kod przedmiotu:
PS
Semestr nominalny:
6 / rok ak. 2014/2015
Liczba punktów ECTS:
5
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Bilans nakładu pracy przeciętnego studenta wygląda następująco: - udział w wykładach: 15 x 2 godz. = 30 godz., - udział w zajęciach laboratoryjnych: 4 x 3 3/4 godz. = 15 godz., - udział w zajęciach projektowych: 4 x 3 3/4 godz. = 15 godz., - przygotowanie do kolejnych wykładów (przejrzenie materiałów z wykładu i dodatkowej literatury, próba rozwiązania zadań sformułowanych na wykładzie): 20 godz. - przygotowanie do kolokwium i egzaminu oraz obecność na egzaminie: 20 godz. - (udział w konsultacjach przedegzaminacyjnych 1 godz.) - przygotowanie do kolejnych zajęć laboratoryjnych (przejrzenie materiałów z wykładu i dodatkowej literatury ze strony internetowej przedmiotu): 30 godz. - realizacja zadania projektowego: 30 godz. (obejmuje także zainstalowanie oprogramowania i opanowanie umiejętności wykorzystania go do realizacji projektu oraz przygotowanie sprawozdania), - udział w konsultacjach związanych z realizacją projektu: 3 x 1 godz. = 3 godz. (zakładamy, że student korzysta z z „regularnych” konsultacji 3 razy w semestrze), Łączny nakład pracy studenta wynosi : 20 + 30 +20 + 15 +30 + 15 + 30 = 160 godz.
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
nakład pracy związany z zajęciami wymagającymi bezpośredniego udziału nauczycieli akademickich wynosi 30 + 15 + 15 + +1 + 3 = 64 godz., co odpowiada ok. 2 1/2 punktom ECTS
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
nakład pracy związany z zajęciami o charakterze praktycznym wynosi 15 + 30 +15 + 30= 90 godz., co odpowiada 3 punktom ECTS
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium15h
  • Projekt15h
  • Lekcje komputerowe0h
Wymagania wstępne:
Wymagane przedmioty poprzedzające: ARKO - Architektura Komputerów lub SYKO - Systemy komputerowe Zalecane przedmioty poprzedzające: SM - Systemy Mikroprocesorowe lub TM- Technika Mikroprocesorowa lub TMIK – Podstawy Techniki Mikroprocesorowej
Limit liczby studentów:
32
Cel przedmiotu:
Praktyczne zapoznanie studentów z budową i zastosowaniem nowoczesnych procesorów sygnałowych. Przegląd najważniejszych architektur procesorów sygnałowych oraz sposobów ich programowania. Pozwala na zaznajomienie się z przeznaczonym dla tych procesorów narzędziami programowymi, językami asemblerowymi i wysokiego poziomu oraz systemami operacyjnymi czasu rzeczywistego. Umożliwia praktyczne zweryfikowanie nabytej wiedzy podczas pracy w środowisku sprzętowo-programowym wiodących producentów.
Treści kształcenia:
Treść wykładu: Wprowadzenie (2h): pojęcia podstawowe, modyfikowane architektury typu Harvard, różnice w stosunku do procesorów ogólnego przeznaczenia, typowe obszary zastosowań. Budowa procesorów sygnałowych (2h): reprezentacja danych arytmetycznych, organizacja szyn, organizacja pamięci, podstawowe bloki funkcjonalne, układy peryferyjne, jednostka wspomagająca uruchamianie. Języki asemblerowe (2h): specjalizowane tryby adresowania, ortogonalność, specjalizowane instrukcje, mnożenie, przesłania równoległe, pętle sprzętowe, formaty instrukcji. Budowa procesora sygnałowego wybranej rodziny (2h): organizacja rdzenia C28x, budowa rdzenia CLA, jednostka FP, układ generacji sygnału zegarowego, układ CSM, układ Watchdog, układ generacji sygnału RESET, wykonywanie Bootowania procesora,organizacja układu przerwań, układ PIE, moduł wejścia-wyjścia GPIO Budowa modułów peryferyjnych procesora sygnałowego wybranej rodziny (4h): organizacja modułów: CPU Timer, ePWM – podmoduł TB, CC, AQ, DB, PC, TZ, ET, DC), HRPWM, ADC, TEMP i COMP, eCAP oraz modułu SCI/UART Programowanie procesora sygnałowego w języku wysokiego poziomu (2h): specjalizowane struktury językowe, reprezentacja danych arytmetycznych, powiązania pomiędzy językiem C i asemblerem, rozkazy, procedury, skoki, przerwania, sekcje, pakiet programowy controlSUITE Zintegrowane środowisko programowania CCS (2h) Narzędzia programowe: translator, konsolidator, program ładujący, symulator, program uruchomieniowy, zintegrowane środowiska uruchomieniowe. Narzędzia sprzętowe i debugowanie (2h): sprzętowe zestawy uruchomieniowe, emulatory sprzętowe, wspomaganie debugowania w środowisku CCS. Procesory wielordzeniowe i SOC (2h): Potokowanie (2h) Systemy operacyjne czasu rzeczywistego (2h): pojęcia podstawowe, monitory, strumienie, wektory, tablice, wyjątki, zarządzanie pamięcią, biblioteki. Przegląd procesorów sygnałowych (2h): procesory stałoprzecinkowe, zmiennoprzecinkowe, ewolucja procesorów sygnałowych. architektura z podwójnym układem MAC, architektura superskalarna, techniki SIMD, architektura z bardzo długim słowem instrukcyjnym (VLIW). Podstawowe zagadnienia omawiane są na przykładzie procesorów rodziny TMS320C2000, Tiva C Series, Dual core F28M35x Concerto, TMS320C6000 (Texas Instruments), DSP56xxx (Freescale) oraz systemu operacyjnego czasu rzeczywistego TI-RTOS (Texas Instruments). Prezentowane są również wybrane zagadnienia budowy procesorów sygnałowych innych rodzin oraz firm. Zakres laboratorium Zajęcia laboratoryjne obejmują zapoznanie się praktyczne ze środowiskiem programowania CCS oraz z pracą poszczególnych modułów peryferyjnych procesora sygnałowego z zastosowaniem sprzętowego systemu uruchomieniowego czasu rzeczywistego. Lab 1: C1 Pierwszy projekt w CCS C2 Praca z modułem ePWM w trybie Upcount Lab 2: C3 Praca z czujnikiem temperatury modułu ADC C4 Programowanie pamięci Flash – program C2000 Piccolo Launch Pad demo Lab 3: C6 Błyskanie diodą LED z procesorem Concerto Lab 4: C9 Tiva C Series TM4C123G LaunchPad QuickStart C10 Zastosowanie biblioteki Sensor Hub BoosterPack Library Każde zajęcia laboratoryjne trwają 175min. bez przerwy. Ćwiczenia laboratoryjne są wykonywane w zespołach dwuosobowych. Ocena rozwiązań ćwiczeń laboratoryjnych odbywa się w trakcie zajęć na podstawie pisemnego sprawozdania i rozmowy z zespołem realizującym ćwiczenia. Zakres projektu Projekt obejmuje napisanie i uruchomienie aplikację czasu rzeczywistego w języku C według założeń podanych w temacie projektu. Projekt jest realizowany w zespołach kilkuosobowych. Projekt jest uruchamiany z wykorzystaniem środowiska programowania CCS oraz sprzętowego systemu uruchomieniowego czasu rzeczywistego w laboratorium sprzętowym. Projekt musi być zrealizowany do końca semestru. Ocena projektu odbywa się na podstawie działającego oprogramowania oraz przedstawionego pisemnego sprawozdania. Pełne środowisko CCS jest dostępne również dla studentów do pracy w domu. Student może uczestniczyć w prowadzonych co tydzień konsultacjach (w wymiarze 1 godz.). Projekt umożliwia: utrwalenie wiedzy nabytej podczas wykładu i zajęć laboratoryjnych. nabycie umiejętności pracy zespołowej
Metody oceny:
W trakcie semestru w uzgodnionych wcześniej terminach odbywają się kolokwia pisemne obejmujące zaprezentowany na wykładzie materiał. Po zakończeniu semestru jest przeprowadzany egzamin pisemny. W trakcie zajęć laboratoryjnych zespoły tworzą pisemne sprawozdanie zawierające rozwiązania zadań i pytań zawartych w pisemnych poleceniach do ćwiczeń. Część pytań wymaga samodzielnego wyszukania informacji w oryginalnej źródłowej dokumentacji firmowej. Na zakończenie projektu zespoły tworzą pisemne sprawozdanie. Warunkiem pozytywnego zakończenia przedmiotu jest uzyskanie pozytywnej oceny z każdych zajęć laboratoryjnych oraz pozytywnej oceny z projektu a także pozytywnej oceny z prac pisemnych. Ocena końcowa z przedmiotu jest ustalana na podstawie rezultatów uzyskanych na kolokwiach i egzaminie końcowym. W trakcie wykładu z wykorzystaniem lekcji multimedialnej wykonywane są interaktywnie, wspólnie ze studentami, zadania problemowe. Lekcja multimedialna jest udostępniona na stronie internetowej przedmiotu. Następne zadania problemowe studenci wykonują samodzielnie jako praca domowa. Po każdym wykładzie stawiane są trzy krótkie pytania z zakresu prezentowanego materiału. Poprawne odpowiedzi są premiowane dodatkowymi punktami. Pytania służą ocenie formatywnej zrozumienia i przyswojenia bieżącego materiału przez studentów. Rezultaty każdego kolokwium są dokładnie omawiane na następnym wykładzie. Służy to ocenie formatywnej zrozumienia i przyswojenia całej partii materiału. W trakcie zajęć laboratoryjnych, po wykonaniu każdego ćwiczenia, wykonywana jest przez zespół studencki prezentacja działania uzyskanego rozwiązania. Przedstawiane są również pisemne odpowiedzi do pytań i zadań tego ćwiczenia. Służy to ocenie formatywnej stopnia znajomości środowiska programowania oraz szczegółowych zagadnień ćwiczeń. Pomaga również w ocenie umiejętności odnajdowania informacji. Zaliczenie projektu polega na zaprezentowaniu działania uzyskanego rozwiązania oraz pisemnego sprawozdania. Przeprowadzana jest również dyskusja z zespołem realizującym projekt na temat tego rozwiązania. Ma ona na celu ustalenie podziału pracy w zespole oraz poziomu współpracy.
Egzamin:
tak
Literatura:
[1] Kowalski HA Procesory DSP dla praktyków, BTC, Legionowo 2011 [2] Lapsley P, Bier J, Shoham A, Lee EA, DSP processors fundamentals, Architectures and features, Berkeley Design Technology, Inc, 1996. (John Wiley & Sons, 1997) [3] Marven C, Ewers G, A simple approach to digital signal processing, Texas Instruments, 1993. (John Wiley & Sons, 1996) (Marven C, Ewers G, Zarys cyfrowego przetwarzania sygnałów WKŁ, 1999.) [4] EDN DSP Directory www.ednmag.com [5] Steven W. Smith, The Scientist and Engineer's Guide to Digital Signal Processing, California Technical Publishing San Diego, California, Second Edition, 1999, (www.DSPguide.com) [5] Strona internetowa firmy Texas Instruments http://www.ti.com/
Witryna www przedmiotu:
http://www.ii.pw.edu.pl/kowalski/dsp/ps/index.html
Uwagi:
Przez cały semestr studenci mogą korzystać z konsultacji w wymiarze 2 godzin tygodniowo. Prowadzona jest Internetowa strona przedmiotu podzielona na dwie strefy – publiczną i wewnętrzną. Strona publiczna zawiera podstawowe informacje dotyczące realizacji przedmiotu w aktualnym semestrze oraz informacje o materiale obejmowanym przez przedmiot. Strona wewnętrzna wymaga logowania z hasłem. Zawiera ona rozbudowane informacje, kopie prezentacji, materiały do zajęć laboratoryjnych oraz do projektów. A także materiały źródłowe i odnośniki do takich materiałów z zakresu zagadnień obejmowanych przez przedmiot. W każdym semestrze studenci dostają hasła dostępu do strony wewnętrznej. Zawartość strony wewnętrznej jest co semestr aktualizowana. Liczba godzin pracy studenta związanych z osiągnięciem efektów kształcenia: Bilans nakładu pracy przeciętnego studenta wygląda następująco: - udział w wykładach: 15 x 2 godz. = 30 godz., - udział w zajęciach laboratoryjnych: 4 x 3 3/4 godz. = 15 godz., - udział w zajęciach projektowych: 4 x 3 3/4 godz. = 15 godz., - przygotowanie do kolejnych wykładów (przejrzenie materiałów z wykładu i dodatkowej literatury, próba rozwiązania zadań sformułowanych na wykładzie): 5 godz. - przygotowanie do kolejnych zajęć laboratoryjnych (przejrzenie materiałów z wykładu i dodatkowej literatury ze strony internetowej przedmiotu): 5 godz. - realizacja zadania projektowego: 15 godz. (obejmuje także zainstalowanie oprogramowania i opanowanie umiejętności wykorzystania go do realizacji projektu oraz przygotowanie sprawozdania), - udział w konsultacjach związanych z realizacją projektu: 3 x 1 godz. = 3 godz. (zakładamy, że student korzysta z z „regularnych” konsultacji 3 razy w semestrze), - przygotowanie do kolokwium oraz obecność na kolokwium: 8 godz. + 3 godz. = 11 godz. - przygotowanie do egzaminu (udział w konsultacjach przedegzaminacyjnych) oraz obecność na egzaminie: 10 godz. + 2 godz. = 12 godz. Łączny nakład pracy studenta wynosi zatem: 30 + 15 +15 + 5 +5 + 15 + 3 +11 + 12 = 111 godz., co odpowiada ok. 4 punktom ECTS. W ramach tak określonego nakładu pracy studenta: - nakład pracy związany z zajęciami wymagającymi bezpośredniego udziału nauczycieli akademickich wynosi 30 + 15 + 15 + +3 + 3 = 66 godz., co odpowiada ok. 2 punktom ECTS, - nakład pracy związany z zajęciami o charakterze praktycznym wynosi 15 + 15 +15 = 45 godz., co odpowiada ok. 2 punktom ECTS.

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt PS_W01
Posiada podstawową wiedzę na temat budowy i programowania procesorów sygnałowych, narzędziami sprzętowymi i programowymi do tworzenia oprogramowania oraz jego uruchamiania przeznaczonymi dla procesorów sygnałowych
Weryfikacja: kolokwium, egzamin
Powiązane efekty kierunkowe: K_W08
Powiązane efekty obszarowe: T1A_W04, T1A_W06, T1A_W07
Efekt PS_W02
Posiada podstawową wiedzę o ewolucji i trendach rozwojowych procesorów sygnałowych oraz obszarów ich zastosowań
Weryfikacja: kolokwium, egzamin
Powiązane efekty kierunkowe: K_W14
Powiązane efekty obszarowe: T1A_W03, T1A_W04, T1A_W05, T1A_W07
Efekt PS_W03
Posiada podstawową wiedzę dotyczącą tworzenia projektów oprogramowania przeznaczonego do pracy na procesorach sygnałowych oraz ich uruchamiania z zastosowaniem zintegrowanego środowiska programowego oraz sprzętowych systemów uruchomieniowych
Weryfikacja: kolokwium, egzamin
Powiązane efekty kierunkowe: K_W09
Powiązane efekty obszarowe: T1A_W04

Profil ogólnoakademicki - umiejętności

Efekt PS_U01
Potrafi samodzielnie wyszukać informację w oryginalnej źródłowej dokumentacji firmowej i zastosować ją do rozwiązania zagadnień podczas wykonywania ćwiczeń praktycznych
Weryfikacja: ćwiczenia laboratoryjne, projekt
Powiązane efekty kierunkowe: K_U05
Powiązane efekty obszarowe: T1A_U01, T1A_U15
Efekt PS_U02
Potrafi przygotować tekst sprawozdania z projektu technicznego z opisaniem sposobu uzyskania wyników i ich uzasadnienia
Weryfikacja: ćwiczenia laboratoryjne, projekt
Powiązane efekty kierunkowe: K_U07
Powiązane efekty obszarowe: T1A_U03
Efekt PS_U03
Potrafi samodzielnie zdobywać wiedze potrzebną do rozwiązania projektów inżynierskich z zastosowaniem procesorów sygnałowych
Weryfikacja: ćwiczenia laboratoryjne, projekt, praca domowa
Powiązane efekty kierunkowe: K_U09
Powiązane efekty obszarowe: T1A_U05
Efekt PS_U04
Potrafi posługiwać się narzędziami sprzętowymi i programowymi do tworzenia oprogramowania oraz jego uruchamiania przeznaczonymi dla procesorów sygnałowych, dotyczy to przede wszystkim zintegrowanych środowisk programowania oraz sprzętowych systemów uruchomieniowych
Weryfikacja: ćwiczenia laboratoryjne, projekt
Powiązane efekty kierunkowe: K_U12
Powiązane efekty obszarowe: T1A_U10, T1A_U15, T1A_U16
Efekt PS_U05
Potrafi ocenić przydatność układu procesorowego równych producentów oraz różnych rodzin do rozwiązania projektu inżynierskiego, ocenić przydatność narzędzi programowych i sprzętowych
Weryfikacja: projekt
Powiązane efekty kierunkowe: K_U18
Powiązane efekty obszarowe: T1A_U15, T1A_U16

Profil ogólnoakademicki - kompetencje społeczne

Efekt PS_K01
Potrafi pracować w ramach zespołowych projektów inżynierskich
Weryfikacja: projekt
Powiązane efekty kierunkowe: K_K03
Powiązane efekty obszarowe: T1A_K03