+ All Categories
Home > Documents > A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and...

A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and...

Date post: 19-Dec-2015
Category:
View: 220 times
Download: 2 times
Share this document with a friend
Popular Tags:
32
A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA CS Dept., Los Angeles, CA
Transcript
Page 1: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

A System for Automatic Recording and Prediction of Design Quality Metrics

A System for Automatic Recording and Prediction of Design Quality Metrics

Andrew B. Kahng and Stefanus Mantik*

UCSD CSE and ECE Depts., La Jolla, CA

*UCLA CS Dept., Los Angeles, CA

Page 2: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

IntroductionIntroduction

Time-to-market window is shrinking very rapidly Product quality and design process must continually

improve Currently, there are no standards or infrastructure

for measuring and recording the semiconductor design process

METRICS provides Standard infrastructure for the collection and the

storage of design process information Standard list of design metrics and process metrics Analyses and reports that are useful for design

process optimization

METRICS allows: Collect, Data-Mine, Measure, Diagnose, then Improve

Page 3: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Related WorksRelated Works

Enterprise- and project-level metrics (“Numetrics Complexity Unit”) Numetrics Management Systems DPMS

Other in-house data collection systems e.g., TI (DAC 96 BOF), OxSigen LLC (Siemens Semiconductor)

Design Process Management [Jacome93, Brockman92, Johnson96]

Web-based design support IPSymphony, WELD, VELA, etc.

Continuous process improvement

Data mining and visualization

Page 4: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

OutlineOutline

METRICS system architecture and standards

METRICS for design flow

Flow METRICS experiments

METRICS integration with datamining

Datamining integration experiments

Issues and conclusions

Page 5: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

METRICS System ArchitectureMETRICS System Architecture

Inter/Intra-net

DBMetrics Data Warehouse

WebServer

JavaApplets

DataMining

Reporting

Transmitter Transmitterwrapper

Tool Tool Tool

TransmitterAPI

XML

Page 6: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Generic and Specific Tool MetricsGeneric and Specific Tool Metrics

tool_name stringtool_version stringtool_vendor stringcompiled_date mm/dd/yyyystart_time hh:mm:ssend_time hh:mm:sstool_user stringhost_name stringhost_id stringcpu_type stringos_name stringos_version stringcpu_time hh:mm:ss

Generic Tool Metricsnum_cells integernum_nets integerlayout_size doublerow_utilization doublewirelength doubleweighted_wl double

num_layers integernum_violations integernum_vias integerwirelength doublewrong-way_wl doublemax_congestion double

Placement Tool Metrics

Routing Tool Metrics

Partial list of metrics now being collected in Oracle8i

Page 7: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

OutlineOutline

METRICS system architecture and standards

METRICS for design flow

Flow METRICS experiments

METRICS integration with datamining

Datamining integration experiments

Issues and conclusions

Page 8: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Flow MetricsFlow Metrics

Tool metrics alone are not enough Design process consists of more than one tool A given tool can be run multiple times Design quality depends on the design flow and

methodology (the order of the tools and the iteration within the flow)

Flow definition Directed graph G (V,E)

V T { S, F } T { T1, T2, T3, …, Tn } (a set of tasks) S starting node, F ending node E { Es1, E11, E12, …, Exy } (a set of edges)

Exy x < y forward path x = y self-loop x > y backward path

Page 9: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Flow ExampleFlow Example

S

T1

T2

T3

T4

F

Optional task

Task sequence: T1, T2, T1, T2, T3, T3, T3, T4, T2, T1, T2, T4

S

T1

T2

F

T1

T2

T3 T3 T3

T4

T2

T1

T2

T4

Page 10: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Flow TrackingFlow Tracking

Run Current FLOW_SEQUENCENo Task T1 T2 T3 T41 T1 1 - - - 12 T2 1 1 - - 1/13 T1 2 - - - 24 T2 2 1 - - 2/15 T3 2 1 1 - 2/1/16 T3 2 1 2 - 2/1/27 T3 2 1 3 - 2/1/38 T4 2 1 3 1 2/1/3/19 T2 2 2 - - 2/210 T1 3 - - - 311 T2 3 1 - - 3/112 T4 3 1 - 1 3/1/0/1

TASK_NOS

T1

T2

F

T1

T2

T3 T3 T3

T4

T2

T1

T2

T4

Task sequence: T1, T2, T1, T2, T3, T3, T3, T4, T2, T1, T2, T4

Page 11: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

NELSIS Flow Manager IntegrationNELSIS Flow Manager Integration

Flow managed by NELSIS

Page 12: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Optimization of Incremental Multilevel FM PartitioningOptimization of Incremental Multilevel FM Partitioning Motivation: Incremental Netlist Partitioning

netlist ECOs are made; want top-down placement to remain similar to previous result

good approach [CaldwellKM00]: “V-cycling” based multilevel Fiduccia-Mattheyses

what is the best tuning of the approach for a given instance?

break up the ECO perturbation into multiple smaller perturbations?

#starts of the partitioner? within a specified CPU budget?

Page 13: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Optimization of Incremental Multilevel FM Partitioning (contd.)Optimization of Incremental Multilevel FM Partitioning (contd.) Given: initial partitioning solution, CPU budget and

instance perturbations (I)

Find: number of parts of incremental partitioning and number of starts

Ti = incremental multilevel FM partitioning Self-loop multistart n number of breakups (I = 1 + 2 + 3 + ... + n)

S T1 FT2 T3 Tn...

Page 14: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Multilevel FM Experiment Flow SetupMultilevel FM Experiment Flow Setup

foreach testcase

foreach I

foreach CPUbudget

foreach breakup

Icurrent = Iinitial

Scurrent = Sinitial

for i = 1 to n

Inext = Icurrent + i

run incremental multilevel FM partitioner

on Inext to produce Snext

if CPUcurrent > CPUbudget then break

Icurrent = Inext

Scurrent = Snext

end

Page 15: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Flow Optimization ResultsFlow Optimization Results

If (27401 < num edges 34826) and (143.09 < cpu time 165.28) and (perturbation delta 0.1) then num_inc_parts = 4 and num_starts = 3

If (27401 < num edges 34826) and (85.27 < cpu time 143.09) and (perturbation delta 0.1) then num_inc_parts = 2 and num_starts = 1

...

Actual CPU Time (secs)

Pre

dict

ed C

PU

Tim

e (s

ecs)

DesignName Optimized Regularibm01 215 217ibm05 1685 1723ibm02 249 269ibm03 618 669ibm06 363 371ibm04 444 488ibm08 1127 1219ibm10 752 773

Num Net Cut

Page 16: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Identifying the Effect of Wire Load ModelIdentifying the Effect of Wire Load Model Wire load model (WLM) is used for pre-layout

estimation of wire delays

Three different WLMs statistical WLM structural WLM custom WLM

Motivation: identify if WLMs are useful for estimation identify if WLMs are necessary for optimization identify the best role of WLMs

Page 17: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Wire Load Model FlowWire Load Model Flow

WLM flows for finding the appropriate role of WLM T1 = synthesis & technology mapping T2 = load wire load model (WLM) T3 = pre-placement optimization T4 = placement T5 = post-placement optimization T6 = global routing T7 = final routing T8 = custom WLM generation

ST1

T2

T3

T4

F

T5

T7

T8

T6

Page 18: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

WLM Experiment SetupWLM Experiment Setup

foreach testcase

foreach WLM (statistical, structural, custom, and no WLM)

foreach flow variant

run PKS flow

if WLM = structural then

generate custom WLM

end Flow Sequence WLMF1 T1,T2,T3,T4,T5,T6,T7 StructuralF2 T1,T2,T3,T4,T5,T6,T7 StatisticalF3 T1,T2,T3,T4,T5,T6,T7 Custom*F4 T1,T4,T5,T6,T7 N/AF5 T1,T2,T3,T4,T5**,T6,T7 StatisticalF6 T1,T2,T3,T4,T6,T7 Statistical

* Custom WLMs are generated using flow F1 with additional task T8

** Special T5 run without logic restructuring

6 different flow variants

Page 19: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

WLM Flow ResultsWLM Flow Results

Design Flow CPU SlackF1 210.00 -0.104F2 335.77 -0.280F3 157.29 -0.158

Design04 F4 649.05 -0.280F5 245.85 -0.719F6 53.17 -11.599F1 930.12 -0.430F2 780.77 -0.479F3 384.60 -0.396

Design08 F4 1442.58 -0.578F5 751.37 -0.441F6 287.69 -3.027F1 560.91 -0.760F2 746.05 -0.230F3 409.98 -1.000

Design12 F4 615.70 -0.640F5 834.05 -0.740F6 189.46 -14.310

Slack comparison for 6 flow variants

Post-placement and pre-placement optimizations are important steps

Choice of WLM depends on the design

WLMs are still useful

Page 20: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

OutlineOutline

METRICS system architecture and standards

METRICS for design flow

Flow METRICS experiments

METRICS integration with datamining

Datamining integration experiments

Issues and conclusions

Page 21: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Datamining IntegrationDatamining Integration

DatabaseDatamining

Tool(s)

Datamining

Interface

Java

Servlet

Java

Servlet

SQL

SQL

Tables

Tables Tables

Results

ResultsDM

Requests

Inter-/Intranet

Page 22: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Categories of Data for DataMiningCategories of Data for DataMining

Design instances and design parameters attributes and metrics of the design instances e.g., number of gates, target clock frequency, number

of metal layers, etc.

CAD tools and invocation options list of tools and user options that are available e.g., tool version, optimism level, timing driven option,

etc.

Design solutions and result qualities qualities of the solutions obtained from given tools and

design instances e.g., number of timing violations, total tool runtime,

layout area, etc.

Page 23: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Possible Usage of DataMiningPossible Usage of DataMining

Design instances and design parameters

CAD tools and invocation options

Design solutions and result qualities

Given and , estimate the expected quality of e.g., runtime predictions, wirelength estimations, etc.

Given and , find the appropriate setting of e.g., best value for a specific option, etc.

Given and , identify the subspace of that is “doable” for the tool e.g., category of designs that are suitable for the given

tools, etc.

Page 24: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Example Applications with DMExample Applications with DM

Parameter sensitivity analysis input parameters that have the most impact on results

Field of use analysis limits at which the tool will break tool sweet spots at which the tool will give best results

Process monitoring identify possible failure in the process (e.g., timing

constraints are too tight, row utilization is too high, etc.)

Resource monitoring analysis of resource demands (e.g., disk space,

memory, etc.)

Page 25: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

DM Results: QPlace CPU TimeDM Results: QPlace CPU Time

If (num nets 7332) then CPU time = 21.9 + 0.0019 num cells + 0.0005 num nets + 0.07 num pads - 0.0002 num fixed cells

If (num overlap layers = 0) and (num cells 71413) and (TD routing option = false) then CPU time = -15.6 + 0.0888 num nets - 0.0559 num cells - 0.0015 num fixed cells - num routing layer

...

Actual CPU Time (secs)

Pre

dict

ed C

PU

Tim

e (s

ecs)

Page 26: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Selection for Training and Test SetsSelection for Training and Test Sets

Random Case randomly select runs assigned to training set leave all remained (unselected) runs for test set

Distinct Case split the test cases into two distinct sets, the training

set and the test set assign the runs accordingly

Representative Case split the test cases into two distinct sets and assign

the runs accordingly for each test case in the test set, move exactly one run

to the training set I.e., for each test case, there is at least one

representative run in the training set

Page 27: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Prediction Result VariancesPrediction Result Variances

Random Case Distinct Case

RepresentativeCase

Prediction ofQP Wirelength

Page 28: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

CTGen ResultsCTGen Results

Max InsertionDelay (ns)

Min InsertionDelay (ns)

Max Skew

Page 29: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

OutlineOutline

METRICS system architecture and standards

METRICS for design flow

Flow METRICS experiments

METRICS integration with datamining

Datamining integration experiments

Issues and conclusions

Page 30: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

ConclusionsConclusions

Extensions to current METRICS system is presented

Complete prototype of METRICS system is working at UCLA with Oracle8i, Java Servlet and XML (other working prototypes are installed at Intel and Cadence)

METRICS wrappers for Cadence, Synopsys and UCLA tools and flows

METRICS system is integrated with Cubist datamining tool and NELSIS flow manager

A complete METRICS system can be installed on a laptop and configured to work behind firewalls

Page 31: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

Issues and Ongoing WorkIssues and Ongoing Work

Issues for METRICS constituencies to solve security: proprietary and confidential information standardization: flow, terminology, data management,

etc. social: “big brother”, collection of social metrics, etc.

Ongoing work with EDA, designer communities to identify tool metrics of interest users: metrics needed for design process insight,

optimization vendors: implementation of the metrics requested,

with standardized naming / semantics

Page 32: A System for Automatic Recording and Prediction of Design Quality Metrics Andrew B. Kahng and Stefanus Mantik* UCSD CSE and ECE Depts., La Jolla, CA *UCLA.

http://vlsicad.cs.ucla.edu/GSRC/METRICS


Recommended