Układy asynchroniczne

Slides:



Advertisements
Podobne prezentacje
I część 1.
Advertisements

Teoria układów logicznych
Automaty asynchroniczne
Minimalizacja formuł Boolowskich
Sumatory + Półsumator A B S C A B S (suma) C (przeniesienie)
Kod Hamminga Podstawy Telekomunikacji Autor: Paweł Zajdel
Układy sekwencyjne - pojęcie automatu
Modelem układu sekwencyjnego jest AUTOMAT
DYSKRETYZACJA SYGNAŁU
Rozdział V - Wycena obligacji
WYKŁAD 6 ATOM WODORU W MECHANICE KWANTOWEJ (równanie Schrődingera dla atomu wodoru, separacja zmiennych, stan podstawowy 1s, stany wzbudzone 2s i 2p,
Liczby pierwsze.
Michał Łasiński Paweł Witkowski
PRZERZUTNIKI W aktualnie produkowanych przerzutnikach scalonych TTL wyróżnia się dwa podstawowe rodzaje wejść informacyjnych: - wejścia asynchroniczne,
Budowa komputera Wstęp do informatyki Wykład 6 IBM PC XT (1983)
Od algebry Boole’a do komputera
Programowalne Układy Cyfrowe Ernest Jamro, Paweł Russek C3 p
Minimalizacja funkcji boolowskich
I T P W ZPT 1 Jak smakuje Espresso I T P W ZPT 2.
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Tytuł prezentacji Warszawa, r..
Układy sekwencyjne pojęcia podstawowe.
minimalizacja automatów
Przerzutniki.
Układy kombinacyjne.
Układy kombinacyjne.
Układy sekwencyjne - pojęcie automatu
Synteza układów sekwencyjnych z (wbudowanymi) pamięciami ROM
Wyrażenia algebraiczne
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)
Zadanie treningowe… …do wykładów ULOG cz. 6 i cz. 7 Rozwiązanie: E S 1
Problem kodowania x s 1 A B C D Wariant I A = 00 B = 01 C = 10 D = 11
Cyfrowe układy logiczne
Sekwencyjne bloki funkcjonalne
KALENDARZ 2011r. Autor: Alicja Chałupka klasa III a.
Układy cyfrowe.
Analiza wpływu regulatora na jakość regulacji (1)
Minimalizacja funkcji boolowskich
Minimalizacja funkcji boolowskich
Minimalizacja automatu
Minimalizacja automatu
Dekompozycja Kalmana systemów niesterowalnych i nieobserwowalnych
Kalendarz 2011r. styczeń pn wt śr czw pt sb nd
Problematyka wykładu Podział rejestrów i liczników
Metoda klasyczna ... to metoda tablicowa, graficzna, której podstawowe
Struktury układów logicznych
Obserwowalność i odtwarzalność
  Prof.. dr hab.. Janusz A. Dobrowolski Instytut Systemów Elektronicznych, Politechnika Warszawska.
Stało- i zmiennopozycyjna reprezentacja liczb binarnych
EcoCondens Kompakt BBK 7-22 E.
Prezentacja Multimedialna
Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne
Pudełko Urządzenia Techniki Komputerowej
Podstawy Techniki Cyfrowej
PODSTAWOWE BRAMKI LOGICZNE
Podstawy Techniki Cyfrowej
Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.
Złożone układy kombinacyjne
Bramki logiczne i układy kombinatoryczne
Działania w systemie binarnym
Przerzutniki Przerzutniki.
Przerzutniki bistabilne
Kalendarz 2020.
Budowa komputera Wstęp do informatyki Wykład 6 IBM PC XT (1983)
Elementy geometryczne i relacje
Problem kodowania stanów w układach sekwencyjnych (automatach)
Układy asynchroniczne
Podstawy Automatyki Człowiek- najlepsza inwestycja
Zapis prezentacji:

Układy asynchroniczne Model układu sekwencyjnego (synchronicznego) Model układu asynchronicznego x1 xn y1 ym Q1 Qk q1 qk UK układ kombinacyjny blok pamięci jest realizowany przez opóźnienia BP przerzutniki clock x x W automacie asynchronicznym wszystkie stany są stanami stabilnymi t s Stan stabilny s: (s,x) = s

Skala czasu x1 x2 x1 x2 Skala czasu (zegar) 00,01,11,10,00,01,11 x z1 0 0 1 1 0 0 0 0 0 1 1 1 1 z2 x2 0 1 0 0 0 1 1 1 x Skala czasu (zegar) xa 0 1 0 1 0 x1 x2 x1 x2 00,01,11,10,00,01,11

Najprostszy układ asynchroniczny SR q 00 01 11 10 – 1 Przerzutnik SR Q S Q 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. x1 x2 y 11 01 x1x2 S 00 01 11 10 y 1 2 – 3 4 5 6 00 01 11 1/0 4/1 2/0 00 10 00 01 10 01 00 01 11 6/0 3/0 5/0 11 10 11 10

Redukcja stanów . . . jest prosta a kodowanie . . . A B C x1x2 S 00 01 11 10 y x1x2 S 00 01 11 10 y 1 2 – 3 4 5 6 1,2 A B C 1 2 4 3 4 – 6 4 3 1 3,5,6 1 6 5 3 x1x2 S 00 01 11 10 y A B C – 1 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

Analiza działania układu asynchronicznego (1) 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 1 1 1 >  2 1 <  2 0 1 0 1 0 0 1 1 1 0 1 0

Analiza działania układu asynchronicznego (2) 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 10 01 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 1 <  2 Stan wewn. Stan następny Wyścig niekrytyczny!

Analiza działania układu asynchronicznego (3) 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

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 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.

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 -- - Q1’Q2’ Q1’ Q2’

Wyznaczanie funkcji wzbudzeń x1x2 Q1Q2 00 01 11 10 Y 1 -- - Q1’Q2’ Q1’ Q2’ Dlaczego dodano dodatkową pętlę – składnik ? Y = Q2 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!

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 -

Realizacja układu Y = Q2

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 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 synchronicznych 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.

Jak jest zbudowany przerzutnik synchroniczny? (2) Q 1 ? Przerzutnik typu D Clk

Synchroniczny przerzutnik typu D synchronizowany zboczem dodatnim Przykład Synchroniczny przerzutnik typu D synchronizowany zboczem dodatnim Q 00 01 11 10 – 1

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

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)

Przykład c.d. Q1’ Q2’ (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 Q1’ Q2’

Przykład - realizacja

Zadanie 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 5/0 10 11 00 10 11 00 6/0 10 10

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

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 5 2 3 4 3 – 2 6 1 5,7 5 7 1 4 Automat minimalny x1x2 S 00 01 11 10 y A 1,6 D B 2,4 C – 1 5,7

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 01 Wyścig Krytyczny! 11 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 –

Zadanie c.d. - realizacja y x1 x2 Q1’ Q2’

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 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

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 Q1’ Q2’Q3’ Y = Q1

Kodowanie „n  1” Q1’ x1x2 Q1Q2Q3 00 01 11 10 000 001 011 – 010 1 110 001 011 – 010 1 110 111 101 100

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

Kodowanie „n  1” Q3’ x1x2 Q1Q2Q3 00 01 11 10 000 1 001 011 – 010 110 001 011 – 010 110 111 101 100