Temat 3. Synteza układów sekwencyjnych z bramek logicznych

Podobne dokumenty
Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Układy asynchroniczne

Podstawy Techniki Cyfrowej Teoria automatów

zmiana stanu pamięci następuje bezpośrednio (w dowolnej chwili czasu) pod wpływem zmiany stanu wejść,

Układy asynchroniczne

Asynchroniczne statyczne układy sekwencyjne

ANALIZA I SYNTEZA UKŁADÓW KOMBINACYJNYCH

Podstawy techniki cyfrowej. Układy asynchroniczne Opracował: R.Walkowiak Styczeń 2014

Laboratorium elektroniki. Ćwiczenie E54. Realizacja asynchronicznych układów sekwencyjnych z bramek NOR. Wersja 1.0 (11 stycznia 2016)

1. SYNTEZA UKŁADÓW SEKWENCYJNYCH

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Asynchroniczne statyczne układy sekwencyjne

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 212

Podstawy Automatyki. Wykład 13 - Wprowadzenie do układów sekwencyjnych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Spis treści. Przedmowa Wykaz oznaczeń Wstęp Układy kombinacyjne... 18

b) bc a Rys. 1. Tablice Karnaugha dla funkcji o: a) n=2, b) n=3 i c) n=4 zmiennych.

Projekt prostego układu sekwencyjnego Ćwiczenia Audytoryjne Podstawy Automatyki i Automatyzacji

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne

Sławomir Kulesza. Projektowanie automatów synchronicznych

Synteza strukturalna automatów Moore'a i Mealy

Wstęp do Techniki Cyfrowej... Teoria automatów i układy sekwencyjne

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

Podstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów. Rafał Walkowiak Wersja /2015

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Architektura komputerów Wykład 2

Wstęp do Techniki Cyfrowej... Układy kombinacyjne

Wykład nr 1 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

Errata do książki Multisim. Technika cyfrowa w przykładach.

dr inż. Małgorzata Langer Architektura komputerów

Automatyzacja i robotyzacja procesów produkcyjnych

Część 2. Funkcje logiczne układy kombinacyjne

Sławomir Kulesza. Projektowanie automatów asynchronicznych

Podstawy Automatyki. Człowiek- najlepsza inwestycja. Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Podstawy Automatyki. Wykład 15 - Projektowanie układów asynchronicznych o programach liniowych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

Wstęp do Techniki Cyfrowej... Teoria automatów

Laboratorium elektroniki. Ćwiczenie E55. Synchroniczne układy sekwencyjne. Wersja 1.0 (24 marca 2016)

SWB - Projektowanie synchronicznych układów sekwencyjnych - wykład 5 asz 1. Układy kombinacyjne i sekwencyjne - przypomnienie

Tranzystor JFET i MOSFET zas. działania

Technika Cyfrowa 1 wykład 12: sekwencyjne układy przełączające

Układy kombinacyjne i sekwencyjne. Podczas ćwiczenia poruszane będą następujące zagadnienia:

Synteza układów kombinacyjnych

Dr inż. Jan Chudzikiewicz Pokój 117/65 Tel Materiały:

dwójkę liczącą Licznikiem Podział liczników:

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

Automat skończony FSM Finite State Machine

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia.

Minimalizacja form boolowskich

TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH

Technika cyfrowa Synteza układów kombinacyjnych (I)

LICZNIKI PODZIAŁ I PARAMETRY

1.Wprowadzenie do projektowania układów sekwencyjnych synchronicznych

Podstawowe układy cyfrowe

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

Materiały pomocnicze do ćwiczeń z podstaw techniki cyfrowej (przygotował R.Walkowiak) Dla studiów niestacjonarnych rok AK 2017/18

INSTYTUT INFORMATYKI POLITECHNIKI BIAŁOSTOCKIEJ

Układy cyfrowe. Najczęściej układy cyfrowe służą do przetwarzania sygnałów o dwóch poziomach napięć:

Automatyka. Treść wykładów: Multiplekser. Układ kombinacyjny. Demultiplekser. Koder

IZ1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki niestacjonarne

Technika cyfrowa Synteza układów kombinacyjnych

Cyfrowe Elementy Automatyki. Bramki logiczne, przerzutniki, liczniki, sterowanie wyświetlaczem

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

Wykład nr 3 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne

Układy kombinacyjne Y X 4 X 5. Rys. 1 Kombinacyjna funkcja logiczna.

Statyczne badanie przerzutników - ćwiczenie 3

Ćwiczenie nr 1 Temat: Ćwiczenie wprowadzające w problematykę laboratorium.

Cyfrowe układy scalone c.d. funkcje

Podstawy Automatyki. Człowiek- najlepsza inwestycja. Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Wstęp do Techniki Cyfrowej... Algebra Boole a

Automat Moore a. Teoria układów logicznych

Laboratorium podstaw elektroniki

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

Układy logiczne. Wstęp doinformatyki. Funkcje boolowskie (1854) Funkcje boolowskie. Operacje logiczne. Funkcja boolowska (przykład)

INFORMATOR LABORATORYJNY. TECHNIKA CYFROWA (studia niestacjonarne)

Część 3. Układy sekwencyjne. Układy sekwencyjne i układy iteracyjne - grafy stanów TCiM Wydział EAIiIB Katedra EiASPE 1

Laboratorium przedmiotu Technika Cyfrowa

Zadania do wykładu 1, Zapisz liczby binarne w kodzie dziesiętnym: ( ) 2 =( ) 10, ( ) 2 =( ) 10, (101001, 10110) 2 =( ) 10

Rok akademicki: 2030/2031 Kod: EEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Synteza strukturalna automatu Moore'a i Mealy

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

Logiczne układy bistabilne przerzutniki.

Metoda Karnaugh. B A BC A

Proste układy sekwencyjne

WFiIS CEL ĆWICZENIA WSTĘP TEORETYCZNY

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

Podstawy Automatyki. Wykład 15 - Projektowanie układów asynchronicznych o programach liniowych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

Układy sekwencyjne. 1. Czas trwania: 6h

Podstawy Automatyki. Człowiek- najlepsza inwestycja. Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Laboratorium z podstaw automatyki

Wstęp do Techniki Cyfrowej i Mikroelektroniki

PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające

Podstawy Automatyki. Wykład 8 - Wprowadzenie do automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

ćwiczenie 202 Temat: Układy kombinacyjne 1. Cel ćwiczenia

2019/09/16 07:46 1/2 Laboratorium AITUC

Temat 7. Dekodery, enkodery

Transkrypt:

Temat 3. Synteza układów sekwencyjnych z bramek logicznych Spis treści do tematu 3 3.1. Wprowadzenie 3.2. Projektowanie asynchronicznych układów sekwencyjnych metodą tablic przejść/wyjść (Huffmana). 3.3. Zjawiska wyścigów i hazardu w asynchronicznych układach sekwencyjnych. 3.4. Literatura fizyka.p.lodz.pl/pl/dla-studentow/tc/ T3-1

3.1. Wprowadzenie Opis układów cyfrowych (automatów) Dowolny układ cyfrowy można przedstawićw postaci bloku, który posiada wejścia x 1, x 2,, x n oraz wyjścia y 1, y 2,, y m. Wektor stanów wejściowych X = x, x, K, x ) (3.1) ( 1 2 n Wektor stanów wyjściowych Y = y, y, K, y ) (3.2) ( 1 2 m W układach kombinacyjnych(ang. combinational logic circuits) t Y = f( X t ) (brak pamięci poprzednich stanów) (3.3) W układach sekwencyjnych(ang. sequential logic circuits) Y t = t f( X, X t 1, X t 2, K) gdzie X t i Y t oznaczająstany wejśći wyjśćw dowolnej chwili czasu t, przez t 1, t 2, oznaczono wcześniejsze cykle pracy układu. (3.4) T3-2

Stan pamięci układu sekwencyjnego opisuje się wektorem stanu wewnętrznego Q złożonego ze wszystkich binarnych linii sprzężenia zwrotnego Q= ( q1, q2, K, qk). Pamięćukładu sekwencyjnego realizuje sięw postaci układu kombinacyjnego objętego sprzężeniem zwrotnym. Funkcja przejśćδ, realizowana przez ten układ kombinacyjny, określa kolejny stan wewnętrzny Q t+1 na podstawie poprzedzającego stanu wewnętrznego Q t i wejściowego X t Q t (3.5) + 1 t = δ( Q, X t ). (3.6) Nowy stan wewnętrzny automatu nazywamy stanem stabilnymjeżeli Q t+1 = Q t. Drugi układ kombinacyjny realizuje funkcję wyjśćλ. Wyróżnia sięautomaty o strukturze Moore a oraz Mealy ego różniące się argumentami tej funkcji t t 2 ( t t ), Y = λ X, Q ). 2 ( t Y = λ Q (3.7) Rys. 3.1. Struktura asynchronicznych układów sekwencyjnych: (a) automat Moore a; (b) automat Mealy ego. T3-3

Asynchroniczne układy sekwencyjnenie posiadajążadnego wejścia zegarowego (synchronizującego). Stan wewnętrzny układu Qzmienia sięnatychmiast po zmianie sygnałów wejściowych X. Synchroniczne układy sekwencyjnereagująna zmianęstanu wejściowego Xtylko w dyskretnych chwilach czasowych, określonych przez zewnętrzny sygnałzegarowy C. Każdy kolejny stan wewnętrzny jest wytwarzany synchronicznie z impulsami zegarowymi. Rys. 3.2. Struktura synchronicznych układów sekwencyjnych. Blok wejściowy δjest złożony z układu kombinacyjnego γ oraz pamięci µsterowanej sygnałem zegarowym. (a) automat Moore a; (b) automat Mealy ego. Układy asynchroniczne są stosowane głównie w prostych układach automatyki przemysłowej i instalacjach alarmowych. Niejednakowe opóźnienia sygnałów w różnych elementach układu (wyścigi) powodują ryzyko nieprzewidzianych reakcji (hazard). W skomplikowanych układach analiza wyścigów i hazardu jest bardzo trudna. Problemy te nie występują w układach synchronicznych. T3-4

3.1. Projektowanie asynchronicznych układów sekwencyjnych metodą tablic przejść/wyjść (Huffmana) Typowe etapy projektowania: 1. Analiza treści zadania i dodatkowe założenia projektowe. 2. Sporządzenie listy stanów wewnętrznychautomatu. 3. Przedstawienie przejść między stanami automatu w formie grafu przejść. 4. Zapisanie pierwotnej tablicy przejść między stanami automatu Moore a. 5. Wyszukanie i połączenie stanów równoważnych. 6. Wyszukanie i połączenie stanów zgodnych. Decyzja o połączeniu takich stanów oznacza przejście od automatu o strukturze Moore a do automatu Mealy ego. 7. Zapisanie zredukowanej tablicy przejść oraz grafu dla stanów zredukowanych. 8. Kodowanie stanów wewnętrznychpoprzez binarne stany wewnętrzneq 1, q 2, q 3,... 9. Zapisanie zakodowanych tablic przejść dla każdego z binarnych stanów wewnętrznych q 1, q 2, q 3,... 10. Synteza funkcji przejść δ kolejno dla poszczególnych binarnych stanów wewnętrznych q 1, q 2, q 3,... Rozważeniei eliminacja ryzyka wynikającego z hazardu w układzie kombinacyjnym realizującym funkcję przejść. 11. Synteza funkcji wyjść λ. W zależności od przeznaczenia automatu trzeba podjąć decyzję o dopuszczeniu albo eliminacji hazardu w układzie wyjściowym. 12. Sporządzenie schematu układu. T3-5

Opis słowny układu sekwencyjnego W kopalni pracują dwie pompy wydobywające wodę z szybu. Poziom wody sygnalizowany jest przez dwa czujniki Ai B. Czujnik znajdujący siępowyżej poziomu wody wysyła sygnał o wartości 0, natomiast sygnał 1 oznacza zanurzenie w wodzie. Zaprojektować układ, który steruje pompami y i z według następujących reguł: -jeżeli poziom wody poniżej czujnika A(A= B= 0) żadna pompa nie pracuje, -jeżeli poziom wody pomiędzy czujnikami Ai B(A= 1, B= 0) pracuje ta pompa, która ostatnio nie pracowała, -jeżeli poziom wody powyżej czujnika B(A= B= 1) pracująobie pompy. Rys. 3.3. Schemat szybu kopalni z pompami i układem sterowania. T3-6

Krok 1. Dodatkowe założenia projektowe Opis słowny układu nie zawsze zapewnia projektantowi pełne i jednoznaczne dane. Przyjmiemy założenia: nie rozważamy stanów awaryjnych czujników, nie określamy, która pompa powinna pracować jako pierwsza po załączeniu układu, zmiany stanów czujników wody A i B zachodzą wolno w porównaniu do szybkości pracy układu sterowania nie rozważamy zmian jednoczesnych na wejściach układu. likwidacja błędnych krótkotrwałych stanów przejściowych na wyjściach układu sterowania nie jest konieczna, gdyż sterowane pompy są układami o dużej bezwładności. Rys. 3.4. Przykłady odbiorników niewrażliwych oraz wrażliwych na błędne stany przejściowe. T3-7

Krok 2. Sporządzenie listy stanów wewnętrznych automatu Jeżeli stanów wewnętrznych nie można wskazaćbezpośrednio na podstawie opisu słownego, to zwykle przyjmujemy początkowo, że każda dozwolona kombinacja stanów wejściowych i wyjściowych odpowiada odrębnemu stanowi wewnętrznemu. Rys. 3.5. Możliwe kombinacje stanów wejściowych i wyjściowych. Ponadto trzeba odróżnić stany charakteryzujące się takimi samymi kombinacjami wejść i wyjść ale różne pod względem koniecznej pamięci o wcześniejszych zdarzeniach. Przyjęta lista pierwotnych stanów wewnętrznych: 1) żadna pompa nie pracuje, poprzednio pracowała y, 2) żadna pompa nie pracuje, poprzednio pracowała z, 3) pracuje pompa y, 4) pracuje pompa z, 5) obie pompy pracują, poprzednio nie pracowała pompa z, 6) obie pompy pracują, poprzednio nie pracowała pompa y. T3-8

Krok 3. Przedstawienie przejść między stanami automatu w formie grafu przejść numery stanów warunki przejść Rys. 3.6. Graf przejść. Przyjęta lista pierwotnych stanów wewnętrznych: 1) żadna pompa nie pracuje, poprzednio pracowała y, 2) żadna pompa nie pracuje, poprzednio pracowała z, 3) pracuje pompa y, 4) pracuje pompa z, 5) obie pompy pracują, poprzednio nie pracowała pompa z, 6) obie pompy pracują, poprzednio nie pracowała pompa y. T3-9

Krok 4. Zapisanie pierwotnej tablicy przejść. 4.a). Zapisanie stanów stabilnych i niemożliwych 4.b). Dodanie stanów niestabilnych na przejściach między stanami stabilnymi. stany wejść uporządkowane wg kodu Graya przykład przejścia przez stan niestabilny numery stanów wewnętrznych stany wyjść (opcjonalnie) Rys. 3.7. Pierwotna tablica przejść. Przyjęta lista pierwotnych stanów wewnętrznych: 1) żadna pompa nie pracuje, poprzednio pracowała y, 2) żadna pompa nie pracuje, poprzednio pracowała z, 3) pracuje pompa y, 4) pracuje pompa z, 5) obie pompy pracują, poprzednio nie pracowała pompa z, 6) obie pompy pracują, poprzednio nie pracowała pompa y. T3-10

Krok 5.Wyszukanie i połączenie stanów równoważnych. Stany 1 i 2 mogąbyćrównoważne pod warunkiem, że stany 3 i 4 są także równoważne. Stany 3 i 4 nie mogązostaćuznane za równoważne bezwarunkowo ani warunkowo, bo odpowiadają innym stanom wyjść. Rys. 3.8. Poszukiwanie stanów równoważnych w tablicy przejść. Wniosek: w rozważanej tabeli nie ma stanów równoważnych.. Dwa stany sąstanami równoważnymi jeżeli w odpowiadających im wierszach pierwotnej tablicy przejść: stany stabilne znajdują się w jednakowych kolumnach, stany wyjść w obu wierszach są jednakowe, przy dowolnej zmianie stanu wejść układ przechodzi z rozpatrywanych stanów do stanów jednakowych lub równoważnych, w miejsce ( ) możemy wpisać cokolwiek jeżeli umożliwi to uznanie stanów za równoważne. T3-11

Krok 6.Wyszukanie i połączenie stanów zgodnych. stany 1 i 5 sązgodne stany 2 i 6 sązgodne Uwaga:decyzja o połączeniu stanów zgodnych odpowiadających różnym stanom wyjśćodpowiada przejściu od automatu o strukturze Moore ado automatu Mealy ego. Rys. 3.9. Poszukiwanie stanów zgodnych w tablicy przejść. Dwa stany sąstanami zgodnymi jeżeli w odpowiadających im wierszach pierwotnej tablicy przejść: stany z jednakowej kolumny maja takie same numery, w miejsce ( ) możemy wpisać cokolwiek jeżeli umożliwi to uznanie stanów za zgodne. Rys. 3.10. Przykład łączenia stanu stabilnego i niestabilnego w jednej kolumnie. Po połączeniu zapisuje się stan stabilny. T3-12

Krok 7. Zapisanie zredukowanej tablicy przejść oraz grafu dla stanów zredukowanych. 1,5 1' 3 2' 2,6 3' 4 4' Kopia pierwotnej tablica przejść. Rys. 3.11. Zredukowana tablica przejść: (a) notacja ze stanami pierwotnymi, (b) notacja ze stanami zredukowanymi. Kopia grafu przejść dla stanów pierwotnych Rys. 3.12. Graf dla stanów zredukowanych. T3-13

Krok 8. Kodowanie stanów wewnętrznych poprzez binarne stany wewnętrzne q 1, q 2, q 3. Kodowanie stanów to przyporządkowanie symbolicznym oznaczeniom stanów (liczby dziesiętne, litery) wartości binarnych stanów linii sprzężenia zwrotnego q 1, q 2, q 3,. Dla liczby stanów zredukowanych 2 n wystarczy nsygnałów binarnych, o ile nie zachodzi konieczność zwiększenia liczby sygnałów dla uniknięcia wyścigu krytycznego. Tabela 3.1. Optymalne kodowanie stanów automatu. stany przed zakodowaniem 1' 2' 3' 4' stany po zakodowaniu Q 2 Q 1 0 0 0 1 1 1 1 0 Rys. 3.13. Graf przejść z uwzględnieniem kodowania stanów. W rozważanym przykładzie wszystkie przejścia mogąodbywaćsięmiędzy stanami sąsiednimi logicznie, tzn. takimi które różnią się tylko jednym bitem. Przypadki bardziej złożonych przejść zostaną omówione dalej w innym przykładzie. T3-14

Krok 9. Zapisanie zakodowanych tablic przejść dla każdego z binarnych stanów wewnętrznych q 1, q 2, q 3,... Kopia zredukowanej tablicy przejść. stany przed stany po zakodowaniu zakodowaniem Q 2 Q 1 1' 0 0 2' 0 1 3' 1 1 4' 1 0 Kopia tablicy kodowania stanów. Rys. 3.14. Zakodowana tablica przejść. Użyte oznaczenia: q k q k t Q k, q k t+1 (3.8) T3-15

Krok 10. Synteza funkcji przejść δ kolejno dla poszczególnych binarnych stanów wewnętrznych q 1, q 2, q 3,.... Kopia zakodowanej tablicy przejść. Rys. 3.15. Zakodowana tablica przejść po rozdzieleniu na tablice Karnaugha dla poszczególnych wewnętrznych sygnałów binarnych. Pętle czerwone wprowadzono w celu eliminacji ryzyka związanego z różnicami w czasach propagacji sygnałów po różnych drogach w wejściowym bloku kombinacyjnym. Bez dodatkowych pętli występują hazardoweprzekłamania stanów wewnętrznych, które mogąsięutrwalićw kolejnym cyklu. W układzie wolnym od ryzyka wszystkie możliwe przejścia między 1 powinny odbywać się w jednej pętli. Rys. 3.16. Graf przejść naniesiony na tablicę przejść. Notacja z numerami stanów pierwotnych. T3-16

c.d. syntezy funkcji przejść δ- przypadek łączenia zer na tablicach Karnaugha. Kopia zakodowanej tablicy przejść. Rys. 3.17. Zakodowana tablica przejść po rozdzieleniu na tablice Karnaugha dla poszczególnych wewnętrznych sygnałów binarnych. W przypadku łączenia zer na tablicach Karnaughawszystkie możliwe przejścia między 0 powinny odbywaćsięw jednej pętli. W przeciwny razie układ będzie zagrożony ryzykiem niejednoznacznego działania. Do dalszych przekształceńprzyjmiemy przypadek grupowania jedynek w tablicach przejść. W rozważanym przykładzie grupowanie zer prowadzi do wyrażeńo takim samym stopniu złożoności. T3-17

Krok 11. Synteza funkcji wyjśćλ. 11.a). Zapisanie stanów stabilnych i niemożliwych 11.b). Dodanie stanów niestabilnych na przejściach między stanami stabilnymi. Rys. 3.18. Tablica wyjść. Kopia grafu przejść na tablicy przejść. Sygnały wyjściowe yz dla stanów niestabilnych określamy następująco: Jeżeli sygnały odpowiadające początkowemu i końcowemu stanowi stabilnemu są jednakowe, to taki sam sygnał przypisujemy pośredniemu stanowi niestabilnemu. Jeżeli sygnały odpowiadające początkowemu i końcowemu stanowi stabilnemu są różne, to pośredniemu stanowi niestabilnemu przypisujemy sygnał dowolny ( ). Niektóre komórki mogą uczestniczyć w przejściach od różnych stabilnych stanów początkowych. Jeżeli różne przejścia prowadządo innych wniosków, to wybieramy stan zgodny z docelowym stanem stabilnym (zamiast ). T3-18

Q + 1 = q2a+ q2b+ q1ab q1q2 Q + 2 = q2a+ q2b+ q1ab q1q2,, a). Tablice przejść, przykłady wspólnych wyrażeń wyrazy antyhazardowe odpowiadające czerwonym pętlom b). Tablice wyjść Rys. 3.19. Poszukiwanie wspólnych wyrażeń w funkcjach przejść i funkcjach wyjść. y = B+ z = B+ q1ab, q1ab. możliwe rozszerzenie liliowych pętli na tablicach wyjśćspowoduje: (-) utratę wspólnych wyrażeń, (+) eliminacjębłędnych stanów przejściowych na wyjściach xydla dozwolonych przejśćnp. q 2 q 1 AB= 1010 1011. T3-19

Krok 12. Sporządzenie schematu układu. Założenie 1: układ zostanie zrealizowany przy wykorzystaniu bramek NAND i NOT. Założenie 2: dopuszczamy hazard w wyjściowym ukł. kombinacyjnym. Q1 q = q2a+ q2b+ q1ab+ q1 2 = q2 ( A+ B) + q1ab+ q1q2 = = q 2AB q1ab q1q2 =, (3.9) Q = q2a+ q2b+ q1ab+ q1 2 2 q = q2 ( A+ B) + q1ab+ q1q2 = = q 2AB q1ab q1q2 =, (3.10) y= B q1ab, (3.11) Rys. 3.20. Schemat układu sterowania pompami w szybie kopalni. z= B q1ab. podkreślono powtarzające się wyrażenia (3.12) T3-20

3.3. Zjawiska wyścigów i hazardu w asynchronicznych układach sekwencyjnych Wyścigi - w złożonych układach kombinacyjnych sygnał z danego wejścia może rozchodzićsięw kierunku wyjścia po różnych drogach, na których występująróżnice w czasach propagacji. Wyścigi sygnałów mogąpowodowaćchwilowe przekłamania stanów wyjść układu kombinacyjnego zwane hazardem. W asynchronicznych układach sekwencyjnych istnieje ryzyko utrwalenia błędów poprzez linie sprzężenia zwrotnego. Hazard statyczny (HS) zamiast oczekiwanej niezmienionej wartości sygnału wyjściowego następuje chwilowe przejście do stanu błędnego i powrót do stanu prawidłowego. Możliwe są przejścia: 1 0 1 zamiast niezmiennej wartości 1, 0 1 0 zamiast niezmiennej wartości 0. Hazard dynamiczny (HD) zamiast oczekiwanej jednokrotnej zmiany stanu następuje więcej zmian zanim stan ustali się na prawidłowym docelowym poziomie. Możliwe są przejścia: 1 0 1 0 zamiast przejścia 1 0, 0 1 0 1 zamiast przejścia 0 1. Hazard wielokrotny (whs, whd) zwielokrotnione błędne przejścia typu hazard statyczny lub hazard dynamiczny. Przejście hazardogenne zmiana stanu wejść układu, przy którym możliwy jest chwilowy błąd wyjścia. T3-21

Synteza wyrażeń logicznych metodami Karnaugha i Q-MC w przypadku grupowania 1 prowadzi do wyrażeń normalnych o postaci alternatywnej (normalna postać sumy), np.: Q + 1 = q2a+ q2b q1ab W układach bramek logicznych zrealizowanych jako bezpośrednie odpowiedniki takich wyrażeń możliwe są następujące przypadki hazardu: HS przy stanie 0 nie występuje, HS przy stanie 1 możliwydla przejśćpomiędzy różnymi grupami 1 w tablicy Karanugha lub w metodzie Q-MC, HD nie występuje.. Synteza wyrażeń logicznych metodami Karnaugha i Q-MC w przypadku grupowania 0 prowadzi do wyrażeń normalnych o postaci koniunkcyjnej (normalna postać iloczynu), np.: Q 1 = ( q2+ A)( q2+ B)( q1+ A+ B). W układach bramek logicznych zrealizowanych jako bezpośrednie odpowiedniki takich wyrażeń możliwe są następujące przypadki hazardu: HS przy stanie 0 możliwydla przejśćpomiędzy różnymi grupami 0 w tablicy Karanugha lub w metodzie Q-MC, HS przy stanie 1 nie występuje, HD nie występuje. T3-22

Rozważmy normalną postać alternatywną jednej z funkcji przejść z poprzedniego rozdziału 4.2 bez wyrażeń antyhazardowych. a) bez wyrażeń antyhazardowych b) z wyrażeniem antyhazardowym Q + 1 = q2a+ q2b q1ab, Q + 1 = q2a+ q2b+ q1ab q1q2 Rozważając wybrane przejście, np. q 2 q 1 AB= 1111 1110, możemy wstępnie uprościć postaćfunkcji ustalając wyrazy, które nie biorąudziału w przejściu, tzn. q 2 = q 1 = A= 1 Q1 = 1 B+ 1 B, Q1 = 1 B+ 1 B+ 1= 1,, T3-23

Rozważmy normalną postać koniunkcyjną jednej z funkcji przejść z poprzedniego rozdziału 4.2 bez wyrażeń antyhazardowych. a) bez wyrażeń antyhazardowych b) z wyrażeniem antyhazardowym Q 1 = ( q2+ A)( q2+ B)( q1+ A+ B), Q 1 = ( q2+ A)( q2+ B)( q1+ A+ B)( q2+ q1). Rozważając wybrane przejście, np. q 2 q 1 AB= 0000 0010, możemy wstępnie uprościć postaćfunkcji ustalając wyrazy, które nie biorąudziału w przejściu, tzn. q 2 = q 1 = B= 0 Q1 = A A, Q1 = A A 0= 0, T3-24

Wyrażenia w normalnej postaci alternatywnej (sumy) lub koniunkcyjnej (iloczynu) można zazwyczaj przekształcać przy użyciu praw algebry Boole a bez ryzyka wprowadzenia dodatkowego hazardu przy przejściach między stanami sąsiednimi logicznie, tzn. takimi których kody binarne różnią się jednym bitem. Wyjątki: prawo sprzeczności: redukcja hazardu prawo wyłączonego środka: redukcja hazardu wprowadzenie HS prawo rozdzielności iloczynu wzgl. sumy, gdy prowadzi do wyrażenia alternatywnego, które nie jest normalne, gdyż zawiera iloczyn tożsamościowo równy 0 redukcja hazardu wprowadzenie HS prawo rozdzielności sumy wzgl. iloczynu logicznego, gdy prowadzi do wyrażenia koniunkcyjnego, które nie jest normalne, gdyż zawiera sumę tożsamościowo równą 1. redukcja hazardu wprowadzenie HD wprowadzenie HD T3-25

W przypadku bezpośrednich przejść między stanami, które nie są sąsiednie logicznie, większość przekształceń wykorzystujących prawa algebry Boole a jest obciążonych ryzykiem wprowadzenia dodatkowego hazardu. Przykład dla prawa łączności iloczynu: A B C = (A B) C Układ (prawie) bez hazardu dla wszystkich przejść. Układ z hazardem statycznym np. dla przejścia ABC= 110 001. Brak hazardu przy przejściach między stanami sąsiednimi logicznie. Jeżeli dopuszczono przejście jednoczesne na dwóch lub więcej wejściach złożonego bloku kombinacyjnego, to trzeba rozważyć także konsekwencje wszelkich przejść przesuniętych w czasie. Przykładowo, założone przejście q 2 q 1 = 01 10, w rzeczywistym układzie może być realizowane na trzy sposoby: bezpośrednio: 01 10, pośrednio: 01 00 10, pośrednio: 01 11 10. T3-26

Przykład asynchronicznego układu sekwencyjnego z koniecznym hazardem Żadne trzy kody binarne nie sąsąsiednie logicznie, zatem dla przedstawionego grafu nie można całkowicie wyeliminować przejść między niesąsiednimi logicznie stanami wewnętrznymi. Rys. 3.21. Przykład grafu z przejściami między stanami niesąsiednimi logicznie. a). Błędny projekt!zagrożenie wyścigiem krytycznym, tzn. może istnieć droga prowadząca do błędnego stanu stabilnego. b). Dobrze. Dopuszczono tylko wyścig niekrytyczny, tzn. wszystkie możliwe drogi prowadzą do poprawnego stanu stabilnego. Rys. 3.22. Tablica przejść dla układu o grafie przedstawionym na rys. 3.21. T3-27

3.4. Literatura [1] P. Misiurewicz, Układy automatyki cyfrowej, Wydawnictwa Szkolne i Pedagogiczne, Warszawa, 1984. [2] H. Kamionka-Mikuła, H. Małysiak, B. Pochopień, Synteza i analiza układów cyfrowych, Wydawnictwo Pracowni Komputerowej Jacka Skamierskiego, Gliwice 2006. [3] W. Traczyk, Układy cyfrowe. Podstawy teoretyczne i metody syntezy, WNT, Warszawa 1986. [3] A. Skorupski, Podstawy techniki cyfrowej, WKiŁ, Warszawa 2004. [4] J. Kalisz, Podstawy elektroniki cyfrowej, WKiŁ, Warszawa 2002. [5] A. Barczak, J. Florek, T. Sydoruk, Elektroniczne techniki cyfrowe, VIZJA PRESS&IT Sp. z o.o., Warszawa 2006. T3-28