Sekvenčna preklopna vezja

Similar documents
Digitalne strukture. Delovni zvezek za laboratorijske vaje. doc. dr. Gorazd Pucihar. Ime in priimek študenta:

Digitalna tehnika. Delovni zvezek za laboratorijske vaje. doc. dr. Gorazd Pucihar. Ime in priimek študenta:

Reševanje problemov in algoritmi

NEODLOČLJIVI PROBLEMI V TEORIJI IZRAČUNLJIVOSTI

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA POLONA ŠENKINC REŠEVANJE LINEARNIH DIFERENCIALNIH ENAČB DRUGEGA REDA S POMOČJO POTENČNIH VRST DIPLOMSKO DELO

Problem umetnostne galerije

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA LUKA VIKTOR ROGAČ KONČNI AVTOMATI DIPLOMSKO DELO

Računalnik iz domin. Škafar, Maja Šafarič, Nina Sangawa Hmeljak Mentor: Vid Kocijan

Sequential vs. Combinational

AKSIOMATSKA KONSTRUKCIJA NARAVNIH

TOPLJENEC ASOCIIRA LE V VODNI FAZI

Eulerjevi in Hamiltonovi grafi

JERNEJ TONEJC. Fakulteta za matematiko in fiziko

Multipla korelacija in regresija. Multipla regresija, multipla korelacija, statistično zaključevanje o multiplem R

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Kvadratne forme nad končnimi obsegi

NIKJER-NIČELNI PRETOKI

UNIVERZA V MARIBORU FAKULTETA ZA NARAVOSLOVJE IN MATEMATIKO. Oddelek za matematiko in računalništvo DIPLOMSKO DELO.

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Verjetnostni algoritmi za testiranje praštevilskosti

Matej Mislej HOMOMORFIZMI RAVNINSKIH GRAFOV Z VELIKIM NOTRANJIM OBSEGOM

Hipohamiltonovi grafi

Cveto Trampuž PRIMERJAVA ANALIZE VEČRAZSEŽNIH TABEL Z RAZLIČNIMI MODELI REGRESIJSKE ANALIZE DIHOTOMNIH SPREMENLJIVK

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

R V P 2 Predavanje 05

DELOVANJA GRUP IN BLOKI NEPRIMITIVNOSTI

Jernej Azarija. Štetje vpetih dreves v grafih

Iskanje najcenejše poti v grafih preko polkolobarjev

POLDIREKTNI PRODUKT GRUP

Univerza v Ljubljani Fakulteta za matematiko in fiziko. Oddelek za fiziko. Seminar - 3. letnik, I. stopnja. Kvantni računalniki. Avtor: Tomaž Čegovnik

Chapter 7 Sequential Logic

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

Matej Gutman. Izvedba nevronske mreže s programirljivimi vezji FPGA. diplomsko delo na univerzitetnem študiju. mentor: doc. dr.

Chapter 14 Sequential logic, Latches and Flip-Flops

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SAŠO ZUPANEC MAX-PLUS ALGEBRA DIPLOMSKO DELO

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Kromatično število in kromatični indeks grafa

TEORIJA GRAFOV IN LOGISTIKA

UNIVERZA V MARIBORU FAKULTETA ZA NARAVOSLOVJE IN MATEMATIKO. Oddelek za matematiko in računalništvo MAGISTRSKA NALOGA. Tina Lešnik

ENAČBA STANJA VODE IN VODNE PARE

INTELLIGENTNI SISTEMI Mehka Logika

Ana Mlinar Fulereni. Delo diplomskega seminarja. Mentor: izred. prof. dr. Riste Škrekovski

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER /2017

Overview of Chapter 4

Hadamardove matrike in misija Mariner 9

Synchronous Sequential Logic

Linearne enačbe. Matrična algebra. Linearne enačbe. Linearne enačbe. Linearne enačbe. Linearne enačbe

OPTIMIRANJE IZDELOVALNIH PROCESOV

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Simetrije cirkulantnih grafov

Simulacija dinamičnih sistemov s pomočjo osnovnih funkcij orodij MATLAB in Simulink

SVM = Support Vector Machine = Metoda podpornih vektorjev

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 7 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

OA07 ANNEX 4: SCOPE OF ACCREDITATION IN CALIBRATION

P2 (10 points): Given the circuit below, answer the following questions:

DOMINACIJSKO TEVILO GRAFA

UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO ODDELEK - FIZIKA. Matej Posinković KVANTNI RAČUNALNIKI SEMINAR. Mentor: prof.

OPTIMIZACIJSKE METODE skripta v pripravi

Grafi, igre in še kaj

SLIKE CANTORJEVE PAHLJAµCE

REGULACIJA ULTRASENZITIVNOSTI LINEARNO SKLOPLJENIH PROTEINSKIH KASKAD

Akcijska logika dreves izvajanj z operatorjem unless

Chapter #6: Sequential Logic Design

Preprečevanje neizvedljivosti urnikov pri metahevrističnem razvrščanju proizvodnih procesov

Digital Design. Sequential Logic

EE141- Spring 2007 Digital Integrated Circuits

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

Izmenični signali moč (17)

CPE/EE 422/522. Chapter 1 - Review of Logic Design Fundamentals. Dr. Rhonda Kay Gaede UAH. 1.1 Combinational Logic

OFF-LINE NALOGA NAJKRAJŠI SKUPNI NADNIZ

Zgoščevanje podatkov

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE

Integrated Circuits & Systems

Izbrana poglavja iz velikih omreºij 1. Zbornik seminarskih nalog iz velikih omreºij

Problem Set 9 Solutions

Dejan Petelin. Sprotno učenje modelov na podlagi Gaussovih procesov

A L A BA M A L A W R E V IE W

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE

UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO ODDELEK ZA MATEMATIKO

Vidyalankar S.E. Sem. III [ETRX] Digital Circuits and Design Prelim Question Paper Solution

Finite State Machine (1A) Young Won Lim 6/9/18

Solutions. Name and surname: Instructions

Topic 8: Sequential Circuits

Clock Strategy. VLSI System Design NCKUEE-KJLEE

GMU, ECE 680 Physical VLSI Design

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

Sequential Circuit Analysis

čas bivanja k-te zahteve v sis. (čas v vrstah + čas za strežbo) - verjetnost k zahtev v sis. v času t - povprečno št.

Lecture 9: Digital Electronics

9/18/2008 GMU, ECE 680 Physical VLSI Design

EET 310 Flip-Flops 11/17/2011 1

Statistika 2 z računalniško analizo podatkov. Neizpolnjevanje predpostavk regresijskega modela

Usmerjene nevronske mreže: implementacija in uporaba

Topic 8: Sequential Circuits. Bistable Devices. S-R Latches. Consider the following element. Readings : Patterson & Hennesy, Appendix B.4 - B.

INTELLIGENTNI SISTEMI NEVRONSKE MREŽE IN KLASIFIKACIJA. Nevronske mreže Prof. Jurij F. Tasič Emil Plesnik

INTEGRATED CIRCUITS. For a complete data sheet, please also download:

Sequential Circuit Design

SIMETRIČNE KOMPONENTE

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA

FRAKTALNA DIMENZIJA. Fakulteta za matematiko in fiziko Univerza v Ljubljani

Analogna elektronska vezja. Uvodna vaja

UNIVERZA V MARIBORU FAKULTETA ZA NARAVOSLOVJE IN MATEMATIKO. Oddelek za matematiko in računalništvo DIPLOMSKO DELO. Gregor Ambrož

Transcription:

- Sekvenčna preklopna vezja (delovna verzija 5..27) Prosojnica št. 7- Primer vezja s povratno povezavo Osnovni pomnilni element je izveden s kaskadno vezavo invertorjev Osnovni element: invertor (INV) Je osnova za načrtovanje statičnih vezij RAM Pomnilnik je lahko izveden tudi z navzkrižno vezavo vrat NOR ali NAN "" "" a bi zagotovili učinek pomnenja moramo zadostiti dva pogoja: - vrednost se spremeni le, ko to želimo - vrednost na izhodu se ohrani, dokler ni spremembe na vhodu Kaskadna vezava invertorjev: statični pomnilnik L Izvedba vezja z izbirnim načinom delovanja: postavitev/ prekinitev povratne povezave \L \L A L Z povratna povezava vzpostavljena - pomnjenje informacije povratna povezava prekinjena - branje informacije Prosojnica št. 7-2

Veriga invertorjev A B C E Posledica lihega števila invertorjev v verigi je krožna oscilacija Glej demo (VERINV.CCT) Časovni diagram: Period of Repeating Waveform ( tp) Gate elay ( td) A (=) t p = n * td n = št. invertorjev B C E Prosojnica št. 7-3 Veriga invertorjev pregled delovanja Time Prikaz za prenosa signala skozi verigo invertorjev Glej demo (VERINV.CCT) Prosojnica št. 7-4

Navzkrižna povezava vrat NOR ali NAN R S Enako kot kaskadna vezava invertorjev Izhod postavi na (reset) ali na (set) R S \ Časovni diagram: Briše Zadrži Postavi R S \ Briše Glej demo (VERINV.CCT) Postavi irka signalov Prepovedano stanje Prepovedano stanje Prosojnica št. 7-5 Obnašanje zadrževalnika RS (teoretično) S R t /t t+ /t+ SR =, SR =, SR = SR = SR = SR = SR = SR = SR = SR = SR = SR =, SR = Prosojnica št. 7-6

Obnašanje zadrževalnika RS pravilnostna tabela (za vrata NOR) K- diagram: SR S ( t ) Pravilnostna tabela: Naslednje stanje = F (S, R, trenutno stanje) R Karakteriastična enačba: S(t) R(t) (t) (t+) + = S + R (drži) (drži) (briše) (briše) (postavi) (postavi) ni dovoljeno ni dovoljeno S R zadrževalnik R-S + Prosojnica št. 7-7 Obnašanje zadrževalnika RS (dejansko) SR =, SR =, SR = SR = SR = SR = SR = SR = SR = SR = SR = irka signalov je razlog, da lahko iz stanja preidemo v v stanje ali pa v stanje. Prosojnica št. 7-8

: urin signal T su T h Input Clock Časovno okno okno je je čas, čas, ko ko se se vrednosti signalov na na vhodih vhodih ne ne smejo smejo spreminjati, da da bi bi bili bili pravilno pravilno razpoznani. Urin signal (Clock, Clk): Je periodičen signal, ki v vezju zagotovi, da pomnilni elementi spremenijo stanje približno ob istem trenutku Pojmi: pozitivna fronta, negativna fronta, visok nivo, nizek nivo Nastavitveni čas (Setup Time T su ) Minimalni časovni interval pred trenutkom nastopa urinega dogodka, ko mora biti vhodni signal stabilen, da bo pravilno prepoznan Čas držanja (Hold Time T h ) Minimalni časovni interval po trenutku nastopa urinega dogodka, ko mora biti vhodni signal stabilen, da bo pravilno prepoznan Prosojnica št. 7-9 Vrste (načini) proženja: Stanje zadrževalnika ali flip-flopa se zamenja z dogodkom na urinem priključku Proženi na ali + fronto flip-flopi Proženi na nivo zadrževalniki pozitivna fronta (signal ure L-na-H) negativna fronta (signal ure H-na-L) pozitivni urin nivo negativni urin nivo Prosojnica št. 7-

Zadrževalnik, prožen na nivo ure proženi zadrževalnik R-S Vezje: \ S \ Ura \enb= povzroči držanje stanja Časovni diagram: \ R \enb \S \R \enb \ \enb >> zakasnitev signala Prosojnica št. 7- Pregled obnašanja zadrževalnikov in flip flopov Vhodno/izhodno obnašanje zadrževalnika in flip-flopa Vrsta pomn.celce trenutek branja vhoda trenutek veljavnosti izhoda zadrževalnik ob vsakem trenutku zakasnitev signala od (brez ure) trenutka spremembe na vhodu zadrževalnik visok urin nivo zakasnitev širjenja od prožen na (T su, T h okrog trenutka spremembe na vhodu nivo negativne urine fronte) Flip flop prožen prehod ure iz L-na-H zakasnitev širjenja od Na pozitivno fronto (T su, T h okoli trenutka vzpona urinega signala trenutka vzpenjanja urinega signala) Flip flop prožen prehod ure iz H-na-L zakasnitev širjenja od Na negativno fronto (T su, T h okoli trenutka padanja urinega signala roba trenutka padanja urinega signala) master/slave prehod ure iz visokega-na-nizek zakasnitev širjenja od Flip flop (T su, T h okoli trenutka padanja urinega sig. roba padanja urinega signala) Prosojnica št. 7-2

Zadrževalniki se odzivajo na spremembe logičnih nivojev na kontrolnih vhodih Primer: G =, vrednost si iz vhoda z zakasnitvijo prenese na izhod (=) Flip flopi podatke shanjujejo v trenutku spremembe urinega signala (pri tem šteje sprememba ali L->H ali H->L).Vrednost na izhodu flip flopa ostane nato nespremenjena do naslednje iste spremembe urinega signala. Različni tipi flip-flopov omogočajo različne izvedbe funkcij. Obnašanje posameznega flip-flopa (ali zadrževalnika) opišemo s karakteristično enačbo. Prosojnica št. 7-3 7474 Proženi flip flopi prožijo ob spremembi urinega nivoja (ali iz nivoja L-na-H ali H-na-L) Clk Positive edge-triggered flip-flop Zadrževalniki se odzivajo na nivo. Izhodni signal sledi vhodnemu signalu v času, ko je urin signal na visokem (ali nizkem) logičnem nivoju. 7476 Časovni diagram: C Clk Level-sensitive latch S krožcem na tem mestu bi označili proženje na negativno fronto Clk 7474 7476 Prikaz obnašanja nivojske ter prožene pomnilne celice Prosojnica št. 7-4

Prikaz časovne specifikacije T su T h 74LS74 Flip-flop prožen na Pozitivno urino fronto - Setup time - Hold time Minimalna širina ure Zakasnitev širjenja signala (nizko na visoko, visoko na nizko, ma in tipično) Clk T su 2 ns T h 5 ns T w 25 ns T plh 25 ns 3 ns T su 2 ns T h 5 ns T phl 4 ns 25 ns Vse meritve so izvedene od trenutka spremenbe urinega signala dogodka (npr. sprememba signala pri prehodu iz L-na-H) Prosojnica št. 7-5 Prikaz časovne specifikacije 74LS76 zadrževalnik z uro T su - Setup time T h - Hold time Minimalna širina ure Zakasnitev širjenja signala (nizko na visoko, visoko na nizko, ma in tipično) Clk T su 2 ns T w 2 ns T plh C» 27 ns 5 ns T h 5 ns T su 2 ns T phl C» 25 ns 4 ns T h 5 ns T plh» 27 ns 5 ns T phl» 6 ns 7 ns Prosojnica št. 7-6

JK flipflop FF JK odpravlja prepovedano stanje zadrževalnika RS? Rešitev: če povežemo izhode z vhodi in tako preprečimo, da bi bila R in S sočasno na Če sta J, K oba hrati na se vrednost izhoda zamenja K J R S R-S latch \ \ J(t) K(t) (t) (t+ ) RŽI (HOL) BRIŠE (RESET) Karakteriastična enačba za JK: POSTAVI (SET) + = K + J ZAMENJA ( TOGGLE) Prosojnica št. 7-7 Flip-flop prožen na pozitivno urino fronto (prehod ure iz L-na-H) Shrani vrednost vhodnega signala v trenutku spremembe urinega signala CLK (L-na-H) Spremembe vrednost vhodnega signala v drugem času ne vplivajo na vrednost izhodnega signala trenutki proženja Prosojnica št. 7-8

Flip flop JK prožen na pozitivno fronto ure CLK (prehod ure iz L-na-H) a) vezje flip flopa JK b) grafični simbol FF JK lahko izvedemo tudi z flip-flopom vhod J postavlja izhodno vrednost vhod K briše izhodno vrednost J = K = -> invertira vrednost na izhodu J K CLK zamenja prehod ure Prosojnica št. 7-9 Flip flop JK prožen na pozitivno urino fronto (prehod ure iz L-na-H) podatkovna vhoda J in K J (J=) -> postavi, K (K=) -> briše, če sta J in K na se na izhodu vrednost zamenja Karakteristična tabela trenutki proženja Prosojnica št. 7-2

Flip flop T prožen na na pozitivno urino fronto (prehod ure iz L-na-H) Izvedba z flip flopom T= -> ohrani izhodno vrednost T= -> zamenja izhodno vrednost a) T flip flop izveden z flip flopom JK b) T flip flop izveden z flip flopom c) grafični simbol Izvedba z flip flopom T= -> ohrani izhodno vrednost T= -> zamenja izhodno vrednost T C zamenja prehod ure Prosojnica št. 7-2 Asinhroni priključki pri pomnilih celicah (vhodi) Potrebujemo jih za postavljanje (=) ali brisanje (=) izhoda Priporočljiva je uporaba priključkov Preset and Clear!! Prosojnica št. 7-22

Uporaba pomnilnih elementov Kako izbirati najprimernejši tip pomnilnega elementa? RS zadrževalnik z uro: kot ni priporočljiv pomnilni element za urin signal visoke frekvence! Osnovni gradnik za izvedbo drugih vrst flip flopov JK flip flop: najbolj sestranski, primeren za implementacijo flip-flopa in T dobra stran: zahteva manjše števil elementov za izvedbo vezja slaba stran: dva vhoda povečata število povezav v vezju flip flop: dobra stran: zahteva majhno število povezav v vezju, zelo je priljubljen pri načrtovanju pri tehnologijah VLSI enostavno načrtovanje sekvenčnega vezja primeren je za izvedbo pomnilnih registrov T flip flop: dejansko ne obstaja, izvedemo ga s flip-flopom JK; je najprimernejši za uporabo v števnikih Prosojnica št. 7-23 Izvedba vezij z različnimi vrstami flip flopov Karakteristične enačbe flip flopov: RS: + = S + R : + = JK: + = J + K T: + = T + T obimo s Karnaug. - diagramom Za + = (Inputs, ) Npr., J=K=, potem + = J=, K=, potem + = J=, K=, potem + = J=, K=, potem + = Primer izvedbe enega tipa flip-flopa z drugim J C K K J C npr. izveden z JK ali, JK izveden z Prosojnica št. 7-24

Izvedba vezij z različnimi vrstami flip flopov Postopek načrtovanja Vzbujevalna tabela: kakšne vrednosti na vhodnih priključkih potrebujemo da dosežemo želene prehode stanj? + Primer: izvedimo FF z FF JK : ) Podamo obnašanje FF s Karnaugovim diagramom + = (, ) (glej vzbujevalno tabelo iz katere tvorimo K-diagram) 2) Sestavimo K-diagrama za vhoda J in K z enakimi vrednostmi (, ) 3) Popolnimo K-diagram s primernimi vrednostmi za vhoda J in K a bi povzročili spremembe stanja kot originalni K diagram Npr. = =, + = potem J =, K = R S J K T + = J = K = Prosojnica št. 7-25 Izvedba vezij z različnimi vrstami flip flopov Izvedimo flip flop JK z flip flopom : ) Podajmo Karnaghov diagram, ki prikazuje obnašanje flip flopa JK - + = F(J, K, ) 2,3) glejte primer! JK J Rezultirajoča enačba je kombinacijska logična vrednost na vhodu ki ima enako obnašanje kot flip flop JK. Je identična karakteristični enačbi za flip-flop JK. K + = = J + K Prosojnica št. 7-26

Ime, simbol, karakteristična tabela in enačba, vzbujevalna tabela http://www.eelab.usyd.edu.au/digital_tutorial/part3/fl-types.htm Prosojnica št. 7-27 Sekvenčna vezja Combinational z logic n z m Kombinacijsko vezje (a) z n Combinational logic z m Model za sekvenčno vezje: odane so povratne povezave nekateri izhodi so hkrati tudi vhodi y y r Y r Y Memory (b) Prosojnica št. 7-28

Analiza sinhronega sekvenčnega vezja Problem: Izvedimo analizo (teoretično) vezja. Ugotoviti želimo, kako se bo vezje obnašalo. Analizo bomo izvededli v naslednjih korakih.. Vsaki pomnilni celici v (sinhronem) sekvenčnem vezju priredimo spremenljivko stanja (npr. y, y2,..) 2. Za vsako pomnilno celico zapišemo vhodne vzbujevalne enačbe. Zapišemo tudi izhodne enačbe vezja. 3. Vhodne vzbujevalne enačbe vstavimo v karaktereistične enačbe uporabljenih pomnilnih celic, da dobimo enačbe za naslednja stanja ( + ). 4. Iz enačb za naslednja stanja in iz izhodnih enačb sestavimo tabelo prehajanja stanj in narišemo časovni diagram, s katerim podamo obnašanje vezja. Prosojnica št. 7-29 Analiza sinhronega sekvenčnega vezja Primer: Analizirajte sinhrono sekvenčno vezje s slike. Narišite diagram prehajanja stanj in sestavite tabelo prehajanja stanj. Prosojnica št. 7-3

Analiza sinhronega sekvenčnega vezja Izhod prve pomnilne celice označimo s spremenljivko stanja y, izhod druge pomnilne celice pa s spremenljivko stanja y2. Zapišimo krmilne enačbe pomnilnih celic: = y y 2 2 = + y y 2 Zapišimo enačbo za naslednjo vrednost posamezne spremenljivke stanja: y + = y y 2 y 2 + = + y y 2 Zapišimo izhodno enačbo: z = y y 2 (tip Mealy) Izpolnimo tabelo prehajanja stanj. Tabela prehajanja stanj: sedanje stanje y y2 naslednje stanje /izhod = y+ y2+/z y+ y2+/z / / iagram prehajanja stanj (dopolnite sami): / / / / / / Prosojnica št. 7-3 Sinteza sinhronega sekvenčnega vezja Problem: Podano je zahtevano obnašanje sinhronega sekvenčnega vezja. Izpeljati želimo čimbolj ekonomično strukturo z danim obnašanjem. Koraki sinteze so:. Iz besednega opisa problema sestavimo diagram ali tabelo prehajanja stanj. 2. Iz sestavljenega diagrama ali tabele prehajanja stanj odstranimo morebitna redundantna stanja. (Postopek za odkrivanje in odpravljanje redundatnih stanj bomo obravnavavali v naslednjem poglavju. Tabele in diagrami prehajanja stanj v tem poglavju bodo sestavljeni tako, da ne bodo vsebovali redundatnih stanj.) 3. Stanja zakodiramo (označimo). P stanj zakodiramo s p spremenljivkami stanj Y= y,y2,y3,,,yp, kjer je 2 p P. obimo zakodiran diagram ali zakodirano tabelo prehajanja stanj. 4. Izberemo tip pomnilniške celice. Izpeljemo funkcije za primarne izhode in sekundarne izhode (vzbujevalne enačbe). 5. Vezje narišemo. Prosojnica št. 7-32

Sinteza sinhronega sekvenčnega vezja Primer: Potrebujemo sinhrono sekvenčno vezje z vhodom in izhodom z, ki generira izhod z=, ko se na vhodu odkrije sekvenca. V vseh drugih časih je z=. Npr., za vhodno sekvenco je izhodna sekvenca. Uporabimo pomnilne celice JK. / / r e se t / / / a b c d / / / Prosojnica št. 7-33 Sinteza sinhronega sekvenčnega vezja sedanje stanje a b naslednje stanje /izhod = b/ a/ b/ c / notranja stanja a b c d koda y y 2 c d/ a/ d b/ c / sedanje stanje y y2 naslednje stanje /izhod = y+ y2+/z / / / / y+ y2+/z / / / / Prosojnica št. 7-34

Sinteza sinhronega sekvenčnega vezja vhod sedanje stanje naslednje stanje izhod krmilni vhodi pomnilnih celic y y 2 y + y 2 + z J K J 2 K 2 z: J : K : J 2 : K 2 : y y 2 y y 2 y y 2 y y 2 y y 2 z= y y 2 J = K = J 2 = K 2 = Prosojnica št. 7-35 Avtomati Avtomat je skupek množic in relacij med njimi. Avtomate obravnava teorija o avtomatih. Avtomati se uporabljajo na najrazličnejših področjih: v digitalnih sistemih, računalništvu, matematiki, robotiki, jezikoslovju, družbenih vedah, itd. Realizaciji avtomata lahko rečemo informacijski stroj. Sekvenčna vezja, ki smo jih že obdelali, ustrezajo informacijskemu stroju ali realizaciji avtomata. Glavni razvijalci teorije o avtomatih so Huffman, Moore, Mealy,Turing in von Neumann v letih od 936 do 6. Od vseh avtomatov so najbolj razširjeni končni avtomati. Najbolj splošen je Touringov stoj oz. avtomat. Po splošnosti se med obe skrajnosti uvrščajo vmesni avtomati (med njimi so potisni, skladovni in linearno ločljivi avtomati). Zanimali nas bodo samo deterministični avtomati. Med vsemi avtomati sta najbolj znana Mealyjev in Moorov avtomat. Moorov avtomat je samo posebna oblika Mealyevega avtomata. Izhodna vrednost se pri Moorovem avtomatu lahko spremeni samo s spremembo stanj, pri Mealyjevemu pa še tudi s spremembo vhoda. Končni avtomati osnovne definicije ef.: Končni avtomat tipa Mealy A ME (krajše Mealyjev avtomat) je peterica: kjer je A ME = (I; Y; O; δ; λ), I končna in neprazna množica vhodnih črk - vhodna abeceda, Y končna in neprazna množica notranjih črk (stanj) avtomata - notranja abeceda, O končna in neprazna množica izhodnih črk - izhodna abeceda, δ: I Y -> Y funkcija prehajanja stanj, λ: I Y -> O izhodna funkcija. Velikokrat v deniciji dodamo tudi začetno stanje y єy. To je stanje, v katerem se avtomat nahaja v začetku delovanja. Prosojnica št. 7-36

Avtomati Funkcijo prehajanja stanj in izhodno funkcijo lahko izrazimo na naslednji način: y + = δ(i; y); i I; y Y in o = λ(i; y); i I; y Y; o O, kjer je i sedanja vhodna črka, s sedanja notranja črka (sedanje stanje), y+ naslednja notranja črka (naslednje stanje) in o sedanja izhodna črka avtomata. δ je casovna preklopna funkcija in λ navadna preklopna funkcija. ef.: Končni avtomat tipa Moore A MO (krajše Moorov avtomat) je poseben primer Mealyjevega avtomata, in sicer z enostavnejšo izhodno funkcijo: λ : Y -> O, tj. o = λ(y), y Y; o O, V Mealyjevem avtomatu je torej sedanja izhodna črka odvisna od sedanje vhodne črke in sedanjega stanja, v Moorovem pa samo od sedanjega stanja avtomata. Končni avtomat je determinističen, ker za katerakoli stanja y; y ; y 2 Y in poljubno vhodno črko i I velja: če λ(i; y) = y in δ(i; y) = y 2, potem y = y 2. Če primerjamo definicijo končnega avtomata z modelom sinhronega sekvenčnega vezja, ugotovimo, da predstavlja sinhrono sekvenčno vezje možno realizacijo avtomata. Funkcija prehajanja stanj je realizirana z vzbujevalnimi enačbami za vhode pomnilnih celic, izhodna funkcija pa na primarnih izhodih kombinacijske logike C. Prosojnica št. 7-37 Avtomati Mealyjev in Moorov avtomat si lahko ponazorimo z blokovno shemo: : Y Y Y Z z Z y Y Mealyev avtomat : Y Y Y Z z Z y Y Moorov avtomat Prosojnica št. 7-38

Avtomati Omenimo ze zdaj, da lahko vsak Mealyjev avtomat pretvorimo v ekvivalenten Moorov avtomat in obratno. Mealyjevega in Moorovega avtomata ponavadi ne opisujemo eksplicitno s funkcijskima izrazoma za y + in o, ampak s tabelo ali grafom prehajanja stanj na enak način, kot smo opisovali obnašanje sekvenčnih vezij tipa Mealy in Moore. Končnost končnih avtomatov je v tem, da mora vsaka abeceda (I, Y in O) vsebovati končno neničelno število črk. Če bi imela na primer notranja abeceda Y neskončno mnogo črk, bi imeli avtomat z neskončnim številom stanj. Primer: Imamo Mealyjev avtomat M s podanim grafom Abecede tega avtomata so naslednje množice: I = {; } - vhodna abeceda, Y = {A;B;C;} - notranja abeceda, O = {; } - izhodna abeceda. Prosojnica št. 7-39 Avtomati Naj bo poljubna množica. Z * označimo množico vseh končnih zaporedij elementov iz množice, vključno s praznim. Sekvenca (ali beseda) je končno (lahko prazno) zaporedje črk iz ene od abeced. Vhodna sekvenca je zaporedje w I. Izhodna sekvenca je zaporedje O. Na končni avtomat lahko gledamo kot na pretvornik vhodne sekvence v izhodno. Končni avtomat lahko uporabimo za reševanje vseh tistih problemov, ki se dajo izraziti s pretvorbo sekvenc. Za zgornji avtomat M predpostavimo, da je njegovo začetno stanje stanje A. Potem pretvori vhodno sekvenco w = v izhodno sekvenco =. Pomembna naloga končnega avtomata je, da odloči, ali je dana vhodna sekvenca element neke vnaprej specificirane množce sekvenc. Avtomat izvrši to nalogo tako, da sprejme tiste sekvence, ki so elementi množice, in zavrne tiste, ki to niso. Za avtomat, ki se priče izvajati v svojem začetnem stanju, pravimo, da sprejme vhodno sekvenco, če postavi izhod na, ko sprejme zadnjo črko vhodne sekvence. Avtomat M na primer sprejme sekvenci in ter zavrne sekvenco. Če je y + = (i; y), pravimo, da je stanje y + i-naslednik stanja s (pišemo y -> y + ) Stanje B je na primer -naslednik stanja A v avtomatu M, ker iz stanja A pridemo v B, če damo na vhod. V splošnem, če vhodna sekvenca w popelje avtomat iz stanja y i v stanje y j, pravimo, da je stanje y j w-naslednik stanja y i. V avtomatu M je na primer stanje -naslednik stanja A. Če za vsak par stanj y i ; y j končnega avtomata obstaja vhodna sekvenca, ki popelje avtomat iz y i v y j, pravimo, da je avtomat krepko povezan. Prosojnica št. 7-4

Avtomati: Ekvivalenca stanj in minimizacija avtomata Pri tvorbi grafa ali tabele prehajanja stanj končnega avtomata se pogosto zgodi, da vsebuje redundantna ali odvečna stanja. Število pomnilniških celic, ki je potrebno za realizacijo avtomata, je neposredno odvisno od števila stanj. Zaradi tega minimizacija števila stanj v mnogih primerih zmanjša kompleksnost in ceno realizacije. Ekvivalenca stanj in avtomatov ef.: Končna avtomata A in A 2 (istega tipa) sta ekvivalentna, če in samo če:. I = I 2 ; O = O 2 in 2. Če w = w 2, potem = 2, za vsak w i I i *, = O i *, i=,; tj. če za vsako možno vhodno sekvenco dobimo enako izhodno sekvenco v obeh avtomatih. ef.: Stanji y a in y b končnega avtomata A ME = (I; Y; O; δ; λ) sta ekvivalentni, če in samo če sta avtomata A z začetnim stanjem y a in A z začetnim stanjem y b ekvivalentna. ef.: Stanji y a in y b končnega avtomata A sta razločljivi, če in samo če obstaja vsaj ena končna vhodna sekvenca, ki povzroči različni izhodni sekvenci za začetni stanji y a in y b v avtomatu A. Sekvenca, ki razloči ti stanji, se imenuje razločevalna sekvenca para stanj (y a ; y b ). ef.: Če za stanji y a in y b končnega avtomata A razločljivi, potem sta razločljivi s vhodno sekvenco dolžine n -, pri čemer je n število stanj avtomata A. Izrek: Če stanji nista k-razločljivi, pravimo, da sta k-ekvivalentni. Izrek: Stanji, ki sta k-ekvivalentni, sta tudi r-ekvivalentni za vse r < k. Če sta stanji k-ekvivalentni za vsak k, sta ekvivalentni. Prosojnica št. 7-4 Avtomati: Ekvivalenca stanj in minimizacija avtomata Primer: Mealyev avtomat A : sedanje stanje naslednje stanje/ izhod i= A B C E F E/ F/ E/ F/ C/ B/ / / B/ B/ F/ C/ Stanji A in B sta -razločljivi, ker za i = dobimo izhod, če je A v začetnem stanju A, in izhod, če je A v začetnem stanju B, in torej nista niti -ekvivalentni. Stanji A in E pa sta 3- razločljivi. Razločevalna sekvenca je w =, izhodni sekvenci za začetni stanji A in E pa sta oz.. Sta pa na primer 2-ekvivalentni. Relacija ekvivalence je tranzitivna: če sta stanji y i in y j ekvivalentni ter y j in y k ekvivalentni, sta tudi stanji y i in y k ekvivalentni. Množico stanj avtomata torej lahko razdelimo v tuje si množice, imenovane ekvivalenčni razredi, tako da sta stanji v istem razredu natanko tedaj, če sta ekvivalentni, in sta v različnih razredih, če nista ekvivalentni, tj. če sta razločljivi. Prosojnica št. 7-42

Avtomati: Ekvivalenca stanj in minimizacija avtomata Procedura minimizacije stanj ef.: Vzemimo množico Y = {y,, y r }. Iz elementov te množice je mogoče tvoriti 2 r različnih podmnožic. Če iz teh podmnožic izberemo takšne neprazne podmnožice, da za njih velja B U B 2 U U B q = Y, B i B j = ; za i; j {,,q}, i j, imenujemo množico = {B,B 2,,B q } particija na množici Y. Elemente B i imenujemo bloki. Pri q blokih imamo q-bločno particijo. Izrek: Stanji y a in y b končnega avtomata A sta ekvivalentni natanko tedaj, če:. (a) Mealy: i I; λ(y a ; i) = λ(y b ; i), tj. če za vsak vhodni simbol dobimo enak izhodni simbol za y a in za y b ; (b) Moore: λ(y a ) = λ(y b ), tj. če v y a in y b dobimo enak izhodni simbol, 2. in i I; δ(y a, i) δ(y b, i), tj. Če za vsak vhodni simbol pridemo pridemo iz y a in iz y b v naslednji stanji, ki sta med seboj tudi ekvivalentni. Prosojnica št. 7-43 Avtomati: Ekvivalenca stanj in minimizacija avtomata Procedura minimizacije stanj Opišimo proceduro za iskanje množic ekvivalentnih stanj podanega avtomata A, ki temelji na tem izreku. Želen rezultat je taka particija stanj avtomata, da bosta dve stanji v istem bloku, če in samo če sta ekvivalentni.. korak: Tvorimo particijo, v kateri so v istem bloku -ekvivalentna stanja, v različnih pa -razločljiva, takole: Stanja, ki imajo enake izhode pri vseh možnih vhodih, postavimo v isto podmnožico (Mealy). (Moore: stanja, ki imajo enake izhode, postavimo v isto podmnožico.) V vseh naslednjih korakih, to je za vsak k >, izvajamo naslednji korak: k+. korak: Tvorimo particijo k+, v kateri so v istem bloku k + -ekvivalentna stanja, v različnih pa k + - razločljiva, iz particije k takole: v isti blok particije k+ postavimo tista stanja, ki so v istem bloku particije k in katerih i-nasledniki za i I so tudi v skupnem bloku particije k. Če za neki k dobimo k+ = k, je procedura končana in k vsebuje množice ekvivalentnih stanj avtomata. k imenujemo ekvivalenčna particija. Primer: minimizacije avtomata A (izveden na predavanju!). Izrek: Ekvivalenčna particija je edinstvena. Lahko ugotovimo tudi, da sta končna avtomata brez določenih začetnih stanj A in A 2 ekvivalentna, če in samo če za vsako stanje v A obstaja ekvivalentno stanje v A 2 in obratno. V praksi se pogosto dogaja, da nekatere kombinacije stanj ali vhodov niso možne. V drugih primerih so prehodi stanj popolnima definirani, toda za nekatere kombinacije stanj in vhodov vrednosti izhodov niso pomembne, zato jih ne specificiramo. Takim avtomatom pravimo nepopolno specificirani avtomati. Pri nepopolno specificiranih avtomatih namesto o ekvivalenci govorimo o kompatibilnosti stanj in avtomatov. Prosojnica št. 7-44

Avtomati: Pretvorba avtomatov iz tipa Mealy v tip Moore in obratno va končna avtomata (istega tipa) (z definiranim začetnim stanjem) sta ekvivalentna, če dasta pri enakih vhodnih sekvencah enake izhodne sekvence. V primeru avtomatov A ME in A MO pa ekvivalenca ni tako stroga. Omenjena avtomata sta ekvivalentna, če imata pri enakih vhodnih sekvencah enake izhodne sekvence, pri tem pa prva črka na izhodu avtomata A MO ne šteje (tj. ni pomembna). Pretvorba A MO v A ME Preprostejša je pretvorba A MO v A ME. Stanja in prehodi v A ME so enaki onim v A MO. Kadar ima stanje s v A MO izhod o, je vsak prehod v A ME v stanje s označen z izhodom o. Izpeljava je naslednja: če potem pri čemer je A MO = (I, Y, O, δ, λ MO, y ), A ME = (I, Y, O, δ, λ ME, y ); λ ME (i, y) = λ MO (δ(i, y)) za vsak i I y Y. Primer (predavanja). Pretvorba A ME v A MO Izpeljava avtomata A MO iz podanega avtomata A ME je nekoliko težja. Zgornje izpeljave ne moremo kar preprosto obrniti, ker lahko A ME vsebuje stanje y, katerega vhodni prehodi so označeni z različnimi izhodnimi črkami. a bi obšli to težavo, označimo stanja v avtomatu A MO z vsemi pari stanje-izhod iz množice Y ME O iz avtomata A ME. Avtomat A MO bo vstopil v stanje (y, o), kadarkoli A ME vstopi v stanje y in tvori izhodno črko o. Izpeljava je naslednja: če potem A ME = (I, Y ME, O, δ ME, λ ME, y ), A MO = (I, Y MO, O, δ MO, λ MO, (y, O )), Prosojnica št. 7-45 Avtomati: Pretvorba avtomatov iz tipa Mealy v tip Moore in obratno pri čemer je Y MO = Y ME O in o O poljubna izhodna črka: Funkciji δ MO in λ MO sta definirani na naslednji način: Kadar ima A ME prehod y i/o y ima A MO prehod za vsak o O. y,o o i/o y,o o Kadar ima A ME začetno stanje y, ima A MO v grafu prehajanja stanj začetno stanje s,s o za poljuben o O. Primer (predavanja) Prosojnica št. 7-46

Avtomat: ekompozicija končnih avtomatov Računanje s particijami ef.: Če sta in 2 particiji na mnozici Y, je produkt" =. 2 particija na Y, ki jo dobimo s presekom blokov iz s tistimi 2 : B = B i B J, B, B, B 2 2. ef.: Če sta in 2 particiji na množici Y, je "vsota" = in 2 particija na Y, ki jo dobimo, če združimo bloke particij in 2, ki imajo vsaj en skupen element. Obstajata dve značilni particiji: particija enote E in particija niča ali ničelna particija. E ima en blok, v katerem so vsi elementi množice Y, pa ima za vsak element y Y svoj blok. Če je poljubna particija na množici Y, velja:. = E. = + = E. = E Prosojnica št. 7-47 Avtomat: ekompozicija končnih avtomatov ef.: Vzemimo, da je = {B,B 2,,B q } neka particija na množici stanj Y končnega avtomata A z vhodnimi črkami i I in prehajalno relacijo δ. Particija ima substitucijsko značilnost, če velja: δ(i;b j ) B k za vsak i I; j {,2,, q}. tj. vsa stanja iz istega bloka se za poljubno vhodno črko i preslikajo v stanja, ki so spet skupaj v bloku. Izrek: Particija s substitucijsko značilnostjo, ki ima za poljubno vhodno črko za vsako stanje v bloku B enako izhodno črko, je ekvivalenčna particija. Sedaj se lotimo problema dekompozicije avtomata. Ideja je naslednja. Namesto da bi realizirali celoten avtomat, ga najprej dekomponiramo v manjše avtomate, vsakega izvedemo posebej, nato pa jih med seboj povezemo. Tako dobljeni sestavljeni avtomat se mora navzven obnašati enako kot podani avtomat. ve osnovni vrsti dekompozicije končih avtomatov sta serijska in paralelna dekompozicija (obravnavali bomo samo dekompozicijo enega avtomata v dva). Prosojnica št. 7-48

Avtomat: ekompozicija končnih avtomatov Serijska dekompozicija končnega avtomata Serijska dekompozicija avtomata A na podavtomata A a in A b je možna le v primeru, če za množico stanj Y avtomata A najdemo particiji a in b tako, da velja a in b = in ima ena od particij a, b substitucijsko značilnost. Paralelna dekompozicija končnega avtomata Paralelna dekompozicija avtomata A na avtomat A a in A b obstaja le, če najdemo particiji a in b tako, da velja a in b = in ima tako particija a kot particija b substitucijsko značilnost. Prosojnica št. 7-49