komputerowe_wspomaga..
Transkrypt
komputerowe_wspomaga..
Z1-PU7 WYDANIE N1 Strona 1 z 1 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: 2012/2013 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 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ęzyka VHDL w zakresie symulacji Rozumie semantykę języków VHDL w zakresie syntezy Potrafi zrealizować projekt układu cyfrowego na poziomie przesłań międzyrejestrowych w języku VHDL Zna podstawy języka Verilog i zasad jego stosowania w projektowaniu układów cyfrowych Potrafi zrealizować implementację programowalnego układu logicznego w technologii Altera W2 W3 U1 W4 U2 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 Kolokwium i egzamin wykład Wykonanie ćwiczeń laboratoryjnych laboratorium Kolokwium i egzamin wykład Wykonanie ćwiczeń laboratoryjnych laboratorium Odniesienie do efektów dla kierunku studiów K2_W07 K2_W11 K2_W07 K2_U12 K2_W07 K2_U12 K2_U08 K2_U12 K2_W07 K2_U12 K2_U08 K2_U12 Z1-PU7 WYDANIE N1 Strona 2 z 2 18. Formy zajęć dydaktycznych i ich wymiar (liczba godzin) W. : 15 L. : 30 Ćw.: 15 - Sem. 1 - Sem. 2 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. Podstawowe informacje o języku VHDL. Opis strukturalny układu. Opis typu dataflow. Opis behawioralny. Ogólna architektura środowisk testujących. Środowisko programowe języka VHDL. 3. Język VHDL - predefiniowane typy danych. Typy danych definiowane przez użytkownika. Obiekty: stała, zmienna, sygnał. Operatory i wyrażenia. Instrukcja procesu. Instrukcja wait. Pojęcie sygnału. Instrukcja przypisania sygnału. Modele opóźnień – modelowanie upływu czasu, dynamicznych własności sprzętu i sekwencji zdarzeń. Mechanizm modelowania procesów współbieżnych. Cykl symulacji. 4. Instrukcje sterujące języka VHDL. Pozostałe instrukcje sekwencyjne. Semantyka instrukcji współbieżnych. Definiowanie podprogramów – funkcje, procedury. Deklarowanie pakietów i definiowanie ciał pakietów. Pakiet STD. Biblioteka IEEE i pakiet STD_LOGIC_1164. 5. Wykorzystanie języka VHDL do tworzenia syntezowalnych modeli sprzętu. Ograniczenia stylu modelowania przy tworzeniu modeli syntezowalnych na poziomie przesłań międzyrejestrowych. Pakiety wspomagające syntezę: std_logic_arith, std_logic_unsigned, std_logic_signed. Procesy kombinacyjne i sekwencyjne. Unikanie niechcianych elementów pamięciowych. 6. Modelowanie układów kombinacyjnych: bramki, struktury bramkowe, multipleksery, dekodery. Kombinacyjne układy arytmetyczne. Modelowanie elementów sekwencyjnych. Modelowanie synchronicznych automatów sekwencyjnych. Pamięci jaki elementy zależne od technologii. Wykorzystanie opisu strukturalnego. 7. Środowiska testujące. Typy plikowe. Pakiet TEXTIO i STD_LOGIC_TEXTIO. 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 symulatora sterowanej zdarzeniami (event driven). Weryfikacja za pomocą symulacji logicznej. Anotacja wsteczna modelu. Wykorzystanie języka VHDL w modelowaniu na poziomie logicznym (standard VITAL). 8. Inne metody weryfikacji: Różnice między symulacja układową a logiczną. Symulacja czasowa. Symulacja switch level. Symulacja mieszana i języki modelowania. Symulacja synchroniczna. Podstawy weryfikacji formalnej. Sprzętowe wspomaganie symulacji, emulacja logiczna. Symulacja uszkodzeń i generacja testów. 9. Podstawy syntezy logicznej i syntezy wysokiego poziomu. Elaboracja modelu RTL – techniki przekształceń architektonicznych. Elementy syntezy sekwencyjnej. Podstawy minimalizacji logicznej Synteza wielopoziomowa. Optymalizacja – odwzorowanie technologiczne. Różnice między optymalizacją układów programowalnych logicznych i specjalizowanych układów scalonych. Elementy syntezy wysokiego poziomu. 10. Wprowadzenie do języka Verilog. Elementy leksykalne, typy danych i operatory. Opis strukturalny. Elementy i funkcje prymitywne. Elementy prymitywne definiowane przez użytkownika. Przypisania blokujące i nieblokujące. Bloki sekwencyjne i współbieżne. Instrukcje sterujące. 11. Wykorzystanie języka Verilog do tworzenia modeli syntezowalnych. Dobre praktyki modelowania typowych elementów cyfrowych w języku Verilog. 12. Wprowadzenie w problematykę projektowania cyfrowych 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 Z1-PU7 WYDANIE N1 Strona 3 z 3 inwertera CMOS. Podstawowe struktury układów logicznych CMOS. Reguły projektowe i parametry elektryczne tranzystorów. Biblioteki komórek standardowych i ich charakteryzacja. 13. 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. 14. Systemy scalone. Metody specyfikacji i projektowania na poziomie systemowym. Język SystemC. Implementacja podstawowych elementów języka jako klas i wzorców języka C++. 9.4. Definiowanie hierarchii projektowej i modelowanie RTL. Jądro symulatora i sterowanie symulacją. Modelowanie transakcyjne. Wykorzystanie języka SystemC w weryfikacji. Biblioteka SCV. L. 1. Definiowanie projektu i symulacja w środowisku Modelsim (lub innego symulatora VHDL). 2. Wykonanie modelu układu cyfrowego w języku VHDL i jego uruchamianie za pomocą symulacji. 3. Weryfikacja projektu za pomocą symulacji i ocena jej kompletności. 4. Synteza logiczna i analiza czasowa modelu w języku VHDL. 5. Implementacja układu cyfrowego w układzie FPGA. 6. Uruchamianie prototypu w układzie FPGA. 20. Egzamin: tak 21. Literatura podstawowa: MARK ZWOLIŃSKI, Projektowanie układów cyfrowych z wykorzystaniem języka VHDL, ISBN 83-206-1452-X Praca zbiorowa pod redakcją JÓZEFA KALISZA, Język VHDL w praktyce, WKŁ, ISBN 83-206-1440-6 22. Literatura uzupełniająca: PETER J. ASHENDEN, The Designer’s Guide to VHDL, Morgan Kaufmann Publishers, 1995, 2008 ISBN 1558602704 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 MICHAEL J.S. SMITH, Application Specific Integrated Circuits, Addison-Wesley, 1997 23. Nakład pracy studenta potrzebny do osiągnięcia efektów kształcenia Lp. Forma zajęć Liczba godzin kontaktowych / pracy studenta 15/5 1 Wykład 2 Ćwiczenia 15/15 3 Laboratorium 30/35 4 Projekt 0/0 5 Seminarium 0/0 6 Inne 5/15 Suma godzin 65/70 Z1-PU7 WYDANIE N1 Strona 4 z 4 24. Suma wszystkich godzin: 135 25. Liczba punktów ECTS:3 5 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. Uwagi: zamiast 15 godz. wykładu i 15 godz. ćwiczeń w kolejnej wersji programu tego przedmiotu w semestrze S2/1wystarczy 30 godz. wykładu 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.