Top Banner
FVCAG: A framework for formal verification driven power modelling and verification Arun Joseph, Spandana Rachamalla , Rahul Rao, Anand Haridass, Pradeep Nalla 1
18

FVCAG: A framework for formal verification driven power modelling and verification

Jan 14, 2017

Download

Technology

Arun Joseph
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: FVCAG: A framework for formal verification driven power modelling and verification

FVCAG: A framework for formal verification driven power modelling and verification

Arun Joseph, Spandana Rachamalla, Rahul Rao, Anand Haridass, Pradeep Nalla

1

Page 2: FVCAG: A framework for formal verification driven power modelling and verification

Agenda

Background

Limitations of Existing approaches

FVCAG Methodology

Experimental Evaluation

2

Page 3: FVCAG: A framework for formal verification driven power modelling and verification

Background

o Determining power model generation simulation conditions for different input pins of an IP is critical for the accuracy of the power model.

o Identifying instances of IP in a design, where these preferred input pin conditions are violated is also desired.

3

IP-1 Netlist

IP-1 Power Model

IP-2 Netlist

IP-2 Power Model

Context 1: Offline flow for IP power characterization

Context 2: Higher level design (D1) using IP-1 & IP-2

IP-1 Netlist

IP-1 Netlist

IP-2 Netlist

IP-2 Netlist

Page 4: FVCAG: A framework for formal verification driven power modelling and verification

Background

o Modern day microprocessors are complex hierarchical designs

o Industry class microprocessors are designed using a very large number of IPs and IP types and these need to be characterized under different conditions.

o Also, higher level power models when created using inaccurate lower level power models, results in additional errors.

o POWER8 chip photomicrograph indicates regions occupied by the microprocessor cores, interconnect, L2 cache, L3 cache, memory controllers, and other components in the microprocessor.

4

Page 5: FVCAG: A framework for formal verification driven power modelling and verification

Existing Approaches: Limitations

o Manual approaches based on IP design guides, and consultation with design experts.

o Not scalable and not efficient.

o Power modelling and validation is time consuming and highly error prone.

o As IP designs evolve over time, power modelling criteria also need to be constantly updated.

o Additional challenges for power modelling of vendor IP.5

Page 6: FVCAG: A framework for formal verification driven power modelling and verification

FVCAG: Overview

6

FVCAGDesign RTL

FVCAG Config

IP power modelling conditions

IP power violations

Phase 1: Perform higher level

formal verification checks

Phase 2: Analyze check results to simultaneously determine conditions & design errors

FVCAG

Page 7: FVCAG: A framework for formal verification driven power modelling and verification

FVCAG: Highlights First such industry-class, automated, framework.

Done using a single formal verification run.

Minimal knowledge of the IP design is required.

Much faster and with reduced power modelling errors.

Equally applicable for designs with IP from external vendors.

Re-uses existing design RTL and formal verification tools.

7

Page 8: FVCAG: A framework for formal verification driven power modelling and verification

Formal Verification Engine used in FVCAG

FVCAG uses RuleBase SixthSense Edition, an industrial strength formal verification platform.

RuleBase SixthSense Edition has been used to formally verify designs for more than two decades, running on different design types of different sizes, with different proof algorithms.

It includes a reach set of model checking engines which run in a transformation-based verification framework (TBV).

The TBV framework enables transferring a given model checking problem from one engine to the other while gradually simplifying the problem until it is completely solved.

Page 9: FVCAG: A framework for formal verification driven power modelling and verification

FVCAG Methodology: Phase 1o Step 1:

Select a higher level RTL design (R) with M instances of the IP of interest.

o Step 2:

Determine input pins of “interest” (n).

These are subset of IP input pins whose condition for power modelling needs to be determined.

The list of such input pins can be either asserted or can be determined automatically.

o Step 3:

Define N=2^n formal verification checks for the pins of interest.

Perform formal verification, configured for the mode of interest, at this higher level of design hierarchy to check for these N checks.

Observe the number of fails (FN) for each of the N checks.

Phase 1: Perform higher level

formal verification checks

Phase 2: Analyze check results to simultaneously determine conditions & design errors

FVCAG

Page 10: FVCAG: A framework for formal verification driven power modelling and verification

FVCAG Methodology: Phase 2

o Step 4:

Find the check for which number of fails (FN) is zero or minimum.

This is the condition that should be used for power modelling of this cell.

For correct RTL designs, FN will be zero. But will be a non-zero minima for designs with errors.

The instances of IP in R, which contribute to the non-zero minima of FN are those instances, which have design errors.

Using the one condition determined, perform formal verification across more RTL designs to find errors in those designs.

Phase 1: Perform higher level

formal verification checks

Phase 2: Analyze check results to simultaneously determine conditions & design errors

FVCAG

Page 11: FVCAG: A framework for formal verification driven power modelling and verification

FVCAG: Application ExamplePhase 1: Perform higher level formal verification checksoStep 1:

Say IP of interest is a non-combinatorial standard cell, with a total of 5 input pins. A higher level macro RTL (R), which has say 189 instances of the said IP is selected.

oStep 2: Of the total 5 IP input pins, say 3 pins (P1, P2, and P3) are the pins of interest. The 3 pins of interest are specified so in the FVCAG Config file, along with the mode

information settings for the design RTL .oStep 3:

FVCAG creates N=2^3=8 formal verification checks. Performs formal verification to check for these 8 checks on each of the 189 IP

instances. FVCAG then observes the number of fails (FN) for each of the 8 checks.

Phase 2: Analyze check results to determine conditions and design errorsoStep 4:

Check 7 has the minimum number of fails (13). Check 7 is chosen as the power modelling condition for the IP. The 13 IP instances in the design, which fail check 7 are the design errors. Using the Check 7 conditions, perform formal verification across more RTL designs

to find errors in those designs.

Page 12: FVCAG: A framework for formal verification driven power modelling and verification

Experimental Evaluation

o Contributor based power modeling framework is used to assess the impact of the FVCAG.

12Reference power analysis tool chain

Page 13: FVCAG: A framework for formal verification driven power modelling and verification

Experimental Evaluation: Standard Cell Power Modelling

o Compare FVCAG based approaches and manual approaches.

Correct input pin conditions of different LCBs.

Time required to arrive at the correct conditions.

Tracked design errors across macros, releases.

13

FVCAG

Core and uncore macro RTL

Config Core and uncore macro RTL

Core and uncore macro RTL

Power modelling criteria for the different LCB types

LCB Design Guide

Design Expert

Manual Approach

Power modelling criteria for the different LCB types

Compare

Page 14: FVCAG: A framework for formal verification driven power modelling and verification

Experimental Results: Standard Cell Power Modelling

MacroNumber of LCB

instances

Number of violations at the

correct condition

Number of violations at the other wrong

conditionsMacro 1 9 0 9Macro 2 11 0 11Macro 3 31 0 31Macro 4 12 0 12Macro 5 9 0 9Macro 6 109 1 108, 109Macro 7 40 1 39, 40Macro 8 11 0 11Macro 9 20 0 20

Macro 10 48 0 48Macro 11 43 0 43Macro 12 8 0 8Macro 13 28 0 28Macro 14 94 1 93, 94Macro 15 17 0 17Macro 16 12 0 12Macro 17 7 0 7

FVCAG results for LCB power modelling

o Evaluation done across a large number of macros from the core and the uncore units.

o Input simulation condition for different LCB types derived from FVCAG was consistent across the macros.

o Even for macro 6, (highest number of LCBs) the correct simulation condition for all LCB types obtained using FVCAG took less than a minute as opposed to the manual approaches that took more than a day.

Page 15: FVCAG: A framework for formal verification driven power modelling and verification

Experimental Results: Standard Cell Power Modelling

15

All macros across unit

Number of LCBs

Number of violations

Time taken(sec)

Unit1 3179 16 53.4Unit2 225 10 12.97Unit3 990 0 42.34Unit4 1191 16 31.28

FVCAG LCB results across processor units LCBX power modelling differences

o FVCAG was able to correctly identify and report the violating LCB instances in less than a minute, across 4 different units of the microprocessor,

o Wrong setting of a single input pin (PN) of the most widely used LCB results in 50% pessimism in the free running clock power estimation of the LCBX.

Page 16: FVCAG: A framework for formal verification driven power modelling and verification

Experimental Evaluation: Macro Dynamic Power Modelling

o Compare FVCAG based approaches and manual approaches.

The primary input conditions for the macros.

The macro power seen under TDP (Thermal Design Point) workload conditions of the microprocessor.

16

Macro pin conditionsmanually created by

design experts

Macro power modelling tool chain Macro power

FVCAG based macro pin conditions & violation count

Macro power modelling tool chain Macro power

Compare - 2

FVCAG

Violation count in manual conditions

Compare - 1

Page 17: FVCAG: A framework for formal verification driven power modelling and verification

Experimental Results: Macro Dynamic Power Modelling

o Experiments across the ten macros, where the number of IP in these macros ranged from 17 to 109.

o The overall error in PiSfDepCeff power was found to be in the range of 0 to 39.32%, and error in macro ac power was in the range of 0 to 5.92%.

17

Page 18: FVCAG: A framework for formal verification driven power modelling and verification

Conclusion

Introduced FVCAG, a framework for enabling efficient and accurate pre-silicon IP power modelling.

Advocate supplementing existing power modelling flows with FVCAG.

FVCAG can be implemented using existing design RTL and formal verification tools.

Experimental evaluation of FVCAG demonstrates the efficiency and accuracy.

18