Sunteți pe pagina 1din 8

Karnaugh map (K map)

=
Mintermi

A B C F

m0

0 0

A/0

m1

1 0

m2

0 1

m3

1 0

m4

0 1

m5

1 1

m6

0 1

m7

1 1

BC/00
m0
01
m1
10
m2
11
m3
00
m4
01
m5
10
m6
11
m7

Forma canonica (se iau mintermii pentru care F=1)


+
+
= +
+

( + )+
( + )
=
+
= +
+
= +
=>se ingora

= +

Se creeaza harta Karnaugh urmand regulile:


1. Se separa pe randuri valorile lui A (0 si 1)
2. Se separa pe coloane valorile combinatiei BC astfel incat intre 2 celule alaturate sa se schimbe doar 1 singura variabila (ca
valoare)
Randurile de la capete sunt alaturate cu primele randuri
3. Se completeaza apoi celulele cu mintermii potriviti valorilor A, B, C

BC
00
A = 0 m0
A = 1 m4

BC
01
m1
m5

BC
11
m3
m7

BC
10
m2
m6

Intre celulele vecine trebuie sa se modifice doar 1


variabila atat pe ORIZONTALA cat si pe VERTICALA

4. Se inlocuiesc mintermii cu valorile lor


Ordinea de scriere, de la MSB (most significant bit) la LSB (least significant bit)

MSB

LSB

BC
A
0
1

00 01 11 10
0 0 0 1
1 1 1 1

5. Se imperecheaza valorile de 1 in numar de:


(prioritatea e de la cel mai mare la cel mai mic)
2 valori de 1 => 4 de 1 => 8 de 1 => 16 de 1
16 => 8 => 4 => 2
Imperecherile se fac pe linie sau pe coloana, nu se permite imperecherea pe diagonala pentru ca atunci nu se mai modif
doar 1 variabila intre celulele alaturate.
Se pot imperechea de mai multe ori valori care au fost imperecheate daca vor include valori ce nu au fost imperecheate

BC
A
0
1

00 01 11 10
0 0 0 1
1 1 1 1
I

6. Se formeaza functia folosind imperecherile si apoi se inlocuiesc cu variabilele care nu se schimba in cadrul perechilor coresp.
F = I + II
I => in cadrul acestui grup A nu se schimba (valoarea din stanga tabelului) dar B si C se schimba => I = A

II => A se schimba dar B si C raman la fel (valorile de deasupra): B = 1 ; C = 0 =>

F=A+

Exemplul 1:
Mintermii: m1, m3, m5, m7 .
In formula sunt prezentati doar mintermii care au valori de 1

F(A, B, C) = m(1, 3, 5, 7)
MSB

LSB

most
significant
bit

least
significant
bit

SOP (sum of products)

1. afla numarul de variabile


N = 3 (A, B, C)
2. afla numarul de celule in K map
= numarul total de combinatii cu variabilele = 2n
23 = 8
3. se face K map

;unde n = nr de variabile

4. se completeaza cu valorile si se imperecheaza

BC

BC

00

01

11

10

0 m0 m1 m3 m2
1 m4 m5 m7 m6

00 01 11 10
0 0
1 0

1
1

1
1

0
0
I

f=I
f=C

=> doar C nu se schimba in cadrul grupului

Exemplul 2:
F(A, B, C) = m(0, 1, 2, 4, 7)

BC
A

00 01 11 10
0 1
1 1

II

f = I + II + III + IV
+ +
=

IV

1
III

Se imperecheaza cu celula adiacenta de la capatul celalalt

Se imperecheaza singur

Exemplul 3:
F(A, B, C) = m(1, 3, 6, 7)

BC
A

00 01 11 10

0
1
II

1
1
III

1
I

Nu mai e necesara imperecherea asta (motivul mai jos)


F = I + II + III
F=
+ +
Redundancy theorem: - 3 variabile
- fiecare variabila e de cate 2 ori
- 1 variabila e complementata
Se iau termenii care includ variabila complementata (compl. si necompl.)
F=

+ +

Exemplul 3:
F(A, B, C) = m(0, 1, 5, 6, 7)

BC
A

00 01 11 10
0 1 1
1
1 1 1
II

III

III

Sunt 2 combinatii posibile pentru valoarea 1 comuna dintre III si III : III si III
CAZ 1
CAZ 2
F = I + II + III
F = I + II + III
F=
+ +
F=
+ +
Ambele cazuri sunt minime dar sunt diferite.

OBS.: Rezultatul e minim dar poate sa nu fie la fel sau UNIC.


Implicanti
= grup de 1
(Ex.: 1, 2, 4, 8, 16 ... valori de 1)
Implicant prim
= cel mai mare grup de 1 posibil
Implicant prim esential = contine cel putin un 1 care nu poate fi combinat in alt fel

CD
AB

00 01 11 10
1

00
01
11
10

1
1

III

I
II
Implicantul prim contine cel mai mare grup de 1 posibil => 2 de 1
I -> 1 de jos nu mai poate fi combinat altfel => Implicant prim esential
II -> valorile de 1 ale lui pot fi combinate altfel => Implicant non-esential
III -> 1 de sus nu mai poate fi combinat altfel => Implicant prim esential

K map cu 4 variabile
Exemplul 1:
F(A, B, C, D) = m(0, 2, 3, 7, 11, 13, 14, 15)

CD
AB

00 01 11 10
00
01
11
10

1
1

1
1
1
1

II

1
III

I
IV
Pentru 4 variabile grupul maxim de variabile ce poate fi grupat e 24 = 16 dar nu se regaseste in tabel.
F = I + II + III + IV
F=
+
+
+

Exemplul 2:
F(A, B, C, D) = m(0, 2, 3, 5, 7, 8, 10, 11, 14, 15)

CD
AB

00 01 11 10
00
01
11
10

1
1
1

1
1

II

1
IV

F = I + II + III + IV
F=
+
+

1
1

II

In cazurile cand K map e plin cu 1 atunci F = 1 pentru ca se modif toate variabilele.


BC
A
00 01 11 10
0 1 1 1 1
1 1 1 1 1
F=1

Exemplul 3:
F(A, B, C, D) = m(1, 5, 7, 9, 11, 13, 15)

CD
AB

00 01 11 10
00
01
11
10

1
1
1

1
1

Nu-mi pasa in K map (Dont care)


F(A, B, C) = m(2, 3, 4, 5) + d(6, 7)

Nu-mi pasa

Analogie: daca trebuie sa faci semn unui avion sa aterizeze doar pozitia mainilor e importanta, pozitia picioarelor nu conteaza.
Daca ar fi sa ignoram termenul de nu-mi pasa:

BC
A

00 01 11 10
0
1

1
x

1
X

F= +
x = Nu-mi pasa
Termenul de nu-mi pasa poate fi luat cu valoari de 1 sau 0 dupa cum urmeaza:
x => 1 (minterm)
x => 0 (maxterm)
Scopul regulii de deasupra e de a minimiza la maxim functia prin marirea grupurilor de 1.

BC
A

00 01 11 10
0
1

F=

1
1

1
1

K map folosind MAXTERMI


Ex.1:

BC
A

00 01 11 10
0
1

0
1

0
1

0
1

1
1

I
II
= +
F pentru ca sunt maxtermi si au valoarea de iesire 0
= +
( ) = ( + )
Se aplica legea DeMorgan pentru a transforma din forma SOP in forma POS
= ( ) + ( )
=( + )( + )
Se aplica distributivitatea:
F = A + BC
Rezolvand cu mintermi (folosind valorile 1 din tabel) obtinem acelasi lucru:
F = A + BC
Ex.2:
F(A, B, C, D) = m(1, 3, 4, 5, 9, 11, 14, 15)
F(A, B, C, D) = M(0, 2, 6, 7, 8, 10, 12, 13)
24 = 16 celule pt tabel

=> mintermi
=> MAXTERMI

CD
AB

00 01 11 10
00
01
11
10

0
0

0
0

II

=> se aplica DeMorgan

+ )( + + )

K map cu 5 variabile
!!!!!!xxxxx!!!!

II

0
III

= + +
=
+
+
= ( + )( +

Curs 5
SINTEZA CIRCUITELOR COmBINAIONALE
minimizarea logic exact = minimizarea logic exact vizeaz rezolvarea gsirii unei acoperiri minimale.
Teorema Quine
Exist o acoperire minim care este prim.
Demonstraie: Se consider o acoperire minim care nu este
alctuit din implicani primi. Fiecare implicant care nu este prim
poate fi nlocuit printr-un implicant prim care-l conine. Astfel,
mulimea rezultat de implicani este o acoperire i are aceeai
cardinalitate ca i acoperirea iniial. n consecin,
Implicant = grup de 1
1. Implicant prim = cel mai mare grup posibil de 1
2. Implicant prim esential = the prime implicant that has at least 1
minterm that cannot be combined in any other way
Y(A,B,C,D) = m(0,1,3,7,8,9,11,15) => suma de mintermi

1.

Echivalentul binar al minterm-ului (al membrilor lui)

minterm
01378911 15 -

A
0
0
0
0
1
1
1
1

B
0
0
0
1
0
0
0
1

C
0
0
1
1
0
0
1
1

D
0
1
1
1
0
1
1
1

3.

2.

Se grupeaza mintermii in functie de


cati de 1 are fiecare minterm

Grup

minterm

Reprezentare
binara
A B C D

m0

m1
m8

0
1

0
0

0
0

1
0

m3
m9

0
1

0
0

1
0

1
1

m7
m11

0
1

1
0

1
1

1
1

m15

4.

Se compara si se fac perechi din mintermii de dinainte comparandu-se


grupul n cu grupul n+1 (adica grupurile consecutive).
Ex.: Se compara grupul 3 cu grupul 3+1 (adica 4)
Se compara toti mintermii grupului 3 cu mintermii din grupul 4 (fiecare din 3
cu fiecare din 4)
Intre mintermii unei perechi trebuie sa difere doar 1 variabila care va fi notata
in tabel cu -.
Grup

Grupul de
perechi 0

Grupul de
perechi 0

Reprezentare
binara
A B C D

Perechi
(cine cu cine se
compara)

0
x

m0 m1
m0 m8

0
-

0
0

0
0

m1 m3
m1 m9
m8 m9

0
1

0
0
0

0
0

1
1
-

m3 m7
m3 m11
m9 m11

0
1

0
0

1
1
-

1
1
1

m7 m15
m11 m15

1
-

1
1

1
1

Asemanator cu pasul 3 se compara perechile si termenul diferit se noteaza cu -

Provine din
comparatia
precedenta

X = mai mult de 1 variabila e diferit = NU

= 1 singura variabila e diferita = DA => se trece mai departe in tabel


Reprezentare
binara
A B C D

Grup

Perechi
(cine cu cine se compara)

(m0 m1) (m8 m9)


(m0 m8) (m1 m9)

0
0

0
0

(m1 m3) (m9 m11)


(m1 m9) (m3 m11)

0
0

1
1

(m3 m7) (m11 m15)


(m3 m11) (m7 m15)

1
1

1
1

Variabilele
diferite intre
grupuri

Se observa ca daca vom face


inca un tabel de comparatie nu
se vor mai gasi alte grupuri
asadar se vor scrie variabilele
rezultate

Implicant
Prim

CD

5.

Se creaza un tabel cu mintermii folositi in fiecare implicant prim.


Se marcheaza in tabel cu x in dreptul mintermului implicat in IMPLICANTUL PRIM.
Se incercuiesc coloanele cu un singur x si se iau in considerare implicantii primi care din dreptul lor la scriere formulei
finale.

Implicant Prim

Minterm implicat

0, 1, 8, 9

1, 3, 9, 11
CD

3, 7, 11, 15

x
x

x
x

11

Mintermii

= +CD

x
x

Exemplul 2:

15

Imperecherea perechilor
OBS: Grupul (0, 8) se imperechea cu grupul (4, 12) dar
exista deja o pereche cu aceeasi mintermi asdar se vor
considera ca fiind imperecheate si se vor bifa.

Imperecherea mintermilor
Mintermii
grupati
dupa
numarul
de 1
Implicanti primi.
OBS: Termenii care nu au trecut in urmatorul
tabel de imperechere sunt Implicanti primi.

Perechea de
mintermi
0, 4, 8, 12
4, 5
Prima pereche include si
mintermul celei de-a doua

5, 7
7, 15
11, 15

Se aleg termenii astfel incat sa ai ajungi sa ai toti mintermii


( , , , )= +

S-ar putea să vă placă și