{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

lecture-19-state-machines-NuSMV-6

lecture-19-state-machines-NuSMV-6 - Lecture 19 State...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
Lecture 19 - State Machines and NuSMV Spring 2009 CSci 5802 - Mats Heimdahl 1 Csci 5802 Introduction to State Machines and NuSMV Language 1 Adopted from Ajitha Rajan ht Describing embedded system’s processing behavior Can be extremely difficult Complexity increasing with increasing IC capacity Introduction ttp://www.umsec.umn.edu 2 Desired behavior often not fully understood in beginning Many implementation bugs due to description mistakes/omissions English (or other natural language) common starting point Precise description difficult to impossible ht An example of trying to be precise in English California Vehicle Code Right-of-way of crosswalks 21950. (a) The driver of a vehicle shall yield the right-of-way to a pedestrian crossing the roadway within any marked crosswalk or within any unmarked crosswalk at an intersection, except as otherwise provided in this chapter. ttp://www.umsec.umn.edu 3 (b) The provisions of this section shall not relieve a pedestrian from the duty of using due care for his or her safety. No pedestrian shall suddenly leave a curb or other place of safety and walk or run into the path of a vehicle which is so close as to constitute an immediate hazard. No pedestrian shall unnecessarily stop or delay traffic while in a marked or unmarked crosswalk. (c) The provisions of subdivision (b) shall not relieve a driver of a vehicle from the duty of exercising due care for the safety of any pedestrian within any marked crosswalk or within any unmarked crosswalk at an intersection. All that just for crossing the street (and there’s much more)! Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis ht Models and languages How can we (precisely) capture behavior? We may think of languages (C, C++), but computation model is the key Common computation models: Sequential program model Statements, rules for composing statements, semantics for executing them Communicating process model ttp://www.umsec.umn.edu 4 Multiple sequential programs running concurrently State machine model For control dominated systems, monitors control inputs, sets control outputs Dataflow model For data dominated systems, transforms input data streams into output streams Object-oriented model For breaking complex software into simpler, well-defined pieces Embedded Systems Design: A Unified Hardware/Software Introduction, (c) 2000 Vahid/Givargis ht Models vs. languages Models Languages Sequent. program C++ C Java State machine Data- flow ttp://www.umsec.umn.edu 5 Computation models describe system behavior Conceptual notion, e.g., sequential program Languages capture models Concrete form, e.g., C Variety of languages can capture one model E.g., sequential program model C,C++, Java One language can capture variety of models E.g., C++ sequential program model, object-oriented model, state machine model Certain languages better at capturing certain computation models ht
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}