Mantık temelleri
NAND kapısı nedir?
NAND kapısı tek bir soru sorar: bütün girişlerim açık mı? Sonra da cevabın tam tersini söyler. Bu küçük huysuzluk, bugüne kadar yapılmış her bilgisayarı kurmaya yetiyor.
NAND, İngilizce NOT AND’in kısaltması; Türkçede VE DEĞİL (NAND) kapısı diye de geçer. VE (AND) kapısı yalnızca bütün girişleri 1 olduğunda 1 verir. NAND kapısı aynı kontrolü yapar ve cevabı tersine çevirir: çıkışı yalnızca bütün girişler 1 olduğunda 0, geri kalan her durumda 1’dir.
NAND doğruluk tablosu
Doğruluk tablosu, girişlerin bütün olası birleşimlerini ve her birinin çıkışını listeler. İki girişle dört satır vardır:
| A | B | A NAND B |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Bunu, tek 1’i en alt satırda olan VE kapısıyla karşılaştır. NAND aynı sütunun ters çevrilmiş hâli: üç tane 1, tek bir 0. Üç ya da dört girişli bir NAND kapısı da aynı kurala uyar: çıkışı yalnızca bütün girişleri 1 olduğunda 0 olur.
Sembolü ve gösterimi
NAND sembolü, çıkışında küçük bir daire, yani balon olan VE sembolüdür. Birçok Avrupa ders kitabında kullanılan dikdörtgen IEC sembollerinde ise içinde & yazan, aynı balonlu bir kutudur.
Boole cebirinde NAND birkaç şekilde yazılır:
Q = ¬(A ∧ B)ya daQ = (A · B)′: “değil (A ve B)”.Q = A ↑ B: adını onu ünlü yapan mantıkçıdan alan Sheffer çizgisi (Sheffer stroke; ondan aşağıda bahsedeceğiz).- Kodda, boolean değerler için
!(a && b), bir sözcüğün bütün bitleri için tek seferde~(a & b).
Bir özelliği insanları sık sık şaşırtır. NAND değişmelidir (A ↑ B, B ↑ A’ya eşittir) ama birleşmeli değildir. A = 1, B = 1, C = 0 için (A ↑ B) ↑ C 1 verir, A ↑ (B ↑ C) ise 0. Yani iki girişli NAND’leri art arda bağlamak sana üç girişli bir NAND vermez. Daha geniş kapılar biraz daha kafa yormayı gerektirir.
Neden tek bir kapı yeter
NAND bir evrensel kapı. Diğer lojik kapılar, bir toplayıcı ya da bir işlemcinin kontrol mantığı fark etmez: her mantık fonksiyonu, başka hiçbir parça kullanmadan yalnızca NAND kapılarıyla kurulabilir. Mantıkçılar buna fonksiyonel tamlık der. NAND neden diğer bütün kapıları kurabilir sayfası bunun neden işe yaradığını ve VE, VEYA ya da XOR’un tek başına neden yetmediğini anlatıyor.
Kardeşi NOR (VEYA DEĞİL) da evrenseldir. Ay’a giden Apollo Rehberlik Bilgisayarı’nın (Apollo Guidance Computer) mantığı neredeyse tamamen tek bir çip türünden kuruldu: içinde üç girişli iki NOR kapısı olan küçük bir paket. Tek bir standart parça kullanmak, makineyi üretmeyi ve test etmeyi çok kolaylaştırdı.
Çip tasarımcıları NAND’i neden sever
Neredeyse bütün modern çiplerin içindeki teknoloji olan CMOS’ta en ucuz kapılar, çıkışı tersine çeviren kapılardır. İki girişli bir NAND dört transistöre mal olur. Paralel bağlı iki p-tipi transistör, girişlerden herhangi biri 0 olduğunda çıkışı 1’e çeker; seri bağlı iki n-tipi transistör ise çıkışı yalnızca iki giriş de 1 olduğunda 0’a çeker. Sade bir VE kapısı, arkasına bir tersleyici eklenmiş bir NAND’den ibarettir; bu da altı transistör eder ve daha yavaştır. NAND, NOR ve tersleyicilerin standart hücre kütüphanelerinin temel taşı olmasının nedeni bu. Tek pakette dört adet iki girişli NAND barındıran klasik 7400 çipinin, Texas Instruments’ın 1960’larda çıkardığı ünlü 7400 mantık ailesinin ilk parçalarından biri olmasının nedeni de bu.
Kısa bir tarihçe
1913’te Amerikalı mantıkçı Henry M. Sheffer, Boole cebirinin bütün işlemlerinin tek bir işlemden, bugün onun adını taşıyan “çizgi”den türetilebileceğini gösteren bir makale yayımladı. Charles Sanders Peirce aynı şeyi 1880 civarında hem NAND hem NOR için fark etmişti, ama notları ancak onlarca yıl sonra yayımlandı. Yarım yüzyıl boyunca bu, mantığın ilginç bir köşesi olarak kaldı. Sonra transistörler onu pratik bir mühendislik meselesine dönüştürdü: tek bir kapı türü her şeyi yapabiliyorsa, koca bir bilgisayarı tek bir parçanın binlerce kopyasından kurabilirsin.
Bir NAND ile neler yapabilirsin
Tek başına bir NAND minicik bir karardır. Birkaç tanesi diğer mantık kapılarını oluşturur. Birkaç düzinesi bir toplayıcı eder. Bir kapının çıkışını kendi girişlerine geri beslersen hatırlamaya başlar (bkz. flip-floplar ve bellek). Bu fikirleri üst üste koyunca bir işlemci elde edersin. Yukarı çıkarken yeni hiçbir şey eklenmez. Hep aynı kapı, sadece daha akıllıca dizilmiş hâlde.