2/3/2 ers hakkında" ykut Erdem aykut@cs.hacettepe.edu.tr Oda: el: 297 75 / 46 Ofis Saati: Carşamba 5:-6: M 23 Zamanuyumlu dizisel devreler (synchronous sequential logic)" etbook: Mano and Ciletti, igital esign Pearson, 4th Edition Hacettepe Üniversitesi ilgisayar Müh. ölümü İletişim" u derste" ers hakkındaki duyurular ve mesajlaşma için yı kullanacağız: https://www.piazza.com/hacettepe.edu.tr/fall22/bbm23 izisel devreler (sequential circuits) Mandallar (latches) İkidurumlular (flip-flops) izisel devrelerin analizi izisel devrelerin tasarımı 4 ellek" izisel devreler (sequential circuits)" irleşimsel devreler (combinational circuit), şimdiki çıkışları yalnız şimdiki girişlerine bağlı devrelerdir. izisel devreler (sequential circuits), şimdiki çıkışları sadece şimdiki girişlerine değil aynı zamanda önceki girişlere de bağlı olan devrelerdir. u tür devreler bellek öğeleri barındırırlar. Inputs Outputs circuit ir sayıyı bilgisayarda nasıl saklayabiliriz? En basit durum: bir bit lik bilginin saklanması C Önceki C Sınraki C bit lik bir belleğin bir kara kutu olarak gösterimi : ontrol girişi = olduğu sürece C nin değeri aynı kalır Eğer = ise, C nin değeri dan veya den a değişir u devre istendiği gibi çalışmaz! Neden? - salınır (oscillates).. Memory elements 5 6 Source: ichard Feynman, Lectures on Computa>on Figure Number: 5 Mano/Ciletti igital esign, 4e CFLPV 27 by Prentice Hall, Inc. Pearson Company
2/3/2 Saatli dizisel devreler" Saatli dizisel devrelerin tasarımında N, O, NO,.. gibi geçitlerin yanı sıra ikidurumlular (flip-flops) diye adlandırılan bellek öğeleri de kullanılır. ir ikidurumlu tek bitlik bilgiyi saklayabilen bellek ögeleridir. Inputs circuit pulses (a) lock diagram (b) iming diagram of clock pulses Flip-flops Outputs 7 Mandallar (latches)" Mandallar (latches) (sinyal seviyesindeki değişim yerine) sinyal seviyesi ile tetiklenen ve saat kullanmayan bellek öğeleridir. Mandallar ikidurumluların oluşturulmasında kullanılan temel devrelerdir. S türü mandal (S: Set, : eset, : Çıktı) (reset) S (set) (a) Logic diagram S (after S, ) (after S, ) (forbidden) (b) Function table 8 Mandallar (latches)" NN geçitler ile S türü mandal S (set) (reset) (a) Logic diagram S türü mandal olarak da gösterilmektedir. S (after S, ) (after S, ) (forbidden) (b) Function table Mandallar (latches)" S türü mandalın işleyişi mandalın durumunun ne zaman değişeceğini kontrol eden ek bir giriş sinyalı ile ayarlanabilir. S En (a) Logic diagram En S X X Net state of No change No change ; reset state ; set state Indeterminate (b) Function table 9 Mandallar (latches)" türü mandal (şeffaf (transparent) mandal) Mandallar (latches)" Mandalların grafik gösterimleri En Net state of En X No change ; reset state ; set state S S (a) Logic diagram (b) Function table türü mandalda S and girişlerini aynı anda hiçbir zaman değeri alamamaktadır. Çıkışı, Enable girişi olduğu sürece veri girişindeki değişimleri yansıtmaktadır. S S En 2 2
2/3/2 ir mandalın durumu En = olduğu zaman değişmektedir. ir mandalın kontrol girişi (En) bir saat sinyali üreticisine bağlandığında, durum değişimleri En = olur olmaz başlar. ir mandalın durumu, saat vuruşu (clock pulse) aktif seviyede kaldığı sürede sürekli değişip durabilir. (a) esponse to positive level İkidurumlular (flip-flops), ortak bir saat barındıran dizisel devrelerin düzgün çalışabilmeler için tasarlanmıştır. 3 İkidurumlular, mandalların tersine ancak sinyal seviyesindeki değişimler ile tetiklenebilirler. (b) Positive-edge response (c) Negative-edge response türü ikidurumulu (iki türü mandal ile) En latch (master) Y En latch (slave) 4 türü pozitif kenarlar ile tetiklenen (positiveedge-triggered) ikidurumlu (üç S türü mandal ile) türü ikidurumluların grafik gösterimleri S (a) Positive-edge (a) Negative-edge 5 6 türü ikidurumlu türü ikidurumlu (a) From flip-flop (b) From flip-flop (c) Graphic symbol (a) Circuit diagram = + (b) Graphic symbol =, = => =? =, = => =? = = => =? = = => =? 7 = = + = => =? = => =? 8 3
2/3/2 İkidurumluların sonraki durum çizelgeleri" İkidurumluların sonraki durum çizelgeleri" İkidurumluların mantıksal özellikleri, işleyişlerini belirten çizelgeler ile ifade edilebilir. (t): şimdiki durum (saat kenarı uygulanması öncesindeki) (t +): sonraki durum (bir saat vuruşu sonrasındaki) 9 2 İkidurumluların sonraki durum denklemleri" Sonraki durum çizelgeleri, ilgili denklemler ile de ifade edilebilir: Zamanuyumsuz (asynchronous) girişlere sahip ikidurumlular" üşük-düzey zamanuyumsuz reset e sahip pozitif kenarlar ile tetiklenen türü bir ikidurumlu ata türü ikidurumlu (t +) = türü ikidurumlu (t +) = + türü ikidurumlu (t +) = S eset (b) Graphic symbol X X 2 eset (b) Function table 22 Saatli dizisel devrelerin analizi" Örnek: Saatli dizisel devrelerin analizi" Saatli bir dizisel devrenin davranışı, giriş, çıkış ve sahip olduğu ikidurumluların durumlarından belirlenir. urum denklemi, S(t +) = f (S(t), (t)) S(t+): sonraki durum S(t): şimdiki durum (t): şimdiki girişler (t+) =(t)(t)+(t)(t) (t+)= (t)(t) y(t)=((t)+(t)) (t) Şimdiki çıktı, y(t) = g(s(t), (t)) y (t+) =+ (t+)= 23 y(t)=(+) 24 4
2/3/2 Örnek: Saatli dizisel devrelerin analizi" (t+) =+ (t+)= y(t)=(+) Örnek: Saatli dizisel devrelerin analizi" m ikidurumlu ve n girişe sahip dizisel bir devre 2 m+n sıra barındıran bir çizelge ile ifade edilir. oplam 2 n sıralı başka bir çizelge de kullanılabilir. 25 26 urum çizeneği (state diagram)" ir durum çizelgesi grafiksel olarak bir durum çizeneği (state diagram) ile de gösterilebilir. türü ikidurumlular ile analiz" Örnek: = y Present state Net Inputs state / / / / / / / y (a) Circuit diagram y (b) State table,,, / 27, (c) State diagram 28 türü ikidurumlular ile analiz". İkidurumlu giriş denklemlerini şimdiki durum ve giriş değişkenleri cinsinden belirle. 2. (a) arşılık gelen ikidurumluların sonraki durum çizelgesini kullanarak durum çizelgesi için sonraki durum değerlerini belirle, veya 2. (b) Giriş denklerini ikidurumluların sonraki durum denklemlerine koy ve karşılık gelen durum denklemlerini elde et. aha sonra durum çizelgesinden sonraki durum değerlerini belirle. 29 türü ikidurumlular ile analiz" = = = = + = 3 5
2/3/2 türü ikidurumlular ile analiz" türü ikidurumlular ile analiz" (t+) = + (t+) = + = + ( ) = + + = + ( ) = + + 3 32 türü ikidurumlular ile analiz" urum çizeneği (state diagram) S S3 türü ikidurumlular ile analiz" y S S2 33 reset (t+) = = + = = y = / / (t+) = () + () (a) Circuit diagram ( = + + 34 (t+) = türü ikidurumlular ile analiz" / / Mealy ve Moore modelleri" izisel devreler, sonlu özdevinir modelinin (finite state machine) iki alt türü ile ifade edilebilir: Mealy modelinde çıkış hem şimdiki durum hem de girişin bir fonksiyonudur. Moore modelinde çıkış sadece şimdiki durumun bir fonksiyonudur. Mealy Machine Inputs Net State Logic State egister Output Logic Outputs (Mealy-type) / / (a) Moore Machine (b) State diagram Inputs Net State Logic State egister Output Logic Outputs (Moore-type) 35 (b) 36 6
2/3/2 Mealy ve Moore modelleri" Moore modelinde çıkışlar bir saat yardımıyla eşzamanlanırlar. Mealy modelinde çıkışlar eğer girişler saat döngüsü (clock cycle) boyunca değişebilir. ir Meali modeli devreyi eşzamanlamak için girişlerin saat ile eşzamanlı olması ve çıkışların da daima bir saat kenarından hemen önce örneklenmesi gerekmektedir. 37 urum indirgemesi (state reduction)" Eğer iki durum her bir olası giriş için aynı çıkışı veriyor ve devreyi aynı veya eş bir duruma sürüklüyor ise o iki durum eş (equivalent) durumlar olarak adlandırılır. irbirine eş iki durum varsa, bu durumlardan herhangi biri giriş-çıkış ilişkilerini değiştirmeden çıkartılabilir. urum sayısının azaltılması niçin önemlidir? ir devrenin gerçekleştirilmesi sırasında kullanılması gereken ikidurumlu sayısında azaltmaya gidilebilir (ancak bu durumda devrenin birleşimsel (combinatorial) kısmı daha karmaşık bir hal alabileceği göz önüne alınmalıdır). 38 Örnek: Örnek: urum indirgemesi" / / a / / / / b c Örnek: Örnek: urum indirgemesi" g / / / / d / / f / e state input output / a b c d s f f 39 e ve g durumları birbirine eş! g durumunu çıkar. 4 Örnek: urum indirgemesi" Yeni durum çizelgesi: Örnek: urum indirgemesi" İndirgenmiş durum çizelgesi: d ve f durumları birbirine eş! f durumunu çıkar. rtık hiçbir durum birbirine eş değil! ur.. 4 42 7
2/3/2 Örnek: urum indirgemesi" / / a / / / / b a / / / c / / / / / e b g d e / / / / / / f / d / / / 43 c urum ataması (state assignment)" urumlara birbirinden farklı ikili değerler ataması oplam m duruma sahip bir devre için kullanılacak kodlar n bit (2 n m) içermelidir. (2 n m kullanılmayan durum sayısıs) Çeşitli seçenekler: he resulting combinatorial circuit will be different! 44 Örnek: urum ataması " ir önceki örnek için durum sayısı indirgenmiş durum çizelgesi için ikili atamalar e / a / / b / / / d / / / / c izisel devrelerin tasarımı" Verilen tanımdan durum çizeneğini ve durum çizgesini oluştur. Gerekiyorsa durum sayısını azalt. İkili kodlanmış (binary coded) durum çizgesini elde etmek için durumlara ikili sayı değerleri ata. ullanılacak olarak ikidurumluların türünü belirle. asitleştirilmiş ikidurumlu giriş ve çıkış denklemlerini elde et. evre şemasını çiz. 45 46 Örnek: Sekans algılayıcı" Üç veya daha fazla ardışık gelen leri içeren bit dizgilerini algılayan bir devrenin tasarımı evrenin durum çizeneği: S / S / Örnek: Sekans algılayıcı" türü ikidurumlular kullanarak gerçekleştirme ört farklı durumu ifade etmek için iki türü ikidurumlu S / S / S 3 / S 2 / 47 S 3/ S 2/ 48 8
2/3/2 Örnek: Sekans algılayıcı" Örnek: Sekans algılayıcı" m m m 3 m 2 m m m 3 m 2 m 4 m 5 m 7 m 6 (t+) = (,, ) = Σ(3,5,7) (t+) = (,, ) = Σ(,5,7) y(,, ) = Σ(6,7) 49 m m m 3 m 2 y 5 Örnek: Sekans algılayıcı" Uyarma gereksinimi çizelgesi (ecitation tables)" evre tasarımında türü ikidurumlular kullanıldığında, giriş denklemleri doğrudan sonraki durumlardan hesaplanabilir. ncak ve türü ikidurumlular kullanıldığında bu kolay yol izlenemez. u amaçla durum çizelgesi ve giriş denklemleri arasındaki fonksiyonel ilişkiyi gösteren ve uyarma gereksinimi çizelgesi (ecitation tables) olarak adlandırılan bir çizelge kullanılmalıdır. y 5 52 Uyarma gereksinimi çizelgesi (ecitation tables)" ve tipi ikidurumlular için uyarma gereksinimi çizelgeleri türü ikidurumlular ile İkidurumlu girişleri, durum çizelgesi ve tipi ikidurumlunun uyarma gereksinimi çizelgesinden bulunur. 53 54 9
2/3/2 türü ikidurumlular ile m m m3 m2 m m m 3 m 2 X X X X türü ikidurumlular ile X X X X m 4 m 5 m 7 m 6 m m m 3 m 2 X X m m m 3 m 2 X X m 4 m 5 m 2 m 6 X X X X ( ) 55 56 türü ikidurumlular ile 3 bit lik ikili sayaç urum çizeneği: türü ikidurumlular ile dan a olan değişimi incele 57 58 2 m m m3 m2 türü ikidurumlular ile 2 m m m 3 m 2 2 m m m 3 m 2 2 2 2 2 2 59