31 Mart 2014 Pazartesi

İki Değişken Girişli Lojik Sayıcı

Merhabalar
Bu çalışmamız elektronik üzerinde sayısal devre tasarımına yönelik olacak. Bu çalışmamızda TTL ve CMOS yapıdaki entegreler kullanarak iki değişken girişe sahip bir sayıcı tasarımını yaparak çıkışları ledler üzerinden inceleyeceğiz. Çalışma kapsamında çeşitli lojik kapılar içeren entegreler ve JK flipfloplar kullandım.

Çalışmanın temel amacı insan hayatının çeşitli alanlarında kullanılan ve kullanılmayada devam edilecek olan sayıcı devlererinden basit bir kombinasyon oluşturarak giriş değişimlerine göre çıkışın istenilen tipte saymasıdır.


Çalışmamızı aşamalara ayımakta fayda var. İlk aşama sayıcı girişlerine göre mevcut durum göz önüne alınarak çıkışta oluşturulmak istenilen prensibin sıralanacağı durum geçiş tablosu çıkarmaktır. Bu tablo oluşturulurken çok dikkatli olunmalı ve sonrasında ise kontrolü ihmal edilmemelidir. Zira bu aşamada yapılacak bir hata sayıcı çalışırken fark edilecek ve hatayı düzeltmek zahmetli olacaktır. Hata tespiti için bu zahmetli, zaman alıcı ve kafa karıştırıcı işlemlere gerek duymamak için bilhassa durum geçiş tablosu çıkartılırken dikkat edilmesi gerekir. Bu uyarılardan sonra çalışmanın ikinci aşaması olan karnaugh haritası tekniğini kullanmaktır. Çıkartılan durum geçiş tablosunu karnaugh haritasına aktararak sonuçlar sadeleştirip kullanılacak olan flipflopların giriş uçlarının değerleri belirlenmelidir. FF' lerin giriş değerleri belirlendikten sonra üçüncü aşamaya geçilir yani devre şemasının çizilmesine. Şimdi biraz kullanacağımız entegrelerden bahsedelim.

TTL Lojik Entegreler
Endüstriyel uygulamalarda CMOS ve TTL entegreler en yaygın kullanılan iki entegre çeşitidir. Bunun dışında ECL entegresi çok yüksek çalışma hızının istendiği yerlede kullanılır. TTL türü tümleşik devreler 74XX serisi ile belirtilir. TTL girişlerinde çok emiterli transistör kullanılır. Bu nedenle TTL entegreler hızlı çalışan entegreler grubuna girer. Aşağıdaki tabloda ise bu entegrelerden bazılarını görmekteyiz.

74LS00 2 girişli 4 NAND kapısı – quad 2-input nand gate low power schottky
74LS01 2 girişli 4 NAND kapısı – quad 2-input nand gate low power schottky
74LS02 2 girişli 4 NOR kapısı – quad 2-input nor gate low power schottky
74LS03 2 girişli 4 NAND kapısı – quad 2-input nand gate
74LS04 6 adet inverter – hex inverter
74LS05 6 adet hex inverter – hex inverter
7407 6 adet tampon – buffer
74LS08 2 girişli 4 AND kapısı – quad 2-input and gate
74LS09 2 girişli 4 AND kapısı – quad 2-input and gate
74LS10 3 girişli 3 NAND kapısı – triple 3-input nand gate
74LS12 3 girişli 3 NAND kapısı – triple 3-input nand gate
74LS13 2 adet schmitt tetikleyici hex inverter – schmitt triggers dual gate/hex inverter
7414 6 adet schmitt tetikleyici – Hex Inverter with Schmitt Trigger Inputs
74LS15 3 girişli AND kapısı – triple 3-input and gate
74LS20 4 girişli 2 NAND kapısı – dual 4-input nand gate
74LS21 4 girişli 2 NAND kapısı – dual 4-input and gate
74LS22 4 girişli 2 NAND kapısı – dual 4-input and gate
74LS26 2 girişli 4 NAND tampon – quad 2-input nand buffer
74LS27 3 girişli NOR kapısı – triple 3-input nor gate
74LS28 2 girişli 4 NOR tampon – quad 2-input nor buffer

Bu bilgileride verdikten sonra aşağıdaki tabloyu çizebiliriz.


X1 Değişkeni
X2 Değişkeni
İŞLEMLER
0
0
Değişiklik Yok
0
1
Yukarı Sayma
1
0
Aşağı Sayma
1
1
Sayıcıyı Sıfırlama

 Tablo ile sayıcımızın nasıl çalışacağı hakkında fikirlerimiz netleşmiş olmalı. Şimdi istenilen durumları dikkate alarak durum geçiş tablosu oluşturulmalı.


Qt
Q(t+1)
J
K
0
0
0
X
0
1
1
X
1
0
X
1
1
1
X
0


JK FF' in geçiş tablosu yukarı gibidir. Bunu bilmemiz bize büyük kolaylık sağlayacaktır. Bu tabloyu göz önünde bulundurarak aşağıdaki tabloyu oluşturuyoruz.



Mevcut Durum
Giriş Değişkenleri
Gelecek Durum
A FF Girişleri
B FF Girişleri
A
B
X1
X0
A
B
JA
KA
JB
KB
0
0
0
0
0
0
0
d
0
d
0
0
0
1
0
1
0
d
1
d
0
0
1
0
1
1
1
d
1
d
0
0
1
1
0
0
0
d
0
d
0
1
0
0
0
1
0
d
d
0
0
1
0
1
1
0
1
d
d
1
0
1
1
0
0
0
0
d
d
1
0
1
1
1
0
0
0
d
d
1
1
0
0
0
1
0
d
0
0
d
1
0
0
1
1
1
d
0
1
d
1
0
1
0
0
1
d
1
1
d
1
0
1
1
0
0
d
1
0
d
1
1
0
0
1
1
d
0
d
0
1
1
0
1
0
0
d
1
d
1
1
1
1
0
1
0
d
0
d
1
1
1
1
1
0
0
d
1
d
1


Sayıcımızdan istenilen durumlar bunlar şimdi ise FF girişlerini tek tek ele alarak sadeleştirme işlemlerini yapmamız gerekiyor.



JA
AB
X1 X0
00
01
11
10
00
0
0
d
d
01
0
1
d
d
11
0
0
d
d
10
1
0
d
d
KA
AB
X1 X0
00
01
11
10
00
d
d
0
0
01
d
d
1
0
11
d
d
1
1
10
d
d
0
1


JA=(B.X1'.X0)+(B'.X1.X0')                             KA=(B.X0)+(B'.X1)



JB
AB
X1 X0
00
01
11
10
00
0
d
d
0
01
1
d
d
1
11
0
d
d
0
10
1
d
d
1
KB
AB
X1 X0
00
01
11
10
00
d
0
0
d
01
d
1
1
d
11
d
1
1
d
10
d
1
1
d

 JB=(X1'.X0)+(X1.X0') özel veya kapısı         KB=(X1'.X0)+X1


Karnough haritası tekniğiyle sadeleştirerek elde ettiğimiz fonksiyonlar FF giriş uçları olarak kullanılacak. Bu işlemlerle beraber sayıcımızı tasarlamış olduk. Devrenin proteus şeması ise aşağıdaki gibidir.

























Yukarıdaki devreyi breadboard üzerine kurulması ile çalışma son bulacak. Breadboard üzerine devreyi kurmadan önce ve kurarken dikkat edilmesi gereken hususlardan bahsetmek gerekirse bunlardan ilk akla gelen board içindeki iletkenlerin sağlamlığı olacaktır. Eğer board içindeki iletkenlerde bir sıkıntı var ise devre çalışmadığında hata tespitini yanlış yerlerde arayarak boşa zaman kaybedilebilir. Devre doğru kurulmuş olsa bile board hatasından dolayı devre doğru çalışmayacaktır. Bu gibi aksilikleri önlemek için devreyi kurmadan önce bir avometre yardımı ile board iletkenlerinin ve diğer iletkenlerin sağlamlık kontrolü yapılması faydalı olacaktır. Bir diğer önemli nokta ise devre kurulurken kullanılan iletken tel yada kabloların kısa devre halinde olmamasıdır. Ayrıca yalıtımsız iletken kullanılması sakıncalıdır.

Ben bu sayıcı devresi için  aşağıdaki elemanları kullandım.Aynı görevi görebilecek alternatif entegreler kullanılabilir.



ELEMAN
ADET
4027 JK FF
1
74LS08 AND GATE
2
74LS86 XOR
1
74HC04 NOT GATE
1
74LS32 OR GATE
1
220 Ohm Direnç
2
LED
2


Devrenin board üzerine kurulmuş hali ise aşağıdadır.



Bu çalışmada lojik kapılar ve flipfloplar kullanılarak girişlerine göre çeşitli sayıcı görevlerini yerine getiren sayıcı devresi yapıldı. Devrede CMOS ve TTL lojik entegrelerle beraber JK flipflop kullanıldı.

Devre 5 volt gerilim ile çalışmaktadır. Enerji uygulandıktan sonra X1 ve X0 girişlerinin durumuna göre 4027 entegresinin yükselen kenar tetiklemeli bir FF olması nedeniyle clock palsinin lojik 0 dan 1 e yükselirken sayıcı çalışmaya başlar ve çıkışı ledler ile okunur.

Temel amaç dijital ölçü, kumanda ve kontrol sistemlerinin önemli elemanları olan sayıcıların temel çalışma prensibini anlamak ve lojik devre tasarımı yaparak pekiştirmektir.

İyi çalışmalar...