Sunteți pe pagina 1din 7

Circuite Digitale

- curs 4 -

4. PLD (Programable Logic Device) combinationale: PLA (Programmable Logic


Arrays) si PAL (Programable Array Logic). Decodoare. Codoare.
Multiplexoare. Demultiplexoare

4.1 PLA (Programmable Logic Arrays)


Un PLA este o combinaţie, la 2 nivele de dispozitive AND-OR care pot fi programate să realizeze orice
sumă de produse logice, cu singura limitare legată de numarul de dispozitive logice pe circuit.
Limitarile se refera la:
- număr de intrări (n)
- număr de ieşiri (m)
- număr de termeni produs (p)

O reprezentare 4x3 PLA cu 6p (m×n cu 6p) este dată in figură.

Q1  P1  P2  I1  I 2  I1  I 2  I 3  I 4
Q2  P3  P4  P5  I1  I 3  I1  I 3  I 4  I 2
Q3  P1  P3  P6  I1  I 2  I1  I 3  I1  I 2  I 4

Un exemplu de PLA este Signectis 82S100 introdus in 1970, 16 intrări, 48 porţi AND, 8 ieşiri, actual ieşită
din uz in favoarea: PAL, CPLD (Combinational Programable Logic Device) şi FPGA (Field Programable
Gate Array). Structura acestui circuit este însă frecvent utilizată pentru a sintetiza operaţii în cadrul mai larg
ASIC (Application-Specific Integrated Circuit).
Companii producatoare: ALTERA, ATMEL, LATTICE Semiconductor, Texas Instruments, XLINK, etc.

4.2. PLD (Programable Logic Device) combinaţionale: PAL (Programable Array


Logic).
Un caz special de PLA şi cel mai utilizat actual tip de PLD este PAL. Spre deosebire de PLA în care ambele
AND ţi OR sunt programabile, dispozitivele PAL au aria OR fixă.
E.g. PAL 16L8 (PAL 20L8) care conţin o arie programabilă AND cu 64 linii şi 32 coloane, având
16432=5248 puncte de “ardere”. Fiecare din cele 64 de porţi AND are 32 intrări. Pinii de ieşire sunt
bidirecţionali.

PLD secvenţial a fost introdus de LATTICE Semiconductor. Un circuit tipic este GAL 16V8, care poate fi
programat pentru a “emula” AND-OR, bistabile şi structuri de ieşire în orice varietate de combinaţie şi
secvenţe PAL. GAL poate fi şters şi reprogramat electric.

4.3. Decodoare.
Decodorul este un circuit combinaţional cu n variabile de intrare şi m2n variabile de ieşire. Corespunzător
combinaţiei de variabile de selecţie este activă o singură linie (H), celelalte fiind inactive (L). Dacă circuitul
are intrarea de autorizare E (Enable – autorizare, validare) pe L, toate ieşirile sunt inactive.

De remarcat faptul că se întâlnesc două variante de Enable: E şi E care înseamnă aceiaşi funcţionalitate, doar
ca în primul caz selecţia circuitului se face pe palierul pozitiv al semnalului Enable iar in al doilea caz pe
palierul negativ.

x1
y1
... Decodor ...
ym
xn

Un exemplu de decodor 1-din-4 este HEF 4555B MSI.


I1 I0 E Y3 Y2 Y1 Y0
1-din-4
I0 Y0 x x 0 0 0 0 0
Y1 0 0 1 0 0 0 1
I1 Y2
0 1 1 0 0 1 0
Y3
1 0 1 0 1 0 0
1 1 1 1 0 0 0
E

Decodor 2 –în-4 şi tabela de adevăr

Expandarea este un proces de extindere a funcţionalităţii unui circuit de un anumit tip folosind circuite de
acelaşi tip. Decodorul poate fi expandat foarte simplu folosind intrarea E. Presupunând că avem decodoare
de tipul 38 şi dorim sa realizăm un decodor 416, schema este cea de mai jos:
38
I0
I1 Y0-7
I2
E
I3

38

Y8-15

Câteva exemple de decodoare specializate sunt:

 SN7442 – decodor BCD-zecimal, 1-in-10


 74x139, decodor dual 2-in-4
 MM74C48 – decodor BCD – led cu 7 segmente, util in afişajul electronic

De remarcat că uneori, funcţionalitatea de bază (decodor) este combinată cu facilităţi specifice unor aplicaţii.
Circuitul MM74HC4514 este un decodor de linie 416, cu bistabile de tip latch care îl fac util pentru
decodarea adreselor de memorie sau aplicaţii de rutare. Circuitele de latch de la intrare permit stocarea
valorilor de intrare astfel încât o ieşire selectata rămâne H chiar daca intrarea se schimbă. Ieşirea este
actualizata numai la semnalul de autorizare.

4.4. Codoare.
Un codor este un circuit digital care efectueaza operaţia inversă codării. Un codor are m 2n intrări şi n
ieşiri. Cel mai obisnuit codor este 2n-în-n

Codor binar

I0
I1 Y0
n iesiri
2n
intrari Yn

I 2n 1
Codor binar

Pentru un codor cu 23 = 8 intrări şi 3 ieşiri (n =3), funcţia realizată este:

Y0 = I1 + I3 + I5 + I7
Y1 = I2 + I3 + I6 + I7
Y2 = I4 + I5 + I6 + I7
In mod obişnuit, codoarele sunt utilizate pentru a controla un set de 2n dispozitive, presupunând că cel mult
un dispozitiv este activ la un moment dat.Această structură se intâlneşte în mod curent în sistemele cu
microprocesor, la secţiunea I/O, unde se procesează cererile de întrerupere.

Totuşi, codorul lucrează corect numai dacă intrările sunt garantate a fi inactive cu excepţia unei singure
intrări, care este activă. Dacă două sau mai multe intrări sunt active simultan, codorul poate genera rezultate
nedorite.

Exemplu:

Ambele 2 sau 4 ar fi utile, dar care cele din cele două? Soluţia este asignarea unei priorităţi, astfel încât
atunci când sunt mai multe intrari pe 1, dispozitivul de codare produce la ieşire numărul cu cea mai mare
prioritate. Un exemplu este codorul cu prioritate 74x148.

EI - Enable Input, intrare autorizare activă pe 0 (L-low)


I k - intrare k, activă pe 0 (L-low)
A2 A1 A0 - codul invers al intrării prioritare active
GS - Group Select, selecţie de grup intern (când una sau mai multe intrări sunt selectate simultan)
EO - Enable Output, autorizare circuit
I 7 - intrarea cea mai prioritară
I 0 - intrarea cea mai puţin prioritară

Semnificaţia ieşirilor GS si EO este urmatoarea : GS indică faptul ca cel puţin o intrare este activa; EO
este activ numai daca EI este activ şi nici una din intrări nu este activată. Aceste ieşiri permit expandarea
circuitului care poate fi facută serie sau paralel.
4.5. Multiplexoare

Multiplexorul este un circuit digital care conectează datele de o singură intrare din cele n disponibile la
ieşire. Selecţia unei anume intrări este controlată de codul de la intrările de selecţie.

Un circuit reprezentativ este 74x151, a cărui schemă şi tabelă de adevăr este dată mai jos. A, B, C sunt
intrările de selecţie, D0, ...D7 sunt intrările de date, y este ieşirea iar EN este E (Di este Di negat).

Aplicaţii ale circuitului sunt expandarea, implementarea de funcţii, etc. Expandarea înseamna extinderea
functionalităţii unui circuit folosind mai multe circuite de acelaşi tip.

Expandarea unui multiplexor pentru 32 de intrări folosind circuite de multiplexare 74xx151 cu 8 intrări se
face ca mai jos. Ideea de bază este (ca în multe alte expandări) de a utiliza pinul de validare a circuitului
respectiv când grupul de indici trece la urmatorul grup de câte 8 intrări.
Circuitul 74LS139 utilizat în schema de mai sus este un decodor/demultiplexor dual (două circuite pe
acelaşi integrat) 1-din-4.

4.6. Demultiplexoare
Funcţionarea unui demultiplexor este invers faţă de cea a unui multiplexor. De exemplu, în DMUX 18,
DMUX-ul are o singură intrare şi S=3 intrări pentru a selecta una din cele 8 ieşiri şi a transmite datele de de
la o singură intrare (m=2n-1) când circuitul este autorizat.
Un decodor care are un pin E poate fi utilizat ca DMUX. E este conectat la linia de intrare când intrările de
select determină care din liniile de ieşire este selectată pentru a transmite datele de pe linia de intrare. De
fapt, cataloagele prezinta aceste circuite ca “decodoare/demultiplexoare”.

SRCA DSTA
SRCB DSTB
BUS
 MUX
MUX 

SRCz DSTz

SRCsel DSTsel

Un multiplexor poate fi utilizat pentru a selecta una din cele n surse pentru a fi transmise pe bus.
Demultiplexorul poate fi utilizat pentru a ruta (directa) datele de pe bus la una din cele m destinaţii. Un
exemplu de demultiplexor comercial este 74x251.

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