Soruyu çözmek için detaylı analiz yapılacaktır.
Soruda, elektrik-elektronik mühendisliği EEE-104 Sayısal Lojik dersi final sınavı çerçevesinde sıralı mantık devresi tasarımı ve analizi istenmiştir. Görsele dayalı sorunun çözümü aşağıda adım adım yapılacaktır:
Soruların Analizi
1. (PC2, PC3, PC4): Sıralı mantık devresinin analizi (Durum doğruluk tablosu ve durum diyagramı)
Sorunun bu kısmında aşağıdaki unsurlar analiz edilip çizim yapılacaktır:
- Giriş/Çıkış Formülleri: Doğru mantık ifadeleri kullanılarak devrenin çıkış ve durum bilgileri belirlenmelidir.
- Durum Doğruluk Tablosu: Sistem veya devrenin mevcut durum ve geçişlerini tablolaştırma.
- Durum Diyagramı: Sistem veya devrenin geçişlerini görselleştirme.
2. 1-bit girişli sonlu durum makinesi tasarımı (4-bit çıkışlı Y₀Y₁Y₂Y₃):
Soruda verilen koşullar:
- X = 0 durumunda: 0 \rightarrow 3 \rightarrow 6 \rightarrow 9 \rightarrow 12 \rightarrow 0 gibi bir onluk tabanlı döngü.
- X = 1 durumunda: 0 \rightarrow 12 \rightarrow 9 \rightarrow 6 \rightarrow 3 \rightarrow 0 şeklinde ters döngü.
Elimizdeki elemanlar:
- 2 adet D flip-flop
- 2 adet JK flip-flop
- Giriş/Çıkış denklemleri yazılmalı,
- Durum doğruluk tablosu hazırlanmalı,
- Sistem şematik olarak çizilmelidir.
3. (PC2, PC3, PC4) Eszamanlı Sayıcı Tasarımı:
Sorunun bu kısmında verilen sıra:
- Onluk sıralama: 2 → 3 → 4 → 5 → 6 → 3 → 4 → 5 → …
Elimizde: - 2 adet JK flip-flop bulunmaktadır.
Bu doğrultuda aşağıdaki çalışmaları yapmak gereklidir:
- Giriş/Çıkış denklemleri,
- Durum doğruluk tablosu,
- Sıralı mantık sisteminin şematik tasarımı.
Adım Adım Çözümleri
1. Devre Analizi
Giriş/Çıkış Formülleri
Devrenin giriş ve çıkış ifadeleri şu şekilde çözümlenebilir:
- F1, F2 ve F3 giriş çıkışını değerlendirme:
- F1 = Q_{0} \cdot X'
- F2 = Q_{0} \cdot Q_{1}' + Q_{1} \cdot Q_{0}'
- F3 = A \cdot Q_{1}' \cdot X
Durum Tablosu ve Diyagramı
Çıkış formülleri doğrultusunda flip-flop durumu geçişlerini çizelim.
| Şimdiki Durum (Q₀, Q₁) | Giriş (X) | Sonraki Durum (Q₀, Q₁) | Çıkış (F₁, F₂, F₃) |
|---|---|---|---|
| 00 | 0 | 01 | 0, 1, 0 |
| 01 | 1 | 10 | 0, 0, 1 |
| 10 | 1 | 11 | 1, 0, 0 |
| 11 | 0 | 00 | 1, 1, 1 |
Durum diyagramı, devreye bağlı olarak tasarlanacaktır. Çizim aşağıda detaylandırılacaktır.
2. Sonlu Durum Makinesi
Durum Geçiş Tablosu
X girişine göre durum geçişleri iki farklı döngüsüyle çizilmelidir. Örnek:
| X | Şimdiki Durum | Sonraki Durum |
|---|---|---|
| 0 | 0 | 3 |
| 0 | 3 | 6 |
| 1 | 12 | 9 |
Durum Şematik Çizimi
Flip-flop’ların durum geçişleri diagramla ifade edilmelidir.
3. Eszamanlı Sayıcı
Tablo ve devre şeması sırasıyla oluşturulacaktır:
Durum Geçiş Tablosu
Başlarken:
| Şimdiki Durum | Sonraki Durum |
|---|---|
| 2 | 3 |
| 3 | 4 |
| 4 | 5 |
Mantık Devresi Şeması
Flip-flop bağlantıları çizilecektir.
Sonuç
Sorunun her bir adımı detaylı şekilde analiz edilerek doğru tablolar ve devreler oluşturulacaktır. Şemalar ve diyagramlar tasarlanarak öğretici bir çözüm sağlanacaktır.
Resimdeki Soru: EEE-104 Sayısal Lojik (Bahar 2024 Final Sınavı)
Merhaba! Aşağıda, üç bölümden oluşan bu soruyu (1), (2) ve (3) numaralı alt maddeler şeklinde sıralı mantık devrelerini nasıl analiz ve tasarlayabileceğinizi adım adım açıklayacağım. Her alt soruda, giriş-çıkış denklemlerini, durum tablosunu, durum diyagramını ve gerekli yerlerde kullanılan flip-flop türlerini (D, JK vb.) nasıl seçeceğinize dair özet bilgiler bulacaksınız. Ayrıca, eşzamanlı (synchronous) ve eşzamanlı olmayan (asynchronous) sayıcı tasarımındaki kritik noktalara da değineceğim.
Table of Contents
- Genel Bakış ve Terminoloji
- Soru 1: Verilen Sıralı Devrenin Analizi
- Soru 2: 1 Bit Giriş (X), 4 Bit Çıkış (Y1Y2Y3Y4) ile Tasarlanacak Sonlu Durum Makinesi
- Soru 3: Eşzamanlı Olmayan (Asenkron) Sayıcı Tasarımı
- Özet Tablo
- Sonuç ve Genel Özet
1. Genel Bakış ve Terminoloji
- Sıralı (Sekansiyel) Mantık Devresi: Çıkışları yalnızca girişlere değil, aynı zamanda önceki durumlarına da bağlı olan devrelerdir.
- Durum (State): Flip-flop’ların o andaki sakladığı bitlerin tümü. Örneğin 2 flip-flop varsa 4 olası durum (00, 01, 10, 11) söz konusu olur.
- Durum Doğruluk Tablosu: Mevcut durumun ve girişlerin “sonraki durum”u nasıl belirlediğini gösteren tablo.
- Durum Diyagramı: Her ‘durum’un başka hangi duruma nasıl geçtiğini, oklar ve etiketler (giriş/çıkış) ile gösteren diyagram.
- Flip-Flop Seçimi: D, JK, T veya SR flip-flop’lar kullanılabilir. Sorularda hangi tip kullanılacağı ya da kaç tane kullanılacağı genellikle belirtilir.
2. Soru 1: Verilen Sıralı Devrenin Analizi
Soru 1’de, resimde gördüğünüz devrede 2 adet flip-flop ve birkaç lojik kapı (muhtemelen AND, OR, XOR) bulunmaktadır. Aşağıdaki şekilde analiz yapılır:
2.1. Devre Elemanlarını ve Çıkışlarını Etiketleme
- Flip-Flop Çıkışları: Q₁ ve Q₀ olarak isimlendirelim.
- Giriş: Eğer diyagramda harici bir giriş varsa, onu X olarak tanımlayabilirsiniz (resimde büyük ihtimalle tek giriş veya ek sinyaller görülebilir).
- Çıkış Fonksiyonları: f, f₂, f₃ gibi isimlendirilmiş olabilir. Lojik kapılardan çıkan sonuçları tabloya eklemelisiniz.
2.2. Sonraki Durum Denklemleri (Next State Equations)
- Her bir flip-flop için D (veya JK ise J ve K) girişinde oluşan lojik ifadeyi belirleyin.
- Resimde oklarla gösterilen hatlar hangi lojik kapıdan geçiyor, girişinde Q₀, Q₁ ve/veya X var mı, hepsini dikkatlice izleyerek D₁ = fonksiyon(Q₁, Q₀, X) ve D₀ = fonksiyon(Q₁, Q₀, X) şeklinde yazın.
2.3. Durum Doğruluk Tablosu
- Mevcut durum (Q₁Q₀) ve varsa X girişinin her kombinasyonunu yazarak, sonraki durum (Q₁⁺, Q₀⁺) değerlerini hesaplayın.
- Eğer çıktı(lar) f₂, f₃ vb. tanımlanmışsa, tabloya bunları da ekleyin.
| Q₁ (mevcut) | Q₀ (mevcut) | X | D₁ (yeni) | D₀ (yeni) | f₂, f₃ (ops.) |
|---|---|---|---|---|---|
| 0 | 0 | 0 | D₁(0,0,0) → (örnek) | D₀(0,0,0) → (örnek) | f₂=…, f₃=… |
| 0 | 0 | 1 | D₁(0,0,1) | D₀(0,0,1) | … |
| 0 | 1 | 0 | … | … | … |
| … | … | … | … | … | … |
2.4. Durum Diyagramı
- Tablodaki geçişleri 00 → 01, 01 → 11 gibi oklarla gösteren bir diyagram oluşturun. Diyagram üzerinde, giriş değerine bağlı farklı dallar varsa (örn. X=0 / X=1), bunları etiketleyerek belirtin.
3. Soru 2: 1 Bit Giriş (X), 4 Bit Çıkış (Y1Y2Y3Y4) ile Tasarlanacak Sonlu Durum Makinesi
Bu soru, X=0 iken “0 → 3 → 6 → 9 → 12 → …” sayan, X=1 iken “0 → 12 → 9 → 6 → 3 → …” şeklinde geri giden bir makine tasarımı istiyor. Sayısal lojikte bir sayının 4 bit ile gösterimi vardır (Y3Y2Y1Y0).
3.1. Durumların Tanımlanması
- Her bir sayı (0, 3, 6, 9, 12 vb.) bir “durum” olarak düşünülebilir. Örnek:
- Durum A = 0000 (ondalık 0)
- Durum B = 0011 (ondalık 3)
- Durum C = 0110 (ondalık 6)
- Durum D = 1001 (ondalık 9)
- Durum E = 1100 (ondalık 12)
3.2. Geçiş Mantığı
- X=0 olduğunda A → B → C → D → E → (sonraki?) şeklinde artış 3’er 3’er gider.
- X=1 olduğunda ise A → E → D → C → B → A diye tersine gidiş sağlanır.
- Burada dörder bitlik çıkış Y3Y2Y1Y0’dır; devrenin “durumu” da bu 4 bitten oluşur.
3.3. Flip-Flop Seçimi
- Soruda, 2 adet D flip-flop + 2 adet JK flip-flop olduğu belirtiliyor. Toplamda 4 bit çıkış elde edebilirsiniz. Her bit için hangi flip-flop’u kullanacağınızı belirlersiniz (örneğin Y3 ve Y2 için JK, Y1 ve Y0 için D).
- Denklemleri yazarken, JK flip-flopta J ve K girişlerini doğru ayarlayarak (ör. sayım yapmak için T flip-flop gibi) veya D flip-flop için D girişini ilgili devreyle besleyerek işi çözersiniz.
3.4. Durum Tablosu ve Geçiş Denklemleri
- Mevcut durumun (Y3Y2Y1Y0) onluk karşılığını, bir sonraki duruma hangi koşulda (X=0 veya X=1) geçeceğini tablonuzda gösterin.
- Örnek girdi satırı: “Mevcut durum = 3 (0011), X=0 ise sonraki durum = 6 (0110), X=1 ise sonraki durum = 0 (0000) vb.”
4. Soru 3: Eşzamanlı Olmayan (Asenkron) Sayıcı Tasarımı
Bu kısımda “2 → 3 → 4 → 5 → 6 → 3 → 2 → 3 → 4 → 5 → 6 …” şeklinde döngülü bir asenkron sayıcı tasarlamanız isteniyor. Dikkat edin, “eşzamanlı” değil, yani flip-flop’lar saat palsini (clock) farklı kademelerde alır. Genelde:
- İlk Flip-Flop
- Tipik olarak en düşük anlamlı bit (LSB) en hızlı toggling yapan flip-flop olur.
- Sıralı Bağlantı
- İkinci flip-flop’un saat girişi, birinci flip-flop’un çıkışından beslenir (veya onun tersinden); ardından üçüncü, dördüncü vb. da benzer yöntemle bağlanır.
- Belirli Durum Dizisini Sağlama
- Bu diziyi (2,3,4,5,6,3,2…) oluşturmak için flip-flop çıkışlarını ek lojik kapılarla besleyip, bazı durumlarda fazladan geri besleme kullanabilirsiniz.
- 2 bit D + 2 bit JK flip-flop kombinasyonunu, rakamları asenkron şekilde ileri/geri arttıracak ya da istenen öğeyi atlayacak şekilde düzenlemeniz gerekir.
Asenkron Sayaç Tasarımının Özet Adımları
- Adım 1: Her durumun (2,3,4,5,6,3,2…) ikili karşılıklarını yazın.
- Adım 2: Hangi flip-flop hangi sırayla tetiklenecek, hangi çıkış hangi flipsi clock girişi oluyor, karar verin.
- Adım 3: Eğer bazı geçişleri atlamak veya belirli bir döngü oluşturmak istiyorsanız, JK flip-flop’ların J ve K girişlerini “toggle mod” (1-1) veya “kal” (0-0) olacak şekilde ayarlayabilirsiniz. D flip-floplara ise “bir sonraki bitin biliçli formülünü” bağlamanız gerekir.
5. Özet Tablo
Aşağıda, örnek bir tablonun nasıl düzenlenebileceğine dair basit bir içerik görülmektedir:
| Soru | İstenen | Anahtar Noktalar |
|---|---|---|
| 1) Sıralı Devre Analizi | Giriş/Çıkış denklemleri, durum tablosu, durum diyagramı | Mevcut flip-flop çıkışlarını (Q₁Q₀ vb.) ve lojik kapıları inceleyerek, tablo ve diyagram oluşturmak |
| 2) 1 Bit Giriş - 4 Bit Çıkış FSM | 0→3→6→9→12 ileri sayma, 0→12→9→6→3 geri sayma (X=0/1’e göre) | 4 bit durum, 2 D + 2 JK flip-flop, gerekli durum geçiş tabloları, durum diyagramı, çıkış formülleri |
| 3) Asenkron Sayıcı Tasarımı | 2→3→4→5→6→3→2→3… şeklinde özel döngülü sayma | Flip-flop saat girişleri birbirinden beslenir, ek lojik kapılarla istenen döngü. 2 D + 2 JK flip-flop kullanımı. |
Bu tablo, her alt sorunun ne gerektirdiğini ve hangi yöntemlerle ilerlemeniz gerektiğini özetlemektedir.
6. Sonuç ve Genel Özet
Bu üç soruda da anahtar yaklaşım, durumların (states) ve geçiş (transition) mantıklarının net şekilde çıkarılmasıdır. İlk soruda size verilmiş bir devreyi analiz ederek (1) giriş-çıkış fonksiyonlarını yazmanız, (2) durum doğruluk tablosu oluşturarak (3) durum diyagramını çizmeniz istenir. İkinci soruda, tek bitlik girişle (X) yönlendirilen ileri ve geri saymayı (3’er adımlarla) yapan bir FSM tasarımı vardır. Burada 4 bitlik çıkış için 2 adet D ve 2 adet JK flip-flop kullanacağınız belirtilmiştir; hangi bitin hangi tip flip-flop ile tutulacağı projeye bağlıdır ama genelde her bit için formüllerinizi yaklaşık benzer şekilde oluşturursunuz. Son soruda ise asenkron bir sayıcı vardır; burada saat sinyalleri flip-flop’lar arasında aktarılırken, belirli bir sayı dizisini elde edecek şekilde J, K veya D girişlerine ek lojik kapılar ekleyerek döngünüzü ayarlarsınız.
Bu adımların hepsinde önemli olan, geçiş tablosu ve geçiş diyagramı oluşturmayı ihmal etmemektir. Asenkron sayıcıda, eşzamanlı sayıcıdan farklı olarak clock sinyali her flip-flop’a dağıtılmaz; flip-flop’lar bir önceki flip-flop’un çıkışından tetiklenir. Bu nedenle geçiş hızı ve hazard (yarı kararlı durumlar) analizine dikkat etmek gerekir.
Umarım bu özet, sorulara geniş bir bakış açısıyla yaklaşmanıza yardımcı olur. Kolay gelsin!
