Układy cyfrowe i systemy wbudowane 1 – laboratorium mgr inż. Antoni Sterna Pt 1245 - 1500
SPRAWOZDANIE
Naszym zadaniem było opracowanie modelu asynchronicznego licznika modulo 10 na przerzutnikach JK oraz licznika synchronicznego na przerzutnikach D, liczącego w dół od 5 do 0. Układy zrealizowaliśmy w programie Xilnix ISE Project Navigator, następnie przetestowaliśmy ich działanie na wbudowanym w to środowisko symulatorze, a później zaprogramowaliśmy je w układzie XC9572XL.
Licznik asynchroniczny modulo 10 na przerzutnikach JK
Poniżej zamieszczony został schemat zrealizowanego przez nas licznika:
Do wyprowadzenia wyjść użyliśmy magistrali. Licznik został przetestowany w symulatorze, dzięki czemu w łatwy sposób mogliśmy zaobserwować zachodzące zmiany stanów i proces stabilizowania się wyniku. Po przesłaniu kodu do układu licznik działał prawidłowo.
Licznik synchroniczny na przerzutnikach D liczący w dół od 5 do 0
Poniżej zamieszczony został schemat zrealizowanego przez nas licznika:
Podobnie, jak w przypadku poprzedniej realizacji, najpierw przetestowaliśmy działanie licznika w symulatorze. Mogliśmy dzięki wykresom zobaczyć, jak zmieniają się stany wyjść i w przeciwieństwie do licznika asynchronicznego wynik od razu był stabilny. Ten licznik również zadziałał poprawnie po przesłaniu go do układu. Do wyprowadzenia wyjść na diody także użyliśmy magistrali.
Wykorzystanie obu skonstruowanych liczników do zliczania jednego sygnału i wyświetlanie wyników obu liczników na osobnych diodach
Aby wykonać to zadanie, najpierw zapisaliśmy nasze dotychczasowe liczniki jako symbole, co pozwoliło nam w łatwy i czytelny sposób zbudować ten układ. Uzyskaliśmy dzięki temu dwie „skrzynki”, które wystarczyło jedynie odpowiednio podłączyć. Schemat poniżej:
Wyjścia na diody podłączyliśmy za pomocą magistral, wykorzystując przy tym bramkę NOT w wersji magistralowej, co było znacznie wygodniejsze w użyciu, niż korzystanie z innych rozwiązań. Układ ten zadziałał prawidłowo.
Wnioski
Dzięki ćwiczeniom zrealizowanym podczas laboratorium mogliśmy zaobserwować różnice w pracy licznika synchronicznego oraz asynchronicznego i na podstawie tych obserwacji wyciągnąć wnioski na temat zalet i wad tych rozwiązań (liczniki asynchroniczne są prostsze w budowie, jednak trzeba poczekać na ustabilizowanie się wyniku, liczniki synchroniczne mają bardziej złożoną budowę, jednak wynik od razu jest stabilny). Ponadto dowiedzieliśmy się jak korzystać z wbudowanego w środowisko Xilinx symulatora, który okazuje się bardzo pomocny w testowaniu schematów, zwłaszcza, jeśli szukamy miejsca lub momentu, w którym nasz układ nie działa prawidłowo. Oprócz tego dowiedzieliśmy się jak tworzyć własne symbole, które można następnie wykorzystywać w innych projektach. Ta umiejętność na pewno okaże się przydatna jeszcze nie raz.