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.