doğruluk tablolarını boole İfadelerine dönüştürme
TRANSCRIPT
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 1/18
Doğruluk Tablolarını Boole İfadelerine Dönüştürme
Sayısal devre tasarımında, tasarımcı çoğunlukla devrenin ne olduğunu tanımlayan doğruluk tablosu
ile başlar. Tasarım işi, doğruluk tablosunda tanımlanan fonksiyonu hangi devre türünün
gerçekleştireceğine büyük ölçüde karar verir. Bazı insanlar doğruluk tablosuna bakmak için ve
hemen bu iş için gerekli mantık geçidi yada röle mantık devresini planlamaya doğal yeteneğe sahip
görünürken, bizler için mevcut olan prosedürsel teknikler vardır. Burada Boole cebri çok dramatik
bir yolla faydasını kanıtlar.
Bu prosedürle ilgili metodu örneklemek için, gerçek bir tasarım problemi ile başlamalıyız. Bize
zehirli atık yakma fırını için alev algılama devresi tasarımlama görevi verildiğini varsayın. Ateşin
güçlü ısısı, yakma fırını içerisinde ortaya çıkan gazın zehirliliğini etkisiz hale getirmek
amaçlanmıştır. Böyle tutuşma-tabanlı teknikler, öldürücü virüsler yada bakteri bulaşmış olabilen
medikal atığı etkisiz hale getirmede çoğunlukla kullanılır:
Sadece ve sadece alev, yakıcı fırın içerisinde korunur, etkisiz hale getirilecek atığı içerisine enjekte
etmek güvenlidir. Bununla birlikte eğer alev söndürülürse, yanma odasına gaz enjekte etmeye
devam etmek güvensiz olacaktır, etkisiz hale getirilmemiş egzoz çıkacağı ve egzoza yakın herhangi
birinde sağlık tehlikesi ortaya çıkartabileceği gibi. Bu sistemde ihtiyacımız olan şey, alevin varlığını
algılamanın ve sadece alev algılama sistemi tarafından "ispatlandığında" enjekte edilebilecek atığın
izin verilmesinden emin olmaktır.
Optiksel (ışığın algılanması), termal (yüksek sıcaklığın algılanması) ve elektriksel iletim (alev
yolundaki iyonize parçacıkların algılanması), her biri benzersiz avantaj ve dezavantaj ile birçok
farklı alev-algılama teknolojisi vardır. Potansiyel olarak etkisiz hale gelmemiş atığın yakıcı fırının
egzozundan çıkması ile kuşatılmış tehlikenin büyüklüğünü düşünelim, tek sensör bozukluğunun
toksinlerin emisyonuna egzozdan çıkması için yol göstermesin diye, alev algılama sisteminin
gerekenden fazla yapılmış olmasına karar verildi (çoklu sensörler). Her bir sensör, mantık
sisteminin girişlerini aktive etmede kullanacağımız normalde-açık kontak (eğer alev yoksa açılır,
eğer alev algılanmışsa kapanır) ile birlikte gelir:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 2/18
Şimdi görevimiz, sadece ve sadece iyi alev sensörler tarafından ispatlandığında atık vanasını açacak
mantık sisteminin devresini tasarımlamaktır. İlk önce bu kontrol sisteminin mantıksal davranışınınne olması gerektiğine karar vermeliyiz. Sadece üç sensörden birinin alevi algılamasıyla açılacak bir
vana mı istiyoruz? Muhtemelen hayır çünkü bu çoklu sensöre sahip olma amacını bozguna
uğratacaktır. Eğer bu sensörlerden herhangi biri alev yokken alevin varlığını hatalı bir şekilde
gösterdiği gibi bir şekilde hata verse, "üç sensörden herhangi biri alevi gösteriyor" ilkesine bağlı
mantık sistemi tek-sensörlü sistemle aynı hatayı verecektir. Daha iyi bir çözüm, sadece ve sadece
tüm üç sensör iyi alev algıladığında vanayı açma emri versin diye sistemi tasarlamak olacaktır. Bu
yolla alevi hatalı bir şekilde algılamış herhangi bir tek sensör vanayı açık pozisyonda tutamaz;
aksine, tüm üç sensörün aynı tarzda hatalı olmasını gerektirecektir -- fazlaca inanılmaz bir senaryo-
- bu meydana gelecek tehlikeli koşul için.
Böylece, doğruluk tablomuz şu şekilde görünecektir:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 3/18
Bu fonksiyonelliğin üç-girişli AND geçidiyle üretilmiş olduğunu fark etmek çok kavrama
gerektirmez: devrenin çıkışı, sadece ve sadece giriş A AND(ve) giriş B AND(ve) giriş C nin tümü
"yüksek" olduğunda "yüksek" olacaktır:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 4/18
Eğer röle devresi kullanılıyorsa, öyle ki sadece tüm üç sensörün alevi algılamasıyla atık vanasının
açılması için elektriksel güç gönderilmiş olacağı, bu AND fonksiyonunu üç röle kontağını seri yada
basitçe üç sensör kontağını seri bağlayarak oluşturabiliriz:
Bu tasarım stratejisi güvenliği artırırken, sistemi sensör hatalarına karşı çok duyarlı yapar. Üç
sensörden birinin, yakıcı fırının tutuşma odasında gerçekte iyi alev olduğunda alev yok gösterdiği
bir şekilde hata verdiğini varsayın. Bu tekil hata, atık vanasını üretim zaman kaybına ve boşa
harcanmış yakıta (besleme ateşi atık yakmak için kullanılamadı) neden olarak istenmeyen bir
şekilde kapatacaktır.
Bu şekilde bir hata ile sistemin gereksiz bir şekilde kapatılmadığı ve hala herhangi bir sensör
"yüksek" hatası verdiğinde güvenliği sürdürecek çoklu sensör sağlayan bir mantık sistemine sahip
olman iyi olacaktır (algılanacak bir tane olup olmamasına bağlı olmaksızın her zaman alevi
gösteren). Her iki ihtiyacı karşılayacak strateji, üç sensörden en az ikisinin iyi alev göstermesiyle
açılacak atık vanası şeklinde "üçün ikisi" sensör mantığı olacaktır. Böyle bir sistem için doğruluk
tablosu şuna benzer:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 5/18
Burada ne tür bir mantık devresinin doğruluk tablosunu tamamlayacağının belli olması gerekli
değildir. Bununla birlikte böyle bir devreyi tasarımlamak için basit bir metot, Çarpımlar -ın-Toplamı,
yada SOP formu olarak adlandırılan Boole ifadesinin standart formunda bulunur.
Şüphelenebileceğiniz gibi, Çarpımlar-ın-Toplamı Boole ifadesi tam olarak, her bir terim Boole
değişkenlerinin çarpımsal kombinasyonu olan toplanmış Boole terimlerinin bir setidir. SOP ifadesinin
bir örneği şunun gibi bir şey olacaktır: ABC + BC + DF, "ABC", "BC" ve "DF" çarpımlarının toplamı.
Çarpımlar-ın-Toplamı ifadesinin doğruluk tablosundan üretilmesi kolaydır. Tüm yapmamız gereken,
çıkışın "yüksek" (1) olduğu herhangi bir satır için doğruluk tablosunu incelemektir ve verilen bu
giriş koşullarının 1 değerine eşit olacağı Boole çarpım terimini yazmaktır. Örneğin, üç-ün-ikisi
mantık sistemimiz için doğruluk tablosundaki A=0, B=1 ve C=1 olduğu dördüncü satırda terimin
çarpımı A'BC olacaktır, böylece bu terim sadece ve sadece A=0, B=1 ve C=1 ise 1 değerine sahip
olacaktır:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 6/18
Doğruluk tablosunun diğer üç satırı 1 çıkış değerine sahiptir, bu nedenle bu satırlarda onları ifade
etmek için Boole çarpım ifadelerine ihtiyaç duyar:
Son olarak, bu dört Boole çarpım ifadesini doğruluk tablosunu tanımlayan tek bir Boole ifadesi
oluşturmak için toplamayla bir araya getiririz:
Şimdi doğruluk tablosunun fonksiyonu için Boole Çarpımları-nın-Toplamı ifadesine sahibiz, bu
ifadeye bağlı olarak kolaylıkla bir mantık geçidi yada röle mantık devresi tasarımlayabiliriz:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 7/18
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 8/18
Ne yazık ki bu devrelerin her ikisi de oldukça komplekstir ve sadeleştirilmesi yararlıdır. Boole cebri
tekniklerini kullanarak ifade anlamlı bir şekilde sadeleştirilebilir:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 9/18
Sadeleştirme sonucunda aynı fonksiyonu gerçekleştiren geçit yada röle formunda daha basit mantık
devreleri inşa edebiliriz:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 10/18
Bu devrelerden biri, üç alev sensöründen ikisinin alev doğrulamasına bağlı olarak yakıcı fırın atık
vanasını çalıştırma görevini yeterli derecede gerçekleştirecektir. Minimum seviyede bu ihtiyacımız
olan güvenli bir yakıcı fırın sistemidir. Bununla birlikte biz, sensörlerden herhangi birinin diğer iki
sensörle anlaşamadığı durumda algılamak için tasarlanmış mantık devresini ona ekleyerek sistemin
fonksiyonelliğini artırabiliriz.
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 11/18
Eğer tüm üç sensör uygun bir şekilde çalışıyorsa, alevi eşit doğrulukla algılamalılar. Böylece tüm
yazmaçları ya "düşük" (000: alev yok) yada "yüksek" (111: alev iyi) olmalıdır. Herhangi bir başka
çıkış kombinasyonu (001, 010, 011, 100, 101 veya 110) sensörler arasında uyumsuzluk oluşturur
ve bu yüzden potansiyel bir sensör hatası göstergesine hizmet edebilir. Eğer altı "sensör
uyumsuzluk" koşulundan birini devreye eklersek, bu devrenin çıkışını alarmı aktive ettirmek için
kullanmalıyız. Yakıcı fırını görüntüleyen kim olursa olsun, muhtemel hatalı sensör ile çalışmaya
devam edeceğine (girişler: 011, 101 veya 110) yada tamamen güvenli olması için yakıcı fırını
kapatacağına karar verecektir. Aynı zamanda, yakıcı fırın kapatıldığında (alev yok), diğeri(leri) alev
yok gösteriyor(lar)ken hala sensörlerden biri veya bir kaçı alev gösteriyorsa (001, 010, 011, 100,
101 veya 110), kesin sensör problemi olduğu bilinebilecektir.
Bu "sensör uyuşmazlık" algılama devresi tasarımındaki ilk adım, onun davranışını tanımlayan
doğruluk tablosunu yazmaktır. "İyi alev" mantık devresinin çıkışını tanımlayan doğruluk tablosuna
sahip olduğumuzdan, tabloya ikinci devreyi ifade etmek için kolaylıklar başka bir çıkış sütunuekleyebiliriz ve mevcut mantık sistemini gösteren bir tablo yapabiliriz:
Bu yeni doğruluk tablosu sütunu için Çarpımlar-ın-Toplamı ifadesini üretmek mümkün iken, üç
değişkenin her biri için altı terim gerekecektir! Böyle bir Boole ifadesi, birçok hata yapmaya müsait
çok sayıda sadeleştirme adımı gerektirecektir:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 12/18
Doğruluk tablosundaki tüm "yüksek" (1) çıkış koşullarını hesaplamak için Çarpımlar-ın-Toplamı
ifadesini üretmeye bir alternatif, tüm "düşük" (0) çıkış koşullarını hesaplamak için Toplamlar-ın-
Çarpımı, yada POS ifadesini üretmektir. Son doğruluk tablosu sütununda daha az sayıda "düşük"
çıkış durumu olduğundan, elde edilen Toplamlar-ın-Çarpımı ifadesi daha az terim içerebilir. İsminde
olduğu gibi Toplamlar-ın-Çarpımı ifadesi çarpılanların toplandığı bir settir. POS ifadesine bir örnek,
"A + B" ile "C +D" nin toplamının çarpımı (A + B)(C + D) olacaktır.
Başlamak için, son doğruluk tablosu sütunundaki hangi satırların "düşük" (0) çıkışa sahip olduğunu
ve girişlerin koşulları için 0 a eşit olacak Boole toplam terimini saptarız. Örneğin, A=0, B=0 ve C=0
olan doğruluk tablosunun ilk satırında toplam terimi (A + B + C) olacaktır, böylece bu terim sadece
ve sadece A=0, B=0 ve C=0 olduğunda 0 değerine sahip olacaktır:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 13/18
Son doğruluk tablosunda sadece başka bir adet satır "düşük" (0) çıkışına sahiptir, böylece
Toplamlar-ın-Çarpımı ifademizi tamamlamak için tek ihtiyacımız olan şey bir tane daha toplam
terimidir. Bu son toplam terimi, A=1, B=1 ve C=1 giriş koşulu için 0 çıkış gösterir. Bu yüzden terim
(A' + B'+ C') olarak yazılmalıdır çünkü sadece tümlenmiş giriş değişkenlerinin toplamı sadece bu
koşul için 0 a eşit olacaktır:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 14/18
Elbette tamamlanmış Toplamlar-ın-Çarpımı ifadesi bu iki toplam teriminin çarpımsal
kombinasyonudur:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 15/18
Çarpımlar-ın-Toplamı ifadesi, çıkışlarının tek bir OR geçidine bağlanmasıyla AND geçidinin bir seti
biçiminde yürütülebilirken, Toplamlar-ın-Çarpımı ifadesi tek bir AND geçidini besleyen OR geçidinin
bir seti gibi yürütülebilir:
Buna karşılık, çarpımlar-ın-Toplamı ifadesi seri-bağlı röle kontaklarının paralel bir koleksiyonu gibi
yürütülebilirken, Toplamlar-ın-Çarpımı ifadesi paralel-bağlı röle kontaklarının seri bir koleksiyonu
olarak yürütülebilir:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 16/18
Önceki iki devre, "iyi alev" altılama devresi(leri) değil sadece "sensör uyuşmazlık" mantık
devresinin farklı bir versiyonlarını gösterir. Mevcut mantık sistemi, aynı diyagram üzerinde
gösterilen "iyi alev" ve "sensör uyuşmazlık" devrelerinin bir kombinasyonu olacaktır.
Programlanabilir Mantık Kontrolcüsünde (PLC) yürütülen mevcut mantık sistemi şunun gibi bir şeye
benzeyebilir:
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 17/18
Gördüğünüz gibi, her iki Çarpımlar-ın-Toplamı ve Toplamlar-ın-Çarpımı standart Boole formu,
doğruluk tablosuna uygulandığında etkilidir. Onlar Boole ifadesini türetmemize izin verir -- ve
sonuçta, gerçek bir mantık devresi -- bir mantık devresinin yapmasını istediğimiz şey için yazılmış
tanımlama olan doğruluk tablosunda başka bir şey değildir. Basit, belirleyici prosedürleri kullanarak
mevcut devreye yazılmış tanımlamadan ilerleyerek gitmenin anlamı şudur; bir sayısal devre için
tasarım işlemi otomasyonu uygulamak mümkündür. Başka bir ifadeyle, bir bilgisayar doğruluk
tablosu tanımlamasından özel bir mantık devresi tasarımlamak için programlanabilir olmalıdır!
Doğruluk tablosundan son devreye kadar izlenecek adımlar, onları idame ettirmek için eğer varsa
yaratıcılık yada diğer orijinal düşüncelerden bir miktar gerektiren çok belirsiz olmayan ve direkt
olanlardır.
7/25/2019 Doğruluk Tablolarını Boole İfadelerine Dönüştürme
http://slidepdf.com/reader/full/dogruluk-tablolarini-boole-ifadelerine-doenuestuerme 18/18
• ÖZET:
• Çarpımlar -ın-Toplamı, yada SOP Boole ifadeleri, tablonun hangi satırlarının 1 çıkışına sahip
olduğunu belirleyip, her bir satır için bir çarpım terimi yazarak ve sonunda bu çarpım
terimlerinin hepsini toplayarak doğruluk tablolarından oldukça kolay bir şekilde üretilebilir. Bu
doğruluk tablosunu gösteren bir Boole ifadesi oluşturur.
• Çarpımlar-ın-Toplamı ifadeleri kendilerini, tek bir OR geçidini (toplam) besleyen bir AND geçidi
(çarpımlar) seti gibi yürütülmek için iyi bir şekilde verir.
• Toplamlar-ın-Çarpımı, yada POS Boole ifadeleri de, tablonun hangi satırının 0 çıkışına sahip
olduğu belirlenip, her bir satır için bir toplam terimi yazılarak ve sonunda tüm toplam terimleri
çarpılarak doğruluk tablosundan oldukça kolay bir şekilde üretilebilirler. Bu doğruluk tablosunu
gösteren bir Boole ifadesi oluşturur.
• Toplamlar-ın-Çarpımı ifadeleri kendilerini, tek bir AND geçidini (çarpım) besleyen bir OR geçidi
(toplamlar) seti gibi yürütülmek için iyi bir şekilde verir.