Protocol Analysis/Testing Based on Sidhu et al in IEEE TSE 89 and TN 93 Figures from the papers.

Slides:



Advertisements
Similar presentations
Finite-state Recognizers
Advertisements

Theory of Computing Lecture 23 MAS 714 Hartmut Klauck.
Introduction to Sequential Circuits
Lecture 24 MAS 714 Hartmut Klauck
Types of Logic Circuits
Cook’s Theorem The Foundation of NP-Completeness.
TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
Grey Box testing Tor Stålhane. What is Grey Box testing Grey Box testing is testing done with limited knowledge of the internal of the system. Grey Box.
Prachi Saraph, Mark Last, and Abraham Kandel. Introduction Black-Box Testing Apply an Input Observe the corresponding output Compare Observed output with.
Digital Logic Design Lecture 27.
1 Lecture 23 More Sequential Circuits Analysis. 2 Analysis of Combinational Vs. Sequential Circuits °Combinational : Boolean Equations Truth Table Output.
Sequential Circuit Design
ECE 331 – Digital System Design
Penn ESE 535 Spring DeHon 1 ESE535: Electronic Design Automation Day 13: March 4, 2009 FSM Equivalence Checking.
ECE C03 Lecture 111 Lecture 11 Finite State Machine Optimization Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Conformance Simulation Relation ( ) Let and be two automata over the same alphabet simulates () if there exists a simulation relation such that Note that.
ECE C03 Lecture 101 Lecture 10 Finite State Machine Design Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
ECE C03 Lecture 131 Lecture 13 Finite State Machine Optimization Prith Banerjee ECE C03 Advanced Digital Design Spring 1998.
Contemporary Logic Design Finite State Machine Design © R.H. Katz Transparency No Chapter #8: Finite State Machine Design 8.5 Finite State Machine.
Aho-Corasick String Matching An Efficient String Matching.
Department of CIS University of Pennsylvania 1/31/2001 Specification-based Protocol Testing Hyoung Seok Hong Oleg Sokolsky CSE 642.
25/06/2015Marius Mikucionis, AAU SSE1/22 Principles and Methods of Testing Finite State Machines – A Survey David Lee, Senior Member, IEEE and Mihalis.
Sequential Circuit Design
Overview Sequential Circuit Design Specification Formulation
SEBASE 2007 Testing from Finite State Machines R. M. Hierons Brunel University, UK
Fall 2005Costas Busch - RPI1 Recursively Enumerable and Recursive Languages.
Sequential Testing Two choices n Make all flip-flops observable by putting them into a scan chain and using scan latches o Becomes combinational testing.
CSCI 3301 Transparency No. 9-1 Chapter #9: Finite State Machine Optimization Contemporary Logic Design.
Software Testing and QA Theory and Practice (Chapter 10: Test Generation from FSM Models) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory.
FPGA-Based System Design: Chapter 5 Copyright  2004 Prentice Hall PTR Topics n Basics of sequential machines. n Sequential machine specification. n Sequential.
Software Testing Sudipto Ghosh CS 406 Fall 99 November 9, 1999.
Zvi Kohavi and Niraj K. Jha 1 Capabilities, Minimization, and Transformation of Sequential Machines.
Chapter 5 - Part Sequential Circuit Design Design Procedure  Specification  Formulation - Obtain a state diagram or state table  State Assignment.
Technical University Tallinn, ESTONIA 1 Boolean derivatives Calculation of the Boolean derivative: Given:
Unit 14 Derivation of State Graphs
CALTECH CS137 Spring DeHon CS137: Electronic Design Automation Day 9: May 6, 2002 FSM Equivalence Checking.
Grey Box testing Tor Stålhane. What is Grey Box testing Grey Box testing is testing done with limited knowledge of the internal of the system. Grey Box.
Lecture 18 More Moore/Mealy machines.
CPEN Digital System Design Chapter 5 - Sequential Circuits Sequential Circuit Design C. Gerousis © Logic and Computer Design Fundamentals, 4 rd Ed.,
Testing Techniques Testing with Finite State Machines Ed Brinksma course 2004.
Computability Construct TMs. Decidability. Preview: next class: diagonalization and Halting theorem.
Turing Machines Chapter 17. Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs unrestricted grammars Turing.
Regular Expressions Chapter 6 1. Regular Languages Regular Language Regular Expression Finite State Machine L Accepts 2.
Copyright © Curt Hill Finite State Machines The Simplest and Least Capable Automaton.
Testing Basics Dr. Eng. Amr T. Abdel-Hamid NETW 703 Winter 2010 Protocol Design.
Testing of Synchronous Sequential Circuits By Dr. Amin Danial Asham.
CSCI 115 Chapter 8 Topics in Graph Theory. CSCI 115 §8.1 Graphs.
Towards Interoperability Test Generation of Time Dependent Protocols: a Case Study Zhiliang Wang, Jianping Wu, Xia Yin Department of Computer Science Tsinghua.
Testing of Synchronous Sequential Circuits By Dr. Amin Danial Asham.
Introduction to Sequential Logic Design Finite State-Machine Analysis.
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
Lecture 14: Theory of Automata:2014 Finite Automata with Output.
Finite State Machines Mealy machine inputs Outputs next state function
Capabilities, Minimization, and Transformation of Sequential Machines
Sequential Networks and Finite State Machines
Introduction to Sequential Logic Design
Sequential Flexibility
Dr. Eng. Amr T. Abdel-Hamid
Hardware Verification
CS 352 Introduction to Logic Design
Testing of Synchronous Sequential Circuits
ESE535: Electronic Design Automation
CSE 311 Foundations of Computing I
Implement FSM with fewest possible states • Least number of flip flops
ESE535: Electronic Design Automation
CSE 370 – Winter Sequential Logic-2 - 1
2) For each of the finite state machines above, use the sets derived in part 1) to produce the following:   i.                  a set of sequences that.
L7s Multiple Output example
Lecture 20 State minimization via row matching.
Presentation transcript:

Protocol Analysis/Testing Based on Sidhu et al in IEEE TSE 89 and TN 93 Figures from the papers.

Basic Idea Given a protocol spec, how do you know if an implementation conforms to it (conformance testing) Use black-box testing methods –Give input, see if output is “right” per spec Need a formal specification –What input / output pairs should be checked Fault coverage Automatic generation

Mealy Machine Is an FSM that produces an output on each transition. Minimal – least number of states Completely Specified – each state has a transition for every input symbol Strongly connected – if there is a transition path for each state pair Test subsequence, subsequence, test sequence, optimized test sequence

An Example Mealy Machine

Protocol Modelling Model protocol as Mealy Machine Protocol specified state/input combinations are core, others are noncore Strong vs Weak Conformance –Weak if similar behavior on core, unspeficied on noncore Analyze coverage via simulation using mutated machines –Showing that machines are equivalent ?

Basic Test generation methods T-Method –Assume minimal, strongly connected, completely specified machine –Generate random inputs till machine has traversed each transition once, eliminate loops U-Method –Assume minimal, strongly connected, completely specified machine –Derive Unique IO sequence for each state –For each transition (s i,s j ), reset, find shortest path from 0 to si, add input to cause transition to s j, add UIO –Beta sequence is concatenation of each subsequence, create optimized sequence.

More test generation methods D-Method –Assume minimal, strongly connected, completely specified machine with distinguishing sequence –Construct the same way as U method but replace UIO with DS W-Method –Assume minimal, strongly connected, completely specified machine –Derive a Characterizing set W Set of input strings a s.t the last output symbol obtained by applying these strings in a fixed order is different for different states. Use these instead of UIOs

Testing issues Finding shortest test sequence to check a given set of behaviors –How long to give complete coverage ? –Can we create a hierarchy of sequences State cardinality may differ in spec and implementation – masking behavior is different Test subsequence to test (p,q) transition can be viewed as L1.L2…Lk.CS(q) Bk test subsequence has an L sequence of length k. B0 tests a state. Every Bk is proper subsequence of some Bk+1 if machine is complete. Reset and Bridge Sequences