Lecture # 15 Theory Of Automata By Dr. MM Alam 1.

Slides:



Advertisements
Similar presentations
Theory Of Automata By Dr. MM Alam
Advertisements

Theory Of Automata By Dr. MM Alam
Chapter 7 Henry Hexmoor Registers and RTL
Give qualifications of instructors: DAP
Give qualifications of instructors: DAP
CS 151 Digital Systems Design Lecture 19 Sequential Circuits: Latches.
Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
1 Lecture 20 Sequential Circuits: Latches. 2 Overview °Circuits require memory to store intermediate data °Sequential circuits use a periodic signal to.
Circuits require memory to store intermediate data
Software Engineering, COMP 201 Slide 1 Automata and Formal Languages Moore and Mealy Automata Ralf Möller Hamburg Univ. of Technology based on slides by.
Finite Automata with Output
Lecture # 14 Theory Of Automata By Dr. MM Alam 1.
CS 151 Digital Systems Design Lecture 21 Analyzing Sequential Circuits.
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
COMMONWEALTH OF AUSTRALIA Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf of Monash University.
CS5371 Theory of Computation
ECE 331 – Digital System Design
CS 300 – Lecture 3 Intro to Computer Architecture / Assembly Language Sequential Circuits.
Give qualifications of instructors: DAP
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG)
ECE 331 – Digital Systems Design Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #19)
Counters  A counter is a device which stores (and sometimes displays) the number of times a particular event or process has occurred, often in relationship.
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
Rosen 5th ed., ch. 11 Ref: Wikipedia
Unit 14 Derivation of State Graphs
CSC312 Automata Theory Lecture # 19 Chapter # 8 by Cohen Finite Automata with Output.
Moore machine and Mealy machine (P.274)
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 11 Binary Adder/Subtractor.
Introduction to State Machine
1 ENGG 1015 Tutorial Digital Logic (II) (70 pages) 15 Oct Learning Objectives  Learn about Boolean Algebra (SoP/PoS, DrMorgan's Theorem, simplification),
DLD Lecture 26 Finite State Machine Design Procedure.
1 Recap lecture 22 Applications of complementing and incrementing machines, Equivalent machines, Moore equivalent to Mealy, proof, example, Mealy equivalent.
1 Recap lecture 21 Example of Moore machine, Mealy machine, Examples, complementing machine, Incrementing machine.
Lecture # 12. Nondeterministic Finite Automaton (NFA) Definition: An NFA is a TG with a unique start state and a property of having single letter as label.
Lecture 8 Theory of AUTOMATA
UNIT - I Formal Language and Regular Expressions: Languages Definition regular expressions Regular sets identity rules. Finite Automata: DFA NFA NFA with.
Lecture # 15. Mealy machine A Mealy machine consists of the following 1. A finite set of states q 0, q 1, q 2, … where q 0 is the initial state. 2. An.
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
Dr. ClincyLecture Slide 1 CS Chapter 3 (3A and ) Part 8 of 8 Dr. Clincy Professor of CS.
Boolean Algebra and Computer Logic Mathematical Structures for Computer Science Chapter 7 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Boolean Logic.
1 Section 11.2 Finite Automata Can a machine(i.e., algorithm) recognize a regular language? Yes! Deterministic Finite Automata A deterministic finite automaton.
Chapter 3 Boolean Algebra and Digital Logic T103: Computer architecture, logic and information processing.
Lecture 06: Theory of Automata:08 Finite Automata with Output.
Lecture 14: Theory of Automata:2014 Finite Automata with Output.
Mealy and Moore Machines Lecture 8 Overview Moore Machines Mealy Machines Sequential Circuits.
1 Advanced Theory of Computation Finite Automata with output Pumping Lemma Theorem.
Finite Automata (FA) with Output FA discussed so far, is just associated with R.Es or language. Is there exist an FA which generates an output string corresponding.
Lecture #5 Advanced Computation Theory Finite Automata.
Lecture # 16. Applications of Incrementing and Complementing machines 1’s complementing and incrementing machines which are basically Mealy machines are.
Lecture 15: Theory of Automata:2014 Finite Automata with Output.
SLIDES FOR CHAPTER 15 REDUCTION OF STATE TABLES STATE ASSIGNMENT
Lecture 4. Sequential Logic #2
Introduction to Advanced Digital Design (14 Marks)
Analysis of Clocked Sequential Circuit
Digital Design Lecture 9
Theory Of Automata By Dr. MM Alam
Assistant Prof. Fareena Saqib Florida Institute of Technology
Jeremy R. Johnson Mon. Apr. 3, 2000
CSE 140L Discussion Finite State Machines.
Systems Architecture I
Recap lecture 19 NFA corresponding to Closure of FA, Examples, Memory required to recognize a language, Example, Distinguishing one string from another,
Recap lecture 23 Mealy machines in terms of sequential circuit.
Finite Automata with Output
Recap lecture 20 Recap Theorem, Example, Finite Automaton with output, Moore machine, Examples.
EGR 2131 Unit 12 Synchronous Sequential Circuits
Finite Automaton with output
CSC312 Automata Theory Kleene’s Theorem Lecture # 12
Kleene’s Theorem (Part-3)
Mealy and Moore Machines
What is it? The term "Automata" is derived from the Greek word "αὐτόματα" which means "self-acting". An automaton (Automata in plural) is an abstract self-propelled.
Presentation transcript:

Lecture # 15 Theory Of Automata By Dr. MM Alam 1

Lecture 14 at a glance… 2 Example Moore and Mealy Machines Repeat Incrementing Mealy machines Overflow state.

Constructing the incrementing machine continued … The Mealy machine have the states q 0, q 1, q 2, where q 0 is the start state and  = {0,1}, Г={0,1} 3

Overflow state Due to typical property of Mealy machines of having input bits equals to outputs, if string 1111 is run as input, the output will be 0000 and not This is called overflow state. 4

Relationship between input and output Generally, a Mealy machine does not accept or reject an input string, there is an implicit relationship between the input and output string. Consider the following example Mealy machine taken from Daniel A Cohen book, in which whenever a double letter such as aa or bb appears, the output string places 1 as indication. 5

6

Theorem Statement: For every Moore machine there is a Mealy machine that is equivalent to it (ignoring the extra character printed the Moore machine). Proof: see the following example… 7

8

Theorem Statement: For every Mealy machine there is a Moore machine that is equivalent to it (ignoring the extra character printed the Moore machine). Proof: Let M be a Mealy machine. At each state there are two possibilities for incoming transitions 1.All incoming transitions have the same output. 2.All incoming transitions have different output. 9

Proof continued … If all the transitions have same output characters, handling it is very easy. If all the transitions have different output characters, then the corresponding state will be divided in to the number of outputs generated by incoming transitions. Please note that the divided state shall behave like the undivided one, that is the output should be same. 10

Continued… Initial state conversion…. No output on a set of transitions…. 11

Example Consider the following Mealy machine 12

Example continued... Dividing the state q0 into q0/0 and q0/1 13

Example continued... Shifting the output character 1 of transition a to q 1 14

Example continued... Shifting the output character 0 of transition b to q 3 15

Example continued Dividing the state q2 into q2/0 and q2/1

Finite Automata as Sequential Circuits How the state machines that we have studied so far, can be used as sequential circuits. We have already seen these systems working in our computer logic and architecture course. Automata that we have studied so far, is called transducers because of their similarity to digital circuits.

Example Taken from Daniel I Cohen Book Let us consider an example of a simple sequential circuit. The box labeled NAND means "not and.“. Its output wire carries the complement of the Boolean AND of its input wires. The output of the box labeled DELAY is the same as its previous input. It delays transmission of the signal along the wire by

Example1.. one step (clock pulse). The DELAY is sometimes called a D flip- flop. The AND and OR are as usual. Current in a wire is denoted by the value 1, no current by 0.

Example1.. NAND DELAYOR Output BA input

Example1.. We identify four states based on whether or not there is current at points A and B in the circuit. q o is A = 0 B = 0 q 1, is A = 0 B = 1 q 2 is A = 1 B = 0 q 3 is A = 1 B = 1

Example1.. The operation of this circuit is such that after an input of 0 or 1 the state changes according to the following rules: new B = old A new A = (input) NAND (old A OR old B) output = (input) OR (old B) At various discrete pulses of a time clock input is received, the state changes, and output is generated.

Example1.. Suppose we are in state q 0 and we receive the input 0: new B = old A = 0 new A = (input) NAND (old A OR old B) = (0) NAND (0 OR 0) = 0 NAND 0 = 1 output = 0 OR 0 = 0

Example1.. The new state is q 2 (since new A = 1, new B = 0). If we are in state q 0 and we receive the input 1: new B = old A = 0 new A = 1 NAND (0 OR 0) = I output = 1 OR0 = 1 The new state is q 2 (since the new A = 1 and the new B = 0).

Example1.. If we are in q 1, and we receive the input 0: new B = old A = 0 new A = 0 NAND (0 OR 1) = I output = 0 OR 1 = I The new state is q 2. If we are in q 1, and we receive the input 1: new B = old A = 0 New A = 1 NAND (0 OR 1) = 0 output = I OR 1 = 1 The new state is q o

Example1.. If we are in state q 2 and we receive the input 0: new B = old A = 1 new A = 0 NAND (1 OR0) = 1 output = 0OR0 = 0 The new state is q 3 (since new A = 1,new B = 1). If we are in q 2 and we receive the input 1: New B = old A = 1 new A = 1 NAND (1 OR 0) = 0 output = I OR0 = I The new state is q 1.

Example1.. If we are in q 3 and we receive the input 0: newB = oldA = 1 new A = 0 NAND (1 OR 1) = output = 0 OR 1 = 1 The new state is q 3. If we are in q 3 and we receive the input 1: new B = old A = I new A = 1 NAND (1 OR 1) = output = I OR 1 = I The new state is q 1.

Example1.. If we are in q 3 and we receive the input 0: newB = oldA = 1 new A = 0 NAND (1 OR 1) = output = 0 OR 1 = 1 The new state is q 3. If we are in q 3 and we receive the input 1: new B = old A = I new A = 1 NAND (1 OR 1) = output = I OR 1 = I The new state is q 1.

After input 0After input 1 Old StateNew StateOutputNew StateOutput q0q0 q2q2 0q2q2 1 q1q1 q2q2 1q0q0 1 q2q2 q3q3 0q1q1 1 q3q3 q3q3 1q1q1 1

Example2 Taken from the Exercises. Circuit OR DELAYAND OR Output BA input

Example2… A = 0, B = 0 q 0 A = 0, B = 1q 1 A = 1, B = 0q 2 A = 1, B = 1q 3 New B = old A New A = input OR(old A OR old B) output = old B AND input

Example2… State q 0 /input = 0 / A = 0, B = 0 New B = old A = 0 New A = input OR (old A OR old B) = 0 OR (0 OR 0) = 0 OR 0 = 0 Output = input AND old B = 0 AND 0 = 0

Example2… State q o / input = 1 / A =0, B = 0 new B = old A = 0 new A = input OR (old A OR old B) = 1 OR (0 OR 0) = 1 OR 0 = 1 output = input AND old B = 1 AND 0 = 0

Example2… state q 1 / input = 0 /A = 0, B= 1 new B = old A = 0 new A = input OR (old A OR old B) = 0 OR (0 OR 1) = 0 OR 1 = 1 output = old B AND input = 1 AND 0 = 0

Example2… state q 1 / input = 1 /A = 0, B = 1 new B = old A = 0 new A = input OR (old A OR old B) = 1 OR (0 OR 1) = 1 OR 1 = 1 output = old B AND input = 1 AND 1 = 1

Example2… state q 2 / input = 0/ A = 1, B= 0 new B = old A = 1 new A = input OR (old A OR old B) = 0 OR (1 OR 0) = 0 OR 1 =1 output = old B AND input = 0 AND 0 = 0

Example2… state q 2 / input = 1 / A= 1/ B= 0 new B = old A = 1 new A = input OR (old A OR old B) = 1 OR (1 OR 1) = 1 OR 1= 1 output = old B AND input = 0 AND 1 = 0

Example2… state q 3 / input = 0 / A= 1/ B= 1 new B = old A = 1 new A = input OR (old A OR old B) = 0 OR (1 OR 1) = 0 OR 1= 1 output = old B AND input = 1 AND 0 = 0

Example2… state q3 / input = 1 / A= 1/ B= 1 new B = old A = 1 new A = input OR (old A OR old B) = 1 OR (1 OR 1) = 1 OR 1= 1 output = old B AND input = 1 AND 1 = 1

After input 0After input 1 Old StateNew StateOutputNew StateOutput Q 0 (A=0,B=0)q0q0 0q2q2 0 q 1 (A=0,B=1)q2q2 0q2q2 0 q 2 (A=1,B=0)q3q3 0q3q3 0 q 3 (A=1,B=1)q3q3 0q3q3 1

Summary Lecture#15 Equivalence of Mealy and Moore Machines – Repeat Transducers (NAND,OR,AND,NOT) Transducers Example 1 Transducers Example 2 41