Directed Test Generation for Validation of Cache Coherence Protocols

被引:15
作者
Lyu, Yangdi [1 ]
Qin, Xiaoke [2 ]
Chen, Mingsong [3 ]
Mishra, Prabhat [1 ]
机构
[1] Univ Florida, Dept Comp & Informat Sci & Engn, Gainesville, FL 32611 USA
[2] Nvidia, Hardware Dept, Redmond, WA 98052 USA
[3] East China Normal Univ, Shanghai Key Lab Trustworthy Comp, Shanghai 200062, Peoples R China
基金
美国国家科学基金会;
关键词
Cache coherence; quotient space; test generation; verification; SYMMETRY;
D O I
10.1109/TCAD.2018.2801239
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Computing systems utilize multicore processors with complex cache coherence protocols to meet the increasing need for performance and energy improvement. It is a major challenge to verify the correctness of a cache coherence protocol since the number of reachable states grows exponentially with the number of cores. In this paper, we propose an efficient test generation technique, which can be used to achieve full state and transition coverage in simulation-based verification for a wide variety of cache coherence protocols. Based on effective analysis of the state space structure, our method can generate more efficient test sequences (50% shorter) on-the-fly compared with tests generated by BFS. While our on-the-fly method can reduce the numbers of required tests by half, it can still be impractical to verify all possible transitions in the presence of large number of cores. We propose scalable on-the-fly test generation techniques using quotient state space. The proposed approach guarantees selection of important transitions by utilizing equivalence classes, and omits only similar transitions. Our experimental results demonstrate that our proposed approaches can efficiently tradeoff between transition coverage and validation effort.
引用
收藏
页码:163 / 176
页数:14
相关论文
共 24 条
[1]  
Abts D., 2003, Proceedings International Parallel and Distributed Processing Symposium, DOI 10.1109/IPDPS.2003.1213087
[2]   Genesys-pro: Innovations in test program generation for functional processor verification [J].
Adir, A ;
Almog, E ;
Fournier, L ;
Marcus, E ;
Rimon, M ;
Vinov, M ;
Ziv, A .
IEEE DESIGN & TEST OF COMPUTERS, 2004, 21 (02) :84-93
[3]  
Advanced Micro Device, 2013, AMD64 ARCHITECTURE P
[4]  
[Anonymous], 2003, Computer architecture: a quantitative approach
[5]  
Binkert Nathan, 2011, Computer Architecture News, V39, P1, DOI 10.1145/2024716.2024718
[6]   Exploiting symmetry in temporal logic model checking [J].
Clarke, EM ;
Enders, R ;
Filkorn, T ;
Jha, S .
FORMAL METHODS IN SYSTEM DESIGN, 1996, 9 (1-2) :77-104
[7]   Detecting Software Cache Coherence Violations in MPSoC Using Traces Captured on Virtual Platforms [J].
Cunha, Marcos Aurelio Pinto ;
Matoussi, Omayma ;
Petrot, Frederic .
ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2017, 16 (02)
[8]  
DILL DL, 1992, 1992 IEEE INTERNATIONAL CONFERENCE ON COMPUTER DESIGN : VLSI IN COMPUTERS & PROCESSORS, P522, DOI 10.1109/ICCD.1992.276232
[9]  
Edmonds J., 1973, Mathematical Programming, V5, P88, DOI 10.1007/BF01580113
[10]  
Emerson EA, 2003, LECT NOTES COMPUT SC, V2860, P247