Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)

Sylabus przedmiotu Architektura systemów komputerowych:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Architektura systemów komputerowych
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Architektury Komputerów i Telekomunikacji
Nauczyciel odpowiedzialny Mariusz Kapruziak <Mariusz.Kapruziak@zut.edu.pl>
Inni nauczyciele Krzysztof Makles <Krzysztof.Makles@zut.edu.pl>, Mirosław Łazoryszczak <Miroslaw.Lazoryszczak@zut.edu.pl>
ECTS (planowane) 4,0 ECTS (formy) 4,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW3 30 2,00,40zaliczenie
laboratoriaL3 30 2,00,60zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Programowanie 1
W-2Technika cyfrowa
W-3Wiedza o podstawach budowy i działania pamięci komputerowych.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Wiedza o fundamentalnych architekturach komputerów oraz zarysie historii prac nad tymi architekturami.
C-2Umiejętność wykorzystywania podstawoych metodach zwiększania efektywności obliczeń.
C-3Umiejętność czytania schematów blokowych architektur komputerów.
C-4Umiejętność pisania programów wykorzystujacych wybrane elementy systemów komputerowych.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Płyta główna i umiejętności montażu komputerów.4
T-L-2Budowa, symulowanie i modyfikowanie architekur procesorów na podstawie schematów blokowych, kod maszynowy.2
T-L-3Assembler dla rodziny x86 i natywne programowanie procesora.6
T-L-4Assembler dla rodziny ARM.2
T-L-5Programowania urządzeń wejścia-wyjścia w systemach operacyjnych.10
T-L-6Akceleracja obliczeń, optymalizacja i profilowanie programów.6
30
wykłady
T-W-1Język asembler dla procesorów x86.4
T-W-2Zaawansowane zagadnienia z języka asemler, asembler dla procesorów ARM.2
T-W-3Architektura von Neumanna.2
T-W-4Komputery CISC, mikroprogram, komputer System\360 i pierwsze architektury koputerów.2
T-W-5Procesory RISC, potok w układzie sterującym procesora, ścieżka krytyczna i jej wpływ na częstotliwość taktowania oraz metody przewidywania skoków.2
T-W-6Architektura x86, tryb chroniony procesora oraz jednostka zmiennopozycyjna.2
T-W-7Hierarchia pamięci i pamięć cache.2
T-W-8Architektury o równoległości poziomu instrukcji (ILP), architktura superskalarna i VLIW.2
T-W-9Rodzina procesorów Pentium, jednostka MMX oraz jednostka SSE.2
T-W-10Architektura ARM, procesory DSP i elementy systemów wbudowanych.2
T-W-11Superkomputery, serwery i dyże systemy komputerowe.2
T-W-12Komputery "multi-core", architektura Nahalem i mikroarchitekury dekady 2010.2
T-W-13Archtektury ARM v5-v8, jednostka Neon.2
T-W-14Katry graficzne, CUDA, akceleratory obliczeń, układy FPGA.2
30

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Uczestnictwo w zajęciach.30
A-L-2Praca własna20
50
wykłady
A-W-1Uczestnictwo w zajęciach30
A-W-2Udział w konsultacjach.2
A-W-3Praca własna18
50

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.

Sposoby oceny

KODSposób oceny
S-1Ocena podsumowująca: Test zaliczający z wykładów.
S-2Ocena formująca: Test z asemlera.
S-3Ocena formująca: Projekt (oraz konkurs) dotyczący programowania urządzeń wejścia-wyjścia.
S-4Ocena formująca: Test z metod przyspieszania obliczeń.
S-5Ocena formująca: Prezentacja lub raport z wykonania ćwiczeń.

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C07_W01
Student zna fundamentalne architektury komputerów oraz zarys historii prac nad tymi architekturami.
I_1A_W02C-3, C-1T-L-2, T-W-3, T-W-9, T-W-4, T-W-7, T-W-8, T-W-11, T-W-12, T-W-13, T-W-14, T-W-5, T-W-10, T-W-6M-1, M-2S-1, S-5

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C07_U01
Student umie interpretować schematy blokowe architektur komputerów, tworzyć elementy programów wykorzystujących wybrane elementy systemów komputerowych oraz wykorzystywać podstawowe metody zwiększania efektywności obliczeń.
I_1A_U05, I_1A_U04C-3T-L-1, T-L-2, T-W-3, T-W-9, T-W-4, T-W-8, T-W-12, T-W-13, T-W-5, T-W-6M-1, M-2S-1, S-5

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C07_W01
Student zna fundamentalne architektury komputerów oraz zarys historii prac nad tymi architekturami.
2,0
3,0Student umie narysować i omówić podstaową architekturę komputera. Zna przeznaczenie i funkcjonowanie podstawowych elementów jak dekoder, stos, ALU itp. Umie omówić zarys rozwoju architektur. W szczególności architektury rodziny x86, rodziny ARM, archtiektury RISC, ILP oraz archtiektury "multi-core" oraz zarys dyżych systemów komputerowych. Student zna również sposób działania pamięci cache, jednostki wektorowej czy technologii CUDA.
3,5Jak na ocenę 3.0 oraz student umie oceniać wady i zalety różnych konstrukcji architektury komputerowej.
4,0Jak na ocenę 3.0 oraz student umie zaproponować modyfikację dla istniejących/istniejącej architektury oraz obronić jej przydatność.
4,5Jak na ocenę 4.0 oraz student umie przedstawić implementację/aplikację wykorzystującą własną modyfikację.
5,0Jak na ocenę 4.5 oraz student zają odpowiednio wysokie miejsce w głosowaniu na najlepszą implementację.

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C07_U01
Student umie interpretować schematy blokowe architektur komputerów, tworzyć elementy programów wykorzystujących wybrane elementy systemów komputerowych oraz wykorzystywać podstawowe metody zwiększania efektywności obliczeń.
2,0
3,0Studen umie przedstawić działanie podstawowej struktury procesora oraz dokonać w nim zmian rozumiejąc konsekwencje.
3,5Student umie zaprezentować swoje zmiany i wyjaśnić skutki zaproponowanych zmian.
4,0Jak na ocenę 3,5 oraz student umie przedstawić program dla którego zaproponowane zmiany dają zysk. Umie ocenić zysk liczbowo.
4,5Tak jak na ocenę 4,0 oraz student zają odpowiednio wysokie miejsce w głosowaniu.
5,0Tak jak na ocenę 4,0 oraz student zają odpowiednio wysokie miejsce w głosowaniu.

Literatura podstawowa

  1. Stallings W., Computer Organization and Architecture, Pearson, 2015
  2. Pełka R., Mikrokontrolery, architektura, programowanie, zastosowania, WKŁ, 2000
  3. Stokes J., Inside the Machine, No Starch Press, 2007
  4. Petterson D, Hennesy J., Computer Organization and Design, Morgan Kaufmann, 2013
  5. Hill M, Marty M, Amdahl’s Law in the Multicore Era, IEEE Computer Society, 2008

Literatura dodatkowa

  1. Lyons R., Wprowadzenie do cyfrowego przetwarzania sygnałów, WKŁ, 2000
  2. Ceruzzi P.E., A History of Modern Computing, MIT Press, 2003
  3. Silc j, Robic B, Ungerer T, Processor Architecture From Dataflow to Superscalar and Beyond, Springer Verlag, 2011
  4. Lapsley P, Bier J, Shoham A., DSP Processor Funcamentals, Architectures and Features, IEEE Press, 1997

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Płyta główna i umiejętności montażu komputerów.4
T-L-2Budowa, symulowanie i modyfikowanie architekur procesorów na podstawie schematów blokowych, kod maszynowy.2
T-L-3Assembler dla rodziny x86 i natywne programowanie procesora.6
T-L-4Assembler dla rodziny ARM.2
T-L-5Programowania urządzeń wejścia-wyjścia w systemach operacyjnych.10
T-L-6Akceleracja obliczeń, optymalizacja i profilowanie programów.6
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Język asembler dla procesorów x86.4
T-W-2Zaawansowane zagadnienia z języka asemler, asembler dla procesorów ARM.2
T-W-3Architektura von Neumanna.2
T-W-4Komputery CISC, mikroprogram, komputer System\360 i pierwsze architektury koputerów.2
T-W-5Procesory RISC, potok w układzie sterującym procesora, ścieżka krytyczna i jej wpływ na częstotliwość taktowania oraz metody przewidywania skoków.2
T-W-6Architektura x86, tryb chroniony procesora oraz jednostka zmiennopozycyjna.2
T-W-7Hierarchia pamięci i pamięć cache.2
T-W-8Architektury o równoległości poziomu instrukcji (ILP), architktura superskalarna i VLIW.2
T-W-9Rodzina procesorów Pentium, jednostka MMX oraz jednostka SSE.2
T-W-10Architektura ARM, procesory DSP i elementy systemów wbudowanych.2
T-W-11Superkomputery, serwery i dyże systemy komputerowe.2
T-W-12Komputery "multi-core", architektura Nahalem i mikroarchitekury dekady 2010.2
T-W-13Archtektury ARM v5-v8, jednostka Neon.2
T-W-14Katry graficzne, CUDA, akceleratory obliczeń, układy FPGA.2
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Uczestnictwo w zajęciach.30
A-L-2Praca własna20
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestnictwo w zajęciach30
A-W-2Udział w konsultacjach.2
A-W-3Praca własna18
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C07_W01Student zna fundamentalne architektury komputerów oraz zarys historii prac nad tymi architekturami.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W02Ma zaawansowaną i uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu fundamentalnych obszarów informatyki.
Cel przedmiotuC-3Umiejętność czytania schematów blokowych architektur komputerów.
C-1Wiedza o fundamentalnych architekturach komputerów oraz zarysie historii prac nad tymi architekturami.
Treści programoweT-L-2Budowa, symulowanie i modyfikowanie architekur procesorów na podstawie schematów blokowych, kod maszynowy.
T-W-3Architektura von Neumanna.
T-W-9Rodzina procesorów Pentium, jednostka MMX oraz jednostka SSE.
T-W-4Komputery CISC, mikroprogram, komputer System\360 i pierwsze architektury koputerów.
T-W-7Hierarchia pamięci i pamięć cache.
T-W-8Architektury o równoległości poziomu instrukcji (ILP), architktura superskalarna i VLIW.
T-W-11Superkomputery, serwery i dyże systemy komputerowe.
T-W-12Komputery "multi-core", architektura Nahalem i mikroarchitekury dekady 2010.
T-W-13Archtektury ARM v5-v8, jednostka Neon.
T-W-14Katry graficzne, CUDA, akceleratory obliczeń, układy FPGA.
T-W-5Procesory RISC, potok w układzie sterującym procesora, ścieżka krytyczna i jej wpływ na częstotliwość taktowania oraz metody przewidywania skoków.
T-W-10Architektura ARM, procesory DSP i elementy systemów wbudowanych.
T-W-6Architektura x86, tryb chroniony procesora oraz jednostka zmiennopozycyjna.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena podsumowująca: Test zaliczający z wykładów.
S-5Ocena formująca: Prezentacja lub raport z wykonania ćwiczeń.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student umie narysować i omówić podstaową architekturę komputera. Zna przeznaczenie i funkcjonowanie podstawowych elementów jak dekoder, stos, ALU itp. Umie omówić zarys rozwoju architektur. W szczególności architektury rodziny x86, rodziny ARM, archtiektury RISC, ILP oraz archtiektury "multi-core" oraz zarys dyżych systemów komputerowych. Student zna również sposób działania pamięci cache, jednostki wektorowej czy technologii CUDA.
3,5Jak na ocenę 3.0 oraz student umie oceniać wady i zalety różnych konstrukcji architektury komputerowej.
4,0Jak na ocenę 3.0 oraz student umie zaproponować modyfikację dla istniejących/istniejącej architektury oraz obronić jej przydatność.
4,5Jak na ocenę 4.0 oraz student umie przedstawić implementację/aplikację wykorzystującą własną modyfikację.
5,0Jak na ocenę 4.5 oraz student zają odpowiednio wysokie miejsce w głosowaniu na najlepszą implementację.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C07_U01Student umie interpretować schematy blokowe architektur komputerów, tworzyć elementy programów wykorzystujących wybrane elementy systemów komputerowych oraz wykorzystywać podstawowe metody zwiększania efektywności obliczeń.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U05Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny wydajności, złożoności, efektywności systemów informatycznych i ich składowych.
I_1A_U04Potrafi identyfikować związki i zależności w procesach zachodzących w systemach rzeczywistych i na tej podstawie tworzyć modele komputerowe oraz przeprowadzać ich symulacje.
Cel przedmiotuC-3Umiejętność czytania schematów blokowych architektur komputerów.
Treści programoweT-L-1Płyta główna i umiejętności montażu komputerów.
T-L-2Budowa, symulowanie i modyfikowanie architekur procesorów na podstawie schematów blokowych, kod maszynowy.
T-W-3Architektura von Neumanna.
T-W-9Rodzina procesorów Pentium, jednostka MMX oraz jednostka SSE.
T-W-4Komputery CISC, mikroprogram, komputer System\360 i pierwsze architektury koputerów.
T-W-8Architektury o równoległości poziomu instrukcji (ILP), architktura superskalarna i VLIW.
T-W-12Komputery "multi-core", architektura Nahalem i mikroarchitekury dekady 2010.
T-W-13Archtektury ARM v5-v8, jednostka Neon.
T-W-5Procesory RISC, potok w układzie sterującym procesora, ścieżka krytyczna i jej wpływ na częstotliwość taktowania oraz metody przewidywania skoków.
T-W-6Architektura x86, tryb chroniony procesora oraz jednostka zmiennopozycyjna.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena podsumowująca: Test zaliczający z wykładów.
S-5Ocena formująca: Prezentacja lub raport z wykonania ćwiczeń.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Studen umie przedstawić działanie podstawowej struktury procesora oraz dokonać w nim zmian rozumiejąc konsekwencje.
3,5Student umie zaprezentować swoje zmiany i wyjaśnić skutki zaproponowanych zmian.
4,0Jak na ocenę 3,5 oraz student umie przedstawić program dla którego zaproponowane zmiany dają zysk. Umie ocenić zysk liczbowo.
4,5Tak jak na ocenę 4,0 oraz student zają odpowiednio wysokie miejsce w głosowaniu.
5,0Tak jak na ocenę 4,0 oraz student zają odpowiednio wysokie miejsce w głosowaniu.