Sayısal Devre Tasarımı Dr. Aşkın Demirkol
ARDIŞIL SİSTEMLER
Şimdiki Durum
Çıkışlar
m
Kombinezonsal Devre
ri. co
Girişler
Sonraki Durum
Bellek Elemanları
tla
Şekil 1 Ardışıl (sıralı) sistemler
sn o
SAYICILAR Flip Flop Durum Geçiş Diyagramları
Karekteristik Tablo
K 0 1 0 1
Q(t+1) Q(t) 0 1 Q (t)
Q(t) 0 0 1 1
m de r
J 0 0 1 1
Q(t+1) 0 1 0 1
J 0 1 x x
K x x 1 0
.e e
Q(t 1) J Q(t ) K Q(t ) karektersitik denklem
w
w
w
T 0 1
Q(t+1) Q(t) Q (t)
Q(t) 0 0 1 1
Q(t+1) 0 1 0 1
Q(t 1) T Q(t ) T Q(t ) T Q(t ) karektersitik denklem
T 0 1 1 0
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
Q(t+1) 0 1
Q(t+1) 0 1 0 1
Q(t 1) D karektersitik denklem (durum denklemi)
D 0 1 0 1
m
D 0 1
Q(t) 0 0 1 1
ri. co
Durum Denklemi (state equation) : Karekteristik denklem olarak da bilinen bu denklem gelecek durumu, mevcut durum ve girişin fonksiyonu olarak tanımlayan denklemdir.
1. ASENKRON SAYICILAR
sn o
tla
Bir sonraki flip flop girişi, önceki çıkışla tetiklenen flip floplardan oluşan sayıcılardır. Sonuçta sistemdeki her bir FF farklı zamanlarda, gecikmeli olarak tetiklenmektedir. Farklı tetiklenmden dolayı oluşan gecikmeler, sistemin peformanısını, yani cevap verme hızını düşürmektedir. Sistemdeki FF lar farklı zamanlarda tetiklendiklerinden, sistem girişlerinin programlanması gerekmemektedir. Asenkron Mod-4 sayıcı – 1 (düşen kenar tetikleme)
m de r
Bu örnekte 0,1,2,3 e kadar dört adım sayıp 4 te kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin J-K flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Bu anlamda iki FF ile iki bit sayıcı kullanılacaktır. İki bit sayıcı 00 01 10 11 olarak çalıştıktan sonra kendisini sıfırlamaya çalışacaktır. Bunun için 00 01 10 11 00 sayacını elde etmemiz gerekecek. A0 A1 1
1
Q
J
Q
K
Q
K
Q
.e e
J
w
w
w
CP
J 0 0 1 1
Şekil 2 Asenkron Mod-4 sayıcı K 0 1 0 1
Q(t+1) Q(t) 0 1 Q (t)
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
0
1
2
3
0
1
0
m
CP
1
0
0
0
ri. co
Q A0
1
1
0
Q A1
tla
Şekil 3 Asenkron Mod-4 sayıcı – 2 (yükselen kenar tetikleme) A0 1
J
Q
m de r
CP
sn o
1
K
A1
Q
J
Q
K
Q
Şekil 4 Asenkron Mod-4 sayıcı
0
.e e
CP
1
0
2
3
1
0
1
0
w
0
1
w
w
Q A0
0
0
1
Q A1
Şekil 5
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Asenkron Mod-4 Geri Sayıcı
A0
A1
J
Q
J
K
Q
K
Q
CP
Q
1
1
m de r
Q A1
2
sn o
1
CP
1
Q A0
tla
Şekil 6 Asenkron Mod-4 geri sayıcı
0
0
w
w
.e e
Şekil 7
w
m
1
ri. co
1
3
0
0
1
0
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Asenkron Mod-8 sayıcı – 1 (düşen kenar tetikleme)
A0
1
J
Q
J
Q
K
Q
K
Q
J
CP
K
0
CP
0
1
1
.e e
Q A0
w
w
w
Q A1
sn o
Q(t+1) Q(t) 0 1 Q (t)
m de r
K 0 1 0 1
tla
Şekil 8 Asenkron Mod-8 sayıcı
J 0 0 1 1
2
0
3
4
5
6
7
1
0
1
0
1
0
0
0
1
1
0
0
1
1
0
0
0
0
0
1
1
1
1
0
Şekil 9
m
1
Q
ri. co
1
Q A2
A2
A1
Q
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Asenkron Mod-8 Geri Sayıcı
A0
1
J
Q
J
Q
K
Q
K
Q
J
CP
K
1
2
CP
Q A1
w
w
1
1
1
1
0
1
0
1
.e e
Q A0
1
4
1
m de r
Q A2
3
5
6
7
sn o
0
tla
Şekil 10 Asenkron Mod-8 geri sayıcı
0
0
0
0
1
1
1
Şekil 11
0
m
1
Q
ri. co
1
w
A2
A1
0
0
0
0
1
0
Q
Sayısal Devre Tasarımı Dr. Aşkın Demirkol 2. SENKRON SAYICILAR
m
Sistemdeki flip flopların tümünün ortak bir saat tarafından aynı anda tetiklendiği sayıcı sistemidir. FF ların aynı anda tetiklenmesinden dolayı, programlanmaları gereken sistemlerdir. Aynı anda tetikleme sonucu FF lar arası gecikme olmadığı kabul edildiğinden, bu tip sayıcıların performansı/hızı, asenkron sayıcılara kıyasla yüksek kabul edilir.
ri. co
Mod-3 Sayıcı
K 0 1 0 1
Q(t+1) Q(t) 0 1 Q (t)
Şu anki durum A0 A1 0 0 0 1 1 0
Q(t) 0 0 1 1
m de r
Sonraki durum K A1 J A1 A0 A1 0 1 0 x 1 0 1 x 0 0 x 1 Durum Tablosu (state table)
A0
A0
0
1
.e e
A1
0
1
w
w
w
0
0 x
1
1
A1
1
x
J A1 A0 A1
0
1 x
K A1 A0
A0
A1
Q(t+1) 0 1 0 1
sn o
J 0 0 1 1
tla
Bu örnekte 0,1,2 ye kadar üç adım sayıp 3 te kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin J-K flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Bu anlamda iki FF ile iki bit sayıcı kullanılacaktır. İki bit sayıcı 00 01 10 olarak çalıştıktan sonra kendisini sıfırlamaya çalışacaktır. Bunun için 00 01 10 00 sayacını elde etmemiz gerekecek.
A0 0 1
A1
1
1
J A0 A1
x
0
0 x
1
x
1 1
K A0 A1
J 0 1 x x
K x x 1 0
J A0
K A0
1 x 0
x 1 x
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
A0
A1
JA1=A0A1_ Q
JA0=A1_
A0
KA0=A1_
K
J
Q
A1
AO K
Q
A1
ri. co
J
m
KA1=A0_
Q
tla
CP Şekil 12 Senkron Mod-3 sayıcı
1
Q A0
1
0
0
m de r
0
2
sn o
0 CP
3
0
1
0
.e e
Q A1
0
0
0
Şekil 13
Mod-4 Sayıcı (ileri)
w
w
w
Bu örnekte 0,1,2 ve 3’e kadar dört adım sayıp 4 te kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin J-K flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Bu anlamda iki FF ile iki bit sayıcı kullanılacaktır. İki bit sayıcı 00 01 10 11 olarak çalıştıktan sonra kendisini sıfırlamaya çalışacaktır. Bunun için 00 01 10 11 00 sayacını elde etmemiz gerekecek.
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
Şu anki durum A0 A1 0 0 0 1 1 0 1 1
Q(t) 0 0 1 1
Sonraki durum A0 A1 0 1 1 0 1 1 0 0
A0 1 1
0 x
x
1
0 1
1
0 x
1 x 1
x
0
0 x
x
1
x
A1
1
.e e w
1 x 1 x
A0
J A0 A0
w
J A0
K A1 A0
m de r
1
w
x x 0 1
0
A0 0
0 1 x x
A1
J A1 A0
A1
K A1
J 0 1 x x
sn o
1
J A1
A0 0
A1
Q(t+1) 0 1 0 1
K x x 1 0
m
Q(t+1) Q(t) 0 1 Q (t)
K A0
ri. co
K 0 1 0 1
tla
J 0 0 1 1
1 1 1
K A0 A0
A0
A1
J
Q
J
Q
K
Q
K
Q
CP Şekil 14 Senkron Mod-4 sayıcı
x 1 x 1
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
0
1
2
m
Sistemin Mod-4 sayıcısı olduğu Q A0 ve Q A1 çıkış dalga formlarından da tespit edilebilir (başlangıç anında çıkışlar sıfır kabul edilecektir).
3
0
1
ri. co
CP
0
1
tla
Q A0
0
0
1
0
sn o
1
Q A1
0
Şekil 15
m de r
Mod-4 Geri Sayıcı
Bu örnekte 3 den başlayıp dört adım olarak 3,2,1,0 biçiminde dört adım geri sayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin J-K flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Bu anlamda iki FF ile iki bit sayıcı kullanılacaktır. İki bit sayıcı 11 10 01 00 olarak çalıştıktan sonra başlangıca dönen bir sayıcı söz konusudur. K 0 1 0 1
Q(t+1) Q(t) 0 1 Q (t)
.e e
J 0 0 1 1
w
w
w
Şu anki durum A0 A1 1 1 1 0 0 1 0 0
Sonraki durum A0 A1 1 0 0 1 0 0 1 1
Q(t) 0 0 1 1
Q(t+1) 0 1 0 1
J 0 1 x x
K x x 1 0
J A1
K A1
J A0
K A0
x x 0 1
0 1 x x
x 1 x 1
1 x 1 x
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
A0
1
x
1
0
0 x
1
1
A1
x
J A1 A0
K A1 A0
A0
A0
1
1
1 x
0
0 x
x
1
x
A1
J A0 1
Q
K
Q
m de r
J
sn o
1
.e e
1
K A0 1
A0
CP
1 1
tla
0
0 1
A1
1 x
ri. co
0
0 1
A1
m
A0
J
Q
K
Q
A1
Şekil 16 Senkron Mod-4 geri sayıcı
Sistemin Mod-4 sayıcısı olduğu Q A0 ve Q A1 çıkış dalga formlarından da tespit edilebilir
w
w
w
(başlangıç anında çıkışlar sıfır kabul edilecektir).
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
0
1
2
3
1
0
0
0
1
0
0
ri. co
1 Q A1
1
0
tla
Q A0
m
CP
Şekil 17
sn o
Mod-5 Sayıcı
J 0 0 1 1
m de r
Bu örnekte 0,1,2,…,4 ye kadar beş adım sayıp 5 te kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin J-K flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Bu anlamda üç FF ile üç bit sayıcı kullanılacaktır. Üç bit sayıcı 000 001 010 011 100 olarak çalıştıktan sonra kendisini sıfırlamaya çalışacaktır. Bunun için 000 001 010 011 100 000 sayacını elde etmemiz gerekecek. K 0 1 0 1
Sonraki durum A2 A0 A1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 0
w
w
w
.e e
Şu anki durum A2 A0 A1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0
Q(t+1) Q(t) 0 1 Q (t)
Q(t) 0 0 1 1
Q(t+1) 0 1 0 1
J 0 1 x x
K x x 1 0
J A2
K A2
J A1
K A1
J A0
K A0
0 0 0 1 x
x x x x 1
0 1 x x 0
x x 0 1 x
1 x 1 x 0
x 1 x 1 x
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
01 11 1
0 1
10
x
1
01 11 x x
1
K A2 A0 A1
J A2 A0 A1 A2
00
01 11 1 x
0
10 x
1
A1 A0 A2 00 0 x 1
x
K A1 A0 A2
A1 A0 00 1
0
01 11 x x
10 1
A1 A0 A2 00 0 x 1
01 11 1 1
K A0 A2
A0
A1
.e e
J A0 A2
K
J
Q
Q
A2
J
Q
K
Q
Q
K
Q
w
w
w
J
10 x
x
m de r
1
10
sn o
J A1 A0 A2
A2
01 11 x 1
tla
A1 A0 A2
10 x
ri. co
00
A2
A1 A0 A2 00 0 x
m
A1 A0
CP Şekil 18 Senkron Mod-5 sayıcı
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
0
1
2
3
4
5
0
1
0
1
0
Q A1
0
0
1
1
0
Q A2
0
0
0
0
0
ri. co
Q A0
m
CP
tla
0
sn o
1
0
m de r
Şekil 19
Mod-7 Sayıcı
Bu örnekte 0,1,2,3,…,7 ye kadar sekiz adım sayıp 8 de kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin T flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Üç FF kullanılarak 000 001 010 011 100 101 110 111 000 sayacını elde etmemiz gerekecek.
Q(t+1) Q(t) Q (t)
.e e
T 0 1
w
w
w
Şu anki durum A0 A2 A1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Sonraki durum A0 A2 A1 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0
Q(t) 0 0 1 1
Q(t+1) 0 1 0 1
T 0 1 1 0
TA2
TA1
TA0
0 0 0 1 0 0 0 1
0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
01 11 1
1
1
01 1
11 1
1
1
1
TA2 A0 A1
1
TA1 A0
A0
1
10
T
m de r
sn o
Q
Şekil 20 Senkron Mod-7 sayıcı
CP
0
1
.e e
CP
Q A0
2
3
4
5
6
1
0
1
0
1
0
Q A1
0
0
1
1
0
0
1
Q A2
0
7
1
0
1
0
w
w
w
0
0
0
0
1
1
Şekil 21
10 1
1
1
A2
T
Q
1
11 1
TA0 1
A1
T
1
01 1
ri. co
0
10
A1 A0 A2 00 0 1
tla
00
A2
A1 A0 A2 00 0
m
A1 A0
1
1
0
Q
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Mod-6 Sayıcı
Sonraki durum A0 A2 A1 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 0 0 0
A0 A1 00
A2
10
A0 A1 A2 00 0
01 11 1
m de r
0
01 11 1
1
1
w
w
w
.e e
DA2 A0 A1 A2 A0 A1 A2
D A2
0 0 0 1 1 0
ri. co
Şu anki durum A0 A2 A1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1
D 0 1 0 1
D A1
D A0
0 1 1 0 0 0
1 0 1 0 1 0
A0 A1 A2 00 0 1
01 1
tla
Q(t+1) 0 1
Q(t+1) 0 1 0 1
sn o
D 0 1
Q(t) 0 0 1 1
1
DA1 A0 A1 A2 A0 A1 A2
10 1
m
Bu örnekte 0,1,2,3,…,5 e kadar altı adım sayıp 6 da kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin D flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Üç FF kullanılarak 000 001 010 011 100 101 000 sayacını elde etmemiz gerekecek.
1
11
10
1
DA0 A0 A2 A0 A1
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
A0
A2
D
D
D
Q
Q
Q
w
w
w
sn o
.e e
m de r
CP
Q
Q
tla
Q
ri. co
m
A1
Şekil 22 Senkron Mod-6 sayıcı
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
0
1
2
3
4
5
6
7
1
0
1
0
1
0
Q A1
0
0
1
1
0
0
0
Q A2
0
0
0
0
1
1
1
ri. co
0
0
tla
Q A0
m
CP
0
0
sn o
Şekil 23 Kombinasyonel, Ardışıl, Senkron, Asenkron Sistemler
Çıkışların belirli bir andaki değeri, girişlerin yanlızca o anki değerine bağlı olan devreler kombinasyonel devreler olarak isimlendirilir (belleksiz sistemler).
m de r
Çıkısların belirli bir andaki değeri, girişlerin yanlızca o anki değerine değil, aynı zamanda girişlerin önceki değerlerinin sırasına da bağlı olan devrelere ardışıl devreler adı verilir (bellekli sistemler). Geçmişteki giriş değerlerinin sırası iç durumlar olarak isimlendirilir ve iç durumlar flip flop’larda saklanır.
.e e
Senkron ardışıl devrelerde durum değişmi, sistemin ortak tetikleme darbeleri (saat darbeleri) düzenlenir.
w
w
w
Asenkron ardışıl devrelerde çıkışın değişimi giriş sinyallerinin bir veya daha fazlasının değişmesine bağlıdır.
Sayısal Devre Tasarımı Dr. Aşkın Demirkol SONLU DURUM MAKİNELERİ : EDWARD F. MOORE VE GEORGE H. MEALY MODELLERİ
Girişler (x)
ri. co
m
Her iki model sonlu durum makineleri (Finite State Machines, FSM) olarak bilinen ve durum (state) üzerine kurulu ardışıl modellerdir. Mealy modelinde çıkış mevcut durum ve girişin fonksiyonu olarak ifade edilmektedir. Dolayısıyla Mealy modelinde çıkışlar durumlara ve girişe bağlıdır. Moore modelinde ise çıkış yalnızca durumlara bağlıdır.
Kombinezonsal Devre
Çıkışlar (z)
Q(t 1)
Q(t )
Sonraki Durum
tla
Şimdiki Durum
sn o
Bellek Elemanları
Şekil 24 Ardışıl (sıralı) sistemler : Mealy Modeli
m de r
Girişler
Kombinezonsal Devre
Şimdiki Durum
Kombinezonsal Devre
.e e
Çıkışlar
Sonraki Durum Bellek Elemanları
Şekil 25 Ardışıl (sıralı) sistemler : Moore Modeli
Durum Diyagramlarının Boyutu
w
w
w
• Eğer s tane durum noktası/düğümü varsa, flip – flopların sayısı, n log 2 s olacaktır. • Eğer n tane flip – flop varsa, diyagramda 2 n tane durum noktası olacaktır. • Eğer m tane giriş varsa, her bir durum noktasında 2 m tane çıkış oku olacaktır.
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Dizi Yakalayıcısı (sequence dedector , sequence recognizers)
ri. co
• Yakalayıcı devrenin tek bir girişi vardır : x. – Girişin her bir biti bir saat periyodunda sağlanır. – Bu uzun giriş dizilerinin uygulanması için en kolay yoldur. • Tek bir çıkış vardır : z. Devre istenen bit dizisi bulunduğunda 1 çıkışını verir.
m
Bir dizi yakalayıcısı devrenin girişinde özel bir bit dizisini arayan özel bir ardışıl devredir.
Örnek-1 : Aranacak olan bit dizisi: 1001 Girişler: 1 1 1 0 0 1 1 0 1 0 0 1 0 0 1 1 0… Çıkışlar: 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0…
tla
Örnek-2 : Aranacak olan bit dizisi: 11011 Girişler: 101101101111011…… Çıkışlar: 000000100100001……
sn o
Bu nedenle dizi yakalayıcısıyla ilgili tasarımlarda bir ardışıl devre tasarlanması gerekmektedir. Örnekten de görüldüğü gibi bu tasarımlarda devrenin diziyi yakalayabilmesi için birkaç önceki çıkışı da hatırlayabilmesi gerekmektedir. Örnek
m de r
Basit bir şifreleme sisteminin tasarımında girişi x, çıkışı z olan ardışıl bir devre göz önüne alınmakta, bu sistemin girişine 1110 bit dizisi geldiğinde çıkışını Lojik 1, aksi durumda Lojik 0 yapan ardışıl devrenin tasarımını D tip FF ları kullanarak tasarlayınız. Çözüm 0/0
1/0
.e e
d1
1
w
w
w
Başlangıç
0/1
d2
0/0
0/0
1/0
1/0 111
d4
d3
11
1/0 Şekil 26 Şifreleme durum diyagramı (1110)
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
d1 : başlangıç 0
10
d1
1
11
d3
0
110
d1
1
111
d4
ri. co
m
d2 : 1
0
1110
d1
1
1111
d4
tla
d 3 : 11
sn o
d 4 : 111
m de r
Şimdiki durum Giriş Sonraki durum 1.Flip – Flop 2.Flip – Flop Çıkış x z Y1 Y1 D1 D2 Y2 Y2 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 1 0
.e e
Y1 Y2 x 00 0
w
w
w
1
01 11
10
1
1
1
D1 xY2 xY1 x(Y1 Y2 )
Y1 Y2 x 00 0
01 11 1
1 z x Y1Y2
10
Y1 Y2 x 00 0 1
1
01 11
1
10
1
D2 xY1 xY1Y2 x(Y1 Y1Y2 )
ri. co
m
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
Y1
Q
D2
sn o
D1
tla
x
Y2
Q
CP
Q
D2 xY1 xY1Y2 x(Y1 Y1Y2 )
m de r
D1 xY2 xY1 x(Y1 Y2 ) ;
Q
Şekil 27 Ardışıl sistem
Kombinezonsal Devre
w
w
w
.e e
x
Şimdiki Durum
z x Y1Y2
Bellek Elemanları
Sonraki Durum
D – FF
Y1 Y2
Y1 Y2
Şekil 28 Ardışıl (sıralı) sistemler
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Örnek
m
Bir şifreleme sisteminin tasarımında girişi x, çıkışı z olan ardışıl bir devre göz önüne alınmakta, bu sistemin girişine 11011 bit dizisi geldiğinde çıkışını Lojik 1, aksi durumda Lojik 0 yapan ardısıl devrenin tasarımını T tip FF ları kullanarak tasarlayınız.
0/0 1/0
1
A
B 0/0
Başlangıç
1/0
ri. co
Çözüm
1/0
0/0
C
1/1
11
0/0
1/0 1101
sn o
E
tla
0/0
D
110
m de r
Şekil 29 Şifreleme durum diyagramı (11011) A : başlangıç
10
A
1
11
C
0
110
.e e
B:1
0
D
C : 11
w
1
C
111
0
1100
A
1
1101
E
0
11010
A
1
11011
C
w
w
D : 110
E : 1101
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Flip – Flop sayısının belirlenmesi • Eğer s tane durum noktası/düğümü varsa, flip – flopların sayısı, n log 2 s olacaktır.
m
n log 2 5 n 3
Sonraki Durum Y3 Y1 Y2 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1* 0 1 0* 0 1* 1* 1 0* 0* 0 0 0 0 1 0
Y2 Y3 x Y1 00 00
01 11 10
01
1
01
11
1
11
.e e
10
1
10
T1 Y1 Y2 Y3 xY1 Y2Y3
w
w
w
Y2 Y3 x Y1 00 00
01 11 1 1
10
Y2 Y3 x Y1 00 00 01
11
11 1
1
1
T3 xY1 Y2 Y1 Y3
1
01 11 1
1
10
1
T2 xY1 Y2 Y1 Y2Y3
01
10
T1 0 0 0 0 0 0 0 1 1 1
Flip - Flop T3 T2 0 0 0 1 0 1 1 1 0 1* 0 0 1 0* 1 1 0 0 1 0
tla
0 1 0 1 0 1 0 1 0 1
m de r
Y2 Y3 x Y1 00 00
Giriş x
sn o
Şimdiki Durum Y3 Y1 Y2 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 1 1 1 0 0 1 0 0
ri. co
• Eğer n tane flip – flop varsa, diyagramda 2 n tane durum noktası olacaktır , 23 8 . • Eğer m tane giriş varsa, her bir durum noktasında 2 m tane çıkış oku olacaktır , 21 2 .
01 11
1
10 z xY1Y2 Y3
10
Çıkış z 0 0 0 0 0 0 0 0 0 1
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Örnek 1001001 Bilgisini yakalayan devreyi Durum diyagramları yardımıyla J – K FF ları kullanarak tasarlayın
0/0
0/0
B
C
0/0
0/0
0/0
sn o
1/0
D
tla
1/1
ri. co
1/0 A
1/0
0/0
A
B
0/0
C
m de r
1/0
m
Çözüm
D
1/1
.e e
Şekil 30 Şifreleme durum diyagramı (1001001)
w
w
w
Şu anki durum Y1 Y2 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
Giriş x 0 1 0 1 0 1 0 1
Sonraki Durum Y1 Y2 0 0 1 0 1 0 0 0
0 1 0 1 1 1 0 1
Q(t) 0 0 1 1
Q(t+1) 0 1 0 1
1.Flip – Flop J Y1 KY1 0 0 1 0 x x x x
x x x x x 1 1 1
J 0 1 x x
2.Flip – Flop KY2 J Y2 0 1 x x 1 1 x x
x x 1 0 x x 1 0
K x x 1 0 Çıkış z 0 0 0 0 0 0 0 1
01 11 1 x
1
x
Y1 Y2 x 00 0 x
10 x x
1
x
J Y1 x Y2
1
1
01 11 x x
10 1
x
1
x
1
1
Y1 Y2 x 00 0 x 1
x
01 11 1 1
10 x x
KY2 x
10
m de r
1
sn o
01 11
1
x
KY1 Y1
JY2 x Y1
Y1 Y2 x 00 0
10 x
tla
Y1 Y2 x 00 0
01 11 x 1
ri. co
Y1 Y2 x 00 0
m
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
.e e
z xYY 1 2
Y1
Y2
J
Q
J
Q
K
Q
K
Q
CP
w
w
w
x
Şekil 31 Ardışıl sistem
Sayısal Devre Tasarımı Dr. Aşkın Demirkol
Kombinezonsal Devre
Bellek Elemanları
Sonraki Durum
J – K FF
Y1 Y2
ri. co
Şimdiki Durum
Y1 Y2
w
w
w
.e e
m de r
sn o
tla
Şekil 32 Ardışıl (sıralı) sistemler
m
z xYY 1 2
x
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Örnek
Çözüm
Y3
Y4
x
Y1
Y2
Y3
Y4
0 1 0 2 3 2 4 0 0 5 0 6 1 7 8 1 9 1 1 10 11 1 12 1 1 13 1 14 1 15 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1 1 0 1 0 0 1 0 1 0 1 0 0
0 0 0 0 0 0 1 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 0
0 0 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 1 0 0
0 1 0 0 1 0 0 0 0 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 1 0
1100111001001111
T1
T2
T3
T4
z
0 0 0 1 10 0 0 11 0 110 111 0 0 1100 1101 0 11000 0 0 11001 110010 0 0 110011 1100110* 1100111001001111 0 0 1100111 0 11001110 11001111* 0 0 110011100 110011101 0 1100111000 0 0 1100111001 0 11001110010 11001110011* 0 0 110011100100 110011100101 0 1100111001000 0 0 1100111001001 11001110010010 0 0 11001110010011 110011100100110* 0 0 110011100100111 1100111001001110* 0 1100111001001111 1
m de r
.e e w
w
w
DURUM
ri. co
Y2
tla
Y1
sn o
S
m
Bir şifreleme sisteminin tasarımında girişi x, çıkışı z olan ardışıl bir devre göz önüne alınmakta, bu sistemin girişine 1100111001001111 bit dizisi geldiğinde çıkışını Lojik 1, aksi durumda Lojik 0 yapan ardısıl devrenin tasarımını T tip FF ları kullanarak tasarlayınız.
Sayısal Devre Tasarımı Dr. Aşkın Demirkol Örnek Dört tane 1Kx8 RAM belleğinden bir tane 4Kx8 RAM bellek elde eden yaklaşımın blok şemasını gösterin.
1-10
8 bit data
2x4 Decoder 2 1 0
ADR 1Kx8 RAM CS1
tla
3
11
ri. co
12
m
Adres girişleri (12 bit)
sn o
R/W
w
w
.e e
m de r
ADR 1Kx8 RAM CS2 R/W
ADR 1Kx8 RAM CS3 R/W
ADR 1Kx8 RAM
w
CS4 R/W
okuma/yazma (R/W) Şekil 33 – 4 Tane (1 Kx8) RAM bağlantısından 1 tane 4Kx8 RAM elde edilmesi
Sayısal Devre Tasarımı Dr. A.Demirkol
Örnek : Mod-3 Sayıcı
Q(t+1) Q(t) 0 1 Q (t)
Q(t) 0 0 1 1
Sonraki durum A1 A0 0 1 1 0 0 0
A0
1
0
J A0
K A0
0 1 x
x x 1
1 x 0
x 1 x
1
0
0 x
1
1
A1
1
x
w
w
w .e
J A1 = A1 A0
A0
A1
0
0 1
1 x
K A1 = A0
A0
1
1 J A0 = A1
0
0 x
1
x
A1 x
K x x 1 0
K A1
A0
0
J 0 1 x x
J A1
em de r
Şu anki durum A1 A0 0 0 0 1 1 0
A1
Q(t+1) 0 1 0 1
tla
K 0 1 0 1
sn o
J 0 0 1 1
ri. co
m
Bu örnekte 0,1,2 ye kadar üç adım sayıp 3 te kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin J-K flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Bu anlamda iki FF ile iki bit sayıcı kullanılacaktır. İki bit sayıcı 00 01 10 olarak çalıştıktan sonra kendisini sıfırlamaya çalışacaktır. Bunun için 00 01 10 00 sayacını elde etmemiz gerekecek.
1 1
K A0 = A1
Sayısal Devre Tasarımı Dr. A.Demirkol
A1
Q
J
K
Q
K
Q
tla
CP
Q
ri. co
J
m
A0
Örnek : Mod-7 Sayıcı
sn o
Şekil Senkron Mod-3 sayıcı
T 0 1
em de r
Bu örnekte 0,1,2,3,…,7 ye kadar sekiz adım sayıp 8 de kendisini sıfırlayan bir senkron sayıcı tasarlanacaktır. Buna ilişkin T flip floplarıyla yapılan tasarım aşağıda elde edilecektir. Üç FF kullanılarak 000 001 010 011 100 101 110 111 000 sayacını elde etmemiz gerekecek.
Q(t+1) Q(t) Q (t)
w
w
w .e
Şu anki durum A2 A1 A0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Sonraki durum A2 A1 A0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0
Q(t) 0 0 1 1
Q(t+1) 0 1 0 1
T 0 1 1 0
TA2
TA1
TA0
0 0 0 1 0 0 0 1
0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1
Sayısal Devre Tasarımı Dr. A.Demirkol
01 11 1
0 1
1
10
1
TA2 = A1 A0
01 11 1 1 1
10
1
TA1 = A0
A1
1
1
01 1 1
11 1
T
T
w .e
w
w
Q
em de r
Q
CP
sn o
1
Şekil Senkron Mod-3 sayıcı
10 1
1
1
TA0 = 1
A2
tla
A0
A1 A0 A2 00 0 1
m
00
A2
A1 A0 A2 00 0
ri. co
A1 A0
T
Q
Sayısal Devre Tasarımı Dr. A.Demirkol Örnek İki tane 4x3 RAM belleğinden bir tane 8x3 bellek elde eden yaklaşımın blok şemasını gösterin.
m
Çözüm
ri. co
3 data
tla
4x3 RAM
CS
adres girişi 2x4 Decoder
2
1x2 Decoder
em de r
3
sn o
R/W
1
4x3 RAM
CS R/W
okuma/yazma (R/W)
w .e
Şekil 2 Tane (4x3) RAM bağlantısından 1 tane 8x3 RAM elde edilmesi
w
w
CS : chip select (hangi RAM’ların seçileceğini gösterir)
Sayısal Devre Tasarımı Dr.A.Demirkol Örnek
m
Basit bir şifreleme sisteminin tasarımında girişi x, çıkışı z olan ardışıl bir devre göz önüne alınmakta, bu sistemin girişine 1110 bit dizisi geldiğinde çıkışını Lojik 1, aksi durumda Lojik 0 yapan ardışıl devrenin durum diyagramını elde edin.
0/0 1/0
d1
d2
1 Başlangıç
0/0
1/0
1/0 111
tla
0/0
sn o
0/1
d3
d4
1/0
11
m de r
Şekil 35 Şifreleme durum diyagramı (1110)
d1 : başlangıç
10
d1
1
11
d3
0
110
d1
1
111
d4
.e e
d2 : 1
0
w
w
d 3 : 11
0
1110
d1 (başlangıca gider)
1
1111
d4
0
1110
d 4 (kendisine kilitler)
1
1111
d4
d 4 : 111
w
ri. co
Çözüm
d 4 : 111
Sayısal Devre Tasarımı Dr.A.Demirkol
w
w
w
.e e
m de r
sn o
tla
ri. co
m
Pattern dedector, sequence detector, sequence recognizers