BLG311 Biçimsel Diller ve Otomatlar

Benzer belgeler
BİÇİMSEL DİLLER VE OTOMATLAR

(I) şimdiki. durum (S) belleği. saat. girşi

FORMEL DİLLER VE SOYUT MAKİNALAR. Hafta 2

Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans:

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

Otomata Teorisi (BİL 2114)

1 BAĞINTILAR VE FONKSİYONLAR

BÖLÜM 2 Biçimsel Dillerin Matematiksel Temelleri

Leyla Bugay Doktora Nisan, 2011

ARDIŞIL DEVRELER SENKRON ARDIŞIL DEVRELER

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

SEVİYE MODLU ARDIŞIL DEVRELER 1- GENEL TANITIM. KTÜ Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Sayısal Tasarım Laboratuarı

İÇİNDEKİLER. Mantık Kurallarının Elektrik Devrelerine Uygulanması... 14

Sonlu Durum ve Turing Makineleri

Tanım Bir X kümesi üzerinde bir karakter dizgisi (string) X kümesindeki. boş karakter dizgisi (null string) denir ve l ile gösterilir.

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

KARAKTER DİZGİLERİ, BAĞINTILAR, FONKSİYONLAR KESİKLİ MATEMATİKSEL YAPILAR

Y.Doç.Dr.Tuncay UZUN 6. Ardışıl Lojik Devreler 2. Kombinezonsal devre. Bellek. Bellek nedir? Bir bellek şu üç önemli özelliği sağlamalıdır:

HDL ile Gelişmiş Sayısal Tasarım (EE 425) Ders Detayları

Cebir Notları. Gökhan DEMĐR, ÖRNEK : A ve A x A nın bir alt kümesinden A ya her fonksiyona

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir?

MANTIK DEVRELERİ HALL, 2002) (SAYISAL TASARIM, ÇEVİRİ, LITERATUR YAYINCILIK) DIGITAL DESIGN PRICIPLES & PRACTICES (3. EDITION, PRENTICE HALL, 2001)

BÖLÜM 2 SAYI SİSTEMLERİ

Ardışıl Devre Sentezi (Sequential Circuit Design)

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

Yrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.

KPSS MATEMATÝK. SOYUT CEBÝR ( Genel Tekrar Testi-1) N tam sayılar kümesinde i N için, A = 1 i,i 1

13.Konu Reel sayılar

Esnek Hesaplamaya Giriş

(a,b) şeklindeki ifadelere sıralı ikili denir. Burada a'ya 1. bileşen b'ye 2. bileşen denir.

Algoritmalar ve Programlama. Algoritma

FPGA ile Gömülü Sistem Tasarımı (EE 525) Ders Detayları

SORU 1: En az iki elemana sahip bir X kümesi ile bunun P (X) kuvvet. kümesi veriliyor. P (X) üzerinde 0 ; A = 1 ; A

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Graf Veri Modeli. Düğümler kümesi. Kenarlar kümesi

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

VEKTÖR UZAYLARI 1.GİRİŞ

olsun. Bu halde g g1 g1 g e ve g g2 g2 g e eşitlikleri olur. b G için a b b a değişme özelliği sağlanıyorsa

DERS 2 : BULANIK KÜMELER

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

HESAP. (kesiklik var; süreklilik örnekleniyor) Hesap sürecinin zaman ekseninde geçtiği durumlar

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

Algoritma ve Programlamaya Giriş

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

KÜMELER. İyi tanımlanmış nesneler topluluğuna küme denir. Bir küme, birbirinden farklı nesnelerden oluşur. Bu nesneler somut veya soyut olabilir.

BULANIK MANTIK VE SİSTEMLERİ BAHAR DÖNEMİ ÖDEV 1. Müslüm ÖZTÜRK Bilişim Teknolojileri Mühendisliği ABD Doktora Programı

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

FPGA ile Gömülü Sistem Tasarımı (EE 525) Ders Detayları

Sayısal Devreler ve Sistemler (EE203) Ders Detayları

Tanım 2.1. X boş olmayan bir küme olmak üzere X den X üzerine bire-bir fonksiyona permütasyon denir.

Otomata Teorisi (BIL 2114)

10.Konu Tam sayıların inşası

Bu bölümde cebirsel yapıların temelini oluşturan Grup ve özelliklerini inceleyeceğiz.

MAT 302 SOYUT CEBİR II SORULAR. (b) = ise =

BM312 Ders Notları

Bir algoritma aşağıdaki ğ dki özelliklere sahip komutların sonlu bir kümesidir.

1. PROGRAMLAMAYA GİRİŞ

Ayrık zamanlı sinyaller için de ayrık zamanlı Fourier dönüşümleri kullanılmatadır.

Genel Graf Üzerinde Mutlak 1-merkez

İÇİNDEKİLER. Önsöz...2. Önermeler ve İspat Yöntemleri...3. Küme Teorisi Bağıntı Fonksiyon İşlem...48

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

SOYUT CEBİR Tanım 1: Uzunluğu 2 olan dairesel permütasyona transpozisyon denir.

Kafes Yapıları. Hatırlatma

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Bu derste! BBM 231 Yazmaçların Aktarımı Seviyesinde Tasarım! Yazmaç Aktarımı Düzeyi! Büyük Sayısal Sistemler! 12/25/12

PERMÜTASYON, KOMBİNASYON. Örnek: Örnek: Örnek:

Graflar - Çizgeler. Ders 9. Graflar ve Tanımlar

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Algoritma & Matlab.

Lisans. Cebirsel Yapı

1.GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G. vardır. 3) a G için denir) vardır.

SAYILAR DOĞAL VE TAM SAYILAR

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

köşe (vertex) kenar (edg d e)

Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır.

1.4. KISMİ SIRALAMA VE DENKLİK BAĞINTILARI

Olasılık, bir deneme sonrasında ilgilenilen olayın tüm olaylar içinde ortaya çıkma ya da gözlenme oranı olarak tanımlanabilir.

p sayısının pozitif bölenlerinin sayısı 14 olacak şekilde kaç p asal sayısı bulunur?

Deney 6: Ardışıl Devre Analizi

0.1 Küme Cebri. Teorem 1 A ve B iki küme olmak üzere i) (A B) c = A c B c ii) (A B) c = A c B c

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Akademik Personel ve Lisansüstü Eğitimi Giriş Sınavı. ALES / Đlkbahar / Sayısal II / 13 Mayıs Matematik Sorularının Çözümleri

14.Konu Reel sayılarının topolojisi. 1.Tanım:, verilsin. açık aralığına noktasının -komşuluğu denir. { } kümesine nın delinmiş -komşuluğu denir.

Şimdi de [ ] vektörünün ile gösterilen boyu veya büyüklüğü Pisagor. teoreminini iki kere kullanarak

Matematik Ders Notları. Doç. Dr. Murat Donduran

Mantık Devreleri Laboratuarı

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

SAYISAL ELEKTRONİK. Ege Ü. Ege MYO Mekatronik Programı

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

8. HOMOMORFİZMALAR VE İZOMORFİZMALAR

İşaret İşleme ve Haberleşmenin Temelleri. Yrd. Doç. Dr. Ender M. Ekşioğlu

Leyla Bugay Haziran, 2012

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) Varlık Bağıntı Modeli

Küme temel olarak belli nesnelerin ya da elamanların bir araya gelmesi ile oluşur

MAT 321SOYUT CEBİR I KONU TEKRAR SORULARI. ise < A > nedir?

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

Transkript:

BLG311 Biçimsel Diller ve Otomatlar Sonlu Durumlu Makineler A.Emre Harmancı Tolga Ovatman Ö.Sinan Saraç 2015

İçerik 1 Tanımlar ve Modeller (Mealy ve Moore) 2

Tanımlar ve Modeller (Mealy ve Moore) Hesaplayan Makineler Bilgisayar Bilgisayar, programlanarak bir dizi aritmetik ya da mantıksal işlemlerin(hesaplama) yapılmasına olanak sağlayan bir makinedir.

Tanımlar ve Modeller (Mealy ve Moore) Hesaplayan Makineler Makine Makine, genel tanımıyla, bir veya daha fazla hareket eden parçadan oluşan ve belirli bir amaca yönelik çalışan bir gereçtir. Elektronik teknolojisinde yaşanan gelişmeler fiziksel olarak hareket etmeyen gereçlerin de makine olarak kullanımına olanak sağlamıştır.

Tanımlar ve Modeller (Mealy ve Moore) Hesaplayan Makineler Soyut Makine Soyut makine, bir bilgisayar donanımını ya da yazılımının çalışmasını teorik olarak temsil eden bir modeldir.

Tanımlar ve Modeller (Mealy ve Moore) Sonlu Durumlu Makine-Finite State Machine(FSM) FSM, bir beşli (S, I, O, δ, ω) ile tanımlanan bir matematik modele sahiptir. S: Durum kümesi. I: Giriş alfabesi (sonlu, boş olmayan bir sembol kümesi) O: Çıkış alfabesi (sonlu, boş olmayan bir sembol kümesi) δ: I S S üzerine tanımlı bir geçiş fonksiyonu ω: S O veya I S O üzerine tanımlı bir çıkış fonksiyonu

Tanımlar ve Modeller (Mealy ve Moore) FSM özellikleri Bir FSM aşağıdaki özellikleri taşır 1 Sonlu bir giriş ve çıkış alfabesi bulunur 2 Gerekircidir. (Deterministik) Deterministik Makine Şimdiki giriş ve durum, sonraki durumu ve çıkışı kesinlikle belirler. Gerekirci olmayan sistemlerde belirli bir giriş - durum çiftine birden fazla sayıda çıkış ve sonraki durum değeri karşı düşebilir.

Tanımlar ve Modeller (Mealy ve Moore) FSM özellikleri Bir FSM aşağıdaki özellikleri taşır 1 Sonlu bir giriş ve çıkış alfabesi bulunur 2 Gerekircidir. (Deterministik) Deterministik Makine Şimdiki giriş ve durum, sonraki durumu ve çıkışı kesinlikle belirler. Gerekirci olmayan sistemlerde belirli bir giriş - durum çiftine birden fazla sayıda çıkış ve sonraki durum değeri karşı düşebilir.

Tanımlar ve Modeller (Mealy ve Moore) FSM özellikleri Bir FSM aşağıdaki özellikleri taşır 1 Sonlu bir giriş ve çıkış alfabesi bulunur 2 Gerekircidir. (Deterministik) Deterministik Makine Şimdiki giriş ve durum, sonraki durumu ve çıkışı kesinlikle belirler. Gerekirci olmayan sistemlerde belirli bir giriş - durum çiftine birden fazla sayıda çıkış ve sonraki durum değeri karşı düşebilir.

Tanımlar ve Modeller (Mealy ve Moore) FSM özellikleri Bir FSM aşağıdaki özellikleri taşır 3 Büyüklük dönüştürücü veya transducer özelliği. Dönüştürücü Bir dönüştürücü makinenin giriş ve çıkış olmak üzere iki alfabesi bulunur. Dönüştürücüler girdilerine çıktılarına dönüştürürler.

Tanımlar ve Modeller (Mealy ve Moore) FSM özellikleri Bir FSM aşağıdaki özellikleri taşır 3 Büyüklük dönüştürücü veya transducer özelliği. Dönüştürücü Bir dönüştürücü makinenin giriş ve çıkış olmak üzere iki alfabesi bulunur. Dönüştürücüler girdilerine çıktılarına dönüştürürler.

Tanımlar ve Modeller (Mealy ve Moore) Dönüştürücü Dönüştürücüler sayısal devrelerle gerçeklenirken ayrık zamanlı (discrete-time systems) kullanılır. Ayrık zaman - Discrete Time Ayrık zaman, bir fonksiyonun zaman domenini oluşturan değişkenin belirli aralıklarla örneklenerek kullanılması nedeniyle süreksiz biçimde kullanılmasıdır. Ayrık zamanın gerçeklenmesinde kullanılan ana bileşen sistem saatidir.

Tanımlar ve Modeller (Mealy ve Moore) Dönüştürücü Ardışıl senkron sayısal devrelerde giriş ve çıkış fonksiyonları kombinezonsal devrelerle gerçeklenir. Öte yandan devrenin sonraki durumunu belirlemede, devrede kullanılan flip-flop un karakteristiği de etkili olur. Daha biçimsel bir ifade ile: S(t + )=Q(S(t),δ(S(t),I(t))) SR tipi: q + = S+R q D tipi: q + = D JK tipi: q + = Jq + K q T tipi: q + = T q Örneğin D-tipi bir flip-flop ta sonraki durum fonksiyonu S(t + )=δ(s(t),i(t))

Tanımlar ve Modeller (Mealy ve Moore) Dönüştürücü Ardışıl senkron sayısal devrelerde giriş ve çıkış fonksiyonları kombinezonsal devrelerle gerçeklenir. Öte yandan devrenin sonraki durumunu belirlemede, devrede kullanılan flip-flop un karakteristiği de etkili olur. Daha biçimsel bir ifade ile: S(t + )=Q(S(t),δ(S(t),I(t))) SR tipi: q + = S+R q D tipi: q + = D JK tipi: q + = Jq + K q T tipi: q + = T q Örneğin D-tipi bir flip-flop ta sonraki durum fonksiyonu S(t + )=δ(s(t),i(t))

Tanımlar ve Modeller (Mealy ve Moore) Dönüştürücü Sayısal ayrık-zamanlı sistemlerde dönüştürücüler aşağıdaki özellikleri taşır. Sekans: Sıralı simge dizisi (Bu bağlamda sıra zamanı belirler). n sekans uzunluğudur. [Λ]: boş katarı içine alan singleton yani tek elemanlı küme. I : giriş sekansı kümesi : I =[Λ] I I 2... I n... O : çıkış sekans kümesi : O =[Λ] O O 2... O n... Dönüştürücünün w = f(x) dönüşümünü gerçekleştirdiği; w O ve x I olduğu kabul edilirse, f fonksiyonu aşağıdaki özellikleri taşımalıdır: Uzunluğun korunması: w = x =n;n N Önek içindeliği (prefix inclusivity): (x=x 1 x 2 ) (w=w 1 w 2 ) ( x 1 = w 1 ) w 1 = f(x 1 )

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Örnek bir makine Örneğin bir tuş takımından numerik kodlar okuyarak sadece belirli bir tek kombinasyonu kabul eden bir makine tasarlamak istediğimizi düşünelim. Bu durumda (S, I, O, δ, ω) beşlisi aşağıdaki gibi tanımlanabilir: I {0,1,2,...,9}. Basamak sayısını 4 ile sınırlamak isteyebiliriz: 1234 I 4 S: Her tuş basımında doğru rakamın girildiğini kontrol etmeliyiz. Bizim durumumuzda S =5 or s i S : 0 i 4 O ={open, closed} çıkış alfabesidir. Makinemiz 4 doğru giriş ardından girilen kodu kabul edecektir. Son durum F = s 4. Şimdilik, yanlış girişleri göz ardı ederek devam edelim. Sadece tek doğru kombinasyonumuz olduğu için δ aşağıdaki gibi tanımlanabilir δ :(s 0,1) s 1 (s 1,9) s 2 (s 2,0) s 3 (s 3,3) s 4 Çıkış fonksiyonumuzun ω yaptığı eşleme s i closed. Bu durumda 0 i 3 ve s 4 open

Tanımlar ve Modeller (Mealy ve Moore) Makine Tipleri Mealy tipi makine 1 çıkış değerleri hem o andaki durumu hem de o andaki giriş değerleri ile belirlenen sonlu durumlu makinedir. I S O. Kombinezonsal Devre (δ) δ(i,s) I Bellek ya da gecikme Kombinezonsal Devre (ω) O=ω(I,S) 1 Mealy makinesi, George H. Mealy tarafından 1955 yılında yayınlanan A Method for Synthesizing Sequential Circuits isimli makalede tanımlanmıştır.

Tanımlar ve Modeller (Mealy ve Moore) Makine Tipleri Moore tipi makine 2 çıkış değerleri sadece o andaki durumu ile belirlenen sonlu durumlu makinedir S O. I Kombinezonsal Devre (δ) δ(i,s) Bellek ya da gecikme Kombinezonsal Devre (ω) O=ω(S) 2 Moore makinesi, Edward F. Moore tarafından 1956 yılında yayınlanan Gedanken-experiments on Sequential Machines isimli makalede tanımlanmıştır.

Tanımlar ve Modeller (Mealy ve Moore) FSM Modelleme S j Sk S j / O l S k / O s FSM modellemede aşağıda verilen diyagramlar kullanılır: Mealy Makinesi I 1... I i... I m I i /O s S 1... S j... S k /O s S n Moore Makinesi I 1... I i... I m O I i S 1 O 1...... S j S k O l...... S n O p

Tanımlar ve Modeller (Mealy ve Moore) Örnek Bir kahve makinesi 5, 10 ve 25 kuruşluk madeni paraları kabul ediyor ve 15 kuruşa bir kahve vererek para üstünü geri veriyor. Bu makinenin Mealy ve Moore tipi modelleri: Mealy modeli, S x /i,j: x şimdiye kadar atılan parayı gösterir, i para üstünü ve j çıktıyı gösterir. C kahve verildiği, çıktı verilmediği anlamında kullanılmıştır. Durum diyagramı: 25/10,C Durum tablosu: 5 10 25 S 0 S 5 /0, S 10 /0, S 0 /10,C S 5 S 10 /0, S 0 /0,C S 0 /15,C S 10 S 0 /0,C S 0 /5,C S 0 /20,C 25/15,C 10/0,C S 0 5/0, 10/0, 5/0,C 10/5,C 25/20,C S 5 S 10 5/0,

Tanımlar ve Modeller (Mealy ve Moore) Örnek Moore modelindeki durum sayısı, en az Mealy modelindeki farklı durum/çıkış sayısı kadar olmalıdır. Durumlar atılan para ile ilişkilendirilmemelidir. Para atılmadığında mevcut durum korunur. Buna göre: Durum tablosu: 5 10 25 Output S 0 S 5 S 10 S 25 0,- S 5 S 10 S 15 S 30 0,- S 10 S 15 S 20 S 35 0,- S 15 S 5 S 10 S 25 0,C S 20 S 5 S 10 S 25 5,C S 25 S 5 S 10 S 25 10,C S 30 S 5 S 10 S 25 15,C S 35 S 5 S 10 S 25 20,C Mealy modeli geçişleri ile Moore makinesi durumları aşağıdaki gibi eşlenebilir S 5 /0, S 5 S 10 /0, S 10 S 0 /0,C S 15 S 0 /5,C S 20 S 0 /10,C S 25 S 0 /15,C S 30 S 0 /20,C S 35

Tanımlar ve Modeller (Mealy ve Moore) Örnek Moore modelindeki durum sayısı, en az Mealy modelindeki farklı durum/çıkış sayısı kadar olmalıdır. Durumlar atılan para ile ilişkilendirilmemelidir. Para atılmadığında mevcut durum korunur. Buna göre: Durum tablosu: 5 10 25 Output S 0 S 5 S 10 S 25 0,- S 5 S 10 S 15 S 30 0,- S 10 S 15 S 20 S 35 0,- S 15 S 5 S 10 S 25 0,C S 20 S 5 S 10 S 25 5,C S 25 S 5 S 10 S 25 10,C S 30 S 5 S 10 S 25 15,C S 35 S 5 S 10 S 25 20,C Mealy modeli geçişleri ile Moore makinesi durumları aşağıdaki gibi eşlenebilir S 5 /0, S 5 S 10 /0, S 10 S 0 /0,C S 15 S 0 /5,C S 20 S 0 /10,C S 25 S 0 /15,C S 30 S 0 /20,C S 35

Tanımlar ve Modeller (Mealy ve Moore) Sayısal Sistem Tasarımı Durum Koşulları Kontrol Mantığı Komutlar Veri İşleyici Dış Girişler Giriş Verisi Çıkış Verisi Sayısal devre tasarlamada genel bir yaklaşım veri işleme ve kontrol işlemlerinin ayrı ayrı ele alınmasıdır. Kontrol mantığı ve veri işleme işlemleri algoritmaları donanımsal olarak gerçeklenir. Bu algoritmalar akış diyagramları benzeri yapılarla temsil edilebilirler.

Tanımlar ve Modeller (Mealy ve Moore) Mealy ve Moore Makineleri arasındaki zamanlama farkları Ağır değişen bir strobe girdisine karşılık kısa bir short çıktısı üreten üç farklı tasarımı inceleyelim. 3 3 Örnekler Dr. Pong P. Chu nun RTL Hardware Design Using VHDL: Coding for Efficiency, Portability, and Scalability isimli kitabından alınmıştır

Tanımlar ve Modeller (Mealy ve Moore) Moore Makinesi Tasarımı

Tanımlar ve Modeller (Mealy ve Moore) Mealy Makinesi Tasarımı

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi İçerik 1 Tanımlar ve Modeller (Mealy ve Moore) 2 Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum t

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Durum eşdeğerliği Tasarlanması öngörülen bir devrenin ya da sistemin işlevlerinin sözle anlatımından giderek ortaya çıkarılan durum tablosunda eşdeğerli ya da birbirleriyle uyuşma gösteren durumlar olabilir. Bu özelliği taşıyan durum sınıflarını ortaya çıkarıp, durum tablosunu daha az durumu olan başka bir tabloya dönüştürme işlemine durum indirgenmesi adı verilir. Eşdeğerlik Bağıntısı Bir ikili bağıntı, S kümesi üzerinde tanımlı olsun. Bu bağıntı sadece ve sadece yansımalı, bakışlı ve geçişli ise eşdeğerlik bağıntısıdır. Bir başka deyişle, s i,s j,s k S: s i s i s i s j s j s i s i s k s k s j s i s j

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Durum eşdeğerliği Eşdeğerliğin matematiksel tanımı kullanılarak bir makinenin durum kümesi eşdeğer sınıflara bölünebilir. Eşdeğer sınıflar aşağıdakileri içermelidir Eşdeğerliliği açıkça beliren durumlar Eşdeğerliliği başka durum çiftlerinin eşdeğerliliğini gerektiren durum çiftleri. Durum Eşdeğerliği Koşulları Aynı makinenin iki durumunun eşdeğerli olması için gerek ve yeter koşullar, durum tablosunda her giriş için bu iki duruma ilişkin Çıkışların eşit olması ve Gelecek durumların doğrudan ya da karşılıklı olarak eşdeğerlik göstermesi eşdeğerliği için doğrudan ya da dolaylı olarak eşdeğerliliği gereken durum çiftleri varsa bunların arasında çıkışta eşdeğerliliği sağlamayan durum çiftinin olmamasıdır.

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Gerektirmelerin sağlaması yönlendirilmemiş bağıntı grafından ve gerektirme merdiveni adını alan tablodan yararlanılarak sağlanır. İndirgenmemiş durum tablosu aşağıdaki gibi verilmiş bir sistem olsun: S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi We shall build a dependency table step by step based on the state dependencies. S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 S 3 S 4 S 5 S 6 S 7 S 8

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 2 S 3 S 4 S 5 S 6 S 7 S 8 S 1 S 2 S 3 S 4 S 5 S 6 S 7 X

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X S 4 (2,7)-(4,5)-(1,3) S 5 S 6 S 7 S 8

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X S 4 X S 5 (2,6) S 6 S 7 S 8

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X (2,7)(4,6) S 4 X X S 5 (2,6) X S 6 X S 7 (1,8)(2,7)(4,5)(1,3) S 8 (2,6)

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X (2,7)(4,6) S 4 X X S 5 (2,6) X S 6 X S 7 (1,8)(2,7)(4,5)(1,3) S 8 (2,6)

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X (2,7)(4,6)X S 4 X X S 5 (2,6) X S 6 X S 7 (1,8)(2,7)(4,5)(1,3)X X S 8 (2,6)

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X S 6 X (2,3)(6,7)(2,4) S 7 X X S 8 (2,6) X

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X (1,5)(6,7)(3,5) S 6 X X S 7 X X X S 8 (2,6) X X

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X X S 6 X X X S 7 X X X (1,8) S 8 (2,6) X X

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X X S 6 X X X S 7 X X X (1,8) S 8 (2,6) X X (1,8)(7,6)(4,5)

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X X S 6 X X X X S 7 X X X (1,8) (5,8)(4,5)(6,7)(3,5) S 8 (2,6) X X X

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X X S 6 X X X X S 7 X X X (1,8) X S 8 (2,6) X X X (1,5)

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X X S 6 X X X X S 7 X X X (1,8) X X S 8 (2,6) X X X (1,5) X (6,7)(4,5)(1,3)

Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Aşağıdaki tablode bazı durumların eşdeğerliğinin diğer durumlara bağlı olduğu görülebilir. Bu bağımlılıkları içeren bir yönlü graf çizilebilir. S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 2 X S 3 X X S 4 X X X S 5 (2,6) X X X S 6 X X X X S 7 X X X (1,8) X X S 8 (2,6) X X X (1,5) X X 4,7 5,8 1,8 1,5 2,6

BLG311 Biçimsel Diller ve Otomatlar Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Yönlü bağımlılıklar kullanılarak yönsüz bir bağımlılık grafı çizilebilir ve bu graftaki bağlı bileşenler bulunabilir. Bulunan klikler birleştirilerek eşdeğer durum kümeleri bulunabilir. 4,7 5,8 8 1 1,8 1,5 7 6 2 3 5 4 2,6

BLG311 Biçimsel Diller ve Otomatlar Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi 7 6 S/I I 1 I 2 I 3 I 4 S 1 S 1 /0 S 2 /1 S 5 /1 S 1 /0 S 2 S 2 /1 S 2 /0 S 6 /0 S 3 /0 S 3 S 3 /1 S 7 /0 S 4 /0 S 3 /0 S 4 S 1 /0 S 7 /1 S 4 /1 S 3 /0 S 5 S 5 /0 S 6 /1 S 5 /1 S 5 /0 S 6 S 2 /1 S 6 /0 S 2 /0 S 3 /0 S 7 S 8 /0 S 7 /1 S 4 /1 S 3 /0 S 8 S 8 /0 S 6 /1 S 5 /1 S 1 /0 Bulunan eşdeğerlik sınıfları kullanılarak oluşturulan durum geçiş teblosu: 8 1 I 1 I 2 I 3 I 4 2 S 1 (S 1,S 5,S 8 ) S 1 /0 S 2 /1 S 1 /1 S 1 /0 S 2 (S 2,S 6 ) S 2 /1 S 2 /0 S 2 /0 S 3 /0 3 S 3 (S 3 ) S 3 /1 S 4 /0 S 4 /0 S 3 /0 S 4 (S 4,S 7 ) S 1 /0 S 4 /1 S 4 /1 S 3 /0 5 4

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi İçerik 1 Tanımlar ve Modeller (Mealy ve Moore) 2 Durum eşdeğerliği ve tümüyle tanımlanmış tabloların indirgenmesi Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum t

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Durum uyuşması Bir makine zaman zaman eksik bilgi nedeniyle ya da özellikle eksik tanımlanabilir. Eksik tanımlı FSM geçişlerinde bazı girdiler tanımsız durumlara geçişe neden olabilir ya da tanımsız çıktılar üretilmesine neden olur. Bu gibi makinelerdeki gereksiz durumları elemek için uyuşma bağıntısı kavramı kullanılabilir. Uyuşma bağıntısı Bir ikili γ bağıntısı S kümesi üzerinde tanımlı olsun. Bu bağıntı sadece ve sadece yansımalı, bakışlı ve geçişsiz ise uyuşma bağıntısıdır. Örneğin d(x,y) bağıntısı x ve y noktaları arasındaki uzaklığı temsil etsin. R γ ={(a,b) d(a,b) 2,a,b N} şeklinde bir bağıntı tanımlansın. Bu bağıntının 1γ3 ve 3γ5 elemanları olmasına rağmen 1γ5 elemanı değildir. Öte yandan 1γ2 ve 2γ3 gibi geçişli çiftler de bulunabilir. γ bir uyuşma bağıntısıdır.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Uyuşanlar sınıfı Uyuşma bağıntısı tanımlandığı küme üzerinde uyuşanlar sınıflarını oluşturur. Uyuşanlar sınıfının her eleman çifti arasında ikişer ikişer uyuşma vardır. Diğer bir deyişle uyuşanlar sınıfı içinde geçiş özelliği vardır. İki uyuşanlar sınıfının kesişimi boş olmayabilir. En üst uyuşanlar sınıfı Bir uyuşanlar sınıfının tanımlandığı küme içinde kendini içine alan daha üst bir sınıf bulunamıyorsa, söz konusu uyuşanlar sınıfına en üst uyuşanlar sınıfı denir. En üst uyuşanlar sınıfı, klik adını da alır. Grafı tam graftır.. Örneğin aşağıdaki uyuşanları sınıfları için (a,b,c,d) (a,b,c) (a,b) olduğundan (a,b,c,d) en üst uyuşanlar sınıfıdır.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örtü Elemanlarının bileşimi, tanımlandığı kümenin tüm elemanlarını içine alan uyuşanlar sınıfları kümesine verilen ad. Tam örtü Bir küme üzerinde bir uyuşma bağıntısının oluşturduğu en üst uyuşanlar sınıfları kümesidir.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örtü Elemanlarının bileşimi, tanımlandığı kümenin tüm elemanlarını içine alan uyuşanlar sınıfları kümesine verilen ad. Tam örtü Bir küme üzerinde bir uyuşma bağıntısının oluşturduğu en üst uyuşanlar sınıfları kümesidir.

BLG311 Biçimsel Diller ve Otomatlar Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örnek γ bağıntısı aşağıdaki gibi tanımlı olsun R γ ={aγb,aγc,aγd,bγc,bγd,cγd,bγe,eγf,eγg,gγf,gγh} Bağıntı grafı. a b e c d g f h Bu grafın tam örtüsü: {{a, b, c, d}{b, e}{e, f, g}{g, h}}. Bu örnek için {b, e} içermeyen bir örtü bulunamaz ancak tam örtü {b, e} yi de içermelidir.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Uyuşan durumlar s i ve s j durumları sadece ve sadece, uygulanabilir bütün giriş sekansları aynı çıkış sekansını üretiyorsa uyuşan durumlardır. Uyuşan durumlar s i γs j ile gösterilir. Aşağıdaki üç durumu ele alalım s 1 = abøef s 2 = aøfef s 3 = acfef İki uyuşan sınıf bulunur: s 1,s 2 ve s 2,s 3.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Durum Uyuşma Koşulları Aynı makinanın iki durumunun uyuşması için gerek ve yeterli koşullar, her giriş için bu iki duruma ilişkin: Çıkışların uyuşma göstermesi Gelecek durumların doğrudan ya da karşılıklı olarak uyuşma göstermesi uyuşma göstermesi için doğrudan ya da dolaylı olarak uyuşmaları gereken durum çiftleri varsa, bunların arasında çıkışta uyuşma sağlamayan durum çiftinin olmamasıdır.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Tam örtünün herhangi bir sınıfına yeni bir durum atayıp indirgenmiş makina elde edilebilir, ancak bu makina çoğu kere en iyi indirgenmiş makina olmaz. Optimal çözümü bulmak için kapalı örtü tanımı geliştirilmiştir. Dolaylı uyuşma i girişine karşılık, S durum kümesi R durum kümesine geçişi sağlıyor olsun ve R durum kümesi S nin sonraki durum kümesine dahil olsun. Eğer S kümesi uyuşanlar sınıfı ise R kümesi i girişi için S kümesinin dolaylı uyuşanlar sınıfıdır.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Tam örtünün herhangi bir sınıfına yeni bir durum atayıp indirgenmiş makina elde edilebilir, ancak bu makina çoğu kere en iyi indirgenmiş makina olmaz. Optimal çözümü bulmak için kapalı örtü tanımı geliştirilmiştir. Kapalı örtü Bu örtüden bir uyuşanlar sınıfına ait bir durum çiftinin uyuşması için diğer durum çiftlerinin uyuşması gerekiyorsa, bu durum çiftlerinin her biri kapalı örtünün herhangi bir uyuşanlar sınıfı içinde yer almalıdır. Tam örtü her zaman kapalı bir örtüdür. Minimal kapalı örtü En az sayıda uyuşanlar sınıfı ile örtme ve kapalılık özelliklerini taşıyan uyuşanlar sınıfları kümesidir.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Tam örtünün herhangi bir sınıfına yeni bir durum atayıp indirgenmiş makina elde edilebilir, ancak bu makina çoğu kere en iyi indirgenmiş makina olmaz. Optimal çözümü bulmak için kapalı örtü tanımı geliştirilmiştir. Kapalı örtü Bu örtüden bir uyuşanlar sınıfına ait bir durum çiftinin uyuşması için diğer durum çiftlerinin uyuşması gerekiyorsa, bu durum çiftlerinin her biri kapalı örtünün herhangi bir uyuşanlar sınıfı içinde yer almalıdır. Tam örtü her zaman kapalı bir örtüdür. Minimal kapalı örtü En az sayıda uyuşanlar sınıfı ile örtme ve kapalılık özelliklerini taşıyan uyuşanlar sınıfları kümesidir.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örnek Aşağıdaki eksik tanımlı durum tablosunu ele alalım: I 1 I 2 I 3 I 4 S 1 - - S 5 /1 - S 2 - S 5 /1 S 4 / - S 3 S 3 /0 S 2 /1 - S 1 /0 S 4 S 3 /0 S 1 /1 S 4 /0 - S 5 S 4 /0 /1 S 3 / S 4 / Bu tablonun bağımlılık tablosu: S 1 S 2 S 3 S 4 S 2 S 4 S 5 S 3 S 2 S 5 S 4 X S 1 S 5 X S 1 S 2 S 5 S 3 S 5 X S 3 S 4 S 3 S 4,S 1 S 4 X S 3 S 4

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örnek Aşağıdaki eksik tanımlı durum tablosunu ele alalım: I 1 I 2 I 3 I 4 S 1 - - S 5 /1 - S 2 - S 5 /1 S 4 / - S 3 S 3 /0 S 2 /1 - S 1 /0 S 4 S 3 /0 S 1 /1 S 4 /0 - S 5 S 4 /0 /1 S 3 / S 4 / Bu tablonun bağımlılık tablosu: S 1 S 2 S 3 S 4 S 2 S 4 S 5 S 3 S 2 S 5 S 4 X S 1 S 5 X S 1 S 2 S 5 S 3 S 5 X S 3 S 4 S 3 S 4,S 1 S 4 X S 3 S 4

BLG311 Biçimsel Diller ve Otomatlar Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örnek Durum uyuşmalarına dair bağıntı grafı aşağıdaki gibi oluşturulabilir. Ayrıtlar uyuşma bağımlılıkları ile adlandırılmıştır S2 S4S5 S2S5 S 1 S 2 S 3 S 4 S 2 S 4 S 5 S 3 S 2 S 5 S 4 X S 1 S 5 X S 1 S 2 S 5 S 3 S 5 X S 3 S 4 S 3 S 4,S 1 S 4 X S 3 S 4 S1 S3S4 S3 S1S2 S5 S3S4 S4 En üst uyuşanlar sınıfları aşağıdaki gibi bulunabilir {(S 1,S 2,S 3 ),(S 3,S 4 ),(S 2,S 5 ),(S 4,S 5 )}

BLG311 Biçimsel Diller ve Otomatlar Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örnek Buna göre indirgenmiş makinada 4 adet durum bulunur. S2 S1S3 S4S5 S2S5 S1S2 S3S4 S1 S3 S2S5 S3S4 S1S2 S4S5 S5 S3S4 S4 S2S3 Ancak gerektirme grafında (S 1,S 2 ),(S 3,S 4 ) ve(s 4,S 5 ) in kapalılık ve örtme özelliği olan uyuşanlar sınıfları kümesi olduğu görülebilir.

Durum uyuşması, uyuşma bağıntısı ve tümüyle tanımlanmamış durum tabloların indirgenmesi Örnek Buna göre indirgenmiş makinaların yeni durum tabloları aşağıdaki gibi bulunur: I 1 I 2 I 3 I 4 S 1 - - S 5 /1 - S 2 - S 5 /1 S 4 / - S 3 S 3 /0 S 2 /1 - S 1 /0 S 4 S 3 /0 S 1 /1 S 4 /0 - S 5 S 4 /0 /1 S 3 / S 4 / Mealy modeli indirgenmiş makine I 1 I 2 I 3 I 4 (S 1,S 2 ) a - c/1 c/1 - (S 3,S 4 ) b b/0 a/1 b,c/0 a/0 (S 4,S 5 ) c b/0 a/1 b/0 b,c/- Moore modeli makine I 1 I 2 I 3 I 4 O u (a/1) - z z - 1 v (a/0) - z z - 0 w (b/0) w u w v 0 z (c/1) w u w w 1