128337703 ileri lojik uygulamalari ders notu v3
TRANSCRIPT
İLERİ LOJİK UYGULAMALARI DERS NOTU
Prof Dr. Ethem KÖKLÜKAYA
Elektrik‐Elektronik Mühendisliği
İleri Lojik Uygulamaları Ders Notu
1
ARDIŞIL LOJİK DEVRELERİN ANALİZ VE SENTEZİ İncelenecek olan ardışıl devreler giriş sayısı n, çıkış sayısı m, durum sayısı r olan lojik devrelerdir.
Burada n,m ve r sayıları sonludur. Böyle bir lojik devrenin belli bir t=i anındaki girişi ve durumu, devrenin o andaki çıkışını ve t=i+1 anına ilişkin durumunu tek olarak belirler. Yani çıkış değeri, şimdiki girişlere ve bir önceki duruma (bir önceki çıkışa) bakılarak belirlenir. O halde bir ardışıl devre verildiğinde;
(i) Belirli bir duruma ve belirli bir giriş kombinasyonuna karşı düşen çıkışların ne olduğu, ayrıca (ii) Belirli bir duruma ve belirli bir giriş kombinasyonuna karşı düşen bir sonraki durumun ne olduğu
verilmelidir. Bu ilişkiler 2 farklı şekilde verilmektedir.
1‐ Durum Tablosu 2‐ Durum Diyagramı
TERMİNOLOJİ y= Bir önceki durum Y= Bir sonraki durum x1,x2,x3 .. = Girişler z1,z2, z3 .. = Çıkışlar n=giriş sayısı m=çıkış sayısı r=durum sayısı (Durum sayısı FF sayısına bağlıdır.) ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Flip‐Flop lar bellekli elemanlardır. Bu yüzden bir sonraki çıkış bir önceki çıkış değerlerine bağlıdır. Biz FF’leri devrede diğer kapılarla birlikte kullanacağız. Yapacağımız devrede FF’lerin girişleri devrenin girişi ve FF’lerin çıkışları devrenin çıkışı olmayabilir. Giriş dediğimizde devrenin girişini, çıkış dediğimizde devrenin çıkışını, durum dediğimizde ise FF’lerin çıkış değerlerini kastediyoruz. FF’lerin şimdiki çıkış değerini (durumunu) “y” ile , bir sonraki çıkış değerini (durumunu) “Y” ile göstereceğiz. Örnek vermek gerekirse, JK FF’in y=0 ise ve J=1, K=1 verilirse Y=1 olur. Bu durumdayken yani y=1 iken girişlerden J=0, K=1 verilirse Y=0 olur. Y=f(y,R,S) değerlerine bağlıdır. UNUTMA! Flip Flopların çıkışlarına durum, devrenin çıkışına çıkış diyoruz. Ama öyle bir devre olabilirdi ki FF lerin çıkışı devrenin de çıkışı olabilirdi. (Mustafa KOCATEPE) ([email protected]) ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
Sıralı bir devre, girişlerin, çıkışların ve iç durumların zaman sırasıyla tanımlanır. Senkron sıralı (ardışıl) devrelerde iç durum değişikliği, senkron saat darbelerine tepki olarak gerçekleşir. Asenkron sıralı devrelerde saat darbesi kullanılmaz. İç durum değişikliği, giriş değişkenlerinde bir değişiklik olduğu zaman gerçekleşir. Senkron sıralı devrelerdeki bellek elemanları saatli fli‐flop lardır. Asenkron sıralı devrelerdeki bellek elemanları ise saatsiz flip‐floplar ve geciktirme elemanlarıdır. Asenkron bir sıralı devre birçok durumda geri beslemeli bileşik devreye benzer. Asenkron sıralı devreler işlem hızının önemli olduğu yerlerde kullanılır ve az sayıda bileşen gerektiren, küçük bağımsız sistemlerde daha ekonomiktir. Asenkron sıralı devrelerde mevcut durum değişkenlerine tali (ikincil) değişken, sonraki durum değişkenlerine uyarma değişkenleri adı verilir. (y=tali değişken, Y=uyarma değişkeni) Uygun bir çalışma için Y=y oluncaya (kararlı hal) kadar beklenir ve giriş değişkenlerinden her seferinde yalnızca 1 tanesi değiştirilir.
İleri Lojik Uygulamaları Ders Notu
2
Durum Tablosundan Yararlanılarak Bir Ardışıl Devre Belirlenmesi Durum tablosu r satırlı ve 2n sütunlu bir matris, matrisin her satırında bir durum, her sütununa da bir
giriş kombinasyonu karşı düşürülür. Matrisin (i,j) pozisyonuna di durumu ile xj= (x1, x2, x3, …, xn) giriş kombinasyonuna karşı düşen bir sonraki durum ve di, xj ye karşı düşen çıkışlar yazılır.
zk= fk(x1, x2, ….., xn, di), k=1,2, …….m di=g[(x1, x2, ….., xn), di] (xj ve di değerlerine karşı düşen bir sonraki durum)
ÖRNEK: Aşağıda n=1, m=1 ve r=6 olan (bir girişli, bir çıkışlı, 6 durumu olan) bir ardışıl devreye ilişkin durum tablosu verilmiştir. Devre B durumunda iken (ve z=0 iken) devreye x(i), x(i+1), x(i+2), x(i+3), x(i+4) = 101110 giriş dizisi uygulanırsa çıkış dizisinin ve ne olacağını bulunuz. Başlangıç değeri olarak B,0 değerini kullanacağız.
Durum Tablosu xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1 B F,0 D,0 C E,0 B,1 D F,0 B,0 E C,0 F,1 F B,0 C,0
ÇÖZÜM: Devre 1 girişli, bir çıkışlı, Devrenin başlangıçta B,0 değerinde olduğunu (B durumunda ve z=0 olduğunu) düşünürsek tabloyu şöyle yorumlayabiliriz.
Durum Tablosu xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1
(Girişten sırayla verilecek değerler=101110) Girişten 1 değeri verildiğinde devre D,0 konumuna geçer. Yani D durumuna geçer ve çıkış z=0 olur.
B F,0 D,0 C E,0 B,1 D F,0 B,0 E C,0 F,1 F B,0 C,0
Burada 6 adet durum vardır. Örneğin durumlar A=000, B=001, C=010, D=100, E=110, F=111 olabilir. (Demekki devrede 3 FF kullanılmış.) Tablonun içindeki 1. değer bir sonraki durumu, 2. değer ise çıkış değerini gösteriyor.
İleri Lojik Uygulamaları Ders Notu
3
Durum Tablosu xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1
(Girişten sırayla verilecek değerler=101110) Girişten 0 değeri verildiğinde devre F,0 konumuna geçer. Yani F durumuna geçer ve çıkış z=0 olur.
B F,0 D,0 C E,0 B,1
D F,0 B,0
E C,0 F,1 F B,0 C,0
Durum Tablosu
xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1
(Girişten sırayla verilecek değerler=101110) Girişten 1 değeri verildiğinde devre C,0 konumuna geçer. Yani C durumuna geçer ve çıkış z=0 olur.
B F,0 D,0 C E,0 B,1 D F,0 B,0 E C,0 F,1
F B,0 C,0
Durum Tablosu
xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1
(Girişten sırayla verilecek değerler=101110) Girişten 1 değeri verildiğinde devre B,1 konumuna geçer. Yani B durumuna geçer ve çıkış z=1 olur.
B F,0 D,0
C E,0 B,1
D F,0 B,0 E C,0 F,1 F B,0 C,0
Bu işlem diğer 2 giriş içinde yapılırsa aşağıdaki tablo oluşturulabilir.
t 0 1 2 3 4 5 6 x=1 verilince B,0 dan D,0 a geçiyor.x=0 verilince D,0 dan F,0 a geçiyor. x=1 verilince F,0 dan C,0 a geçiyor. x=1 verilince C,0 dan B,1 e geçiyor. x=1 verilince B,1 dan D,0 a geçiyor. x=0 verilince D,0 dan F,0 a geçiyor.
x 1 0 1 1 1 0 di B D F C B D F z 0 0 0 0 1 0 0
Aynı durum tablosunu kullanarak girişin devamlı 1 olması durumunda çıkışın ve durumların nasıl değiştiğini belirleyiniz. t 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 x 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 di A z 1
İleri Lojik Uygulamaları Ders Notu
4
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU:Dikkat edilirse bu durum tablosuna göre çalışan bir devre kararsız bir devredir. Giriş değişikliği olmadığı halde devre devamlı durum değiştirmektedir. Çünkü durum tablosundan da görüleceği gibi Y=y olan bir satır bulunmamaktadır. Yani satırlara ait durum harfleri aynı satırda bulunmamaktadır. İkinci bir nokta 3 FF ile aslında 8 durum söz konusudur. Ama buradaki örnekte durum tablosunda 6 durum verilmiştir. Bunun anlamı bu devre kalan 2 duruma hiç geçmemektedir. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÇALIŞMA: Aşağıdaki durum tablosuna göre girişten 110101 verildiğinde çıkış ve durum dizisinin ne olacağını bulunuz ve tabloyu doldurunuz.
Durum Tablosu xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A C,1 D,1 B F,0 E,0 C D,0 B,1 D F,0 B,1 E B,0 F,1 F C,0 A,0
t 0 1 2 3 4 5 6 x 1 1 0 1 0 1 di A z 1
ÇALIŞMA: Aşağıdaki durum tablosuna göre girişten 110101 verildiğinde çıkış ve durum dizisinin ne olacağını bulunuz ve tabloyu doldurunuz.
Durum Tablosu xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A C,1 D,1 B F,0 B,0 C D,0 E,1 D F,0 B,1 E B,0 F,1 F C,0 A,0
t 0 1 2 3 4 5 6 x 1 1 1 1 1 1 di A z 1
İleri Lojik Uygulamaları Ders Notu
5
Durum Diyagramından Yararlanılarak Bir Ardışıl Devrenin Belirlenmesi Ardışıl devrenin davranışını belirlemek için her durum 1 düğüme karşı düşürülür. Devre di
durumunda iken devreye xj girişi uygulandığında bir sonraki durum dj oluyorsa di ve dj düğümleri, yönü i’den j’ye olan bir topolojik elemanla birleştirilir. Bu elemanın üzerine önce xj, sonra di xj ye karşı düşen çıkış veya çıkışlar yazılır.
Örnek: Daha önce verilen durum tablosuna ilişkin durum diyagramını elde edelim Durum Tablosu
xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1 B F,0 D,0 C E,0 B,1 D F,0 B,0 E C,0 F,1 F B,0 C,0
ÇÖZÜM: Sırayla durumları inceleyelim. Önce A durumu ile başlayalım. A durumunda iken x=0 olursa E,0 Durumuna; x=1 olursa D,1 durumuna geçiliyor. Sadece bunu gösterirsek;
Diğer durumlarıda ifade edersek; B durumunda iken x=0 olursa F,0 Durumuna; x=1 olursa D,0 durumuna geçiliyor C durumunda iken x=0 olursa E,0 Durumuna; x=1 olursa B,1 durumuna geçiliyor D durumunda iken x=0 olursa F,0 Durumuna; x=1 olursa B,0 durumuna geçiliyor E durumunda iken x=0 olursa C,0 Durumuna; x=1 olursa F,1 durumuna geçiliyor F durumunda iken x=0 olursa B,0 Durumuna; x=1 olursa C,0 durumuna geçiliyor
Tüm bu durumlar ifade edildiğinde durum diyagramını elde etmiş oluruz. Durum diyagramı, durum tablosunun yerine geçen bir gösterimdir. Bazen buradan devreyi yorumlamak daha kolay olmaktadır.
İleri Lojik Uygulamaları Ders Notu
6
Durum Tablosu ve ona ilişkin Durum Diyagramı
Durum Tablosu xj GİRİŞ DEĞERLERİ
di 0 1
DURU
MLAR
A E,0 D,1 B F,0 D,0 C E,0 B,1 D F,0 B,0 E C,0 F,1 F B,0 C,0
Durum Diyagramı
ARDIŞIL DEVRELERİN SINIFLANDIRILMASI
1. Senkron Ardışıl Devreler: Bellek elemanları saat darbeleri ile kontrol edilen devreler 2. Asenkron Ardışıl Devreler (Serbest Hareketli Devreler): a) Temel Modda Çalışan Asenkron Ardışıl Devreler (fundemental mode): Yi=yi olunca yani devre kararlı hale gelince giriş değiştiriliyor. Yi=yi olmadıkça giriş değiştirilmiyor. 2n tane durum oluşur. Örneğin 3 girişli bir devre için 8 adet durum oluşur. (000,001,010,011,100,101,110,111) n=3, r=8 b)Darbe Modunda Çalışan Asenkron Ardışıl Devreler (pulse mode): x1, x2, …., xn gibi n tane giriş varsa bunlardan 1 tanesi 1 diğerleri 0 oluyor ve 2n değilde n tane farklı durum ortaya çıkıyor. Örneğin 3 girişli bir devre düşünürsek durumlar 001, 010 ve 100 şeklinde olacaktır. n=3, r=3
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Normalde FF’ler ile yapılan devrelerde ‐örneğin sayıcılar‐ çıkış devamlı olarak değişebilir. Çünkü geri beslemeden dolayı 1 önceki çıkış, bir sonraki çıkışı etkiler. Örneğin JK FF’in girişlerine devamlı 11 verirseniz çıkış 0‐1‐0‐1‐0‐1‐0‐1‐0‐1 … şeklinde olacaktır. Bu bize çıkışın kararlı olmadığını gösterir. Biz ise burada devre kurarken çıkışın kararlı olduğu durumları kullanacağız. Yani bir sonraki çıkışın, bir önceki çıkışa eşit olduğu durumu kullanacağız ki bu duruma kararlı durum diyoruz. Özetle kararlı durum Y=y durumudur. Girişler sabit iken çıkışın değişmediği durumdur. Böylece FF’leri kapı mantığıyla kullanmış olacağız. Girişler değiştirilmeden çıkış değişmeyecek. Tabi burada çıkış hemen kararlı hale ulaşmayabilir. Önce kararsız çıkışlardan geçerek kararlı hale ulaşabilir. Bizim yapmamız gereken ilerde de söyleneceği gibi çıkış kararlı hale gelinceye kadar beklemektir. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
İleri Lojik Uygulamaları Ders Notu
7
Bazı Bellek Elemanlarının Tanım Bağıntıları
İleri Lojik Uygulamaları Ders Notu
8
Asenkron Ardışıl Devreler İçin Uyulması Gereken Kriterler Asenkron ardışıl devrenin hata yapmadan çalışması ve istenileni verebilmesi için uyulması gereken
bazı kriterler vardır. Bunlar Huffman kriterleri olarak adlandırılır. 1‐ Bir anda yalnız 1 giriş değeri değiştirilebilir. Örneğin 2 girişli bir devre düşünürsek 00’dan 11’e tek seferde gidemeyiz. Çünkü 2 giriş değeri birden değiştirilmiştir. 00’dan 01’e veya 10’a gidebiliriz. 2‐ Bir giriş değişikliğinden sonra devre stabil bir duruma erişinceye kadar başka bir giriş değişikliği yapılmamalıdır. Yani giriş değeri değişmeleri arasında, bellek elemanlarının stabil bir duruma erişebilmesi için gerekli süre bulunmalıdır. (Stabil durum Y=y durumudur. Yani bir giriş değerine karşılık FF’in çıkışının değer aldığı ve değişmediği durumdur.) 3‐ a)Bellek elemanlarının hangisinin öncelikli durum değiştirmesine bağlı olarak birden fazla stabil durum yani kritik yarışmaya müsaade edilmez. b) Farklı bellek elemanlarının hangisinin daha evvel durum değiştirmelerine bağlı kalmaksızın aynı stabil duruma erişmesine yani kritik olmayan yarışmaya izin verilmez. Yani gidilecek yolu biz belirleyeceğiz ve kritik yarışa veya kritik olmayan yarışa izin vermeyeceğiz. Stabil duruma ulaşıncaya kadar hangi yoldan gideceğine biz karar vereceğiz. 4‐ Girişlerde bir değişiklik yokken devrenin stabil olmayan bir durumdan, başka bir stabil olmayan duruma geçmesine ve sürekli bu şekilde durum değiştirmesine yani vızıltı dairesi olmasına izin verilmez. Bu kriterlere göre çalışan asenkron ardışıl devrelere Temel Modda Çalışan Asenkron Ardışıl Devreler denir. Aşağıdaki örneklerden (a) ara kararsız durumlara yönlendirilmiş, yarışlardan kaçınılmış, saykılı olan örnek (b) karasız (vızıltı durumu) örneği
(a) örneğinde 00 durumunda ve x=0 girişinde iken x=1 yapılırsa, önce 01 durumuna geçer. Bu durum kararsız olduğundan ardından 11 durumuna geçer. Bu durumda kararsız olduğundan 11 durumuna geçer. Yine kararsızlık söz konusu olduğundan 10 kararlı durumuna geçer ve burada kalır. Görüldüğü gibi kararsız durumların ne olacağını belirleyerek yolu biz çizmiş olduk. Kararlı durum y1 y2 değerlerinin içerdeki Y1Y2 değerlerine eşit olduğu durumdur. Bir devre benzersiz bir kararsız durumlar sırasından geçtiği zaman, bir saykılı olduğu söylenir.
İleri Lojik Uygulamaları Ders Notu
9
Kritik ve kritik olmayan yarış Giriş değişkenlerinden birden fazlasının değişmesine izin verilmediğini söylemiştik. Örneğin 2
giriş değişkeni olduğunu düşünürsek 00’dan 11’e geçmesine, 01’den 10’a geçmesine, 11’den 00’a geçmesine, 10’dan 01’e geçmesine izin verilmez. Çünkü her 2 giriş değişkeni de değişmektedir.
Buna benzer olarak sistemde giriş değişikliğine tepki olarak durumun en fazla 1 değerinin değişmesi istenir. Eğer bu yapılırsa yarış söz konusu olmaz. Tabiki yarış için en az 2 durum değişkeni olmalıdır. Eğer tek durum değişkeni varsa zaten 0 ve 1 olmak üzere 2 durum söz konusudur ve 0’dan 1’e veya 1’den 0’a geçiş söz konusudur. Her seferinde tek değişiklik olmaktadır. 2 durum değişkeni olduğunda örneğin 00 durumundan 11 durumuna geçişte her 2 durum değişkeni de değişmektedir.
Devrenin ulaştığı son kararlı durum, durum değişkenlerinin değişme sırasına bağlı değilse, yarış, kritik olmayan yarış olarak adlandırılır. Durum değişkenlerinin değişme sırasına bağlı olarak 2 veya daha fazla farklı kararlı durumun ortaya çıkması mümkünse, bu kritik bir yarıştır. Doğru çalışma için kritik yarışlardan kaçınmak gerekir. Bunu gidilecek ara yolları uygun şekilde seçerek yapabiliriz.
(a) örneğinde 00 kararlı durumunda iken girişi 1 yaptığımızı düşünelim. Haritadan inceleyecek olursak giriş 0’dan 1’e çekildiğinde 00 durumundan 11 durumuna geçer ve bu stabil durumda kalır diyebiliriz fakat bu beklenti boşa çıkabilir. Çünkü 00’dan 11’e geçilmeye çalışılmıştır. Yani 2 durum değişkeni birden değiştirilmeye çalışılmıştır. Buradaki problem şudur ki durum değişkenleri aynı anda durum değiştiremeyebilir. Çünkü devrenin farklı yollarında farklı gecikmeler olacaktır. Bu yüzden 00’dan 11’e geçmesini istediğimiz durum değişkenlerinden birincisi önce değişirse 00’dan 10’a geçme durumu söz konusu olur. Eğer ikincisi önce değişirse 00’dan 01’e geçme söz konusudur. Tablodan takip edersek birinci durum değişkeni önce değişirse sistem 10 stabil durumuna geçer ve orada kalır. Eğer ikinci durum değişkeni önce değişirse sistem 01 stabil durumuna geçer ve orada kalır. Yani her 2 değişken aynı anda değişmez ise 11 durumuna gitmesini beklediğimiz sistem ya 01 durumuna ya 10 durumuna gider. (b) örneğinde ise 00’dan 11’e geçme durumu hala devam etmektedir. Birinci durum değişkeni önce değişirse sistem 10 stabil durumunda kalır. Eğer ikinci durum değişkeni önce değişirse sistem 01 ara geçis durumuna gelir ve buradan 11 stabil durumuna geçer. (c) örneğinde kritik olmayan yarış söz konusudur. Çünkü sonuçta hep 11 durumuna ulaşılmaktadır. (d) örneğinde ise 00 durumunda iken giriş 1’e alınırsa 01 ara geçiş durumuna ve buradan 11 stabil durumuna geçer. Görüldüğü gibi bir yarış söz konusu değildir. Saykıl vardır. (e) örneğinde ise 00 durumunda iken giriş 1’e alınırsa önce 01 ara geçiş durumuna, sonra 10 ara geçiş durumuna ve oradanda 11 stabil durumuna gideceği gözükmektedir fakat dikkat edilirse 01 ara geçiş durumundan 10 ara geçiş durumuna gitmek bir yarışın olabileceğinin göstergesidir. Çünkü 2 durum değişkeni değiştirilmiştir.
İleri Lojik Uygulamaları Ders Notu
10
Asenkron Ardışıl Devrenin Analizi Burada bize verilen bir devrenin ne işe yaradığını bulmaya çalışacağız ve bazı terim ve tabloları
öğreneceğiz. Bir devrede x1, x2, …, xn giriş değişkenleri, y1, y2, …, yn bellek elemanlarına ilişkin durum
değişkenleri ise bellek elemanlarının alacakları bir sonraki durum değişkenleri Y1, Y2, …, Yn olarak gösterilir. Devredeki bellek elemanları yarımıyla Y1, Y2, …, Yn lojik fonksiyonları yazılabilir. Bu fonksiyonlara uyarma fonksiyonları ve bu fonksiyon değerlerini veren tabloya “Uyarma Tablosu” veya “Geçiş Tablosu” denir. Çıkış değerlerini veren tabloya “Çıkış Tablosu” denir.
ÖRNEK: Aşağıdaki S‐R bellek elemanları ile gerçekleştirilmiş ardışıl devrenin Geçiş ve Çıkış tablolarını bulalım.
ÇÖZÜM: Devrenin 2 girişi, 1 çıkışı bulunmakta ve 2 tane FF kullanılmış. Önce devreye ait S1, R1, S2, R2 ve Z fonksiyonlarını devreye bakarak yazalım: S1 = x1’.x2.y1’ + x1.x2’ R1 = x1’.x2.y1 S2 = x1’.x2 + x1.x2’.y2’ R2 = x1.x2’.y2 z = x2.Y1’ + x2’.Y2’ Şimdi tabloyu oluşturmaya başlayalım. 2 adet giriş ve 2 adet FF olduğundan x1,x2,y1,y2 değerleri FF’lerin çıkışlarını ve z çıkışını oluşturacak değerlerdir. Bu yüzden 24=16 durumlu bir tablo yapmamız gerecektir.
İleri Lojik Uygulamaları Ders Notu
11
x1 x2 y1 y2 S1 R1 S2 R2 Y1 Y2 z İlk olarak x1, x2, y1, y2 sütunlarını hemen
doldurabiliriz. Değişik giriş değerlerini ve o girişlere karşı düşen durumları 24=16 satır olarak belirleyebiliriz. Sonra aşağıdaki devre bağıntıları ile ilgili sütunları doldurabiliriz. S1 = x1’.x2.y1’ + x1.x2’ R1 = x1’.x2.y1 S2 = x1’.x2 + x1.x2’.y2’ R2 = x1.x2’.y2 Böylece S1, S2, R1, R2 girişlerine hangi değerlerin geldiğini bulmuş oluruz.
0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 1 0 1 1 0 1 0 1 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0
0 0 1 0 0 0 0 00 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 1 1 0 0 0 0 0
0 0 1 1 0 0 0 0 0 1 1 1 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0
Örneğin 1. satırı okuyacak olursak; girişler 00 iken bir önceki durum 00 ise S1=0, R1=0, S2=0 ve R2=0 değerleri FF girişlerine gelir. FF’lerin giriş değerleri belli, önceki durum değerleri belli olduğuna göre, sonraki çıkış değerleri bulunabilir. Yani y1,S1,R1 ile Y1 değeri ve y2,S2,R2 ile Y2 değeri bulunabilir.
x1 x2 y1 y2 S1 R1 S2 R2 Y1 Y2 z Şimdi Y1, Y2 değerlerini SR FF’in doğruluk tablosuna bakarak dolduralım: S1,R1,y1 ile Y1 bulunur. S2,R2,y2 ile Y2 bulunur.
Son olarak z çıkış değerini z = x2.Y1’ + x2’.Y2’ bağıntısı yardımıyla yazabiliriz.
0 0 0 0 0 0 0 0 0 0 1
0 1 0 0 1 0 1 0 1 1 0
1 0 0 0 1 0 1 0 1 1 0
1 1 0 0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 0 0 1 00 1 0 1 1 0 1 0 1 1 0
1 0 0 1 1 0 0 1 1 0 1
1 1 0 1 0 0 0 0 0 1 1
0 0 1 0 0 0 0 0 1 0 10 1 1 0 0 1 1 0 0 1 1
1 0 1 0 1 0 1 0 1 1 0
1 1 1 0 0 0 0 0 1 0 0
0 0 1 1 0 0 0 0 1 1 00 1 1 1 0 1 1 0 0 1 1
1 0 1 1 1 0 0 1 1 0 0
1 1 1 1 0 0 0 0 1 1 0
x1 x2 y1 y2 Y1 Y2 z
S1, R1, S2, R2 değerlerini tablodan kaldırarak tablonun daha anlaşılır olmasını sağlayabiliriz. Tabloyu şöyle okuyabiliriz. İlk 4 satır devrenin 00 durumunda olduğu yerlerdir. Devre 00 durumunda iken girişlerden 00 uyguladığımızda devre 00 stabil durumunda kalır ve çıkış 1 olur. Devre 00 durumunda iken girişlerden 01 uyguladığımızda devre 11 geçici durumuna geçer, buradan (14.satır) 01 geçici durumuna geçer, buradan (6. satır) 11 geçici durumuna tekrar geçer ve bu şekilde girişler değiştirilmediği müddetçe 01 geçici durumu ile 11 geçici durumu arasında gider gelir, çıkış değeri ise 0 ile 1 arasında devamlı değişir.
1 0 0 0 0 0 0 12 0 1 0 0 1 1 03 1 0 0 0 1 1 04 1 1 0 0 0 0 1
5 0 0 0 1 0 1 06 0 1 0 1 1 1 07 1 0 0 1 1 0 18 1 1 0 1 0 1 1
9 0 0 1 0 1 0 110 0 1 1 0 0 1 111 1 0 1 0 1 1 012 1 1 1 0 1 0 0
13 0 0 1 1 1 1 014 0 1 1 1 0 1 115 1 0 1 1 1 0 016 1 1 1 1 1 1 0
İleri Lojik Uygulamaları Ders Notu
12
Temel Modda Çalışan Asenkron Ardışıl Devrenin Analizi Bu çalışmada aşağıdaki kavramları örnek üzerinde inceleyeceğiz 1. Uyartım ve çıkış fonksiyonları ve tabloları. 2. Geçiş Tablosu (FF’lerin durumlarını gösterir.) 3. Çıkış Tablosu (Çıkış değerini gösterir.)
4. Akış Tablosu (harflerle ve sayılarla yapılan tablo) 5. Primitif (ilkel) akış tablosu (her sırada tek stabil durum)(sözel soru sorulduğunda ilk yapılacak tablo)
6. Durum Tablosu 7. Primitif Durum Tablosu
8. Durum Diyagramı Akış tabloları ve durum tabloları birbirinin eşdeğeridir.
ÖRNEK: Aşağıda verilen devre şemasına göre analiz yapalım.
S1 = x1.x2 S2 = x1.x2’ z1 = Y1.Y2 + x1’ (Y1+Y2) R1 = x1’.x2’ R2 = x1’ . x2 z2 = Y1.Y2’ + x2’ (Y1+Y2’)
x1 x2 y1 y2 S1 R1 S2 R2 Y1 Y2 z1 z2 0 0 0 0 0 1 0 0 0 0 0 1
0 0 0 1 0 1 0 0 0 1 1 0
0 0 1 1 0 1 0 0 0 1 1 0
0 0 1 0 0 1 0 0 0 0 0 1
0 1 0 0 0 0 0 1 0 0 0 00 1 0 1 0 0 0 1 0 0 0 0
0 1 1 1 0 0 0 1 1 0 1 1
0 1 1 0 0 0 0 1 1 0 1 1
1 1 0 0 1 0 0 0 1 0 0 11 1 0 1 1 0 0 0 1 1 1 0
1 1 1 1 1 0 0 0 1 1 1 0
1 1 1 0 1 0 0 0 1 0 0 1
1 0 0 0 0 0 1 0 0 1 0 01 0 0 1 0 0 1 0 0 1 0 0
1 0 1 1 0 0 1 0 1 1 1 1
1 0 1 0 0 0 1 0 1 1 1 1
İleri Lojik Uygulamaları Ders Notu
13
Şimdi kararlı durumların hangilerinin olduğunu bulalım ve işaretleyelim. (y1 y2 = Y1 Y2)
x1 x2 y1 y2 Y1 Y2 z1 z2 0 0 0 0 0 0 0 1
0 0 0 1 0 1 1 0
0 0 1 1 0 1 1 0
0 0 1 0 0 0 0 1
0 1 0 0 0 0 0 00 1 0 1 0 0 0 0
0 1 1 1 1 0 1 1
0 1 1 0 1 0 1 1
1 1 0 0 1 0 0 11 1 0 1 1 1 1 0
1 1 1 1 1 1 1 0
1 1 1 0 1 0 0 1
1 0 0 0 0 1 0 01 0 0 1 0 1 0 0
1 0 1 1 1 1 1 1
1 0 1 0 1 1 1 1
Bu tabloyu “Geçiş Tablosu” ve “Çıkış Tablosu” olarak 2 tablo ile ifade edebiliriz.
Buradaki geçiş tablosu mevcut durumların (y1 y2) birer harf, bir sonraki durumların (Y1 Y2) birer numara ile gösterilmesiyle akış tablosuna dönüştürülür. Tabloda stabil olmayan durumlar alacakları stabil durumun numarası ile gösterilmiştir.
İleri Lojik Uygulamaları Ders Notu
14
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Yukarıdaki tabloların hepside birbirinin eşdeğeridir ve devreden elde edilmiştir. Akış tablosunu oluştururken önce stabil durumlar sırayla 1,2,3,4,5,6,7,8 rakamları ile oluşturuldu. Böylece 1=00,00 2=00,01 3=01,00 4=01,10, 5=11,11 6=11,10 7=10,01 ve 8=10,11 yerine kullanıldı. Burada ilk yazdıklarımız durumları, ikinci yazdıklarımız çıkışları ifade ediyor. Dikkat edilirse aynı durumda fakat farklı çıkışları olanlara farklı sayılar verildi. Örneğin 1 ve 2 nolu ifadelerde durumlar aynı, çıkışlar farklıdır. Aynı şekilde 3 ve 4, 5 ve 6, 7 ve 8 ifadelerinde de durumlar aynı, çıkışlar farklıdır. Tabloyu doldurmaya devam ettiğimizde hangi hücreyi dolduracak isek o hücrenin bulunduğu sütundan bir sayı seçtik ve ayrıca yukarıdaki geçiş tablosundaki değerlere sadık kalarak (çıkış değerlerini göz ardı ederek) uygun sayıları yerleştirdik. Örneğin 1 ve 2 yi yazdıktan sonraki yere 8 yazdık. Çünkü bu hücre 10 durumundadır ve 10 durumu 8 değerini taşıyor. Tablolar ile ilgili dikkat çeken hususlar: 1‐ Her satırda en az 1 tane kararlı durum vardır ve olmak zorundadır. 2‐ Her sütunda kararlı durum ifadelerinden başka ifade bulunamaz. 3‐ Biz bu sonuçları normal devreden elde ettiğimizden karşımıza normal sonuçlar çıktı. 4‐ Stabil olmayan durumların çıkışları bizi ilgilendirmemektedir. 5‐ Sayılarla ifade etmenin avantajı değişik çıkış veren aynı durumların farkının kolay gözükmesidir. Eğer biz bir devre yapmak isteseydik akış tablosunu biz oluşturacaktık ve bu durumda kararsız olan yerleri belirleyebilirdik. Yani kararlı durumdan, başka bir kararlı duruma geçiş sürecinde nerelerden gideceğini biz belirleyebilirdik. Örneğin 1 ve 2 yi yazdıktan sonraki yere 8 değilde yine o sütunun başka bir kararlı durumu olan 5 yazabilirdik. Fakat bu durumda o sütundaki 5 değerini 8 yapmamız gerekirdi. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ x1 x2 girişlerinin 00, 10, 11, 01, 00 olarak değişmesi durumunda z1 z2 çıkışları 01, 00, 10, 11, 01 değerlerini alacaktır. Girişlerin 00 olması durumunda sistem 1 durumundadır ve çıkışlar = 01 Giriş 10 yapıldığında sistem 1 durumundan, 4 durumuna geçecektir ve çıkışlar = 00 Giriş 11 yapıldığında sistem 4 durumundan, 5 durumuna geçecektir ve çıkışlar = 10 Giriş 01 yapıldığında sistem 5 durumundan, 7 durumuna geçecektir ve çıkışlar = 11 Giriş 00 yapıldığında sistem 7 durumundan, 1 durumuna geçecektir ve çıkışlar = 01
İleri Lojik Uygulamaları Ders Notu
15
Akış tablosu sıra sayısı minimumlaştırılmış akış tablosudur. Bu tablo her sırada yalnız bir tek stabil durum bulunan bir akış tablosu haline sokulabilir. Her stabil durum tek tek ele alınır. Bir anda yalnız 1 girişin değer değiştirebileceği gözönünde bulundurularak stabil olmayan durumlara alacağı stabil durumun numarası verilir. Bu akış tablosunda verilen çıkış bu stabil durumlardaki çıkışlardır. Bu akış tablosuna primitif akış tablosu denir. Problemin sözle ifadesi verildiğinde elde edilecek ilk akış tablosu böyle bir tablo olacaktır.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Tablonun nasıl oluşturulduğunun izahı: 1‐Bu tabloyu doldururken önce stabil durumları işaretleyip yazıyoruz. Akış tablosunun 00 sütununa baktığımızda 1 ve 3 stabil durumları olduğunu görürüz. Aynı stabil durumları Primitif akış tablosunun 00 sütununda uygun yerlere yazıyoruz. 01 sütunu için 2 ve 7, 11 sütunu için 5 ve 8, 10 sütunu için 4 ve 6 stabil durumlarını eşdeğer sütunda uygun yerlere yazıyoruz. (Uygun yerler y=Y olan yerlerdir.) 2‐Aynı anda 2 giriş değer değiştiremeyeceği için bu kısımlara çizgi koyuyoruz. Yani stabil durumlara komşu olmayan yerlere çizgi koyuyoruz. 3‐Stabil olmayan durumları nereden geçerek gideceğini belirlemek için yazdık. Normalde bunu biz belirleyeceğiz ama burada akış tablosuna bakarak yazdık. Örneğin primitif akış tablosunun 1. satırını inceleyelim: 1 stabil durumunun yanına 2 yazdık çünkü akış tablosuna baktığımızda 00 ‘dan 01’e geçtiğimizde 2 stabil durumuna gitmektedir. Bir yana çizgi attık çünkü böyle bir değişiklik olmayacak. Bir yana 4 yazdık çünkü akış tablosuna baktığımızda 00 ‘dan 10’a geçtiğimizde 4 stabil durumuna gitmektedir. 4‐Pratik yöntem: Akış tablosuna baktığımızda
1 stabil durumunun olduğu satırda sırayla 1,2,8,4 var. Komşu olmayan alınmayınca 1,2,‐‐,4 oluyor. 2 stabil durumunun olduğu satırda sırayla 1,2,8,4 var. Komşu olmayan alınmayınca 1,2,8,‐‐ oluyor. 3 stabil durumunun olduğu satırda sırayla 3,2,5,4 var. Komşu olmayan alınmayınca 3,2,‐‐,4 oluyor. 4 stabil durumunun olduğu satırda sırayla 3,2,5,4 var. Komşu olmayan alınmayınca 3,‐‐,5,4 oluyor. 5 stabil durumunun olduğu satırda sırayla 3,7,5,6 var. Komşu olmayan alınmayınca ‐‐,7,5,6 oluyor. 6 stabil durumunun olduğu satırda sırayla 3,7,5,6 var. Komşu olmayan alınmayınca 3,‐‐,5,6 oluyor. 7 stabil durumunun olduğu satırda sırayla 1,7,8,6 var. Komşu olmayan alınmayınca 1,7,8,‐‐ oluyor. 8 stabil durumunun olduğu satırda sırayla 1,7,8,6 var. Komşu olmayan alınmayınca ‐‐,7,8,6 oluyor. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
İleri Lojik Uygulamaları Ders Notu
16
Sıra sayısı mimimumlaştırılmış akış tablosunda a,b,c,d ile gösterilen sayılar mevcut durumlardır (y1 y2). Buna göre bir sonraki durumları mevcut durumlar cinsinden aşağıdaki gibi elde edebiliriz. Bu tabloya Durum Tablosu diyeceğiz.
Yukarıdaki tabloda stabil durumlarda gelen durumlar mevcut durumun aynıdır. Bu tabloya iç durum sayısı minimumlaştırılmış durum tablosu denir. Mealy tipi durum tablosu da denir. Bu tabloya karşı düşen durum diyagramı aşağıdaki gibidir.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Tablo 1,2,3,4,5,… şeklinde sayılarla ifade ediliyorsa aynı durum fakat farklı çıkışlar tek bir sayıyla gösteriliyor demektir. Tablo a,b,c,d,… şeklinde harflerle ifade ediliyorsa farklı çıkışlara ait aynı durumlar aynı harflerle ifade edilir. Yani a stabil durumundan iki veya daha fazla olabilir. Bu gösterimde genelde çıkışlarda verilir. Özetle 1,2,3,4,5 … gösteriminde sayılar birbirinden benzersizdir. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
İleri Lojik Uygulamaları Ders Notu
17
Yukarıda verilen primitif akış tablosu primitif durum tablosuna dönüştürülebilir.
Bulduğumuz tüm tabloları bir arada görmek istersek;
Bu şekilde verilen tabloda stabil durumlar verilmesede tespit edilebilir. Çıkış değerlerinin bulunduğu hücrelerin eşdeğeri olan hücre stabil durumun olduğu yeri gösterir. Ayrıca bu tablo primitif akış tablosuna çok benzemektedir. Problemin sözel ifadesi verildiğinde (yani sentez yaparken) ya Primitif Akış Tablosu veya Primitif Durum Tablosu ilk olarak elde edilir.
İleri Lojik Uygulamaları Ders Notu
18
Primitif durum tablosu veya primitif durum diyagramı da problemin sözle ifadesinden elde edilecek ilk tablo veya diyagramdır. Temel modda çalışan asenkron ardışıl devrelere ait primitif durum tablosunun özelliği her sırada 1 tane, mevcud duruma eşit, gelen durumun bulunmasıdır. Senkron ardışıl devrelerde durum değiştirme yalnız darbe esnasında meydana gelir. Darbe geçer geçmez devre stabil bir durum alır. Bu stabil durumların her biri girişlerinden bağımsız olarak, darbenin bulunmadığı kolona tekabül eden mevcut durum kolonunda bulunur. Stabil durumların tümü mevcud durum kolonunda bulunduğundan, mevcud durumun, gelen duruma eşit olması şart değildir. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Biz burada tersten giderek devreyi analiz etmeye çalıştık. Normalde bize sözel bir soru sorulur ve biz o devreyi tasarlamak için gerekli işlemleri yaparız. Sözel soru sorulduğunda önce Primitif Durum Tablosu veya Primitif Akış tablosu oluştururuz. Bu iki tablo arasında pek fark olmadığını görebilirsiniz. Daha sonra bu tabloları minimumlaştırılmış hallerine çevireceğiz ve devre için kullanacağız. Minimumlaştırmak için önce açık ve gizli eşdeğerliklere bakacağız, sonra psödo eşdeğerlik varmı diye bakacağız, sonra sıra birleştirme işlemi yapacağız. Eşdeğerliklere bakarken çıkışların aynı olması önemlidir ama sıra birleştirmede çıkışlar dikkate alınmaz. Eşdeğerlik aslında aynı çıkışı veren farklı durumların birleştirilerek tek bir durum haline getirilmesidir. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
İleri Lojik Uygulamaları Ders Notu
19
Asenkron Ardışıl Devre Analiz Basamakları
Asenkron Ardışıl Devre Sentez Basamakları
İleri Lojik Uygulamaları Ders Notu
20
ASENKRON ARDIŞIL DEVRE SENTEZİ Bize sözel verilen bir problemde önce primitif akış tablosunu elde edeceğiz. Aşağıda örnek bir Primitif Akış Tablosu verilmiştir. Primitif Akış Tablosu yerine Primitif Durum Tablosuda kullanılabilir.
Primitif Akış Tablosunda Sıra Sayısının Minimumlaştırılması Primitif Akış Tablosundaki sıra sayısının minimumlaştırılması 2 kısımda yapılır. Birinci kısımda tablodaki eşdeğer stabil durumlar aranır. İkinci kısımda sıra birleştirme işlemi yapılır. 1 Eşdeğer Stabil Durumların Bulunması:
Primitif Akış Tablosunun açık ve gizli eşdeğer stabil durumlarının tespitinde eşdeğer stabil durum kavramından yararlanılır. Bir asenkron ardışıl devrenin aynı giriş kombinasyonunda bulunan i ve j stabil durumlarının eşdeğer olabilmesi için her 2 stabil duruma da uygulanabilen bir giriş dizisinde i ve j stabil durumlarından hangisi başlangıç durumu olarak alınırsa alınsın elde edilen çıkış dizisinin aynı olması lazımdır. Bu koşul gerçekleştiğinde 2 stabil durum birbirinden ayırt edilemeyecektir. Uygulanacak giriş dizilerinin ilk elemanı, stabil durumların bulunduğu giriş kombinasyonu olacağından, buradaki çıkışların, stabil durumdaki çıkışların aynı olması lazımdır. Aynı giriş kombinasyonunda bulunan ve aynı çıkışı veren stabil durumlar 3 şekilde eşdeğer olabilir. (Aynı giriş kombinasyonunda bulunan = Primitif akış tablosunda aynı sütunda bulunan) 1‐ Açık eşdeğer stabil durumlar 2‐ Gizli eşdeğer stabil durumlar 3‐ Psödo eşdeğer stabil durumlar Açık eşdeğer stabil durum aşağıdaki gibidir:
İleri Lojik Uygulamaları Ders Notu
21
Gizli eşdeğer stabil durumda stabil durumlar ve çizgiler alt alta gelecek ve eşit olmayanlara acaba aralarında eşdeğerliğe engel bir durum varmı diye bakılacak.
Aşağıda verilen primitif akış tablosundaki açık ve gizli eşdeğerleri bulalım.
Eğer örneğin 7 ve 8 in çıkışları aynı olsaydı 1‐2 ve 5‐6 gizli eşdeğer olacaktı ki açık eşdeğerlikten dolayı 1=2 ve 5=6 olduğunu görebiliyoruz.
Muhafaza edilen stabil durumlardan, ortadan kaldırılmış bulunan stabil durumlara bir geçiş varsa, buralara kaldırılan stabil durumların yerini alan stabil durumun numarasını vermek gerekir. Yukarıda incelediğimiz örnekte 2 ve 6 stabil durumlarını eşdeğerlikten dolayı kaldırmıştık. Bunların yerine 2 için eşdeğeri olan1 değerini ve 6 için eşdeğeri olan 5 değerini kullanmalıyız.
Gizli eşdeğer stabil durumlarda akış tablosunun aynı kolonunda (aynı giriş kombinasyonunda)
bulunur. Bu stabil durumlardaki çıkışlarda aynıdır. Birinde 1 giriş kombinasyonuna müsaade edilmezse diğerinde de müsaade edilmemiştir yani primitif akış diyagramında çizgiler alt altadır. Gizli eşdeğerlikte,
1 ve 2 sıraları açık eşdeğer. 5 ve 6 sıraları açık eşdeğer. Bu yüzden 2 ve 6 ortadan kaldırılabilir. Ortadan kaldırılabilen stabil durumlara Reduntant Stabil Durum denir. 3 ve 4 ün çıkışları farklı 7 ve 8 in çıkışları farklı Çıkışları farklı olanlar hiçbir şekilde eşdeğer olamaz.
İleri Lojik Uygulamaları Ders Notu
22
açık eşdeğerlikten farklı olarak bazı değer kombinasyonlarında yani bazı kolonlarda ulaşılacak stabil durum numaraları farklı olur. Bahis konusu olan bu 2 stabil durumun eşdeğer olabilmesi için farklı olarak görünen stabil durumların da kendi arasında eşdeğer olması şarttır. Ancak bu koşul gerçekleştiğinde adı geçen durumlar eşdeğer olur. Özet olarak; 1‐ Stabil durumlar aynı kolondadır. 2‐ Çıkışlar aynıdır. 3‐ Bir stabil durum için bir kolonda çizgi varsa, diğer stabil durum için de aynı kolonda çizgi vardır. 4‐ Bazı kolonlara ulaşılacak stabil durum numaraları birbirinden farklı olabilir. 5‐ Gizli eşdeğerlik için farklı numaralar ile belirtilen bu durumlarında eşdeğer olma şartı aranır. Örneğin bu durumlar daha önceden açık eşdeğer olabilir. O zaman gizli eşdeğerlik vardır deriz. Veya eşdeğer olmadığı daha önceden tespit edilebilir. O zaman eşdeğerlik yok deriz.
Gizli eşdeğer stabil durumlarda ikiden fazla olabilir. Burada da isteğe göre gizli eşdeğer stabil durumlardan biri muhafaza edilerek diğerleri ortadan kaldırılabilir. Kaldırılanların hepsi muhafaza edilenle temsil edilir. Açık veya gizli eşdeğer stabil durumları sistematik olarak ortaya çıkarmak için şu metod uygulanır.
Her olası giriş için tamamen aynı çıkışı vermeleri ve aynı sonraki durumlara veya eşdeğer sonraki
durumlara geçmeleri halinde, 2 durumun eşdeğer olduğunu söyleriz. Eşdeğer durumların tipik özelliği şudur: Eğer (1,2) (5,6) yi içeriyorsa ‐yani 1,2 durumlarından 5,6 durumlarına gidilebiliyorsa‐ ve eğer (5,6) (1,2) yi içeriyorsa ‐yani 5,6 durumlarından 1,2 durumlarına gidilebiliyorsa‐ , bu durumda bu iki durumlar çifti eşdeğerdir. Yani 1 ile 2 eşdeğerdir, 5 ile 6 eşdeğerdir.
ÖRNEK: Aşağıda verilen Primitif Akış Tablosuna bakarak eşdeğer durumları bulalım ve tabloyu sadeleştirelim.
Aynı sütundaki stabil durumlara bakmalı ve bunlardan da çıkışları aynı olanlar bulunmalı. Çizgi ifadeleri alt alta gelmeli. Biz bu işlemi bir metod dahilinde içerme tablosu kullanarak yapacağız.
İleri Lojik Uygulamaları Ders Notu
23
Açık veya gizli eşdeğerleri bulmak için içerme tablosu yapalım:
Tabloyu soldan sağa doğru 1‐2, 1‐3, … sırasıyla sonra 2‐3, 2‐4,… sırasıyla doldurmak daha iyi olacaktır. Açık eşdeğer olan yerlere tik koyalım. Gizli eşdeğer olma durumu olan yerlerdeki stabil durumları yan yana yazalım. Eğer gizli eşdeğer değilse yanına çarpı atalım. Zaten hiç eşdeğerlik sözkonusu olmayan yerlere de çarpı atalım. Hatırlamak gerekirse hiç eşdeğerlik olmayacak durumlar, stabil durumların alt alta gelmediği, alt alta gelse bile çıkışların farklı olduğu veya çizgilerin farklı olduğu durumlar idi. Stabil durumların alt alta geldiği durumlar 1‐3‐4, 2‐5‐10, 6‐7 ve 8‐9 durumlarıdır. Bunlar dışındakilere direkt çarpı atabiliriz. Ayrıca 8‐9 durumunda çıkışlar farklıdır buraya da xx atabiliriz. Burada yok ama eğer çizgilerin çakışmadığı durumlar olsaydı onlara da direkt xx atabilirdik.
1‐3‐4, 2‐5‐10 ve 6‐7 stabil durumlara ait çıkışlar aynı olduğundan bu durumlardaki değerlere bakabiliriz. 6‐7 birbirinin aynısı olduğundan açık eşdeğerlik vardır. Buraya direkt “tik” atabiliriz. Diğer yerlerde ise karşı düşen değerleri yazıyoruz.
Açık eşdeğerlikten dolayı 6‐7 eşdeğer. 6‐7 eşdeğerlerini içeren 2‐10 da eşdeğer oluyor. 2‐10 eşdeğerlerini içeren 3‐4 de eşdeğer oluyor. Çıkışları farklı olduğundan 8‐9 eşdeğer değil. Bu yüzden 8‐9 içerenler de eşdeğer olmaz. Ama bizim tablomuzda 8‐9 içeren yok. Kalanlara bakalım. 1‐3 ün eşdeğer olması için 2‐5 in eşdeğer olması lazım, 2‐5 in eşdeğer olması için 1‐3 ün eşdeğer olması lazım. Bu zaten eşdeğerlik tanımı. Bu yüzden 1‐3 eşdeğerdir. 2‐5 eşdeğerdir. 1‐3 ve 6‐7 eşdeğerlerini içeren 5‐10 eşdeğer olur. 5‐10 eşdeğerlerini içeren 1‐4 eşdeğer olur. xx olmayanlar eşdeğer olmuş olur.
İleri Lojik Uygulamaları Ders Notu
24
Max. eşdeğer cümleler gurubu içerme tablosuna bakılarak kolaylıkla bulunabilir.
Max. eşdeğer durumlar cümlesi şöyle yazılabilir: (1‐3‐4), (2‐5‐10), (6‐7) (3‐4) ve (5‐10) eşdeğerleri zaten (1‐3‐4) ve (2‐5‐10) ‘un içinde olduğundan tekrar yazmak gerekmez. Çünkü (1‐3‐4) eşdeğerlikleri (3‐4) eşdeğerliğini örtmektedir. Aynı şekilde (2‐5‐10) eşdeğerlikleri (5‐10) eşdeğerliğini örtmektedir. Sonuçta eşdeğer durumları eşdeğeri ile temsil ettiğimizde 3 durum kalır. 1‐3‐4 eşdeğer olduğundan, 3‐4 stabil durumları ortadan kaldırılıp yerine 1 yazılabilir. 2‐5‐10 eşdeğer olduğundan, 5‐10 stabil durumları ortadan kaldırılıp yerine 2 yazılabilir. 6‐7 eşdeğer olduğundan, 7 stabil durumu ortadan kaldırılıp yerine 6 yazılabilir. Böylece aynı çıkışları veren farklı yolları atmış olduk. İndirgenmemiş tabloda farklı durumlardan (yollardan) geçerek aynı çıkışa ulaşıyor idik. İndirgeme yapınca çıkışa giden tek yol yaptık. Böylece stabil durum sayısı daha az olan fakat her sırada tek stabil durumu bulunan bir primitif akış tablosu elde edilir.
İleri Lojik Uygulamaları Ders Notu
25
Açık ve gizli eşdeğer varmı diye baktıktan sonra psödo eşdeğer varmı diye bakabiliriz. Bizim örneğimizde psödo eşdeğer bulunmamaktadır. Psödo eşdeğerine bakılırken çizgilerin alt alta gelmesi dikkate alınmaz. Ama çıkışların aynı olmasına dikkat edilir.
2 Primitif Akış Tablosunda Sıra Birleştirme
Sıra birleştirme işleminin esası yalnız giriş değişikliği için birbirinden ayırd edilebilecek stabil durumları bir sıraya taşımaktır. Çıkışlara bakmaksızın giriş kombinasyonlarında birbirine ters düşmeyen durum numaralarını ihtiva eden sıraları birleştirmekle olur. Bu işlem şu kurallara göre yapılır:
1‐ Primitif akış tablosunun 2 sırası, aynı kolonlarda görülen durum numaraları aynı veya birinde çizgi,
birinde durum numarası veya her ikisinde de çizgi varsa (durum numaraları arasında çelişki yok demektir) birleştirilebilir.
2‐ Aynı kolonda olmak üzere, bir sırada stabil durum, diğer sırada o stabil durumun numarası varsa,
birleştirilmiş sıraya stabil durum, bir sırada stabil durum veya hangi stabil duruma ulaşacağını gösteren bir durum numarası, diğer sırada çizgi varsa birleştirilmiş sıraya stabil durum veya durum numarası, her 2 sırada çizgi varsa, birleştirilmiş sıraya çizgi gelir.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU:Bu işlemde çıkışlara bakmıyoruz. Çünkü çıkışlar aynı olsa idi zaten bir önceki adımda eşdeğer olur ve birleşirdi. Kurallar aslında şunu diyor: Karşılaştırdığımız 2 satırdan alt alta olanlara bakıyoruz. Her ikisinde aynı durum numaraları olabilir. (Biri stabil olan biri olmayan bile olsa.) Her ikisinde çizgi olabilir. Her ikisinin birinde çizgi, birinde numara olabilir. Hatta birinde stabil durum, diğerinde çizgi olabilir. Ayrıca bu aşamada gelmeden önce eşdeğer durumların elendiğini ve kalanların eşdeğer olmadığını unutmayınız. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
İleri Lojik Uygulamaları Ders Notu
26
Primitif akış tablosunda hangi sıraların birleştirilebileceğini görmek için sıra birleştirme diyagramı (merger) denilen bir diyagramdan yararlanılır. Bunun için eşdeğer stabil durumlardan arındırılmış primitif akış tablosunun her sırası bir nokta ile gösterilir. Her sıra kendi altındaki sıralarla karşılaştırılarak birleştirilip birleştirilemeyeceği kontrol edilir. Birleştirilebiliyorsa, bu numaralara ait noktalar bir çizgi ile birleştirilir. Bu şekilde elde edilen diyagramdan minimum sıra sayısında bir akış tablosu elde edilebilmesi için hangi sıraların birleştirilmesi gerektiğine karar verirlir. Her sıra yalnız 1 defa temsil edilmiş olur.
Tüm stabil durumları sırayla diğerleriyle karşılaştırmak gerekmektedir. Tabloya baktığımızda 1‐2 birleşmez çünkü 5≠6 1‐3 birleşebilir. 1‐4 birleşmez çünkü 5≠6 1‐5 birleşebilir. 1‐6 birleşemez çünkü 1≠2 ve 5≠6
3‐4 birleşebilir. 3‐5 birleşebilir. 3‐6 birleşmez çünkü 1≠2 4‐5 birleşmez çünkü 5≠6 4‐6 birleşebilir.
2‐3 birleşemez çünkü 1≠2 2‐4 birleşebilir. 2‐5 birleşemez çünkü 1≠2 ve 5≠6 2‐6 birleşebilir.
5‐6 birleşmez çünkü 1≠2 ve 5≠6 Birleştirilebilenler: 1‐3, 1‐5, 2‐4, 2‐6, 3‐4, 3‐5, 4‐6
Diyagramda hiçbir nokta açıkta kalmayacak şekilde bir seçim yaparsak 1‐5‐3 ve 2‐4‐6 seçebiliriz.
Böylece 1‐3‐5 değerleri aynı sırada yazılabilir. Aynı şekilde 2‐4‐6 değerleri aynı sırada yazılabilir.
İleri Lojik Uygulamaları Ders Notu
27
Bunu yaptığımızda tablomuz 2 sıralı hale dönüşür.
Örnek vermek açısından seçimi şöyle de yapabilirdik.
ÖRNEK: Aşağıda eşdeğer stabil durumları bulunmayan Primitif Akış Tablosu’na bakarak sıra birleştirme işlemini yapınız.
Bu şekilde bir seçim yaptığımızda yine bütün noktaları almış olurduk ama 2 sıra yerine 3 sıra olurdu. Çünkü 1‐5 aynı sırada, 2‐6 aynı sırada ve 3‐4 aynı sırada yazılabilirdi. Yukarıda yaptığımız seçim daha uygun olan seçimdir.
İleri Lojik Uygulamaları Ders Notu
28
Tabloyu incelersek; 1‐2, 1‐9, 2‐6, 2‐8, 2‐9, 6‐8 birleşebilir, diğerleri birleşemez. Tüm noktaları kapsayacak şekilde seçim yaparsak 1‐9 ve 2‐6‐8 şeklinde seçim yapabiliriz. Yani 1‐9 aynı sırada yazılabilir. 2‐6‐8 aynı sırada yazılabilir. Böylece tablo 2 sıralı hale dönüşür.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Çıkış değerleri yazılırken önce stabil durumdaki çıkışlar, uygun giriş değerlerine karşılık gelen yerlerine yazıldı, sonra diğer çıkışlar Primitif Akış Tablosuna bakılarak yazıldı. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ Tüm noktaları kapsayacak seçimi şu şekilde de yapabilirdik: 1‐2‐9 ve 6‐8 Bu durumda yine 2 satır olurdu.
Öğrenci Notu: 1,2,3,4,5,6 sayılarını sırayla bir daire oluşturacak şekilde yazmak gerekiyor.Seçim yaparken üçgen, dörtgen, beşgen gibi seçimler yapılabiliyor. Birbirini kesen çizgilerle seçim yapılamaz. Örneğin şekil yandaki gibi olsaydı 1‐5‐6‐4 seçimi yapılamazdı. 1‐5, 4‐6 ve 2‐3 şeklinde seçim yapmak doğru olurdu. 5 ile 6 nın yerlerini değiştirip kapalı bir şekil elde edilebilir ama bu değişiklik yapılamaz.
İleri Lojik Uygulamaları Ders Notu
29
DURUM SAYISININ MİNİMUMLAŞTIRILMASI KURALLARI Primitif Durum Tablosundaki durum sayısı, bağımsız ve genel olarak nasıl minimumlaştırılabilir?
Bunun için bazı kavramların bilinmesi gereklidir. Bu kavramları verirken Durum Tabloları tam olarak belirlenmiş ve tam olarak belirlenmemiş diye ikiye ayrılacaktır.
Tam Olarak Belirlenmiş Durum Tablolarında Durum Sayısının Minimumlaştırılması
Hem gelen durumlar hem de mevcud durumlar tam olarak belirlenmiştir. λ(q,x) q durumuna x girişi uygulandığında elde edilen çıkışı (yani λ çıkış değerini) δ(q,x) ise q durumuna x girişi uygulandığında gelen durumu (yani δ gelen durumu) gösteriyor olsun.
Bu durum tablosuna ait q ve p durumlarının eşdeğer olabilmesi için, p durumuna x giriş takımının
değer kombinasyonlarından oluşan x1, x2, x3 … xn gibi herhangi bir giriş dizisi uygulandığında elde edilen çıkış dizisi, q durumuna aynı giriş dizisi uygulandığında elde edilen çıkış dizisiyle aynı ise p ve q durumları eşdeğerdir. (Özetle aynı giriş kombinasyonuna aynı çıkışı veren durumlar eşdeğerdir.)
λ(p,x x1,x2,…xn) = λ(q,x x1,x2,…xn) ise p eşdeğerdir q olur.
Bunun gerçekleşmesi için x giriş takımının her kombinasyonunda 1) λ(p,x) = λ(q,x) 2) δ(p,x) = δ(q,x) koşullarının sağlanması gerekli ve yeterlidir.
ÖRNEK: Aşağıda tam olarak belirlenmiş olarak verilen Durum Tablosunu kullanarak indirgeme işlemini gerçekleştiriniz.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: Durum Tablosuna baktığımızda stabil durum olmadığı görülmeltedir. Yani bu sistem temel modda çalışan asenkron devreye bir örnek olmamaktadır. Bu yüzden çıkış ifadeleri her 2 giriş değeri için de yazılmıştır. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
İleri Lojik Uygulamaları Ders Notu
30
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ Hatırlatma: İçerme tablosu oluşturulurken aynı çıkışları veren durumlara bakıyor idik. Farklı çıkışları verenlerin eşdeğer olmadığı bilgisi burada etkin bir bilgidir. Aynı çıkışı veren durumlar şu şekildedir: 00 çıkışını veren durumlar 1‐2‐5 durumlarıdır, 10 çıkışını veren durumlar 3‐4‐6‐7‐8 durumlarıdır. Tabloda zaten başka farklı bir çıkış durumu gözükmemektedir. 1‐2‐5 i bir gurup, diğerini başka bir gurup olarak düşünecek olursak sayıların biri bir guruptan, diğeri diğer guruptan olduğunda eşdeğer değildir hemen diyebiliriz. Örneğin 2≠7, 1≠3, 2≠4, 5≠3, 1≠4, 1≠8 vb. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU:İçerme tablosunu incelediğimizde 1‐2 de 3‐6 var, 3‐6 da 1‐2, 4‐8 var. 4‐8 e bakmamız lazım. 4‐8 de 1‐5 var, 1‐5 de 4‐8, 3‐7 var. 3‐7 ye bakmamız lazım. 3‐7 de 4‐8, 1‐5 var, 4‐8 de 1,5 var demekki 3=7, 4=8, 1=5 diyebiliriz. Yukarı doğru gidersek 3=7 olduğundan 4=8, 1=5 (zaten olmuştu) 4=8 olduğundan 1=2, 3=6 diyebiliriz. Devam edersek; 1‐5 de 4‐8, 3‐7 var 4=8, 3=7 bulmuştuk. 1=5 olur. Bunu zaten bulmuştuk. Eğer bulmamış olsaydık (1‐5 de 4‐8, 3‐7 var, 4‐8 de 1‐5 var, 3‐7 de 1‐5 var demekki 1=5, 4=8, 3=7) 2‐5 de 4‐8, 6‐7 var, 4‐8 zaten eşdeğerdi. 6‐7 de 2‐5 var, demekki 2=5, 6=7 3‐4 de 1‐8 var. 1‐8 çıkışları farklı eşdeğer değil. 3‐4 eşdeğer olmaz. 3≠4, 1≠8 3‐6 zaten eşdeğerdi. 3‐7 de 4‐8, 1‐5 var, 4=8 ve 1=5 bulmuştuk, demekki 3=7 diyebiliriz. Bunu zaten bulmuştuk. 3‐8 de 5‐8 ve 1‐4 var, 1≠4 olduğundan 3≠8 olur. 4‐6 da 1‐4 ve 2‐8 var, 1≠4 olduğundan 4≠6 olur. 4‐7 de 1‐4 ve 5‐8 var, 1≠4 olduğundan 4≠7 olur. 4‐8 zaten eşdeğerdi. 6‐7 zaten eşdeğerdi. 6‐8 de 2‐4 ve 4‐5 var, 2≠4, 4≠5 olduğundan 6≠8 olur. 7‐8 de 4‐5 var, 4≠5 olduğundan 7≠8 olur. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ Max. eşdeğer durumlar cümlesini bulmak için tabloyu incelersek; 1 sütununda 1‐2‐5 2 sütununda 2‐5 3 sütununda 3‐6‐7 4 sütununda 4‐8 6 sütununda 6‐7 olduğunu görürüz. Ayrıca 2‐5 ve 6‐7 eşdeğerlikleri 1‐2‐5 ve 3‐6‐7 eşdeğerlikleri tarafından kapsanmaktadır. Buna göre maksimum eşdeğer durumlar cümleleri: (1‐2‐5), (3‐6‐7), (4‐8) olur. Sonuçta eşdeğer durumları eşdeğeri ile temsil ettiğimizde 3 durum kalır. M = (1,2,5) (3,6,7) (4,8) ve S = (1,2,3,4,5,6,7,8) M S’nin bölünmesidir.
İleri Lojik Uygulamaları Ders Notu
31
Maksimum eşdeğer durumlar cümleleri arasında müşterek bir eleman yoktur. Bu cümle aynı zamanda kapalılık özelliğine sahiptir. Çünkü bu cümlenin bir elemanı içinde bulunan durumlara herhangi bir giriş kombinasyonu uygulandığında elde edilecek gelen durumlar, yine bu cümlenin bir elemanı içinde bulunur.
Örneğin M cümlesinin bir elamanı içindeki 1,2,5 durumlarına x=0 girişi uygulandığında gelen durum olarak görünen 4,8 durumları yine M cümlesinin bir elemanı içinde bulunmaktadır.
Maksimum eşdeğer durumlar cümlesinin her biri 1 durumla temsil edilirse, durum sayısı minimumlaştırılmış bir durum tablosu elde edilmiş olur..
1‐2‐5 eşdeğer olduğundan, 2‐5 durumları ortadan kaldırılıp yerine 1 yazılabilir. 3‐6‐7 eşdeğer olduğundan, 6‐7 stabil durumları ortadan kaldırılıp yerine 3 yazılabilir. 4‐8 eşdeğer olduğundan, 8 stabil durumu ortadan kaldırılıp yerine 4 yazılabilir. Böylece durum sayısı minimumlaştırılmış durum tablosu elde edilir.
Tam Olarak Belirlenmemiş Durum Tablolarında Durum Sayısının Minimumlaştırılması
Bu çeşit durum tablolarında çıkışlar ve gelen durumlar tam olarak belirlenmemiştir. Bu durum tablolarının durum sayısının minimumlaştırılmasında, yeni kavram ve tanımlara ihtiyaç vardır. Yukarıda eşdeğer durumlardan bahsetmiştik, burada uygun düşenler kavramını kullanacağız. Tanım 1: Bir q durumuna uygulanabilen giriş dizisi x1, x2, xk+1 dizisinin q durumuna uygulanabilen bir dizi olması için bu dizinin uygulamasında rastlanacak gelen durumların belirlenmiş olması gerekir. Eğer giriş dizisinin bir elemanı uygulandığı zaman durum belirlenmemişse giriş dizisinin bundan sonraki elemanının hangi duruma uygulanacağı bilinemez.
İleri Lojik Uygulamaları Ders Notu
32
Tanım 2: Bir durum tablosunun p ve q gibi 2 durumunun uygun düşmesi için her 2 duruma uygulanabilen x1, x2, xk+1 gibi herhangi bir giriş dizisi için 2 çıkışında belirlendiği yerde λ[δ(p, x1,x2,…xk), xk+1] = λ[δ(q, x1,x2,…xk), xk+1] olmalıdır. Burada δ(p, x1,x2,…xk), p durumu başlangıç alınarak x1,x2,…xk giriş dizisi uygulandığı zaman elde edilen gelen durumu ifade eder. Teorem 1: Bir durum tablosunun p ve q gibi 2 durumunun uygun düşmesi için herhangi bir x girişi için ; 1‐ Her 2 çıkışta belirlenmişse eşit 2‐ Her 2 durumda belirlenmişse bu durumlarda uygun düşmelidir. Uygun düşen durumların teşkil ettiği max. cümleler yine bir tablo metoduyla tayin edilir. Böylece max. uygun düşenler cümlesi bulunur. Hiçbir durumla uygun düşmeyen bir durumun kendisi bir max. uygun düşenler cümlesi teşkil eder. Max. uygun düşen durumların teşkil ettiği cümle, durumlar cümlesinin bir bölünmesini teşkil etmez. Zira max. uygun düşenler cümleleri içinde bazı durumlar müşterek eleman olarak görülür.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ÖĞRENCİ NOTU: İçerme tablosunu inceleyecek olursak önce uygun düşmeyenlerin bulunması kolaylık sağlayacaktır. Uygun düşmeme için en belirgin özellik çıkışların belirli olması ve aynı olmamasıdır. Ayrıca kesin uygun düşenleri de belirlemek faydalıdır.
Tabloyu 1‐2, 1‐3, 1‐4 … 2‐3, 2‐4, … sırasıyla inceledik ve yukarıdaki sonuçları elde ettik. Tabloyu incelemeye devam edersek 5‐7 ninde uygun olmadığı görülür. 5‐7 uygun değilse 2‐8 uygun olmaz. 2‐8 uygun olmazsa 1‐7 uygun olmaz. Böylece ? kısım kalmaz. Sonuç tablosu yukarıda durum tablosunun yanında gözükmektedir. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
Burada çıkışların bazılarında çizgi olduğu görülmektedir. Eşdeğerlik için çıkışları aynı olanlara bakılıyor idi. Örneğin; Çıkışı 00 olan 2 nolu satır ile çıkışı 0 – olan 3 nolu satır çıkışları aynı gibi düşünülerek eşdeğerlik aranır.
İleri Lojik Uygulamaları Ders Notu
33
Max. uygun düşenler cümlesi için tabloya sütun olarak bakarsak;
Sonuçta max. uygun düşenler cümlesi: (2‐3‐6‐7), (4‐5‐8), (3‐4‐7) olur. Böylece (2‐3), (2‐6), (2‐7), (3‐4), (3‐6), (3‐7), (4‐5), (4‐7), (4‐8), (5‐8), (6‐7) ifadeleri (2‐3‐6‐7), (4‐5‐8), (3‐4‐7) grupları tarafından kapsanmış olur. (2‐3‐6‐7), (3‐4‐6‐7), (4,5,7,8) olarak seçmek düşünülebilir ama (3‐6) ifadesi hem (2‐3‐6‐7)’de hem (3‐4‐6‐7)’de bulunmaktadır. (3‐4‐6‐7)’den 6 kaldırılabilir. Aynı şekilde (4‐7) ifadesi hem (3‐4‐6‐7)’de hemde (4,5,7,8)’de bulunmaktadır. (4,5,7,8)’den 7 kaldırılabilir. (2‐3), (2‐6), (2‐7), (3‐6), (6‐7) ile (2‐3‐6‐7) oluşturuldu. (3‐4), (3‐7), (4‐7) ile (3‐4‐7) oluşturuldu. (4‐5), (4‐8), (5‐8) ile (4‐5‐8) oluşturuldu. Tanım 3: Bir T durum tablosunun P durumunun bir S durum tablosunun q durumunu örtmesi demek, q’ya uygulanabilen herhangi bir giriş dizisi, p ve q durumları başlangıç durumu alınarak, T ve S durum tablolarına uygulandığında, S durum tablosundaki çıkışların belirlendiği yerde, T durum tablosundan elde edilen çıkışların bu çıkışlara eşit olması demektir. Örneğin x1, x2, x3, x4, x5, x6, x7 giriş dizisi q1 q2 ye uygulanabilen bir giriş dizisi olsun. Bu dizi q1 q2 ve p başlangıç durumu alınarak S, T durum tablolarına uygulandığında elde edilen çıkış dizileri şekildeki gibi ise ;
T durum tablosunun p durumu, S durum tablosunun q1, q2 durumlarını örter. Aynı p durumu tarafından örtülen q1, q2 duurmlarının uygun düşen durumlar olduğu ispat edilebilir. Tanım 4: T durum tablosunun bir S durum tablosunu örtmesi demek, S deki her qi durumunun T deki bir pj durumu tarafından örtülmesi demektir. Teorem: Bir T durum tablosunun p durumu, S durum tablosunun qi ve qj durumlarını örtüyorsa qi ve qj durumları uuygun düşen durumlardır.
İleri Lojik Uygulamaları Ders Notu
34
Sonuç: Bir T durum tablosunun pi durumu S durum tablosunun Si durumlar cümlesini örtüyorsa bu Si cümlesi bir uygun düşenler cümlesidir. Tanım5: Uygun düşenler cümlelerinden oluşan bir grubun kapalı olması demek, bu grubu oluşturan herhangi bir uygun düşenler cümlesindeki durumlar örneğin [q1 q2 … qm] durumlarına her giriş kombinasyonu xi uygulandığı zaman elde edilen δ(q1, xi), δ(q2, xi), ……. δ(qm, xi) gibi gelen durumların grubun bir cümlesi içine düşmesi demektir. O halde düşüyorsa kapalıdır denir. Teorem: n durumlu tam olarak belirlenmemiş bir S durum tablosu için m adet uygun düşenler cümlesinden seçilen öyle bir grup seçilsin ki n durumdan her biri en az 1 defa bu uygun düşenler cümlelerinden birinde bulunsun ve m adet uygun düşenler cümlesinden oluşan grup kapalı olsun. Bu takdirde S durum tablosu p1, p2…. pm gibi m duruma sahip bir T durum tablosu tarafından örtülebilir. T durum tablosunun her bir durumu, S durum tablosunun uygun düşenler cümlelerinden oluşan bir grubu örter.
Teoremin amacı n durumlu durum tablosunun durum sayısını minimumlaştırmak olduğuna göre yapılacak şey S durum tablosunun bütün durumlarını ihtiva eden minimum sayıda uygun düşenler cümlelerinden oluşan kapalı bir grubun seçilmesidir. Bu gerçekleştirilirse, her uygun düşenler cümlesi bir p durumu ile örtmek suretiyle, S durum tablosuna ait minimum durum sayısında, bir T durum tablosu elde edilir. Maksimum uygun düşenler cümlelerinden oluşan grup, kapalı bir gruptur. Fakat maksimum uygun düşenler cümlelerinin sayısı minimum değildir. Hatta bunların sayısı bazen durum tablosun durum sayısından da fazla olabilir. Bu nedenle, maksimum uygun düşenler cümlelerinden oluşan kapalı grup ancak daha az sayıda uygun düşenler cümlelerinden oluşan kapalı bir grup bulunamadığı takdirde kullanılabilir. Orijinal durum tablosunun bütün durumlarını ihtiva eden, minimum sayıda uygun düşenler cümlelerinden oluşan kapalı bir grubun bulunması hususunda bazı yardımcı metodlar mevcut olmakla beraber, problemi tam olarak çözen bir metod henüz bilinmemektedir. Bunlar çoğu kez deneme ve görme yoluyla elde edilir.
ÖRNEK: Aşağıda tam olarak belirlenmemiş durum tablosunu kullanarak maksimum uygun düşenler cümlelerini bulunuz. (Tanım ve teoremlerin kullanılması)
Maksimum uygun düşenler cümlelerinin saptanması: Önce uygun düşen ikilileri yazalım: (a,b), (a,c), (a,e), (b,c), (b,d), (d,e) Birleştirilme ihtimali olanlar: (a,b,c,e), (b,c,d), (c,d), (d,e) Her ikiliyi 1 kez kullanmak koşuluyla bunlardan hangileri birleştirilebilir?
İleri Lojik Uygulamaları Ders Notu
35
(a,b), (b,c), (a,c) birleştirilerek (a,b,c) oluşturulur. (c,e) gibi bir ifade olsaydı (a,b), (b,c), (c,e) birleştirilerek (a,b,c,e) olabilirdi. Geriye (a,e), (b,d), (d,e) kaldı. Birleşme ihtimali (b,c,d) olabilirdi ama bunu oluşturacak ikili bulunmamaktadır. Eğer (c,d) olsa idi (c,d), (b,d) birleştirilerek (b,c,d) yapılabilirdi. Sonuçta uygun düşenler cümlesi; (a,b,c), (a,e), (b,d), (d,e) olur. Maksimum uygun düşenler cümleleri ve koşulları: (a,b,c) cümlesinden c durumu çıkarılırsa (a,b) kalır. (a,b) nin uygun düşmesini gerektirdiği durum çiftleri (b,c) ve (d,e) dir. (b,c) ve (d,e) uygun düşenler cümleleri olduğundan (a,b), (b,c), (d,e) grubu uygun düşenler cümlelerinden oluşan kapalı bir grup olur. Bu grupta, orijinal durum tablosundaki bütün durumlar, en az 1 defa temsil edilmektedir. Bu uygun düşenler cümlelerinden herbiri bir durumla örtülürse, orijinal durum tablosunu örten, 3 durumlu bir durum tablosu elde edilmiş olur. (a,b) P1 (b,c) P2 (d,e) P3 durumu ile örtülürse, durum sayısı minimumlaştırılmış durum tablosu olarak aşağıdaki tablo elde edilir.
Aynı şekilde deneme ile (a,b,c) den b çıkarılırsa (a,c), (a,e), (b,d) nin uygun düşmesi gerek. (a,c) P1 (a,e) P2 (b,d) P3 durumu ile örtülürse, durum sayısı minimumlaştırılmış durum tablosu olarak aşağıdaki tablo elde edilir.
İleri Lojik Uygulamaları Ders Notu
36
ÖRNEK: x1, x2 gibi 2 girişi ve z gibi 1 çıkışı olan, temel modda çalışan asenkron ardışıl devrede x2=1 olduğu zaman z=x1 x2=0 olduğu zaman z= bir önceki x1 değeri (gelinen konumdaki x1 değeri) (ÖĞRENCİ NOTU:Örneğin girişin 01 den 00 a çekilmesi durumunda x2=0 yapılmış olur. Bir önceki x1 değeri 0 değeridir. Benzer şekilde girişin 11 den 10 a çekilmesi durumunda x2=0 yapılmış olur. Bir önceki x1 değeri 1 değeridir.)
Bir anda yalnız 1 girişin değeri değiştirilebildiğine göre bellek elemanlı asenkron ardışıl devreyi tasarlayınız. ÇÖZÜM: İlk yapılacak iş primitif akış tablosunu oluşturmaktır. Aslında işin en zor kısmı burasıdır. Diğer kısımlar bir sistematik içinde yapılmaktadır.
ÖNEMLİ NOKTALAR • 2 adet giriş vardır ve bu 2 adet giriş ile 00,01,10,11 olmak üzere 4 çeşit yapılabilir. Örneğin 00’a 01 ve
10 dan geçiş olabilir. Aynı şekilde diğer 3 çeşide ikişer geçiş söz konusudur. Bunun sonucu olarak 8 durum sözkonusudur.
• Söz konusu durumlar 00, 01, 10, 11 durumlarıdır. • 4 adet durum için normalde 2 adet FF gerekir ama durum indirgeme yapıldığında FF sayısı azalabilir. Soruya göre tabloyu doldurmak için gerekli tüm geçişler şöyle olacaktır. 00 giriş değerine geçişler: (x2=0 yapan geçişler) 01 girişinden 00 girişine geçildiğinde x2=0 olur ve z=0 olur. 10 girişinden 00 girişine geçildiğinde x2=0 olur ve z=1 olur. (Burada x2=0 olduğundan bir önceki x1 değeri çıkış olarak alındı.)
01 giriş değerine geçişler: (x2=1yapan geçişler) 00 girişinden 01 girişine geçildiğinde x2=1 olur ve z=0 olur. 11 girişinden 01 girişine geçildiğinde x2=1 olur ve z=0 olur. (Burada x2=1 olduğundan şimdiki x1 değeri çıkış olarak alındı.)
11 giriş değerine geçişler: (x2=1yapan geçişler) 00 girişinden 11 girişine geçildiğinde x2=1 olur ve z=1 olur. 11 girişinden 11 girişine geçildiğinde x2=1 olur ve z=1 olur. (Burada x2=1 olduğundan şimdiki x1 değeri çıkış olarak alındı.) 10 giriş değerine geçişler: (x2=0 yapan geçişler) 00 girişinden 10 girişine geçildiğinde x2=0 olur ve z=0 olur. 11 girişinden 10 girişine geçildiğinde x2=0 olur ve z=1 olur. (Burada x2=0 olduğundan bir önceki x1 değeri çıkış olarak alındı.)
Temel modda çalışan 2 girişli asenkron ardışıl devre için tabloyu yapmaya bu şekilde başlanabilir.
2 giriş için 8 durum söz konusudur ve her satırda 1 stabil durum bulunmaktadır. Ayrıca giriş değerlerinin ikisinin birden durum değiştirmesi istenilmediğine göre bu yerlere çizgi konulabilir. Eğer her iki girişin birden durum değiştirmesi yasak olmasaydı 12 durum söz konusu olacaktı.
İleri Lojik Uygulamaları Ders Notu
37
Not: Önce 1 nolu stabil durumun olduğu 00 girişine ait hücreden başladık. Bu hücreye 1 değerini verdik. Aynı satırda başka bir hücreye 1 değerini vermek problem olmazdı. 1 nolu satıra 1 değerini verdiğimizden bu stabil durum olmuş oluyor. Sonuçta 8 adet durum, her satırda 1 adet stabil durum, her sütunda 2 adet stabil durum olmalıdır. Örneğin şu şekilde de olabilirdi ve hatta bu şekilde gösterim x2=1 olan ve x2=0 olan girişleri alt alta getireceğinden daha güzel bir gösterim olabilir.
Not: Şimdiden görülebilen bir durum varki oda 1‐2 ve 3‐4 satırlarının aynı çıkışa sahip olduğu ve boş yerlere yazılacak durumlar ile eşdeğer olacağıdır. Yani bu durumların indirgeneceği aşikardır.
1 nolu satırı 01’den 00’a giriş değişikliği için yazarsak çıkış z=0 olur. 2 nolu satırı 10’dan 00’a giriş değişikliği için yazarsak çıkış z=1 olur. 3 nolu satırı 00’den 01’e giriş değişikliği için yazarsak çıkış z=0 olur. 4 nolu satırı 11’den 01’e giriş değişikliği için yazarsak çıkış z=0 olur. 5 nolu satırı 01’den 11’e giriş değişikliği için yazarsak çıkış z=1 olur. 6 nolu satırı 10’dan 11’e giriş değişikliği için yazarsak çıkış z=1 olur. 7 nolu satırı 00’dan 10’a giriş değişikliği için yazarsak çıkış z=0 olur. 8 nolu satırı 11’den 10’a giriş değişikliği için yazarsak çıkış z=1 olur.
1 nolu satırı 00’dan 01’e giriş değişikliği için yazarsak çıkış z=0 olur. 2 nolu satırı 11’den 01’e giriş değişikliği için yazarsak çıkış z=0 olur. 3 nolu satırı 01’den 11’e giriş değişikliği için yazarsak çıkış z=1 olur. 4 nolu satırı 10’dan 11’e giriş değişikliği için yazarsak çıkış z=1 olur. 5 nolu satırı 01’den 00’a giriş değişikliği için yazarsak çıkış z=0 olur. 6 nolu satırı 10’dan 00’a giriş değişikliği için yazarsak çıkış z=1 olur. 7 nolu satırı 00’dan 10’a giriş değişikliği için yazarsak çıkış z=0 olur. 8 nolu satırı 11’den 10’a giriş değişikliği için yazarsak çıkış z=1 olur.
Boş kalan yerlere geçici stabil durumlar yazabiliriz. Bunu yaparken aynı sütundaki stabil durumlardan yazmak akıllıca bir davranış olur. Ayrıca alt alta gelen stabil durumlar için aynı sayıları yazmakta akıllıca olur, hatta gereklidir. Çünkü bunlar çıkışları farklı olsada aynı durumlardır.
İleri Lojik Uygulamaları Ders Notu
38
Eşdeğer durumların bulunması: Eşdeğer durumları bulurken çıkışları aynı olanlara ve stabil durumları alt alta gelenlere bakıyor idik. Burada 1‐2 ve 3‐4 ün açık eşdeğer olduğu görülmektedir. Bu durumda durum sayısı 6 ya düşer. 2 yerine 1 değeri ve 4 yerine 3 değeri yazılabilir. Hatta durum numaraları 6 durum için yeniden numaralandırılıp 1,2,3,4,5,6 şekline dönüştürülebilir.
Not: Eşdeğer durum için hem stabil durumların, hem çizgilerin alt alta gelmesi ve çıkışların aynı olması gerekiyordu. Not: Psödo eşdeğer için çizgilerin alt alta gelme şartını kaldırıyor idik. Bizim örneğimizde psödo eşdeğer bulunmamaktadır. Sıra birleştirme işlemi: Çıkışlara bakmaksızın, her satır için ayrı ayrı birleşebilecek durumları aşağıya doğru bakarak kontrol etmemiz gerekiyor. Stabil durumların ve çizgilerin alt alta gelmesi gerekmiyor ama farklı sayılar çakışmamalı. Birinde sayı birinde çizgi olabiliyor. Buna göre olabilecek geçişleri yazalım ve en uygun seçimi yapalım:
En uygun seçim için 1‐2‐3 seçemedik çünkü 6’nın açıkta kalmaması için 2‐6 yı seçmemiz zorunludur. 2 satırı her iki seçimde birden kullanılamaz. (1‐3), (2‐6) ve (4‐5) satırları birleştirilebilir.
İleri Lojik Uygulamaları Ders Notu
39
Sonuçta indirgenmiş durum tablosu 3 satırdan oluşur.
(1,3) durumunu “a” ile, (2,6) durumunu “b” ile, (4,5) durumunu “c” ile gösterecek olursak;
a=00, b=01, c=11 ile gösterirsek ve olmayan 10 durumuna keyfi değerler yazarsak;
İleri Lojik Uygulamaları Ders Notu
40
S1 ve R1 leri bulmak için y1 ve Y1 durumlarına bakarak S1 ve R1 için karno düzenliyoruz.
S2 ve R2 leri bulmak için y2 ve Y2 durumlarına bakarak S2 ve R2 için karno düzenliyoruz.
İleri Lojik Uygulamaları Ders Notu
41
Karnolardan çıkan fonksiyonlar;
Aynı şekilde çıkış için karno düzenlersek;
Fonksiyonlar S1=x1’.x2’ + y2 R1=x2 S2=x1 R2=x1’.x2 z=x1.y1 + x1’.y2
İleri Lojik Uygulamaları Ders Notu
42
Bu fonksiyonları gerçekleyen devreyi çizersek;
İleri Lojik Uygulamaları Ders Notu
43
DARBE MODLU ARDIŞIL DEVRELER 1. GİRİŞ
Darbe‐modlu ardışıl devreler, saat‐modlu ardışıl devrelerle benzer özellikler taşırlar. Bu devrelerde bellek olarak kullanılan FlipFlop ‘lara doğrudan saat işareti uygulanmaz ve en az bir darbe girişi olmak üzere diğer girişler darbe veya seviye olabilir. Şekil 1 ’deki devrede girişlerden hiçbiri tek bir periyodik kaynak oluşturmuyorsa, böyle devrelere “darbe‐modlu devre” denir. Darbe‐Modlu devrelerde, darbe girişleri çoğunluklar periyodik değildir ve zamanlama ile ilişkileri yoktur. Bu devrelerin sağlıklı çalışabilmesi için giriş darbelerinin FlipFlop tetikleyecek kadar geniş olması gerekir. Ayrıca bir anda yalnızca bir giriş hattı üzerinde darbe meydana gelmeli ve darbe girişleri oluştuğunda seviye girişleri kararlı olmalıdır. Çıkışlar, durum değişkenlerinin olduğu kadar girişlerinde fonksiyonu olmaz zorunda ise, çıkışlar giriş darbeleri ile durum değişkenlerini kapılanmasından elde edilen darbeler olur. Bu durumda durum değişkenleri ve girişlerin var olan her kombinasyonu için bir çıkış tanımlanabilir. Eğer çıkışlar yalnız durum değişkenlerinin fonksiyonu ise, bu çıkışlar giriş darbe anından ziyade giriş darbeleri arasındaki aralıklarda değeri bilinen seviyeler olacaktır; farklı olan çıkışların sayısı durumların sayısından fazla olmaz.
Burada FlipFlop’lar saatli veya saatsiz olabilirler. Saat hattına darbeler bağlanırsa, o eleman saatli FlipFlop olarak görev yapacaktır. Eğer saat girişi sürekli olarak lojik‐1 de tutulursa, o zaman FlipFlop yalnız data girişlerindeki darbelere cevap verecektir. JK FlipFlop’unun darbe tetiklemeli ve saatli çalışma için geçiş listeleri Şekil 2’de verilmiştir. Darbe tetiklemeli çalışmada saat yüksek iken J ve K girişlerinin darbelerin uygulanmasını vurgulamak için J veya K üzerindeki darbe için bir sembol kullanılır. Dikkat edilirse, darbe‐tetiklemeli moda JK FlipFlop’u bir RS FlipFlop‘u olarak davranır. Çünkü aynı anda hem J hem de K ‘ya darbe uygulanırsa ne olup biteceğini bilemeyiz. Saatli çalışmada ya J ve K’yı kontrol ederek ya da saatleme yapmayarak durum değişkenlerini (0→0 veya 1→1) tutabiliriz.
İleri Lojik Uygulamaları Ders Notu
44
2. DARBEMODLU DEVRE TASARIMI Bu deneyde X1 ve X2 gibi iki darbe giriş, tek bir Z seviye çıkışı olan X1 ve X2 girişleri aynı anda 1 olmayan ve aşağıdaki şartları sağlayan Darbe‐Modlu ardışıl bir devre tasarlanacaktır: X1 girişinden aldığı bir veya daha fazla sayıdaki X1 darbesinden sonra yalnız bir X2 darbesi ve bu X2 ‘nin arkasından tekrar bir X1 darbesi alıyorsa Z=1 çıkışını üretmektedir. Z=1 iken gelen X1 darbeleri çıkışı değiştirmemekte, fakat Z=1 iken X2 darbesinin gelmesi çıkışı Z=0 yapmaktadır. Verilenlerden yararlanarak devrenin Şekil 3 ’teki gibi durum diyagramı ve ardından da durum tablosu kurulur:
İleri Lojik Uygulamaları Ders Notu
45
Çıkışın seviye olması istendiğinden devre bir Moore türü devredir, yani çıkış işareti seviye olan işaretin kapılanmasından elde edilecektir. Bu örnekte seviye işaretlerinin yalnız FlipFlop çıkışları olduğuna dikkat ediniz. Dört durumlu bir devre ortaya çıktığı için iki JK FlipFlobu gerekmektedir. Uygun bir atama yapılırsa şekil 3 ’teki geçiş tablosu elde edilir. Bu geçiş tablosu yardımıyla uyarma tabloları bulunur. X1 ve X2 ‘nin tüm kombinasyonlarının bu tablolarda bulunmaması, her iki darbe girişinde aynı anda darbe bulunmamasından kaynaklanmaktadır. Tabloda bulunmayan kombinasyonlara karşı düşen JK değerleri “don’t care” dir. Şekil 4 ’teki tablolardan FlipFlopların JK uçlarına uygulanacak işaretlerin denklemleri :
ve durum tablosundan yararlanarak çıkışın ifadesi Z = Y1Y2 olarak bulunur. Soru: Tek sayıda X1 darbesi veya çift sayıda X2 darbesi alıyorsa Z=1 çıkışını üreten Darbe Modlu Ardışıl devreyi JK FlipFlop ‘larıyla tasarlayınız.
İleri Lojik Uygulamaları Ders Notu
46
KAYNAKLAR: 1. Emin ÜNALAN, Ardışıl Devreler (İTÜ) 2. M. Morrris Mano, Sayısal Tasarım (Bölüm 6 s:240‐246, Bölüm 9)