TRANSITION CONFLICTS DETECTION IN BINARY MODULAR STATECHART DIAGRAMS 1. Grzegorz Łabiak

Size: px
Start display at page:

Download "TRANSITION CONFLICTS DETECTION IN BINARY MODULAR STATECHART DIAGRAMS 1. Grzegorz Łabiak"

Transcription

1 TRANSITION CONFLICTS DETECTION IN BINARY MODULAR STATECHART DIAGRAMS 1 Grzegorz Łabiak Computer Engineering & Electronics Department, University of Zielona Góra, Podgórna 50, Zielona Góra, Poland. G.Labiak@iie.uz.zgora.pl Abstract: Statechart diagrams are graphic formalism for modelling digital controller behaviour. Statecharts employ notion of traditional state transition graph enhanced with concurrency, hierarchy and broadcast communication. One of undesirable problem which arises in specifying behaviour in this way is undeterministic situation, where at given instant of time, two or more transitions can move activity from one state. If this happens, the transitions are said to be in conflict. Conflicts can be both horizontal and, because of hierarchy, vertical. In the paper two methods of searching for conflicting transitions are presented: static based on hierarchy diagram and dynamic using characteristic function of space of global states. Keywords: Statecharts, Hierarchical control, Modelling, Behaviour, Deterministic behaviour, State-space method 1. INTRODUCTION The statecharts formalism was developed as a visual formalism for complex systems (Harel 1987). It is a state-base graphical notation which can be perceived as extension of state transition graph of traditional finite state machine. In comparison with FSM they are enhanced with concurrency, hierarchy and broadcasting mechanism. A the present time statecharts are mainly used in UML technology (Booch et al. 1999), (UML 2003) where are exploited in behaviour modelling of program object (in sense of C++ or Java language). Since recently, UML is gaining in popularity as tool for hardware design (Balzarini et al. 2003), (Marchetti and Oliver 2003) and system HiCoS is an author s proposition of a CAD program (Łabiak 2004), which directly transforms behaviour specified with statecharts into Register Transfer Level VHDL. The 1 The scientific work is sponsored by State Committee for Scientific Research in the years as a research project number 4 T11C transformation is realized as one-hot mapping (Łabiak 2003a), that means one state responds to one flip-flop. The system implemented in programmable device reacts to the set of incoming events through transitions executions. So, statechart diagram serving as a model behaviour must be deterministic. This can be assured by finding conflicting transitions and next by solving the conflicts. 2. SYNTAX OF STATECHARTS The big problem with statecharts is syntax and semantics. A variety of applications domain caused that many authors proposed their own syntax and semantics (von der Beeck 1994), sometimes differing significantly. Syntax and semantics presented in this paper are intended for specifying the behaviour of binary digital controllers which would satisfy as much as possible the UML statndard (UML 2003). Not every element of UML statechart syntax is supported in HiCoS approach. The selection of language characteristic was

2 &' ) %( $ (#("!, - * / Fig. 1. Example of Statechart diagram made based on application domain and the technical constrains of programmable logic devices. As a result of those considerations it was assumed that system HiCoS is to be intended for untimed control systems which operate on binary values. Moreover, the research was divided into two stages, delimiting them with a modular paradigm (Łabiak 2003b). Hence, HiCoS statecharts characterize by hierarchy and concurrency, simple state, composite state, end state, discrete events, actions assigned to state (entry, do, exit), simple transitions, history attribute and logic predicates imposed on transitions. Another very essential issue is to allow the use of feedbacks, it means that events generated in a circuit can affect its behaviour. The role of an end state is to prevent removing away an activity from a sequential automaton before the end state became active. Such elements as factored transition paths and time were rejected, whereas others as cross-level and composite transitions, synch states have been shifted to the second stage of the research. An example of statechart is depicted in figure 1, where event a is an input to the system and event b is an output. Events b and c are of local scope. Fig. 2. Simple diagram and its waveform called a step and additionally it is assumed that during a step no events can come from the outside world. A step is said to be finished when there is no enabled transitions. Figure 2 depicts a step which consists of two simple microsteps. After the step is finished the system is in state STOP. Summarizing, dynamic characteristics of hardware implementation are as follows: system is synchronous, system reacts to the set of available events through transition executions, generated events are accessible to the system during next tick of the clock. In figure 2 a simply diagram and its waveforms illustrate the assumed dynamics features. When transition t 1 is fired (T = 350) event t 1 is broadcast and becomes available to the system at next instant of discrete time (T = 450). The activity moves from state START to state ACTION. Now transition t 2 becomes enabled. Its source state is active and predicates imposed on it (event t 1 ) is met. So, at instant of time T = 450 the system transforms activity to the state STOP and triggers event t 2, which does not affect any other transition. The step is finished. 3. SEMANTICS A digital controller specified with a Statechart and realized as an electronic circuit is meant to work in an environment which prompts the controller by means of events. It is assumed that every event (incoming, outgoing and internal) is bound with a discrete time domain. The controller is reacting to the set of accessible events in the system through firing a set of enabled transitions called a microstep. Because of feedback, execution of a microstep entails generating farther events and causes firing subsequent microsteps. Events triggered during a current microstep do not influence transitions being realized, but are only allowed to affect behaviour of a controller in the next tick of discrete time, that is, in the next microstep. A sequence of subsequently generated microsteps is 4. HARDWARE MAPPING The main assumption of a hardware implementation behaviour described with statechart diagrams is that the systems specified in this way is to be directly mapped into the programmable logic devices. This means that elements from a diagram (for example states or events) are to be in direct correspondence with resources available in a programmable device mainly flip-flops and programmable combinatorial logic. Based on that assumption and taking into account the assumed dynamic characteristics, the following principles of hardware implementation have been formulated: each state is assigned one flip-flop activity means that the state associated with the flip-flop can be active or in the case of a state with a

3 history attribute its past activity is being remembered; an activity of state is established on the basis of activity of flip-flops assigned to superordinate states (in the sense of a hierarchy tree), each event is also assigned one flip-flop activity means the occurrence of an associated event and is sustained to the next tick of discrete time when the event becomes available to the system, based on the diagram topography and rules of transition executions, excitation functions are created for each flip-flop in a circuit. 5. GLOBAL STATE, STATE ACTIVITY, CHARACTERISTIC FUNCTION AND ENABLING TRANSITIONS To investigate symbolically dynamic characteristics of digital controllers specified with statechart diagrams it is necessary to introduce notions of global state (also called marking (Biliński 1996)), activity condition, characteristic function and to define transition enabling condition. Definition 1. Global state G is a set of all flip-flops in the system, bound both with local states and with distributed events, which can be generated in several parts of the diagram and separately memorized. The diagram from figure 1 consists of 10 state flipflops (s 1, s 11, s 12, s 2, s 3, s 4, s 5, s 6, s 7, es) and 3 event flip-flops (e 1, e 2, e 3 ). The flip-flop denoted as e 1 corresponds to the exit event a assigned to state s 2, e 2 corresponds to the entry action (b) to state s 5, and e 3 corresponds to the transition action (broadcasting of event b) bound with transition t 5 firing (from state s 7 to state s 6 ). Global states comprise all information about the statechart both about currently active states and their past activity. An activity of a state flip-flop does not mean activity of a state bound with the flip-flop. Logic 1 on flip-flop output means actual or recent state activity. Hence, state activity is established on the basis of activity of flip-flops assigned to the superordinate states. The state is said to be active when every flip-flop bound with the states belonging to the path (in the sense of hierarchy tree) carried from the state to the root state (located on top of a hierarchy) is asserted. Formally, a state activity condition is calculated according to the following definition: Definition 2. State activity condition, denoted as activecond(s), is calculated as follows: activecond (s) = s i (1) s i path(root z,s) where s i is a signal from the flip-flop s output and path(root z, s) is a set of states belonging to the path carried between root z and s in hierarchy tree. Fig. 3. Hierarchy graph (a.k.a. AND-OR tree) for the diagram from figure 1 For example, activecond(s 6 ) = s 1 s 11 s 3 s 6 (cf. figure 3 where this path is thickened). The sets of global states and operations on them can efficiently be represented in computer memory by means of Binary Decision Diagram (BDDs) (Minato 1996) (Somenzi 2004) and characteristic functions (Biliński 1996). Definition 3. A characteristic function χ A of a set of elements A U is a Boolean function χ A : U {0, 1} defined as follows: { 1 x A X A (x) = (2) 0 x A. The characteristic function is calculated as a disjunction of all elements of A. Operations on sets are in direct correspondence with operations on their characteristic functions. Thus: X (A B) = X A + X B, X (A B) = X A X B, X ( A ) = X A, X ( ) = 0. (3) For example characteristic function of the set of all global states for the diagram from figure 2 is as follows: χ [G0 = start t 1 action entr d ext t 2 stop + + start t 1 action entr d ext t 2 stop + + start t 1 action entr d ext t 2 stop + + start t 1 action entr d ext t 2 stop. The characteristic function allows sets to be represented by BDDs. BDDs are very convenient means for the sets of global states to act on them (Somenzi 2004), for example to generate state space of global states of the statechart or to find conflicting transitions. For these reasons transition enabling condition is defined: Definition 4. Transition enabling condition, denoted as encond(t), is calculated in following way:

4 encond (t) = activecond (out (t)) intcond (out (t)) trigger (t). (4) In the definition (def. 4) activecond(out(t)) is a state activity condition of a transition t source state; intcond(out(t)) is a preemption internal condition of a transition t source state, which is fulfilled when every subordinate end states (if exist) are active; trigger(t) is a predicate imposed on transition, which is Boolean expression composed of names of events. For example for transition t 4 from the diagram from figure 1 encond(t 4 ) = s 1 s 11 s 3 s 6 a b, for whom activecond(t 4 ) = s 1 s 11 s 3 s 6, intcond(t 4 ) = 1, trigger(t 4 ) = a b. 6. THE CONFLICTS Two transitions are in conflict if there is some common state that would be exited if any one of them were to be fired (Harel and Naamad 1996). In distinction from FSM and Petri nets statecharts conflicting transitions can be grouped into three categories: horizontal, vertical, mixed. The first case takes place when the transitions in conflict are on the same level of hierarchy tree. In figure 4 horizontally conflicting transitions are t 2 and t 3 and the common state is s 3. The second case holds when conflicting transitions are located on different levels of hierarchy tree. In figure 4 vertically conflicting transitions are transitions t 1 and t 2 and also t 1 and t 3, whereas the common state is again s 3. The case of transition t 1, t 2 and t 3 from figure 4 at the same time combine features horizontally and vertically conflicting transitions, so the conflict of those three is of mixed type at once. Having established transitions or a group of transitions in conflict, it is desirable from hardware implementation point of view to solve the conflicts. In HiCoS approach conflicts between transitions are being resolved by means of predicates, where predicates are Boolean expression made of logic operators and Fig. 4. The example of transitions in conflict names of events. For example the diagram from figure 1 is conflict-free, because predicates imposed on potentially conflicting transitions (t 4, t 5, t 6 ) are orthogonal. Moreover, predicates are constructed in such way that transition t 6 has priority over two remaining transitions. The triggering three events (a, b, c) at same time while active states are s 6 or s 7 will always result in firing transition t 6 whose predicate is bound with event b. The effect is achieved by use of negated event (!b). 7. TRANSITION CONFLICT DETECTION Conflict between transitions can be solved by means of predicates, but before this can be done conflicting transition have to be detected. This can be conducted in two manner: statically and dynamically. 7.1 Static Conflict Detection Static conflict detection consist in searching through hierarchy tree. The goal of searching is to establish the sets potentially conflicting transitions related to each leaf state s. The potentially conflicting transitions are those transitions, which are outgoing transitions from states belonging to the path carried from leaf node s to the root node: T s = s i path(root,s) s i. (5) Next, having found the sets potentially conflicting transitions related to each leaf state, following condition must be met for each pair of the transitions to be conflict-free: t i,t j T s trigger(t i ) trigger(t j ) = 0 and i j (6) where card(t s ) > 1. For example for the leaf states for the diagram from figure 1 T s6 = {t 4, t 6 } and T s7 = {t 5, t 6 }. The conflictfree condition for transitions related to state s 6 is a!b b = 0 and for transitions related to state s 7 is c!b b = 0. The computational complexity of this method depends on the size of hierarchy tree rather than on behavioural properties. Every diagram tested with this method will always be conflict-free. But sometime there are some diagrams, which are tested positively in this way turns out not to be conflicting. Logic related to transitions of such simpler predicates (not orthogonal) consumes less hardware resources of the target programmable devices. So new method of findings conflicts is required, more precise and hence more time consuming.

5 Fig. 5. The example of conflict-free diagram 7.2 Dynamic Conflict Detection Dynamic conflict detection is a methodology based on symbolic state space exploration algorithm. Global states space of a controller is traversed and for every global state the sets of potentially conflicting transitions are being checked against conflicts. Because statecharts diagrams are enhanced with broadcast communication, there are some situation which are positively tested in static way, in fact they are not the conflict. The example is depicted on figure 5. The set of events in the system is E z = {a, b, c}. An event a is the event coming from an surrounding environment, events b and c are internal events, generated within the scope of the diagram and the event c is additionally visible to the outside world. The sets of potentially conflicting transitions (eq. 5) are T s3 = {t 1, t 2 } and T s5 = {t 1, t 3 }. As it is can be concluded from the diagram (figure 5) the condition 6 is not met for the transitions sets but the transitions are not in conflict. Transition t 1 will only be fired after transitions t 2 and t 3, in turn, are realized. This is because internal event c, which is triggering part of t 1, is action part of transition t 3. Similar reasoning can be carried out for an end state. To prove that diagram is conflict-free, in this paper is proposed to check for every set of potentially conflicting transitions and for every global state of statechart whether each pair of transitions in the set are in conflict. This can be conducted by means of modified symbolic state space generation algorithm (figure 6). Figure 6, in C++ language style, depicts the algorithm of dynamic conflict detection. Variables in italic reps y m b t r a v o f S t a t e c h a r t ( Z, i n i t m a r k ) { 2 χ [G0 = curr mark = i n i t m a r k ; while ( c u r r mark!= 0) { 4 f o r each l e a f s t a t e s i n Z f o r each p a i r t i, t j T s, where i j 6 i f ( curr m a r k encond(t i ) encond(t j )!= 0) throw C C o n f l i c t ( s ) ; 8 n e x t m a r k = im comp ( Z, c u r r m a r k ) ; c u r r m a r k = n e x t m a r k χ [G0 ; 10 χ [G0 = c u r r m a r k + χ [G0 ; } 12} Fig. 6. The algorithm of dynamic conflict detection resent characteristic functions of corresponding sets of global states and operations on the set are carried out according to the equations number 3. The algorithm starts from initial global state (init mark, line no. 2) and next in one iteration generates in breadthfirst manner a set of all possible next states (line no. 8). In line number 9 set of next states (next mark) is compared with the set of all global states reached so far (χ [G0 ) and the new global states are remembered in variable curr mark. In line 10 newly generated states are being added to the set of all so far generated states. The im comp function in one formal step performs a computation of a set of global states which can be reached from curr mark in one iteration, according to the following formula: next mark = s x (curr mark n [s i (curr mark δ i(s, x))]) (7) i=1 next mark = next mark s s (8) where s, s, x denote,respectively, the present global state, the next global state and the input event variables; s and x represent existential quantifications of the present state and the input event variables; symbols and represent logic operators XNOR and AND respectively. In lines 4 7 for each leaf state s and for each pair of transitions from the set of potentially conflicting transitions T s is being checked whether these two transitions are conflict-free against the set of current global states represented by curr mark. When conflict holds the condition in line 6 is not equal 0 and an exception CConflict with the name of leaf state is being thrown. The algorithm breaks. Let diagram depicted in figure 5 serves as an example. The leaf states to whom the sets of potentially conflicting transitions are assigned are s 3 and s 5. The statechart starts from initial marking init mark = s 1 s 2 s 3 s 4 s 5 s 6 b c. In this initial global state the only enabled transition is t 2, so at this stage the situation is conflict-free. The condition from line 6 from algorithm in figure 6 for both leaf states is equal 0. Table 1 shows detailed description of each iteration of the diagram for state s 3. Table 1. Iterative execution of the diagram from figure 5 and the calculation for the leaf state s 3. No. E curr curr mark encond(t 1 ) encond(t 2 ) 1 {a} s 1 s 2 s 3 s 4 s 5 s 6 b c s 1 c s 1 s 3 a = 0 2 {b} s 1 s 2 s 3 s 4 s 5 s 6 b c s 1 c s 1 s 3 a = 0 3 {c} s 1 s 2 s 3 s 4 s 5 s 6 b c s 1 c s 1 s 3 a = 0 4 s 1 s 2 s 3 s 4 s 5 s 6 b c s 1 c s 1 s 3 a = 0 E curr the set of currently accessible events, support of curr mark is {s 1, s 2, s 3, s 4, s 5, s 6, b, c}, activecond(t 1 ) = s 1, intcond(t 1 ) = 1, trigger(t 1 ) = c, activecond(t 2 ) = s 1 s 3, intcond(t 2 ) = 1, trigger(t 2 ) = a.

6 The space of all global states consist of 4 states, which in case of this diagram corresponds to 4 iterations. In iterations 1, 2 and 4 the condition (figure 6, line 6) equals to 0, because in characteristic function of current global states event c is negated (c this means that event c is absent), whereas in enabling condition of transition t 1 the event is in normal form (c). In case of iterations number 3 event c is present, but the condition (figure 6, line 6) is zeroed by activity condition of transition t 2 source state (s 3 ). This condition is s 1 s 3 but in global state in iteration 4 the state s 3 is not active and flip-flops bound with this activity have zeros on their outputs (s 1 s 3 in curr mark). The diagram is conflict-free. 8. SUMMARY The conflict (both horizontal, vertical and mixed) takes place if there is a common state such that firing two or more transition outgoing from this state, at the same instance of time, makes that activity is removed from this state. Before behaviour modelled with statecharts is implemented in digital circuit the conflicts must be detected and next with predicates solved. Detecting a conflict can be carried out statically or dynamically. The former method consists in searching through hierarchy tree, whereas the latter one uses modified symbolic state space generation algorithm. Dynamic detecting, in comparison with static detection, is more precise and more computationally complex, but computation can efficiently be conducted with BDDs. The use of dynamic detection can lead to simplifying transition related logic. on specification & Design Languages FDL 03. Frankfurt am Main. pp Łabiak, G. (2003b). The use of hierarchical model of concurrent automaton in digital controller design. PhD thesis. Warsaw University Of Technology, Faculty of Electronics and Information Technology. Warsaw. in polish. Łabiak, G. (2004). HiCoS Homepage. glabiak. Marchetti, M. and I. Oliver (2003). Towards a Conceptual Framework for UML to HardwareDescription Language Mappings. In: Proceedings of Forum on specification & Design Languages FDL 03. Frankfurt am Main. pp Minato, S.-I. (1996). Binary Decision Diagrams and Applications for VLSI CAD. Kluwer Academic Publishers. Boston. Somenzi, F. (2004). CUDD: CU Decision Diagram Package Release WWW. Department of Electrical and Computer Engineering University of Colorado at Boulder. UML (2003). OMG Unified Modeling Languag Specification Version 1.5. von der Beeck, M. (1994). A Comparison of Statecharts Variants. In: Proc. of Formal Techniques in real-time and Fault-Tolerant Systems, Third International Symposium. pp LNCS. Springer-Verlag. REFERENCES Balzarini, F., A. Kostadinov, M. Prevostini, A. Minosi, S. Mankan and A. Martinola (2003). UMLbased Specifications of an Embedded System oriented to HW/SW partitioning: a case study. In: Proceedings of Forum on specification & Design Languages FDL 03. Frankfurt am Main. pp Biliński, K. (1996). Application of Petri Nets in parallel controllers design. PhD thesis. University of Bristol, Electrical and Electronic Engineering Department. Bristol. Booch, G., J. Rumbaugh and I. Jacobson (1999). The Unified Modeling Language User Guide. Addison Wesley Professional. Harel, D. (1987). Statecharts: A Visual Formalism for Complex Systems. Science of Computer Programming 8, Harel, D. and A. Naamad (1996). The STATEMATE Semantics of Statecharts. ACM Trans. Soft. Eng. Method. Łabiak, G. (2003a). From UML statecharts to FPGA - the HiCoS approach. In: Proceedings of Forum

MOST today s embedded real-time systems, e.g. telephone,

MOST today s embedded real-time systems, e.g. telephone, INTL JOURNAL OF ELECTRONICS AND TELECOMMUNICATIONS, 2012, VOL. 58, NO. 4, PP. 411 418 Manuscript received October 31, 2012; revised Decemer, 2012. DOI: 10.2478/v10177-012-0056-9 The Problems of Transition

More information

Discrete Dynamics Finite State Machines גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון

Discrete Dynamics Finite State Machines גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון Discrete Dynamics Finite State Machines גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון 2 Recap: Actor Model An actor is a mapping of input signals to output signals S: R R k R R m where k is the number

More information

Embedded Systems 2. REVIEW: Actor models. A system is a function that accepts an input signal and yields an output signal.

Embedded Systems 2. REVIEW: Actor models. A system is a function that accepts an input signal and yields an output signal. Embedded Systems 2 REVIEW: Actor models A system is a function that accepts an input signal and yields an output signal. The domain and range of the system function are sets of signals, which themselves

More information

Matrix Implementation of Moore FSM with Encoding of Collections of Microoperations

Matrix Implementation of Moore FSM with Encoding of Collections of Microoperations Matrix Implementation of Moore FSM with Encoding of Collections of Microoperations A. Barkalov L. Titarenko O. Hebda K. Soldatov Abstract The method is proposed for reduction of hardware amount in logic

More information

Memory Elements I. CS31 Pascal Van Hentenryck. CS031 Lecture 6 Page 1

Memory Elements I. CS31 Pascal Van Hentenryck. CS031 Lecture 6 Page 1 Memory Elements I CS31 Pascal Van Hentenryck CS031 Lecture 6 Page 1 Memory Elements (I) Combinational devices are good for computing Boolean functions pocket calculator Computers also need to remember

More information

Embedded Systems 5. Synchronous Composition. Lee/Seshia Section 6.2

Embedded Systems 5. Synchronous Composition. Lee/Seshia Section 6.2 Embedded Systems 5-1 - Synchronous Composition Lee/Seshia Section 6.2 Important semantic model for concurrent composition Here: composition of actors Foundation of Statecharts, Simulink, synchronous programming

More information

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a

More information

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros

More information

Semantics of S.S.M. (Safe State Machine)

Semantics of S.S.M. (Safe State Machine) Semantics of S.S.M. (Safe State Machine) Charles André I3S Laboratory UMR 6070 University of Nice-Sophia Antipolis / CNRS BP 121 F 06903 Sophia Antipolis cédex andre@unice.fr April 2003 1 2 Semantics of

More information

DISCRETE system is a system with countable number of

DISCRETE system is a system with countable number of INTL JOURNAL OF ELECTRONICS AND TELECOMMUNICATIONS, 2012, VOL. 58, NO. 1, PP. 27 34 Manuscript received December 31, 2011; revised March 2012. DOI: 10.2478/v10177-012-0004-8 UML Modelling in Rigorous Design

More information

Digital Control of Electric Drives

Digital Control of Electric Drives Digital Control of Electric Drives Logic Circuits - equential Description Form, Finite tate Machine (FM) Czech Technical University in Prague Faculty of Electrical Engineering Ver.. J. Zdenek 27 Logic

More information

Safety and Reliability of Embedded Systems. (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Fault Tree Analysis Obscurities and Open Issues

Safety and Reliability of Embedded Systems. (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Fault Tree Analysis Obscurities and Open Issues (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Fault Tree Analysis Obscurities and Open Issues Content What are Events? Examples for Problematic Event Semantics Inhibit, Enabler / Conditioning

More information

Embedded Systems Development

Embedded Systems Development Embedded Systems Development Lecture 2 Finite Automata & SyncCharts Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Some things I forgot to mention 2 Remember the HISPOS registration

More information

A test sequence selection method for statecharts

A test sequence selection method for statecharts SOFTWARE TESTING, VERIFICATION AND RELIABILITY Softw. Test. Verif. Reliab. 2000; 10: 203 227 A test sequence selection method for statecharts Hyoung Seok Hong 1,*, Young Gon Kim 1, Sung Deok Cha 1,*, Doo

More information

Sequential Equivalence Checking without State Space Traversal

Sequential Equivalence Checking without State Space Traversal Sequential Equivalence Checking without State Space Traversal C.A.J. van Eijk Design Automation Section, Eindhoven University of Technology P.O.Box 53, 5600 MB Eindhoven, The Netherlands e-mail: C.A.J.v.Eijk@ele.tue.nl

More information

Lecture 05: High-Level Design with SysML. An Introduction to SysML. Where are we? What is a model? The Unified Modeling Language (UML)

Lecture 05: High-Level Design with SysML. An Introduction to SysML. Where are we? What is a model? The Unified Modeling Language (UML) Where are we? Systeme hoher Sicherheit und Qualität Universität Bremen, WS 2017/2018 Lecture 05: High-Level Design with SysML Christoph Lüth, Dieter Hutter, Jan Peleska 01: Concepts of Quality 02: Legal

More information

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs Appendix B Review of Digital Logic Baback Izadi Division of Engineering Programs bai@engr.newpaltz.edu Elect. & Comp. Eng. 2 DeMorgan Symbols NAND (A.B) = A +B NOR (A+B) = A.B AND A.B = A.B = (A +B ) OR

More information

Ch 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1

Ch 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1 Ch 7. Finite State Machines VII - Finite State Machines Contemporary Logic esign 1 Finite State Machines Sequential circuits primitive sequential elements combinational logic Models for representing sequential

More information

ELE2120 Digital Circuits and Systems. Tutorial Note 9

ELE2120 Digital Circuits and Systems. Tutorial Note 9 ELE2120 Digital Circuits and Systems Tutorial Note 9 Outline 1. Exercise(1) Sequential Circuit Analysis 2. Exercise (2) Sequential Circuit Analysis 3. Exercise (3) Sequential Circuit Analysis 4. Ref. Construction

More information

Sequential logic and design

Sequential logic and design Principles Of Digital Design Sequential logic and design Analysis State-based (Moore) Input-based (Mealy) FSM definition Synthesis State minimization Encoding Optimization and timing Copyright 20-20by

More information

Digital Design. Sequential Logic

Digital Design. Sequential Logic Principles Of igital esign Chapter 6 Sequential Logic Chapter preview Boolean algebra 3 Logic gates and flip-flops 3 Finite-state machine 6 Logic design techniques 4 Sequential design techniques 6 Binary

More information

COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS

COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS QUALITATIVE ANALYIS METHODS, OVERVIEW NET REDUCTION STRUCTURAL PROPERTIES COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS LINEAR PROGRAMMING place / transition invariants state equation

More information

ELCT201: DIGITAL LOGIC DESIGN

ELCT201: DIGITAL LOGIC DESIGN ELCT201: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Lecture 6 Following the slides of Dr. Ahmed H. Madian محرم 1439 ه Winter

More information

7. Queueing Systems. 8. Petri nets vs. State Automata

7. Queueing Systems. 8. Petri nets vs. State Automata Petri Nets 1. Finite State Automata 2. Petri net notation and definition (no dynamics) 3. Introducing State: Petri net marking 4. Petri net dynamics 5. Capacity Constrained Petri nets 6. Petri net models

More information

Design at the Register Transfer Level

Design at the Register Transfer Level Week-7 Design at the Register Transfer Level Algorithmic State Machines Algorithmic State Machine (ASM) q Our design methodologies do not scale well to real-world problems. q 232 - Logic Design / Algorithmic

More information

INF2270 Spring Philipp Häfliger. Lecture 8: Superscalar CPUs, Course Summary/Repetition (1/2)

INF2270 Spring Philipp Häfliger. Lecture 8: Superscalar CPUs, Course Summary/Repetition (1/2) INF2270 Spring 2010 Philipp Häfliger Summary/Repetition (1/2) content From Scalar to Superscalar Lecture Summary and Brief Repetition Binary numbers Boolean Algebra Combinational Logic Circuits Encoder/Decoder

More information

Opus: University of Bath Online Publication Store

Opus: University of Bath Online Publication Store Lam, V. S. W. (2006) A formal execution semantics and rigorous analytical approach for communicating UML statechart diagrams. Other. Department of Computer Science, University of Bath. Link to official

More information

Simulation of Spiking Neural P Systems using Pnet Lab

Simulation of Spiking Neural P Systems using Pnet Lab Simulation of Spiking Neural P Systems using Pnet Lab Venkata Padmavati Metta Bhilai Institute of Technology, Durg vmetta@gmail.com Kamala Krithivasan Indian Institute of Technology, Madras kamala@iitm.ac.in

More information

CSE370: Introduction to Digital Design

CSE370: Introduction to Digital Design CSE370: Introduction to Digital Design Course staff Gaetano Borriello, Brian DeRenzi, Firat Kiyak Course web www.cs.washington.edu/370/ Make sure to subscribe to class mailing list (cse370@cs) Course text

More information

An Indian Journal FULL PAPER ABSTRACT KEYWORDS. Trade Science Inc.

An Indian Journal FULL PAPER ABSTRACT KEYWORDS. Trade Science Inc. [Type text] [Type text] [Type text] ISSN : 0974-7435 Volume 10 Issue 11 BioTechnology 2014 An Indian Journal FULL PAPER BTAIJ, 10(11), 2014 [5576-5583] Research on the probability of extended UML state

More information

BOOLEAN ALGEBRA INTRODUCTION SUBSETS

BOOLEAN ALGEBRA INTRODUCTION SUBSETS BOOLEAN ALGEBRA M. Ragheb 1/294/2018 INTRODUCTION Modern algebra is centered around the concept of an algebraic system: A, consisting of a set of elements: ai, i=1, 2,, which are combined by a set of operations

More information

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Final Examination

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Final Examination Department of Electrical and Computer Engineering University of Wisconsin Madison ECE 553: Testing and Testable Design of Digital Systems Fall 2013-2014 Final Examination CLOSED BOOK Kewal K. Saluja Date:

More information

Synchronous Sequential Circuit

Synchronous Sequential Circuit Synchronous Sequential Circuit The change of internal state occurs in response to the synchronized clock pulses. Data are read during the clock pulse (e.g. rising-edge triggered) It is supposed to wait

More information

Finite-state machines (FSMs)

Finite-state machines (FSMs) Finite-state machines (FSMs) Dr. C. Constantinides Department of Computer Science and Software Engineering Concordia University Montreal, Canada January 10, 2017 1/19 Finite-state machines (FSMs) and state

More information

{},{a},{a,c} {},{c} {c,d}

{},{a},{a,c} {},{c} {c,d} Modular verication of Argos Programs Agathe Merceron 1 and G. Michele Pinna 2 1 Basser Department of Computer Science, University of Sydney Madsen Building F09, NSW 2006, Australia agathe@staff.cs.su.oz.au

More information

Linear Temporal Logic and Büchi Automata

Linear Temporal Logic and Büchi Automata Linear Temporal Logic and Büchi Automata Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 Yih-Kuen Tsay (SVVRL @ IM.NTU) Linear Temporal Logic and Büchi Automata

More information

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

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering TIMING ANALYSIS Overview Circuits do not respond instantaneously to input changes

More information

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2

More information

Information System Design IT60105

Information System Design IT60105 n IT60105 Lecture 13 Statechart Diagrams Lecture #13 What is a Statechart diagram? Basic components in a state-chart diagram and their notations Examples: Process Order in OLP system What is a Statechart

More information

PETRI nets, beside UML state machine [1], are one of the

PETRI nets, beside UML state machine [1], are one of the INTL JOURNAL OF ELECTRONICS AND TELECOMMUNICATIONS, 2012, VOL. 58, NO. 4, PP. 397 402 Manuscript received November 11, 2012; revised Decemer, 2012. DOI: 10.2478/v10177-012-0054-y Hierarchical Configurable

More information

State modeling. Marlon Dumas. Institute of Computer Science

State modeling. Marlon Dumas. Institute of Computer Science State modeling Marlon Dumas Institute of Computer Science Where are we? Notation Class diagrams Use case diagrams/use cases Sequence diagrams Statecharts Petri nets Decision trees & DMN Purpose Domain

More information

Synchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1

Synchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1 Synchronous Sequential Circuit Design Dr. Ehab A. H. AL-Hialy Page Motivation Analysis of a few simple circuits Generalizes to Synchronous Sequential Circuits (SSC) Outputs are Function of State (and Inputs)

More information

Combining STATEMATE and FNLOG for the specification and the verification of complex real time systems

Combining STATEMATE and FNLOG for the specification and the verification of complex real time systems GESTS Int l Trans. Computer Science and Engr., Vol.20, No.1 65 Combining STATEMATE and FNLOG for the specification and the verification of complex real time systems Leila JEMNI BEN AYED 1 and Olfa MOSBAHI

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Literature Some pointers: H.R. Andersen, An Introduction to Binary Decision Diagrams, Lecture notes, Department of Information Technology, IT University of Copenhagen Tools: URL:

More information

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview 407 Computer Aided Design for Electronic Systems Simulation Instructor: Maria K. Michael Overview What is simulation? Design verification Modeling Levels Modeling circuits for simulation True-value simulation

More information

COMPUTATIONAL COMPLEXITY

COMPUTATIONAL COMPLEXITY ATHEATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Computational Complexity - Osamu Watanabe COPUTATIONAL COPLEXITY Osamu Watanabe Tokyo Institute of Technology, Tokyo, Japan Keywords: {deterministic, randomized,

More information

Synchronous Sequential Circuit Design. Digital Computer Design

Synchronous Sequential Circuit Design. Digital Computer Design Synchronous Sequential Circuit Design Digital Computer Design Races and Instability Combinational logic has no cyclic paths and no races If inputs are applied to combinational logic, the outputs will always

More information

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS 1) Given the two binary numbers X = 1010100 and Y = 1000011, perform the subtraction (a) X -Y and (b) Y - X using 2's complements. a) X = 1010100

More information

Sequential Circuit Analysis

Sequential Circuit Analysis Sequential Circuit Analysis Last time we started talking about latches and flip-flops, which are basic one-bit memory units. Today we ll talk about sequential circuit analysis and design. First, we ll

More information

Verifying Randomized Distributed Algorithms with PRISM

Verifying Randomized Distributed Algorithms with PRISM Verifying Randomized Distributed Algorithms with PRISM Marta Kwiatkowska, Gethin Norman, and David Parker University of Birmingham, Birmingham B15 2TT, United Kingdom {M.Z.Kwiatkowska,G.Norman,D.A.Parker}@cs.bham.ac.uk

More information

Towards Co-Engineering Communicating Autonomous Cyber-physical Systems. Bujorianu, M.C. and Bujorianu, M.L. MIMS EPrint:

Towards Co-Engineering Communicating Autonomous Cyber-physical Systems. Bujorianu, M.C. and Bujorianu, M.L. MIMS EPrint: Towards Co-Engineering Communicating Autonomous Cyber-physical Systems Bujorianu M.C. and Bujorianu M.L. 009 MIMS EPrint: 00.53 Manchester Institute for Mathematical Sciences School of Mathematics The

More information

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits

More information

Georg Frey ANALYSIS OF PETRI NET BASED CONTROL ALGORITHMS

Georg Frey ANALYSIS OF PETRI NET BASED CONTROL ALGORITHMS Georg Frey ANALYSIS OF PETRI NET BASED CONTROL ALGORITHMS Proceedings SDPS, Fifth World Conference on Integrated Design and Process Technologies, IEEE International Conference on Systems Integration, Dallas,

More information

The STATEMATE Semantics of Statecharts. Presentation by: John Finn October 5, by David Harel

The STATEMATE Semantics of Statecharts. Presentation by: John Finn October 5, by David Harel The STATEMATE Semantics of Statecharts Presentation by: John Finn October 5, 2010 by David Harel Outline Introduction The Basics System Reactions Compound Transitions History Scope of Transitions Conflicting

More information

FSM model for sequential circuits

FSM model for sequential circuits 1 FSM model for sequential circuits The mathematical model of a sequential circuit is called finite-state machine. FSM is fully characterized by: S Finite set of states ( state ~ contents of FFs) I Finite

More information

EECS150 - Digital Design Lecture 23 - FSMs & Counters

EECS150 - Digital Design Lecture 23 - FSMs & Counters EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?

More information

Programmable Logic Devices II

Programmable Logic Devices II Lecture 04: Efficient Design of Sequential Circuits Prof. Arliones Hoeller arliones.hoeller@ifsc.edu.br Prof. Marcos Moecke moecke@ifsc.edu.br 1 / 94 Reference These slides are based on the material made

More information

Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc.

Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc. Finite State Machines Introduction Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc. Such devices form

More information

Topic 8: Sequential Circuits

Topic 8: Sequential Circuits Topic 8: Sequential Circuits Readings : Patterson & Hennesy, Appendix B.4 - B.6 Goals Basic Principles behind Memory Elements Clocks Applications of sequential circuits Introduction to the concept of the

More information

Propositional Logic: Models and Proofs

Propositional Logic: Models and Proofs Propositional Logic: Models and Proofs C. R. Ramakrishnan CSE 505 1 Syntax 2 Model Theory 3 Proof Theory and Resolution Compiled at 11:51 on 2016/11/02 Computing with Logic Propositional Logic CSE 505

More information

Introduction: Computer Science is a cluster of related scientific and engineering disciplines concerned with the study and application of computations. These disciplines range from the pure and basic scientific

More information

14.1. Unit 14. State Machine Design

14.1. Unit 14. State Machine Design 4. Unit 4 State Machine Design 4.2 Outcomes I can create a state diagram to solve a sequential problem I can implement a working state machine given a state diagram STATE MACHINES OVERVIEW 4.3 4.4 Review

More information

The Discrete EVent System specification (DEVS) formalism

The Discrete EVent System specification (DEVS) formalism The Discrete EVent System specification (DEVS) formalism Hans Vangheluwe The DEVS formalism was conceived by Zeigler [Zei84a, Zei84b] to provide a rigourous common basis for discrete-event modelling and

More information

Computing Least Common Subsumers in Description Logics with Existential Restrictions*

Computing Least Common Subsumers in Description Logics with Existential Restrictions* Computing Least Common Subsumers in Description Logics with Existential Restrictions* Franz Baader, Ralf Kiisters, Ralf Molitor LuFg Theoretische Informatik, RWTH Aachen email: {baader,kuesters,molitor}@infonnatik.rwth-aachcn.dc

More information

Equivalence Checking of Sequential Circuits

Equivalence Checking of Sequential Circuits Equivalence Checking of Sequential Circuits Sanjit Seshia EECS UC Berkeley With thanks to K. Keutzer, R. Rutenbar 1 Today s Lecture What we know: How to check two combinational circuits for equivalence

More information

Digital Circuits and Systems

Digital Circuits and Systems EE201: Digital Circuits and Systems 4 Sequential Circuits page 1 of 11 EE201: Digital Circuits and Systems Section 4 Sequential Circuits 4.1 Overview of Sequential Circuits: Definition The circuit whose

More information

Sequential Circuits Sequential circuits combinational circuits state gate delay

Sequential Circuits Sequential circuits combinational circuits state gate delay Sequential Circuits Sequential circuits are those with memory, also called feedback. In this, they differ from combinational circuits, which have no memory. The stable output of a combinational circuit

More information

Combinational vs. Sequential. Summary of Combinational Logic. Combinational device/circuit: any circuit built using the basic gates Expressed as

Combinational vs. Sequential. Summary of Combinational Logic. Combinational device/circuit: any circuit built using the basic gates Expressed as Summary of Combinational Logic : Computer Architecture I Instructor: Prof. Bhagi Narahari Dept. of Computer Science Course URL: www.seas.gwu.edu/~bhagiweb/cs3/ Combinational device/circuit: any circuit

More information

The State Explosion Problem

The State Explosion Problem The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis

More information

SEMANTICS OF SYNCCHARTS

SEMANTICS OF SYNCCHARTS LABORATOIRE INFORMATIQUE, SIGNAUX ET SYSTÈMES DE SOPHIA ANTIPOLIS UMR 6070 SEMANTICS OF SYNCCHARTS Charles André Projet SPORTS Rapport de recherche ISRN I3S/RR 2003-24 FR Octobre2003 LABORATOIRE I3S: Les

More information

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007 EECS 150 - Components and Design Techniques for Digital Systems FSMs 9/11/2007 Sarah Bird Electrical Engineering and Computer Sciences University of California, Berkeley Slides borrowed from David Culler

More information

A Novel Technique to Extract Statechart Representations of FSMs (Synopsis Report)

A Novel Technique to Extract Statechart Representations of FSMs (Synopsis Report) A Novel Technique to Extract Statechart Representations of FSMs (Synopsis Report) A report submitted in partial fulfillment of the requirements for the degree of Master of Technology In Computer Science

More information

CprE 281: Digital Logic

CprE 281: Digital Logic CprE 281: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Synchronous Sequential Circuits Basic Design Steps CprE 281: Digital Logic Iowa State University, Ames,

More information

Information System Desig

Information System Desig n IT60105 Lecture 7 Unified Modeling Language Lecture #07 Unified Modeling Language Introduction to UML Applications of UML UML Definition Learning UML Things in UML Structural Things Behavioral Things

More information

Analysis and Optimization of Discrete Event Systems using Petri Nets

Analysis and Optimization of Discrete Event Systems using Petri Nets Volume 113 No. 11 2017, 1 10 ISSN: 1311-8080 (printed version); ISSN: 1314-3395 (on-line version) url: http://www.ijpam.eu ijpam.eu Analysis and Optimization of Discrete Event Systems using Petri Nets

More information

Complexity Classes in Membrane Computing

Complexity Classes in Membrane Computing Complexity Classes in Membrane Computing Fernando Sancho Caparrini Research Group on Natural Computing Dpt. Computer Science and Artificial Intelligence University of Seville, Spain Goal Main Object of

More information

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic CHAPTER 10 Gentzen Style Proof Systems for Classical Logic Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. By humans, not mentioning

More information

Synchronous Sequential Circuit Design

Synchronous Sequential Circuit Design Synchronous Sequential Circuit Design 1 Sequential circuit design In sequential circuit design, we turn some description into a working circuit We first make a state table or diagram to express the computation

More information

Sequential Logic Optimization. Optimization in Context. Algorithmic Approach to State Minimization. Finite State Machine Optimization

Sequential Logic Optimization. Optimization in Context. Algorithmic Approach to State Minimization. Finite State Machine Optimization Sequential Logic Optimization! State Minimization " Algorithms for State Minimization! State, Input, and Output Encodings " Minimize the Next State and Output logic Optimization in Context! Understand

More information

What You Must Remember When Processing Data Words

What You Must Remember When Processing Data Words What You Must Remember When Processing Data Words Michael Benedikt, Clemens Ley, and Gabriele Puppis Oxford University Computing Laboratory, Park Rd, Oxford OX13QD UK Abstract. We provide a Myhill-Nerode-like

More information

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

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop EE210: Switching Systems Lecture 14: State Tables, Diagrams, Latches, and Flip Flop Prof. YingLi Tian Nov. 6, 2017 Department of Electrical Engineering The City College of New York The City University

More information

(Boolean Algebra, combinational circuits) (Binary Codes and -arithmetics)

(Boolean Algebra, combinational circuits) (Binary Codes and -arithmetics) Task 1. Exercises: Logical Design of Digital Systems Seite: 1 Self Study (Boolean Algebra, combinational circuits) 1.1 Minimize the function f 1 a ab ab by the help of Boolean algebra and give an implementation

More information

ELCT201: DIGITAL LOGIC DESIGN

ELCT201: DIGITAL LOGIC DESIGN ELCT201: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Following the slides of Dr. Ahmed H. Madian Lecture 10 محرم 1439 ه Winter

More information

CPE100: Digital Logic Design I

CPE100: Digital Logic Design I Chapter 3 Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu http://www.ee.unlv.edu/~b1morris/cpe1/ CPE1: Digital Logic Design I Section 14: Dr. Morris Sequential Logic Design Chapter 3 Chapter

More information

Design of Control Modules for Use in a Globally Asynchronous, Locally Synchronous Design Methodology

Design of Control Modules for Use in a Globally Asynchronous, Locally Synchronous Design Methodology Design of Control Modules for Use in a Globally Asynchronous, Locally Synchronous Design Methodology Pradnya Deokar Department of Electrical and Computer Engineering, VLSI Design Research Laboratory, Southern

More information

Software Verification with Abstraction-Based Methods

Software Verification with Abstraction-Based Methods Software Verification with Abstraction-Based Methods Ákos Hajdu PhD student Department of Measurement and Information Systems, Budapest University of Technology and Economics MTA-BME Lendület Cyber-Physical

More information

CS/COE0447: Computer Organization

CS/COE0447: Computer Organization CS/COE0447: Computer Organization and Assembly Language Logic Design Review Sangyeun Cho Dept. of Computer Science Logic design? Digital hardware is implemented by way of logic design Digital circuits

More information

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

LOGIC CIRCUITS. Basic Experiment and Design of Electronics Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Outline Combinational logic circuits Output

More information

The Design Procedure. Output Equation Determination - Derive output equations from the state table

The Design Procedure. Output Equation Determination - Derive output equations from the state table The Design Procedure Specification Formulation - Obtain a state diagram or state table State Assignment - Assign binary codes to the states Flip-Flop Input Equation Determination - Select flipflop types

More information

Simulation of Gene Regulatory Networks

Simulation of Gene Regulatory Networks Simulation of Gene Regulatory Networks Overview I have been assisting Professor Jacques Cohen at Brandeis University to explore and compare the the many available representations and interpretations of

More information

Implementing an Intelligent Error Back Propagation (EBP) Relay in PSCAD TM /EMTDC 4.2.1

Implementing an Intelligent Error Back Propagation (EBP) Relay in PSCAD TM /EMTDC 4.2.1 1 Implementing an Intelligent Error Back Propagation (EBP) Relay in PSCAD TM /EMTDC 4.2.1 E. William, IEEE Student Member, Brian K Johnson, IEEE Senior Member, M. Manic, IEEE Senior Member Abstract Power

More information

Symbolic State Minimization

Symbolic State Minimization CSE 27 Introduction to igital Systems Supplementary Reading Symbolic State inimization and An Example Symbolic State inimization In constructing state diagrams, it often occurs that the number of symbolic

More information

Finite State Machine (FSM)

Finite State Machine (FSM) Finite State Machine (FSM) Consists of: State register Stores current state Loads next state at clock edge Combinational logic Computes the next state Computes the outputs S S Next State CLK Current State

More information

Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems

Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems Computer Journal Lecture - 22nd June 2009 Manfred Broy Technische Universität München Institut für Informatik

More information

DES. 4. Petri Nets. Introduction. Different Classes of Petri Net. Petri net properties. Analysis of Petri net models

DES. 4. Petri Nets. Introduction. Different Classes of Petri Net. Petri net properties. Analysis of Petri net models 4. Petri Nets Introduction Different Classes of Petri Net Petri net properties Analysis of Petri net models 1 Petri Nets C.A Petri, TU Darmstadt, 1962 A mathematical and graphical modeling method. Describe

More information

Finite State Machines. CS 447 Wireless Embedded Systems

Finite State Machines. CS 447 Wireless Embedded Systems Finite State Machines CS 447 Wireless Embedded Systems Outline Discrete systems Finite State Machines Transitions Timing Update functions Determinacy and Receptiveness 1 Discrete Systems Operates in sequence

More information

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department Page 1 of 13 COE 202: Digital Logic Design (3-0-3) Term 112 (Spring 2012) Final

More information

Chapter 5. Finite Automata

Chapter 5. Finite Automata Chapter 5 Finite Automata 5.1 Finite State Automata Capable of recognizing numerous symbol patterns, the class of regular languages Suitable for pattern-recognition type applications, such as the lexical

More information

SPECIFICATION MODELS. Chapter 3. Overview. Introducing Hierarchy. StateCharts

SPECIFICATION MODELS. Chapter 3. Overview. Introducing Hierarchy. StateCharts hapter SPEIFITION MOELS Overview Stateharts Hierarchy oncurrency Events and ctions Simulation Semantics Non-eterminism and onflicts Petri Nets Notation oncurrency Petri Net Languages ehavioral Properties

More information