Prema novom nastavnom planu usklađenom po Bolonjskoj deklaraciji nastava iz ovog predmeta odvija se u toku VIII semestra na smeru za Mikroračunarsku elektroniku, usmerenje Embeded sistemi i algoritmi.
Ishodi obrazovanja
Namera ovog kursa je da studente uvede u oblast savremenih metodologija za verifikaciju složenih digitalnih sistema.
Ishodi obrazovanja:
- upoznavanje sa savremenim metodologijama za funkcionalnu verifikaciju digitalnih sistema
- sposobnost izrade verifikacionog plana za verifikaciju zadatog digitalnog sistema
- razumevanje strukture savremenog verifikacionog okruženja, kao i funkcije svakog od standardnih modula koji čine verifikaciono okruženje
- razumevanje koncepta slučajnog generisanja test vektora i sposobonost razvoja stimulus generatora bazirnog na slučajnim test vektorima
- razumevanje koncepta referentnog modela i sposobnost razvoja istog
- razumevanje koncepta strukturne i funkcionalne pokrivenosti
- poznavanje UVM metodologije i mogućnost razvoja savremenih UVM verifikacionih okruženja korišćenjem SystemVerilog jezika
Specifikacija predmeta
Oznaka predmeta: EM459Broj ESPB: 6
Broj časova aktivne nastave nedeljno: 2+3
Nastavni kadar
Nastavnik: dr Predrag Teodorović, vanredni profesorKonsultacije: po dogovoru
Asistenti: MSc Nebojša Pilipović
Konsultacije: po dogovoru
Način polaganja ispita
Način formiranja ocene:
Ocena se formira na osnovu kolokvijuma na kojima se ispituje znanje u vezi predavanja (50%), i na osnovu odbranjenog projekta (50%).
U toku semestra predviđeno je održavanje dva teorijska kolokvijuma.
Pohađanje vežbi je obavezno. Na vežbama je dozvoljeno imati do 2 izostanka u suprotnom predmet se pohađa ponovo naredne godine jer nadoknade ne postoje.
U toku semestra predviđeno je održavanje dva teorijska kolokvijuma.
Pohađanje vežbi je obavezno. Na vežbama je dozvoljeno imati do 2 izostanka u suprotnom predmet se pohađa ponovo naredne godine jer nadoknade ne postoje.
Materijal za predavanja:
Predavanje 1: Uvod u verifikaciju hardvera
Beleške sa predavanja.
Predavanje 2: Verifikacioni plan
Beleške sa predavanja.
Predavanje 3: Kreiranje verifikacionog okruženja
Beleške sa predavanja (Dodatak - SystemVerilog assertions).
Predavanje 4: Tehnike za generisanje stimulusa
Beleške sa predavanja. (primer SV stimulusa )
Predavanje 5: Tehnike za proveru rezultata
Beleške sa predavanja. (primer SV testbenca)
Predavanje 6: Praćenje toka verifikacije
Beleške sa predavanja.
Spisak ispitnih pitanja (oba dela)
Beleške sa predavanja.
Predavanje 2: Verifikacioni plan
Beleške sa predavanja.
Predavanje 3: Kreiranje verifikacionog okruženja
Beleške sa predavanja (Dodatak - SystemVerilog assertions).
Predavanje 4: Tehnike za generisanje stimulusa
Beleške sa predavanja. (primer SV stimulusa )
Predavanje 5: Tehnike za proveru rezultata
Beleške sa predavanja. (primer SV testbenca)
Predavanje 6: Praćenje toka verifikacije
Beleške sa predavanja.
Spisak ispitnih pitanja (oba dela)
Materijal auditorne vežbe:
Vežba 1: Uvod u SystemVerilog jezik
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 2: Objektno orijentisani aspekti SystemVerilog jezika
Materijal za izvođenje vežbe. Prateći Materijal
Vežba 3: Thread-ovi u Systemverilog jeziku
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 4: Randomizacija i generisanje ograničenja u SystemVerlog jeziku
Materijal za izvođenje vežbe. Prateći Materijal.
Vežba 5: Uvod u UVM metodologiju razvoja verifikacionih okruženja
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 6-7: Rad sa sekvencama i razvoj drajvera
Materijal za izvođenje vežbe. Prateći materijal
Vežba 8: Razvoj monitora
Materijal za izvođenje vežbe. Prateći materijal
Vežba 9: Hijerarhija UVM verifikacionog okruženja
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 10: Razvoj scoreboard komponente
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 11: Prikupljanje pokrivenosti
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 12: Regresija i proces debagovanja
Materijal za izvođenje vežbe. Prateći materijal. Video materijal
Vežba 13: Rad sa kompletnim UVM okruženjem
Materijal za izvođenje vežbe. Prateći materijal.
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 2: Objektno orijentisani aspekti SystemVerilog jezika
Materijal za izvođenje vežbe. Prateći Materijal
Vežba 3: Thread-ovi u Systemverilog jeziku
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 4: Randomizacija i generisanje ograničenja u SystemVerlog jeziku
Materijal za izvođenje vežbe. Prateći Materijal.
Vežba 5: Uvod u UVM metodologiju razvoja verifikacionih okruženja
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 6-7: Rad sa sekvencama i razvoj drajvera
Materijal za izvođenje vežbe. Prateći materijal
Vežba 8: Razvoj monitora
Materijal za izvođenje vežbe. Prateći materijal
Vežba 9: Hijerarhija UVM verifikacionog okruženja
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 10: Razvoj scoreboard komponente
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 11: Prikupljanje pokrivenosti
Materijal za izvođenje vežbe. Prateći materijal.
Vežba 12: Regresija i proces debagovanja
Materijal za izvođenje vežbe. Prateći materijal. Video materijal
Vežba 13: Rad sa kompletnim UVM okruženjem
Materijal za izvođenje vežbe. Prateći materijal.
Dodatne informacije
Uputstvo za pisanje diplomskog rada
Pravila prilikom Bodovanje projekta: Pravila
Dodatna literatura: B. Wile, J. C. Goss, W. Roesner: Comprehensive functional verification (The complete industry cycle)
A.B.Mehta: SystemVerilog Assertions and Functional Coverage (Guide to language, methodology and applications), Springer
E. Cerny, S. Dudani, J. Havlicek, D. Korchemny: SVA: The power of Assertions in SystemVerilog, Springer
- Dokumenti koji su vam potrebni su:
- šablon za pisanje rada
- izjava o akademskoj čestitosti (stavlja se na početku rada, nakon naslovne strane i zadatka diplomskog rada)
- izjava o nepostojanju sukoba interesa (stavlja se na početku rada, nakon izjave o akademskoj čestitosti)
- primer diplomskog rada na temu Funkcionalne verifikacije hardvera
- Rad pisati ćirilicom
- Smernica za obim rada je ~30tak stranica (ovo naravno nije strogo, ali ovaj obim bi trebao da bude sasvim dovoljan za diplomski rad)
- Od trenutka kada imamo finalnu verziju rada, odbranu možemo da organizujemo u roku od dan, eventualno dva, pod uslovom da je komisija raspoloživa. Pre toga, tipičan scenario je ovakav: kandidat pošalje prvu verziju rada, profesor je pogleda i pošalje komentare, na osnovu kojih kandidat ispravi tekst i, u idealnom scenariju, imamo finalnu verziju. U gorem scenariju postojaće nekoliko iteracija i verzija dok se ne dođe do finalne. Vodite računa o ovome kada planirate odbranu
- Trudite se da pošaljete rad profesoru na pregled, što je pre moguće, naročito ukoliko očekujete da odbranite diplomski pred sam upis naredne školske godine (septembar, oktobar) kada se očekuje veliki broj studenata koji planiraju da diplomiraju baš kada i vi. Uz veliki broj kandidata, čak i uz najbolju nameru, može se desiti da profesor ne stigne svima da pregleda rad na vreme, već će morati da pregleda po redosledu kako su mu radovi dostavljani
- Prilikom odbrane, prezentacija treba da traje 10-15 minuta i da sadrži što više slika (blok dijagrama i slično), a što manje teksta.
Pravila prilikom Bodovanje projekta: Pravila
Dodatna literatura: B. Wile, J. C. Goss, W. Roesner: Comprehensive functional verification (The complete industry cycle)
A.B.Mehta: SystemVerilog Assertions and Functional Coverage (Guide to language, methodology and applications), Springer
E. Cerny, S. Dudani, J. Havlicek, D. Korchemny: SVA: The power of Assertions in SystemVerilog, Springer
