Układy asynchroniczne

Slides:



Advertisements
Podobne prezentacje
Automaty asynchroniczne
Advertisements

Generatory i Przerzutniki
Temat: O Newtonie i prawie powszechnej grawitacji.
Układy sekwencyjne - pojęcie automatu
Modelem układu sekwencyjnego jest AUTOMAT
DYSKRETYZACJA SYGNAŁU
Wykonał : Marcin Sparniuk
Zjawiska szkodliwe w układach cyfrowych.
Liczniki.
Michał Łasiński Paweł Witkowski
Rejestry, liczniki i sumatory.
PRZERZUTNIKI W aktualnie produkowanych przerzutnikach scalonych TTL wyróżnia się dwa podstawowe rodzaje wejść informacyjnych: - wejścia asynchroniczne,
Instrukcje strukturalne
Autor: Dawid Kwiatkowski
Przygotował Przemysław Zieliński
PODSTAWY TEORII UKŁADÓW CYFROWYCH
Wstęp do interpretacji algorytmów
Kody Liniowe Systemy cyfrowe.
Temat 3: Co to znaczy, że komputer ma pamięć? Czy można ją zmierzyć?
Elektronika cyfrowa i mikroprocesory
Układy sekwencyjne pojęcia podstawowe.
minimalizacja automatów
Przerzutniki.
Układy kombinacyjne.
Układy kombinacyjne cz.2
Podstawy układów logicznych
Układy sekwencyjne - pojęcie automatu
LabVIEW Technologie informacyjne – laboratorium Irmina Kwiatkowska
Funkcje logiczne i ich realizacja. Algebra Boole’a
Licznik dwójkowy i dziesiętny Licznik dwójkowy i dziesiętny
Problem kodowania stanów w układach sekwencyjnych (automatach)
Problem kodowania stanów w układach sekwencyjnych (automatach)
Cyfrowe układy logiczne
Sekwencyjne bloki funkcjonalne
Regulacja impulsowa z modulacją szerokości impulsu sterującego
Zasada działania komputera
Układy cyfrowe.
Problematyka wykładu Podział rejestrów i liczników
Wykład 7 Synchronizacja procesów i wątków
Prezentacja Multimedialna
Pudełko Urządzenia Techniki Komputerowej
Podstawy Techniki Cyfrowej
PODSTAWOWE BRAMKI LOGICZNE
Podstawy Techniki Cyfrowej
Regresja wieloraka.
Układy asynchroniczne
Przerzutniki Przerzutniki.
Przerzutniki bistabilne
I T P W ZPT 1 Kodowanie stanów to przypisanie kolejnym stanom automatu odpowiednich kodów binarnych. b =  log 2 |S|  Problem kodowania w automatach Minimalna.
Logiczne układy bistabilne – przerzutniki.
Interpretowane sieci Petriego
I T P W ZPT Konwerter BIN2BCD 1 LK „8” DEC LK = 0 LOAD1 R3R2R1  K S3 S2S1 A B „5” K  5 MUX 1 0 A R4 LOAD2 Y = LD B LB „3” US Układ wykonawczy Układ sterujący.
Wstęp do interpretacji algorytmów
Układy logiczne – układy cyfrowe
ZPT Evatronix Kontroler Ethernet MAC (Media Access Control) 10/100Mbit spełniający rolę rolę podstawowej arterii wymiany danych pomiędzy urządzeniami sterującymi.
Sumator i półsumator.
Logistyka – Ćwiczenia nr 6
Etapy procesu sterowania rozmytego
Dr Galina Cariowa. Legenda  Optymalizacja układów dwupoziomowych.  Kryterium kosztu realizacji.  Tablica (mapa) Karnaugh’a.  Metoda Quine’a – Mc Cluske’a.
Elementy cyfrowe i układy logiczne
Pojęcia podstawowe Algebra Boole’a … Tadeusz Łuba ZCB 1.
Minimalizacja automatu
Układy logiczne – układy cyfrowe
Układy logiczne kombinacyjne sekwencyjne
Metoda klasyczna (wg książki Sasao)
Problem kodowania stanów w układach sekwencyjnych (automatach)
Wstęp do Informatyki - Wykład 6
Projektowanie systemów cyfrowych z wykorzystaniem języka VHDL
Podstawy Automatyki Człowiek- najlepsza inwestycja
ALGORYTMY I STRUKTURY DANYCH
Zapis prezentacji:

Układy asynchroniczne Model układu asynchronicznego x1 xn y1 ym Q1 Qk q1 qk UK układ kombinacyjny BP blok pamięci realizuje opóźnienia x x W automacie asynchronicznym wszystkie stany są stanami stabilnymi t s Tadeusz Łuba ZCB Stan stabilny s: (s,x) = s

Najprostszy układ asynchroniczny SR q 00 01 11 10 – 1 Przerzutnik SR Q S Q Tadeusz Łuba ZCB R

Przykład Zaprojektować układ asynchroniczny o dwóch wejściach binarnych x1, x2 i jednym wyjściu y, który ma sygnalizować jedynką pojawienie się na wejściu sekwencji wektorów wejściowych ..., 00, 01, 11. Należy założyć, że jednoczesna zmiana dwóch sygnałów wejściowych jest niemożliwa. x1x2 S 00 01 11 10 y 1 2 – 3 4 5 6 11 00 01 01 11 1/0 4/1 2/0 00 10 00 01 10 01 00 11 6/0 01 3/0 5/0 Tadeusz Łuba ZCB 11 10 11 10

Redukcja stanów . . . jest prosta a kodowanie . . . x1x2 S 00 01 11 10 y x1x2 S 00 01 11 10 y 1 2 – 3 4 5 6 A 1,2 1 2 4 3 B 4 – 6 4 3 1 C 3,5,6 1 6 5 3 x1x2 S 00 01 11 10 y A B C – 1 Tadeusz Łuba ZCB a kodowanie . . .

Graf stanów automatu minimalnego Kodowanie stanów . . . jest trudne x1x2 S 00 01 11 10 y A B C – 1 Kod stanu 11 00 00 11 01 A/0 B/1 01 10 00 10 01 C/0 x1x2 S 00 01 11 10 y A B – 1 (-) C 10 10 01 11 Graf stanów automatu minimalnego Tadeusz Łuba ZCB Y = Q2

Analiza działania układu asynchronicznego (1) x1 x2 x1x2 S 00 01 11 10 y A B – 1 (-) C Układ kombinacyjny (bez opóźnień) y Q1 Q2 q1 q2 10 1 2 Opóźnienia Stan wejść 1 >  2 0 1 0 0 1 0  1 <  2 0 1 1 1 1 0 01 ––;00 00 Wyścig krytyczny! 1 >  2 11 ––;01 01 01 ––;10 01 01 ––;10 11 01 ––;10 10 Tadeusz Łuba ZCB 1 <  2 Stan wewn. Stan następny Wyścig niekrytyczny!

Analiza działania układu asynchronicznego (2) x1 x2 y Q1 Q2 q1 q2 Układ kombinacyjny (bez opóźnień) 1 2 Opóźnienia x1x2 S 00 01 11 10 y A B – 1 (-) C 10 10 Stan wejść 10 ––;10 00 10 ––;10 1 >  2 11 ––;01 01 10 ––;10 01 10 Wyścig niekrytyczny! 10 ––;10 11 10 ––;10 1 <  2 Stan wewn. Stan następny Tadeusz Łuba ZCB

Kodowanie stanów Aby uniknąć wyścigów krytycznych należy kodowanie przeprowadzić tak, aby kody stanów, pomiędzy którymi jest przejście, różniły się tylko na jednej pozycji. Np.: 000 001; 011 010; 111  101 itp.. Takie kodowanie zapewnia „rozpięcie” grafu stanów automatu na kwadracie lub sześcianie kodowym. 101 100 00 01 000 001 Tadeusz Łuba ZCB 10 11 010 011 110 111

Kodowanie stanów 01 00 10 A/0 C/0 11 Kod stanu B/1 00 01 11 10 A B C 10 10 01 (-) (-) 01 11 x1x2 S 00 01 11 10 y A B – 1 (-) C Wyścig niekrytyczny można wykorzystać do właściwego kodowania stanów w układach asynchronicznych. Tadeusz Łuba ZCB

Tablice przejść Q1’Q2’ Q1’ Q2’ x1x2 S 00 01 11 10 y A B – 1 (-) C x1x2 B – 1 (-) C x1x2 Q1Q2 00 01 11 10 1 -- - Tadeusz Łuba ZCB Q1’Q2’ Q1’ Q2’

Dlaczego dodano dodatkową pętlę – składnik ? Funkcje wzbudzeń x1x2 Q1Q2 00 01 11 10 1 -- - Y = Q2 Q1’Q2’ Q1’ Q2’ Dlaczego dodano dodatkową pętlę – składnik ? Tadeusz Łuba ZCB Zjawisko hazardu

Jest to hazard statyczny - szkodliwy w układach asynchronicznych! Zjawisko hazardu 1 2 Przy Q1 = 1, x1 = 1, a przy zmianie x2: 1  0 na wyjściu Z powinna być stała 1 Na skutek opóźnienia sygnału w sygnale Z pojawia się krótki impuls o wartości 0. Jest to hazard statyczny - szkodliwy w układach asynchronicznych! Tadeusz Łuba ZCB

Zjawisko hazardu W układach asynchronicznych funkcje wzbudzeń muszą być realizowane w taki sposób, aby nie występował hazard statyczny. Wyrażenia boolowskie należy uzupełnić o składnik (nadmiarowy), odpowiadający pętli na tablicy Karnaugha, w taki sposób, aby każde dwie sąsiednie jedynki były objęte wspólną pętlą. x1x2 Q1Q2 00 01 11 10 1 - Tadeusz Łuba ZCB

Realizacja układu Y = Q2 Tadeusz Łuba ZCB

Jak jest zbudowany przerzutnik synchroniczny? (1) Q Clk R Jest to synchronizacja „szerokością impulsu” – latch (zatrzask) Strefa oddziaływania CLK Stan Q przerzutnika zmienia się dwukrotnie w czasie trwania okresu przebiegu zegarowego! S R Tadeusz Łuba ZCB Q

Problem synchronizacji Przerzutniki tego typu mają prostą budowę, ale mogą służyć tylko do przechowywania (zatrzaskiwania) informacji. Nie mogą służyć do budowy układów sekwencyjnych. Prawidłowa synchronizacja powinna działać tak, aby w czasie trwania okresu przebiegu zegarowego sygnał wejściowy przerzutnika był odczytywany jeden raz, a stan przerzutnika zmieniał się także jeden raz – niezależnie od zmiany sygnałów wejściowych. Tadeusz Łuba ZCB

Jak jest zbudowany przerzutnik synchroniczny? (2) Q 1 ? Przerzutnik typu D Clk Tadeusz Łuba ZCB

Przykład – synteza przerzutnika D Synchroniczny przerzutnik typu D synchronizowany zboczem dodatnim Q 00 01 11 10 – 1 Tadeusz Łuba ZCB

Przykład c.d. 11 01 Automat sterujący wytwarza na wyjściach Y1 lub Y2 sygnał 0 (włączający lub wyłączający przerzutnik ) tylko wówczas, gdy w sygnale Clk pojawi się zbocze synchronizujące, to jest zmiana Clk 0  1. D clk 00 10 11 2/01 00 10 1/11 Jeśli w tym momencie na wejściu D jest 1, to 0 pojawi się na wyjściu Y1 ( ) – przerzutnik zostanie włączony. 01 11 01 Jeśli na wejściu D jest 0, to 0 pojawi się na wyjściu Y2 ( ) – przerzutnik zostanie wyłączony 00 10 3/10 Tadeusz Łuba ZCB

Zakodowana tablica p-w Przykład c.d. Tablica przejść-wyjść D,clk S 00 01 11 10 Y1Y2 1 3 2 (clk  c) D,c Q1Q2 00 01 11 10 Y1Y2 -- (2) 01 (1) 11 (3) 10 Zakodowana tablica p-w (kody stanów takie same, jak wyjścia Y1, Y2) Tadeusz Łuba ZCB

Przykład c.d. Q1’ Q1’ (clk  c) Q1’ Q2’ D,c Q1Q2 00 01 11 10 Y1Y2 -- (2) 01 (1) 11 (3) 10 Q1’ Q2’ D,c Q1Q2 00 01 11 10 - (2) 01 1 (1) 11 (3) 10 D,c Q1Q2 00 01 11 10 - (2) 01 1 (1) 11 (3) 10 Tadeusz Łuba ZCB Q1’ Q1’

Przykład - realizacja Tadeusz Łuba ZCB

Kodowanie metodą „n1” Liczba stanów automatu wynosi n. Długość wektora kodowego ustalamy na n  1. Jeden stan kodujemy wektorem złożonym z samych zer. Pozostałe stany kodujemy wektorami z jedną jedynką. Między każde dwa stany S, T kodowane wektorami z jedną jedynką wstawiamy stan niestabilny R o wektorze kodowym R = S  T A: 000 C: 100, B: 010, D: 001 110 x1x2 S 00 01 11 10 y A D B C – 1 10 B/0 01 D/0 00 C/1 11 A/0 000 100 110 Tadeusz Łuba ZCB 011 001 010

Modyfikacja tablicy p-w Kodowanie „n  1” 10 B/0 01 D/0 00 C/1 11 A/0 000 100 001 010 011 110 Modyfikacja tablicy p-w x1x2 Q1Q2Q3 00 01 11 10 y A 000 D B 010 C 100 – 1 001 110 011 E F E E F F E B C F D B Tadeusz Łuba ZCB

Zakodowana tablica p-w Kodowanie „n  1” Zakodowana tablica p-w x1x2 Q1Q2Q3 00 01 11 10 y A 000 001 010 D 011 F – B 110 E 100 (-) 111 101 C 1 Tadeusz Łuba ZCB Q1’ Q2’Q3’ Y = Q1

Kodowanie „n  1” x1x2 Q1Q2Q3 00 01 11 10 000 001 011 – 010 1 110 111 101 100 Tadeusz Łuba ZCB

Kodowanie „n  1” x1x2 Q1Q2Q3 00 01 11 10 000 1 001 011 – 010 110 111 101 100 Pętla antyhazardowa Tadeusz Łuba ZCB

Kodowanie „n  1” x1x2 Q1Q2Q3 00 01 11 10 000 1 001 011 – 010 110 111 101 100 Tadeusz Łuba ZCB

Zadanie dodatkowe Zaprojektować asynchroniczny układ o wejściach x1 i x2 wyjściu y pracujący w następujący sposób: y=1 gdy x1=x2=1 i przedostatnia zmiana sygnału wejściowego była zmianą na wejściu x1. W pozostałych przypadkach y=0. Zmiana przedostatnia 11 01 11/1 00 10 Zmiana ostatnia 01 7/0 11 00 00 01 01 11 01 11 10 00 01 11 1/0 3/1 2/0 4/0 11 5/0 10 11 00 10 Tadeusz Łuba ZCB 11 00 6/0 10 10

Zadanie c.d. 1/0 2/0 6/0 3/1 00 11 10 01 4/0 5/0 7/0 x1x2 S 00 01 11 10 y 1 – 2 6 5 3 4 7 Tadeusz Łuba ZCB

Zadanie c.d. Minimalizacja Automat minimalny x1x2 S 00 01 11 10 y 1 – 6 5 3 4 7 x1x2 S 00 01 11 10 y 1,6 5 2 1 6 2,4 3 4 – 5,7 7 Automat minimalny x1x2 S 00 01 11 10 y A 1,6 D B 2,4 C – 1 5,7 Tadeusz Łuba ZCB

Zadanie c.d. Kodowanie x1x2 S 00 01 11 10 y A D B C – 1 x1x2 S 00 01 C – 1 x1x2 S 00 01 11 10 y A 00 C 01 – 1 B 11 D 10 01 01 11 00 01 10 11 A/0 C/1 10 01 11 00 01 11 Tadeusz Łuba ZCB 10 01 01 D/0 B/0 10 00 00 10 11

Zadanie c.d. Synteza kombinacyjna Q1’ Q2’ x1x2 Q1Q2 00 01 11 10 y – 1 – 1 Synteza kombinacyjna Q1’ Q2’ x1x2 Q1Q2 00 01 11 10 1 – x1x2 Q1Q2 00 01 11 10 1 – Tadeusz Łuba ZCB

Zadanie c.d. - realizacja y x1 x2 Q1’ Q2’ Tadeusz Łuba ZCB