2. circuite logice 2.3. proiectarea circuitelor. porţi...

17
Copyright Paul GASNER Copyright Paul GASNER 2. Circuite logice 2. Circuite logice 2.3. Proiectarea circuitelor. 2.3. Proiectarea circuitelor. Porţi logice adiţionale Porţi logice adiţionale

Upload: phamque

Post on 06-Feb-2018

216 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER

2. Circuite logice2. Circuite logice2.3. Proiectarea circuitelor. 2.3. Proiectarea circuitelor.

Porţi logice adiţionalePorţi logice adiţionale

Page 2: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 2

Etapele proiectării circuitelorEtapele proiectării circuitelorScopul designului unui circuit este de a construi un sistem hardware care să calculeze o anumită funcţieÎn principiu, funcţia se scrie ca o expresie booleană şi aceasta este convertită în circuit

Etapa 1. Câte intrări şi ieşiri prezintă funcţiaEtapa 2. Funcţia trebuie reprezentată fie prin expresia

booleană fie prin tabela de adevărEtapa 3. Expresia booleană este convertită într-o formă

cât mai simplă (de exemplu MPS)Etapa 4. Se construieşte circuitul pe baza expresiei

simplificate

Page 3: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 3

Exemplu: comparator pe 2 bitsExemplu: comparator pe 2 bitsSă se construiască un circuit care să compare două

numere A şi B formate din 2 biţi

Circuitul va avea trei ieşiri:G (“Greater”) este 1 dacă A > BE (“Equal”) este 1 dacă A = BL (“Lesser”) este 1 dacă A < B

Intrările sunt 00, 01, 10 şi 11 (adică 0, 1, 2 şi 3 în sistemul zecimal)Oricare ar fi combinaţia intrărilor, doar una dintre cele trei ieşiri va avea valoarea 1, celelalte fiind 0

Page 4: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 4

Etapa 1. Intrările şi ieşirileEtapa 1. Intrările şi ieşirile2 numere x 2 bits = 4 intrări:

numărul A va fi dat de A1 şi A0numărul B va fi dat de B1 şi B0

Din datele problemei rezultă 3 ieşiri: G, E şi LDiagrama bloc a circuitului arată ca în figură

Acum trebuie completat interiorul blocului

Page 5: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 5

Etapa 2. Reprezentarea funcţieiEtapa 2. Reprezentarea funcţieiA1 A0 B1 B0 G E L0 0 0 0 0 1 00 0 0 1 0 0 10 0 1 0 0 0 10 0 1 1 0 0 10 1 0 0 1 0 00 1 0 1 0 1 00 1 1 0 0 0 10 1 1 1 0 0 11 0 0 0 1 0 01 0 0 1 1 0 01 0 1 0 0 1 01 0 1 1 0 0 11 1 0 0 1 0 01 1 0 1 1 0 01 1 1 0 1 0 01 1 1 1 0 1 0

Pentru această funcţie este preferabilă reprezentarea prin tabela de adevărDe exemplu, 01<10 (1<2) şi atunci L=1 şi G=E=0Circuitul calculează de fapt 3 funcţii: G, E şi L

Page 6: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 6

Etapa 3. Simplificarea expresieiEtapa 3. Simplificarea expresieiSunt necesare 3 diagrame Karnaugh:

B10 0 0 01 0 0 0

A1 1 1 0 1A0

1 1 0 0B0

B11 0 0 00 1 0 0

A1 0 0 1 0A0

0 0 0 1B0

B10 1 1 10 0 1 1

A1 0 0 0 0A0

0 0 1 0B0

G(A1,A0,B1,B0) =A1 A0 B0’ + A0 B1’ B0’ + A1 B1’

E(A1,A0,B1,B0) =A1’ A0’ B1’ B0’ +A1’ A0 B1’ B0 +A1 A0 B1 B0 +A1 A0’ B1 B0’

L(A1,A0,B1,B0) =A1’ A0’ B0 + A0’ B1 B0 +A1’ B1

Page 7: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 7

Etapa 4. Construirea circuituluiEtapa 4. Construirea circuituluiG = A1 A0 B0’ + A0 B1’ B0’ + A1 B1’

E = A1’ A0’ B1’ B0’ + A1’ A0 B1’ B0 + A1 A0 B1 B0 + A1 A0’ B1 B0’

L = A1’ A0’ B0 + A0’ B1 B0 + A1’ B1

Se verifică funcţionarea circuitelor

Page 8: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 8

Operaţii booleene adiţionaleOperaţii booleene adiţionale NAND(NOT-AND)

NOR(NOT-OR)

XOR(eXclusive OR)

(xy)’ = x’ + y’ (x + y)’ = x’ y’ x ⊕ y = x’y + xy’

Operaţia:

Expresie:

Tabela de adevăr:

Porţi logice:

x y (xy)’0 0 10 1 11 0 11 1 0

x y (x+y)’0 0 10 1 01 0 01 1 0

x y x⊕y0 0 00 1 11 0 11 1 0

Page 9: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 9

NAND – poartă universalăNAND – poartă universalăPorţile NAND pot înlocui toate celelalte porţi:

NOT

AND

OR

(xx)’ = x’ [ deoarece xx = x ]

((xy)’ (xy)’)’ = xy

((xx)’ (yy)’)’ = (x’ y’)’ [ xx = x şi yy = y ]= x + y [ DeMorgan ]

Page 10: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 10

NANDNANDOrice circuit poate fi realizat numai cu porţi NANDExemplu:

Page 11: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 11

Conversia la NAND-uriConversia la NAND-uri1. Porţile AND se convertesc utilizând simbolurile AND-

NOT, iar porţile OR cu simbolurile NOT-OR

Page 12: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 12

Conversia la NAND-uriConversia la NAND-uri2. Simbolurile de negaţie trebuie să se găsească în

pereche de-a lungul unei linii; în caz contrar se inserează inversoare

Page 13: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 13

NORNORPoarta NOR este duala porţii NANDPorţile NOR sunt de asemenea universaleConversia circuitelor la diagrame NOR se realizează analog ca la diagramele NOT1. Porţile OR se convertesc cu ajutorul simbolurilor OR-NOT,

iar porţile AND cu ajutorul simbolurilor NOT-AND2. Negaţiile pe o linie trebuie inserate în pereche; în caz contrar

se adaugă inversoare

Page 14: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 14

XORXOR

Proprietăţi

x y x⊕y0 0 00 1 11 0 11 1 0

x ⊕ y = x’ y + x y’

x ⊕ 0 = x x ⊕ 1 = x’x ⊕ x = 0 x ⊕ x’ = 1x ⊕ (y ⊕ z) = (x ⊕ y) ⊕ z [ Associative ]x ⊕ y = y ⊕ x [ Commutative ]

Page 15: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 15

XORXORÎn general, rezultatul unei funcţii XOR este adevărat dacă variabilele sunt adevărate în număr impar

De exemplu, o funcţie XOR cu 3 variabile se poate simplifica:

Porţile XOR sunt utilizate cu precădere la sumatoare şi circuitele de detecţie/corecţie a erorilor

x ⊕ (y ⊕ z)= x ⊕ (y’z + yz’) [ Definition of XOR ]= x’(y’z + yz’) + x(y’z + yz’)’ [ Definition of XOR ]= x’y’z + x’yz’ + x(y’z + yz’)’ [ Distributive ]= x’y’z + x’yz’ + x((y’z)’ (yz’)’) [ DeMorgan’s ]= x’y’z + x’yz’ + x((y + z’)(y’ + z)) [ DeMorgan’s ]= x’y’z + x’yz’ + x(yz + y’z’) [ Distributive ]= x’y’z + x’yz’ + xyz + xy’z’ [ Distributive ]

x y z x⊕y⊕z0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 11 0 1 01 1 0 01 1 1 1

Page 16: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 16

XNORXNORComplementul funcţiei XOR este funcţie XNOR

x y (x⊕y)’0 0 10 1 01 0 01 1 1

(x ⊕ y)’ = x’y’ + xy

Page 17: 2. Circuite logice 2.3. Proiectarea circuitelor. Porţi ...gasner/FI2_Arhitectura_Calculatoarelor/02_03... · Copyright Paul GASNER 2 Etapele proiectării circuitelor Scopul designului

Copyright Paul GASNERCopyright Paul GASNER 17

Circuite combinaţionaleCircuite combinaţionaleCircuitele realizate cu porţi logice sunt circuite circuite combinaţionalecombinaţionale

Nu există feedback: ieşirile nu sunt conectate la intrăriO schimbare a unei intrări conduce la o valoare corectă la ieşire după un anumit timp (întârziere, delay)

Cu cât numărul de intrări creşte cu atât creşte întârzierea în stabilirea echilibrului pentru un răspuns corectO altă serie de criterii de care trebuie să se ţină seama în proiectarea circuitelor este:

timpul de propagarenumărul de ieşirinumărul de intrări (numărul de intrări pe o singură poartă)