Free MDD-based software optimization techniques for embedded systems

Chunghee Kim, Luciano Lavagno, Alberto Sangiovanni-Vincentelli
2000 Proceedings of the conference on Design, automation and test in Europe - DATE '00  
Embedded systems make a heavy use of software to perform Real-Time embedded c ontrol 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 D e cision Diagram (MDD) representations have been described in the literature, but they all share the same basic limitation. They are b ased on standard O r dered M D D (OMDD) packages, and hence r equire
more » ... and hence r equire a x e d o r der of evaluation for the MDD variables on every execution path. Free MDDs (FMDDs) lift this limitation, and hence o p en up more optimization opportunities. Finding the optimal variable ordering for FMDDs is a very di cult problem. Hence i n t h i s 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 t h a n p r evious (sifting-based) methods.
doi:10.1145/343647.343686 fatcat:bfjdzf4ovfbofahrbumf3ouxey