Sunteți pe pagina 1din 104

APB: ANEXA 1

COMPLEMENTUL FA DE 2
Operaia de scdere a dou numere binare
A = an .. a1 a0
B = bn .. b1 b0
poate fi transformat ntr-o operaie de adunare conform relaiei
A B = A + (-B),
fiind ns necesar determinarea modului de reprezentare n binar a numerelor negative.
Astfel, pentru numrul binar
A = an .. a1 a0 ,
forma sa negativ
not

A = 1 a'n .. a '1 a '0 ,


n care bitul de pondere maxim este destinat codificrii semnului (starea 1 indicnd
semnul - i starea 0 indicnd semnul +), trebuie determinat nct
A + (-A) = 0
+0 = -0 1 0 .. 0 0 = 0 0 ..0 0 (codificarea mrimii numrului 0 s fie unic !)
Codificarea numerelor binare negative se determin astfel:
A + (-A) = 0

A = 0 an ...a1 a0
A = 1 a 'n .. a '1 a '0
+ 10...00

0 an ... a1 a0 +
+ 0 a 'n ... a '1 a '0 =

+ 10...00

0 an .. a1 a0 +
+ 1 a 'n ...a'1 a '0 =

= 0 0 ... 0 0

0 a 'n ... a '1 a'0 =


= 0 1 ... 1 1 -

0 a 'n ... a '1 a'0 =


= 0 an .. a1 a0 +
+ 0 0 ... 0 1

= 1 0 ... 0 0 =
- 0 an .. a1 a0 +
= 0 1 ... 1 1 +
+ 0 0 ... 0 1
+ 0 0 ... 0 1
A = + A + 1 = 0 an ...a1 a0 + 00...01
Aceast reprezentare a numerelor negative s-a numit complement fa de 2.

La operarea n complement fa de 2, rezultatul corect se obine prin neglijarea


transportului de la bitul de semn, operaia de scdere fiind efectuat printr-o operaie de
adunare, prin relaiile
A = B + C > B : A - B = A + (-B) = B + C + (-B) = C
B = A + C > A : A - B = A - (A + C) = A + (-A) + (-C) = (-C)
A+B=C:
(-A) + (-B) = -(A + B) = (-C)
n care A, B, C > 0, iar (-A), (-B), (-C) sunt reprezentri n complement fa de 2.
Observaie
1. ntr-o unitate aritmetic i logic, notat ALU (=Arithmetic Logic Unit), operaiile
aritmetice sunt efectuate n complement fa de 2 doar cu un circuit de sumare,
complementul fa de 2 avnd i avantajul unei reprezentri unice a numrului 0 (zero).
2. n complement fa de 2 se obin rezultate corecte i la efectuarea operaiei de
scdere.

COMENZI CU LINIE DE NTRZIERE DIN PORI LOGICE


= n t = timpul de ntrziere al liniei
2 = m t
t

xi

xi
t

1 = k t

t
t

xe
y1
2 + t

1 + t

1 + t

2 + t

y1
y2

y2
1 + t

t
t

y3

t =timp de propagare
Detector de front
Fig.1 Linie de ntrziere din pori logice

=kt
xi

ti

xi

t
t

t
=kt
xi

ti -

t
t

ti +
t
t
t

Fig.2 Detectoare de front


Cu o linie de ntrziere din pori logice, un impuls poate fi ntrziat diferit pe fronturile
de nceput i de sfrit, folosind o poart logic de ieire cu cele dou intrri conectate n
1

puncte diferite ale liniei. O linie de ntrziere este utilizat pentru generarea de impulsuri a
cror fronturi sunt ntrziate fa de fronturile impulsului aplicat la intrarea liniei, timpul de
ntrziere al liniei, notat , fiind dat de timpul maxim de ntrziere al unui front din
semnalele generate (fig.1).
O linie de ntrziere este caracterizat prin timpul de propagare a unui semnal de la
intrarea pn la ieirea liniei, numit timp de ntrziere, fiind echivalent cu o memorie al
crei timp de memorare este dat de timpul de ntrziere al liniei.
Considernd pentru orice poart logic acelai timp de propagare t, ntrzierile
introduse de o linie de ntrziere din pori logice va fi un multiplu de t:
i = k t = n t , k = 1 .. n
n fiind numrul total de pori logice din linia de ntrziere.
ntr-o schem de comand cu linie de ntrziere din pori logice, generarea de
impulsuri, pentru care durata i intervalul de declanare sunt multipli de t, se face cu
detectoare de front, a cror scheme i forme de und sunt date n fig.2.
O schem de comand realizat cu o linie de ntrziere din pori logice este simpl i
permite generarea oricror forme de und.
n vederea realizrii fiecreia din operaiile de executat pe o structur din circuite
logice interconectate, comanda circuitelor trebuie fcut sincronizat prin semnale logice
generate cu un bloc de control, uor i simplu de realizat cu o linie de ntrziere din pori
logice. Pentru fiecare sarcin de executat pe structura din circuite logice interconectate, se
stabilesc formele de und a semnalelor necesare, dup care se determin circuitul de
control cu linie de ntrziere. Prin reunirea tuturor circuitelor de control a sarcinilor de
efectuat, pe o linie de ntrziere comun, se obine blocul de control.

FUNCIA LOGIC AND DUP ORGANIGRAM


S se comande un motor de curent continuu pentru a fi alimentat la realizarea a trei
condiii testate prin intrrile cu adresele notate I5 , I6 , I7 ale unui APB, elementul de
execuie fiind un contactor controlat prin ieirea cu adresa notat R din APB.
Schema de acionare cu releu are urmtoarea structur:

I5

I6

I7
R

Eex

L ex

Mcc

Rezolvare
Organigrama i programul aplicaiei sunt prezentate n dou variante: cu i fr
pseudosalt. Pseudosaltul se realizeaz prin utilizarea bistabilului OEN (= Output Enable).

START

Etichet:

MOTOR:
f = I5 I6 I7
=
IF .. THEN
f
=1
SKIP:
=0
R=0;LED=1

Simbolizare;
ORG 18.00H ;
MOTOR: LD
I5 ;

R=1;LED=0
SKIP:

STOP

Comentarii
MOTOR=18.00H
RR f = I5 I6 I7

AND

I6 ;

AND

I7 ;

SKZ ;
JMP
STO
STOC
JMP
STO
STOC
JMP
END ;

IF..THEN..ELSE..
SKIP ;
Comanda ieirilor
R;
R, de comand a
LED
releului, i LED,
MOTOR; de comand a
R;
afirii.
LED
MOTOR;
Sfrit program

Programul prezentat are dezavantajul c timpul su de efectuare depinde de decizia


din urma condiiei testate, astfel c timpul unui ciclu program este:
Tciclu =7/8 instruciuni Ti ,
unde Ti = timpul de efectuare al unei instruciuni.
Timpul Tciclu , de efectuare al unui ciclu program, devine constant
Tciclu =11 instruciuni Ti = constant,
indiferent de condiia testat, dac se utizeaz ramificarea prin pseudosalt cu instruciunea
1

OEN Ij ,
aa cum se exemplific prin urmtorul program:
Etichet:

Simbolizare;
ORG 18.00H ;
MOTOR: LD
I5 ;

Comentarii
MOTOR=18.00H
RR f = I5 I6 I7

AND I6 ;
AND I7 ;
OEN IRR ;
STO R ;
STOC LED
LDC IRR ;

IF..THEN
cu pseudosalt

OEN IRR ;
STOC R
STO LED
JMP MOTOR;
END ;
Sfrit program

Exemplul 1
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
VR
R1

O1

I1
R0

Rezolvare
Schema de comand cu relee materializeaz funcia logic de comand
O1 = I1 ,
realizat cu urmtorul program APB :
Etichet : Simbolizare ;
COM 1 : LDC
I1 ;
STO

O1;

Descriere sintetic

RR (I1)
(O1) RR = (I1)

Exemplul 2
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
VR
I1
I2
I3
O1
R

Rezolvare
Schema de comand cu relee materializeaz funcia logic de comand
O1 = I1 I2 I3 ,
realizat cu urmtorul program APB:
Etichet : Simbolizare ;
COM 2 : LD
I1 ;
AND

I2 ;

Descriere sintetic
RR (I1)
RR RR (I2 ) = (I1) (I2 )

ANDC I3 ;

RR RR (I3 ) = (I1) (I2 ) (I3 )

STO

(O1) RR = (I1) (I2 ) (I3 )

O1 ;

Exemplul 3
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
1-1

VR
I2

R2

O2

I1
R1

O1

I3

O3

IOk

Rezolvare
Schema de comand cu relee materializeaz urmtoarele funcii logice de comand
O1 = I1 + I2 ; O2 = I3 + IO + E = I3 + IO + O1 ; O3 = O 2
K

realizate cu urmtorul program APB:


Etichet : Simbolizare; Descriere sintetic
COM 3 : LD
I1 ; RR (I1)
ORC

I2 ;

RR RR + (I2 ) = (I1) + (I2 )

STO

O1 ;

(O1) RR = (I1) + (I2 )

OR

I3 ;

RR RR + (I3 ) = (I1) + (I2 ) + (I3 )

ORC

IO ;

RR RR + (IO ) = (I1) + (I2 ) + (I3 ) + (IO )

STO

O2 ; (O2 ) RR = (I1) + (I2 ) + (I3 ) + (IO )


K

STOC O3 ;

(O3 ) RR = (O2 )

Exemplul 4
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
VR
I1

MOk

I2

Ip

O1

Rezolvare
Schema de comand cu relee materializeaz funcia logic de comand
Oi = I1 I2 + MO IP ,
K

realizat cu urmtorul program APB:


Etichet : Simbolizare ;
COM 4 : LD
I1 ;
ANDC

I2

Descriere sintetic
RR (I1)

RR RR (I2 ) = (I1) (I2 )


1-2

Etichet : Simbolizare ;
STO
MO ;

Descriere sintetic

(MO ) RR = (I1) (I2 )

LD

MO ;

AND

IP

RR (MO )

; RR RR (IP ) = (MO ) (IP )


K

RR RR + (MO ) = (MO ) (IP ) + (I1) (I2 )


m
K

MO ;

OR

STO

Oi

STO

MOi ;

(Oi ) RR = (MO ) (IP ) + (I1) (I2 )


K

(MO )=memorie imagine RR = (Oi )


i

Exemplul 5
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
VR
I1

O1
R1

O2
R2

O3

O4

R3

R4

I2

MOk

E2

E1

R0

Rezolvare
Schema de comand cu relee materializeaz urmtoarele funcii logice de comand
O1 = O2 = I1 I2 MO ;
O3 = O4 = I1 I2 MO = O1
K

realizate cu urmtorul program APB:


Etichet : Simbolizare ; Descriere sintetic
COM 5 : LD
I1 ; RR (I1)
AND

I2 ;

RR RR (I2 ) = (I1) (I2 )

AND

MO ;

RR RR (MO ) = (I1) (I2 ) (MO )

STO

O1 ;

(O1) RR = (I1) (I2 ) (MO )

STO

MO ;

(MO ) RR = (I1) (I2 ) (MO )

STO

O2 ;

(O2 ) RR = (I1) (I2 ) (MO )

STO

MO ; (MO ) RR = (I1) (I2 ) (MO )

STOC

O3 ;

STOC

MO ;

STOC

O4 ;

STOC

MO ;

(O3 ) RR = (I1) (I2 ) (MO )


K

(MO ) RR = (I1) (I2 ) (MO )


3

(O4 ) RR = (I1) (I2 ) (MO )


K

(MO ) RR = (I1) (I2 ) (MO )


4

1-3

Exemplul 6
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
VR
I3

I1

I4

MOk

I2
I5

I6

E2
R2

E1

I7

R1

O1
R0

Rezolvare
Schema de comand cu relee materializeaz urmtoarea funcie logic de comand
Oi = (I7 + I1) I2 (I5 + I6 ) (I3 + I4 + MO ) .
K

Etichet: Simbolizare ; Descriere sintetic


COM 6: LDC I1 ; RR (I )
1
I7

RR RR + (I7 ) = (I1) + (I7 )

ANDC I2

RR RR (I2 ) = (I2 ) [(I1) (I7 )]

OR

STO

MO ;

(MO ) RR = (I2 ) [(I1) (I7 )]

LD

I5

RR (I5 )

OR

I6

RR RR + (I6 ) = (I5 ) + (I6 )

AND

MO ; RR RR (MO ) = (I2 ) [ (I1) + (I7 ) ] [ (I5 + (I6 ) ]


m

STO

MO ;

(MO ) RR = (I2 ) [ (I1) + (I7 ) ] [ (I5 + (I6 ) ]


m

LD

I3 ;

RR (I3 )

OR

I4 ;

RR RR + (I4 ) = (I3 ) + (I4 )

OR

MO ;
K

RR RR + (MO ) = (I3 ) + (I4 ) + (MO )


K

AND MO ;

RR RR (MO ) = [ (I3 ) + (I4 ) +

STO

Oi ;

+(M O )] (I2 ) [ (I1) + (I7 ) ] [ (I5 + (I6 ) ]


K
(Oi ) RR = [ (I3 ) + (I4 ) +

MO ;

+(M O )] (I2 ) [ (I1) + (I7 ) ] [ (I5 + (I6 ) ]


K
(MO ) RR = [ (I3 ) + (I4 ) +

STO

+(M O )] (I2 ) [ (I1) + (I7 ) ] [ (I5 + (I6 ) ]


K
1-4

Exemplul 7
S se realizeze programul APB pentru urmtoarea schem de comand cu relee:
VR
I2

MO2

I4

I1

I3

I6
I5

R2

E1

MOk

R1

E2

O1

I7

R0

Rezolvare
Schema de comand cu relee materializeaz urmtoarea funcie logic de comand
O1 = I7 + MO MO + I6 + I4 I5 + I2 I3 I1 = I7 (MO + MO ) I6 (I4 + I5 ) (I2 + I3 + I1) .
2
K
2
K
Etichet: Simbolizare ; Descriere sintetic
COM 7: LD
MO ; RR (MO )
2
2
OR

MO ;
K

RR RR + (MO ) = (MO ) + (MO )


K

I7

RR RR (I7 ) = (I7 ) [ (MO ) + (MO ) ]

ANDC I6

RR RR (I6 ) = (I6 ) (I7 ) [ (MO ) + (MO ) ]

AND

STO

MO ;
m

(MO ) RR = (I6 ) (I7 ) [ (MO ) + (MO ) ]


m

LD

I5

RR (I5 )

ORC

I4

RR RR + (I4 ) = (I5 ) + (I4 )

AND

MO ;

RR RR (MO ) = [ (I5 ) + (I4 ) ] (I7 ) (I6 ) [(MO ) + (MO )]

STO

MO ;

(MO ) RR = [ (I5 ) + (I4 ) ] (I7 ) (I6 ) [(MO ) + (MO )]

LDC

I2

RR (I2 )

ORC

I3 ;

RR RR + (I3 ) = (I2 ) + (I3 )

OR

I1 ;

RR RR + (I1) = (I2 ) + (I3 ) + (I1)

AND

MO ;
m

RR RR (MO ) = [ (I5 ) + (I4 ) ] (I7 ) (I6 ) [(MO ) +


m

+(MO ) ] [ (I2 ) + (I3 ) + (I1) ]


K

STO

O1 ;

(O1) RR = [ (I5 ) + (I4 ) ] (I7 ) (I6 ) [(MO ) +


2

+(MO ) ] [ (I2 ) + (I3 ) + (I1) ]


K

STO

MO ;
1

(MO ) RR = [ (I5 ) + (I4 ) ] (I7 ) (I6 ) [(MO ) +


1

+(MO ) ] [ (I2 ) + (I3 ) + (I1) ]


K

1-5

NUMRTOR DIVIZOR CU 10
S se realizeze cu un APB un numrtor divizor cu 10, cu numrarea impulsurilor pe
front cresctor i generarea impulsului de transport.
I0

ODOCOBO A

APB

ILOW

OCY

Rezolvare

START
DIV10:

RR I0
PULS0:
OM IRR = I0
Detectare front cresctor

CYCLE:

RR I0
I0

=0

PULS1: =1

RR I0 OM

RR = OM

=1

=0
OM 1 ( = I0 )
FULL:
RR OD O A

RR
INIT:

=0

=1
OD , .. ,O A 0

INCR:
OD .. O A +1

OCY = 1
FINISH:

OCY = 0

STOP

Numrtorul va tranzita pe ieirile OD , O C , OB , O A , din starea 1001, n starea 0000,


cnd OD O A =1. Programul aplicaiei are urmtoarea form:
Adres (H) Etichet: Simbolizare;
Comentarii
ORG 18.07H ; DIV10=18.07H
I0 ;
ncrcare I0 anterior pe ieirea OM cu
1807
DIV10: LD
1808
1809

PULS0: STO OM ;
I0 ;
CYCLE: LD

180A
180B
180C

SKZ ;
JMP PULS1;
JMP PULS0;

180D
180E
180F
1810

PULS1: XNOR IOM ;


SKZ ;
JMP PULS0;
STOC OM ;

1811
1812
1813
1814
1815
1816
1817
1818
1819
181A
181B
181C
181D

IOD ;
FULL: LD
AND IO A ;
SKZ ;
JMP INIT
INCR: LDC IO A ;
STO O A ;
SKZ ;
JMP FINISH;
LDC IOB ;
STO OB ;
SKZ ;
JMP FINISH;
LDC IOC ;

181E
181F
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
182A
182B

rol de locaie RAM


Detectare frontului cresctor,
verificnd pentru starea curent I0 =1,
dac starea anterioar, citit din
OM prin IOM , este 0.
RR IOM = RR OM

La ncrcare maxim, salt la


adresa INIT.

Incrementare numrtor, bitul de


transport emis fiind n starea
logic 0.

STO OC ;
JMP FINISH;
LDC IOD ;
STO OD ;
ILOW ;
FINISH: LD
STO OCY ;
JMP CYCLE;
ILOW ;
INIT: LD
Anulare numrtor i
STO O A ;
emitere impuls de transport.
STO OB ;
STO OC ;
STO OD ;
STOC OCY ;
JMP FINISH;
END ;
Sfrit program.
2

Durata constant a programului se obine prin urmtoarea organigram ce folosete


pseudosaltul cu instruciunea OEN:
START
DIV10:

I0
=

RR I0
(
RR

CYCLE:

I0

OEN IRR ( = )
I0
O

RR ( =

= 0)

I0
I0 = I
O
=
RI R
R
IR
N
R E R
R O R
(
(

RR

M1
MO =
I
O =
I0
I
=
R
RI
IR
IR
N
R E M
R O O

Detectare front cresctor

RR I0

(=

RR (
(

N
E
O

INIT:

R
R

FULL:

RR
OA ,..,OD RR ( = 0)
OCY IRR ( = 1)
RR IRR ( = 0)
OCY IRR ( = 0)
I

N
E
O

INCR:

RR
OD...OA + 1
FINISH:

OCY IRR ( = 0)

STOP

Adres (H) Etichet: Simbolizare;


Comentarii
ORG 18.07H ; DIV10=18.07H
I0 ;
ncrcare I0 anterior pe ieirea OM cu
1807
DIV10: LD
1808

STO OM ;

1809

CYCLE: LDC I0 ;
OEN IRR ;

180A
180B
180C

rol de locaie RAM


Detectarea frontului cresctor,
verificnd pentru starea curent I0 =1,

STOC OM ;
LDC IRR ;

dac starea anterioar, citit din


OM prin IOM , este 0.

180D

OEN IRR ;

RR IOM = RR OM

180E

XNOR IOM ;

180F
1810
1811
1812

OEN IRR ;

1813
1814
1815
1816
1817
1818
1819
181A
181B
181C

IOD ;
FULL: LD
AND IO A ;
INIT: OEN IRR ;

La ncrcare maxim, iniializare numrtor de la adresa INIT.

STOC O A ;
STOC OB ;
STOC OC ;
STOC OD ;
STO OCY ;
LDC IRR
STOC OCY ;
INCR: OEN IRR ;
LD
IO A ;

Incrementare numrtor, bitul de


transport emis fiind n starea

181E

STOC OA ;
XNOR IO A ;

181F

LDC

1820

OEN IRR ;

1821

LD

1822

STOC OB ;

1823

XNOR IOB ;

1824

LDC

1825

OEN IRR ;

Anulare numrtor i

1826

LD

emitere impuls de transport.

1827

STOC OC ;

1828

XNOR IOC ;

1829

LDC

182A

OEN IRR ;

182B

LD

181D

logic 0.

IRR ;
IOB ;

IRR ;
IOC ;

IRR ;
IOC ;
4

Adres (H) Etichet: Simbolizare;


STOC OC ;
JMP CYCLE;
END ;

Comentarii

Sfrit program.

Observaie
Ieirea cu adresa OM este folosit ca locaie RAM de un bit pentru memorarea strii
anterioare a semnalului I0 . Aceast locaie RAM are adresa de scriere OM i adresa de
citire IOM .
Teme
1. S se determine din program durata maxim a impulsului de transport, tiind c
durata de efectuare a unei instruciuni este de 1 sec.
2. S se refac programul cu detectarea frontului cresctor al impulsului de
prelucrat prin operare logic ntre strile curent i anterioar.
3. S se refac programul pentru numrarea prin incrementare a fiecrui front
descresctor.
4. S se refac programul pentru numrarea prin decrementare a fiecrui front
descresctor.

APB cu circuite integrate CMOS i stiv de o locaie

RESET

PRESET

PC
(counter)

CLK

PC (12bits)=3MMC 4516
EPROM= Intel 2716 (2kB)
BUFFERSP =MMC 4508

12=4b(1/2)+8(2/2) = A 0 ..A11

BUFFER A =MMC 4508


CPU=MMC 4500
INPUT=MMC 4051
OUTPUT=MMC 4599

12

BUFFER SP

T/2
OE
.

CE

LDSP

EPROM
D0 ..D7

CESP

8(1/2)
4b(1/2)

CPU
CONTROL
BUS (= CLK,
FLO, FLF, WR,
JMP, RTN)

LD A =CLK
RESET

t
CLK

BUFFER A

4a(1/2)

8(2/2); A 0 ..A 7

T/2

CLK

ADDRESS BUS

A 0 ..A11

4b(1/2)
A 8 ..A11

CEA
3(1/2)
A 8 , A9 , A10

A11

PCPC+1

a0

a1

a2

a3

WR

IN j
Interfaces
Selection
OUTi

CDB 442

DATA
BUS

INH

INPUT
x2
8

TIMER
x2

OUTPUT
x2

W/ R = WR

WD=CLK
CE

Fig.1 APB cu stiv de o locaie


n sistemul de comand APB din fig.1, adresarea memoriei EPROM se face cu
numrtorul binar PC, memoria stiv este dintr-o singur locaie (format cu registrul
BUFFERSP ), memoria EPROM este organizat pe locaii din 8 bii, instruciunile sunt
codificate pe un octet (cu excepia instruciunilor de ramificare prin salt i prin apel ce sunt
codificate pe cte doi octei), fiecare instruciune este efectuat ntr-o perioad a tactului
CLK care piloteaz sistemul, iar ramificarea prin apel se realizeaz prin instruciunea:
NOP0 addr .
Codificarea n binar a unei instruciuni conine cmpul mnemonic, format din cei 4 bii
de pondere maxim, ce codific operaia de efectuat n instruciune i cmpul adres ce
conine adresa necesar n instruciune, format din urmtorii 4 bii la instruciunile
codificate pe un octet i din urmtorii 12 bii la instruciunile codificate pe doi octei, adres
ce se transfer pe address bus. La nceputul fiecrei semiperioade a tactului CLK se
citete cte un octet al instruciunii de executat, ce apare la ieirile de date D0 ..D7 ale
memoriei EPROM, fapt ce impune memorarea celor 4 bii de adres din primul octet al
1

unei instruciuni, ntr-un registru tampon BUFFER A , ceilali 8 bii de adres din al doilea
octet al instruciunii fiind meninui pe liniile A0 ..A7 de pe address bus la care sunt
conectate ieirile de date D0 ..D7 ale memoriei EPROM.
Sistemul de comanda APB cu stiv de o locaie, prezentat in fig.1, poate fi realizat n
urmtoarele variante:
a) APB cu stiv de o locaie avnd 16 intrri i 16 ieiri
n acest caz selecia i comanda circuitelor de interfa se face cu urmtoarele
semnale:
W / R ( = Write / Re ad)= WR( = Write) ; WD (=Write Disable) = CLK

CE2 ( = Chip Enable) = (WR = 1) (A11 = 0) = WR A11


CE1 ( = Chip Enable) = (WR = 1) (A11 = 1) = WR A11
INH1 ( = Inhibit ) = (WR = 0) (A11 = 1) (CLK = 1) = WR A11 CLK = WR + A11 CLK
INH2 ( = Inhibit ) = (WR = 0) (A11 = 0) (CLK = 1) = WR A11 CLK = WR + (A11 + CLK) ,
logica de selecie a circuitelor de interfa fiind prezentat n fig.2.
CE1

WR
INH1

WR
A11

CE2

A11
WR

A11
CLK

WR

INH2

A11

A11
CLK

Fig.2 Generarea semnalelor de selecie a circuitelor de interfa


Observaie
Conectnd ntre ele 8 ieiri cu 8 intrri ale automatului se formeaz o memorie RAM
(=memorie temporar) cu 8 locaii din bistabilele celor 8 ieiri, fiecare locaie avnd o
adres de ieire prin care-i nscris i o adres de intrare prin care-i citit. n acest caz
automatul APB va avea 8 intrri, 8 ieiri i o memorie RAM din 8 locaii.
b) APB cu stiv de o locaie avnd 16 intrri, 16 ieiri i selecie decodificat a
circuitelor de interfa
n acest caz selecia circuitelor de interfa se face cu circuitul CDB 442, ce este un
decodor 1 din 10, aa cum se arat n fig.1.
Observaii
- Conectnd ntre ele 8 ieiri cu 8 intrri ale automatului se formeaz, din bistabilele
celor 8 ieiri, o memorie temporar cu 8 locaii, fiecare locaie avnd o adres de ieire
prin care-i nscris i o adres de intrare prin care-i citit. n acest caz automatul APB va
avea 8 intrri, 8 ieiri i o memorie RAM din 8 locaii.
- Ca memorie temporar se poate folosi un circuit de memorie RAM selectat cu
semnalul CE generat ca n fig.3, automatul avnd 8 intrri i 8 ieiri.
- Automatul APB cu 16 intrri i 16 ieiri poate fi completat i cu dou circuite de
temporizare, a cror declanare s se fac cu o instruciune
NOPF addr,
cmpul de adres addr coninnd A11 = 1 pentru un temporizator i A11 = 0 pentru
cellalt temporizator, decodorul de selecie CDB 442 fiind conectat ca n fig.4.

WR

A11

FLF

a3 a2 a1 a0
CDB 442
9 8
1 0

0 WR A11

a3

a2 a1 a0
CDB 442
9 8 3 2 1 0

IN1

OUT1

TIMER OUT IN j
i

CE
(RAM memory)
Fig.3

Fig.4

Pentru efectuarea instruciunilor de ramificare, funcionarea sincronizat a circuitelor


PC, BUFFERSP , BUFFERA i EPROM, necesit un bloc de comand ce s genereze
semnalele CLK , PRESET (=PR), LDSP , CESP , LDA , CE A , OE , a cror forme de und
sunt reprezentate n fig.5. Blocul de comand va fi sintetizat cu o linie de ntrziere ce s
menin frecvena de 1 MHz a tactului CLK.
PCPC+1
t

CLK

CLK
RTN, JMP, NOP0

OE,CE A (=0 la JMP i NOP0)


CESP (=1 la JMP i NOP0)
PR (RTN, JMP, NOP0)

RTN
LDA

JMP

NOP0
LDSP

t= timp de propagare

Fig.5 Semnale pentru efectuarea instruciunilor de ramificare


Observaii
1. n formele de und din fig.5 pe durata efecturii instruciunilor de salt i de apel
memoria EPROM i registrul de stiv BUFFERSP sunt comandate cu semnalele:

CESP =1 ; OE,CE A =0.


2. n a doua semiperioad a efecturii instruciunii de apel NOPO addr., adresa celui
de al doilea octet al instruciunii de apel va fi salvat n registrul de stiv BUFFERSP ca
adres de revenire, a crei incrementare cu 1 se va realiza la efectuarea instruciunii de
revenire RTN, prin preluarea adresei de revenire, din registrul de stiv, n circuitul
numrtor de adrese PC, n prima semiperioad a efecturii instruciunii de revenire.
Pe baza formelor de und a semnalelor necesare pentru comanta efecturii fiecrei
instruciuni de ramificare s-au obinut circuitele de comand din fig.6, fig.7 i fig.8, n care
semnalele generate n prima semiperioad a tactului CLK sunt notate cu 1/2, iar cele
generate n a doua semiperioad sunt notate cu 2/2.
3

CLK
JMP

PR(2/2)

Fig.6 - COMANDA pentru ramificare prin salt (=jump)

LDSP (2 / 2)

CLK
FL0

PR(2/2)

Fig.7 - COMANDA pentru ramificare prin apel (=call)

OE,CE(1/ 2..2 / 2)
RTN
PR(1/2)

CLK

CESP (1/ 2..2 / 2)


Fig.8 - COMANDA pentru ramificare prin revenire (=return)
Prin reunirea celor trei scheme de comand pe o aceeai linie de ntrziere se obine
schema final de comand din fig.9, care astfel rezult mai simpl.
RTN

OE,CE A (1/ 2...2 / 2)

CLK
FLO
t

LDSP (2 / 2)

CESP (1/ 2...2 / 2)


t
PR
(1/2..2/2)

CLK
JMP
CLK

LDA (1/ 2)

CLK

CLK
LDA (1/ 2)

CLK
Fig.9 - SCHEMA FINAL cu linie de ntrziere
4

APB cu circuite integrate CMOS, stiv de o locaie i doi octei pe instruciune


PRESET

PC
(counter)

CLK

I0 ..I11

O0 ..O11
12

12

CLK = A 0 11

O0 ..O9

LDSP

D0 ..D7

BUFFER A =MMC 4508


CPU=MMC 4500
INPUT=MMC 4051
OUTPUT=MMC 4599

12

CESP

EPROM

CE

12=4b(1/2)+8(2/2) = A 0 ..A11

BUFFER SP

A1..A10

OE

PC=3MMC 4516
EPROM= Intel 2716 (2kB)
BUFFERSP =MMC 4508

ADDRESS BUS

RESET

8(2/2)= A 0 ..A 7

T/2

CLK

T/2

t
CLK

8(1/2)
O

BUFFER A

4a(1/2)

4b(1/2)

CPU

LD A =CLK
RESET

CONTROL
BUS (= CLK,
FLO, FLF, WR,
JMP, RTN)

4b(1/2)
A 8 ..A11

CEA
3(1/2)
A 8 , A9 , A10

A11

a0

a1

a2

a3

WR

PCPC+1

IN j
Interfaces
Selection
OUTi

CDB 442

DATA BUS

INH

INPUT
x2
8

TIMER
x2

OUTPUT
x2

W/ R = WR

WD=CLK
CE

Fig.1 APB cu stiv de o locaie


n sistemul de comand APB din fig.1, adresarea memoriei EPROM se face cu
numrtorul binar PC, memoria stiv este dintr-o singur locaie (format cu registrul
BUFFERSP ), memoria EPROM este organizat pe locaii din 8 bii, instruciunile sunt
codificate pe cte doi octei fiecare instruciune este efectuat ntr-o perioad a tactului
CLK care piloteaz sistemul, iar ramificarea prin apel se realizeaz prin instruciunea:
NOP0 addr .
Codificarea binar pe doi octei a unei instruciuni conine cmpul mnemonic, format
din cei 4 bii de pondere maxim, ce codific operaia de efectuat n instruciune i cmpul
adres ce conine adresa necesar n instruciune, format din urmtorii 12 bii ce se
depun pe magistrala de adrese (=address bus). La nceputul primei semiperioade a
tactului CLK se citesc cei doi octei ai instruciunii de executat, ce apar succesiv la ieirile
de date D0 ..D7 ale memoriei EPROM, fapt ce impune memorarea celor 4 bii de adres
din primul octet al unei instruciuni, ntr-un registru tampon BUFFER A , ceilali 8 bii de
adres din al doilea octet al instruciunii fiind meninui pe liniile A0 ..A7 de pe address bus
1

la care sunt conectate ieirile de date D0 ..D7 ale memoriei EPROM.


Pentru citirea rapid a ambilor octei ai unei instruciuni de executat, memoria
EPROM este adresat cu A0 = CLK , primul octet, coninnd 4 bii de codificare a
instruciunii i cei 4 bii de pondere maxim ai adresei din instruciune, fiind citit pe frontul
cztor al tactului CLK, iar al doilea octet, coninnd cei 8 bii de pondere minim ai
adresei, aprnd dup un interval t (=timpul de propagare prin poarta de complementare
a tactului CLK), cnd CLK = 1.
Sistemul de comanda APB cu stiv de o locaie, prezentat in fig.1, poate fi realizat n
urmtoarele variante:
a) APB cu stiv de o locaie avnd 16 intrri i 16 ieiri
n acest caz selecia i comanda circuitelor de interfa se face cu urmtoarele
semnale:
W / R ( = Write / Re ad)= WR( = Write) ; WD = CLK

CE2 ( = ChipEnable) = (WR = 1) (A11 = 0) = WR A11


CE1( = ChipEnable) = (WR = 1) (A11 = 1) = WR A11
INH1 ( = Inhibit ) = (WR = 0) (A11 = 1) (CLK = 1) = WR A11 CLK = WR + A11 CLK
INH2 ( = Inhibit ) = (WR = 0) (A11 = 0) (CLK = 1) = WR A11 CLK = WR + (A11 + CLK) ,
logica de selecie a circuitelor de interfa fiind prezentat n fig.2.
CE1

WR
INH1

WR
A11

CE2

A11
WR

A11
CLK

WR

INH2

A11

A11
CLK

Fig.2 Generarea semnalelor de selecie a circuitelor de interfa


Observaie
Conectnd ntre ele 8 ieiri cu 8 intrri ale automatului se formeaz o memorie RAM
(=memorie temporar) cu 8 locaii din bistabilele celor 8 ieiri, fiecare locaie avnd o
adres de ieire prin care-i nscris i o adres de intrare prin care-i citit. n acest caz
automatul APB va avea 8 intrri, 8 ieiri i o memorie RAM din 8 locaii.
b) APB cu stiv de o locaie avnd 16 intrri, 16 ieiri i selecie decodificat a
circuitelor de interfa
n acest caz selecia circuitelor de interfa se face cu circuitul CDB 442, ce este un
decodor 1 din 10, aa cum se arat n fig.1.
Observaii
- Conectnd ntre ele 8 ieiri cu 8 intrri ale automatului se formeaz, din bistabilele
celor 8 ieiri, o memorie RAM (=memorie temporar) cu 8 locaii, fiecare locaie avnd o
adres de ieire prin care-i nscris i o adres de intrare prin care-i citit. n acest caz
automatul APB va avea 8 intrri, 8 ieiri i o memorie RAM din 8 locaii.
- Ca memorie temporar se poate introduce un circuit de memorie RAM, a crui
selecie se face prin semnalul CE generat ca n fig.3.
- Automatul APB cu 16 intrri i 16 ieiri poate fi completat i cu dou circuite de

temporizare, a cror declanare s se fac cu o instruciune


NOPF addr ,
cmpul de adres addr coninnd A11 = 1 pentru un temporizator i A11 = 0 pentru
cellalt temporizator, decodorul de selecie CDB 442 fiind conectat ca n fig.4.
WR

A11

FLF

a3 a2 a1 a0
CDB 442
9 8
1 0

0 WR A11

a3

a2 a1 a0
CDB 442
9 8 3 2 1 0

IN1

OUT1

TIMER

CE
(RAM memory)
Fig.3

OUTi IN j

Fig.4

Pentru efectuarea instruciunilor de ramificare, funcionarea sincronizat a circuitelor


PC, BUFFERSP , BUFFERA i EPROM, necesit un bloc de comand ce s genereze
semnalele CLK , PRESET (=PR), LDSP , CESP , LDA , CE A , OE , a cror forme de und
sunt reprezentate n fig.5. Blocul de comand va fi sintetizat cu o linie de ntrziere ce s
menin frecvena de 1 MHz a tactului CLK.
PCPC+1
t

CLK

CLK
RTN, JMP, NOP0

OE,CE A (=0 la JMP i NOPO)


CESP (=1 la JMP i NOPO)
RTN

PR (RTN, NOP0, JMP)


LDA

JMP

NOP0

LDSP
t= timp de propagare

Fig.5 Semnale pentru efectuarea instruciunilor de ramificare


Observaii
1. n formele de und din fig.5 pe durata efecturii instruciunilor de salt i de apel
memoria EPROM i registrul de stiv BUFFERSP sunt comandate cu semnalele:

CESP =1 ; OE,CE A =0.


2. n prima semiperioad a efecturii instruciunii de apel NOPO addr., adresa
primului octet al instruciunii de apel va fi salvat n registrul de stiv BUFFERSP ca
adres de revenire, a crei incrementare cu 1 se va efectua pe durata efecturii
instruciunii de revenire RTN, cnd adresa de revenire este preluat, din registrul de stiv,
n circuitul numrtor de adrese PC, n prima semiperioad a tactului CLK.
3

Pe baza formelor de und a semnalelor necesare pentru comanta efecturii fiecrei


instruciuni de ramificare s-au obinut circuitele de comand din fig.6, fig.7 i fig.8, n care
semnalele generate n prima semiperioad a tactului CLK sunt notate cu 1/2, iar cele
generate n a doua semiperioad sunt notate cu 2/2.
CLK
JMP

PR(2/2)

Fig.6 - COMANDA pentru ramificare prin salt (= jump)

LDSP (1/ 2)

CLK
FL0

PR(2/2)

Fig.7 - COMANDA pentru ramificare prin apel (=call)

OE,CE(1/ 2..2 / 2)
RTN
PR(1/2)

CLK

CESP (1/ 2..2 / 2)


Fig.8 - COMANDA pentru ramificare prin revenire (=return)
Prin reunirea celor trei scheme de comand pe o aceeai linie de ntrziere se obine
schema final de comand din fig.9, care astfel rezult mai simpl.
RTN

OE,CE A (1/ 2...2 / 2)

CLK
CLK

LDSP (1/ 2)

CESP (1/ 2...2 / 2)

PR
(1/2,2/2)

FLO
CLK
JMP

CLK

CLK
LDA (1/ 2)

Fig.9 - SCHEMA FINAL cu linie de ntrziere


4

CONTROLUL TRAFICULUI NTR-O INTERSECIE

Direcia
N-S

Direcia
LEFT

Direcia
E-V

Fig.1 Organizarea traficului n intersecie

Intersecia este format dintr-o cale N-S cu trafic intens i o cale E-V de asemenea
cu trafic intens. Calea N-S mai prezint un sens la stnga, notat L(=LEFT), pentru
vehicolele care vireaz pe calea E-V. Programul de control al traficului n intersecie are
posibilitatea stabilirii unor timpi variabili pentru culoarea verde de pe direciile N-S i E-V
n funcie de intensitatea traficului. Informaia de intensitate a traficului de pe o cale este
compus din doi bii generai traductoare inductive de trafic. Celor patru posibiliti de
intensitate a traficului de pe o cale le corespund pentru culoarea verde duratele de 15sec,
20 sec, 25sec i 30 sec.
Automatul de control al traficului n intersecie poate funciona n modul manual,
cnd direcia pe care se stabilete culoarea verde este aleas prin acionarea manual a
unuia din ntreruptoarele NS, EV sau LEFT, ori n modul automat cnd aceste
ntreruptoare sunt neacionate. Prioritar este deci modul manual de funcionare.
n modul automat, cererile de prioritate a circulaiei pe cele trei direcii sunt solicitate
cu butoanele RQLEFT, RQNS i RQEV, indicate n ordinea deservirii, o cerere de
prioritate fiind tratat o singur dat ntr-un ciclu program, dar la nceputul ciclului.
Diagrama interseciei este reprezentat n fig.1, iar modul de alocare a intrrilor i
ieirilor automatului programabil cu prelucrare pe bit, prin care se controleaza traficul n
intersecie, este indicat n tabelul 1.
Observaie
n automatul programabil cu prelucrare pe bit (APB), folosit n dirijarea traficului n
intersecie, nefiind memorie RAM, s-au realizat trei locaii RAM de cte un bit cu ieirile
1

ORQLEFT , ORQNS , ORQEV conectate respectiv la intrrile IORQLEFT , IORQNS , IORQEV ,


informaia fiind nscris n bistabilele ieirilor cu instruciunile STO i STOC, i citit cu
instruciunile LD i LDC prin intrrile la care ieirile folosite ca memorie sunt conectate.
Tabelul 1
BII I/O
ILEFT
INS

ROL
Cerere mod manual pe direcia LEFT
Cerere mod manual pe direcia NS

IEV
INS0

Bit rang 0 de intensitate trafic pe direcia NS

INS1

Bit rang 1 de intensitate trafic pe direcia NS

IEV 0

Bit rang 0 de intensitate trafic pe direcia EV

IEV1
ITIMER
IRQLEFT

Bit rang 1 de intensitate trafic pe direcia EV


Semnal de sfrit al oricrei temporizri
Cerere prioritate pe direcia LEFT, n mod automat

IRQNS

Cerere prioritate pe direcia NS, n mod automat

IRQEV
IORQLEFT

Cerere prioritate pe direcia EV, n mod automat


Bit de citire a locaiei RAM cu adresa ORQLEFT

IORQNS

Bit de citire a locatiei RAM cu adresa ORQNS

IORQEV

Bit de citire a locaiei RAM cu adresa ORQEV

ORQLEFT

Ieire ca locaie RAM de memorare a intrrii IRQLEFT

ORQNS

Ieire ca locaie RAM de memorare a intrrii IRQNS

ORQEV

Ieire ca locaie RAM de memorare a intrrii IRQEV

OLEFTX
OLEFT!
OLEFT

Rou (=X) pe direcia LEFT


Galben (=! atenie) pe direcia LEFT

ONSX

Rou (=X) pe direcia NS

ONS!

Galben (= ! atenie) pe direcia NS

ONS

Verde (= sgeat ) pe direcia NS

OEVX
OEV!
OEV

Rou (=X) pe direcia EV

O5 sec

O15 sec

Ieire declanare TIMER pentru 5 sec


Ieire declanare TIMER pentru 15 sec

O20 sec

Ieire declanare TIMER pentru 20 sec

O25 sec

Ieire declanare TIMER pentru 25 sec

O30 sec

Ieire declanare TIMER pentru 30 sec

Cerere mod manual pe direcia EV

Verde ( = ) pe direcia LEFT

Galben (= ! atenie) pe directia EV


Verde (= sgeat ) pe direcia EV

Programul aplicaiei de semaforizare are urmtoarea form :

Etichet:

Simbolizare ;

ORG 18.00H ;
ILOW ;
STOP : LD
STO OLEFTX ;

Comentarii
Descriere sintetic
Nr. locaii 18.00H
RR (ILOW ) =0

Explicaii
Adres primul cuvnt
Blocare intersecie

STO

OLEFT ! ;

(OLEFTX ) RR
(OLEFT! ) RR

STO

OLEFT ;

(OLEFT ) RR

=18.00H reprezint

STOC ONSX ;

(ONSX ) RR

titlul programului).

STO

ONS! ;

(ONS! ) RR

STO

ONS ;

(ONS ) RR

STOC OEVX ;

(OEVX ) RR
(OEV! ) RR
(OEV ) RR

STO
STO

OEV! ;
OEV ;

(O5 sec ) RR

STOC O5 sec ;
NOPO
STO O5 sec ;

(O5 sec ) RR

ITIMER ;

RR (ITIMER )

;
LOOP ;
ILEFT ;

PC LOOP

LOOP: LDC
SKZ
JMP
LEFT: LDC

SKZ ;
JMP NS ;
STO OLEFTX ;
STOC OLEFT ;

ILEFT ;
LOOPL: LD
SKZ ;
JMP
LOOPL;
STO OLEFT ;
STOC OLEFTX ;
JMP END ;
NS: LDC INS ;
SKZ ;
JMP EV ;
STO ONSX ;
STOC ONS ;
INS ;
LOOPNS: LD
SKZ ;
JMP LOOPNS;
STO ONS ;
STOC ONSX ;
JMP

END ;

prin rou peste tot.


(eticheta STOP =

Meninere rou 5 sec.

RR (ILEFT )

La cerere n mod

PC NS
( OLEFTX ) RR

manual pe direcia
LEFT, se comand
verde pe direcia
LEFT, iar dac nu

(OLEFT ) RR

RR (ILEFT )
PC LOOPL
(OLEFT ) RR
(OLEFTX ) RR
PC END

exista cerere n mod


manual pentru LEFT,
se face salt la NS.
Dup cerere pe
direcia LEFT, rou 5

RR (INS )

sec.
La cerere n mod

PC EV
(ONSX ) RR

manual n direcia
NS, verde n
directia NS, iar dac

(ONS ) RR

nu exist cerere n

RR (INS )

mod manual salt la


EV

PC LOOPNS
(ONS ) RR

(ONSX ) RR
PC END

Dup cerere pe
direcia NS, rou 5
sec.

Etichet:

Simbolizare ;

IEV ;
EV: LDC
SKZ ;
JMP
END ;
STO
OEVX ;
STOC OEV ;

IEV ;
LOOPEV: LD
SKZ ;
JMP LOOPEV;
STO
OEV ;
STOC OEVX ;
END: STOC O5 sec ;
NOPO ;
STO O5 sec ;
NOPF TEST ;
IRQLEFT ;
RQ: LD

Comentarii
Descriere sintetic
RR (IEV )

PC END
(OEVX ) RR
(OEV ) RR

RR (IEV )
PC LOOPEV
(OEV ) RR

Explicaii
La cerere n mod
manual n direcia
EV, verde n
direcia EV, iar dac
nu exist cerere n
mod manual pe
direcia EV, atunci
rou (5 sec) pe
direcia EV.

(OEVX ) RR

(O5 sec ) RR

Temporizare timp
de 5 sec.

(O5 sec ) RR
CALL TEST
RR (IRQLEFT )

Memorarea cererilor

STO ORQLEFT ;

(ORQLEFT ) RR

din modul automat, n

LD

RR (IRQNS )

memoria imagine de

STO ORQNS ;

(ORQNS ) RR

intrare, unde o locaie

LD

RR (IRQEV )

e format pe o ieire

(ORQEV ) RR

conectat la o intrare.

RR (IORQLEFT )

Deservirea, la nceput

CALL LAUT
RR (IORQNS )

de ciclu, a cererilor
de prioritate n modul
automat, n ordinea:

IRQNS ;
IRQEV ;

STO ORQEV ;
RQAUT: LD IORQLEFT ;
SKZ ;
NOPF LAUT ;
LD
IORQNS ;
SKZ ;
NOPF NSAUT ;
LD
IORQEV ;
SKZ ;
NOPF EVAUT ;
ALLAUT: LDC IRQLEFT ;
SKZ ;
NOPF LAUT ;
LDC IRQNS ;
SKZ ;
NOPF NSAUT ;
LDC IRQEV ;
SKZ ;
NOPF EVAUT ;
JMP STOP ;
LAUT: LDC ILOW ;

LEFT, NS, EV.

CALL NSAUT
RR (IRQEV )
CALL EVAUT

RR (IRQLEFT )

Se completeaz

CALL LAUT
RR (IRQNS )

ciclul n curs cu
celelalte direcii.
n lipsa cererilor de

CALL NSAUT
RR (IRQNS )

prioritate pentru
mod automat, ciclul
se desfoara n

CALL EVAUT
PC STOP

RR (ILOW )

ordinea: LEFT, NS,


EV.
Galben 5 sec pe

Etichet:

Simbolizare ;
STO O5 sec ;
NOPO ;
STOC O5 sec ;

Comentarii
Descriere sintetic
(O5 sec ) RR

Explicaii
direcia LEFT.

(O5 sec ) RR

STO OLEFT! ;
NOPF TEST ;
LD
ILOW ;

(OLEFTX ) RR
(OLEFT! ) RR
CALL TEST
RR (ILOW )

Verde 20 sec pe

STOC O20 sec ;

(O20 sec ) RR

direcia LEFT i apoi

STOC OLEFTX ;

NOPO ;
STO O20 sec ;
STO OLEFT! ;
STOC OLEFT ;

(O20 sec ) RR
(OLEFT! ) RR
(OLEFT ) RR

NOPF TEST ;
LD
ILOW ;

CALL TEST
RR (ILOW )

STO

OLEFT ;

(OLEFT ) RR

STOC OLEFTX ;

(OLEFTX ) RR

STOC O5 sec ;

(O5 sec ) RR

NOPO
STO
JMP
NSAUT: LDC

;
O5 sec ;
TEST ;
ILOW ;

STO O5 sec ;
NOPO ;
STOC O5 sec ;
STOC ONSX ;
STO
NOPF
LDC

ONS! ;
TEST ;
INS0 ;

5 sec rou peste tot.

(O5 sec ) RR
PC TEST

RR (ILOW )

Galben 5 sec pe

(O5 sec ) RR

direcia NS.

(O5 sec ) RR
(ONSX ) RR
(ONS! ) RR
CALL TEST

RR (INS0 )

Testarea gradului de

ANDC INS1

RR RR (INS1)

ocupare a direciei

SKZ ;
JMP NS15 ;
LD
INS0 ;

PC NS15
RR (INS0 )

ANDC INS1 ;

RR RR (INS1)

SKZ ;
JMP NS20 ;
LDC INS0 ;

PC NS20
RR (INS0 )

AND INS1 ;
SKZ ;

NS prin biii NS0 i


NS1.

RR RR (INS1)

Etichet:

Simbolizare ;

JMP NS25 ;
NS30: STOC O30 sec ;
NOPO ;
STO O30 sec ;
JMP ENDNS;
NS15: STO O15 sec ;
NOPO ;
STOC O15 sec ;

Comentarii
Descriere sintetic
PC NS25

Explicaii

(O30 sec ) RR

Temporizare 30 sec

(O30 sec ) RR
PC ENDNS
(O15 sec ) RR

pe direcia NS

Temporizare 15 sec
pe direcia NS

(O15 sec ) RR

JMP
NS20: STO
NOPO
STOC

ENDNS;
O20 sec ;
;
O20 sec ;

(O20 sec ) RR

JMP
NS25: STO
NOPO
STOC

ENDNS;
O25 sec ;

PC ENDNS
(O25 sec ) RR

Comand

(O25 sec ) RR

temporizator pentru
25 sec pe direcia NS

;
O25 sec ;

PC ENDNS
(O20 sec ) RR

Temporizare 20 sec
pe direcia NS

ONS! ;
ENDNS: STO
STOC ONS ;

(ONS! ) RR

Verde pe direcia NS

(ONS ) RR

pe durata comandat.

NOPF TEST ;
LD
ILOW ;

CALL TEST
RR (ILOW )

Dup verde, rou

STOC O5 sec ;
NOPO ;
STO O5 sec ;

(O5 sec ) RR

5 sec pe direcia NS.

STO

(ONS! ) RR

ONS! ;

STOC ONSX ;
JMP
EVAUT: LDC

TEST ;
ILOW ;

STO
O5 sec ;
NOPO ;
STOC O5 sec ;
STOC OEVX ;
STO
NOPF
LDC

OEV! ;
TEST ;
IEV 0 ;

(O5 sec ) RR

(ONSX ) RR
PC TEST

RR (ILOW )

Galben 5 sec pe

(O5 sec ) RR

direcia EV.

(O5 sec ) RR
(OEVX ) RR
(OEV! ) RR
CALL TEST

RR (IEV0 )

Testarea gradului de

ANDC IEV1 ;

RR RR (IEV1)

ocupare a direciei

SKZ ;
JMP EV15 ;
LD
IEV 0 ;

PC EV15
RR (IEV 0 )

EV prin biii EV0 i


EV1.

Etichet:

Simbolizare ;
ANDC
SKZ ;
JMP
LDC

AND
SKZ ;
JMP
EV30: STOC

IEV1 ;

RR RR (IEV1)

EV20 ;
IEV 0 ;

PC EV20
RR (IEV0 )

IEV1 ;

RR RR (IEV1)

EV25 ;
O30 sec ;

PC EV25

NOPO ;
STO O30 sec ;
JMP ENDEV;
EV15: STO O15 sec ;
NOPO ;
STOC O15 sec ;
JMP
EV20: STO
NOPO
STOC

Comentarii
Descriere sintetic

ENDEV;
O20 sec ;
;
O20 sec ;

JMP ENDEV;
EV25: STO O25 sec ;
NOPO ;
STOC O25 sec ;
ENDEV: STO OEV! ;
STOC OEV ;
NOPF TEST ;
LD
ILOW ;

(O30 sec ) RR

(O30 sec ) RR
PC ENDEV
(O15 sec ) RR

Explicaii

Temporizare 30 sec
pe direcia EV

Temporizare 15 sec
pe direcia EV

(O15 sec ) RR
PC ENDEV
(O20 sec ) RR

Temporizare 20 sec
pe direcia EV

(O20 sec ) RR
PC ENDEV
(O25 sec ) RR

Temporizare 25 sec
pe direcia EV

(O25 sec ) RR

(OEV! ) RR
(OEV ) RR

Verde pe direcia EV
pe durata comandat.

CALL TEST
RR (ILOW )

Dup verde, rou

STOC O5 sec ;
NOPO ;
STO O5 sec ;

(O5 sec ) RR

5 sec pe direcia EV.

STO OEV! ;
STOC OEVX ;

(OEV! ) RR

ITIMER ;
TEST: LD
SKZ ;
JMP TEST ;
LD
ILEFT ;
OR
INS ;
OR
IEV ;
SKZ ;
JMP STOP ;

(O5 sec ) RR
(OEVX ) RR

RR (ITIMER )
PC TEST
RR (ILEFT )
RR RR + (INS )

Cu subrutina TEST
se face testare
TIMER i apoi
testarea cererilor n
mod manual.

RR RR + (IEV )
PC STOP

Etichet:

Simbolizare ;
RET ;
END ;

Comentarii
Descriere sintetic
PC RTi

Explicaii
Sfritul programului

Tem
1. S se refac programul n sensul c virarea la dreapta pe o alt direcie s se fac
prin atenionare cu verde permanent pulsatoriu.
2. S se realizeze organigrama aplicaiei STOP.
3. S se refac programul n cazul unui APB cu memorie stiv de o locaie.

SUCCESIUNE STRICT DE COMENZI


Fie cazul unui motor de current continuu ce trebuie s porneasc numai dac
condiionrile logice sunt realizate n ordinea A, B, C impus de aplicaie. Motorul
este alimentat prin ntreruptorul K al unui releu R controlat cu ieirea OE a unui
automat de tip APB. Condiiile logice A, B, C sunt testate prin intrrile IA , IB i
respectiv IC ale automatului.
R
APB

IA

IB

Eex

Lex

OE

IRR

IC

Mcc

Testarea ordinii de realizare a condiionrilor logice A, B, C se face prin funcia


logic AND dup urmtoarea organigram:
START

()

STRICT:
RRf= IA IB IC

=0 h=?
=1

REPEAT:

f=?

=1

RR IC

=0
=0 I =?
C

RR IA

=1
=0

RRf= IA IB IC

IA =?
=1

RRg= IB IC

=0

f=?
=1

=1

OE 1

RRh= IA IB

STOP

g=?
=0

()
Programul dup organigram are eticheta STRICT, iar varianta cu pseudosalt
are eticheta STRING.

Etichet: Simbolizare;
ORG 00.00H;
STRICT: LD IA ;
AND IB ;

LOOP:

Comentarii
La 00.00H
RRf=
= IA IB IC

Etichet:

Simbolizare;
ORG 00.00H;
STRING: LD IA ;
AND IB ;

AND IC ;

AND IC ;

SKZ ;
Jump dac
JMP STRICT; f=1
LDC IA ;
RR IA
SKZ ;
Jump dac
JMP LOOP;
IA =0

LDC IRR ;
IEN IRR ;

LD IB ;
AND IC ;

RRg=
= IB IC

SKZ ;
Jump dac
JMP STRICT; IB IC =1
LD IA ;
AND IB ;

RRh=
= IA IB
Jump dac
h=0

LDC IRR ;
SKZ ;
JMP STRICT;
Jump dac
LD IC ;
SKZ :
IC =1
JMP STRICT;
RRf=
LD IA ;
AND IB ;
= IA IB IC
AND IC ;
LDC IRR ;
SKZ ;
JMP STRICT;
STOC OE ;
JMP STRICT;
END 00.00H;

Jump la
ciclu nou
dac f=0
OE 1
Ciclu nou
Sfrit
asamblare
i execuie
progam

Comentarii
La 00.00H
RRf=
= IA IB IC

AND IA ;
IEN IRR ;

RR f
IEN f
IEN=
=f IA

AND IB ;
AND IC ;

RR=
= IB IC

LDC IRR ;

RR

IEN IRR ;

IEN

IA ;
IB ;

RR=

AND
AND

= IA IB

IEN IRR ;

IEN

AND IC ;

RR=

IEN IRR ;

= IC

AND IA ;
AND IB ;

RR=f=
= IA IB IC

AND IC ;
IEN IRR ;

RR

STO OE ;

OE RR

ORC IRR ;
IEN IRR ;
JMP STRING;
END 00.00H;

RR1
IEN1
Ciclu nou
Sfrit
asamblare
i execuie
progam

TIMER dup forme de und


S se dezactiveze ieirea O2 dup secunde de la trecerea n 0 a intrrii I2 ,
folosind pseudosaltul.
Rezolvare
Diagrama de timp i programul acestei temporizri sunt date mai jos.
I2
0

O2
0

Etichet: Simbolizare ; Descriere sintetic


TIMER: LDC I2 ; Declanare temporizator prin ieirea OT dac
AND IQ ; IT = I2 IQ IT = 1 = test ncepere temporizare
2
2

ANDC IT

la ieire temporizator

STO

OT ;

OEN

IRR ;

Ieiri validate pentru scriere dac I2 IQ IT = 1


2
2

LDC

IT

Emite comanda Q2 =1 dac IT IO IQ = 1 ,


2
T
2
ce este testul logic de sfrit al temporizrii.

ANDC IO

;
;

AND

IQ

OEN

IRR ;

STO

Q2 ;

XNOR IRR ;
OEN

Valideaz ieirile prin OEN=1

IRR ;

1-1

MULTIPLEXOR 1 DIN 8
S se realizeze cu un PLA funcia de multiplexor 1 din 8 a circuitului integrat digital CDB
4151 descris prin urmtorul tabel de adevr :
S D0
1
0 0 0 0 D0
C

D1

D2

D3

D4

D5

D6

D7

y
0
D0

D0

D1

D1

D2

D2

D3

D3

y
1

D1

D2

D3

D4

D4

D4

D5

D5

D5

D6

D6

D6

D7

D7

D7

n tabelul de adevr S= intrare de selecie a circuitului activ pe 0 logic , iar C, B, A = bii de


adresare a intrrilor D j cu j = 0, 1, ... , 7
Rezolvare
Funcia logic de ieire a automatului combinaional multiplexor 1 din 8 este dat de relaia :

y( ) = S

=( 0 ,1 , 2 )B23
y ( ) =1

( C 2 B1 A0 D j = 210 ) = S C B A D0 + S C B A D1 +

+ S C B A D2 + S C B A D3 + S C B A D4 + S C B A D5 + S C B A D6 +
+ S C B A D7
n care fiecare intrare D j are cte un termen corespondent .

Fcnd notaiile :
not

S C B A D0 = P0
not

S C B A D1 = P1
not

S C B A D2 = P2
not

S C B A D3 = P3
not

S C B A D4 = P4
not

S C B A D5 = P5
not

S C B A D6 = P6
not

S C B A D7 = P7
generarea funciilor logice de ieire , y i y , determin pentru automatul combinaional
multiplexor 1 din 8 urmtoarea realizare cu PLA :

S
A
B
C
D0
D1

.....
D7

P0

P1

....

P7

y
1

SINTEZA CU PLS A UNUI NUMRTOR DIVIZOR CU 2


Funcionarea unui numrtor divizor cu 2 se descrie cu tabela i graful de fluen din fig.1

A=(X,Z,Y,f,g)=

x0 = CLK

y0

zj

z0

z1

z2

z3

z4 = z0

Fig. 1a - Tabela de funcionare a numrtorului divizor cu 2

0
0
z0

1
1

z1

0
1

z2

1
0

z3

0
1
0
1
0
1
1
0
Fig.1b - Graful de fluen al numrtorului divizor cu 2
La intrarea x0 se aplic impulsurile de numrat, iar rezultatul numrrii este generat pe bitul
de ieire g y0 ( x0 , z j ) = y0 , automatul fiind descris prin tabela de adevr i matricea de conexiuni de
mai jos :

f ( x0 , z j )
g y0 ( x0 , z j )

x0
zj

z0

z0
0

z1
1

z1

z2
1

z1
1

z2
1
z0
0

z3
0
z3
0

z2

z3

z0
z0
MC =

0
0

z1

1
1
1
1

z1

z2

z3

0
0

z2

z3

0
1
0
1
-

1
0
1
0

Mealy

Matricea de conexiuni evideniaz c nu exist compatibiliti n acest automat Mealy aflat


deja n form redus. Pentru ca automatul s nu aib hazard de codificare a strilor interne se
impune ca ntre codurile a dou stri interne implicate ntr-o tranziie s fie o diferen de un singur
bit, fapt ce se exprim prin urmtoarele relaii din care se obine codurile strilor interne :
z0 z1 = 0
z1 z2 = 1
z 2 z3 = 2

0 1 2 3 = 0

z3 z0 = 3

0 1 = 2 3

zi z j 0 , i j

zi z j 0 , i j

zi z j 0 , i j

a) 3 = 1 ; b)
2 = 0
a)

3 = 0 z1 z3 =0
1 = 2

z0 z1 = 0

z0 = impus

z1 z2 = 1

z0 = 00

z 2 z3 = 0

z1 = 0 z0
z2 = 1 0 z0

z3 z0 = 1

z3 = 1 z0

z1 = 01
z2 = 11

z3 = 10

Funciile de tranziie i de ieire ale automatului se obin din tabela de adevr astfel :

f ( x0 , z j )
g y0 ( x0 , z j )

x0
zj

z0 =00

z0 = 00
0

z1 = 01
1

z1 =01

z2 = 11
1

z1 = 01
1

z2 = 11
1
z0 = 00
0

z3 = 10
0
z3 = 10
0

z2 =11

z3 =10

x0
ab
00
01
11
10

0
0
1
0
1
1
0
1
f a ( x0 , z j )

0
1
1
1
1
0
0
0
f b ( x0 , z j )

0
1
1
0

1
1
0
0
g y0 ( x0 , z j )

not

f a ( x0 , z j ) = x0 a + x0 b = x0 a + x0 b + a b = P0 + P1 + P2
not

f b ( x0 , z j ) = x0 a + x0 b = x0 a + x0 b + a b = P3 + P1 + P4 = g y0 ( x0 , z j )

Realizarea automatului cu un circuit PLS ( = PLA + RS + RE ) este prezentat mai jos.

x0
a
b
P1

P0

P2

P3

P4

fb
fb

RS
0
1

R QN

fa
fa

RE
0
1

y0

R QN

Fig.1
Observaie
1. Ecuaia de funcionare a bistabilului R-S este stabilit astfel:

Qn +1 =

R
S
0
1

Qn

0
1

S = f
Qn + 1 = S + Qn R = f = ( 1 + Qn ) f = f + Qn f
R = f

2. La intrarea ntr-o stare interzis (diferit de strile automatului) numrtorul se reseteaz


automat n starea z0 = 00 .

SINTEZA CU CIRCUIT PLS A UNUI NUMRTOR DIVIZOR CU 3


Funcionarea unui numrtor divizor cu 3 se descrie, ca automat secvenial, cu tabela i
graful de fluen din fig.1.

A=f(X,Z,Y,f,g)=

x0

y0

y1

zj

z0

z1

z2

z3

z4

z5

z0

Fig.1a Tabela de funcionare a numrtorului divizor cu 3

z0

0
00

1
01

z1

0
01

0
00
1
10

z2

1
01

0
01

z3

0
10

z4

1
10

1
00

0
10

z5

1
00

Fig.1b Graful de fluen al unui numrtor divizor cu 3


Strile interne diferite ale automatului primesc cte o notaie distinct, urmnd a identifica
eventualele echivalene pentru identificarea formei reduse a automatului, form ce corespunde celei
mai simple realizri practice.
La intrarea x0 se aplic impulsurile de numrat , iar rezultatul numrrii este generat pe biii
de ieire y0 = bitul de pondere minim i y1 = bitul de pondere maxim , automatul fiind descris
prin tabela de adevr i matricea de conexiuni de mai jos n care:
g ( x0 , z j ) = g y1 ( x0 , z j ) g y0 ( x0 , z j ) = y1 y0
x0
zj
z0
z1

f ( x0 , z j )
g ( x0 , z j )

z2

z3
z4
z5

z0
00
z2
01

z1
01
z1
01

z2
01

z3
10

z4
10
z4
10
z0
00

z3
10
z5
00
z5
00

z0

0
00

z0

MC =

z1

1
01
1
01

z2

z3

z4

z5

0
01
0
01

z1

z2

z3

z4

z5

0
00

1
10
1
10

0
10
0
10
-

1
00
1
00

Mealy

Matricea de conexiuni evideniaz c nu exist compatibiliti n acest automat Mealy aflat


deja n form redus.
Pentru ca automatul s nu aib hazard de codificare a strilor interne, se impune ca ntre
codurile a dou stri interne implicate ntr-o tranziie s fie o diferen de un singur bit, fapt ce se
exprim prin urmtoarele relaii din care se obin codurile strilor interne :
z0 z1 = 0
z1 z2 = 1
z2 z3 = 2
z3 z4 = 3

z4 z5 = 4

0 1 2 3 4 5 = 0

0 1 2 = 3 4 5

zi z j 0 , i j

zi z j 0 , i j

z5 z0 = 5
zi z j 0 , i j
a) 3 = 0 ; b)
4 = 1
5 = 2

3 = 0 ; c) 4 = 0 ; d) 4 = 0
; e)
4 = 2
3 = 1
5 = 1
5 = 1
5 = 2
3 = 2 z1 z3 = 0

5 = 0 z5 z1 =0
3 = 1
4 = 2

Cazurile d) i e) nu-s viabile deoarece implic egalitatea a dou stri interne, fapt imposibil,
deoarece automatul, fiind redus, nu are stri echivalente, iar strile interne au codificri diferite.
Considernd varianta a), codificrile strilor interne ale automatului se obin astfel :
a)

z0 z1 = 0
z1 z2 = 1

z5 = impus
z0 = 2 z5

z5 = 000
z0 = 100

z2 z3 = 2

z1 = 2 0 z5

z1 = 101

z3 z4 = 0

z4 z5 = 1
z5 z0 = 2

z2 = 2 1 0 z5

z3 = 1 0 z5
z4 = 1 z5

z2 = 111

z3 = 011
z4 = 010
2

Funciile de tranziie i de ieire ale automatului se obin din tabela de adevr rescris pentru
codurile determinate ale strilor interne prin sintez logic.
x0
z j = abc
z0 =100
z1 =101

f ( x0 , z j )

f f f
= a b c =
g ( x0 , z j ) g y1 g y0

z2 =111

z3 =011
z4 =010
z5 =000

x0
abc
100
101
111
011
010
000

z0 = 100
00
z2 = 111
01

z1 = 101
01
z1 = 101
01

z2 = 111
01

z3 = 011
10

z4 = 010
10
z4 = 010
10
z0 = 100
00

z3 = 011
10
z5 = 000
00
z5 = 000
00

1
1
1
0
0
1

1
1
0
0
0
0

0
1
1
1
1
0

0
0
1
1
0
0

0
1
1
0
0
0

1
1
1
1
0
0

0
0
0
1
1
0

0
0
1
1
0
0

0
1
1
0
0
0

1
1
0
0
0
0

f a ( x0 , z j )

f b ( x0 , z j )

f c ( x0 , z j )

g y1 ( x0 , z j )

g y0 ( x0 , z j )

not

f a ( x0 ,z j ) = a b + x0 a c + x0 b c = P0 + P1 + P2 ; x0 a b a b
not

fb ( x0 ,z j ) = b c + x0 c a + x0 b a = P3 + P1 + P4 ; x0 b c b c
not

f c ( x0 , z j ) = a c + x0 a b + x0 c b = P5 + P6 + P7 ; x0 a c a c
not

g y1 ( x0 ,z j ) = x0 a b + x0 b c = x0 a b + x0 b c + a b c = P4 + P7 + P8
not

g y0 ( x0 ,z j ) = x0 a c + x0 a b = x0 a c + x0 a b + a b c = P1 + P6 + P9

Termenii suplimentari x0 a b ( a b ) , x0 b c ( b c ) , x0 a c ( a c ) , P8 ( = a b c ) ,

P9 ( = a b c ) elimin hazardul de o variabil, fr afectarea funciilor, conform propritii:


f = A x + B x = A ( 1 + B ) x + ( 1 + A ) B x = A x + B x + A B (termenul AB elimin

hazardul ce apare la A=B=1 i x = 1 0 , cnd, pe un interval t , f = x + x 1 ).


Automatul are urmtoarea realizare cu PLS (=PLA+RE+RS):

x0
a
b
c

P0

P9
RS
0

fc

fb S

R QN

1
fa
0
fa
1

R QN

R QN

RE
S

0
1

R QN

0
1

g y1

g y0

R QN

Fig.1
Observaie
1. Ecuaia de funcionare a bistabilului R-S este stabilit astfel :

Qn +1 =

R
S
0
1

Qn

0
1

S = f
Qn + 1 = S + Qn R = f = ( 1 + Qn ) f = f + Qn f
R = f

2. La intrarea ntr-o stare interzis (diferit de strile automatului) numrtorul se reseteaz


automat n starea z5 = 000 .
4

Un numrtor n cod binar natural poate fi tratat i ca un sumator cu 1(unu), n care se


genereaz suma s ca rezultat al adunrii cifrei 1 la numrul y din numrtor:
s = sn ...s1s0 = y + 1 = yn ... y1 y0 + 0 ... 0 1
Pentru ca timpul de efectuare a incrementrii s fie minim, se va face operaia de adunare
cu transport anticipat, algoritmul operaiei fiind descris de urmtoarele relaii:
s0 = y0 = are 1 termen produs
c0 = y0 = bit de transport de la rang 0
s1 = y1 c0 = y1 y0 + y1 y0 = are 2 termeni produs
c1 = y1 y0 = bit de transport de la rang 1
...
cn 1 = yn 1 ... y1 y0
n 1

n 1

k =0

k =0

sn = yn cn 1 = yn ( yn 1 ... y1 y0 ) = yn yk + yn yk =
n 1

n 1

k =0

k =0

= yn yk +

not

( yn yk ) =

Pn +

n 1

Pnk = are n + 1 termeni produs

k =0

ntr-o incrementare pe n bii este necesar generarea unui numr total de N n termeni
produs, conform cu urmtoarea
Teorem
n(n + 1)
P (n): N n = 1 + 2 + ... + n =
2
Demonstraie
Demonstraia se va face prin inducie matematic.
1(1 + 1)
P (1): N1 = 1 =
P(1)= adevrat
2
S artm c:
(n + 1)(n + 2)
P(n)=adevrat P (n + 1): N n +1 = 1 + 2 + ... + n + (n + 1) =
= adevrat
2
N n + 1 = 1 + 2 + ... + n + (n + 1)

P ( n) = adev.

n(n + 1)
n (n + 1)(n + 2)
+ (n + 1) = (n + 1) + 1 =

2
2
2

P(n+1)= adevrat
P(1)= adevrat
P(n+1)= adevrat P(n+1)= adevrat

n 1 : P(n)= adevrat

Necesitatea memorrii fiecrui bit sk (k = 0, 1,..., n) ntr-un bistabil R-S , prin comanda cu
semnalele S = sk , R = sk , impune i calculul biilor sk , astfel c numrul termenilor produs de
calculat se dubleaz.
Rezult c, la o numrare pe 8 bii, numrul de termeni produs de calculat este
8 (8 + 1)
2 N 8 = 2 (1 + 2 + ... + 8 ) = 2
= 72 termeni produs .
2
Eliminarea hazardului, determinat de reacia introdus prin conectarea de ieiri ale matricei
OR la intrri din matricea AND i caracterizat prin timpul de propagare de la coloanele matricii
AND, prin matricea OR i pn la liniile matricii AND, numit timp de reacie (notat tr ), se obine
prin generarea funciilor de ieire pe durata Ti tr a unui impuls de validare a tuturor termenilor

produs. Un astfel de numrtor este reprezentat n fig.2, unde impulsul de validare, format cu
produsul x0 x0 , are durata timpului de reacie tr.C (= Ti ) < tr , dup care se genereaz n matricea
complementar semnalul x0 . Algoritmul sumrii pe doi bii este descris de ecuaiile:
not

s0 x0 x0 = y0 x0 x0 = P1
not

s0 x0 x0 = y0 x0 x0 = P2
not

s1 x0 x0 = y0 y1 x0 x0 + y0 y1 x0 x0 = P3 + P4
not

s1 x0 x0 = y0 y1 x0 x0 + y0 y1 x0 x0 = P5 + P6

x0

y0
AND
Matrix

y1

x0
t r ( = k t ) =
=timp de reacie

tr.C (< tr )

P0

P1

P2

P3

P4

P5

P6

C
Matrix

RE

s1
S

0
s1

OR
Matrix

y1

R QN

s0
S

0
s0

t
t=timp de propagare

y0

R QN

Fig.2
n lipsa matricei complementare, impulsul de validare poate fi chiar impulsul de numrat
x0 , dac are o durat Ti < tr (fig.3), algoritmul sumrii fiind descris n acest caz prin ecuaiile:
not

s0 x0 = y0 x0 = P1
not

s0 x0 = y0 x0 = P2
not

s1 x0 = y0 y1 x0 + y0 y1 x0 = P3 + P4
not

s1 x0 = y0 y1 x0 + y0 y1 x0 = P5 + P6
6

x0
Ti (< tr )

y0
y1
AND
Matrix

t r ( = k t ) =
=timp de reacie

P1

P2

P3

P4

P5

P6
RE

s1
S

0
s1

OR
Matrix

0
s0

0
s0

t
t=timp de propagare

y1

R QN

y0

R QN

Fig.3

Exemplul 1
S se determine forma redus a automatului Mealy cu urmtoarea tabel de adevr:

f ( xk , zk )
g( xk , zk )
z0

x3
x4
x1
x2
=00 =01 =11 =10
z0
z1
y0
y0

z1

z2
y0

z1
y1

z2

z1
y1

z2
y0

z0
y0

z3
y1

z3

z2
y0

z1
y1

z0
y0

z3
y1

Rezolvare
Automatul fiind de tip Mealy, se va determina automatul echivalent de tip Moore n etapele:
- Automatul iniial are urmtoarea matrice de conexiuni:
z0

z0

x3
y0

z1

z2

x3
y0
x3
y0

z3

z1

x1
y0
x4
y1
x1
y1
x2
y1

z2

z3

x2
y0
x2
y0
x1
y0

x4
y1
x4
y1

Mealy

- Se obine automatul Mealy intermediar diviznd starea z1 n strile z1 i z4 astfel:


z0
z0

x3
y0

z1

z2

x3
y0
x3
y0

z3
z4

z1

z2

z3

x4
y1
x1
y1
x2
y1

x2
y0
x2
y0
x1
y0

x4
y1

x2
y0

x4
y1
x4
y1
-

z4

x1
y0
-

Mealy
intermediar
1

- Prin ntrzierea ieirilor automatului Mealy intermediar cu o tranziie, se obine automatul


Moore echivalent cu urmtoarea matrice de conexiuni:
z0

x3
y0

z0
z1

z2

x3
y0
x3
y1

z3
z4

z1

z2

z3

x4
y1
x1
y0
x2
y1
x4
y0

x2
y1
x2
y0
x1
y1
x2
y0

z4

x1
y0

x4
y0
x4
y1

Moore

- Din matricea de conexiuni a automatului Moore se obine urmtoarea tabel de adevr:


f ( x, y )

x1

x2

x3

x4

g( z )

z0

z4

z0

y0

z1

z2

z1

y1

z2

z1

z2

z0

z3

y0

z3

z2

z1

z0

z3

y1

z4

z2

z1

y0

Moore

- Din tabela de adevr a automatului Moore, se determin strile compatibile:


f k.01 = c01 ; f k .02 = c02 .c14 + c02 .c14 ; f k .03 = c03 ; f k .04 = c04 ;

f k.12 = c12 ; f k .13 = c13 . c12 + c13 .c12 ; f k .14 = c14 ;


f k.23 = c23 ; f k.24 = c24 . c13 + c24 . c13 ; f k .34 = c34 .
Funcia de compatibilitate a automatului Moore este:
f k = f k.ij = c01 .( c02 .c14 + c02 .c14 ).c03 .c04 .c12 .( c13 .c12 + c13 . c12 ).c14 .c23 .( c24 .c13 +
i< j

+ c24 .c13 ).c34 = c01 .c02 .c03 .c04 .c12 .c13 .c14 .c23 .c24 .c34 z0 Cz4
Doar strile z0 i z 4 fiind compatibile, matricea de compatibilitate a automatului Moore este:
z2

0
0
1

z3

z4

1
0
0

z1

0
1
0

0
0
0

1
0
0

z0
z0

Mk =

z1
z2
z3

z4

Moore

- Prin eliminarea strii z 4 se obine automatul Moore redus urmtor:


f ( x, y )

x1

x2

x3

x4

g( z )

z0

z0

z2

z0

z1

y0

z1

z2

z1

y1

z2

z1

z2

z0

z3

z3

z2

z1

z0

z3

z0

z0

x1 + x3
y0

z1

x4
y0

z2

x2
y0

z3

z1

x4
y1

x2
y1

y0

z2

x3
y0

x1
y0

x2
y0

x4
y0

y1

z3

x3
y1

x2
y1

x1
y1

x4
y1

Moore
redus

- Automatul Mealy echivalent prin a crui ntrziere cu o tranziie pe ieire se obine


automatul Moore redus are urmtoarea matrice de conexiuni:
z0
z0

z1

x4
y1
x4
y1

x1 + x3
y0

z1

z2

x3
y0

z3

x3
y0

x1
y1
x2
y1

z2

x2
y0

x2
y0
x2
y0
x1
y0

z3

x4
y1
x4
y1

Mealy
echivalent

- n matricea de conexiuni a automatului Mealy echivalent, redefinind tranziia din z 1 n z0


x +x
prin 1 3 , strile z0 i z 1 , avnd aceleai tranziii de ieire pe linii identice, pot fi reunite ntr-o
y0
singur stare z0 , prin eliminarea strii z 1 a crei linie dispare i a crei coloan este reunit la
coloana strii z0 , matricea de conexiuni i tabela de adevr ale automatului Mealy redus rezultat
fiind:
z0
z0

x1 + x3
+
y0

x4
y1

f ( xk , zk )
g( xk , zk )

z0

z2

x2
y0

z3

z2

x3 x1
+
y0 y1

x2
y0

x4
y1

z3

x3 x2
+
y0 y1

x1
y0

x4
y1

x3
x4
x1
x2
=00 =01 =11 =10
z0
z0
z2
z0
y0
y0
y0
y1

z2

z0
y1

z2
y0

z0
y0

z3
y1

z3

z2
y0

z0
y1

z0
y0

z3
y1

Mealy
redus

- Fiecare stare intern a unui automat, fiind o combinaie a strilor logice n care se afl
circuitele integrate digitale din componena automatului, are o codificare binar proprie prin care
poate fi identificat. Numrul n al biilor de codificare a strilor interne ale unui automat
A=(X,Z,Y,f,g) este stabilit cu relaia:
2 n 1 < Card Z 2 n ; Card Z= numrul strilor interne ale automatului.
Astfel, numrul biilor de codificare a strilor interne ale automatului Mealy redus, pentru care
Card Z=Card { z0 , z2 , z 3 }=3, este n=2, deoarece:
2 2 1 < 3 = Card Z < 2 2 ,
una dintre codificrile posibile fiind:
z0 = 00 ; z2 = 01 ; z3 = 11.
Pentru automatul Mealy redus, o astfel de codificare introduce hazard la funcionarea n
tranziia z3 = 11 z0 = 00 , ce va fi realizat printr-o stare intermediar n variantele
z3 = 11 z2 = 01 z0 = 00 , sau z3 = 11 10 z0 = 00 , deoarece modificarea celor doi bii de
codificare nu se poate face simultan, aceti bii fiind transferai prin pori distincte a cror timpi de
propagare sunt diferii. Ca urmare, automatul Mealy redus va avea o funcionare defectuoas.
Eliminarea acestui hazard de codificare a strilor interne poate fi realizat prin determinarea
unei codificri de tip Gray a strilor interne, astfel nct codurile zi i z j ale strilor interne
implicate ntr-o tranziie s difere doar prin bitul de rang k, fapt exprimat cu relaia:
zi z j = p , cu p = vectorul cu doar bitul de rang k n 1.
Pentru tranziiile din automatul Mealy redus, aceast condiie impune urmtoarele relaii:
z0 z2 = 0

z2 z3 = 1

z3 z0 = 2
i j : zi z j 0 ;( stri interne diferite au codificri diferite )

Din aceste relaii rezult c tranziia:


z3 z0 = 1 0 ,
nu respect condiia de codificare Gray, trebuind realizat printr-o stare intermediar zk , fapt
justificat cu relaia:
z3 z0 = ( z3 zk ) ( zk z0 ) = 1 0 .
Prin introducerea strii suplimentare zk rezult urmtoarele variante de codificare:
z0 z2 = 0

z2 z3 = 1 z z = 0 (absurd, strile z i z fiind diferite)

2
k
2
k

- z3 zk = 1
z z =
0
0
k

i j : zi z j 0
z0 z2 = 0

z2 z3 = 1

- z3 zk = 0
z z =
0
1
k

:
z

zj 0
i
j
i

Din ultimul sistem de ecuaii rezult pentru strile interne o codificare pe 2 bii i necesitatea
impunerii codului unei stri interne deoarece sistemul are cele 4 stri ca necunoscute i doar 3
4

ecuaii liniar independente. Impunnd codul strii z0 , codificarea strilor interne ale automatului
se obine astfel:
z0 = 00 = impus
z 2 = 0 z0

z 2 = 01
z3 = 1 z 2 = 1 0 z0
z = z
z3 = 11
1
0
k
z k = 10
Introducnd starea zk n automatul Mealy redus, se obine automatul Mealy final urmtor:

z2

z3

zk

xi
zj

z0

x1 + x3 x4
+
y0
y1

x2
y0

z0
=00

z0
y0

z2
y0

z0
y0

z0
y1

z2

x3 x1
+
y0 y1

x2
y0

x4
y1

z2
=01

z0
y1

z2
y0

z0
y0

z3
y1

z3

x1
y0

x4
y1

x3 x2
+
y0 y1

z3
=11

z2
y1

zk
y1

zk
y0

z3
y1

zk

x3 x2
+
y0 y1

zk
=10

z0
y1

z0
y0

z0

x1
x2
x3
x4
=00 =01 =11 =10

Mealy
final

Notnd biii de codificare a intrrilor i a strilor interne prin:


not

not

xi = AB ; z j = CD ,

tabela de adevr a automatului Mealy final ia forma:


00

01

11

10

00 01 11 10

00 01 11 10

00 01 11 10

00

00
y0

01
y0

00
y0

00
y1

01

00
y1

01
y0

00
y0

11
y1

11

01
y0

10
y1

10
y0

11
y1

10

00
y1

-0

-0

-1

-1

-0

-1

AB
CD

00
y0
Mealy final

f C ( x, z )

f D ( x, z )

y=g(x,z)

- Din tabela de adevr, se obin urmtoarele funcii de tranziie i de ieire:


not

f C ( x, z ) = A B D + B C D = P0 + P1

= funcii de tranziie

not
f ( x,z ) = A B D + A B C + B C = P + P + P
0
2
3
D
not

g( x, z ) = A B + A B C + B C D = P4 + P5 + P6
5

- Automatul are urmtoarea realizare cu PLS:


A
B
C
D
P0

P6

RS
S

R QN

1
fC

fC
1

R QN

fC
S

g(x,z)

R QN

RE

EXEMPLUL 2
S se determine forma redus i materializarea cu circuite PLS (=Programmable Logic Array)
a automatului de tip Mealy, definit prin urmtoarea tabel de adevr:
f ( x,z )
g( x,z )

x0
x1
x2
x3
=00 =01 =11 =10

z1

z3
y0

z3
y0

z2

z1
y0

z1
y0

z3
y1

z3
y1

z3

z4
y0

z1
y0

z4
y0

z4

z1
y1

z2
y1

z1
y1

z1
y1
Mealy

Rezolvare
Forma redus a automatului Mealy, definit prin tabela de adevr de mai sus, se va determina
folosind automatul echivalent de tip Moore care permite o identificare mai uoar a
compatibilitilor ntre strile interne.
Pentru automatul Mealy iniial, se obine din tabela sa de adevr urmtoarea matrice de
conexiuni:

A=(X,Z,Y,f,g)=

z1

z2

z3

z4

z1

x0 + x2
y0

z2

x0 + x1
y0

x2 + x3
y1

z3

x2
y0

x1 + x3
y0

z4

x0 + x2 + x3
y1

x1
y1

Mealy

Din matricea de conexiuni a automatului Mealy iniial, n care fiecare stare intern ale crei
tranziii de intrare determin ieiri diferite pentru automat, se divide n attea noi stri interne cte
ieiri diferite apar n tranziiile sale de intrare, se formeaz matricea unui automat echivalent numit
Mealy intermediar, fiecare dintre noile stri interne pstrnd din starea intern din care provine
aceleai tranziii de ieire, iar dintre tranziiile de intrare, doar pe cele ce determin o aceeai ieire
pentru automat i care nu se regsesc la celelalte noi stri interne:
1

z1
z2
z3

z1

z2

z3

z4

x2 + x3
y1

x0 + x1
y0
x2
y0

z5

x0 + x2
y0

z6

x1 + x3
y0

z4

x1
y1

z5

x2
y0

x1 + x3
y0

x0 + x2 + x3
y1

z6

x0 + x2
y0
Mealy intermediar

Din matricea de conexiuni a automatului Mealy intermediar, n care, pentru fiecare stare
intern, se transfer ieirea automatului din tranziiile de intrare (indicate n coloana alocat strii
interne), n tranziiile de ieire (indicate n linia alocat strii interne), se obine matricea de
conexiuni a automatului Moore echivalent:
z1

z2

z3

z4

z5

z6

z1

x0 + x2
y0

z2

x0 + x1
y1

x0 + x3
y1

z3

x2
y1

x1 + x3
y1

z4

x1
y0

x0 + x2 + x3
y0

z5

x2
y0

x1 + x3
y0

z6

x0 + x2
y1

Moore echivalent

Din matricea de conexiuni a automatului Moore echivalent, rezult urmtoarea tabela de


adevr:

f(x,z)

x0

x1

x2

x3

g(z)

z1

z5

z5

y0

z2

z1

z1

z3

z3

y1

z3

z4

z1

z4

y1

z4

z6

z2

z6

z6

y0

z5

z4

z1

z4

y0

z6

z5

z5

y1

Moore echivalent
Din tabela de adevr a automatului Moore echivalent rezult urmtoarea funcie de
compatibilitate a strilor interne ale acestui automat:
f K = f K.ij = c12 c13 (c14 c56 + c14 c56 ) c15 c16 [c23 c14 c13 c34 + c23 ( c14 + c13 +
i< j

+ c34 )] c24 c25 [ c26 c15 c35 + c26 ( c15 + c35 )] c34 c35 c36 [ c45 c24 c16 c46 +
+ c45 ( c24 + c16 + c46 )] c46 c56 =
= c12 c13 c14 c15 c16 c23 c24 c25 c26 c34 c35 c36 c45 c46 c56
z1Cz5

z3Cz6
Prin eliminarea strilor redundante z5 i z6 se obine automatul Moore redus, descris de
tabel de adevr i matricea de conexiuni urmtoare:

f(x,z)

x0

x1

x2

x3

g(z)

z1

z1

z4

z1

z4

y0

z2

z1

z1

z3

z3

y1

z3

z1

z4

z1

z4

z4

z3

z2

z3

z3

z1

z1

x0 + x2
y0

z2

z3

z4

x1 + x3
y0

z2

x0 + x1
y1

x2 + x3
y1

y1

z3

x0 + x2
y1

x1 + x3
y1

y0

z4

x1
y0

x0 + x2 + x3
y0

Moore redus

Moore redus

Din matricea de conexiuni a automatului Moore redus, pentru fiecare stare intern,
transfernd ieirea automatului din tranziiile de ieire (indicate n linia alocat strii interne), n
tranziiile de intrare (indicate n coloana alocat strii interne), se obine matricea de conexiuni a
unui automat Mealy echivalent:
3

z1

z2

z3

z4

z1

x0 + x2
y0

x1 + x3
y0

z2

x0 + x1
y0

x2 + x3
y1

z3

x0 + x2
y0

x1 + x3
y0

z4

x1
y1

x0 + x2 + x3
y1

Mealy echivalent

n ultima matrice de conexiuni, strile interne z1 i z3 avnd aceleai tranziii de ieire pe


linii identice ntre ele, pot fi incluse ntr-o aceeai stare intern, notat z1 , ce pstreaz pe linia
alocat aceleai tranziii de ieire, iar pe coloana alocat va conine tranziiile de intrare a ambelor
stri interne componente. Noua matrice de conexiuni, astfel rezultat, definete automatul Mealy
redus, ce reprezint forma redus a automatului iniial Mealy:
z1

z2

z4

f ( x,z )
g( x,z )

x0

x1

x2

x3

z1

x0 + x2
y0

x1 + x3
y0

z1

z1
y0

z4
y0

z1
y0

z4
y0

z2

x0 + x1 x2 + x3
+
y0
y1

z2

z1
y0

z1
y0

z1
y1

z1
y1

z4

x0 + x2 + x3
y1

x1
y1

z3

z1
y1

z2
y1

z1
y1

z1
y1

Mealy redus

Mealy redus

La realizarea automatului Mealy redus ca automat asincron, codificarea strilor interne zn


(n= 1, 2, 4) trebuie s respecte condiia tehnic de bun funcionare ce impune codurilor strilor
interne implicate ntr-o tranziie s difere doar printr-un singur bit. Astfel, la o tranziie ntre strile
interne ale cror coduri zi i z j difer doar prin bitul de rang k exist relaia:

zi z j = k , unde k = vectorul cu doar bitul de rang k n 1.


Pentru tranziiile din tabela de adevr a automatului Mealy redus, condiia tehnic de bun
funcionare se exprim cu relaiile:
z1 z4 = 0

z2 z1 = 1

z4 z 2 = 2
p q : z p zq 0 ( strile interne, fiind diferite,au coduri diferite )

Deoarece:
2 = z4 z2 = ( z1 z4 ) ( z2 z1 ) = 0 1 ,
tranziia z4 z2 nu respect condiia tehnic de bun funcionare i trebuie realizat printr-o stare
intermediar, suplimentar z j , fapt justificat prin relaia:

z4 z2 = ( z4 z j ) ( z j z2 ) = 0 1
Avnd n vedere c:
p,q ; p q : z p zq 0 ,
exist doar varianta:
z4 z j = 1 ; z j z2 = 0 .
Cu noua stare intern z j , condiia tehnic de bun funcionare se exprim cu relaiile:
z1 z4 = 0
z1 = 00 = impus
z4 = 0 z1

z2 z1 = 1
z4 = 01
z2 = 1 z1

z z =
j
1
4
z = z
z j = 11
j
1
0
1

z j z2 = 0
z = 10
2

iar tabela de adevr a automatului are forma:


f ( x,z )
g( x,z )

x0
x1
x2
x3
=00 =01 =11 =10

AB
CD

00

01

11

10

00
= z1

00
y0

01
y0

00
y0

01
y0

01
= z4

00
y1

11
y1

00
y1

00
y1

z1

z1
y0

z4
y0

z1
y0

z4
y0

z4

z1
y1

zj
y1

z1
y1

z1
y1

zj

z2
y0

z2
y0

z2
y1

z2
y1

11
=zj

10
y0

10
y0

10
y1

10
y1

z2

z1
y0

z1
y0

z1
y1

z1
y1

10
= z2

00
y0

00
y0

00
y1

00
y1

11

10

00

01

11

10

00

01

11

10

AB
CD

00 01

00

01

11

10

fC ( x,z )

f D ( x,z )

g y1 ( x,z )
5

Din ultima tabel de adevr, n care s-au avut n vedere relaiile de codificare a strilor interne
i a combinaiilor de intrare:
xi = A B ; i = 0,1,2,3

zn = C D ; n = 1,2,4, j
rezult urmtoarele funcii de tranziie i de ieire:
not

f
=
C

D
+
A

D
= P0 + P1
C

not

f
=
A

C
+
A

D
= P2 + P3
D

g = A C + C D not
= P4 + P5
y1

Automatul are urmtoarea realizarea cu PLS:

A
B
C
D
P0

P1

P2

P3

P4

P5
fD

RS
S0

Q0

R0
1
fC

S1

Q1

R1
1
S

g y1
g y0

RE
n circuit, complementarea semnalului aplicat pe o intrare R s-a realizat cu o poart logic
XOR avnd o intrare pus n starea logica 1 .
Circuitul PLS a fost realizat din circuite integrate digitale conform relaiei:
PLS = PLA + RS +RE .
Completare
Pentru realizarea registrelor de stare RS i de ieire RE s-au folosit circuite basculante bistabile
de tip R-S, a cror funcionare este descris de relaiile:
6

Qn + 1 = S + R Qn

R S = 0
Comanda bistabilelor de tip R-S, pentru memorarea unei funcii logice f, se face conform
relaiei:
Qn + 1 = f = f 1 = f ( 1 + Qn ) = f + f Qn = S + R Q n ,

din care rezult c:


S = f

R = f

EXEMPLUL 3
S se realizeze o schem de semnalizare cu lamp de avertizare pentru un pasaj de trecere la
nivel cu calea ferat, folosindu-se dou detectoare de zon, schema de trafic avnd urmtoarea
reprezentare:

W= lamp de avertizare
A , B = senzori de zon
W

Rezolvare
Schema de comand necesit dou detectoare de zon, notate A i B, i controleaz aprinderea
a dou lmpi de avertizare W, aplicaia fiind descris prin urmtorul tabel de funcionare, n care
s-au fixat ase stri interne primare :

tren spre stnga


AB 00

10

11

01

00

01

11

10

00

zi

z0

z1

z2

z3

z0

z4

z2

z5

z0

tren spre dreapta


W = 1 (comand aprindere lamp) ;
W = 0 (comand stingere lamp) .

Schema traficului la nivel de cale ferat este reprezentat n fig.1 n care s-au reprezentat i
senzorii de zon A i B.
Determinarea schemei logice de control al traficului la nivel cu calea ferat pornete de la
tabela de adevr a automatului Mealy descris prin tabela de funcionare a aplicaiei, identificndu-se
automatul Mealy redus ale crui funcii simple de tranziie i de ieire corespund celei mai simple
realizri practice a automatului.
1

00

01

11

10

z0

z0
w0

z4
w1

z1
w1

z1

z2
w1

z1
w1

z2

z3
w0

z2
w1

z5
w0

z3

z0
w0

z3
w0

z4

z4
w1

z5

z0
w0

AB
z1

z2

z3

10
w1

01
w1

10
w1

11
w1

z2

11
w1

01
w0

10
w0

z3

00
w0

01
w0

z2
w1

z4

11
w1

01
w1

z5
w0

z5

00
w0

10
w0

z0

z1

z0

00
w0

z1

z4

z4

01
w0

z5

AB
zi

00

01

11

10

z0

z0

z4

z1

w0

z1

z2

z1

w1

11
w1

01
w1

10
w1

z2

z3

z2

z5

w1

01
w0

z3

z0

z3

w0

11
w1

01
w1

z4

z4

z2

w1

00
w0

10
w0

z5

z0

z5

w0

z0

00
w0

z1

10
w0

z2

z3

z1

10
w1

11
w1

z2

z3

00
w0

z4
z5

Mealy

Mealy

z0

z5

Moore

g(z)

Moore

f K = f K .ij = c01 c02 ( c03 c34 + c03 c34 ) c04 ( c05 c15 + c05 c15 ) ( c12 c15 +
i< j

+ c12 c15 ) c13 c14 c15 c23 ( c24 c34 + c24 c34 ) c25 c34 c35 =
= c01 c02 c03 c04 c05 c12 c13 c14 c15 c23 c24 c25 c34 c35

z3 C z5

z1 C z4
AB
zi

00

01

11

10

g(z)

z0

z0

z1

z1

w0

z1

z1

z2

z1

w1

z2

z3

z2

z3

z3

z0

z3

z3

z0

00
w0

z1

01 + 10
w1

z2

z3

z1

01 + 10
w1

11
w1

w1

z2

11
w1

01 + 10
w0

w0

z3

00
w0

01 + 10
w0

z0

Moore redus

z0

z2

z0

00 01 + 10
+
w0
w1

z2

11
w1

00
w0

11 01 + 10
+
w1
w0

Mealy

AB
zi ( = K )

00

01

11

10

z0
(=1)

z0
w0

z0
w1

z2
w1

z0
w1

z2
(=0)

z0
w0

z2
w0

z2
w1

z2
w0

Mealy redus

Mealy redus

00

01

11

10

1
w0

1
w1

0
w1

1
w1

1
w0

0
w0

0
w1

0
w0

AB
K

Mealy redus
not

f K = A K+B K+A B = P0 +P1+P2 = A B + K ( A + B )

not
f = A B+B K+A K = P +P +P = A B + K ( A + B )
5 6 7
K

not
g = B K+A K+A B = P +P +P = A B + K ( A + B )
3 4 5
w1
not

g w1 = A B+A K+B K = P2 +P8 +P9 = A B + K ( A + B )


Completare
Pentru memorarea unei funcii logice f pe ieirea unui circuit basculant bistabil de tip R-S, a

crui ecuaie de funcionare este:


Qn +1 = S + R Qn

S R = 0
Se procedeaz astfel:
S = f
Qn +1 = f = f 1 = f (1 + Qn ) = f + f Qn = S + R Qn
R = f
Similar, pentru a obine o funcie logic f la ieirea unui circuit basculant bistabil de tip J-K,
se pornete de la ecuaia de funcionare a acestui bistabil:
Qn +1 = J Qn + K Qn
J = f
Qn +1 = f = f 1 = f (Qn + Qn ) = f Qn + f Qn = J Qn + K Qn
K = f
Automatul are urmtoarele realizari cu PLS i cu releu:

A
B
K

P9

P0

fK

RS

fK

R
RE

g w1
S

g w1

Q g w1

+E

fK

A
B

W= g w1

EXEMPLUL 4
S se realizeze o schem de semnalizare pentru un pasaj de trecere la nivel cu cale ferat
folosind dou lmpi W i dou detectoare de prezen notate A i B.
Rezolvare
Schema de comand necesit dou detectoare de prezen notate A i B i controleaz
aprinderea a dou lmpi de avertizare W, aplicaia fiind descris prin urmtorul tabel de
funcionare, n care s-au fixat patru stri interne primare :
AB

00

10

11

01

00

zi

z0

z1

z2

z3

z0

Tren spre dreapta

Tren spre stnga

W = 1 (cnd lampa este aprins);


W = 0 (cnd lampa este stins).
Schema traficului la nivel de cale ferat este reprezentat n fig.1, n care s-au reprezentat i
senzorii de prezen, notai A i B.

W = lamp de avertizare ;
A ,B = senzori de prezen

Fig.1 Schem trafic la nivel de cale ferat


Sinteza automatului pornete de la tabela sa de adevr:
1

AB
z1

00

01

11

10

z0

z0
w0

z3
w1

z1
w1

z1

z0
w0

z2
w1

z1
w1

z2

z3
w1

z2
w1

z3

z0
w0

z3
w1

z2
w1

z1

z2

z3

z0

00
w0

10
w1

01
w1

z1

00
w0

10
w1

11
w1

z1
w1

z2

10
w1

11
w1

01
w1

z3

00
w0

11
w1

01
w1

Mealy

Mealy

00

01

11

10

z0

z0

z3

z1

w0

z1

z0

z2

z1

w1

01
w1

z2

z3

z2

z1

w1

01
w1

z3

z0

z3

z2

w1

z1

10
w0

z2

z1

00
w1

10
w1

11
w1

z2

10
w1

11
w1

z3

00
w0

11
w1

AB
zi

z0

00
w0

z0
=

z0

z3

01
w0
=

g(z)

Moore

Moore

f k = f k .ij = c01 c02 c03 c12 c13 c23 z1 C z2 C z3


i< j

AB
zi

00

01

11

z0

z0

z1

z1

w0

z1

z0

z1

z1

z1

w1

z0

z0

00
w0

z1

00
w0

10 g(z)

z0

z0

00
w0

z1

01 + 10
w0

00
w1

01 + 10 + 11
w1

z1

Moore
redus

z1

01 + 10
w1
01 + 10 + 11
w1

=
Mealy

z0

00
w0

=
Moore
redus

z0

01 + 10 + 11
w1

=
Mealy redus

AB
zi ( = K )

00

01

11

10

z0
(=1)

z0
w0

z0
w1

z0

z0
w1

w1

AB
K
=
1

Mealy
redus

00

01

11

10

1
w0

1
w1

1
w1

1
w1

Mealy
redus

f = K =1
K
K =1

g w1 = A K + B K = A + B

K =1

g w1 = A B K = A B
A

A B

RS

g w1
S

g w1

g w1

+E
A

g w1 =A+B

Completare
a) Pentru obinerea unei funcii logice f , la ieirea unui circuit basculant bistabil de tip R-S,
comanda bistabilului se determin astfel:
Qn +1 = S + R Qn

S R = 0
S = f
Qn +1 = f = f 1 = f ( 1 + Qn ) = f + f Qn = S + R Qn
R = f

b) Similar, pentru a obine o funcie logic f la ieirea unui circuit basculant bistabil de tip
J-K, se pornete de la ecuaia de funcionare a acestui bistabil:
Qn +1 = J Qn + K Qn

J = f
Qn +1 = f = f 1 = f ( Qn + Qn ) = f Qn + f Qn = J Qn + K Qn
K = f

EXEMPLUL 5
S se gseasc o schem cu un buton B i o lamp W ce s satisfac urmtoarele condiii :
(a) schema are o poziie de repaos cu butonul neacionat i lampa aprins ;
(b) la acionarea butonului, lampa pulseaz (cu factor de umplere 1/2);
(c) la eliberarea butonului, schema intr n repaos .
Rezolvare
Pe baza enunului aplicaiei, se determin pentru automat urmtoarea tabel de funcionare:

A = (X, Z, Y, f, g) =

zi

z0

z1

z2

z1

1
z0

Determinarea automatului Mealy redus are loc prin urmtoarele transformri :


B
zi

z0

z0
w1

z1
w0

z1

z0
w1

z2
w1

z2

z0
w1

z1
w0

z0

z1

z0

0
w1

1
w0

z1

0
w1

1
w1

z2

0
w1

1
w0

z0

z1

z0

0
w1

1
w1

z1

0
w0

1
w0

z2

0
w1

1
w1

z2

Mealy

Mealy
B
zi

z0

z0

z1

z2

Moore

g(z)

w1

z1

z0

z2

w0

z2

z0

z1

w1

fK =

f K .ij = c01 c02 c12


i< j

z0 C z2

Moore
f(x,z)

z0

z1

z0

z1

z0

0
w1

1
w1

0
w1

1
w0

z1

0 +1
w0

0 +1
w1

g(z)

z0

z0

z1

w1

z1

z0

z0

w0

Moore redus

Moore redus

z0

z1

Mealy redus

z0 =1

1
w1

0
w0

z1 =0

1
w1

1
w1

B
zi (= K )
=

f K = g w1

Mealy redus

f K = g w0

not

f K = g w1 = B + K = P0 + P1

not
f = g = g = BK = P
K
w
w
2

0
1

Automatul poate fi realizat cu relee, sau cu circuite PLS, aa cum se arat mai jos:
B

P1

P0

P2
RS = RE

fK

CLK

fK

g w1
g w0

+E
K

B
g w1 = K + B

fK
RK

EXEMPLUL 6
S se determine forma redus a automatului definit prin urmtoarea tabel de adevr:
x4
x3
x1
x2
=00 =01 =11 =10

f ( x,z )
g( x , z )

z1

z2
y0

z3
y0

z1
y0

z2
y1

z2

z1
y0

z3
y0

z1
y0

z2
y1

z3

z2
y1

z3
y0

z1
y0

z4
y1

z4

z3
y0

z2
y1

z1
y0

z4
y1
Mealy

Rezolvare
Determinarea realizrii practice a automatului Mealy are loc n urmtoarele etape:

z1

x3
y0

x1 x4
+
y0 y1

z3

x2
y0

z2

x1 + x3
y0

x4
y1

x2
y0

z3

x3
y0

x1
y1

x2
y0

x4
y1

z4

x3
y0

x2
y1

x1
y0

z1

z1

z2
=

z3
z4
z5

z2

z1

x3

y0
x1 + x3
y0
x3
y0
x3
y1
x1 + x3
y0

z2

x4
y0
x4
y1
x1
y0
x2
y1
x4
y0

z3

x2
y0

z4

z1

x3
y0

z2

x4
y1

z3

x2
y0

x1 + x3
y0

x4
y1

x2
y0

z3

x3
y0

x1
y1

x2
y0

x4
y1

z4

x3
y0

x2
y1

x1
y0

x4
y1

z5

x1 + x3
y0

x4
y1

x2
y0

z1

z2

x4
y1
Mealy

z4

z5

x1
y0

x4
x3
x1
x2
g(z)
=00 =01 =11 =10

z4

z5

f(x,z)

z1

z5

z3

z1

z2

y0

x2
y1

z2

z1

z3

z1

z2

y1

x2
y0

x4
y0

z3

z2

z3

z1

z4

y0

x1
y1

x4
y1

z4

z3

z2

z1

z4

y1

x2
y0

z5

z1

z3

z1

z2

y0

Moore

Moore

f K = f K .ij = c12 [ c13 c25 c24 + c13 ( c25 + c24 )] c14 c15 c23 [ c24 c13 c23 +
i< j

+ c24 ( c13 + c23 )] c25 c34 [ c35 c12 c24 + c35 ( c12 + c24 )] c45 =
= c12 c13 c14 c15 c23 c24 c25 c34 c35 c45 z1C z5
f(x,z)

x4
x3
x1
x2
g(z)
=00 =01 =11 =10

z1

z1

z3

z1

z2

y0

z2

z1

z3

z1

z2

y1

z3

z2

z3

z1

z4

y0

z3

z4

z3

z2

z1

z4

y1

z4

z1
z2

z1

x1 + x3
y0

z2

x4
y0

z3

x2
y0

x1 + x3
y1

x4
y1

x2
y1

x3
y0

x1
y0

x2
y0

x4
y0

x3
y1

x2
y1

x1
y1

x4
y1

Moore redus
z3

x2
y0

z4

x1 + x3
y0

z2

x4
y1

x1 + x3
y0

x4
y1

x2
y0

x3

x1
y1

x2
y0

x4
y1

x2
y1

x1
y0

x0
y1

z1

z1
z2
=

z3
z4

y0
x3
y0

z1

z2

z4

x1 + x3 x4
+
y0
y1

x2
y0

z2

x3 x1
+
y0 y1

x2
y0

x4
y1

z4

x3 x2
+
y0 y1

x1
y0

x4
y1

z1
=

Mealy

Moore redus

f ( x, z )
g( x , z )

z4

Mealy redus

x4
x3
x1
x2
=00 =01 =11 =10

z1

z1
y0

z3
y0

z1
y0

z3
y1

z3

z1
y1

z3
y0

z1
y0

z4
y1

z4

z3
y0

z1
y1

z1
y0

z4
y1

Mealy redus

La realizarea automatului Mealy redus, condiia tehnic de bun funcionare impune


urmtoarele relaii nre codurile strilor interne:
2

z1 z3 = 0

z3 z4 = 1

z4 z1 = 2
z p zq 0 ,p q

z1 z3 = 0
z1 z3 = 0

z3 z 4 = 1
z3 z4 = 1
( z z ) ( z z ) =

j
j
1
1
0
z4 z1 = 2 = 1 0 4
z p zq 0 ,p q
z p z q 0 , p q

z z =
z = impus
3
0
1
1
z1 = 00
z3 z 4 = 1
z3 = 0 z1
z = 01

3
z4 z j = 0
z4 = 1 0 z1

z = z
z4 = 11

z
z

=
j
1
1
1
1
j

z j = 10

z z 0 ,p q
z p zq 0 ,p q
p
q

Avnd n vedere att starea suplimentar z j , ct i relaiile de codificare a strilor interne i a


combinaiilor de intrare:
xi = A B , i = 1,2,3,4 ;

z n = C D , n = 1,3,4, j
tabelul de adevr al automatului Mealy final are urmtoarea descriere:
f ( x, z )
g( x , z )

AB
CD

x3
x4
x1
x2
=00 =01 =11 =10

00

01

11

10

00

00
0

01
0

00
0

00
1

01

00
1

01
0

00
0

11
1

z1
=00

z1
y0

z3
y0

z1
y0

z1
y1

z3
=01

z1
y1

z3
y0

z1
y0

z4
y1

z4
=11

z3
y0

zj

zj

y1

y0

z4
y1

11

01
0

10
1

10
0

11
1

zj

z3
y0

z1
y1

z1
y0

z4
y1

10

01
0

00
1

00
0

11
1

=10

Mealy final

AB
CD

00 01 11 10

00 01 11 10

00 01 11 10

00

01

11

10

fC ( x,z )

f D ( x,z )

0 1
g y1 ( x,z )

Din ultima tabel de adevr se obin urmtoarele funcii de tranziie i de ieire:


not

fC = B C D + A B C + A B D = P0 + P1 + P2

not

f
=
A

C
+
A

C
+
A

D
+
A

C
= P3 + P4 + P2 + P1
D

not
g = A B + B C D + A B C = P + P + P
5
6
7
y1
ce determin pentru automatul Mealy urmtoarea realizare cu PLS (= PLA + RS +RE) :

A
B
C

D
P0

P1

P7

fD

RS
S Q

fD
1
fC

R
S Q

fC

g y1
g y1
1

S Q

g y1

R
RE

EXEMPLUL 7
S se gseasc o schem cu un buton B i o lamp W ce s satisfac urmtoarele condiii :
(a) schema are o poziie de repaos cu butonul neacionat i lampa stins ;
(b) la acionarea butonului, lampa se aprinde i rmne aprins la eliberarea butonului ;
(c) la a doua acionare a butonului, schema intr n repaos .
Rezolvare
Pe baza enunului aplicaiei, se determin pentru automat urmtoarea tabel de funcionare:

A = (X, Z, Y, f, g) =

zi

z0

z1

z2

z3

z0

Determinarea automatului Mealy redus are loc prin urmtoarele transformri:


B
zi

z0

z1

z2

z3

z0

0
w0

1
w1

z1

1
w1

0
w1

z3
w0

z2

0
w1

1
w0

z0
w0

z3
w0

z3

0
w0

1
w0

z0

z1

z2

z3

B
zi

z0

0
w0

1
w0

z0

z0

z1

w0

z1

1
w1

0
w1

z1

z2

z1

w1

z2

0
w1

1
w1

z2

z2

z3

w1

z3

0
w0

1
w0

z3

z0

z3

w0

z0
w0

z1
w1

z1

z2
w1

z1
w1

z2

z2
w1

z3

z0

Mealy

Moore

Mealy

g(z)

Moore

f K = f K .ij = c01 c02 ( c03 c13 + c03 c13 ) ( c12 c13 + c12 c13 ) c13 c23 =
i< j

= c01 c02 c03 c12 c13 c23 nu exist compatibiliti


Pentru respectarea condiiei tehnice de bun funcionare, codificarea strilor interne se
determin folosind tranziiile specificate de tabela de adevr a automatului Mealy:
not

z
z

=
0
1
0 = ( 0001 )

not
z z = = ( 0010 )
1
2
1

not

0 1 2 3 = 0 0 1 = 2 3
z2 z3 = 2 = ( 0100 )

not
z z = = ( 1000 )
0
3
3
not

i
j
:
z
z
0

= ( 0000 )

i
j

z0 z1 = 0

z1 z2 = 1

z2 z3 = 2 = 0
z z = =
0
3
1
3
zi z j 0
Cu notaia de codificare:

z0 = impus
z0 = 00

z1 = 0 z0
z = 01
1

z2 = 1 0 z0
z2 = 11
z3 = 1 z0
z3 = 10

not

z j = CD ,

tabela de adevr a automatului iniial Mealy devine:


B
CD

z0 =00

00
w0

01
w1

z1 =01

11
w1

01
w1

z2 =11

11
w1

10
w0

z3 =10

00
w0

10
w0

Mealy

fC ( x,z )

f D ( x,z )

g w1 ( x,z )

not

f
=
B

D
+
B

C
=
B

D
+
B

C
+
C

D
= P1 + P0 + P3
C

not
f = B D + B C = B D + B C + C D = P + P + P = g
1
2
4
w1
D

Cu funciile de tranziie i de ieire rezultate din tabela de adevr, se obine pentru automat
urmtoarea realizare cu PLS:
2

B
D
C

P0

P1

P2

P3

P4

fC
S

fC

R QN

1
RS

fD
S

fD
1

RE

g w1

R QN

Observaie
Prin relaia
f = x j A + x j B = x j A ( 1 + B ) + x j B ( 1 + A ) = x j A + x j B + ( x j + x j ) A B =
= x j A + x j B + A B = f + A B

se elimin hazardul la comutarea x j = 1 0

EXEMPLUL 7a
S se gseasc o schem cu un buton B i o lamp W ce s satisfac urmtoarele condiii :
(a) schema are o poziie de repaos cu butonul neacionat i lampa stins ;
(b) la acionarea butonului, lampa se aprinde cnd butonul este eliberat;
(c) la a doua acionare a butonului, schema intr n repaos cnd butonul este eliberat.
Rezolvare
Pe baza enunului aplicaiei, se determin pentru automat urmtoarea tabel de funcionare:

A = (X, Z, Y, f, g) =

zi

z0

z1

z2

z3

z0

Determinarea automatului Mealy redus are loc prin urmtoarele transformri:


B
zi

z0

z1

z2

z3

z0

0
w0

1
w0

z1

1
w0

0
w1

z3
w1

z2

0
w1

1
w1

z0
w0

z3
w1

z3

0
w0

1
w1

z0

z1

z2

z3

B
zi

z0

0
w0

1
w0

z0

z0

z1

w0

z1

1
w0

0
w0

z1

z2

z1

w0

z2

0
w1

1
w1

z2

z2

z3

w1

z3

0
w1

1
w1

z3

z0

z3

w1

z0
w0

z1
w0

z1

z2
w1

z1
w0

z2

z2
w1

z3

z0

Mealy

Moore

Mealy

g(z)

Moore

f K = f K .ij = (c01 c02 + c01 c02 )c02 c03 (c12 c13 + c12 c13 ) c13 (c23 c02 + c23 c02 ) =
i< j

= c01 c02 c03 c12 c13 c23 nu exist compatibiliti


Pentru respectarea condiiei tehnice de bun funcionare, codificarea strilor interne se
determin folosind tranziiile specificate de tabela de adevr a automatului Mealy:
not

z
z

=
0
1
0 = ( 0001 )

not
z z = = ( 0010 )
1
2
1

not

0 1 2 3 = 0 0 1 = 2 3
z2 z3 = 2 = ( 0100 )

not
z z = = ( 1000 )
0
3
3
not

i
j
:
z
z
0

= ( 0000 )

i
j

z0 z1 = 0

z1 z2 = 1

z2 z3 = 2 = 0
z z = =
0
3
1
3
zi z j 0
Cu notaia de codificare:

z0 = impus
z0 = 00

z1 = 0 z0
z = 01
1

z2 = 1 0 z0
z2 = 11
z3 = 1 z0
z3 = 10

not

z j = CD ,

tabela de adevr a automatului iniial Mealy devine:


B
CD

z0 =00

00
w0

01
w0

z1 =01

11
w1

01
w0

z2 =11

11
w1

10
w1

z3 =10

00
w0

10
w1

Mealy

fC ( x,z )

f D ( x,z )

g w1 ( x,z )

not

f
=
B

D
+
B

C
=
B

D
+
B

C
+
C

D
= P1 + P0 + P3 = g w1
C

not

f
=
B

D
+
B

C
=
B

D
+
B

C
+
C

D
= P1 + P2 + P4
D

Cu funciile de tranziie i de ieire rezultate din tabela de adevr, se obine pentru automat
urmtoarea realizare cu PLS:
2

B
D
C

P0

P1

P2

P3

P4

fC
S

fC

g w1

R QN

1
RS

fD
S

fD
1

RE
R QN

Observaie
Prin relaia
f = x j A + x j B = x j A ( 1 + B ) + x j B ( 1 + A ) = x j A + x j B + ( x j + x j ) A B =
= x j A + x j B + A B = f + A B

se elimin hazardul la comutarea x j = 1 0

EXEMPLUL 8 (ntreruptor amfiteatru P6)


S se gseasc o schem cu dou butoane A i B i o lamp W cu urmatorul program de lucru:
(a) schema are o poziie de repaos cu butoanele neacionate i lampa stins;
(b) la acionarea butonului A, lampa W se aprinde i rmne aprins la eliberarea butonului;
(c) la acionarea butonului B lampa se stinge, schema intrnd n repaos.
Rezolvare
Pe baza enunului aplicaiei, se determin pentru automat urmtoarea tabel de funcionare:

A = (X, Z, Y, f, g) =

zi

z0

z1

z2

z3

z0

Determinarea automatului Mealy redus are loc prin urmtoarele transformri:


00

01

11

10

z0

z0
w0

z1
w1

z1

z2
w1

z1
w1

z2

z2
w1

z3
w0

z0
w0

z3
w0

z0

z1

z2

z3

z0

00
w0

10
w0

z1

10
w1

00
w1

z2

00
w1

01
w1

z3

00
w0

01
w0

AB
zi

z3

z0

z1

z2

z3

z0

00
w0

10
w1

z1

10
w1

00
w1

z2

00
w1

01
w0

z3

00
w0

01
w0

AB
zi

00

01

z0

z0

z1

w0

z1

z2

z1

w1

z2

z2

z3

w1

z3

z0

z3

w0

Mealy

Moore

11

Mealy

10
g(z)

Moore

z0 C z3
f K = f K .ij = c01 c02 c03 c12 c13 c23

z
C
z
1
2

i< j
1

AB
zi

00

01

z0

z0

z0

z1

w0

z1

z1

z0

z1

w1

z0

z1

g(z)

=
Moore
redus

z0

10
w1

01
w0

10 + 00
w1

01

11

10

z0 =0

0
w0

0
w0

1
w1

z1 =1

1
w1

0
w0

1
w1

z0

z0

00 + 01
w0

z0

10
w0

01
w1

10 + 00
w1

z1

00

01

11

10

z0

z0
w0

z0
w0

z1
w1

z1

z1
w1

z0
w0

z1
w1

AB
zi

z0

00 + 01
w0

00

AB
C

11 10

Mealy
redus

=
Moore
redus

=
Mealy
redus

g w1 = fC = A B + B C = B ( A + C )
Mealy
redus

Automatul are urmtoarea realizare cu PLS:


A
B
C
P0

P1

fC
fC
1

fC

g w1

R QN

RE=RS

Automatul poate fi realizat i cu un releu, ca element de memorare a unui bit de informaie,


aa cum se arat mai jos.
2

+E
B = normal nchis

fC

W= g w1

EXEMPLUL 9
S se gseasc o schem cu un buton A i dou lampi V i W cu urmtorul program de lucru:
(a) schema are o poziie de repaos cu butonul A neacionat i lmpile V, W stinse;
(b) la prima acionare a butonului A, se aprinde lampa V de la eliberarea butonului;
(c) la a doua acionare a butonului A, se aprinde i lampa W de la eliberarea butonului;
(d) la a treia acionare a butonului A, schema reintr n repaos.
Rezolvare
Pe baza enunului aplicaiei, se determin pentru automat urmtoarea tabel de funcionare:

A = (X, Z, Y, f, g) =

zi

z0

z1

z2

z3

z4

z5

Automatul Mealy are tabela de adevr i matricea de conexiuni urmtoare:


0

z0

z0
v0 w0

z1
v0 w0

z1

z2
v1w0

z1
v0 w0

z2

z2
v1w0

z3
v1w0

z4
v1 w1

z4
z5

A
zi

z3

z0

z1

z2

z3

z4

z5

z0

0
v0 w0

1
v0 w0

z1

1
v0 w0

0
v1w0

z2

0
v1w0

1
v1w0

z3
v1 w1

z3

1
v1 w1

0
v1 w1

z4
v1 w1

z5
v0 w0

z4

0
v1 w1

1
v0 w0

z0
v0 w0

z5
v0 w0

z5

0
v0 w0

1
v0 w0

Mealy

Mealy

Din matricea de conexiuni a automatului Mealy rezult c nu exist compatibiliti, deoarece


se observ c redefinirea tranziiilor nedefinite ar face ca automatul s devin nedeterminist i
implicit, practic nerealizabil .
De asemenea, din fiecare stare intern tranzitndu-se doar n starea intern urmtoare,
codificarea strilor interne se face n cod Gray, pe trei bii:
not

z j = BCD ; j = 0,1,..,5 ,

eliminndu-se astfel hazardul de codificare a strilor interne:


z0 =000 ; z1 =000 ; z2 =011; z3 =111; z4 =110 ; z5 =100 .
Tabela de adevr folosind variabilele A, B, C, D, funciile logice de tranziie i de ieire i
materializarea automatului Mealy cu circuit PLS sunt prezentate n continuare.
1

B
C
D

P1

P9
RS
fD
S

R QN

1
fC
fC
1
fB

fC

gv1

R QN

fC
S

R QN

RE
S

g w1

R QN

not

f
(
x,
y
)
=
B

C
+
A

D
+
A

D
= P0 + P1 + P2 = ( P5 + P9 ) + P1 + P2
B

not
f ( x, y ) = C D + A B D + A B C = P + P + P = g ( x, y )
C
3
4
5
v1

f ( x, y ) = B D + A B C + A C D not
= P6 + P7 + P2
D
not

g w1 ( x, y ) = B C D + A B C = P8 + P9

n realizarea automatului, termenul produs P0 din funcia f B ( x, y ) s-a format pe baza


relaiei:
not

not

P0 = B C = A B C + A B C = P5 + P9 .

A
BCD

0 1

000
= z0

000
v0 w0

001
v0 w0

001
= z1

011
v1w0

001
v0 w0

011
= z2

011
v1w0

111
v1w0

111
= z3

110
v1 w1

111
v1 w1

110
= z4

110
v1 w1

100
v0 w0

100
= z5

000
v0 w0

100
v0 w0

Mealy

fB

fC

fD

g v1

g w1

EXEMPLUL 10
S se gseasc o schem cu un buton A i o lamp W pentru urmtoarea funcionare:
a) n poziia de repaus butonul A este neacionat, iar lampa W stins;
b) dup acionarea butonului A, lampa W pulseaz periodic, dar timpul ct este aprins este de
trei ori mai mare dect timpul ct este stins;
c) la dezacionare butonului A schema intr n repaus cu lampa W stins .
Rezolvare
Automatul de realizat se determin astfel:

A(X,Z,Y,f,g ) =

A
zi

z0

z0
w0

z1
w1

z1

z0
w0

z2
w1

z2

z0
w0

z3
z4

zi

z0

z1

z2

z3

z4

z0

z0

z1

z0

0
w0

z1

z3
w1

z0
w0

z2

z3

z4

1
w1

0
w0

1
w1

z2

0
w0

1
w1

z4
w0

zj

0
w0

1
w1

z0
w0

z1
w1

z4

0
w0

1
w1

z0

z1

z2

z3

z4

A
zi

g(z)

z0

0
w0

1
w0

z0

z0

z1

w0

z1

0
w1

1
w1

z1

z0

z2

w1

z2

0
w1

1
w1

z2

z0

z3

w1

z3

0
w1

1
w1

z3

z0

z4

w1

z4

0
w0

1
w0

z4

z0

z1

w0

Mealy

Moore

Mealy

Moore

f k = f k.ij = c01 c02 c03 c04 ( c12 c23 + c12 c23 ) ( c13 c24 + c12 c24 ) ( c23 c34 +
i< j

+ c23 c34 ) c34 c14 c24 z0 C z4

A
zi

g(z)

z0

z0

z1

w0

z1

z0

z2

w1

z2

z0

z3

w1

z3

z0

z0

w1

z0

z0

0
w0

z1

1
w0

z1

0
w1

z2
z3

z0
=

Moore
redus

z1

1
w1

z2

z3

1
w1

0
w1

1
w1

0 +1
w1

z2

z3

A
zi

z0

z0
w0

z1
w1

z1

z0
w0

z2
w1

z0

0
w0

z1

0
w0

1
w1

z2

0
w0

1
w1

z2

z0
w0

z3
w1

z3

0 +1
w0

z3

z0
w0

z0
w0

Mealy

Moore
redus

Mealy

Condiia tehnic de bun funcionare impune o codificare Gray pentru strile interne ale
automatului, astfel nct codurile strilor interne implicate ntr-o tranziie s difere doar printr-un
singur bit, ceea ce se exprim prin relaiile urmtoare n care prin k ( k = 0,..,3 ) s-a notat vectorul
n care doar bitul de rang k este n starea logic 1, restul biilor fiind n starea logic 0 :
z0 z1 = 0

z1 = 0 z0
z1 z2 = 1
3 = 1

3 = 2 1 0
z2 = 1 0 z0
z2 z3 = 2
2 = 0
z z =

0
3
z3 = 1 z0
3

i j : zi z j 0

z0 = 00 = impus
z = 01

z2 = 11
z3 = 10
2

A
CB

z0 =00

00
w0

01
w1

z1 =01

00
w0

11
w1

z2 =11

00
w0

10
w1

z3 =10

00
w0

00
w0

Mealy final

fC ( x,z )

g w1 ( x,z )

f B ( x,z )

fC = AB

f B = AC

g w1 = AC + AB = A( B + C )
Automatul poate fi relizat att cu relee, al cror rol este de a memora starea intern i ieirea
n care se afl automatul, ct i cu arii logice programabile, aa cum se arat n continuare.

AB

AC

A
B
C

RS
0

fC

S Q
R

1
0

fB

S Q
R

1
0

g w1

g w1

g w1

R
RE

+E
W= g w1
A

RC

fC

fB

RB

EXEMPLUL 11
S se gseasc o schem de semnalizare a direciei de deplasare pentru un autovehicol.
Rezolvare
Automatul de semnalizare are dou intrri pentru comutatoarele A = direcie la stnga i B =
direcie la dreapta i dou ieiri V= comand lmpi semnalizare la stnga i W= comand lmpi
semnalizare la dreapta, nivelele logice 1 i 0 a semnalelor de comand fiind notate prin v1 ,w1
i respectiv v0 ,w0 .
Determinarea automatului Mealy redus i a realizrii sale cu circuit PLS are loc prin
urmtoarele transformri:

A=

00

01

11

10

z0

z0
v0 w0

z3
v0 w1

z1
v1w0

z1

z0
v0 w0

z2
v0 w0

z2

z0
v0 w0

z1
v1w0

z4

z3

z0
v0 w0

z4
v0 w0

z4

z0
v0 w0

z3
v0 w1

AB
zi

zi

z0

z1

z2

z3

Mealy

z0

z1
=

z2
z3
z4

z0

00
v0 w0
00
v0 w0
00
v0 w0
00
v0 w0
00
v0 w0

z1

10
v1w0
-

z2

10
v0 w0

z3

01
v0 w1

z4

z0

z1
=

10
v1 w0

z2

01
v0 w0

z3

01
v0 w1

z4

Mealy

z0

00
v0 w0
00
v1w0
00
v0 w0
00
v0 w1
00
v0 w0

z3

01
v0 w0

z4

10
v1w0

10
v0 w0

01
v0 w1

01
v0 w0

z1

10
v0 w0
-

z2

Moore

AB
zi

00

01

11

10

z0

z0

z3

z1

v0 w0

z1

z0

z2

v1 w0

V W

z2

z0

z1

v0 w0

z3

z0

z4

v0 w1

z4

z0

z3

v0 w0
Moore

f K = f K .ij = c01 c02 c03 c04 c12 c13 c14 c23 c24 c34 z0 C z2 C z4
i< j

AB
zi

00

01

11

10

z0

z0

z3

z1

v0

w0

z0

z0

00
v0 w0

z1

10
v0 w0

z2

01
v0 w0

z1

z0

z0

v1

w0

z1

00 + 10
v1 w0

z3

z0

z0

v0

w1

z2

00 + 01
v0 w1

Moore redus

z0

z1
z2

z0

00
v0 w0
00 + 10
v0 w0
00 + 01
v0 w0

z1

10
v1 w0

z2

01
v0 w1

Moore redus

z0

=
-

Mealy final

z1

z0

00
v0 w0
00 + 10 + 01
v0 w0

z1

10
01
+
v1w0 v0 w1

Mealy redus

Observaie
n matricea de conexiuni a automatului Mealy final, strile interne z1 i z2 avnd tranziii de
ieire compatibile, pot fi reunite ntr-o nou stare z1 , format prin reunirea liniilor i coloanelor
2

strilor componente, astfel generndu-se matricea de conexiuni a automatului Mealy redus, din a
crui tabel de adevr se determin apoi funciile de tranziie i de ieire redefinind combinaia
imposibil de intrare, AB=11, n modul cel mai avantajos minimizrii funciei.
00

01

11

10

z0

z0
v0 w0

z1
v0 w1

z1
v1w0

z1

z0
v0 w0

z0
v0 w0

z0

v0 w0

Mealy redus

AB
zi

AB
C
0
1

00

01

11

0
0

1 =1
0 =0
fC ( x,z )

00

01

11

10

z0 =0

0
v0 w0

1
v0 w1

1
v1w0

z1 =1

0
v0 w0

0
v0 w0

v0 w0

Mealy redus

AB
zi = C

10

00

01

11

10

00

01

1
0

0
0

0
0

11

10

=1
=0
V(x,z)

1
0

0
0

1
0

=1
=0
W(x,z)

0
0

not

fC = A C + B C = P0 + P1
V = A C = P0

W = B C = P1
Automatul Mealy redus se poate realiza cu PLS , sau cu releu electromagnetic.
A
B
C
P0

P1
fC

RS
S

fC
R QN

1
WA
WA
1
WB
WB
1

RE
V
S

R QN

W
S

R QN

+E

B
RA

RB
+

CR

fC

EXEMPLUL 12
S i se gseasc unui autovehicol, schema de semnalizare a direciei de deplasare i a avariei.
Rezolvare
Automatul de semnalizare are ca intrri comutatoarele A = direcie stnga, B = direcie
dreapta i C = avarie, genernd la ieire semnalele de comand W A = aprindere lmpi semnalizare
stnga i WB = aprindere lmpi semnalizare dreapta, combinaia AB=11 fiind imposibil.
Determinarea automatului Mealy redus are loc prin urmtoarele transformri :

A=

z0

000
wA0 wB0

z1

100
wA1 wB0

z2

010
wA0 wB1

z3

1
wA1wB1

z1

000 + 100
wA0 wB0

z2

010 + 000
wA0 wB0

z3

000 + 1
wA0 wB0

z2

z3

WA

WB

zi

z0

z1

z0
z1 C z2 C z3

z1

z0
=

Mealy

z0

000
wA0 wB0
000 + 010 + 100 + 1
wA0 wB0

z1

100
010
1
+
+
wA1 wB0 wA0 wB1 wA1 wB1

Mealy

z0

z1

z0

000
00
000 + 010 + 100 + 1
00

z1

100 010 1
+
+
10
01
11

Mealy

000

001

011

010

110

111

101

100

z0 =1

0
00

1
11

1
11

1
01

1
11

1
10

z1 =0

0
00

0
00

0
00

0
00

0
00

0
00

ABC
zi = D

Mealy

not

f D = A D + B D + C D = P0 + P1 + P2
WA = A D + C D = P0 + P2
WB = B D + C D = P1 + P2

Cu funciile de tranziie i de ieire rezultate din tabela de adevr (n care combinaia imposibil de intrare, AB=11, a fost redefinit pentru a genera forme minimale ale funciilor) se obin
urmtoarele realizri cu PLS (=PLA+RS+RE) i cu releu, ale automatului:
A
B
C
D

P0

P1

P2

fD

RS
S

fD
R QN

1
WA
S

WA

WA
R QN

1
WB

WB

WB

R QN

RE

+E
D

B
RA

RB
+

CR

fD

EXEMPLUL 13
S se determine forma redus i realizarea cu circuite PLS a automatului A = (X,Z,Y,f,g)
definit prin urmtoarea tabel de adevr:
f ( x, z )
g( x , z )

A=(X,Z,Y,f,g)=

x0
x1
x2
x3
=00 =01 =11 =10

z1

z2
y0

z1
y0

z2

z1
y0

z1
y0

z2
y0

z2
y0

z3

z4
y0

z1
y0

z4
y0

z4

z1
y1

z2
y1

z1
y1

z1
y1

Rezolvare
Automatul fiind unul de tip Moore, se vor determina direct strile compatibile.
f K = f K.ij = c12 c13 c14 [ c23 c14 c13 + c23 ( c14 + c13 )] c24 c34 =
i< j

= c12 c13 c14 c23 c24 c34 z1 C z2 sau z1 C z3 .


Pentru z1 C z2 se obine urmtorul automat Moore redus:
f ( x, z )
g( x , z )

x1
x2
x0
x3
=00 =01 =11 =10

z1

z1
y0

z1
y0

z1
y0

z1
y0

z3

z4
y0

z1
y0

z4
y0

z4

z1
y1

z1
y1

z1
y1

z1
y1

z1

z3

z4

z1

x0 + x1 + x2 + x3
y0

z3

x2
y0

x1 + x3
y0

z4

x0 + x1 + x2 + x3
y1

Moore redus

z1
=

x0

z3
z4

x0

z1

+ x1 + x2 + x3
y0
x2
y0
+ x1 + x2 + x3
y0

Moore redus

z3

z4

x1 + x3
y1

Mealy

z1
z3

z3
z1

x0 + x1 + x2 + x3
- =
y0
x2 x1 + x3
+
y0
y1
Mealy redus
1

x0
x1
x2
x3
=00 =01 =11 =10
z1
z1
z1
z1
z1 =0

y0
y0
y0
y0

z3 =1

z1
y1

00 01 11 10

00 01 11 10

AB
C

AB
C

z1
y0

z1
y1
Mealy redus

g y1 ( x,z )

fC ( x,z )

not

fC = A + B + C = P0 + P1 + P2
not

g y1 = A B C + A B C = P3 + P4
Realizarea automatului cu PLS este dat mai jos .

A
B
C
P0

P1

P2

P3

P4

fD

RS
S Q

fD
1

g y1
S Q

g y1
1

g y1

R
RE

Circuitul PLS a fost realizat din circuite integrate digitale conform relaiei :
PLS = PLA + RS +RE .
Pentru realizarea registrelor , de stare RS i de ieire RE , s-au folosit circuite basculante
bistabile de tip R-S , a cror funcionare este descris de relaiile :
Qn +1 = S + R Qn

R S = 0
Comanda bistabilelor de tip R-S, pentru memorarea unei funcii logice f , se determin astfel:
S = f
Qn +1 = f = f 1 = f ( 1 + Qn ) = f + f Qn = S + R Q n
R = f

DEMULTIPLEXOR (1 din 8): MMC 4599


S se realizeze cu un circuit PLS funcia circuitului MMC 4599, demultiplexor 1 din 8,
cu urmtoarea tabel de funcionare:

Qi,n+1 =

Truth Table (MMC 4599=MC14599)


Write
Addressed Unaddressed
Disable Clear
Latch
Latches
(WD)
(CLR)
(addr=1)
(addr=0)
* Qi,n
0
0
Data (=D)
0
1
1

1
0
1

Data (=D)
Qi,n

**RESET(=0)
Qi,n

RESET(=0)

RESET(=0)

addr=enable address bit for Qi latch; i ( = A 2 A1A 0 ) = 0,..,7


* Qi,n =the previous state of Qi latch
** RESET= reset to zero state (=0)
CAUTION: To avoid unintentional data changes in the
latches, Write Disable must be active (=high) during
transitions on the address inputs A 0 ,A1 and A 2 .

i avnd urmtoarele 16 terminale:


- A 2 ,A1, A 0 = bii de adresare a ieirilor Q0 ,Q1,...,Q7 , bistabilul Qi (cu adresa
A 2 A1A 0 =i) fiind adresat prin adresa addr (= A 2 A1A 0 =i);
- CLR (Clear)=terminal de tergere a ieirilor circuitului, activ n 1 logic
- WD (Write Disable)= terminal de comand a scrierii, activ n 0 logic;
- D (Data)=terminal al strii logice de nscris ;
- Q0 ,Q1,...,Q7 =terminale de ieire, fiecare ieire fiecare ieire fiind generat prin cte
un bistabil ca element de memorare;
- VDD ,VSS =terminale de alimentare la + Vcc i la mas (=Ground);
Rezolvare
Memorarea strii logice pe fiecare dintre cele 8 ieirile notate prin Q0 ,Q1,...,Q7 se
face n cte un bistabil de tip R-S ce are urmtoarea tabel de adevr:

Qn +1 =

R
S

Qn

R
S

0 =

Qn

Qn +1 1

0 =S+ Qn R

Modul de comand al bistabilului de tip R-S pentru a memora starea logic generat
la un moment dat de o funcie logic f, se determin astfel:

f = f 1 = f (1 + Qn ) = f + f Qn
f = Qn +1 = S + R Qn

S=f
R=f

Din tabela de funcionare a circuitului MMC 4599, se obine urmtoarea tabel de


adevr:

WD CLR
addr

Qi,n +1 =

00 01 11 10

Qi,n 0

0
1

WD CLR 00 01 11 10
addr
=D

0
1

0
1

0
1

0
0

0 Qi,n =

D 0 Qi,n

WD CLR
addr

0 + Qi,n
0

0
1

00 01 11 10

1
0

0
0

0
0

1
1

= D WD addr + Qi,n ( WD CLR + addr CLR ) = S + Qi,n R = bistabil R S

S = D WD addr

R = WD CLR + addr CLR = WD addr + CLR

D
WD
CLR
AND
matrix

A2
A1
A0
P8

P0

...

P7

P'0

...

P'7

0
OR
matrix

R Q0
S

0
0

R Q7
S

n realizarea cu PLA sau folosit urmtoarele notaii pentru termenii produs:


2

not

Pi = D WD addr ; i( = addr = A 2 A1A 0 ) = 0,...,7


not

P 'i = WD addr ; i( = addr = A 2 A1A 0 ) = 0,...,7


not

P8 = CLR

DECODOR: MMN 8205


S se realizeze cu un circuit PLA funcia de decodor 1 din 8 a circuitului integrat
digital MMN 8205 cu urmtoarea arhitectur intern:

Q0
A
B
C

Decoder

E1

Q1
..
.
Q7

E2
E3
Rezolvare
...
A
B
C
AND
matrix

E1
E2
E3
P0

P1

...

P7

Q0
1
OR
matrix

Q1
1

Q7
1
Fig.1
Funcionarea circuitului MMN 8205, este descris de relaiile :
1

E1 E2 E3 = 1 Qi = 0, i = ABC
E1 E2 E3 = 0 Qi = 1, i = 0,1,...,7
ce determin la ieirile circuitului funciile logice de selecie:
not

Q0 = A B C E1 E2 E3 = P0
not

Q1 = A B C E1 E2 E3 = P1

not

Q7 = A B C E1 E2 E3 = P7
Realizarea cu PLA a circuitului MMN 8205 este dat n fig.1.

DECODOR binar-7 segmente: SN7447 (CDB447)


S se realizeze, cu un circuit PLA, funcia de decodor binar-7 segmente a circuitului
CDB447, a crui funcionare este dat de urmtoarea tabel de adevr, numit i tabel
de funcie:
FUNCTION TABLE
DECIMAL
OR
FUNCTION
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
BI
RBI
LT

INPUTS

OUTPUTS

LT RBI D C B A
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1

1
0

1 0 0 0
0 0 0
0 0 1
0 0 1
0 1 0
0 1 0
0 1 1
0 1 1
1 0 0
1 0 0
1 0 1
1 0 1
1 1 0
1 1 0
1 1 1
1 1 1

0 0 0 0

BI / RBO *

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
1

ON
OFF
ON
ON
OFF
ON
OFF
ON
ON
ON
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
ON

ON
ON
OFF
ON
ON
OFF
OFF
ON
ON
ON
OFF
OFF
ON
ON
OFF
OFF
OFF
OFF
ON

ON
ON
OFF
ON
ON
ON
ON
ON
ON
ON
OFF
ON
OFF
ON
OFF
OFF
OFF
OFF
ON

ON
OFF
ON
ON
OFF
ON
ON
OFF
ON
OFF
ON
ON
OFF
OFF
ON
OFF
OFF
OFF
ON

ON
OFF
ON
OFF
OFF
OFF
ON
OFF
ON
OFF
ON
OFF
OFF
ON
ON
OFF
OFF
OFF
ON

ON
OFF
OFF
OFF
ON
ON
ON
OFF
ON
ON
OFF
OFF
ON
OFF
ON
OFF
OFF
OFF
ON

OFF
OFF
ON
ON
ON
ON
ON
OFF
ON
ON
ON
ON
ON
OFF
ON
OFF
OFF
OFF
ON

NOTE

2
3
4

1= high level, 0= low level, =irrelevant, ON=1, OFF=0


NOTES: 1. The blanking input ( BI ) must be open or hold at a high level logic when outputs functions are desired.The
ripple blanking input ( RBI ) must be open or high, if blanking or decimal zero is not desired.
2. When a low level logic is applied directly to the blanking input ( BI ), all segment outputs are low regardless
of the level of any other input.
3. When ripple blanking input ( RBI ) and inputs A,B,C,D are at a low level with the lamp-test input high, all
segments outputs go low and the ripple blanking output ( RBO ) goes to a low level (response condition).
4. When the blanking input/ripple blanking output ( BI / RBO ) is open or hold high and a low is applied to the
lamp-test input, all segment outputs are high.
* BI / RBO is wire-AND logic serving as blanking input ( BI ) and/or ripple blanking output ( RBO )

Rezolvare
Termenii produs ai combinaiilor de intrare evideniate n tabelul de funcii sunt:
not

P0 = LT RBI BI D C B A = LT BI D0 C0 B0 A 0
Pj = LT BI Dd Cc Bb A a ; jhexa = dcbabinar ( 0000) B24
PRBI = LT RBI D C B A
PLT = LT BI
iar funciile de ieire avnd urmtoarele forme canonice disjunctive necesare n
materializarea pe un circuit PLA:

Pk + PLT ; = a,b,c,d,e,f,g

k =0

RBO = PRBI
Astfel, funcia de comand a segmentului a este:
a=

a Pk + PLT = P0 + P2 + P3 + P5 + P7 + P8 + P9 + PLT

k =0

Realizarea cu un circuit PLA are urmtoarea form:

BI / RBO

LT
RBI

AND
matrix

C
B
A

P0

P1

P2

P3

P4

PE

PRBI PLT

BI / RBO
0
OR
matrix

0
0

a
b