SlideShare a Scribd company logo
1 of 72
Download to read offline
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
BLM 221
MANTIK DEVRELERİ
Prof Dr Mehmet AKBABA
mehmetakbaba@karabuk.edu.tr
5. HAFTA
Temel Kavramlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
2
Boole Fonksiyonlarının Minterm ve
Maxterm İfadeleri
1. Cümlelerin Boolean Cebirine Dönüştürülmesi
2. Doğruluk Tabloları Kullanılarak
Kombinasyonel Devre Tasarım
3. Genel Minterm ve Maxterm İfadeleri
4. Tamamlanmamış (Eksik Tanımlanmış)
Fonksiyonlar
5. Doğruluk Tablosu Oluşturma Örnekleri
6. İkili Toplayıcı ve Çıkarıcıların Tasarımı
Cümlelerin Boolean Cebirine
Dönüştürülmesi
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
3
5.1 Cümlelerin Boolean Cebirine
Dönüştürülmesi
Tek çıkışlı kombinasyonel bir devre tasarımı için gerekli 3
ana adım aşağıda verilmiştir:
1. İstenilen davranışı sergileyen bir devrenin Boole
(switching) fonksiyonunu veya ifadesini oluştur.
2. Elde edilen Boole fonksiyonunun (ifadesinin)
sadeleştirilmiş cebirsel ifadesini bul.
3. Sadeleştirilmiş haldeki devreyi uygun mantık
kapılarıyla gerçekleştir.
Cümlelerin Boolean Cebirine Dönüştürülmesi
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
4
Mantık problemleri çoğu zaman bir yada daha çok
cümle ile ifade edilir.
Mantık Devrelerinin tasarımındaki ilk adım bu cümleleri
Boole ifadelerine çevirmektir.
Bu kavram aşağıda verilecek olan birkaç örnekle
açıklanmaktadır.
ÖRNEK 1: Eğer Pazartesi gecesi ise ve ödevlerini
bitirmişse Meryem TV izler (ödevlerini bitirmemiş ise
Pazartesi gecesi olsa bile TV izleyemez)
(Meryem watches TV if it is Monday night, and, she has
finished her homework)
Cümlelerin Boolean Cebirine Dönüştürülmesi
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
5
Burada «eğer» ve «ve» bağlaçları hiçbir ifadeye dahil değildir; bu
bağlaçlar ifadeler arasındaki ilişkiyi gösterir.
Bir ifadenin doğru yada yanlış olduğunu gösteren bir değişken ile
ifadeleri inceleyelim:
F = 1 Eğer «Meryem TV izlerse» , doğru;
değilse, F =0 («Meryem TV izleyemez»). F=1 olması iki şartın birden
gerçekleşmesine bağlıdır. Bunlar:
1) A = 1 Eğer «Pazartesi gecesi ise» doğru; değilse, A = 0.
2) B = 1 Eğer «eğer Meryem ödevini bitirmişse» doğru; değilse B = 0.
F eğer A ve B ifadelerinin ikisi de doğruysa cümle şu şekilde Boole
ifadeye çevrilebilir:
F = A·B
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
6
Cümlelerin Boolean Cebirine Dönüştürülmesi
ÖRNEK 2: Aşağıdaki örnek bir cümleden cebirsel bir
ifadeye nasıl geçiş yapılabileceğini göstermektedir. Bir
alarm devresi aşağıda tanımlanan biçimde tasarlanmak
isteniyor:
Alarm çalacaktır; eğer ve ancak (Ancak ve Ancak) alarm
anahtarı açıksa ve kapı kapalı değilse, veya saat 18:00
den sonra ise ve pencere kapalı değilse.
İlk adım yukarıdaki cümlenin cebirsel karşılığını, her bir
ifadeye bir değişken verilerek yazılması işlemidir.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
7
Cümlelerin Boolean Cebirine Dönüştürülmesi
Z= Alarm çalacak/ çalmayacak:
Z=1 Eğer alarm çalarsa, Z’=1 (F=0) Eğer alarm çalmazsa
A=Alarm anahtarı açık/kapalı:
A=1 Eğer alarm anahtarı açık ise, A’=1 (A=0) Eğer alarm anahtarı
açık değilse(kapalı ise)
B=Kapı açık/kapalı
B=1 Eğer kapı kapalı ise, B’=1 (B=0) Eğer kapı açık ise (Kapalı
değilse)
C=Saat 18:00 den önce/sonra
C=1 Eğer 18:00den sonra ise. C’=1 (C=0) 18:00den sonra değilse
D= Pencere açık/kapalı,
D=1 Eğer pencere kapalı ise, D’=1 (D=0) Eğer pencere kapalı değilse
Bu tanımlardan sonra F nin Boole (lojik) İfadesi aşağıdaki gibi olur:
Z=A.B’+C.D’
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
8
Cümlelerin Boolean Cebirine Dönüştürülmesi
Z=Alarm çalacaktır= Eğer ve ancak (if) alarm anahtarı
açık ise (A) VE Kapı kapalı değilse (B’) VEYA Saat
18:00den sonra ise (C) VE pencere kapalı değilse (D’).
Z=A.B’+C.D’
Bu lojik fonksiyonu (Boole ifadesini) gerçekleştirecek
lojik devre aşağıda verilmiştir.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
9
Cümlelerin Boolean Cebirine Dönüştürülmesi
Z=A.B’+C.D’
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
10
Cümlelerin Boolean Cebirine Dönüştürülmesi
Ahmet araba alacak, mezun olduğu zaman ve, ya
babasından para alacak yada bankadan kredi.
(Ahmed will buy a car when he will graduate, and if
either his father gives him loan or he gets bank loan.)
Z=Araba alacak(buy car)
A=Babasından para alacak(father gives loan)
B=Bankadan kredi alacak (get bank loan)
C=Mezun olma (graduate)
Z=C(A+B)
Örnek 3:
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
11
5.2 Doğruluk Tabloları Kullanılarak Kombinasyonel
Devre Tasarımı
Kombinasyonel (Tümleşik) devreler belleği olmayan,
geçmişi hatırlayamayan, lojik kapıların bileşiminden
oluşan devrelerdir.
Amaç: Belli bir işi yapan mantık fonksiyonunu elde etme
Aşağıdaki örnekte doğruluk tablosu verilen tasarının
mantık devresi tasarımı gösterilecektir. 3-giriş 1- çıkışlı
devre Şekil 5-1’de gösterilmiştir. Yapılacak iş:
Devrenin çıkış değişkeni f nin aşağıdaki şartları
sağlaması isteniyor:
f = 1 eğer N ≥ 0112 (Giriş: 3 Değişken: A, B, C. N: f’in
Değeri)
Ve f= 0 eğer N < 0112.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
12
Doğruluk Tabloları Kullanılarak Kombinasyonel Devre
Tasarımı
Şekil 5-1(b)de f fonksiyonu için
doğruluk tablosu gösterilmiştir.
Şekil 5-1: Kombinasyonel Devre ve Doğruluk Tablosu
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
13
Doğruluk Tabloları Kullanılarak Kombinasyonel Devre
Tasarımı
Doğruluk tablosunu kullanarak f’nin cebirsel ifadesini 1
yapacak A, B, ve C değişkenlerinin kombinasyonlarını
kullanmamız gerekiyor. Bu Kombinasyonlar:
011 100 101 110 111
A’BC AB’C’ AB’C ABC’ ABC
F çarpımların toplamı (SoP) şeklinde şu şekilde
yazılabilir: (Doğruluk tablosunda f yi 1 yapan
kombşnasyonlar)
f= A'BC + AB'C' + AB'C + ABC' + ABC ( 5-1)
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
14
Doğruluk Tabloları Kullanılarak Kombinasyonel Devre
Tasarımı
f= A'BC + AB' + AB = A'BC + A=(A+A’)(A+BC)
= A + BC (5-2)
Eşitlik 5-2’nin Devre Şeması aşağıdaki gibi gösterilir:
Eşitlik 5-1, A+A’=1 kullanılarak aşağıdaki şekilde
sadeleştirilebilir:
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
15
Doğruluk Tabloları Kullanılarak Kombinasyonel Devre
Tasarımı
F’nin 1 olduğu ifadeleri yazmak yerine F’nin 0 olduğu
ifadelerle de fonksiyon tekrar yazılabilir fakat bu sefer f
fonksiyonu toplamların çarpımı(PoS) şeklinde
ifadelerden oluşmalıdır. F fonksiyonu aşağıdaki A, B, C
değişkenlerinin kombinasyonları için sıfır olur.
000 001 010
A+B+C A+B+C’ A+B’+C
Bu yüzden:
f = (A + B + C)(A + B + C')(A + B' + C) (5.3)
VEYA f’ çarpımların toplamı(SOP) şeklinde ifade edilip
tersi alınarak toplamların çarpımına(POS)
dönüştürülebilir:
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
16
Doğruluk Tabloları Kullanılarak Kombinasyonel Devre
Tasarımı
f’=A’B’C’+A’B’C+A’BC’ ve bunun tersini alırsak;
f=(A + B+ C)(A + B + C’)(A + B’ + C)
Bu iki ifadenin birbirine eşitliğini şu şekilde
kanıtlayabiliriz:
f=(A+B+C)(A+B+C’)(A+B’+C)
f= (B + A)(B' + A + C) = B(A+C) + AB’ = A + BC (5.4)
Çıkan sonuç eşitlik (5-2) ile aynı, dolayısıyla (5.2) ile
(5.4) birbirine eşit ifadelerdir.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
17
5.3 Minterm ve Maxterm İfadeleri
Eşitlik 5-1 deki terimlerin herbiri minterm ifadeleridir.
Genelde, n değişkenli bir ifadenin mintermleri n tane
harfin kendisi veya değili kullanılarak bir kez gözükmesi
ile oluşturulur. Değişkenin hem kendisi hem değili aynı
minterm içinde bulunamaz. Tablo 5-1 A, B, C
değişkenlerinin oluşturduğu tüm mintermleri
göstermektedir. Mintermler aşağıdaki gibi gösterilir:
m0 m1 m2 m3 m4 m5 v.s…
000 001 010 011 100 101
A’B’C’ A’B’C A’BC’ A’BC AB’C’ AB’C
Dikkat edilecek olursa mintermler çarpımların toplamı
şeklinde yazılmıştır (SOP).
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
18
Minterm ve Maxterm İfadeleri
Tablo 5-1 Üç Değişkenli İfadenin Minterm ve
Maxterm’leri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
19
Minterm ve Maxterm İfadeleri
F çarpımların toplamı(SOP) şeklinde ifade edilirse, bu
tip yazılımlara minterm açılımı (expansions) ya da
standart çarpımların toplamı ifadesidir denir. (Bakınız
eşitlik 5-1).
Doğruluk tablosundaki f=1’i sağlayacak her bir satırdaki
değerin minterm olma zorunluluğu vardır çünkü mi = 1
değeri sadece değişkenlerin olası kombinasyonu
sağlandığı zaman 1 olur.
Mintermler doğruluk tablosunda 1-1(one to one) özelliği
taşır, her bir satır tek bir minterme tekabül eder.
Dolayısıykar eşitlik 6-1 minterm numaralarıyla da ifade
edilebilir:
f(A, B, C) = m3 + m4 + m5 + m6 + m7 (5.5)
[ f= A'BC + AB'C' + AB'C + ABC' + ABC (5.1) ]
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
20
Minterm ve Maxterm İfadeleri
Daha kısa bir formda sadece sayılar kullanılarak küçük m
harfi ile aşağıdaki gibi de kısaltılarak gösterilebilir.
Eşitlik 6-3 teki her bir terim maxterm olarak ifade edilir.
Genelde, n değişkenli bir ifadenin maxtermleri n tane harfin kendisi
veya değili kullanılarak bir kez gözükmesi ile oluşturulur.
Değişkenin hem kendisi hem değili aynı maxterm içinde
bulunamaz. Tablo 5-1 A, B, C değişkenlerinin oluşturduğu tüm
maxtermler gösterilmektedir. Eğer A = B = C = 0, ise maxterm
ifadesi: A + B + C = 0;
Eğer A = B = 0 ve C = 1, ise maxterm ifadesi A + B + C' = 0; şeklinde
olur. Maxtermler sıklıkla büyük M harfi ile kısaltılarak gösterilir.
1’inci satırdaki maxterm Mi şeklinde ifade edilir. Her bir maxterm
ifadesi minterm ifadelerinin değili şeklindedir (Mi = mi' )
(5.5.a)F(A,B,C)=m(3,4,5,6,7)
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
21
Minterm ve Maxterm İfadeleri
F fonksiyonu eşitlik 5-3 deki gibi
maxtermler cinsinden yazılırsa,
bu tip fonksiyon ifadelerine
maxterm açılımı veya standart
toplamların çarpımı denilir.
Eşitlik 5-3 M- notasyonu ile şu
şekilde tekrar yazılabilir:
[ f = (A + B + C)(A + B + C')(A + B' + C)]
(5.6)F(A,B,C)=M0M1M2
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
22
Minterm ve Maxterm İfadeleri
Daha kısa bir ifade ile maxtermler cinsinden yazmak
gerekirse :
Eşitlik (6-6a) direkt olarak eşitlik 5-5a ifadesinden elde
edilebilir:
(5.6a)
(5.5a)
 Simgesi çarpma anlamına geliyor
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
23
Minterm ve Maxterm İfadeleri
Verilen maxterm veya mintermler ile f fonksiyonunun
değilinin minterm veya maxtermleri kolaylıkla
oluşturulabilir. F’ =1 iken f=0, yani minterm olarak f’in
içinde bulunmayacak. Dolayısıyla f’ bulunurken, f de
olmayan mintermler direk olarak yazılır.Bu yüzden
Eşitlik (5-5)’den f’:
Aynı şekilde maxtermlerin elde edilmesinde f’
bulunurken f de bulunmayan maxtermlere bakılır.
Eşitlik (5-6) yı kullanarak:
(5.7)
(5.8)
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
24
Minterm ve Maxterm İfadeleri
Çünkü mintermlerin değili ilgili maxterme karşılık
gelir. Eşitlik 5-5’in değilini alarak eşitlik 5-8’i elde
edebiliriz. f=m3+m4+m5+m6 ise
Aynı şekilde Eşitlik 5-6’nın değili alınarak eşitlik 5-7
oluşturulablilir:
f' = (MOM1M2)' = Mo’ + M1’ + M2
‘ = mo + m1+ m2
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
25
Minterm ve Maxterm İfadeleri
Genel bir Boole (lojik) ifadesi minterm veya maxtermler
cinsinden doğruluk tablosu kullanılarak veya cebirsel
olarak elde edilebilir. Eğer doğruluk tablosu kullanılarak
bütün değişkenlerin farklı kombinasyonları ele alınırsa,
mintermler ve maxtermler daha önce anlatıldığı gibi
bulunur. (Yani minterm numaraları fonksiyonun değerini
1 yapan satırlardır).
Diğer bir yöntem ise fonksiyonu çarpımların
toplamı(SoP) şeklinde yazıp, eksik değişkenlerin her biri
için X + X' = 1 teoremi kullanılır ve eksik değişkenler
tamamlanır.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
26
Minterm ve Maxterm İfadeleri
Önek 1: f(a,b,c)=ab+c+ac mintermlerini bulunuz.
Yöntem: Eksik değişkenleri x+x’=1 ile çarpıyoruz:
f=ab (c+c’)+c (a+a’)(b+b’)+ac (b+b’)
= abc+abc’+c(ab+ab’+a’b+a’b’)+abc+ab’c
=abc+abc’+abc+ab’c+a’bc+a’b’c+abc+ab’c
=abc+abc’+ab’c+a’bc+a’b’c=Σm(1,3,5,6,7)
111 110 101 011 001
Örnek 2: Aynı fonksiyonun maxtermlerini bulunuz.
Yöntem: x+yz=(x+y)(x+z) (tekrarlayın) ve xx’=0
Teoremini eksik olan değişkenler için kullanın.
f=(a+c)(b+c)+ac=(a+c+ac)(b+c+ac)=(a+c)(b+c)
=(a+c+ bb’ )(b+c+ aa’ )=(a+b+c)(a+b’+c) (a+b+c) (a’+b+c)
=(a+b+c)(a+b’+c)(a’+b+c)=M(0,2,4)
m0’ m2’ m4’
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
27
Minterm ve Maxterm Oluşturulması
Örnek 1: Çarpımların toplamı (SoP) şeklinde çevirirken :
Eksik değişkenleri (x+x’)=1 ifadesi ile tamamlayınız.
f(a.b.c.d) = a'(b' + d) + acd' ifadesinin mintermlerini
bulunuz.
Tekrarlayan ifadeler çıkartılır çünkü X + X = X dir. Kalan
ifadeler çevrilerek mintermler bulunabilir: (Decimal notation)
f=a’b’+a’d+acd’
=a’b’(c+c’)(d+d’)+a’d(b+b’)(b+c’)+acd’(b+b’)
=a’b’c’d’+ a’b’c’d + a’b’cd’ + a’b’cd + a’b’c’d + a’b’cd
+a’bc’d+a’bcd+ab’cd’
f= a’b’c’d’+ a’b’c’d + a’b’cd’ + a’b’cd + a’bc’d + a’bcd
0000 0001 0010 0011 0101 0111
+ ab’cd’ (1010), f=m(0,1,2,3,5,7,10)
(5.9)
(5.10)
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
28
Minterm ve Maxterm Oluşturulması
Maxterm ifadelerinin numaraları 4 değişkenli bir işlem
için 0 ile 15 arasında değişebilir ve maxterm ifadesinin
terim numaraları aynı fonksiyon için asla minterm
numaralarına karşılık gelmezler. Mintermlerde olmayan
numaralar maxtermlerde, veya tersi olur.
Maxterm ifadelerini bulabilmenin alternatif bir yolu ise
eksik değişkenleri XX' = 0 teoremini kullanarak
tamamlamaktır. Eşitlik (5-9) için :
(f=m(0,1,2,3,5,7,10,14)) Mintermler
Maxtermler(f=M(4,6,8,9,11,12,13,15))
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
29
Minterm ve Maxterm Oluşturulması
f = a'(b'+d) + acd'
Örnek 2: f fonksiyonun maxtermlerini bulunuz.
Maxterm şeklinde ifade ediniz. Eksik değişkenleri XX’=0 ekleyerek
bulunuz.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
30
Minterm ve Maxterm Oluşturulması
Maxterm ifadeleri decimal notation’a çevirirken önce
değillenmiş değişken 1 ile ve değillenmemiş değişken de
0 değiştirilir.
İki fonksiyonun doğruluk tablosunda aynı mitermler
fonksiyon değerleri aynı ise bu iki fonksiyon eşdeğer
fonksiyonlardır. Aşağıdaki örnek bu kavramı
açıklamaktadır:
Örnek
a'c + b'c' + ab = a'b' + bc + ac’ eşitliğini gösterin
Eksik olan değişkenler tamamlanarak her iki tarafın
minterm ifadesi bulunur. Sol taraf için
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
31
Minterm ve Maxterm Oluşturulması
a'c + b'c' + ab = a'b' + bc + ac’ (Sol taraf için)
Sağ taraf için
Her iki fonksiyonun minterm ifadeleri aynı olduğundan
eşitlik doğrulanmıştır.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
32
5.4 Genel Minterm ve Maxterm İfadeleri
Tablo 5-2 üç değişkenli genel bir fonksiyon için bir
doğruluk tablosunu temsil eder.
Her bir «a», 0 veya 1 değerine sahip bir sabittir.
Fonksiyonu belirtmek için, tüm ai’lere değer atamak
gereklidir. Çünkü her bir «a» iki yolla belirtilebilir,
doğruluk tablosunda F sütununu doldurmak için 28 yol
vardır; bundan dolayı sekiz değişkenin 256 farklı
fonksiyonu tanımlanabilir. (bu dejenere durumları da
içerir, F aynen 0 a ve 1'e eşittir). n değişkenli bir fonksiyon
için, doğruluk tablosunda 2n satır vardır ve her satır için F
değeri 0 ya da 1 olabileceğinden n değişkenli 2
n
kadar
olası fonksiyon vardır.
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
33
Genel Minterm ve Maxterm İfadeler
Tablo 5.2: Üç değişkenli fonksiyon
için Doğruluk Tablosu
Genel Minterm ve Maxterm İfadeleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
34
Tablo 6-2’den, üç değişkenli minterm ifadesi aşağıdaki
şekilde yazılabilir:
Not: Eğer a = 1 ise minterm m ifade edilebilir 0 ise minterm
olarak ifade edilemez. Üç değişkenli genel fonksiyon için
maxterm ifadesi
F=(a0+M0)(a1+M1)(a2+M2)….(a7+M7)=(ai+Mi)
Not: Eğer ai = 1, ai + Mi = 1, ve Mi ifadeden düşer;
fakat, ai = 0 ise Mi ifadede bulunmalıdır.
(5-13)’deki ifadeden, F‘ in minterm ifadesi
(5.12)
(5.13)

7
0
7766554433221100 iimamamamamamamamamaF
Genel Minterm ve Maxterm İfadeler
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
35
F fonksiyonunda olmayan mintermler, f’ fonksiyonunda
bulunmalıdır. Eşitlik (5-12)’den, F' maxterm ifadesi:
F fonksiyonunda olmayan maxtermler, f’ fonksiyonunda
bulunmalıdır. (5-12), (5-13), (5-14), ve (5-15) eşitliklerini n
değişkenli bir forma genellemek gerekirse;
(5.14)
(5.15)
(5.16)
Genel Minterm ve Maxterm İfadeleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
36
(5.17)
N değişkenli iki farklı minterm verilirse:mi, ve mj ; en az bir
değişken mintermlerde değili alınmış ve diğerlerinde
alınmamış şekilde bulunur. Bu yüzden i ≠ j olursa, mimj = 0
olur. Örneğin, n = 3 için,
m1m3 = (A'B'C)(A'BC) = 0.
Aşağıda iki farklı fonksiyon mintermler cinsinden
verilmiştir.
(5.18)
Sonuç:
Genel Minterm ve Maxterm İfadeleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
37
(5.19)
(i ≠j) eşitliğini sağlayan tüm mintermler
düşürülür(silinir). Böylece f1f2 fonksiyonunda sadece
ortak (aynı mintermler) terimler kalır. Örnek:
5.5 Tamamlanmamış (Eksik Tanımlanmış)
Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
38
Dijital sistemler genellikle bir çok alt devrelere
bölünmüştür. Örneğin aşağıdaki devrede N1 devresinin
çıkışlarının N2 devresi için giriş olarak kullanıldığı
görülmektedir.
Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
39
N2 nin çıkışında A, B ve C değerlerinin olası
gereken tüm kombinasyonlarından olmadığını
varsayalım. Özellikle, A, B ve C nin 001 veya
110 değerlerini sağlayacak bir w, x, y, ve z
kombinasyonu olmadığını varsayalım. Böyle bir
tasarımda N2 için bu değerlere (001 veya 110)
bakılmaksızın N2 tasarımı yapılabilir çünkü N2
için 001 veya 110 asla girdi olarak
üretilemeyecektir.
Örneğin, Tablo 5-4 ile f fonksiyonu belirlenebilir.
Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
40
Tablo 5.3 teki X’lerin anlamı şudur:
X değerlerinin 0 veya 1 olması
önemsenmemektedir.
Örnek için ABC = 001 veya 110 değerleri için
F’in alacağı değer dikkate alınmamıştır çünkü
o değerler girdi olarak gelemeyecektir. F
fonksiyonu bu yüzden eksik olarak belirtilir.
A' B' C ve A BC' mintermleri «dikkate alma
(don’t care)» ifadeleri olarak isimlendirilir. Bu
nedenle bu mintermlerin ifadede olmaması ya
da olmaması bizim için önemli değildir.
Tamamlanmamış (Eksik Tanımlanmış)
Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
41
Tablo 5.3: Dikkate Alınmayan
İfadeler İçeren Doğruluk Tablosu
Don’t care
Don’t care
Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
42
Bir fonksiyonu gerçekleştirirken, dikkate alınmayacak
ifadeleri belirtmemiz gerekir. Bu durum fonksiyonu
basitleştirmede yardımcı olacak değerlerin seçilmesi
açısından tercih edilebilir bir durumdur. İki X’e 0 değeri
atanırsa:
İlk X’e 1 ikinci X’e 0 atanırsa
İki X’e 1 değeri atanırsa,
İkinci seçenek en sade çözümü vermektedir.
Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
43
Tamamlanmamış belirli fonksiyonları oluşturmak için bir
yol gördük ve bundan başka birçok yol mevcuttur.
Önceki örnekte, bazı kombinasyonların girdi olarak
gelemeyecek olduğunu ve dikkate alınmadığını gösterdik.
Diğer durumlarda için bütün giriş kombinasyonları
oluşabilir fakat çıkış sinyalinde dikkate alınmayan
ifadeler bulunduğunda çıkışın 0 veya 1 olması o giriş
kombinasyonları için önemli değildir.
Tamamlanmamış belirli fonksiyonlar için minterm
ifadeleri yazılırken, m gerekli mintermler için ve d dikkate
alınmayan mintermler için kullanılır. Tablo 5-3 için
minterm yazılım örneği:
Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
44
Her dikkate alınmayan minterm karşılığında dikkate
alınmayacak maxterm vardır. Örneğin, Eğer F = X
(dikkate alınmayan) 001 giriş kombinasyonu için, m1
dikkate alınmayan minterm ve M1 dikkate alınmayan
maxtermdir. «D » yi dikkate alınmayacak maxterm olarak
kullanıyoruz, Tablo 5-3 maxterm ifadeleri olarak yazılırsa
M2 ,M4 , ve M5 F içinde olan maxtermler ve M1 ve
M6 maxtermleri dikkate alınmayan(opsiyonel)
maxtermlerdir.
6.6 Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
45
Örnek 1
1-bitlik sayı ile 1-bitlik sayıyı toplayıp (a ve b) sonuçta 2-
bitlik sayı veren basit toplayıcı dizayn edelim. Nümerik
değerler ve çıkışlar şu şekilde olur:
A ve B giriş ve X, Y 2- bitlik toplam sonucunu gösteren
değişkenler olmak üzere doğruluk tablosunu şöyle
oluşturabiliriz:
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
46
A B X Y
Numerik 0’lar mantıksal 0 ile, numerik 1’ler de
mantıksal 1 ile gösterildiğinden, 0’lar ve 1’ler doğruluk
tablosunda da önceki tablodaki gibi yerleştirilir.
Doğruluk tablosundan,
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
47
Örnek 2
(N3=N1+N2)
A B
C D
X Y Z
X: carry (elde) Y Z: sum (toplam)
+
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
48
A ve B girişleri birlikte N1 ikilik (binary) sayısını, C ve D beraber
N2 ikilik (binary) sayısını, çıkışlar X, Y ve Z birlikte N3 ikilik
(binary) sayısını temsil etsin. N3 = N1 + N2 (Sıradan toplama
işlemi)
Bu örnekte A, B, C, ve D hem nümerik hem de mantıksal
değerleri temsil etmek için kullanılmıştır fakat numerik ve
mantıksal değerlerin aynı olması herhangi bir karışıklığa yol
açmamalıdır. Doğruluk tablosunu oluşturulurken değişkenler
ikilik(binary) sayılar gibi işlem görür. Şimdi çıkış fonksiyonları
için anahtar fonksiyonu türetelim. Bunu yaparken A, B, C, D, X,
Y ve Z gibi anahtar değişkenler numerik olmayan 0 ve 1 ler ile
gösterelim. (Hatırlanacak olursa 0 ve 1 alçak ve yüksek voltaj
değerini veya açık ve kapalı gibi değerleri gösterir)
Tablodan oluşturulan çıkış ifadesi
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
49
Örnek 3: 6-3-1-1 ikili-kodlanmış-onluk-dijitler için bir hata
dedektörü dizayn edelim. Dört giriş(A, B, C, D) hatalı kod
kombinasyonunu temsil ediyorsa çıkış (F) ifadesi 1
olmalıdır. Geçerli 6-3-1-1 kod kombinasyonları Bölüm 2 de
listelenmişti. Başka bir kombinasyon var ise bu geçerli bir
kombinasyon olarak sayılmayacaktır ve devre çıkışı F = 1
olarak temsil edilip hatanın meydana geldiğini
gösterilecektir. Bunu gösteren doğruluk tablosu:
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
50
(2)
(6)
(10)
(13)
(14)
(15)
0 0 0 0 0
1 0 0 0 1
2 0 0 1 1
3 0 1 0 0
4 0 1 0 1
5 0 1 1 1
6 1 0 0 0
7 1 0 0 1
8 1 0 1 1
9 1 1 0 0
6-3-1-1 code
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
51
İlgili çıkış ifadesi
VE ve VEYA kapısı kullanılarak gerçekleştirilen devre:
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
52
Bir devredeki dört giriş (A, B, C, D) 8-4-2-1 ikili-
kodlanmış-onluk-dijitleri temsil etmektedir. (Z) çıkışı olan
bir devre tasarlayın ve temsil edilen onluk sayı giriş
tarafından 3 ile tam bölünebilir ise Z =1 olsun. Yalnızca
geçerli BCD dijitleri giriş olarak geldiğini varsayalım. 0,3,6
ve 9 sayıları 3'e tam olarak bölünebilir yani ABCD = 0000,
0011, 0110, ve 1001 kombinasyonları için Z = 1 olur. 1010,
1011, 1100,1101,1110 ve 1111 kombinasyonları geçerli BCD
dijitleri olarak temsil edilemezler ve Z bu kombinasyonlar
için dikkate alınmaz. Buna göre doğruluk tablosu:
Örnek 4
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
53
Doğruluk Tablosu Oluşturma Örnekleri
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
54
Buna uygun çıkış ifadesi
Z yi gerçekleştirecek en basit devreyi bulmak için 0
ya da 1 olan bazı dikkate alınmayan (don’t care)
(X'ler) terimler seçilmelidir. Bunun en kolay yolu
Karnaugh haritası kullanmaktır.
Karnaugh (Karno) haritaları bir sonraki bölümde
işlenecektir.
5.7 İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
55
Bu bölümde, iki tane 4-bitlik işaretsiz ikili sayıları toplayan ve 4-
bitlik toplamının giriş ve çıkışının eldesini veren paralel toplayıcı
tasarlayacağız. (Bknz Şekil 5-2). Bu yaklaşım dokuz giriş ve beş
çıkışı olan bir doğruluk tablosunu oluşturmaktadır ve daha
sonra bu beş çıkış ifadesini türetme ve sadeleştirme işlemi
uygulanır. Çünkü her eşitlik sadeleşmeden önceki dokuz
değişkenin ifadesini içerir, bu yaklaşım bayağı zordur ve
sonuçtaki mantıksal devre kompleks bir yapıya bürünür.
Mantıksal modülü tasarlayacak en iyi yol iki biti ve eldeyi
eklemek ve daha sonra bu dört modülü bağlayarak 5-3'deki gibi
4-bit toplama formuna dönüştürmektir. Her bir modül tam
toplayıcı olarak adlandırılır. Elde çıkışı ilk tam toplayıcıdan çıkış
olarak ikinci tam toplayıcıya giriş olarak temsil edilir ve böyle
devam eder.
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
56
Şekil 5-8: 4-bit Paralel Toplayıcı
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
57
Şekil 5-9: Dört Tam Toplayıcı ile Oluşturulan
Paralel Toplayıcı
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
58
Şekil 5-9: Tam Toplayıcı ve Doğruluk Tablosu
X Y Cin Cout Sum
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
59
Şekil 5-9’de X, Y, ve Cin girişleri ile tam toplayıcı için
doğruluk tablosu verilmiştir. Çıkışlar her satır için (X + Y
Cin) girişleri ile işlem yapılarak bulunur ve sonuç
ayrıştırılarak elde (C i+ 1) ve toplam biti (Si) elde edilir.
Örneğin, 101 içeren satırda
1 + 0 + 1 = 102 ise Ci+ 1 = 1 veSi =0. Şekil 5-10 da kapılar
ile tam toplayıcı gerçekleştirilmesi gösterilmiştir.
Doğruluk tablosundan türetilen tam toplayıcı mantıksal
ifadeler şunlardır:
(5.20)
İkili Toplayıcı ve Çıkarıcıların
Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
60
(6.21)
XYCin terimi Cout u basitleştirmek için üç kez
kullanılmıştır. Şekil 6-5’de eşitlik (6-20) ve (6-21)
ifadelerine karşılık gelen mantıksal devre gösterilmiştir.
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
61
Şekil 5-10: Tam Toplayıcı Devresinin Gerçekleştirimi
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
62
İşaretsiz ikilik sayıları toplayan paralel bir devre
tasarlanmasına rağmen, şekil 5-9’daki paralel toplayıcı
complement formda olan negatif sayıları toplamak için
de kullanılabilir. 2’s complement kullanıldığında, son
elde biti (C4) atılır, ve en başta elde biti olmaz. Co = 0
olduğunda ilk hücredeki elde biti aşağıdaki formda
sadeleştirilebilir:
1’s complement kullanıldığında, elde biti C4’ün Co ‘a
bağlanması ile elde edilir. (Şekil 5-9’da kesikli çizgiler ile
bu durum gösterilmiştir.)
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
63
Tümleyen (complement) formdaki negatif işaretli sayıları
toplarken, taşma(overflow) meydana gelirse toplamın işaret
biti hatalı olur. Bu taşma iki pozitif sayının toplanıp negatif
sonuç vermesi ve ya iki negatif sayı toplanıp pozitif sonuç
vermesi ile meydana gelir. Taşma olduğunda 1 sonucunu
atayacak bir V sinyali tanımlayacağız. Şekil 5-9’de V değerini
belirlemek için A, B, ve S (the sum) için işaret bitlerini
kullanabiliriz:
(5.22)
Bit sayısı fazla ise, Şekil 5-10 teki paralel toplayıcı türü yavaş
olabilir çünkü ilk hücrede oluşan elde son hücreye kadar
dağıtılarak gelecektir. Diğer türlerdeki toplayıcılar, örneğin
carry-Iook-ahead toplayıcısı elde dağıtımını hızlandırmak için
kullanılabilir.
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
64
İkilik tabandaki sayılarda çıkarma işlemi, çıkarılacak sayıya
tümleyeni eklenerek kolay bir şekilde gerçekleştirilir. A-B yi
hesaplamak için, B'nin tümleyeni A'ya eklenir. Bu bize
doğru sonucu verir çünkü A + (- B) = A - B'dir. 1'in ya da
2'nin tümleyeni bu işlemler için kullanılabilir.
Şekil 5-11 daki devre A-B formunu negatif sayılar için 2'ye
tümleyen kullanılarak yapılmıştır. B'nin 2 tümleyeni, önce 1
tümleyeni bulunup çıkan sonuca 1 eklenerek bulunabilir. 1’e
tümleyeni bulmak için ise B'nin her bitinin tersi alınır. Daha
sonra gerekli çıkarma işlemi gerçekleştirilebilir.
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
65
Şekil 5.10: Tam Toplayıcı Kullanılmış İkili Çıkarıcı
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
66
Örnek
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
67
Alternatif olarak, direk çıkarma işlemi tam toplayıcıya
benzer şekilde tam çıkarıcı ile gerçekleştirilebilir. Şekil 5-
12'de X'den Y yi çıkaran bir çıkarıcı gösterilmiştir. İlk iki bit
sağdan başlanarak çıkarılır, d1 aradaki farkı verir, gerekli ise
diğer sütundan bir borç alınarak borç sinyali oluşturulur.
(b2 =1). Olağan hücre (i hücresi) Xi,Yi, ve bi girişleri ve bi+1
ve di çıkışlarını içerir. bi=1 girişi o hücredeki Xi den 1 borç
aldığında gerçekleşir, borç alınan 1 ise Xi den çıkarılan 1'e
eşittir. i hücresinde, bi ve Yi, Xi den çıkarılır, d farkı oluşur,
(bi+1 = 1) borç sinyali ise gerekli olursa diğer sütundan
alınır.
İkili Toplayıcı ve Çıkarıcıların
Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
68
Şekil 5-12: Paralel Çıkarıcı
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
69
Tablo 5.4: Tam Çıkarıcının
Doğruluk Tablosu
İkili Toplayıcı ve Çıkarıcıların Tasarımı
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
70
Tablo 5-4’de ikilik (binary) tam çıkarıcının doğruluk
tablosu verilmiştir. Buna göre, Xi = 0, olduğunda Yi = 1
ve b1 = 1:
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
71
İkili Toplayıcı ve Çıkarıcıların Tasarımı
i sütununda Xi den Yi ve bi yi direk olarak
çıkaramayız. Dolayısıyla i+1 sütundan borç
almamız gerekir. Alınan 1 Xi ye 10 (210) eklenen 1
ve bi+1 'i set eden 1 ile eşdeğerdir. Daha sonra di
= 10 - 1 - 1 = 0 olur. 5-4 tablosunu diğer giriş
kombinasyonları için ikilik(binary) çıkarmayı
kullanılarak doğrulayın.
Kaynakça
• M. Akbaba, Mantık Devreleri Notları
• Hüseyin EKİZ, Mantık Devreleri, Değişim
Yayınları, 4. Baskı, 2005
• Thomas L. Floyd, Digital Fundamentals,
Prentice-Hall Inc. New Jersey, 2006
• M. Morris Mano, Michael D. Ciletti, Digital
Design, Prentice-Hall, Inc.,New Jersey, 1997
KBUZEM
Karabük Üniversitesi
Uzaktan Eğitim Uygulama ve Araştırma Merkezi
72

More Related Content

More from karmuhtam

More from karmuhtam (20)

Deney 6
Deney 6Deney 6
Deney 6
 
Deney 5
Deney 5Deney 5
Deney 5
 
Deney 3 ve 4
Deney 3 ve 4Deney 3 ve 4
Deney 3 ve 4
 
Deney 1 ve 2
Deney 1 ve 2Deney 1 ve 2
Deney 1 ve 2
 
Data structure week y 5 1
Data structure week y 5 1Data structure week y 5 1
Data structure week y 5 1
 
Data structure week y 5
Data structure week y 5Data structure week y 5
Data structure week y 5
 
Data structure week y 4
Data structure week y 4Data structure week y 4
Data structure week y 4
 
Data structure week 3
Data structure week 3Data structure week 3
Data structure week 3
 
Data structure week 2
Data structure week 2Data structure week 2
Data structure week 2
 
Data structure week 1
Data structure week 1Data structure week 1
Data structure week 1
 
13. sınıfları başlık dosyaları
13.  sınıfları başlık dosyaları13.  sınıfları başlık dosyaları
13. sınıfları başlık dosyaları
 
12. stl örnekler
12.  stl örnekler12.  stl örnekler
12. stl örnekler
 
11. stl kütüphanesi
11. stl kütüphanesi11. stl kütüphanesi
11. stl kütüphanesi
 
10. istisna isleme
10. istisna isleme10. istisna isleme
10. istisna isleme
 
9. şablonlar
9. şablonlar9. şablonlar
9. şablonlar
 
8. çok biçimlilik
8. çok biçimlilik8. çok biçimlilik
8. çok biçimlilik
 
7. kalıtım
7. kalıtım7. kalıtım
7. kalıtım
 
6. this işaretçisi ve arkadaşlık
6. this işaretçisi ve arkadaşlık6. this işaretçisi ve arkadaşlık
6. this işaretçisi ve arkadaşlık
 
5. kurucu, yok edici ve kopyalama fonksiyonları
5. kurucu, yok edici ve kopyalama fonksiyonları5. kurucu, yok edici ve kopyalama fonksiyonları
5. kurucu, yok edici ve kopyalama fonksiyonları
 
4. yapılar
4. yapılar4. yapılar
4. yapılar
 

H5 blm221 minterm-maxterm

  • 1. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi BLM 221 MANTIK DEVRELERİ Prof Dr Mehmet AKBABA mehmetakbaba@karabuk.edu.tr 5. HAFTA
  • 2. Temel Kavramlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 2 Boole Fonksiyonlarının Minterm ve Maxterm İfadeleri 1. Cümlelerin Boolean Cebirine Dönüştürülmesi 2. Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarım 3. Genel Minterm ve Maxterm İfadeleri 4. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar 5. Doğruluk Tablosu Oluşturma Örnekleri 6. İkili Toplayıcı ve Çıkarıcıların Tasarımı
  • 3. Cümlelerin Boolean Cebirine Dönüştürülmesi KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 3 5.1 Cümlelerin Boolean Cebirine Dönüştürülmesi Tek çıkışlı kombinasyonel bir devre tasarımı için gerekli 3 ana adım aşağıda verilmiştir: 1. İstenilen davranışı sergileyen bir devrenin Boole (switching) fonksiyonunu veya ifadesini oluştur. 2. Elde edilen Boole fonksiyonunun (ifadesinin) sadeleştirilmiş cebirsel ifadesini bul. 3. Sadeleştirilmiş haldeki devreyi uygun mantık kapılarıyla gerçekleştir.
  • 4. Cümlelerin Boolean Cebirine Dönüştürülmesi KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 4 Mantık problemleri çoğu zaman bir yada daha çok cümle ile ifade edilir. Mantık Devrelerinin tasarımındaki ilk adım bu cümleleri Boole ifadelerine çevirmektir. Bu kavram aşağıda verilecek olan birkaç örnekle açıklanmaktadır. ÖRNEK 1: Eğer Pazartesi gecesi ise ve ödevlerini bitirmişse Meryem TV izler (ödevlerini bitirmemiş ise Pazartesi gecesi olsa bile TV izleyemez) (Meryem watches TV if it is Monday night, and, she has finished her homework)
  • 5. Cümlelerin Boolean Cebirine Dönüştürülmesi KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 5 Burada «eğer» ve «ve» bağlaçları hiçbir ifadeye dahil değildir; bu bağlaçlar ifadeler arasındaki ilişkiyi gösterir. Bir ifadenin doğru yada yanlış olduğunu gösteren bir değişken ile ifadeleri inceleyelim: F = 1 Eğer «Meryem TV izlerse» , doğru; değilse, F =0 («Meryem TV izleyemez»). F=1 olması iki şartın birden gerçekleşmesine bağlıdır. Bunlar: 1) A = 1 Eğer «Pazartesi gecesi ise» doğru; değilse, A = 0. 2) B = 1 Eğer «eğer Meryem ödevini bitirmişse» doğru; değilse B = 0. F eğer A ve B ifadelerinin ikisi de doğruysa cümle şu şekilde Boole ifadeye çevrilebilir: F = A·B
  • 6. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 6 Cümlelerin Boolean Cebirine Dönüştürülmesi ÖRNEK 2: Aşağıdaki örnek bir cümleden cebirsel bir ifadeye nasıl geçiş yapılabileceğini göstermektedir. Bir alarm devresi aşağıda tanımlanan biçimde tasarlanmak isteniyor: Alarm çalacaktır; eğer ve ancak (Ancak ve Ancak) alarm anahtarı açıksa ve kapı kapalı değilse, veya saat 18:00 den sonra ise ve pencere kapalı değilse. İlk adım yukarıdaki cümlenin cebirsel karşılığını, her bir ifadeye bir değişken verilerek yazılması işlemidir.
  • 7. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 7 Cümlelerin Boolean Cebirine Dönüştürülmesi Z= Alarm çalacak/ çalmayacak: Z=1 Eğer alarm çalarsa, Z’=1 (F=0) Eğer alarm çalmazsa A=Alarm anahtarı açık/kapalı: A=1 Eğer alarm anahtarı açık ise, A’=1 (A=0) Eğer alarm anahtarı açık değilse(kapalı ise) B=Kapı açık/kapalı B=1 Eğer kapı kapalı ise, B’=1 (B=0) Eğer kapı açık ise (Kapalı değilse) C=Saat 18:00 den önce/sonra C=1 Eğer 18:00den sonra ise. C’=1 (C=0) 18:00den sonra değilse D= Pencere açık/kapalı, D=1 Eğer pencere kapalı ise, D’=1 (D=0) Eğer pencere kapalı değilse Bu tanımlardan sonra F nin Boole (lojik) İfadesi aşağıdaki gibi olur: Z=A.B’+C.D’
  • 8. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 8 Cümlelerin Boolean Cebirine Dönüştürülmesi Z=Alarm çalacaktır= Eğer ve ancak (if) alarm anahtarı açık ise (A) VE Kapı kapalı değilse (B’) VEYA Saat 18:00den sonra ise (C) VE pencere kapalı değilse (D’). Z=A.B’+C.D’ Bu lojik fonksiyonu (Boole ifadesini) gerçekleştirecek lojik devre aşağıda verilmiştir.
  • 9. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 9 Cümlelerin Boolean Cebirine Dönüştürülmesi Z=A.B’+C.D’
  • 10. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 10 Cümlelerin Boolean Cebirine Dönüştürülmesi Ahmet araba alacak, mezun olduğu zaman ve, ya babasından para alacak yada bankadan kredi. (Ahmed will buy a car when he will graduate, and if either his father gives him loan or he gets bank loan.) Z=Araba alacak(buy car) A=Babasından para alacak(father gives loan) B=Bankadan kredi alacak (get bank loan) C=Mezun olma (graduate) Z=C(A+B) Örnek 3:
  • 11. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 11 5.2 Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarımı Kombinasyonel (Tümleşik) devreler belleği olmayan, geçmişi hatırlayamayan, lojik kapıların bileşiminden oluşan devrelerdir. Amaç: Belli bir işi yapan mantık fonksiyonunu elde etme Aşağıdaki örnekte doğruluk tablosu verilen tasarının mantık devresi tasarımı gösterilecektir. 3-giriş 1- çıkışlı devre Şekil 5-1’de gösterilmiştir. Yapılacak iş: Devrenin çıkış değişkeni f nin aşağıdaki şartları sağlaması isteniyor: f = 1 eğer N ≥ 0112 (Giriş: 3 Değişken: A, B, C. N: f’in Değeri) Ve f= 0 eğer N < 0112.
  • 12. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 12 Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarımı Şekil 5-1(b)de f fonksiyonu için doğruluk tablosu gösterilmiştir. Şekil 5-1: Kombinasyonel Devre ve Doğruluk Tablosu
  • 13. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 13 Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarımı Doğruluk tablosunu kullanarak f’nin cebirsel ifadesini 1 yapacak A, B, ve C değişkenlerinin kombinasyonlarını kullanmamız gerekiyor. Bu Kombinasyonlar: 011 100 101 110 111 A’BC AB’C’ AB’C ABC’ ABC F çarpımların toplamı (SoP) şeklinde şu şekilde yazılabilir: (Doğruluk tablosunda f yi 1 yapan kombşnasyonlar) f= A'BC + AB'C' + AB'C + ABC' + ABC ( 5-1)
  • 14. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 14 Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarımı f= A'BC + AB' + AB = A'BC + A=(A+A’)(A+BC) = A + BC (5-2) Eşitlik 5-2’nin Devre Şeması aşağıdaki gibi gösterilir: Eşitlik 5-1, A+A’=1 kullanılarak aşağıdaki şekilde sadeleştirilebilir:
  • 15. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 15 Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarımı F’nin 1 olduğu ifadeleri yazmak yerine F’nin 0 olduğu ifadelerle de fonksiyon tekrar yazılabilir fakat bu sefer f fonksiyonu toplamların çarpımı(PoS) şeklinde ifadelerden oluşmalıdır. F fonksiyonu aşağıdaki A, B, C değişkenlerinin kombinasyonları için sıfır olur. 000 001 010 A+B+C A+B+C’ A+B’+C Bu yüzden: f = (A + B + C)(A + B + C')(A + B' + C) (5.3) VEYA f’ çarpımların toplamı(SOP) şeklinde ifade edilip tersi alınarak toplamların çarpımına(POS) dönüştürülebilir:
  • 16. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 16 Doğruluk Tabloları Kullanılarak Kombinasyonel Devre Tasarımı f’=A’B’C’+A’B’C+A’BC’ ve bunun tersini alırsak; f=(A + B+ C)(A + B + C’)(A + B’ + C) Bu iki ifadenin birbirine eşitliğini şu şekilde kanıtlayabiliriz: f=(A+B+C)(A+B+C’)(A+B’+C) f= (B + A)(B' + A + C) = B(A+C) + AB’ = A + BC (5.4) Çıkan sonuç eşitlik (5-2) ile aynı, dolayısıyla (5.2) ile (5.4) birbirine eşit ifadelerdir.
  • 17. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 17 5.3 Minterm ve Maxterm İfadeleri Eşitlik 5-1 deki terimlerin herbiri minterm ifadeleridir. Genelde, n değişkenli bir ifadenin mintermleri n tane harfin kendisi veya değili kullanılarak bir kez gözükmesi ile oluşturulur. Değişkenin hem kendisi hem değili aynı minterm içinde bulunamaz. Tablo 5-1 A, B, C değişkenlerinin oluşturduğu tüm mintermleri göstermektedir. Mintermler aşağıdaki gibi gösterilir: m0 m1 m2 m3 m4 m5 v.s… 000 001 010 011 100 101 A’B’C’ A’B’C A’BC’ A’BC AB’C’ AB’C Dikkat edilecek olursa mintermler çarpımların toplamı şeklinde yazılmıştır (SOP).
  • 18. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 18 Minterm ve Maxterm İfadeleri Tablo 5-1 Üç Değişkenli İfadenin Minterm ve Maxterm’leri
  • 19. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 19 Minterm ve Maxterm İfadeleri F çarpımların toplamı(SOP) şeklinde ifade edilirse, bu tip yazılımlara minterm açılımı (expansions) ya da standart çarpımların toplamı ifadesidir denir. (Bakınız eşitlik 5-1). Doğruluk tablosundaki f=1’i sağlayacak her bir satırdaki değerin minterm olma zorunluluğu vardır çünkü mi = 1 değeri sadece değişkenlerin olası kombinasyonu sağlandığı zaman 1 olur. Mintermler doğruluk tablosunda 1-1(one to one) özelliği taşır, her bir satır tek bir minterme tekabül eder. Dolayısıykar eşitlik 6-1 minterm numaralarıyla da ifade edilebilir: f(A, B, C) = m3 + m4 + m5 + m6 + m7 (5.5) [ f= A'BC + AB'C' + AB'C + ABC' + ABC (5.1) ]
  • 20. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 20 Minterm ve Maxterm İfadeleri Daha kısa bir formda sadece sayılar kullanılarak küçük m harfi ile aşağıdaki gibi de kısaltılarak gösterilebilir. Eşitlik 6-3 teki her bir terim maxterm olarak ifade edilir. Genelde, n değişkenli bir ifadenin maxtermleri n tane harfin kendisi veya değili kullanılarak bir kez gözükmesi ile oluşturulur. Değişkenin hem kendisi hem değili aynı maxterm içinde bulunamaz. Tablo 5-1 A, B, C değişkenlerinin oluşturduğu tüm maxtermler gösterilmektedir. Eğer A = B = C = 0, ise maxterm ifadesi: A + B + C = 0; Eğer A = B = 0 ve C = 1, ise maxterm ifadesi A + B + C' = 0; şeklinde olur. Maxtermler sıklıkla büyük M harfi ile kısaltılarak gösterilir. 1’inci satırdaki maxterm Mi şeklinde ifade edilir. Her bir maxterm ifadesi minterm ifadelerinin değili şeklindedir (Mi = mi' ) (5.5.a)F(A,B,C)=m(3,4,5,6,7)
  • 21. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 21 Minterm ve Maxterm İfadeleri F fonksiyonu eşitlik 5-3 deki gibi maxtermler cinsinden yazılırsa, bu tip fonksiyon ifadelerine maxterm açılımı veya standart toplamların çarpımı denilir. Eşitlik 5-3 M- notasyonu ile şu şekilde tekrar yazılabilir: [ f = (A + B + C)(A + B + C')(A + B' + C)] (5.6)F(A,B,C)=M0M1M2
  • 22. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 22 Minterm ve Maxterm İfadeleri Daha kısa bir ifade ile maxtermler cinsinden yazmak gerekirse : Eşitlik (6-6a) direkt olarak eşitlik 5-5a ifadesinden elde edilebilir: (5.6a) (5.5a)  Simgesi çarpma anlamına geliyor
  • 23. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 23 Minterm ve Maxterm İfadeleri Verilen maxterm veya mintermler ile f fonksiyonunun değilinin minterm veya maxtermleri kolaylıkla oluşturulabilir. F’ =1 iken f=0, yani minterm olarak f’in içinde bulunmayacak. Dolayısıyla f’ bulunurken, f de olmayan mintermler direk olarak yazılır.Bu yüzden Eşitlik (5-5)’den f’: Aynı şekilde maxtermlerin elde edilmesinde f’ bulunurken f de bulunmayan maxtermlere bakılır. Eşitlik (5-6) yı kullanarak: (5.7) (5.8)
  • 24. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 24 Minterm ve Maxterm İfadeleri Çünkü mintermlerin değili ilgili maxterme karşılık gelir. Eşitlik 5-5’in değilini alarak eşitlik 5-8’i elde edebiliriz. f=m3+m4+m5+m6 ise Aynı şekilde Eşitlik 5-6’nın değili alınarak eşitlik 5-7 oluşturulablilir: f' = (MOM1M2)' = Mo’ + M1’ + M2 ‘ = mo + m1+ m2
  • 25. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 25 Minterm ve Maxterm İfadeleri Genel bir Boole (lojik) ifadesi minterm veya maxtermler cinsinden doğruluk tablosu kullanılarak veya cebirsel olarak elde edilebilir. Eğer doğruluk tablosu kullanılarak bütün değişkenlerin farklı kombinasyonları ele alınırsa, mintermler ve maxtermler daha önce anlatıldığı gibi bulunur. (Yani minterm numaraları fonksiyonun değerini 1 yapan satırlardır). Diğer bir yöntem ise fonksiyonu çarpımların toplamı(SoP) şeklinde yazıp, eksik değişkenlerin her biri için X + X' = 1 teoremi kullanılır ve eksik değişkenler tamamlanır.
  • 26. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 26 Minterm ve Maxterm İfadeleri Önek 1: f(a,b,c)=ab+c+ac mintermlerini bulunuz. Yöntem: Eksik değişkenleri x+x’=1 ile çarpıyoruz: f=ab (c+c’)+c (a+a’)(b+b’)+ac (b+b’) = abc+abc’+c(ab+ab’+a’b+a’b’)+abc+ab’c =abc+abc’+abc+ab’c+a’bc+a’b’c+abc+ab’c =abc+abc’+ab’c+a’bc+a’b’c=Σm(1,3,5,6,7) 111 110 101 011 001 Örnek 2: Aynı fonksiyonun maxtermlerini bulunuz. Yöntem: x+yz=(x+y)(x+z) (tekrarlayın) ve xx’=0 Teoremini eksik olan değişkenler için kullanın. f=(a+c)(b+c)+ac=(a+c+ac)(b+c+ac)=(a+c)(b+c) =(a+c+ bb’ )(b+c+ aa’ )=(a+b+c)(a+b’+c) (a+b+c) (a’+b+c) =(a+b+c)(a+b’+c)(a’+b+c)=M(0,2,4) m0’ m2’ m4’
  • 27. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 27 Minterm ve Maxterm Oluşturulması Örnek 1: Çarpımların toplamı (SoP) şeklinde çevirirken : Eksik değişkenleri (x+x’)=1 ifadesi ile tamamlayınız. f(a.b.c.d) = a'(b' + d) + acd' ifadesinin mintermlerini bulunuz. Tekrarlayan ifadeler çıkartılır çünkü X + X = X dir. Kalan ifadeler çevrilerek mintermler bulunabilir: (Decimal notation) f=a’b’+a’d+acd’ =a’b’(c+c’)(d+d’)+a’d(b+b’)(b+c’)+acd’(b+b’) =a’b’c’d’+ a’b’c’d + a’b’cd’ + a’b’cd + a’b’c’d + a’b’cd +a’bc’d+a’bcd+ab’cd’ f= a’b’c’d’+ a’b’c’d + a’b’cd’ + a’b’cd + a’bc’d + a’bcd 0000 0001 0010 0011 0101 0111 + ab’cd’ (1010), f=m(0,1,2,3,5,7,10) (5.9) (5.10)
  • 28. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 28 Minterm ve Maxterm Oluşturulması Maxterm ifadelerinin numaraları 4 değişkenli bir işlem için 0 ile 15 arasında değişebilir ve maxterm ifadesinin terim numaraları aynı fonksiyon için asla minterm numaralarına karşılık gelmezler. Mintermlerde olmayan numaralar maxtermlerde, veya tersi olur. Maxterm ifadelerini bulabilmenin alternatif bir yolu ise eksik değişkenleri XX' = 0 teoremini kullanarak tamamlamaktır. Eşitlik (5-9) için : (f=m(0,1,2,3,5,7,10,14)) Mintermler Maxtermler(f=M(4,6,8,9,11,12,13,15))
  • 29. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 29 Minterm ve Maxterm Oluşturulması f = a'(b'+d) + acd' Örnek 2: f fonksiyonun maxtermlerini bulunuz. Maxterm şeklinde ifade ediniz. Eksik değişkenleri XX’=0 ekleyerek bulunuz.
  • 30. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 30 Minterm ve Maxterm Oluşturulması Maxterm ifadeleri decimal notation’a çevirirken önce değillenmiş değişken 1 ile ve değillenmemiş değişken de 0 değiştirilir. İki fonksiyonun doğruluk tablosunda aynı mitermler fonksiyon değerleri aynı ise bu iki fonksiyon eşdeğer fonksiyonlardır. Aşağıdaki örnek bu kavramı açıklamaktadır: Örnek a'c + b'c' + ab = a'b' + bc + ac’ eşitliğini gösterin Eksik olan değişkenler tamamlanarak her iki tarafın minterm ifadesi bulunur. Sol taraf için
  • 31. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 31 Minterm ve Maxterm Oluşturulması a'c + b'c' + ab = a'b' + bc + ac’ (Sol taraf için) Sağ taraf için Her iki fonksiyonun minterm ifadeleri aynı olduğundan eşitlik doğrulanmıştır.
  • 32. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 32 5.4 Genel Minterm ve Maxterm İfadeleri Tablo 5-2 üç değişkenli genel bir fonksiyon için bir doğruluk tablosunu temsil eder. Her bir «a», 0 veya 1 değerine sahip bir sabittir. Fonksiyonu belirtmek için, tüm ai’lere değer atamak gereklidir. Çünkü her bir «a» iki yolla belirtilebilir, doğruluk tablosunda F sütununu doldurmak için 28 yol vardır; bundan dolayı sekiz değişkenin 256 farklı fonksiyonu tanımlanabilir. (bu dejenere durumları da içerir, F aynen 0 a ve 1'e eşittir). n değişkenli bir fonksiyon için, doğruluk tablosunda 2n satır vardır ve her satır için F değeri 0 ya da 1 olabileceğinden n değişkenli 2 n kadar olası fonksiyon vardır.
  • 33. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 33 Genel Minterm ve Maxterm İfadeler Tablo 5.2: Üç değişkenli fonksiyon için Doğruluk Tablosu
  • 34. Genel Minterm ve Maxterm İfadeleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 34 Tablo 6-2’den, üç değişkenli minterm ifadesi aşağıdaki şekilde yazılabilir: Not: Eğer a = 1 ise minterm m ifade edilebilir 0 ise minterm olarak ifade edilemez. Üç değişkenli genel fonksiyon için maxterm ifadesi F=(a0+M0)(a1+M1)(a2+M2)….(a7+M7)=(ai+Mi) Not: Eğer ai = 1, ai + Mi = 1, ve Mi ifadeden düşer; fakat, ai = 0 ise Mi ifadede bulunmalıdır. (5-13)’deki ifadeden, F‘ in minterm ifadesi (5.12) (5.13)  7 0 7766554433221100 iimamamamamamamamamaF
  • 35. Genel Minterm ve Maxterm İfadeler KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 35 F fonksiyonunda olmayan mintermler, f’ fonksiyonunda bulunmalıdır. Eşitlik (5-12)’den, F' maxterm ifadesi: F fonksiyonunda olmayan maxtermler, f’ fonksiyonunda bulunmalıdır. (5-12), (5-13), (5-14), ve (5-15) eşitliklerini n değişkenli bir forma genellemek gerekirse; (5.14) (5.15) (5.16)
  • 36. Genel Minterm ve Maxterm İfadeleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 36 (5.17) N değişkenli iki farklı minterm verilirse:mi, ve mj ; en az bir değişken mintermlerde değili alınmış ve diğerlerinde alınmamış şekilde bulunur. Bu yüzden i ≠ j olursa, mimj = 0 olur. Örneğin, n = 3 için, m1m3 = (A'B'C)(A'BC) = 0. Aşağıda iki farklı fonksiyon mintermler cinsinden verilmiştir. (5.18) Sonuç:
  • 37. Genel Minterm ve Maxterm İfadeleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 37 (5.19) (i ≠j) eşitliğini sağlayan tüm mintermler düşürülür(silinir). Böylece f1f2 fonksiyonunda sadece ortak (aynı mintermler) terimler kalır. Örnek:
  • 38. 5.5 Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 38 Dijital sistemler genellikle bir çok alt devrelere bölünmüştür. Örneğin aşağıdaki devrede N1 devresinin çıkışlarının N2 devresi için giriş olarak kullanıldığı görülmektedir.
  • 39. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 39 N2 nin çıkışında A, B ve C değerlerinin olası gereken tüm kombinasyonlarından olmadığını varsayalım. Özellikle, A, B ve C nin 001 veya 110 değerlerini sağlayacak bir w, x, y, ve z kombinasyonu olmadığını varsayalım. Böyle bir tasarımda N2 için bu değerlere (001 veya 110) bakılmaksızın N2 tasarımı yapılabilir çünkü N2 için 001 veya 110 asla girdi olarak üretilemeyecektir. Örneğin, Tablo 5-4 ile f fonksiyonu belirlenebilir.
  • 40. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 40 Tablo 5.3 teki X’lerin anlamı şudur: X değerlerinin 0 veya 1 olması önemsenmemektedir. Örnek için ABC = 001 veya 110 değerleri için F’in alacağı değer dikkate alınmamıştır çünkü o değerler girdi olarak gelemeyecektir. F fonksiyonu bu yüzden eksik olarak belirtilir. A' B' C ve A BC' mintermleri «dikkate alma (don’t care)» ifadeleri olarak isimlendirilir. Bu nedenle bu mintermlerin ifadede olmaması ya da olmaması bizim için önemli değildir.
  • 41. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 41 Tablo 5.3: Dikkate Alınmayan İfadeler İçeren Doğruluk Tablosu Don’t care Don’t care
  • 42. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 42 Bir fonksiyonu gerçekleştirirken, dikkate alınmayacak ifadeleri belirtmemiz gerekir. Bu durum fonksiyonu basitleştirmede yardımcı olacak değerlerin seçilmesi açısından tercih edilebilir bir durumdur. İki X’e 0 değeri atanırsa: İlk X’e 1 ikinci X’e 0 atanırsa İki X’e 1 değeri atanırsa, İkinci seçenek en sade çözümü vermektedir.
  • 43. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 43 Tamamlanmamış belirli fonksiyonları oluşturmak için bir yol gördük ve bundan başka birçok yol mevcuttur. Önceki örnekte, bazı kombinasyonların girdi olarak gelemeyecek olduğunu ve dikkate alınmadığını gösterdik. Diğer durumlarda için bütün giriş kombinasyonları oluşabilir fakat çıkış sinyalinde dikkate alınmayan ifadeler bulunduğunda çıkışın 0 veya 1 olması o giriş kombinasyonları için önemli değildir. Tamamlanmamış belirli fonksiyonlar için minterm ifadeleri yazılırken, m gerekli mintermler için ve d dikkate alınmayan mintermler için kullanılır. Tablo 5-3 için minterm yazılım örneği:
  • 44. Tamamlanmamış (Eksik Tanımlanmış) Fonksiyonlar KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 44 Her dikkate alınmayan minterm karşılığında dikkate alınmayacak maxterm vardır. Örneğin, Eğer F = X (dikkate alınmayan) 001 giriş kombinasyonu için, m1 dikkate alınmayan minterm ve M1 dikkate alınmayan maxtermdir. «D » yi dikkate alınmayacak maxterm olarak kullanıyoruz, Tablo 5-3 maxterm ifadeleri olarak yazılırsa M2 ,M4 , ve M5 F içinde olan maxtermler ve M1 ve M6 maxtermleri dikkate alınmayan(opsiyonel) maxtermlerdir.
  • 45. 6.6 Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 45 Örnek 1 1-bitlik sayı ile 1-bitlik sayıyı toplayıp (a ve b) sonuçta 2- bitlik sayı veren basit toplayıcı dizayn edelim. Nümerik değerler ve çıkışlar şu şekilde olur: A ve B giriş ve X, Y 2- bitlik toplam sonucunu gösteren değişkenler olmak üzere doğruluk tablosunu şöyle oluşturabiliriz:
  • 46. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 46 A B X Y Numerik 0’lar mantıksal 0 ile, numerik 1’ler de mantıksal 1 ile gösterildiğinden, 0’lar ve 1’ler doğruluk tablosunda da önceki tablodaki gibi yerleştirilir. Doğruluk tablosundan,
  • 47. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 47 Örnek 2 (N3=N1+N2) A B C D X Y Z X: carry (elde) Y Z: sum (toplam) +
  • 48. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 48 A ve B girişleri birlikte N1 ikilik (binary) sayısını, C ve D beraber N2 ikilik (binary) sayısını, çıkışlar X, Y ve Z birlikte N3 ikilik (binary) sayısını temsil etsin. N3 = N1 + N2 (Sıradan toplama işlemi) Bu örnekte A, B, C, ve D hem nümerik hem de mantıksal değerleri temsil etmek için kullanılmıştır fakat numerik ve mantıksal değerlerin aynı olması herhangi bir karışıklığa yol açmamalıdır. Doğruluk tablosunu oluşturulurken değişkenler ikilik(binary) sayılar gibi işlem görür. Şimdi çıkış fonksiyonları için anahtar fonksiyonu türetelim. Bunu yaparken A, B, C, D, X, Y ve Z gibi anahtar değişkenler numerik olmayan 0 ve 1 ler ile gösterelim. (Hatırlanacak olursa 0 ve 1 alçak ve yüksek voltaj değerini veya açık ve kapalı gibi değerleri gösterir) Tablodan oluşturulan çıkış ifadesi
  • 49. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 49 Örnek 3: 6-3-1-1 ikili-kodlanmış-onluk-dijitler için bir hata dedektörü dizayn edelim. Dört giriş(A, B, C, D) hatalı kod kombinasyonunu temsil ediyorsa çıkış (F) ifadesi 1 olmalıdır. Geçerli 6-3-1-1 kod kombinasyonları Bölüm 2 de listelenmişti. Başka bir kombinasyon var ise bu geçerli bir kombinasyon olarak sayılmayacaktır ve devre çıkışı F = 1 olarak temsil edilip hatanın meydana geldiğini gösterilecektir. Bunu gösteren doğruluk tablosu:
  • 50. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 50 (2) (6) (10) (13) (14) (15) 0 0 0 0 0 1 0 0 0 1 2 0 0 1 1 3 0 1 0 0 4 0 1 0 1 5 0 1 1 1 6 1 0 0 0 7 1 0 0 1 8 1 0 1 1 9 1 1 0 0 6-3-1-1 code
  • 51. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 51 İlgili çıkış ifadesi VE ve VEYA kapısı kullanılarak gerçekleştirilen devre:
  • 52. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 52 Bir devredeki dört giriş (A, B, C, D) 8-4-2-1 ikili- kodlanmış-onluk-dijitleri temsil etmektedir. (Z) çıkışı olan bir devre tasarlayın ve temsil edilen onluk sayı giriş tarafından 3 ile tam bölünebilir ise Z =1 olsun. Yalnızca geçerli BCD dijitleri giriş olarak geldiğini varsayalım. 0,3,6 ve 9 sayıları 3'e tam olarak bölünebilir yani ABCD = 0000, 0011, 0110, ve 1001 kombinasyonları için Z = 1 olur. 1010, 1011, 1100,1101,1110 ve 1111 kombinasyonları geçerli BCD dijitleri olarak temsil edilemezler ve Z bu kombinasyonlar için dikkate alınmaz. Buna göre doğruluk tablosu: Örnek 4
  • 53. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 53
  • 54. Doğruluk Tablosu Oluşturma Örnekleri KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 54 Buna uygun çıkış ifadesi Z yi gerçekleştirecek en basit devreyi bulmak için 0 ya da 1 olan bazı dikkate alınmayan (don’t care) (X'ler) terimler seçilmelidir. Bunun en kolay yolu Karnaugh haritası kullanmaktır. Karnaugh (Karno) haritaları bir sonraki bölümde işlenecektir.
  • 55. 5.7 İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 55 Bu bölümde, iki tane 4-bitlik işaretsiz ikili sayıları toplayan ve 4- bitlik toplamının giriş ve çıkışının eldesini veren paralel toplayıcı tasarlayacağız. (Bknz Şekil 5-2). Bu yaklaşım dokuz giriş ve beş çıkışı olan bir doğruluk tablosunu oluşturmaktadır ve daha sonra bu beş çıkış ifadesini türetme ve sadeleştirme işlemi uygulanır. Çünkü her eşitlik sadeleşmeden önceki dokuz değişkenin ifadesini içerir, bu yaklaşım bayağı zordur ve sonuçtaki mantıksal devre kompleks bir yapıya bürünür. Mantıksal modülü tasarlayacak en iyi yol iki biti ve eldeyi eklemek ve daha sonra bu dört modülü bağlayarak 5-3'deki gibi 4-bit toplama formuna dönüştürmektir. Her bir modül tam toplayıcı olarak adlandırılır. Elde çıkışı ilk tam toplayıcıdan çıkış olarak ikinci tam toplayıcıya giriş olarak temsil edilir ve böyle devam eder.
  • 56. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 56 Şekil 5-8: 4-bit Paralel Toplayıcı
  • 57. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 57 Şekil 5-9: Dört Tam Toplayıcı ile Oluşturulan Paralel Toplayıcı
  • 58. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 58 Şekil 5-9: Tam Toplayıcı ve Doğruluk Tablosu X Y Cin Cout Sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1
  • 59. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 59 Şekil 5-9’de X, Y, ve Cin girişleri ile tam toplayıcı için doğruluk tablosu verilmiştir. Çıkışlar her satır için (X + Y Cin) girişleri ile işlem yapılarak bulunur ve sonuç ayrıştırılarak elde (C i+ 1) ve toplam biti (Si) elde edilir. Örneğin, 101 içeren satırda 1 + 0 + 1 = 102 ise Ci+ 1 = 1 veSi =0. Şekil 5-10 da kapılar ile tam toplayıcı gerçekleştirilmesi gösterilmiştir. Doğruluk tablosundan türetilen tam toplayıcı mantıksal ifadeler şunlardır: (5.20)
  • 60. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 60 (6.21) XYCin terimi Cout u basitleştirmek için üç kez kullanılmıştır. Şekil 6-5’de eşitlik (6-20) ve (6-21) ifadelerine karşılık gelen mantıksal devre gösterilmiştir.
  • 61. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 61 Şekil 5-10: Tam Toplayıcı Devresinin Gerçekleştirimi
  • 62. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 62 İşaretsiz ikilik sayıları toplayan paralel bir devre tasarlanmasına rağmen, şekil 5-9’daki paralel toplayıcı complement formda olan negatif sayıları toplamak için de kullanılabilir. 2’s complement kullanıldığında, son elde biti (C4) atılır, ve en başta elde biti olmaz. Co = 0 olduğunda ilk hücredeki elde biti aşağıdaki formda sadeleştirilebilir: 1’s complement kullanıldığında, elde biti C4’ün Co ‘a bağlanması ile elde edilir. (Şekil 5-9’da kesikli çizgiler ile bu durum gösterilmiştir.)
  • 63. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 63 Tümleyen (complement) formdaki negatif işaretli sayıları toplarken, taşma(overflow) meydana gelirse toplamın işaret biti hatalı olur. Bu taşma iki pozitif sayının toplanıp negatif sonuç vermesi ve ya iki negatif sayı toplanıp pozitif sonuç vermesi ile meydana gelir. Taşma olduğunda 1 sonucunu atayacak bir V sinyali tanımlayacağız. Şekil 5-9’de V değerini belirlemek için A, B, ve S (the sum) için işaret bitlerini kullanabiliriz: (5.22) Bit sayısı fazla ise, Şekil 5-10 teki paralel toplayıcı türü yavaş olabilir çünkü ilk hücrede oluşan elde son hücreye kadar dağıtılarak gelecektir. Diğer türlerdeki toplayıcılar, örneğin carry-Iook-ahead toplayıcısı elde dağıtımını hızlandırmak için kullanılabilir.
  • 64. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 64 İkilik tabandaki sayılarda çıkarma işlemi, çıkarılacak sayıya tümleyeni eklenerek kolay bir şekilde gerçekleştirilir. A-B yi hesaplamak için, B'nin tümleyeni A'ya eklenir. Bu bize doğru sonucu verir çünkü A + (- B) = A - B'dir. 1'in ya da 2'nin tümleyeni bu işlemler için kullanılabilir. Şekil 5-11 daki devre A-B formunu negatif sayılar için 2'ye tümleyen kullanılarak yapılmıştır. B'nin 2 tümleyeni, önce 1 tümleyeni bulunup çıkan sonuca 1 eklenerek bulunabilir. 1’e tümleyeni bulmak için ise B'nin her bitinin tersi alınır. Daha sonra gerekli çıkarma işlemi gerçekleştirilebilir.
  • 65. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 65 Şekil 5.10: Tam Toplayıcı Kullanılmış İkili Çıkarıcı
  • 66. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 66 Örnek
  • 67. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 67 Alternatif olarak, direk çıkarma işlemi tam toplayıcıya benzer şekilde tam çıkarıcı ile gerçekleştirilebilir. Şekil 5- 12'de X'den Y yi çıkaran bir çıkarıcı gösterilmiştir. İlk iki bit sağdan başlanarak çıkarılır, d1 aradaki farkı verir, gerekli ise diğer sütundan bir borç alınarak borç sinyali oluşturulur. (b2 =1). Olağan hücre (i hücresi) Xi,Yi, ve bi girişleri ve bi+1 ve di çıkışlarını içerir. bi=1 girişi o hücredeki Xi den 1 borç aldığında gerçekleşir, borç alınan 1 ise Xi den çıkarılan 1'e eşittir. i hücresinde, bi ve Yi, Xi den çıkarılır, d farkı oluşur, (bi+1 = 1) borç sinyali ise gerekli olursa diğer sütundan alınır.
  • 68. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 68 Şekil 5-12: Paralel Çıkarıcı
  • 69. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 69 Tablo 5.4: Tam Çıkarıcının Doğruluk Tablosu
  • 70. İkili Toplayıcı ve Çıkarıcıların Tasarımı KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 70 Tablo 5-4’de ikilik (binary) tam çıkarıcının doğruluk tablosu verilmiştir. Buna göre, Xi = 0, olduğunda Yi = 1 ve b1 = 1:
  • 71. KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 71 İkili Toplayıcı ve Çıkarıcıların Tasarımı i sütununda Xi den Yi ve bi yi direk olarak çıkaramayız. Dolayısıyla i+1 sütundan borç almamız gerekir. Alınan 1 Xi ye 10 (210) eklenen 1 ve bi+1 'i set eden 1 ile eşdeğerdir. Daha sonra di = 10 - 1 - 1 = 0 olur. 5-4 tablosunu diğer giriş kombinasyonları için ikilik(binary) çıkarmayı kullanılarak doğrulayın.
  • 72. Kaynakça • M. Akbaba, Mantık Devreleri Notları • Hüseyin EKİZ, Mantık Devreleri, Değişim Yayınları, 4. Baskı, 2005 • Thomas L. Floyd, Digital Fundamentals, Prentice-Hall Inc. New Jersey, 2006 • M. Morris Mano, Michael D. Ciletti, Digital Design, Prentice-Hall, Inc.,New Jersey, 1997 KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 72