sequential machine theory l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Sequential Machine Theory PowerPoint Presentation
Download Presentation
Sequential Machine Theory

Loading in 2 Seconds...

play fullscreen
1 / 44

Sequential Machine Theory - PowerPoint PPT Presentation


  • 211 Views
  • Uploaded on

Sequential Machine Theory. Prof. K. J. Hintz Department of Electrical and Computer Engineering Lecture 1 http://cpe.gmu.edu/~khintz. Adaptation to this class and additional comments by Marek Perkowski. Why Sequential Machine Theory (SMT)?. Sequential Machine Theory – SMT

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Sequential Machine Theory' - Sophia


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
sequential machine theory

Sequential Machine Theory

Prof. K. J. Hintz

Department of Electrical and Computer Engineering

Lecture 1

http://cpe.gmu.edu/~khintz

Adaptation to this class and additional comments by Marek Perkowski

why sequential machine theory smt
Why Sequential Machine Theory (SMT)?
  • Sequential Machine Theory – SMT
  • Some Things Cannot be Parallelized
  • Theory Leads to New Ways of Doing Things, has also practical applications in software and hardware (compiler design, controllers design, etc.)
  • Understand Fundamental FSM Limits
  • Minimize FSM Complexity and Size
  • Find the “Essence” of a Machine,
    • what does it mean that there is a machine for certain task?
why sequential machine theory
Why Sequential Machine Theory?
  • Discuss FSM properties that are unencumbered by Implementation Issues:
    • Software
    • Hardware
    • FPGA/ASIC/Memory, etc.
  • Technology is Changing Rapidly, the core of the theory remains forever.
  • Theory is a Framework within which to Understand and Integrate Practical Considerations
hardware software
Hardware/Software
  • There Is an Equivalence Relation Between Hardware and Software
    • Anything that can be done in one can be done in the other…perhaps faster/slower
    • System design now done in hardware description languages (VHDL, Verilog, higher) without regard for realization method
      • Hardware/software/split decision deferred until later stage in design
hardware software5
Hardware/Software
  • Hardware/Software equivalence extends to formal languages
    • Different classes of computational machines are related to different classes of formal languages
    • Finite State Machines (FSM) can be equivalently represented by one class of languages
formal languages
Formal Languages
  • Unambiguous
  • Can Be Finite or Infinite
    • Give some simple examples
  • Can Be Rule-based or Enumerated
  • Various Classes With Different Properties
finite state machines
Finite State Machines
  • FSMs are Equivalent to One Class of Languages
  • Prototypical Sequence Controller
    • Generator
    • acceptor
    • controller
  • Many Processes Have Temporal Dependencies and Cannot Be Parallelized,
    • the need some form of state machine.
  • FSM Costs
    • Hardware: More States More Hardware
    • Time: More States, Slower Operation
    • Technology dependent: how many CPLD chips?
goal of this set of lectures
Goal of this set of lectures
  • Develop understanding of Hardware/Software/Language Equivalence
  • Understand Properties of FSM
  • Develop Ability to Convert FSM Specification Into Set-theoretic Formulation
  • Develop Ability to Partition Large Machine Into Greatest Number of Smallest Machines
    • This reduction is unique
machine mathematics hierarchy
Machine/Mathematics Hierarchy
  • AI Theory Intelligent Machines
  • Computer Theory Computer Design
  • Automata Theory Finite State Machine
  • Boolean Algebra Combinational Logic
combinational logic
Combinational Logic
  • Feedforward
  • Output Is Only a Function of Input
  • No Feedback
    • No memory
    • No temporal dependency
  • Two-Valued Function Minimization Techniques
    • Well-known Minimization Techniques
  • Multi-valued Function Minimization
    • Well-known Heuristics
finite state machine
Finite State Machine
  • Feedback
  • Behavior Depends Both on Present State and Present Input
  • State Minimization
    • Well-known
    • With Guaranteed Minimum
  • Realization Minimization
    • Unsolved problem of Digital Design
    • Technology related, combinational design related
computer design turing machines
Computer Design: Turing Machines
  • Defined by Turing Computability
    • Can compute anything that is “computable”
    • Some things are not computable
  • Assumed Infinite Memory
  • State Dependent Behavior
  • Elements:
    • Control Unit is specified and implemented as FSM
    • Tape infinite
    • Head
    • Head movements
  • Show example of a very simple Turing machine now:

x--> x+1

intelligent machines
Intelligent Machines
  • Some machines display an ability to learn
    • How a machine can learn?
  • Some problems are possibly not computable
    • What problems?
    • Why not computable?
    • Something must be infinite?
automata aka fsm
Automata, aka FSM
  • Concepts of Machines:
    • Mechanical
      • Counters, adders
    • Computer programs
    • Political
      • Towns, highways, social groups, parties, etc
    • Biological
      • Tissues, cells, genetic, neural, societies
    • Abstract mathematical
      • Functions, relations, graphs

You should be

able to use FSM

concepts in other areas

like robotics

fsm abstract mathematical concept of many types of behavior
FSM - Abstract mathematical concept of many types of behavior
  • Discrete
    • Continuous system can bediscretized to any degree of resolution
  • Finite State:
    • finite alphabets for inputs, outputs and states.
  • Input/Output
    • Some cause, some result
set theoretic formulation of finite state machine
Set Theoretic Formulation of Finite State Machine
  • S: Finite set of possible states
  • I: Finite set of possible inputs
  • O: Finite set of possible outputs
  • :Rule defining state change
  • :Rule determining outputs
types of fsms
Types of FSMs
  • Moore FSM
    • Output is a function of state only
  • Mealy FSM
    • Output is a function of both the present state and the present input

Discuss timing differences, show examples and diagrams, discuss fast signaling and PLD realization

types of fsms18
Types of FSMs
  • Finite State Acceptors, Language Recognizers
    • Start in a single, specified state
    • End in particular state(s)
  • Pushdown Automata
    • Not an FSM
    • Assumed infinite stack with access only to topmost element
computer
Computer
  • Turing Machine
    • Assumed infinite read/write tape
    • FSM controls read/write/tape motion
    • Definition of computable function
    • Universal Turing Machinereads FSM behavior from tape
review of set theory
Review of Set Theory
  • Element: “a”, a single object with no special property
  • Set: “A”, a collection of elements, i.e.,
    • Enumerated Set:
    • Finite Set:
slide21
Sets
  • Infinite set
  • Set of sets
subsets
Subsets
  • All elements of B are elements of A and there may be one or more elements of A that is not an element of B

A3

Larry,

Curly,

Moe

A6

integers

A7

proper subset
Proper Subset
  • All elements of B are elements of A and there is at least oneelement of Athat is not an element of B
set equality
Set Equality
  • Set A is equal to set B
slide25
Sets
  • Null Set
    • A set with no elements, 
  • Every set is a subset of itself
  • Every set contains the null set
operations on sets
Operations on Sets
  • Intersection
  • Union

Logical AND

Logical OR

operations on sets27
Operations on Sets
  • Set Difference
  • Cartesian Product, Direct Product
special sets
Special Sets
  • Powerset: set of all subsets of A

*no braces around the null set since the symbol represents the set

special sets29
Special Sets
  • Disjoint sets:A and B are disjoint if
  • Cover:

We know set covering problem from 572. It was defined as a matrix problem

properties of operations on sets
Properties of Operations on Sets
  • Commutative, Abelian
  • Associative
  • Distributive

Left hand distributive

partition of a set
Partition of a Set
  • Properties
  • pi are called “pi-blocks” or “-blocks” of PI
relations between sets
Relations Between Sets
  • If A and B are sets, then the relation from A to B,

is a subset of the Cartesian product of A and B, i.e.,

  • R-related:
domain of a relation
Domain of a Relation

Domain of R

R

B

a

A

b

range of a relation
Range of a Relation

Range of R

R

b

A

a

B

partial function mapping
PartialFunction, Mapping
  • A single-valued relation such that

R

a

b

b’

a’

*

A

B

* can be many to one

partial function
Partial Function
  • Also called the Image of a under R
  • Only one element of B for each element of A
  • Single-valued
  • Can be a many-to-one mapping
function
Function
  • A partial function with
    • A b corresponds to each a, but only one b for each a
    • Possibly many-to-one: multiple a’s could map to the same b
function example
Function Example

1 2 3 4

u v w

  • Unique, one image for each element of A and no
  • more
  • Defined for each element of A, so a function,
  • not partial
  • Not one-to-one since 2 elements of A map to v
surjective called also onto relations
Surjective (called also Onto) relations
  • Range of the relation is B
    • At least one a is related to each b
  • Does not imply
    • single-valued
    • one-to-one

R

B

Not mapped

A

a

1234

s1s2s3

injective or one to one relations
Injective, or One-to-One relations
  • “A relation between 2 sets such that pairs can be removed, one member from each set, until both sets have been simultaneously exhausted.”
bijective
Bijective
  • A function which is both Injective and Surjective is Bijective.
    • Also called “one-to-one” and “onto”
  • A bijective function has an inverse, R-1, and it is unique
function examples

B

A

b

B

aa’

A

Function Examples
  • Monotonically increasing

if injective

  • Not one-to-one,

but single-valued

function examples44

b

b’

B

b’’

a

A

Function Examples
  • Multivalued, but one-to-one

There are no two a’s which would have the same b, so it is one-to-one