Strona główna
|
Katedra Systemów Mikroelektronicznych,
Wydział Elektroniki,
Telekomunikacji i Informatyki, Politechnika Gdańska
|
|
Licznik w kodzie Graya
Zadanie:
Należy zaprojektować dwubitowy licznik w kodzie Graya.
Wejścia układu:
- przycisk BTN0 stanowiący zegar
(nazwa sygnału - clk_i),
- przycisk BTN3 stanowiący reset
asynchroniczny (nazwa sygnału - rst_i).
Wyjścia układu:
- dioda świecąca LD0 - bit 0 licznika
(nazwa sygnału - led_o(0)),
- dioda świecąca LD1 - bit 1 licznika Graya (nazwa sygnału
- led_o(1)).

Zegar generowany jest przez naciskanie mechanicznego przycisku BTN0 i dlatego
mogą wystąpić drgania zestyków, czyli generacja więcej niż jednego
zegara po pojedynczym naciśnięciu przycisku.
Należy wykonać symulację funkcjonalną oraz zweryfikować
układ praktycznie poprzez zaprogramowanie
płytki testowej.
Plik ucf do zadania, płytka Digilent Spartan-3, układ Spartan-3 3S200 FT256-4:
# Push-buttons:
NET "rst_i" LOC = "L14" ; # pressed high BTN3
NET "clk_i" LOC = "M13" ; # pressed high BTN0
# pin M13 is not dedicated to clock, so force it:
NET "clk_i" CLOCK_DEDICATED_ROUTE = FALSE;
# LEDs:
NET "led_o<0>" LOC = "K12" ; # high on
NET "led_o<1>" LOC = "P14" ; # high on