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ă ?