Sunteți pe pagina 1din 9

Platformdeelearningicurriculecontent

pentrunvmntulsuperiortehnic

ProiectareaLogic

24.Echivalentastarilor

Proiectarea Logic

STARILE ECHIVALENTE DIN CIRCUITELE SECVENTIALE

Realizarea unui circuit secvenial care implementeaz o anumit funcionare nu are


ntotdeauna soluie unic. Este, adesea, posibil construcia unor circuite secveniale
care s aib acelai comportament funcional dar, care s prezinte complexiti
distincte i costuri diferite.
Se consider, tradiional, c dintre toate circuitele secveniale care implementeaz
aceeai funcie este mai simplu i realizabil cu costuri reduse acela care are un numr
mai mic de stri. Acest motiv dar i altele similare au impulsionat cutarea reducerii
strilor unui automat dar pstrnd aceiai funcionalitate.
Atunci cnd se construiete diagrama sau tabelul de stri pentru un automat finit, ori
atunci cnd se descrie un automat finit printr-un cod HDL, se ntmpl adesea s se
introduc stri redundante. Strile redundante sunt stri a cror funcie poate fi
ndeplinit de alte stri ale aceleiai maini. n fapt, strile redundante sunt stri
echivalente ca funcie n automatul respectiv i, din acest motiv, este suficient una
singur.
Criteriul dup care se stabilete faptul c n automatul M starea Sa este redundant n
raport cu starea Sb este transformarea
ir de valori de intrare ir de valori de ieire
definit de automatul finit M, atunci cnd acesta este iniializat ntr-una dintre cele
dou stri Sa ori Sb.
Utiliznd descrierea automatului, presupus complet definit, se poate stabili inductiv,
pornind dintr-o stare arbitrar Sw i utiliznd un ir oarecare de valori posibile de
intrare (u1 u2 uq), irul de valori de ieire produs (v1 v2 vq):
(Sw , u1 u2 uq) (v1 v2 vq)
Aceast coresponden este definitorie pentru funcionarea unui automat finit,
indiferent de secvena de stri parcurs prin automatul respectiv. Corespondena este,
tradiional, notat prin:
( Sw , u1 u2 uq) = (v1 v2 ,vq),
unde este funcia ieirii unui automat finit, aplicat n cazul de fa iterativ:
( Sw , u1 u2 uq) = ( Sw , u1) (( Sw, u1), u2) (( ( ( (Sw, u1) u2) )), uq).
n vederea micorrii numrului de stri ale unui automat se investigheaz acele stri
care realizeaz aceiai funcie iar reducerea acestora conduce la o main cu stri mai
puine dar care funcioneaz echivalent celei iniiale. Se spune c, n general, dou
maini finite sunt echivalente dac, atunci cnd sunt iniializate corespunztor i li se
aplic aceleai iruri de valori de intrare se produc, ntotdeauna, aceleai iruri de
valori de ieire.
Dou stri Sa i Sb ale unei maini M sunt distinctibile dac i numai dac exist cel
puin un ir finit de valori de intrare, care atunci cnd aceasta se aplic mainii M,
produce dou secvene, iruri, de valori de ieirie diferite, dup cum starea iniial a
mainii este Sa ori Sb.

-1-

Proiectarea Logic

irul de valori de intrare care distinge strile Sa i Sb se numete secven de distingere


a perechii de stri respective i atunci cnd aceasta are lungimea q se spune c
perechea de stri Sa i Sb sunt q-distinctibile. Sunt de interes, n general, secevnele
cele mai scurte de distingere (prima apariie a unor valori diferite n irul de valori de
ieire poate fixa lungimea minim de distingere).
Conceptul de q-distinctibilitate conduce la definirea q-echivalenei i respectiv a
echivalenei a dou stri Si i Sj ale aceluiai automat M. Strile care nu sunt qdistinctibile se spune c sunt q-echivalente. Se poate remarca o proprietate simpl a
strilor q-echivalente, i anume c dou stri q-echivalente sunt p-echivalente pentru
orice p < q. Strile care sunt q-echivalente pentru orice valoare (natural) q se spune
c sunt echivalente. Altfel spus, pentru strile echivalente nu exist nici o seceven
care s le disting. Dac strile Sa i Sb sunt echivalente atunci echivalena lor se
noteaz prin Sa = Sb.
Definiia strilor echivalente urmeaz aceste considerente.
Definiia 1:
Dou stri Sa i Sb ale mainii M se spune c sunt echivalente dac i
numai dac oricare ar fi irul de valori posibile de intrare aplicat se
produce aceiai secven de valori de ieire indiferent c starea iniial a
mainii M este Sa ori Sb.
Se poate remarca, fr mari dificulti, c echivalena strilor dintr-o main finit, aa
cum a fost aceasta introdus, este o relaie de echivalen. Aceasta se demonstreaz
probnd reflexivitatea, simetria i tranzitivitatea relaiei.
Propoziia 1:
Partiionarea mulimii strilor n clase de echivalen este unic.
Demonstraie: Prin reducere la absurd, se consider dou partiionri P1 i
P2 n clase de echivalen a mulimii strilor unui automat M, astfel nct
P1 P2. Fie strile Sa i Sb astfel nct acestea sunt n aceiai clas n
prima partiie i sunt n clase diferite n cea de-a doua partiie. Deoarece
cele dou stri sunt n clase diferite n cadrul celei de-a doua partiii,
exist un ir de simboluri de intrare care le fac distinctibile ceea ce
contrazice faptul c ar putea fi echivalente.
O consecin fireasc a acestei proprieti este partiionarea mulimii strilor unei
maini finite n clase de echivalen (disjuncte). Dou sau mai multe stri aparin
aceleiai clase de echivalen dac sunt echivalente.
Un automat poate fi privit ca avnd pentru fiecare stare intern o clas de echivalen
asociat acelei stri, astfel nct ori de cte ori automatul tranziteaz spre una dintre
strile unei clase de echivalen nu are importan care dintre strile echivalente ale
respectivei clase este activat.
Faptul c o clasa de echivalen a unui automat finit conine cel puin o stare face ca
automatul cu cele mai puine stri s fie cel ale crui clase de echivalene conin,
fiecare, doar o singur stare.
Reducerea numrului de stri interne ale unui automat M revine la nlocuirea
automatului M prin automatul N, n care cel de-al doilea automat are n fiecare clas

-2-

Proiectarea Logic

de echivalen (a strilor) o singur stare. Avnd n vedere definia criteriului de


echivalare al strilor se poate introduce definiia automatelor finite echivalente.
Definiia 2:
Fie M i N dou automate finite complet determinate avnd aceleai
valori, simboluri, de intrare din mulimea U.
Fie (u1 u2 , uq), cu uiU, 1 i q un ir oarecare de valori de intrare, de
lungime arbitrar. Atunci strile Sx M i Sy N sunt echivalente dac i
numai dac:
M( Sx , u1 u2 uq) = N( Sy , u1 u2 uq).
Definiia care urmeaz introduce ntr-un cadru mai general echivalena a dou maini
finite M i N.

Definiia 3:
Dou automate finite M i N sunt echivalente dac pentru fiecare stare S din
M exist o stare echivalent T din N i reciproc. Atunci se noteaz
echivalena celor dou automate prin M = N.
Exemplul 1:
Se consider circuitul secvenial A definit prin tabelul 1 i circuitul secvenial B
definit prin tabelul 2. Aceste dou circuite sunt echivalente. Acest fapt este
demonstrat prin aplicarea direct a definiiei aa cum se poate urmri n tabelul 3.
Astfel, dup cum rezult din tabelul 3, n urma aplicrii secvenelor de intrri
00110 circuitului A aflat n starea p1 sau n starea p3, se obine aceiai secven
de valori la ieiri. Acelai lucru se constat aplicnd secvena de valori de intrare
1110. Aplicnd aceste secvene de valori ale intrrii sau oricare altele se obine
acelai rspuns al circuitului secvenial A aflat iniial n starea p1 sau p3, ca i
pentru circuitul secvenial B, aflat iniial n starea q1. Prin urmare p1 = p3, p1 = q1 i
p3 = q1. n mod similar se poate arta c strile p2 i q2 sunt echivalente.

Intrri

Intrri
0
Starea
actual
p1
p2
p3

p3/0
p1/1
p1/0

1
Starea
actual
q1
q2

p2/1
p2/0
p2/1

q1/0
q1/1

q2/1
q2/0

Tabelul 2. Circuitul secvenial B.

Tabelul 1. Circuitul secvenial A.

-3-

Proiectarea Logic

Numrul
curent

Intrri

1
2
3
4
5
1
2
3
4

0
0
1
1
0
1
1
1
0

Automatul finit A
Automatul finit B
Starea Starea
Starea Starea
actual viitoare Ieirea actual viitoare Ieirea
p1
p3
0
q3
q1
0
p3
p1
0
q1
q3
0
p1
p2
1
q3
1
q2
p2
p2
0
0
q2
q2
p2
p1
1
1
q1
q2
p1
p2
1
q3
1
q2
p2
p2
0
0
q2
q2
p2
p2
0
0
q2
q2
p2
p1
1
1
q1
q2

Tabelul 3. Gsirea strilor echivalente n cele dou circuite secveniale


prin aplicarea direct a definiiei.
Problema minimizrii numrului de stri ale unui circuit secvenial revine la stabilirea
claselor de echivalen ale mulimii strilor acestuia. Aplicarea definiiei, ca n multe
alte cazuri similare, nu ofer soluia cea mai eficient.

Partiionarea strilor unui circuit secvenial n clase de echivalen


Exist mai multe metode de calcul al claselor de echivalen peste strile unui automat
cu stri finite i complet definit.
Toate metodele utilizeaz att definiia strilor echivalente ct i cteva condiii
necesare de realizare a echivalenei strilor. Condiia necesar cel mai des utilizat se
refer la totalitatea valorilor de ieire (scalare sau vectoriale) ale unei stri. Aceast
totalitate rezum n fapt valorile ieirii circuitului, ntr-o stare dat, pentru toate
valorile posibile ale intrrilor. Daca totalitatea valorilor de ieire pentru o stare p
difer de totalitatea valorilor de ieire pentru starea q atunci strile p i q nu sunt
echivalente, notat p q.
n fapt, dat un circuit secvenial A, se poate estima de la bun nceput o margine
inferioar a numrului claselor de echivalen. Anume, se formeaz totalitatea
valorilor ieirii pentru fiecare stare i se calculeaz cuantumul situaiilor distincte.
Aceasta este marginea inferioar a numrului claselor de echivalen.
Astfel circuitul secvenial din tabelul 4 are o margine inferioar a numrului de clase
de echivalen egal cu patru:
{1, 5}, {2, 4, 8}, {3, 6, 9}, {7, 10, 11, 12} pentru totalitatea ieirilor (0, 0, 0, 0),
(0, 1, 0, 0), (1, 0, 1, 1) i respectiv (1, 1, 1, 1).
Oricare circuit secvenial are i o margine superioar a numrului de clase de
echivalen. Aceast margine este egal cu numrul de stri ale circuitului. Dac un
circuit nu are echivalene printre strile sale atunci aceast margine va fi atins,
fiecare stare fiind unic membr a cte unei clase de echivalen.
-4-

Proiectarea Logic

Algoritmul Paull-Unger
Acest algoritm utilizeaz un tabel n care se nscriu, pentru fiecare pereche de stri
care ar putea fi echivalente, implicaiile echivalenei respective sau condiiile care ar
trebui ndeplinite pentru ca respectiva pereche de stri s fie echivalente.
Tabelul are numrul de linii i de coloane egal cu numrul strilor mai puin o unitate.
Pe rnduri sunt notate n ordine cresctoare, de sus n jos, toate strile exceptnd
prima stare. Pe coloane, la baza tabelului, sunt notate n ordine cresctoare, de la
stnga la dreapta, toate strile exceptnd ultima stare.
Din raiuni de simetrie, tabelul este suficient s fie completat doar jumtate.
Tradiional se completeaz jumtatea stng.
Intrri
Starea
actual
1
2
3
4
5
6
7
8
9
10
11
12

2/0
3/0
2/1
3/0
2/0
2/1
1/1
6/0
2/1
1/1
1/1
1/1

3/0
7/1
1/0
10/0
6/0
1/0
4/1
11/1
5/0
2/1
2/1
3/1

2/0
6/0
7/1
3/0
2/0
11/1
3/1
6/0
11/1
6/1
6/1
2/1

4/0
1/0
8/1
1/0
8/0
4/1
5/1
5/0
4/1
5/1
5/1
1/1

Tabelul 4. Circuitul secvenial al exemplului 2.


n elementul i,j al tabelului, corespunztor interseciei liniei strii i i coloanei strii j,
sunt nscrise condiiile pentru ca respectivele stri s fie echivalente sau sunt notate
orice alte remarci privitor la echivalena acestor stri.
n cadrul utilizrii elementelor tabelului sunt utilizate trei reguli.
Prima regul stabilete c toate perechile de stri care au totalitatea ieirilor diferit
sunt stri incompatibile i se bareaz celula tabelului corespunztoare acestora.
Perechile de stri pentru care coincide totalitatea ieirilor pot fi echivalente dac sunt
satisfcute condiiile de echivalen ale strilor corespunztoare intrrilor specifice.
A doua regul este iterativ i aplic un procedeu de omogenizare a condiiilor. Astfel
toate condiiile de incompatibilitate (corespunztoare celulelor barate) sunt verificate
n listele de condiii de echivalen ale celulelor ne-barate. Prezena unei
incompatibiliti ntr-o condiiile de echivalen a unei celule ne-barate conduce la
bararea acesteia i la trecerea perechi de stri corespunztoare n categoria perechilor
de stri incompatibile. La pasul iterativ urmtor aceast pereche va fi verificat ca
prezen n toate celulele ne-barate dar cu condiii nscrise .a.m.d.
Atunci cnd dup o parcurgere complet a tabelului nu mai sunt descoperite noi
-5-

Proiectarea Logic

perechi de stri incompatibile se trece la aplicarea celei de-a treia reguli.


A treia regul, i ultima, extrage din tabel toate condiiile de compatibilitate i
utiliznd tranzitivitatea stabilete clasele de echivalen.

7,10
3,6

4
5

3,6
4,8
7,11
4,8

6
7
3,6
7,11
1,5

3,6
10,11
1,5
1,5
7,11
4,8

1,5

10

2,4
3,6

11

2,4
3,6
3,4
3,2
1,5

12
1

2,3
2,6
1,5

2,3
2,6
1,5

10

11

Tabelul 5. Aplicarea algoritmului Paull-Unger circuitului secvenial din


Exemplul 2.
Pentru simplitatea expunerii i uurina nelegerii aplicrii algoritmului se va apela la
urmrirea exemplului 2.
Exemplul 2:
Se consider circuitul secvenial descris prin tabelul 4.
Construcia, n conformitate cu algoritmul Paull-Unger, a tabelului de gsire a
strilor echivalente este prezentat n tabelul 5.
Prima regul a algoritmului vizeaz completarea iniial a elementelor tabelului.

-6-

Proiectarea Logic

Toate elementele (csuele) tabelului care sunt barate reprezint perechi de stri
ne-echivalente sau, altfel spus, incompatibile. Astfel, starea 1 i starea 2 din
tabelul 4 nu sunt echivalente deoarece ieirea lor pentru intrarea 2 difer.
Exist, pe de-alt parte stri evident echivalente. n tabelul 4 se remarc, fr nici
un dubiu, echivalena strilor 10 i 11 (celula respectiv este marcat cu
caracterul ).
Acolo unde totalitatea ieirilor coincide se pot formula condiiile de echivalen.
Astfel, pentru ca starea 11 s fie echivalent strii 12 mai trebuie ca 2 = 3, 2 = 6 i
1 = 5. Aceste condiii sunt nscrise sub forma unor perechi (perechea 2,3 spre
exemplu), n elementul tabelului corespunztor liniei 12 i coloanei 11.
A doua regul a algoritmului propag toate incompatibilitile celulelor barate din
tabel i n celulele ne-barate dar care utilizeaz condiii explicite de echivalen.
Atunci cnd o celul, ne-barat, conine o condiie de echivalen contrazis de o
incompatibilitate, aceasta se bareaz devenind incompatibilitate la rndul su i
putnd propaga alte incompatibiliti printre echivalenele condiionate.
Aceast a doua regul se recomand s se aplice ordonat n tabel (ca parcurgere)
i iterativ.
Astfel, dac se parcurge tabelul 5 pornind din colul dreapta jos, prima
incompatibilitate corespunde perechii (9,12) dar, care nu apare menionat ca i
condiie de echivalen n nici un element al tabelei.
Nu acelai lucru se ntmpl cu perechea incompatibil (3,4) care apare ca i
condiie de echivalen a strilor 7 i 12. n consecin se bareaz celula (7,12),
care avea dealtfel i condiia incompatibil (2,3). Deoarece acest mod de barare
este ulterior celui iniial, celula (12, 7) n tabelul 5, pentru mai mult claritate a fost
barat printr-o elips desenat punctat i nscris n celul.
Incompatibilitatea strilor 2 i 3 bareaz att perechea (10,12) ct i perechea
(11,12) (aveau i (2,6) a doua pereche incompatibil dealtfel). Ambele celule din
tabel sunt barate similar celulei (12,7) din tabelul 5.
n continuare nu mai apar incompatibiliti i se ncheie de aplicat regula a doua.
Tabelul conine acum informaii despre toate perechile de stri echivalente.
Aplicnd cea de-a treia regul se extrag perechile care s-au pstrat:
10 = 1, 7 = 11, 1 = 10, 6 = 9, 3 = 9, 4 = 8, 2 = 8, 3 = 6, 1 = 5 i 2 = 4.
Se grupeaz aceste perechi n clase de echivalene utiliznd tranzitivitatea relaiei:
{10, 11, 7}, {6, 9, 3}, {4, 8, 2} i {1, 5}. La aceste clase de echivalen formate din
dou sau mai multe stri se adaug ultima clas de echivalen a acestui circuit
secvenial coninnd o singur stare {12}. S-au obinut, n total, 5 clase de
echivalen ale circuitului descris prin tabelul 4, cu una mai mult dect marginea
inferioar estimat iniial.

n cazul circuitelor secveniale complet definite, partiia mulimii strilor obinut


prin relaia de echivalen a strilor reprezint unica posibilitate de obinere a unui
numr minim de grupe de stri echivalente, deoarece fiecare stare este inclus ntr-o
unic clas (de echivalen).

-7-

Proiectarea Logic

Aceast partiie are proprietatea c fiecare clas de stri poate fi reprezentat printr-o
singur stare din clasa respectiv. Prin urmare este suficient ca fiecare clas s fie
reprezentat printr-o unic stare n circuitul secvenial minim.

-8-

S-ar putea să vă placă și