Sunteți pe pagina 1din 12

Seria GAL

Firma Lattice a lansat o familie de circuite PLD din familia PAL, denumite GAL Generic
Array Logic care s-a dovedit de un suucces deosebit i care are urmtoarele trsturi
caracteristice :
- utilizeaz tehnologie CMOS;
- circuitele sunt de tip E2PLD (Electrically Erasable);
- sunt circuite la fel de rapide ca circuitele bipolare (excepie ECL care sunt mai rapide);
- circuitul poate fi protejat mpotriva copierii;
n cele ce urmeaz vom prezenta spre exemplificare circuitul GAL16V8.
Circuitul GAL16V8
Cteva trsturi specifice acestui circuit sunt :
- Circuitul este reprogramabil electric; sunt garantate 100 de cicluri sriere/citire; se
garanteaz meninerea strii programate peste 20 ani.
- Bitul de securitate odat programat mpiedic coperea (imediat) a circuitului;
- Din punct de vedere al consumului, circuitul este oferit n dou variante (Icc se refer la
starea de funcionare/ataptare) :
o Half Power cu Icc = 90/70 mA i tp = 15 25 ns;
o Quarter Power cu Icc = 45/35 mA i tp = 20 35 ns;
Arhitectura general a circuitului
n fig.1 este prezentat schema electronic a circuitului GAL16V8 n care se remarc :
- aria SI programabil;
- aria SAU fix;
- 8 OLMC (Output Logic Macro Cell) asociate cu 8 pini notai I/O/Q de Intrare/Ieire
combinaional/Ieire secvenial;
- 8 intrri de date notate I;
- 2 intrri care pot avea funcii multiple :
o 1 intrare de date sau clock notat I/CLK ;
o 1 intrare de date sau de validare pentru ieirea trei stri, notat I/OE;
O inspecie mai atent pune n eviden faptul c din cei 8 pini asociai cu OLMC-urile numai
6 pot avea 3 funciuni, respectiv I/O/Q , iar cei doi pini asociai cu OLMC-urile de la interior
(pinii 15 i 16) pot fi configurai numai cu 2 funciuni, ambele de ieire, respectiv O/Q.
Aria SI
Aria SI este programabil i are dimensiunea de 32 linii de semnal x 64 PT. Cele 32 linii de
semnal provin de la :
- 8 buferre de intrare cu ieirea direct i complementat;
- 8 buferre de reacie (feedback) cu ieirea direct i complementar; acestea sunt cte
unul pentru fiecare OLMC i pot asigura reacie combinaional, reacie secvenial
sau transformarea unei ieiri n intrare. Aa cum se va vedea la funcionarea unui
OLMC, un cazul folosirii unui pin I/O/Q drept intrare, aceast intrare conectat la
buferrul de reacie poate ntlnit n dou variante :
o intrarea de la propriul OLMC (notat n mod curent n);
o intrarea de la OLMC-ul anterior (notat n-1 );

Fig. 1. Circuitul GAL16V8 ; Arhitectura intern

Aria SAU
Aria SAU este fix. Pentru fiecare OLMC exist cte 8 PT. Rezult c, la osingur trecere,
circuitul GAL ofera posibilitatea implementrii unei funcii sum de produse avnd cel mult 8
produse.
n plus, pentru unele implementri este posibil ca unul din PT s fie folosit n scopul
comandrii circuitului TS de la ieirea OLMC i atunci rmn pentru funcia logic sum de
produse numai 7 PT.
Macrocelula de ieire
Arhitectura general a unei OLMC este prezentat n fig. 2. i cuprinde mai multe blocuri care
dau versatilitate circuitului GAL.

Fig. 2. GAL16V8 : Arhitectura OLMC


Principalele componente ale OLMC sunt:
1. un CBB tip D, sincron pe frontul cresctor al tactului; nu are intrri de set sau reset.
2. patru circuite multiplexoare, notate MUX :

3.
4.

5.

6.

PT MUX - stabilete dac al 8-lea PT alocat unei OLMC este folosit la suma
de produse sau este folosit drept comand pentru circuitul TS de ieire.
TS MUX selecteaz comanda circuitului TS de ieire, comand care poate fi :
i. Comun pentru toate circuitele TS :
a. de la intrarea OE;
b. de la Vcc (toate circuitele TS validate);
c. de la mas (toate circuitele TS blocate);
ii. Individual, pentru fiecare circuit TS de la cte un PT.
O MUX multiplexor care selecteaz tipul de ieire, combinaional sau
secvenial.
F MUX multiplexorul de feedback stabilete data care se aplic bufferului de
reacie , dat care poate fi :
Reacie secvenial de la propriul bistabil;
Reacie combinaional;
Pinul propriului OLMC transformat n intrare de date
Pinul de la OLMC-ul anterior transformat n intrare de date
un circuit XOR care stabilete nivelul actv al ieirii att n varianta combinaional ct
i n varianta secvenial.
un circuit TS inversor de ieire care poate facilita :
realizarea unei ieiri de tip trei stri;
utilizarea pinului respectiv drept intrare;
intrarea de clock, notat CLK, este conectat n permanen la CBB. Atunci cnd
circuitul funcioneaz n modul combinaional, bistabilul nu intervine n funcionare i
intrarea CLK, dei rmne aplicat la bistabil, este configurat ca intrare de date,
notat I.
intrarea de validare a ieirilor, notat OE, atunci cnd nu folosete ca intrare de
validare pentru circuitele TS poate fi folosit ca inrare de date, notat I.

n fig. 1. se observ c cele 8 OLMC-uri sunt mprite n dou grupe de patru, aranjate
simetric fa de centru, un grup celulele 12 15 i al doilea grup, 16-19. n cele ce urmeaz
vom nota cu n macrocelula curent la care ne referim, cu n-1 macrocelula precedent din
acelai grup (ceea ce pentru grupul 12-15 nseamn chiar macrocelula cu numrul de ordine
precedent, dar pentru grupul 16-19 nseamn de fapt macrocelula cu numrul de ordine
crescut cu o unitate), iar cu n+1 vom nota macrocelula care urmeaz celei n discuie.
Arhitectura unei OLMC, i de aici implicit, arhitectura pentru ntregul GAL, se poate fixa cu
ajutorul unor bii de comand, unii comuni pentru toate OLMC-urile, unii individuali pentru
fiecare OLMC n parte. Aceti bii de control sunt notai:
SYN i AC0 doi bii comuni pentru toate OLMC-urile cu ajutorul crora se
stabilete modul de funcionare al GAL-ului; n principiu exist trei moduri de
funcionare pentru un GAL modul combinaional, modul registru i modul
complex.
AC1(n) cte un singur bit pentru fiecare OLMC; acest bit configureaz n mod
particular OLMC-ul respectiv, evident dintr-un cadru mai restrns de posibiliti;
indicele n arat la care dintre OLMC-uri se refer bitul n discuie.
Se face precizarea c, pentru o funcionare corect, comenzile AC0 i SYN nu pot avea
simultan valoarea 0 !

A. Modul simplu de funcionare


Acest mod de funcionare se realizeaz pentru comanda SYN = 1 i AC0 = 0 comun pentru
toate OLMC-urile. Fiecare OLMC poate fi configurat independent prin comanda AC1(n):

Pentru AC1(n) = 0 sunt posibile configuraiile din fig. 3. a. i b.

Fig. 3. Modul simplu de funcionare; structura OLMC-ului n pentru AC1(n) = 0;


a. n cazul n care AC1(n-1) = 0;
b. n cazul n care AC1(n-1) = 1;
Se remarc faptul c circuitul TS este validat n permanen de alimentarea V cc , pinul n
fiind configurat ca ieire combinaional fr facilitatea TS. Indicele n-1 se refer, aa
cum s-a precizat anterior, la OLMC-ul precedent pornind de la cele dou periferii ctre
centru.
De asemenea se remarc (vezi fig.2. nota de subsol) c OLMC-urile exeterioare 12 i 19
permit aplicarea intrrilor CLK i OE ca intrri de date cu acces la matricea SI.

Pentru AC1(n) = 1 , OLMC-ul arat ca n fig. 4.

Fig. 4. Modul simplu de funcionare; structura OLMC-ului n pentru AC1(n) = 1


n acest caz circuitul TS este blocat i pinul n poate fi folosit numai ca intrare de date, aplicat
ns prin OLMC-ul urmtor.
n funcie de AC1(n-1), la propriul buffer de reacie se poate aplica fie 0 logic (pentru AC1(n1) = 0 ) fie pinul anterior, notat n-1 , folosit la rndul su ca intrare de date (pentru AC1(n-1)
= 1).
i n acest caz intrrile CLK i OE sunt folosite ca intrri de date prin intermediul OLMCurilor exterioare.
Concluzii pentru modul simplu de funcionare
n acest mod de funcionare, stabilit prin comanda SYN = 1 i AC0 = 0, GAL-ul funcioneaz
ca un circuit combinaional cu urmtoarele trsturi:
- Circuitul are 10 intrri de date (cele 8 intrri clasice plus CLK i OE);
- Circuitul are 8 ieiri combinaionale, active H sau L, fr facilitatea oferit de ieirea
TS;
- Pornind de la OLMC-urile extreme (12 i 19) ctre centru (15 i 16) ieirile pot fi
transformate pe rnd n intrri (de aceea aceti pini sunt notai I/O); se poate ajunge la
situaia extrem de circuit combinaional cu 16 intrri i 2 iesiri (pinii 15 i 16 nu pot
fi transformai n intrri ei pot fi numai ieiri); stabilirea modului de funcionare a
unui pin, ca intrare sau ieire, se face din comanda AC1(n); se subliniaz ideea
transformrii pe rnd, de la extremiti spre centru, a ieirilor n intrri.
- Circuitul GAL, utilizat n modul simplu de funcionare, poate implementa funcii
combinaionale de tipul sum de opt produse.
- Ilustrarea acestui mod de funcionare este realizat n Fig. 5.

Fig. 5. Utilizarea circuitului GAL16V8 n modul simplu de funcionare

B. Modul de funcionare Registru


Comanda AC0 = 1 i SYN = 0 definete o configuraie pentru GAL care poart numele de
Mod Registru. i n aceast situaie comanda AC1(n) personalizeaz fiecare OLMC n parte
dup cum urmeaz.
Pentru AC1(n) = 0 , OLMC-ul arat ca n fig. 6. i sugereaz o funcionare
de GAL secvenial propriu-zis.

Fig. 6. Modul de funcionare Registru; structura OLMC-ului n pentru AC1(n) = 0;


Cele patru MUX-uri sunt astfel comandate nct asigur:
- PT MUX asigur 8 PT la circuitul SAU;
- O MUX valideaz ieirea bistabilului care ajunge la pinul n;
- TS MUX asigur ca toate circuitele TS de ieire s fie validate de la intrarea OE
comun (cu nivel activ 0);
- F MUX asigur ca la feedback s se aplice reacia de la bistabil (cum este normal
pentru un circuit secvenial);
De asemenea se observ c, n aceast funcionare, dac ar fi comanda SYN = 1, funcionarea
ar fi similar numai c la OLMC-urile extreme (12 i 19) nu s-ar asigura reacie de la bistabil
ci, n locul ei, intrrile CLK i respectiv OE ar avea acces la aria SI !! ( facilitate destul de
greu utilizabil pentru c, totui, CLK i OE continu s se aplice ca tact la bistabile i
validare pentru circuitele TS).

Pentru AC1(n) = 1 , OLMC-ul arat ca n fig. 7., ceea ce presupune o


funcionare de circuit combinaional (dei suntem tot la modul Registru),
pinul corespunztor avnd posibiliti de a fi implementata ca intrare sau
ieire, I/O, fiind validat de un circuit TS cu comand individual.

Fig. 7. Modul de funcionare Registru; structura OLMC-ului n pentru AC1(n) = 1;


Cele patru MUX-uri sunt astfel comandate nct asigur:
- PT MUX asigur 7 PT la circuitul SAU; se pot implementa funcii combinaionale de
tipul sum de 7 produse;
- O MUX valideaz ieirea combinaional (cu nivel activ H sau L, vezi circuitul
XOR), bistabilul fiind scos din funcie;
- TS MUX asigur faptul c cel de-al 8-lea PT este folosit pentru comanda individual a
circuitului TS;
F MUX asigur ca la feedback s se aplice reacia de la pinul de ieire; aceasta
asigur pentru pin o funcionare bidirecional, de tip I/O : pinul se poate folosi fie ca
reacie de la ieirea combinaional (pentru funcii logice cu dou treceri), fie ca
intrare de date similar celorlalte intrri (se extinde n acest fel numrul variabilelor de
intrare);
Concluzii pentru modul de funcionare Registru
n acest mod de funcionare, stabilit prin comanda SYN = 0 i AC0 = 1, GAL-ul funcioneaz
ca un circuit secvenial cu urmtoarele trsturi:
- circuitul are 8 intrri de date;

circuitul are 8 ieiri de tip registru (secveniale) prevzute i cu poart TS pe ieire; de


la fiecare bistabil exist reacie ctre aria SI; funcia sum de produse aplicat la
intrarea bistabilelor conine 8 PT;
semnalul de tact este comun pentru toate bistabilele de la intrarea CLK;
validarea pentru toate circuitele TS este comun de la intrarea OE activ pe nivel L;
pornind de la extreme spre centru se poate renuna la cte un bistabil, pinul respectiv
putnd fi transformat n pin combinaional, bidirecional (notat I/O) , avnd validare
individual pentru poarta TS; n acest caz funcia sum de produse conine numai 7
PT, al 8-lea PT fiind folosit pentru validarea TS; cele dou ieiri centrale (15 i 16) nu
pot fi transformate, rmnnd ieiri de tip registru;

Aceast funcionare este ilustrat n fig. 8.

Fig. 8. Utilizarea circuitului GAL16V8 n modul de funcionare Registru


C. Modul de funcionare Complex
Cele patru MUX-uri sunt astfel comandate nct asigur:
- PT MUX asigur 7 PT la circuitul SAU; se pot implementa funcii combinaionale de
tipul sum de 7 produse;
- O MUX valideaz ieirea combinaional de la poarta SAU (cu nivel activ H sau L,
vezi circuitul XOR), bistabilul fiind scos din funcie;
- TS MUX asigur faptul c cel de-al 8-lea PT este folosit pentru comanda individual a
circuitului TS;
- F MUX asigur ca la feedback s se aplice reacia de la propriul pin de ieire; aceasta
asigur pentru pin o funcionare bidirecional, de tip I/O : se asigur fie reacie de la
ieirea combinaional (pentru funcii logice cu dou treceri), fie intrare de date

similar celorlalte intrri (se extinde numrul variabilelor de intrare); excepie fac
celulele extreme (12 i 19) care returneaz la feedback intrrile CLK i respectiv OE,
folosite ca simple intrri de date;

Fig. 9. Modul de funcionare Complex; structura OLMC-ului pentru AC1(n) = 1;


Concluzii pentru modul de funcionare Complex
n acest mod de funcionare, stabilit prin comanda SYN = 1 i AC0 = 1, GAL-ul funcioneaz
ca un circuit combinaional cu urmtoarele trsturi:
- circuitul are 10 intrri de date (cele 8 clasice plus CLK i OE);
- circuitul are 8 ieiri combinaionale (cu nivel activ H sau L vezi circuitul XOR)
prevzute i cu poart TS pe ieire, cu comand de validare individual; funcia sum
de produse obinut la ieire conine 7 PT;
- dintre cel 8 ieiri, numai 6 au reacie ctre aria SI, avnd o funcionare bidirecional,
de tip I/O;
Modul Complex de funcionare este similar cu modul Simplu, oferind n plus facilitatea de
validare individual pentru circuitele de ieire de tip TS, .
Aceast funcionare este ilustrat n fig. 10.

10

Fig. 10. Utilizarea circuitului GAL16V8 n modul de funcionare Complex


Observaii finale
1. Modul de funcionare Complex combinat cu comanda AC1(n) = 0 nu este uzual deoarece
combin n mod nefericit modul Complex cu cel Registru : AC1(n) fiind 0, celula OLMC
este folosit ca bistabil cu tact CLK i validare prin OE comun pentru toate celulele; prin
comanda SYN = 1, ns, similar modului Complex, intrrile CLK i OE sunt folosite
simultan i ca intrri de date; aceast suprapunere de utilizri poate crea probleme de
propagare a zgomotelor.
2. Structura unei celule OLMC este determinat cu ajutorul unui ACW Architecture
Control Word. Configuraia acestui cuvnt este ilustrat de figura urmtoare.

PT 0 . 63 :
XOR(n) 12 .19 :
AC0 i SYN :

- 64 de bii care indic circuitele SI din ntreaga arie SI


care sunt folosite;
- 8 bii individuali pentru fiecare OLMC prin care se
stabilete nivelul activ al ieirii (XOR = 1 corespunde
la nivel H la ieire);
- 2 bii comuni pentru ntreg circuitul prin care se
stabilete modul de funcionare:
AC0 = 0 i SYN = 1
Modul Simplu
AC0 = 1 i SYN = 0
Modul Registru

11

AC1(n) 12 19 :

AC0 = 1 i SYN = 1
Modul Complex
- 8 bii individuali pentru fiecare OLMC prin care, n
cadrul unui mod de funcionare stabilit anterior, se
particularizeaz funcionarea OLMC-ului n

12

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