STATIC TIMING ANALYSIS OF

IBM POWERPC 750 CX

By

Gopi Rao

Amol Kamble

 

INTRODUCTION:

      For any Real Time embedded system to meet its deadline, the Worst-Case execution time (WCET) of each task in the system should be known. The Process of statically determining the WCET of a task is called Timing Analysis. The scheduling decision of a task depends on its WCET and the total time in the schedule. For real-life programs, finding the program run that leads to WCET is impossible to achieve. What is achievable is computing an upper bound of the WCET, i.e., a time greater than real but incomputable WCET. This project is aimed at computing the WCET for IBM PowerPC 750 CX, which is used in the Airbus A380. Hence computation of WCET of IBM PowerPC 750CX helps in making effective scheduling decisions in such safety critical real time systems, dynamically.

 

 

STATIC TIMING ANALYSIS:

          Schedulability tests in real time systems are generally based on the assumption that the WCET of every task in the task set being scheduled is known a priori. Static timing analyser propagates through all the execution paths in a program and calculates a safe upper bound on the time for the longest path in the program. The structure of a program may cause a hurdle in the path of the analyzer due to factors like data dependent control flow, pointer accesses etc. Some architectural features like data cache behavior can cause unpredictability for a timing analyzer.

   

     We can use the following frame work as an analytical approach

to compute the WCET bounds.

 

1.   The assembly code generated (in our case, the PowerPC code) by the gcc cross-compiler is given as input to the Pcompiler (Pseudo Compiler) which creates the path files using Control Flow and Basic Block information.

2.   The framework also has a Static cache simulator that simulates the cache.

3.    The resulting cache organization along with the control flow information is fed into the Timing Analyzer which computes the safe bound WCET.    

 

 

 

 

Proposed Milestones

 

1.   PCompiler – Week ending 10/23/2005

Update:

1.   Static Cache Simulator – Week ending 10/30/2005

Update:

2.   Timing Analyzer – Week ending 11/20/2005

Update:

3.   Project Report – Week ending 11/27/2005

Report:

 

 

References:

1.    "Bounding Worst-Case Instruction Cache Performance" by R. Arnold, F. Mueller, D. B. Whalley and M. Harmon in IEEE Real-Time Systems Symposium, Dec 1994, pages 172-181

     http://moss.csc.ncsu.edu/~mueller/publications.html #19

2.    "Bounding Worst-Case Data Cache Behavior by Analytically Deriving Cache Reference Patterns" by H. Ramaprasad and F. Mueller in Real-Time and Embedded Technology and Applications Symposium, March 2005, pages 148-157.(slides).                http://moss.csc.ncsu.edu/~mueller/ftp/pub/mueller/papers/rtas05dcache.pdf

3.    “Computing the WCET of an Avionics Program by Abstract Interpretation” by Jean Souyris, Erwan le Pavec, Guillaume Himbert, Victor Jégu (Airbus France), Guillaume Borios (Atos Origin Integration) and Reinhold Heckmann (AbsInt GmbH, Germany)

http://artist.cs.uni-sb.de/WCET05/Papers/Souyris.pdf