Elektronika i techniki mikroprocesorowe Instrukcja do zajęć

Transkrypt

Elektronika i techniki mikroprocesorowe Instrukcja do zajęć
Przygotowali: J. Michalak, M. Zygmanowski, M. Jeleń
Elektronika i techniki mikroprocesorowe
Instrukcja do zajęć laboratoryjnych
Część: Technika Cyfrowa
Liczba zajęć: 3 + zaliczające
Celem zajęć jest zapoznanie się z podstawowymi elementami wykorzystywanymi w
technice cyfrowej takimi jak bramki logiczne, sumatory, przerzutniki, liczniki oraz
zapoznanie się z podstawowymi metodami projektowania układów cyfrowych.
Wprowadzenie
W dzisiejszym świecie układy cyfrowe i ich pochodne wykorzystywane są praktycznie w
każdej dziedzinie gospodarki – do sterowania procesami produkcyjnymi, przetwarzania,
przesyłu danych itp. W porównaniu z układami analogowymi, posiadają one takie zalety jak:
większa odporność na zakłócenia, brak wpływu starzenia się elementów, większa
elastyczność i możliwości układów.
Technika cyfrowa opiera się o sygnały cyfrowe, czyli o sygnały nieciągłe zarówno w
czasie jak i co do wartości. Duża odporność na zakłócenia tych sygnałów wynika z faktu, że
mogą one przyjmować tylko dwa stany, którym możemy przyporządkować dwie wartości
logiczne (prawda-1 i fałsz-0). Te dwa stany logiczne odpowiadają dwóm poziomom napięć –
przykładowo w technice TTL fałszowi (zeru) odpowiada napięcie 0,2 [V], natomiast prawdzie
(jedynce) - poziom 3,6 [V]. Technika cyfrowa obejmuje ogół układów realizujących różnego
rodzaju funkcje pozwalające na przetwarzanie sygnału cyfrowego. Wśród tych układów
możemy wyróżnić układy kombinacyjne i sekwencyjne. W układach kombinacyjnych nie
występują elementy pamiętające i zegarowe, a wyjścia w dowolnej chwili czasowej zależą
tylko od stanów wejść w tej samej chwili. Układy sekwencyjne natomiast to układy
zawierające elementy pamiętające i (lub) wejścia zegarowe, a stany wyjść w tych układach
zależą nie tylko od stanów wejść w danej chwili ale również od stanów tych wejść w chwilach
poprzednich.
Informacje dodatkowe
Studenci na zajęciach z przedmiotu pracują podzieleni na 6 sekcji. Warunkiem zaliczenia
zajęć laboratoryjnych jest wykonanie sprawozdania z przeprowadzonych prac na komputerze
oraz jego zaliczenie.
W ramach zajęć studenci wykonują badania symulacyjne wybranych elementów i układów
cyfrowych oraz realizują i symulują własne projekty. Zajęcia odbywają się w oparciu o pakiet
Active-CAD pozwalający na symulację układów cyfrowych oraz na zapisywanie stworzonych
projektów wewnątrz układów programowalnych. Układy te są programowalną matrycą
posiadającą wejścia i wyjścia, wewnątrz której możemy zrealizować zadany układ cyfrowy
przy założeniu pewnych ograniczeń.
Studenci przychodzą na zajęcia przygotowani w oparciu o instrukcję oraz dostępną
literaturę. Warunkiem dopuszczenia do zajęć jest znajomość zakresu materiału w stopniu
pozwalającym na realizację przewidzianego programu zajęć laboratoryjnych.
Zapisy liczb stosowane w układach cyfrowych i mikroprocesorowych
W technice cyfrowej najczęściej stosuje się binarny bądź szesnastkowy zapis liczb. W
kodzie binarnym dowolną liczbę naturalną zapisuje się jako sumę kolejnych potęg liczby 2
pomnożonej przez odpowiednie współczynniki. Przykładowo zapisując liczbę 106 w kodzie
dziesiętnym i binarnym otrzymamy:
106  1  10 2  0  101  6  100 - zapis dziesiętny,
106d  1  26  1  25  0  24  1  23  0  22  1  21  0  20  1101010b - zapis binarny.
Pojedyncza liczba 0 bądź 1 nazywana jest bitem informacji, natomiast połączenie 8 bitów
– bajtem. W praktyce stosuje się liczby 1, 2 i więcej bajtowe. Liczba 106 zapisana w jednym
bajcie ma postać 011010101b. Oprócz systemu dwójkowego w układach mikroprocesorowych
stosuje się zapis heksadecymalny, w którym dowolna liczbę naturalną zapisuje się jako sumę
kolejnych potęg liczby 16 pomnożonych przez odpowiednie współczynniki, przy czym stosuje
się tu cyfry 0-9 i litery A-F odpowiadające liczbom: A-10, B-11, C-12, D-13, E-14, F-15.
Zapis heksadecymalny powstaje poprzez zgrupowanie po 4 bity liczby zapisanej w systemie
binarnym. Zapisana w systemie heksadecymalnym liczba 106 będzie wyglądała następująco:
106d = 0110 1010 b
106d =
6
Ah
W powyższej instrukcji i na zajęciach będą wykorzystywane wszystkie trzy przedstawione
metody zapisu liczb.
ZAJĘCIA NR 1
Układy Kombinacyjne
Układy kombinacyjne należą do najprostszych układów realizowanych w technice
cyfrowej. Stany wyjść w tych układach zależy tylko i wyłącznie od stanów wejść w tej samej
chwili czasowej. W układach kombinacyjnych wykorzystuje się bramki logiczne, sumatory,
dekodery itp. Poniżej zostaną omówione podstawowe bramki logiczne. Bramki oraz ich
tablice prawdy – czyli tablice przedstawiające stany wyjść przy wszystkich możliwych stanach
wejść, są przedstawione na rysunku.
INV
I
O
O=I
I O
0 1
1 0
I1
I2
AND
O
O = I1 I2
I1
0
0
1
1
I2
0
1
0
1
O
0
0
0
1
OR
I1
I2
O
O = I1+I2
I1
0
0
1
1
I2
0
1
0
1
O
0
1
1
1
I1
I2
NAND
O
O = I1 I2
I1
0
0
1
1
I2
0
1
0
1
O
1
1
1
0
I1
I2
NOR
O
O = I1+I2
I1
0
0
1
1
I2
0
1
0
1
O
1
0
0
0
Rys.1 Podstawowe bramki logiczne
Opisy podstawowych bramek logicznych:
➢ INV(NOT) – inwerter - bramka odpowiadająca funkcji negacji w logice. Zmienia stan
sygnału cyfrowego na przeciwny (0 na 1 i 1 na 0). Bramka jednowejściowa. W
oprogramowaniu Active-CAD - symbol INV.
➢ AND – iloczyn – bramka odpowiadająca funkcji iloczynu logicznego w logice. Na
wyjściu pojawia się stan logiczny 1 tylko wtedy, gdy na wszystkich wejściach pojawią się
stany logiczne 1. W przeciwnym wypadku na wyjściu występuje stan logiczny 0. Bramka
dwu- lub wielowejściowa. W oprogramowaniu Active-CAD - symbol AND2-AND18.
➢ OR – suma – bramka odpowiadająca funkcji sumy logicznej w logice. Na wyjściu pojawia
się stan logiczny 1 jeżeli na jakimkolwiek wejściu pojawi się stan logiczny 1. W
przeciwnym wypadku na wyjściu występuje stan logiczny 0. Bramka dwu- lub
wielowejściowa. W oprogramowaniu Active-CAD - symbol OR2-OR18.
➢ NAND – zanegowany iloczyn. Jest to złożenie bramki AND z bramką INV. Dla tych
samych stanów wejściowych jak dla bramki AND wyjście będzie przyjmowało stany
przeciwne. Bramka dwu- lub wielowejściowa. W oprogramowaniu Active-CAD - symbol
NAND2-NAND16.
➢ NOR – zanegowana suma. Jest to złożenie bramki OR z bramką INV. Dla tych samych
stanów wejściowych jak dla bramki OR wyjście będzie przyjmowało stany przeciwne.
Bramka dwu- lub wielowejściowa. W oprogramowaniu Active-CAD - symbol NOR2NOR16.
Bramki NAND i NOR wykorzystywane są do projektowania układów logicznych z
wykorzystaniem tablic (map) Karnaugha. Układy zbudowane z tego rodzaju bramek cechują
się tym, że cały układ kombinacyjny zbudowany jest z jednego rodzaju bramek, co zmniejsza
koszty (bramki cyfrowe występują po kilka sztuk wewnątrz jednego układu scalonego).
Podstawowe prawa algebry Boole’a
W celu minimalizacji ilości bramek cyfrowych należy się posługiwać wzorami
obowiązującymi w logice dwuwartościowej. Poniżej zestawione zostały podstawowe
zależności:
a+b = b+a
a*b = b*a
a*(b+c) = a*b + a*c a+b*c = (a+b)*(a+c)
(a+b)+c = a+(b+c)
(a*b)*c = a*(b*c)
a+0 = a
a*1 = a
a+1 = 1
a*0 = 0
a+a = a
a*a = a
a a =1
a∗a =0
Prawa de Morgana
ab= a∗b
a∗b= a  b
Poniżej przedstawiony został przykład zastosowania praw algebry Boole’a do
uproszczenia funkcji logicznej.
Realizowana funkcja logiczna ma postać:
Y = (A+B)* C +B*C+A
Układ cyfrowy realizujący powyższą funkcję przedstawiono na rysunku poniżej:
Za pomocą praw algebry Boole’a funkcję logiczną możemy przekształcić do
następującej postaci:
Y = (A+B)* C +B*C+A = A* C +B* C +B*C+A = A*( C +1)+B*( C +C) = A+B
Jak widać powyższy funkcja logiczna zredukowała się tylko do jednej sumy logicznej,
co znacznie upraszcza jej realizację praktyczną.
Projektowanie układów cyfrowych
W poprzednim rozdziale przedstawiona została metoda realizacji układu w oparciu o
matematyczny zapis funkcji logicznej, która może zostać poddana dodatkowo minimalizacji
w oparciu o prawa algebry Boole’a. W tym rozdziale zapoznamy się z metodami
projektowania układów cyfrowych. Pierwsza metoda (oparta o formę kanoniczną) polega na
określeniu, w oparciu o tablicę prawdy, wszystkich możliwych stanów przy których funkcja
ma przyjmować wartości równe 1, określeniu zależności opisujących każdy z tych stanów, a
następnie dokonaniu ich sumy logicznej i dokonania minimalizacji funkcji. Drugą metodą
będzie metoda oparta o tablice Karnaugha. Obie metody zostaną wytłumaczone w oparciu o
poniższy przykład.
Przykład: Głosowania dla 4 osób.
Zadanie polega na zaprojektowaniu układu, który będzie ustawiał wyjście w
stan 1 gdy liczba osób głosujących na tak (stan wejścia w układzie – 1) będzie większa, bądź
równa liczbie osób głosujących na nie (stan wejścia w układzie – 0).
Metoda nr 1.
Rozwiązanie rozpoczynamy od narysowania tabeli prawdy. I1–I4 – wejścia – osoby
głosujące, O – wyjście.
Lp.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
I1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
I2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
I3
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
I4
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
O
0
0
0
1
0
1
1
1
0
1
1
1
1
1
1
1
Jak widać z tablicy prawdy – funkcja O przyjmuje wartość 1 przy kombinacjach wejść nr: 3,
5 - 7, 9-15. Każdą z tych kombinacji można określić jednoznacznie jako iloczyn logiczny
wszystkich wejść, przy czym, gdy wejście ma wartość 0 to w zależności uwzględniamy jego
negację. Kombinacje wejść przy których O ma wartość 1 zestawiono w tabeli.
Lp.
3
5
6
7
9
10
11
12
13
14
15
I1
0
0
0
0
1
1
1
1
1
1
1
I2
0
1
1
1
0
0
0
1
1
1
1
I3
1
0
1
1
0
1
1
0
0
1
1
I4
1
1
0
1
1
0
1
0
1
0
1
O
1
1
1
1
1
1
1
1
1
1
1
Zależność
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
I 1∗I 2∗I 3∗I 4
W celu uzyskania funkcji wyjściowej należy dokonać sumy logicznej przedstawionych
powyżej zależności. Otrzymamy wtedy funkcję:
O= I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4 
 I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4  I 1∗I 2∗I 3∗I 4 
 I 1∗I 2∗I 3∗I 4 
Redukując powyższą funkcję otrzymamy:
O= I 1∗I 2∗ I 3∗I 4  I 3∗I 4  I 3∗I 4 I 3∗I 4  I 3∗I 4∗ I 1∗I 2 I 1∗I 2 I 1∗I 2 
I 1∗I 2∗ I 3∗I 4  I 3∗I 4  I 1∗I 2∗ I 3∗I 4 I 3∗I 4 
Wyrażenie w pierwszym nawiasie zawsze jest równe 1 a dodatkowo korzystając z
zależności a+a = a otrzymujemy:
O= I 1∗I 2 I 3∗I 4 I 1∗I 2 I 1∗I 2  I 3∗I 4  I 3∗I 4 
Układ realizujący funkcje logiczną O jest następujący.
Metoda nr 2.
Metoda oparta o tablice Karnaugha należy do metod zalgorytmizowanych. Wykorzystuje się
w niej tablice dwuwymiarowe, wewnątrz których zaznacza się obszary wypełnione jedynkami
(odpowiadające iloczynom logicznym) bądź zerami (odpowiadające sumom logicznym). Przy
tworzeniu tablic Karnaugha należy zwrócić uwagę aby kolejne argumenty różniły się o 1. W
powyższym przykładzie kolejność zmiennych jest następująca: 00, 01, 11, 10. Zaznaczane
obszary mogą mieć 2,4,8 itd. elementów.
Tablica Karnaugha dla przykładu głosowania.
I1I2
00
01
11
10
00
0
0
1
0
01
0
1
1
1
11
1
1
1
1
10
0
1
1
1
I3I4
Po zaznaczeniu grup każdej przypisuje się odpowiednie wyrażenie ją opisujące –
przykładowo dla grupy czterech jedynek ustawionych pionowo przypisuje się iloczyn tych
zmiennych, które się w niej nie zmieniają czyli I1*I2. Na podstawie zaznaczonych obszarów
funkcja logiczna O ma postać:
O  I1  I 2  I 1  I 3  I 1  I 4  I 2  I 3  I 2  I 4  I 3  I 4
Układ realizujący funkcję O jest następujący.
Należy tu zaznaczyć, że obie uzyskane funkcje logiczne są sobie równoważne, jednak
zastosowanie metody drugiej prowadzi do najprostszej realizacji funkcji logicznej.
Podczas zajęć będą wykonywane projekty układów kombinacyjnych w oparciu o instrukcje do
ćwiczenia, bazujące na przedstawionych metodach projektowania.
ZAJĘCIA NR 2
Przerzutniki i ich zastosowania.
Przedstawione na poprzednich zajęciach układy kombinacyjne nie pozwalają na
realizację niektórych zadań ze względu na fakt, że ich wyjścia w danej chwili czasowej zależą
tylko od stanów wejść w tych samych chwilach czasowych. Przykładem tego zadania może
być zliczanie impulsów pojawiających się na wejściu układu. Aby rozwiązać takie zadanie,
układ cyfrowy musi być wyposażony w elementy pamiętające. Rolę elementów pamiętających
w układach cyfrowych pełnią przerzutniki. Do podstawowych zadań przerzutników możemy
zaliczyć:
➢ pamiętanie stanów układu aż do wykasowania przerzutnika
➢ odczytywanie stanów wejść w określonych chwilach czasowych
➢ zliczanie i rejestracja impulsów wejściowych
Grupę układów cyfrowych, których wyjścia zależą nie tylko do stanów wejść w
dowolnej chwili czasowej, ale również od stanów wejść w chwilach poprzednich nazywamy
układami sekwencyjnymi. W układach sekwencyjnych bardzo często występują dodatkowe
wejścia zegarowe pozwalające na synchronizację pracy układu. Jeżeli w układzie cyfrowym
zmiany stanów przerzutników następują równocześnie w określonych chwilach czasowych –
takie układy nazywa się synchronicznymi. Jeśli ten warunek nie jest spełniony, układ cyfrowy
nazywa się asynchronicznym. W ramach przedmiotu zajmować się będziemy układami
asynchronicznymi.
Rodzaje przerzutników
W technice cyfrowej rozróżnia się dwa rodzaje przerzutników: asynchroniczne –
przerzutnik typu RS i synchroniczne – przerzutniki typu: D, T, JK. Poniżej zostaną omówione
poszczególne typy przerzutników.
1. Przerzutnik typu RS
Przerzutnik RS jest układem dwuwejściowym o wejściu ustawiającym S (ang. Set) i
wejściu kasującym R (ang. Reset). Wejście S służy do ustawiania na wyjściu Q sygnału 1,
wejście R służy do kasowania sygnału wyjściowego. Przerzutnik będzie zachowywał
informację o pojawieniu się sygnału na wejściu S, dopóki nie pojawi się sygnał na wejściu R.
Można więc traktować taki układ jako podstawowy element pamiętający. Na rysunku poniżej
pokazano symbol przerzutnika RS i jego tablicę prawdy.
S
R
Q
Q
S
0
1
0
1
R
0
0
1
1
Q
QN-1
1
0
X
Przerzutnik RS -symbol i jego tablica prawdy
W warunkach pamiętających układ na obu wejściach posiada stany 0. Aby zapisać
informację w przerzutniku,czyli ustawić wyjście w stan 1, należy na krótką chwilę podać stan
1 na wejście S. Przerzutnik będzie pozostawał w tym stanie dopóki nie pojawi się 1 na
wejściu R. Należy unikać w tym przerzutniku sytuacji, gdy na obu wejściach pojawi się stan
1, ponieważ nie można w tej sytuacji przewidzieć stanu wyjścia. Jest to tak zwany stan
zabroniony przerzutnika. W odróżnieniu do bramek logicznych – przerzutnik może posiadać
wyjścia w różnych stanach przy tych samych sygnałach wejściowych. Przerzutniki te stosuje
się najczęściej do zapamiętywania i przechowywania informacji. Przykłady zastosowań takich
przerzutników zostaną podane w dalszej części.
W bibliotece oprogramowania Active-CAD występuje przerzutnik typu RS z zanegowanymi
wejściami (symbol LSR1), w którym sygnałami aktywnymi są sygnały na poziomie niskim
(logiczny stan 0). Aby przerzutnik ten działał zgodnie z przedstawioną powyżej tablicą
prawdy na jego wejściach muszą znaleźć się dwa inwertery, co pokazano na rysunku.
Realizacja przerzutnika RS w oprogramowaniu Active - CAD
2. Przerzutnik typu D
Przerzutnik D jest układem dwuwejściowym o wejściu opóźniającego D (ang. Delay) i
wejściu zegarowym CLK (ang. Clock). Występowanie wejścia zegarowego jest
charakterystyczne dla układów synchronicznych. Sygnał, który występuje na wejściu D jest
przepisywany na wyjście przerzutnika przy wystąpieniu zbocza narastającego na wejściu
zegarowym. Przerzutnik utrzymuje wpisany stan wyjściowy aż do chwili wpisania kolejnego
stanu na wejściu D, przy kolejnym zboczu narastającym sygnału zegarowego. Tak więc na
wyjście przepisywane są stany wejść tylko w konkretnych chwilach czasowych i utrzymywane
aż do następnego sygnału zegarowego. Dzięki swoim własnościom przerzutniki te są
stosowane do synchronicznego pobierania danych przez układ cyfrowy i pozwalają na
krótkotrwałe zapamiętanie stanów wejściowych. Na rysunku pokazano przerzutnik D,
dostępny w bibliotece programu Active-CAD – symbol LD11 oraz tablicę prawdy dla tego
przerzutnika. Symbol
oznacza zbocze narastające sygnału zegarowego, natomiast (-)
oznacza inne stany wejścia zegarowego.
D
0
1
0
1
CLK
Q
(-)
(-)
0
1
QN-1
QN-1
Przerzutnik D i jego tablica prawdy
3. Przerzutnik typu JK
Przerzutnik JK jest układem trójwejściowym o wejściu zegarowym CLK (ang. Clock) i
dwóch wejściach danych: wejściu ustawiającym J i wejściu kasującym K. Jest to najbardziej
uniwersalny oraz najczęściej wykorzystywany w praktyce przerzutnik, szczególnie w
układach liczących. Przerzutnik ten w zależności od stanów sygnałów na wejściach J i K
zachowuje się w następujący sposób:
– wejścia J = 0, K = 0 – przerzutnik jest w stanie pamiętania,
– wejście J = 1, K = 0 – przerzutnik ustawia wyjście Q w stan 1,
– wejście J = 0, K = 1 - przerzutnik ustawia wyjście Q w stan 0,
–
wejście J =1, K = 1- przerzutnik neguje sygnał wyjściowy.
Zmiany na wyjściu przerzutnika JK następują synchronicznie ze zboczem narastającym
sygnału na wejściu CLK, po czym przerzutnik utrzymuje stan wyjściowy aż do chwili
pojawienia się kolejnego zbocza narastającego w sygnale wejściowym. Przypadek, w którym
oba wejścia J i K są w stanie wysokim, jest najczęściej wykorzystywany w praktyce. W tym
stanie przerzutnik neguje sygnał wyjściowy przy każdym zboczu narastającym sygnału
zegarowego. Dzięki temu częstotliwość sygnału wyjściowego jest dwukrotnie niższa niż
częstotliwość sygnału wejściowego. Łącząc szeregowo przerzutniki JK uzyskuje się układy
pozwalające na dzielenie częstotliwości sygnału wejściowego oraz tworzenie układów
zliczających liczbę impulsów wejściowych. Działanie takich liczników zostanie omówione w
dalszej części instrukcji. Na rysunku pokazano przerzutnik JK, dostępny w bibliotece
programu Active-CAD – symbol FJK11 oraz jego tablicę prawdy. Symbol oznacza zbocze
narastające sygnału zegarowego, natomiast (-) oznacza inne stany wejścia zegarowego.
J
0
0
1
1
0
0
1
1
K
0
1
0
1
0
1
0
1
CLK
Q
QN-1
0
1
Q N−1
(-)
QN-1
QN-1
QN-1
QN-1
(-)
(-)
(-)
Przerzutnik JK i jego tablica prawdy
Przykłady zastosowania przerzutników - układy sekwencyjne
W dalszej części zostaną przedstawione przykłady zastosowań przerzutników. W ramach
zajęć laboratoryjnych studenci zrealizują oraz przebadają przykłady zastosowań
przerzutników zadane przez prowadzącego zajęcia.
Przykład: Przejście dla pieszych - sterowanie sygnalizacją świetlną.
Sygnalizacja pokazana jest na poniższym rysunku. Przy sygnalizatorach występują
przyciski jednopołożeniowe (informacja o ich naciśnięciu jest tracona z chwilą oderwania
palca od przycisku). Ponieważ do prawidłowego działania układu potrzebna jest informacja o
stanie przycisków – do jej przechowania można wykorzystać przerzutniki typu RS.
I1
I2
Światła dla pieszych działają w oparciu o zasady:
- światło zielone może zapalić się najszybciej po minucie od poprzedniego zgaśnięcia
- światło zielone jest załączone przez 20 sekund
-
w momencie zapalenia światła zielonego bez zwłoki gaśnie światło czerwone i
odwrotnie
- oba przyciski I1 oraz I2 mają jednakowy priorytet
W celu zapewnienia poprawnej pracy układu sterowania, występują w nim dodatkowe
sygnały: sygnał 1MIN – wejście, na którym pojawia się stan 1 po upływie 1 minuty od chwili
poprzedniego zgaśnięcia światła zielonego oraz sygnał 20S – wejście, na którym pojawia się
stan 1 po upływie 20 s od chwili zapalenia światła zielonego. Ponieważ wypracowanie tego
rodzaju sygnałów wymaga zastosowania układów czasowo-licznikowych, przyjęto dostępność
tych sygnałów bez realizacji układów je wytwarzających. Na rysunku poniżej pokazano
układa realizujący sterowanie sygnalizacją świetlną.
Po naciśnięciu jednego z przycisków (odpowiada to pojawieniu się stanu logicznego 1
na wejściu I1 lub I2), wyjście przerzutnika SR (U3) zostaje ustawione w stan 1. Jeśli na
wejściu 1MIN pojawi się stan 1 (minęła 1 minuta od czasu poprzedniego zgaśnięcia światła
zielonego), sygnał logiczny 1 pojawi się na wyjściu ZIELONE – światło zielone zaświeci się,
a równocześnie zgaśnie światło czerwone ( poprzez inwerter U5). W przypadku pojawienia
się 1 na wejściu 20 - światło zielone pali się przez 20 sekund – przerzutnik zostaje skasowany
– na wyjściu Q pojawia się stan logiczny 0 i światło czerwone gaśnie. W tym przykładzie
przerzutnik RS służy do przechowywania informacji o naciśnięciu przycisków po ich
zwolnieniu. Na zajęciach zostaną przedstawione dalsze przykłady dotyczące zastosowania
przerzutników RS.
Przykład: Zastosowanie przerzutnika typu JK jako dwójki liczącej.
Przerzutnik JK jest najczęściej wykorzystywanym przerzutnikiem w układach
liczących. Budowa układów licznikowych opiera się o jego zachowanie w przypadku, gdy na
obu wejściach J i K występują stany logiczne 1. Wtedy przerzutnik na wyjściu generuje sygnał
o częstotliwości dwa razy mniejszej niż na wejściu CLK. Układ oraz przebiegi: wejściowy i
wyjściowy przedstawiono na rysunku.
Jak widać, w przerzutniku JK zmiany na wyjściu następują tylko przy zboczach
narastających sygnału wejściowego. Dodatkowo sygnał wyjściowy ma częstotliwość dwa razy
mniejszą od wyjściowego. Przypisując wyjściu przerzutnika wagę 20, na wyjściu otrzymujemy
stany 0 bądź 1. Dzięki temu możemy przypisać numer kolejnym impulsom wprowadzanym do
przerzutnika, przy czym w takim układzie możemy „zliczyć” dwa kolejne impulsy wejściowe.
Jednak jeśli połączymy wyjście z jednego przerzutnika z wejściem drugiego, otrzymamy
układ pozwalający na zliczanie większej ilości impulsów wejściowych. Układy takie zostaną
przedstawione na zajęciach numer 3.
ZAJĘCIA NR 3
Układy sekwencyjne.
Układami sekwencyjnymi nazywa się układy cyfrowe, w których występują elementy
pamiętające i poprzez to można za ich pomocą realizować bardziej skomplikowane zadania
niż w przypadku układów kombinacyjnych. Typowymi elementami składowymi układów
sekwencyjnych, stosowanymi w praktyce, są liczniki impulsów wejściowych. Są one
zbudowane z przerzutników JK opisanych w instrukcji do poprzedniego ćwiczenia.
Przypisując wyjściom poszczególnych liczników odpowiednie wagi możemy uzyskać zapis
binarny liczby impulsów zliczonych przez układ licznika. W ramach ćwiczenia studenci
zapoznają się z metodą tworzenia liczników zliczających w górę i w dół z przerzutników JK
oraz metodą tworzenia licznika zliczającego do dowolnej liczby impulsów. Zdobyta wiedza
pozwoli na samodzielne rozwiązanie problemu postawionego przez prowadzącego zajęcia,
dotyczącego układu sekwencyjnego.
Liczniki binarne impulsów wejściowych – realizacja za pomocą przerzutników
1. Licznik liczący w górę
Na rysunku pokazano układ licznika 2 bitowego (rozróżniającego 4 stany), liczącego w
górę. Zbudowany jest on z dwóch przerzutników JK, do których wejść J i K podane zostały
logiczne sygnały jeden oraz inwertera, którego zadaniem jest odwrócić polaryzację sygnału
wyjściowego z przerzutnika U1.
Przyjmując, że sygnał wejściowy CLK jest przebiegiem prostokątnym na wyjściach Q0
i Q1 otrzymujemy następujące przebiegi.
CLK
Q0(20)
Q1(21)
0
1
2
3
0
1
2
3
0
1
2
Przypisując wyjściom Q0 i Q1 odpowiednie wagi: Q0 = 20, Q1 = 21, otrzymujemy zapis
binarny liczby kolejnych impulsów zliczonych przez licznik. Liczba możliwych do zliczenia
impulsów wynosi 4, po czym licznik „przekręca się” i zaczyna zliczanie od 0 (licznik modulo
4). Inwerter (poprzez swoje własności odwracające) jest w tym układzie elementem
odpowiedzialnym za zmianę zapisu binarnego liczby impulsów w kierunku zliczania w górę.
W celu zwiększania rozmiaru licznika należy rozbudować układ dołączając kolejne
przerzutniki JK do wyjść poprzednich poprzez inwertery. Kolejnym wyjściom z
przerzutników należy nadać wagi kolejnych potęg liczby 2. Możliwe jest uzyskanie liczników
zliczających 2n impulsów wejściowych, przy ilości przerzutników równej n.
2. Licznik liczący w dół
W niektórych przypadkach istnieje potrzeba zastosowania liczników, które zliczają
impulsy wejściowe w kierunku malejącym (zliczanie w dół). Na rysunku pokazano układ
takiego licznika binarnego 2 bitowego. Zbudowany jest on, podobnie jak poprzedni, z dwóch
przerzutników JK, jednak w tym przypadku w strukturze nie występuje inwerter.
Przyjmując, że sygnał wejściowy CLK jest przebiegiem prostokątnym, na wyjściach
Q0 i Q1 otrzymujemy następujące przebiegi.
CLK
Q0(20)
Q1(21)
0
3
2
1
0
3
2
1
0
3
2
Ponownie, jeśli przypiszemy wyjściom Q0 i Q1 odpowiednie wagi: Q0 = 20, Q1 = 21, to
otrzymamy zapis binarny liczby kolejnych impulsów zliczonych przez licznik, jednak w tym
przypadku licznik zlicza w dół (od cyfry 3 do cyfry 0). Liczba możliwych do zliczenia
impulsów wynosi 4, po czym licznik „przekręca się”. W celu zwiększania rozmiaru licznika
należy zwiększyć liczbę przerzutników JK dołączając kolejne przerzutniki do wyjść
poprzednich. Kolejnym wyjściom przerzutników należy nadać wagi kolejnych potęg liczby 2.
Możliwe jest uzyskanie liczników zliczających 2n impulsów wejściowych, przy ilości
przerzutników równej n.
Liczniki binarne – gotowe bloki liczników w programie Active Cad
W technice cyfrowej zamiast budować liczniki z przerzutników JK często
wykorzystuje się gotowe liczniki 2, 4 i więcej bitowe. Poniżej przedstawione zostaną wybrane
układy liczników binarnych występujące w oprogramowaniu Active Cad.
1. Liczniki 2-bitowe
Liczniki 2-bitowe – pozwalające zliczyć do 4 impulsów wejściowych przedstawione
zostały na rysunku.
Licznik o symbolu CBU12 jest binarnym licznikiem 2-bitowym, zliczającym w górę,
natomiast licznik CBD12 – licznikiem zliczającym w dół. Jako wejście zegarowe
wykorzystuje się wejście CLK, jako wyjścia Q0 i Q1. Dodatkowe wejście CD oznacza
wejście asynchroniczne kasujące (1 na tym wejściu powoduje skasowanie stanu licznika i
rozpoczęcie procesu zliczania od nowa). Wejście CAI i wyjście CAO są wykorzystywane w
przypadku „przekręcania się” licznika – do informowania o fakcie dojścia przez dany licznik
do końca zakresu. Liczniki powyższe mają identyczne działanie jak liczniki zbudowane z
przerzutników JK przedstawionych powyżej.
2. Liczniki 4-bitowe
Liczniki 4-bitowe – pozwalające zliczyć do 16 impulsów wejściowych, przedstawione
zostały na rysunku.
Licznik o symbolu CBU14 jest binarnym licznikiem 4-bitowym, zliczającym w górę,
natomiast licznik CBD14 – licznikiem zliczającym w dół. Liczniki powyższe mają identyczne
działanie i opis wejść i wyjść jak liczniki 2-bitowe opisane powyżej, a jedyną różnicą jest
możliwość zliczenia większej ilości impulsów wejściowych.
3. Liczniki rewersyjne
Ponieważ w niektórych sytuacjach istnieje potrzeba zliczania impulsów zarówno w
górę jak i w dół – stworzone zostały specjalne liczniki pozwalające na realizację tego typu
zadań. Przykładowy licznik 4-bitowy zliczający w górę i w dół pokazano na rysunku.
Układ ten, o symbolu CBUD4, jest wyposażony w następujące wejścia i wyjścia:
CLK – wejście zegarowe
Q0-Q3 – wyjścia licznika określające binarnie liczbę zliczonych
bitów
➢ DO-D3 – wejścia wpisu równoległego (pozwalające na wpisanie
wartości początkowej do licznika
➢ DN/UP – wejście określające kierunek zliczania – 0- zliczanie w
górę, 1- zliczanie w dół
➢ LD – wejście wpisu równoległego – 1 na tym wejściu wpisuje na
wyjścia Q0 – Q3 stany wejść D0 – D3
➢ CD – wejście kasowania asynchronicznego
➢ CS – wejście kasowania synchronicznego
➢ EN – wejście ENABLE – pozwalające na załączenie struktury
licznika
➢ PS - wejście ustawiania synchronicznego
➢ CAI – wejście informujące układ, że poprzedni licznik zliczył
maksymalną liczbę impulsów
➢ CAO – wyjście informujące kolejne liczniki o zliczeniu
maksymalnej liczby impulsów
Jak widać z wyżej wymienionego opisu wejść i wyjść układ działa w sposób zbliżony
do poprzednio opisanych liczników ale umożliwia dwukierunkowe zliczanie impulsów o
kierunku zliczania określanym przez odpowiedni stan wejścia DN/UP.
➢
➢
Realizacja licznika binarnego zliczającego zadaną liczbę impulsów
Wszystkie opisane powyżej liczniki posiadają wejście CD pozwalające na
natychmiastowe skasowanie zawartości licznika. Wejście to może być wykorzystane do
ograniczenia liczby zliczanych w liczniku impulsów. Przykładowo na rysunku poniżej
przedstawiono układ oparty o licznik 4-bitowy, zliczający w górę CBU14, pozwalający na
realizację licznika modulo 10 (zliczającego 10 impulsów o numerach 0 – 9). Układ taki może
mieć zastosowanie jako licznik dziesiętny.
W celu realizacji układu zliczającego do 10 impulsów wejściowych (cyfry od 0 do 9)
należy w oparciu o sygnał wyjściowy z licznika detektować liczbę 10 (jedynki na wyjściach:
Q1 -waga 21 i Q3 – waga 23). Do wykrywania tego stanu służy w tym przypadku bramka
AND. Sygnał wyjściowy z bramki podawany jest na wejście kasowania asynchronicznego i
powoduje natychmiastowe skasowanie licznika i rozpoczęcie zliczania od liczby 0. Dzięki
temu największą wartością mogącą się pojawić na wyjściu licznika jest cyfra 9.
W ramach zajęć studenci wykorzystają praktycznie informacje przedstawione w
instrukcji do samodzielnego projektowania układów licznikowych.

Podobne dokumenty