Sunteți pe pagina 1din 22

Universitatea Transilvania din Braov

Facultatea de Inginerie Electric i


tiina Calculatoarelor
Secia de Automatic i Informatic Aplicat

Proiect
Tehnici de proiectare cu
circuite logice programabile

ndrumtor
Conf. Dr. Ing. MOLDOVEANU Florin

2011 2012

Student
TEODORESCU Drago
An III Grupa 4491 B

Cuprins:

Tema de proiect..pag 1.
Introducere..............................................................pag 2.
Subpunct a)..................................................................................pag 3.

Subpunct b).................................................................................pag 7.

Subpunct c).............................................................pag 12.

Subpunct d)....................................................pag 18.

Bibliografie.............pag 20.

TEMA DE PROIECT NR. 26:


n figura de mai jos este prezentat organigrama ASM pentru o main de stare
sincron, mpreun cu o codificare corespunztoare a strilor.

Se presupune c toate intrrile


sunt sincronizate pe frontul
negativ
al
impulsului
de
tact/clock.
Toate ieirile sunt activate n
starea iniial i dezactivate n
starea final.

Se cere s se :
a)
Construiasc tabelul de stare asociat mainii de stare descrise.
b)
Proiecteze maina de stare utilizndu-se bistabili de tip D. S se implementeze Generatorul
Noii Stri (GNS) utilizndu-se un singur etaj de multiplexoare, iar pentru implementarea Logicii
Combinaionale a Ieirilor (LCE) se vor utiliza pori logice. Este necesar minimizarea lui GNS
utilizndu-se tehnica VID (Variabile Incluse n Diagram). S se deseneze o schem de
conexiune / electric / de montaj a ASM-ului complet, artndu-se clar conexiunile necesare la
intrrile de date ale fiecrui multiplexor precum i semnalele aplicate la intrrile lor de selecie.
Se presupune c toate ieirile sunt instantanee i c distorsiunile / perturbaiile / glitches
semnalelor sub form de impuls pot fi tolerate (cu alte cuvinte schema nu prezint hazard).
c)
Deseneze schema corespunzatoare (incluznd coninutul ROM-ului), reprezentnd o
implementare care utilizeaz o memorie ROM i decodificarea complet a ieirilor i variabilelor
de stare, pentru ASM-ul descris mai sus; se vor utiliza bistabili de tip D i o memorie ROM.
d)
Proiecteze i s se implementeze maina de stare descris mai sus, utilizndu-se bistabili de
tip D i un FPLA; se va utiliza, de asemenea maparea direct a cilor de legatur. FPLA-ul va fi
de capacitate minim. Se va arata modul n care este fcut programarea dispozitivului prin
desenarea unei scheme de conexiune pentru FPLA, ca parte a schemei generale a sistemului
digital / numeric, pentru maina de stare. S se stabileasc dimensiunea necesar pentru FPLA.

INTRODUCERE:
Sinteza automatelor secveniale sincrone (ASS)
Caracteristica de baz a schemelor secveniale sincrone const n acionarea seciunii de memorie
doar la momente de timp echidistante, apariia acestor momente fiind determinat de un semnal unic de
comutare (de sincronizare - ceas).
Rezult ca seciunea de memorie a strii este comandat sincron pe toate componentele vectorului
de stare Y=[y1,y2,,yk].
Pe perioada dintre dou impulsuri consecutive de sincronizare, seciunea de memorie se afl ntrun regim permanent (staionar), ceea ce confer invarian setului Y i Z.
Descrierea algoritmic prin organigrama ASM
Se numete main algoritmic de stare (ASM Algorithmic State Machine) un automat
secvenial sincron realizat ca o main de stare de clasa 4 care este descris de relaiile :

y( t 1) f ( x ( t ), y( t )),

z( t ) g( x ( t ), y( t )), t N
Pentru a sublinia caracterul staionar al funcionrii ASS pe o perioada de ceas TC, seciunea de
memorie a mainii algoritmice de stare va fi denumit, n continuare, registru de stare (RS).
Din acelai punct de vedere funcional, suportul fizic pentru materializarea transformrilor f i g
ale ASM, ca main sincron de clasa 4 va fi denumit generatorul noii stri (GNS), respectiv logica
combinaional a ieirilor (LCE), cele dou blocuri avnd un caracter combinaional (fig.1).

CLK

f(y(t),x(t))
Intrri
x(t)

Generatorul
noii stri (GNS)

Excitaii
RS

Registrul de
stare (RS)

Stri
y(t)

Logica
ieirilor (LCE)

g(y(t),x(t))

Ieiri
z(t)

Fig.1 Structura-bloc a unui ASM.


Procedural, sinteza ASS de tip ASM are drept punct de plecare transpunerea problemei de
conducere (aplicaia) n organigrame ASM.
Organigrama ASM combin elementele descrierii tradiionale prin diagram de stare a unui
automat secvenial cu schematizarea activitiilor de procesare de tip calculator, asigurnd astfel un
instrument eficient pentru proiectare.
Un algoritm de comand (conducere a unui proces) transpus n organigrama ASM, prezint cele
cinci caracteristici eseniale definite de Kinuth: finitudine, determinism, intrri, ieiri i eficien.
Elementele structurale ale descrierii prin organigrama ASM sunt enunate n continuare:
(i) Starea, unicul element fundamental al organigramei, care introduce n mod explicit variabila timp
pe care o asociaz, n mod discret, etapelor (pailor) algoritmului de comand. Simbolul strii
poate conine o list de aciuni de ieire necondiionate.
(ii) Decizia, element de ramificaie n organigram, dependent de una sau mai multe intrri n ASM.
(iii) Ieirea condiionat, element de comand/control a procesului ce descrie alte ieiri dependente de
una sau mai multe intrri.
Se numete bloc ASM o structur ce const dintr-un unic element de stare i o reea de elemente de
decizie i de ieiri condiionate, reeaua fiind obinut prin interconectarea celor trei tipuri de elemente
de baz. Un bloc ASM are o singur cale de intrare i un numr oarecare de ci de ieire, determinate de
structura elementelor de decizie i descrie funcionarea automatului pe perioada unei singure stri.
Organigrama ASM const din unul sau mai multe blocuri ASM interconectate.
2

SUBPUNCTUL a):

Starea stabil q1 cu codul 000:


- intrarea X1 ;
- ieirea necondiionat e M;
- iesiri conditionate: - pt X1 = 0 starea urmtoare e q2 ;
- pt X1 = 1 starea urmtoare e q3 ;
- cai de legatura L1 = X 1 , L2 = X 1 ;

Starea stabil q2 cu codul 001:


- intrarea X2 ;
- iesiri conditionate: -;
- ieirea necondiionat: -;
- pt X2 = 0 starea urmtoare e q2 ;
- pt X2 = 1 starea urmtoare e q4 ;
- cai de legatura L3 = X 2 , L4 = X 2 ;

Starea stabila q3 cu codul 111:


- ieirile necondiionate sunt Pi R;
- starea urmatoare e q5 ;
- iesiri conditionate: - ;
- cai de legatura L5;

Starea stabil q4 cu codul 000:


- intrarea X4 ;
- ieirea necondiionat e M;
- pt X4 = 0 starea urmtoare e q2 ;
- pt X4 = 1 starea urmtoare e q6 ;
- cai de legatura L6 = X 4 , L7 = X 4 ;

Starea stabil q5 cu codul 110:


- intrarea X3 ;
- iesiri conditionate: - ieirea necondiionat: -;
- pt X3 = 0 starea urmtoare e q6 ;
- pt X3 = 1 starea urmtoare e q3 ;
- cai de legatura L8 = X 3 , L9 = X 3 ;

Starea stabila q6 cu codul 011:


- ieirea necondiionat: -;
- iesiri conditionate: - starea urmatoare e q7 ;
- cai de legatura L10;

Starea stabil q5 cu codul 100:


- intrarea X3 ;
- iesiri conditionate: - cai de legatura L11 = X 3 , L12 = X 3 ;
- ieirea necondiionat e Q;
- pt X3 = 0 starea urmtoare e q1 ;
- pt X3 = 1 starea urmtoare e q7 ;

Tabelul ASM pentru organigrama de mai sus este urmtorul:


Urmtoarea etap n proiectarea ASM este aceea n care trebuie precizat logica necesar obinerii
strilor urmtoare i a ieirilor. Pentru acest lucru se ntocmete tabela ASM. Fiecare coloan a strii
urmtoare NA, NB, NC i fiecare coloan a ieirilor M, P, Q, R ale tabelei ASM pot fi considerate ca
probleme de logic combinaional, avnd intrrile A, B, C.

X1
0
1

Intrri
X2 X3
*
*
*
*

X4
*
*

*
*

0
1

*
*

*
*

*
*

*
*

*
*

0
1

*
*

*
*

0
1

*
*

*
*

*
*

0
1

*
*

Starea prezent
Simb.
A
B
0
0
q1
0
0
q1

q2
q2
q3
q4
q4
q5
q5
q6
q7
q7

C
0
0

0
0

0
0

1
1

0
0

1
1

0
0

1
1

1
1

0
0

1
1

0
0

0
0

Starea urmtoare
Simb. NA
NB NC
0
0
1
q2
1
1
1
q3

q2
q4
q5
q2
q6
q6
q3
q7
q1
q7

M
1
1

P
0
0

Ieiri
Q
0
0

R
0
0

0
0

0
1

1
0

0
0

0
0

0
0

0
0

0
0

0
1

1
1

1
1

0
0

0
0

0
0

0
1

1
1

1
1

0
0

0
0

0
0

0
0

0
1

0
0

0
0

0
0

0
0

1
1

0
0

SUBPUNCTUL b):
Avnd diagram de 7 variabile folosim diagrame VID pentru minimizarea generatorului noii
stri (GNS) i a logicii combinaionale a ieirilor.
Pentru includerea unor variabile n diagram, metoda general este urmtoarea :
- se pastreaz pe rnd constante variabilele care nu se includ n diagram i pentru fiecare din acestea
valoarea constant se compar valorile variabilelor care trebuie incluse n diagram cu valorile funciei
din locaiile respective.
Diagramele VID pentru generatorul noii stri i funciile minimizate corespunztoare sunt
urmtoarele:

BC

00

01

11

10

q1

q2

q6

q4

q7

q3

q5

00

01

11

10

X1
X3

0
*

1
1

0
X3

00

01

11

10

0
0

0
*

1
1

0
0

Pt. NA:
I)
BC
A
0
1
II)
BC
A
0
1

BC
III)
BC

00

01

11

10

X1
X3

0
*

0
X3

A
0
1

NA X 1 X 3 BC X 3 A BC

Pt. NB:
I)
BC

00

01

11

10

X1
0

X2
*

0
1

X4
1

00

01

11

10

0
0

0
*

0
1

0
1

A
0
1
II)
BC
A
0
1

AB
III)
BC

00

01

11

10

X1
0

X2
*

0
-

X4
-

A
0
1

NB X 1 X 2 AB X 4 BC AB

Pt. NC:
I)
BC

00

01

11

10

X2

00

01

11

10

1
0

0
0

1
1

II)
BC
A
0
1

BC + AC
III)
BC

00

01

11

10

X2
*

NC X 2 BC BC AC

Pt. M:
BC

00

01

11

10

1
1

0
*

0
0

1
0

00

01

11

10

0
0

0
*

0
1

0
0

00

01

11

10

0
1

0
*

0
0

0
0

00

01

11

10

0
0

0
*

0
1

0
0

A
0
1

M AC AB
Pt. P:
BC
A
0
1

P AC
Pt. Q:
BC
A
0
1

Q AB

Pt. R:
BC
A
0
1

R AC

Nr.ci de leg. / conexiuni de stare

q1
L1

q2

q1
L2

q3

q2
L3

q2

q2
L4

q4

q3
L5

q5

q4
L6

q2

q4

q5

L7

q6

L8

q6

q5
L9

q3

q6

q7

L10

L11

q7

q1

Formatul cuvntului de ieire:


NA NB NC

q7 Stare prez. (simb)


L12 Conexiuni de stare

q7 Starea urm. (simb)

Generatorul noii stri a mainii de stare, implementat cu MUX-uri de 3 biti/ 8 ci

NA ABC X 1 ABC 0 ABC 1 ABC 0 ABC X 3 ABC 1 ABC X 3


NB ABC X 1 ABC X 2 ABC 1 ABC X 4 ABC 1 ABC 0 ABC 0

NC ABC 1 ABC X 2 ABC 0 ABC 1 ABC 1 ABC 0 ABC 0

Implementarea LCE
Pentru implementarea LCE vom folosi circuite integrate de tipul porilor logice I-NU. Pentru a
implementa funciile logice cu pori logice I-NU acestea trebuiesc aduse la o form adecvat (s existe
doar operatori logici de conjuncie i negaie). Procedeul care se va folosi este negarea de dou ori a
funciei i folosirea formulelor lui De Morgan.

M AC AB => M AC AB

P AC => P AC
Q AB => Q AB
R AC => R AC

10

Schema de ansamblu a mainii de stare cu seciunea de memorie implementat cu


bistabili D:

S-au utilizat 10 c.i.:

3 x 74LS151 (-)
2 x 74LS75 (-1)
5 x 74LS00 (-)

11

SUBPUNCTUL c):
O main de stare este un model utilizat n proiectarea automatelor secveniale.
Cnd structura combinaional este implementat cu memorii ROM (Read-Only Memory), maina
algoritmic de stare devine automat programabil algoritmic (APA).

GNS
Xt

LCE
Circuite de decodificare,
multiplexare, logic de
pori, adiionale

ROM

Yt

Yt+1
Registrul de
stare (RS)

Zt
Structura general a
unui APA

Bistabili sincroni

Analiza funcional ct i principiile referitoare la construcia automatelor programabile


algoritmice se bazeaz pe dou concepte fundamentale:
(i) Asimilarea, din punct de vedere structural, a APA cu maini algoritmice de stare de clasa 4
(ASM 4).
(ii) Implementarea generatorului noii stri cu ajutorul memoriilor moarte ROM, PROM sau
EPROM.
Procedura obinuit de utilizare a memoriilor ROM este partiionarea ei virtual pe zone de bii la
ieire, asociate adresrii strii urmtoare, codificrii testelor sau a instruciunilor (a ieirilor de comand
ctre proces). Elementele de decizie (intrrile) pot fi manevrate n diferite moduri, fie prin includerea lor
n decodificatorul de adres sau n locaiile unei zone de memorie, fie prin aplicarea lor unui selector
(multiplexor) al intrrilor.
n continuare se ntocmesc tabelele de adevr extinse pentru memoria ROM din componena
ASM-ului. Pentru aceasta trebuie extinse toate situaiile (din tabela ASM) n care apar combinaii
indiferente, din coloanele intrrilor.

Formatul cuvntului de ieire:


NA NB NC

12

Intrri

Starea
prezent

X1 X 2 X 3 X 4
0 *
0
0
0
0
0
0
0
0

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

1 *
1
1
1
1
1
1
1
1

* *

0
1
0
1
0
1
0
1

* *

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

0
1
0
1
0
1
0
1

* 0

* *

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
0
0
0
0
0
0
0

0
1
0
1
0
1
0
1

* 1

* *

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

1
1
1
1
1
1
1
1

0
1
0
1
0
1
0
1

001

NA NB NC M
0

000

111

001

001

001

010

NA NB NC M
0

0 0 0 0

NA NB NC M
0

1 0 0 0

NA NB NC M
1

1 0 0 0

000

Ieiri
MPQR

Starea
urmtoare

0 0 0 0

13

* *

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

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

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

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

* *

* 0

0
0
0
0
1
1
1
1

0
1
0
1
0
1
0
1

0
0
1
1
0
0
1
1

0
0
0
0
0
0
0
0

* *

* 1

0
0
0
0
1
1
1
1

0
1
0
1
0
1
0
1

0
0
1
1
0
0
1
1

1
1
1
1
1
1
1
1

* *

0 *

0
0
0
0
1
1
1
1

0
0
0
0
0
0
0
0

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

110

NA NB NC M
1

010

001

011

110

011

NA NB NC M
0

1 0 0 0

NA NB NC M
0

1 0 0 0

010

0 1 0 1

NA NB NC M

111

0 0 0 0

14

* *

1 *

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

1
1
1
1
1
1
1
1

* *

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

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

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

1
0
1
0
1
0
1

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

* *

0 *

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
0
0
0
0
0
0
0

* *

0
0
0
0
1
1
1
1

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

0
0
1
1
0
0
1
1

1
0
1
0
1
0
1

111

NA NB NC M
1

011

100

000

100

100

NA NB NC M
1

0 0 1 0

NA NB NC M
0

0 0 0 0

100

NA NB NC M
1

0 0 0 0

110

0 0 1 0

15

Exemplu de implementare cu memorie ROM a mainii de stare,


n versiunea cu decodificare complet
Se poate reduce n mod dramatic spaiul ocupat ntr-o memorie ROM de ctre ASM-uri,
utilizndu-se o selecie calificat / definit (qualifier selection); pentru maina de stare analizat,
aceast operaie implic cel mult un indicator / semnal binar per bloc.

Se observ c pe fiecare rnd, n locaii sunt doar dou tipuri de combinaii; dac locaiile (fiecrui
rnd) se mpart n dou grupe (dup coninut) este suficient o singur variabil binar pentru a le
adresa; avnd ns n vedere c aceste locaii (celecare conin aceleai combinaii binare) nu sunt grupate
omogen, sunt necesare mai multe tipuri / feluri de variabile binare de intrare care nu se modific
pentru cele dou grupe de pe fiecare linie (celelalte variabile binare de intrare care se modific sunt
evident redundante). Analiznd fiecare dintre liniile tabelului de maisus (n conformitate cu cele
menionate) se obine:
- linia 1: pt. X 1 =0 30, pt X 1 =1 F0;
- linia 2: pt. X 2 =0 20, pt X 2 =1 40;
- linia 3: pt. X 4 =0 30, pt X 4 =1 70;
- linia 4: intrri indiferente 80;
16

linia 5:
linia 6:
linia 7:
linia 8:

pt. X 3 =0 04, pt X 3 =1 84;


intrri indiferente -;
pt. X 3 =0 60, pt X 3 =1 E0;
intrri indiferente CA;

Pentru fiecare combinaie de valori ale variabilelor de stare A, B, C, pentru exemplul considerat,
exist o singur variabil deintrare determinant / semnificativ (celelalte dou avd valori
indiferente) care poate avea valoarea logic 0 sau 1 (cu o singur excepie n cazul creia toate
variabilele de intrare au valori indiferente); n funcie de aceste valori se selecteaz unul dintre cele dou
tipuri de coninut de locaie care corespunde unei combinaii a valorilor variabilelor A, B, C. Deoarece
pentru fiecare combinaie de valori ale variabilelor A, B, C exist o alt variabil de intrare
determinant / semnificativ se folosete un MUX la intrarea ROM-ului.

17

SUBPUNCTUL d):
Matricea programabil PLA (Programable Logic Array) este o structur LSI (Large Scale
Integration) care conine un nivel (sau o matrice) I i un nivel (matrice) SAU.
Spre deosebire de memoriile ROM la care matricea sau nivelul logic I este fix, fiind programabil
doar nivelul logic SAU, la structurile PLA sunt programabile ambele matrici.
Programarea PLA-ului se face prin tehnici asemntoare celor utilizate la memoriile ROM att n
cursul procesului de fabricaie ct i de ctre utilizator. n acest ultim caz se numete FPLA (Field/Fuse
PLA).
Pentru implementarea cu FPLA a mainii de stare n varianta cu mapare direct a cilor de
legtur / conexiune de stare, se analizeaz tabela ASM n vederea obinerii expresiilor funciilor NA,
NB, NC, M, P, Q, R (lundu-se n considerare valorile logice 1 coloanele corespunztoare). Ordinea
de completare a coloanelor FPLA-ului decurge din ordinea de parcurgere a tabelei ASM, de sus n jos.

Sinteza cu FPLA a mainii de stare, utilizndu-se maparea direct a cilor de legtur / conexiunilor
de stare

18

n modul prezentat mai sus se obin urmtoarele expresii:

NA ABC X 1 ABC ABC X 3 ABC ABC X 3


NB ABC X 1 ABCX 2 ABC ABC X 4 ABC X 3 ABC X 3

NC ABC X 1 ABC X 1 ABC X 2 ABC X 4 ABC X 4 ABC X 3 ABC X 3

M ABC X 1 ABC X 1 ABC X 4 ABC X 4


P ABC
Q ABC X 3 ABC X 3
R P ABC
n figura de mai sus s-a reprezentat o structur de FPLA de dimensiuni 7x12x7. Schema logic are
7 intrri ( X 1 , X 2 , X 3 , X 4 ,A,B,C), matricea I conine 12 pori cu cte 14 intrri, iar matricea SAU este
prevzut cu 7 pori SAU cu 12 intrri. Numrul de ieiri este egal cu 7 (M,P,Q,R,NA,NB,NC). ns
aceast configuraie de FPLA nu este disponibil comercial, FPLA-urile cu cele mai mici dimensiuni
produse sunt cele n configuraie 8x16x8.

19

BIBLIOGRAFIE:
Suport curs Tehnici de proiectare cu circuite logice programabile
Site-uri folosite pentru cataloagele capsulelor din acest proiect.
1. http://www.ti.com - pagina oficiala a Texas Instruments, Dallas SUA;
site utilizat pentru obinerea caracteristicilor circuitelor integrate folosite n cadrul
prezentului proiect.
2. http://www.alldatasheet.com - pagin de cutare a diferitelor date de catalog ale produselor
diferitelor firme productoare de circute integrate
3. http://www.google.com - motor de cutare internaional
Programe ce au dus la rezolvarea implementrii i ncapsulrii circuitelor
Desenarea schemelor s-a realizat cu ajutorul pachetului de programe OrCAD 9.1.

20

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