Post-Model Validation of Victim DRAM Caches

Formal modeling and analysis of a victim DRAM cache has already been discussed in the existing literature. These works use interacting state machines to model states and transitions of a victim DRAM cache. In this work, we address model-code conformance between a formal model of the victim DRAM cache and a simulator obtained from it. Our work focuses on a two-step approach to validate a DRAM cache implementation. In the first step, we use a technique based on it Feedback-Directed Random Testing to reverse engineer the state models from the execution traces. This process helps us to match the implementation with the state machines associated with the formal model and to verify some of the state-based properties. In the second step, we instrument the implementation with monitors and validate the liveness and safety properties (during run-time) which have been proved earlier in the formal model.

[1]  Natarajan Shankar,et al.  The SAL Language Manual , 2003 .

[2]  Christel Baier,et al.  Principles of model checking , 2008 .

[3]  Stéphan Jourdan,et al.  Haswell: The Fourth-Generation Intel Core Processor , 2014, IEEE Micro.

[4]  Rodolfo Pellizzoni,et al.  PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[5]  Somayeh Sardashti,et al.  The gem5 simulator , 2011, CARN.

[6]  Balaram Sinharoy,et al.  POWER7: IBM's next generation server processor , 2010, 2009 IEEE Hot Chips 21 Symposium (HCS).

[7]  Mohamed Hassan,et al.  MCXplore: Automating the Validation Process of DRAM Memory Controller Designs , 2018, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[8]  Mark D. Hill,et al.  Supporting Very Large DRAM Caches with Compound-Access Scheduling and MissMap , 2012, IEEE Micro.

[9]  Michael D. Ernst,et al.  Randoop: feedback-directed random testing for Java , 2007, OOPSLA '07.

[10]  Partha S. Roop,et al.  Formal Modeling and Verification of a Victim DRAM Cache , 2019, ACM Trans. Design Autom. Electr. Syst..

[11]  Madhu Mutyam,et al.  Formal Modeling and Verification of Controllers for a Family of DRAM Caches , 2018, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[12]  Rajib Mall,et al.  Inferring State Models Using Feedback Directed Random Testing , 2015, 2015 Asia-Pacific Software Engineering Conference (APSEC).