Top Banner
AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST- SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang
12

AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Dec 23, 2015

Download

Documents

Deborah Wilson
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION

Reviewer: Shin-Yann Ho

Instructor: Jie-Hong Jiang

Page 2: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Abstract

This paper presents a concolic testing approach to generation of post-silicon tests with virtual prototypes.

The generated test cases have been issued to both virtual prototypes and silicon devices. We observed significant coverage improvement with generated test cases.

Page 3: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Introduction

Virtual prototypes: fast, fully functional software models of hardware systems, which enable unmodified execution of software code.

Concolic testing: a hybrid testing technique that integrates concrete execution with symbolic execution

Page 4: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Key Contribution

Concolic testing for post-silicon validation. Not only integrates concrete and symbolic execution, but also combines virtual and silicon device executions. The observability and controllability of virtual prototypes are fully leveraged. Transaction-based test selection. A transaction-based test selection strategy is developed to select device states under test and eliminate redundancy in generated tests.

Page 5: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Symbolic Execution & Some Definitions

Symbolic execution executes a program with symbolic values as inputs instead of concrete ones and represents the values of program variables as symbolic expressions.

Def1: device state is denoted as s = ⟨sI , sN ⟩ Def2: A device request is denoted as r which is

issued by high-level software to control and operate the device. (seq = r1, r2….rn)

Def3: A test case is denoted as tc = ⟨seq, r⟩ Def4: A state under test is denoted as sut where sut is the device state on which test cases are generated. Def5: device transaction, denoted as t, is a program

path of a virtual device.

Page 6: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

transaction

testcase

State under test

Page 7: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Test generation & Selection

To solve the two challenges: 1. State selection problem2. Test case redundancy problem

Page 8: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Implementation

Harness Generation for Symbolic Execution

Symbolic Execution 1. Path explosion a. loop bound b. time bound2. Environmental interaction Testing with Generated Test Cases Compares interface states of the real and virtual devices to detect any inconsistency.

Page 9: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Experimental Result

Page 10: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Experimental Result

Page 11: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Conclusion

Present an approach to generation of post-silicon tests with virtual prototypes, which fully leverages the observability and traceability of virtual prototypes.

Too few test cases Can propose more advantages of using

symbolic execution Test selection still needs to trace paths

(exponential) Why showing the number of line of

codes?

Page 12: AUTOMATIC CONCOLIC TEST GENERATION WITH VIRTUAL PROTOTYPES FOR POST-SILICON VALIDATION Reviewer: Shin-Yann Ho Instructor: Jie-Hong Jiang.

Thanks for your attention!