CIRCUITE NUMERICE 1 II 5 7 Sumatoare numerice

  • Slides: 15
Download presentation
CIRCUITE NUMERICE 1 II. 5. 7. Sumatoare numerice Sistemele cu microprocesor efectuează operaţii de

CIRCUITE NUMERICE 1 II. 5. 7. Sumatoare numerice Sistemele cu microprocesor efectuează operaţii de comparare, dar şi operaţii de sumare (adunare = operaţie elementară). Celelalte operaţii se pot reduce la adunare: scăderea se reduce la adunarea descăzutului cu complementul scăzătorului, iar înmulţirea şi împărţirea se realizează prin adunări repetate. Blocul care realizează operaţia fundamentală se numeşte sumator. II. 5. 7. 1 Semisumatorul elementar Acest circuit realizează sumarea a 2 biţi. Poate fi folosit pentru sumarea cifrelor de pe rangul cel mai puţin semnificativ (rangul 0) a două numere binare. Tabelul de adevăr al circuitului: x 0 Diagramele VK: x 0 y 0 s 0 t 1 0 0 0 1 0 0 1 1 1 0 y 0 s 0= x 0·y 0 + x 0·y 0 = x 0 y 0 s 0= suma pentru rangul 0 t 1= transportul către rangul 1 x 0 0 1 0 1 y 0 t 1= x 0·y 0 CURS NR. 9

2 CIRCUITE NUMERICE t 1 Schema semisumatorului arată ca în figură: x 0 y

2 CIRCUITE NUMERICE t 1 Schema semisumatorului arată ca în figură: x 0 y 0 s 0 II. 5. 7. 2 Sumatorul elementar Fie două numere binare de n biţi: Ale căror echivalenţi zecimali sunt: Suma celor două numere este: x = xn-1 xn-2. . . x 1 x 0 |2 y = yn-1 yn-2. . . y 1 y 0 |2 x = xn-1 · 2 n-1 + xn-2 · 2 n-2 +. . . + x 1 · 21 + x 0 · 20 |10 y = yn-1 · 2 n-1 + yn-2 · 2 n-2 +. . . + y 1 · 21 + y 0 · 20 |10 s = tnsn-1 sn-2. . . s 1 s 0 |2 Prin sumarea celor două numere binare se obţine un număr cu acelaşi număr de biţi şi un bit de transport. Realizarea sumării se face întocmai ca în baza 10, sumând fiecare bit începând cu rangul cel mai puţin semnificativ şi adunând transportul la ordinul superior. CURS NR. 9

CIRCUITE NUMERICE 3 Circuitul are 2 intrări de date xk şi yk şi o

CIRCUITE NUMERICE 3 Circuitul are 2 intrări de date xk şi yk şi o intrare pentru transportul de la rangul inferior tk-1 şi două ieşiri sk şi tk+1, adică suma celor 2 biţi şi transportul către rangul superior. xk sk tk+1 k yk Tabelul de adevăr: tk-1 xk yk tk-1 sk tk+1 0 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 1 0 0 1 1 Diagramele VK: xkyk 00 01 11 10 0 0 1 1 1 0 tk-1 sk = xk·yk·tk-1+ xk·yk·tk-1= xkyk 00 01 11 10 0 1 0 1 1 1 tk-1 tk+1 = xk·yk·tk-1 + xk·yk = = xk·(yk·tk-1+ yk·tk-1) + xk·(yk·tk-1+ yk·tk-1) = = (xk·yk+ xk·yk)·tk-1 + xk·yk = = xk·(yk tk-1) + xk·(yk tk-1) = xk yk tk-1 = (xk yk)·tk-1 + xk·yk CURS NR. 9

CIRCUITE NUMERICE 4 Conform cu ecuaţiile determinate mai sus, schema logică a sumatorului arată

CIRCUITE NUMERICE 4 Conform cu ecuaţiile determinate mai sus, schema logică a sumatorului arată ca în figură: xk yk sk tk+1 tk-1 II. 5. 7. 3 Expandarea sumatoarelor x 0 GND xk tk-1 y 0 yk k tk+1 sk s 0 x 1 xk tk-1 y 1 yk k tk+1 sk s 1 xn-1 yn-1. . . xk tk-1 yk k tk+1 sk sn-1 sn Transportul tk-1 al primului etaj este legat la 0 logic (nu există transport de la rangul inferior), iar tk+1 al ultimului etaj este sn. CURS NR. 9

CIRCUITE NUMERICE 5 Cap. III Circuite logice secvenţiale Un circuit logic secvenţial (CLS) presupune,

CIRCUITE NUMERICE 5 Cap. III Circuite logice secvenţiale Un circuit logic secvenţial (CLS) presupune, pe lângă partea de logică combinaţională (CLC), şi existenţa unui circuit de memorare, care asigură dependenţa stărilor curente de cele anterioare. Ca structură generală, un CLS poate fi reprezentat ca în figura de mai jos: Intrări x 1 x 2 : xn p 1 p 2 : pk CLC M y 1 y 2 : ym r 1 r 2 : rk Ieşiri x 1, x 2, . . . xn – semnale de intrare y 1, y 2, . . . ym – semnale de ieşire r 1, r 2, . . . rk – semnale de stare pentru starea ulterioară p 1, p 2, . . . pk – semnale de stare pentru starea curentă Spre deosebire de un CLC la care valorile curente ale intrărilor definesc complet valorile ieşirilor în acel moment, pentru CLS valorile ieşirilor la un moment dat depind atât de valorile intrărilor la momentul respectiv, cât şi de valorile aplicate la momentele anterioare. CURS NR. 9

CIRCUITE NUMERICE 6 CLS pot descrise prin două sisteme de ecuaţii: y 1= f

CIRCUITE NUMERICE 6 CLS pot descrise prin două sisteme de ecuaţii: y 1= f 1(x 1, x 2, . . . xn; p 1, p 2. . . pk) y 2= f 2(x 1, x 2, . . . xn; p 1, p 2. . . pk). . . pentru ieşiri ym= fm(x 1, x 2, . . . xn; p 1, p 2. . . pk) r 1= h 1(x 1, x 2, . . . xn; p 1, p 2. . . pk) r 2= h 2(x 1, x 2, . . . xn; p 1, p 2. . . pk). . . pentru semnale de stare rk= hk(x 1, x 2, . . . xn; p 1, p 2. . . pk) În funcţie de modul de funcţionare CLS se împart în: - CLS asincrone – trecerea de la o stare la alta se face la momente nedeterminate de timp - CLS sincrone – trecerea de la o stare la alta se face la momente bine determinate de timp, momente marcate de un semnal de tact. CURS NR. 9

CIRCUITE NUMERICE 7 III. 1. Circuite basculante bistabile (CBB) CBB sunt circuite cu 2

CIRCUITE NUMERICE 7 III. 1. Circuite basculante bistabile (CBB) CBB sunt circuite cu 2 stări stabile (distincte), tranziţia între cele 2 stări făcându-se la aplicarea unor semnale de comandă din exterior. CBB sunt circuite cu memorie, ceea ce însemnă că examinând valorile ieşirilor se poate deduce ultima comandă aplicată circuitului. Acest gen de circuite îşi găsesc aplicaţii numeroase la realizarea numărătoarelor, a registrelor, memoriilor, etc. Există 4 tipuri de CBB: -tip RS -tip JK -tip D -tip T CURS NR. 9

CIRCUITE NUMERICE 8 III. 1. 1 CBB tip RS are 2 intrări de comandă

CIRCUITE NUMERICE 8 III. 1. 1 CBB tip RS are 2 intrări de comandă notate R (Reset – a şterge) şi S (Set – a fixa) şi 2 ieşiri Q şi Q Ieşirile sunt notate astfel deoarece sunt complementare, în orice moment fiind în stări complementare. Intrarea S se foloseşte pentru a scrie informaţia în circuit (informaţia = 1 logic), iar intrarea R se foloseşte pentru a o şterge. Tabelul de adevăr al CBB tip RS: tn Rn 0 0 1 1 Sn 0 0 1 1 tn+1 Qn 0 1 0 1 Qn+1 0 1 1 1 0 0 ? ? Qn+1=Qn Qn+1=1 Qn+1=0 stare interzisă CURS NR. 9

CIRCUITE NUMERICE 9 - Dacă intrările de comandă sunt inactive (Rn=Sn=0) atunci starea circuitului

CIRCUITE NUMERICE 9 - Dacă intrările de comandă sunt inactive (Rn=Sn=0) atunci starea circuitului nu se schimbă (Qn+1=Qn şi Qn+1=Qn) - Informaţia se înscrie în circuit: Sn=1, Rn=0 determină Qn+1=1 respectiv Qn+1=0, indiferent de starea anterioară - Informaţia se şterge din circuit: Sn=0, Rn=1 determină Qn+1=0 respectiv Qn+1=1, indiferent de starea anterioară - Cazul Sn=1, Rn=1 nu are sens deoarece nu se justifică scrierea şi ştergerea simultană a unei informaţii. Condiţia de bună funcţionare a CBB RS este Sn·Rn=0. Sinteza circuitului se face considerând Rn, Sn, Qn semnale de intrare şi Qn+1 semnal de ieşire. Conform tabelului de adevăr de mai sus se pot construi diagramele VK ale celor 2 ieşiri: Sn R n 00 01 11 10 0 X 1 1 1 0 X 1 Qn Qn+1= Sn + Rn·Qn Sn R n 00 01 11 10 0 1 1 X 0 Qn Qn+1= Rn + Sn·Qn CURS NR. 9

CIRCUITE NUMERICE 10 Cele două relaţii pot fi prelucrate astfel: Noile expresii permit sinteza

CIRCUITE NUMERICE 10 Cele două relaţii pot fi prelucrate astfel: Noile expresii permit sinteza CBB numai cu porţi ŞI-NU: S S Q Dacă se înlătură inversoarele se obţine un circuit cu intrările active pe 0 logic. Q R R Utilizând diagramele VK de mai sus se pot grupa zerourile pentru sinteza cu SAU-NU. Sn R n 00 01 11 10 0 X 1 1 1 0 X 1 Qn Qn+1= Rn · (Sn+Qn) Sn R n 00 01 11 10 0 1 1 X 0 Qn Qn+1= Sn · (Rn+Qn) CURS NR. 9

11 CIRCUITE NUMERICE Prelucrând relaţiile cu de Morgan ca mai sus obţinem: Astfel, CBB

11 CIRCUITE NUMERICE Prelucrând relaţiile cu de Morgan ca mai sus obţinem: Astfel, CBB tip RS cu porţi SAU-NU are următoarea schemă: R Q S Q CBB prezentat mai sus este asincron, adică ieşirile se schimbă la momente nedefinite de timp, odată cu schimbarea valorilor de la intrare. Atunci când se lucrează cu circuite mari, întârzierile diferite ale semnalelor pot duce la apariţia unor stări eronate. De aceea se preferă circuitele sincrone, în care toate circuitele sunt sincronizate cu un semnal unic de tact. CURS NR. 9

CIRCUITE NUMERICE 12 Circuitul de mai sus se poate realiza şi el sub formă

CIRCUITE NUMERICE 12 Circuitul de mai sus se poate realiza şi el sub formă sincronă, ca în figura de mai jos. R’ R Q S’ Ck Cât timp semnalul Ck (Clock = tact) este în 0 logic cele două porţi ŞI vor avea ieşirile în 0 logic, deci R’=S’=0, CBB rămânând în starea anterioară. Dacă Ck=1 atunci R’=R şi S’=S, CBB schimbându-şi starea după valorile acestora. Observaţie: Varianta de mai sus are semnalul de tact (Ck) activ pe palier (1 logic). Principala aplicaţie a CBB tip RS o reprezintă înlăturarea oscilaţiilor de contact ale butoanelor mecanice: VCC 1 2 U K R K 1 R U t K=1 K=0 2 U S R Q U t R VCC K=1 K=0 CURS NR. 9

CIRCUITE NUMERICE 13 III. 1. 2 CBB tip JK Acest tip de bistabil elimină

CIRCUITE NUMERICE 13 III. 1. 2 CBB tip JK Acest tip de bistabil elimină starea de nedeterminare a CBB tip RS. Circuitul are două intrări J şi K şi două ieşiri complementare Q şi. III. 1. 2. 1 CBB tip JK asincron Tabelul de adevăr: tn Jn 0 0 1 1 Kn 0 0 1 1 tn+1 Qn 0 1 0 1 Qn+1 0 0 1 1 1 0 Qn+1=Qn Qn+1=0 Qn+1=1 Qn+1=Qn CURS NR. 9

CIRCUITE NUMERICE 14 Sinteza circuitului se face considerând Jn, Kn, Qn semnale de intrare

CIRCUITE NUMERICE 14 Sinteza circuitului se face considerând Jn, Kn, Qn semnale de intrare şi Qn+1 semnal de ieşire. Conform tabelului de adevăr de mai sus se pot construi diagramele VK ale celor 2 ieşiri: Jn Kn 00 01 11 10 0 1 1 0 0 1 Qn Jn Kn 00 01 11 10 0 1 1 0 Qn Qn+1= Jn·Qn + Kn·Qn Qn+1= Qn·Kn + Jn·Qn Relaţiile obţinute se prelucrează cu de Morgan: CURS NR. 9

15 CIRCUITE NUMERICE Cu relaţiile de mai sus putem sintetiza CBB tip JK: S

15 CIRCUITE NUMERICE Cu relaţiile de mai sus putem sintetiza CBB tip JK: S J K Q R Q Blocul încadrat cu linie punctată este un CBB tip RS realizat cu porţi SAU-NU. Se pot determina 2 relaţii de legătură între cele două tipuri de CBB: Se poate înlocui CBB tip RS realizat cu porţi SAU-NU cu unul cu porţi ŞI-NU: S J K Q R Q CURS NR. 9