130 likes | 323 Views
Convertibility Verification and Converter Synthesis: Two Faces of the Same Coin. Jie-Hong Jiang EE249 Discussion 11/21/2002 Passerone et al., ICCAD ’ 02. Converter synthesis - Introduction. Essential issues in component-based design Compatibility checking of protocols
E N D
Convertibility Verification and Converter Synthesis: Two Faces of the Same Coin Jie-Hong Jiang EE249 Discussion 11/21/2002 Passerone et al., ICCAD’02
Converter synthesis - Introduction • Essential issues in component-based design • Compatibility checking of protocols • Automatic synthesis of interface adaptors for incompatible protocols • Automata-based solutions • Game-theoretic solutions • Formal proofs of correctness
Protocol compatibility compatible T T 0 0 a b a b Sender a followed by b 1 Receiver Possibly wait between a and b 1 T • The output of the sender respects the input assumptions of the receiver
Protocol compatibility incompatible T T 0 0 a b a b Receiver a followed by b 1 Sender Possibly wait between a and b 1 T • The output of the sender violates the input assumptions of the receiver
Protocol compatibility Sender Protocol Receiver Protocol Converter • Use specification to define legal transactions a b T a’ b’ T’ a b T a’ b’ T’ Specification (monitor) defines compatible transactions Figure source: R. Passerone
Protocol compatibility (T,T’) (a,a’) (b,b’) 0 (T,a’) (T,b’) (a,T’) (b,T’) (a,b’) a b (a,a’) (T,T’) (b,b’) (T,T’) (b,a’) Specification (Constrains legal states/transitions) • A possible specification • No symbols should be discarded or duplicated by the converter • Symbols should be delivered in the same order in which they were received • Converter can store at most one undelivered symbol at any time Figure source: R. Passerone
Automata based converter synthesis • Constrain converter’s behavior using • Sender and receiver protocols • Specification • Represent protocols and specification using finite automata • Construct product automaton for protocols • Remove illegal transitions/states according to specification automaton
Automata based converter synthesis b’ T’ a’ T T/a’ T/T’ T/b’ b/a’ b b/b’ b/T’ a a/a’ a/T’ a/b’ T/b’ T/T’ T/a’ T Receiver Sender Product machine Figure source: R. Passerone
Automata based converter synthesis (T,T’) (a,a’) (b,b’) T/a’ 0 b/b’ (T,a’) (T,b’) b/T’ (a,T’) (b,T’) a/a’ (a,b’) a b (a,a’) (T,T’) (b,b’) (T,T’) 0 T/b’ (b,a’) T/a’ Specification (Constrains legal states/transitions) T/T’ T/b’ 0 b b/a’ a/T’ a/b’ a T/T’ Converter Figure source: R. Passerone
Automata based converter synthesis b’ T’ a’ T T/T’ T/b’ b b/a’ a/T’ a a/b’ T/T’ T Final converter Figure source: R. Passerone
Game based converter synthesis • Two player game • Player 1 : protocols + specification • Move: sender emit an output w wrt it current state; update current state • Wining condition: makes converter have no available move • Player 2 : converter • Move: provide input l to receiver after reading w such that l satisfies receiver protocol and specification ; update current states of receiver and specification • Wining condition: always has a move for all reached states during the game
Game based converter synthesis • A wining strategy for the converter corresponds to a feasible conversion function (protocols are compatible) • A strategy is a function that maps the current history of the game to one of the available moves • Memory-less strategies are sufficient for specifications with only safety properties • Computation: successively remove bad states of the game structure until reach fixed point; if initial states survive the removing process, then the converter has a wining strategy • Complexity: linear in the size of the game structure
Conclusions • Protocol compatibility = existence of adapter • Game-theoretic modeling • Converter synthesis = game solving • Generic, expressive formulation • Can be extended to specifications with fairness constraints • Can be extended to multi-player games • Tools exist for game solving