Worst Case Execution Time (WCET) is a crucial information for scheduling real-time systems. During the past decade, static WCET analysis has been an active research field because it is (semi-)automatic as well as capable of guaranteeing safeness of the estimate. In general, static methods tend to over-approximate WCET estimates because information on infeasible path is hard to manage efficiently and to apply in computations.
This dissertation proposes a technique that maintains and utilizes the feasibility information in a compact manner. Our technique encodes infeasible paths using BDD whose operations perform the summarization and query processes in linear time. Moreover, the technique is extendable to any analyses that require feasibility tests. Experiments we have conducted show that this technique reduces the space for maintaining infeasible paths up to by 90% without loss of accuracy.
This dissertation, moreover, presents techniques to utilize the resulting information on infeasible paths in static WCET analyses. In this research, we mainly focus on two representative methods: Implicit Path Enumeration Technique (IPET) and path-based technique. IPET uses Integer Linear Programming(ILP) to calculate a WCET estimate. The information, therefore, must be captured as flow facts, conjunctive linear constraints on the execution counts of basic blocks. For IPET, we propose a technique to encode the information into flow facts automatically. Our encoding technique, moreover, generates flows facts that contain at most one disjunction because disjunctions in flow facts decrease performance of the analysis significantly.
For path-based technique using graph traversal algorithms for WCET estimation, this dissertation presents a technique that avoids many useless feasibility tests through BDD-based construction of CFG. The CFG is extracted from information on infeasible paths generated by our summarization technique efficiently. With the resulting CFG, path-bas...