A timing-driven design and validation methodology for embedded real-time systems (ACM transactions on design automation of electronic systems, 1998)