Rejestry
Rejestry - układy cyfrowe służące do krótkoterminowego przechowywania niewielkich ilości informacji. Może służyć do zamiany postaci informacji z równoległej na szeregową lub odwrotnie.
we 2 rejestr
wejście cyfrowe równoległe- umożliwia
wprowadzenie wszystkich bitów w jednym
takcie zegarowym
Ilość zacisków wejściowych w wejściu
we 1 równoległym musi być równa ilości bitów
we wprowadzanym słowie
we 0
CLK
rejestr rejestr rejestr
CLK CLK CLK
Wejście szeregowe - umozliwia wprowadzenie informacji do układu bit po bicie. Do wprowadzenia słowa n-bitowego potzrba n taktów zegara
Rodzaje wyjść rejestrowych:
Rejestry z wejściem i wyjściem równoległym - PIPO - nazywane są rejestrami bufowowymi lub zatrzaskowymi
Rejestry z wejściem i wyjściem szeregowym - SISI - zwane są też rejestrami przesuwającymi
Rejestry z wejściem szeregowym i wyjściem równoległym - SIPO
Rejstry z wejściem równoległym i wyjściem szeregowym PISO
Rejestry mają zastosowanie np. w pamięciach RAM (PIPO)
Rejestry SIPO i PISO stosuje się do zamiany postaci informacji z szeregowej (UART)na równoległą (USART)
Bramki trójstanowe
Bramki trójstanowe wykorzystywane są w układach cyfrowych w których występuje konieczność odseparowania elektrycznego dwóch lub więcej punktów w systemie np. odcięcie układu od wspólnej magistrali.
Schemat bramki logicznej:
WE |
ENABLE |
WY |
0 |
1 |
0 |
1 |
1 |
1 |
X |
0 |
Z |
Oprócz stanu 0 i 1 wystepuje jeszcze stan trzeci będący stanem wysokiej impedancji odseperującej wejście od wyjścia. Stan Z wywoływany jest przez klucz (przełącznik) elektroniczny. Bramki trójstanowe wykorzystywane są w magistralach.
Magistrale
W systemach mikroprocesorowych magistrale służą do komunikacji między wieloma układami np.RAM, ROM, mikroprocesor, układy wejścia-wyjścia. Ponieważ łączenie metodą każdy z każdym wymagało by tworzenia nadmiernej ilości połączeń, dlatego wykorzystanie magistrali pozwala na przyłączenie do niej wielu układów. Aby nie było zakłóceń magistrale muszą działać według ściśle określonych zasad:
Przesyłanie danych w odbywa się zawsze tylko pomiędzy jednym urządzeniem bęącym nadajnikiem i jednym urządzeniem będącym odbiornikiem przy pozostałych układach odseperowanych od magistrali. Możliwość odseperowania zapewniają bramki trójstanowe poprzez stan wysokiej impedancji - stan trzeci.
Wzmacniacze buforowe - transcivery
Są to układy pośredniczące w wymianie informacji. Ich zadaniem jest zmniejszenie obciążenia nadajnika przez odbiornik, oraz zwiększenie sygnału wyjściowego.
Układy te mogą przechodzić też w stan wysokiej impedancji (tak jak bramki trójstanowe) dzięki czemu mogą odseparowywać od siebie poszczególne układy.
Układy arytmetyczne
Liczniki
Liczniki - to układy cyfrowe na których wyjściu pojawia się zakodowana liczba impulsów podanych na wejście zliczające licznika, zliczona przez ten licznik. Podstawowymi parametrami liczników jest ich pojemność. Liczniki pełnią rolę pomocniczą w układach mikroprocesorowych .
Sumatory cyfrowe
Dodawanie dwóch bitów:
X1 |
X2 |
wynik |
0 |
0 |
00 |
0 |
1 |
01 |
1 |
0 |
01 |
1 |
1 |
10 |
Wynik działania ostatniego: 1+1 =2 D 2 D = 10B
D - dziesiętne
B - binarne
Druga cyfra wyniku oznacza nam wartość na danej pozycji, natomianst cyfra pierwsza jest tzw. przeniesieniem . Przy dodawaniu dwóch jedynek na pozycji ostatniej jest zero a w miejscu przeniesienia jest jedynka co oznacza że jedynka jest przeniesiona z pozycji ostatniej (najmłodszej) na pozycję przedostatnią (starszą).
Ai |
Bi |
Ci |
Si |
Ci+1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
DZIAŁANIE NA LICZBACH BINARNYCH ZE ZNAKIEM
Operacje dodawania i odejmowania liczb binarnych ze znakiem dokonuje się poprzez wykorzystanie kodu U2.
Przy wykorzystaniu kodu U2 ważne jest aby znać długość słowa.
Przy założeniu że operacja będzie wykonywana na słowach czterobitowych najstarszy czyli czwarty bit będzie określał znak słowa tzn czy liczba jest ujemna czy dodatnia.
Przykład
Liczba 1101 U2 = -1 *2 3+1 *22+0*21+1*20= -3D
Liczba 1101 NKB = 1 *2 3+1 *22+0*21+1*20= 13D
Liczba 0111U2=7D
Liczba 0111NKB=7D
Obliczanie liczby przeciwnej
Obliczanie liczby przeciwnej dokonujemy poprzez wstawienie w miejsce zer - jedynek, a w miejsce jedynek- zer. Do uzyskanej liczby dodajemy następnie jedynkę:
Przykład
0111 - daje to liczbę 7 po zamianie z kodu U2 na NKB
1000
1
1001 - daje to liczbę - 7 po zamianie z kodu U2 na NKB
Liczba przeciwna nie musi być liczbą ujemną.
W kodzie U2 zakres liczb możliwych do wypisania jest zależny od długości słowa np.
dla słowa o długości 5 (n=5) zakres liczb będzie miał przedział od - 16 (10000) U2
do +15 (01111)U2
W kodzie U2 istnieje możliwość przekroczenia zakresu gdy liczba będzie „zbyt ujemna” lub „zbyt dodatnia”. Zakres określa bowiem zarówno liczbę argumentów jak i długość wyniku. Ilustruje to poniższy przykład gdy operujemy na słowach o długości n=5:
+ 10111 U2
11010 U2
1 10001 U2
ostatni bit jest poza zakresem więc go odrzucamy
Dekodery i kodery priorytetu
Dekoder jest układem cyfrowym posiadającym n wejść oraz k wyjść gdzie obowiązuje zależność k<=2n
Przykładowy dekoder 1
1
0 1
1
1
1 0
1
1
Działanie dekodera jest proste 1
Kombinacja znaków na wejściu generuje na wyjściu sygnał wyróżniony przeciwny do pozostałych. Numer wyjścia wyróżnionego jest inny dla każdej kombinacji znaków na wejściu.
1 Koder priorytetu może generować
1 więcej niż jeden sygnał wyróżniony
1 0 Każdemu wyjściu przyporządkowany
0 1 jest odpowiedni stopień ważności zwany
1 1 priorytetem. Zakodowany numer wejścia
0 znajduje się na wyjściu o najwyższym
1 priorytecie
A 0
A1
A2
A0
A1
A2
A0
A1
A2
A2
A1
A2
NAD
ODB