Kurs przedmiotowy ASK II zawiera treści związane z programowaniem układów FPGA, językami opisu sprzętu HDL, w tym VHDL i Verilog, oraz diagnostyką układów cyfrowych, ze szczególnym uwzględnieniem projektowania struktur samotestowania. Oprócz narzędzi projektowych typu CAD (Aldec Active HDL, Xilinx ISE, linuxowy ghdl), omawiane będą metody doboru wbudowanych w układ generatorów testów, kompaktorów odpowiedzi układu, a także struktur ścieżki i pierścienia samotestujących (BIST) oraz parametry diagnostyczne procesu testowania, mechanizmy weryfikacji i walidacji układów cyfrowych, a także metody prognozowania i tolerowania uszkodzeń. Celem kursu jest zdobycie wiedzy i umiejętności przez studenta w zakresie projektowania/programowania układów programowalnych do realizacji określonych funkcji układowych systemów mikroprocesorowych z uwzględnieniem protokołów komunikacyjnych i wirtualnych modułów cyfrowych oraz ich diagnostyki. Ze względu na charakter studiów, realizacja przedmiotu koncentruje się na symulacji projektowanych układów, aniżeli ich fizycznego programowania. W ramach treści przedmiotowych poruszane będą również zagadnienia automatów abstrakcyjnych, gramatyk formalnych. Studenci zobowiązani będą do wykonania projektu zaliczeniowego, indywidualnie bądź w grupach, co będzie sprzyjać urzeczywistnieniu kompetencji społecznych typu współpraca w grupie, przewodzenie pracami projektowymi. Ponadto dostępna będzie literatura anglojęzyczna dotycząca omawianych zagadnień.

Celem zajęć jest zapoznanie studentów z tematyką użyteczności oprogramowania, zasad projektowania interfejsów użytkownika oraz metodami testowania oprogramowania pod kątem spełnienia oczekiwań przyszłych i obecnych użytkowników. Tematem zajęć są metody ustalania z użytkownikami wymagań dotyczących funkcjonalności oprogramowania i interfejsów. Zagadnienia poruszane na zajęciach będą dotyczyć m.in. użyteczności oprogramowania, user experience, projektowania interakcji, metod określania i weryfikowania wymagań, architektura informacji, planowania prac nad projektem programistycznym oraz tworzenia testów funkcjonalnych i pracy zespołowej.

Celem przedmiotu jest zapoznanie studenta z metodami i technikami projektowania, analizy, modelowania, testowania i wdrażania systemów cyfrowych, informatycznych i procesów biznesowych, w szczególności językami opisu sprzętu VHDL, Verilog, sieciami Petriego oraz standardowymi notacjami lub językami opisu projektu oprogramowania: UML, OCL, BPMN, BPEL i dokumentowania systemów informatycznych. Zapewnienie wiarygodności systemów, ich niezawodności, dyspozycyjności, zabezpieczenia, bezpieczeństwa, wymaga znajomości metod i technik weryfikacji, walidacji, testowania i diagnostyki, modelowania i analizy systemów, które stanowią uzupełnienie zakresu przedmiotowego kursu. Tematyka przedmiotu obejmuje również modelowanie systemów współbieżnych, rozwiązywanie typowych problemów współbieżności oraz znaczenie jakości kodu źródłowego oprogramowania, utrzymania systemów informatycznych i inżynierii oprogramowania.

Kurs przedmiotowy ASK I zawiera treści dotyczące modeli maszyn cyfrowych i ich funkcjonowania, w szczególności układów arytmetyczno-logicznych, bazowych podzespołów komputera i układów peryferyjnych oraz zagadnień programowania niskopoziomowego. Zasadniczo omawiane będą kwestie związane z: architekturą procesorów 8, 16, 32, 64-bitowych, trybami pracy i instrukcjami procesorów, kodowaniem rozkazów, systemem obsługi przerwań, DMA, pamięciami ROM, RAM, FLASH i układami peryferyjnymi, magistralami systemowymi i danych, systemem BIOS, UEFI BIOS, parametrami ustawień systemowych, emulatorami systemu DOS, oprogramowaniem narzędziowym tupu MASM, TASM, FASM, programowaniem w języku asemblera, kodami maszynowymi i zapisem mnemonicznym. Ponadto używane będą debugery narzędziowe i systemowe, przedstawione będą techniki wykrywania uszkodzeń i błędów, integracji kodu źródłowego asemblera w językach wysokiego poziomu.
Odpowiednia konstrukcja programów, dbałość o jakość kodu źródłowego i jego refaktoryzacja, umiejętność tworzenia zoptymalizowanego oprogramowania, szacowania złożoności algorytmów, wykorzystania narzędzi i środowisk projektowania, symulowania i emulowania, a także testowania oprogramowania, stanowią uzupełnienie zakresu przedmiotowego kursu. Studenci zobowiązani będą do wykonania projektu zaliczeniowego, indywidualnie bądź w grupach, co będzie sprzyjać urzeczywistnieniu kompetencji społecznych w rodzaju współpracy w grupie, przewodzenia pracami projektowymi. Ponadto dostępna będzie literatura anglojęzyczna dotycząca omawianych zagadnień.

Kurs przedmiotowy SSN zawiera treści dotyczące zagadnień sztucznej inteligencji realizowanej w sieciach neuronowych, w szczególności omawiane będą modele perceptronu McCullocha i Pittsa, sieci jednokierunkowe, rekurencyjne Hopfielda i samoorganizujące się mapy Kohonena. Omówione będą algorytmy uczenia sieci, funkcje aktywacji neuronów oraz problematyka klasyfikacji obiektów. Studenci będą realizować projekty zaliczeniowe indywidualnie lub w grupach.

Celem przedmiotu jest zapoznanie studenta z techniką obliczeń równoległych na procesorach graficznych GPU. Kurs przedmiotowy obejmuje podstawy CUDA C, Thrust C++, DirectCompute i OpenCL oraz aspekty sprzętowe obliczeń na kartach graficznych Nvidia.