PROGRAMOWALNE UKŁADY CYFROWE - ACiR  (semestr 7)

Tryb zdalny

 

dr inż. Miron Kłosowski   EA309

miron.klosowski@pg.edu.pl

 

 

Wykład:

 

Pierwsza część wykładu

Druga część wykładu (SystemC)

 

 

Screencasty z wykładami:

 

Wektory

Procesy kombinacyjne cz. 1

Procesy kombinacyjne cz. 2

Układy kombinacyjne - dokończenie

Procesy sekwencyjne

Układy sekwencyjne

Maszyny stanów

Stany zabronione

Funkcje i procedury

 

 

Kolokwium:

 

Lista pytań

Wyniki zaliczenia

 

 

Laboratorium – przygotowanie w domu:

 

Ćwiczenia można wcześniej przygotować w domu i wykonać do nich odpowiednią symulację funkcjonalną (testbench), w celu sprawdzenia ich działania (w ćwiczeniach 5-8 symulacja nie jest obowiązkowa).

 

Poniżej materiał o oprogramowaniu projektowym Vivado, które można pobrać ze strony www.xilinx.com (wersja webpack) i uruchomić na domowym komputerze (także z systemem Windows 10). W materiale zawarto również porady dotyczące tworzenia testbenchy do ćwiczeń laboratoryjnych.

Demonstracja VIVADO

 

Poniżej materiał o przykładzie modelowania i symulacji. Przedstawiono przykład modelowania drgań zestyków i podłączenie tego modelu do symulowanego układu. Przedstawiono rezultaty symulacji z drganiami zestyków oraz modyfikacje wprowadzone do symulowanego układu w celu rozwiązania problemu drgań zestyków.

Demonstracja - drgania zestyków

 

Moduł modelujący drgania zestyków dostępny jest tu:  bounce.vhd

(warto go użyć do testowania projektów pod kątem odporności na drgania zestyków).

 

 

Laboratorium – uruchomienie ćwiczenia na płytce w laboratorium:

 

Wybór płytki FPGA do zaprogramowania

 

Skrócona instrukcja projektowania z wykorzystaniem FPGA

 

Demonstracja VIVADO - programowanie płytki FPGA Basys3

 

 

Laboratorium – ćwiczenia:

W ćwiczeniach wykorzystywana będzie płytka prototypowa Nexys-A7 z układem FPGA xc7a100tcsg324-1.

Częstotliwość zegara na płytce FPGA wynosi 100 MHz.

Następujące ostrzeżenie oprogramowania Vivado można zignorować we wszystkich ćwiczeniach:

[Constraints 18-5210] No constraints selected for write.

 

Ćwiczenia 1-4 należy zaliczać wg kolejności z tabeli poniżej.

 

Studenci zobowiązani są do samodzielnej pracy.

 

Numer ćwiczenia

Nazwa ćwiczenia

Orientacyjny czas wykonania

Maks. liczba punktów

1

Generator parzystości

2 h

6

2

Licznik w kodzie Graya

2 h

6

3

Sterowanie wyświetlaczem LED

3 h

6

4

Monitor portu RS-232

3 h

8

5a

Core Generator (wersja 1)

3 h

8

5b

Core Generator (wersja 2)

3 h

8

6

Procesor PicoBlaze

3 h

8
(+4 za wersję rozszerzoną)

7

Procesor MicroBlaze

3 h

10
(+4 za wersję rozszerzoną)

8a

Core Generator (wersja 3)

3 h

8

8b

Rozbudowa systemu MicroBlaze

3 h

8

9

Środowisko SystemC

3 h

10

 

Uwaga!  Ćwiczenia 5a i 5b można wykonywać jako niezależne ćwiczenia i za każde można uzyskać 8 punktów (zalecana kolejność: najpierw 5a, następnie 5b).

 

Uwaga!  Ćwiczenia 8a i 8b można wykonywać jako niezależne ćwiczenia i za każde można uzyskać 8 punktów (ćwiczenie 8b musi być wykonane po ćwiczeniu 7 i po ćwiczeniu 5b lub 8a).

 

Suma punktów
z laboratorium i kolokwium

 

Ocena

> 90

5.0

81 – 90

4.5

71 – 80

4.0

61 – 70

3.5

50 – 60

3.0

< 50

2.0

 

Warunkiem zaliczenia jest uzyskanie minimum 35 punktów z laboratorium i minimum 15 punktów z kolokwium.

 

Uwaga!  Uzyskanie powyżej 80 punktów w sumie za wszystkie ćwiczenia zwalnia z kolokwium na wykładzie z oceną końcową z przedmiotu 5,0.

 

Uwaga!  Uzyskanie powyżej 70 punktów w sumie za wszystkie ćwiczenia także zwalnia z kolokwium na wykładzie, ale z oceną końcową 4,5 (nadal można jednak przystąpić do kolokwium, przy czym przystąpienie oznacza rezygnację ze zwolnienia i konieczność uzyskania oceny pozytywnej z kolokwium w celu zaliczenia przedmiotu).

 

 

Przykładowe fragmenty kodu w VHDL i Verilog®