Embedded systems make a heavy use of software to perform Real-Time embedded control tasks. Embedded software is characterized by a relatively long lifetime and by tight cost, performance and safety constraints. Several superoptimization techniques for embedded softwares based on Multi-valued Decision Diagram MDD representations have been described in the literature, but they all share the same basic limitation. They are based on standard Ordered MDD OMDD packages, and hence require a xed order of evaluation for the MDD variables on every execution path. Free MDDs FMDDs lift this limitation, and hence open up more optimization opportunities. Finding the optimal variable ordering for FMDDs is a very di cult problem. Hence in this paper we describe a heuristic procedure that performs well in practice, and is based on FMDD cost estimation applied to recursive cofactoring. Experimental results show that our new variable ordering method obtains often smaller embedded software than pre...
Chunghee Kim, Luciano Lavagno, Alberto L. Sangiova