Asenkron Sayıcı / Asynchronous Counter

JK flip flopların arka arkaya bağlanması ile elde edilen sayıcılardır. Saat sinyali sadece ilk flip-flop’a uygulanır. İkinci flip-flop’a ise birinci flip flopun çıkışı bağlanır. Üçüncü flip-flop’a da ikinci flip-flopun çıkışı bağlanır. Çıkışlar ise Q çıkışlarından elde edilir. 

Asenkron sayıcılar da saat sinyali sadece ilk flip flopa uygulandığı için girişi ile çıkışı arasında oluşan bir zaman gecikmesi oluşur. 

Bir Asenkron sayaç, 2n-1 olası sayma durumuna sahip olabilir; 4 bitlik bir sayaç için MOD-16 (0-15), Frekans Bölmeli uygulamalarda kullanım için idealdir. Ancak, sayma durumları maksimum çıkış sayısından daha az olan özel sayaçlar oluşturmak için temel asenkron sayaç konfigürasyonunu kullanmak da mümkündür.

Sayacın, kesik dizilere sahip bir tür asenkron sayaç üreterek, önceden belirlenmiş bir değerde kendisini sıfıra zorlanmasıyla elde edilir. Ardından, maksimum modülüne (2n) kadar sayan bir n-bitlik sayıcıya tam dizi sayacı denir ve modülü mümkün olan maksimumdan daha az olan bir n-bitlik sayıcıya kesikli sayıcı denir.

Ama neden MOD-4, MOD-8 veya ikinin gücüne eşit başka bir modül olmayan asenkron kesilmiş bir sayıcı oluşturmak isteyelim ki? Cevap, flip-flop’taki asenkron girişlerden yararlanmak için birleşimsel mantık kullanarak yapabileceğimizdir.

MOD-16 asenkron sayacı alır ve ek mantık kapıları ile değiştirirsek, standart ondalık sayma ve aritmetik devrelerde kullanım için onluk sayıcıyı yapmış oluruz.

Bu tür sayıcılara genellikle onluk sayıcı(decade counter) denir. Onluk bir sayıcı, çıktı sayısı 10’luk ondalık değere ulaştığında, yani sıfıra gelmesini gerektirir. DCBA = 1010 olduğunda ve bunu yapmak için bu koşulu sıfırlama girişine geri beslememiz gerekir. İkili “0000” (BCD = “0”) ile “1001” (BCD = “9”) arasında bir sayım dizisine sahip bir sayıcı ise, BCD (ikili kodlu ondalık) sayaç olarak adlandırılır.

asenkron sayıcı
Asenkron Onluk Sayıcı

Bu tür asenkron sayıcılar, 0000’den başlayarak bir çıkış 1001’e (ondalık 9) ulaşana kadar giriş saati sinyalinin her bir arka kenarında yukarı doğru sayar. Hem QA hem de QD çıktıları artık mantıksal “1”e eşittir. Bir sonraki saat darbesinin uygulanmasında, 74LS10 NAND geçidinden gelen çıkış, durumu “1”den mantıksal “0” seviyesine değiştirir.

NAND geçidinin çıkışı, tüm 74LS73 JK Flip-flop’ların CLEAR (CLR) girişlerine bağlı olduğundan, bu sinyal, tüm Q çıkışlarının 10’da ikili 0000’a sıfırlanmasına neden olur. QA ve çıkışlar olarak QA ve Flip-flop’lar yeni sıfırlandığı için QD’nin her ikisi de artık mantıksal “0”a eşittir, NAND geçidinin çıkışı tekrar “1” mantık düzeyine döner ve sayaç 0000’dan yeniden başlar. İşte bu şekilde onluk sayıcı devremizi oluşturabiliriz.

Onluk Sayıcı Doğruluk Tablosu

Saat SayıcıÇıkış DurumuOndalık Değeri(Decimal)
QDQCQBQA
100000
200011
300102
400113
501004
601015
701106
801117
910008
1010019
11Sayıcı Çıkışlarını Sıfırlar

Onluk Sayıcı Zamanlama Şeması

asenkron sayıcı

Sayaç çıkış dizilerini kesmekle aynı fikri kullanarak, yukarıdaki devre, basitçe NAND geçidinin girişlerine olan bağlantıları değiştirerek veya diğer mantık geçidi kombinasyonlarını kullanarak diğer sayma döngülerine kolayca uyarlanabilir.

Örneğin, 12’nin ikili eşdeğerinin 1100 olduğuna ve “QC” ve “QD” deki çıkışlardan NAND geçidine girişleri alarak on ikilik bir ölçek (modulo-12) kolayca yapılabilir. bu çıktı “QA” en az anlamlı bittir (LSB).

n flip-flop ile uygulanabilecek maksimum modül 2n olduğundan, bu, kesik asenkron sayaçlar tasarlarken, istediğiniz modülden büyük veya ona eşit olan ikinin en düşük gücünü belirlemeniz gerektiği anlamına gelir.

Diyelim ki 0’dan 39’a veya mod-40’a kadar sayıp tekrarlamak istiyoruz. O zaman gereken en yüksek flip-flop sayısı altı olur, n = 6 maksimum MOD 64 verir, çünkü beş flip-flop yeterli olmaz çünkü bu bize sadece MOD-32 verir.

Şimdi, frekans bölümü için “128’e bölme” sayacı oluşturmak istediğimizi varsayalım, bu durumda, n=7 olur ve hedefimiz olan 128 sayısını elde etmiş oluruz  128 = 27. Yedi flip-flopu basamaklandırmamız gerekecek.

asenkron sayıcı

Kolay bir alternatif yöntem olarak, iki TTL 7493’ü 4 bitlik dalgalanma sayacı/bölücü olarak kullanmaktır. 128 = 16 x 8 olduğundan, bir 7493 “16’ya bölme” sayacı ve diğeri “8’e bölme” sayacı olarak yapılandırılabilir. İki entegre, gösterildiği gibi “128’e bölme” frekans bölücü oluşturmak için birlikte basamaklandırılacaktır.

Elbette, 2’ye bölme, 5’e bölme veya her ikisinin herhangi bir kombinasyonu olarak yapılandırılabilen TTL 74LS90 programlanabilir dalgalanma sayacı/bölücü gibi standart entegre asenkron sayaçlar mevcuttur. 74LS390, 2, 4, 5, 10, 20, 25, 50 ve 100 arasında değişen çok sayıda “bölme” kombinasyonuna sahip çok esnek bir ikili onlu sürücü entegresidir.

Frekans Bölücüler

Dalgalanma sayıcının bir “n’ye böl” çıktısı üretmek için dizileri kesme yeteneği, sayaçların ve özellikle dalgalanma sayıcılarının, yüksek saat frekansını dijitalde kullanım için daha kullanışlı bir değere düşürmek için frekans bölücüler olarak kullanılabileceği anlamına gelir. Örneğin, bir dijital saati çalıştırmak için doğru bir 1Hz zamanlama sinyaline ihtiyacımız olduğunu varsayalım.

Kararsız Multivibratör olarak yapılandırılmış standart bir 555 zamanlayıcı entegresi kullanarak 1 Hz kare dalga sinyalini oldukça kolay bir şekilde üretebiliriz, ancak üretici veri sayfası bize 555 zamanlayıcının üreticiye bağlı olarak tipik bir %1-2 zamanlama hatasına sahip olduğunu göz önüne almalıyız.

Bununla birlikte, veri sayfası bize ayrıca 555 zamanlayıcının maksimum çalışma frekansının yaklaşık 300 kHz olduğunu ve bu yüksek frekansta %2’lik bir hatanın, ancak yine de yaklaşık 6 kHz maksimumda büyük olmasının kabul edilebilir olacağını söylüyor. Bu nedenle, örneğin 262.144kHz’lik daha yüksek bir zamanlama frekansı ve 18 bitlik bir dalgalanma (MOD-18) sayacı seçerek, aşağıda gösterildiği gibi kolayca 1 Hz’lik bir hassas zamanlama sinyali yapabiliriz.

asenkron sayıcı
18-bit asenkron dalgalanma sayıcının 1Hz zamanlama sinyali

Bu, elbette, doğru zamanlama frekanslarının nasıl üretileceğinin çok basit bir örneğidir, ancak yüksek frekanslı kristal osilatörler ve çok bitli frekans bölücüler kullanılarak, saatlerden veya saatlerden olay zamanlamasına kadar çok çeşitli uygulamalar için hassas frekans üreteçleri üretilebilir. ve hatta elektronik piyano/synthesizer veya müzik türü uygulamaları.

Ne yazık ki, asenkron sayaçların ana dezavantajlarından biri, kapının dahili devresinden dolayı saat darbesinin girişine gelmesi ile çıkışında mevcut olması arasında küçük bir gecikme olmasıdır.

Asenkron devrelerde bu gecikme, asenkron dalgalanma sayacına “yayılma sayacı” takma adını veren Yayılma Gecikmesi olarak adlandırılır ve bazı yüksek frekanslı durumlarda bu gecikme yanlış çıkış sayıları üretebilir.

Büyük bit dalgalanma sayıcı devrelerinde, eğer sayaç zincirinin sonunda toplam bir gecikme sağlamak için ayrı aşamaların gecikmesi toplanırsa, giriş sinyali ile sayılan çıkış sinyali arasındaki zaman farkı çok büyük olabilir. Bu nedenle Asenkron Sayaç genellikle çok sayıda bitin dahil olduğu yüksek frekanslı sayma devrelerinde kullanılmaz.

Ayrıca, sayaçtan gelen çıktılar birbirleriyle sabit bir zaman ilişkisine sahip değildir ve saat dizilimleri nedeniyle aynı anda meydana gelmezler. Başka bir deyişle, çıkış frekansları birer birer kullanılabilir hale gelir, bir tür domino etkisi. Ardından, asenkron bir karşı zincire ne kadar çok flip-flop eklenirse, doğru sayımı sağlamak için maksimum çalışma frekansı o kadar düşük olur. Yayılma gecikmesi sorununun üstesinden gelmek için Senkron Sayaçlar geliştirilmiştir.

Özetle

Ardından Asenkron Sayaçların bazı avantajlarını özetlemek gerekirse:

  • Asenkron Sayaçlar, Toggle veya D tipi parmak arası terliklerden kolaylıkla yapılabilir.
  • Parmak arası terliklerin saat girişinin tümü aynı saat sinyali tarafından sürülmediği için “Eşzamansız Sayaçlar” olarak adlandırılırlar.
  • Zincirdeki her çıktı, önceki parmak arası terlik çıktısından bir durum değişikliğine bağlıdır.
  • Asenkron sayaçlara bazen dalgalanma sayaçları denir, çünkü veriler bir flip-flop’un çıkışından diğerinin girişine “dalgalanıyor” gibi görünür.
  • “Böl-n” sayaç devreleri kullanılarak uygulanabilirler.
  • Kesilmiş sayaçlar herhangi bir modül sayısı sayımı üretebilir.

Asenkron Sayaçların Dezavantajları:

  • Ekstra bir “yeniden senkronize” çıktı flip-flop gerekli olabilir.
  • 2n’ye eşit olmayan bir kesik diziyi saymak için ekstra geri besleme mantığı gereklidir.
  • Çok sayıda bit sayıldığında, ardışık aşamalarla yayılma gecikmesi istenmeyen şekilde büyük olabilir.
  • Bu gecikme onlara “Yayılma Sayaçları” takma adını verir.
  • Sayma hataları, yüksek saat frekanslarında meydana gelir.
  • Senkron Sayaçlar, tüm flip-flop’lar için aynı saat sinyalini kullandıkları için daha hızlı ve daha güvenilirdir.
  • Sayaçlar hakkında bir sonraki öğreticide, Senkron Sayaca bakacağız ve senkron bir sayıcının temel özelliğinin zincirdeki her bir flip-flop’un saat girişinin tüm flip-flop’lara bağlı olması olduğunu göreceğiz. eşzamanlı olarak saatlenir.