Studiul decodificatoarelor  şi  multiplexoarelor (folosind programul Digital Works)

 

1.     Consideraţii teoretice

 

Într-un sistem digital se folosesc diverse coduri, altele decât cel binar natural pentru codarea informaţiei. Folosirea decodificatoarelor este absolut necesară pentru a putea trece de la o reprezentare la alta. Ele sunt circuite combinaţionale realizate cu porţi logice.

Vom exemplifica funcţionarea unui decodificator cu ajutorul unui circuit numit decodor 1 din 4. Denumirea sa furnizează şi detalii despre modul de funcţionare: în funcţie de codul de la intrările de adrese A0 şi A1, una dintre cele patru ieşiri este în zero logic; tabela de adevăr pentru un astfel de circuit este cea dată în figura 1. Tot în această figură  este prezentată schema unui astfel de decodificator, simulată în Digital Works.

 

           

Intrări

Ieşiri

E

A1

A0

0

1

2

3

1

X

X

1

1

1

1

0

0

0

0

1

1

1

0

0

1

1

0

1

1

0

1

0

1

1

0

1

0

1

1

1

1

1

0

Fig.1

 

Din tabel se poate observa cu uşurinţă că, funcţie de biţii de la intrările A0 şi A1, una dintre ieşiri şi anume cea dată de numărul zecimal A1×21 + A0×20 va fi în 0 logic. În cazul circuitului simulat din figura 1, ieşirea notată 1 este în 0 logic. Borna E, numită bornă de validare (Enable - în limba engleză) inhibă ieşirile circuitului atunci când este în 1 logic; prima linie a tabelului din figura 1 pune în evidenţă acest mod de funcţionare: semnul X de la cele două intrări A arată că ele nu influenţează în nici un fel funcţionarea circuitului.

Există şi alte tipuri de decodificatoare: 1 din 8, BCD - zecimal (1 din 10), BCD - 7 segmente, ş.a. Unele dintre ele sunt realizate sub forma unor circuite integrate dedicate, altele se pot implementa utilizând porţi logice şi/sau alte decodificatoare.

Vom exemplifica funcţionarea unui alt decodificator, numit decodor BCD - 7 segmente, folosit pentru comanda dispozitivelor de afişare cu led-uri cu şapte segmente. Fiecărui segment i s-a atribuit o denumire, aşa cum se arată în figura 2.a.

 

(a)

0

0

0

0

0

abcdef

8

1

0

0

0

abcdefg

1

0

0

0

1

bc

9

1

0

0

1

abcdfg

2

0

0

1

0

abged

10

1

0

1

0

deg

3

0

0

1

1

abcdg

11

1

0

1

1

cdg

4

0

1

0

0

bcfg

12

1

1

0

0

bfg

5

0

1

0

1

acdfg

13

1

1

0

1

adfg

6

0

1

1

0

acdefg

14

1

1

1

0

cdfg

7

0

1

1

1

abc

15

1

1

1

1

-

(b)

Fig.2

 

Evident, pentru a afişa o cifră, trebuie comandate doar anumite segmente: de exemplu pentru cifra 6 trebuie să existe semnal de comandă pentru segmentele a, c, d, e, f,  şi g. Totodată cifra zecimală şase este reprezentată în cod binar de numărul 0110; în consecinţă, decodorul va activa ieşirile a, c, d, e, f,  şi g atunci când cuvântul de la intrare este 0110. În tabelul din figura 2.b se dau codurile binare şi segmentele comandate pentru fiecare cuvânt de patru biţi. Deoarece sunt patru biţi, există 24 stări posibile şi din acest motiv în afara cifrelor propriu-zise apar şi alte combinaţii ale segmentelor. Acestea sunt decodificate în funcţie de aplicaţia specifică a fiecărui decodor. În unele cazuri ele reprezintă cifrele următoare în sistemul de numeraţie hexazecimal.

Multiplexoarele sunt circuite logice care permit transferul informaţiei la o ieşire de la una din cele 2n intrări, funcţie de selecţia realizată cu n biţi de adresă. Vom exemplifica funcţionarea unui multiplexor cu ajutorul schemei din Fig.3, care simulează schema logică a unui multiplexor cu patru căi.

Fig.3

            Cei doi biţi, A0 şi A1, selectează una dintre intrări iar bitul prezent la această intrare este transferat la ieşirea Y. Intrările A se  mai numesc intrări de adrese sau, pe scurt, adrese, iar cele Yi - intrări de date. Pentru cazul concret din figura 3 se poate observa faptul că A0=1 şi A1=0 şi în consecinţă bitul 1 prezent la intrarea corespunzătoare codului binar A1A0=01 (Y1) este transferat la ieşire, indiferent de stările celorlalte intrări. Acest lucru poate fi urmărit şi în tabela de adevăr din Fig. 4, unde cu X s-au notat biţii a căror valoare este indiferentă. Ecuaţia de funcţionare a multiplexorului prezentat este următoarea:

 

Y=(Y0.A0'.A1'+Y1.A0'.A1+Y2.A0.A1'+Y3.A0.A1)

 

A0

A1

Y0

Y1

Y2

Y3

Y

X

X

X

X

X

X

0

0

0

0

X

X

X

0

0

0

1

X

X

X

1

0

1

X

0

X

X

0

0

1

X

1

X

X

1

1

0

X

X

0

X

0

1

0

X

X

1

X

1

1

1

X

X

X

0

0

1

1

X

X

X

1

1

Fig.4

                Se poate observa că un asemenea dispozitiv poate genera orice funcţie logică de trei variabile.

            Multiplexoarele se realizează în variante constructive cu 4, 8, 10 sau 16 intrări de date.

            Variantele realizate în tehnologie CMOS ale multiplexoarelor funcţionează după acelaşi principiu, însă au în plus o facilitate importantă: permit multiplexarea semnalelor analogice, deoarece tranzistorii MOS se comportă ca veritabile comutatoare. Un avantaj în plus îl constituie şi faptul că transferul semnalelor este permis în ambele sensuri.

 

                2. Procedeul experimental

 

            a) Se verifică funcţionarea unui decodificator 1 din 8 astfel:

·        se încarcă fişierul 1din8.dwm (se face clic pe butonul 1, urmat de dublu clic pe numele fişierului);

·        se apasă 4pentru a începe simularea;

·        se selecteaza  I pentru cursor în vederea modificării intrărilor interactive;

·        se caută combinaţia de la intrările E1, E2 şi E3 care face posibilă funcţionarea normală a circuitului;

·        pentru această configuraţie se modifică intrările de adrese, astfel încât să se obţină toate combinaţiile posibile;

·        @  se notează tabela de adevăr a circuitului.

            b) @ Se verifică funcţionarea unui decodificator 1 din 10 folosind algoritmul de mai sus şi fişierul 1din10.dwm şi se notează tabela de adevăr.

            c) @ Se stabileşte tabela de adevăr a unui decodificator BCD - 7 segmente simulând funcţionarea acestuia cu ajutorul fişierului BCD-7.dwm.

            d) Utilizând exemplul din lucrare, se realizează în Digital Works un multiplexor cu 8 căi:

·        se poziţionează opt porţi SI cu câte patru intrări una sub cealaltă;

·        ieşirile acestor porţi se leagă, folosind unealta pentru legături !, la cele patru intrări de la două porţi SAU;

· ieşirile porţilor SAU se leagă la rândul lor la cele două intrări ale unei alte porţi SAU; ieşirea acesteia din urmă va fi ieşirea multiplexorului;

· se poziţionează trei intrări interactive pentru cele trei intrări de adresă şi altele opt pentru intrările de date;

· legăturile de la intrările de date şi de la cele de adrese, la fiecare dintre porţile SI cu patru intrări, se fac după următoarea regulă: se conectează la Ai intrarea porţii a cărei adresă scrisă în binar are 1 logic pe acea poziţie; în caz contrar legătura se face la ; de asemenea una dintre intrările fiecărei porţi trebuie conectată la intrarea de date respectivă (pentru care s-a poziţionat intrarea interactivă);

· la ieşirea multiplexorului se leagă un led;

· se poate insera text în zona de lucru astfel:

    

 

·        @ se face simularea şi apoi se stabileşte tabela de adevăr.

 

            3. Conţinutul referatului

·        Schemele folosite şi tabelele de adevăr completate pentru fiecare caz în parte.

·        Explicaţi de ce se pot realiza orice funcţii de trei variabile logice cu ajutorul unui multiplexor 1 din 8.

·        Ce schimbări ar trebui făcute pentru ca multiplexoarele şi decodificatoarele prezentate să realizeze funcţia negată ?