Projektowanie obwodów sekwencyjnych z wykorzystaniem PLA

Wypróbuj Nasz Instrument Do Eliminowania Problemów





Główną wadą obwód kombinacyjny oznacza to, że nie używa żadnej pamięci do zapisania stanu obecnego i poprzedniego. Stąd poprzedni stan wejścia nie ma żadnego wpływu na aktualny stan obwodu. Podczas gdy obwód sekwencyjny ma pamięć, więc wyjście może się różnić w zależności od wejścia. Ten typ obwodów wykorzystuje poprzednie wejście, wyjście, zegar i element pamięci. Tutaj elementami pamięci mogą być zatrzaski lub klapki. Układy sekwencyjne są projektowane różnymi metodami, takimi jak użycie ROM-ów i klapek, PLA, CPLD (złożone programowalne urządzenie logiczne) , FPGA (tablica bramek programowalna przez użytkownika) . W tym artykule omówimy tylko, jak zaprojektować obwód sekwencyjny za pomocą PLA.

Schemat blokowy obwodu sekwencyjnego, jak pokazano poniżej:




Schemat Blokowy Układu Sekwencyjnego

Schemat Blokowy Układu Sekwencyjnego

Projektowanie obwodu sekwencyjnego z wykorzystaniem PLA

Układy sekwencyjne można zrealizować za pomocą PLA (Programmable Logic Arrays) i przerzutników. W tym projekcie przypisanie stanu może być ważne, ponieważ użycie dobrego przypisania stanu może zmniejszyć wymaganą liczbę terminów dotyczących produktu, a tym samym zmniejszyć wymagany rozmiar PLA. Termin produktowy zdefiniowany jako koniunkcja literałów, gdzie każdy literał jest albo zmienną, albo jej negacją.



Rozważmy bowiem projekt konwertera kodu. Tabelę stanów pokazaną poniżej w tabeli można zrealizować za pomocą jednego PLA i trzech japonki jak pokazano na poniższym rysunku. Ta konfiguracja obwodu jest bardzo podobna do konstrukcji opartej na przerzutniku ROM, z wyjątkiem tego, że ROM jest zastępowany przez PLA o odpowiednim rozmiarze. Przypisanie stanu prowadzi do tabeli prawdy podanej poniżej. Tablica ta mogłaby być przechowywana w PLA z czterema wejściami, 13 kategoriami produktów i czterema wyjściami, ale oferowałoby to niewielkie zmniejszenie rozmiaru w porównaniu z 16-słowową pamięcią ROM.

X Q1 Q2 Q3Z D1 D2 D3
0 0 0 0

0 0 0 1

0 0 1 0

0 0 1 1

0 1 0 0

0 1 0 1

0 1 1 0

0 1 1 1

1 0 0 0

1 0 0 1

1 0 1 0

1 0 1 1

1 1 0 0

1 1 0 1

1 1 1 0

1 1 1 1

1 0 0 1

1 0 1 1

0 1 0 0

0 1 0 1

1 1 0 1

0 0 0 0

1 0 0 0

X X X X

0 0 1 0

0 1 0 0

1 1 0 0

1 1 0 1

0 1 1 0

1 0 0 0

X X X X

X X X X

Tabela: Tabela prawdy

TERAŹNIEJSZOŚĆ

STAN

NASTĘPNY STAN

X = 0 1

TERAŹNIEJSZOŚĆ

WYJŚCIE (Z)

DO PNE 1 0

b

do

D E

I E.

1 0

0 1

re

JEST

H H

H M

0 1

1 0

H.

M

A A

DO -

0 1

1 -

Tabela: Tabela stanów

Projektowanie obwodów sekwencyjnych z wykorzystaniem PLA

Projektowanie obwodów sekwencyjnych z wykorzystaniem PLA

Równania wejściowe i wyjściowe uzyskane na podstawie mapy Karnaugha

Równania wejściowe i wyjściowe uzyskane na podstawie mapy Karnaugha

Tutaj, ponieważ istnieje siedem stanów, wymagane są trzy przerzutniki D. Dlatego wymagany jest obwód PLA z 4 wejściami i 4 wyjściami. Jeśli weźmie się pod uwagę przypisanie stanu konwertera kodu, wynikowe równanie wyjściowe i równania wejściowe typu flip-flop wyprowadzone z Karnaugha można zapisać następującymi równaniami


D1 = Q1 + = Q2 ”

D2 = Q2 + = Q2 ”

D3 = Q3 + = Q1 Q2 Q3 = X ”Q1 Q3” = X Q1 ”Q2”

Z = X ”Q3” + X Q3

X Q1 Q2 Q3 Z D1 D2 D3

- - 0 -

- 1 - -

- 1 1 1

0 1 - 0

1 0 0 -

0 - - 0

jedenaście

0 1 0 0

0 0 1 0

0 0 0 1

0 0 0 1

0 0 0 1

1 0 0 0

1 0 0 0

Tabela PLA, która odpowiada tym równaniom, jest podana w tabeli powyżej. Ta tabela może być zrealizowana przy użyciu PLA z czterema wejściami, siedmioma terminami produktu i czterema wyjściami. Aby wstępnie zweryfikować działanie powyższego projektu, załóżmy, że X = 0 i Q1Q2Q3 = 000. Spowoduje to wybranie wierszy - - 0- i 0 - - -0 w tabeli, więc Z = 0 i D1D2D3 = 100. Po aktywnym zboczu zegara Q1Q2Q3 = 100. Jeśli następne wejście to X = 1, to wybierane są wiersze - - 0 - i - 1- -, więc Z = 0 i D1D2D3 = 110. Po aktywnym zboczu zegara Q1Q2Q3 = 110.

Programowalna tablica logiczna (PLA)

Programmable Logic Array to programowalne urządzenie logiczne. Zwykle jest używany do implementacji kombinacyjnych układów logicznych. PLA ma zestaw programowalnych płaszczyzn AND (tablica AND), które są połączone z zestawem programowalnych płaszczyzn OR (tablica OR), które można następnie tymczasowo uzupełnić w celu uzyskania wyniku. Ten układ pozwala na syntezę dużej liczby funkcji logicznych w suma produktów (SOP) formy kanoniczne. Poniżej przedstawiono prosty schemat blokowy PLA.

Schemat blokowy PLA

Schemat blokowy PLA

Główną różnicą między PLA i PAL (programowalna logika tablicowa) jest:

PLA: Obie Płaszczyzna AND i płaszczyzna OR są programowalne.

PAL: Tylko płaszczyzna AND jest programowalna, podczas gdy płaszczyzna OR jest ustalona.

Aby lepiej zrozumieć PLA, rozważymy poniższy przykład.

Spróbujmy zaimplementować te funkcje f1 i f2 podane jako

Funkcja PLA f1 i f2

Wejścia x1, x2, x3 i odpowiadające im sygnały uzupełnione są podawane na programowalną płaszczyznę AND, tam otrzymamy wyjścia płaszczyzny AND jako P1, P2, P3 zwane mintermami. Następnie sygnały te są przekazywane do programowalnej płaszczyzny OR w celu uzyskania wymaganej funkcji wyjściowej f1 i f2 (suma iloczynów). Poniższy rysunek przedstawia implementację PLA na poziomie bramki dla danej funkcjonalności.

Wdrożenie PLA

Wdrożenie PLA

Chodzi o projektowanie obwodów sekwencyjnych przy użyciu PLA. Uważamy, że informacje podane w tym artykule są pomocne w lepszym zrozumieniu tej koncepcji. Ponadto wszelkie pytania dotyczące tego artykułu lub pomocy w realizacja projektów elektrycznych i elektronicznych , możesz skontaktować się z nami, komentując w sekcji komentarzy poniżej. Oto pytanie do Ciebie, Co oznacza układ sekwencyjny?