You are on page 1of 20

10/23/2019

Leksion 2: Algjebra e Bool-it dhe


Logjika Numerike

Përgatiti: Dr. Ina Papadhopulli

Algjebra e Bool-it
• Shërben për manipulimin e objekteve që
marrin vetëm dy gjendje.
• Shprehjet Booleane: kombinim i variablave
boolean-e dhe veprimeve boolean-e
• Funksionet boolean-e shprehen me:
– Ekuacion boolean
– Tabele vërtetësie
– Qark logjik
2

1
10/23/2019

Ligjet Booleane
• Shërbejnë për kalimin e një ekuacioni nga një
formë në një formë tjetër ekuivalente.
• Parimi i dualitetit (forma AND dhe forma OR)

Thjeshtimi i ekuacioneve

2
10/23/2019

Paraqitja e ekuacioneve
• Si shume produktesh (Sum of Products - SOP)
• Si produkt shumash (Product of Sums - POS)
• Te dyja paraqitjet janë ekuivalente

• Pse duhet një ekuacion boolean të thjeshtohet?

Portat logjike (gates)


• Veprimet p.sh. AND, OR…
kryhen nga portat logjike
• Portat logjike: Njësia bazë e
qarqeve numerike.
• Çdo portë është e ndërtuar me
1-6 tranzistorë.
• Tranzistori: komponenti fizik
bazë i kompjuterit; Portat:
elementi logjik bazë i
kompjuterit.
6

3
10/23/2019

Portat NAND dhe NOR

Porta NAND
• {NAND} Portë Universale. Çdo qark logjik mund të ndërtohet duke
përdorur vetëm portën NAND
• NAND: më e lirë se portat e tjera
• Vërtetim: Implementoni NOT/AND/OR duke përdorur vetëm portën
NAND.

x x' (x∙x)' = x' (idempotency)

(x∙y)'
x ((x∙y)'∙(x∙y)')' = ((x∙y)')' (idempotency)
x∙y
y = x∙y (double complement)

x'
x
((x∙x)'∙(y∙y)')' = (x'∙y')' (idempotency)
x+y = (x')'+(y')' (DeMorgan)
= x+y (double complement)
y 8
y'

4
10/23/2019

Porta NOR
• {NOR} Portë Universale. Çdo qark logjik mund të ndërtohet
duke përdorur vetëm portën NOR
• Vërtetim: Implementoni NOT/AND/OR duke përdorur vetëm
portën NOR.
x x' (x+x)' = x' (idempotency)

x'
x
((x+x)'+(y+y)')' = (x'+y')' (idempotency)
x∙y = (x')'∙(y')' (DeMorgan)
= x∙y (double complement)
y
y'

(x+y)' ((x+y)'+(x+y)')' = ((x+y)')' (idempotency)


x
x+y = x+y (double complement)
y

Thjeshtimi i Qarqeve Logjike


• Qarqet logjike: implementimi fizik i një
shprehjeje logjike
• Para se të ndërtohet qarku logjik duhet të
bëhet thjeshtimi i shprehjes logjike.
• Thjeshtimi i shprehjeve logjike:
– Ligjet e algjebrës së Bool-it
– Hartat Karnaugh (Kmaps)

10

5
10/23/2019

Hartat Karnaugh (K-MAPS)


• Paraqitje grafike e tabelës së vërtetësisë
• Për një funksion me n hyrje, harta është një matricë me
2n qeliza
• Rreshtat edhe kolonat etiketohen
• Brenda qelizave vendosen vlerat e funksionit për cdo
kombinim
• P.sh. Nëse kemi një funksion me 4 hyrje: w, x, y, z do të
kishim hartën:

11

Hartat Karnaugh
• Cdo qelizë korrespondon me një kombinim input-
esh që ndryshon me qelizat fqinje vetëm me një
variabël
• I përdorim për të minimizuar shumën e produkteve

12

6
10/23/2019

Hartat Karnaugh – Rregullat për grupimet


• Grupet duhet të përmbajnë vetëm 1-sha
• 1-shat në qelizat ngjitur me njëra tjetrën mund të
grupohen; jo në diagonale
• Numri i 1-ve në një grup duhet të jetë fuqi e 2-it
• Grupet duhet të jenë sa më të mëdha
• Cdo 1 duhet të bëjë pjesë në një grup; edhe sikur
grupi të ketë vetëm një 1.
• Mbivendosja e grupeve është e mundur
• Duhet të përdoret një numër sa më i vogël grupesh
13

Grupimet
• Shembuj grupimesh të vlefshme dhe jo të vlefshme,

1 1 1 1 1 1 1 1

1 1 1 1

1 1 1 1 1 1 1

P P P
1 1 1 1

1 1 1 1

1 1 1

1 1 1 1 1

O O
14

7
10/23/2019

Hartat Karnaugh - Rregull


• Nëse kemi n variabla hyrjeje:
Rregull: Një bashkësi me 2i qeliza të cilat
përmbajnë 1-sha mund të grupohet.
i variablat që ndryshojnë vlerë në këtë grup,
nuk do të shfaqen tek termi korrespondues i
produkteve, ndërsa n-i variablat e tjera do të
komplementohen nëse kanë vlerën 0 dhe nuk do
të komplementohen nëse kanë vlerën 1.

15

Si të përdorim hartat Karnaugh?


• Supozojmë se kemi dy grupe mintermash:
A = w'.x.y'.z' + w'.x.y'.z = w'.x.y'.(z' + z) = w'.x.y'
B = w.x'.y.z' + w.x'.y.z + w.x.y.z' + w.x.y.z
= w.x'.y.(z' + z) + w.x.y.(z' + z)
y
= w.x'.y + w.x.y wx
yz
00 01 11 10

= w.(x'+x).y 00
A
= w.y 01 1 1
x
11 1 1
w
10 1 1 B

16

8
10/23/2019

Shembull

17

Shembull

18

9
10/23/2019

Gjendjet “Don’t care”


• Ka raste kur output-i për një kombinim të caktuar
nuk mund të përcaktohet.
• Këtë output e shënojmë me X
• Tek harta Karnaugh këto output-e mund ti
trajtojmë si 1-sha ose 0
• Shembull (2 menyra grupimi):

19

Qarqet e Integruara (IC)


• Bashkësi portash përdoren për të krijuar module më të
mëdha (si në programim).
• Chip: pajisje e vogël elektronike që përmban tranzistorë,
rezistenca, kondensatorë, për implementimin e portave të
ndryshme (deri në qindra miliona komponentë për chip).
• Chip-et vndosen ne mbajtësa plastikë me pin-e të jashtëm
dhe formojnë IC. • Shembull i
74LS00 chip:
Quad NAND
gates.

20

10
10/23/2019

Qarqet logjike
• Ndahen në dy lloje:
– Qarqe kombinatore
– Qarqe sekuenciale

• Qarqe Kombinatore • Qarqe Sekuenciale


– Output-i varet vetëm nga input-i - Output-i varet nga input-i aktual dhe
aktual gjendja

Combinational Combinational
inputs : : Logic :: outputs inputs : : Logic :: outputs

Memory

21

Qarqet Kombinatore

22

11
10/23/2019

Qarqet Kombinatore
• Output-i varet vetëm nga input-i aktual
• Ndryshimi i input-it sjell një ndryshim të
menjëhershëm tek output-i
• P.sh:
– Gjysëm-Mbledhësi (Half-Adder)
– Mbledhësi i Plotë (Full- Adder)
– Dekoderi
– Multiplexeri

23

HALF ADDER
• Half adder S
x y C S
X S Sum
0 0 0 0 Input
Output
0 1 0 1 bits
bits
Y Cout Carry
1 0 0 1
1 1 1 0
x
y' x'
x' S = xy' + x'y y'
y S = (C+x'y')'
x
x y C
y C

x
y x
S = (x+y)(x'+y') S=xy
x' y
y'
x
y C C
24

12
10/23/2019

FULL ADDER
x y z C S S

• Full adder 0 0 0 0 0
Input
A S Sum
Output
0 0 1 0 1
bits B bits
0 1 0 0 1 Cout Carry
0 1 1 1 0 Cin
1 0 0 0 1
1 0 1 1 0 yz yz
X' 1 1 0 1 0 00 01 11 10 00 01 11 10
x x
y'
z 1 1 1 1 1 0 1 0 1 1
x'
y 1 1 1 1 1 1 1
z'
x S C = xy + xz + yz S = x'y'z + x'yz' + xy'z' + xyz
y'
z'
x x xy
y y
z S = (xy)z

x xy
y C = xy + (xy)z
x z
z C
y 25
z

Mbledhës me 4 bit në paralel


• Vendosja në kaskadë e 4 full-adder
Y4 X4 Y3 X3 Y2 X2 Y1 X1
C4 C3 C2

C5 FA FA FA FA C1

S4 S3 S2 S1
Input
Output

26

13
10/23/2019

Dekoder-i
• Ka n hyrje dhe 2n dalje (p.sh. Dekoder 3 me 8)
• Në varësi të hyrjes zgjedh vetëm një prej daljeve
• Përdoret p.sh. për adresimin e memorjes

27

Dekoder-i 2 me 4
X Y F0 F1 F2 F3
0 0 1 0 0 0
• Tabela e vërtetësisë e 0 1 0 1 0 0
dekoder-it 24 është : 1 0 0 0 1 0
1 1 0 0 0 1
 Çdo output është një
F0 = X'Y'
minterm me dy
variabla (X'Y', X'Y, F1 = X'Y
XY' ose XY)
F2 = XY'

F3 = XY

28
X Y

14
10/23/2019

DEKODERAT: Implementimi i funksioneve


• Nëse një funksion boolean jepet si shumë
mintermash, atëherë dekoderi mund të përdoret për të
gjeneruar mintermat dhe porta OR për të bërë
shumën. x y z C S
0 0 0 0 0
• Shembull: Full adder 0 0 1 0 1
0 1 0 0 1
S(x, y, z) = S m(1,2,4,7) 0 1 1 1 0
1 0 0 0 1
C(x, y, z) = S m(3,5,6,7) 1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
3x8 0
Dec 1 S
2
x S2 3
y S1 4
5 C
z S0 6
7 29

Dekoder me sinjalin Enable


• Dekoder-at zakonisht kanë edhe sinjalin enable; nëse ky sinjal
është 1, atëherë dekoderi është i aktivizuar.
• Tabela e vërtetësisë :
F0 = EX'Y'
E X Y F0 F1 F2 F3
1 0 0 1 0 0 0
1 0 1 0 1 0 0 F1 = EX'Y
1 1 0 0 0 1 0
1 1 1 0 0 0 1 F2 = EXY'
0 X X 0 0 0 0
F3 = EXY
 Qarku i 24 decoder with
enable:
X Y E

30

15
10/23/2019

Multiplekser-i (MUX)
• Multiplexeri është një pajisje që ka:
– Disa linja input-i
– Disa linja kontrolli
– Një linjë output-i
• Ka n hyrje dhe 1 dalje (p.sh. Multiplekser 8 në 1)
• Zgjedh një prej hyrjeve dhe e nxjerr në dalje.
• Zgjedhja e input-it bëhet nga linjat e kontrolli.
• Përdoret p.sh. për time-sharing tek kompjuterat
31

Multiplekser-i
• Tabela e vërtetësisë për një MUX 4:1
I0 I1 I2 I3 S1 S0 Y S1 S0 Y
d0 d1 d2 d3 0 0 d0 0 0 I0
d0 d1 d2 d3 0 1 d1 0 1 I1
d0 d1 d2 d3 1 0 d2 1 0 I2
d0 d1 d2 d3 1 1 d3 1 1 I3

32

16
10/23/2019

MULTIPLEXER: Implementimi i
funksioneve
• Funksionet Boolean-e mund të implementohen duke
përdorur multiplekser-a.
• Një multiplexer 2n-në-1 mund të implementojë një
funksion Boolean me n variabla:
1. Paraqiteni funksionin si
shumë mintermash. P.sh.
F(A,B,C) = A'B'C + A'BC + AB'C + ABC'
= S m(1,3,5,6)
2. Lidhni n variablat tek n linjat e kontrollit.
3. Vendosni një ‘1’ tek linja e hyrjeve nëse është një minterm
i funksionit; vendosni ‘0’, në të kundërt.

33

MULTIPLEXER: Implementimi i
funksioneve
• Ndërtoni funksionin më poshtë duke përdorur multiplexer:
F(A,B,C) = A'B'C + A'BC + AB'C + ABC'
= S m(1,3,5,6)

0 0
1 1
0 2 F
1 3 MUX
0 4
1 5
1 6
0 7

A B C

34

17
10/23/2019

Punë Laboratori 1
• Tema: Instalimi dhe njohja me simulatorin
Logisim.
– Site për download:
• http://www.cburch.com/logisim/
– Një video ndihmëse për të filluar punën me
simulatorin:
• https://www.youtube.com/watch?v=cMz7wyY_PxE

35

Dritarja kryesore e Logisim

36

18
10/23/2019

Tutorial për Logisim

37

Referenca
Linda Null, “Essentials of Computer
Organization and Architecture”, 2003,
faqe 93 – 114
Computer Organization and Design. The
Hardware/Software Interface, 4th Edition
Shtojca C

38

19
10/23/2019

FALEMINDERIT!

39

20

You might also like