0-99 arası çift sayan sayıcı tasarımı

                                 0-99  ARASI  ÇİFT SAYI SAYAN SAYICI TASARIMI

0-99 çift sayan sayıcı
0-99 çift sayan sayıcı

        Bu sefer ki yazımızda 0-99 arası sayıcı tasarımı yapıp bu sayıcı tasarımında sadece çift olan sayıları saydırmayı size anlatacağım.ilk olarak ön bilgi olarak bu işin iki yolunu söylemek isterim ilk ki 0-99 doğruluk tablosu oluşturmak yada iki adet 0-9 kadar sayıcı tasarlayıp her ikisini senkron olarak çalıştırmak gerekir. fakat ilk yöntem çok uzun olduğu için o yöntemi boş geçtim size ben ikinci yöntemi anlatacağım  ilk kısım ola sıfırdan 9 kadar olan sayıcı tasarımını burada anlatmıştım. tasarımın aynı şekilde yapıp devreyi hazırlıyoruz. ikinci kısım ise çift istediğimiz  için birler basamağının 0-2-4-6-8 şeklinde sayması gerekir bunu için bu kısmı size tasarlayacağım daha önceden anlatmadığım için..
        Eğeri 0-2-4-6 olsa idi 3 bit bizim için yetecekti fakat 8 rakamı bozduğu için 4 bitlik tasarım yapmamız gerekir. aşamalarımız aşağıdaki gibidir

1. aşama  sayıcı döngüsünü ikili sisteme göre yazma
2. aşama ilk durumları yazma,
3. aşama son durumları  döngüye göre yazma
4. aşama d flip flop göre doğruluk tablosu yazma
5,aşama karnof haritası oluşturma
6. aşama  kornof sadeleştirme 
7. aşama proteus programında devreyi kurma

1. aşama 0-2-4-6-8 kadar sayıcı tasarımı yaptığımız için ilk olarak   onluk sistemdeki sayıları   ikilik sisteme çevirmek gereklidir.. örneğin;  0 sayısı 4 bitlik sisteme göre  0000, 1 sayısı 0001 dir. Daha sonra döngüyü oluşturalım
0-99 çift sayan sayıcı döngü



Şekilde görüldüğü gibi  0-2-4-6-8 döngü oluşturduk. Sayıcımız 0-2-4-6-8'e tekrardan sıfıra dönmektedir.

2. aşama sayıcımızın ilk durumlarını yazmak ilk durumda olan ifade sayısını  tasarladığımız sayıcının bit sayısına göre yazıyoruz. 4 bitlik sayıcı olduğu için 2 üzeri 4 olduğundan 16 değer olmaktadır ve bu değerlerin tamamı 0-15 kadar olan sayılardır.Bunları sırayla yazarız.Aşağıdan yukarı şeklinde yazarız.
3. aşama son durumları döngüye bakarak  yazma aşağıdaki şekilde ilk durumları görüyoruz. ilk durumun birinci satırı 0000(0) değerine döngüden bakarak nereye geçtiğine bakarız. 0000 değeri döngüde 0010(2) gitmekte yani  son duruma 0010 yazarız. ikinci satırda ise 0001 değeri döngüde  olmadığı için dont caryy yani xxxx  yazarız diger değerlerde döngüye bakarak yapılır.


0-99 çift sayan sayıcı doğruluk tablosu
4 aşama ise  d flip flop tablosunu oluşturmaktır.Bunu için d flip flop doğruluk tablosuna bakarız.
dff sayıcı doğruluk tablosu

örneğin ilk durum tablosunda a biti ilk durumu 0 son durumu 0 dır o zaman da flipflop ta 0 olur doğruluk tablosuna göre. B biti  ilk durum 2 . satır 0 dır. B biti sonraki durum  2. satır x tir.bundan dolayı Db  flip flobu dont caryy olur. yazımız devam edecektir.....
    
5. aşama ise  DA-DB-DC-DD flip flopların karnoflarını oluşturmak gerekir.   burada işlemimiz kolaylaşması  için  1 olduğu durumlarla beraber dont caryleri de  karnof haritasına katıyoruz..

6. aşama
Da flip flop karnof haritası yukarıda görüldüğü gibi olur sadeleştirdiğimizde ise bc ifadesini elde ederiz.dont caryy ler bize daha sade bir devre çıkarmaya yardımcı olur.

Db flip flop karnof haritası yukarıda görüldüğü gibi olur sadeleştirdiğimizde ise b*c +bc* ifadesini
 elde ederiz.




Dc flip flop karnof haritası yukarıda görüldüğü gibi olur sadeleştirdiğimizde ise A*C* ifadesini elderiz  ederiz.
                              
                      

DD flip flop karnof haritası yukarıda görüldüğü gibi olur sadeleştirdiğimizde ise 0 ifadesini elderiz  ederiz.Burada sıfır çıkmasının nedeni  1 durumu olmaması bu nedenden dolayı sıfır durumları yazılır.
  Şimdi geldi iki durumu birleştirip 0-99 çift sayan sayıcı yapımına burada görüldüğü gibi ilk biz 0-1-2-3-4-5-6-7-8-9  sayıcı ve 0-2-4-6-8 sayıcı tasarladık il sayıcı onlar basamağı ikinci sayıcı birler basamağı olmaktadır. ayrı ayrı çalışırsa bizim işimize yaramayacak bundan dolayı senkron şekilde olması gerekir ilk önce  birler basamağı çift şekilde 0-2-4-6-8  artacak her tur bitiminde diğer sayıcı yani 0-1-2-3-4-5-6-7-8-9  bir clok yollaması gerek yani  birler basamağındaki 8 sayısı görünce onlar basamağı bir artacak bunu için 8 sayısı 1000 dir diğer 0-2-4-6 sayıların 4, biti sıfır olduğu için 8 sayısı 4. biti bize  bir  seçicilik sağlar.  eğer bu biti diğer sayıcı clock girişine verirsek  her 8 gördüğünde 1 clock yollar ama ben ilk denemede  direk bağladığımda hata gördüm 8 geldiğinde direk 1 yapıyor bu da kısa süreliğine sayıyı önde gösteriyor bu hatayı gecikme sağlarsak düzelir diye düşündüm bu iki sayıcı arasına bir d flip flop bağladım bu bana gereken gecikmeyi sağladı ve sayıcı 0-99 kadar çift saydı ve geri 0 döndü... proteus devresini kısa zamanda yüklerim....:)
                              
                         


Hiç yorum yok:

Blogger tarafından desteklenmektedir.