KARTA PRZEDMIOTU 1. Nazwa przedmiotu: KOMPUTEROWE

Transkrypt

KARTA PRZEDMIOTU 1. Nazwa przedmiotu: KOMPUTEROWE
Z1-PU7
WYDANIE N1
Strona 1 z 4
KARTA PRZEDMIOTU
(pieczęć wydziału)
1. Nazwa przedmiotu: KOMPUTEROWE WSPOMAGANIE
2. Kod przedmiotu:
PROJEKTOWANIA UKŁADÓW SCALONYCH
KWPUS
3. Karta przedmiotu ważna od roku akademickiego: 2015/2016
4. Forma kształcenia: studia drugiego stopnia1
5. Forma studiów: studia stacjonarne
6. Kierunek studiów: ELEKTRONIKA I TELEKOMUNIKACJA (WYDZIAŁ AEII)
7. Profil studiów: ogólnoakademicki
8. Specjalność: APARATURA ELEKTRONICZNA
9. Semestr: 1-2
10. Jednostka prowadząca przedmiot: INSTYTUT ELEKTRONIKI
11. Prowadzący przedmiot: dr inż. Wojciech Sakowski
12. Przynależność do grupy przedmiotów: przedmioty specjalnościowe
13. Status przedmiotu: obowiązkowy
14. Język prowadzenia zajęć: polski
15. Przedmioty wprowadzające oraz wymagania wstępne: Zakłada się, że przed rozpoczęciem nauki
niniejszego przedmiotu student posiada przygotowanie w zakresie Podstaw Techniki Cyfrowej,
Projektowania Urządzeń Cyfrowych, Języków Opisu Sprzętu oraz języków programowania.
16. Cel przedmiotu: Celem wykładu jest zapoznanie studentów z nowoczesnymi metodologiami
projektowania scalonych układów cyfrowych, z wykorzystaniem języków opisu sprzętu w procesie
projektowania oraz z narzędziami programistycznymi wspomagającymi ten proces.
17. Efekty kształcenia:2
Nr
Opis efektu kształcenia
W1
Zna metodologię projektowania układów scalonych
w oparciu o języki opisu sprzętu
Rozumie semantykę języków Verilog/VHDL w
zakresie syntezy na poziomie przesłań
międzyrejestrowych
Rozumie semantykę języków Verilog/VHDL w
zakresie syntezy na poziomie przesłań
międzyrejestrowych
Potrafi zrealizować projekt układu cyfrowego na
poziomie przesłań międzyrejestrowych w językach
VHDL lub Verilog
Zna podstawy języka SystemC i zasady jego
stosowania w modelowaniu układów cyfrowych i
syntezie wysokiego poziomu.
W2
W3
U1
W4
1
2
wybrać właściwe
należy wskazać ok. 5 – 8 efektów kształcenia
Metoda sprawdzenia
efektu kształcenia
Forma
prowadzenia
zajęć
Wykonanie ćwiczeń
Laboratorium
laboratoryjnych
Kolokwium i egzamin wykład
Odniesienie
do efektów
dla kierunku
studiów
K2_W07
K2_W11
K2_W07
K2_U12
Kolokwium i egzamin wykład
K2_W07
K2_U12
Wykonanie projektu
K2_U08
K2_U12
projekt
Kolokwium i egzamin, wykład,
K2_W07
K2_U12
Z1-PU7
U2
Potrafi wykonać prosty model w języku SystemC
Wykonanie ćwiczeń
laboratoryjnych
U3
Potrafi zrealizować implementację
Wykonanie ćwiczeń
programowalnego układu logicznego
laboratoryjnych
w technologii Altera
18. Formy zajęć dydaktycznych i ich wymiar (liczba godzin)
W. : 15
Ćw.: 15
- Sem. 1
L. : 15
P.: 15
- Sem. 2
WYDANIE N1
wykład,
projekt,
laboratorium
laboratorium
Strona 2 z 4
K2_U08
K2_U12
K2_U08
K2_U12
19. Treści kształcenia:
(oddzielnie dla każdej z form zajęć dydaktycznych W./Ćw./L./P./Sem.)
W+Ćw.
1.
Przykłady prostych i złożonych układów cyfrowych. Technologie implementacji. Reprezentacja danych
projektowych (diagram Gajskiego) – różne poziomy abstrakcji i perspektywy projektowe. Komputerowe
narzędzia wspomagające rożne etapy procesu projektowania (specyfikacja, synteza, weryfikacja).
2.
Metodologia projektowania układów scalonych w oparciu o języki opisu sprzętu i narzędzia syntezy.
Wykorzystanie języków VHDL i Verilog do tworzenia syntezowalnych modeli sprzętu. Ograniczenia stylu
modelowania przy tworzeniu modeli syntezowalnych na poziomie przesłań międzyrejestrowych. Procesy
kombinacyjne i sekwencyjne. Unikanie niechcianych elementów pamięciowych. Modelowanie układów
kombinacyjnych: bramki, struktury bramkowe, multipleksery, dekodery. układy arytmetyczne.
3.
Modelowanie elementów sekwencyjnych. Modelowanie synchronicznych automatów sekwencyjnych.
Pamięci jaki elementy zależne od technologii. Wykorzystanie opisu strukturalnego. Dobre praktyki
modelowania typowych elementów cyfrowych w językach VHDL i Verilog. Projektowanie komponentów
wirtualnych.
4
Projektowanie na poziomie RTL. Redukcja rozpatrywanej przestrzeni stanów. Zegary i zerowanie.
Synchronizacja domen zegarowych. Wykorzystanie potoków. Statyczna analiza czasowa.
5.
Podstawy syntezy logicznej: Elaboracja modelu RTL – techniki przekształceń układowych. Elementy
syntezy sekwencyjnej. Podstawy minimalizacji logicznej. Synteza wielopoziomowa. Odwzorowanie
technologiczne. Różnice między optymalizacją układów programowalnych logicznych i specjalizowanych
układów scalonych. Narzędzia do syntezy. SDC – język ograniczeń projektowych do sterowania syntezą.
Synteza układów łatwotestowalnych.
6.
Wprowadzenie w problematykę projektowania specjalizowanych układów scalonych (ASIC). Miejsce
narzędzi syntezy RTL w procesie projektowania układów ASIC. Technologia CMOS. Parametry
tranzystorów MOS i ich powiązanie z własnościami technologii i projektem topografii. Analiza statyczna i
dynamiczna inwertera CMOS. Podstawowe struktury układów logicznych CMOS. Reguły projektowe i
parametry elektryczne tranzystorów. Projektowanie na poziomie układowym. Układy analogowe.
Biblioteki komórek standardowych i ich charakteryzacja.
7.
Projektowanie topografii cyfrowych układów CMOS (drzewo zegarowe, rozmieszczanie komórek i
prowadzenie połączeń między nimi. Pola kontaktowe. Pierścienie zasilające i minimalizacja poboru
mocy). Prototypowanie i produkcja układów ASIC – aspekty ekonomiczne i logistyczne. Rola układów
FPGA w prototypowaniu układów specjalizowanych.
8.
Metody minimalizacji poboru mocy przez cyfrowe układy scalone. Standardy UPF i CPF.
9.
Rola symulacji logicznej w weryfikacji układów scalonych. Modelowanie podstawowych własności
funkcjonalnych. Algebry wielowartościowe. Modelowanie własności dynamicznych bramek i
przerzutników. Algorytmy symulacji sterowanej zdarzeniami (event driven). Weryfikacja za pomocą
symulacji logicznej. Anotacja wsteczna modelu. Wykorzystanie języka VHDL w modelowaniu na
poziomie logicznym (standard VITAL).
10. Różnice między symulacja układową a logiczną. Symulacja czasowa. Symulacja switch level. Symulacja
mieszana i języki modelowania układów analogowych. Symulacja synchroniczna. Weryfikacja
wspomagana przez oporgramowanie. Sprzętowe wspomaganie symulacji, emulacja logiczna,
prototypowanie. Symulacja uszkodzeń i generacja testów.
11. Podstawy weryfikacji formalnej. Informacja o języku SystemVerilog. Asercje i ich wykorzystanie w
Z1-PU7
WYDANIE N1
Strona 3 z 4
projektowaniu i weryfikacji. Uniwersalna metodologia weryfikacji (UVM). Standardowe komponenty
weryfikacyjne (VIP) Problemy weryfikacji układów niskomocowych.
12. Przypomnienie cech obiektowych języka C++. Język SystemC. Implementacja podstawowych elementów
języka jako klas i wzorców języka C++. Definiowanie hierarchii projektowej i modelowanie RTL. Jądro
symulatora i sterowanie symulacją.
13. Rozdział funkcjonalności i komunikacji w języku SystemC. Modelowanie transakcyjne. Biblioteki TLM.
Wykorzystanie języka SystemC w weryfikacji. Biblioteka SCV i wsparcie dla metodologii UVM.
14. Podstawy teoretyczne syntezy wysokiego poziomu. Narzędzia i praktyka wykorzystania syntezy
wysokiego poziomu w procesie projektowania układów i systemów scalonych,
15. Systemy scalone. Metody specyfikacji i projektowania na poziomie systemowym. Integracja
komponentów wirtualnych. Magistrala AMBA. Standard IP-XACT. Elementy współbieżnego
projektowania sprzętu i oprogramowania. Wykorzystanie wirtualnych prototypów do wczesnej
weryfikacji oprogramowania wbudowanego. Wykorzystanie syntezy wysokiego poziomu
w projektowaniu programowalnych systemów scalonych (SoPC).
L.
1.
Definiowanie projektu i symulacja w środowisku Modelsim (lub innego symulatora VHDL).
2.
Weryfikacja projektu za pomocą symulacji i ocena jej kompletności.
3.
Synteza logiczna i analiza czasowa modelu układu w języku VHDL lub Verilog.
4.
Implementacja układu cyfrowego w układzie FPGA.
5.
Uruchamianie prototypu w układzie FPGA.
6.
Wykonanie prostego modelu układu cyfrowego w języku SystemC i jego weryfikacja przez symulację
P.
Wykonanie projektu układu cyfrowego w języku VHDL lub Verilog lub SystemC.
20. Egzamin: tak
21. Literatura podstawowa:
MARK ZWOLIŃSKI, Projektowanie układów cyfrowych z wykorzystaniem języka VHDL, ISBN 83-206-1452-X
Donald E. Thomas(Author), Philip R. Moorby, The Verilog® Hardware Description Language, ISBN-13: 9781475775891
David C. Black, J.Donovan, B. Bunton, A. Keist, SystemC: From the GroundUp, 2nd ed, Springer, 2010, ISBN 9780-387-69957-8
22. Literatura uzupełniająca:
Praca zbiorowa pod redakcją JÓZEFA KALISZA, Język VHDL w praktyce, WKŁ, ISBN 83-206-1440-6
TADEUSZ ŁUBA, KRZYSZTOF JASIŃSKI, BOGDAN ZBIERZCHOWSKI, Specjalizowane układy cyfrowe w strukturach
PLD i FPGA Wydawnictwa Komunikacji i Łączności, ISBN: 83-206-1235-7
JERZY PASIERBIŃSKI, PIOTR ZBYSIŃSKI, Układy programowalne w praktyce, Wydawnictwa Komunikacji i
Łączności, ISBN 83-206-1393-0
Ray Salemi, The UVM Primer: A Step-by-Step Introduction to the Universal Verification Methodology, 2013
Brian Baileyet al.,TLM-Driven Design and Verification Methodology, Cadence, ISBN 978-0-557-53906-2
PETER J. ASHENDEN, The Designer’s Guide to VHDL, Morgan Kaufmann Publishers, 2008
ISBN 9780120887859
MICHAEL J.S. SMITH, Application Specific Integrated Circuits, Addison-Wesley, 1997
Z1-PU7
WYDANIE N1
Strona 4 z 4
23. Nakład pracy studenta potrzebny do osiągnięcia efektów kształcenia
Lp.
Forma zajęć
1
Wykład
2
Ćwiczenia
15/10
3
Laboratorium
15/15
4
Projekt
15/25
5
Seminarium
0/0
6
Inne
0/5
Suma godzin
Liczba godzin
kontaktowych / pracy studenta
15/5
60/60
24. Suma wszystkich godzin: 120
25. Liczba punktów ECTS:3 4
26. Liczba punktów ECTS uzyskanych na zajęciach z bezpośrednim udziałem nauczyciela akademickiego 2
27. Liczba punktów ECTS uzyskanych na zajęciach o charakterze praktycznym (laboratoria, projekty) 2
26.
Zatwierdzono:
…………………………….
…………………………………………………
(data i podpis prowadzącego)
(data i podpis dyrektora instytutu/kierownika katedry/
Dyrektora Kolegium Języków Obcych/kierownika lub
dyrektora jednostki międzywydziałowej)
3
1 punkt ECTS – 30 godzin.