Presentation on theme: "Sequential Machine Theory"— Presentation transcript:
1Sequential Machine Theory Prof. K. J. HintzDepartment of Electrical and Computer EngineeringLecture 1Adaptation to this class and additional comments by Marek Perkowski
2Why Sequential Machine Theory (SMT)? Some Things Cannot be ParallelizedTheory Leads to New Ways of Doing Things, has also practical applications in software and hardware (compiler design, controllers design, etc.)Understand Fundamental FSM LimitsMinimize FSM Complexity and SizeFind the “Essence” of a Machine,what does it mean that there is a machine for certain task?
3Why Sequential Machine Theory? Discuss FSM properties that are unencumbered by Implementation Issues:SoftwareHardwareFPGA/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
4Hardware/SoftwareThere Is an Equivalence Relation Between Hardware and SoftwareAnything that can be done in one can be done in the other…perhaps faster/slowerSystem design now done in hardware description languages (VHDL, Verilog, higher) without regard for realization methodHardware/software/split decision deferred until later stage in design
5Hardware/SoftwareHardware/Software equivalence extends to formal languagesDifferent classes of computational machines are related to different classes of formal languagesFinite State Machines (FSM) can be equivalently represented by one class of languages
6Formal Languages Unambiguous Can Be Finite or Infinite Give some simple examplesCan Be Rule-based or EnumeratedVarious Classes With Different Properties
7Finite State Machines FSMs are Equivalent to One Class of Languages Prototypical Sequence ControllerGeneratoracceptorcontrollerMany Processes Have Temporal Dependencies and Cannot Be Parallelized,the need some form of state machine.FSM CostsHardware: More States More HardwareTime: More States, Slower OperationTechnology dependent: how many CPLD chips?
8Goal of this set of lectures Develop understanding of Hardware/Software/Language EquivalenceUnderstand Properties of FSMDevelop Ability to Convert FSM Specification Into Set-theoretic FormulationDevelop Ability to Partition Large Machine Into Greatest Number of Smallest MachinesThis reduction is unique
9Machine/Mathematics Hierarchy AI Theory Intelligent MachinesComputer Theory Computer DesignAutomata Theory Finite State MachineBoolean Algebra Combinational Logic
10Combinational Logic Feedforward Output Is Only a Function of Input No FeedbackNo memoryNo temporal dependencyTwo-Valued Function Minimization TechniquesWell-known Minimization TechniquesMulti-valued Function MinimizationWell-known Heuristics
11Finite State Machine Feedback Behavior Depends Both on Present State and Present InputState MinimizationWell-knownWith Guaranteed MinimumRealization MinimizationUnsolved problem of Digital DesignTechnology related, combinational design related
12Computer Design: Turing Machines Defined by Turing ComputabilityCan compute anything that is “computable”Some things are not computableAssumed Infinite MemoryState Dependent BehaviorElements:Control Unit is specified and implemented as FSMTape infiniteHeadHead movementsShow example of a very simple Turing machine now:x--> x+1
13Intelligent Machines Some machines display an ability to learn How a machine can learn?Some problems are possibly not computableWhat problems?Why not computable?Something must be infinite?
14concepts in other areas Automata, aka FSMConcepts of Machines:MechanicalCounters, addersComputer programsPoliticalTowns, highways, social groups, parties, etcBiologicalTissues, cells, genetic, neural, societiesAbstract mathematicalFunctions, relations, graphsYou should beable to use FSMconcepts in other areaslike robotics
15FSM - Abstract mathematical concept of many types of behavior DiscreteContinuous system can be discretized to any degree of resolutionFinite State:finite alphabets for inputs, outputs and states.Input/OutputSome cause, some result
16Set Theoretic Formulation of Finite State Machine S: Finite set of possible statesI: Finite set of possible inputsO: Finite set of possible outputs: Rule defining state change: Rule determining outputs
17Types of FSMs Moore FSM Mealy FSM Output is a function of state only Output is a function of both the present state and the present inputDiscuss timing differences, show examples and diagrams, discuss fast signaling and PLD realization
18Types of FSMs Finite State Acceptors, Language Recognizers Start in a single, specified stateEnd in particular state(s)Pushdown AutomataNot an FSMAssumed infinite stack with access only to topmost element