Pytania do kolokwium z Programowalnych Układów Cyfrowych
(AiR):
- Wymień
trzy kategorie układów programowalnych (podział pod względem złożoności
architektury) i scharakteryzuj krótko każdą z nich.
- Jakiej
kategorii układów programowalnych dotyczy podział na: coarse grade, medium
grade i fine grade. Scharakteryzuj krótko cechy wyżej wymienionych
rodzajów układów.
- Jaki
rodzaj pamięci konfiguracji dominuje w układach CPLD, a jaki w FPGA.
- Wymień
rodzaje pamięci konfiguracji – podaj ich wady i zalety.
- W
układzie Spartan3E w jednej komórce LUT można zrealizować pewne funkcje
logiki. Podaj ile maksymalnie zmiennych wejściowych może mieć dowolna
funkcja logiczna zrealizowana w jednej komórce LUT, ile maksymalnie
zmiennych wejściowych może mieć dowolna funkcja logiczna zrealizowana za
pomocą jednego Slice oraz ile maksymalnie wejść mogą mieć pewne funkcje
logiczne wykonane w oparciu o jeden Slice.
- Wymień
parametry końcówki I/O układu Spartan3E które można konfigurować.
- Wymień
tryby konfiguracji układu Spartan3E.
- Opisz
właściwości i zastosowanie bloku „week-keeper” w układzie Spartan3E.
- Wyjaśnij
pojęcie „local routing”.
- Wyjaśnij
pojęcie „general purpose routing”.
- Wyjaśnij
pojęcie „global routing”.
- Wyjaśnij
pojęcie „dedicated routing”.
- Wyjaśnij
pojęcie „clock skew” oraz podaj sposoby jego zmniejszania lub kompensacji.
- Wyjaśnij
pojęcie Delay Locked Loop, narysuj schemat takiej pętli i podaj
zastosowania.
- Jakie
sygnały generuje układ DCM w układzie Spartan3E. Jakie są wymagania
odnośnie parametrów sygnału zegarowego.
- Wymień
i scharakteryzuj tryby zapisu jednoportowych pamięci Block-RAM w układach
Spartan3E.
- Wymień
możliwe zastosowania jednoportowych pamięci Block-RAM w układach
Spartan3E.
- Wymień
właściwości i zastosowania 2-portowych pamięci Block-RAM w układach
Spartan3E.
- Wymień
funkcje które może w komórce CLB układu Spartan3E spełniać blok LUT.
- Wymień
różnice w budowie układów PLA i PAL.
- Wymień
i krótko scharakteryzuj poziomy abstrakcji stosowane w opisie sprzętu.
- Wymień
metody opisu układów cyfrowych.
- Co to
jest podzbiór syntezowalny języka VHDL, podaj przykład instrukcji
niesyntezowalnej.
- Co to
jest funkcja rezolucji.
- Podaj
sposoby unikania stanów zabronionych w maszynach stanów.
- Co to
jest metastabilność przerzutników.
- Wymień
i krótko scharakteryzuj trzy sposoby syntezy z wykorzystaniem bloków
funkcjonalnych w układach FPGA.
- Podaj
właściwości zmiennych w procesach.
- Podaj
właściwości zmiennych w funkcjach.
- Wymień
zasadnicze różnice pomiędzy zmiennymi a sygnałami.
- Omów
sposoby parametryzacji modułów projektowych.
- Co to
jest „unconstrained vector”, podaj zastosowania.
- Co to
są cykle delta, podaj przykład.
- Jaka
musi być liczba iteracji syntezowalnej pętli ?
- Do
czego służy instrukcja „generate” ?
- Napisz
proces synchroniczny w języku VHDL realizujący syntezowalny mnożnik
n-bitowy (na liczbach binarnych bez znaku). Nie wykorzystujemy operatora *
Proces powinien rozpoczynać proces mnożenia z chwilą wystąpienia sygnału
mul_start (typu std_logic). W trakcie trwania mnożenia proces wystawia
sygnał mul_busy (typu std_logic). Mnożna i mnożnik podane na sygnały:
mul_in_1 oraz mul_in_2 (są to sygnały typu std_logic_vector), a wynik
powinien być podany na rejestr mul_result (2n bitowy – również
std_logic_vector). Podać definicje używanych sygnałów.
mnożnik: process (clk, rst)
.....
end process;
- Napisz
proces synchroniczny w języku VHDL realizujący syntezowalny n-bitowy
licznik Johnsona. Proszę operować na sygnałach typu std_logic i
std_logic_vector. Podać definicje używanych sygnałów. Zabezpieczyć licznik
przed blokadą w stanie (lub stanach) zabronionych.
johnson: process (clk, rst)
.....
end process;
- Napisz
proces synchroniczny w języku VHDL realizujący syntezowalną maszynę stanów
sterującą pracą wycieraczek samochodowych. Maszyna dysponuje sygnałami
wejściowymi: wipe_on (oznacza włączenie wycieraczek), home_pos (pozycja spoczynkowa
wycieraczek), end_pos (pozycja
końcowa wycieraczek). Maszyna stanów generuje sygnały wyjściowe: motor_on (włącza silnik
wycieraczek), motor_rev (przełącza
kierunek obrotów na wsteczny). Proszę pamiętać o synchronizujących
przerzutnikach D dla sygnałów wejściowych z czujników. Podać definicje używanych sygnałów.
wiper: process (clk, rst)
.....
end process;