45
Sisteme cu Circuite Integrate Digitale Circuite aritmetice Prof. dr. ing. Sorin Hintea Departamentul Bazele Electronicii

Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

  • Upload
    others

  • View
    27

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu Circuite Integrate Digitale

Circuite aritmetice

Prof. dr. ing. Sorin Hintea

Departamentul Bazele Electronicii

Page 2: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Cuprins

Sisteme cu circuite integrate digitale – Circuite aritmetice 2

Operaţii aritmetice

adunarea binară

scăderea binară

înmulţirea binară

împărţirea binară

Artimetici complementare

Circuite sumatoare

Circuite scăzătoare

Circuite multiplicatoare

Page 3: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 3

Operaţii aritmetice

Toate operaţiile aritmetice se pot reduce la însumări

Adunarea binară

se implementează cu un sumator aritmetic

0+0=0

0+1=1

1+0=1

1+1=0 plus un transport egal cu 1 transmis rangului superior

Exemplu: adunaţi următoarele numere binare: 1101, 0111

1101+0111= 101002=2010

Exemplu: adunaţi următoarele numere binare: 011, 111, 001, 011 şi 101

001+111+001+011+101=100112=1910

Page 4: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Cuprins

Sisteme cu circuite integrate digitale – Circuite aritmetice 4

Operaţii aritmetice

Artimetici complementare

Circuite sumatoare pe 1 bit

circuitul sumator incomplet

circuitul sumator complet

tehnica de însumare paralelă (cascadă)

tehnica de însumare cu anticiparea transportului

tehnica de însumare serială

Circuite scăzătoare

Circuite multiplicatoare

Page 5: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 5

Circuite sumatoare pe 1 bit

Sumatorul incomplet

circuitul care adună două cuvinte de 1 bit fiecare se numeşte sumator incomplet de 1 bit;

intrările sunt cei doi biţi care compun cuvintele care se adună, A şi B, iar ieşirile sunt S, care este rezultatul sumă şi C, transportul spre rangul superior

nu se ia in considerare transportul de la rangul inferior ( Carry in)

Intraria b

IesiriS C

0 0

0 1

1 0

1 1

0 0

1 0

1 0

0 1

a b

S

C

Page 6: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 6

Circuite sumatoare pe 1 bit

Sumatorul complet pe 1 bit

sumatorul incomplet de 1 bit nu ţine cont de faptul că etajul de 1 bit este conectat în cascadă cu altele, iar rezultatul adunării depinde atât de cei doi biţi de date cât şi de un bit de transport care vine de la etajul de rang inferior

Ci este transportul de la intrare furnizat de adunarea precedentă iar Co este transportul spre ieşire furnizat pentru următoarea adunare

Intraria b Ci

IesiriS Co

0 0 0 0 0

1 0

1 0

0 1

0 0 1

0 1 0

0 1 1

1 0 0 1 0

0 1

0 1

1 1

1 0 1

1 1 0

1 1 1

a b

S

Ci

Co

Page 7: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 7

Circuite sumatoare pe 1 bit

Rescriem formulele anterioare şi găsim o implementare diferită a celor două funcţii

Se pot utiliza două sumatoare incomplete pentru a implementa ecuaţiile unui sumator complet:

utilizat in

implementarile

practice

Page 8: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 8

Circuite sumatoare pe mai mulţi biţi - procesare paralela

Sumatorul cu procesare paralelă

dacă avem două cuvinte binare A şi B, de lungime mai mare decât un bit, trebuie realizată o structură compusă din mai multe circuite sumatoare de 1 bit, conectate în paralel sau în serie

sumatorul cu procesare paralelă pentru cuvinte de lungime „n” este format din „n” celule primare de sumatoare complete de 1 bit, conectate în cascadă

fiecare etaj primeşte de la cel anterior transportul de intrare şi generează etajului următor un transport de ieşire

Timpul obţinerii rezultatului final depinde de numărul de etaje

Un sistem logic detectează terminarea adunării, moment în care validează încărcarea rezultatului într-un registru

Cu cât n este mai mare, cu atât operaţia de însumare va necesita mai mult timp

Page 9: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 9

Sumatorul cu procesare paralela

Timpul de intarziere total depinde liniar de numarul total de biti

Observatie: Influenta semnalului Carry Out asu[ra timpului de prelucrare estemult mai importanta decat a iesirii Suma

tsumator = (N-1)tcarry + tsum

Tinta: Circuitul care propaga semnalul Carry trebuie sa fie cat mai rapid posibil

Page 10: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 10

Circuite sumatoare pe mai mulţi biţi - anticipare

Sumatorul cu anticiparea transportului

procesare paralelă: rezultatul este întârziat cu atât mai mult cu cât numărul de etaje este mai ridicat

sumatorul cu anticiparea transportului: rezultatul sumă va depinde numai de semnalele de intrare ai şi bi, semnale care vin deodată pentru toţi cei „n” biţi

primul sumator incomplet generează semnalele:

S1 = P= a ⊕ b; C1 = G = ab

pentru etajul „i” avem relaţiile:

Gi = aibi; Pi = ai ⊕ bi

ieşirea etajului n este Cn, unde n este rangul cel mai mare al cuvintelor adunate:

Cn = Gn + PnCn - 1

Page 11: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 11

Sumatorul cu anticiparea transportului

Înlocuind Cn-1 cu transportul de la rangul „n-2” avem:

În continuare şi transportul Cn-2 se poate genera în funcţie de cel de rang imediat inferior lui, Cn-3, ş.a.m.d, până când expresia transportului de rang „n” depinde numai de variabilele a şi b

Pentru însumarea a două numere pe 4 biţi avem:

Cn = Gn + Pn(Gn-1 + Pn-1Cn-2) = Gn + PnGn-1 + PnPn-1Cn-2

i12341234234344

i123123233443444

i1231232332333

i121221222

i111

CPPPPGPPPGPPGPG

)CPPPGPPGP (GPG CPGC

CPPPGPPGPG CPGC

CPPGPG CPGC

CPGC

Ci pentru nivelul 0

Page 12: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 12

Sumatorul cu anticiparea transportului

Anticiparea transportului pentru o însumare pe 3 biţi

rezultatul va fi disponibil cu întârzierea dată de timpii de propagare prin 4 nivele de porţi logice, indiferent de lungimea cuvântului.

Page 13: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 13

Sumatorul cu anticiparea transportului

Dezavantaj: dacă lungimea cuvintelor este mare, circuitele se complică foarte mult; cresc atât numărul circuitelor cât şi numărul intrărilor acestora (în tehnologie VLSI creşterea numărului de intrări ale porţilor ŞI, a lungimii şi numărului traseelor de conexiune duce la creşterea timpilor de propagare, ceea ce ar putea anula complet avantajul de viteză al schemei)

Solutie practică: schemă combinată: anticipare în structura internă a etajelor şi propagare între etaje

Gat1

a1b1

Ci

S1

a1b1

...

S4

...

Co4Gat2

a5b5

S5

a8b8

...

S8

...

Co8 Ci5Gat3

a9b9

S9

a12b12

...

S12

...

Co12 Ci9

Page 14: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 14

Circuite sumatoare pe mai mulţi biţi - serial

Sumatorul cu procesare serială

foloseşte un singur sumator complet de 1 bit

cele două cuvinte de lungime „n” sunt încărcate în regiştrii A şi B; rezultatul se va încărca în registrul sumă S

pe fiecare front al semnalului de ceas Ck se adună câte un bit din fiecare cuvânt de la intrare la care se adaugă şi transportul rezultat din adunarea anterioară; tot la fiecare impuls de ceas bitul rezultat se deplasează în registrul sumă

după „n” impulsuri de ceas, în registrul sumă avem rezultatul pe „n” biţi

Page 15: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 15

Circuite sumatoare pe mai mulţi biţi - serial

Sumatorul cu procesare serială

Dacă din adunarea a două numere de opt biţi rezultă un cuvânt pe nouă biţi, surplusul de 1 este detectat în bistabil, la sfârşitul ciclului de adunare

Dezavantaj al schemei: viteza de adunare este mică (n perioade de ceas)

registre de intrareregistru suma

sumatorul complet

Page 16: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Cuprins

Sisteme cu circuite integrate digitale – Circuite aritmetice 16

Operaţii aritmetice

Artimetici complementare

Circuite sumatoare pe 1 bit

Circuite scăzătoare

circuitul de scădere pe 1 bit incomplet

circuitul de scădere pe 1 bit complet

tehnica de scădere/însumare paralelă (pentru numere mai mari de 1 bit)

Circuite multiplicatoare

Page 17: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 17

Operaţii aritmetice

Scăderea binară

0-0=0

1-0=1

1-1=0

0-1=1 cu un împrumut (borrow) de “1”

Exemplu: realizaţi scăderea între numerele 1101 şi 0110

1101- 13-

0010 6

0111 7

Page 18: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 18

Circuite scăzătoare

Scăzătorul incomplet pe 1 bit

expresia lui D este identică cu cea a sumei S în cazul sumatorului de 1 bit

D – diferenţă,

Bo – împrumut (borrow)

Intraria b

IesiriD Bo

0 0

0 1

1 0

1 1

0 0

1 1

1 0

0 0

a b

D

Bo

Page 19: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 19

Circuite scăzătoare

Scăzătorul complet pe 1 bit

este necesar un scăzător complet de 1 bit pentru a putea considera împrumutul la intrare (împrumutul generat de etajul precedent)

Intraria b Bi

IesiriD Bo

0 0 0 0 0

1 1

1 1

0 1

0 0 1

0 1 0

0 1 1

1 0 0 1 0

0 0

0 0

1 1

1 0 1

1 1 0

1 1 1Co = ab + aBi + bBi

1

1 1 1

00 01 11 10

1

0

abBi

Bo

Co = bBi + a·(b + Bi)

Page 20: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 20

Scăzătorul complet pe mai mulţi biţi – prelucrare paralelă

Exemplul 1: pentru numerele N1 = 110101 şi N2 = 100110 găsiţi diferenţa N1 – N2

(N2)c2=011010 110101+

011010

1 001111

R: N1 - N2=001111; în zecimal avem 53-38=15; rezultatul fiind pozitiv, nu mai este necesară complementarea

Exemplul 1: calculaţi N1 - N2 folosind c2, pentru N1 = 1001 şi N2 = 11010

R: N1 < N2, rezultatul este negativ şi în complement faţă de 2:

(N2)c2=00110 01001+

00110

01111

N1 – N2= - (01111)c2 = - 10001

Page 21: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Cuprins

Sisteme cu circuite integrate digitale – Circuite aritmetice 21

Operaţii aritmetice

Artimetici complementare

complementul faţă de 1 şi 2

numere cu semn

Circuite sumatoare

Circuite scăzătoare

Circuite multiplicatoare

Page 22: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 22

Aritmetica complementara

Necesitatea reprezentării numerelor în complement

scăderea a două numere pozitive poate fi realizată prin adunarea valorii pozitive a descăzutului la valorea negativă a scăzătorului

este necesară reprezentarea în binar a numerelor întregi negative

Complementul faţă de 2 şi complementul faţă de 1

2’s c: (N)c2 = 2n – N

1’s c: (N)c1 = 2n – N – 1

relaţia între cele două reprezentări: (N)c2 = (N)c1 + 1

Exemplul 1: găsiţi complementul faţă de 2 al numărului 1010

N=1010, n=4 , (N)2=24 - 1010 = 10000-1010 = 0110

R: (1010)c2=0110; în zecimal 16 – 10 = 6

Page 23: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 23

Aritmetica complementara

Exemplul 2: găsiţi complementul faţă de 1 al numărului 1010

N=1010, n=4, (N)2=24-1010-1=0101

R: (1010)c1=0101; în zecimal 15 – 10 = 5

Exemplul 3: găsiţi complementul faţă de 1 al numărului 110101

R: (110101)c1=001010

Exemplul 4: găsiţi complementul faţă de 2 al numărului 1010

R: (N)c1=0101; (N)c2=(N)c1+1 = 0101+1 = 0110

Reguli:

1’s c: se complementează toţi biţii cuvântului

2’s c: se adună 1 la complementul faţă de 1

Page 24: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 24

Aritmetica binară C2

Scăderea a două numere pozitive se poate realiza ca o adunare

N1(n) şi N2(n) N1 - N2= N1 + (N2)c2 - 2n

dacă N1< N2

N1 - N2= - (2n - (N1+( N2)c2)) = - (N1+( N2)c2)c2

dacă N1> N2

N1 - N2= 2n - ( N1)c2 -N2 = 2n - (( N1)c2 + N2 ) = (( N1)c2 + N2 )c2

Scăderea termenului 2n este echivalentă în binar cu anularea bitului de transport obţinut în suma N1 +( N2)c2

Forma generală:

N1 - N2= sign(N1 - N2) {[(max(N1 , N2)]c2+(min(N1 , N2)}c2

2’s c pentru numărul mai mare, adunăm cu numărul mai mic 1’s c pentru rezultat şi ataşăm minus dacă N1< N2

Page 25: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 25

Aritmetica binară C2

Scăderea se poate implementa utilizând circuite sumatoare pe n biţi

dacă N1 < N2, adunăm N1 la complementul faţă de 2 a lui N2 , complementăm răspunsul şi ataşăm semnul minus

dacă N1>= N2, diferenţa dintre N1 şi N2 este suma dintre N1 şi complementul faţă de 2 a lui N2 renunţând la transportul din poziţia 2n

Exemplul 1: calculaţi N1 - N2 folosind c2, pentru N1 = 1001 şi N2 = 11010

R: N1 < N2, rezultatul este negativ şi în complement faţă de 2:

(N2)c2=00110 01001+

00110

01111

N1 – N2= - (01111)c2 = - 10001

Page 26: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 26

Aritmetica binară C2

Exemplul 2: pentru numerele N1 = 110101 şi N2 = 100110 găsiţi diferenţa N1 – N2

(N2)c2=011010 110101+

011010

1 001111

R: N1 - N2=001111; în zecimal avem 53-38=15; rezultatul fiind pozitiv, nu mai este necesară complementarea

Exemplul 3: pentru numerele N1 = 10110 şi N2 = 10110 găsiţi N1 - N2 folosind complementul faţă de 2

(N2)c2=01010 10110+

01010

1 00000

R: în comparaţie cu complementul faţă de 1 răspunsul este obţinut fără a adăuga 1 cu condiţia să se renunţe la ultimul transport

Page 27: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 27

Aritmetica binară C2 cu semn

În calculatoare numerele negative se reprezintă în complement faţă de 2

MSB=bitul de semn:

număr pozitiv: MSB=0

număr negativ: MSB=1

Un număr negativ este complementul faţă de 2 al numărului pozitiv:

N1 - N2= N1 + ( - N2)

Adunarea şi scăderea sunt identice

+1010 = 0 1010-1010 = 1 0110

+1510 = 0 1111-1510 = 1 0001

+2310 = 0 10111-2310 = 1 01001

Page 28: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 28

Aritmetica binară C2 cu semn

Exemplul 1: calculaţi valoarea 1110 – 1001 (1410 – 910)

N1 = +14= 0 1110

N2 = + 9= 0 1001

N2 = - 9 = 1 0111

N1 - N2 = N1+ (-N2)

Bitul de semn este 0

R: 01012 = 510

N1, N2: valoare pe 4 biţi

5 cu bitul de semn

C2 C1

1 1 1 1 transport0 1 1 1 0 + N1

1 0 1 1 1 -N2

R: 1 0 0 1 0 1

Page 29: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 29

Aritmetica binară C2 cu semn

Exemplul 2: dacă N1 şi N2 sunt ambele pozitive sau negative, rezultatul s-ar putea sa aibă nevoie de cinci biţi pentru reprezentarea soluţiei; în acest caz va fi parte din răspuns şi carry 2, care va reprezenta semnul

Se dau numerele N1=1410 şi N2=910; calculaţi N1 + N2

R: 101112 = 2310

C2=0 reprezintă semnul

N1 =+14=0 1110N2 =+ 9=0 1001

C2 C1

0 1 transport0 1 1 1 0 +0 1 0 0 1

R: 0 1 0 1 1 1

Page 30: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 30

Aritmetica binară C2 cu semn

Exemplul 3: pentru N1= - 1410 şi N2= + 9 calculaţi N1 - N2

N1-N2=N1+(-N2)

N1=-14=1 0010

-N2 = - 9=1 0111

C2 reprezintă semnul

R: 1 01001

+23=0 10111

-23 =1 01001

C2 C1

1 0 1 1 transport1 0 0 1 0 +1 0 1 1 1

R: 1 0 1 0 0 1

Page 31: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 31

Aritmetica binară C2 cu semn

Regulă generală: dacă C1= C2 (fie 0, fie 1) se renunţă la C2, dacă C1≠ C2, C2 este bitul de semn

Exemplu: N1 = 29, N2 = 6, sa se calculeze N1 = N2

Observaţii:

scăderea se realizează numai prin adunări

carry apare numai dacă cei doi operanzi au acelaşi semn (-A -B sau +A +B)

altfel, semnul răspunsului are aceeaşi poziţie ca semnul celor doi operanzi

C2 C1

1 1 1 transport0 1 1 1 0 1 +1 1 1 0 1 0

R: 1 0 1 0 1 1 1

+29=0 11101+6=0 00110-6=1 11010

Page 32: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 32

Scăzătorul complet pe mai mulţi biţi – prelucrare paralelă

Scăderea a două cuvinte binare se poate face adunând la descăzut complementul faţă de 2 al scăzătorului (din secţiunea 1)

scăderea a două numere pe n biţi

circuitul compus din n celule de sumator complet de 1 bit

Page 33: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 33

Sumator/scăzător cu procesare paralel pe 4 biti

∑4

a4

Ci4Co4 ∑2

a2

Ci2Co2∑1

a1

b1

A/SCo1

S1S2S4

∑3

a3

Ci3Co3

S3

b2b3b4

Page 34: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Cuprins

Sisteme cu circuite integrate digitale – Circuite aritmetice 34

Operaţii aritmetice

Artimetici complementare

Circuite sumatoare pe 1 bit

Circuite scăzătoare

Circuite multiplicatoare

multiplicatoare combinaţionale

multiplicatoare cu salvarea transportului

Page 35: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 35

Operaţii aritmetice

Înmulţirea binară

se implementează ca o succesiune repetată de adunări

0x0=0

0x1=0

1x0=0

1x1=1

Exemplu: realizaţi înmulţirea numerelor 1110 x 510

1011 x deînmulţitul

101 înmulţitorul

1011

0000 produse parţiale

1011

110111 produsul final

Page 36: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 36

Operaţii aritmetice

Împărţirea binară

împărţitorul este plasat sub deîmpărţit astfel încât cei mai semnificativi biţi să coincidă

împărţitorul este comparat cu porţiunea din deîmpărţit care se află deasupra împărţitorului

Exemplul 1: realizaţi împărţirea numerelor A=3010 şi B=610

11110- câtul

110 impartitorul mai mic, se scad 1

0011

110 impartitorul mai mare, nu se scad 0

00110

110 impartitorul egal, se scad 1

R: 1012=510

Page 37: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 37

Operaţii aritmetice

Exemplul 2: realizaţi împărţirea numerelor A=6.510 şi B=210

110.1- câtul

10 impartitorul mai mic, se scad 1

010

10 impartitorul egal, se scad 1

000.1

10 impartitorul mai mare, nu se scad 0

000.10

10 impartitorul egal, se scad 1

R: 11.012=3.2510

Page 38: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 38

Circuite multiplicatoare

Înmulţirea poate fi efectuată prin adunări repetate

Înmulţirea cu creionul şi hârtia:

se inspectează deînmulţitul bit cu bit: dacă bitul considerat este 1, se adună înmulţitorul şi se deplasează la stânga; dacă nu, se adună 0 şi se deplasează la stânga; în final se adună produsele parţiale

sunt necesare registre pentru reţinerea deînmulţitului, înmulţitorului, semnului şi produsului; dacă operanzii au fiecare n biţi, produsul are nevoie de un registru cu 2n biţi

sfârşitul calculului: indicat de un contor care înregistreaza numărul de biţi ai înmulţitorului

presupunem că deînmulţitul (1011) este memorat în registrul A; suma iniţială (0000) este memorată în registru B; înmulţitorul (1001) este memorat în registrul C

Page 39: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 39

Circuite multiplicatoare

Înmulţirea binară

se implementează ca o succesiune repetată de adunări

0x0=0

0x1=0

1x0=0

1x1=1

Exemplu: realizaţi înmulţirea numerelor 1110 x 510

1011 x deînmulţitul

101 înmulţitorul

1011

0000 produse parţiale

1011

110111 produsul final

Page 40: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 40

Multiplicatoare combinationale

Multiplicatorul: circuit combinaţional care funcţionează pe baza unui tabel de adevăr ce descrie produsul de 2n biţi ca funcţie logică de cuvintele binare A şi B, ambele având lungimea de n biţi

Operanzii sunt A=(a3a2a1a0) –Deinmultit, şi B=(b3b2b1b0) –Inmultitor;

Produsele parţiale sunt compuse din rezultatele aplicării funcţiei logice ŞI fiecărei perechi de biţi ai şi bj

Rezultatul are 8 biţi şi este obţinut prin însumarea tuturor produselor parţiale, deplasate

Page 41: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 41

Multiplicatoare combinationale

Pentru cazul general al numerelor de n biţi, produsele parţiale pot fi calculate într-o singură unitate de timp folosind un şir de n2 porţi ŞI

Produsele parţiale sunt adunate folosind un sumator binar complet de 1 bit

Viteza de realizare a înmulţirii depinde de timpul de propagare prin porţile logice şi sumatoare

Cea mai lungă întârziere în şir se va petrece de-a lungul celei mai din dreapta diagonale şi a celei mai de jos linii

Calea cea mai lungă de semnal sau calea critică de propagare cuprinde un număr de 20 sumatoare; dacă fiecare sumator prezintă o întârziere de tp, va rezulta o valoare totală de 20 tp.

Page 42: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 42

Multiplicatoare combinationale

Implementarea practică: 16 porţi ŞI + 12 sumatoare complete de 1 bit

Page 43: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 43

Multiplicatorul cu salvarea transportului

Cum se poate îmbunătăţi viteza de lucru a unui multiplicator?

Ieşirea de transport a unui sumator se aplică nu celui următor din acelaşi rând, ci unuia de rang superior din rândul următor

Calea critică de propagare a semnalului cuprinde doar 14 sumatoare ceea ce reprezintă o îmbunătăţire substanţială faţă de cazul precedent, respectiv o reducerecu 30% a timpului de propagare

În cazul general, dacă se înmulţesc numere pe n biţi, întârzierea pe calea critică de propagare este dată de un număr egal cu (n-1)+(n-1)=2(n-1)

Page 44: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 44

Multiplicatorul cu salvarea transportului

Înmulţirea binară cu accelerare

∑∑∑

∑∑∑

∑∑∑

P10P02P11P03P12

P13

0

P20P21P22

P23 P30P31P32

S1 S0

b0b1b2b3a0a1a2a3

P00P01P33

Retea de porti SI

S2S4S5S6S7

00

∑∑∑ 0 0 0

S3

Page 45: Sistemecu CircuiteIntegrate Digitale · complementul faţă de 1 şi 2 numere cu semn Circuite sumatoare Circuite scăzătoare Circuite multiplicatoare. Sisteme cu circuite integrate

Sisteme cu circuite integrate digitale – Circuite aritmetice 45

Bibliografie

J. Wakerly – Digital Design, Principle & Practices, Prentice Hall, 1999

Willy M. C. Sansen – Analog Design Essentials, Springer, 2006

Rabaey J.M., Chandrakasan A., Nikolic B. Digital Integrated Circuits. A design perspective. Prentice Hall, 2003.

Weste N.H.E, Harris D. CMOS VLSI Design. A Circuits and Systems Perspective. Pearson Addison Wesley, 2005. http://www3.hmc.edu/~harris/cmosvlsi/4e/

H. Kaeslin, “Digital Integrated Circuit Design From VLSI Architecture to CMOS Fabrication”, Cambridge University Press, 2008.

Ercegovac, M., Lang T., Moreno J. Introduction to Digital Systems. John Wiley &Sons Inc, New-York, 1999

Sorin Hintea, Mihaela Cirlugea, Lelia Festila. Circuite Integrate Digitale. Editura UT Press,

Cluj-Napoca, 2005

Sorin Hintea. Tehnici de proiectare a circuitelor digitale VLSI. Casa Cartii de Stiinta. Cluj-

Napoca, 1998